diff --git a/.devcontainer/codespaces/devcontainer.json b/.devcontainer/codespaces/devcontainer.json index b32e4026d2..ca9156fdaa 100644 --- a/.devcontainer/codespaces/devcontainer.json +++ b/.devcontainer/codespaces/devcontainer.json @@ -5,7 +5,7 @@ "workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}", "features": { - "ghcr.io/devcontainers/features/sshd:1": {}, + "ghcr.io/devcontainers/features/sshd:1": {} }, "runServices": ["app", "db", "redis"], @@ -15,16 +15,16 @@ "portsAttributes": { "3000": { "label": "web", - "onAutoForward": "notify", + "onAutoForward": "notify" }, "4000": { "label": "stream", - "onAutoForward": "silent", - }, + "onAutoForward": "silent" + } }, "otherPortsAttributes": { - "onAutoForward": "silent", + "onAutoForward": "silent" }, "remoteEnv": { @@ -33,7 +33,7 @@ "STREAMING_API_BASE_URL": "https://${localEnv:CODESPACE_NAME}-4000.app.github.dev", "DISABLE_FORGERY_REQUEST_PROTECTION": "true", "ES_ENABLED": "", - "LIBRE_TRANSLATE_ENDPOINT": "", + "LIBRE_TRANSLATE_ENDPOINT": "" }, "onCreateCommand": "git config --global --add safe.directory ${containerWorkspaceFolder}", @@ -43,7 +43,7 @@ "customizations": { "vscode": { "settings": {}, - "extensions": ["EditorConfig.EditorConfig", "webben.browserslist"], - }, - }, + "extensions": ["EditorConfig.EditorConfig", "webben.browserslist"] + } + } } diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index ed71235b3b..fa8d6542c1 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -5,7 +5,7 @@ "workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}", "features": { - "ghcr.io/devcontainers/features/sshd:1": {}, + "ghcr.io/devcontainers/features/sshd:1": {} }, "forwardPorts": [3000, 4000], @@ -14,17 +14,17 @@ "3000": { "label": "web", "onAutoForward": "notify", - "requireLocalPort": true, + "requireLocalPort": true }, "4000": { "label": "stream", "onAutoForward": "silent", - "requireLocalPort": true, - }, + "requireLocalPort": true + } }, "otherPortsAttributes": { - "onAutoForward": "silent", + "onAutoForward": "silent" }, "onCreateCommand": "git config --global --add safe.directory ${containerWorkspaceFolder}", @@ -34,7 +34,7 @@ "customizations": { "vscode": { "settings": {}, - "extensions": ["EditorConfig.EditorConfig", "webben.browserslist"], - }, - }, + "extensions": ["EditorConfig.EditorConfig", "webben.browserslist"] + } + } } diff --git a/.devcontainer/docker-compose.yml b/.devcontainer/docker-compose.yml index 88979723c3..ecdf9f5f53 100644 --- a/.devcontainer/docker-compose.yml +++ b/.devcontainer/docker-compose.yml @@ -70,7 +70,7 @@ services: hard: -1 libretranslate: - image: libretranslate/libretranslate:v1.5.4 + image: libretranslate/libretranslate:v1.5.5 restart: unless-stopped volumes: - lt-data:/home/libretranslate/.local diff --git a/.eslintrc.js b/.eslintrc.js index ebe07f6e79..bd818c3ce4 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -338,7 +338,6 @@ module.exports = defineConfig({ 'plugin:import/typescript', 'plugin:promise/recommended', 'plugin:jsdoc/recommended-typescript', - 'plugin:prettier/recommended', ], parserOptions: { @@ -347,6 +346,9 @@ module.exports = defineConfig({ }, rules: { + // Disable formatting rules that have been enabled in the base config + 'indent': 'off', + 'import/consistent-type-specifier-style': ['error', 'prefer-top-level'], '@typescript-eslint/consistent-type-definitions': ['warn', 'interface'], diff --git a/.github/codecov.yml b/.github/codecov.yml index 5532c49618..9d6413a106 100644 --- a/.github/codecov.yml +++ b/.github/codecov.yml @@ -1,3 +1,4 @@ +comment: false # Do not leave PR comments coverage: status: project: @@ -8,6 +9,3 @@ coverage: default: # Github status check is not blocking informational: true -comment: - # Only write a comment in PR if there are changes - require_changes: true diff --git a/.github/workflows/build-security.yml b/.github/workflows/build-security.yml index b03b787d5f..1e2455d3d9 100644 --- a/.github/workflows/build-security.yml +++ b/.github/workflows/build-security.yml @@ -38,7 +38,7 @@ jobs: tags: | type=raw,value=edge type=raw,value=nightly - type=schedule,pattern=${{ needs.compute-suffix.outputs.prerelease }} + type=raw,value=${{ needs.compute-suffix.outputs.prerelease }} secrets: inherit build-image-streaming: @@ -60,5 +60,5 @@ jobs: tags: | type=raw,value=edge type=raw,value=nightly - type=schedule,pattern=${{ needs.compute-suffix.outputs.prerelease }} + type=raw,value=${{ needs.compute-suffix.outputs.prerelease }} secrets: inherit diff --git a/.github/workflows/crowdin-download.yml b/.github/workflows/crowdin-download.yml index d3988d2f1a..45580bd06f 100644 --- a/.github/workflows/crowdin-download.yml +++ b/.github/workflows/crowdin-download.yml @@ -52,7 +52,7 @@ jobs: # Create or update the pull request - name: Create Pull Request - uses: peter-evans/create-pull-request@v5.0.2 + uses: peter-evans/create-pull-request@v6.0.1 with: commit-message: 'New Crowdin translations' title: 'New Crowdin Translations (automated)' diff --git a/.github/workflows/format-check.yml b/.github/workflows/format-check.yml new file mode 100644 index 0000000000..2d483b5022 --- /dev/null +++ b/.github/workflows/format-check.yml @@ -0,0 +1,18 @@ +name: Check formatting +on: + push: + pull_request: + +jobs: + lint: + runs-on: ubuntu-latest + + steps: + - name: Clone repository + uses: actions/checkout@v4 + + - name: Set up Javascript environment + uses: ./.github/actions/setup-javascript + + - name: Check formatting with Prettier + run: yarn format:check diff --git a/.github/workflows/lint-css.yml b/.github/workflows/lint-css.yml index 7229bec582..e5f4874877 100644 --- a/.github/workflows/lint-css.yml +++ b/.github/workflows/lint-css.yml @@ -43,4 +43,4 @@ jobs: - run: echo "::add-matcher::.github/stylelint-matcher.json" - name: Stylelint - run: yarn lint:sass + run: yarn lint:css diff --git a/.github/workflows/lint-haml.yml b/.github/workflows/lint-haml.yml index 8dcab845ee..25615b720d 100644 --- a/.github/workflows/lint-haml.yml +++ b/.github/workflows/lint-haml.yml @@ -36,4 +36,4 @@ jobs: - name: Run haml-lint run: | echo "::add-matcher::.github/workflows/haml-lint-problem-matcher.json" - bundle exec haml-lint + bundle exec haml-lint --reporter github diff --git a/.github/workflows/lint-json.yml b/.github/workflows/lint-json.yml deleted file mode 100644 index 7796bf92c4..0000000000 --- a/.github/workflows/lint-json.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: JSON Linting -on: - push: - branches-ignore: - - 'dependabot/**' - - 'renovate/**' - paths: - - 'package.json' - - 'yarn.lock' - - '.nvmrc' - - '.prettier*' - - '**/*.json' - - '.github/workflows/lint-json.yml' - - '!app/javascript/mastodon/locales/*.json' - - pull_request: - paths: - - 'package.json' - - 'yarn.lock' - - '.nvmrc' - - '.prettier*' - - '**/*.json' - - '.github/workflows/lint-json.yml' - - '!app/javascript/mastodon/locales/*.json' - -jobs: - lint: - runs-on: ubuntu-latest - - steps: - - name: Clone repository - uses: actions/checkout@v4 - - - name: Set up Javascript environment - uses: ./.github/actions/setup-javascript - - - name: Prettier - run: yarn lint:json diff --git a/.github/workflows/lint-md.yml b/.github/workflows/lint-md.yml deleted file mode 100644 index 51c59937a3..0000000000 --- a/.github/workflows/lint-md.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: Markdown Linting -on: - push: - branches-ignore: - - 'dependabot/**' - - 'renovate/**' - paths: - - '.github/workflows/lint-md.yml' - - '.nvmrc' - - '.prettier*' - - '**/*.md' - - '!AUTHORS.md' - - 'package.json' - - 'yarn.lock' - - pull_request: - paths: - - '.github/workflows/lint-md.yml' - - '.nvmrc' - - '.prettier*' - - '**/*.md' - - '!AUTHORS.md' - - 'package.json' - - 'yarn.lock' - -jobs: - lint: - runs-on: ubuntu-latest - - steps: - - name: Clone repository - uses: actions/checkout@v4 - - - name: Set up Javascript environment - uses: ./.github/actions/setup-javascript - - - name: Prettier - run: yarn lint:md diff --git a/.github/workflows/lint-yml.yml b/.github/workflows/lint-yml.yml deleted file mode 100644 index 908bdef5cc..0000000000 --- a/.github/workflows/lint-yml.yml +++ /dev/null @@ -1,40 +0,0 @@ -name: YML Linting -on: - push: - branches-ignore: - - 'dependabot/**' - - 'renovate/**' - paths: - - 'package.json' - - 'yarn.lock' - - '.nvmrc' - - '.prettier*' - - '**/*.yaml' - - '**/*.yml' - - '.github/workflows/lint-yml.yml' - - '!config/locales/*.yml' - - pull_request: - paths: - - 'package.json' - - 'yarn.lock' - - '.nvmrc' - - '.prettier*' - - '**/*.yaml' - - '**/*.yml' - - '.github/workflows/lint-yml.yml' - - '!config/locales/*.yml' - -jobs: - lint: - runs-on: ubuntu-latest - - steps: - - name: Clone repository - uses: actions/checkout@v4 - - - name: Set up Javascript environment - uses: ./.github/actions/setup-javascript - - - name: Prettier - run: yarn lint:yml diff --git a/.github/workflows/test-ruby.yml b/.github/workflows/test-ruby.yml index 346703ced4..7fd259ae01 100644 --- a/.github/workflows/test-ruby.yml +++ b/.github/workflows/test-ruby.yml @@ -139,7 +139,7 @@ jobs: - name: Upload coverage reports to Codecov if: matrix.ruby-version == '.ruby-version' - uses: codecov/codecov-action@v3 + uses: codecov/codecov-action@v4 with: files: coverage/lcov/mastodon.lcov @@ -224,7 +224,7 @@ jobs: if: failure() with: name: e2e-screenshots - path: tmp/screenshots/ + path: tmp/capybara/ test-search: name: Elastic Search integration testing @@ -328,4 +328,4 @@ jobs: if: failure() with: name: test-search-screenshots - path: tmp/screenshots/ + path: tmp/capybara/ diff --git a/.husky/pre-commit b/.husky/pre-commit index d2ae35e84b..3723623171 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -1,4 +1 @@ -#!/bin/sh -. "$(dirname "$0")/_/husky.sh" - yarn lint-staged diff --git a/.prettierignore b/.prettierignore index 51850b2b28..6b2f0c1889 100644 --- a/.prettierignore +++ b/.prettierignore @@ -54,6 +54,13 @@ # Ignore Docker option files docker-compose.override.yml +# Ignore public +/public/assets +/public/emoji +/public/packs +/public/packs-test +/public/system + # Ignore emoji map file /app/javascript/mastodon/features/emoji/emoji_map.json @@ -74,4 +81,5 @@ app/javascript/styles/mastodon/reset.scss # Ignore the generated AUTHORS.md AUTHORS.md +# Process a few selected JS files !lint-staged.config.js diff --git a/.rubocop.yml b/.rubocop.yml index 330c40de1b..d968346f6b 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -96,12 +96,6 @@ Rails/FilePath: Rails/HttpStatus: EnforcedStyle: numeric -# Reason: Allowed in boot ENV checker -# https://docs.rubocop.org/rubocop-rails/cops_rails.html#railsexit -Rails/Exit: - Exclude: - - 'config/boot.rb' - # Reason: Conflicts with `Lint/UselessMethodDefinition` for inherited controller actions # https://docs.rubocop.org/rubocop-rails/cops_rails.html#railslexicallyscopedactionfilter Rails/LexicallyScopedActionFilter: @@ -134,6 +128,11 @@ Rails/UnusedIgnoredColumns: Rails/NegateInclude: Enabled: false +# Reason: Enforce default limit, but allow some elements to span lines +# https://docs.rubocop.org/rubocop-rspec/cops_rspec.html#rspecexamplelength +RSpec/ExampleLength: + CountAsOne: ['array', 'heredoc', 'method_call'] + # Reason: Deprecated cop, will be removed in 3.0, replaced by SpecFilePathFormat # https://docs.rubocop.org/rubocop-rspec/cops_rspec.html#rspecfilepath RSpec/FilePath: @@ -211,11 +210,6 @@ Style/RedundantBegin: Style/RescueStandardError: EnforcedStyle: implicit -# Reason: Simplify some spec layouts -# https://docs.rubocop.org/rubocop/cops_style.html#stylesemicolon -Style/Semicolon: - AllowAsExpressionSeparator: true - # Reason: Originally disabled for CodeClimate, and no config consensus has been found # https://docs.rubocop.org/rubocop/cops_style.html#stylesymbolarray Style/SymbolArray: diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index c8165c1edf..11ac570836 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -36,10 +36,10 @@ Metrics/PerceivedComplexity: # Configuration parameters: CountAsOne. RSpec/ExampleLength: - Max: 22 + Max: 20 # Override default of 5 RSpec/MultipleExpectations: - Max: 8 + Max: 7 # Configuration parameters: AllowSubject. RSpec/MultipleMemoizedHelpers: diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f775fcfa8..a53790afaf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,101 @@ All notable changes to this project will be documented in this file. +## [4.2.7] - 2024-02-16 + +### Fixed + +- Fix OmniAuth tests and edge cases in error handling ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/29201), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/29207)) +- Fix new installs by upgrading to the latest release of the `nsa` gem, instead of a no longer existing commit ([mjankowski](https://github.com/mastodon/mastodon/pull/29065)) + +### Security + +- Fix insufficient checking of remote posts ([GHSA-jhrq-qvrm-qr36](https://github.com/mastodon/mastodon/security/advisories/GHSA-jhrq-qvrm-qr36)) + +## [4.2.6] - 2024-02-14 + +### Security + +- Update the `sidekiq-unique-jobs` dependency (see [GHSA-cmh9-rx85-xj38](https://github.com/mhenrixon/sidekiq-unique-jobs/security/advisories/GHSA-cmh9-rx85-xj38)) + In addition, we have disabled the web interface for `sidekiq-unique-jobs` out of caution. + If you need it, you can re-enable it by setting `ENABLE_SIDEKIQ_UNIQUE_JOBS_UI=true`. + If you only need to clear all locks, you can now use `bundle exec rake sidekiq_unique_jobs:delete_all_locks`. +- Update the `nokogiri` dependency (see [GHSA-xc9x-jj77-9p9j](https://github.com/sparklemotion/nokogiri/security/advisories/GHSA-xc9x-jj77-9p9j)) +- Disable administrative Doorkeeper routes ([ThisIsMissEm](https://github.com/mastodon/mastodon/pull/29187)) +- Fix ongoing streaming sessions not being invalidated when applications get deleted in some cases ([GHSA-7w3c-p9j8-mq3x](https://github.com/mastodon/mastodon/security/advisories/GHSA-7w3c-p9j8-mq3x)) + In some rare cases, the streaming server was not notified of access tokens revocation on application deletion. +- Change external authentication behavior to never reattach a new identity to an existing user by default ([GHSA-vm39-j3vx-pch3](https://github.com/mastodon/mastodon/security/advisories/GHSA-vm39-j3vx-pch3)) + Up until now, Mastodon has allowed new identities from external authentication providers to attach to an existing local user based on their verified e-mail address. + This allowed upgrading users from a database-stored password to an external authentication provider, or move from one authentication provider to another. + However, this behavior may be unexpected, and means that when multiple authentication providers are configured, the overall security would be that of the least secure authentication provider. + For these reasons, this behavior is now locked under the `ALLOW_UNSAFE_AUTH_PROVIDER_REATTACH` environment variable. + In addition, regardless of this environment variable, Mastodon will refuse to attach two identities from the same authentication provider to the same account. + +## [4.2.5] - 2024-02-01 + +### Security + +- Fix insufficient origin validation (CVE-2024-23832, [GHSA-3fjr-858r-92rw](https://github.com/mastodon/mastodon/security/advisories/GHSA-3fjr-858r-92rw)) + +## [4.2.4] - 2024-01-24 + +### Fixed + +- Fix error when processing remote files with unusually long names ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28823)) +- Fix processing of compacted single-item JSON-LD collections ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28816)) +- Retry 401 errors on replies fetching ([ShadowJonathan](https://github.com/mastodon/mastodon/pull/28788)) +- Fix `RecordNotUnique` errors in LinkCrawlWorker ([tribela](https://github.com/mastodon/mastodon/pull/28748)) +- Fix Mastodon not correctly processing HTTP Signatures with query strings ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28443), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/28476)) +- Fix potential redirection loop of streaming endpoint ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28665)) +- Fix streaming API redirection ignoring the port of `streaming_api_base_url` ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28558)) +- Fix error when processing link preview with an array as `inLanguage` ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28252)) +- Fix unsupported time zone or locale preventing sign-up ([Gargron](https://github.com/mastodon/mastodon/pull/28035)) +- Fix "Hide these posts from home" list setting not refreshing when switching lists ([brianholley](https://github.com/mastodon/mastodon/pull/27763)) +- Fix missing background behind dismissable banner in web UI ([Gargron](https://github.com/mastodon/mastodon/pull/27479)) +- Fix line wrapping of language selection button with long locale codes ([gunchleoc](https://github.com/mastodon/mastodon/pull/27100), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/27127)) +- Fix `Undo Announce` activity not being sent to non-follower authors ([MitarashiDango](https://github.com/mastodon/mastodon/pull/18482)) +- Fix N+1s because of association preloaders not actually getting called ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28339)) +- Fix empty column explainer getting cropped under certain conditions ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28337)) +- Fix `LinkCrawlWorker` error when encountering empty OEmbed response ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28268)) +- Fix call to inefficient `delete_matched` cache method in domain blocks ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28367)) + +### Security + +- Add rate-limit of TOTP authentication attempts at controller level ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/28801)) + +## [4.2.3] - 2023-12-05 + +### Fixed + +- Fix dependency on `json-canonicalization` version that has been made unavailable since last release + +## [4.2.2] - 2023-12-04 + +### Changed + +- Change dismissed banners to be stored server-side ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27055)) +- Change GIF max matrix size error to explicitly mention GIF files ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27927)) +- Change `Follow` activities delivery to bypass availability check ([ShadowJonathan](https://github.com/mastodon/mastodon/pull/27586)) +- Change single-column navigation notice to be displayed outside of the logo container ([renchap](https://github.com/mastodon/mastodon/pull/27462), [renchap](https://github.com/mastodon/mastodon/pull/27476)) +- Change Content-Security-Policy to be tighter on media paths ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/26889)) +- Change post language code to include country code when relevant ([gunchleoc](https://github.com/mastodon/mastodon/pull/27099), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/27207)) + +### Fixed + +- Fix upper border radius of onboarding columns ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27890)) +- Fix incoming status creation date not being restricted to standard ISO8601 ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27655), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/28081)) +- Fix some posts from threads received out-of-order sometimes not being inserted into timelines ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27653)) +- Fix posts from force-sensitized accounts being able to trend ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27620)) +- Fix error when trying to delete already-deleted file with OpenStack Swift ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27569)) +- Fix batch attachment deletion when using OpenStack Swift ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27554)) +- Fix processing LDSigned activities from actors with unknown public keys ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27474)) +- Fix error and incorrect URLs in `/api/v1/accounts/:id/featured_tags` for remote accounts ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27459)) +- Fix report processing notice not mentioning the report number when performing a custom action ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27442)) +- Fix handling of `inLanguage` attribute in preview card processing ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27423)) +- Fix own posts being removed from home timeline when unfollowing a used hashtag ([kmycode](https://github.com/mastodon/mastodon/pull/27391)) +- Fix some link anchors being recognized as hashtags ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27271), [ClearlyClaire](https://github.com/mastodon/mastodon/pull/27584)) +- Fix format-dependent redirects being cached regardless of requested format ([ClearlyClaire](https://github.com/mastodon/mastodon/pull/27634)) + ## [4.2.1] - 2023-10-10 ### Added diff --git a/Gemfile b/Gemfile index 906441ec67..355e69b0c4 100644 --- a/Gemfile +++ b/Gemfile @@ -26,7 +26,7 @@ gem 'blurhash', '~> 0.1' gem 'active_model_serializers', '~> 0.10' gem 'addressable', '~> 2.8' -gem 'bootsnap', '~> 1.17.0', require: false +gem 'bootsnap', '~> 1.18.0', require: false gem 'browser' gem 'charlock_holmes', '~> 0.7.7' gem 'chewy', '~> 7.3' @@ -63,7 +63,7 @@ gem 'kaminari', '~> 1.2' gem 'link_header', '~> 0.0' gem 'mime-types', '~> 3.5.0', require: 'mime/types/columnar' gem 'nokogiri', '~> 1.15' -gem 'nsa', github: 'jhawthorn/nsa', ref: 'e020fcc3a54d993ab45b7194d89ab720296c111b' +gem 'nsa' gem 'oj', '~> 3.14' gem 'ox', '~> 2.14' gem 'parslet' diff --git a/Gemfile.lock b/Gemfile.lock index 01f5b45929..6ee799eab2 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -7,49 +7,38 @@ GIT hkdf (~> 0.2) jwt (~> 2.0) -GIT - remote: https://github.com/jhawthorn/nsa.git - revision: e020fcc3a54d993ab45b7194d89ab720296c111b - ref: e020fcc3a54d993ab45b7194d89ab720296c111b - specs: - nsa (0.2.8) - activesupport (>= 4.2, < 7.2) - concurrent-ruby (~> 1.0, >= 1.0.2) - sidekiq (>= 3.5) - statsd-ruby (~> 1.4, >= 1.4.0) - GEM remote: https://rubygems.org/ specs: - actioncable (7.1.3) - actionpack (= 7.1.3) - activesupport (= 7.1.3) + actioncable (7.1.3.2) + actionpack (= 7.1.3.2) + activesupport (= 7.1.3.2) nio4r (~> 2.0) websocket-driver (>= 0.6.1) zeitwerk (~> 2.6) - actionmailbox (7.1.3) - actionpack (= 7.1.3) - activejob (= 7.1.3) - activerecord (= 7.1.3) - activestorage (= 7.1.3) - activesupport (= 7.1.3) + actionmailbox (7.1.3.2) + actionpack (= 7.1.3.2) + activejob (= 7.1.3.2) + activerecord (= 7.1.3.2) + activestorage (= 7.1.3.2) + activesupport (= 7.1.3.2) mail (>= 2.7.1) net-imap net-pop net-smtp - actionmailer (7.1.3) - actionpack (= 7.1.3) - actionview (= 7.1.3) - activejob (= 7.1.3) - activesupport (= 7.1.3) + actionmailer (7.1.3.2) + actionpack (= 7.1.3.2) + actionview (= 7.1.3.2) + activejob (= 7.1.3.2) + activesupport (= 7.1.3.2) mail (~> 2.5, >= 2.5.4) net-imap net-pop net-smtp rails-dom-testing (~> 2.2) - actionpack (7.1.3) - actionview (= 7.1.3) - activesupport (= 7.1.3) + actionpack (7.1.3.2) + actionview (= 7.1.3.2) + activesupport (= 7.1.3.2) nokogiri (>= 1.8.5) racc rack (>= 2.2.4) @@ -57,15 +46,15 @@ GEM rack-test (>= 0.6.3) rails-dom-testing (~> 2.2) rails-html-sanitizer (~> 1.6) - actiontext (7.1.3) - actionpack (= 7.1.3) - activerecord (= 7.1.3) - activestorage (= 7.1.3) - activesupport (= 7.1.3) + actiontext (7.1.3.2) + actionpack (= 7.1.3.2) + activerecord (= 7.1.3.2) + activestorage (= 7.1.3.2) + activesupport (= 7.1.3.2) globalid (>= 0.6.0) nokogiri (>= 1.8.5) - actionview (7.1.3) - activesupport (= 7.1.3) + actionview (7.1.3.2) + activesupport (= 7.1.3.2) builder (~> 3.1) erubi (~> 1.11) rails-dom-testing (~> 2.2) @@ -75,22 +64,22 @@ GEM activemodel (>= 4.1) case_transform (>= 0.2) jsonapi-renderer (>= 0.1.1.beta1, < 0.3) - activejob (7.1.3) - activesupport (= 7.1.3) + activejob (7.1.3.2) + activesupport (= 7.1.3.2) globalid (>= 0.3.6) - activemodel (7.1.3) - activesupport (= 7.1.3) - activerecord (7.1.3) - activemodel (= 7.1.3) - activesupport (= 7.1.3) + activemodel (7.1.3.2) + activesupport (= 7.1.3.2) + activerecord (7.1.3.2) + activemodel (= 7.1.3.2) + activesupport (= 7.1.3.2) timeout (>= 0.4.0) - activestorage (7.1.3) - actionpack (= 7.1.3) - activejob (= 7.1.3) - activerecord (= 7.1.3) - activesupport (= 7.1.3) + activestorage (7.1.3.2) + actionpack (= 7.1.3.2) + activejob (= 7.1.3.2) + activerecord (= 7.1.3.2) + activesupport (= 7.1.3.2) marcel (~> 1.0) - activesupport (7.1.3) + activesupport (7.1.3.2) base64 bigdecimal concurrent-ruby (~> 1.0, >= 1.0.2) @@ -155,9 +144,9 @@ GEM binding_of_caller (1.0.0) debug_inspector (>= 0.0.1) blurhash (0.1.7) - bootsnap (1.17.1) + bootsnap (1.18.3) msgpack (~> 1.2) - brakeman (6.1.1) + brakeman (6.1.2) racc browser (5.3.1) brpoplpush-redis_script (0.1.3) @@ -193,7 +182,8 @@ GEM cose (1.3.0) cbor (~> 0.5.9) openssl-signature_algorithm (~> 1.0) - crack (0.4.5) + crack (0.4.6) + bigdecimal rexml crass (1.0.6) css_parser (1.14.0) @@ -229,7 +219,7 @@ GEM docile (1.4.0) domain_name (0.5.20190701) unf (>= 0.0.5, < 1.0.0) - doorkeeper (5.6.8) + doorkeeper (5.6.9) railties (>= 5) dotenv (2.8.1) dotenv-rails (2.8.1) @@ -319,13 +309,13 @@ GEM activesupport (>= 5.1) haml (>= 4.0.6) railties (>= 5.1) - haml_lint (0.55.0) + haml_lint (0.57.0) haml (>= 5.0) parallel (~> 1.10) rainbow rubocop (>= 1.0) sysexits (~> 1.1) - hashdiff (1.0.1) + hashdiff (1.1.0) hashie (5.0.0) hcaptcha (7.1.0) json @@ -343,7 +333,7 @@ GEM http-form_data (2.3.0) http_accept_language (2.1.1) httpclient (2.8.3) - httplog (1.6.2) + httplog (1.6.3) rack (>= 2.0) rainbow (>= 2.0.0) i18n (1.14.1) @@ -361,7 +351,7 @@ GEM terminal-table (>= 1.5.1) idn-ruby (0.1.5) io-console (0.7.2) - irb (1.11.1) + irb (1.11.2) rdoc reline (>= 0.4.2) jmespath (1.6.2) @@ -454,7 +444,7 @@ GEM uri net-http-persistent (4.0.2) connection_pool (~> 2.2) - net-imap (0.4.9.1) + net-imap (0.4.10) date net-protocol net-ldap (0.19.0) @@ -465,9 +455,14 @@ GEM net-smtp (0.4.0.1) net-protocol nio4r (2.5.9) - nokogiri (1.16.0) + nokogiri (1.16.2) mini_portile2 (~> 2.8.2) racc (~> 1.4) + nsa (0.3.0) + activesupport (>= 4.2, < 7.2) + concurrent-ruby (~> 1.0, >= 1.0.2) + sidekiq (>= 3.5) + statsd-ruby (~> 1.4, >= 1.4.0) oj (3.16.3) bigdecimal (>= 3.0) omniauth (2.1.1) @@ -510,8 +505,8 @@ GEM parslet (2.0.0) pastel (0.8.0) tty-color (~> 0.5) - pg (1.5.4) - pghero (3.4.0) + pg (1.5.5) + pghero (3.4.1) activerecord (>= 6) posix-spawn (0.3.15) premailer (1.21.0) @@ -537,10 +532,10 @@ GEM activesupport (>= 3.0.0) raabro (1.4.0) racc (1.7.3) - rack (2.2.8) + rack (2.2.8.1) rack-attack (6.7.0) rack (>= 1.0, < 4) - rack-cors (2.0.1) + rack-cors (2.0.2) rack (>= 2.0.0) rack-oauth2 (1.21.3) activesupport @@ -559,20 +554,20 @@ GEM rackup (1.0.0) rack (< 3) webrick - rails (7.1.3) - actioncable (= 7.1.3) - actionmailbox (= 7.1.3) - actionmailer (= 7.1.3) - actionpack (= 7.1.3) - actiontext (= 7.1.3) - actionview (= 7.1.3) - activejob (= 7.1.3) - activemodel (= 7.1.3) - activerecord (= 7.1.3) - activestorage (= 7.1.3) - activesupport (= 7.1.3) + rails (7.1.3.2) + actioncable (= 7.1.3.2) + actionmailbox (= 7.1.3.2) + actionmailer (= 7.1.3.2) + actionpack (= 7.1.3.2) + actiontext (= 7.1.3.2) + actionview (= 7.1.3.2) + activejob (= 7.1.3.2) + activemodel (= 7.1.3.2) + activerecord (= 7.1.3.2) + activestorage (= 7.1.3.2) + activesupport (= 7.1.3.2) bundler (>= 1.15.0) - railties (= 7.1.3) + railties (= 7.1.3.2) rails-controller-testing (1.0.5) actionpack (>= 5.0.1.rc1) actionview (>= 5.0.1.rc1) @@ -587,9 +582,9 @@ GEM rails-i18n (7.0.8) i18n (>= 0.7, < 2) railties (>= 6.0.0, < 8) - railties (7.1.3) - actionpack (= 7.1.3) - activesupport (= 7.1.3) + railties (7.1.3.2) + actionpack (= 7.1.3.2) + activesupport (= 7.1.3.2) irb rackup (>= 1.0.0) rake (>= 12.2) @@ -696,7 +691,7 @@ GEM scenic (1.7.0) activerecord (>= 4.0.0) railties (>= 4.0.0) - selenium-webdriver (4.17.0) + selenium-webdriver (4.18.1) base64 (~> 0.2) rexml (~> 3.2, >= 3.2.5) rubyzip (>= 1.2.2, < 3.0) @@ -712,7 +707,7 @@ GEM rufus-scheduler (~> 3.2) sidekiq (>= 6, < 8) tilt (>= 1.4.0) - sidekiq-unique-jobs (7.1.31) + sidekiq-unique-jobs (7.1.33) brpoplpush-redis_script (> 0.1.1, <= 2.0.0) concurrent-ruby (~> 1.0, >= 1.0.5) redis (< 5.0) @@ -749,7 +744,7 @@ GEM terrapin (1.0.1) climate_control test-prof (1.3.1) - thor (1.3.0) + thor (1.3.1) tilt (2.3.0) timeout (0.4.1) tpm-key_attestation (0.12.0) @@ -771,7 +766,7 @@ GEM unf (~> 0.1.0) tzinfo (2.0.6) concurrent-ruby (~> 1.0) - tzinfo-data (1.2023.4) + tzinfo-data (1.2024.1) tzinfo (>= 1.0.0) unf (0.1.4) unf_ext @@ -798,7 +793,7 @@ GEM webfinger (1.2.0) activesupport httpclient (>= 2.4) - webmock (3.19.1) + webmock (3.22.0) addressable (>= 2.8.0) crack (>= 0.3.2) hashdiff (>= 0.4.0, < 2.0.0) @@ -816,7 +811,7 @@ GEM xorcist (1.1.3) xpath (3.2.0) nokogiri (~> 1.8) - zeitwerk (2.6.12) + zeitwerk (2.6.13) PLATFORMS ruby @@ -829,7 +824,7 @@ DEPENDENCIES better_errors (~> 2.9) binding_of_caller (~> 1.0) blurhash (~> 0.1) - bootsnap (~> 1.17.0) + bootsnap (~> 1.18.0) brakeman (~> 6.0) browser bundler-audit (~> 0.9) @@ -886,7 +881,7 @@ DEPENDENCIES net-http (~> 0.4.0) net-ldap (~> 0.18) nokogiri (~> 1.15) - nsa! + nsa oj (~> 3.14) omniauth (~> 2.0) omniauth-cas (~> 3.0.0.beta.1) diff --git a/README.md b/README.md index 267f0ed295..7f9b115c4f 100644 --- a/README.md +++ b/README.md @@ -69,7 +69,7 @@ Mastodon acts as an OAuth2 provider, so 3rd party apps can use the REST and Stre - **PostgreSQL** 12+ - **Redis** 4+ -- **Ruby** 2.7+ +- **Ruby** 3.0+ - **Node.js** 16+ The repository includes deployment configurations for **Docker and docker-compose** as well as specific platforms like **Heroku**, **Scalingo**, and **Nanobox**. For Helm charts, reference the [mastodon/chart repository](https://github.com/mastodon/chart). The [**standalone** installation guide](https://docs.joinmastodon.org/admin/install/) is available in the documentation. @@ -83,23 +83,19 @@ A **Vagrant** configuration is included for development purposes. To use it, com - Install Vagrant and Virtualbox - Install the `vagrant-hostsupdater` plugin: `vagrant plugin install vagrant-hostsupdater` - Run `vagrant up` -- Run `vagrant ssh -c "cd /vagrant && foreman start"` +- Run `vagrant ssh -c "cd /vagrant && bin/dev"` - Open `http://mastodon.local` in your browser ### MacOS To set up **MacOS** for native development, complete the following steps: -- Install the latest stable Ruby version (use a Ruby version manager for easy installation and management of Ruby versions) -- Run `brew install postgresql@14` -- Run `brew install redis` -- Run `brew install imagemagick` -- Run `brew install libidn` -- Install Foreman or a similar tool (such as [overmind](https://github.com/DarthSim/overmind)) to handle multiple process launching. -- Navigate to Mastodon's root directory and run `brew install nvm` then `nvm use` to use the version from .nvmrc +- Use a Ruby version manager to install the specified version from `.ruby-version` +- Run `brew install postgresql@14 redis imagemagick libidn` to install required dependencies +- Navigate to Mastodon's root directory and run `brew install nvm` then `nvm use` to use the version from `.nvmrc` - Run `corepack enable && corepack prepare` - Run `bundle exec rails db:setup` (optionally prepend `RAILS_ENV=development` to target the dev environment) -- Finally, run `overmind start -f Procfile.dev` +- Finally, run `bin/dev` which will launch the local services via `overmind` (if installed) or `foreman` ### Docker @@ -108,7 +104,7 @@ For development with **Docker**, complete the following steps: - Install Docker Desktop - Run `docker compose -f .devcontainer/docker-compose.yml up -d` - Run `docker compose -f .devcontainer/docker-compose.yml exec app .devcontainer/post-create.sh` -- Finally, run `docker compose -f .devcontainer/docker-compose.yml exec app foreman start -f Procfile.dev` +- Finally, run `docker compose -f .devcontainer/docker-compose.yml exec app bin/dev` If you are using an IDE with [support for the Development Container specification](https://containers.dev/supporting), it will run the above `docker compose` commands automatically. For **Visual Studio Code** this requires the [Dev Container extension](https://containers.dev/supporting#dev-containers). @@ -119,7 +115,7 @@ To get you coding in just a few minutes, GitHub Codespaces provides a web-based - Click this button to create a new codespace:
[![Open in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://github.com/codespaces/new?hide_repo_select=true&ref=main&repo=52281283&devcontainer_path=.devcontainer%2Fcodespaces%2Fdevcontainer.json) - Wait for the environment to build. This will take a few minutes. -- When the editor is ready, run `foreman start -f Procfile.dev` in the terminal. +- When the editor is ready, run `bin/dev` in the terminal. - After a few seconds, a popup will appear with a button labeled _Open in Browser_. This will open Mastodon. - On the _Ports_ tab, right click on the “stream” row and select _Port visibility_ → _Public_. diff --git a/Vagrantfile b/Vagrantfile index 6f0f511095..12bd1ba67a 100644 --- a/Vagrantfile +++ b/Vagrantfile @@ -188,7 +188,7 @@ Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.post_up_message = < { authorize_if_got_token! :read, :'read:statuses' } before_action :set_account - after_action :insert_pagination_headers, unless: -> { truthy_param?(:pinned) } + after_action :insert_pagination_headers def index cache_if_unauthenticated! diff --git a/app/controllers/api/v1/admin/reports_controller.rb b/app/controllers/api/v1/admin/reports_controller.rb index 9dfb181a28..7129a5f6ca 100644 --- a/app/controllers/api/v1/admin/reports_controller.rb +++ b/app/controllers/api/v1/admin/reports_controller.rb @@ -35,6 +35,7 @@ class Api::V1::Admin::ReportsController < Api::BaseController def update authorize @report, :update? @report.update!(report_params) + log_action :update, @report render json: @report, serializer: REST::Admin::ReportSerializer end diff --git a/app/controllers/api/v1/statuses_controller.rb b/app/controllers/api/v1/statuses_controller.rb index 064e7632a8..01c3718763 100644 --- a/app/controllers/api/v1/statuses_controller.rb +++ b/app/controllers/api/v1/statuses_controller.rb @@ -71,13 +71,9 @@ class Api::V1::StatusesController < Api::BaseController with_rate_limit: true ) - render json: @status, serializer: @status.is_a?(ScheduledStatus) ? REST::ScheduledStatusSerializer : REST::StatusSerializer + render json: @status, serializer: serializer_for_status rescue PostStatusService::UnexpectedMentionsError => e - unexpected_accounts = ActiveModel::Serializer::CollectionSerializer.new( - e.accounts, - serializer: REST::AccountSerializer - ) - render json: { error: e.message, unexpected_accounts: unexpected_accounts }, status: 422 + render json: unexpected_accounts_error_json(e), status: 422 end def update @@ -155,6 +151,21 @@ class Api::V1::StatusesController < Api::BaseController ) end + def serializer_for_status + @status.is_a?(ScheduledStatus) ? REST::ScheduledStatusSerializer : REST::StatusSerializer + end + + def unexpected_accounts_error_json(error) + { + error: error.message, + unexpected_accounts: serialized_accounts(error.accounts), + } + end + + def serialized_accounts(accounts) + ActiveModel::Serializer::CollectionSerializer.new(accounts, serializer: REST::AccountSerializer) + end + def pagination_params(core_params) params.slice(:limit).permit(:limit).merge(core_params) end diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 5f8725f6fc..a046ea19c9 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -178,7 +178,7 @@ class ApplicationController < ActionController::Base respond_to do |format| format.any { render 'errors/self_destruct', layout: 'auth', status: 410, formats: [:html] } - format.json { render json: { error: Rack::Utils::HTTP_STATUS_CODES[410] }, status: code } + format.json { render json: { error: Rack::Utils::HTTP_STATUS_CODES[410] }, status: 410 } end end diff --git a/app/controllers/auth/omniauth_callbacks_controller.rb b/app/controllers/auth/omniauth_callbacks_controller.rb index 707b50ef9e..9d496220a3 100644 --- a/app/controllers/auth/omniauth_callbacks_controller.rb +++ b/app/controllers/auth/omniauth_callbacks_controller.rb @@ -7,7 +7,7 @@ class Auth::OmniauthCallbacksController < Devise::OmniauthCallbacksController def self.provides_callback_for(provider) define_method provider do @provider = provider - @user = User.find_for_oauth(request.env['omniauth.auth'], current_user) + @user = User.find_for_omniauth(request.env['omniauth.auth'], current_user) if @user.persisted? record_login_activity @@ -17,6 +17,9 @@ class Auth::OmniauthCallbacksController < Devise::OmniauthCallbacksController session["devise.#{provider}_data"] = request.env['omniauth.auth'] redirect_to new_user_registration_url end + rescue ActiveRecord::RecordInvalid + flash[:alert] = I18n.t('devise.failure.omniauth_user_creation_failure') if is_navigational_format? + redirect_to new_user_session_url end end diff --git a/app/controllers/auth/sessions_controller.rb b/app/controllers/auth/sessions_controller.rb index 962b78de65..6ed7b2baac 100644 --- a/app/controllers/auth/sessions_controller.rb +++ b/app/controllers/auth/sessions_controller.rb @@ -183,7 +183,9 @@ class Auth::SessionsController < Devise::SessionsController ) # Only send a notification email every hour at most - return if redis.set("2fa_failure_notification:#{user.id}", '1', ex: 1.hour, get: true).present? + return if redis.get("2fa_failure_notification:#{user.id}").present? + + redis.set("2fa_failure_notification:#{user.id}", '1', ex: 1.hour) UserMailer.failed_2fa(user, request.remote_ip, request.user_agent, Time.now.utc).deliver_later! end diff --git a/app/controllers/concerns/signature_verification.rb b/app/controllers/concerns/signature_verification.rb index 92f1eb5a16..3155866271 100644 --- a/app/controllers/concerns/signature_verification.rb +++ b/app/controllers/concerns/signature_verification.rb @@ -12,39 +12,6 @@ module SignatureVerification class SignatureVerificationError < StandardError; end - class SignatureParamsParser < Parslet::Parser - rule(:token) { match("[0-9a-zA-Z!#$%&'*+.^_`|~-]").repeat(1).as(:token) } - rule(:quoted_string) { str('"') >> (qdtext | quoted_pair).repeat.as(:quoted_string) >> str('"') } - # qdtext and quoted_pair are not exactly according to spec but meh - rule(:qdtext) { match('[^\\\\"]') } - rule(:quoted_pair) { str('\\') >> any } - rule(:bws) { match('\s').repeat } - rule(:param) { (token.as(:key) >> bws >> str('=') >> bws >> (token | quoted_string).as(:value)).as(:param) } - rule(:comma) { bws >> str(',') >> bws } - # Old versions of node-http-signature add an incorrect "Signature " prefix to the header - rule(:buggy_prefix) { str('Signature ') } - rule(:params) { buggy_prefix.maybe >> (param >> (comma >> param).repeat).as(:params) } - root(:params) - end - - class SignatureParamsTransformer < Parslet::Transform - rule(params: subtree(:param)) do - (param.is_a?(Array) ? param : [param]).each_with_object({}) { |(key, value), hash| hash[key] = value } - end - - rule(param: { key: simple(:key), value: simple(:val) }) do - [key, val] - end - - rule(quoted_string: simple(:string)) do - string.to_s - end - - rule(token: simple(:string)) do - string.to_s - end - end - def require_account_signature! render json: signature_verification_failure_reason, status: signature_verification_failure_code unless signed_request_account end @@ -135,12 +102,8 @@ module SignatureVerification end def signature_params - @signature_params ||= begin - raw_signature = request.headers['Signature'] - tree = SignatureParamsParser.new.parse(raw_signature) - SignatureParamsTransformer.new.apply(tree) - end - rescue Parslet::ParseFailed + @signature_params ||= SignatureParser.parse(request.headers['Signature']) + rescue SignatureParser::ParsingError raise SignatureVerificationError, 'Error parsing signature parameters' end diff --git a/app/controllers/custom_css_controller.rb b/app/controllers/custom_css_controller.rb index 62f8e0d772..eb6417698a 100644 --- a/app/controllers/custom_css_controller.rb +++ b/app/controllers/custom_css_controller.rb @@ -16,6 +16,6 @@ class CustomCssController < ActionController::Base # rubocop:disable Rails/Appli helper_method :custom_css_styles def set_user_roles - @user_roles = UserRole.where(highlighted: true).where.not(color: [nil, '']) + @user_roles = UserRole.providing_styles end end diff --git a/app/controllers/intents_controller.rb b/app/controllers/intents_controller.rb index ea024e30e6..65c315208d 100644 --- a/app/controllers/intents_controller.rb +++ b/app/controllers/intents_controller.rb @@ -1,27 +1,26 @@ # frozen_string_literal: true class IntentsController < ApplicationController - before_action :check_uri + EXPECTED_SCHEME = 'web+mastodon' + before_action :handle_invalid_uri, unless: :valid_uri? rescue_from Addressable::URI::InvalidURIError, with: :handle_invalid_uri def show - if uri.scheme == 'web+mastodon' - case uri.host - when 'follow' - return redirect_to authorize_interaction_path(uri: uri.query_values['uri'].delete_prefix('acct:')) - when 'share' - return redirect_to share_path(text: uri.query_values['text']) - end + case uri.host + when 'follow' + redirect_to authorize_interaction_path(uri: uri.query_values['uri'].delete_prefix('acct:')) + when 'share' + redirect_to share_path(text: uri.query_values['text']) + else + handle_invalid_uri end - - not_found end private - def check_uri - not_found if uri.blank? + def valid_uri? + uri.present? && uri.scheme == EXPECTED_SCHEME end def handle_invalid_uri diff --git a/app/helpers/jsonld_helper.rb b/app/helpers/jsonld_helper.rb index cc05b7a403..b0f2077db0 100644 --- a/app/helpers/jsonld_helper.rb +++ b/app/helpers/jsonld_helper.rb @@ -174,7 +174,19 @@ module JsonLdHelper build_request(uri, on_behalf_of, options: request_options).perform do |response| raise Mastodon::UnexpectedResponseError, response unless response_successful?(response) || response_error_unsalvageable?(response) || !raise_on_temporary_error - body_to_json(response.body_with_limit) if response.code == 200 + body_to_json(response.body_with_limit) if response.code == 200 && valid_activitypub_content_type?(response) + end + end + + def valid_activitypub_content_type?(response) + return true if response.mime_type == 'application/activity+json' + + # When the mime type is `application/ld+json`, we need to check the profile, + # but `http.rb` does not parse it for us. + return false unless response.mime_type == 'application/ld+json' + + response.headers[HTTP::Headers::CONTENT_TYPE]&.split(';')&.map(&:strip)&.any? do |str| + str.start_with?('profile="') && str[9...-1].split.include?('https://www.w3.org/ns/activitystreams') end end diff --git a/app/helpers/languages_helper.rb b/app/helpers/languages_helper.rb index 87f0f288d3..65ade9fd2a 100644 --- a/app/helpers/languages_helper.rb +++ b/app/helpers/languages_helper.rb @@ -127,7 +127,7 @@ module LanguagesHelper om: ['Oromo', 'Afaan Oromoo'].freeze, or: ['Oriya', 'ଓଡ଼ିଆ'].freeze, os: ['Ossetian', 'ирон æвзаг'].freeze, - pa: ['Panjabi', 'ਪੰਜਾਬੀ'].freeze, + pa: ['Punjabi', 'ਪੰਜਾਬੀ'].freeze, pi: ['Pāli', 'पाऴि'].freeze, pl: ['Polish', 'Polski'].freeze, ps: ['Pashto', 'پښتو'].freeze, @@ -191,15 +191,18 @@ module LanguagesHelper chr: ['Cherokee', 'ᏣᎳᎩ ᎦᏬᏂᎯᏍᏗ'].freeze, ckb: ['Sorani (Kurdish)', 'سۆرانی'].freeze, cnr: ['Montenegrin', 'crnogorski'].freeze, + csb: ['Kashubian', 'Kaszëbsczi'].freeze, jbo: ['Lojban', 'la .lojban.'].freeze, kab: ['Kabyle', 'Taqbaylit'].freeze, ldn: ['Láadan', 'Láadan'].freeze, lfn: ['Lingua Franca Nova', 'lingua franca nova'].freeze, + pdc: ['Pennsylvania Dutch', 'Pennsilfaani-Deitsch'].freeze, sco: ['Scots', 'Scots'].freeze, sma: ['Southern Sami', 'Åarjelsaemien Gïele'].freeze, smj: ['Lule Sami', 'Julevsámegiella'].freeze, szl: ['Silesian', 'ślůnsko godka'].freeze, tok: ['Toki Pona', 'toki pona'].freeze, + vai: ['Vai', 'ꕙꔤ'].freeze, xal: ['Kalmyk', 'Хальмг келн'].freeze, zba: ['Balaibalan', 'باليبلن'].freeze, zgh: ['Standard Moroccan Tamazight', 'ⵜⴰⵎⴰⵣⵉⵖⵜ'].freeze, diff --git a/app/helpers/react_component_helper.rb b/app/helpers/react_component_helper.rb index ce616e8306..821a6f1e2d 100644 --- a/app/helpers/react_component_helper.rb +++ b/app/helpers/react_component_helper.rb @@ -15,9 +15,20 @@ module ReactComponentHelper div_tag_with_data(data) end + def serialized_media_attachments(media_attachments) + media_attachments.map { |attachment| serialized_attachment(attachment) } + end + private def div_tag_with_data(data) content_tag(:div, nil, data: data) end + + def serialized_attachment(attachment) + ActiveModelSerializers::SerializableResource.new( + attachment, + serializer: REST::MediaAttachmentSerializer + ).as_json + end end diff --git a/app/javascript/images/mailer-new/heading/LICENSE b/app/javascript/images/mailer-new/heading/LICENSE new file mode 100644 index 0000000000..974db1ac4b --- /dev/null +++ b/app/javascript/images/mailer-new/heading/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020-2024 Paweł Kuna + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/app/javascript/images/mailer-new/heading/README.md b/app/javascript/images/mailer-new/heading/README.md new file mode 100644 index 0000000000..ecd4b949e7 --- /dev/null +++ b/app/javascript/images/mailer-new/heading/README.md @@ -0,0 +1 @@ +Images in this folder are based on [Tabler.io icons](https://tabler.io/icons). diff --git a/app/javascript/images/mailer-new/store-icons/btn-app-store.png b/app/javascript/images/mailer-new/store-icons/btn-app-store.png new file mode 100644 index 0000000000..ee3bd9385c Binary files /dev/null and b/app/javascript/images/mailer-new/store-icons/btn-app-store.png differ diff --git a/app/javascript/images/mailer-new/store-icons/btn-google-play.png b/app/javascript/images/mailer-new/store-icons/btn-google-play.png new file mode 100644 index 0000000000..ed43ff29aa Binary files /dev/null and b/app/javascript/images/mailer-new/store-icons/btn-google-play.png differ diff --git a/app/javascript/images/mailer-new/welcome-icons/LICENSE b/app/javascript/images/mailer-new/welcome-icons/LICENSE new file mode 100644 index 0000000000..974db1ac4b --- /dev/null +++ b/app/javascript/images/mailer-new/welcome-icons/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020-2024 Paweł Kuna + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/app/javascript/images/mailer-new/welcome-icons/README.md b/app/javascript/images/mailer-new/welcome-icons/README.md new file mode 100644 index 0000000000..ecd4b949e7 --- /dev/null +++ b/app/javascript/images/mailer-new/welcome-icons/README.md @@ -0,0 +1 @@ +Images in this folder are based on [Tabler.io icons](https://tabler.io/icons). diff --git a/app/javascript/images/mailer-new/welcome/step5-off.png b/app/javascript/images/mailer-new/welcome-icons/apps_step-off.png similarity index 100% rename from app/javascript/images/mailer-new/welcome/step5-off.png rename to app/javascript/images/mailer-new/welcome-icons/apps_step-off.png diff --git a/app/javascript/images/mailer-new/welcome-icons/apps_step-on.png b/app/javascript/images/mailer-new/welcome-icons/apps_step-on.png new file mode 100644 index 0000000000..fd631bf97e Binary files /dev/null and b/app/javascript/images/mailer-new/welcome-icons/apps_step-on.png differ diff --git a/app/javascript/images/mailer-new/welcome-icons/edit_profile_step-off.png b/app/javascript/images/mailer-new/welcome-icons/edit_profile_step-off.png new file mode 100644 index 0000000000..dfcdd04e16 Binary files /dev/null and b/app/javascript/images/mailer-new/welcome-icons/edit_profile_step-off.png differ diff --git a/app/javascript/images/mailer-new/welcome/step1-on.png b/app/javascript/images/mailer-new/welcome-icons/edit_profile_step-on.png similarity index 100% rename from app/javascript/images/mailer-new/welcome/step1-on.png rename to app/javascript/images/mailer-new/welcome-icons/edit_profile_step-on.png diff --git a/app/javascript/images/mailer-new/welcome/step2-off.png b/app/javascript/images/mailer-new/welcome-icons/follow_step-off.png similarity index 100% rename from app/javascript/images/mailer-new/welcome/step2-off.png rename to app/javascript/images/mailer-new/welcome-icons/follow_step-off.png diff --git a/app/javascript/images/mailer-new/welcome-icons/follow_step-on.png b/app/javascript/images/mailer-new/welcome-icons/follow_step-on.png new file mode 100644 index 0000000000..3ac011539b Binary files /dev/null and b/app/javascript/images/mailer-new/welcome-icons/follow_step-on.png differ diff --git a/app/javascript/images/mailer-new/welcome/step3-off.png b/app/javascript/images/mailer-new/welcome-icons/post_step-off.png similarity index 100% rename from app/javascript/images/mailer-new/welcome/step3-off.png rename to app/javascript/images/mailer-new/welcome-icons/post_step-off.png diff --git a/app/javascript/images/mailer-new/welcome-icons/post_step-on.png b/app/javascript/images/mailer-new/welcome-icons/post_step-on.png new file mode 100644 index 0000000000..aa318e66c8 Binary files /dev/null and b/app/javascript/images/mailer-new/welcome-icons/post_step-on.png differ diff --git a/app/javascript/images/mailer-new/welcome/step4-off.png b/app/javascript/images/mailer-new/welcome-icons/share_step-off.png similarity index 100% rename from app/javascript/images/mailer-new/welcome/step4-off.png rename to app/javascript/images/mailer-new/welcome-icons/share_step-off.png diff --git a/app/javascript/images/mailer-new/welcome-icons/share_step-on.png b/app/javascript/images/mailer-new/welcome-icons/share_step-on.png new file mode 100644 index 0000000000..98782d9317 Binary files /dev/null and b/app/javascript/images/mailer-new/welcome-icons/share_step-on.png differ diff --git a/app/javascript/images/mailer-new/welcome/feature_audience.png b/app/javascript/images/mailer-new/welcome/feature_audience.png new file mode 100644 index 0000000000..902de133b4 Binary files /dev/null and b/app/javascript/images/mailer-new/welcome/feature_audience.png differ diff --git a/app/javascript/images/mailer-new/welcome/feature_control.png b/app/javascript/images/mailer-new/welcome/feature_control.png new file mode 100644 index 0000000000..1afb6c238c Binary files /dev/null and b/app/javascript/images/mailer-new/welcome/feature_control.png differ diff --git a/app/javascript/images/mailer-new/welcome/feature_creativity.png b/app/javascript/images/mailer-new/welcome/feature_creativity.png new file mode 100644 index 0000000000..3365856699 Binary files /dev/null and b/app/javascript/images/mailer-new/welcome/feature_creativity.png differ diff --git a/app/javascript/images/mailer-new/welcome/feature_moderation.png b/app/javascript/images/mailer-new/welcome/feature_moderation.png new file mode 100644 index 0000000000..7cee9b29b8 Binary files /dev/null and b/app/javascript/images/mailer-new/welcome/feature_moderation.png differ diff --git a/app/javascript/images/mailer-new/welcome/purple-extra-soft-spacer.png b/app/javascript/images/mailer-new/welcome/purple-extra-soft-spacer.png new file mode 100644 index 0000000000..ec1ad5c957 Binary files /dev/null and b/app/javascript/images/mailer-new/welcome/purple-extra-soft-spacer.png differ diff --git a/app/javascript/images/mailer-new/welcome/purple-extra-soft-wave.png b/app/javascript/images/mailer-new/welcome/purple-extra-soft-wave.png new file mode 100644 index 0000000000..ba8f6dd3d9 Binary files /dev/null and b/app/javascript/images/mailer-new/welcome/purple-extra-soft-wave.png differ diff --git a/app/javascript/mastodon/components/admin/ReportReasonSelector.jsx b/app/javascript/mastodon/components/admin/ReportReasonSelector.jsx index ecce92b309..90f4334a6e 100644 --- a/app/javascript/mastodon/components/admin/ReportReasonSelector.jsx +++ b/app/javascript/mastodon/components/admin/ReportReasonSelector.jsx @@ -124,7 +124,7 @@ class ReportReasonSelector extends PureComponent { api().put(`/api/v1/admin/reports/${id}`, { category, - rule_ids, + rule_ids: category === 'violation' ? rule_ids : [], }).catch(err => { console.error(err); }); diff --git a/app/javascript/mastodon/components/edited_timestamp/index.jsx b/app/javascript/mastodon/components/edited_timestamp/index.jsx index 4ca00f8dda..7b70f9d6e1 100644 --- a/app/javascript/mastodon/components/edited_timestamp/index.jsx +++ b/app/javascript/mastodon/components/edited_timestamp/index.jsx @@ -67,7 +67,7 @@ class EditedTimestamp extends PureComponent { return ( ); diff --git a/app/javascript/mastodon/components/relative_timestamp.tsx b/app/javascript/mastodon/components/relative_timestamp.tsx index ac3ab0fb4d..12530c2b17 100644 --- a/app/javascript/mastodon/components/relative_timestamp.tsx +++ b/app/javascript/mastodon/components/relative_timestamp.tsx @@ -53,7 +53,6 @@ const messages = defineMessages({ }); const dateFormatOptions = { - hour12: false, year: 'numeric', month: 'short', day: '2-digit', diff --git a/app/javascript/mastodon/components/status.jsx b/app/javascript/mastodon/components/status.jsx index 1171351c51..be9a1cec65 100644 --- a/app/javascript/mastodon/components/status.jsx +++ b/app/javascript/mastodon/components/status.jsx @@ -554,7 +554,7 @@ class Status extends ImmutablePureComponent {
- {status.get('edited_at') && *} + {status.get('edited_at') && *} diff --git a/app/javascript/mastodon/containers/media_container.jsx b/app/javascript/mastodon/containers/media_container.jsx index fba3c5df78..d18602e3b5 100644 --- a/app/javascript/mastodon/containers/media_container.jsx +++ b/app/javascript/mastodon/containers/media_container.jsx @@ -80,7 +80,7 @@ export default class MediaContainer extends PureComponent { return ( <> - {[].map.call(components, (component, i) => { + {Array.from(components).map((component, i) => { const componentName = component.getAttribute('data-component'); const Component = MEDIA_COMPONENTS[componentName]; const { media, card, poll, hashtag, ...props } = JSON.parse(component.getAttribute('data-props')); diff --git a/app/javascript/mastodon/features/account/components/header.jsx b/app/javascript/mastodon/features/account/components/header.jsx index 233d208c64..07ea227c48 100644 --- a/app/javascript/mastodon/features/account/components/header.jsx +++ b/app/javascript/mastodon/features/account/components/header.jsx @@ -101,7 +101,6 @@ const dateFormatOptions = { month: 'short', day: 'numeric', year: 'numeric', - hour12: false, hour: '2-digit', minute: '2-digit', }; diff --git a/app/javascript/mastodon/features/compose/components/edit_indicator.jsx b/app/javascript/mastodon/features/compose/components/edit_indicator.jsx index 6cdaaebea5..cc37d2d7d8 100644 --- a/app/javascript/mastodon/features/compose/components/edit_indicator.jsx +++ b/app/javascript/mastodon/features/compose/components/edit_indicator.jsx @@ -6,9 +6,9 @@ import { Link } from 'react-router-dom'; import { useDispatch, useSelector } from 'react-redux'; -import BarChart4BarsIcon from 'mastodon/../material-icons/400-24px/bar_chart_4_bars.svg?react'; -import CloseIcon from 'mastodon/../material-icons/400-24px/close.svg?react'; -import PhotoLibraryIcon from 'mastodon/../material-icons/400-24px/photo_library.svg?react'; +import BarChart4BarsIcon from '@/material-icons/400-24px/bar_chart_4_bars.svg?react'; +import CloseIcon from '@/material-icons/400-24px/close.svg?react'; +import PhotoLibraryIcon from '@/material-icons/400-24px/photo_library.svg?react'; import { cancelReplyCompose } from 'mastodon/actions/compose'; import { Icon } from 'mastodon/components/icon'; import { IconButton } from 'mastodon/components/icon_button'; diff --git a/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.jsx b/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.jsx index 37017f4cc3..acc3fd0ce5 100644 --- a/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.jsx +++ b/app/javascript/mastodon/features/compose/components/emoji_picker_dropdown.jsx @@ -10,7 +10,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes'; import { supportsPassiveEvents } from 'detect-passive-events'; import Overlay from 'react-overlays/Overlay'; -import MoodIcon from 'mastodon/../material-icons/400-24px/mood.svg?react'; +import MoodIcon from '@/material-icons/400-20px/mood.svg?react'; import { IconButton } from 'mastodon/components/icon_button'; import { assetHost } from 'mastodon/utils/config'; diff --git a/app/javascript/mastodon/features/compose/components/language_dropdown.jsx b/app/javascript/mastodon/features/compose/components/language_dropdown.jsx index 2783ca8be2..c3bd908a4e 100644 --- a/app/javascript/mastodon/features/compose/components/language_dropdown.jsx +++ b/app/javascript/mastodon/features/compose/components/language_dropdown.jsx @@ -9,9 +9,9 @@ import { supportsPassiveEvents } from 'detect-passive-events'; import fuzzysort from 'fuzzysort'; import Overlay from 'react-overlays/Overlay'; -import CancelIcon from 'mastodon/../material-icons/400-24px/cancel-fill.svg?react'; -import SearchIcon from 'mastodon/../material-icons/400-24px/search.svg?react'; -import TranslateIcon from 'mastodon/../material-icons/400-24px/translate.svg?react'; +import CancelIcon from '@/material-icons/400-24px/cancel-fill.svg?react'; +import SearchIcon from '@/material-icons/400-24px/search.svg?react'; +import TranslateIcon from '@/material-icons/400-24px/translate.svg?react'; import { Icon } from 'mastodon/components/icon'; import { languages as preloadedLanguages } from 'mastodon/initial_state'; @@ -141,6 +141,7 @@ class LanguageDropdownMenu extends PureComponent { case 'Escape': onClose(); break; + case ' ': case 'Enter': this.handleClick(e); break; diff --git a/app/javascript/mastodon/features/compose/components/navigation_bar.jsx b/app/javascript/mastodon/features/compose/components/navigation_bar.jsx index ebf59e4c83..ec5578eef3 100644 --- a/app/javascript/mastodon/features/compose/components/navigation_bar.jsx +++ b/app/javascript/mastodon/features/compose/components/navigation_bar.jsx @@ -4,7 +4,7 @@ import { useIntl, defineMessages } from 'react-intl'; import { useSelector, useDispatch } from 'react-redux'; -import CloseIcon from 'mastodon/../material-icons/400-24px/close.svg?react'; +import CloseIcon from '@/material-icons/400-24px/close.svg?react'; import { cancelReplyCompose } from 'mastodon/actions/compose'; import Account from 'mastodon/components/account'; import { IconButton } from 'mastodon/components/icon_button'; diff --git a/app/javascript/mastodon/features/compose/components/poll_button.jsx b/app/javascript/mastodon/features/compose/components/poll_button.jsx index 345497abd3..cbaa25cb3c 100644 --- a/app/javascript/mastodon/features/compose/components/poll_button.jsx +++ b/app/javascript/mastodon/features/compose/components/poll_button.jsx @@ -3,7 +3,7 @@ import { PureComponent } from 'react'; import { defineMessages, injectIntl } from 'react-intl'; -import BarChart4BarsIcon from '@/material-icons/400-24px/bar_chart_4_bars.svg?react'; +import BarChart4BarsIcon from '@/material-icons/400-20px/bar_chart_4_bars.svg?react'; import { IconButton } from '../../../components/icon_button'; diff --git a/app/javascript/mastodon/features/compose/components/privacy_dropdown.jsx b/app/javascript/mastodon/features/compose/components/privacy_dropdown.jsx index 82f9027388..071f0a6fab 100644 --- a/app/javascript/mastodon/features/compose/components/privacy_dropdown.jsx +++ b/app/javascript/mastodon/features/compose/components/privacy_dropdown.jsx @@ -5,16 +5,16 @@ import { injectIntl, defineMessages } from 'react-intl'; import classNames from 'classnames'; -import { supportsPassiveEvents } from 'detect-passive-events'; import Overlay from 'react-overlays/Overlay'; import AlternateEmailIcon from '@/material-icons/400-24px/alternate_email.svg?react'; -import InfoIcon from '@/material-icons/400-24px/info.svg?react'; import LockIcon from '@/material-icons/400-24px/lock.svg?react'; import PublicIcon from '@/material-icons/400-24px/public.svg?react'; import QuietTimeIcon from '@/material-icons/400-24px/quiet_time.svg?react'; import { Icon } from 'mastodon/components/icon'; +import { PrivacyDropdownMenu } from './privacy_dropdown_menu'; + const messages = defineMessages({ public_short: { id: 'privacy.public.short', defaultMessage: 'Public' }, public_long: { id: 'privacy.public.long', defaultMessage: 'Anyone on and off Mastodon' }, @@ -28,126 +28,6 @@ const messages = defineMessages({ unlisted_extra: { id: 'privacy.unlisted.additional', defaultMessage: 'This behaves exactly like public, except the post will not appear in live feeds or hashtags, explore, or Mastodon search, even if you are opted-in account-wide.' }, }); -const listenerOptions = supportsPassiveEvents ? { passive: true, capture: true } : true; - -class PrivacyDropdownMenu extends PureComponent { - - static propTypes = { - style: PropTypes.object, - items: PropTypes.array.isRequired, - value: PropTypes.string.isRequired, - onClose: PropTypes.func.isRequired, - onChange: PropTypes.func.isRequired, - }; - - handleDocumentClick = e => { - if (this.node && !this.node.contains(e.target)) { - this.props.onClose(); - e.stopPropagation(); - } - }; - - handleKeyDown = e => { - const { items } = this.props; - const value = e.currentTarget.getAttribute('data-index'); - const index = items.findIndex(item => { - return (item.value === value); - }); - let element = null; - - switch(e.key) { - case 'Escape': - this.props.onClose(); - break; - case 'Enter': - this.handleClick(e); - break; - case 'ArrowDown': - element = this.node.childNodes[index + 1] || this.node.firstChild; - break; - case 'ArrowUp': - element = this.node.childNodes[index - 1] || this.node.lastChild; - break; - case 'Tab': - if (e.shiftKey) { - element = this.node.childNodes[index - 1] || this.node.lastChild; - } else { - element = this.node.childNodes[index + 1] || this.node.firstChild; - } - break; - case 'Home': - element = this.node.firstChild; - break; - case 'End': - element = this.node.lastChild; - break; - } - - if (element) { - element.focus(); - this.props.onChange(element.getAttribute('data-index')); - e.preventDefault(); - e.stopPropagation(); - } - }; - - handleClick = e => { - const value = e.currentTarget.getAttribute('data-index'); - - e.preventDefault(); - - this.props.onClose(); - this.props.onChange(value); - }; - - componentDidMount () { - document.addEventListener('click', this.handleDocumentClick, { capture: true }); - document.addEventListener('touchend', this.handleDocumentClick, listenerOptions); - if (this.focusedItem) this.focusedItem.focus({ preventScroll: true }); - } - - componentWillUnmount () { - document.removeEventListener('click', this.handleDocumentClick, { capture: true }); - document.removeEventListener('touchend', this.handleDocumentClick, listenerOptions); - } - - setRef = c => { - this.node = c; - }; - - setFocusRef = c => { - this.focusedItem = c; - }; - - render () { - const { style, items, value } = this.props; - - return ( -
- {items.map(item => ( -
-
- -
- -
- {item.text} - {item.meta} -
- - {item.extra && ( -
- -
- )} -
- ))} -
- ); - } - -} - class PrivacyDropdown extends PureComponent { static propTypes = { diff --git a/app/javascript/mastodon/features/compose/components/privacy_dropdown_menu.jsx b/app/javascript/mastodon/features/compose/components/privacy_dropdown_menu.jsx new file mode 100644 index 0000000000..1a5ff1fa80 --- /dev/null +++ b/app/javascript/mastodon/features/compose/components/privacy_dropdown_menu.jsx @@ -0,0 +1,128 @@ +import PropTypes from 'prop-types'; +import { useCallback, useEffect, useRef, useState } from 'react'; + +import classNames from 'classnames'; + +import { supportsPassiveEvents } from 'detect-passive-events'; + +import InfoIcon from '@/material-icons/400-24px/info.svg?react'; +import { Icon } from 'mastodon/components/icon'; + +const listenerOptions = supportsPassiveEvents ? { passive: true, capture: true } : true; + +export const PrivacyDropdownMenu = ({ style, items, value, onClose, onChange }) => { + const nodeRef = useRef(null); + const focusedItemRef = useRef(null); + const [currentValue, setCurrentValue] = useState(value); + + const handleDocumentClick = useCallback((e) => { + if (nodeRef.current && !nodeRef.current.contains(e.target)) { + onClose(); + e.stopPropagation(); + } + }, [nodeRef, onClose]); + + const handleClick = useCallback((e) => { + const value = e.currentTarget.getAttribute('data-index'); + + e.preventDefault(); + + onClose(); + onChange(value); + }, [onClose, onChange]); + + const handleKeyDown = useCallback((e) => { + const value = e.currentTarget.getAttribute('data-index'); + const index = items.findIndex(item => (item.value === value)); + + let element = null; + + switch (e.key) { + case 'Escape': + onClose(); + break; + case ' ': + case 'Enter': + handleClick(e); + break; + case 'ArrowDown': + element = nodeRef.current.childNodes[index + 1] || nodeRef.current.firstChild; + break; + case 'ArrowUp': + element = nodeRef.current.childNodes[index - 1] || nodeRef.current.lastChild; + break; + case 'Tab': + if (e.shiftKey) { + element = nodeRef.current.childNodes[index + 1] || nodeRef.current.firstChild; + } else { + element = nodeRef.current.childNodes[index - 1] || nodeRef.current.lastChild; + } + break; + case 'Home': + element = nodeRef.current.firstChild; + break; + case 'End': + element = nodeRef.current.lastChild; + break; + } + + if (element) { + element.focus(); + setCurrentValue(element.getAttribute('data-index')); + e.preventDefault(); + e.stopPropagation(); + } + }, [nodeRef, items, onClose, handleClick, setCurrentValue]); + + useEffect(() => { + document.addEventListener('click', handleDocumentClick, { capture: true }); + document.addEventListener('touchend', handleDocumentClick, listenerOptions); + focusedItemRef.current?.focus({ preventScroll: true }); + + return () => { + document.removeEventListener('click', handleDocumentClick, { capture: true }); + document.removeEventListener('touchend', handleDocumentClick, listenerOptions); + }; + }, [handleDocumentClick]); + + return ( +
    + {items.map(item => ( +
  • +
    + +
    + +
    + {item.text} + {item.meta} +
    + + {item.extra && ( +
    + +
    + )} +
  • + ))} +
+ ); +}; + +PrivacyDropdownMenu.propTypes = { + style: PropTypes.object, + items: PropTypes.array.isRequired, + value: PropTypes.string.isRequired, + onClose: PropTypes.func.isRequired, + onChange: PropTypes.func.isRequired, +}; diff --git a/app/javascript/mastodon/features/compose/components/upload.jsx b/app/javascript/mastodon/features/compose/components/upload.jsx index 861232d0ec..e8045ae81f 100644 --- a/app/javascript/mastodon/features/compose/components/upload.jsx +++ b/app/javascript/mastodon/features/compose/components/upload.jsx @@ -9,7 +9,7 @@ import ImmutablePureComponent from 'react-immutable-pure-component'; import spring from 'react-motion/lib/spring'; -import CloseIcon from '@/material-icons/400-24px/close.svg?react'; +import CloseIcon from '@/material-icons/400-20px/close.svg?react'; import EditIcon from '@/material-icons/400-24px/edit.svg?react'; import WarningIcon from '@/material-icons/400-24px/warning.svg?react'; import { Blurhash } from 'mastodon/components/blurhash'; diff --git a/app/javascript/mastodon/features/compose/components/upload_button.jsx b/app/javascript/mastodon/features/compose/components/upload_button.jsx index 3866f239d7..20fb20f092 100644 --- a/app/javascript/mastodon/features/compose/components/upload_button.jsx +++ b/app/javascript/mastodon/features/compose/components/upload_button.jsx @@ -6,7 +6,7 @@ import ImmutablePropTypes from 'react-immutable-proptypes'; import ImmutablePureComponent from 'react-immutable-pure-component'; import { connect } from 'react-redux'; -import PhotoLibraryIcon from '@/material-icons/400-24px/photo_library.svg?react'; +import PhotoLibraryIcon from '@/material-icons/400-20px/photo_library.svg?react'; import { IconButton } from 'mastodon/components/icon_button'; const messages = defineMessages({ @@ -65,6 +65,7 @@ class UploadButton extends ImmutablePureComponent { key={resetFileKey} ref={this.setRef} type='file' + name='file-upload-input' multiple accept={acceptContentTypes.toArray().join(',')} onChange={this.handleChange} diff --git a/app/javascript/mastodon/features/compose/containers/spoiler_button_container.js b/app/javascript/mastodon/features/compose/containers/spoiler_button_container.js index a241417735..9acc43437b 100644 --- a/app/javascript/mastodon/features/compose/containers/spoiler_button_container.js +++ b/app/javascript/mastodon/features/compose/containers/spoiler_button_container.js @@ -2,7 +2,7 @@ import { injectIntl, defineMessages } from 'react-intl'; import { connect } from 'react-redux'; -import WarningIcon from 'mastodon/../material-icons/400-24px/warning.svg?react'; +import WarningIcon from '@/material-icons/400-20px/warning.svg?react'; import { IconButton } from 'mastodon/components/icon_button'; import { changeComposeSpoilerness } from '../../../actions/compose'; diff --git a/app/javascript/mastodon/features/compose/containers/upload_button_container.js b/app/javascript/mastodon/features/compose/containers/upload_button_container.js index 4b5e93eafa..b96bfb3473 100644 --- a/app/javascript/mastodon/features/compose/containers/upload_button_container.js +++ b/app/javascript/mastodon/features/compose/containers/upload_button_container.js @@ -3,14 +3,24 @@ import { connect } from 'react-redux'; import { uploadCompose } from '../../../actions/compose'; import UploadButton from '../components/upload_button'; -const mapStateToProps = state => ({ - disabled: state.getIn(['compose', 'poll']) !== null || state.getIn(['compose', 'is_uploading']) || (state.getIn(['compose', 'media_attachments']).size + state.getIn(['compose', 'pending_media_attachments']) > 3 || (!state.getIn(['server', 'server', 'configuration', 'media_attachments', 'allow_mix_media'], false) && state.getIn(['compose', 'media_attachments']).some(m => ['video', 'audio'].includes(m.get('type'))))), - resetFileKey: state.getIn(['compose', 'resetFileKey']), -}); +const mapStateToProps = state => { + const isPoll = state.getIn(['compose', 'poll']) !== null; + const isUploading = state.getIn(['compose', 'is_uploading']); + const readyAttachmentsSize = state.getIn(['compose', 'media_attachments']).size ?? 0; + const pendingAttachmentsSize = state.getIn(['compose', 'pending_media_attachments']).size ?? 0; + const attachmentsSize = readyAttachmentsSize + pendingAttachmentsSize; + const isOverLimit = attachmentsSize > 3; + const allowMixMedia = state.getIn(['server', 'server', 'configuration', 'media_attachments', 'allow_mix_media'], false); + const hasVideoOrAudio = state.getIn(['compose', 'media_attachments']).some(m => ['video', 'audio'].includes(m.get('type'))); + return { + disabled: isPoll || isUploading || isOverLimit || (!allowMixMedia && hasVideoOrAudio), + resetFileKey: state.getIn(['compose', 'resetFileKey']), + }; +}; const mapDispatchToProps = dispatch => ({ - onSelectFile (files) { + onSelectFile(files) { dispatch(uploadCompose(files)); }, diff --git a/app/javascript/mastodon/features/emoji/emoji_compressed.js b/app/javascript/mastodon/features/emoji/emoji_compressed.js index a4863566da..ed8e9bbe30 100644 --- a/app/javascript/mastodon/features/emoji/emoji_compressed.js +++ b/app/javascript/mastodon/features/emoji/emoji_compressed.js @@ -36,7 +36,7 @@ Object.keys(emojiIndex.emojis).forEach(key => { let emoji = emojiIndex.emojis[key]; // Emojis with skin tone modifiers are stored like this - if (Object.prototype.hasOwnProperty.call(emoji, '1')) { + if (Object.hasOwn(emoji, '1')) { emoji = emoji['1']; } @@ -88,7 +88,7 @@ Object.keys(emojiIndex.emojis).forEach(key => { let emoji = emojiIndex.emojis[key]; // Emojis with skin tone modifiers are stored like this - if (Object.prototype.hasOwnProperty.call(emoji, '1')) { + if (Object.hasOwn(emoji, '1')) { emoji = emoji['1']; } diff --git a/app/javascript/mastodon/features/emoji/emoji_utils.js b/app/javascript/mastodon/features/emoji/emoji_utils.js index 83bcc9d82f..c13d250567 100644 --- a/app/javascript/mastodon/features/emoji/emoji_utils.js +++ b/app/javascript/mastodon/features/emoji/emoji_utils.js @@ -135,19 +135,19 @@ function getData(emoji, skin, set) { } } - if (Object.prototype.hasOwnProperty.call(data.short_names, emoji)) { + if (Object.hasOwn(data.short_names, emoji)) { emoji = data.short_names[emoji]; } - if (Object.prototype.hasOwnProperty.call(data.emojis, emoji)) { + if (Object.hasOwn(data.emojis, emoji)) { emojiData = data.emojis[emoji]; } } else if (emoji.id) { - if (Object.prototype.hasOwnProperty.call(data.short_names, emoji.id)) { + if (Object.hasOwn(data.short_names, emoji.id)) { emoji.id = data.short_names[emoji.id]; } - if (Object.prototype.hasOwnProperty.call(data.emojis, emoji.id)) { + if (Object.hasOwn(data.emojis, emoji.id)) { emojiData = data.emojis[emoji.id]; skin = skin || emoji.skin; } @@ -216,7 +216,7 @@ function deepMerge(a, b) { let originalValue = a[key], value = originalValue; - if (Object.prototype.hasOwnProperty.call(b, key)) { + if (Object.hasOwn(b, key)) { value = b[key]; } diff --git a/app/javascript/mastodon/features/explore/index.jsx b/app/javascript/mastodon/features/explore/index.jsx index 8ebaccd013..d77aec7013 100644 --- a/app/javascript/mastodon/features/explore/index.jsx +++ b/app/javascript/mastodon/features/explore/index.jsx @@ -8,8 +8,8 @@ import { NavLink, Switch, Route } from 'react-router-dom'; import { connect } from 'react-redux'; +import ExploreIcon from '@/material-icons/400-24px/explore.svg?react'; import SearchIcon from '@/material-icons/400-24px/search.svg?react'; -import TagIcon from '@/material-icons/400-24px/tag.svg?react'; import Column from 'mastodon/components/column'; import ColumnHeader from 'mastodon/components/column_header'; import Search from 'mastodon/features/compose/containers/search_container'; @@ -58,8 +58,8 @@ class Explore extends PureComponent { return ( - {hasTimeRange && · - } + {hasTimeRange && · - } diff --git a/app/javascript/mastodon/features/getting_started/index.jsx b/app/javascript/mastodon/features/getting_started/index.jsx index 21a5c2a519..d84c85806e 100644 --- a/app/javascript/mastodon/features/getting_started/index.jsx +++ b/app/javascript/mastodon/features/getting_started/index.jsx @@ -112,7 +112,7 @@ class GettingStarted extends ImmutablePureComponent { if (showTrends) { navItems.push( - , + , ); } diff --git a/app/javascript/mastodon/features/home_timeline/components/inline_follow_suggestions.jsx b/app/javascript/mastodon/features/home_timeline/components/inline_follow_suggestions.jsx index ac414d04d6..c39b43bade 100644 --- a/app/javascript/mastodon/features/home_timeline/components/inline_follow_suggestions.jsx +++ b/app/javascript/mastodon/features/home_timeline/components/inline_follow_suggestions.jsx @@ -21,6 +21,7 @@ import { DisplayName } from 'mastodon/components/display_name'; import { Icon } from 'mastodon/components/icon'; import { IconButton } from 'mastodon/components/icon_button'; import { VerifiedBadge } from 'mastodon/components/verified_badge'; +import { domain } from 'mastodon/initial_state'; const messages = defineMessages({ follow: { id: 'account.follow', defaultMessage: 'Follow' }, @@ -28,27 +29,43 @@ const messages = defineMessages({ previous: { id: 'lightbox.previous', defaultMessage: 'Previous' }, next: { id: 'lightbox.next', defaultMessage: 'Next' }, dismiss: { id: 'follow_suggestions.dismiss', defaultMessage: "Don't show again" }, + friendsOfFriendsHint: { id: 'follow_suggestions.hints.friends_of_friends', defaultMessage: 'This profile is popular among the people you follow.' }, + similarToRecentlyFollowedHint: { id: 'follow_suggestions.hints.similar_to_recently_followed', defaultMessage: 'This profile is similar to the profiles you have most recently followed.' }, + featuredHint: { id: 'follow_suggestions.hints.featured', defaultMessage: 'This profile has been hand-picked by the {domain} team.' }, + mostFollowedHint: { id: 'follow_suggestions.hints.most_followed', defaultMessage: 'This profile is one of the most followed on {domain}.'}, + mostInteractionsHint: { id: 'follow_suggestions.hints.most_interactions', defaultMessage: 'This profile has been recently getting a lot of attention on {domain}.' }, }); const Source = ({ id }) => { - let label; + const intl = useIntl(); + + let label, hint; switch (id) { case 'friends_of_friends': + hint = intl.formatMessage(messages.friendsOfFriendsHint); + label = ; + break; case 'similar_to_recently_followed': + hint = intl.formatMessage(messages.similarToRecentlyFollowedHint); label = ; break; case 'featured': - label = ; + hint = intl.formatMessage(messages.featuredHint, { domain }); + label = ; break; case 'most_followed': + hint = intl.formatMessage(messages.mostFollowedHint, { domain }); + label = ; + break; case 'most_interactions': + hint = intl.formatMessage(messages.mostInteractionsHint, { domain }); label = ; break; } return ( -
+
{label}
@@ -59,7 +76,7 @@ Source.propTypes = { id: PropTypes.oneOf(['friends_of_friends', 'similar_to_recently_followed', 'featured', 'most_followed', 'most_interactions']), }; -const Card = ({ id, source }) => { +const Card = ({ id, sources }) => { const intl = useIntl(); const account = useSelector(state => state.getIn(['accounts', id])); const relationship = useSelector(state => state.getIn(['relationships', id])); @@ -89,17 +106,17 @@ const Card = ({ id, source }) => {
- {firstVerifiedField ? : } + {firstVerifiedField ? : }
-
); }; Card.propTypes = { id: PropTypes.string.isRequired, - source: ImmutablePropTypes.list, + sources: ImmutablePropTypes.list, }; const DISMISSIBLE_ID = 'home/follow-suggestions'; @@ -175,7 +192,7 @@ export const InlineFollowSuggestions = ({ hidden }) => { ))}
diff --git a/app/javascript/mastodon/features/status/components/card.jsx b/app/javascript/mastodon/features/status/components/card.jsx index f37b558c4c..f47861f663 100644 --- a/app/javascript/mastodon/features/status/components/card.jsx +++ b/app/javascript/mastodon/features/status/components/card.jsx @@ -92,6 +92,10 @@ export default class Card extends PureComponent { this.setState({ embedded: true }); }; + handleExternalLinkClick = (e) => { + e.stopPropagation(); + }; + setRef = c => { this.node = c; }; @@ -201,7 +205,7 @@ export default class Card extends PureComponent {
- +
) : spoilerButton} diff --git a/app/javascript/mastodon/features/status/components/detailed_status.jsx b/app/javascript/mastodon/features/status/components/detailed_status.jsx index 437e9e86bf..d10c8966e4 100644 --- a/app/javascript/mastodon/features/status/components/detailed_status.jsx +++ b/app/javascript/mastodon/features/status/components/detailed_status.jsx @@ -311,7 +311,7 @@ class DetailedStatus extends ImmutablePureComponent {
- + {edited}{visibilityLink}{applicationLink}{reblogLink} · {favouriteLink}
diff --git a/app/javascript/mastodon/features/ui/components/navigation_panel.jsx b/app/javascript/mastodon/features/ui/components/navigation_panel.jsx index bf5e2826bb..4a56988191 100644 --- a/app/javascript/mastodon/features/ui/components/navigation_panel.jsx +++ b/app/javascript/mastodon/features/ui/components/navigation_panel.jsx @@ -7,6 +7,7 @@ import { Link } from 'react-router-dom'; import AlternateEmailIcon from '@/material-icons/400-24px/alternate_email.svg?react'; import BookmarksIcon from '@/material-icons/400-24px/bookmarks-fill.svg?react'; +import ExploreIcon from '@/material-icons/400-24px/explore.svg?react'; import HomeIcon from '@/material-icons/400-24px/home-fill.svg?react'; import ListAltIcon from '@/material-icons/400-24px/list_alt.svg?react'; import MoreHorizIcon from '@/material-icons/400-24px/more_horiz.svg?react'; @@ -14,7 +15,6 @@ import PublicIcon from '@/material-icons/400-24px/public.svg?react'; import SearchIcon from '@/material-icons/400-24px/search.svg?react'; import SettingsIcon from '@/material-icons/400-24px/settings-fill.svg?react'; import StarIcon from '@/material-icons/400-24px/star-fill.svg?react'; -import TagIcon from '@/material-icons/400-24px/tag.svg?react'; import { WordmarkLogo } from 'mastodon/components/logo'; import { NavigationPortal } from 'mastodon/components/navigation_portal'; import { timelinePreview, trendsEnabled } from 'mastodon/initial_state'; @@ -94,7 +94,7 @@ class NavigationPanel extends Component { )} {trendsEnabled ? ( - + ) : ( )} diff --git a/app/javascript/mastodon/locales/af.json b/app/javascript/mastodon/locales/af.json index d2ac2f8f27..baa7e7bf70 100644 --- a/app/javascript/mastodon/locales/af.json +++ b/app/javascript/mastodon/locales/af.json @@ -33,6 +33,7 @@ "account.follows.empty": "Die gebruiker volg nog niemand.", "account.go_to_profile": "Gaan na profiel", "account.hide_reblogs": "Versteek plasings wat deur @{name} aangestuur is", + "account.in_memoriam": "Ter nagedagtenis.", "account.joined_short": "Aangesluit", "account.link_verified_on": "Eienaarskap van hierdie skakel is nagegaan op {date}", "account.locked_info": "Die rekening se privaatheidstatus is gesluit. Die eienaar hersien handmatig wie hom/haar kan volg.", @@ -71,6 +72,7 @@ "bundle_column_error.network.title": "Netwerkfout", "bundle_column_error.retry": "Probeer weer", "bundle_column_error.return": "Keer terug na die tuisblad", + "bundle_column_error.routing.title": "404", "bundle_modal_error.close": "Sluit", "bundle_modal_error.message": "Die laai van die komponent het iewers skeefgeloop.", "bundle_modal_error.retry": "Probeer weer", @@ -149,6 +151,8 @@ "emoji_button.food": "Eet- en drinkgoed", "emoji_button.nature": "Natuur", "emoji_button.not_found": "Geen passende emoji gevind nie", + "emoji_button.objects": "Voorwerpe", + "emoji_button.people": "Mense", "emoji_button.search": "Soek...", "emoji_button.search_results": "Soekresultate", "empty_column.account_timeline": "Geen plasings hier nie!", @@ -161,7 +165,12 @@ "empty_column.lists": "Jy het nog geen lyste nie. Wanneer jy een skep, sal dit hier vertoon.", "empty_column.notifications": "Jy het nog geen kennisgewings nie. Interaksie van ander mense met jou, sal hier vertoon.", "explore.search_results": "Soekresultate", + "explore.suggested_follows": "Mense", + "explore.trending_links": "Nuus", + "filter_modal.added.settings_link": "instellings bladsy", "filter_modal.select_filter.search": "Soek of skep", + "firehose.local": "Hierdie bediener", + "firehose.remote": "Ander bedieners", "footer.about": "Oor", "footer.directory": "Profielgids", "footer.get_app": "Kry die app", @@ -170,14 +179,21 @@ "footer.privacy_policy": "Privaatheidsbeleid", "footer.source_code": "Wys bronkode", "getting_started.heading": "Kom aan die gang", + "hashtag.column_header.tag_mode.all": "en {additional}", + "hashtag.column_header.tag_mode.any": "of {additional}", + "hashtag.column_header.tag_mode.none": "sonder {additional}", "hashtag.column_settings.select.placeholder": "Voer hutsetikette in…", "hashtag.column_settings.tag_toggle": "Voeg meer etikette by hierdie kolom", "hashtag.follow": "Volg hutsetiket", "home.column_settings.show_reblogs": "Wys aangestuurde plasings", "interaction_modal.description.reblog": "Met 'n rekening op Mastodon kan jy hierdie plasing aanstuur om dit met jou volgers te deel.", "interaction_modal.description.reply": "Met 'n rekening op Mastodon kan jy op hierdie plasing reageer.", + "interaction_modal.title.follow": "Volg {name}", "interaction_modal.title.reblog": "Stuur {name} se plasing aan", "interaction_modal.title.reply": "Reageer op {name} se plasing", + "intervals.full.days": "{number, plural, one {# dag} other {# dae}}", + "intervals.full.hours": "{number, plural, one {# uur} other {# uur}}", + "intervals.full.minutes": "{number, plural, one {# minuut} other {# minute}}", "keyboard_shortcuts.back": "Navigeer terug", "keyboard_shortcuts.blocked": "Vertoon lys van geblokkeerde gebruikers", "keyboard_shortcuts.boost": "Stuur aan", @@ -209,8 +225,11 @@ "keyboard_shortcuts.toot": "Begin ’n nuwe plasing", "keyboard_shortcuts.unfocus": "Fokus uit van teksveld/soekveld", "keyboard_shortcuts.up": "Beweeg opwaarts in die lys", + "lightbox.next": "Volgende", + "lightbox.previous": "Vorige", "limited_account_hint.action": "Vertoon profiel in elk geval", "limited_account_hint.title": "Hierdie profiel is deur moderators van {domain} versteek.", + "link_preview.author": "Deur {name}", "lists.account.add": "Voeg by lys", "lists.account.remove": "Verwyder vanaf lys", "lists.delete": "Verwyder lys", @@ -237,6 +256,7 @@ "notification.reblog": "{name} het jou plasing aangestuur", "notifications.column_settings.push": "Stootkennisgewings", "notifications.column_settings.reblog": "Aangestuurde plasings:", + "notifications.column_settings.sound": "Speel klank", "notifications.column_settings.status": "Nuwe plasings:", "notifications.column_settings.unread_notifications.highlight": "Lig ongelese kennisgewings uit", "notifications.filter.boosts": "Aangestuurde plasings", @@ -300,5 +320,8 @@ "upload_form.audio_description": "Describe for people with hearing loss", "upload_form.description": "Describe for the visually impaired", "upload_form.video_description": "Describe for people with hearing loss or visual impairment", - "upload_progress.label": "Uploading…" + "upload_progress.label": "Uploading…", + "video.fullscreen": "Volskerm", + "video.mute": "Klank afskakel", + "video.unmute": "Klank aanskakel" } diff --git a/app/javascript/mastodon/locales/ar.json b/app/javascript/mastodon/locales/ar.json index 5f2d151fae..2eebd1369c 100644 --- a/app/javascript/mastodon/locales/ar.json +++ b/app/javascript/mastodon/locales/ar.json @@ -21,6 +21,7 @@ "account.blocked": "محظور", "account.browse_more_on_origin_server": "تصفح المزيد في الملف الشخصي الأصلي", "account.cancel_follow_request": "إلغاء طلب المتابعة", + "account.copy": "نسخ الرابط إلى الملف الشخصي", "account.direct": "إشارة خاصة لـ @{name}", "account.disable_notifications": "توقف عن إشعاري عندما ينشر @{name}", "account.domain_blocked": "اسم النِّطاق محظور", @@ -31,6 +32,7 @@ "account.featured_tags.last_status_never": "لا توجد رسائل", "account.featured_tags.title": "وسوم {name} المميَّزة", "account.follow": "متابعة", + "account.follow_back": "تابعه بدورك", "account.followers": "مُتابِعون", "account.followers.empty": "لا أحدَ يُتابع هذا المُستخدم إلى حد الآن.", "account.followers_counter": "{count, plural, zero{لا مُتابع} one {مُتابعٌ واحِد} two {مُتابعانِ اِثنان} few {{counter} مُتابِعين} many {{counter} مُتابِعًا} other {{counter} مُتابع}}", @@ -51,6 +53,7 @@ "account.mute_notifications_short": "كتم الإشعارات", "account.mute_short": "اكتم", "account.muted": "مَكتوم", + "account.mutual": "متبادل", "account.no_bio": "لم يتم تقديم وصف.", "account.open_original_page": "افتح الصفحة الأصلية", "account.posts": "منشورات", @@ -143,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "مُقفَل", "compose_form.placeholder": "فِيمَ تُفكِّر؟", "compose_form.poll.duration": "مُدَّة اِستطلاع الرأي", + "compose_form.poll.multiple": "متعدد الخيارات", + "compose_form.poll.option_placeholder": "الخيار {number}", + "compose_form.poll.single": "اختر واحدا", "compose_form.poll.switch_to_multiple": "تغيِير الاستطلاع للسماح باِخيارات مُتعدِّدة", "compose_form.poll.switch_to_single": "تغيِير الاستطلاع للسماح باِخيار واحد فقط", + "compose_form.poll.type": "الأسلوب", + "compose_form.publish": "نشر", "compose_form.publish_form": "منشور جديد", + "compose_form.reply": "ردّ", + "compose_form.save_changes": "تحديث", "compose_form.spoiler.marked": "إزالة تحذير المحتوى", "compose_form.spoiler.unmarked": "إضافة تحذير للمحتوى", + "compose_form.spoiler_placeholder": "تحذير المحتوى (اختياري)", "confirmation_modal.cancel": "إلغاء", "confirmations.block.block_and_report": "حظره والإبلاغ عنه", "confirmations.block.confirm": "حظر", @@ -179,6 +190,7 @@ "conversation.mark_as_read": "اعتبرها كمقروءة", "conversation.open": "اعرض المحادثة", "conversation.with": "مع {names}", + "copy_icon_button.copied": "نُسِخ إلى الحافظة", "copypaste.copied": "تم نسخه", "copypaste.copy_to_clipboard": "نسخ إلى الحافظة", "directory.federated": "مِن الفديفرس المعروف", @@ -210,6 +222,7 @@ "emoji_button.search_results": "نتائج البحث", "emoji_button.symbols": "رموز", "emoji_button.travel": "الأماكن والسفر", + "empty_column.account_hides_collections": "اختار هذا المستخدم عدم إتاحة هذه المعلومات للعامة", "empty_column.account_suspended": "حساب معلق", "empty_column.account_timeline": "لا توجد منشورات هنا!", "empty_column.account_unavailable": "الملف التعريفي غير متوفر", @@ -264,6 +277,11 @@ "follow_request.authorize": "ترخيص", "follow_request.reject": "رفض", "follow_requests.unlocked_explanation": "حتى وإن كان حسابك غير مقفل، يعتقد فريق {domain} أنك قد ترغب في مراجعة طلبات المتابعة من هذه الحسابات يدوياً.", + "follow_suggestions.dismiss": "لا تُظهرها مجدّدًا", + "follow_suggestions.personalized_suggestion": "توصية مخصصة", + "follow_suggestions.popular_suggestion": "توصية رائجة", + "follow_suggestions.view_all": "عرض الكل", + "follow_suggestions.who_to_follow": "حسابات للمُتابَعة", "followed_tags": "الوسوم المتابَعة", "footer.about": "عن", "footer.directory": "دليل الصفحات التعريفية", @@ -290,13 +308,9 @@ "hashtag.follow": "اتبع الوسم", "hashtag.unfollow": "ألغِ متابعة الوسم", "hashtags.and_other": "…و {count, plural, zero {} one {# واحد آخر} two {# اثنان آخران} few {# آخرون} many {# آخَرًا}other {# آخرون}}", - "home.actions.go_to_explore": "اطّلع على ما هو رائج حاليا", - "home.actions.go_to_suggestions": "ابحث عن أشخاص لِمُتابعتهم", "home.column_settings.basic": "الأساسية", "home.column_settings.show_reblogs": "اعرض المعاد نشرها", "home.column_settings.show_replies": "اعرض الردود", - "home.explore_prompt.body": "سوف يحتوي خيط أخبارك الرئيسي على مزيج من المنشورات مِنها التي تحتوي على وسوم اخترتَ متابعتها، وأشخاص اخترتَ متابعتهم والمنشورات التي أعادوا نشرها. ومع ذلك، إن لا زال خيط أخبارك يبدو هادئا جدا، ماذا لو:", - "home.explore_prompt.title": "هذه هي صفحتك الرئيسة في ماستدون.", "home.hide_announcements": "إخفاء الإعلانات", "home.pending_critical_update.body": "يرجى تحديث خادم ماستدون في أقرب وقت ممكن!", "home.pending_critical_update.link": "اطّلع على التحديثات", @@ -377,6 +391,7 @@ "lists.search": "إبحث في قائمة الحسابات التي تُتابِعها", "lists.subheading": "قوائمك", "load_pending": "{count, plural, one {# عنصر جديد} other {# عناصر جديدة}}", + "loading_indicator.label": "جاري التحميل…", "media_gallery.toggle_visible": "{number, plural, zero {} one {اخف الصورة} two {اخف الصورتين} few {اخف الصور} many {اخف الصور} other {اخف الصور}}", "moved_to_account_banner.text": "حسابك {disabledAccount} معطل حاليًا لأنك انتقلت إلى {movedToAccount}.", "mute_modal.duration": "المدة", @@ -464,6 +479,17 @@ "onboarding.follows.empty": "نأسف، لا يمكن عرض نتائج في الوقت الحالي. جرب البحث أو انتقل لصفحة الاستكشاف لإيجاد أشخاص للمتابعة، أو حاول مرة أخرى.", "onboarding.follows.lead": "مقتطفات خيطك الرئيس هي الطريقة الأساسية لتجربة ماستدون. كلما زاد عدد الأشخاص الذين تتبعهم، كلما زاد خيط أخبارك نشاطا وإثارة للاهتمام. بداية، إليك بعض الاقتراحات:", "onboarding.follows.title": "أضفِ طابعا شخصيا على موجزات خيطك الرئيس", + "onboarding.profile.discoverable": "اجعل ملفي الشخصي قابلاً للاكتشاف", + "onboarding.profile.discoverable_hint": "عندما تختار تفعيل إمكانية الاكتشاف على ماستدون، قد تظهر منشوراتك في نتائج البحث والمواضيع الرائجة، وقد يتم اقتراح ملفك الشخصي لأشخاص ذوي اهتمامات مماثلة معك.", + "onboarding.profile.display_name": "الاسم العلني", + "onboarding.profile.display_name_hint": "اسمك الكامل أو اسمك المرح…", + "onboarding.profile.lead": "يمكنك دائمًا إكمال ذلك لاحقًا في الإعدادات، حيث يتوفر المزيد من خيارات التخصيص.", + "onboarding.profile.note": "نبذة عنك", + "onboarding.profile.note_hint": "يمكنك @ذِكر أشخاص آخرين أو استعمال #الوسوم…", + "onboarding.profile.save_and_continue": "حفظ و إستمرار", + "onboarding.profile.title": "إعداد الملف الشخصي", + "onboarding.profile.upload_avatar": "تحميل صورة الملف الشخصي", + "onboarding.profile.upload_header": "تحميل رأسية الملف الشخصي", "onboarding.share.lead": "اسمح للأشخاص بمعرفة إمكانية الوصول إليك على ماستدون!", "onboarding.share.message": "أنا {username} في #Mastodon! تعال لمتابعتي على {url}", "onboarding.share.next_steps": "الخطوات المحتملة التالية:", @@ -497,9 +523,18 @@ "poll_button.add_poll": "إضافة استطلاع للرأي", "poll_button.remove_poll": "إزالة استطلاع الرأي", "privacy.change": "اضبط خصوصية المنشور", + "privacy.direct.long": "كل من ذُكر في المنشور", + "privacy.direct.short": "أشخاص محددون", + "privacy.private.long": "متابعيك فقط", + "privacy.private.short": "للمتابِعين", + "privacy.public.long": "أي شخص على أو خارج ماستدون", "privacy.public.short": "للعامة", + "privacy.unlisted.additional": "هذا يتصرف بالضبط مثل النشر للعامة، باستثناء أن المنشور لن يظهر في الموجزات الحية أو في الوسوم أو في الإستكشاف، أو في نتائج بحث ماستدون، حتى وإن قمت بتفعيله على مستوى الحساب.", + "privacy.unlisted.long": "خوارزميات أقل", + "privacy.unlisted.short": "للعامة دون صخب", "privacy_policy.last_updated": "آخر تحديث {date}", "privacy_policy.title": "سياسة الخصوصية", + "recommended": "موصى به", "refresh": "أنعِش", "regeneration_indicator.label": "جارٍ التحميل…", "regeneration_indicator.sublabel": "جارٍ تجهيز موجزات خيطك الرئيس!", @@ -514,7 +549,9 @@ "relative_time.minutes": "{number}د", "relative_time.seconds": "{number}ثا", "relative_time.today": "اليوم", + "reply_indicator.attachments": "{count, plural, zero {}one {# مرفق} two {# المرفقات} few {# مرفقات} many {# مرفقات} other {# مرفقًا}}", "reply_indicator.cancel": "إلغاء", + "reply_indicator.poll": "استطلاع رأي", "report.block": "حظر", "report.block_explanation": "لن ترى منشوراته ولن يمكنه متابعتك أو رؤية منشوراتك، سيكون بديهيا له أنه مكتوم.", "report.categories.legal": "إشعارات قانونية", @@ -570,6 +607,7 @@ "search.quick_action.status_search": "المنشورات المطابقة لـ {x}", "search.search_or_paste": "ابحث أو أدخل رابطا تشعبيا URL", "search_popout.full_text_search_disabled_message": "غير متوفر على {domain}.", + "search_popout.full_text_search_logged_out_message": "متاح فقط عند تسجيل الدخول.", "search_popout.language_code": "رمز لغة ISO", "search_popout.options": "خيارات البحث", "search_popout.quick_actions": "الإجراءات السريعة", diff --git a/app/javascript/mastodon/locales/ast.json b/app/javascript/mastodon/locales/ast.json index 479c9c9243..8e69d434b4 100644 --- a/app/javascript/mastodon/locales/ast.json +++ b/app/javascript/mastodon/locales/ast.json @@ -199,6 +199,11 @@ "follow_request.authorize": "Autorizar", "follow_request.reject": "Refugar", "follow_requests.unlocked_explanation": "Magar que la to cuenta nun seya privada, el personal del dominiu «{domain}» pensó qu'a lo meyor quies revisar manualmente les solicitúes de siguimientu d'estes cuentes.", + "follow_suggestions.dismiss": "Nun volver amosar", + "follow_suggestions.personalized_suggestion": "Suxerencia personalizada", + "follow_suggestions.popular_suggestion": "Suxerencia popular", + "follow_suggestions.view_all": "Ver too", + "follow_suggestions.who_to_follow": "A quién siguir", "footer.about": "Tocante a", "footer.directory": "Direutoriu de perfiles", "footer.get_app": "Consiguir l'aplicación", diff --git a/app/javascript/mastodon/locales/be.json b/app/javascript/mastodon/locales/be.json index e069515109..c0b744fbaf 100644 --- a/app/javascript/mastodon/locales/be.json +++ b/app/javascript/mastodon/locales/be.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "закрыты", "compose_form.placeholder": "Што здарылася?", "compose_form.poll.duration": "Працягласць апытання", + "compose_form.poll.multiple": "Множны выбар", + "compose_form.poll.option_placeholder": "Варыянт {number}", + "compose_form.poll.single": "Адзін варыянт", "compose_form.poll.switch_to_multiple": "Змяніце апытанне, каб дазволіць некалькі варыянтаў адказу", "compose_form.poll.switch_to_single": "Змяніце апытанне, каб дазволіць адзіны варыянт адказу", - "compose_form.publish_form": "Апублікаваць", + "compose_form.poll.type": "Стыль", + "compose_form.publish": "Даслаць", + "compose_form.publish_form": "Новы допіс", + "compose_form.reply": "Адказаць", + "compose_form.save_changes": "Абнавіць", "compose_form.spoiler.marked": "Выдаліць папярэджанне аб змесціве", "compose_form.spoiler.unmarked": "Дадаць папярэджанне аб змесціве", + "compose_form.spoiler_placeholder": "Папярэджанне аб змесціве (неабавязкова)", "confirmation_modal.cancel": "Скасаваць", "confirmations.block.block_and_report": "Заблакіраваць і паскардзіцца", "confirmations.block.confirm": "Заблакіраваць", @@ -269,6 +277,17 @@ "follow_request.authorize": "Аўтарызацыя", "follow_request.reject": "Адхіліць", "follow_requests.unlocked_explanation": "Ваш акаўнт не схаваны, аднак прадстаўнікі {domain} палічылі, што вы можаце захацець праглядзець запыты на падпіску з гэтых профіляў уручную.", + "follow_suggestions.curated_suggestion": "Выбар адміністрацыі", + "follow_suggestions.dismiss": "Не паказваць зноў", + "follow_suggestions.hints.featured": "Гэты профіль быў выбраны ўручную камандай {domain}.", + "follow_suggestions.hints.friends_of_friends": "Гэты профіль папулярны сярод людзей, на якіх вы падпісаліся.", + "follow_suggestions.hints.most_followed": "Гэты профіль - адзін з профіляў з самай вялікай колькасцю падпісак на {domain}.", + "follow_suggestions.hints.most_interactions": "У апошні час гэты профіль прыцягвае шмат увагі на {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Гэты профіль падобны на профілі, на якія вы нядаўна падпісаліся.", + "follow_suggestions.personalized_suggestion": "Персаналізаваная прапанова", + "follow_suggestions.popular_suggestion": "Папулярная прапанова", + "follow_suggestions.view_all": "Праглядзець усё", + "follow_suggestions.who_to_follow": "На каго падпісацца", "followed_tags": "Падпіскі", "footer.about": "Пра нас", "footer.directory": "Дырэкторыя профіляў", @@ -295,13 +314,9 @@ "hashtag.follow": "Падпісацца на хэштэг", "hashtag.unfollow": "Адпісацца ад хэштэга", "hashtags.and_other": "…і яшчэ {count, plural, other {#}}", - "home.actions.go_to_explore": "Паглядзіце, што ў трэндзе", - "home.actions.go_to_suggestions": "Знайсці людзей, каб падпісацца", "home.column_settings.basic": "Асноўныя", "home.column_settings.show_reblogs": "Паказаць пашырэнні", "home.column_settings.show_replies": "Паказваць адказы", - "home.explore_prompt.body": "Ваша галоўная стужка змяшчае сумесь допісаў з хэштэгамі, за якімі вы вырашылі сачыць, допісаў ад людзей, за якімі вы вырашылі сачыць, і допісаў, якія яны пашыраюць. Зараз усё выглядае даволі ціха, так што як наконт:", - "home.explore_prompt.title": "Гэта ваша апорная кропка ў Mastodon.", "home.hide_announcements": "Схаваць аб'явы", "home.pending_critical_update.body": "Калі ласка, абнавіце свой сервер Mastodon як мага хутчэй!", "home.pending_critical_update.link": "Прагледзець абнаўленні", @@ -514,7 +529,15 @@ "poll_button.add_poll": "Дадаць апытанне", "poll_button.remove_poll": "Выдаліць апытанне", "privacy.change": "Змяніць прыватнасць допісу", + "privacy.direct.long": "Усе згаданыя ў допісе", + "privacy.direct.short": "Канкрэтныя людзі", + "privacy.private.long": "Толькі вашыя падпісчыкі", + "privacy.private.short": "Падпісчыкі", + "privacy.public.long": "Усе, хто ёсць і каго няма ў Mastodon", "privacy.public.short": "Публічны", + "privacy.unlisted.additional": "Паводзіць сябе гэтак жа, як і публічны, за выключэннем таго, што пост не будзе адлюстроўвацца ў жывой стужцы, хэштэгах, аглядзе або ў пошуку Mastodon, нават калі вы ўключылі бачнасць у пошуку ў наладах.", + "privacy.unlisted.long": "Менш фанфар ад алгарытмаў", + "privacy.unlisted.short": "Ціхі публічны", "privacy_policy.last_updated": "Адноўлена {date}", "privacy_policy.title": "Палітыка канфідэнцыйнасці", "recommended": "Рэкамендуем", @@ -532,7 +555,9 @@ "relative_time.minutes": "{number} хв", "relative_time.seconds": "{number} с", "relative_time.today": "сёння", + "reply_indicator.attachments": "{count, plural, one {# далучэнне} few {# далучэнні} many {# далучэнняў} other {# далучэння}}", "reply_indicator.cancel": "Скасаваць", + "reply_indicator.poll": "Апытанне", "report.block": "Заблакіраваць", "report.block_explanation": "Вы перастанеце бачыць допісы гэтага карыстальніка. Ён не зможа сачыць за вамі і бачыць вашы допісы. Ён зможа зразумець, што яго заблакіравалі.", "report.categories.legal": "Права", @@ -664,7 +689,7 @@ "status.show_more": "Паказаць болей", "status.show_more_all": "Разгарнуць усё", "status.show_original": "Паказаць арыгінал", - "status.title.with_attachments": "{user} апублікаваў {attachmentCount, plural, one {укладанне} other {{attachmentCount} укладанні}}", + "status.title.with_attachments": "{user} апублікаваў {attachmentCount, plural, one {далучэнне} few {{attachmentCount} далучэнні} many {{attachmentCount} далучэнняў} other {{attachmentCount} далучэння}}", "status.translate": "Перакласці", "status.translated_from_with": "Перакладзена з {lang} з дапамогай {provider}", "status.uncached_media_warning": "Перадпрагляд недаступны", diff --git a/app/javascript/mastodon/locales/bg.json b/app/javascript/mastodon/locales/bg.json index 213ac090a7..f08ca46af8 100644 --- a/app/javascript/mastodon/locales/bg.json +++ b/app/javascript/mastodon/locales/bg.json @@ -3,12 +3,12 @@ "about.contact": "За контакти:", "about.disclaimer": "Mastodon е безплатен софтуер с отворен изходен код и търговска марка на Mastodon gGmbH.", "about.domain_blocks.no_reason_available": "Няма налична причина", - "about.domain_blocks.preamble": "Mastodon обикновено позволява да разглеждате съдържание и да взаимодействате с други потребители от всякакви сървъри във Федивърс. Има изключения, направени конкретно за този сървър.", + "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.not_available": "Тази информация не е била направена налична на този сървър.", + "about.not_available": "Тази информация не е публична на този сървър.", "about.powered_by": "Децентрализирана социална мрежа, захранвана от {mastodon}", "about.rules": "Правила на сървъра", "account.account_note_header": "Бележка", @@ -110,7 +110,7 @@ "column.about": "Относно", "column.blocks": "Блокирани потребители", "column.bookmarks": "Отметки", - "column.community": "Локална часова ос", + "column.community": "Локален инфопоток", "column.direct": "Частни споменавания", "column.directory": "Разглеждане на профили", "column.domain_blocks": "Блокирани домейни", @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Вашият акаунт не е в положение {locked}. Всеки може да ви последва, за да разглежда публикациите ви само за последователи.", "compose_form.lock_disclaimer.lock": "заключено", "compose_form.placeholder": "Какво мислите?", - "compose_form.poll.add_option": "Добавяне на избор", "compose_form.poll.duration": "Времетраене на анкетата", "compose_form.poll.multiple": "Множествен избор", "compose_form.poll.option_placeholder": "Избор {number}", - "compose_form.poll.remove_option": "Премахване на тази възможност", "compose_form.poll.single": "Подберете нещо", "compose_form.poll.switch_to_multiple": "Промяна на анкетата, за да се позволят множество възможни избора", "compose_form.poll.switch_to_single": "Промяна на анкетата, за да се позволи един възможен избор", @@ -203,7 +201,7 @@ "disabled_account_banner.text": "Вашият акаунт {disabledAccount} сега е изключен.", "dismissable_banner.community_timeline": "Ето най-скорошните публични публикации от хора, чиито акаунти са разположени в {domain}.", "dismissable_banner.dismiss": "Отхвърляне", - "dismissable_banner.explore_links": "Тези новини се разказват от хората в този и други сървъри на децентрализираната мрежа точно сега.", + "dismissable_banner.explore_links": "Това са най-споделяните новини в социалната мрежа днес. По-нови истории, споделени от повече хора се показват по-напред.", "dismissable_banner.explore_statuses": "Има публикации през социалната мрежа, които днес набират популярност. По-новите публикации с повече подсилвания и любими са класирани по-високо.", "dismissable_banner.explore_tags": "Тези хаштагове сега набират популярност сред хората в този и други сървъри на децентрализирата мрежа.", "dismissable_banner.public_timeline": "Ето най-новите обществени публикации от хора в социална мрежа, която хората в {domain} следват.", @@ -224,16 +222,16 @@ "emoji_button.search_results": "Резултати от търсене", "emoji_button.symbols": "Символи", "emoji_button.travel": "Пътуване и места", - "empty_column.account_hides_collections": "Този потребител е избрал да не прави това сведение достъпно", + "empty_column.account_hides_collections": "Този потребител е избрал да не дава тази информация", "empty_column.account_suspended": "Спрян акаунт", "empty_column.account_timeline": "Тук няма публикации!", "empty_column.account_unavailable": "Профилът не е наличен", "empty_column.blocks": "Още не сте блокирали никакви потребители.", "empty_column.bookmarked_statuses": "Още не сте отметнали публикации. Отметвайки някоя, то тя ще се покаже тук.", - "empty_column.community": "Местната часова ос е празна. Напишете нещо обществено, за да завъртите нещата!", + "empty_column.community": "Локалният инфопоток е празен. Публикувайте нещо, за да започнете!", "empty_column.direct": "Още нямате никакви частни споменавания. Тук ще се показват, изпращайки или получавайки едно.", "empty_column.domain_blocks": "Още няма блокирани домейни.", - "empty_column.explore_statuses": "Няма нищо налагащо се в момента. Проверете пак по-късно!", + "empty_column.explore_statuses": "Няма тенденции в момента. Проверете пак по-късно!", "empty_column.favourited_statuses": "Още нямате никакви любими публикации. Правейки любима, то тя ще се покаже тук.", "empty_column.favourites": "Още никого не е слагал публикацията в любими. Когато някой го направи, този човек ще се покаже тук.", "empty_column.follow_requests": "Още нямате заявки за последване. Получавайки такава, то тя ще се покаже тук.", @@ -279,6 +277,17 @@ "follow_request.authorize": "Упълномощаване", "follow_request.reject": "Отхвърляне", "follow_requests.unlocked_explanation": "Въпреки че акаунтът ви не е заключен, служителите на {domain} помислиха, че може да искате да преглеждате ръчно заявките за последване на тези профили.", + "follow_suggestions.curated_suggestion": "Избор на персонал", + "follow_suggestions.dismiss": "Без ново показване", + "follow_suggestions.hints.featured": "Този профил е ръчно подбран от отбора на {domain}.", + "follow_suggestions.hints.friends_of_friends": "Този профил е популярен измежду хората, които следвате.", + "follow_suggestions.hints.most_followed": "Този профил е един от най-следваните при {domain}.", + "follow_suggestions.hints.most_interactions": "Този профил наскоро получи много внимание при {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Този профил е подобен на профилите, които сте последвали наскоро.", + "follow_suggestions.personalized_suggestion": "Персонализирано предложение", + "follow_suggestions.popular_suggestion": "Популярно предложение", + "follow_suggestions.view_all": "Преглед на всички", + "follow_suggestions.who_to_follow": "Кого да се следва", "followed_tags": "Последвани хаштагове", "footer.about": "Относно", "footer.directory": "Директория на профилите", @@ -305,13 +314,9 @@ "hashtag.follow": "Следване на хаштаг", "hashtag.unfollow": "Спиране на следване на хаштаг", "hashtags.and_other": "…и {count, plural, other {# още}}", - "home.actions.go_to_explore": "Вижте какво изгрява", - "home.actions.go_to_suggestions": "Намиране на хора за следване", "home.column_settings.basic": "Основно", "home.column_settings.show_reblogs": "Показване на подсилванията", "home.column_settings.show_replies": "Показване на отговорите", - "home.explore_prompt.body": "Вашият начален инфоканал ще е смес на публикации от хаштаговете, които сте избрали да следвате, избраните хора да следвате, а и публикациите, които са подсилили. Ако изглежда твърде тихо в момента, то може да искате да:", - "home.explore_prompt.title": "Това е началната ви база с Mastodon.", "home.hide_announcements": "Скриване на оповестяванията", "home.pending_critical_update.body": "Обновете сървъра си в Mastodon възможно най-скоро!", "home.pending_critical_update.link": "Преглед на обновяванията", @@ -348,10 +353,10 @@ "keyboard_shortcuts.favourites": "Отваряне на списъка с любими", "keyboard_shortcuts.federated": "Отваряне на федерирания инфопоток", "keyboard_shortcuts.heading": "Клавишни съчетания", - "keyboard_shortcuts.home": "Отваряне на началната часова ос", + "keyboard_shortcuts.home": "Отваряне на личния инфопоток", "keyboard_shortcuts.hotkey": "Бърз клавиш", "keyboard_shortcuts.legend": "Показване на тази легенда", - "keyboard_shortcuts.local": "Отваряне на местна часова ос", + "keyboard_shortcuts.local": "Отваряне на локалния инфопоток", "keyboard_shortcuts.mention": "Споменаване на автора", "keyboard_shortcuts.muted": "Отваряне на списъка със заглушени потребители", "keyboard_shortcuts.my_profile": "Отваряне на профила ви", @@ -402,12 +407,12 @@ "navigation_bar.advanced_interface": "Отваряне в разширен уебинтерфейс", "navigation_bar.blocks": "Блокирани потребители", "navigation_bar.bookmarks": "Отметки", - "navigation_bar.community_timeline": "Локална часова ос", + "navigation_bar.community_timeline": "Локален инфопоток", "navigation_bar.compose": "Съставяне на нова публикация", "navigation_bar.direct": "Частни споменавания", "navigation_bar.discover": "Откриване", "navigation_bar.domain_blocks": "Блокирани домейни", - "navigation_bar.explore": "Изследване", + "navigation_bar.explore": "Разглеждане", "navigation_bar.favourites": "Любими", "navigation_bar.filters": "Заглушени думи", "navigation_bar.follow_requests": "Заявки за последване", @@ -471,13 +476,13 @@ "notifications.permission_required": "Известията на работния плот ги няма, щото няма дадено нужното позволение.", "notifications_permission_banner.enable": "Включване на известията на работния плот", "notifications_permission_banner.how_to_control": "За да получавате известия, когато Mastodon не е отворен, включете известията на работния плот. Може да управлявате точно кои видове взаимодействия пораждат известия на работния плот чрез бутона {icon} по-горе, след като бъдат включени.", - "notifications_permission_banner.title": "Никога не пропускате нещо", + "notifications_permission_banner.title": "Никога не пропускайте нищо", "onboarding.action.back": "Върнете ме обратно", "onboarding.actions.back": "Върнете ме обратно", - "onboarding.actions.go_to_explore": "Вижте какво изгрява", + "onboarding.actions.go_to_explore": "Виж тенденции", "onboarding.actions.go_to_home": "Към началния ви инфоканал", "onboarding.compose.template": "Здравейте, #Mastodon!", - "onboarding.follows.empty": "За съжаление, в момента не могат да се показват резултати. Може да опитате да употребявате търсене или да прегледате страницата за изследване, за да намерите страница за последване, или да опитате пак по-късно.", + "onboarding.follows.empty": "За съжаление, в момента не могат да бъдат показани резултати. Може да опитате да търсите или да разгледате, за да намерите кого да последвате, или опитайте отново по-късно.", "onboarding.follows.lead": "Може да бъдете куратор на началния си инфоканал. Последвайки повече хора, по-деен и по-интересен ще става. Тези профили може да са добра начална точка, от която винаги по-късно да спрете да следвате!", "onboarding.follows.title": "Популярно в Mastodon", "onboarding.profile.discoverable": "Правене на моя профил откриваем", @@ -524,12 +529,13 @@ "poll_button.add_poll": "Анкетиране", "poll_button.remove_poll": "Премахване на анкета", "privacy.change": "Промяна на поверителността на публикация", - "privacy.direct.long": "Всеки споменат в публикацията", + "privacy.direct.long": "Споменатите в публикацията", "privacy.direct.short": "Определени хора", "privacy.private.long": "Само последователите ви", "privacy.private.short": "Последователи", "privacy.public.long": "Всеки във и извън Mastodon", "privacy.public.short": "Публично", + "privacy.unlisted.additional": "Това действие е точно като публичното, с изключение на това, че публикацията няма да се появява в каналите на живо, хаштаговете, разглеждането или търсенето в Mastodon, дори ако сте избрали да се публично видими на ниво акаунт.", "privacy.unlisted.long": "По-малко алгоритмични фанфари", "privacy.unlisted.short": "Тиха публика", "privacy_policy.last_updated": "Последно осъвременяване на {date}", diff --git a/app/javascript/mastodon/locales/br.json b/app/javascript/mastodon/locales/br.json index 5e83ab4e6d..5ce52d527a 100644 --- a/app/javascript/mastodon/locales/br.json +++ b/app/javascript/mastodon/locales/br.json @@ -29,7 +29,7 @@ "account.enable_notifications": "Ma c'hemenn pa vez embannet traoù gant @{name}", "account.endorse": "Lakaat war-wel war ar profil", "account.featured_tags.last_status_at": "Toud diwezhañ : {date}", - "account.featured_tags.last_status_never": "Toud ebet", + "account.featured_tags.last_status_never": "Embannadur ebet", "account.featured_tags.title": "Hashtagoù pennañ {name}", "account.follow": "Heuliañ", "account.follow_back": "Heuliañ d'ho tro", @@ -62,7 +62,7 @@ "account.requested_follow": "Gant {name} eo bet goulennet ho heuliañ", "account.share": "Skignañ profil @{name}", "account.show_reblogs": "Diskouez skignadennoù @{name}", - "account.statuses_counter": "{count, plural, one {{counter} Toud} two {{counter} Doud} other {{counter} a Doudoù}}", + "account.statuses_counter": "{count, plural, one {{counter} C'hannad} two {{counter} Gannad} other {{counter} a Gannadoù}}", "account.unblock": "Diverzañ @{name}", "account.unblock_domain": "Diverzañ an domani {domain}", "account.unblock_short": "Distankañ", @@ -118,9 +118,9 @@ "column.lists": "Listennoù", "column.mutes": "Implijer·ion·ezed kuzhet", "column.notifications": "Kemennoù", - "column.pins": "Toudoù spilhennet", + "column.pins": "Embannadurioù spilhennet", "column.public": "Red-amzer kevredet", - "column_back_button.label": "Distro", + "column_back_button.label": "Distreiñ", "column_header.hide_settings": "Kuzhat an arventennoù", "column_header.moveLeft_settings": "Dilec'hiañ ar bannad a-gleiz", "column_header.moveRight_settings": "Dilec'hiañ ar bannad a-zehou", @@ -143,9 +143,14 @@ "compose_form.lock_disclaimer.lock": "prennet", "compose_form.placeholder": "Petra emaoc'h o soñjal e-barzh ?", "compose_form.poll.duration": "Pad ar sontadeg", + "compose_form.poll.single": "Dibabit unan", "compose_form.poll.switch_to_multiple": "Kemmañ ar sontadeg evit aotren meur a zibab", "compose_form.poll.switch_to_single": "Kemmañ ar sontadeg evit aotren un dibab hepken", + "compose_form.poll.type": "Neuz", + "compose_form.publish": "Embann", "compose_form.publish_form": "Embann", + "compose_form.reply": "Respont", + "compose_form.save_changes": "Hizivadur", "compose_form.spoiler.marked": "Kuzhet eo an destenn a-dreñv ur c'hemenn", "compose_form.spoiler.unmarked": "N'eo ket kuzhet an destenn", "confirmation_modal.cancel": "Nullañ", @@ -194,9 +199,9 @@ "embed.preview": "Setu penaos e teuio war wel :", "emoji_button.activity": "Obererezh", "emoji_button.clear": "Diverkañ", - "emoji_button.custom": "Kempennet", + "emoji_button.custom": "Personelaet", "emoji_button.flags": "Bannieloù", - "emoji_button.food": "Boued hag Evaj", + "emoji_button.food": "Boued & Evajoù", "emoji_button.label": "Enlakaat un emoji", "emoji_button.nature": "Natur", "emoji_button.not_found": "Emoji ebet !! (╯°□°)╯︵ ┻━┻", @@ -206,12 +211,12 @@ "emoji_button.search": "O klask...", "emoji_button.search_results": "Disoc'hoù an enklask", "emoji_button.symbols": "Arouezioù", - "emoji_button.travel": "Lec'hioù ha Beajoù", + "emoji_button.travel": "Beajiñ & Lec'hioù", "empty_column.account_suspended": "Kont ehanet", "empty_column.account_timeline": "Toud ebet amañ !", "empty_column.account_unavailable": "Profil dihegerz", "empty_column.blocks": "N'eus ket bet berzet implijer·ez ganeoc'h c'hoazh.", - "empty_column.bookmarked_statuses": "N'ho peus toud ebet enrollet en ho sinedoù c'hoazh. Pa vo ouzhpennet unan e teuio war wel amañ.", + "empty_column.bookmarked_statuses": "N'ho peus embannadur ebet enrollet en ho sinedoù c'hoazh. Pa vo ouzhpennet unan e teuio war wel amañ.", "empty_column.community": "Goulo eo ar red-amzer lec'hel. Skrivit'ta un dra evit lakaat tan dezhi !", "empty_column.domain_blocks": "N'eus domani kuzh ebet c'hoazh.", "empty_column.explore_statuses": "N'eus tuadur ebet evit c'hoazh. Distroit diwezhatoc'h !", @@ -255,6 +260,7 @@ "follow_request.authorize": "Aotren", "follow_request.reject": "Nac'hañ", "follow_requests.unlocked_explanation": "Daoust ma n'eo ket ho kont prennet, skipailh {domain} a soñj e fellfe deoc'h gwiriekaat pedadennoù heuliañ deus ar c'hontoù-se diwar-zorn.", + "follow_suggestions.view_all": "Gwelet pep tra", "followed_tags": "Hashtagoù o heuliañ", "footer.about": "Diwar-benn", "footer.directory": "Kavlec'h ar profiloù", @@ -262,7 +268,7 @@ "footer.invite": "Pediñ tud", "footer.keyboard_shortcuts": "Berradennoù klavier", "footer.privacy_policy": "Reolennoù prevezded", - "footer.source_code": "Gwelet kod mammenn", + "footer.source_code": "Gwelet ar c'hod mammenn", "footer.status": "Statud", "generic.saved": "Enrollet", "getting_started.heading": "Loc'hañ", @@ -280,12 +286,9 @@ "hashtag.follow": "Heuliañ ar ger-klik", "hashtag.unfollow": "Paouez heuliañ an hashtag", "hashtags.and_other": "…{count, plural, one {hag # all} other {ha # all}}", - "home.actions.go_to_explore": "Gwelet petra zo diouzh ar c'hiz", - "home.actions.go_to_suggestions": "Kavout tud da heuliañ", "home.column_settings.basic": "Diazez", "home.column_settings.show_reblogs": "Diskouez ar skignadennoù", "home.column_settings.show_replies": "Diskouez ar respontoù", - "home.explore_prompt.title": "Homañ eo ho pajenn degemer e-barzh Mastodon.", "home.hide_announcements": "Kuzhat ar c'hemennoù", "home.pending_critical_update.body": "Hizivait ho servijer Mastodon kerkent ha ma c'hallit mar plij!", "home.pending_critical_update.link": "Gwelet an hizivadennoù", @@ -293,7 +296,7 @@ "interaction_modal.description.follow": "Gant ur gont Mastodon e c'hellit heuliañ {name} evit resev an toudoù a embann war ho red degemer.", "interaction_modal.description.reblog": "Gant ur gont Mastodon e c'hellit skignañ an toud-mañ evit rannañ anezhañ gant ho heulierien·ezed.", "interaction_modal.description.reply": "Gant ur gont Mastodon e c'hellit respont d'an toud-mañ.", - "interaction_modal.no_account_yet": "N'eo ket war vMastodon?", + "interaction_modal.no_account_yet": "N'emañ ket war vMastodon?", "interaction_modal.on_another_server": "War ur servijer all", "interaction_modal.on_this_server": "War ar servijer-mañ", "interaction_modal.title.favourite": "Ouzhpennañ embannadur {name} d'ar re vuiañ-karet", @@ -461,7 +464,7 @@ "onboarding.steps.setup_profile.body": "Others are more likely to interact with you with a filled out profile.", "onboarding.steps.setup_profile.title": "Customize your profile", "onboarding.steps.share_profile.body": "Let your friends know how to find you on Mastodon!", - "onboarding.steps.share_profile.title": "Share your profile", + "onboarding.steps.share_profile.title": "Rannit ho kont Mastodon", "password_confirmation.mismatching": "Disheñvel eo an daou c'her-termen-se", "picture_in_picture.restore": "Adlakaat", "poll.closed": "Serret", @@ -474,7 +477,9 @@ "poll.votes": "{votes, plural,one {#votadenn} other {# votadenn}}", "poll_button.add_poll": "Ouzhpennañ ur sontadeg", "poll_button.remove_poll": "Dilemel ar sontadeg", - "privacy.change": "Cheñch prevezded an toud", + "privacy.change": "Cheñch prevezded an embannadur", + "privacy.direct.short": "Tud resis", + "privacy.private.short": "Heulierien", "privacy.public.short": "Publik", "privacy_policy.last_updated": "Hizivadenn ziwezhañ {date}", "privacy_policy.title": "Reolennoù Prevezded", @@ -494,6 +499,7 @@ "relative_time.seconds": "{number}eil", "relative_time.today": "hiziv", "reply_indicator.cancel": "Nullañ", + "reply_indicator.poll": "Sontadeg", "report.block": "Stankañ", "report.block_explanation": "Ne vo ket gwelet toudoù ar gont-se ken. Ne welo ket ho toudoù ha ne c'hello ket ho heuliañ ken. Gouzout a raio eo bet stanket ganeoc'h.", "report.categories.legal": "Lezennel", diff --git a/app/javascript/mastodon/locales/ca.json b/app/javascript/mastodon/locales/ca.json index 0d089bf8b8..2345424728 100644 --- a/app/javascript/mastodon/locales/ca.json +++ b/app/javascript/mastodon/locales/ca.json @@ -145,18 +145,16 @@ "compose_form.lock_disclaimer": "El teu compte no està {locked}. Tothom pot seguir-te i veure els tuts de només per a seguidors.", "compose_form.lock_disclaimer.lock": "blocat", "compose_form.placeholder": "Què tens al cap?", - "compose_form.poll.add_option": "Afegiu una opció", "compose_form.poll.duration": "Durada de l'enquesta", "compose_form.poll.multiple": "Opcions múltiples", "compose_form.poll.option_placeholder": "Opció {number}", - "compose_form.poll.remove_option": "Treu aquesta opció", "compose_form.poll.single": "Trieu-ne una", "compose_form.poll.switch_to_multiple": "Canvia l’enquesta per a permetre múltiples opcions", "compose_form.poll.switch_to_single": "Canvia l’enquesta per a permetre una única opció", "compose_form.poll.type": "Estil", "compose_form.publish": "Publica", "compose_form.publish_form": "Nou tut", - "compose_form.reply": "Responeu", + "compose_form.reply": "Respon", "compose_form.save_changes": "Actualitza", "compose_form.spoiler.marked": "Elimina l'avís de contingut", "compose_form.spoiler.unmarked": "Afegeix avís de contingut", @@ -279,6 +277,17 @@ "follow_request.authorize": "Autoritza", "follow_request.reject": "Rebutja", "follow_requests.unlocked_explanation": "Tot i que el teu compte no està blocat, el personal de {domain} ha pensat que és possible que vulguis revisar manualment les sol·licituds de seguiment d’aquests comptes.", + "follow_suggestions.curated_suggestion": "Tria de l'equip", + "follow_suggestions.dismiss": "No ho tornis a mostrar", + "follow_suggestions.hints.featured": "L'equip de {domain} ha seleccionat aquest perfil.", + "follow_suggestions.hints.friends_of_friends": "Aquest perfil és popular entre la gent que seguiu.", + "follow_suggestions.hints.most_followed": "Aquest perfil és un dels més seguits a {domain}.", + "follow_suggestions.hints.most_interactions": "Aquest perfil ha estat rebent un munt d'atenció recentment a {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Aquest perfil és similar a d'altres que heu seguit recentment.", + "follow_suggestions.personalized_suggestion": "Suggeriment personalitzat", + "follow_suggestions.popular_suggestion": "Suggeriment popular", + "follow_suggestions.view_all": "Mostra-ho tot", + "follow_suggestions.who_to_follow": "A qui seguir", "followed_tags": "Etiquetes seguides", "footer.about": "Quant a", "footer.directory": "Directori de perfils", @@ -305,13 +314,9 @@ "hashtag.follow": "Segueix l'etiqueta", "hashtag.unfollow": "Deixa de seguir l'etiqueta", "hashtags.and_other": "…i {count, plural, other {# més}}", - "home.actions.go_to_explore": "Mira què és tendència", - "home.actions.go_to_suggestions": "Troba persones a seguir", "home.column_settings.basic": "Bàsic", "home.column_settings.show_reblogs": "Mostra els impulsos", "home.column_settings.show_replies": "Mostra les respostes", - "home.explore_prompt.body": "La teva línia de temps Inici tindrà una barreja dels tuts de les etiquetes que has triat seguir, de les persones que has triat seguir i dels tuts que s'impulsen. Ara mateix es veu força tranquil·la, què et sembla si:", - "home.explore_prompt.title": "Aquesta és la teva base inicial a Mastodon.", "home.hide_announcements": "Amaga els anuncis", "home.pending_critical_update.body": "Si us plau actualitza el teu servidor Mastodon tant aviat com sigui possible!", "home.pending_critical_update.link": "Veure actualitzacions", @@ -524,12 +529,15 @@ "poll_button.add_poll": "Afegeix una enquesta", "poll_button.remove_poll": "Elimina l'enquesta", "privacy.change": "Canvia la privacitat del tut", - "privacy.direct.long": "Tothom mencionat en aquesta publicació", + "privacy.direct.long": "Tothom mencionat a la publicació", "privacy.direct.short": "Persones concretes", "privacy.private.long": "Només els vostres seguidors", "privacy.private.short": "Seguidors", "privacy.public.long": "Tothom dins o fora Mastodon", "privacy.public.short": "Públic", + "privacy.unlisted.additional": "Es comporta igual que públic, excepte que la publicació no apareixerà als canals en directe o etiquetes, l'explora o a la cerca de Mastodon, fins i tot si ho heu activat a nivell de compte.", + "privacy.unlisted.long": "Menys fanfàrries algorísmiques", + "privacy.unlisted.short": "Públic silenciós", "privacy_policy.last_updated": "Darrera actualització {date}", "privacy_policy.title": "Política de Privacitat", "recommended": "Recomanat", @@ -547,7 +555,9 @@ "relative_time.minutes": "{number}min", "relative_time.seconds": "{number}s", "relative_time.today": "avui", + "reply_indicator.attachments": "{count, plural, one {# adjunt} other {# adjunts}}", "reply_indicator.cancel": "Cancel·la", + "reply_indicator.poll": "Enquesta", "report.block": "Bloca", "report.block_explanation": "No veuràs els seus tuts. Ells no podran veure els teus tuts ni et podran seguir. Podran saber que estan blocats.", "report.categories.legal": "Legal", diff --git a/app/javascript/mastodon/locales/ckb.json b/app/javascript/mastodon/locales/ckb.json index 73910f9b7c..62195b72dc 100644 --- a/app/javascript/mastodon/locales/ckb.json +++ b/app/javascript/mastodon/locales/ckb.json @@ -17,9 +17,11 @@ "account.badges.group": "گرووپ", "account.block": "بلۆکی @{name}", "account.block_domain": "بلۆکی هەموو شتێک لە {domain}", + "account.block_short": "بلۆک", "account.blocked": "بلۆککرا", "account.browse_more_on_origin_server": "گەڕانی فرەتر لە سەر پرۆفایلی سەرەکی", "account.cancel_follow_request": "داواکاری فۆڵۆو بکشێنەوە", + "account.copy": "ڕوونووسی بەستەر بۆ توت", "account.direct": "بە شێوەیەکی تایبەت باسی @{name} بکە", "account.disable_notifications": "ئاگانامە مەنێرە بۆم کاتێک @{name} پۆست دەکرێت", "account.domain_blocked": "دۆمەین قەپاتکرا", @@ -30,6 +32,7 @@ "account.featured_tags.last_status_never": "هیچ پۆستێک نییە", "account.featured_tags.title": "هاشتاگە تایبەتەکانی {name}", "account.follow": "بەدواداچوون", + "account.follow_back": "فۆڵۆو بکەنەوە", "account.followers": "شوێنکەوتووان", "account.followers.empty": "کەسێک شوێن ئەم بەکارهێنەرە نەکەوتووە", "account.followers_counter": "{count, plural, one {{counter} شوێنکەوتوو} other {{counter} شوێنکەوتوو}}", @@ -38,6 +41,7 @@ "account.follows.empty": "ئەم بەکارهێنەرە تا ئێستا شوێن کەس نەکەوتووە.", "account.go_to_profile": "بڕۆ بۆ پڕۆفایلی", "account.hide_reblogs": "داشاردنی بووستەکان لە @{name}", + "account.in_memoriam": "لە یادەوەریدا.", "account.joined_short": "بەشداری کردووە", "account.languages": "گۆڕینی زمانە بەشداربووەکان", "account.link_verified_on": "خاوەنداریەتی ئەم لینکە لە {date} چێک کراوە", @@ -46,7 +50,11 @@ "account.mention": "ئاماژە @{name}", "account.moved_to": "{name} ئاماژەی بەوە کردووە کە ئەکاونتە نوێیەکەیان ئێستا:", "account.mute": "بێدەنگکردن @{name}", + "account.mute_notifications_short": "پاڵ بە ئاگادارکردنەوەکانەوە بنێ", + "account.mute_short": "بێدەنگ", "account.muted": "بێ دەنگ", + "account.mutual": "دوولایەنە", + "account.no_bio": "هیچ وەسفێک نەخراوەتەڕوو.", "account.open_original_page": "لاپەڕەی ئەسڵی بکەرەوە", "account.posts": "نووسراوەکان", "account.posts_with_replies": "توتس و وەڵامەکان", @@ -62,6 +70,7 @@ "account.unendorse": "تایبەتمەندی لەسەر پرۆفایلەکە نیە", "account.unfollow": "بەدوادانەچو", "account.unmute": "بێدەنگکردنی @{name}", + "account.unmute_notifications_short": "ئاگادارکردنەوەکان بێدەنگ بکەرەوە", "account.unmute_short": "بێدەنگی مەکە", "account_note.placeholder": "کرتەبکە بۆ زیادکردنی تێبینی", "admin.dashboard.daily_retention": "ڕێژەی مانەوەی بەکارهێنەر بەپێی ڕۆژ دوای ناو تۆمارکردن", @@ -69,6 +78,10 @@ "admin.dashboard.retention.average": "ڕێژە", "admin.dashboard.retention.cohort": "چوونەژوورەوەی مانگانە", "admin.dashboard.retention.cohort_size": "ئەندامی نوێ", + "admin.impact_report.instance_accounts": "پڕۆفایلی هەژمارەکان ئەمە دەسڕێتەوە", + "admin.impact_report.instance_followers": "فۆڵۆوەرەکان بەکارهێنەران لەدەست دەدەن", + "admin.impact_report.instance_follows": "فۆڵۆوەرەکان ئەمبەکارهێنەرە لەدەست دەدەن", + "admin.impact_report.title": "پوختەی کاریگەرییەکان", "alert.rate_limited.message": "تکایە هەوڵبدەرەوە دوای {retry_time, time, medium}.", "alert.rate_limited.title": "ڕێژەی سنووردار", "alert.unexpected.message": "هەڵەیەکی چاوەڕوان نەکراو ڕوویدا.", @@ -101,6 +114,8 @@ "column.direct": "ئاماژەی تایبەت", "column.directory": "گەڕان لە پرۆفایلەکان", "column.domain_blocks": "دۆمەینە داخراوەکان", + "column.favourites": "دڵخوازەکان", + "column.firehose": "فیدی ڕاستەوخۆ", "column.follow_requests": "بەدواداچوی داواکاریەکان بکە", "column.home": "سەرەتا", "column.lists": "پێرست", @@ -121,6 +136,9 @@ "community.column_settings.remote_only": "تەنها بۆ دوور", "compose.language.change": "گۆڕینی زمان", "compose.language.search": "گەڕان بە زمانەکان...", + "compose.published.body": "پۆست بڵاوکراوەتەوە.", + "compose.published.open": "بیکەوە", + "compose.saved.body": "پۆستەکە سەیڤ کراوە.", "compose_form.direct_message_warning_learn_more": "زیاتر فێربه", "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.", "compose_form.hashtag_warning": "ئەم بڵاوکراوەیە لە ژێر هیچ هاشتاگێکدا دا نانرێت وەک ئەوەیە، کە گشتی نەبێت. تەنها بڵاوکراوە گشتیەکان دەتوانرێ بە هاشتاگ گەڕانی بۆ بکرێت.", @@ -128,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "قفڵ دراوە", "compose_form.placeholder": "چی لە مێشکتدایە?", "compose_form.poll.duration": "ماوەی ڕاپرسی", + "compose_form.poll.multiple": "فرە هەڵبژاردە", + "compose_form.poll.option_placeholder": "بژاردەی {number}", + "compose_form.poll.single": "یەکێك هەلبژێرە", "compose_form.poll.switch_to_multiple": "ڕاپرسی بگۆڕە بۆ ڕێگەدان بە چەند هەڵبژاردنێک", "compose_form.poll.switch_to_single": "گۆڕینی ڕاپرسی بۆ ڕێگەدان بە تاکە هەڵبژاردنێک", + "compose_form.poll.type": "ستایڵ", + "compose_form.publish": "پۆست", "compose_form.publish_form": "بڵاوی بکەوە", + "compose_form.reply": "وەڵام", + "compose_form.save_changes": "نوێکردنەوە", "compose_form.spoiler.marked": "دەق لە پشت ئاگاداریدا شاراوەتەوە", "compose_form.spoiler.unmarked": "دەق شاراوە نییە", + "compose_form.spoiler_placeholder": "ئاگادارکردنەوەی ناوەڕۆک (ئیختیاری)", "confirmation_modal.cancel": "هەڵوەشاندنەوه", "confirmations.block.block_and_report": "بلۆک & گوزارشت", "confirmations.block.confirm": "بلۆک", @@ -155,6 +181,7 @@ "confirmations.mute.explanation": "ئەمەش دەبێتە هۆی شاردنەوەی پۆستەکان یان ئەو بابەتانەی کە ئاماژەیان پێ دەکات ، بەڵام هێشتا ڕێگەیان پێ دەدات کە پۆستەکانتان ببینن و شوێنتان بکەون.", "confirmations.mute.message": "ئایا دڵنیایت لەوەی دەتەوێت بیلێیت {name}?", "confirmations.redraft.confirm": "سڕینەوە & دووبارە ڕەشکردنەوە", + "confirmations.redraft.message": "دڵنیای دەتەوێت ئەم پۆستە بسڕیتەوە و دووبارە دایبڕێژیتەوە؟ فەڤۆریت و بووستەکان لەدەست دەچن، وەڵامەکانی پۆستە ئەسڵیەکەش هەتیو دەبن.", "confirmations.reply.confirm": "وەڵام", "confirmations.reply.message": "وەڵامدانەوە ئێستا ئەو نامەیە ی کە تۆ ئێستا دایڕشتووە، دەنووسێتەوە. ئایا دڵنیایت کە دەتەوێت بەردەوام بیت?", "confirmations.unfollow.confirm": "بەدوادانەچو", @@ -163,7 +190,9 @@ "conversation.mark_as_read": "نیشانەکردن وەک خوێندراوە", "conversation.open": "نیشاندان گفتوگۆ", "conversation.with": "لەگەڵ{names}", + "copy_icon_button.copied": "کۆپی کراوە بۆ کلیپبۆرد", "copypaste.copied": "کۆپی کراوە", + "copypaste.copy_to_clipboard": "کۆپی کراوە بۆ کلیپبۆرد", "directory.federated": "لە ڕاژەکانی ناسراو", "directory.local": "تەنها لە {domain}", "directory.new_arrivals": "تازە گەیشتنەکان", @@ -173,6 +202,7 @@ "dismissable_banner.community_timeline": "ئەمانە دوایین پۆستی گشتی ئەو کەسانەن کە ئەکاونتەکانیان لەلایەن {domain}ەوە هۆست کراوە.", "dismissable_banner.dismiss": "بەلاوە نان", "dismissable_banner.explore_links": "ئەم هەواڵانە لە ئێستادا لەلایەن کەسانێکەوە لەسەر ئەم سێرڤەرە و سێرڤەرەکانی تری تۆڕی لامەرکەزی باس دەکرێن.", + "dismissable_banner.explore_statuses": "ئەمانە پۆستەکانن لە سەرانسەری وێبی کۆمەڵایەتی کە ئەمڕۆ کێشکردنیان بەدەستهێناوە. پۆستە نوێیەکان کە بووست و فەڤریتی زیاتریان هەیە ڕیزبەندی بەرزتریان هەیە.", "dismissable_banner.explore_tags": "ئەم هاشتاگانە لە ئێستادا لە نێو خەڵکی سەر ئەم سێرڤەرە و سێرڤەرەکانی تری تۆڕی لامەرکەزیدا جێگەی خۆیان دەگرن.", "embed.instructions": "ئەم توتە بنچین بکە لەسەر وێب سایتەکەت بە کۆپیکردنی کۆدەکەی خوارەوە.", "embed.preview": "ئەمە ئەو شتەیە کە لە شێوەی خۆی دەچێت:", @@ -216,6 +246,7 @@ "errors.unexpected_crash.copy_stacktrace": "کۆپیکردنی ستێکتراسی بۆ کلیپ بۆرد", "errors.unexpected_crash.report_issue": "کێشەی گوزارشت", "explore.search_results": "ئەنجامەکانی گەڕان", + "explore.suggested_follows": "خەڵک", "explore.title": "گەڕان", "explore.trending_links": "هەواڵەکان", "explore.trending_statuses": "بڵاوکراوەکان", @@ -236,9 +267,16 @@ "filter_modal.select_filter.subtitle": "بەکارهێنانی پۆلێنی بەردەست یان دروستکردنی پۆلێنێکی نوێ", "filter_modal.select_filter.title": "ئەم بڵاوکراوەیە بپاڵێوە", "filter_modal.title.status": "بڵاوکراوەیەک بپاڵێوە", + "firehose.all": "هەموو", + "firehose.local": "لەسەر ئەم ڕاژەیە", + "firehose.remote": "ڕاژەکانی دی", "follow_request.authorize": "ده‌سه‌ڵاتپێدراو", "follow_request.reject": "ڕەتکردنەوە", "follow_requests.unlocked_explanation": "هەرچەندە هەژمارەکەت داخراو نییە، ستافی {domain} وا بیریان کردەوە کە لەوانەیە بتانەوێت پێداچوونەوە بە داواکاریەکانی ئەم هەژمارەدا بکەن بە دەستی.", + "follow_suggestions.curated_suggestion": "ستاف هەڵبژاردنی", + "follow_suggestions.dismiss": "دوبارە پشانی مەدە", + "follow_suggestions.view_all": "بینینی هەموو", + "follow_suggestions.who_to_follow": "دواکەوتنی کێ", "followed_tags": "هاشتاگە شوێنکەوتووەکان", "footer.about": "دەربارە", "footer.directory": "ڕابەری پەڕەی ناساندن", @@ -259,6 +297,7 @@ "hashtag.column_settings.tag_mode.any": "هەر کام لەمانە", "hashtag.column_settings.tag_mode.none": "هیچ کام لەمانە", "hashtag.column_settings.tag_toggle": "تاگی زیادە ی ئەم ستوونە لەخۆ بنووسە", + "hashtag.counter_by_accounts": "{count, plural, one {{counter} participant} other {{counter} participants}}", "hashtag.follow": "شوێنکەوتنی هاشتاگ", "hashtag.unfollow": "شوێن نەکەوتنی هاشتاگ", "home.column_settings.basic": "بنەڕەتی", diff --git a/app/javascript/mastodon/locales/cs.json b/app/javascript/mastodon/locales/cs.json index 7d91670de0..00b27e0521 100644 --- a/app/javascript/mastodon/locales/cs.json +++ b/app/javascript/mastodon/locales/cs.json @@ -32,6 +32,7 @@ "account.featured_tags.last_status_never": "Žádné příspěvky", "account.featured_tags.title": "Hlavní hashtagy uživatele {name}", "account.follow": "Sledovat", + "account.follow_back": "Také sledovat", "account.followers": "Sledující", "account.followers.empty": "Tohoto uživatele zatím nikdo nesleduje.", "account.followers_counter": "{count, plural, one {{counter} Sledující} few {{counter} Sledující} many {{counter} Sledujících} other {{counter} Sledujících}}", @@ -52,6 +53,7 @@ "account.mute_notifications_short": "Ztlumit upozornění", "account.mute_short": "Ztlumit", "account.muted": "Skrytý", + "account.mutual": "Vzájemné", "account.no_bio": "Nebyl poskytnut žádný popis.", "account.open_original_page": "Otevřít původní stránku", "account.posts": "Příspěvky", @@ -144,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "zamčený", "compose_form.placeholder": "Co se vám honí hlavou?", "compose_form.poll.duration": "Doba trvání ankety", + "compose_form.poll.multiple": "Výběr z více možností", + "compose_form.poll.option_placeholder": "Volba {number}", + "compose_form.poll.single": "Vyber jednu", "compose_form.poll.switch_to_multiple": "Povolit u ankety výběr více voleb", "compose_form.poll.switch_to_single": "Povolit u ankety výběr pouze jedné volby", + "compose_form.poll.type": "Styl", + "compose_form.publish": "Odeslat", "compose_form.publish_form": "Zveřejnit", + "compose_form.reply": "Odpovědět", + "compose_form.save_changes": "Aktualizovat", "compose_form.spoiler.marked": "Odebrat varování o obsahu", "compose_form.spoiler.unmarked": "Přidat varování o obsahu", + "compose_form.spoiler_placeholder": "Upozornění na obsah (nepovinné)", "confirmation_modal.cancel": "Zrušit", "confirmations.block.block_and_report": "Blokovat a nahlásit", "confirmations.block.confirm": "Blokovat", @@ -227,7 +237,7 @@ "empty_column.follow_requests": "Zatím nemáte žádné žádosti o sledování. Až nějakou obdržíte, zobrazí se zde.", "empty_column.followed_tags": "Zatím jste nesledovali žádné hashtagy. Až to uděláte, objeví se zde.", "empty_column.hashtag": "Pod tímto hashtagem zde zatím nic není.", - "empty_column.home": "Vaše domovská časová osa je prázdná! Naplňte ji sledováním dalších lidí. {suggestions}", + "empty_column.home": "Vaše domovská časová osa je prázdná! Naplňte ji sledováním dalších lidí.", "empty_column.list": "V tomto seznamu zatím nic není. Až nějaký člen z tohoto seznamu zveřejní nový příspěvek, objeví se zde.", "empty_column.lists": "Zatím nemáte žádné seznamy. Až nějaký vytvoříte, zobrazí se zde.", "empty_column.mutes": "Zatím jste neskryli žádného uživatele.", @@ -266,7 +276,18 @@ "firehose.remote": "Ostatní servery", "follow_request.authorize": "Autorizovat", "follow_request.reject": "Zamítnout", - "follow_requests.unlocked_explanation": "Přestože váš účet není zamčený, administrátor {domain} usoudil, že byste mohli chtít tyto žádosti o sledování zkontrolovat ručně.", + "follow_requests.unlocked_explanation": "Přestože váš účet není uzamčen, personál {domain} usoudil, že byste mohli chtít tyto požadavky na sledování zkontrolovat ručně.", + "follow_suggestions.curated_suggestion": "Výběr personálů", + "follow_suggestions.dismiss": "Znovu nezobrazovat", + "follow_suggestions.hints.featured": "Tento profil byl ručně vybrán týmem {domain}.", + "follow_suggestions.hints.friends_of_friends": "Tento profil je populární mezi lidmi, které sledujete.", + "follow_suggestions.hints.most_followed": "Tento profil je jedním z nejvíce sledovaných na {domain}.", + "follow_suggestions.hints.most_interactions": "Tento profil nedávno dostalo velkou pozornost na {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Tento profil je podobný profilům, které jste nedávno sledovali.", + "follow_suggestions.personalized_suggestion": "Přizpůsobený návrh", + "follow_suggestions.popular_suggestion": "Populární návrh", + "follow_suggestions.view_all": "Zobrazit vše", + "follow_suggestions.who_to_follow": "Koho sledovat", "followed_tags": "Sledované hashtagy", "footer.about": "O aplikaci", "footer.directory": "Adresář profilů", @@ -287,15 +308,15 @@ "hashtag.column_settings.tag_mode.any": "Jakýkoliv z těchto", "hashtag.column_settings.tag_mode.none": "Žádný z těchto", "hashtag.column_settings.tag_toggle": "Zahrnout v tomto sloupci další štítky", + "hashtag.counter_by_accounts": "{count, plural, one {{counter} účastník} few {{counter} účastníci} other {{counter} účastníků}}", + "hashtag.counter_by_uses": "{count, plural, one {{counter} příspěvek} few {{counter} příspěvky} other {{counter} příspěvků}}", + "hashtag.counter_by_uses_today": "Dnes {count, plural, one {{counter} příspěvek} few {{counter} příspěvky} other {{counter} příspěvků}}", "hashtag.follow": "Sledovat hashtag", "hashtag.unfollow": "Přestat sledovat hashtag", - "home.actions.go_to_explore": "Podívejte se, co frčí", - "home.actions.go_to_suggestions": "Najít lidi ke sledování", + "hashtags.and_other": "…a {count, plural, one {# další} few {# další} other {# dalších}}", "home.column_settings.basic": "Základní", "home.column_settings.show_reblogs": "Zobrazit boosty", "home.column_settings.show_replies": "Zobrazit odpovědi", - "home.explore_prompt.body": "Váš domovský kanál bude obsahovat směs příspěvků z hashtagů, které jste se rozhodli sledovat, lidí, které jste se rozhodli sledovat, a příspěvků, které boostují. Pokud vám to připadá příliš klidné, možná budete chtít:", - "home.explore_prompt.title": "Toto je vaše domovská základna uvnitř Mastodonu.", "home.hide_announcements": "Skrýt oznámení", "home.pending_critical_update.body": "Aktualizujte, prosím, svůj Mastodon server co nejdříve!", "home.pending_critical_update.link": "Zobrazit aktualizace", @@ -376,6 +397,7 @@ "lists.search": "Hledejte mezi lidmi, které sledujete", "lists.subheading": "Vaše seznamy", "load_pending": "{count, plural, one {# nová položka} few {# nové položky} many {# nových položek} other {# nových položek}}", + "loading_indicator.label": "Načítání…", "media_gallery.toggle_visible": "{number, plural, one {Skrýt obrázek} few {Skrýt obrázky} many {Skrýt obrázky} other {Skrýt obrázky}}", "moved_to_account_banner.text": "Váš účet {disabledAccount} je momentálně deaktivován, protože jste se přesunul/a na {movedToAccount}.", "mute_modal.duration": "Trvání", @@ -461,8 +483,19 @@ "onboarding.actions.go_to_home": "Přejít na svůj domovský feed", "onboarding.compose.template": "Ahoj #Mastodon!", "onboarding.follows.empty": "Bohužel, žádné výsledky nelze momentálně zobrazit. Můžete zkusit vyhledat nebo procházet stránku s průzkumem a najít lidi, kteří budou sledovat, nebo to zkuste znovu později.", - "onboarding.follows.lead": "You curate your own home feed. The more people you follow, the more active and interesting it will be. These profiles may be a good starting point—you can always unfollow them later!", - "onboarding.follows.title": "Populární na Mastodonu", + "onboarding.follows.lead": "Domovský kanál je hlavní metodou zažívání Mastodonu. Čím více lidí sledujete, tím aktivnější a zajímavější bude. Pro začnutí, zde máte několik návrhů:", + "onboarding.follows.title": "Přispůsobit vlastní domovský kanál", + "onboarding.profile.discoverable": "Udělat svůj profil vyhledatelným", + "onboarding.profile.discoverable_hint": "Když se rozhodnete být vyhledatelný na Mastodonu, vaše příspěvky se mohou objevit ve výsledcích vyhledávání a v populárních, a váš profil může být navrhován lidem s podobnými zájmy.", + "onboarding.profile.display_name": "Zobrazované jméno", + "onboarding.profile.display_name_hint": "Vaše celé jméno nebo přezdívka…", + "onboarding.profile.lead": "Toto můžete vždy dokončit později v nastavení, kde je k dispozici ještě více možností přizpůsobení.", + "onboarding.profile.note": "O vás", + "onboarding.profile.note_hint": "Můžete @zmínit jiné osoby nebo #hashtagy…", + "onboarding.profile.save_and_continue": "Uložit a pokračovat", + "onboarding.profile.title": "Nastavení profilu", + "onboarding.profile.upload_avatar": "Nahrát profilový obrázek", + "onboarding.profile.upload_header": "Nahrát hlavičku profilu", "onboarding.share.lead": "Dejte lidem vědět, jak vás mohou najít na Mastodonu!", "onboarding.share.message": "Jsem {username} na #Mastodonu! Pojď mě sledovat na {url}", "onboarding.share.next_steps": "Možné další kroky:", @@ -470,13 +503,13 @@ "onboarding.start.lead": "Your new Mastodon account is ready to go. Here's how you can make the most of it:", "onboarding.start.skip": "Want to skip right ahead?", "onboarding.start.title": "Dokázali jste to!", - "onboarding.steps.follow_people.body": "You curate your own feed. Lets fill it with interesting people.", - "onboarding.steps.follow_people.title": "Follow {count, plural, one {one person} other {# people}}", - "onboarding.steps.publish_status.body": "Řekněte světu Ahoj.", + "onboarding.steps.follow_people.body": "Mastodon je o sledování zajimavých lidí.", + "onboarding.steps.follow_people.title": "Přispůsobit vlastní domovský kanál", + "onboarding.steps.publish_status.body": "Řekněte světu ahoj s pomocí textem, fotografiemi, videami nebo anketami {emoji}", "onboarding.steps.publish_status.title": "Vytvořte svůj první příspěvek", "onboarding.steps.setup_profile.body": "Others are more likely to interact with you with a filled out profile.", "onboarding.steps.setup_profile.title": "Přizpůsobit svůj profil", - "onboarding.steps.share_profile.body": "Let your friends know how to find you on Mastodon!", + "onboarding.steps.share_profile.body": "Dejte blízkým lidem vědět, jak vás mohou najít na Mastodonu", "onboarding.steps.share_profile.title": "Sdílejte svůj profil", "onboarding.tips.2fa": "Víte, že? Svůj účet můžete zabezpečit nastavením dvoufaktorového ověřování v nastavení účtu. Funguje s jakoukoli TOTP aplikací podle vašeho výběru, telefonní číslo není nutné!", "onboarding.tips.accounts_from_other_servers": "Víte, že? Protože je Mastodon decentralizovaný, některé profily, na které narazíte, budou hostovány na jiných serverech, než je ten váš. A přesto s nimi můžete bezproblémově komunikovat! Jejich server se nachází v druhé polovině uživatelského jména!", @@ -496,9 +529,18 @@ "poll_button.add_poll": "Přidat anketu", "poll_button.remove_poll": "Odebrat anketu", "privacy.change": "Změnit soukromí příspěvku", + "privacy.direct.long": "Všichni zmínění v příspěvku", + "privacy.direct.short": "Vybraní lidé", + "privacy.private.long": "Jen vaši sledující", + "privacy.private.short": "Sledující", + "privacy.public.long": "Kdokoliv na Mastodonu i mimo něj", "privacy.public.short": "Veřejné", + "privacy.unlisted.additional": "Chová se stejně jako veřejný, až na to, že se příspěvek neobjeví v živých kanálech nebo hashtazích, v objevování nebo vyhledávání na Mastodonu, a to i když je účet nastaven tak, aby se zde všude tyto příspěvky zobrazovaly.", + "privacy.unlisted.long": "Méně algoritmických fanfár", + "privacy.unlisted.short": "Ztišené veřejné", "privacy_policy.last_updated": "Naposledy aktualizováno {date}", "privacy_policy.title": "Zásady ochrany osobních údajů", + "recommended": "Doporučeno", "refresh": "Obnovit", "regeneration_indicator.label": "Načítání…", "regeneration_indicator.sublabel": "Váš domovský kanál se připravuje!", @@ -513,7 +555,9 @@ "relative_time.minutes": "{number} m", "relative_time.seconds": "{number} s", "relative_time.today": "dnes", + "reply_indicator.attachments": "{count, plural, one {{counter} příloha} few {{counter} přílohy} other {{counter} přilohů}}", "reply_indicator.cancel": "Zrušit", + "reply_indicator.poll": "Anketa", "report.block": "Blokovat", "report.block_explanation": "Neuvidíte příspěvky tohoto uživatele. On neuvidí vaše příspěvky, ani vás nebude moci sledovat. Pozná, že je blokován.", "report.categories.legal": "Právní ustanovení", @@ -569,6 +613,7 @@ "search.quick_action.status_search": "Příspěvky odpovídající {x}", "search.search_or_paste": "Hledat nebo vložit URL", "search_popout.full_text_search_disabled_message": "Nedostupné na {domain}.", + "search_popout.full_text_search_logged_out_message": "Dostupné pouze po přihlášení.", "search_popout.language_code": "Kód jazyka podle ISO", "search_popout.options": "Možnosti hledání", "search_popout.quick_actions": "Rychlé akce", diff --git a/app/javascript/mastodon/locales/cy.json b/app/javascript/mastodon/locales/cy.json index 3cd090e186..0c1472dcad 100644 --- a/app/javascript/mastodon/locales/cy.json +++ b/app/javascript/mastodon/locales/cy.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "wedi ei gloi", "compose_form.placeholder": "Beth sydd ar eich meddwl?", "compose_form.poll.duration": "Cyfnod pleidlais", + "compose_form.poll.multiple": "Dewis lluosog", + "compose_form.poll.option_placeholder": "Dewis {number}", + "compose_form.poll.single": "Ddewis un", "compose_form.poll.switch_to_multiple": "Newid pleidlais i adael mwy nag un dewis", "compose_form.poll.switch_to_single": "Newid pleidlais i gyfyngu i un dewis", + "compose_form.poll.type": "Arddull", + "compose_form.publish": "Postiad", "compose_form.publish_form": "Cyhoeddi", + "compose_form.reply": "Ateb", + "compose_form.save_changes": "Diweddariad", "compose_form.spoiler.marked": "Dileu rhybudd cynnwys", "compose_form.spoiler.unmarked": "Ychwanegu rhybudd cynnwys", + "compose_form.spoiler_placeholder": "Rhybudd cynnwys (dewisol)", "confirmation_modal.cancel": "Diddymu", "confirmations.block.block_and_report": "Rhwystro ac Adrodd", "confirmations.block.confirm": "Blocio", @@ -269,6 +277,17 @@ "follow_request.authorize": "Awdurdodi", "follow_request.reject": "Gwrthod", "follow_requests.unlocked_explanation": "Er nid yw eich cyfrif wedi'i gloi, roedd y staff {domain} yn meddwl efallai hoffech adolygu ceisiadau dilyn o'r cyfrifau rhain wrth law.", + "follow_suggestions.curated_suggestion": "Dewis staff", + "follow_suggestions.dismiss": "Peidio â dangos hwn eto", + "follow_suggestions.hints.featured": "Mae'r proffil hwn wedi'i ddewis yn arbennig gan dîm {domain}.", + "follow_suggestions.hints.friends_of_friends": "Mae'r proffil hwn yn boblogaidd ymhlith y bobl rydych chi'n eu dilyn.", + "follow_suggestions.hints.most_followed": "Mae'r proffil hwn yn un o'r rhai sy'n cael ei ddilyn fwyaf ar {domain}.", + "follow_suggestions.hints.most_interactions": "Mae'r proffil hwn wedi bod yn cael llawer o sylw yn ddiweddar ar {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Mae'r proffil hwn yn debyg i'r proffiliau rydych chi wedi'u dilyn yn fwyaf diweddar.", + "follow_suggestions.personalized_suggestion": "Awgrym personol", + "follow_suggestions.popular_suggestion": "Awgrym poblogaidd", + "follow_suggestions.view_all": "Gweld y cyfan", + "follow_suggestions.who_to_follow": "Pwy i ddilyn", "followed_tags": "Hashnodau rydych yn eu dilyn", "footer.about": "Ynghylch", "footer.directory": "Cyfeiriadur proffiliau", @@ -295,13 +314,9 @@ "hashtag.follow": "Dilyn hashnod", "hashtag.unfollow": "Dad-ddilyn hashnod", "hashtags.and_other": "…a {count, plural, other {# more}}", - "home.actions.go_to_explore": "Gweld beth yw'r tuedd", - "home.actions.go_to_suggestions": "Ffeindio pobl i'w dilyn", "home.column_settings.basic": "Syml", "home.column_settings.show_reblogs": "Dangos hybiau", "home.column_settings.show_replies": "Dangos atebion", - "home.explore_prompt.body": "Bydd eich llif cartref yn cynnwys cymysgedd o bostiadau o'r hashnodau rydych chi wedi dewis eu dilyn, y bobl rydych chi wedi dewis eu dilyn, a'r postiadau maen nhw'n rhoi hwb iddyn nhw. Os yw hynny'n teimlo'n rhy dawel, efallai y byddwch eisiau:", - "home.explore_prompt.title": "Dyma'ch cartref o fewn Mastodon.", "home.hide_announcements": "Cuddio cyhoeddiadau", "home.pending_critical_update.body": "Diweddarwch eich gweinydd Mastodon cyn gynted â phosibl!", "home.pending_critical_update.link": "Gweld y diweddariadau", @@ -514,7 +529,15 @@ "poll_button.add_poll": "Ychwanegu pleidlais", "poll_button.remove_poll": "Tynnu pleidlais", "privacy.change": "Addasu preifatrwdd y post", + "privacy.direct.long": "Pawb sydd â son amdanyn nhw yn y postiad", + "privacy.direct.short": "Pobl benodol", + "privacy.private.long": "Eich dilynwyr yn unig", + "privacy.private.short": "Dilynwyr", + "privacy.public.long": "Unrhyw ar ac oddi ar Mastodon", "privacy.public.short": "Cyhoeddus", + "privacy.unlisted.additional": "Mae hwn yn ymddwyn yn union fel y cyhoeddus, ac eithrio na fydd y postiad yn ymddangos mewn ffrydiau byw neu hashnodau, archwilio, neu chwiliad Mastodon, hyd yn oed os ydych wedi eich cynnwys ar draws y cyfrif.", + "privacy.unlisted.long": "Llai o ddathliadau algorithmig", + "privacy.unlisted.short": "Tewi'r cyhoeddus", "privacy_policy.last_updated": "Diweddarwyd ddiwethaf ar {date}", "privacy_policy.title": "Polisi Preifatrwydd", "recommended": "Argymhellwyd", @@ -532,7 +555,9 @@ "relative_time.minutes": "{number} munud", "relative_time.seconds": "{number} eiliad", "relative_time.today": "heddiw", + "reply_indicator.attachments": "{count, plural, one {# attachment} arall {# attachments}}", "reply_indicator.cancel": "Canslo", + "reply_indicator.poll": "Arolwg", "report.block": "Blocio", "report.block_explanation": "Ni welwch chi eu postiadau. Ni allan nhw weld eich postiadau na'ch dilyn. Byddan nhw'n gallu gweld eu bod nhw wedi'u rhwystro.", "report.categories.legal": "Cyfreithiol", diff --git a/app/javascript/mastodon/locales/da.json b/app/javascript/mastodon/locales/da.json index 5d6cac69d8..b9ef82bf0c 100644 --- a/app/javascript/mastodon/locales/da.json +++ b/app/javascript/mastodon/locales/da.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Din konto er ikke {locked}. Enhver kan følge dig og se indlæg kun beregnet for følgere.", "compose_form.lock_disclaimer.lock": "låst", "compose_form.placeholder": "Hvad tænker du på?", - "compose_form.poll.add_option": "Tilføj mulighed", "compose_form.poll.duration": "Afstemningens varighed", "compose_form.poll.multiple": "Multivalg", "compose_form.poll.option_placeholder": "Valgmulighed {number}", - "compose_form.poll.remove_option": "Fjern denne valgmulighed", "compose_form.poll.single": "Vælg én", "compose_form.poll.switch_to_multiple": "Ændr afstemning til flervalgstype", "compose_form.poll.switch_to_single": "Ændr afstemning til enkeltvalgstype", @@ -279,6 +277,17 @@ "follow_request.authorize": "Godkend", "follow_request.reject": "Afvis", "follow_requests.unlocked_explanation": "Selvom din konto ikke er låst, synes {domain}-personalet, du måske bør gennemgå disse anmodninger manuelt.", + "follow_suggestions.curated_suggestion": "Personaleudvalgt", + "follow_suggestions.dismiss": "Vis ikke igen", + "follow_suggestions.hints.featured": "Denne profil er håndplukket af {domain}-teamet.", + "follow_suggestions.hints.friends_of_friends": "Denne profil er populær blandt de personer, som følges.", + "follow_suggestions.hints.most_followed": "Denne profil er en af de mest fulgte på {domain}.", + "follow_suggestions.hints.most_interactions": "Denne profil har for nylig fået stor opmærksomhed på {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Denne profil svarer til de profiler, som senest er blevet fulgt.", + "follow_suggestions.personalized_suggestion": "Personligt forslag", + "follow_suggestions.popular_suggestion": "Populært forslag", + "follow_suggestions.view_all": "Vis alle", + "follow_suggestions.who_to_follow": "Hvem, som skal følges", "followed_tags": "Hashtag, som følges", "footer.about": "Om", "footer.directory": "Profiloversigt", @@ -305,13 +314,9 @@ "hashtag.follow": "Følg hashtag", "hashtag.unfollow": "Stop med at følge hashtag", "hashtags.and_other": "…og {count, plural, one {}other {# flere}}", - "home.actions.go_to_explore": "Se, hvad som trender", - "home.actions.go_to_suggestions": "Find nogle personer at følge", "home.column_settings.basic": "Grundlæggende", "home.column_settings.show_reblogs": "Vis boosts", "home.column_settings.show_replies": "Vis svar", - "home.explore_prompt.body": "Dit hjemmefeed vil have en blanding af indlæg fra de hashtags, du har valgt at følge, de personer, du har valgt at følge, og de indlæg, de booster. Hvis her virker for stille, kan du prøve:", - "home.explore_prompt.title": "Dette er din hjemmebase i Mastodon.", "home.hide_announcements": "Skjul bekendtgørelser", "home.pending_critical_update.body": "Opdater din Mastodon-server snarest muligt!", "home.pending_critical_update.link": "Se opdateringer", diff --git a/app/javascript/mastodon/locales/de.json b/app/javascript/mastodon/locales/de.json index a6dd098bb2..2c94314810 100644 --- a/app/javascript/mastodon/locales/de.json +++ b/app/javascript/mastodon/locales/de.json @@ -145,15 +145,13 @@ "compose_form.lock_disclaimer": "Dein Profil ist nicht {locked}. Andere können dir folgen und deine Beiträge sehen, die nur für Follower bestimmt sind.", "compose_form.lock_disclaimer.lock": "geschützt", "compose_form.placeholder": "Was gibt’s Neues?", - "compose_form.poll.add_option": "Auswahl hinzufügen", "compose_form.poll.duration": "Umfragedauer", - "compose_form.poll.multiple": "Mehrfachauswahl", - "compose_form.poll.option_placeholder": "{number}. Auswahlmöglichkeit", - "compose_form.poll.remove_option": "Dieses Auswahlfeld entfernen", + "compose_form.poll.multiple": "Mul­ti­ple-Choice", + "compose_form.poll.option_placeholder": "Option {number}", "compose_form.poll.single": "Einfachauswahl", "compose_form.poll.switch_to_multiple": "Mehrfachauswahl erlauben", "compose_form.poll.switch_to_single": "Nur Einfachauswahl erlauben", - "compose_form.poll.type": "Art", + "compose_form.poll.type": "Stil", "compose_form.publish": "Veröffentlichen", "compose_form.publish_form": "Neuer Beitrag", "compose_form.reply": "Antworten", @@ -279,6 +277,17 @@ "follow_request.authorize": "Genehmigen", "follow_request.reject": "Ablehnen", "follow_requests.unlocked_explanation": "Auch wenn dein Konto öffentlich bzw. nicht geschützt ist, haben die Moderator*innen von {domain} gedacht, dass du diesen Follower lieber manuell bestätigen solltest.", + "follow_suggestions.curated_suggestion": "Vom Server empfohlen", + "follow_suggestions.dismiss": "Nicht mehr anzeigen", + "follow_suggestions.hints.featured": "Dieses Profil wurde vom {domain}-Team ausgewählt.", + "follow_suggestions.hints.friends_of_friends": "Dieses Profil ist bei deinen Followern beliebt.", + "follow_suggestions.hints.most_followed": "Dieses Profil wird von den meisten auf {domain} gefolgt.", + "follow_suggestions.hints.most_interactions": "Dieses Profil erhielt auf {domain} in letzter Zeit viel Aufmerksamkeit.", + "follow_suggestions.hints.similar_to_recently_followed": "Dieses Profil ähnelt den Profilen, denen du in letzter Zeit gefolgt hast.", + "follow_suggestions.personalized_suggestion": "Persönliche Empfehlung", + "follow_suggestions.popular_suggestion": "Beliebte Empfehlung", + "follow_suggestions.view_all": "Alle anzeigen", + "follow_suggestions.who_to_follow": "Empfohlene Profile", "followed_tags": "Gefolgte Hashtags", "footer.about": "Über", "footer.directory": "Profilverzeichnis", @@ -305,13 +314,9 @@ "hashtag.follow": "Hashtag folgen", "hashtag.unfollow": "Hashtag entfolgen", "hashtags.and_other": "… und {count, plural, one{# weiterer} other {# weitere}}", - "home.actions.go_to_explore": "Trends ansehen", - "home.actions.go_to_suggestions": "Profile zum Folgen finden", "home.column_settings.basic": "Allgemein", "home.column_settings.show_reblogs": "Geteilte Beiträge anzeigen", "home.column_settings.show_replies": "Antworten anzeigen", - "home.explore_prompt.body": "Deine Startseite wird eine Mischung aus Beiträgen mit Hashtags und den Profilen, denen du folgst sowie den Beiträgen, die sie teilen, enthalten. Sollte es sich zu still anfühlen:", - "home.explore_prompt.title": "Das ist dein Zuhause bei Mastodon.", "home.hide_announcements": "Ankündigungen ausblenden", "home.pending_critical_update.body": "Bitte aktualisiere deinen Mastodon-Server so schnell wie möglich!", "home.pending_critical_update.link": "Updates ansehen", @@ -528,7 +533,7 @@ "privacy.direct.short": "Bestimmte Profile", "privacy.private.long": "Nur deine Follower", "privacy.private.short": "Follower", - "privacy.public.long": "Alle auf und außerhalb von Mastodon", + "privacy.public.long": "Alle in und außerhalb von Mastodon", "privacy.public.short": "Öffentlich", "privacy.unlisted.additional": "Das Verhalten ist wie bei „Öffentlich“, jedoch erscheint dieser Beitrag nicht in „Live-Feeds“, „Erkunden“, Hashtags oder über die Mastodon-Suchfunktion – selbst wenn du das in den Einstellungen aktiviert hast.", "privacy.unlisted.long": "Weniger im Algorithmus berücksichtigt", diff --git a/app/javascript/mastodon/locales/el.json b/app/javascript/mastodon/locales/el.json index 068d228906..a5ed320831 100644 --- a/app/javascript/mastodon/locales/el.json +++ b/app/javascript/mastodon/locales/el.json @@ -140,11 +140,9 @@ "compose_form.lock_disclaimer": "Ο λογαριασμός σου δεν είναι {locked}. Οποιοσδήποτε μπορεί να σε ακολουθήσει για να δει τις δημοσιεύσεις σου προς τους ακολούθους σου.", "compose_form.lock_disclaimer.lock": "κλειδωμένο", "compose_form.placeholder": "Τι σκέφτεσαι;", - "compose_form.poll.add_option": "Προσθήκη επιλογής", "compose_form.poll.duration": "Διάρκεια δημοσκόπησης", "compose_form.poll.multiple": "Πολλαπλή επιλογή", "compose_form.poll.option_placeholder": "Επιλογή {number}", - "compose_form.poll.remove_option": "Αφαίρεση επιλογής", "compose_form.poll.switch_to_multiple": "Ενημέρωση δημοσκόπησης με πολλαπλές επιλογές", "compose_form.poll.switch_to_single": "Ενημέρωση δημοσκόπησης με μοναδική επιλογή", "compose_form.poll.type": "Στυλ", @@ -291,12 +289,9 @@ "hashtag.column_settings.tag_toggle": "Προσθήκη επιπλέον ταμπελών για την κολώνα", "hashtag.follow": "Παρακολούθηση ετικέτας", "hashtag.unfollow": "Διακοπή παρακολούθησης ετικέτας", - "home.actions.go_to_suggestions": "Βρείτε άτομα για να ακολουθήσετε", "home.column_settings.basic": "Βασικές ρυθμίσεις", "home.column_settings.show_reblogs": "Εμφάνιση προωθήσεων", "home.column_settings.show_replies": "Εμφάνιση απαντήσεων", - "home.explore_prompt.body": "Your home feed will have a mix of posts from the hashtags you've chosen to follow, the people you've chosen to follow, and the posts they boost. If that feels too quiet, you may want to:\nΗ τροφοδοσία της αρχικής σελίδας σας είναι ένα μίγμα από αναρτήσεις με τις ετικέτες και τα άτομα που επιλέξατε να ακολουθείτε, και τις αναρτήσεις που προωθούν. Εάν αυτό σας φαίνεται πολύ ήσυχο, μπορεί να θέλετε:", - "home.explore_prompt.title": "Αυτό είναι το σπίτι σας στο Mastodon.", "home.hide_announcements": "Απόκρυψη ανακοινώσεων", "home.pending_critical_update.link": "Δείτε ενημερώσεις", "home.pending_critical_update.title": "Κρίσιμη ενημέρωση ασφαλείας διαθέσιμη!", diff --git a/app/javascript/mastodon/locales/en-GB.json b/app/javascript/mastodon/locales/en-GB.json index 2cf1b4dbae..6232207af2 100644 --- a/app/javascript/mastodon/locales/en-GB.json +++ b/app/javascript/mastodon/locales/en-GB.json @@ -32,6 +32,7 @@ "account.featured_tags.last_status_never": "No posts", "account.featured_tags.title": "{name}'s featured hashtags", "account.follow": "Follow", + "account.follow_back": "Follow back", "account.followers": "Followers", "account.followers.empty": "No one follows this user yet.", "account.followers_counter": "{count, plural, one {{counter} Follower} other {{counter} Followers}}", @@ -52,6 +53,7 @@ "account.mute_notifications_short": "Mute notifications", "account.mute_short": "Mute", "account.muted": "Muted", + "account.mutual": "Mutual", "account.no_bio": "No description provided.", "account.open_original_page": "Open original page", "account.posts": "Posts", @@ -144,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "locked", "compose_form.placeholder": "What's on your mind?", "compose_form.poll.duration": "Poll duration", + "compose_form.poll.multiple": "Multiple choice", + "compose_form.poll.option_placeholder": "Option {number}", + "compose_form.poll.single": "Pick one", "compose_form.poll.switch_to_multiple": "Change poll to allow multiple choices", "compose_form.poll.switch_to_single": "Change poll to allow for a single choice", + "compose_form.poll.type": "Style", + "compose_form.publish": "Post", "compose_form.publish_form": "New post", + "compose_form.reply": "Reply", + "compose_form.save_changes": "Update", "compose_form.spoiler.marked": "Remove content warning", "compose_form.spoiler.unmarked": "Add content warning", + "compose_form.spoiler_placeholder": "Content warning (optional)", "confirmation_modal.cancel": "Cancel", "confirmations.block.block_and_report": "Block & Report", "confirmations.block.confirm": "Block", @@ -267,6 +277,11 @@ "follow_request.authorize": "Authorise", "follow_request.reject": "Reject", "follow_requests.unlocked_explanation": "Even though your account is not locked, the {domain} staff thought you might want to review follow requests from these accounts manually.", + "follow_suggestions.dismiss": "Don't show again", + "follow_suggestions.personalized_suggestion": "Personalised suggestion", + "follow_suggestions.popular_suggestion": "Popular suggestion", + "follow_suggestions.view_all": "View all", + "follow_suggestions.who_to_follow": "Who to follow", "followed_tags": "Followed hashtags", "footer.about": "About", "footer.directory": "Profiles directory", @@ -292,14 +307,10 @@ "hashtag.counter_by_uses_today": "{count, plural, one {{counter} post} other {{counter} posts}} today", "hashtag.follow": "Follow hashtag", "hashtag.unfollow": "Unfollow hashtag", - "hashtags.and_other": "…and {count, plural, one {}other {# more}}", - "home.actions.go_to_explore": "See what's trending", - "home.actions.go_to_suggestions": "Find people to follow", + "hashtags.and_other": "…and {count, plural, one {one more} other {# more}}", "home.column_settings.basic": "Basic", "home.column_settings.show_reblogs": "Show boosts", "home.column_settings.show_replies": "Show replies", - "home.explore_prompt.body": "Your home feed will have a mix of posts from the hashtags you've chosen to follow, the people you've chosen to follow, and the posts they boost. If that feels too quiet, you may want to:", - "home.explore_prompt.title": "This is your home base within Mastodon.", "home.hide_announcements": "Hide announcements", "home.pending_critical_update.body": "Please update your Mastodon server as soon as possible!", "home.pending_critical_update.link": "See updates", @@ -512,7 +523,15 @@ "poll_button.add_poll": "Add a poll", "poll_button.remove_poll": "Remove poll", "privacy.change": "Change post privacy", + "privacy.direct.long": "Everyone mentioned in the post", + "privacy.direct.short": "Specific people", + "privacy.private.long": "Only your followers", + "privacy.private.short": "Followers", + "privacy.public.long": "Anyone on and off Mastodon", "privacy.public.short": "Public", + "privacy.unlisted.additional": "This behaves exactly like public, except the post will not appear in live feeds or hashtags, explore, or Mastodon search, even if you are opted-in account-wide.", + "privacy.unlisted.long": "Fewer algorithmic fanfares", + "privacy.unlisted.short": "Quiet public", "privacy_policy.last_updated": "Last updated {date}", "privacy_policy.title": "Privacy Policy", "recommended": "Recommended", @@ -530,7 +549,9 @@ "relative_time.minutes": "{number}m", "relative_time.seconds": "{number}s", "relative_time.today": "today", + "reply_indicator.attachments": "{count, plural, one {# attachment} other {# attachments}}", "reply_indicator.cancel": "Cancel", + "reply_indicator.poll": "Poll", "report.block": "Block", "report.block_explanation": "You will not see their posts. They will not be able to see your posts or follow you. They will be able to tell that they are blocked.", "report.categories.legal": "Legal", diff --git a/app/javascript/mastodon/locales/en.json b/app/javascript/mastodon/locales/en.json index 12d0068d69..342b4c6e25 100644 --- a/app/javascript/mastodon/locales/en.json +++ b/app/javascript/mastodon/locales/en.json @@ -277,8 +277,13 @@ "follow_request.authorize": "Authorize", "follow_request.reject": "Reject", "follow_requests.unlocked_explanation": "Even though your account is not locked, the {domain} staff thought you might want to review follow requests from these accounts manually.", - "follow_suggestions.curated_suggestion": "Editors' Choice", + "follow_suggestions.curated_suggestion": "Staff pick", "follow_suggestions.dismiss": "Don't show again", + "follow_suggestions.hints.featured": "This profile has been hand-picked by the {domain} team.", + "follow_suggestions.hints.friends_of_friends": "This profile is popular among the people you follow.", + "follow_suggestions.hints.most_followed": "This profile is one of the most followed on {domain}.", + "follow_suggestions.hints.most_interactions": "This profile has been recently getting a lot of attention on {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "This profile is similar to the profiles you have most recently followed.", "follow_suggestions.personalized_suggestion": "Personalized suggestion", "follow_suggestions.popular_suggestion": "Popular suggestion", "follow_suggestions.view_all": "View all", diff --git a/app/javascript/mastodon/locales/eo.json b/app/javascript/mastodon/locales/eo.json index 907a918af0..911502d85f 100644 --- a/app/javascript/mastodon/locales/eo.json +++ b/app/javascript/mastodon/locales/eo.json @@ -115,7 +115,7 @@ "column.directory": "Foliumi la profilojn", "column.domain_blocks": "Blokitaj domajnoj", "column.favourites": "Stelumoj", - "column.firehose": "Vivantaj fluoj", + "column.firehose": "Rektaj fluoj", "column.follow_requests": "Petoj de sekvado", "column.home": "Hejmo", "column.lists": "Listoj", @@ -295,13 +295,9 @@ "hashtag.follow": "Sekvi la kradvorton", "hashtag.unfollow": "Ne plu sekvi la kradvorton", "hashtags.and_other": "…kaj {count, plural,other {# pli}}", - "home.actions.go_to_explore": "Vidi kio populariĝas", - "home.actions.go_to_suggestions": "Trovi homojn por sekvi", "home.column_settings.basic": "Bazaj agordoj", "home.column_settings.show_reblogs": "Montri diskonigojn", "home.column_settings.show_replies": "Montri respondojn", - "home.explore_prompt.body": "Via hejmafiŝaro havos miksitajn afiŝojn de kradvortoj kiujn vi elektis sekvi, personoj kiujn vi elektis sekvi, kaj afiŝoj kiujn ili suprenigis.", - "home.explore_prompt.title": "Ĉi tio estas via hejma paĝo en Mastodon.", "home.hide_announcements": "Kaŝi la anoncojn", "home.pending_critical_update.body": "Ĝisdatigu vian servilon de Mastodon kiel eble plej baldau!", "home.pending_critical_update.link": "Vidi ĝisdatigojn", diff --git a/app/javascript/mastodon/locales/es-AR.json b/app/javascript/mastodon/locales/es-AR.json index 8816f18af6..3b63c505e4 100644 --- a/app/javascript/mastodon/locales/es-AR.json +++ b/app/javascript/mastodon/locales/es-AR.json @@ -146,14 +146,13 @@ "compose_form.lock_disclaimer.lock": "privada", "compose_form.placeholder": "¿Qué onda?", "compose_form.poll.duration": "Duración de la encuesta", - "compose_form.poll.multiple": "Selección múltiple", + "compose_form.poll.multiple": "Múltiples opciones", "compose_form.poll.option_placeholder": "Opción {number}", - "compose_form.poll.remove_option": "Quitar esta opción", - "compose_form.poll.single": "Elige uno", + "compose_form.poll.single": "Elegí una", "compose_form.poll.switch_to_multiple": "Cambiar encuesta para permitir opciones múltiples", "compose_form.poll.switch_to_single": "Cambiar encuesta para permitir una sola opción", "compose_form.poll.type": "Estilo", - "compose_form.publish": "Publicar", + "compose_form.publish": "Enviar", "compose_form.publish_form": "Nuevo mensaje", "compose_form.reply": "Responder", "compose_form.save_changes": "Actualizar", @@ -278,6 +277,17 @@ "follow_request.authorize": "Autorizar", "follow_request.reject": "Rechazar", "follow_requests.unlocked_explanation": "A pesar de que tu cuenta no es privada, el equipo de {domain} pensó que podrías querer revisar manualmente las solicitudes de seguimiento de estas cuentas.", + "follow_suggestions.curated_suggestion": "Selección del equipo", + "follow_suggestions.dismiss": "No mostrar de nuevo", + "follow_suggestions.hints.featured": "Este perfil fue seleccionado a mano por el equipo de {domain}.", + "follow_suggestions.hints.friends_of_friends": "Este perfil es popular entre las cuentas que seguís.", + "follow_suggestions.hints.most_followed": "Este perfil es uno de los más seguidos en {domain}.", + "follow_suggestions.hints.most_interactions": "Este perfil ha estado recibiendo recientemente mucha atención en {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Este perfil es similar a los que comenzaste a seguir.", + "follow_suggestions.personalized_suggestion": "Sugerencia personalizada", + "follow_suggestions.popular_suggestion": "Sugerencia popular", + "follow_suggestions.view_all": "Ver todo", + "follow_suggestions.who_to_follow": "A quién seguir", "followed_tags": "Etiquetas seguidas", "footer.about": "Información", "footer.directory": "Directorio de perfiles", @@ -304,13 +314,9 @@ "hashtag.follow": "Seguir etiqueta", "hashtag.unfollow": "Dejar de seguir etiqueta", "hashtags.and_other": "…y {count, plural, other {# más}}", - "home.actions.go_to_explore": "Ver qué está en tendencia", - "home.actions.go_to_suggestions": "Encontrar cuentas para seguir", "home.column_settings.basic": "Básico", "home.column_settings.show_reblogs": "Mostrar adhesiones", "home.column_settings.show_replies": "Mostrar respuestas", - "home.explore_prompt.body": "Tu línea temporal principal tendrá una mezcla de mensajes de etiquetas que hayás decidido seguir, cuentas que hayás seguido y mensajes a los que éstas adhieran. Si está muy tranquilo por acá, quizás quieras:", - "home.explore_prompt.title": "Este es tu inicio en Mastodon.", "home.hide_announcements": "Ocultar anuncios", "home.pending_critical_update.body": "Por favor, ¡actualizá tu servidor de Mastodon lo antes posible!", "home.pending_critical_update.link": "Ver actualizaciones", @@ -523,10 +529,15 @@ "poll_button.add_poll": "Agregar encuesta", "poll_button.remove_poll": "Quitar encuesta", "privacy.change": "Configurar privacidad del mensaje", - "privacy.direct.short": "Personas específicas", + "privacy.direct.long": "Todas las cuentas mencionadas en el mensaje", + "privacy.direct.short": "Cuentas específicas", "privacy.private.long": "Solo tus seguidores", "privacy.private.short": "Seguidores", + "privacy.public.long": "Cualquier persona dentro y fuera de Mastodon", "privacy.public.short": "Público", + "privacy.unlisted.additional": "Esto se comporta exactamente igual que con la configuración de privacidad de mensaje \"Público\", excepto que el mensaje no aparecerá en los líneas temporales en vivo, ni en las etiquetas, ni en la línea temporal \"Explorá\", ni en la búsqueda de Mastodon; incluso si optaste por hacer tu cuenta visible.", + "privacy.unlisted.long": "Menos fanfarrias algorítmicas", + "privacy.unlisted.short": "Público silencioso", "privacy_policy.last_updated": "Última actualización: {date}", "privacy_policy.title": "Política de privacidad", "recommended": "Opción recomendada", @@ -544,7 +555,9 @@ "relative_time.minutes": "{number}m", "relative_time.seconds": "{number}s", "relative_time.today": "hoy", + "reply_indicator.attachments": "{count, plural,one {# adjunto} other {# adjuntos}}", "reply_indicator.cancel": "Cancelar", + "reply_indicator.poll": "Encuesta", "report.block": "Bloquear", "report.block_explanation": "No verás sus mensajes. No podrán ver tus mensajes ni seguirte. Se van a dar cuentra de que están bloqueados.", "report.categories.legal": "Legales", @@ -644,8 +657,8 @@ "status.filter": "Filtrar este mensaje", "status.filtered": "Filtrado", "status.hide": "Ocultar mensaje", - "status.history.created": "Creado por {name} el {date}", - "status.history.edited": "Editado por {name} el {date}", + "status.history.created": "Creado por {name}, {date}", + "status.history.edited": "Editado por {name}, {date}", "status.load_more": "Cargar más", "status.media.open": "Clic para abrir", "status.media.show": "Clic para mostrar", diff --git a/app/javascript/mastodon/locales/es-MX.json b/app/javascript/mastodon/locales/es-MX.json index fdc57ac6d6..aa935e410e 100644 --- a/app/javascript/mastodon/locales/es-MX.json +++ b/app/javascript/mastodon/locales/es-MX.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Tu cuenta no está bloqueada. Todos pueden seguirte para ver tus toots solo para seguidores.", "compose_form.lock_disclaimer.lock": "bloqueado", "compose_form.placeholder": "¿En qué estás pensando?", - "compose_form.poll.add_option": "Agregar opción", "compose_form.poll.duration": "Duración de la encuesta", "compose_form.poll.multiple": "Selección múltiple", "compose_form.poll.option_placeholder": "Opción {number}", - "compose_form.poll.remove_option": "Eliminar esta opción", "compose_form.poll.single": "Seleccione uno", "compose_form.poll.switch_to_multiple": "Modificar encuesta para permitir múltiples opciones", "compose_form.poll.switch_to_single": "Modificar encuesta para permitir una única opción", @@ -279,6 +277,17 @@ "follow_request.authorize": "Autorizar", "follow_request.reject": "Rechazar", "follow_requests.unlocked_explanation": "A pesar de que tu cuenta no es privada, el personal de {domain} ha pensado que quizás deberías revisar manualmente las solicitudes de seguimiento de estas cuentas.", + "follow_suggestions.curated_suggestion": "Recomendaciones del equipo", + "follow_suggestions.dismiss": "No mostrar de nuevo", + "follow_suggestions.hints.featured": "Este perfil ha sido elegido a mano por el equipo de {domain}.", + "follow_suggestions.hints.friends_of_friends": "Este perfil es popular entre las personas que sigues.", + "follow_suggestions.hints.most_followed": "Este perfil es uno de los más seguidos en {domain}.", + "follow_suggestions.hints.most_interactions": "Este perfil ha estado recibiendo recientemente mucha atención en {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Este perfil es similar a los perfiles que has seguido recientemente.", + "follow_suggestions.personalized_suggestion": "Sugerencia personalizada", + "follow_suggestions.popular_suggestion": "Sugerencia popular", + "follow_suggestions.view_all": "Ver todo", + "follow_suggestions.who_to_follow": "A quién seguir", "followed_tags": "Hashtags seguidos", "footer.about": "Acerca de", "footer.directory": "Directorio de perfiles", @@ -305,13 +314,9 @@ "hashtag.follow": "Seguir etiqueta", "hashtag.unfollow": "Dejar de seguir etiqueta", "hashtags.and_other": "…y {count, plural, other {# más}}", - "home.actions.go_to_explore": "Ver tendencias", - "home.actions.go_to_suggestions": "Encuentra gente a la que seguir", "home.column_settings.basic": "Básico", "home.column_settings.show_reblogs": "Mostrar retoots", "home.column_settings.show_replies": "Mostrar respuestas", - "home.explore_prompt.body": "Tu cronología de inicio tendrá una mezcla de publicaciones de los hashtags que has escogido seguir, las personas que has decidido seguir y las publicaciones que impulsen. Si crees que está demasiado tranquila, quizás quieras:", - "home.explore_prompt.title": "Este es tu punto de partida en Mastodon.", "home.hide_announcements": "Ocultar anuncios", "home.pending_critical_update.body": "¡Por favor actualiza tu servidor Mastodon lo antes posible!", "home.pending_critical_update.link": "Ver actualizaciones", diff --git a/app/javascript/mastodon/locales/es.json b/app/javascript/mastodon/locales/es.json index 2e4ea93177..25ff1157fd 100644 --- a/app/javascript/mastodon/locales/es.json +++ b/app/javascript/mastodon/locales/es.json @@ -148,7 +148,6 @@ "compose_form.poll.duration": "Duración de la encuesta", "compose_form.poll.multiple": "Selección múltiple", "compose_form.poll.option_placeholder": "Opción {number}", - "compose_form.poll.remove_option": "Quitar esta opción", "compose_form.poll.single": "Elige uno", "compose_form.poll.switch_to_multiple": "Modificar encuesta para permitir múltiples opciones", "compose_form.poll.switch_to_single": "Modificar encuesta para permitir una única opción", @@ -172,21 +171,21 @@ "confirmations.delete_list.message": "¿Seguro que quieres borrar esta lista permanentemente?", "confirmations.discard_edit_media.confirm": "Descartar", "confirmations.discard_edit_media.message": "Tienes cambios sin guardar en la descripción o vista previa del archivo audiovisual, ¿descartarlos de todos modos?", - "confirmations.domain_block.confirm": "Bloquear dominio entero", - "confirmations.domain_block.message": "¿Seguro de que quieres bloquear al dominio {domain} entero? En general unos cuantos bloqueos y silenciados concretos es suficiente y preferible.", + "confirmations.domain_block.confirm": "Bloquear todo el dominio", + "confirmations.domain_block.message": "¿Seguro que quieres bloquear todo el dominio {domain}? En general, unos cuantos bloqueos y silenciados concretos es suficiente y preferible. No verás contenido del dominio en ninguna cronología pública ni en tus notificaciones. Se eliminarán tus seguidores procedentes de ese dominio.", "confirmations.edit.confirm": "Editar", - "confirmations.edit.message": "Editar ahora reemplazará el mensaje que está escribiendo. ¿Está seguro que quiere proceder?", + "confirmations.edit.message": "Editar ahora reemplazará el mensaje que estás escribiendo. ¿Seguro que quieres proceder?", "confirmations.logout.confirm": "Cerrar sesión", - "confirmations.logout.message": "¿Estás seguro de querer cerrar la sesión?", + "confirmations.logout.message": "¿Seguro que quieres cerrar la sesión?", "confirmations.mute.confirm": "Silenciar", - "confirmations.mute.explanation": "Esto esconderá las publicaciones de ellos y en las que los has mencionado, pero les permitirá ver tus mensajes y seguirte.", - "confirmations.mute.message": "¿Estás seguro de que quieres silenciar a {name}?", + "confirmations.mute.explanation": "Esto esconderá sus publicaciones y las publicaciones que los mencionen, pero podrán seguir viendo tus mensajes y seguirte.", + "confirmations.mute.message": "¿Seguro que quieres silenciar a {name}?", "confirmations.redraft.confirm": "Borrar y volver a borrador", "confirmations.redraft.message": "¿Estás seguro de querer borrar esta publicación y reescribirla? Los favoritos e impulsos se perderán, y las respuestas a la publicación original quedarán sin contexto.", "confirmations.reply.confirm": "Responder", "confirmations.reply.message": "Responder sobrescribirá el mensaje que estás escribiendo. ¿Seguro que deseas continuar?", "confirmations.unfollow.confirm": "Dejar de seguir", - "confirmations.unfollow.message": "¿Estás seguro de que quieres dejar de seguir a {name}?", + "confirmations.unfollow.message": "¿Seguro que quieres dejar de seguir a {name}?", "conversation.delete": "Borrar conversación", "conversation.mark_as_read": "Marcar como leído", "conversation.open": "Ver conversación", @@ -195,7 +194,7 @@ "copypaste.copied": "Copiado", "copypaste.copy_to_clipboard": "Copiar al portapapeles", "directory.federated": "Desde el fediverso conocido", - "directory.local": "Sólo de {domain}", + "directory.local": "Solo de {domain}", "directory.new_arrivals": "Recién llegados", "directory.recently_active": "Recientemente activo", "disabled_account_banner.account_settings": "Ajustes de la cuenta", @@ -211,11 +210,11 @@ "emoji_button.activity": "Actividad", "emoji_button.clear": "Limpiar", "emoji_button.custom": "Personalizado", - "emoji_button.flags": "Marcas", + "emoji_button.flags": "Banderas", "emoji_button.food": "Comida y bebida", "emoji_button.label": "Insertar emoji", "emoji_button.nature": "Naturaleza", - "emoji_button.not_found": "No hay emojis!! ¯\\_(ツ)_/¯", + "emoji_button.not_found": "No se encontró ningún emoji coincidente", "emoji_button.objects": "Objetos", "emoji_button.people": "Personas", "emoji_button.recent": "Usados frecuentemente", @@ -231,8 +230,8 @@ "empty_column.bookmarked_statuses": "Aún no tienes ninguna publicación guardada como marcador. Cuando guardes una, se mostrará aquí.", "empty_column.community": "La línea de tiempo local está vacía. ¡Escribe algo para empezar la fiesta!", "empty_column.direct": "Aún no tienes menciones privadas. Cuando envíes o recibas una, aparecerán aquí.", - "empty_column.domain_blocks": "Todavía no hay dominios ocultos.", - "empty_column.explore_statuses": "Nada está en tendencia en este momento. ¡Revisa más tarde!", + "empty_column.domain_blocks": "Todavía no hay dominios bloqueados.", + "empty_column.explore_statuses": "No hay nada en tendencia en este momento. ¡Revisa más tarde!", "empty_column.favourited_statuses": "Todavía no tienes publicaciones favoritas. Cuando marques una publicación como favorita, se mostrarán aquí.", "empty_column.favourites": "Todavía nadie marcó esta publicación como favorita. Cuando alguien lo haga, se mostrarán aquí.", "empty_column.follow_requests": "No tienes ninguna petición de seguidor. Cuando recibas una, se mostrará aquí.", @@ -278,6 +277,17 @@ "follow_request.authorize": "Autorizar", "follow_request.reject": "Rechazar", "follow_requests.unlocked_explanation": "A pesar de que tu cuenta no es privada, el personal de {domain} ha pensado que quizás deberías revisar manualmente las solicitudes de seguimiento de estas cuentas.", + "follow_suggestions.curated_suggestion": "Recomendaciones del equipo", + "follow_suggestions.dismiss": "No mostrar de nuevo", + "follow_suggestions.hints.featured": "Este perfil ha sido elegido a mano por el equipo de {domain}.", + "follow_suggestions.hints.friends_of_friends": "Este perfil es popular entre las personas que sigues.", + "follow_suggestions.hints.most_followed": "Este perfil es uno de los más seguidos en {domain}.", + "follow_suggestions.hints.most_interactions": "Este perfil ha estado recibiendo recientemente mucha atención en {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Este perfil es similar a los perfiles que has seguido recientemente.", + "follow_suggestions.personalized_suggestion": "Sugerencia personalizada", + "follow_suggestions.popular_suggestion": "Sugerencia popular", + "follow_suggestions.view_all": "Ver todo", + "follow_suggestions.who_to_follow": "A quién seguir", "followed_tags": "Etiquetas seguidas", "footer.about": "Acerca de", "footer.directory": "Directorio de perfiles", @@ -304,13 +314,9 @@ "hashtag.follow": "Seguir etiqueta", "hashtag.unfollow": "Dejar de seguir etiqueta", "hashtags.and_other": "…y {count, plural, other {# más}}", - "home.actions.go_to_explore": "Ver tendencias", - "home.actions.go_to_suggestions": "Encuentra personas a las que seguir", "home.column_settings.basic": "Básico", "home.column_settings.show_reblogs": "Mostrar impulsos", "home.column_settings.show_replies": "Mostrar respuestas", - "home.explore_prompt.body": "Tu cronología de inicio tendrá una mezcla de publicaciones de las etiquetas que has escogido seguir, las personas que has decidido seguir y las publicaciones que impulsen. Si crees que está demasiado tranquila, quizás quieras:", - "home.explore_prompt.title": "Este es tu punto de partida en Mastodon.", "home.hide_announcements": "Ocultar anuncios", "home.pending_critical_update.body": "Por favor, ¡actualiza tu servidor Mastodon lo antes posible!", "home.pending_critical_update.link": "Ver actualizaciones", @@ -523,10 +529,15 @@ "poll_button.add_poll": "Añadir una encuesta", "poll_button.remove_poll": "Eliminar encuesta", "privacy.change": "Ajustar privacidad", + "privacy.direct.long": "Todos los mencionados en el post", "privacy.direct.short": "Personas específicas", "privacy.private.long": "Solo tus seguidores", "privacy.private.short": "Seguidores", + "privacy.public.long": "Cualquiera dentro y fuera de Mastodon", "privacy.public.short": "Público", + "privacy.unlisted.additional": "Esto se comporta exactamente igual que el público, excepto que la publicación no aparecerá en la cronología en directo o en las etiquetas, la exploración o búsqueda de Mastodon, incluso si está optado por activar la cuenta de usuario.", + "privacy.unlisted.long": "Menos fanfares algorítmicos", + "privacy.unlisted.short": "Público tranquilo", "privacy_policy.last_updated": "Actualizado por última vez {date}", "privacy_policy.title": "Política de Privacidad", "recommended": "Recomendado", @@ -544,7 +555,9 @@ "relative_time.minutes": "{number} m", "relative_time.seconds": "{number} s", "relative_time.today": "hoy", + "reply_indicator.attachments": "{count, plural, one {# adjunto} other {# adjuntos}}", "reply_indicator.cancel": "Cancelar", + "reply_indicator.poll": "Encuesta", "report.block": "Bloquear", "report.block_explanation": "No verás sus publicaciones. No podrán ver tus publicaciones ni seguirte. Podrán saber que están bloqueados.", "report.categories.legal": "Legal", diff --git a/app/javascript/mastodon/locales/et.json b/app/javascript/mastodon/locales/et.json index 5034c25541..be8bec616d 100644 --- a/app/javascript/mastodon/locales/et.json +++ b/app/javascript/mastodon/locales/et.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Su konto ei ole {locked}. Igaüks saab sind jälgida, et näha su ainult-jälgijatele postitusi.", "compose_form.lock_disclaimer.lock": "lukus", "compose_form.placeholder": "Millest mõtled?", - "compose_form.poll.add_option": "Lisa valik", "compose_form.poll.duration": "Küsitluse kestus", "compose_form.poll.multiple": "Valikvastustega", "compose_form.poll.option_placeholder": "Valik {number}", - "compose_form.poll.remove_option": "Eemalda see valik", "compose_form.poll.single": "Vali üks", "compose_form.poll.switch_to_multiple": "Muuda küsitlust mitmikvaliku lubamiseks", "compose_form.poll.switch_to_single": "Muuda küsitlust ainult ühe valiku lubamiseks", @@ -305,13 +303,9 @@ "hashtag.follow": "Jälgi silti", "hashtag.unfollow": "Lõpeta sildi jälgimine", "hashtags.and_other": "…ja {count, plural, one {}other {# veel}}", - "home.actions.go_to_explore": "Vaata, mis on populaarne", - "home.actions.go_to_suggestions": "Leia inimesi, keda jälgida", "home.column_settings.basic": "Peamine", "home.column_settings.show_reblogs": "Näita jagamisi", "home.column_settings.show_replies": "Näita vastuseid", - "home.explore_prompt.body": "Sinu koduvoos on koos jälgimiseks valitud siltidega postitused, sinu jälgitavate inimeste postitused ja postitused, mida nad jagavad. Kui see tundub liiga vaikne, võid sa soovida:", - "home.explore_prompt.title": "See on sinu kodubaas Mastodonis.", "home.hide_announcements": "Peida teadaanded", "home.pending_critical_update.body": "Palun uuenda oma Mastodoni server nii ruttu kui võimalik!", "home.pending_critical_update.link": "Vaata uuendusi", diff --git a/app/javascript/mastodon/locales/eu.json b/app/javascript/mastodon/locales/eu.json index cee18e7a51..c21fa1d204 100644 --- a/app/javascript/mastodon/locales/eu.json +++ b/app/javascript/mastodon/locales/eu.json @@ -132,7 +132,7 @@ "column_header.unpin": "Desfinkatu", "column_subheading.settings": "Ezarpenak", "community.column_settings.local_only": "Lokala soilik", - "community.column_settings.media_only": "Multimedia besterik ez", + "community.column_settings.media_only": "Edukiak soilik", "community.column_settings.remote_only": "Urrunekoa soilik", "compose.language.change": "Aldatu hizkuntza", "compose.language.search": "Bilatu hizkuntzak...", @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Zure kontua ez dago {locked}. Edonork jarraitu zaitzake zure jarraitzaileentzako soilik diren bidalketak ikusteko.", "compose_form.lock_disclaimer.lock": "giltzapetuta", "compose_form.placeholder": "Zer duzu buruan?", - "compose_form.poll.add_option": "Gehitu aukera", "compose_form.poll.duration": "Inkestaren iraupena", "compose_form.poll.multiple": "Aukera aniza", "compose_form.poll.option_placeholder": "{number}. aukera", - "compose_form.poll.remove_option": "Kendu aukera hau", "compose_form.poll.single": "Hautatu bat", "compose_form.poll.switch_to_multiple": "Aldatu inkesta hainbat aukera onartzeko", "compose_form.poll.switch_to_single": "Aldatu inkesta aukera bakarra onartzeko", @@ -279,6 +277,17 @@ "follow_request.authorize": "Baimendu", "follow_request.reject": "Ukatu", "follow_requests.unlocked_explanation": "Zure kontua blokeatuta ez badago ere, {domain} domeinuko arduradunek uste dute kontu hauetako jarraipen eskaerak agian eskuz begiratu nahiko dituzula.", + "follow_suggestions.curated_suggestion": "Domeinuaren iradokizuna", + "follow_suggestions.dismiss": "Ez erakutsi berriro", + "follow_suggestions.hints.featured": "Profil hau {domain} domeinuko taldeak eskuz aukeratu du.", + "follow_suggestions.hints.friends_of_friends": "Profil hau ezaguna da jarraitzen duzun jendearen artean.", + "follow_suggestions.hints.most_followed": "Profil hau {domain} domeinuan gehien jarraitzen den profiletako bat da.", + "follow_suggestions.hints.most_interactions": "Profil hau arreta handia jasotzen ari da berriki {domain} domeinuan.", + "follow_suggestions.hints.similar_to_recently_followed": "Profil hau duela gutxi jarraitu dituzun profil askoren antzekoa da.", + "follow_suggestions.personalized_suggestion": "Iradokizun pertsonalizatua", + "follow_suggestions.popular_suggestion": "Iradokizun ezaguna", + "follow_suggestions.view_all": "Ikusi denak", + "follow_suggestions.who_to_follow": "Zein jarraitu", "followed_tags": "Jarraitutako traolak", "footer.about": "Honi buruz", "footer.directory": "Profil-direktorioa", @@ -305,13 +314,9 @@ "hashtag.follow": "Jarraitu traolari", "hashtag.unfollow": "Utzi traola jarraitzeari", "hashtags.and_other": "…eta {count, plural, one {}other {# gehiago}}", - "home.actions.go_to_explore": "Ikusi zer dagoen pil-pilean", - "home.actions.go_to_suggestions": "Aurkitu jendea jarraitzeko", "home.column_settings.basic": "Oinarrizkoa", "home.column_settings.show_reblogs": "Erakutsi bultzadak", "home.column_settings.show_replies": "Erakutsi erantzunak", - "home.explore_prompt.body": "Zure hasierako jarioak jarraitzeko aukeratu dituzun traolen, jarraitzeko aukeratu duzun jendearen eta beraiek bultzatutako argitalpenen nahasketa bat edukiko du. Nahiko isila dirudi oraintxe, beraz, zergatik ez:", - "home.explore_prompt.title": "Hau zure hasiera da Mastodonen.", "home.hide_announcements": "Ezkutatu iragarpenak", "home.pending_critical_update.body": "Eguneratu zure Mastodoneko zerbitzaria leheinbailehen!", "home.pending_critical_update.link": "Ikusi eguneraketak", @@ -356,7 +361,7 @@ "keyboard_shortcuts.muted": "mutututako erabiltzaileen zerrenda irekitzeko", "keyboard_shortcuts.my_profile": "zure profila irekitzeko", "keyboard_shortcuts.notifications": "jakinarazpenen zutabea irekitzeko", - "keyboard_shortcuts.open_media": "media zabaltzeko", + "keyboard_shortcuts.open_media": "Ireki edukia", "keyboard_shortcuts.pinned": "Ireki finkatutako bidalketen zerrenda", "keyboard_shortcuts.profile": "egilearen profila irekitzeko", "keyboard_shortcuts.reply": "Erantzun bidalketari", @@ -495,7 +500,7 @@ "onboarding.share.message": "{username} naiz #Mastodon-en! Jarrai nazazu hemen: {url}", "onboarding.share.next_steps": "Hurrengo urrats posibleak:", "onboarding.share.title": "Partekatu zure profila", - "onboarding.start.lead": "Zure Mastodoneko kontu berria prest dago. Jakin nola atera diezaioekun etekin handiena hemen:", + "onboarding.start.lead": "Mastodonen parte zara orain, bakarra eta deszentralizatua den sare-sozialaren plataforma, non zuk, eta ez algoritmo batek, zeure esperientzia pertsonaliza dezakezun. Igaro ezazu muga soziala:", "onboarding.start.skip": "Urrats guztiak saltatu nahi dituzu?", "onboarding.start.title": "Lortu duzu!", "onboarding.steps.follow_people.body": "Zure jarioa zuk pertsonalizatzen duzu. Bete dezagun jende interesgarriaz.", diff --git a/app/javascript/mastodon/locales/fa.json b/app/javascript/mastodon/locales/fa.json index 0b078d1ab3..9029ba3cb5 100644 --- a/app/javascript/mastodon/locales/fa.json +++ b/app/javascript/mastodon/locales/fa.json @@ -110,7 +110,7 @@ "column.about": "درباره", "column.blocks": "کاربران مسدود شده", "column.bookmarks": "نشانک‌ها", - "column.community": "خط زمانی محلّی", + "column.community": "خط زمانی محلی", "column.direct": "اشاره‌های خصوصی", "column.directory": "مرور نمایه‌ها", "column.domain_blocks": "دامنه‌های مسدود شده", @@ -131,7 +131,7 @@ "column_header.show_settings": "نمایش تنظیمات", "column_header.unpin": "برداشتن سنجاق", "column_subheading.settings": "تنظیمات", - "community.column_settings.local_only": "فقط محلّی", + "community.column_settings.local_only": "فقط محلی", "community.column_settings.media_only": "فقط رسانه", "community.column_settings.remote_only": "تنها دوردست", "compose.language.change": "تغییر زبان", @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "حسابتان {locked} نیست. هر کسی می‌تواند پی‌گیرتان شده و فرسته‌های ویژهٔ پی‌گیرانتان را ببیند.", "compose_form.lock_disclaimer.lock": "قفل‌شده", "compose_form.placeholder": "تازه چه خبر؟", - "compose_form.poll.add_option": "افزودن گزینه", "compose_form.poll.duration": "مدت نظرسنجی", "compose_form.poll.multiple": "چند گزینه‌ای", "compose_form.poll.option_placeholder": "گزینهٔ {number}", - "compose_form.poll.remove_option": "برداشتن این گزینه", "compose_form.poll.single": "گزینش یکی", "compose_form.poll.switch_to_multiple": "تغییر نظرسنجی برای اجازه به چندین گزینه", "compose_form.poll.switch_to_single": "تبدیل به نظرسنجی تک‌گزینه‌ای", @@ -230,7 +228,7 @@ "empty_column.account_unavailable": "نمایهٔ موجود نیست", "empty_column.blocks": "هنوز کسی را مسدود نکرده‌اید.", "empty_column.bookmarked_statuses": "هنوز هیچ فرستهٔ نشانه‌گذاری شده‌ای ندارید. هنگامی که فرسته‌ای را نشانه‌گذاری کنید، این‌جا نشان داده خواهد شد.", - "empty_column.community": "خط زمانی محلّی خالی است. چیزی بنویسید تا چرخش بچرخد!", + "empty_column.community": "خط زمانی محلی خالیست. چیزی نوشته تا چرخش بچرخد!", "empty_column.direct": "هنوز هیچ اشاره خصوصی‌ای ندارید. هنگامی که چنین پیامی بگیرید یا بفرستید این‌جا نشان داده خواهد شد.", "empty_column.domain_blocks": "هنوز هیچ دامنه‌ای مسدود نشده است.", "empty_column.explore_statuses": "الآن چیزی پرطرفدار نیست. بعداً دوباره بررسی کنید!", @@ -279,6 +277,17 @@ "follow_request.authorize": "اجازه دهید", "follow_request.reject": "رد کنید", "follow_requests.unlocked_explanation": "با این که حسابتان قفل نیست، کارکنان {domain} فکر کردند که ممکن است بخواهید درخواست‌ها از این حساب‌ها را به صورت دستی بازبینی کنید.", + "follow_suggestions.curated_suggestion": "گزینش سردبیر", + "follow_suggestions.dismiss": "دیگر نشان داده نشود", + "follow_suggestions.hints.featured": "این نمایه به دست گروه {domain} دستچین شده.", + "follow_suggestions.hints.friends_of_friends": "این نمایه بین کسانی که پی می‌گیرید محبوب است.", + "follow_suggestions.hints.most_followed": "این نمایه روی {domain} بسیار پی‌گرفته شده.", + "follow_suggestions.hints.most_interactions": "این نمایه اخیراُ روی {domain} توجّه زیادی گرفته.", + "follow_suggestions.hints.similar_to_recently_followed": "این نمایه شبیه نمایه‌هاییست که اخیراً پی‌گرفته‌اید.", + "follow_suggestions.personalized_suggestion": "پیشنهاد شخصی", + "follow_suggestions.popular_suggestion": "پیشنهاد محبوب", + "follow_suggestions.view_all": "دیدن همه", + "follow_suggestions.who_to_follow": "افرادی برای پی‌گیری", "followed_tags": "برچسب‌های پی‌گرفته", "footer.about": "درباره", "footer.directory": "فهرست نمایه‌ها", @@ -305,13 +314,9 @@ "hashtag.follow": "پی‌گرفتن برچسب", "hashtag.unfollow": "پی‌نگرفتن برچسب", "hashtags.and_other": "…و {count, plural, other {# بیش‌تر}}", - "home.actions.go_to_explore": "ببینید چه داغ است", - "home.actions.go_to_suggestions": "یافتن افراد برای پی‌گیری", "home.column_settings.basic": "پایه‌ای", "home.column_settings.show_reblogs": "نمایش تقویت‌ها", "home.column_settings.show_replies": "نمایش پاسخ‌ها", - "home.explore_prompt.body": "خوراک خانگیتان ترکیبی از فرسته‌ها از برچسب‌هایی که برای پی‌گیری گزیده‌اید، افرادی که پی می‌گیرید و فرسته‌هایی که تقویت می‌کنند را خواهد داشت. اگر خیلی خلوت به نظر می‌رسد،‌ شاید بخواهید:", - "home.explore_prompt.title": "این پایگاه خانگیتان در ماستودون است.", "home.hide_announcements": "نهفتن اعلامیه‌ها", "home.pending_critical_update.body": "لطفاً کارساز ماستودونتان را در نخستین فرصت به‌روز کنید!", "home.pending_critical_update.link": "دیدن به‌روز رسانی‌ها", @@ -351,7 +356,7 @@ "keyboard_shortcuts.home": "گشودن خط زمانی خانگی", "keyboard_shortcuts.hotkey": "میان‌بر", "keyboard_shortcuts.legend": "نمایش این نشانه", - "keyboard_shortcuts.local": "گشودن خط زمانی محلّی", + "keyboard_shortcuts.local": "گشودن خط زمانی محلی", "keyboard_shortcuts.mention": "اشاره به نویسنده", "keyboard_shortcuts.muted": "گشودن فهرست کاربران خموش", "keyboard_shortcuts.my_profile": "گشودن نمایه‌تان", @@ -402,7 +407,7 @@ "navigation_bar.advanced_interface": "بازکردن در رابط کاربری وب پیشرفته", "navigation_bar.blocks": "کاربران مسدود شده", "navigation_bar.bookmarks": "نشانک‌ها", - "navigation_bar.community_timeline": "خط زمانی محلّی", + "navigation_bar.community_timeline": "خط زمانی محلی", "navigation_bar.compose": "نوشتن فرستهٔ تازه", "navigation_bar.direct": "اشاره‌های خصوصی", "navigation_bar.discover": "گشت و گذار", @@ -481,8 +486,10 @@ "onboarding.follows.lead": "You curate your own home feed. The more people you follow, the more active and interesting it will be. These profiles may be a good starting point—you can always unfollow them later!", "onboarding.follows.title": "Popular on Mastodon", "onboarding.profile.discoverable": "نمایه خود را قابل نمایش کنید", + "onboarding.profile.discoverable_hint": "خواسته‌اید روی ماستودون کشف شوید. ممکن است فرسته‌هایتان در نتیحهٔ جست‌وجوها و فرسته‌های داغ ظاهر شده و نمایه‌تان به افرادی با علایق مشابهتان پیشنهاد شود.", "onboarding.profile.display_name": "نام نمایشی", "onboarding.profile.display_name_hint": "نام کامل یا نام باحالتان…", + "onboarding.profile.lead": "همواره می‌توانید این مورد را در تنظیمات که گزینه‌ّای شخصی سازی بیش‌تری نیز دارد کامل کنید.", "onboarding.profile.note": "درباره شما", "onboarding.profile.note_hint": "می‌توانید افراد دیگر را @نام‌بردن یا #برچسب بزنید…", "onboarding.profile.save_and_continue": "ذخیره کن و ادامه بده", @@ -528,6 +535,7 @@ "privacy.private.short": "پی‌گیرندگان", "privacy.public.long": "هرکسی در و بیرون از ماستودون", "privacy.public.short": "عمومی", + "privacy.unlisted.additional": "درست مثل عمومی رفتار می‌کند؛ جز این که فرسته در برچسب‌ها یا خوراک‌های زنده، کشف یا جست‌وجوی ماستودون ظاهر نخواهد شد. حتا اگر کلیّت نمایه‌تان اجازه داده باشد.", "privacy.unlisted.long": "سروصدای الگوریتمی کم‌تر", "privacy.unlisted.short": "عمومی ساکت", "privacy_policy.last_updated": "آخرین به‌روز رسانی در {date}", @@ -547,6 +555,7 @@ "relative_time.minutes": "{number} دقیقه", "relative_time.seconds": "{number} ثانیه", "relative_time.today": "امروز", + "reply_indicator.attachments": "{count, plural, one {# پیوست} other {# پیوست}}", "reply_indicator.cancel": "لغو", "reply_indicator.poll": "نظرسنجی", "report.block": "انسداد", diff --git a/app/javascript/mastodon/locales/fi.json b/app/javascript/mastodon/locales/fi.json index 7b98f99836..484baae122 100644 --- a/app/javascript/mastodon/locales/fi.json +++ b/app/javascript/mastodon/locales/fi.json @@ -2,8 +2,8 @@ "about.blocks": "Moderoidut palvelimet", "about.contact": "Ota yhteys:", "about.disclaimer": "Mastodon on vapaa avoimen lähdekoodin ohjelmisto ja Mastodon gGmbH:n tavaramerkki.", - "about.domain_blocks.no_reason_available": "Syytä ei ole ilmoitettu", - "about.domain_blocks.preamble": "Mastodonin avulla voidaan yleensä tarkastella minkä tahansa fediversumiin kuuluvan palvelimen sisältöä ja vuorovaikuttaa eri palvelinten käyttäjien kanssa. Nämä ovat tälle palvelimelle määritetyt poikkeukset.", + "about.domain_blocks.no_reason_available": "Syy ei ole tiedossa", + "about.domain_blocks.preamble": "Mastodonin avulla voidaan yleensä tarkastella minkä tahansa fediversumiin kuuluvan palvelimen sisältöä, ja olla yhteyksissä eri palvelinten käyttäjien kanssa. Nämä poikkeukset koskevat yksin tätä palvelinta.", "about.domain_blocks.silenced.explanation": "Et yleensä näe tämän palvelimen profiileja ja sisältöä, jollet erityisesti etsi juuri sitä tai liity siihen seuraamalla.", "about.domain_blocks.silenced.title": "Rajoitettu", "about.domain_blocks.suspended.explanation": "Mitään tämän palvelimen tietoja ei käsitellä, tallenneta tai vaihdeta, mikä tekee vuorovaikutuksesta ja viestinnästä sen käyttäjien kanssa mahdotonta.", @@ -19,7 +19,7 @@ "account.block_domain": "Estä verkkotunnus {domain}", "account.block_short": "Estä", "account.blocked": "Estetty", - "account.browse_more_on_origin_server": "Selaile lisää alkuperäisellä palvelimella", + "account.browse_more_on_origin_server": "Selaile kattavampaa alkuperäprofiilia", "account.cancel_follow_request": "Peruuta seurantapyyntö", "account.copy": "Kopioi linkki profiiliin", "account.direct": "Mainitse @{name} yksityisesti", @@ -27,7 +27,7 @@ "account.domain_blocked": "Verkkotunnus estetty", "account.edit_profile": "Muokkaa profiilia", "account.enable_notifications": "Ilmoita minulle, kun @{name} julkaisee", - "account.endorse": "Pidä esillä profiilissa", + "account.endorse": "Suosittele profiilissasi", "account.featured_tags.last_status_at": "Viimeisin julkaisu {date}", "account.featured_tags.last_status_never": "Ei julkaisuja", "account.featured_tags.title": "Käyttäjän {name} esillä pidettävät aihetunnisteet", @@ -39,7 +39,7 @@ "account.following": "Seuratut", "account.following_counter": "{count, plural, one {{counter} seurattu} other {{counter} seurattua}}", "account.follows.empty": "Tämä käyttäjä ei vielä seuraa ketään.", - "account.go_to_profile": "Avaa profiili", + "account.go_to_profile": "Mene profiiliin", "account.hide_reblogs": "Piilota käyttäjän @{name} tehostukset", "account.in_memoriam": "Muistoissamme.", "account.joined_short": "Liittynyt", @@ -64,10 +64,10 @@ "account.share": "Jaa käyttäjän @{name} profiili", "account.show_reblogs": "Näytä käyttäjän @{name} tehostukset", "account.statuses_counter": "{count, plural, one {{counter} julkaisu} other {{counter} julkaisua}}", - "account.unblock": "Poista käyttäjän @{name} esto", - "account.unblock_domain": "Poista verkkotunnuksen {domain} esto", + "account.unblock": "Kumoa käyttäjän @{name} esto", + "account.unblock_domain": "Kumoa verkkotunnuksen {domain} esto", "account.unblock_short": "Poista esto", - "account.unendorse": "Älä pidä esillä profiilissa", + "account.unendorse": "Kumoa suosittelu profiilissasi", "account.unfollow": "Lopeta seuraaminen", "account.unmute": "Poista käyttäjän @{name} mykistys", "account.unmute_notifications_short": "Poista ilmoitusten mykistys", @@ -75,7 +75,7 @@ "account_note.placeholder": "Lisää muistiinpano napsauttamalla", "admin.dashboard.daily_retention": "Käyttäjien pysyvyys rekisteröitymisen jälkeen päivittäin", "admin.dashboard.monthly_retention": "Käyttäjien pysyvyys rekisteröitymisen jälkeen kuukausittain", - "admin.dashboard.retention.average": "Keskimäärin", + "admin.dashboard.retention.average": "Keskiarvo", "admin.dashboard.retention.cohort": "Rekisteröitymis-kk.", "admin.dashboard.retention.cohort_size": "Uusia käyttäjiä", "admin.impact_report.instance_accounts": "Tilien profiilit, jotka tämä poistaisi", @@ -86,7 +86,7 @@ "alert.rate_limited.title": "Pyyntömäärää rajoitettu", "alert.unexpected.message": "Tapahtui odottamaton virhe.", "alert.unexpected.title": "Hups!", - "announcement.announcement": "Ilmoitus", + "announcement.announcement": "Tiedote", "attachments_list.unprocessed": "(käsittelemätön)", "audio.hide": "Piilota ääni", "boost_modal.combo": "Ensi kerralla voit ohittaa tämän painamalla {combo}", @@ -145,14 +145,12 @@ "compose_form.lock_disclaimer": "Tilisi ei ole {locked}. Kuka tahansa voi seurata tiliäsi ja nähdä vain seuraajille rajaamasi julkaisut.", "compose_form.lock_disclaimer.lock": "lukittu", "compose_form.placeholder": "Mitä mietit?", - "compose_form.poll.add_option": "Lisää vaihtoehto", "compose_form.poll.duration": "Äänestyksen kesto", "compose_form.poll.multiple": "Monivalinta", "compose_form.poll.option_placeholder": "Vaihtoehto {number}", - "compose_form.poll.remove_option": "Poista tämä vaihtoehto", "compose_form.poll.single": "Valitse yksi", - "compose_form.poll.switch_to_multiple": "Muuta äänestys monivalinnaksi", - "compose_form.poll.switch_to_single": "Muuta äänestys sallimaan vain yksi valinta", + "compose_form.poll.switch_to_multiple": "Muuta kysely monivalinnaksi", + "compose_form.poll.switch_to_single": "Muuta kysely sallimaan vain yksi valinta", "compose_form.poll.type": "Tyyli", "compose_form.publish": "Julkaise", "compose_form.publish_form": "Uusi julkaisu", @@ -166,13 +164,13 @@ "confirmations.block.confirm": "Estä", "confirmations.block.message": "Haluatko varmasti estää käyttäjän {name}?", "confirmations.cancel_follow_request.confirm": "Peruuta pyyntö", - "confirmations.cancel_follow_request.message": "Haluatko varmasti peruuttaa pyyntösi seurata profiilia {name}?", + "confirmations.cancel_follow_request.message": "Haluatko varmasti perua pyyntösi seurata käyttäjätiliä {name}?", "confirmations.delete.confirm": "Poista", "confirmations.delete.message": "Haluatko varmasti poistaa tämän julkaisun?", "confirmations.delete_list.confirm": "Poista", "confirmations.delete_list.message": "Haluatko varmasti poistaa tämän listan pysyvästi?", "confirmations.discard_edit_media.confirm": "Hylkää", - "confirmations.discard_edit_media.message": "Sinulla on tallentamattomia muutoksia median kuvaukseen tai esikatseluun, hylätäänkö ne silti?", + "confirmations.discard_edit_media.message": "Sinulla on tallentamattomia muutoksia median kuvaukseen tai esikatseluun. Hylätäänkö ne silti?", "confirmations.domain_block.confirm": "Estä koko verkkotunnus", "confirmations.domain_block.message": "Haluatko aivan varmasti estää koko verkkotunnuksen {domain}? Useimmiten muutama kohdistettu esto tai mykistys on riittävä ja suositeltava toimi. Et näe sisältöä tästä verkkotunnuksesta millään julkisilla aikajanoilla tai ilmoituksissa. Tähän verkkotunnukseen kuuluvat seuraajasi poistetaan.", "confirmations.edit.confirm": "Muokkaa", @@ -182,12 +180,12 @@ "confirmations.mute.confirm": "Mykistä", "confirmations.mute.explanation": "Tämä toiminto piilottaa heidän julkaisunsa sinulta – mukaan lukien ne, joissa heidät mainitaan – sallien heidän yhä nähdä julkaisusi ja seurata sinua.", "confirmations.mute.message": "Haluatko varmasti mykistää käyttäjän {name}?", - "confirmations.redraft.confirm": "Poista & palauta muokattavaksi", + "confirmations.redraft.confirm": "Poista ja palauta muokattavaksi", "confirmations.redraft.message": "Haluatko varmasti poistaa julkaisun ja tehdä siitä luonnoksen? Suosikit ja tehostukset menetetään, ja alkuperäisen julkaisun vastaukset jäävät orvoiksi.", "confirmations.reply.confirm": "Vastaa", "confirmations.reply.message": "Jos vastaat nyt, vastaus korvaa parhaillaan työstämäsi viestin. Haluatko varmasti jatkaa?", "confirmations.unfollow.confirm": "Lopeta seuraaminen", - "confirmations.unfollow.message": "Haluatko varmasti lakata seuraamasta profiilia {name}?", + "confirmations.unfollow.message": "Haluatko varmasti lopettaa profiilin {name} seuraamisen?", "conversation.delete": "Poista keskustelu", "conversation.mark_as_read": "Merkitse luetuksi", "conversation.open": "Näytä keskustelu", @@ -201,10 +199,10 @@ "directory.recently_active": "Hiljattain aktiiviset", "disabled_account_banner.account_settings": "Tilin asetukset", "disabled_account_banner.text": "Tilisi {disabledAccount} on tällä hetkellä poissa käytöstä.", - "dismissable_banner.community_timeline": "Nämä ovat viimeisimpiä julkaisuja käyttäjiltä, joiden tili sijaitsee palvelimella {domain}.", + "dismissable_banner.community_timeline": "Nämä ovat tuoreimpia julkaisuja käyttäjiltä, joiden tili on palvelimella {domain}.", "dismissable_banner.dismiss": "Hylkää", "dismissable_banner.explore_links": "Näitä uutisia jaetaan tänään sosiaalisessa verkossa eniten. Uusimmat ja eri käyttäjien eniten lähettämät uutiset nousevat listauksessa korkeimmalle.", - "dismissable_banner.explore_statuses": "Nämä sosiaalisen verkon julkaisut keräävät tänään eniten huomiota. Uusimmat, tehostetuimmat ja suosikiksi lisätyimmät nousevat listauksessa korkeimmalle.", + "dismissable_banner.explore_statuses": "Tänään nämä sosiaalisen verkon julkaisut keräävät eniten huomiota. Uusimmat, tehostetuimmat ja suosikeiksi lisätyimmät julkaisut nousevat listauksessa korkeammalle.", "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.", @@ -216,18 +214,18 @@ "emoji_button.food": "Ruoka ja juoma", "emoji_button.label": "Lisää emoji", "emoji_button.nature": "Luonto", - "emoji_button.not_found": "Vastaavia emojeja ei löytynyt", + "emoji_button.not_found": "Vastaavia emojeita ei löytynyt", "emoji_button.objects": "Esineet", "emoji_button.people": "Ihmiset", "emoji_button.recent": "Usein käytetyt", - "emoji_button.search": "Hae...", + "emoji_button.search": "Etsi...", "emoji_button.search_results": "Hakutulokset", "emoji_button.symbols": "Symbolit", "emoji_button.travel": "Matkailu ja paikat", - "empty_column.account_hides_collections": "Käyttäjä on päättänyt olla julkaisematta näitä tietoja", + "empty_column.account_hides_collections": "Käyttäjä on päättänyt pitää nämä tiedot yksityisinä", "empty_column.account_suspended": "Tili jäädytetty", "empty_column.account_timeline": "Ei viestejä täällä.", - "empty_column.account_unavailable": "Profiilia ei löydy", + "empty_column.account_unavailable": "Profiilia ei ole saatavilla", "empty_column.blocks": "Et ole vielä estänyt käyttäjiä.", "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!", @@ -238,17 +236,17 @@ "empty_column.favourites": "Kukaan ei ole vielä lisännyt tätä julkaisua suosikkeihinsa. Kun joku tekee niin, tulee hän tähän näkyviin.", "empty_column.follow_requests": "Et ole vielä vastaanottanut seuraamispyyntöjä. Saamasi pyynnöt näkyvät täällä.", "empty_column.followed_tags": "Et seuraa vielä yhtäkään aihetunnistetta. Kun alat seurata, ne tulevat tähän näkyviin.", - "empty_column.hashtag": "Tällä aihetunnisteella ei ole vielä mitään.", + "empty_column.hashtag": "Tällä aihetunnisteella ei löydy vielä sisältöä.", "empty_column.home": "Kotiaikajanasi on tyhjä! Seuraa useampia henkilöjä, niin näet enemmän sisältöä.", "empty_column.list": "Tällä listalla ei ole vielä mitään. Kun tämän listan jäsenet lähettävät uusia julkaisuja, ne näkyvät tässä.", "empty_column.lists": "Sinulla ei ole vielä yhtään listaa. Kun luot sellaisen, näkyy se tässä.", "empty_column.mutes": "Et ole mykistänyt vielä yhtään käyttäjää.", "empty_column.notifications": "Sinulla ei ole vielä ilmoituksia. Kun keskustelet muille, näet sen täällä.", "empty_column.public": "Täällä ei ole mitään! Kirjoita jotain julkisesti. Voit myös seurata muiden palvelimien käyttäjiä", - "error.unexpected_crash.explanation": "Sivua ei voi näyttää oikein, johtuen bugista tai ongelmasta selaimen yhteensopivuudessa.", + "error.unexpected_crash.explanation": "Sivua ei voida näyttää oikein ohjelmointivirheen tai selaimen yhteensopivuusvajeen vuoksi.", "error.unexpected_crash.explanation_addons": "Sivua ei voitu näyttää oikein. Tämä virhe johtuu todennäköisesti selaimen lisäosasta tai automaattisista käännöstyökaluista.", "error.unexpected_crash.next_steps": "Kokeile päivittää sivu. Jos se ei auta, voi Mastodonin käyttö ehkä onnistua eri selaimella tai natiivisovelluksella.", - "error.unexpected_crash.next_steps_addons": "Yritä poistaa ne käytöstä ja päivittää sivu. Jos se ei auta, voit silti käyttää Mastodonia eri selaimen tai sovelluksen kautta.", + "error.unexpected_crash.next_steps_addons": "Yritä poistaa ne käytöstä, ja virkistä sitten sivunlataus. Mikäli ongelma jatkuu, voit mahdollisesti käyttää Mastodonia eri selaimella tai natiivilla sovelluksella.", "errors.unexpected_crash.copy_stacktrace": "Kopioi pinon jäljitys leikepöydälle", "errors.unexpected_crash.report_issue": "Ilmoita ongelmasta", "explore.search_results": "Hakutulokset", @@ -257,13 +255,13 @@ "explore.trending_links": "Uutiset", "explore.trending_statuses": "Julkaisut", "explore.trending_tags": "Aihetunnisteet", - "filter_modal.added.context_mismatch_explanation": "Tämä suodatinluokka ei koske kontekstia, jossa olet tarkastellut tätä julkaisua. Jos haluat, että julkaisu suodatetaan myös tässä kontekstissa, sinun pitää muokata suodatinta.", - "filter_modal.added.context_mismatch_title": "Konteksti ei täsmää!", - "filter_modal.added.expired_explanation": "Tämä suodatinluokka on vanhentunut, joten sinun on muutettava viimeistä voimassaolopäivää, jotta suodatin on voimassa.", + "filter_modal.added.context_mismatch_explanation": "Tämä suodatinluokka ei koske asiayhteyttä, jossa olet tarkastellut tätä julkaisua. Jos haluat julkaisun suodatettavan myös tässä asiayhteydessä, muokkaa suodatinta.", + "filter_modal.added.context_mismatch_title": "Asiayhteys ei täsmää!", + "filter_modal.added.expired_explanation": "Tämä suodatinluokka on vanhentunut, joten sinun on muutettava viimeistä voimassaolopäivää, jotta suodatusta käytettäisiin.", "filter_modal.added.expired_title": "Vanhentunut suodatin!", - "filter_modal.added.review_and_configure": "Voit tarkastella tätä suodatinluokkaa ja määrittää sen tarkemmin kohdassa {settings_link}.", + "filter_modal.added.review_and_configure": "Voit tarkastella tätä suodatinluokkaa ja määrittää sen tarkemmin {settings_link}.", "filter_modal.added.review_and_configure_title": "Suodattimen asetukset", - "filter_modal.added.settings_link": "asetukset-sivulle", + "filter_modal.added.settings_link": "asetussivulla", "filter_modal.added.short_explanation": "Tämä julkaisu on lisätty seuraavaan suodatinluokkaan: {title}.", "filter_modal.added.title": "Suodatin lisätty!", "filter_modal.select_filter.context_mismatch": "ei sovellu tähän kontekstiin", @@ -279,6 +277,17 @@ "follow_request.authorize": "Valtuuta", "follow_request.reject": "Hylkää", "follow_requests.unlocked_explanation": "Vaikkei tiliäsi ole lukittu, palvelimen {domain} ylläpito on arvioinut, että saatat olla halukas tarkistamaan nämä seuraamispyynnöt erikseen.", + "follow_suggestions.curated_suggestion": "Ylläpidon valinta", + "follow_suggestions.dismiss": "Älä näytä uudelleen", + "follow_suggestions.hints.featured": "Tämän profiilin on valinnut palvelimen {domain} tiimi.", + "follow_suggestions.hints.friends_of_friends": "Tämä profiili on suosittu seuraamiesi henkilöiden parissa.", + "follow_suggestions.hints.most_followed": "Tämä profiili on yksi seuratuimmista palvelimella {domain}.", + "follow_suggestions.hints.most_interactions": "Tämä profiili on viime aikoina saanut paljon huomiota palvelimella {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Tämä profiili on samankaltainen kuin profiilit, joita olet viimeksi seurannut.", + "follow_suggestions.personalized_suggestion": "Personoitu ehdotus", + "follow_suggestions.popular_suggestion": "Suosittu ehdotus", + "follow_suggestions.view_all": "Näytä kaikki", + "follow_suggestions.who_to_follow": "Ehdotuksia seurattavaksi", "followed_tags": "Seuratut aihetunnisteet", "footer.about": "Tietoja", "footer.directory": "Profiilihakemisto", @@ -305,15 +314,11 @@ "hashtag.follow": "Seuraa aihetunnistetta", "hashtag.unfollow": "Lopeta aihetunnisteen seuraaminen", "hashtags.and_other": "…ja {count, plural, other {# lisää}}", - "home.actions.go_to_explore": "Katso, mikä on suosittua", - "home.actions.go_to_suggestions": "Löydä seurattavia käyttäjiä", "home.column_settings.basic": "Perusasetukset", "home.column_settings.show_reblogs": "Näytä tehostukset", "home.column_settings.show_replies": "Näytä vastaukset", - "home.explore_prompt.body": "Kotisyötteesi on sekoitus seuraamiasi aihetunnisteita ja käyttäjiä sekä heidän tehostamiaan julkaisuja. Jos se tuntuu liian hiljaiselta, saatat haluta:", - "home.explore_prompt.title": "Tämä on tukikohtasi Mastodonissa.", "home.hide_announcements": "Piilota tiedotteet", - "home.pending_critical_update.body": "Päivitäthän Mastodon-palvelimen mahdollisimman pian!", + "home.pending_critical_update.body": "Päivitäthän Mastodon-palvelinohjelmistosi mahdollisimman pian!", "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", @@ -352,7 +357,7 @@ "keyboard_shortcuts.hotkey": "Pikanäppäin", "keyboard_shortcuts.legend": "Näytä tämä ohje", "keyboard_shortcuts.local": "Avaa paikallinen aikajana", - "keyboard_shortcuts.mention": "Mainitse kirjoittaja", + "keyboard_shortcuts.mention": "Mainitse julkaisija", "keyboard_shortcuts.muted": "Avaa mykistettyjen käyttäjien luettelo", "keyboard_shortcuts.my_profile": "Avaa profiilisi", "keyboard_shortcuts.notifications": "Avaa ilmoitussarake", @@ -370,12 +375,12 @@ "keyboard_shortcuts.unfocus": "Poistu teksti-/hakukentästä", "keyboard_shortcuts.up": "Siirry listassa ylöspäin", "lightbox.close": "Sulje", - "lightbox.compress": "Pakkaa kuvan näkymälaatikko", - "lightbox.expand": "Laajenna kuvan näkymälaatikko", + "lightbox.compress": "Tiivis kuvankatselunäkymä", + "lightbox.expand": "Laajennettu kuvankatselunäkymä", "lightbox.next": "Seuraava", "lightbox.previous": "Edellinen", "limited_account_hint.action": "Näytä profiili joka tapauksessa", - "limited_account_hint.title": "Palvelun {domain} valvojat ovat piilottaneet tämän profiilin.", + "limited_account_hint.title": "Palvelimen {domain} valvojat ovat piilottaneet tämän käyttäjätilin.", "link_preview.author": "Julkaissut {name}", "lists.account.add": "Lisää listalle", "lists.account.remove": "Poista listalta", @@ -389,21 +394,21 @@ "lists.replies_policy.list": "Listan jäsenille", "lists.replies_policy.none": "Ei kellekään", "lists.replies_policy.title": "Näytä vastaukset:", - "lists.search": "Etsi seuraamistasi henkilöistä", + "lists.search": "Etsi seuraamiesi henkilöiden keskuudesta", "lists.subheading": "Omat listasi", "load_pending": "{count, plural, one {# uusi kohde} other {# uutta kohdetta}}", "loading_indicator.label": "Ladataan…", "media_gallery.toggle_visible": "{number, plural, one {Piilota kuva} other {Piilota kuvat}}", "moved_to_account_banner.text": "Tilisi {disabledAccount} on tällä hetkellä poissa käytöstä, koska teit siirron tiliin {movedToAccount}.", "mute_modal.duration": "Kesto", - "mute_modal.hide_notifications": "Piilota tältä käyttäjältä tulevat ilmoitukset?", + "mute_modal.hide_notifications": "Piilotetaanko tältä käyttäjältä tulevat ilmoitukset?", "mute_modal.indefinite": "Ikuisesti", "navigation_bar.about": "Tietoja", "navigation_bar.advanced_interface": "Avaa edistyneessä selainkäyttöliittymässä", "navigation_bar.blocks": "Estetyt käyttäjät", "navigation_bar.bookmarks": "Kirjanmerkit", "navigation_bar.community_timeline": "Paikallinen aikajana", - "navigation_bar.compose": "Kirjoita uusi julkaisu", + "navigation_bar.compose": "Luo uusi julkaisu", "navigation_bar.direct": "Yksityiset maininnat", "navigation_bar.discover": "Löydä uutta", "navigation_bar.domain_blocks": "Estetyt verkkotunnukset", @@ -428,10 +433,10 @@ "notification.admin.sign_up": "{name} rekisteröityi", "notification.favourite": "{name} lisäsi julkaisusi suosikkeihinsa", "notification.follow": "{name} seurasi sinua", - "notification.follow_request": "{name} haluaa seurata sinua", + "notification.follow_request": "{name} on pyytänyt lupaa saada seurata sinua", "notification.mention": "{name} mainitsi sinut", "notification.own_poll": "Äänestyksesi on päättynyt", - "notification.poll": "Äänestys, johon osallistuit, on päättynyt", + "notification.poll": "Kysely, johon osallistuit, on päättynyt", "notification.reblog": "{name} tehosti julkaisuasi", "notification.status": "{name} julkaisi juuri", "notification.update": "{name} muokkasi julkaisua", @@ -478,7 +483,7 @@ "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!", + "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 milloin tahansa myös lopettaa niiden seuraamisen:", "onboarding.follows.title": "Mukauta kotisyötettäsi", "onboarding.profile.discoverable": "Aseta profiilini löydettäväksi", "onboarding.profile.discoverable_hint": "Kun olet määrittänyt itsesi löydettäväksi Mastodonista, julkaisusi voivat näkyä hakutuloksissa ja suosituissa kohteissa. Lisäksi profiiliasi voidaan ehdottaa käyttäjille, jotka ovat kiinnostuneita kanssasi samoista aiheista.", @@ -506,7 +511,7 @@ "onboarding.steps.setup_profile.title": "Mukauta profiiliasi", "onboarding.steps.share_profile.body": "Kerro kavereillesi, kuinka sinut löytää Mastodonista", "onboarding.steps.share_profile.title": "Jaa Mastodon-profiilisi", - "onboarding.tips.2fa": "Tiesitkö? Voit suojata tilisi ottamalla kaksivaiheisen todennuksen käyttöön tilisi asetuksista. Se toimii millä tahansa TOTP-sovelluksella, eikä sen käyttö edellytä puhelinnumeroa!", + "onboarding.tips.2fa": "Tiesitkö? Voit suojata tilisi ottamalla kaksivaiheisen todennuksen käyttöön tilisi asetuksista. Se toimii millä tahansa TOTP-sovelluksella, eikä sen käyttö edellytä puhelinnumeron antoa!", "onboarding.tips.accounts_from_other_servers": "Tiesitkö? Koska Mastodon on hajautettu, osa kohtaamistasi profiileista sijaitsee muilla kuin sinun palvelimellasi. Voit silti viestiä saumattomasti heidän kanssaan! Heidän palvelimensa mainitaan käyttäjänimen jälkiosassa!", "onboarding.tips.migration": "Tiesitkö? Jos koet, ettei {domain} ole jatkossa itsellesi hyvä palvelinvalinta, voit siirtyä toiselle Mastodon-palvelimelle menettämättä seuraajiasi. Voit jopa isännöidä omaa palvelintasi!", "onboarding.tips.verification": "Tiesitkö? Voit vahvistaa tilisi lisäämällä omalle verkkosivustollesi linkin Mastodon-profiiliisi ja lisäämällä sitten verkkosivustosi osoitteen Mastodon-profiilisi lisäkenttään. Tämä ei maksa mitään, eikä sinun tarvitse lähetellä asiakirjoja!", @@ -521,8 +526,8 @@ "poll.vote": "Äänestä", "poll.voted": "Äänestit tätä vastausta", "poll.votes": "{votes, plural, one {# ääni} other {# ääntä}}", - "poll_button.add_poll": "Lisää äänestys", - "poll_button.remove_poll": "Poista äänestys", + "poll_button.add_poll": "Lisää kysely", + "poll_button.remove_poll": "Poista kysely", "privacy.change": "Muuta julkaisun näkyvyyttä", "privacy.direct.long": "Kaikki tässä julkaisussa mainitut", "privacy.direct.short": "Tietyt henkilöt", @@ -530,7 +535,9 @@ "privacy.private.short": "Seuraajat", "privacy.public.long": "Kuka tahansa Mastodonissa ja sen ulkopuolella", "privacy.public.short": "Julkinen", - "privacy.unlisted.additional": "Tämä toimii kuten julkinen, paitsi että julkaisu ei näy livesyötteissä, aihetunnisteissa, selaa-näkymässä tai Mastodon-haussa, vaikka olisit sallinut ne käyttäjätilin laajuisesti.", + "privacy.unlisted.additional": "Tämä on muutoin kuin julkinen julkaisu, mutta sitä ei näytetä livesyöte-, aihetunniste- tai selailunäkymissä eikä Mastodon-hakutuloksissakaan, vaikka ne olisivat käyttäjätililläsi yleisesti sallittuina.", + "privacy.unlisted.long": "Vähemmän algoritmiperusteista sisältöä", + "privacy.unlisted.short": "Vaivihkaisesti julkinen", "privacy_policy.last_updated": "Viimeksi päivitetty {date}", "privacy_policy.title": "Tietosuojakäytäntö", "recommended": "Suositeltu", @@ -553,16 +560,16 @@ "reply_indicator.poll": "Kysely", "report.block": "Estä", "report.block_explanation": "Et näe hänen viestejään, eikä hän voi nähdä viestejäsi tai seurata sinua. Hän näkee, että olet estänyt hänet.", - "report.categories.legal": "Lakiasiat", + "report.categories.legal": "Juridiset tiedot", "report.categories.other": "Muu", "report.categories.spam": "Roskaposti", - "report.categories.violation": "Sisältö rikkoo yhtä tai useampaa palvelimen sääntöä", + "report.categories.violation": "Sisältö rikkoo yhtä tai useampaa palvelimen säännöistä", "report.category.subtitle": "Valitse sopivin", "report.category.title": "Kerro meille, miksi tämä {type} pitää raportoida", - "report.category.title_account": "profiili", - "report.category.title_status": "julkaisu", + "report.category.title_account": "profiilissa", + "report.category.title_status": "julkaisussa", "report.close": "Valmis", - "report.comment.title": "Olisiko jotain muuta, mitä meidän pitäisi tietää?", + "report.comment.title": "Onko vielä jotain muuta, mitä meidän pitäisi tietää?", "report.forward": "Välitä kohteeseen {target}", "report.forward_hint": "Tämä tili on toisella palvelimella. Haluatko lähettää nimettömän raportin myös sinne?", "report.mute": "Mykistä", @@ -570,18 +577,18 @@ "report.next": "Seuraava", "report.placeholder": "Lisäkommentit", "report.reasons.dislike": "En pidä siitä", - "report.reasons.dislike_description": "Et halua nähdä sitä", + "report.reasons.dislike_description": "Sisältö on sen tyyppistä, ettet halua nähdä sitä", "report.reasons.legal": "Se on laitonta", "report.reasons.legal_description": "Katsot sisällön rikkovan maasi tai palvelimen kotimaan lakeja", "report.reasons.other": "Jotain muuta", - "report.reasons.other_description": "Ongelma ei sovi muihin kategorioihin", + "report.reasons.other_description": "Muut raportointisyyt eivät kuvaa ongelmaa", "report.reasons.spam": "Se on roskapostia", - "report.reasons.spam_description": "Haitalliset linkit, väärennetyt sitoutumiset tai toistuvat vastaukset", + "report.reasons.spam_description": "Haitalliset linkit, henkilöväärennökset tai itseään toistavat vastaukset", "report.reasons.violation": "Se rikkoo palvelimen sääntöjä", - "report.reasons.violation_description": "Tiedät, että se rikkoo tiettyjä sääntöjä", + "report.reasons.violation_description": "Tiedät sisällön rikkovan tiettyjä sääntöjä", "report.rules.subtitle": "Valitse kaikki sopivat", "report.rules.title": "Mitä sääntöjä rikotaan?", - "report.statuses.subtitle": "Valitse kaikki sopivat", + "report.statuses.subtitle": "Valitse kaikki soveltuvat julkaisut", "report.statuses.title": "Onko julkaisuja, jotka tukevat tätä raporttia?", "report.submit": "Lähetä", "report.target": "Raportoidaan {target}", @@ -595,14 +602,14 @@ "report_notification.categories.legal": "Laillinen", "report_notification.categories.other": "Muu", "report_notification.categories.spam": "Roskaposti", - "report_notification.categories.violation": "Sääntöjen rikkominen", + "report_notification.categories.violation": "Sääntörikkomus", "report_notification.open": "Avaa raportti", "search.no_recent_searches": "Ei viimeaikaisia hakuja", "search.placeholder": "Hae", "search.quick_action.account_search": "Profiilit haulla {x}", "search.quick_action.go_to_account": "Siirry profiiliin {x}", "search.quick_action.go_to_hashtag": "Siirry aihetunnisteeseen {x}", - "search.quick_action.open_url": "Avaa URL-osoite Mastodonissa", + "search.quick_action.open_url": "Avaa verkko-osoite Mastodonissa", "search.quick_action.status_search": "Julkaisut haulla {x}", "search.search_or_paste": "Hae tai liitä URL-osoite", "search_popout.full_text_search_disabled_message": "Ei saatavilla palvelimella {domain}.", @@ -611,16 +618,16 @@ "search_popout.options": "Hakuvalinnat", "search_popout.quick_actions": "Pikatoiminnot", "search_popout.recent": "Viimeaikaiset haut", - "search_popout.specific_date": "tarkka päiväys", + "search_popout.specific_date": "tietty päivämäärä", "search_popout.user": "käyttäjä", "search_results.accounts": "Profiilit", "search_results.all": "Kaikki", "search_results.hashtags": "Aihetunnisteet", - "search_results.nothing_found": "Näille hakusanoille ei löytynyt mitään", + "search_results.nothing_found": "Hakusi ei tuottanut tuloksia", "search_results.see_all": "Näytä kaikki", "search_results.statuses": "Julkaisut", "search_results.title": "Hae {q}", - "server_banner.about_active_users": "Palvelinta käyttäneet ihmiset viimeisen 30 päivän aikana (kuukauden aktiiviset käyttäjät)", + "server_banner.about_active_users": "Palvelimen käyttäjät viimeisten 30 päivän ajalta (kuukauden aktiiviset käyttäjät)", "server_banner.active_users": "aktiivista käyttäjää", "server_banner.administered_by": "Ylläpitäjä:", "server_banner.introduction": "{domain} kuuluu hajautettuun sosiaaliseen verkostoon, jonka voimanlähde on {mastodon}.", @@ -657,7 +664,7 @@ "status.media.show": "Napsauta näyttääksesi", "status.media_hidden": "Media piilotettu", "status.mention": "Mainitse @{name}", - "status.more": "Lisää", + "status.more": "Enemmän", "status.mute": "Mykistä @{name}", "status.mute_conversation": "Mykistä keskustelu", "status.open": "Laajenna julkaisu", @@ -679,14 +686,14 @@ "status.show_filter_reason": "Näytä joka tapauksessa", "status.show_less": "Näytä vähemmän", "status.show_less_all": "Näytä kaikista vähemmän", - "status.show_more": "Näytä lisää", + "status.show_more": "Näytä enemmän", "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ä", - "status.translated_from_with": "Käännetty kielestä {lang} käyttäen {provider}", + "status.translated_from_with": "Käännetty kielestä {lang} käyttäen palvelua {provider}", "status.uncached_media_warning": "Esikatselu ei ole käytettävissä", - "status.unmute_conversation": "Poista keskustelun mykistys", + "status.unmute_conversation": "Kumoa keskustelun mykistys", "status.unpin": "Irrota profiilista", "subscribed_languages.lead": "Vain valituilla kielillä kirjoitetut julkaisut näkyvät koti- ja lista-aikajanoillasi muutoksen jälkeen. Älä valitse mitään, jos haluat nähdä julkaisuja kaikilla kielillä.", "subscribed_languages.save": "Tallenna muutokset", @@ -696,9 +703,9 @@ "time_remaining.days": "{number, plural, one {# päivä} other {# päivää}} jäljellä", "time_remaining.hours": "{number, plural, one {# tunti} other {# tuntia}} jäljellä", "time_remaining.minutes": "{number, plural, one {# minuutti} other {# minuuttia}} jäljellä", - "time_remaining.moments": "Hetki jäljellä", + "time_remaining.moments": "Hetkiä jäljellä", "time_remaining.seconds": "{number, plural, one {# sekunti} other {# sekuntia}} jäljellä", - "timeline_hint.remote_resource_not_displayed": "{resource} muilta palvelimilta ei näytetä.", + "timeline_hint.remote_resource_not_displayed": "Muiden palvelinten {resource}-tietoa ei näytetä täällä.", "timeline_hint.resources.followers": "Seuraajat", "timeline_hint.resources.follows": "seurattua", "timeline_hint.resources.statuses": "Vanhemmat julkaisut", @@ -711,23 +718,23 @@ "upload_area.title": "Lataa raahaamalla ja pudottamalla tähän", "upload_button.label": "Lisää kuvia, video tai äänitiedosto", "upload_error.limit": "Tiedostolatauksien rajoitus ylitetty.", - "upload_error.poll": "Tiedoston lataaminen ei ole sallittua äänestyksissä.", + "upload_error.poll": "Tiedostojen lisääminen ei ole sallittua kyselyjen ohessa.", "upload_form.audio_description": "Kuvaile sisältöä kuuroille ja kuulorajoitteisille", "upload_form.description": "Kuvaile sisältöä sokeille ja näkörajoitteisille", "upload_form.edit": "Muokkaa", - "upload_form.thumbnail": "Vaihda pikkukuva", + "upload_form.thumbnail": "Vaihda pienoiskuva", "upload_form.video_description": "Kuvaile sisältöä kuuroille, kuulorajoitteisille, sokeille tai näkörajoitteisille", "upload_modal.analyzing_picture": "Analysoidaan kuvaa…", "upload_modal.apply": "Käytä", - "upload_modal.applying": "Asetetaan…", + "upload_modal.applying": "Otetaan käyttöön…", "upload_modal.choose_image": "Valitse kuva", "upload_modal.description_placeholder": "Nopea ruskea kettu hyppää laiskan koiran yli", "upload_modal.detect_text": "Tunnista teksti kuvasta", "upload_modal.edit_media": "Muokkaa mediaa", - "upload_modal.hint": "Klikkaa tai vedä ympyrä esikatselussa valitaksesi keskipiste, joka näkyy aina pienoiskuvissa.", + "upload_modal.hint": "Napsauta tai vedä ympyrä esikatselussa valitaksesi keskipiste, joka näkyy aina pienoiskuvissa.", "upload_modal.preparing_ocr": "Valmistellaan tekstintunnistusta…", "upload_modal.preview_label": "Esikatselu ({ratio})", - "upload_progress.label": "Ladataan...", + "upload_progress.label": "Tallennetaan...", "upload_progress.processing": "Käsitellään…", "username.taken": "Käyttäjänimi on jo varattu. Kokeile toista", "video.close": "Sulje video", @@ -737,7 +744,7 @@ "video.fullscreen": "Koko näyttö", "video.hide": "Piilota video", "video.mute": "Mykistä ääni", - "video.pause": "Keskeytä", + "video.pause": "Tauko", "video.play": "Toista", "video.unmute": "Palauta ääni" } diff --git a/app/javascript/mastodon/locales/fil.json b/app/javascript/mastodon/locales/fil.json index ec27c8f60e..04208c5544 100644 --- a/app/javascript/mastodon/locales/fil.json +++ b/app/javascript/mastodon/locales/fil.json @@ -27,6 +27,7 @@ "account.featured_tags.last_status_never": "Walang mga post", "account.featured_tags.title": "Nakatampok na hashtag ni {name}", "account.follow": "Sundan", + "account.follow_back": "Sundan pabalik", "account.followers": "Mga tagasunod", "account.followers.empty": "Wala pang sumusunod sa tagagamit na ito.", "account.following": "Sinusundan", @@ -41,6 +42,14 @@ "account.media": "Medya", "account.mention": "Banggitin si @{name}", "account.moved_to": "Ipinahihiwatig ni {name} na ang kanilang bagong account ngayon ay:", + "account.open_original_page": "Buksan ang pinagmulang pahina", + "account.report": "I-ulat si/ang @{name}", + "account.requested_follow": "Hinihiling ni {name} na sundan ka", + "account.show_reblogs": "Ipakita ang mga pagpapalakas mula sa/kay {name}", + "account.unendorse": "Huwag itampok sa profile", + "admin.dashboard.retention.cohort_size": "Mga bagong tagagamit", + "alert.rate_limited.message": "Mangyaring subukan muli pagkatapos ng {retry_time, time, medium}.", + "audio.hide": "Itago ang tunog", "bundle_column_error.error.title": "Naku!", "bundle_column_error.network.body": "Nagkaroon ng kamalian habang sinusubukang i-karga ang pahinang ito. Maaaring dahil ito sa pansamantalang problema ng iyong koneksyon sa internet o ang server na ito.", "bundle_column_error.network.title": "Kamaliang network", @@ -91,6 +100,24 @@ "compose_form.direct_message_warning_learn_more": "Matuto pa", "compose_form.encryption_warning": "Ang mga post sa Mastodon ay hindi naka-encrypt nang dulo-dulo. Huwag magbahagi ng anumang sensitibong impormasyon sa Mastodon.", "compose_form.hashtag_warning": "Hindi maililista ang post na ito sa anumang hashtag dahil hindi ito nakapubliko. Mga nakapublikong post lamang ang mahahanap ayon sa hashtag.", + "compose_form.placeholder": "Anong nangyari?", + "compose_form.poll.multiple": "Maraming pagpipilian", + "compose_form.poll.single": "Piliin ang isa", + "compose_form.reply": "Tumugon", + "compose_form.spoiler.unmarked": "Idagdag ang babala sa nilalaman", + "confirmation_modal.cancel": "Pagpaliban", + "confirmations.block.block_and_report": "Harangan at i-ulat", + "confirmations.block.confirm": "Harangan", + "confirmations.block.message": "Sigurado ka bang gusto mong harangan si {name}?", + "confirmations.cancel_follow_request.confirm": "Bawiin ang kahilingan", + "confirmations.cancel_follow_request.message": "Sigurdo ka bang gusto mong bawiin ang kahilingang sundan si/ang {name}?", + "confirmations.delete.message": "Sigurado ka bang gusto mong burahin ang post na ito?", + "confirmations.delete_list.confirm": "Tanggalin", + "confirmations.delete_list.message": "Sigurado ka bang gusto mong burahin ang listahang ito?", + "confirmations.discard_edit_media.confirm": "Ipagpaliban", + "confirmations.domain_block.confirm": "Harangan ang buong domain", + "confirmations.edit.confirm": "Baguhin", + "confirmations.reply.confirm": "Tumugon", "copy_icon_button.copied": "Sinipi sa clipboard", "copypaste.copied": "Sinipi", "copypaste.copy_to_clipboard": "I-sipi sa clipboard", @@ -140,5 +167,138 @@ "empty_column.hashtag": "Wala pang laman ang hashtag na ito.", "empty_column.home": "Walang laman ang timeline ng tahanan mo! Sumunod sa marami pang tao para mapunan ito.", "empty_column.list": "Wala pang laman ang listahang ito. Kapag naglathala ng mga bagong post ang mga miyembro ng listahang ito, makikita iyon dito.", - "empty_column.lists": "Wala ka pang mga listahan. Kapag gumawa ka ng isa, makikita yun dito." + "empty_column.lists": "Wala ka pang mga listahan. Kapag gumawa ka ng isa, makikita yun dito.", + "explore.search_results": "Mga resulta ng paghahanap", + "firehose.all": "Lahat", + "firehose.local": "Itong serbiro", + "firehose.remote": "Ibang mga serbiro", + "follow_request.authorize": "Tanggapin", + "follow_request.reject": "Tanggihan", + "follow_suggestions.dismiss": "Huwag nang ipakita muli", + "follow_suggestions.view_all": "Tingnan lahat", + "follow_suggestions.who_to_follow": "Sinong maaaring sundan", + "footer.about": "Tungkol dito", + "footer.get_app": "Kunin ang app", + "generic.saved": "Nakaimbak", + "hashtag.column_header.tag_mode.all": "at {additional}", + "hashtag.column_header.tag_mode.any": "o {additional}", + "home.pending_critical_update.body": "Mangyaring i-update ang iyong serbiro ng Mastodon sa lalong madaling panahon!", + "interaction_modal.login.action": "Iuwi mo ako", + "interaction_modal.no_account_yet": "Wala sa Mastodon?", + "interaction_modal.on_another_server": "Sa ibang serbiro", + "interaction_modal.on_this_server": "Sa serbirong ito", + "interaction_modal.title.follow": "Sundan si {name}", + "intervals.full.days": "{number, plural, one {# araw} other {# na araw}}", + "intervals.full.hours": "{number, plural, one {# oras} other {# na oras}}", + "intervals.full.minutes": "{number, plural, one {# minuto} other {# na minuto}}", + "keyboard_shortcuts.description": "Paglalarawan", + "keyboard_shortcuts.down": "Ilipat pababa sa talaan", + "keyboard_shortcuts.mention": "Banggitin ang may-akda", + "keyboard_shortcuts.requests": "Buksan ang talaan ng mga kahilingan sa pagsunod", + "keyboard_shortcuts.up": "Ilipat pataas sa talaan", + "lightbox.close": "Isara", + "lightbox.next": "Susunod", + "lightbox.previous": "Nakaraan", + "link_preview.author": "Ni/ng {name}", + "lists.account.add": "Idagdag sa talaan", + "lists.account.remove": "Tanggalin mula sa talaan", + "lists.new.create": "Idagdag sa talaan", + "lists.new.title_placeholder": "Bagong pangalan ng talaan", + "lists.replies_policy.title": "Ipakita ang mga tugon sa:", + "lists.subheading": "Iyong mga talaan", + "loading_indicator.label": "Kumakarga…", + "navigation_bar.about": "Tungkol dito", + "navigation_bar.blocks": "Nakaharang na mga tagagamit", + "navigation_bar.direct": "Mga palihim na banggit", + "navigation_bar.favourites": "Mga paborito", + "navigation_bar.follows_and_followers": "Mga sinusundan at tagasunod", + "navigation_bar.lists": "Mga listahan", + "navigation_bar.search": "Maghanap", + "notification.admin.report": "Iniulat ni {name} si {target}", + "notification.follow": "Sinundan ka ni {name}", + "notification.follow_request": "Hinihiling ni {name} na sundan ka", + "notification.mention": "Binanggit ka ni {name}", + "notifications.clear": "Burahin mga abiso", + "notifications.column_settings.admin.report": "Mga bagong ulat:", + "notifications.column_settings.favourite": "Mga paborito:", + "notifications.column_settings.follow": "Mga bagong tagasunod:", + "notifications.column_settings.unread_notifications.category": "Hindi Nabasang mga Abiso", + "notifications.column_settings.update": "Mga pagbago:", + "notifications.filter.all": "Lahat", + "notifications.mark_as_read": "Markahan lahat ng abiso bilang nabasa na", + "onboarding.action.back": "Ibalik mo ako", + "onboarding.actions.back": "Ibalik mo ako", + "onboarding.profile.note_hint": "Maaari mong @bangitin ang ibang mga tao o mga #hashtag…", + "onboarding.profile.save_and_continue": "Iimbak at magpatuloy", + "onboarding.share.next_steps": "Mga posibleng susunod na hakbang:", + "poll.closed": "Sarado", + "poll.reveal": "Ipakita ang mga resulta", + "poll.voted": "Binoto mo para sa sagot na ito", + "poll_button.remove_poll": "Tanggalin ang boto", + "privacy.direct.long": "Lahat ng mga binanggit sa post", + "privacy.private.long": "Mga tagasunod mo lamang", + "privacy.private.short": "Mga tagasunod", + "relative_time.days": "{number}a", + "relative_time.full.days": "{number, plural, one {# araw} other {# na araw}} ang nakalipas", + "relative_time.full.hours": "{number, plural, one {# oras} other {# na oras}} ang nakalipas", + "relative_time.full.just_now": "ngayon lang", + "relative_time.full.minutes": "{number, plural, one {# minuto} other {# na minuto}} ang nakalipas", + "relative_time.full.seconds": "{number, plural, one {# segundo} other {# na segundo}} ang nakalipas", + "relative_time.hours": "{number}o", + "relative_time.just_now": "ngayon", + "relative_time.minutes": "{number}m", + "relative_time.seconds": "{number}s", + "reply_indicator.cancel": "Ipagpaliban", + "report.block": "Harangan", + "report.categories.other": "Iba pa", + "report.category.title": "Sabihin mo sa amin kung anong nangyari sa {type} na ito", + "report.close": "Tapos na", + "report.next": "Sunod", + "report.reasons.violation": "Lumalabag ito sa mga panuntunan ng serbiro", + "report.reasons.violation_description": "Alam mo na lumalabag ito sa mga partikular na panuntunan", + "report.rules.title": "Aling mga patakaran ang nilabag?", + "report.submit": "Isumite", + "report.target": "Iniulat si/ang {target}", + "report.thanks.take_action_actionable": "Habang sinusuri namin ito, maaari kang gumawa ng aksyon laban kay/sa {name}:", + "report.thanks.title": "Ayaw mo bang makita ito?", + "report.thanks.title_actionable": "Salamat sa pag-uulat, titingnan namin ito.", + "report_notification.categories.other": "Iba pa", + "search_results.all": "Lahat", + "search_results.see_all": "Ipakita lahat", + "server_banner.learn_more": "Matuto nang higit pa", + "server_banner.server_stats": "Katayuan ng serbiro:", + "status.block": "Harangan si @{name}", + "status.delete": "Tanggalin", + "status.direct": "Palihim na banggitin si/ang @{name}", + "status.direct_indicator": "Palihim na banggit", + "status.edit": "Baguhin", + "status.edited": "Binago noong {date}", + "status.edited_x_times": "Binago {count, plural, one {{count} beses} other {{count} na beses}}", + "status.history.created": "Nilikha ni/ng {name} {date}", + "status.history.edited": "Binago ni/ng {name} {date}", + "status.media.open": "Pindutin upang buksan", + "status.media.show": "Pindutin upang ipakita", + "status.mention": "Banggitin ang/si @{name}", + "status.more": "Higit pa", + "status.read_more": "Basahin ang higit pa", + "status.reblogs.empty": "Wala pang nagpalakas ng post na ito. Kung may sinumang nagpalakas, makikita sila rito.", + "status.reply": "Tumugon", + "status.report": "I-ulat si/ang @{name}", + "status.sensitive_warning": "Sensitibong nilalaman", + "status.share": "Ibahagi", + "status.show_less": "Magpakita ng mas kaunti", + "status.show_less_all": "Magpakita ng mas kaunti para sa lahat", + "status.show_more": "Magpakita ng higit pa", + "status.show_more_all": "Magpakita ng higit pa para sa lahat", + "status.translate": "Isalin", + "status.translated_from_with": "Isalin mula sa {lang} gamit ang {provider}", + "status.uncached_media_warning": "Hindi makuha ang paunang tigin", + "tabs_bar.notifications": "Mga abiso", + "time_remaining.days": "{number, plural, one {# araw} other {# na araw}} ang natitira", + "time_remaining.hours": "{number, plural, one {# oras} other {# na oras}} ang natitira", + "time_remaining.minutes": "{number, plural, one {# minuto} other {# na minuto}} ang natitira", + "time_remaining.seconds": "{number, plural, one {# segundo} other {# na segundo}} ang natitira", + "timeline_hint.remote_resource_not_displayed": "Hindi ipinapakita ang {resource} mula sa ibang mga serbiro.", + "timeline_hint.resources.followers": "Mga tagasunod", + "timeline_hint.resources.follows": "Mga sinusundan" } diff --git a/app/javascript/mastodon/locales/fo.json b/app/javascript/mastodon/locales/fo.json index a4c5296086..13e49eb314 100644 --- a/app/javascript/mastodon/locales/fo.json +++ b/app/javascript/mastodon/locales/fo.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Kontoin hjá tær er ikki {locked}. Øll kunnu fylgja tær og lesa tað, tú bert letur fyljgarar lesa.", "compose_form.lock_disclaimer.lock": "læst", "compose_form.placeholder": "Hvat hevur tú í huga?", - "compose_form.poll.add_option": "Legg valmøguleika afturat", "compose_form.poll.duration": "Atkvøðugreiðslutíð", "compose_form.poll.multiple": "Fleiri valmøguleikar", "compose_form.poll.option_placeholder": "Valmøguleiki {number}", - "compose_form.poll.remove_option": "Strika hendan valmøguleikan", "compose_form.poll.single": "Vel ein", "compose_form.poll.switch_to_multiple": "Broyt atkvøðugreiðslu til at loyva fleiri svarum", "compose_form.poll.switch_to_single": "Broyt atkvøðugreiðslu til einstakt svar", @@ -279,6 +277,17 @@ "follow_request.authorize": "Veit myndugleika", "follow_request.reject": "Nokta", "follow_requests.unlocked_explanation": "Sjálvt um konta tín ikki er læst, so hugsa {domain} starvsfólkini, at tú kanska hevur hug at kanna umbønir um at fylgja frá hesum kontum við hond.", + "follow_suggestions.curated_suggestion": "Val hjá ábyrgdarfólki", + "follow_suggestions.dismiss": "Lat vera við at vísa", + "follow_suggestions.hints.featured": "Hesin vangin er úrvaldur av toyminum handan {domain}.", + "follow_suggestions.hints.friends_of_friends": "Hesin vangin er vælumtóktur millum tey, tú fylgir.", + "follow_suggestions.hints.most_followed": "Hesin vangin er ein av teimum, sum er mest fylgdur á {domain}.", + "follow_suggestions.hints.most_interactions": "Nýliga hava nógv lagt merki til hendan vangan á {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Hesin vangin líkist teimum, sum tú nýliga hevur fylgt.", + "follow_suggestions.personalized_suggestion": "Persónligt uppskot", + "follow_suggestions.popular_suggestion": "Vælumtókt uppskot", + "follow_suggestions.view_all": "Vís øll", + "follow_suggestions.who_to_follow": "Hvørji tú átti at fylgt", "followed_tags": "Fylgd frámerki", "footer.about": "Um", "footer.directory": "Vangaskrá", @@ -305,13 +314,9 @@ "hashtag.follow": "Fylg frámerki", "hashtag.unfollow": "Gevst at fylgja frámerki", "hashtags.and_other": "…og {count, plural, other {# afturat}}", - "home.actions.go_to_explore": "Sí rákið", - "home.actions.go_to_suggestions": "Finn fólk at fylgja", "home.column_settings.basic": "Grundleggjandi", "home.column_settings.show_reblogs": "Vís lyft", "home.column_settings.show_replies": "Vís svar", - "home.explore_prompt.body": "Heimarásin fer at hava eitt bland av postum frá frámerkjunum, sum tú hevur valt at fylgja, brúkarunum, tú hevur valt at fylgja, og postunum, sum tey stimbra. Um tað kennist ov friðarligt, so kanst tú:", - "home.explore_prompt.title": "Hetta er tín heimastøð í Mastodon.", "home.hide_announcements": "Fjal kunngerðir", "home.pending_critical_update.body": "Vinarliga dagfør Mastodon ambætaran hjá tær so skjótt sum møguligt!", "home.pending_critical_update.link": "Sí dagføringar", diff --git a/app/javascript/mastodon/locales/fr-CA.json b/app/javascript/mastodon/locales/fr-CA.json index 66a7da6d15..fc969b02f4 100644 --- a/app/javascript/mastodon/locales/fr-CA.json +++ b/app/javascript/mastodon/locales/fr-CA.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "verrouillé", "compose_form.placeholder": "À quoi pensez-vous?", "compose_form.poll.duration": "Durée du sondage", + "compose_form.poll.multiple": "Choix multiple", + "compose_form.poll.option_placeholder": "Option {number}", + "compose_form.poll.single": "Choisissez-en un", "compose_form.poll.switch_to_multiple": "Changer le sondage pour autoriser plusieurs choix", "compose_form.poll.switch_to_single": "Changer le sondage pour n'autoriser qu'un seul choix", + "compose_form.poll.type": "Style", + "compose_form.publish": "Publier", "compose_form.publish_form": "Publier", + "compose_form.reply": "Répondre", + "compose_form.save_changes": "Mis à jour", "compose_form.spoiler.marked": "Enlever l'avertissement de contenu", "compose_form.spoiler.unmarked": "Ajouter un avertissement de contenu", + "compose_form.spoiler_placeholder": "Avertissement de contenu (optionnel)", "confirmation_modal.cancel": "Annuler", "confirmations.block.block_and_report": "Bloquer et signaler", "confirmations.block.confirm": "Bloquer", @@ -269,6 +277,17 @@ "follow_request.authorize": "Autoriser", "follow_request.reject": "Rejeter", "follow_requests.unlocked_explanation": "Même si votre compte n’est pas privé, l’équipe de {domain} a pensé que vous pourriez vouloir peut-être consulter manuellement les demandes d'abonnement de ces comptes.", + "follow_suggestions.curated_suggestion": "Choix du staff", + "follow_suggestions.dismiss": "Ne plus afficher", + "follow_suggestions.hints.featured": "Ce profil a été sélectionné par l'équipe de {domain}.", + "follow_suggestions.hints.friends_of_friends": "Ce profil est populaire parmi les personnes que vous suivez.", + "follow_suggestions.hints.most_followed": "Ce profil est l'un des plus suivis sur {domain}.", + "follow_suggestions.hints.most_interactions": "Ce profil a récemment fait l'objet d'une grande attention sur {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Ce profil est similaire aux profils que vous avez suivis le plus récemment.", + "follow_suggestions.personalized_suggestion": "Suggestion personnalisée", + "follow_suggestions.popular_suggestion": "Suggestion populaire", + "follow_suggestions.view_all": "Tout afficher", + "follow_suggestions.who_to_follow": "Qui suivre", "followed_tags": "Hashtags suivis", "footer.about": "À propos", "footer.directory": "Annuaire des profils", @@ -295,13 +314,9 @@ "hashtag.follow": "Suivre ce hashtag", "hashtag.unfollow": "Ne plus suivre ce hashtag", "hashtags.and_other": "…et {count, plural, other {# de plus}}", - "home.actions.go_to_explore": "Voir les tendances", - "home.actions.go_to_suggestions": "Trouver des personnes à suivre", "home.column_settings.basic": "Basique", "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'elles boostent. Si ça vous semble trop calme à votre goût, n’hésitez pas à :", - "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", @@ -514,7 +529,15 @@ "poll_button.add_poll": "Ajouter un sondage", "poll_button.remove_poll": "Supprimer le sondage", "privacy.change": "Changer la confidentialité des messages", + "privacy.direct.long": "Toutes les personnes mentionnées dans le post", + "privacy.direct.short": "Personnes spécifiques", + "privacy.private.long": "Seulement vos abonnés", + "privacy.private.short": "Abonnés", + "privacy.public.long": "Tout le monde sur et en dehors de Mastodon", "privacy.public.short": "Public", + "privacy.unlisted.additional": "Cette option se comporte exactement comme l'option publique, sauf que le message n'apparaîtra pas dans les flux en direct, les hashtags, l'exploration ou la recherche Mastodon, même si vous avez opté pour l'option publique pour l'ensemble de votre compte.", + "privacy.unlisted.long": "Moins de fanfares algorithmiques", + "privacy.unlisted.short": "Public calme", "privacy_policy.last_updated": "Dernière mise à jour {date}", "privacy_policy.title": "Politique de confidentialité", "recommended": "Recommandé", @@ -532,7 +555,9 @@ "relative_time.minutes": "{number} min", "relative_time.seconds": "{number} s", "relative_time.today": "aujourd’hui", + "reply_indicator.attachments": "{count, plural, one {# pièce jointe} other {# pièces jointes}}", "reply_indicator.cancel": "Annuler", + "reply_indicator.poll": "Sondage", "report.block": "Bloquer", "report.block_explanation": "Vous ne verrez plus les publications de ce compte. Il ne pourra ni vous suivre ni voir vos publications. Il pourra savoir qu'il a été bloqué.", "report.categories.legal": "Légal", diff --git a/app/javascript/mastodon/locales/fr.json b/app/javascript/mastodon/locales/fr.json index 2d0fa3b7dd..8396679d06 100644 --- a/app/javascript/mastodon/locales/fr.json +++ b/app/javascript/mastodon/locales/fr.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "verrouillé", "compose_form.placeholder": "Qu’avez-vous en tête ?", "compose_form.poll.duration": "Durée du sondage", + "compose_form.poll.multiple": "Choix multiple", + "compose_form.poll.option_placeholder": "Option {number}", + "compose_form.poll.single": "Choisissez-en un", "compose_form.poll.switch_to_multiple": "Changer le sondage pour autoriser plusieurs choix", "compose_form.poll.switch_to_single": "Modifier le sondage pour autoriser qu'un seul choix", + "compose_form.poll.type": "Style", + "compose_form.publish": "Publier", "compose_form.publish_form": "Nouvelle publication", + "compose_form.reply": "Répondre", + "compose_form.save_changes": "Mis à jour", "compose_form.spoiler.marked": "Enlever l’avertissement de contenu", "compose_form.spoiler.unmarked": "Ajouter un avertissement de contenu", + "compose_form.spoiler_placeholder": "Avertissement de contenu (optionnel)", "confirmation_modal.cancel": "Annuler", "confirmations.block.block_and_report": "Bloquer et signaler", "confirmations.block.confirm": "Bloquer", @@ -269,6 +277,17 @@ "follow_request.authorize": "Accepter", "follow_request.reject": "Rejeter", "follow_requests.unlocked_explanation": "Même si votre compte n’est pas privé, l’équipe de {domain} a pensé que vous pourriez vouloir consulter manuellement les demandes de suivi de ces comptes.", + "follow_suggestions.curated_suggestion": "Choix du staff", + "follow_suggestions.dismiss": "Ne plus afficher", + "follow_suggestions.hints.featured": "Ce profil a été sélectionné par l'équipe de {domain}.", + "follow_suggestions.hints.friends_of_friends": "Ce profil est populaire parmi les personnes que vous suivez.", + "follow_suggestions.hints.most_followed": "Ce profil est l'un des plus suivis sur {domain}.", + "follow_suggestions.hints.most_interactions": "Ce profil a récemment fait l'objet d'une grande attention sur {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Ce profil est similaire aux profils que vous avez suivis le plus récemment.", + "follow_suggestions.personalized_suggestion": "Suggestion personnalisée", + "follow_suggestions.popular_suggestion": "Suggestion populaire", + "follow_suggestions.view_all": "Tout afficher", + "follow_suggestions.who_to_follow": "Qui suivre", "followed_tags": "Hashtags suivis", "footer.about": "À propos", "footer.directory": "Annuaire des profils", @@ -295,13 +314,9 @@ "hashtag.follow": "Suivre le hashtag", "hashtag.unfollow": "Ne plus suivre le hashtag", "hashtags.and_other": "…et {count, plural, other {# de plus}}", - "home.actions.go_to_explore": "Voir les tendances", - "home.actions.go_to_suggestions": "Trouver des personnes à suivre", "home.column_settings.basic": "Basique", "home.column_settings.show_reblogs": "Afficher les partages", "home.column_settings.show_replies": "Afficher les 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'elles boostent. Si ça vous semble trop calme à votre goût, n’hésitez pas à :", - "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", @@ -514,7 +529,15 @@ "poll_button.add_poll": "Ajouter un sondage", "poll_button.remove_poll": "Supprimer le sondage", "privacy.change": "Ajuster la confidentialité du message", + "privacy.direct.long": "Toutes les personnes mentionnées dans le post", + "privacy.direct.short": "Personnes spécifiques", + "privacy.private.long": "Seulement vos abonnés", + "privacy.private.short": "Abonnés", + "privacy.public.long": "Tout le monde sur et en dehors de Mastodon", "privacy.public.short": "Public", + "privacy.unlisted.additional": "Cette option se comporte exactement comme l'option publique, sauf que le message n'apparaîtra pas dans les flux en direct, les hashtags, l'exploration ou la recherche Mastodon, même si vous avez opté pour l'option publique pour l'ensemble de votre compte.", + "privacy.unlisted.long": "Moins de fanfares algorithmiques", + "privacy.unlisted.short": "Public calme", "privacy_policy.last_updated": "Dernière mise à jour {date}", "privacy_policy.title": "Politique de confidentialité", "recommended": "Recommandé", @@ -532,7 +555,9 @@ "relative_time.minutes": "{number} min", "relative_time.seconds": "{number} s", "relative_time.today": "aujourd’hui", + "reply_indicator.attachments": "{count, plural, one {# pièce jointe} other {# pièces jointes}}", "reply_indicator.cancel": "Annuler", + "reply_indicator.poll": "Sondage", "report.block": "Bloquer", "report.block_explanation": "Vous ne verrez plus les messages de ce profil, et il ne pourra ni vous suivre ni voir vos messages. Il pourra savoir qu'il a été bloqué.", "report.categories.legal": "Légal", diff --git a/app/javascript/mastodon/locales/fy.json b/app/javascript/mastodon/locales/fy.json index d5f22d2ee1..bc4fecb93d 100644 --- a/app/javascript/mastodon/locales/fy.json +++ b/app/javascript/mastodon/locales/fy.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "beskoattele", "compose_form.placeholder": "Wat wolle jo kwyt?", "compose_form.poll.duration": "Doer fan de enkête", + "compose_form.poll.multiple": "Mearkar", + "compose_form.poll.option_placeholder": "Opsje {number}", + "compose_form.poll.single": "Kies ien", "compose_form.poll.switch_to_multiple": "Enkête wizigje om meardere karren ta te stean", "compose_form.poll.switch_to_single": "Enkête wizigje om in inkelde kar ta te stean", + "compose_form.poll.type": "Styl", + "compose_form.publish": "Toot", "compose_form.publish_form": "Publisearje", + "compose_form.reply": "Reagearje", + "compose_form.save_changes": "Bywurkje", "compose_form.spoiler.marked": "Ynhâldswarskôging fuortsmite", "compose_form.spoiler.unmarked": "Ynhâldswarskôging tafoegje", + "compose_form.spoiler_placeholder": "Ynhâldswarskôging (opsjoneel)", "confirmation_modal.cancel": "Annulearje", "confirmations.block.block_and_report": "Blokkearje en rapportearje", "confirmations.block.confirm": "Blokkearje", @@ -269,6 +277,17 @@ "follow_request.authorize": "Goedkarre", "follow_request.reject": "Wegerje", "follow_requests.unlocked_explanation": "Ek al is jo account net besletten, de meiwurkers fan {domain} tinke dat jo miskien de folgjende folchfersiken hânmjittich kontrolearje.", + "follow_suggestions.curated_suggestion": "Spesjaal selektearre", + "follow_suggestions.dismiss": "Net mear werjaan", + "follow_suggestions.hints.featured": "Dit profyl is hânmjittich troch it {domain}-team selektearre.", + "follow_suggestions.hints.friends_of_friends": "Dit profyl is populêr ûnder de minsken dy’t jo folgje.", + "follow_suggestions.hints.most_followed": "Dit profyl is ien fan de meast folge op {domain}.", + "follow_suggestions.hints.most_interactions": "Dit profyl hat de lêste tiid in protte oandacht krigen op {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Dit profyl is hast lyk oan de profilen dy’t jo koartlyn folge hawwe.", + "follow_suggestions.personalized_suggestion": "Personalisearre suggestje", + "follow_suggestions.popular_suggestion": "Populêre suggestje", + "follow_suggestions.view_all": "Alles werjaan", + "follow_suggestions.who_to_follow": "Wa te folgjen", "followed_tags": "Folge hashtags", "footer.about": "Oer", "footer.directory": "Profylmap", @@ -295,13 +314,9 @@ "hashtag.follow": "Hashtag folgje", "hashtag.unfollow": "Hashtag ûntfolgje", "hashtags.and_other": "…en {count, plural, one {}other {# mear}}", - "home.actions.go_to_explore": "De aktuele trends besjen", - "home.actions.go_to_suggestions": "Sykje minsken om te folgjen", "home.column_settings.basic": "Algemien", "home.column_settings.show_reblogs": "Boosts toane", "home.column_settings.show_replies": "Reaksjes toane", - "home.explore_prompt.body": "Jo starttiidline befettet in miks fan berjochten mei hashtags dy’t jo keazen hawwe om te folgjen, fan minsken dy’t jo keazen hawwe om te folgjen en berjochten dy’t se booste. As jo dit te rêstich fine, kinne jo:", - "home.explore_prompt.title": "Dit is jo thúsbasis op Mastodon.", "home.hide_announcements": "Meidielingen ferstopje", "home.pending_critical_update.body": "Fernij sa gau as mooglik jo Mastodon-server!", "home.pending_critical_update.link": "Fernijingen besjen", @@ -514,7 +529,15 @@ "poll_button.add_poll": "Poll tafoegje", "poll_button.remove_poll": "Enkête fuortsmite", "privacy.change": "Sichtberheid fan berjocht oanpasse", + "privacy.direct.long": "Elkenien dy’ yn it berjocht fermeld wurdt", + "privacy.direct.short": "Bepaalde minsken", + "privacy.private.long": "Allinnich jo folgers", + "privacy.private.short": "Folgers", + "privacy.public.long": "Elkenien op Mastodon en dêrbûten", "privacy.public.short": "Iepenbier", + "privacy.unlisted.additional": "Dit is fergelykber mei iepenbier, útsein dat it berjocht net ferskynt op iepenbiere tiidlijnen of hashtags, ûnder ferkenne of Mastodon sykje, sels as jo jo account dêrfoar ynsteld hawwe.", + "privacy.unlisted.long": "Minder algoritmyske fanfare", + "privacy.unlisted.short": "Minder iepenbier", "privacy_policy.last_updated": "Lêst bywurke op {date}", "privacy_policy.title": "Privacybelied", "recommended": "Oanrekommandearre", @@ -532,7 +555,9 @@ "relative_time.minutes": "{number}m", "relative_time.seconds": "{number}s", "relative_time.today": "hjoed", + "reply_indicator.attachments": "{count, plural, one {# bylage} other {# bylagen}}", "reply_indicator.cancel": "Annulearje", + "reply_indicator.poll": "Peiling", "report.block": "Blokkearje", "report.block_explanation": "Jo sille harren berjochten net sjen kinne. Se sille jo berjochten net sjen kinne en jo net folgje kinne. Se sille wol sjen kinne dat se blokkearre binne.", "report.categories.legal": "Juridysk", diff --git a/app/javascript/mastodon/locales/ga.json b/app/javascript/mastodon/locales/ga.json index 855a27d057..a708088fbb 100644 --- a/app/javascript/mastodon/locales/ga.json +++ b/app/javascript/mastodon/locales/ga.json @@ -226,6 +226,11 @@ "follow_request.authorize": "Ceadaigh", "follow_request.reject": "Diúltaigh", "follow_requests.unlocked_explanation": "Cé nach bhfuil do chuntas faoi ghlas, cheap foireann {domain} gur mhaith leat súil siar ar iarratais leanúnaí as na cuntais seo.", + "follow_suggestions.dismiss": "Ná taispeáin arís", + "follow_suggestions.personalized_suggestion": "Nod pearsantaithe", + "follow_suggestions.popular_suggestion": "Nod coiteann", + "follow_suggestions.view_all": "Féach uile", + "follow_suggestions.who_to_follow": "Cé le leanúint", "footer.about": "Maidir le", "footer.directory": "Eolaire próifílí", "footer.get_app": "Faigh an aip", diff --git a/app/javascript/mastodon/locales/gd.json b/app/javascript/mastodon/locales/gd.json index 0c7ef79cd8..d775a7b027 100644 --- a/app/javascript/mastodon/locales/gd.json +++ b/app/javascript/mastodon/locales/gd.json @@ -21,6 +21,7 @@ "account.blocked": "’Ga bhacadh", "account.browse_more_on_origin_server": "Rùraich barrachd dheth air a’ phròifil thùsail", "account.cancel_follow_request": "Sguir dhen leantainn", + "account.copy": "Dèan lethbhreac dhen cheangal dhan phròifil", "account.direct": "Thoir iomradh air @{name} gu prìobhaideach", "account.disable_notifications": "Na cuir brath thugam tuilleadh nuair a chuireas @{name} post ris", "account.domain_blocked": "Chaidh an àrainn a bhacadh", @@ -31,6 +32,7 @@ "account.featured_tags.last_status_never": "Gun phost", "account.featured_tags.title": "Na tagaichean hais brosnaichte aig {name}", "account.follow": "Lean", + "account.follow_back": "Lean air ais", "account.followers": "Luchd-leantainn", "account.followers.empty": "Chan eil neach sam bith a’ leantainn air a’ chleachdaiche seo fhathast.", "account.followers_counter": "{count, plural, one {{counter} neach-leantainn} two {{counter} neach-leantainn} few {{counter} luchd-leantainn} other {{counter} luchd-leantainn}}", @@ -51,6 +53,7 @@ "account.mute_notifications_short": "Mùch na brathan", "account.mute_short": "Mùch", "account.muted": "’Ga mhùchadh", + "account.mutual": "Co-dhàimh", "account.no_bio": "Cha deach tuairisgeul a sholar.", "account.open_original_page": "Fosgail an duilleag thùsail", "account.posts": "Postaichean", @@ -143,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "glaiste", "compose_form.placeholder": "Dè tha air d’ aire?", "compose_form.poll.duration": "Faide a’ chunntais-bheachd", + "compose_form.poll.multiple": "Iomadh roghainn", + "compose_form.poll.option_placeholder": "Roghainn {number}", + "compose_form.poll.single": "Tagh aonan", "compose_form.poll.switch_to_multiple": "Atharraich an cunntas-bheachd ach an gabh iomadh roghainn a thaghadh", "compose_form.poll.switch_to_single": "Atharraich an cunntas-bheachd gus nach gabh ach aon roghainn a thaghadh", + "compose_form.poll.type": "Stoidhle", + "compose_form.publish": "Postaich", "compose_form.publish_form": "Post ùr", + "compose_form.reply": "Freagair", + "compose_form.save_changes": "Ùraich", "compose_form.spoiler.marked": "Thoir air falbh an rabhadh susbainte", "compose_form.spoiler.unmarked": "Cuir rabhadh susbainte ris", + "compose_form.spoiler_placeholder": "Rabhadh susbainte (roghainneil)", "confirmation_modal.cancel": "Sguir dheth", "confirmations.block.block_and_report": "Bac ⁊ dèan gearan", "confirmations.block.confirm": "Bac", @@ -179,6 +190,7 @@ "conversation.mark_as_read": "Cuir comharra gun deach a leughadh", "conversation.open": "Seall an còmhradh", "conversation.with": "Còmhla ri {names}", + "copy_icon_button.copied": "Chaidh lethbhreac dheth a chur air an stòr-bhòrd", "copypaste.copied": "Chaidh lethbhreac dheth a dhèanamh", "copypaste.copy_to_clipboard": "Cuir lethbhreac dheth air an stòr-bhòrd", "directory.federated": "On cho-shaoghal aithnichte", @@ -210,6 +222,7 @@ "emoji_button.search_results": "Toraidhean an luirg", "emoji_button.symbols": "Samhlaidhean", "emoji_button.travel": "Siubhal ⁊ àitichean", + "empty_column.account_hides_collections": "Chuir an cleachdaiche seo roimhe nach eil am fiosrachadh seo ri fhaighinn", "empty_column.account_suspended": "Chaidh an cunntas a chur à rèim", "empty_column.account_timeline": "Chan eil post an-seo!", "empty_column.account_unavailable": "Chan eil a’ phròifil ri làimh", @@ -264,6 +277,11 @@ "follow_request.authorize": "Ùghdarraich", "follow_request.reject": "Diùlt", "follow_requests.unlocked_explanation": "Ged nach eil an cunntas agad glaiste, tha sgioba {domain} dhen bheachd gum b’ fheàirrde thu lèirmheas a dhèanamh air na h-iarrtasan leantainn o na cunntasan seo a làimh.", + "follow_suggestions.dismiss": "Na seall seo a-rithist", + "follow_suggestions.personalized_suggestion": "Moladh pearsanaichte", + "follow_suggestions.popular_suggestion": "Moladh air a bheil fèill mhòr", + "follow_suggestions.view_all": "Seall na h-uile", + "follow_suggestions.who_to_follow": "Cò a leanas tu", "followed_tags": "Tagaichean hais ’gan leantainn", "footer.about": "Mu dhèidhinn", "footer.directory": "Eòlaire nam pròifil", @@ -290,13 +308,9 @@ "hashtag.follow": "Lean an taga hais", "hashtag.unfollow": "Na lean an taga hais tuilleadh", "hashtags.and_other": "…agus {count, plural, one {# eile} two {# eile} few {# eile} other {# eile}}", - "home.actions.go_to_explore": "Faic na tha a’ treandadh", - "home.actions.go_to_suggestions": "Lorg daoine gus an leantainn", "home.column_settings.basic": "Bunasach", "home.column_settings.show_reblogs": "Seall na brosnachaidhean", "home.column_settings.show_replies": "Seall na freagairtean", - "home.explore_prompt.body": "Bidh measgachadh de phostaichean o na tagaichean hais a leanas tu, na daoine a leanas tu is na postaichean a bhrosnaicheas iad air do dhachaigh. Ma tha cùisean ro shàmhach dhut, seo nas urrainn dhut a dhèanamh:", - "home.explore_prompt.title": "Seo do dhachaigh am broinn Mastodon.", "home.hide_announcements": "Falaich na brathan-fios", "home.pending_critical_update.body": "Ùraich am frithealaiche Mastodon agad cho luath ’s a ghabhas!", "home.pending_critical_update.link": "Faic na h-ùrachaidhean", @@ -377,6 +391,7 @@ "lists.search": "Lorg am measg nan daoine a leanas tu", "lists.subheading": "Na liostaichean agad", "load_pending": "{count, plural, one {# nì ùr} two {# nì ùr} few {# nithean ùra} other {# nì ùr}}", + "loading_indicator.label": "’Ga luchdadh…", "media_gallery.toggle_visible": "{number, plural, 1 {Falaich an dealbh} one {Falaich na dealbhan} two {Falaich na dealbhan} few {Falaich na dealbhan} other {Falaich na dealbhan}}", "moved_to_account_banner.text": "Tha an cunntas {disabledAccount} agad à comas on a rinn thu imrich gu {movedToAccount}.", "mute_modal.duration": "Faide", @@ -464,6 +479,15 @@ "onboarding.follows.empty": "Gu mì-fhortanach, chan urrainn dhuinn toradh a shealltainn an-dràsta. Feuch gleus an luirg no duilleag an rùrachaidh airson daoine ri leantainn a lorg no feuch ris a-rithist an ceann tamaill.", "onboarding.follows.lead": "’S e do prìomh-doras do Mhastodon a th’ ann san dachaigh. Mar as motha an t-uiread de dhaoine a leanas tu ’s ann nas beòthaile inntinniche a bhios i. Seo moladh no dhà dhut airson tòiseachadh:", "onboarding.follows.title": "Cuir dreach pearsanta air do dhachaigh", + "onboarding.profile.discoverable": "Bu mhath leam gun gabh a’ phròifil agam a lorg", + "onboarding.profile.display_name": "Ainm-taisbeanaidh", + "onboarding.profile.display_name_hint": "D’ ainm slàn no spòrsail…", + "onboarding.profile.note": "Cunntas-beatha", + "onboarding.profile.note_hint": "’S urrainn dhut @iomradh a thoirt air càch no air #tagaicheanHais…", + "onboarding.profile.save_and_continue": "Sàbhail ’s lean air adhart", + "onboarding.profile.title": "Suidheachadh na pròifile", + "onboarding.profile.upload_avatar": "Luchdaich suas dealbh na pròifil", + "onboarding.profile.upload_header": "Luchdaich suas bann-cinn na pròifil", "onboarding.share.lead": "Innis do dhaoine mar a gheibh iad grèim ort air Mastodon!", "onboarding.share.message": "Is mise {username} air #Mastodon! Thig ’gam leantainn air {url}", "onboarding.share.next_steps": "Ceuman eile as urrainn dhut gabhail:", @@ -497,9 +521,16 @@ "poll_button.add_poll": "Cuir cunntas-bheachd ris", "poll_button.remove_poll": "Thoir air falbh an cunntas-bheachd", "privacy.change": "Cuir gleus air prìobhaideachd a’ phuist", + "privacy.direct.long": "A h-uile duine air a bheil iomradh sa phost", + "privacy.direct.short": "Daoine àraidh", + "privacy.private.long": "An luchd-leantainn agad a-mhàin", + "privacy.private.short": "Luchd-leantainn", + "privacy.public.long": "Duine sam bith taobh a-staigh no a-muigh Mhastodon", "privacy.public.short": "Poblach", + "privacy.unlisted.short": "Poblach ach sàmhach", "privacy_policy.last_updated": "An t-ùrachadh mu dheireadh {date}", "privacy_policy.title": "Poileasaidh prìobhaideachd", + "recommended": "Molta", "refresh": "Ath-nuadhaich", "regeneration_indicator.label": "’Ga luchdadh…", "regeneration_indicator.sublabel": "Tha do dhachaigh ’ga ullachadh!", @@ -514,7 +545,9 @@ "relative_time.minutes": "{number}m", "relative_time.seconds": "{number}d", "relative_time.today": "an-diugh", + "reply_indicator.attachments": "{count, plural, one {# cheanglachan} two {# cheanglachan} few {# ceanglachain} other {# ceanglachan}}", "reply_indicator.cancel": "Sguir dheth", + "reply_indicator.poll": "Cunntas-bheachd", "report.block": "Bac", "report.block_explanation": "Chan fhaic thu na postaichean aca. Chan fhaic iad na postaichean agad is chan urrainn dhaibh do leantainn. Bheir iad an aire gun deach am bacadh.", "report.categories.legal": "Laghail", @@ -570,6 +603,7 @@ "search.quick_action.status_search": "Postaichean a fhreagras ri {x}", "search.search_or_paste": "Dèan lorg no cuir a-steach URL", "search_popout.full_text_search_disabled_message": "Chan eil seo ri fhaighinn air {domain}.", + "search_popout.full_text_search_logged_out_message": "Chan eil seo ri fhaighinn ach nuair a bhios tu air do chlàradh a-steach.", "search_popout.language_code": "Còd cànain ISO", "search_popout.options": "Roghainnean luirg", "search_popout.quick_actions": "Grad-ghnìomhan", diff --git a/app/javascript/mastodon/locales/gl.json b/app/javascript/mastodon/locales/gl.json index ffd01a547d..91b6870be7 100644 --- a/app/javascript/mastodon/locales/gl.json +++ b/app/javascript/mastodon/locales/gl.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "bloqueada", "compose_form.placeholder": "Que contas?", "compose_form.poll.duration": "Duración da enquisa", + "compose_form.poll.multiple": "Escolla múltiple", + "compose_form.poll.option_placeholder": "Opción {number}", + "compose_form.poll.single": "Elixe unha", "compose_form.poll.switch_to_multiple": "Mudar a enquisa para permitir múltiples escollas", "compose_form.poll.switch_to_single": "Mudar a enquisa para permitir unha soa opción", + "compose_form.poll.type": "Estilo", + "compose_form.publish": "Publicar", "compose_form.publish_form": "Publicar", + "compose_form.reply": "Responder", + "compose_form.save_changes": "Actualizar", "compose_form.spoiler.marked": "Retirar o aviso sobre o contido", "compose_form.spoiler.unmarked": "Engadir aviso sobre o contido", + "compose_form.spoiler_placeholder": "Aviso sobre o contido (optativo)", "confirmation_modal.cancel": "Cancelar", "confirmations.block.block_and_report": "Bloquear e denunciar", "confirmations.block.confirm": "Bloquear", @@ -269,6 +277,17 @@ "follow_request.authorize": "Autorizar", "follow_request.reject": "Rexeitar", "follow_requests.unlocked_explanation": "Malia que a túa conta non é privada, a administración de {domain} pensou que quizabes terías que revisar de xeito manual as solicitudes de seguiminto.", + "follow_suggestions.curated_suggestion": "Suxestións do Servidor", + "follow_suggestions.dismiss": "Non mostrar máis", + "follow_suggestions.hints.featured": "Este perfil foi escollido pola administración de {domain}.", + "follow_suggestions.hints.friends_of_friends": "Este perfil é popular entre as persoas que segues.", + "follow_suggestions.hints.most_followed": "Este perfil é un dos máis seguidos en {domain}.", + "follow_suggestions.hints.most_interactions": "Este perfil tivo moitas interaccións últimamente en {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Este perfil ten semellanzas cos perfís que ti seguiches últimamente.", + "follow_suggestions.personalized_suggestion": "Suxestión personalizada", + "follow_suggestions.popular_suggestion": "Suxestión popular", + "follow_suggestions.view_all": "Ver todas", + "follow_suggestions.who_to_follow": "A quen seguir", "followed_tags": "Cancelos seguidos", "footer.about": "Acerca de", "footer.directory": "Directorio de perfís", @@ -295,13 +314,9 @@ "hashtag.follow": "Seguir cancelo", "hashtag.unfollow": "Deixar de seguir cancelo", "hashtags.and_other": "…e {count, plural, one {}other {# máis}}", - "home.actions.go_to_explore": "Mira do que se está a falar", - "home.actions.go_to_suggestions": "Atopa persoas ás que seguir", "home.column_settings.basic": "Básico", "home.column_settings.show_reblogs": "Amosar compartidos", "home.column_settings.show_replies": "Amosar respostas", - "home.explore_prompt.body": "A túa cronoloxía de inicio vai ter unha mistura de publicacións procedentes dos cancelos que segues, das persoas que elexiches seguir e das publicacións que elas promoven. Se non tes moito que ler, podes probar a:", - "home.explore_prompt.title": "Iste é o teu fogar en Mastodon.", "home.hide_announcements": "Agochar anuncios", "home.pending_critical_update.body": "Por favor actualiza o antes posible o teu servidor Mastodon!", "home.pending_critical_update.link": "Mira as actualizacións", @@ -514,7 +529,15 @@ "poll_button.add_poll": "Engadir unha enquisa", "poll_button.remove_poll": "Eliminar enquisa", "privacy.change": "Axustar privacidade", + "privacy.direct.long": "Todas as mencionadas na publicación", + "privacy.direct.short": "Persoas concretas", + "privacy.private.long": "Só para seguidoras", + "privacy.private.short": "Seguidoras", + "privacy.public.long": "Para todas dentro e fóra de Mastodon", "privacy.public.short": "Público", + "privacy.unlisted.additional": "Do mesmo xeito que público, menos que a publicación non aparecerá nas cronoloxías en directo ou nos cancelos, en descubrir ou nas buscas de Mastodon, incluso se estivese establecido nas opcións xerais da conta.", + "privacy.unlisted.long": "Menor implicación dos algoritmos", + "privacy.unlisted.short": "Público limitado", "privacy_policy.last_updated": "Actualizado por última vez no {date}", "privacy_policy.title": "Política de Privacidade", "recommended": "Aconsellable", @@ -532,7 +555,9 @@ "relative_time.minutes": "{number}m", "relative_time.seconds": "{number}s", "relative_time.today": "hoxe", + "reply_indicator.attachments": "{count, plural, one {# adxunto} other {# adxuntos}}", "reply_indicator.cancel": "Desbotar", + "reply_indicator.poll": "Enquisa", "report.block": "Bloquear", "report.block_explanation": "Non vas ver as súas publicacións. Nin verá as túas publicacións nin poderá seguirte. Poderá comprobar que as bloqueaches.", "report.categories.legal": "Legal", diff --git a/app/javascript/mastodon/locales/he.json b/app/javascript/mastodon/locales/he.json index d88a8c49c3..2eef70f0fe 100644 --- a/app/javascript/mastodon/locales/he.json +++ b/app/javascript/mastodon/locales/he.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "חשבונך אינו {locked}. כל אחד יוכל לעקוב אחריך כדי לקרוא את הודעותיך המיועדות לעוקבים בלבד.", "compose_form.lock_disclaimer.lock": "נעול", "compose_form.placeholder": "על מה את.ה חושב.ת?", - "compose_form.poll.add_option": "הוספת אפשרות", "compose_form.poll.duration": "משך הסקר", "compose_form.poll.multiple": "בחירה מרובה", "compose_form.poll.option_placeholder": "אפשרות {number}", - "compose_form.poll.remove_option": "הסרת אפשרות זו", "compose_form.poll.single": "נא לבחור", "compose_form.poll.switch_to_multiple": "אפשרו בחירה מרובה בסקר", "compose_form.poll.switch_to_single": "אפשרו בחירה בודדת בסקר", @@ -279,6 +277,17 @@ "follow_request.authorize": "הרשאה", "follow_request.reject": "דחיה", "follow_requests.unlocked_explanation": "למרות שחשבונך אינו נעול, צוות {domain} חושב שאולי כדאי לוודא את בקשות המעקב האלה ידנית.", + "follow_suggestions.curated_suggestion": "בחירת הצוות", + "follow_suggestions.dismiss": "לא להציג שוב", + "follow_suggestions.hints.featured": "החשבון הזה נבחר אישית על ידי צוות {domain}.", + "follow_suggestions.hints.friends_of_friends": "חשבון זה פופולרי בין הנעקבים שלך.", + "follow_suggestions.hints.most_followed": "חשבון זה הוא מבין הנעקבים ביותר בשרת {domain}.", + "follow_suggestions.hints.most_interactions": "חשבון זה קיבל לאחרונה הרבה תשומת לב על שרת {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "חשבון זה דומה לחשבונות אחרים שאחריהם התחלת לעקוב לאחרונה.", + "follow_suggestions.personalized_suggestion": "הצעות מותאמות אישית", + "follow_suggestions.popular_suggestion": "הצעה פופולרית", + "follow_suggestions.view_all": "צפיה בכל", + "follow_suggestions.who_to_follow": "אחרי מי לעקוב", "followed_tags": "התגיות שהחשבון שלך עוקב אחריהן", "footer.about": "אודות", "footer.directory": "ספריית פרופילים", @@ -305,13 +314,9 @@ "hashtag.follow": "לעקוב אחרי תגית", "hashtag.unfollow": "להפסיק לעקוב אחרי תגית", "hashtags.and_other": "…{count, plural,other {ועוד #}}", - "home.actions.go_to_explore": "הצגת מגמות", - "home.actions.go_to_suggestions": "למצוא א.נשים לעקוב אחריהן.ם", "home.column_settings.basic": "למתחילים", "home.column_settings.show_reblogs": "הצגת הדהודים", "home.column_settings.show_replies": "הצגת תגובות", - "home.explore_prompt.body": "פיד הבית שלך יכיל תערובת של הודעות מהתגיות והאנשים שבחרת למעקב, וההודעות שהנעקבים בוחרים להדהד. אם זה נראה שקט מדי כרגע אז מה לגבי:", - "home.explore_prompt.title": "זהו בסיס הבית שלך בתוך מסטודון.", "home.hide_announcements": "הסתר הכרזות", "home.pending_critical_update.body": "יש לעדכן את תוכנת מסטודון בהקדם האפשרי!", "home.pending_critical_update.link": "צפיה בעדכונים", @@ -530,6 +535,9 @@ "privacy.private.short": "עוקבים", "privacy.public.long": "כל הגולשים, מחוברים למסטודון או לא", "privacy.public.short": "פומבי", + "privacy.unlisted.additional": "ההתנהגות דומה להודעה ציבורית, מלבד שההודעה לא תופיע בפיד החי המקומי או בתגיות, תגליות או חיפוש מסטודון, אפילו אם ביקשת שהחשבון כולו יהיה פומבי.", + "privacy.unlisted.long": "פחות חשיפה לאלגוריתמים", + "privacy.unlisted.short": "ציבורי שקט", "privacy_policy.last_updated": "עודכן לאחרונה {date}", "privacy_policy.title": "מדיניות פרטיות", "recommended": "מומלץ", diff --git a/app/javascript/mastodon/locales/hi.json b/app/javascript/mastodon/locales/hi.json index 42f4ca4efa..f88fe19569 100644 --- a/app/javascript/mastodon/locales/hi.json +++ b/app/javascript/mastodon/locales/hi.json @@ -277,8 +277,6 @@ "hashtag.column_settings.tag_toggle": "Include additional tags in this column", "hashtag.follow": "हैशटैग को फॉलो करें", "hashtag.unfollow": "हैशटैग को उनफ़ोल्लोव करें", - "home.actions.go_to_explore": "देखिए क्या पक रहा है", - "home.actions.go_to_suggestions": "अनुसरने के लिए लोगो को ढूंढे", "home.column_settings.basic": "बुनियादी", "home.column_settings.show_reblogs": "बूस्ट दिखाए", "home.column_settings.show_replies": "जवाबों को दिखाए", diff --git a/app/javascript/mastodon/locales/hr.json b/app/javascript/mastodon/locales/hr.json index cada365fc8..9fe15f5a2d 100644 --- a/app/javascript/mastodon/locales/hr.json +++ b/app/javascript/mastodon/locales/hr.json @@ -261,7 +261,6 @@ "hashtag.column_settings.tag_toggle": "Uključi dodatne oznake za ovaj stupac", "hashtag.follow": "Prati hashtag", "hashtag.unfollow": "Prestani pratiti hashtag", - "home.actions.go_to_explore": "Vidi trendove", "home.column_settings.basic": "Osnovno", "home.column_settings.show_reblogs": "Pokaži boostove", "home.column_settings.show_replies": "Pokaži odgovore", diff --git a/app/javascript/mastodon/locales/hu.json b/app/javascript/mastodon/locales/hu.json index 31bca5652b..f499e08f6d 100644 --- a/app/javascript/mastodon/locales/hu.json +++ b/app/javascript/mastodon/locales/hu.json @@ -145,12 +145,10 @@ "compose_form.lock_disclaimer": "A fiókod nincs {locked}. Bárki követni tud, hogy megtekintse a kizárólag követőknek szánt bejegyzéseket.", "compose_form.lock_disclaimer.lock": "zárolva", "compose_form.placeholder": "Mi jár a fejedben?", - "compose_form.poll.add_option": "Opció hozzáadása", "compose_form.poll.duration": "Szavazás időtartama", - "compose_form.poll.multiple": "Több választás", - "compose_form.poll.option_placeholder": "Opció {number}", - "compose_form.poll.remove_option": "Opció eltávolítása", - "compose_form.poll.single": "Egy választása", + "compose_form.poll.multiple": "Több lehetőség", + "compose_form.poll.option_placeholder": "Válasz {number}", + "compose_form.poll.single": "Egyetlen válasz", "compose_form.poll.switch_to_multiple": "Szavazás megváltoztatása több választásosra", "compose_form.poll.switch_to_single": "Szavazás megváltoztatása egyetlen választásosra", "compose_form.poll.type": "Stílus", @@ -160,7 +158,7 @@ "compose_form.save_changes": "Frissítés", "compose_form.spoiler.marked": "Tartalmi figyelmeztetés eltávolítása", "compose_form.spoiler.unmarked": "Tartalmi figyelmeztetés hozzáadása", - "compose_form.spoiler_placeholder": "Tartalom figyelmeztetés (opcionális)", + "compose_form.spoiler_placeholder": "Tartalmi figyelmeztetés (opcionális)", "confirmation_modal.cancel": "Mégsem", "confirmations.block.block_and_report": "Letiltás és jelentés", "confirmations.block.confirm": "Letiltás", @@ -279,6 +277,17 @@ "follow_request.authorize": "Hitelesítés", "follow_request.reject": "Elutasítás", "follow_requests.unlocked_explanation": "Bár a fiókod nincs zárolva, a(z) {domain} csapata úgy gondolta, hogy talán kézzel szeretnéd ellenőrizni ezen fiókok követési kéréseit.", + "follow_suggestions.curated_suggestion": "A stáb választása", + "follow_suggestions.dismiss": "Ne jelenjen meg újra", + "follow_suggestions.hints.featured": "Ezt a profilt a(z) {domain} csapata választotta ki.", + "follow_suggestions.hints.friends_of_friends": "Ez a profil népszerű az általad követett emberek körében.", + "follow_suggestions.hints.most_followed": "Ez a profil a leginkább követett a(z) {domain} oldalon.", + "follow_suggestions.hints.most_interactions": "Ez a profil mostanában sok figyelmet kap a(z) {domain} oldalon.", + "follow_suggestions.hints.similar_to_recently_followed": "Ez a profil hasonló azokhoz a profilokhoz, melyeket nemrég kezdtél el követni.", + "follow_suggestions.personalized_suggestion": "Személyre szabott javaslat", + "follow_suggestions.popular_suggestion": "Népszerű javaslat", + "follow_suggestions.view_all": "Összes megtekintése", + "follow_suggestions.who_to_follow": "Kit érdemes követni", "followed_tags": "Követett hashtagek", "footer.about": "Névjegy", "footer.directory": "Profiltár", @@ -305,13 +314,9 @@ "hashtag.follow": "Hashtag követése", "hashtag.unfollow": "Hashtag követésének megszüntetése", "hashtags.and_other": "…és {count, plural, other {# további}}", - "home.actions.go_to_explore": "Felkapottak megtekintése", - "home.actions.go_to_suggestions": "Követhetők keresése", "home.column_settings.basic": "Általános", "home.column_settings.show_reblogs": "Megtolások megjelenítése", "home.column_settings.show_replies": "Válaszok megjelenítése", - "home.explore_prompt.body": "A saját hírfolyam a követésre kiválasztott hashtagek, a követésre kiválasztott személyek és az általuk népszerűsített bejegyzések keverékét tartalmazza. Ha csendesnek tűnik, akkor megpróbálhatod ezeket:", - "home.explore_prompt.title": "Ez a kezdőpontod a Mastodonon belül.", "home.hide_announcements": "Közlemények elrejtése", "home.pending_critical_update.body": "A lehető leghamarabb frissítsd a Mastodon kiszolgálódat!", "home.pending_critical_update.link": "Frissítések megtekintése", @@ -524,15 +529,15 @@ "poll_button.add_poll": "Új szavazás", "poll_button.remove_poll": "Szavazás eltávolítása", "privacy.change": "Bejegyzés láthatóságának módosítása", - "privacy.direct.long": "Mindenki, akit a bejegyzésben említettek", - "privacy.direct.short": "Adott személyek", - "privacy.private.long": "Csak a követők", + "privacy.direct.long": "Mindenki, akit a bejegyzés említ", + "privacy.direct.short": "Megadott személyek", + "privacy.private.long": "Csak a követőid", "privacy.private.short": "Követők", "privacy.public.long": "Bárki a Mastodonon és azon kívül", "privacy.public.short": "Nyilvános", - "privacy.unlisted.additional": "Ez pontosan úgy viselkedik, mint a nyilvános, kivéve, hogy a bejegyzés nem jelenik meg élő hírcsatornákban vagy hashtagokban, felfedezésben vagy a Mastodon keresésben, még akkor sem, ha az egész fiókra bejelentkezetünk.", + "privacy.unlisted.additional": "Ez pontosan úgy viselkedik, mint a nyilvános, kivéve, hogy a bejegyzés nem jelenik meg élő hírfolyamokban, hashtagekben, felfedezésben vagy a Mastodonos keresésben, még akkor sem, ha ezt az egész fiókra engedélyezted.", "privacy.unlisted.long": "Kevesebb algoritmikus fanfár", - "privacy.unlisted.short": "Csendes nyilvánosság", + "privacy.unlisted.short": "Csendes nyilvános", "privacy_policy.last_updated": "Utoljára frissítve: {date}", "privacy_policy.title": "Adatvédelmi szabályzat", "recommended": "Ajánlott", diff --git a/app/javascript/mastodon/locales/ia.json b/app/javascript/mastodon/locales/ia.json index 14b75a17f4..599688cc07 100644 --- a/app/javascript/mastodon/locales/ia.json +++ b/app/javascript/mastodon/locales/ia.json @@ -2,15 +2,22 @@ "about.blocks": "Servitores moderate", "about.contact": "Contacto:", "about.disclaimer": "Mastodon es software libere, de codice aperte, e un marca de Mastodon gGmbH.", + "about.domain_blocks.no_reason_available": "Ration non disponibile", + "about.domain_blocks.silenced.title": "Limitate", + "about.domain_blocks.suspended.title": "Suspendite", + "about.not_available": "Iste information non faceva disponibile in iste servitor.", "about.rules": "Regulas del servitor", "account.account_note_header": "Nota", "account.add_or_remove_from_list": "Adder o remover ab listas", "account.badges.group": "Gruppo", "account.block": "Blocar @{name}", + "account.block_domain": "Blocar dominio {domain}", "account.block_short": "Blocar", "account.blocked": "Blocate", "account.browse_more_on_origin_server": "Navigar plus sur le profilo original", "account.copy": "Copiar ligamine a profilo", + "account.direct": "Mentionar privatemente a @{name}", + "account.disable_notifications": "Stoppar le notificationes quando @{name} publica", "account.domain_blocked": "Dominio blocate", "account.edit_profile": "Modificar profilo", "account.enable_notifications": "Notifica me quando @{name} publica", @@ -24,11 +31,14 @@ "account.followers.empty": "Iste usator ancora non ha sequitores.", "account.followers_counter": "{count, plural, one {{counter} sequitor} other {{counter} sequitores}}", "account.following": "Sequente", + "account.follows.empty": "Iste usator ancora non seque nemo.", "account.go_to_profile": "Vader al profilo", "account.hide_reblogs": "Celar boosts de @{name}", + "account.in_memoriam": "In Memoriam.", "account.languages": "Cambiar le linguas subscribite", "account.link_verified_on": "Le proprietate de iste ligamine esseva verificate le {date}", "account.locked_info": "Le stato de confidentialitate de iste conto es definite a blocate. Le proprietario revisa manualmente qui pote sequer lo.", + "account.media": "Multimedia", "account.mention": "Mentionar @{name}", "account.moved_to": "{name} indicava que lor nove conto ora es:", "account.mute": "Silentiar @{name}", @@ -39,16 +49,21 @@ "account.open_original_page": "Aperir le pagina original", "account.posts": "Messages", "account.posts_with_replies": "Messages e responsas", + "account.requested": "Attendente le approbation. Clicca pro cancellar le requesta de sequer", + "account.requested_follow": "{name} habeva requestate sequer te", "account.share": "Compartir profilo de @{name}", "account.show_reblogs": "Monstrar responsas de @{name}", + "account.statuses_counter": "{count, plural, one {{counter} message} other {{counter} messages}}", "account.unblock": "Disblocar @{name}", "account.unblock_domain": "Disblocar dominio {domain}", "account.unblock_short": "Disblocar", "account.unendorse": "Non evidentiar sur le profilo", + "account.unfollow": "Non plus sequer", "account.unmute": "Non plus silentiar @{name}", "account.unmute_notifications_short": "Non plus silentiar le notificationes", "account.unmute_short": "Non plus silentiar", "account_note.placeholder": "Clicca pro adder un nota", + "admin.dashboard.retention.average": "Median", "admin.dashboard.retention.cohort_size": "Nove usatores", "admin.impact_report.instance_followers": "Sequitores que nostre usatores poterea perder", "admin.impact_report.instance_follows": "Sequitores que lor usatores poterea perder", @@ -61,6 +76,7 @@ "bundle_column_error.return": "Retornar al initio", "bundle_modal_error.close": "Clauder", "bundle_modal_error.retry": "Tentar novemente", + "closed_registrations_modal.description": "Crear un conto in {domain} actualmente non es possibile, ma considera que tu non besonia un conto specific in {domain} pro usar Mastodon.", "closed_registrations_modal.find_another_server": "Trovar altere servitor", "column.about": "A proposito de", "column.blocks": "Usatores blocate", @@ -76,11 +92,14 @@ "column.mutes": "Usatores silentiate", "column.notifications": "Notificationes", "column.public": "Chronologia federate", + "column_back_button.label": "Retro", "column_header.hide_settings": "Celar le parametros", "column_header.moveLeft_settings": "Mover columna al sinistra", "column_header.moveRight_settings": "Mover columna al dextra", "column_header.show_settings": "Monstrar le parametros", "column_subheading.settings": "Parametros", + "community.column_settings.local_only": "Solmente local", + "community.column_settings.media_only": "Solmente medios", "compose.language.change": "Cambiar le lingua", "compose.language.search": "Cercar linguas...", "compose.published.body": "Message publicate.", @@ -89,11 +108,26 @@ "compose_form.direct_message_warning_learn_more": "Apprender plus", "compose_form.lock_disclaimer": "Tu conto non es {locked}. Quicunque pote sequer te pro vider tu messages solo pro sequitores.", "compose_form.lock_disclaimer.lock": "blocate", + "compose_form.poll.duration": "Duration del inquesta", + "compose_form.poll.multiple": "Selection multiple", + "compose_form.poll.option_placeholder": "Option {number}", + "compose_form.poll.single": "Seliger un", + "compose_form.poll.switch_to_multiple": "Cambiar inquesta pro permitter selectiones multiple", + "compose_form.poll.switch_to_single": "Cambiar inquesta pro permitter selection singule", + "compose_form.poll.type": "Stylo", + "compose_form.publish": "Publicar", "compose_form.publish_form": "Nove message", + "compose_form.reply": "Responder", + "compose_form.save_changes": "Actualisar", "compose_form.spoiler.marked": "Remover advertimento de contento", "compose_form.spoiler.unmarked": "Adder advertimento de contento", + "compose_form.spoiler_placeholder": "Advertimento de contento (optional)", "confirmation_modal.cancel": "Cancellar", + "confirmations.block.block_and_report": "Blocar e signalar", "confirmations.block.confirm": "Blocar", + "confirmations.block.message": "Es tu secur que tu vole blocar {name}?", + "confirmations.cancel_follow_request.confirm": "Retirar requesta", + "confirmations.cancel_follow_request.message": "Es tu secur que tu vole retirar tu requesta a sequer a {name}?", "confirmations.delete.confirm": "Deler", "confirmations.delete.message": "Es tu secur que tu vole deler iste message?", "confirmations.delete_list.confirm": "Deler", @@ -105,6 +139,8 @@ "confirmations.mute.confirm": "Silentiar", "confirmations.mute.message": "Es tu secur que tu vole silentiar {name}?", "confirmations.reply.confirm": "Responder", + "confirmations.unfollow.confirm": "Non plus sequer", + "confirmations.unfollow.message": "Es tu secur que tu vole non plus sequer {name}?", "conversation.delete": "Deler conversation", "conversation.mark_as_read": "Marcar como legite", "conversation.open": "Vider conversation", @@ -114,22 +150,38 @@ "copypaste.copy_to_clipboard": "Copiar al area de transferentia", "directory.federated": "Ab le fediverso cognoscite", "directory.local": "Solmente ab {domain}", + "directory.new_arrivals": "Nove arrivatas", "directory.recently_active": "Recentemente active", "disabled_account_banner.account_settings": "Parametros de conto", "disabled_account_banner.text": "Tu conto {disabledAccount} es actualmente disactivate.", "dismissable_banner.dismiss": "Dimitter", + "embed.preview": "Hic es como il parera:", "emoji_button.activity": "Activitate", "emoji_button.clear": "Rader", "emoji_button.custom": "Personalisate", + "emoji_button.flags": "Bandieras", + "emoji_button.food": "Alimentos e bibitas", + "emoji_button.label": "Inserer emoji", + "emoji_button.nature": "Natura", + "emoji_button.people": "Personas", "emoji_button.recent": "Frequentemente usate", "emoji_button.search": "Cercar...", "emoji_button.search_results": "Resultatos de recerca", + "emoji_button.symbols": "Symbolos", + "emoji_button.travel": "Viages e locos", + "empty_column.account_hides_collections": "Le usator ha seligite non facer iste information disponibile", "empty_column.account_suspended": "Conto suspendite", "empty_column.account_timeline": "Nulle messages hic!", "empty_column.account_unavailable": "Profilo non disponibile", "empty_column.blocks": "Tu non ha blocate alcun usator ancora.", + "empty_column.domain_blocks": "Il non ha dominios blocate ancora.", + "empty_column.explore_statuses": "Nihil es in tendentias ora mesme. Retorna postea!", + "empty_column.favourited_statuses": "Tu non ha necun messages favorite ancora. Quando tu marca un como favorito, ille essera monstrate hic.", + "empty_column.followed_tags": "Tu ancora non ha sequite necun hashtags. Quando tu lo face, illes essera monstrate hic.", + "empty_column.hashtag": "Ancora non il ha nihil in iste hashtag.", "errors.unexpected_crash.report_issue": "Signalar un defecto", "explore.search_results": "Resultatos de recerca", + "explore.suggested_follows": "Personas", "explore.title": "Explorar", "explore.trending_links": "Novas", "explore.trending_statuses": "Messages", @@ -145,6 +197,10 @@ "firehose.all": "Toto", "firehose.local": "Iste servitor", "firehose.remote": "Altere servitores", + "follow_suggestions.dismiss": "Non monstrar novemente", + "follow_suggestions.personalized_suggestion": "Suggestion personalisate", + "follow_suggestions.popular_suggestion": "Suggestion personalisate", + "follow_suggestions.view_all": "Vider toto", "footer.about": "A proposito de", "footer.directory": "Directorio de profilos", "footer.get_app": "Obtene le application", @@ -156,15 +212,20 @@ "getting_started.heading": "Prime passos", "hashtag.column_header.tag_mode.all": "e {additional}", "hashtag.column_header.tag_mode.any": "o {additional}", + "hashtag.column_header.tag_mode.none": "sin {additional}", "hashtag.column_settings.select.no_options_message": "Nulle suggestiones trovate", "hashtag.column_settings.select.placeholder": "Insere hashtags…", "hashtag.follow": "Sequer hashtag", + "hashtag.unfollow": "Non sequer plus le hashtag", + "hashtags.and_other": "…e {count, plural, one {}other {# plus}}", "home.column_settings.show_reblogs": "Monstrar boosts", "home.column_settings.show_replies": "Monstrar responsas", "home.hide_announcements": "Celar annuncios", "home.pending_critical_update.body": "Actualisa tu servitor de Mastodon le plus tosto possibile!", "home.pending_critical_update.link": "Vider actualisationes", + "home.pending_critical_update.title": "Actualisation de securitate critic disponibile!", "home.show_announcements": "Monstrar annuncios", + "interaction_modal.login.prompt": "Dominio de tu servitor, p.e. mastodon.social", "interaction_modal.no_account_yet": "Non sur Mstodon?", "interaction_modal.on_another_server": "In un servitor differente", "interaction_modal.on_this_server": "In iste servitor", @@ -183,8 +244,10 @@ "keyboard_shortcuts.muted": "Aperir lista de usatores silentiate", "keyboard_shortcuts.my_profile": "Aperir tu profilo", "keyboard_shortcuts.notifications": "Aperir columna de notificationes", + "keyboard_shortcuts.profile": "Aperir le profilo del autor", "keyboard_shortcuts.reply": "Responder al message", "keyboard_shortcuts.spoilers": "Monstrar/celar le campo CW", + "keyboard_shortcuts.toggle_sensitivity": "Monstrar/celar medios", "keyboard_shortcuts.toot": "Initiar un nove message", "lightbox.close": "Clauder", "lightbox.next": "Sequente", @@ -198,8 +261,11 @@ "lists.exclusive": "Celar iste messages ab le initio", "lists.new.create": "Adder lista", "lists.new.title_placeholder": "Nove titulo del lista", + "lists.replies_policy.none": "Nemo", "lists.replies_policy.title": "Monstrar responsas a:", "lists.subheading": "Tu listas", + "loading_indicator.label": "Cargante…", + "media_gallery.toggle_visible": "{number, plural, one {Celar imagine} other {Celar imagines}}", "mute_modal.duration": "Duration", "mute_modal.hide_notifications": "Celar notificationes de iste usator?", "navigation_bar.about": "A proposito de", @@ -215,24 +281,34 @@ "navigation_bar.lists": "Listas", "navigation_bar.logout": "Clauder le session", "navigation_bar.mutes": "Usatores silentiate", + "navigation_bar.opened_in_classic_interface": "Messages, contos e altere paginas specific es aperite per predefinition in le interfacie web classic.", + "navigation_bar.personal": "Personal", "navigation_bar.preferences": "Preferentias", "navigation_bar.public_timeline": "Chronologia federate", "navigation_bar.search": "Cercar", "navigation_bar.security": "Securitate", + "notification.own_poll": "Tu inquesta finiva", "notification.update": "{name} modificava un message", "notifications.clear": "Rader notificationes", "notifications.column_settings.alert": "Notificationes de scriptorio", + "notifications.column_settings.favourite": "Favoritos:", "notifications.column_settings.filter_bar.advanced": "Monstrar tote le categorias", "notifications.column_settings.follow": "Nove sequitores:", "notifications.column_settings.mention": "Mentiones:", + "notifications.column_settings.poll": "Resultatos del inquesta:", "notifications.column_settings.push": "Notificationes push", + "notifications.column_settings.show": "Monstrar in columna", "notifications.column_settings.sound": "Reproducer sono", "notifications.column_settings.status": "Nove messages:", + "notifications.column_settings.unread_notifications.category": "Notificationes non legite", "notifications.filter.all": "Toto", "notifications.filter.favourites": "Favoritos", "notifications.filter.mentions": "Mentiones", + "notifications.filter.polls": "Resultatos del inquesta", + "notifications.filter.statuses": "Actualisationes de personas que tu seque", "notifications.grant_permission": "Conceder permission.", "notifications.group": "{count} notificationes", + "notifications_permission_banner.enable": "Activar notificationes de scriptorio", "onboarding.compose.template": "Salute #Mastodon!", "onboarding.profile.save_and_continue": "Salvar e continuar", "onboarding.share.next_steps": "Sequente passos possibile:", @@ -260,6 +336,8 @@ "report.placeholder": "Commentos additional", "report.reasons.dislike": "Non me place", "report_notification.categories.other": "Alteres", + "report_notification.open": "Aperir reporto", + "search.no_recent_searches": "Nulle recercas recente", "search.quick_action.go_to_account": "Vader al profilo {x}", "search.quick_action.go_to_hashtag": "Vader al hashtag {x}", "search.quick_action.open_url": "Aperir URL in Mastodon", @@ -273,14 +351,20 @@ "search_results.hashtags": "Hashtags", "search_results.see_all": "Vider toto", "search_results.statuses": "Messages", + "server_banner.active_users": "usatores active", "server_banner.learn_more": "Apprender plus", + "server_banner.server_stats": "Statos del servitor:", "sign_in_banner.create_account": "Crear un conto", "sign_in_banner.sign_in": "Initiar le session", "status.block": "Blocar @{name}", "status.copy": "Copiar ligamine a message", "status.delete": "Deler", + "status.direct": "Mentionar privatemente a @{name}", "status.direct_indicator": "Mention private", "status.edit": "Modificar", + "status.edited": "Modificate le {date}", + "status.edited_x_times": "Modificate {count, plural, one {{count} tempore} other {{count} tempores}}", + "status.favourite": "Adder al favoritos", "status.filter": "Filtrar iste message", "status.hide": "Celar le message", "status.history.created": "create per {name} le {date}", @@ -291,12 +375,17 @@ "status.mute_conversation": "Silentiar conversation", "status.read_more": "Leger plus", "status.share": "Compartir", + "status.show_less": "Monstrar minus", + "status.show_more": "Monstrar plus", "status.translate": "Traducer", "status.translated_from_with": "Traducite ab {lang} usante {provider}", + "status.uncached_media_warning": "Previsualisation non disponibile", + "subscribed_languages.save": "Salveguardar le cambiamentos", "tabs_bar.home": "Initio", "tabs_bar.notifications": "Notificationes", "timeline_hint.resources.statuses": "Messages ancian", "trends.trending_now": "Ora in tendentias", + "upload_button.label": "Adde imagines, un video o un file de audio", "upload_modal.choose_image": "Seliger un imagine", "upload_modal.detect_text": "Deteger texto ab un pictura", "video.close": "Clauder le video", diff --git a/app/javascript/mastodon/locales/id.json b/app/javascript/mastodon/locales/id.json index 1670d616fb..88e99a7086 100644 --- a/app/javascript/mastodon/locales/id.json +++ b/app/javascript/mastodon/locales/id.json @@ -270,8 +270,6 @@ "hashtag.column_settings.tag_toggle": "Include additional tags in this column", "hashtag.follow": "Ikuti tagar", "hashtag.unfollow": "Batalkan pengikutan tagar", - "home.actions.go_to_explore": "Lihat apa yang lagi tranding", - "home.actions.go_to_suggestions": "Temukan Orang untuk Diikuti", "home.column_settings.basic": "Dasar", "home.column_settings.show_reblogs": "Tampilkan boost", "home.column_settings.show_replies": "Tampilkan balasan", diff --git a/app/javascript/mastodon/locales/ie.json b/app/javascript/mastodon/locales/ie.json index 5188d137e3..7bd938c1bf 100644 --- a/app/javascript/mastodon/locales/ie.json +++ b/app/javascript/mastodon/locales/ie.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Tui conto ne es {locked}. Quicunc posse sequer te por vider tui postas solmen por sequitores.", "compose_form.lock_disclaimer.lock": "cludet", "compose_form.placeholder": "Quo es in tui spiritu?", - "compose_form.poll.add_option": "Adjunter option", "compose_form.poll.duration": "Duration del balotation", "compose_form.poll.multiple": "Selection multiplic", "compose_form.poll.option_placeholder": "Option {number}", - "compose_form.poll.remove_option": "Remover ti-ci option", "compose_form.poll.single": "Selecter un", "compose_form.poll.switch_to_multiple": "Changea li balotation por permisser multiplic selectiones", "compose_form.poll.switch_to_single": "Changea li balotation por permisser un singul selection", @@ -160,6 +158,7 @@ "compose_form.save_changes": "Actualisar", "compose_form.spoiler.marked": "Remover avise pri li contenete", "compose_form.spoiler.unmarked": "Adjunter avise pri li contenete", + "compose_form.spoiler_placeholder": "Advertiment de contenete (optional)", "confirmation_modal.cancel": "Anullar", "confirmations.block.block_and_report": "Bloccar & Raportar", "confirmations.block.confirm": "Bloccar", @@ -278,6 +277,17 @@ "follow_request.authorize": "Autorisar", "follow_request.reject": "Rejecter", "follow_requests.unlocked_explanation": "Benque tu conto ne es cludet, li administratores de {domain} pensat que tu fórsan vell voler tractar seque-petitiones de tis-ci contos manualmen.", + "follow_suggestions.curated_suggestion": "Selection del employates", + "follow_suggestions.dismiss": "Ne monstrar plu", + "follow_suggestions.hints.featured": "Ti-ci profil ha esset selectet directmen del equip de {domain}.", + "follow_suggestions.hints.friends_of_friends": "Ti-ci profil es populari ínter tis qui tu seque.", + "follow_suggestions.hints.most_followed": "Ti-ci profil es un del max sequet sur {domain}.", + "follow_suggestions.hints.most_interactions": "Ti-ci profil ha recivet mult atention recentmen sur {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Ti-ci profil es simil al profiles queles tu ha recentmen sequet.", + "follow_suggestions.personalized_suggestion": "Personalisat suggestion", + "follow_suggestions.popular_suggestion": "Populari suggestion", + "follow_suggestions.view_all": "Vider omnicos", + "follow_suggestions.who_to_follow": "Persones a sequer", "followed_tags": "Sequet hashtags", "footer.about": "Information", "footer.directory": "Profilarium", @@ -304,13 +314,9 @@ "hashtag.follow": "Sequer hashtag", "hashtag.unfollow": "Dessequer hashtag", "hashtags.and_other": "…e {count, plural, other {# in plu}}", - "home.actions.go_to_explore": "Vider lu populari", - "home.actions.go_to_suggestions": "Trovar gente por sequer", "home.column_settings.basic": "Basic", "home.column_settings.show_reblogs": "Monstrar boosts", "home.column_settings.show_replies": "Monstrar responses", - "home.explore_prompt.body": "Tui hemal témpor-linea have un mixtura del hashtags queles tu selectet sequer, li gente quem tu selectet sequer, e li postas queles ili boosta. Si to sembla tro quiet, tu fórsan vole:", - "home.explore_prompt.title": "To-ci es tui hemal págine in Mastodon.", "home.hide_announcements": "Celar proclamationes", "home.pending_critical_update.body": "Ples actualisar tui Mastodon-servitor tam rapid quam es possibil!", "home.pending_critical_update.link": "Vider actualisationes", @@ -523,11 +529,15 @@ "poll_button.add_poll": "Adjunter un balotation", "poll_button.remove_poll": "Remover balotation", "privacy.change": "Changear li privatie del posta", + "privacy.direct.long": "Omnes mentionat in li posta", "privacy.direct.short": "Specific persones", "privacy.private.long": "Solmen tui sequitores", "privacy.private.short": "Sequitores", "privacy.public.long": "Quicunc in e ex Mastodon", "privacy.public.short": "Public", + "privacy.unlisted.additional": "It acte just quam public, except que li posta ne va aparir in tendentie o hashtags, explorar, o sercha de Mastodon, mem si tu ha optet por les sur tui tot conto.", + "privacy.unlisted.long": "Minu fanfare algoritmic", + "privacy.unlisted.short": "Quiet public", "privacy_policy.last_updated": "Ultimmen actualisat ye {date}", "privacy_policy.title": "Politica pri Privatie", "recommended": "Recomandat", @@ -545,7 +555,9 @@ "relative_time.minutes": "{number}m", "relative_time.seconds": "{number}s", "relative_time.today": "hodie", + "reply_indicator.attachments": "{count, plural, one {# atachament} other {# atachamentes}}", "reply_indicator.cancel": "Anullar", + "reply_indicator.poll": "Balotar", "report.block": "Bloccar", "report.block_explanation": "Tu ne va vider su postas. Li usator ni va posser vider tui postas, ni sequer te, ni va posser saver pri li statu de esser bloccat.", "report.categories.legal": "Legal", diff --git a/app/javascript/mastodon/locales/io.json b/app/javascript/mastodon/locales/io.json index a9dd32c06c..c468f689ab 100644 --- a/app/javascript/mastodon/locales/io.json +++ b/app/javascript/mastodon/locales/io.json @@ -292,13 +292,9 @@ "hashtag.follow": "Sequez hashtago", "hashtag.unfollow": "Desequez hashtago", "hashtags.and_other": "…e {count, plural, one {# plusa}other {# plusa}}", - "home.actions.go_to_explore": "Videz quo es populara nun", - "home.actions.go_to_suggestions": "Trovez personi por sequar", "home.column_settings.basic": "Simpla", "home.column_settings.show_reblogs": "Montrar repeti", "home.column_settings.show_replies": "Montrar respondi", - "home.explore_prompt.body": "Vua hemala fluo havos mixuro de la hashtagi quin vu selektis sequar, la personi quin vu selektis sequar, e la posti quin ili repetis. Se to semblas tro tacanta, vu darfas volar:", - "home.explore_prompt.title": "Co es vua hemo en Mastodon.", "home.hide_announcements": "Celez anunci", "home.pending_critical_update.body": "Voluntez aktualigar vua Mastodon-servilo tam balde kam es posibla!", "home.pending_critical_update.link": "Vidar aktualigaji", diff --git a/app/javascript/mastodon/locales/is.json b/app/javascript/mastodon/locales/is.json index dfece102bb..1f42180159 100644 --- a/app/javascript/mastodon/locales/is.json +++ b/app/javascript/mastodon/locales/is.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Aðgangurinn þinn er ekki {locked}. Hver sem er getur fylgst með þér til að sjá þær færslur sem einungis eru til fylgjenda þinna.", "compose_form.lock_disclaimer.lock": "læstur", "compose_form.placeholder": "Hvað liggur þér á hjarta?", - "compose_form.poll.add_option": "Bæta við valkosti", "compose_form.poll.duration": "Tímalengd könnunar", "compose_form.poll.multiple": "Margir valkostir", "compose_form.poll.option_placeholder": "Valkostur {number}", - "compose_form.poll.remove_option": "Fjarlægja þennan valkost", "compose_form.poll.single": "Veldu eitt", "compose_form.poll.switch_to_multiple": "Breyta könnun svo hægt sé að hafa marga valkosti", "compose_form.poll.switch_to_single": "Breyta könnun svo hægt sé að hafa einn stakan valkost", @@ -279,13 +277,24 @@ "follow_request.authorize": "Heimila", "follow_request.reject": "Hafna", "follow_requests.unlocked_explanation": "Jafnvel þótt aðgangurinn þinn sé ekki læstur, hafa umsjónarmenn {domain} ímyndað sér að þú gætir viljað yfirfara handvirkt fylgjendabeiðnir frá þessum notendum.", + "follow_suggestions.curated_suggestion": "Úrval starfsfólks", + "follow_suggestions.dismiss": "Ekki birta þetta aftur", + "follow_suggestions.hints.featured": "Þetta notandasnið hefur verið handvalið af {domain}-teyminu.", + "follow_suggestions.hints.friends_of_friends": "Þetta notandasnið er vinsælt hjá fólki sem þú fylgist með.", + "follow_suggestions.hints.most_followed": "Þetta notandasnið er eitt af þeim sem mest er fylgst með á {domain}.", + "follow_suggestions.hints.most_interactions": "Þetta notandasnið hefur vakið mikla athygli að undanförnu á {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Þetta notandasnið er líkt þeim sniðum sem þú hefur valið að fylgjast með að undanförnu.", + "follow_suggestions.personalized_suggestion": "Persónuaðlöguð tillaga", + "follow_suggestions.popular_suggestion": "Vinsæl tillaga", + "follow_suggestions.view_all": "Skoða allt", + "follow_suggestions.who_to_follow": "Hverjum á að fylgjast með", "followed_tags": "Myllumerki sem fylgst er með", "footer.about": "Nánari upplýsingar", "footer.directory": "Notandasniðamappa", "footer.get_app": "Ná í forritið", "footer.invite": "Bjóða fólki", "footer.keyboard_shortcuts": "Flýtileiðir á lyklaborði", - "footer.privacy_policy": "Persónuverndarstefna", + "footer.privacy_policy": "Meðferð persónuupplýsinga", "footer.source_code": "Skoða frumkóða", "footer.status": "Staða", "generic.saved": "Vistað", @@ -305,13 +314,9 @@ "hashtag.follow": "Fylgjast með myllumerki", "hashtag.unfollow": "Hætta að fylgjast með myllumerki", "hashtags.and_other": "…og {count, plural, other {# til viðbótar}}", - "home.actions.go_to_explore": "Sjá hvað er í umræðunni", - "home.actions.go_to_suggestions": "Finna fólk til að fylgjast með", "home.column_settings.basic": "Einfalt", "home.column_settings.show_reblogs": "Sýna endurbirtingar", "home.column_settings.show_replies": "Birta svör", - "home.explore_prompt.body": "Heimastreymið þitt verður með blöndu af færslum úr myllumerkjunum sem þú hefur valið að fylgja, færslum frá fólki sem þú hefur valið að fylgja og færslum sem þau endurbirta. Ef þér finnst þetta allt of kyrrlátt, gætirðu viljað:", - "home.explore_prompt.title": "Þetta er bækistöð þín innan samfélagsins.", "home.hide_announcements": "Fela auglýsingar", "home.pending_critical_update.body": "Uppfærðu Mastodon-þjóninn þinn eins fljótt og mögulegt er!", "home.pending_critical_update.link": "Skoða uppfærslur", @@ -672,7 +677,7 @@ "status.reblogs.empty": "Enginn hefur ennþá endurbirt þessa færslu. Þegar einhver gerir það, mun það birtast hér.", "status.redraft": "Eyða og endurvinna drög", "status.remove_bookmark": "Fjarlægja bókamerki", - "status.replied_to": "Svaraði {name}", + "status.replied_to": "Svaraði til {name}", "status.reply": "Svara", "status.replyAll": "Svara þræði", "status.report": "Kæra @{name}", diff --git a/app/javascript/mastodon/locales/it.json b/app/javascript/mastodon/locales/it.json index 920b80d5a6..9e68216a33 100644 --- a/app/javascript/mastodon/locales/it.json +++ b/app/javascript/mastodon/locales/it.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Il tuo profilo non è {locked}. Chiunque può seguirti per visualizzare i tuoi post per soli seguaci.", "compose_form.lock_disclaimer.lock": "bloccato", "compose_form.placeholder": "Cos'hai in mente?", - "compose_form.poll.add_option": "Aggiungi opzione", "compose_form.poll.duration": "Durata del sondaggio", "compose_form.poll.multiple": "Scelta multipla", "compose_form.poll.option_placeholder": "Opzione {number}", - "compose_form.poll.remove_option": "Rimuovi questa opzione", "compose_form.poll.single": "Scegli uno", "compose_form.poll.switch_to_multiple": "Modifica il sondaggio per consentire scelte multiple", "compose_form.poll.switch_to_single": "Modifica il sondaggio per consentire una singola scelta", @@ -279,6 +277,17 @@ "follow_request.authorize": "Autorizza", "follow_request.reject": "Rifiuta", "follow_requests.unlocked_explanation": "Anche se il tuo profilo non è privato, lo staff di {domain} ha pensato che potresti voler revisionare manualmente le richieste di seguirti da questi profili.", + "follow_suggestions.curated_suggestion": "Scelta personale", + "follow_suggestions.dismiss": "Non visualizzare più", + "follow_suggestions.hints.featured": "Questo profilo è stato selezionato personalmente dal team di {domain}.", + "follow_suggestions.hints.friends_of_friends": "Questo profilo è popolare tra le persone che segui.", + "follow_suggestions.hints.most_followed": "Questo profilo è uno dei più seguiti su {domain}.", + "follow_suggestions.hints.most_interactions": "Recentemente, questo profilo ha ricevuto molta attenzione su {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Questo profilo è simile ai profili che hai seguito più recentemente.", + "follow_suggestions.personalized_suggestion": "Suggerimenti personalizzati", + "follow_suggestions.popular_suggestion": "Suggerimento frequente", + "follow_suggestions.view_all": "Vedi tutto", + "follow_suggestions.who_to_follow": "Chi seguire", "followed_tags": "Hashtag seguiti", "footer.about": "Info", "footer.directory": "Cartella dei profili", @@ -305,13 +314,9 @@ "hashtag.follow": "Segui l'hashtag", "hashtag.unfollow": "Smetti di seguire l'hashtag", "hashtags.and_other": "…e {count, plural, other {# in più}}", - "home.actions.go_to_explore": "Scopri cosa sia di tendenza", - "home.actions.go_to_suggestions": "Trova persone da seguire", "home.column_settings.basic": "Base", "home.column_settings.show_reblogs": "Mostra reblog", "home.column_settings.show_replies": "Mostra risposte", - "home.explore_prompt.body": "La tua home feed conterrà un mix di post degli hashtag che hai scelto di seguire, delle persone che hai scelto di seguire e dei post che condividono. Sembra abbastanza tranquillo in questo momento, quindi che ne dici di:", - "home.explore_prompt.title": "Questa è la tua base all'interno di Mastodon.", "home.hide_announcements": "Nascondi annunci", "home.pending_critical_update.body": "Ti preghiamo di aggiornare il tuo server di Mastodon, il prima possibile!", "home.pending_critical_update.link": "Visualizza aggiornamenti", diff --git a/app/javascript/mastodon/locales/ja.json b/app/javascript/mastodon/locales/ja.json index e0cc96d571..27ed9816a7 100644 --- a/app/javascript/mastodon/locales/ja.json +++ b/app/javascript/mastodon/locales/ja.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "承認制", "compose_form.placeholder": "今なにしてる?", "compose_form.poll.duration": "アンケート期間", + "compose_form.poll.multiple": "複数選択", + "compose_form.poll.option_placeholder": "項目{number}", + "compose_form.poll.single": "単一選択", "compose_form.poll.switch_to_multiple": "複数選択に変更", "compose_form.poll.switch_to_single": "単一選択に変更", + "compose_form.poll.type": "スタイル", + "compose_form.publish": "投稿", "compose_form.publish_form": "投稿", + "compose_form.reply": "返信", + "compose_form.save_changes": "更新", "compose_form.spoiler.marked": "本文は警告の後ろに隠されます", "compose_form.spoiler.unmarked": "本文は隠されていません", + "compose_form.spoiler_placeholder": "閲覧注意 (オプション)", "confirmation_modal.cancel": "キャンセル", "confirmations.block.block_and_report": "ブロックし通報", "confirmations.block.confirm": "ブロック", @@ -269,6 +277,17 @@ "follow_request.authorize": "許可", "follow_request.reject": "拒否", "follow_requests.unlocked_explanation": "あなたのアカウントは承認制ではありませんが、{domain}のスタッフはこれらのアカウントからのフォローリクエストの確認が必要であると判断しました。", + "follow_suggestions.curated_suggestion": "サーバースタッフ公認", + "follow_suggestions.dismiss": "今後表示しない", + "follow_suggestions.hints.featured": "{domain} の運営スタッフが選んだアカウントです。", + "follow_suggestions.hints.friends_of_friends": "フォロー中のユーザーのあいだで人気のアカウントです。", + "follow_suggestions.hints.most_followed": "{domain} でもっともフォローされているアカウントのひとつです。", + "follow_suggestions.hints.most_interactions": "{domain} でいま大きな注目を集めています。", + "follow_suggestions.hints.similar_to_recently_followed": "最近フォローしたユーザーに似ているアカウントです。", + "follow_suggestions.personalized_suggestion": "フォローに基づく提案", + "follow_suggestions.popular_suggestion": "人気のアカウント", + "follow_suggestions.view_all": "すべて表示", + "follow_suggestions.who_to_follow": "フォローを増やしてみませんか?", "followed_tags": "フォロー中のハッシュタグ", "footer.about": "概要", "footer.directory": "ディレクトリ", @@ -291,17 +310,13 @@ "hashtag.column_settings.tag_toggle": "このカラムに追加のタグを含める", "hashtag.counter_by_accounts": "{count, plural, other {{counter}人投稿}}", "hashtag.counter_by_uses": "{count, plural, other {{counter}件}}", - "hashtag.counter_by_uses_today": "今日{count, plural, other {{counter}件}}", + "hashtag.counter_by_uses_today": "本日{count, plural, other {#件}}", "hashtag.follow": "ハッシュタグをフォローする", "hashtag.unfollow": "ハッシュタグのフォローを解除", "hashtags.and_other": "ほか{count, plural, other {#個}}", - "home.actions.go_to_explore": "話題をさがす", - "home.actions.go_to_suggestions": "フォローするユーザーを検索", "home.column_settings.basic": "基本設定", "home.column_settings.show_reblogs": "ブースト表示", "home.column_settings.show_replies": "返信表示", - "home.explore_prompt.body": "ユーザーやハッシュタグをフォローすると、この「ホーム」タイムラインに投稿やブーストが流れるようになります。タイムラインをもう少しにぎやかにしてみませんか?", - "home.explore_prompt.title": "Mastodonのタイムラインへようこそ。", "home.hide_announcements": "お知らせを隠す", "home.pending_critical_update.body": "速やかにMastodonサーバーをアップデートしてください。", "home.pending_critical_update.link": "詳細", @@ -514,7 +529,15 @@ "poll_button.add_poll": "アンケートを追加", "poll_button.remove_poll": "アンケートを削除", "privacy.change": "公開範囲を変更", + "privacy.direct.long": "本文で指定した相手のみ", + "privacy.direct.short": "特定の人", + "privacy.private.long": "フォロワーのみ", + "privacy.private.short": "フォロワー", + "privacy.public.long": "すべての人 (Mastodon以外も含む)", "privacy.public.short": "公開", + "privacy.unlisted.additional": "「公開」とほとんど同じですが、リアルタイムフィードやハッシュタグ、探索機能、Mastodon検索などに投稿が表示されない点で「公開」と異なります。また、アカウント設定で投稿の検索や表示を許可している場合でも、この公開範囲を設定した投稿は前述の機能には表示されません。", + "privacy.unlisted.long": "より表示機会の少ない公開", + "privacy.unlisted.short": "ひかえめな公開", "privacy_policy.last_updated": "{date}に更新", "privacy_policy.title": "プライバシーポリシー", "recommended": "おすすめ", @@ -532,7 +555,9 @@ "relative_time.minutes": "{number}分前", "relative_time.seconds": "{number}秒前", "relative_time.today": "今日", + "reply_indicator.attachments": "{count, plural, other {#件のメディア}}", "reply_indicator.cancel": "キャンセル", + "reply_indicator.poll": "アンケート", "report.block": "ブロック", "report.block_explanation": "相手の投稿が表示されなくなります。相手はあなたの投稿を見ることやフォローすることができません。相手はブロックされていることがわかります。", "report.categories.legal": "法令違反", diff --git a/app/javascript/mastodon/locales/kab.json b/app/javascript/mastodon/locales/kab.json index d9388c7048..c45543a803 100644 --- a/app/javascript/mastodon/locales/kab.json +++ b/app/javascript/mastodon/locales/kab.json @@ -11,18 +11,23 @@ "account.blocked": "Yettusewḥel", "account.browse_more_on_origin_server": "Snirem ugar deg umeɣnu aneẓli", "account.cancel_follow_request": "Withdraw follow request", + "account.copy": "Nɣel assaɣ ɣer umaɣnu", "account.disable_notifications": "Ḥbes ur iyi-d-ttazen ara ilɣa mi ara d-isuffeɣ @{name}", "account.domain_blocked": "Taɣult yeffren", "account.edit_profile": "Ẓreg amaɣnu", "account.enable_notifications": "Azen-iyi-d ilɣa mi ara d-isuffeɣ @{name}", "account.endorse": "Welleh fell-as deg umaɣnu-inek", + "account.featured_tags.last_status_never": "Ulac tisuffaɣ", "account.follow": "Ḍfer", "account.followers": "Imeḍfaren", "account.followers.empty": "Ar tura, ulac yiwen i yeṭṭafaṛen amseqdac-agi.", "account.followers_counter": "{count, plural, one {{count} n umeḍfar} other {{count} n imeḍfaren}}", + "account.following": "Yeṭṭafaṛ", "account.following_counter": "{count, plural, one {{counter} yettwaḍfaren} other {{counter} yettwaḍfaren}}", "account.follows.empty": "Ar tura, amseqdac-agi ur yeṭṭafaṛ yiwen.", + "account.go_to_profile": "Ddu ɣer umaɣnu", "account.hide_reblogs": "Ffer ayen i ibeṭṭu @{name}", + "account.joined_short": "Izeddi da", "account.link_verified_on": "Taɣara n useɣwen-a tettwasenqed ass n {date}", "account.locked_info": "Amiḍan-agi uslig isekweṛ. D bab-is kan i izemren ad yeǧǧ, s ufus-is, win ara t-iḍefṛen.", "account.media": "Timidyatin", @@ -35,6 +40,7 @@ "account.posts_with_replies": "Tisuffaɣ d tririyin", "account.report": "Cetki ɣef @{name}", "account.requested": "Di laɛḍil ad yettwaqbel. Ssit i wakken ad yefsex usuter n uḍfar", + "account.requested_follow": "{name} yessuter ad k-yeḍfer", "account.share": "Bḍu amaɣnu n @{name}", "account.show_reblogs": "Ssken-d inebḍa n @{name}", "account.statuses_counter": "{count, plural, one {{counter} n tsuffeɣt} other {{counter} n tsuffaɣ}}", @@ -53,7 +59,7 @@ "alert.unexpected.title": "Ayhuh!", "announcement.announcement": "Ulɣu", "audio.hide": "Ffer amesli", - "boost_modal.combo": "Tzemreḍ ad tetekkiḍ ɣef {combo} akken ad tessurfeḍ aya tikelt-nniḍen", + "boost_modal.combo": "Tzemreḍ ad tsiteḍ ɣef {combo} akken ad tzegleḍ aya tikelt i d-iteddun", "bundle_column_error.copy_stacktrace": "Nɣel tuccḍa n uneqqis", "bundle_column_error.error.title": "Uh, ala !", "bundle_column_error.network.title": "Tuccḍa deg uẓeṭṭa", @@ -64,11 +70,13 @@ "bundle_modal_error.message": "Tella-d kra n tuccḍa mi d-yettali ugbur-agi.", "bundle_modal_error.retry": "Ɛreḍ tikelt-nniḍen", "closed_registrations_modal.find_another_server": "Aff-d aqeddac nniḍen", - "column.about": "Γef", + "closed_registrations_modal.title": "Ajerred deg Masṭudun", + "column.about": "Ɣef", "column.blocks": "Imiḍanen yettusḥebsen", "column.bookmarks": "Ticraḍ", "column.community": "Tasuddemt tadigant", - "column.directory": "Inig deg imaɣnuten", + "column.direct": "Tabdarin tusligin", + "column.directory": "Inig deg imeɣna", "column.domain_blocks": "Taɣulin yeffren", "column.favourites": "Imenyafen", "column.follow_requests": "Isuturen n teḍfeṛt", @@ -76,7 +84,7 @@ "column.lists": "Tibdarin", "column.mutes": "Imiḍanen yettwasgugmen", "column.notifications": "Tilɣa", - "column.pins": "Tijewwaqin yettwasenṭḍen", + "column.pins": "Tisuffaɣ yettwasenṭḍen", "column.public": "Tasuddemt tamatut", "column_back_button.label": "Tuɣalin", "column_header.hide_settings": "Ffer iɣewwaṛen", @@ -87,31 +95,39 @@ "column_header.unpin": "Kkes asenteḍ", "column_subheading.settings": "Iɣewwaṛen", "community.column_settings.local_only": "Adigan kan", - "community.column_settings.media_only": "Allal n teywalt kan", + "community.column_settings.media_only": "Imidyaten kan", "community.column_settings.remote_only": "Anmeggag kan", "compose.language.change": "Beddel tutlayt", "compose.language.search": "Nadi tutlayin …", "compose.published.open": "Ldi", + "compose.saved.body": "Tettwasekles tsuffeɣt.", "compose_form.direct_message_warning_learn_more": "Issin ugar", - "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.", - "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.", + "compose_form.encryption_warning": "", + "compose_form.hashtag_warning": "", "compose_form.lock_disclaimer": "Amiḍan-ik·im ur yelli ara {locked}. Menwala yezmer ad k·kem-yeḍfeṛ akken ad iẓer acu tbeṭṭuḍ akked yimeḍfaṛen-ik·im.", "compose_form.lock_disclaimer.lock": "yettwacekkel", "compose_form.placeholder": "D acu i itezzin deg wallaɣ?", "compose_form.poll.duration": "Tanzagt n tefrant", - "compose_form.publish_form": "Suffeɣ", + "compose_form.poll.multiple": "Aṭas n ufran", + "compose_form.poll.option_placeholder": "Taxtiṛt {number}", + "compose_form.poll.single": "Fren yiwen", + "compose_form.publish": "Suffeɣ", + "compose_form.publish_form": "Tasuffeɣt tamaynut", + "compose_form.reply": "Err", + "compose_form.save_changes": "Leqqem", "compose_form.spoiler.marked": "Kkes aḍris yettwaffren deffir n walɣu", "compose_form.spoiler.unmarked": "Rnu aḍris yettwaffren deffir n walɣu", "confirmation_modal.cancel": "Sefsex", "confirmations.block.block_and_report": "Sewḥel & sewɛed", "confirmations.block.confirm": "Sewḥel", - "confirmations.block.message": "Tebγiḍ s tidet ad tesḥebseḍ {name}?", + "confirmations.block.message": "Tebɣiḍ s tidet ad tesḥebseḍ {name}?", "confirmations.delete.confirm": "Kkes", "confirmations.delete.message": "Tebɣiḍ s tidet ad tekkseḍ tasuffeɣt-agi?", "confirmations.delete_list.confirm": "Kkes", "confirmations.delete_list.message": "Tebɣiḍ s tidet ad tekkseḍ umuɣ-agi i lebda?", "confirmations.discard_edit_media.confirm": "Sefsex", "confirmations.domain_block.confirm": "Ffer taɣult meṛṛa", + "confirmations.edit.confirm": "Ẓreg", "confirmations.logout.confirm": "Ffeɣ", "confirmations.logout.message": "D tidet tebɣiḍ ad teffɣeḍ?", "confirmations.mute.confirm": "Sgugem", @@ -131,12 +147,13 @@ "directory.local": "Seg {domain} kan", "directory.new_arrivals": "Imaynuten id yewḍen", "directory.recently_active": "Yermed xas melmi kan", - "disabled_account_banner.account_settings": "Iγewwaṛen n umiḍan", + "disabled_account_banner.account_settings": "Iɣewwaṛen n umiḍan", "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.", "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.", "embed.instructions": "Ẓẓu addad-agi deg usmel-inek s wenγal n tangalt yellan sdaw-agi.", "embed.preview": "Akka ara d-iban:", "emoji_button.activity": "Aqeddic", + "emoji_button.clear": "Sfeḍ", "emoji_button.custom": "Udmawan", "emoji_button.flags": "Innayen", "emoji_button.food": "Tegwella & Tissit", @@ -151,10 +168,10 @@ "emoji_button.symbols": "Izamulen", "emoji_button.travel": "Imeḍqan d Yinigen", "empty_column.account_suspended": "Amiḍan yettwaḥbas", - "empty_column.account_timeline": "Ulac tijewwaqin dagi!", + "empty_column.account_timeline": "Ulac tisuffaɣ da !", "empty_column.account_unavailable": "Ur nufi ara amaɣnu-ayi", "empty_column.blocks": "Ur tesḥebseḍ ula yiwen n umseqdac ar tura.", - "empty_column.bookmarked_statuses": "Ulac tijewwaqin i terniḍ ɣer yismenyifen-ik ar tura. Ticki terniḍ yiwet, ad d-tettwasken da.", + "empty_column.bookmarked_statuses": "Ulac kra n tsuffeɣt i terniḍ ɣer yismenyifen-ik·im ar tura. Ticki terniḍ yiwet, ad d-tettwasken da.", "empty_column.community": "Tasuddemt tazayezt tadigant n yisallen d tilemt. Aru ihi kra akken ad tt-teččareḍ!", "empty_column.domain_blocks": "Ulac kra n taɣult yettwaffren ar tura.", "empty_column.follow_requests": "Ulac ɣur-k ula yiwen n usuter n teḍfeṛt. Ticki teṭṭfeḍ-d yiwen ad d-yettwasken da.", @@ -172,17 +189,22 @@ "explore.suggested_follows": "Imdanen", "explore.title": "Snirem", "explore.trending_links": "Isallen", - "explore.trending_statuses": "Tisuffiɣin", + "explore.trending_statuses": "Tisuffaɣ", "explore.trending_tags": "Ihacṭagen", + "filter_modal.added.review_and_configure_title": "Iɣewwaṛen n imzizdig", "filter_modal.added.settings_link": "asebter n yiɣewwaṛen", "filter_modal.select_filter.prompt_new": "Taggayt tamaynutt : {name}", "filter_modal.select_filter.search": "Nadi neɣ snulfu-d", "firehose.all": "Akk", "firehose.local": "Deg uqeddac-ayi", + "firehose.remote": "Iqeddacen nniḍen", "follow_request.authorize": "Ssireg", "follow_request.reject": "Agi", - "footer.about": "Γef", - "footer.directory": "Akaram n imaγnuten", + "follow_suggestions.dismiss": "Ur ttɛawad ara ad t-id-sekneṭ", + "follow_suggestions.who_to_follow": "Menhu ara ḍefṛeḍ", + "followed_tags": "Ihacṭagen yettwaḍfaren", + "footer.about": "Ɣef", + "footer.directory": "Akaram n imeɣna", "footer.get_app": "Awi-d asnas", "footer.invite": "Ɛreḍ-d kra n yimdanen", "footer.keyboard_shortcuts": "Inegzumen n unasiw", @@ -199,13 +221,19 @@ "hashtag.column_settings.tag_mode.any": "Yiwen seg-sen", "hashtag.column_settings.tag_mode.none": "Yiwen ala seg-sen", "hashtag.column_settings.tag_toggle": "Glu-d s yihacṭagen imerna i ujgu-agi", + "hashtag.counter_by_uses": "{count, plural, one {{counter} n tsuffeɣt} other {{counter} n tsuffaɣ}}", + "hashtag.counter_by_uses_today": "{count, plural, one {{counter} n tsuffeɣt} other {{counter} n tsuffaɣ}} assa", "hashtag.follow": "Ḍfeṛ ahacṭag", "home.column_settings.basic": "Igejdanen", "home.column_settings.show_reblogs": "Ssken-d beṭṭu", "home.column_settings.show_replies": "Ssken-d tiririyin", "home.hide_announcements": "Ffer ulɣuyen", + "home.pending_critical_update.body": "Ma ulac aɣilif, leqqem aqeddac-ik Mastodon akken kan tzemreḍ !", "home.show_announcements": "Ssken-d ulɣuyen", + "interaction_modal.no_account_yet": "Ulac-ik·ikem deg Maṣṭudun?", + "interaction_modal.on_another_server": "Deg uqeddac nniḍen", "interaction_modal.on_this_server": "Deg uqeddac-ayi", + "interaction_modal.sign_in": "Ur tekcimeḍ ara ɣer uqeddac-a. Anda yella umiḍan-ik·im ?", "interaction_modal.title.follow": "Ḍfer {name}", "intervals.full.days": "{number, plural, one {# n wass} other {# n wussan}}", "intervals.full.hours": "{number, plural, one {# n usarag} other {# n yesragen}}", @@ -245,8 +273,8 @@ "lightbox.close": "Mdel", "lightbox.compress": "Ḥemmeẓ tamnaḍt n uskan n tugna", "lightbox.expand": "Simeɣer tamnaḍt n uskan n tugna", - "lightbox.next": "Γer zdat", - "lightbox.previous": "Γer deffir", + "lightbox.next": "Ɣer zdat", + "lightbox.previous": "Ɣer deffir", "link_preview.author": "S-ɣur {name}", "lists.account.add": "Rnu ɣer tebdart", "lists.account.remove": "Kkes seg tebdart", @@ -262,11 +290,12 @@ "lists.search": "Nadi gar yemdanen i teṭṭafaṛeḍ", "lists.subheading": "Tibdarin-ik·im", "load_pending": "{count, plural, one {# n uferdis amaynut} other {# n yiferdisen imaynuten}}", - "media_gallery.toggle_visible": "Ffer {number, plural, one {tugna} other {tugniwin}}", + "loading_indicator.label": "Yessalay-d …", + "media_gallery.toggle_visible": "{number, plural, one {Ffer tugna} other {Ffer tugniwin}}", "mute_modal.duration": "Tanzagt", "mute_modal.hide_notifications": "Tebɣiḍ ad teffreḍ talɣutin n umseqdac-a?", "mute_modal.indefinite": "Ur yettwasbadu ara", - "navigation_bar.about": "Γef", + "navigation_bar.about": "Ɣef", "navigation_bar.blocks": "Imseqdacen yettusḥebsen", "navigation_bar.bookmarks": "Ticraḍ", "navigation_bar.community_timeline": "Tasuddemt tadigant", @@ -277,18 +306,19 @@ "navigation_bar.favourites": "Imenyafen", "navigation_bar.filters": "Awalen i yettwasgugmen", "navigation_bar.follow_requests": "Isuturen n teḍfeṛt", + "navigation_bar.followed_tags": "Ihacṭagen yettwaḍfaren", "navigation_bar.follows_and_followers": "Imeḍfaṛen akked wid i teṭṭafaṛeḍ", "navigation_bar.lists": "Tibdarin", "navigation_bar.logout": "Ffeɣ", "navigation_bar.mutes": "Iseqdacen yettwasusmen", "navigation_bar.personal": "Udmawan", - "navigation_bar.pins": "Tijewwiqin yettwasentḍen", + "navigation_bar.pins": "Tisuffaɣ yettwasenṭḍen", "navigation_bar.preferences": "Imenyafen", "navigation_bar.public_timeline": "Tasuddemt tazayezt tamatut", "navigation_bar.search": "Nadi", "navigation_bar.security": "Taɣellist", "not_signed_in_indicator.not_signed_in": "You need to sign in to access this resource.", - "notification.follow": "{name} yeṭṭafaṛ-ik", + "notification.follow": "iṭṭafar-ik·em-id {name}", "notification.follow_request": "{name} yessuter-d ad k-yeḍfeṛ", "notification.mention": "{name} yebder-ik-id", "notification.own_poll": "Tafrant-ik·im tfuk", @@ -309,7 +339,7 @@ "notifications.column_settings.reblog": "Seǧhed:", "notifications.column_settings.show": "Ssken-d tilɣa deg ujgu", "notifications.column_settings.sound": "Rmed imesli", - "notifications.column_settings.status": "Tiẓenẓunin timaynutin:", + "notifications.column_settings.status": "Tisuffaɣ timaynutin :", "notifications.filter.all": "Akk", "notifications.filter.boosts": "Seǧhed", "notifications.filter.favourites": "Imenyafen", @@ -323,22 +353,29 @@ "notifications.permission_denied": "D awezɣi ad yili wermad n yilɣa n tnarit axateṛ turagt tettwagdel.", "notifications_permission_banner.enable": "Rmed talɣutin n tnarit", "notifications_permission_banner.title": "Ur zeggel acemma", + "onboarding.action.back": "Tuɣalin ɣer deffir", + "onboarding.actions.back": "Tuɣalin ɣer deffir", "onboarding.actions.go_to_explore": "See what's trending", "onboarding.actions.go_to_home": "Go to your home feed", "onboarding.compose.template": "Azul a #Mastodon!", "onboarding.follows.lead": "You curate your own home feed. The more people you follow, the more active and interesting it will be. These profiles may be a good starting point—you can always unfollow them later!", "onboarding.follows.title": "Popular on Mastodon", + "onboarding.profile.display_name": "Isem ara d-yettwaskanen", + "onboarding.share.message": "Nekk d {username} deg #Mastodon! Ḍfer iyi-d sya {url}", + "onboarding.share.title": "Bḍu amaɣnu-inek·inem", "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": "Tseggmeḍ-tt !", "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.", + "onboarding.steps.publish_status.title": "Aru tasuffeɣt-inek·inem tamezwarutt", "onboarding.steps.setup_profile.body": "Others are more likely to interact with you with a filled out profile.", "onboarding.steps.setup_profile.title": "Customize your profile", "onboarding.steps.share_profile.body": "Let your friends know how to find you on Mastodon!", "onboarding.steps.share_profile.title": "Share your profile", "picture_in_picture.restore": "Err-it amkan-is", - "poll.closed": "Ifukk", + "poll.closed": "Tfukk", "poll.refresh": "Smiren", "poll.total_people": "{count, plural, one {# n wemdan} other {# n yemdanen}}", "poll.total_votes": "{count, plural, one {# n udɣaṛ} other {# n yedɣaṛen}}", @@ -347,6 +384,10 @@ "poll_button.add_poll": "Rnu asenqed", "poll_button.remove_poll": "Kkes asenqed", "privacy.change": "Seggem tabaḍnit n yizen", + "privacy.direct.long": "Wid akk i d-yettwabdaren deg tuffeɣt", + "privacy.private.long": "Ala wid i k-yeṭṭafaṛen", + "privacy.private.short": "Imeḍfaren", + "privacy.public.long": "Kra n win yellan deg Masṭudun neɣ berra-s", "privacy.public.short": "Azayez", "privacy_policy.title": "Tasertit tabaḍnit", "refresh": "Smiren", @@ -363,12 +404,14 @@ "report.block": "Sewḥel", "report.categories.other": "Tiyyaḍ", "report.categories.spam": "Aspam", - "report.category.title_account": "ameγnu", + "report.category.title_account": "ameɣnu", "report.category.title_status": "tasuffeɣt", "report.close": "Immed", "report.forward": "Bren-it ɣeṛ {target}", "report.mute": "Sgugem", + "report.next": "Uḍfiṛ", "report.placeholder": "Iwenniten-nniḍen", + "report.reasons.dislike": "Ur t-ḥemmleɣ ara", "report.reasons.spam": "D aspam", "report.submit": "Azen", "report.target": "Mmel {target}", @@ -377,10 +420,17 @@ "report_notification.categories.other": "Ayen nniḍen", "report_notification.categories.spam": "Aspam", "report_notification.open": "Ldi aneqqis", + "search.no_recent_searches": "Ulac inadiyen ineggura", "search.placeholder": "Nadi", "search.search_or_paste": "Nadi neɣ senṭeḍ URL", + "search_popout.language_code": "Tangalt ISO n tutlayt", + "search_popout.options": "Iwellihen n unadi", + "search_popout.recent": "Inadiyen ineggura", + "search_popout.user": "amseqdac", + "search_results.accounts": "Imeɣna", "search_results.all": "Akk", "search_results.hashtags": "Ihacṭagen", + "search_results.see_all": "Wali-ten akk", "search_results.statuses": "Tisuffaɣ", "search_results.title": "Anadi ɣef {q}", "server_banner.administered_by": "Yettwadbel sɣur :", @@ -400,8 +450,9 @@ "status.edited_x_times": "Tettwaẓreg {count, plural, one {{count} n tikkelt} other {{count} n tikkal}}", "status.embed": "Seddu", "status.filtered": "Yettwasizdeg", + "status.hide": "Ffer tasuffeɣt", "status.load_more": "Sali ugar", - "status.media_hidden": "Taɣwalt tettwaffer", + "status.media_hidden": "Amidya yettwaffer", "status.mention": "Bder-d @{name}", "status.more": "Ugar", "status.mute": "Sussem @{name}", @@ -421,7 +472,7 @@ "status.sensitive_warning": "Agbur amḥulfu", "status.share": "Bḍu", "status.show_less": "Ssken-d drus", - "status.show_less_all": "Semẓi akk tisuffγin", + "status.show_less_all": "Semẓi akk tisuffɣin", "status.show_more": "Ssken-d ugar", "status.show_more_all": "Ẓerr ugar lebda", "status.title.with_attachments": "{user} posted {attachmentCount, plural, one {an attachment} other {# attachments}}", @@ -440,8 +491,8 @@ "timeline_hint.remote_resource_not_displayed": "{resource} seg yiqeddacen-nniḍen ur d-ttwaskanent ara.", "timeline_hint.resources.followers": "Imeḍfaṛen", "timeline_hint.resources.follows": "T·Yeṭafaṛ", - "timeline_hint.resources.statuses": "Tijewwaqin tiqdimin", - "trends.counter_by_accounts": "{count, plural, one {{counter} person} other {{counter} people}} in the past {days, plural, one {day} other {# days}}", + "timeline_hint.resources.statuses": "Tisuffaɣ tiqdimin", + "trends.counter_by_accounts": "{count, plural, one {{counter} n wemdan} other {{counter} n medden}} deg {days, plural, one {ass} other {{days} n wussan}} iɛeddan", "trends.trending_now": "Ayen mucaɛen tura", "ui.beforeunload": "Arewway-ik·im ad iruḥ ma yella tefeɣ-d deg Maṣṭudun.", "units.short.billion": "{count}B", @@ -461,7 +512,7 @@ "upload_modal.choose_image": "Fren tugna", "upload_modal.description_placeholder": "Aberraɣ arurad ineggez nnig n uqjun amuṭṭis", "upload_modal.detect_text": "Sefru-d aḍris seg tugna", - "upload_modal.edit_media": "Ẓreg taɣwalt", + "upload_modal.edit_media": "Ẓreg amidya", "upload_modal.preparing_ocr": "Aheyyi n OCR…", "upload_modal.preview_label": "Taskant ({ratio})", "upload_progress.label": "Asali iteddu...", diff --git a/app/javascript/mastodon/locales/ko.json b/app/javascript/mastodon/locales/ko.json index eae7f8faea..d9192e5c61 100644 --- a/app/javascript/mastodon/locales/ko.json +++ b/app/javascript/mastodon/locales/ko.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "이 계정은 {locked}상태가 아닙니다. 누구나 이 계정을 팔로우 하여 팔로워 전용의 게시물을 볼 수 있습니다.", "compose_form.lock_disclaimer.lock": "비공개", "compose_form.placeholder": "지금 무슨 생각을 하고 있나요?", - "compose_form.poll.add_option": "항목 추가", "compose_form.poll.duration": "투표 기간", "compose_form.poll.multiple": "다중 선택", "compose_form.poll.option_placeholder": "{option}번째 항목", - "compose_form.poll.remove_option": "이 항목 삭제", "compose_form.poll.single": "단일 선택", "compose_form.poll.switch_to_multiple": "다중 선택이 가능한 투표로 변경", "compose_form.poll.switch_to_single": "단일 선택 투표로 변경", @@ -160,7 +158,7 @@ "compose_form.save_changes": "수정", "compose_form.spoiler.marked": "열람주의 제거", "compose_form.spoiler.unmarked": "열람 주의 문구 추가", - "compose_form.spoiler_placeholder": "열람 주의 (옵션)", + "compose_form.spoiler_placeholder": "내용 경고 (선택사항)", "confirmation_modal.cancel": "취소", "confirmations.block.block_and_report": "차단하고 신고하기", "confirmations.block.confirm": "차단", @@ -214,7 +212,7 @@ "emoji_button.custom": "사용자 지정", "emoji_button.flags": "깃발", "emoji_button.food": "음식과 마실것", - "emoji_button.label": "에모지를 추가", + "emoji_button.label": "에모지 추가", "emoji_button.nature": "자연", "emoji_button.not_found": "해당하는 에모지가 없습니다", "emoji_button.objects": "물건", @@ -279,6 +277,17 @@ "follow_request.authorize": "허가", "follow_request.reject": "거부", "follow_requests.unlocked_explanation": "귀하의 계정이 잠긴 계정이 아닐지라도, {domain} 스태프는 이 계정들의 팔로우 요청을 수동으로 처리해 주시면 좋겠다고 생각했습니다.", + "follow_suggestions.curated_suggestion": "스태프의 추천", + "follow_suggestions.dismiss": "다시 보지 않기", + "follow_suggestions.hints.featured": "이 프로필은 {domain} 팀이 손수 선택했습니다.", + "follow_suggestions.hints.friends_of_friends": "이 프로필은 내가 팔로우 하는 사람들에게서 유명합니다.", + "follow_suggestions.hints.most_followed": "이 프로필은 {domain}에서 가장 많이 팔로우 된 사람들 중 하나입니다.", + "follow_suggestions.hints.most_interactions": "이 프로필은 최근 {domain}에서 많은 관심을 받았습니다.", + "follow_suggestions.hints.similar_to_recently_followed": "이 프로필은 내가 최근에 팔로우 한 프로필들과 유사합니다.", + "follow_suggestions.personalized_suggestion": "개인화된 추천", + "follow_suggestions.popular_suggestion": "인기있는 추천", + "follow_suggestions.view_all": "모두 보기", + "follow_suggestions.who_to_follow": "팔로우할 만한 사람", "followed_tags": "팔로우 중인 해시태그", "footer.about": "정보", "footer.directory": "프로필 책자", @@ -305,13 +314,9 @@ "hashtag.follow": "팔로우", "hashtag.unfollow": "팔로우 해제", "hashtags.and_other": "…그리고 {count, plural,other {#개 더}}", - "home.actions.go_to_explore": "무엇이 유행인지 보기", - "home.actions.go_to_suggestions": "팔로우할 사람 찾기", "home.column_settings.basic": "기본", "home.column_settings.show_reblogs": "부스트 표시", "home.column_settings.show_replies": "답글 표시", - "home.explore_prompt.body": "홈 피드에는 내가 팔로우한 해시태그 그리고 팔로우한 사람과 부스트가 함께 나타납니다. 너무 고요하게 느껴진다면, 다음 것들을 살펴볼 수 있습니다.", - "home.explore_prompt.title": "이곳은 마스토돈의 내 본거지입니다.", "home.hide_announcements": "공지사항 숨기기", "home.pending_critical_update.body": "서둘러 마스토돈 서버를 업데이트 하세요!", "home.pending_critical_update.link": "업데이트 보기", @@ -477,7 +482,7 @@ "onboarding.actions.go_to_explore": "무엇이 유행인지 보러 가기", "onboarding.actions.go_to_home": "홈 피드로 가기", "onboarding.compose.template": "안녕 #마스토돈!", - "onboarding.follows.empty": "안타깝지만 아직은 아무 것도 보여드릴 수 없습니다. 검색을 이용하거나 발견하기 페이지에서 팔로우 할 사람을 찾을 수 있습니다. 아니면 잠시 후에 다시 시도하세요.", + "onboarding.follows.empty": "안타깝지만 아직은 아무 것도 보여드릴 수 없습니다. 검색을 이용하거나 둘러보기 페이지에서 팔로우 할 사람을 찾을 수 있습니다. 아니면 잠시 후에 다시 시도하세요.", "onboarding.follows.lead": "홈 피드는 마스토돈을 경험하는 주된 경로입니다. 더 많은 사람들을 팔로우 할수록 더 활발하고 흥미로워질 것입니다. 여기 시작을 위한 몇몇 추천을 드립니다:", "onboarding.follows.title": "내게 맞는 홈 피드 꾸미기", "onboarding.profile.discoverable": "내 프로필을 발견 가능하도록 설정", @@ -526,12 +531,12 @@ "privacy.change": "게시물의 프라이버시 설정을 변경", "privacy.direct.long": "이 게시물에서 언급된 모두", "privacy.direct.short": "특정 인물", - "privacy.private.long": "내 팔로워들에게만", + "privacy.private.long": "내 팔로워만", "privacy.private.short": "팔로워", "privacy.public.long": "마스토돈 내외 모두", "privacy.public.short": "공개", - "privacy.unlisted.additional": "공개와 똑같지만 게시물이 라이브 피드나 해시태그, 발견하기, (계정 설정에서 허용했더라도) 마스토돈 검색에서 제외됩니다.", - "privacy.unlisted.long": "더 적은 알고리즘 팡파레", + "privacy.unlisted.additional": "공개와 똑같지만 게시물이 실시간 피드나 해시태그, 둘러보기, (계정 설정에서 허용했더라도) 마스토돈 검색에서 제외됩니다.", + "privacy.unlisted.long": "더 적은 알고리즘 팡파르", "privacy.unlisted.short": "조용한 공개", "privacy_policy.last_updated": "{date}에 마지막으로 업데이트됨", "privacy_policy.title": "개인정보처리방침", diff --git a/app/javascript/mastodon/locales/lad.json b/app/javascript/mastodon/locales/lad.json index ba99f5cd30..91540d58ca 100644 --- a/app/javascript/mastodon/locales/lad.json +++ b/app/javascript/mastodon/locales/lad.json @@ -4,16 +4,16 @@ "about.disclaimer": "Mastodon es un programario libero, kon kodiche avierto i una marka komersiala de Mastodon gGmbH.", "about.domain_blocks.no_reason_available": "Razon no desponivle", "about.domain_blocks.preamble": "Mastodon djeneralmente te permete ver kontenido de i enteraktuar kon utilizadores de kualseker otro sirvidor en el fediverso. Estas son las eksepsiones en este sirvidor en partikolar.", - "about.domain_blocks.silenced.explanation": "\"Djeneralmente no veras profiles i kontenido de este sirvidor, salvo ke eksplisitamente lo bushkes o sigas algun kuento de el.", + "about.domain_blocks.silenced.explanation": "Djeneralmente no veras profiles i kontenido de este sirvidor, salvo ke eksplisitamente lo bushkes o sigas algun kuento de el.", "about.domain_blocks.silenced.title": "Limitado", - "about.domain_blocks.suspended.explanation": "Dingunos datos de este sirvidor sera prosesado, magazinado o enterkambiado kon este sirvidor. Enteraksyon o komunikasyon kon sus utilizadores sera imposivle.", + "about.domain_blocks.suspended.explanation": "Dingunos datos de este sirvidor seran prosesados, magazinados o enterkambiados. Enteraksyon o komunikasyon kon sus utilizadores sera imposivle.", "about.domain_blocks.suspended.title": "Suspendido", "about.not_available": "Esta enformasyon no esta desponivle en este sirvidor.", "about.powered_by": "Redes sosyalas desentralizadas kon uzo de {mastodon}", "about.rules": "Reglas del sirvidor", "account.account_note_header": "Nota", "account.add_or_remove_from_list": "Adjusta a o kita de listas", - "account.badges.bot": "Bot", + "account.badges.bot": "Otomatizado", "account.badges.group": "Grupo", "account.block": "Bloka @{name}", "account.block_domain": "Bloka el domeno {domain}", @@ -23,13 +23,13 @@ "account.cancel_follow_request": "Anula solisitud de segir", "account.copy": "Kopia atadijo de profil", "account.direct": "Enmenta a @{name} en privado", - "account.disable_notifications": "No me avizes mas sovre publikasyones de @{name}", + "account.disable_notifications": "Desha de avizarme sovre publikasyones de @{name}", "account.domain_blocked": "Domeno blokado", "account.edit_profile": "Edita profil", "account.enable_notifications": "Avizame kuando @{name} publike", "account.endorse": "Avalia en profil", "account.featured_tags.last_status_at": "Ultima publikasyon de {date}", - "account.featured_tags.last_status_never": "\"No ay publikasyones", + "account.featured_tags.last_status_never": "No ay publikasyones", "account.featured_tags.title": "Etiketas avaliadas de {name}", "account.follow": "Sige", "account.follow_back": "Sige tamyen", @@ -38,19 +38,19 @@ "account.followers_counter": "{count, plural, one {{counter} suivante} other {{counter} suivantes}}", "account.following": "Sigiendo", "account.following_counter": "{count, plural, other {Sigiendo a {counter}}}", - "account.follows.empty": "Este utilizador ainda no sige a ningun.", + "account.follows.empty": "Este utilizador ainda no sige a dingun.", "account.go_to_profile": "Va al profil", "account.hide_reblogs": "Eskonde repartajasyones de @{name}", "account.in_memoriam": "De bendicha memoria.", "account.joined_short": "Adjunto", - "account.languages": "Troka linguas suskrividas", + "account.languages": "Troka linguas abonadas", "account.link_verified_on": "La propriedad de este atadijo fue verifikada el {date}", "account.locked_info": "El estado de privasita de este konto esta konfigurado komo serado. El proprietario reviza manualmente kien le puede segir.", "account.media": "Multimedia", "account.mention": "Enmenta a @{name}", "account.moved_to": "{name} tiene endikado ke su muevo kuento agora es:", "account.mute": "Silensia a @{name}", - "account.mute_notifications_short": "Silensia avizos de @{name}", + "account.mute_notifications_short": "Silensia avizos", "account.mute_short": "Silensia", "account.muted": "Silensiado", "account.mutual": "Mutual", @@ -64,7 +64,7 @@ "account.share": "Partaja el profil de @{name}", "account.show_reblogs": "Amostra repartajasyones de @{name}", "account.statuses_counter": "{count, plural, one {{counter} publikasyon} other {{counter} publikasyones}}", - "account.unblock": "Dezbloka @{name}", + "account.unblock": "Dezbloka a @{name}", "account.unblock_domain": "Dezbloka domeno {domain}", "account.unblock_short": "Dezbloka", "account.unendorse": "No avalia en profil", @@ -79,8 +79,8 @@ "admin.dashboard.retention.cohort": "Mez de enrejistrasyon", "admin.dashboard.retention.cohort_size": "Muevos utilizadores", "admin.impact_report.instance_accounts": "Profiles de kuentos esto efasaria", - "admin.impact_report.instance_followers": "Suivantes a los kualos nuestros utilizadores perderian", - "admin.impact_report.instance_follows": "Suivantes a los kualos sus utilizadores perderian", + "admin.impact_report.instance_followers": "Suivantes a los kualos nuestros utilizadores pedrerian", + "admin.impact_report.instance_follows": "Suivantes a los kualos sus utilizadores pedrerian", "admin.impact_report.title": "Rezumen de impakto", "alert.rate_limited.message": "Por favor aprova dempues de {retry_time, time, medium}.", "alert.rate_limited.title": "Trafiko limitado", @@ -88,7 +88,7 @@ "alert.unexpected.title": "Atyo!", "announcement.announcement": "Pregon", "attachments_list.unprocessed": "(no prosesado)", - "audio.hide": "Eskonder audio", + "audio.hide": "Eskonde audio", "boost_modal.combo": "Puedes klikar {combo} para ometer esto la proksima vez", "bundle_column_error.copy_stacktrace": "Kopia el raporto de yerro", "bundle_column_error.error.body": "La pajina solisitada no pudo ser renderada. Podria ser por un yerro en muestro kodiche o un problem de kompatibilita kon el navigador.", @@ -110,7 +110,7 @@ "column.about": "Sovre mozotros", "column.blocks": "Utilizadores blokados", "column.bookmarks": "Markadores", - "column.community": "Linya de tiempo lokala", + "column.community": "Linya lokala", "column.direct": "Enmentaduras privadas", "column.directory": "Eksplora profiles", "column.domain_blocks": "Domenos blokados", @@ -122,7 +122,7 @@ "column.mutes": "Utilizadores silensiados", "column.notifications": "Avizos", "column.pins": "Publikasyones fiksadas", - "column.public": "Linya de tiempo federada", + "column.public": "Linya federada", "column_back_button.label": "Atras", "column_header.hide_settings": "Eskonde opsyones", "column_header.moveLeft_settings": "Move kolumna a la siedra", @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "serrado", "compose_form.placeholder": "Ke haber?", "compose_form.poll.duration": "Durasion de anketa", - "compose_form.poll.switch_to_multiple": "Trokar anketa para permeter a eskojer mas ke una opsyon", - "compose_form.poll.switch_to_single": "Trokar anketa para permeter a eskojer solo una opsyon", + "compose_form.poll.multiple": "Multiples opsyones", + "compose_form.poll.option_placeholder": "Opsyon {number}", + "compose_form.poll.single": "Eskoje uno", + "compose_form.poll.switch_to_multiple": "Troka anketa para permeter a eskojer mas ke una opsyon", + "compose_form.poll.switch_to_single": "Troka anketa para permeter a eskojer solo una opsyon", + "compose_form.poll.type": "Estilo", + "compose_form.publish": "Publika", "compose_form.publish_form": "Mueva publikasyon", + "compose_form.reply": "Arisponde", + "compose_form.save_changes": "Aktualiza", "compose_form.spoiler.marked": "Kita avertensya de kontenido", "compose_form.spoiler.unmarked": "Adjusta avertensya de kontenido", + "compose_form.spoiler_placeholder": "Avertensya de kontenido (opsyonal)", "confirmation_modal.cancel": "Anula", "confirmations.block.block_and_report": "Bloka i raporta", "confirmations.block.confirm": "Bloka", @@ -166,16 +174,16 @@ "confirmations.domain_block.confirm": "Bloka domeno entero", "confirmations.domain_block.message": "Estas totalmente siguro ke keres blokar todo el domeno {domain}? En djeneral unos kuantos blokos o silensiamientos son sufisientes i preferavles. No veras kontenido de akel domeno en dinguna linya de tiempo publika ni ent tus avizos. Tus suivantes de akel domeno seran kitados.", "confirmations.edit.confirm": "Edita", - "confirmations.edit.message": "Editar agora kitara el mesaj kualo estas eskriviendo aktualmente. Estas siguro ke keres fazerlo?", + "confirmations.edit.message": "Si edites agora, kitaras el mesaj kualo estas eskriviendo aktualmente. Estas siguro ke keres fazerlo?", "confirmations.logout.confirm": "Sal", "confirmations.logout.message": "Estas siguro ke keres salir de tu kuento?", "confirmations.mute.confirm": "Silensia", "confirmations.mute.explanation": "Esto eskondera las publikasyones de este kuento i publikasyones ke lo enmentan, pero ainda les permetera segirte.", "confirmations.mute.message": "Estas siguro ke keres silensiar a {name}?", - "confirmations.redraft.confirm": "Efasar i reeskrivir", + "confirmations.redraft.confirm": "Efasa i reeskrive", "confirmations.redraft.message": "Estas siguro ke keres efasar esta publikasyon i reeskrivirla? Pedreras todos los favoritos i repartajasyones asosiados kon esta publikasyon i repuestas a eya seran guerfanadas.", "confirmations.reply.confirm": "Arisponde", - "confirmations.reply.message": "Arispondir agora kitara el mesaj kualo estas eskriviendo aktualmente. Estas siguro ke keres fazerlo?", + "confirmations.reply.message": "Si arispondas agora, kitaras el mesaj kualo estas eskriviendo aktualmente. Estas siguro ke keres fazerlo?", "confirmations.unfollow.confirm": "Desige", "confirmations.unfollow.message": "Estas siguro ke keres deshar de segir a {name}?", "conversation.delete": "Efasa konversasyon", @@ -198,13 +206,13 @@ "dismissable_banner.explore_tags": "Estas etiketas estan agora popularas en la red sosyala. Etiketas uzadas por mas djente aparesen primero.", "dismissable_banner.public_timeline": "Estas son las publikasyones publikas mas resientes de personas en la red sosyala a las kualas la djente de {domain} sige.", "embed.instructions": "Enkrusta esta publikasyon en tu sitio internetiko kopiando este kodiche.", - "embed.preview": "Ansi paresera:", + "embed.preview": "Paresera ansina:", "emoji_button.activity": "Aktivita", "emoji_button.clear": "Alimpia", "emoji_button.custom": "Personalizado", "emoji_button.flags": "Bandieras", "emoji_button.food": "Kumidas i beverajes", - "emoji_button.label": "Adjustar emoji", + "emoji_button.label": "Adjusta emoji", "emoji_button.nature": "Natura", "emoji_button.not_found": "Emojis no topados", "emoji_button.objects": "Objektos", @@ -214,7 +222,7 @@ "emoji_button.search_results": "Rizultados de bushkeda", "emoji_button.symbols": "Simbolos", "emoji_button.travel": "Viajes i lugares", - "empty_column.account_hides_collections": "Este utilizador desidio no mostrar esta enformasyon", + "empty_column.account_hides_collections": "Este utilizador desidio no amostrar esta enformasyon", "empty_column.account_suspended": "Kuento suspendido", "empty_column.account_timeline": "No ay publikasyones aki!", "empty_column.account_unavailable": "Profil no desponivle", @@ -225,9 +233,9 @@ "empty_column.domain_blocks": "Ainda no ay domenos blokados.", "empty_column.explore_statuses": "No ay dingunos trendes agora. Mira mas tadre!", "empty_column.favourited_statuses": "Ainda no tienes publikasyones favoritas. Kuando indikes ke una te plaze, se amostrara aki.", - "empty_column.favourites": "Nadie tiene indikado ke le plaze una de tus publikasyones. Kuando algun lo aga, se amostrara aki.", + "empty_column.favourites": "Dingun no tiene indikado ke le plaze una de tus publikasyones. Kuando algun lo ayga, se amostrara aki.", "empty_column.follow_requests": "No tienes dinguna solisitud de suivante. Kuando risivas una, se amostrara aki.", - "empty_column.followed_tags": "Ainda no tienes segido dinguna etiketa. Kuando lo agas, se amostraran aki.", + "empty_column.followed_tags": "Ainda no tienes segido dinguna etiketa. Kuando lo aygas, se amostraran aki.", "empty_column.hashtag": "Ainda no ay niente en esta etiketa.", "empty_column.home": "Tu linya de tiempo esta vaziya! Sige a mas personas para inchirla.", "empty_column.list": "Ainda no ay niente en esta lista. Kuando miembros de esta lista publiken muevas publikasyones, se amostraran aki.", @@ -236,14 +244,14 @@ "empty_column.notifications": "Ainda no tienes dingun avizo. Kuando otras personas enteraktuen kontigo, se amostraran aki.", "empty_column.public": "No ay niente aki! Eskrive algo publikamente o manualmente sige utilizadores de otros sirvidores para inchirlo", "error.unexpected_crash.explanation": "Por un yerro en muestro kodiche o un problem de kompatibilita kon el navigador, no se puede amostrar esta pajina djustamente.", - "error.unexpected_crash.explanation_addons": "No se puede amostrar esta pajina djustamente. Este yerro probavlemente fue kauzado por un komplimento del navigador o por un enstrumento de traduksion.", + "error.unexpected_crash.explanation_addons": "No se puede amostrar esta pajina djustamente. Este yerro probavlemente fue kauzado por un komplimento del navigador o por un enstrumento de traduksyon.", "error.unexpected_crash.next_steps": "Aprova arefreskar la pajina. Si esto no ayuda, es posivle ke ainda puedas kulaenar Mastodon kon otro navigador u otra aplikasyon nativa.", - "error.unexpected_crash.next_steps_addons": "Aprova inkapasitarlos i arefreskar la pajina. Si esto no ayuda, es posivle ke ainda puedas kulanear Mastodon kon otro navigador u otra aplikasyon nativa.", - "errors.unexpected_crash.copy_stacktrace": "Kopiar stacktrace al portapapeles", - "errors.unexpected_crash.report_issue": "Raportar problema", + "error.unexpected_crash.next_steps_addons": "Aprova inkapasitarlos i arefreskar la pajina. Si esto no te ayuda, es posivle ke ainda puedas kulanear Mastodon kon otro navigador u otra aplikasyon nativa.", + "errors.unexpected_crash.copy_stacktrace": "Kopia stacktrace al portapapeles", + "errors.unexpected_crash.report_issue": "Raporta problema", "explore.search_results": "Rizultados de bushkeda", "explore.suggested_follows": "Djente", - "explore.title": "Eksplorar", + "explore.title": "Eksplora", "explore.trending_links": "Haberes", "explore.trending_statuses": "Publikasyones", "explore.trending_tags": "Etiketas", @@ -259,22 +267,33 @@ "filter_modal.select_filter.context_mismatch": "no se aplika a este konteksto", "filter_modal.select_filter.expired": "kadukado", "filter_modal.select_filter.prompt_new": "Mueva kategoria: {name}", - "filter_modal.select_filter.search": "Bushkar o kriyar", - "filter_modal.select_filter.subtitle": "Kulanear una kategoria egzistente o kriya mueva", - "filter_modal.select_filter.title": "Filtrar esta publikasyon", - "filter_modal.title.status": "Filtrar una publikasyon", + "filter_modal.select_filter.search": "Bushka o kriya", + "filter_modal.select_filter.subtitle": "Kulanea una kategoria egzistente o kriya mueva", + "filter_modal.select_filter.title": "Filtra esta publikasyon", + "filter_modal.title.status": "Filtra una publikasyon", "firehose.all": "Todo", "firehose.local": "Este sirvidor", "firehose.remote": "Otros sirvidores", "follow_request.authorize": "Autoriza", "follow_request.reject": "Refuza", "follow_requests.unlocked_explanation": "Aunke tu kuento no esta serrado, la taifa de {domain} kreye ke talvez keres revizar manualmente las solisitudes de segimento de estos kuentos.", + "follow_suggestions.curated_suggestion": "Seleksyon de la taifa", + "follow_suggestions.dismiss": "No amostra mas", + "follow_suggestions.hints.featured": "Este profil tiene sido eskojido por la taifa de {domain}.", + "follow_suggestions.hints.friends_of_friends": "Este profil es popular entre las personas ke siges.", + "follow_suggestions.hints.most_followed": "Este profil es uno de los mas segidos en {domain}.", + "follow_suggestions.hints.most_interactions": "Este profil tiene resivido muncha atansion resientemente en {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Este profil es similar a otros ke tienes segido resientemente.", + "follow_suggestions.personalized_suggestion": "Sujestion personalizada", + "follow_suggestions.popular_suggestion": "Sujestion populara", + "follow_suggestions.view_all": "Ve todos", + "follow_suggestions.who_to_follow": "A ken segir", "followed_tags": "Etiketas segidas", "footer.about": "Sovre mozotros", "footer.directory": "Katalogo de profiles", "footer.get_app": "Abasha aplikasyon", - "footer.invite": "Envitar a djente", - "footer.keyboard_shortcuts": "Akortamientos de klavye", + "footer.invite": "Envita a djente", + "footer.keyboard_shortcuts": "Akortamientos de klaviatura", "footer.privacy_policy": "Politika de privasita", "footer.source_code": "Ve kodiche fuente", "footer.status": "Estado", @@ -284,24 +303,20 @@ "hashtag.column_header.tag_mode.any": "o {additional}", "hashtag.column_header.tag_mode.none": "sin {additional}", "hashtag.column_settings.select.no_options_message": "Rekomendasyones no topadas", - "hashtag.column_settings.select.placeholder": "Meter etiketas…", + "hashtag.column_settings.select.placeholder": "Mete etiketas…", "hashtag.column_settings.tag_mode.all": "Todos estos", "hashtag.column_settings.tag_mode.any": "Kualsekera de estos", "hashtag.column_settings.tag_mode.none": "Dinguno de estos", - "hashtag.column_settings.tag_toggle": "Inkluir etiketas adisionalas en esta kolumna", + "hashtag.column_settings.tag_toggle": "Inkluye etiketas adisionalas en esta kolumna", "hashtag.counter_by_accounts": "{count, plural, one {{counter} partisipante} other {{counter} partisipantes}}", "hashtag.counter_by_uses": "{count, plural, one {{counter} publikasyon} other {{counter} publikasyones}}", "hashtag.counter_by_uses_today": "{count, plural, one {{counter} publikasyon} other {{counter} publikasyones}} oy", - "hashtag.follow": "Segir etiketa", - "hashtag.unfollow": "Desegir etiketa", + "hashtag.follow": "Sige etiketa", + "hashtag.unfollow": "Desige etiketa", "hashtags.and_other": "…i {count, plural, one {}other {# mas}}", - "home.actions.go_to_explore": "Ve los trendes", - "home.actions.go_to_suggestions": "Topa a djente para segir", "home.column_settings.basic": "Opsyones bazikas", - "home.column_settings.show_reblogs": "Amostrar repartajasyones", - "home.column_settings.show_replies": "Amostrar repuestas", - "home.explore_prompt.body": "Tu linya prinsipala es una mikstura de publikasyones kon etiketas a las kualas eskojites a segir, la djente a la kuala eskojites a segir i las publikasyones ke eyos repartajan. Si esta demaziado trankila, puedes:", - "home.explore_prompt.title": "Esta es tu baza prinsipala en Mastodon.", + "home.column_settings.show_reblogs": "Amostra repartajasyones", + "home.column_settings.show_replies": "Amostra repuestas", "home.hide_announcements": "Eskonde pregones", "home.pending_critical_update.body": "Por favor aktualiza tu sirvidor de Mastodon pishin!", "home.pending_critical_update.link": "Ve aktualizasyones", @@ -337,7 +352,7 @@ "keyboard_shortcuts.favourite": "Endika ke te plaze una publikasyon", "keyboard_shortcuts.favourites": "Avre lista de favoritos", "keyboard_shortcuts.federated": "Avre linya federada", - "keyboard_shortcuts.heading": "Akortamientos de klavye", + "keyboard_shortcuts.heading": "Akortamientos de klaviatura", "keyboard_shortcuts.home": "Avre linya prinsipala", "keyboard_shortcuts.hotkey": "Klave rapido", "keyboard_shortcuts.legend": "Amostra esta lejenda", @@ -397,7 +412,7 @@ "navigation_bar.direct": "Enmentaduras privadas", "navigation_bar.discover": "Diskuvre", "navigation_bar.domain_blocks": "Domenos blokados", - "navigation_bar.explore": "Eksplorar", + "navigation_bar.explore": "Eksplora", "navigation_bar.favourites": "Te plazen", "navigation_bar.filters": "Biervos silensiados", "navigation_bar.follow_requests": "Solisitudes de segimiento", @@ -410,7 +425,7 @@ "navigation_bar.personal": "Personal", "navigation_bar.pins": "Publikasyones fiksadas", "navigation_bar.preferences": "Preferensyas", - "navigation_bar.public_timeline": "Linya de tiempo federada", + "navigation_bar.public_timeline": "Linya federada", "navigation_bar.search": "Bushka", "navigation_bar.security": "Segurita", "not_signed_in_indicator.not_signed_in": "Nesesitas konektarse kon tu kuento para akseder este rekurso.", @@ -425,7 +440,7 @@ "notification.reblog": "{name} repartajo tu publikasyon", "notification.status": "{name} publiko algo", "notification.update": "{name} edito una publikasyon", - "notifications.clear": "Efasar avizos", + "notifications.clear": "Efasa avizos", "notifications.clear_confirmation": "Estas siguro ke keres permanentemente efasar todos tus avizos?", "notifications.column_settings.admin.report": "Muveos raportos:", "notifications.column_settings.admin.sign_up": "Muevas enrejistrasyones:", @@ -441,10 +456,10 @@ "notifications.column_settings.push": "Avizos arrepushados", "notifications.column_settings.reblog": "Repartajasyones:", "notifications.column_settings.show": "Amostra en kolumna", - "notifications.column_settings.sound": "Reproduzir son", + "notifications.column_settings.sound": "Reproduse son", "notifications.column_settings.status": "Publikasyones muevas:", "notifications.column_settings.unread_notifications.category": "Avizos no meldados", - "notifications.column_settings.unread_notifications.highlight": "Avaliar avizos no meldados", + "notifications.column_settings.unread_notifications.highlight": "Avalia avizos no meldados", "notifications.column_settings.update": "Edisyones:", "notifications.filter.all": "Todos", "notifications.filter.boosts": "Repartajasyones", @@ -459,17 +474,19 @@ "notifications.permission_denied": "Avizos de ensimameza no estan desponivles porke ya se tiene refuzado el permiso", "notifications.permission_denied_alert": "\"No se pueden kapasitar los avizos de ensimameza, porke ya se tiene refuzado el permiso de navigador", "notifications.permission_required": "Avizos de ensimameza no estan desponivles porke los nesesarios permisos no tienen sido risividos.", - "notifications_permission_banner.enable": "Kapasitar avizos de ensimameza", + "notifications_permission_banner.enable": "Kapasita avizos de ensimameza", "notifications_permission_banner.how_to_control": "Para risivir avizos kuando Mastodon no esta avierto, kapasita avizos de ensimameza. Puedes kontrolar presizamente kualos tipos de enteraksiones djeneren avizos de ensimameza kon el boton {icon} arriva kuando esten kapasitadas.", - "notifications_permission_banner.title": "Nunka te piedres niente", + "notifications_permission_banner.title": "Nunkua te piedres niente", "onboarding.action.back": "Va atras", "onboarding.actions.back": "Va atras", "onboarding.actions.go_to_explore": "Va a los trendes", "onboarding.actions.go_to_home": "Va a tu linya prinsipala", "onboarding.compose.template": "Ke haber, #Mastodon?", "onboarding.follows.empty": "Malorozamente, no se pueden amostrar rezultados en este momento. Puedes aprovar uzar la bushkeda o navigar por la pajina de eksplorasyon para topar personas a las que segir, o aprovarlo de muevo mas tadre.", + "onboarding.follows.lead": "Tu linya prinsipala es la forma prinsipala de eksperiensa de Mastodon. Kuantas mas personas sigas, sera mas aktiva o interesante. Para ampesar, aki ay algunas sujestyones:", "onboarding.follows.title": "Personaliza tu linya prinsipala", "onboarding.profile.discoverable": "Faz ke mi profil apareska en bushkedas", + "onboarding.profile.discoverable_hint": "Kuando permites ke tu profil sea diskuvriravle en Mastodon, tus publikasyones podran apareser en rezultados de bushkedas i trendes i tu profil podra ser sujerido a personas kon intereses similares a los tuyos.", "onboarding.profile.display_name": "Nombre amostrado", "onboarding.profile.display_name_hint": "Tu nombre para amostrar.", "onboarding.profile.lead": "Siempre puedes kompletar esto mas tadre en las preferensyas, ande tambien ay mas opsyones de personalizasyon.", @@ -483,16 +500,21 @@ "onboarding.share.message": "Soy {username} en #Mastodon! Segidme en {url}", "onboarding.share.next_steps": "Posivles sigientes pasos:", "onboarding.share.title": "Partaja tu profil", + "onboarding.start.lead": "Agora eres parte de Mastodon, una red sosyala unika y desentralizada ande tu, no un algoritmo, puedes personalizar tu propya eksperyensya. Te entrodiziramos a esta mueva frontera sosyala:", "onboarding.start.skip": "No nesesitas ayudo para ampesar?", "onboarding.start.title": "Lo logrates!", "onboarding.steps.follow_people.body": "El buto de Mastodon es segir a djente interesante.", "onboarding.steps.follow_people.title": "Personaliza tu linya prinsipala", - "onboarding.steps.publish_status.body": "Puedes introdusirte al mundo con teksto, fotos, videos o anketas {emoji}", + "onboarding.steps.publish_status.body": "Puedes introdusirte al mundo kon teksto, fotos, videos o anketas {emoji}", "onboarding.steps.publish_status.title": "Eskrive tu primera publikasyon", "onboarding.steps.setup_profile.body": "Kompleta tu profil para aumentar tus enteraksyones.", "onboarding.steps.setup_profile.title": "Personaliza tu profil", - "onboarding.steps.share_profile.body": "Informe a tus amigos komo toparte en Mastodon", + "onboarding.steps.share_profile.body": "Informa a tus amigos komo toparte en Mastodon", "onboarding.steps.share_profile.title": "Partaja tu profil de Mastodon", + "onboarding.tips.2fa": "Saviyas? Puedes protejar tu kuento konfigurando la autentifikasyon de dos pasos en la konfigurasyon de tu kuento. Funksyona kon kualsekera aplikasyon de TOTP ke eskojas. No ay menester de uzar tu numero de telefon!", + "onboarding.tips.accounts_from_other_servers": "Saviyas? komo Mastodon es desentralizado, algunos profiles que topas estan lokalizados en sirvidores distinktos del tuyo. I malgrado esto, puedes enteraktuar kon eyos! Sus sirvidor forma la sigunda mitad de sus nombres de utilizador!", + "onboarding.tips.migration": "Savias? Si en el avenir pensas ke {domain} no es el sirvidor adekuado para ti, puedes moverte a otruno sirvidor de Mastodon sir pedrer a tus suivantes. Inkluzo puedes ser el balabay de tu propyo sirvidor!", + "onboarding.tips.verification": "Savias? Puedes verifikar tu kuento ponyendo un atadijo a tu profil de Mastodon en tu propio sitio web i adjustando el sitio a tu profil. No ay menester de pagamyentos o dokumentos!", "password_confirmation.exceeds_maxlength": "La konfirmasyon de kod es demaziado lunga", "password_confirmation.mismatching": "Los dos kodes son desferentes", "picture_in_picture.restore": "Restora", @@ -507,7 +529,15 @@ "poll_button.add_poll": "Adjusta anketa", "poll_button.remove_poll": "Kita anketa", "privacy.change": "Troka privasita de publikasyon", + "privacy.direct.long": "Todos enmentados en la publikasyon", + "privacy.direct.short": "Djente espesifika", + "privacy.private.long": "Solo para tus suivantes", + "privacy.private.short": "Suivantes", + "privacy.public.long": "Todos en i afuera de Mastodon", "privacy.public.short": "Publiko", + "privacy.unlisted.additional": "Esto funksyona exaktamente komo publiko, eksepto ke la publikasyon no aparesera en linyas publikas o etiketas, la eksplorasyon o bushkedas de Mastodon, inkluzo si kapasites esto para tu kuento.", + "privacy.unlisted.long": "Vizivle para todos, ama no en trendes, etiketas o linyas publikas", + "privacy.unlisted.short": "Publiko i silensyozo", "privacy_policy.last_updated": "Ultima aktualizasyon: {date}", "privacy_policy.title": "Politika de privasita", "recommended": "Rekomendado", @@ -525,7 +555,9 @@ "relative_time.minutes": "{number} m", "relative_time.seconds": "{number} s", "relative_time.today": "oy", + "reply_indicator.attachments": "{count, plural, one {# anekso} other {# aneksos}}", "reply_indicator.cancel": "Anula", + "reply_indicator.poll": "Anketa", "report.block": "Bloka", "report.block_explanation": "No veras sus publikasyones. No podra ver tus publikasyones ni segirte. Podra saver ke le blokates.", "report.categories.legal": "Legal", @@ -538,7 +570,7 @@ "report.category.title_status": "publikasyon", "report.close": "Fecho", "report.comment.title": "Ay algo mas ke deveriamos saver?", - "report.forward": "Reembiar a {target}", + "report.forward": "Reembia a {target}", "report.forward_hint": "Este kuento es de otro sirvidor. Embiar una kopia anonimizada del raporto ayi tamyen?", "report.mute": "Silensia", "report.mute_explanation": "No veras sus publikasyones. Ainda pueden segirte i no va saver ke le silensiates.", @@ -558,19 +590,19 @@ "report.rules.title": "Kualas reglas estan violadas?", "report.statuses.subtitle": "Eskoje todas ke korespondan", "report.statuses.title": "Ay alguna publikasyon ke suporta este raporto?", - "report.submit": "Embiar", + "report.submit": "Embia", "report.target": "Raportando a {target}", "report.thanks.take_action": "Aki estan tus opsyones para kontrolar lo ke ves en Mastodon:", "report.thanks.take_action_actionable": "Mientres revizamos esto, puedes tomar aksyones kontra @{name}:", "report.thanks.title": "No keres ver esto?", "report.thanks.title_actionable": "Mersi por raportarlo, vamos revizarlo.", - "report.unfollow": "Desegir a @{name}", + "report.unfollow": "Desige a @{name}", "report.unfollow_explanation": "Estas sigiendo este kuento. Para no ver sus publikasyones en tu linya de tiempo, puedes deshar de segirlo.", "report_notification.attached_statuses": "{count, plural, one {{count} publikasyon} other {{count} publikasyones}} atadas", "report_notification.categories.legal": "Legal", "report_notification.categories.other": "Otros", "report_notification.categories.spam": "Spam", - "report_notification.categories.violation": "Violasion de reglas", + "report_notification.categories.violation": "Violasyon de reglas", "report_notification.open": "Avre raporto", "search.no_recent_searches": "No ay bushkedas resientes", "search.placeholder": "Bushka", @@ -584,7 +616,7 @@ "search_popout.full_text_search_logged_out_message": "Solo desponivle kuando estas konektado kon tu kuento.", "search_popout.language_code": "kodiche ISO de lingua", "search_popout.options": "Opsyones de bushkeda", - "search_popout.quick_actions": "Aksiones rapidas", + "search_popout.quick_actions": "Aksyones rapidas", "search_popout.recent": "Bushkedas resientes", "search_popout.specific_date": "dato espesifiko", "search_popout.user": "utilizador", @@ -661,7 +693,7 @@ "status.translate": "Trezlada", "status.translated_from_with": "Trezladado dizde {lang} kon {provider}", "status.uncached_media_warning": "Vista previa no desponivle", - "status.unmute_conversation": "Desilensiar konversasyon", + "status.unmute_conversation": "Desilensia konversasyon", "status.unpin": "Defiksar del profil", "subscribed_languages.lead": "Solo publikasyones en linguas eskojidas se amostraran en tus linya de tiempo prinsipala i listas dempues del trokamiento. Eskoje dinguna para risivir publikasyones en todas las linguas.", "subscribed_languages.save": "Guadra trokamientos", diff --git a/app/javascript/mastodon/locales/lt.json b/app/javascript/mastodon/locales/lt.json index 14fa09e973..35722b0e0d 100644 --- a/app/javascript/mastodon/locales/lt.json +++ b/app/javascript/mastodon/locales/lt.json @@ -1,6 +1,6 @@ { "about.blocks": "Prižiūrimi serveriai", - "about.contact": "Kontaktuoti:", + "about.contact": "Kontaktai:", "about.disclaimer": "Mastodon – nemokama atvirojo kodo programa ir Mastodon gGmbH prekės ženklas.", "about.domain_blocks.no_reason_available": "Priežastis nepateikta", "about.domain_blocks.preamble": "Mastodon paprastai leidžia peržiūrėti turinį ir bendrauti su naudotojais iš bet kurio kito fediverse esančio serverio. Šios yra išimtys, kurios buvo padarytos šiame konkrečiame serveryje.", @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Tavo paskyra nėra {locked}. Bet kas gali sekti tave ir peržiūrėti tik sekėjams skirtus įrašus.", "compose_form.lock_disclaimer.lock": "užrakinta", "compose_form.placeholder": "Kas tavo mintyse?", - "compose_form.poll.add_option": "Pridėti pasirinkimą", "compose_form.poll.duration": "Apklausos trukmė", "compose_form.poll.multiple": "Keli pasirinkimai", "compose_form.poll.option_placeholder": "{number} pasirinkimas", - "compose_form.poll.remove_option": "Pašalinti šį pasirinkimą", "compose_form.poll.single": "Pasirinkti vieną", "compose_form.poll.switch_to_multiple": "Keisti apklausą, kad būtų galima pasirinkti kelis pasirinkimus", "compose_form.poll.switch_to_single": "Pakeisti apklausą, kad būtų galima pasirinkti vieną variantą", @@ -271,6 +269,16 @@ "follow_request.authorize": "Autorizuoti", "follow_request.reject": "Atmesti", "follow_requests.unlocked_explanation": "Nors tavo paskyra neužrakinta, {domain} personalas mano, kad galbūt norėsi rankiniu būdu patikrinti šių paskyrų sekimo užklausas.", + "follow_suggestions.curated_suggestion": "Personalo pasirinkimai", + "follow_suggestions.dismiss": "Daugiau nerodyti", + "follow_suggestions.hints.friends_of_friends": "Šis profilis yra populiarus tarp žmonių, kuriuos sekei.", + "follow_suggestions.hints.most_followed": "Šis profilis yra vienas iš labiausiai sekamų {domain}.", + "follow_suggestions.hints.most_interactions": "Pastaruoju metu šis profilis sulaukia daug dėmesio šiame {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Šis profilis panašus į profilius, kuriuos neseniai sekei.", + "follow_suggestions.personalized_suggestion": "Suasmenintas pasiūlymas", + "follow_suggestions.popular_suggestion": "Populiarus pasiūlymas", + "follow_suggestions.view_all": "Peržiūrėti viską", + "follow_suggestions.who_to_follow": "Ką sekti", "followed_tags": "Sekamos saitažodžiai", "footer.about": "Apie", "footer.directory": "Profilių katalogas", @@ -297,18 +305,19 @@ "hashtag.follow": "Sekti grotažymę", "hashtag.unfollow": "Nesekti grotažymės", "hashtags.and_other": "…ir{count, plural,other {#daugiau}}", - "home.actions.go_to_explore": "Žiūrėti kas populiaru", - "home.actions.go_to_suggestions": "Rasti žmonių sekimui", "home.column_settings.basic": "Pagrindinis", "home.column_settings.show_reblogs": "Rodyti \"boosts\"", "home.column_settings.show_replies": "Rodyti atsakymus", "home.hide_announcements": "Slėpti skelbimus", + "home.pending_critical_update.link": "Žiūrėti atnaujinimus", + "home.pending_critical_update.title": "Galimas kritinis saugumo atnaujinimas!", "interaction_modal.no_account_yet": "Nesi Mastodon?", "interaction_modal.on_another_server": "Kitame serveryje", "interaction_modal.on_this_server": "Šiame serveryje", "interaction_modal.sign_in": "Nesi prisijungęs (-usi) prie šio serverio. Kur yra laikoma tavo paskyra?", "interaction_modal.sign_in_hint": "Patarimas: tai svetainė, kurioje užsiregistravai. Jei neprisimeni, ieškok sveikinimo el. laiško savo pašto dėžutėje. Taip pat gali įvesti visą savo naudotojo vardą (pvz., @Mastodon@mastodon.social).", "interaction_modal.title.favourite": "Mėgstamiausias {name} įrašas", + "interaction_modal.title.follow": "Sekti {name}", "keyboard_shortcuts.back": "to navigate back", "keyboard_shortcuts.blocked": "to open blocked users list", "keyboard_shortcuts.boost": "to boost", @@ -341,7 +350,24 @@ "keyboard_shortcuts.unfocus": "to un-focus compose textarea/search", "keyboard_shortcuts.up": "to move up in the list", "lightbox.close": "Uždaryti", + "lightbox.next": "Kitas", + "lightbox.previous": "Ankstesnis", + "limited_account_hint.action": "Vis tiek rodyti profilį", + "limited_account_hint.title": "Šį profilį paslėpė {domain} moderatoriai.", + "link_preview.author": "Sukūrė {name}", + "lists.account.add": "Pridėti į sąrašą", + "lists.account.remove": "Pašalinti iš sąrašo", + "lists.delete": "Ištrinti sąrašą", + "lists.edit": "Redaguoti sąrašą", + "lists.edit.submit": "Prierašo pakeitimas", "lists.new.create": "Pridėti sąrašą", + "lists.new.title_placeholder": "Naujas sąrašo pavadinimas", + "lists.replies_policy.followed": "Bet kuris sekamas naudotojas", + "lists.replies_policy.list": "Sąrašo nariai", + "lists.replies_policy.none": "Nei vienas", + "lists.replies_policy.title": "Rodyti atsakymus:", + "lists.search": "Ieškoti tarp sekamų žmonių", + "lists.subheading": "Jūsų sąrašai", "loading_indicator.label": "Kraunama…", "media_gallery.toggle_visible": "{number, plural, one {Slėpti vaizdą} few {Slėpti vaizdus} many {Slėpti vaizdo} other {Slėpti vaizdų}}", "moved_to_account_banner.text": "Tavo paskyra {disabledAccount} šiuo metu yra išjungta, nes persikėlei į {movedToAccount}.", @@ -398,7 +424,7 @@ "notifications.column_settings.mention": "Paminėjimai:", "notifications.column_settings.poll": "Balsavimo rezultatai:", "notifications.column_settings.push": "\"Push\" pranešimai", - "notifications.column_settings.reblog": "\"Boost\" kiekis:", + "notifications.column_settings.reblog": "Pakėlimai:", "notifications.column_settings.show": "Rodyti stulpelyje", "notifications.column_settings.sound": "Paleisti garsą", "notifications.column_settings.status": "New toots:", @@ -506,6 +532,11 @@ "report.reasons.legal": "Tai nelegalu", "report.reasons.legal_description": "Manai, kad tai pažeidžia tavo arba serverio šalies įstatymus", "report.reasons.other": "Tai kažkas kita", + "report.reasons.other_description": "Šis klausimas neatitinka kitų kategorijų", + "report.reasons.spam": "Tai šlamštas", + "report.reasons.spam_description": "Kenkėjiškos nuorodos, netikras įsitraukimas arba pasikartojantys atsakymai", + "report.reasons.violation": "Tai pažeidžia serverio taisykles", + "report.reasons.violation_description": "Žinai, kad tai pažeidžia konkrečias taisykles", "report.rules.subtitle": "Pasirink viską, kas tinka", "report.rules.title": "Kokios taisyklės pažeidžiamos?", "report.statuses.subtitle": "Pasirinkti viską, kas tinka", @@ -519,35 +550,71 @@ "report.unfollow": "Nebesekti @{name}", "report.unfollow_explanation": "Jūs sekate šią paskyrą. Norėdami nebematyti jų įrašų savo pagrindiniame kanale, panaikinkite jų sekimą.", "report_notification.attached_statuses": "{count, plural, one {# post} other {# posts}} attached", + "report_notification.categories.legal": "Legalus", + "report_notification.categories.other": "Kita", + "report_notification.categories.spam": "Šlamštas", + "report_notification.categories.violation": "Taisyklės pažeidimas", + "search.no_recent_searches": "Paieškos įrašų nėra", "search.placeholder": "Paieška", + "search.quick_action.account_search": "Profiliai, atitinkantys {x}", + "search.quick_action.go_to_account": "Eiti į profilį {x}", + "search.quick_action.go_to_hashtag": "Eiti į hashtag {x}", + "search.quick_action.open_url": "Atidaryti URL adresą Mastodon", + "search.quick_action.status_search": "Pranešimai, atitinkantys {x}", "search.search_or_paste": "Ieškok arba įklijuok URL", "search_popout.full_text_search_disabled_message": "Nepasiekima {domain}.", "search_popout.full_text_search_logged_out_message": "Pasiekiama tik prisijungus.", "search_popout.language_code": "ISO kalbos kodas", + "search_popout.options": "Paieškos nustatymai", + "search_popout.quick_actions": "Greiti veiksmai", + "search_popout.recent": "Naujausios paieškos", "search_popout.specific_date": "konkreti data", "search_popout.user": "naudotojas", "search_results.accounts": "Profiliai", "search_results.all": "Visi", "search_results.hashtags": "Saitažodžiai", "search_results.nothing_found": "Nepavyko rasti nieko pagal šiuos paieškos terminus.", + "search_results.see_all": "Žiūrėti viską", "search_results.statuses": "Toots", + "search_results.title": "Ieškoti {q}", "server_banner.about_active_users": "Žmonės, kurie naudojosi šiuo serveriu per pastarąsias 30 dienų (mėnesio aktyvūs naudotojai)", "server_banner.active_users": "aktyvūs naudotojai", + "server_banner.administered_by": "Administruoja:", + "server_banner.introduction": "{domain} yra decentralizuoto socialinio tinklo, kurį valdo {mastodon}, dalis.", + "server_banner.learn_more": "Sužinoti daugiau", + "server_banner.server_stats": "Serverio statistika:", + "sign_in_banner.create_account": "Sukurti paskyrą", "sign_in_banner.sign_in": "Prisijungimas", + "sign_in_banner.sso_redirect": "Prisijungti arba Registruotis", "sign_in_banner.text": "Prisijunk, kad galėtum sekti profilius arba saitažodžius, mėgsti, bendrinti ir atsakyti į įrašus. Taip pat gali bendrauti iš savo paskyros kitame serveryje.", + "status.admin_account": "Atvira moderavimo sąsaja @{name}", + "status.admin_domain": "Atvira moderavimo sąsaja {domain}", "status.admin_status": "Open this status in the moderation interface", + "status.block": "Blokuoti @{name}", + "status.bookmark": "Žymė", "status.copy": "Kopijuoti nuorodą į įrašą", "status.delete": "Ištrinti", + "status.detailed_status": "Išsami pokalbio peržiūra", + "status.direct": "Privačiai paminėti @{name}", + "status.direct_indicator": "Privatus paminėjimas", "status.edit": "Redaguoti", "status.edited": "Redaguota {date}", "status.edited_x_times": "Edited {count, plural, one {# time} other {# times}}", + "status.embed": "Įterptas", + "status.favourite": "Mėgstamiausias", + "status.filter": "Filtruoti šį įrašą", + "status.filtered": "Filtruota", "status.hide": "Slėpti įrašą", + "status.history.created": "{name} sukurtas {date}", + "status.history.edited": "{name} redaguotas {date}", "status.load_more": "Pakrauti daugiau", "status.media.open": "Spausk, kad atidaryti", "status.media.show": "Spausk, kad matyti", "status.media_hidden": "Paslėpta medija", "status.mention": "Paminėti @{name}", "status.more": "Daugiau", + "status.mute": "Nutildyti @{name}", + "status.mute_conversation": "Nutildyti pokalbį", "status.open": "Expand this status", "status.pin": "Prisegti prie profilio", "status.pinned": "Prisegtas įrašas", @@ -569,6 +636,7 @@ "status.translate": "Versti", "status.translated_from_with": "Išversta iš {lang} naudojant {provider}", "status.uncached_media_warning": "Peržiūra nepasiekiama", + "subscribed_languages.lead": "Po pakeitimo tavo pagrindinėje ir sąrašo laiko juostose bus rodomi tik įrašai pasirinktomis kalbomis. Jei nori gauti įrašus visomis kalbomis, pasirink nė vieno.", "tabs_bar.home": "Pradžia", "tabs_bar.notifications": "Pranešimai", "time_remaining.days": "Liko {number, plural, one {# diena} few {# dienos} many {# dieno} other {# dienų}}", diff --git a/app/javascript/mastodon/locales/lv.json b/app/javascript/mastodon/locales/lv.json index b4426b4c45..07a7b25a79 100644 --- a/app/javascript/mastodon/locales/lv.json +++ b/app/javascript/mastodon/locales/lv.json @@ -291,13 +291,9 @@ "hashtag.follow": "Sekot tēmturim", "hashtag.unfollow": "Pārstāt sekot tēmturim", "hashtags.and_other": "..un {count, plural, other {# vairāk}}", - "home.actions.go_to_explore": "Skatīt tendences", - "home.actions.go_to_suggestions": "Atrodi cilvēkus kam sekot", "home.column_settings.basic": "Pamata", "home.column_settings.show_reblogs": "Rādīt pastiprinātos ierakstus", "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.title": "Šī ir tava Mastodon mājvieta.", "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.link": "Skatīt jauninājumus", diff --git a/app/javascript/mastodon/locales/ms.json b/app/javascript/mastodon/locales/ms.json index 8c1ff63376..3d6ba920c9 100644 --- a/app/javascript/mastodon/locales/ms.json +++ b/app/javascript/mastodon/locales/ms.json @@ -21,6 +21,7 @@ "account.blocked": "Disekat", "account.browse_more_on_origin_server": "Layari selebihnya di profil asal", "account.cancel_follow_request": "Menarik balik permintaan mengikut", + "account.copy": "Salin pautan ke profil", "account.direct": "Sebut secara persendirian @{name}", "account.disable_notifications": "Berhenti maklumkan saya apabila @{name} mengirim hantaran", "account.domain_blocked": "Domain disekat", @@ -31,6 +32,7 @@ "account.featured_tags.last_status_never": "Tiada hantaran", "account.featured_tags.title": "Tanda pagar pilihan {name}", "account.follow": "Ikuti", + "account.follow_back": "Ikut balik", "account.followers": "Pengikut", "account.followers.empty": "Belum ada yang mengikuti pengguna ini.", "account.followers_counter": "{count, plural, one {{counter} Pengikut} other {{counter} Pengikut}}", @@ -51,6 +53,7 @@ "account.mute_notifications_short": "Redam pemberitahuan", "account.mute_short": "Redam", "account.muted": "Dibisukan", + "account.mutual": "Rakan kongsi", "account.no_bio": "Tiada penerangan diberikan.", "account.open_original_page": "Buka halaman asal", "account.posts": "Hantaran", @@ -143,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "dikunci", "compose_form.placeholder": "Apakah yang sedang anda fikirkan?", "compose_form.poll.duration": "Tempoh undian", + "compose_form.poll.multiple": "Pelbagai pilihan", + "compose_form.poll.option_placeholder": "Pilihan {number}", + "compose_form.poll.single": "Pilih satu", "compose_form.poll.switch_to_multiple": "Ubah kepada membenarkan aneka undian", "compose_form.poll.switch_to_single": "Ubah kepada undian pilihan tunggal", + "compose_form.poll.type": "Gaya", + "compose_form.publish": "Siaran", "compose_form.publish_form": "Terbit", + "compose_form.reply": "Balas", + "compose_form.save_changes": "Kemas kini", "compose_form.spoiler.marked": "Buang amaran kandungan", "compose_form.spoiler.unmarked": "Tambah amaran kandungan", + "compose_form.spoiler_placeholder": "Amaran kandungan (pilihan)", "confirmation_modal.cancel": "Batal", "confirmations.block.block_and_report": "Sekat & Lapor", "confirmations.block.confirm": "Sekat", @@ -179,6 +190,7 @@ "conversation.mark_as_read": "Tanda sudah dibaca", "conversation.open": "Lihat perbualan", "conversation.with": "Dengan {names}", + "copy_icon_button.copied": "Disalin ke papan klip", "copypaste.copied": "Disalin", "copypaste.copy_to_clipboard": "Salin ke papan klip", "directory.federated": "Dari fediverse yang diketahui", @@ -210,6 +222,7 @@ "emoji_button.search_results": "Hasil carian", "emoji_button.symbols": "Simbol", "emoji_button.travel": "Kembara & Tempat", + "empty_column.account_hides_collections": "Pengguna ini telah memilih untuk tidak menyediakan informasi tersebut", "empty_column.account_suspended": "Akaun digantung", "empty_column.account_timeline": "Tiada hantaran di sini!", "empty_column.account_unavailable": "Profil tidak tersedia", @@ -264,6 +277,14 @@ "follow_request.authorize": "Benarkan", "follow_request.reject": "Tolak", "follow_requests.unlocked_explanation": "Walaupun akaun anda tidak dikunci, kakitangan {domain} merasakan anda mungkin ingin menyemak permintaan ikutan daripada akaun ini secara manual.", + "follow_suggestions.curated_suggestion": "", + "follow_suggestions.dismiss": "Jangan papar lagi", + "follow_suggestions.hints.featured": "Profil{domain.", + "follow_suggestions.hints.friends_of_friends": "This profile is popular among the people you follow.", + "follow_suggestions.hints.most_followed": ".", + "follow_suggestions.personalized_suggestion": "Cadangan peribadi", + "follow_suggestions.popular_suggestion": "Cadangan terkenal", + "follow_suggestions.view_all": "Lihat semua", "followed_tags": "Topik terpilih", "footer.about": "Perihal", "footer.directory": "Direktori profil", @@ -284,16 +305,15 @@ "hashtag.column_settings.tag_mode.any": "Mana-mana daripada yang ini", "hashtag.column_settings.tag_mode.none": "Tiada apa pun daripada yang ini", "hashtag.column_settings.tag_toggle": "Sertakan tag tambahan untuk lajur ini", + "hashtag.counter_by_accounts": "{count, plural, other {{counter} peserta}}", + "hashtag.counter_by_uses": "{count, plural, other {{counter} siaran}}", + "hashtag.counter_by_uses_today": "{count, plural, other {{counter} siaran}} hari ini", "hashtag.follow": "Ikuti hashtag", "hashtag.unfollow": "Nyahikut tanda pagar", "hashtags.and_other": "…dan {count, plural, other {# more}}", - "home.actions.go_to_explore": "Lihat apa yand sedang tren", - "home.actions.go_to_suggestions": "Cari orang untuk diikuti", "home.column_settings.basic": "Asas", "home.column_settings.show_reblogs": "Tunjukkan galakan", "home.column_settings.show_replies": "Tunjukkan balasan", - "home.explore_prompt.body": "Suapan rumah anda akan mempunyai gabungan pos daripada hashtag yang telah anda pilih untuk diikuti, orang yang telah anda pilih untuk diikuti dan pos yang mereka tingkatkan. Jika itu terasa terlalu senyap, anda mungkin mahu:", - "home.explore_prompt.title": "Ini adalah pusat operasi anda dalam Mastodon.", "home.hide_announcements": "Sembunyikan pengumuman", "home.pending_critical_update.body": "Sila kemas kini pelayan Mastodon anda secepat yang mungkin!", "home.pending_critical_update.link": "Lihat pengemaskinian", @@ -374,6 +394,7 @@ "lists.search": "Cari dalam kalangan orang yang anda ikuti", "lists.subheading": "Senarai anda", "load_pending": "{count, plural, one {# item baharu} other {# item baharu}}", + "loading_indicator.label": "Memuatkan…", "media_gallery.toggle_visible": "{number, plural, other {Sembunyikan imej}}", "moved_to_account_banner.text": "Akaun anda {disabledAccount} kini dinyahdayakan kerana anda berpindah ke {movedToAccount}.", "mute_modal.duration": "Tempoh", @@ -461,6 +482,11 @@ "onboarding.follows.empty": "Malangnya, tiada hasil dapat ditunjukkan sekarang. Anda boleh cuba menggunakan carian atau menyemak imbas halaman teroka untuk mencari orang untuk diikuti atau cuba lagi kemudian.", "onboarding.follows.lead": "You curate your own home feed. The more people you follow, the more active and interesting it will be. These profiles may be a good starting point—you can always unfollow them later!", "onboarding.follows.title": "Popular on Mastodon", + "onboarding.profile.display_name": "Nama paparan", + "onboarding.profile.display_name_hint": "Nama penuh anda atau nama anda yang menyeronokkan…", + "onboarding.profile.note_hint": "Anda boleh @menyebut orang lain atau #hashtags…", + "onboarding.profile.save_and_continue": "Simpan dan teruskan", + "onboarding.profile.upload_avatar": "Muat naik gambar profil", "onboarding.share.lead": "Beritahu orang ramai bagaimana mereka boleh menemui anda di Mastodon!", "onboarding.share.message": "Saya {username} di #Mastodon! Jom ikut saya di {url}", "onboarding.share.next_steps": "Langkah seterusnya yang mungkin:", @@ -494,9 +520,14 @@ "poll_button.add_poll": "Tambah undian", "poll_button.remove_poll": "Buang undian", "privacy.change": "Ubah privasi hantaran", + "privacy.direct.long": "Semua orang yang disebutkan dalam siaran", + "privacy.direct.short": "Orang tertentu", + "privacy.private.long": "Pengikut anda sahaja", + "privacy.private.short": "Pengikut", "privacy.public.short": "Awam", "privacy_policy.last_updated": "Dikemaskini {date}", "privacy_policy.title": "Dasar Privasi", + "recommended": "Disyorkan", "refresh": "Muat semula", "regeneration_indicator.label": "Memuatkan…", "regeneration_indicator.sublabel": "Suapan rumah anda sedang disediakan!", @@ -511,7 +542,9 @@ "relative_time.minutes": "{number}m", "relative_time.seconds": "{number}s", "relative_time.today": "hari ini", + "reply_indicator.attachments": "{count, plural, other {# lampiran}}", "reply_indicator.cancel": "Batal", + "reply_indicator.poll": "Undian", "report.block": "Sekat", "report.block_explanation": "Anda tidak akan melihat hantaran mereka. Mereka tidak dapat melihat hantaran anda atau mengikuti anda. Mereka akan sedar bahawa mereka disekat.", "report.categories.legal": "Sah", diff --git a/app/javascript/mastodon/locales/my.json b/app/javascript/mastodon/locales/my.json index 396a72ac45..0d5985b1ce 100644 --- a/app/javascript/mastodon/locales/my.json +++ b/app/javascript/mastodon/locales/my.json @@ -292,13 +292,9 @@ "hashtag.follow": "Hashtag ကို စောင့်ကြည့်မယ်", "hashtag.unfollow": "Hashtag ကို မစောင့်ကြည့်ပါ", "hashtags.and_other": "{count, plural, other {# more}} နှင့်", - "home.actions.go_to_explore": "ခေတ်စားနေသည်များကို ကြည့်ပါ", - "home.actions.go_to_suggestions": "စောင့်ကြည့်သူများရှာပါ", "home.column_settings.basic": "အခြေခံ", "home.column_settings.show_reblogs": "Boost များကို ပြပါ", "home.column_settings.show_replies": "ပြန်စာများကို ပြပါ", - "home.explore_prompt.body": "သင့်ရဲ့သတင်းစဥ် မှာ သင် စောင့်ကြည့်​နေတယ့် ခေါင်းစဥ်​တွေ၊သင်​စောင့်ကြည့်​နေတယ့်အ​ကောင့်​တွေ နဲ့ အဆိုပါ အ​ကောင့်​တွေပြန်မျှ​ဝေထားတယ့် ပိုစ့်​တွေကို မြင်ရမှာပါ။:", - "home.explore_prompt.title": "ဤသည်မှာ Mastodon ရှိ သင့်ပင်မစာမျက်နှာဖြစ်သည်။", "home.hide_announcements": "ကြေညာချက်များကို ဖျောက်ပါ", "home.pending_critical_update.body": "သင့် Mastodon ဆာဗာ အမြန်ဆုံး အပ်ဒိတ်လုပ်ပါ။", "home.pending_critical_update.link": "အပ်ဒိတ်များကြည့်ရန်", diff --git a/app/javascript/mastodon/locales/nl.json b/app/javascript/mastodon/locales/nl.json index e38f8fd0ba..f2367f6463 100644 --- a/app/javascript/mastodon/locales/nl.json +++ b/app/javascript/mastodon/locales/nl.json @@ -113,7 +113,7 @@ "column.community": "Lokale tijdlijn", "column.direct": "Privéberichten", "column.directory": "Gebruikersgids", - "column.domain_blocks": "Geblokkeerde domeinen", + "column.domain_blocks": "Geblokkeerde servers", "column.favourites": "Favorieten", "column.firehose": "Openbare tijdlijnen", "column.follow_requests": "Volgverzoeken", @@ -145,22 +145,20 @@ "compose_form.lock_disclaimer": "Jouw account is niet {locked}. Iedereen kan jou volgen en kan de berichten zien die je alleen aan jouw volgers hebt gericht.", "compose_form.lock_disclaimer.lock": "vergrendeld", "compose_form.placeholder": "Wat wil je kwijt?", - "compose_form.poll.add_option": "Optie toevoegen", "compose_form.poll.duration": "Duur van de peiling", "compose_form.poll.multiple": "Meerkeuze", "compose_form.poll.option_placeholder": "Optie {number}", - "compose_form.poll.remove_option": "Deze optie verwijderen", - "compose_form.poll.single": "Kies een", + "compose_form.poll.single": "Enkele keuze", "compose_form.poll.switch_to_multiple": "Peiling wijzigen om meerdere keuzes toe te staan", "compose_form.poll.switch_to_single": "Peiling wijzigen om een enkele keuze toe te staan", "compose_form.poll.type": "Stijl", - "compose_form.publish": "Plaatsen", + "compose_form.publish": "Toot", "compose_form.publish_form": "Nieuw bericht", "compose_form.reply": "Reageren", "compose_form.save_changes": "Bijwerken", "compose_form.spoiler.marked": "Inhoudswaarschuwing verwijderen", "compose_form.spoiler.unmarked": "Inhoudswaarschuwing toevoegen", - "compose_form.spoiler_placeholder": "Waarschuwing inhoud (optioneel)", + "compose_form.spoiler_placeholder": "Inhoudswaarschuwing (optioneel)", "confirmation_modal.cancel": "Annuleren", "confirmations.block.block_and_report": "Blokkeren en rapporteren", "confirmations.block.confirm": "Blokkeren", @@ -232,7 +230,7 @@ "empty_column.bookmarked_statuses": "Jij hebt nog geen berichten aan je bladwijzers toegevoegd. Wanneer je er een aan jouw bladwijzers toevoegt, valt deze hier te zien.", "empty_column.community": "De lokale tijdlijn is nog leeg. Plaats een openbaar bericht om de spits af te bijten!", "empty_column.direct": "Je hebt nog geen privéberichten. Wanneer je er een verstuurt of ontvangt, zullen deze hier verschijnen.", - "empty_column.domain_blocks": "Er zijn nog geen geblokkeerde domeinen.", + "empty_column.domain_blocks": "Er zijn nog geen geblokkeerde servers.", "empty_column.explore_statuses": "Momenteel zijn er geen trends. Kom later terug!", "empty_column.favourited_statuses": "Jij hebt nog geen favoriete berichten. Wanneer je een bericht als favoriet markeert, valt deze hier te zien.", "empty_column.favourites": "Niemand heeft dit bericht nog als favoriet gemarkeerd. Wanneer iemand dit doet, valt dat hier te zien.", @@ -279,6 +277,17 @@ "follow_request.authorize": "Goedkeuren", "follow_request.reject": "Afwijzen", "follow_requests.unlocked_explanation": "Ook al is jouw account niet besloten, de medewerkers van {domain} denken dat jij misschien de volgende volgverzoeken handmatig wil controleren.", + "follow_suggestions.curated_suggestion": "Speciaal geselecteerd", + "follow_suggestions.dismiss": "Niet meer weergeven", + "follow_suggestions.hints.featured": "Deze gebruiker is geselecteerd door het team van {domain}.", + "follow_suggestions.hints.friends_of_friends": "Deze gebruiker is populair onder de mensen die jij volgt.", + "follow_suggestions.hints.most_followed": "Deze gebruiker is een van de meest gevolgde gebruikers op {domain}.", + "follow_suggestions.hints.most_interactions": "Deze gebruiker is de laatste tijd erg populair op {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Deze gebruiker is vergelijkbaar met gebruikers die je recentelijk hebt gevolgd.", + "follow_suggestions.personalized_suggestion": "Gepersonaliseerde aanbeveling", + "follow_suggestions.popular_suggestion": "Populaire aanbeveling", + "follow_suggestions.view_all": "Alles weergeven", + "follow_suggestions.who_to_follow": "Wie te volgen", "followed_tags": "Gevolgde hashtags", "footer.about": "Over", "footer.directory": "Gebruikersgids", @@ -305,13 +314,9 @@ "hashtag.follow": "Hashtag volgen", "hashtag.unfollow": "Hashtag ontvolgen", "hashtags.and_other": "…en {count, plural, one {}other {# meer}}", - "home.actions.go_to_explore": "De huidige trends bekijken", - "home.actions.go_to_suggestions": "Zoek mensen om te volgen", "home.column_settings.basic": "Algemeen", "home.column_settings.show_reblogs": "Boosts tonen", "home.column_settings.show_replies": "Reacties tonen", - "home.explore_prompt.body": "Jouw starttijdlijn bevat een mix van berichten met hashtags die je volgt, van accounts die je volgt en van berichten die deze accounts boosten. Wanneer je dit te stil vind, kun je:", - "home.explore_prompt.title": "Dit is jouw thuisbasis op Mastodon.", "home.hide_announcements": "Mededelingen verbergen", "home.pending_critical_update.body": "Update alstublieft zo snel mogelijk jouw Mastodon-server!", "home.pending_critical_update.link": "Bekijk updates", @@ -406,7 +411,7 @@ "navigation_bar.compose": "Nieuw bericht schrijven", "navigation_bar.direct": "Privéberichten", "navigation_bar.discover": "Ontdekken", - "navigation_bar.domain_blocks": "Geblokkeerde domeinen", + "navigation_bar.domain_blocks": "Geblokkeerde servers", "navigation_bar.explore": "Verkennen", "navigation_bar.favourites": "Favorieten", "navigation_bar.filters": "Filters", @@ -524,15 +529,15 @@ "poll_button.add_poll": "Peiling toevoegen", "poll_button.remove_poll": "Peiling verwijderen", "privacy.change": "Zichtbaarheid van bericht aanpassen", - "privacy.direct.long": "Iedereen genoemd in de post", + "privacy.direct.long": "Alleen voor mensen die specifiek in het bericht worden vermeld", "privacy.direct.short": "Specifieke mensen", "privacy.private.long": "Alleen jouw volgers", "privacy.private.short": "Volgers", "privacy.public.long": "Iedereen op Mastodon en daarbuiten", "privacy.public.short": "Openbaar", - "privacy.unlisted.additional": "Dit is vergelijkbaar met publiek, behalve dat de post niet zal verschijnen in live feeds of hashtags, verkennen of Mastodon zoeken, zelfs als je gekozen hebt voor account-breed.", - "privacy.unlisted.long": "Minder algoritmische fanfare", - "privacy.unlisted.short": "Stil publiek", + "privacy.unlisted.additional": "Dit is vergelijkbaar met openbaar, behalve dat het beticht niet verschijnt op openbare tijdlijnen of hashtags, onder verkennen of Mastodon zoeken, zelfs als je je account daarvoor hebt ingesteld.", + "privacy.unlisted.long": "Voor iedereen zichtbaar, maar niet onder trends, hashtags en op openbare tijdlijnen", + "privacy.unlisted.short": "Minder openbaar", "privacy_policy.last_updated": "Laatst bijgewerkt op {date}", "privacy_policy.title": "Privacybeleid", "recommended": "Aanbevolen", diff --git a/app/javascript/mastodon/locales/nn.json b/app/javascript/mastodon/locales/nn.json index 9bb4f59197..3cc537f54f 100644 --- a/app/javascript/mastodon/locales/nn.json +++ b/app/javascript/mastodon/locales/nn.json @@ -40,7 +40,7 @@ "account.following_counter": "{count, plural, one {Fylgjer {counter}} other {Fylgjer {counter}}}", "account.follows.empty": "Denne brukaren fylgjer ikkje nokon enno.", "account.go_to_profile": "Gå til profil", - "account.hide_reblogs": "Skjul framhevingar frå @{name}", + "account.hide_reblogs": "Gøym framhevingar frå @{name}", "account.in_memoriam": "Til minne om.", "account.joined_short": "Vart med", "account.languages": "Endre språktingingar", @@ -113,7 +113,7 @@ "column.community": "Lokal tidsline", "column.direct": "Private omtaler", "column.directory": "Sjå gjennom profilar", - "column.domain_blocks": "Skjulte domene", + "column.domain_blocks": "Blokkerte domene", "column.favourites": "Favorittar", "column.firehose": "Tidslinjer", "column.follow_requests": "Fylgjeførespurnadar", @@ -124,7 +124,7 @@ "column.pins": "Festa tut", "column.public": "Samla tidsline", "column_back_button.label": "Attende", - "column_header.hide_settings": "Gøym innstillingar", + "column_header.hide_settings": "Gøym innstillingane", "column_header.moveLeft_settings": "Flytt kolonne til venstre", "column_header.moveRight_settings": "Flytt kolonne til høgre", "column_header.pin": "Fest", @@ -145,12 +145,10 @@ "compose_form.lock_disclaimer": "Kontoen din er ikkje {locked}. Kven som helst kan fylgja deg for å sjå innlegga dine.", "compose_form.lock_disclaimer.lock": "låst", "compose_form.placeholder": "Kva har du på hjarta?", - "compose_form.poll.add_option": "Legg til alternativ", "compose_form.poll.duration": "Varigheit for rundspørjing", - "compose_form.poll.multiple": "Flervalg", - "compose_form.poll.option_placeholder": "Valg {number}", - "compose_form.poll.remove_option": "Fjern dette valget", - "compose_form.poll.single": "Velg en", + "compose_form.poll.multiple": "Fleirval", + "compose_form.poll.option_placeholder": "Alternativ {number}", + "compose_form.poll.single": "Vel ein", "compose_form.poll.switch_to_multiple": "Endre rundspørjinga til å tillate fleire val", "compose_form.poll.switch_to_single": "Endre rundspørjinga til å tillate berre eitt val", "compose_form.poll.type": "Stil", @@ -160,7 +158,7 @@ "compose_form.save_changes": "Oppdater", "compose_form.spoiler.marked": "Fjern innhaldsåtvaring", "compose_form.spoiler.unmarked": "Legg til innhaldsåtvaring", - "compose_form.spoiler_placeholder": "Innholdsadvarsel (valgfritt)", + "compose_form.spoiler_placeholder": "Innhaldsåtvaring (valfritt)", "confirmation_modal.cancel": "Avbryt", "confirmations.block.block_and_report": "Blokker & rapporter", "confirmations.block.confirm": "Blokker", @@ -173,14 +171,14 @@ "confirmations.delete_list.message": "Er du sikker på at du vil sletta denne lista for alltid?", "confirmations.discard_edit_media.confirm": "Forkast", "confirmations.discard_edit_media.message": "Du har ulagra endringar i mediaskildringa eller førehandsvisinga. Vil du forkasta dei likevel?", - "confirmations.domain_block.confirm": "Skjul alt frå domenet", + "confirmations.domain_block.confirm": "Blokker heile domenet", "confirmations.domain_block.message": "Er du heilt, heilt sikker på at du vil skjula heile {domain}? I dei fleste tilfelle er det godt nok og føretrekt med nokre få målretta blokkeringar eller målbindingar. Du kjem ikkje til å sjå innhald frå domenet i fødererte tidsliner eller i varsla dine. Fylgjarane dine frå domenet vert fjerna.", "confirmations.edit.confirm": "Rediger", "confirmations.edit.message": "Å redigera no vil overskriva den meldinga du er i ferd med å skriva. Er du sikker på at du vil halda fram?", "confirmations.logout.confirm": "Logg ut", "confirmations.logout.message": "Er du sikker på at du vil logga ut?", "confirmations.mute.confirm": "Målbind", - "confirmations.mute.explanation": "Dette vil skjula innlegg som kjem frå og som nemner dei, men vil framleis la dei sjå innlegga dine og fylgje deg.", + "confirmations.mute.explanation": "Dette vil gøyma innlegga deira og innlegg som nemner dei, men dei vil framleis kunna sjå innlegga dine og fylgja deg.", "confirmations.mute.message": "Er du sikker på at du vil målbinda {name}?", "confirmations.redraft.confirm": "Slett & skriv på nytt", "confirmations.redraft.message": "Er du sikker på at du vil sletta denne statusen og skriva han på nytt? Då misser du favorittar og framhevingar, og svar til det opprinnelege innlegget vert foreldrelause.", @@ -232,7 +230,7 @@ "empty_column.bookmarked_statuses": "Du har ikkje lagra noko bokmerke enno. Når du set bokmerke på eit innlegg, dukkar det opp her.", "empty_column.community": "Den lokale tidslina er tom. Skriv noko offentleg å få ballen til å rulle!", "empty_column.direct": "Du har ingen private omtaler enda. Etter du har sendt eller mottatt en, så vil den dukke opp her.", - "empty_column.domain_blocks": "Det er ingen skjulte domene til no.", + "empty_column.domain_blocks": "Det er ingen blokkerte domene enno.", "empty_column.explore_statuses": "Ingenting er i støytet nett no. Prøv igjen seinare!", "empty_column.favourited_statuses": "Du har ingen favoritt-statusar ennå. Når du merkjer ein som favoritt, dukkar han opp her.", "empty_column.favourites": "Ingen har merkt denne statusen som favoritt enno. Når nokon gjer det, dukkar dei opp her.", @@ -279,6 +277,17 @@ "follow_request.authorize": "Autoriser", "follow_request.reject": "Avvis", "follow_requests.unlocked_explanation": "Sjølv om kontoen din ikkje er låst tenkte dei som driv {domain} at du kanskje ville gå gjennom førespurnadar frå desse kontoane manuelt.", + "follow_suggestions.curated_suggestion": "Utvalt av staben", + "follow_suggestions.dismiss": "Ikkje vis igjen", + "follow_suggestions.hints.featured": "Denne profilen er handplukka av folka på {domain}.", + "follow_suggestions.hints.friends_of_friends": "Denne profilen er populær hjå dei du fylgjer.", + "follow_suggestions.hints.most_followed": "Mange på {domain} fylgjer denne profilen.", + "follow_suggestions.hints.most_interactions": "Denne profilen har nyss fått mykje merksemd på {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Denne profilen liknar på dei andre profilane du har fylgt i det siste.", + "follow_suggestions.personalized_suggestion": "Personleg forslag", + "follow_suggestions.popular_suggestion": "Populært forslag", + "follow_suggestions.view_all": "Vis alle", + "follow_suggestions.who_to_follow": "Kven som skal følgjast", "followed_tags": "Fylgde emneknaggar", "footer.about": "Om", "footer.directory": "Profilmappe", @@ -305,13 +314,9 @@ "hashtag.follow": "Fylg emneknagg", "hashtag.unfollow": "Slutt å fylgje emneknaggen", "hashtags.and_other": "…og {count, plural, one {}other {# fleire}}", - "home.actions.go_to_explore": "Sjå kva som er populært", - "home.actions.go_to_suggestions": "Finn folk å følgje", "home.column_settings.basic": "Grunnleggjande", "home.column_settings.show_reblogs": "Vis framhevingar", "home.column_settings.show_replies": "Vis svar", - "home.explore_prompt.body": "Tidslinja di vil ha ei blanding av innlegg frå emneknaggar du har vald å følgje, personane du har vald å følgje, og innlegga dei framhevar. Om det ser ganske stille ut akkurat no, så kan du:", - "home.explore_prompt.title": "Dette er heimen din i Mastodon.", "home.hide_announcements": "Skjul kunngjeringar", "home.pending_critical_update.body": "Oppdater mastodontenaren din så snart som mogleg!", "home.pending_critical_update.link": "Sjå oppdateringar", @@ -396,7 +401,7 @@ "media_gallery.toggle_visible": "{number, plural, one {Skjul bilete} other {Skjul bilete}}", "moved_to_account_banner.text": "Kontoen din, {disabledAccount} er for tida deaktivert fordi du har flytta til {movedToAccount}.", "mute_modal.duration": "Varigheit", - "mute_modal.hide_notifications": "Skjul varsel frå denne brukaren?", + "mute_modal.hide_notifications": "Gøym varsel frå denne brukaren?", "mute_modal.indefinite": "På ubestemt tid", "navigation_bar.about": "Om", "navigation_bar.advanced_interface": "Opne i avansert nettgrensesnitt", @@ -480,7 +485,8 @@ "onboarding.follows.empty": "Me kan ikkje visa deg nokon resultat no. Du kan prøva å søkja eller bla gjennom utforsk-sida for å finna folk å fylgja, eller du kan prøva att seinare.", "onboarding.follows.lead": "You curate your own home feed. The more people you follow, the more active and interesting it will be. These profiles may be a good starting point—you can always unfollow them later!", "onboarding.follows.title": "Popular on Mastodon", - "onboarding.profile.discoverable": "Gjør min profil synlig", + "onboarding.profile.discoverable": "Gjer profilen min synleg", + "onboarding.profile.discoverable_hint": "Når du vel å gjera profilen din synleg på Mastodon, vil innlegga dine syna i søkjeresultat og populære innlegg, og profilen din kan bli føreslegen for folk med liknande interesser som deg.", "onboarding.profile.display_name": "Synleg namn", "onboarding.profile.display_name_hint": "Det fulle namnet eller kallenamnet ditt…", "onboarding.profile.lead": "Du kan alltid fullføra dette seinare i innstillingane, og der er det endå fleire tilpassingsalternativ.", @@ -523,17 +529,18 @@ "poll_button.add_poll": "Lag ei rundspørjing", "poll_button.remove_poll": "Fjern rundspørjing", "privacy.change": "Endre personvernet på innlegg", - "privacy.direct.long": "Alle nevnt i innlegget", + "privacy.direct.long": "Alle nemnde i innlegget", "privacy.direct.short": "Spesifikke folk", - "privacy.private.long": "Bare følgerne dine", - "privacy.private.short": "Følgere", - "privacy.public.long": "Alle på og utenfor Mastodon", + "privacy.private.long": "Berre dine følgjarar", + "privacy.private.short": "Følgjarar", + "privacy.public.long": "Kven som helst på og av Mastodon", "privacy.public.short": "Offentleg", - "privacy.unlisted.long": "Færre algoritmiske fanfarer", - "privacy.unlisted.short": "Stille offentlig", + "privacy.unlisted.additional": "Dette er akkurat som offentleg, bortsett frå at innlegga ikkje dukkar opp i direktestraumar eller merkelappar, i oppdagingar eller Mastodon-søk, sjølv om du har sagt ja til at kontoen skal vera synleg.", + "privacy.unlisted.long": "Færre algoritmiske fanfarar", + "privacy.unlisted.short": "Stille offentleg", "privacy_policy.last_updated": "Sist oppdatert {date}", "privacy_policy.title": "Personvernsreglar", - "recommended": "Anbefalt", + "recommended": "Tilrådd", "refresh": "Oppdater", "regeneration_indicator.label": "Lastar…", "regeneration_indicator.sublabel": "Heimetidslina di vert førebudd!", @@ -606,7 +613,7 @@ "search.quick_action.status_search": "Innlegg som samsvarer med {x}", "search.search_or_paste": "Søk eller lim inn URL", "search_popout.full_text_search_disabled_message": "Ikkje tilgjengeleg på {domain}.", - "search_popout.full_text_search_logged_out_message": "Bare tilgjengelig når man er logget inn.", + "search_popout.full_text_search_logged_out_message": "Berre tilgjengeleg når du er logga inn.", "search_popout.language_code": "ISO-språkkode", "search_popout.options": "Søkjealternativ", "search_popout.quick_actions": "Hurtighandlinger", @@ -655,7 +662,7 @@ "status.load_more": "Last inn meir", "status.media.open": "Klikk for å opne", "status.media.show": "Klikk for å vise", - "status.media_hidden": "Medium gøymd", + "status.media_hidden": "Mediet er gøymt", "status.mention": "Nemn @{name}", "status.more": "Meir", "status.mute": "Målbind @{name}", diff --git a/app/javascript/mastodon/locales/no.json b/app/javascript/mastodon/locales/no.json index 8da9853bee..27ca611722 100644 --- a/app/javascript/mastodon/locales/no.json +++ b/app/javascript/mastodon/locales/no.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Din konto er ikke {locked}. Hvem som helst kan følge deg og se dine private poster.", "compose_form.lock_disclaimer.lock": "låst", "compose_form.placeholder": "Hva har du på hjertet?", - "compose_form.poll.add_option": "Legg til alternativ", "compose_form.poll.duration": "Avstemningens varighet", "compose_form.poll.multiple": "Flervalg", "compose_form.poll.option_placeholder": "Valg {number}", - "compose_form.poll.remove_option": "Fjern dette valget", "compose_form.poll.single": "Velg en", "compose_form.poll.switch_to_multiple": "Endre avstemning til å tillate flere valg", "compose_form.poll.switch_to_single": "Endre avstemning til å tillate ett valg", @@ -305,13 +303,9 @@ "hashtag.follow": "Følg emneknagg", "hashtag.unfollow": "Slutt å følge emneknagg", "hashtags.and_other": "…og {count, plural, one{en til} other {# til}}", - "home.actions.go_to_explore": "Se hva som er populært", - "home.actions.go_to_suggestions": "Finn folk å følge", "home.column_settings.basic": "Enkelt", "home.column_settings.show_reblogs": "Vis fremhevinger", "home.column_settings.show_replies": "Vis svar", - "home.explore_prompt.body": "Tidslinjen din inneholder en blanding av innlegg fra emneknagger du har valgt å følge, personene du har valgt å følge, og innleggene de fremhever. Hvis det føles for stille, kan det være lurt å:", - "home.explore_prompt.title": "Dette er hjemmet ditt i Mastodon.", "home.hide_announcements": "Skjul kunngjøring", "home.pending_critical_update.body": "Vennligst oppdater Mastodon-serveren din så snart som mulig!", "home.pending_critical_update.link": "Se oppdateringer", diff --git a/app/javascript/mastodon/locales/oc.json b/app/javascript/mastodon/locales/oc.json index 8660a3bc05..5e122064fc 100644 --- a/app/javascript/mastodon/locales/oc.json +++ b/app/javascript/mastodon/locales/oc.json @@ -262,8 +262,6 @@ "hashtag.follow": "Sègre l’etiqueta", "hashtag.unfollow": "Quitar de sègre l’etiqueta", "hashtags.and_other": "…e {count, plural, one {}other {# de mai}}", - "home.actions.go_to_explore": "Agachatz las tendéncias", - "home.actions.go_to_suggestions": "Trobatz de monde de sègre", "home.column_settings.basic": "Basic", "home.column_settings.show_reblogs": "Mostrar los partatges", "home.column_settings.show_replies": "Mostrar las responsas", diff --git a/app/javascript/mastodon/locales/pa.json b/app/javascript/mastodon/locales/pa.json index de085cf985..ee47c1872d 100644 --- a/app/javascript/mastodon/locales/pa.json +++ b/app/javascript/mastodon/locales/pa.json @@ -1,5 +1,6 @@ { "about.contact": "ਸੰਪਰਕ:", + "about.domain_blocks.no_reason_available": "ਕਾਰਨ ਮੌਜੂਦ ਨਹੀਂ ਹੈ", "about.domain_blocks.silenced.title": "ਸੀਮਿਤ", "about.domain_blocks.suspended.title": "ਮੁਅੱਤਲ ਕੀਤੀ", "about.rules": "ਸਰਵਰ ਨਿਯਮ", @@ -12,12 +13,17 @@ "account.block_short": "ਪਾਬੰਦੀ", "account.blocked": "ਪਾਬੰਦੀਸ਼ੁਦਾ", "account.cancel_follow_request": "ਫ਼ਾਲੋ ਕਰਨ ਨੂੰ ਰੱਦ ਕਰੋ", + "account.copy": "ਪਰੋਫਾਇਲ ਲਈ ਲਿੰਕ ਕਾਪੀ ਕਰੋ", + "account.direct": "ਨਿੱਜੀ ਜ਼ਿਕਰ @{name}", "account.edit_profile": "ਪਰੋਫਾਈਲ ਨੂੰ ਸੋਧੋ", + "account.featured_tags.last_status_at": "{date} ਨੂੰ ਆਖਰੀ ਪੋਸਟ", + "account.featured_tags.last_status_never": "ਕੋਈ ਪੋਸਟ ਨਹੀਂ", "account.follow": "ਫ਼ਾਲੋ", "account.followers": "ਫ਼ਾਲੋਅਰ", "account.followers.empty": "ਇਸ ਵਰਤੋਂਕਾਰ ਨੂੰ ਹਾਲੇ ਕੋਈ ਫ਼ਾਲੋ ਨਹੀਂ ਕਰਦਾ ਹੈ।", "account.following": "ਫ਼ਾਲੋ ਕੀਤਾ", "account.follows.empty": "ਇਹ ਵਰਤੋਂਕਾਰ ਹਾਲੇ ਕਿਸੇ ਨੂੰ ਫ਼ਾਲੋ ਨਹੀਂ ਕਰਦਾ ਹੈ।", + "account.go_to_profile": "ਪਰੋਫਾਇਲ ਉੱਤੇ ਜਾਓ", "account.media": "ਮੀਡੀਆ", "account.muted": "ਮੌਨ ਕੀਤੀਆਂ", "account.posts": "ਪੋਸਟਾਂ", @@ -35,9 +41,13 @@ "admin.dashboard.retention.cohort_size": "ਨਵੇਂ ਵਰਤੋਂਕਾਰ", "alert.unexpected.title": "ਓਹੋ!", "announcement.announcement": "ਹੋਕਾ", + "bundle_column_error.error.title": "ਓਹ ਹੋ!", "bundle_column_error.network.title": "ਨੈੱਟਵਰਕ ਦੀ ਸਮੱਸਿਆ", "bundle_column_error.retry": "ਮੁੜ-ਕੋਸ਼ਿਸ਼ ਕਰੋ", + "bundle_column_error.return": "ਵਾਪਸ ਮੁੱਖ ਸਫ਼ੇ ਉੱਤੇ ਜਾਓ", + "bundle_column_error.routing.title": "404", "bundle_modal_error.close": "ਬੰਦ ਕਰੋ", + "bundle_modal_error.message": "ਭਾਗ ਲੋਡ ਕਰਨ ਦੌਰਾਨ ਕੁਝ ਗਲਤ ਵਾਪਰਿਆ ਹੈ।", "bundle_modal_error.retry": "ਮੁੜ-ਕੋਸ਼ਿਸ਼ ਕਰੋ", "column.about": "ਸਾਡੇ ਬਾਰੇ", "column.blocks": "ਪਾਬੰਦੀ ਲਾਏ ਵਰਤੋਂਕਾਰ", @@ -67,10 +77,16 @@ "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.", "compose_form.lock_disclaimer.lock": "ਲਾਕ ਹੈ", "compose_form.placeholder": "What is on your mind?", + "compose_form.poll.type": "ਸਟਾਈਲ", + "compose_form.publish": "ਪੋਸਟ", "compose_form.publish_form": "Publish", + "compose_form.reply": "ਜਵਾਬ ਦਿਓ", + "compose_form.save_changes": "ਅੱਪਡੇਟ", "compose_form.spoiler.marked": "ਸਮੱਗਰੀ ਚੇਤਾਵਨੀ ਨੂੰ ਹਟਾਓ", "compose_form.spoiler.unmarked": "ਸਮੱਗਰੀ ਬਾਰੇ ਚੇਤਾਵਨੀ ਜੋੜੋ", + "compose_form.spoiler_placeholder": "ਸਮੱਗਰੀ ਬਾਰੇ ਚੇਤਾਵਨੀ (ਚੋਣਵਾਂ)", "confirmation_modal.cancel": "ਰੱਦ ਕਰੋ", + "confirmations.block.block_and_report": "ਰੋਕ ਲਾਓ ਤੇ ਰਿਪੋਰਟ ਕਰੋ", "confirmations.block.confirm": "ਪਾਬੰਦੀ", "confirmations.delete.confirm": "ਹਟਾਓ", "confirmations.delete.message": "ਕੀ ਤੁਸੀਂ ਇਹ ਪੋਸਟ ਨੂੰ ਹਟਾਉਣਾ ਚਾਹੁੰਦੇ ਹੋ?", @@ -116,7 +132,10 @@ "firehose.local": "ਇਹ ਸਰਵਰ", "firehose.remote": "ਹੋਰ ਸਰਵਰ", "follow_request.reject": "ਰੱਦ ਕਰੋ", + "follow_suggestions.dismiss": "ਮੁੜ ਨਾ ਵੇਖਾਓ", + "follow_suggestions.view_all": "ਸਭ ਵੇਖੋ", "footer.about": "ਸਾਡੇ ਬਾਰੇ", + "footer.directory": "ਪਰੋਫਾਇਲ ਡਾਇਰੈਕਟਰੀ", "footer.get_app": "ਐਪ ਲਵੋ", "footer.invite": "ਲੋਕਾਂ ਨੂੰ ਸੱਦਾ ਭੇਜੋ", "footer.keyboard_shortcuts": "ਕੀਬੋਰਡ ਸ਼ਾਰਟਕੱਟ", @@ -128,12 +147,14 @@ "hashtag.column_header.tag_mode.all": "ਅਤੇ {additional}", "hashtag.column_header.tag_mode.any": "ਜਾਂ {additional}", "hashtag.column_header.tag_mode.none": "{additional} ਬਿਨਾਂ", + "hashtag.column_settings.select.no_options_message": "ਕੋਈ ਸੁਝਾਅ ਨਹੀਂ ਲੱਭਾ", "hashtag.column_settings.tag_mode.any": "ਇਹਨਾਂ ਵਿੱਚੋਂ ਕੋਈ", "hashtag.column_settings.tag_mode.none": "ਇਹਨਾਂ ਵਿੱਚੋਂ ਕੋਈ ਨਹੀਂ", "hashtag.column_settings.tag_toggle": "Include additional tags in this column", "hashtag.follow": "ਹੈਸ਼ਟੈਗ ਨੂੰ ਫ਼ਾਲੋ ਕਰੋ", "hashtag.unfollow": "ਹੈਸ਼ਟੈਗ ਨੂੰ ਅਣ-ਫ਼ਾਲੋ ਕਰੋ", "home.column_settings.basic": "ਆਮ", + "home.pending_critical_update.link": "ਅੱਪਡੇਟ ਵੇਖੋ", "interaction_modal.title.follow": "{name} ਨੂੰ ਫ਼ਾਲੋ ਕਰੋ", "keyboard_shortcuts.back": "ਪਿੱਛੇ ਜਾਓ", "keyboard_shortcuts.blocked": "ਪਾਬੰਦੀ ਲਾਏ ਵਰਤੋਂਕਾਰਾਂ ਦੀ ਸੂਚੀ ਖੋਲ੍ਹੋ", @@ -188,11 +209,13 @@ "navigation_bar.domain_blocks": "ਪਾਬੰਦੀ ਲਾਏ ਡੋਮੇਨ", "navigation_bar.explore": "ਪੜਚੋਲ ਕਰੋ", "navigation_bar.favourites": "ਮਨਪਸੰਦ", + "navigation_bar.filters": "ਮੌਨ ਕੀਤੇ ਸ਼ਬਦ", "navigation_bar.follow_requests": "ਫ਼ਾਲੋ ਦੀਆਂ ਬੇਨਤੀਆਂ", "navigation_bar.followed_tags": "ਫ਼ਾਲੋ ਕੀਤੇ ਹੈਸ਼ਟੈਗ", "navigation_bar.follows_and_followers": "ਫ਼ਾਲੋ ਅਤੇ ਫ਼ਾਲੋ ਕਰਨ ਵਾਲੇ", "navigation_bar.lists": "ਸੂਚੀਆਂ", "navigation_bar.logout": "ਲਾਗ ਆਉਟ", + "navigation_bar.mutes": "ਮੌਨ ਕੀਤੇ ਵਰਤੋਂਕਾਰ", "navigation_bar.personal": "ਨਿੱਜੀ", "navigation_bar.pins": "ਟੰਗੀਆਂ ਪੋਸਟਾਂ", "navigation_bar.preferences": "ਪਸੰਦਾਂ", @@ -202,6 +225,8 @@ "notification.follow": "{name} ਨੇ ਤੁਹਾਨੂੰ ਫ਼ਾਲੋ ਕੀਤਾ", "notification.follow_request": "{name} ਨੇ ਤੁਹਾਨੂੰ ਫ਼ਾਲੋ ਕਰਨ ਦੀ ਬੇਨਤੀ ਕੀਤੀ ਹੈ", "notification.reblog": "{name} boosted your status", + "notifications.column_settings.alert": "ਡੈਸਕਟਾਪ ਸੂਚਨਾਵਾਂ", + "notifications.column_settings.favourite": "ਮਨਪਸੰਦ:", "notifications.column_settings.follow": "ਨਵੇਂ ਫ਼ਾਲੋਅਰ:", "notifications.column_settings.follow_request": "ਨਵੀਆਂ ਫ਼ਾਲੋ ਬੇਨਤੀਆਂ:", "notifications.column_settings.status": "ਨਵੀਆਂ ਪੋਸਟਾਂ:", @@ -261,9 +286,11 @@ "report.target": "{target} ਰਿਪੋਰਟ", "report.unfollow": "@{name} ਨੂੰ ਅਣ-ਫ਼ਾਲੋ ਕਰੋ", "report_notification.attached_statuses": "{count, plural, one {# post} other {# posts}} attached", + "report_notification.categories.legal": "ਕਨੂੰਨੀ", "report_notification.categories.other": "ਬਾਕੀ", "report_notification.categories.spam": "ਸਪੈਮ", "report_notification.categories.violation": "ਨਿਯਮ ਦੀ ਉਲੰਘਣਾ", + "report_notification.open": "ਰਿਪੋਰਟ ਨੂੰ ਖੋਲ੍ਹੋ", "search.placeholder": "ਖੋਜੋ", "search_popout.quick_actions": "ਫੌਰੀ ਕਾਰਵਾਈਆਂ", "search_popout.specific_date": "ਖਾਸ ਤਾਰੀਖ", @@ -271,10 +298,13 @@ "search_results.accounts": "ਪਰੋਫਾਈਲ", "search_results.all": "ਸਭ", "search_results.hashtags": "ਹੈਸ਼ਟੈਗ", + "search_results.see_all": "ਸਭ ਵੇਖੋ", "search_results.statuses": "ਪੋਸਟਾਂ", + "search_results.title": "{q} ਲਈ ਖੋਜ", "server_banner.learn_more": "ਹੋਰ ਜਾਣੋ", "sign_in_banner.create_account": "ਖਾਤਾ ਬਣਾਓ", "sign_in_banner.sign_in": "ਲਾਗਇਨ", + "sign_in_banner.sso_redirect": "ਲਾਗਇਨ ਜਾਂ ਰਜਿਸਟਰ ਕਰੋ", "status.admin_status": "", "status.block": "@{name} ਉੱਤੇ ਪਾਬੰਦੀ ਲਾਓ", "status.bookmark": "ਬੁੱਕਮਾਰਕ", diff --git a/app/javascript/mastodon/locales/pl.json b/app/javascript/mastodon/locales/pl.json index 2eaeeaab55..01b88eacdc 100644 --- a/app/javascript/mastodon/locales/pl.json +++ b/app/javascript/mastodon/locales/pl.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Twoje konto nie jest {locked}. Każdy, kto Cię obserwuje, może wyświetlać Twoje wpisy przeznaczone tylko dla obserwujących.", "compose_form.lock_disclaimer.lock": "zablokowane", "compose_form.placeholder": "Co chodzi ci po głowie?", - "compose_form.poll.add_option": "Dodaj opcję", "compose_form.poll.duration": "Czas trwania głosowania", "compose_form.poll.multiple": "Wielokrotny wybór", "compose_form.poll.option_placeholder": "Opcja {number}", - "compose_form.poll.remove_option": "Usuń tę opcję", "compose_form.poll.single": "Wybierz jedną", "compose_form.poll.switch_to_multiple": "Pozwól na wybranie wielu opcji", "compose_form.poll.switch_to_single": "Pozwól na wybranie tylko jednej opcji", @@ -160,6 +158,7 @@ "compose_form.save_changes": "Aktualizuj", "compose_form.spoiler.marked": "Usuń ostrzeżenie o treści", "compose_form.spoiler.unmarked": "Dodaj ostrzeżenie o treści", + "compose_form.spoiler_placeholder": "Ostrzeżenie o treści (opcjonalne)", "confirmation_modal.cancel": "Anuluj", "confirmations.block.block_and_report": "Zablokuj i zgłoś", "confirmations.block.confirm": "Zablokuj", @@ -278,6 +277,17 @@ "follow_request.authorize": "Autoryzuj", "follow_request.reject": "Odrzuć", "follow_requests.unlocked_explanation": "Mimo że Twoje konto nie jest zablokowane, zespół {domain} uznał że możesz chcieć ręcznie przejrzeć prośby o możliwość obserwacji.", + "follow_suggestions.curated_suggestion": "Wybrane przez personel", + "follow_suggestions.dismiss": "Nie pokazuj ponownie", + "follow_suggestions.hints.featured": "Ten profil został wybrany przez zespół {domain}.", + "follow_suggestions.hints.friends_of_friends": "Ten profil jest popularny w gronie użytkowników, których obserwujesz.", + "follow_suggestions.hints.most_followed": "Ten profil jest jednym z najczęściej obserwowanych na {domain}.", + "follow_suggestions.hints.most_interactions": "Ten profil otrzymuje dużo interakcji na {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Ten profil jest podobny do profili ostatnio przez ciebie zaobserwowanych.", + "follow_suggestions.personalized_suggestion": "Sugestia spersonalizowana", + "follow_suggestions.popular_suggestion": "Sugestia popularna", + "follow_suggestions.view_all": "Pokaż wszystkie", + "follow_suggestions.who_to_follow": "Kogo obserwować", "followed_tags": "Obserwowane hasztagi", "footer.about": "O serwerze", "footer.directory": "Katalog profilów", @@ -304,13 +314,9 @@ "hashtag.follow": "Obserwuj hasztag", "hashtag.unfollow": "Przestań obserwować hashtag", "hashtags.and_other": "…i {count, plural, other {jeszcze #}}", - "home.actions.go_to_explore": "Zobacz, co jest teraz popularne", - "home.actions.go_to_suggestions": "Znajdź ludzi wartych obserwowania", "home.column_settings.basic": "Podstawowe", "home.column_settings.show_reblogs": "Pokazuj podbicia", "home.column_settings.show_replies": "Pokazuj odpowiedzi", - "home.explore_prompt.body": "Twój kanał główny będzie zawierał kombinację postów z tagów i osób które obserwujesz oraz wpisów przezeń podbitych. Jeżeli wydaje się to za spokojnym, spróbuj czegoś poniżej.", - "home.explore_prompt.title": "To twój punkt podparcia w Mastodonie.", "home.hide_announcements": "Ukryj ogłoszenia", "home.pending_critical_update.body": "Zaktualizuj serwer jak tylko będzie to możliwe!", "home.pending_critical_update.link": "Pokaż aktualizacje", @@ -523,11 +529,15 @@ "poll_button.add_poll": "Dodaj głosowanie", "poll_button.remove_poll": "Usuń głosowanie", "privacy.change": "Dostosuj widoczność wpisów", + "privacy.direct.long": "Wszyscy wspomnieni w tym wpisie", "privacy.direct.short": "Konkretni ludzie", "privacy.private.long": "Tylko ci, którzy cię obserwują", "privacy.private.short": "Obserwujący", "privacy.public.long": "Ktokolwiek na i poza Mastodonem", "privacy.public.short": "Publiczny", + "privacy.unlisted.additional": "Taki sam jak \"Publiczny\", ale wpis nie pojawi się w kanałach na żywo, hasztagach, odkrywaniu, ani w wyszukiwaniu w Mastodonie, nawet jeżeli jest to włączone w ustawieniach konta.", + "privacy.unlisted.long": "Widoczne dla każdego, z wyłączeniem funkcji odkrywania", + "privacy.unlisted.short": "Niewidoczny", "privacy_policy.last_updated": "Data ostatniej aktualizacji: {date}", "privacy_policy.title": "Polityka prywatności", "recommended": "Zalecane", @@ -545,7 +555,9 @@ "relative_time.minutes": "{number} min.", "relative_time.seconds": "{number} s.", "relative_time.today": "dzisiaj", + "reply_indicator.attachments": "{count, plural, one {# załącznik} few {# załączniki} many {# załączników} other {# załączniku}}", "reply_indicator.cancel": "Anuluj", + "reply_indicator.poll": "Ankieta", "report.block": "Zablokuj", "report.block_explanation": "Nie zobaczysz ich wpisów. Nie będą mogli zobaczyć Twoich postów ani cię obserwować. Będą mogli domyślić się, że są zablokowani.", "report.categories.legal": "Prawne", diff --git a/app/javascript/mastodon/locales/pt-BR.json b/app/javascript/mastodon/locales/pt-BR.json index bb009239d4..8911afe946 100644 --- a/app/javascript/mastodon/locales/pt-BR.json +++ b/app/javascript/mastodon/locales/pt-BR.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Seu perfil não está {locked}. Qualquer um pode te seguir e ver os toots privados.", "compose_form.lock_disclaimer.lock": "trancado", "compose_form.placeholder": "No que você está pensando?", - "compose_form.poll.add_option": "Adicionar opção", "compose_form.poll.duration": "Duração da enquete", "compose_form.poll.multiple": "Múltipla escolha", "compose_form.poll.option_placeholder": "Opção {number}", - "compose_form.poll.remove_option": "Remover esta opção", "compose_form.poll.single": "Escolha uma", "compose_form.poll.switch_to_multiple": "Permitir múltiplas escolhas", "compose_form.poll.switch_to_single": "Opção única", @@ -279,6 +277,11 @@ "follow_request.authorize": "Aprovar", "follow_request.reject": "Recusar", "follow_requests.unlocked_explanation": "Apesar de seu perfil não ser trancado, {domain} exige que você revise a solicitação para te seguir destes perfis manualmente.", + "follow_suggestions.dismiss": "Não mostrar novamente", + "follow_suggestions.personalized_suggestion": "Sugestão personalizada", + "follow_suggestions.popular_suggestion": "Sugestão popular", + "follow_suggestions.view_all": "Visualizar tudo", + "follow_suggestions.who_to_follow": "Quem seguir", "followed_tags": "Hashtags seguidas", "footer.about": "Sobre", "footer.directory": "Diretório de perfis", @@ -305,13 +308,9 @@ "hashtag.follow": "Seguir hashtag", "hashtag.unfollow": "Parar de seguir hashtag", "hashtags.and_other": "…e {count, plural, one {}other {outros #}}", - "home.actions.go_to_explore": "Veja o que está acontecendo", - "home.actions.go_to_suggestions": "Encontre pessoas para seguir", "home.column_settings.basic": "Básico", "home.column_settings.show_reblogs": "Mostrar boosts", "home.column_settings.show_replies": "Mostrar respostas", - "home.explore_prompt.body": "Seu feed inicial terá uma mistura de publicações das hashtags que você escolheu seguir, das pessoas que você escolheu seguir e das publicações que elas impulsionam. Se está parecendo tranquilo demais, então que tal:", - "home.explore_prompt.title": "Esta é a sua base principal dentro do Mastodon.", "home.hide_announcements": "Ocultar comunicados", "home.pending_critical_update.body": "Por favor, atualize o seu servidor Mastodon o mais rápido possível!", "home.pending_critical_update.link": "Ver atualizações", diff --git a/app/javascript/mastodon/locales/pt-PT.json b/app/javascript/mastodon/locales/pt-PT.json index 22bb1bbfd2..26aa0f0b5f 100644 --- a/app/javascript/mastodon/locales/pt-PT.json +++ b/app/javascript/mastodon/locales/pt-PT.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "A sua conta não é {locked}. Qualquer pessoa pode segui-lo e ver as publicações direcionadas apenas a seguidores.", "compose_form.lock_disclaimer.lock": "fechada", "compose_form.placeholder": "Em que está a pensar?", - "compose_form.poll.add_option": "Adicionar opção", "compose_form.poll.duration": "Duração do inquérito", "compose_form.poll.multiple": "Escolha múltipla", "compose_form.poll.option_placeholder": "Opção {number}", - "compose_form.poll.remove_option": "Eliminar esta opção", "compose_form.poll.single": "Escolha uma", "compose_form.poll.switch_to_multiple": "Alterar o inquérito para permitir várias respostas", "compose_form.poll.switch_to_single": "Alterar o inquérito para permitir uma única resposta", @@ -279,6 +277,17 @@ "follow_request.authorize": "Autorizar", "follow_request.reject": "Rejeitar", "follow_requests.unlocked_explanation": "Apesar de a sua não ser privada, a administração de {domain} pensa que poderá querer rever manualmente os pedidos de seguimento dessas contas.", + "follow_suggestions.curated_suggestion": "Escolha da equipe", + "follow_suggestions.dismiss": "Não mostrar novamente", + "follow_suggestions.hints.featured": "Este perfil foi escolhido a dedo pela equipe {domain}.", + "follow_suggestions.hints.friends_of_friends": "Este perfil é popular entre as pessoas que você segue.", + "follow_suggestions.hints.most_followed": "Este perfil é um dos mais seguidos no {domain}.", + "follow_suggestions.hints.most_interactions": "Este perfil tem recebido recentemente muita atenção no {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Este perfil é semelhante aos perfis que você seguiu mais recentemente.", + "follow_suggestions.personalized_suggestion": "Sugestão personalizada", + "follow_suggestions.popular_suggestion": "Sugestão popular", + "follow_suggestions.view_all": "Ver tudo", + "follow_suggestions.who_to_follow": "Quem seguir", "followed_tags": "Hashtags seguidas", "footer.about": "Sobre", "footer.directory": "Diretório de perfis", @@ -305,13 +314,9 @@ "hashtag.follow": "Seguir #etiqueta", "hashtag.unfollow": "Deixar de seguir #etiqueta", "hashtags.and_other": "…e {count, plural, other {mais #}}", - "home.actions.go_to_explore": "Veja as tendências atuais", - "home.actions.go_to_suggestions": "Encontrar pessoas para seguir", "home.column_settings.basic": "Básico", "home.column_settings.show_reblogs": "Mostrar impulsos", "home.column_settings.show_replies": "Mostrar respostas", - "home.explore_prompt.body": "A sua página inicial terá uma mistura de publicações com as hashtags que escolheu seguir, das pessoas que escolheu seguir e as publicações que elas partilham. Parece bastante sossegado por agora, talvez queira:", - "home.explore_prompt.title": "Esta é a sua base principal dentro do Mastodon.", "home.hide_announcements": "Ocultar comunicações", "home.pending_critical_update.body": "Por favor, atualize o seu servidor Mastodon assim que possível!", "home.pending_critical_update.link": "Ver atualizações", diff --git a/app/javascript/mastodon/locales/ro.json b/app/javascript/mastodon/locales/ro.json index e6d881a986..b8bb779f85 100644 --- a/app/javascript/mastodon/locales/ro.json +++ b/app/javascript/mastodon/locales/ro.json @@ -21,6 +21,8 @@ "account.blocked": "Blocat", "account.browse_more_on_origin_server": "Vezi mai multe pe profilul original", "account.cancel_follow_request": "Retrage cererea de urmărire", + "account.copy": "Copiază link-ul profilului", + "account.direct": "Menționează pe @{name} în privat", "account.disable_notifications": "Nu îmi mai trimite notificări când postează @{name}", "account.domain_blocked": "Domeniu blocat", "account.edit_profile": "Modifică profilul", @@ -30,6 +32,7 @@ "account.featured_tags.last_status_never": "Fără postări", "account.featured_tags.title": "Haștagurile recomandate de {name}", "account.follow": "Abonează-te", + "account.follow_back": "Urmăreşte înapoi", "account.followers": "Urmăritori", "account.followers.empty": "Acest utilizator nu are încă urmăritori.", "account.followers_counter": "{count, plural, one {Un abonat} few {{counter} abonați} other {{counter} de abonați}}", @@ -38,6 +41,7 @@ "account.follows.empty": "Momentan acest utilizator nu are niciun abonament.", "account.go_to_profile": "Mergi la profil", "account.hide_reblogs": "Ascunde distribuirile de la @{name}", + "account.in_memoriam": "În Memoriam.", "account.joined_short": "Înscris", "account.languages": "Schimbă limbile abonate", "account.link_verified_on": "Proprietatea acestui link a fost verificată pe {date}", @@ -46,7 +50,10 @@ "account.mention": "Menționează pe @{name}", "account.moved_to": "{name} a indicat că noul său cont este acum:", "account.mute": "Pune pe @{name} pe silențios", + "account.mute_notifications_short": "Amuțește notificările", + "account.mute_short": "Ignoră", "account.muted": "Pus pe silențios", + "account.no_bio": "Nicio descriere furnizată.", "account.open_original_page": "Deschide pagina originală", "account.posts": "Postări", "account.posts_with_replies": "Postări și răspunsuri", @@ -69,6 +76,7 @@ "admin.dashboard.retention.average": "În medie", "admin.dashboard.retention.cohort": "Înregistrări lunar", "admin.dashboard.retention.cohort_size": "Utilizatori noi", + "admin.impact_report.title": "Rezumatul impactului", "alert.rate_limited.message": "Vă rugăm să reîncercați după {retry_time, time, medium}.", "alert.rate_limited.title": "Debit limitat", "alert.unexpected.message": "A apărut o eroare neașteptată.", @@ -98,9 +106,11 @@ "column.blocks": "Utilizatori blocați", "column.bookmarks": "Marcaje", "column.community": "Cronologie locală", + "column.direct": "Mențiuni private", "column.directory": "Explorează profiluri", "column.domain_blocks": "Domenii blocate", "column.favourites": "Favorite", + "column.firehose": "Fluxuri live", "column.follow_requests": "Cereri de abonare", "column.home": "Acasă", "column.lists": "Liste", @@ -131,11 +141,19 @@ "compose_form.lock_disclaimer.lock": "privat", "compose_form.placeholder": "La ce te gândești?", "compose_form.poll.duration": "Durata sondajului", + "compose_form.poll.multiple": "Alegeri multiple", + "compose_form.poll.option_placeholder": "Opțiune {number}", + "compose_form.poll.single": "Alegeți unul", "compose_form.poll.switch_to_multiple": "Modifică sondajul pentru a permite mai multe opțiuni", "compose_form.poll.switch_to_single": "Modifică sondajul pentru a permite o singură opțiune", + "compose_form.poll.type": "Stil", + "compose_form.publish": "Postare", "compose_form.publish_form": "Publică", + "compose_form.reply": "Răspundeți", + "compose_form.save_changes": "Actualizare", "compose_form.spoiler.marked": "Elimină avertismentul privind conținutul", "compose_form.spoiler.unmarked": "Adaugă un avertisment privind conținutul", + "compose_form.spoiler_placeholder": "Atenționare de conținut (opțional)", "confirmation_modal.cancel": "Anulează", "confirmations.block.block_and_report": "Blochează și raportează", "confirmations.block.confirm": "Blochează", @@ -151,6 +169,7 @@ "confirmations.domain_block.confirm": "Blochează întregul domeniu", "confirmations.domain_block.message": "Ești absolut sigur că vrei să blochezi tot domeniul {domain}? În cele mai multe cazuri, raportarea sau blocarea anumitor lucruri este suficientă și de preferat. Nu vei mai vedea niciun conținut din acest domeniu în vreun flux public sau în vreo notificare. Abonații tăi din acest domeniu vor fi eliminați.", "confirmations.edit.confirm": "Modifică", + "confirmations.edit.message": "Editarea acum va suprascrie mesajul pe care îl compuneți în prezent. Sunteți sigur că vreți să continuați?", "confirmations.logout.confirm": "Deconectare", "confirmations.logout.message": "Ești sigur că vrei să te deconectezi?", "confirmations.mute.confirm": "Ignoră", @@ -165,6 +184,7 @@ "conversation.mark_as_read": "Marchează ca citit", "conversation.open": "Vizualizează conversația", "conversation.with": "Cu {names}", + "copy_icon_button.copied": "Copiat în clipboard", "copypaste.copied": "Copiat", "copypaste.copy_to_clipboard": "Copiază în clipboard", "directory.federated": "Din fediversul cunoscut", @@ -240,10 +260,16 @@ "filter_modal.select_filter.title": "Filtrează această postare", "filter_modal.title.status": "Filtrează o postare", "firehose.all": "Toate", + "firehose.local": "Acest Server", "firehose.remote": "Alte servere", "follow_request.authorize": "Acceptă", "follow_request.reject": "Respinge", "follow_requests.unlocked_explanation": "Chiar dacă contul tău nu este blocat, personalul {domain} a considerat că ai putea prefera să consulți manual cererile de abonare de la aceste conturi.", + "follow_suggestions.dismiss": "Nu mai afișa din nou", + "follow_suggestions.personalized_suggestion": "Sugestie personalizată", + "follow_suggestions.popular_suggestion": "Sugestie populară", + "follow_suggestions.view_all": "Vizualizați tot", + "follow_suggestions.who_to_follow": "Pe cine să urmăriți", "followed_tags": "Hastaguri urmărite", "footer.about": "Despre", "footer.directory": "Catalogul de profiluri", @@ -266,19 +292,21 @@ "hashtag.column_settings.tag_toggle": "Adaugă etichete suplimentare pentru această coloană", "hashtag.follow": "Urmărește haștagul", "hashtag.unfollow": "Nu mai urmări haștagul", - "home.actions.go_to_suggestions": "Găsește persoane de urmărit", "home.column_settings.basic": "De bază", "home.column_settings.show_reblogs": "Afișează distribuirile", "home.column_settings.show_replies": "Afișează răspunsurile", "home.hide_announcements": "Ascunde anunțurile", "home.pending_critical_update.body": "Te rugăm să-ți actualizezi serverul de Mastodon cat mai curând posibil!", "home.pending_critical_update.link": "Vezi noutăți", + "home.pending_critical_update.title": "Actualizare critică de securitate disponibilă!", "home.show_announcements": "Afișează anunțurile", + "interaction_modal.description.favourite": "Cu un cont pe Mastodon, poți adăuga această postare la favorite pentru a-l informa pe autorul ei că o apreciezi și pentru a o salva pentru mai târziu.", "interaction_modal.description.follow": "Cu un cont Mastodon, poți urmări pe {name} pentru a vedea postările sale în cronologia ta principală.", "interaction_modal.description.reblog": "Cu un cont pe Mastodon, poți distribui această postare pentru a le-o arăta și celor abonați ție.", "interaction_modal.description.reply": "Cu un cont pe Mastodon, poți răspunde acestei postări.", "interaction_modal.login.action": "Du-mă acasă", "interaction_modal.login.prompt": "Adresa serverului tău acasă, de ex. mastodon.social", + "interaction_modal.no_account_yet": "Nu ești încă pe Mastodon?", "interaction_modal.on_another_server": "Pe un alt server", "interaction_modal.on_this_server": "Pe acest server", "interaction_modal.title.follow": "Urmărește pe {name}", diff --git a/app/javascript/mastodon/locales/ru.json b/app/javascript/mastodon/locales/ru.json index eefa9c7298..5fcca414cf 100644 --- a/app/javascript/mastodon/locales/ru.json +++ b/app/javascript/mastodon/locales/ru.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "не закрыта", "compose_form.placeholder": "О чём думаете?", "compose_form.poll.duration": "Продолжительность опроса", + "compose_form.poll.multiple": "Несколько вариантов ответа", + "compose_form.poll.option_placeholder": "Вариант {number}", + "compose_form.poll.single": "Выберите один", "compose_form.poll.switch_to_multiple": "Разрешить выбор нескольких вариантов", "compose_form.poll.switch_to_single": "Переключить в режим выбора одного ответа", + "compose_form.poll.type": "Стиль", + "compose_form.publish": "Опубликовать", "compose_form.publish_form": "Опубликовать", + "compose_form.reply": "Ответить", + "compose_form.save_changes": "Сохранить", "compose_form.spoiler.marked": "Текст скрыт за предупреждением", "compose_form.spoiler.unmarked": "Текст не скрыт", + "compose_form.spoiler_placeholder": "Предупреждение о контенте (опционально)", "confirmation_modal.cancel": "Отмена", "confirmations.block.block_and_report": "Заблокировать и пожаловаться", "confirmations.block.confirm": "Заблокировать", @@ -229,7 +237,7 @@ "empty_column.follow_requests": "Вам ещё не приходили запросы на подписку. Все новые запросы будут показаны здесь.", "empty_column.followed_tags": "Вы еще не подписались ни на один хэштег. Когда вы это сделаете, они появятся здесь.", "empty_column.hashtag": "С этим хэштегом пока ещё ничего не постили.", - "empty_column.home": "Ваша лента совсем пуста! Подпишитесь на других, чтобы заполнить её. {suggestions}", + "empty_column.home": "Ваша лента совсем пуста! Подписывайтесь на других, чтобы заполнить её.", "empty_column.list": "В этом списке пока ничего нет.", "empty_column.lists": "У вас ещё нет списков. Созданные вами списки будут показаны здесь.", "empty_column.mutes": "Вы ещё никого не добавляли в список игнорируемых.", @@ -269,6 +277,11 @@ "follow_request.authorize": "Авторизовать", "follow_request.reject": "Отказать", "follow_requests.unlocked_explanation": "Хотя ваша учетная запись не закрыта, команда {domain} подумала, что вы захотите просмотреть запросы от этих учетных записей вручную.", + "follow_suggestions.dismiss": "Больше не показывать", + "follow_suggestions.personalized_suggestion": "Персонализированное предложение", + "follow_suggestions.popular_suggestion": "Популярное предложение", + "follow_suggestions.view_all": "Посмотреть все", + "follow_suggestions.who_to_follow": "На кого подписаться", "followed_tags": "Отслеживаемые хэштеги", "footer.about": "О проекте", "footer.directory": "Каталог профилей", @@ -295,13 +308,9 @@ "hashtag.follow": "Подписаться на новые посты", "hashtag.unfollow": "Отписаться", "hashtags.and_other": "...и {count, plural, other {# ещё}}", - "home.actions.go_to_explore": "Посмотреть, что актуально", - "home.actions.go_to_suggestions": "Подпишитесь на людей", "home.column_settings.basic": "Основные", "home.column_settings.show_reblogs": "Показывать продвижения", "home.column_settings.show_replies": "Показывать ответы", - "home.explore_prompt.body": "В вашем доме появятся сообщения из хэштегов, на которые вы хотите подписаться, люди, которых вы выбрали подписаться, и сообщения, которые они увеличили. Сейчас выглядит спокойно, так что:", - "home.explore_prompt.title": "Это ваша домашняя база в Мастодоне.", "home.hide_announcements": "Скрыть объявления", "home.pending_critical_update.body": "Пожалуйста, обновите свой сервер Mastodon как можно скорее!", "home.pending_critical_update.link": "Посмотреть обновления", @@ -514,7 +523,15 @@ "poll_button.add_poll": "Добавить опрос", "poll_button.remove_poll": "Удалить опрос", "privacy.change": "Изменить видимость поста", + "privacy.direct.long": "Все упомянутые в посте", + "privacy.direct.short": "Определённые люди", + "privacy.private.long": "Только ваши подписчики", + "privacy.private.short": "Подписчики", + "privacy.public.long": "Любой, находящийся на Mastodon и вне его", "privacy.public.short": "Публичный", + "privacy.unlisted.additional": "Работает точно так же, как public, за исключением того, что пост не будет отображаться в прямых лентах, хэштегах, исследованиях или поиске Mastodon, даже если ваш аккаунт подписан на это на уровне всего аккаунта.", + "privacy.unlisted.long": "Меньше алгоритмических фанфар", + "privacy.unlisted.short": "Тихий публичный", "privacy_policy.last_updated": "Последнее обновление {date}", "privacy_policy.title": "Политика конфиденциальности", "recommended": "Рекомендуется", @@ -532,7 +549,9 @@ "relative_time.minutes": "{number} мин", "relative_time.seconds": "{number} с", "relative_time.today": "сегодня", + "reply_indicator.attachments": "{count, plural, one {# вложение} other {# вложения}}", "reply_indicator.cancel": "Отмена", + "reply_indicator.poll": "Опрос", "report.block": "Заблокировать", "report.block_explanation": "Вы перестанете видеть посты этого пользователя, и он(а) больше не сможет подписаться на вас и читать ваши посты. Он(а) сможет понять, что вы заблокировали его/её.", "report.categories.legal": "Правовая информация", diff --git a/app/javascript/mastodon/locales/si.json b/app/javascript/mastodon/locales/si.json index 1b2eb17633..2058d1415b 100644 --- a/app/javascript/mastodon/locales/si.json +++ b/app/javascript/mastodon/locales/si.json @@ -201,11 +201,8 @@ "hashtag.column_settings.tag_mode.all": "මේ සියල්ලම", "hashtag.column_settings.tag_mode.none": "මේ කිසිවක් නැත", "hashtag.column_settings.tag_toggle": "මෙම තීරුවේ අමතර ටැග් ඇතුළත් කරන්න", - "home.actions.go_to_explore": "නැගී එන දෑ බලන්න", - "home.actions.go_to_suggestions": "පුද්ගලයින් සොයන්න", "home.column_settings.basic": "මූලික", "home.column_settings.show_replies": "පිළිතුරු පෙන්වන්න", - "home.explore_prompt.title": "මෙය ඔබගේ මාස්ටඩන් මුල් පිටුවයි.", "home.hide_announcements": "නිවේදන සඟවන්න", "home.pending_critical_update.link": "යාවත්කාල බලන්න", "home.show_announcements": "නිවේදන පෙන්වන්න", diff --git a/app/javascript/mastodon/locales/sk.json b/app/javascript/mastodon/locales/sk.json index 5b1203aeea..37c0dd1383 100644 --- a/app/javascript/mastodon/locales/sk.json +++ b/app/javascript/mastodon/locales/sk.json @@ -35,7 +35,7 @@ "account.follow_back": "Nasleduj späť", "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úcich} other {{counter} Sledujúcich}}", + "account.followers_counter": "{count, plural, one {{counter} Sledujúci} other {{counter} Sledujúci}}", "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 nesleduje.", @@ -142,15 +142,23 @@ "compose_form.direct_message_warning_learn_more": "Zisti viac", "compose_form.encryption_warning": "Príspevky na Mastodon nie sú end-to-end šifrované. Nezdieľajte cez Mastodon žiadne citlivé informácie.", "compose_form.hashtag_warning": "Tento príspevok nebude zobrazený pod žiadným haštagom, lebo nieje verejne listovaný. Iba verejné príspevky môžu byť nájdené podľa haštagu.", - "compose_form.lock_disclaimer": "Tvoj účet nie je {locked}. Ktokoľvek ťa môže nasledovať a vidieť tvoje správy pre sledujúcich.", + "compose_form.lock_disclaimer": "Tvoj účet nie je {locked}. Ktokoľvek ťa môže nasledovať a vidieť tvoje príspevky pre sledujúcich.", "compose_form.lock_disclaimer.lock": "zamknutý", "compose_form.placeholder": "Čo máš na mysli?", "compose_form.poll.duration": "Trvanie ankety", + "compose_form.poll.multiple": "Viacero možností", + "compose_form.poll.option_placeholder": "Voľba {number}", + "compose_form.poll.single": "Vyber jednu", "compose_form.poll.switch_to_multiple": "Zmeň anketu pre povolenie viacerých možností", "compose_form.poll.switch_to_single": "Zmeň anketu na takú s jedinou voľbou", + "compose_form.poll.type": "Typ", + "compose_form.publish": "Prispej", "compose_form.publish_form": "Zverejniť", + "compose_form.reply": "Odpovedz", + "compose_form.save_changes": "Aktualizácia", "compose_form.spoiler.marked": "Text je ukrytý za varovaním", "compose_form.spoiler.unmarked": "Text nieje ukrytý", + "compose_form.spoiler_placeholder": "Varovanie o obsahu (voliteľné)", "confirmation_modal.cancel": "Zruš", "confirmations.block.block_and_report": "Zablokuj a nahlás", "confirmations.block.confirm": "Blokuj", @@ -269,6 +277,12 @@ "follow_request.authorize": "Povoľ prístup", "follow_request.reject": "Odmietni", "follow_requests.unlocked_explanation": "Síce Váš učet nie je uzamknutý, ale {domain} tím si myslel že môžete chcieť skontrolovať žiadosti o sledovanie z týchto účtov manuálne.", + "follow_suggestions.curated_suggestion": "Staff pick", + "follow_suggestions.dismiss": "Znovu nezobrazuj", + "follow_suggestions.personalized_suggestion": "Prispôsobené odporúčania", + "follow_suggestions.popular_suggestion": "Populárne návrhy", + "follow_suggestions.view_all": "Zobraz všetky", + "follow_suggestions.who_to_follow": "Koho nasledovať", "followed_tags": "Nasledované haštagy", "footer.about": "O", "footer.directory": "Adresár profilov", @@ -289,19 +303,15 @@ "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.counter_by_accounts": "{count, plural, one {{counter} sledujúci} few {{counter} sledujúci} many {{counter} sledujúcich} other {{counter} sledujúcich}}", + "hashtag.counter_by_accounts": "{count, plural, one {{counter} účastník} other {{counter} účastníci}}", "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 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", @@ -346,7 +356,7 @@ "keyboard_shortcuts.muted": "otvor zoznam stíšených užívateľov", "keyboard_shortcuts.my_profile": "otvor svoj profil", "keyboard_shortcuts.notifications": "Otvor panel oznámení", - "keyboard_shortcuts.open_media": "na otvorenie médií", + "keyboard_shortcuts.open_media": "Otvorenie médií", "keyboard_shortcuts.pinned": "otvor zoznam pripnutých príspevkov", "keyboard_shortcuts.profile": "otvor autorov profil", "keyboard_shortcuts.reply": "odpovedať", @@ -355,7 +365,7 @@ "keyboard_shortcuts.spoilers": "to show/hide CW field", "keyboard_shortcuts.start": "otvor panel ''začíname''", "keyboard_shortcuts.toggle_hidden": "ukáž/skry text za CW", - "keyboard_shortcuts.toggle_sensitivity": "pre zobrazenie/skrytie médií", + "keyboard_shortcuts.toggle_sensitivity": "Ukáž/skry médiá", "keyboard_shortcuts.toot": "začni úplne nový príspevok", "keyboard_shortcuts.unfocus": "nesústreď sa na písaciu plochu, alebo hľadanie", "keyboard_shortcuts.up": "posuň sa vyššie v zozname", @@ -484,7 +494,7 @@ "onboarding.share.message": "Na Mastodone som {username}. Príď ma nasledovať na {url}", "onboarding.share.next_steps": "Ďalšie možné kroky:", "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.lead": "Teraz si súčasťou Mastodonu, unikátnej, decentralizovanej sociálnej platformy, kde ty, nie algoritmus, spravuješ svoj vlastný zážitok. Poďme ťa naštartovať na tomto novom sociálnom pomedzí:", "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.", @@ -513,7 +523,13 @@ "poll_button.add_poll": "Pridaj anketu", "poll_button.remove_poll": "Odstráň anketu", "privacy.change": "Uprav súkromie príspevku", + "privacy.direct.long": "Všetci spomenutí v príspevku", + "privacy.direct.short": "Konkrétni ľudia", + "privacy.private.long": "Iba tvoji nasledovatelia", + "privacy.private.short": "Sledovatelia", + "privacy.public.long": "Ktokoľvek na, aj mimo Mastodonu", "privacy.public.short": "Verejné", + "privacy.unlisted.short": "Verejný v tichosti", "privacy_policy.last_updated": "Posledná úprava {date}", "privacy_policy.title": "Zásady súkromia", "recommended": "Odporúčané", @@ -532,6 +548,7 @@ "relative_time.seconds": "{number}sek", "relative_time.today": "dnes", "reply_indicator.cancel": "Zrušiť", + "reply_indicator.poll": "Anketa", "report.block": "Blokuj", "report.block_explanation": "Ich príspevky neuvidíte. Nebudú môcť vidieť vaše príspevky ani vás sledovať. Budú môcť zistiť, že sú zablokovaní.", "report.categories.legal": "Právne ujednania", @@ -690,7 +707,7 @@ "units.short.million": "{count}mil.", "units.short.thousand": "{count}tis.", "upload_area.title": "Pretiahni a pusť pre nahratie", - "upload_button.label": "Pridaj médiálny súbor (JPEG, PNG, GIF, WebM, MP4, MOV)", + "upload_button.label": "Pridaj obrázky, video, alebo zvukový súbor", "upload_error.limit": "Limit pre nahrávanie súborov bol prekročený.", "upload_error.poll": "Nahrávanie súborov pri anketách nieje možné.", "upload_form.audio_description": "Popíš, pre ľudí so stratou sluchu", diff --git a/app/javascript/mastodon/locales/sl.json b/app/javascript/mastodon/locales/sl.json index 559b05db72..8396e02a68 100644 --- a/app/javascript/mastodon/locales/sl.json +++ b/app/javascript/mastodon/locales/sl.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "zaklenjen", "compose_form.placeholder": "O čem razmišljate?", "compose_form.poll.duration": "Trajanje ankete", + "compose_form.poll.multiple": "Več možnosti", + "compose_form.poll.option_placeholder": "Možnost {number}", + "compose_form.poll.single": "Izberite eno možnost", "compose_form.poll.switch_to_multiple": "Spremenite anketo, da omogočite več izbir", "compose_form.poll.switch_to_single": "Spremenite anketo, da omogočite eno izbiro", + "compose_form.poll.type": "Slog", + "compose_form.publish": "Objavi", "compose_form.publish_form": "Objavi", + "compose_form.reply": "Odgovori", + "compose_form.save_changes": "Posodobi", "compose_form.spoiler.marked": "Odstrani opozorilo o vsebini", "compose_form.spoiler.unmarked": "Dodaj opozorilo o vsebini", + "compose_form.spoiler_placeholder": "Opozorilo o vsebini (ni obvezno)", "confirmation_modal.cancel": "Prekliči", "confirmations.block.block_and_report": "Blokiraj in prijavi", "confirmations.block.confirm": "Blokiraj", @@ -269,6 +277,17 @@ "follow_request.authorize": "Overi", "follow_request.reject": "Zavrni", "follow_requests.unlocked_explanation": "Čeprav vaš račun ni zaklenjen, zaposleni pri {domain} menijo, da bi morda želeli pregledati zahteve za sledenje teh računov ročno.", + "follow_suggestions.curated_suggestion": "Izbor osebja", + "follow_suggestions.dismiss": "Ne pokaži več", + "follow_suggestions.hints.featured": "Ta profil so izbrali skrbniki strežnika {domain}.", + "follow_suggestions.hints.friends_of_friends": "Ta profil je priljubljen med osebami, ki jim sledite.", + "follow_suggestions.hints.most_followed": "Ta profil na strežniku {domain} je en izmed najbolj sledenih.", + "follow_suggestions.hints.most_interactions": "Ta profil na strežniku {domain} je nedavno prejel veliko pozornosti.", + "follow_suggestions.hints.similar_to_recently_followed": "Ta profil je podoben profilom, ki ste jim nedavno začeli slediti.", + "follow_suggestions.personalized_suggestion": "Osebno prilagojen predlog", + "follow_suggestions.popular_suggestion": "Priljubljen predlog", + "follow_suggestions.view_all": "Pokaži vse", + "follow_suggestions.who_to_follow": "Komu slediti", "followed_tags": "Sledeni ključniki", "footer.about": "O Mastodonu", "footer.directory": "Imenik profilov", @@ -295,13 +314,9 @@ "hashtag.follow": "Sledi ključniku", "hashtag.unfollow": "Nehaj slediti ključniku", "hashtags.and_other": "…in še {count, plural, other {#}}", - "home.actions.go_to_explore": "Poglejte, kaj je v trendu", - "home.actions.go_to_suggestions": "Poiščite osebe, ki jim želite slediti", "home.column_settings.basic": "Osnovno", "home.column_settings.show_reblogs": "Pokaži izpostavitve", "home.column_settings.show_replies": "Pokaži odgovore", - "home.explore_prompt.body": "Vaš domači vir bo vseboval mešanico objav ključnikov, ki ste jih izbrali za sledenje, oseb, ki ste jih izbrali za sledenje, in objav, ki jih ti izpostavljajo. Če se vam to zdi preveč tiho, morda želite:", - "home.explore_prompt.title": "To je vaš dom v okviru Mastodona.", "home.hide_announcements": "Skrij obvestila", "home.pending_critical_update.body": "Čim prej posodobite svoj strežnik Mastodon!", "home.pending_critical_update.link": "Glejte posodobitve", @@ -514,7 +529,15 @@ "poll_button.add_poll": "Dodaj anketo", "poll_button.remove_poll": "Odstrani anketo", "privacy.change": "Spremeni zasebnost objave", + "privacy.direct.long": "Vsem omenjenim v objavi", + "privacy.direct.short": "Določenim ljudem", + "privacy.private.long": "Samo vašim sledilcem", + "privacy.private.short": "Sledilcem", + "privacy.public.long": "Vsem, ki so ali niso na Mastodonu", "privacy.public.short": "Javno", + "privacy.unlisted.additional": "Učinek je enak kot pri javni objavi, le da se ta ne bo prikazala v živih virih, med ključniki, raziskovanjem ali iskanjem, četudi ste to vključili na ravni računa.", + "privacy.unlisted.long": "Manj vsebine po izboru algoritma", + "privacy.unlisted.short": "Tiho javno", "privacy_policy.last_updated": "Zadnja posodobitev {date}", "privacy_policy.title": "Pravilnik o zasebnosti", "recommended": "Priporočeno", @@ -532,7 +555,9 @@ "relative_time.minutes": "{number} m", "relative_time.seconds": "{number} s", "relative_time.today": "danes", + "reply_indicator.attachments": "{count, plural, one {# priloga} two {# prilogi} few {# priloge} other {# prilog}}", "reply_indicator.cancel": "Prekliči", + "reply_indicator.poll": "Anketa", "report.block": "Blokiraj", "report.block_explanation": "Njihovih objav ne boste videli. Oni ne bodo videli vaših objav, niti vam ne morejo slediti. Lahko bodo ugotovili, da so blokirani.", "report.categories.legal": "Pravno obvestilo", diff --git a/app/javascript/mastodon/locales/sq.json b/app/javascript/mastodon/locales/sq.json index bfc674248b..c388ebb865 100644 --- a/app/javascript/mastodon/locales/sq.json +++ b/app/javascript/mastodon/locales/sq.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Llogaria juaj s’është {locked}. Mund ta ndjekë cilido, për të parë postimet tuaja vetëm për ndjekësit.", "compose_form.lock_disclaimer.lock": "e kyçur", "compose_form.placeholder": "Ç’bluani në mendje?", - "compose_form.poll.add_option": "Shtoni mundësi", "compose_form.poll.duration": "Kohëzgjatje pyetësori", "compose_form.poll.multiple": "Shumë zgjedhje", "compose_form.poll.option_placeholder": "Mundësia {number}", - "compose_form.poll.remove_option": "Hiqe këtë mundësi", "compose_form.poll.single": "Zgjidhni një", "compose_form.poll.switch_to_multiple": "Ndrysho votimin për të lejuar shumë zgjedhje", "compose_form.poll.switch_to_single": "Ndrysho votimin për të lejuar vetëm një zgjedhje", @@ -279,6 +277,17 @@ "follow_request.authorize": "Autorizoje", "follow_request.reject": "Hidhe tej", "follow_requests.unlocked_explanation": "Edhe pse llogaria juaj s’është e kyçur, ekipi i {domain} mendoi se mund të donit të shqyrtonit dorazi kërkesa ndjekjeje prej këtyre llogarive.", + "follow_suggestions.curated_suggestion": "Zgjedhur nga ekipi", + "follow_suggestions.dismiss": "Mos shfaq më", + "follow_suggestions.hints.featured": "Ky profil është zgjedhur nga ekipi {domain}.", + "follow_suggestions.hints.friends_of_friends": "Ky profil është popullor mes personave që ndiqni.", + "follow_suggestions.hints.most_followed": "Ky profil është një nga më të ndjekur në {domain}.", + "follow_suggestions.hints.most_interactions": "Ky profil ka tërhequr mjaft vëmendjen së fundi në {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Ky profil është i ngjashëm me profile që keni ndjekur tani afër.", + "follow_suggestions.personalized_suggestion": "Sugjerim i personalizuar", + "follow_suggestions.popular_suggestion": "Sugjerim popullor", + "follow_suggestions.view_all": "Shihni krejt", + "follow_suggestions.who_to_follow": "Cilët të ndiqen", "followed_tags": "Hashtag-ë të ndjekur", "footer.about": "Mbi", "footer.directory": "Drejtori profilesh", @@ -305,13 +314,9 @@ "hashtag.follow": "Ndiqe hashtag-un", "hashtag.unfollow": "Hiqe ndjekjen e hashtag-ut", "hashtags.and_other": "…dhe {count, plural, one {}other {# më tepër}}", - "home.actions.go_to_explore": "Shihni ç’është në modë", - "home.actions.go_to_suggestions": "Gjeni persona për ndjekje", "home.column_settings.basic": "Bazë", "home.column_settings.show_reblogs": "Shfaq përforcime", "home.column_settings.show_replies": "Shfaq përgjigje", - "home.explore_prompt.body": "Prurja juaj bazë do të ketë një përzierje postimesh nga hashtag-ë që keni zgjedhur të ndiqni, persona që keni zgjedhur të ndiqni dhe postime që ata përforcojnë. Nëse kjo duket si shumë qetësi, mund të doni të:", - "home.explore_prompt.title": "Kjo është baza juaj brenda Mastodon-it.", "home.hide_announcements": "Fshihi lajmërimet", "home.pending_critical_update.body": "Ju lutemi, përditësoni sa më shpejt të jetë e mundur shërbyesin tuaj Mastodon!", "home.pending_critical_update.link": "Shihni përditësime", diff --git a/app/javascript/mastodon/locales/sr-Latn.json b/app/javascript/mastodon/locales/sr-Latn.json index b0348748a6..e6be3f3795 100644 --- a/app/javascript/mastodon/locales/sr-Latn.json +++ b/app/javascript/mastodon/locales/sr-Latn.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "zaključan", "compose_form.placeholder": "O čemu razmišljate?", "compose_form.poll.duration": "Trajanje ankete", + "compose_form.poll.multiple": "Višestruki izbor", + "compose_form.poll.option_placeholder": "Opcija {number}", + "compose_form.poll.single": "Odaberite jedno", "compose_form.poll.switch_to_multiple": "Promenite anketu da biste omogućili više izbora", "compose_form.poll.switch_to_single": "Promenite anketu da biste omogućili jedan izbor", + "compose_form.poll.type": "Stil", + "compose_form.publish": "Objavi", "compose_form.publish_form": "Objavi", + "compose_form.reply": "Odgovori", + "compose_form.save_changes": "Ažuriraj", "compose_form.spoiler.marked": "Ukloni upozorenje o sadržaju", "compose_form.spoiler.unmarked": "Dodaj upozorenje o sadržaju", + "compose_form.spoiler_placeholder": "Upozorenje o sadržaju (opciono)", "confirmation_modal.cancel": "Otkaži", "confirmations.block.block_and_report": "Blokiraj i prijavi", "confirmations.block.confirm": "Blokiraj", @@ -269,6 +277,11 @@ "follow_request.authorize": "Odobri", "follow_request.reject": "Odbij", "follow_requests.unlocked_explanation": "Iako vaš nalog nije zaključan, osoblje {domain} smatra da biste možda želeli da ručno pregledate zahteve za praćenje sa ovih naloga.", + "follow_suggestions.dismiss": "Ne prikazuj ponovo", + "follow_suggestions.personalized_suggestion": "Personalizovani predlog", + "follow_suggestions.popular_suggestion": "Popularni predlog", + "follow_suggestions.view_all": "Prikaži sve", + "follow_suggestions.who_to_follow": "Koga pratiti", "followed_tags": "Praćene heš oznake", "footer.about": "Osnovni podaci", "footer.directory": "Direktorijum profila", @@ -295,13 +308,9 @@ "hashtag.follow": "Zaprati heš oznaku", "hashtag.unfollow": "Otprati heš oznaku", "hashtags.and_other": "…i {count, plural, one {još #} few {još #}other {još #}}", - "home.actions.go_to_explore": "Pogledate šta je u trendu", - "home.actions.go_to_suggestions": "Pronađete ljude koje biste pratili", "home.column_settings.basic": "Osnovna", "home.column_settings.show_reblogs": "Prikaži podržavanja", "home.column_settings.show_replies": "Prikaži odgovore", - "home.explore_prompt.body": "Vaša početna stranica će imati mešavinu objava od heš oznaka koje ste izabrali da pratite, ljudi koje ste izabrali da pratite i objava koje su podržali. Ako izgleda previše tiho, možda ćete želeti da:", - "home.explore_prompt.title": "Ovo je vaša matična baza u Mastodon-u.", "home.hide_announcements": "Sakrij najave", "home.pending_critical_update.body": "Ažurirajte svoj Mastodon server što je pre moguće!", "home.pending_critical_update.link": "Pogledajte ažuriranja", @@ -514,7 +523,15 @@ "poll_button.add_poll": "Dodaj anketu", "poll_button.remove_poll": "Ukloni anketu", "privacy.change": "Promeni privatnost objave", + "privacy.direct.long": "Svi pomenuti u objavi", + "privacy.direct.short": "Određeni ljudi", + "privacy.private.long": "Samo vaši pratioci", + "privacy.private.short": "Pratioci", + "privacy.public.long": "Bilo ko na Mastodon-u i van njega", "privacy.public.short": "Javno", + "privacy.unlisted.additional": "Ovo se ponaša potpuno kao javno, osim što se objava neće pojavljivati u izvorima uživo ili heš oznakama, istraživanjima ili pretrazi Mastodon-a, čak i ako ste uključeni u celom nalogu.", + "privacy.unlisted.long": "Manje algoritamskih fanfara", + "privacy.unlisted.short": "Tiha javnost", "privacy_policy.last_updated": "Poslednje ažuriranje {date}", "privacy_policy.title": "Politika privatnosti", "recommended": "Preporučeno", @@ -532,7 +549,9 @@ "relative_time.minutes": "{number} min.", "relative_time.seconds": "{number} sek.", "relative_time.today": "danas", + "reply_indicator.attachments": "{count, plural, one {# prilog} few {# priloga} other {# priloga}}", "reply_indicator.cancel": "Otkaži", + "reply_indicator.poll": "Anketa", "report.block": "Blokiraj", "report.block_explanation": "Nećete videti objave korisnika. Ni on neće videti Vaše objave niti će moći da Vas prati. Takođe će moći da sazna da je blokiran.", "report.categories.legal": "Pravni", diff --git a/app/javascript/mastodon/locales/sr.json b/app/javascript/mastodon/locales/sr.json index 4e4956e1a2..3143b5215e 100644 --- a/app/javascript/mastodon/locales/sr.json +++ b/app/javascript/mastodon/locales/sr.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "Ваш налог није {locked}. Свако може да Вас запрати и да види објаве намењене само Вашим пратиоцима.", "compose_form.lock_disclaimer.lock": "закључан", "compose_form.placeholder": "О чему размишљате?", - "compose_form.poll.add_option": "Додај опцију", "compose_form.poll.duration": "Трајање анкете", "compose_form.poll.multiple": "Вишеструки избор", "compose_form.poll.option_placeholder": "Опција {number}", - "compose_form.poll.remove_option": "Уклони ову опцију", "compose_form.poll.single": "Одаберите једно", "compose_form.poll.switch_to_multiple": "Промените анкету да бисте омогућили више избора", "compose_form.poll.switch_to_single": "Промените анкету да бисте омогућили један избор", @@ -279,6 +277,16 @@ "follow_request.authorize": "Одобри", "follow_request.reject": "Одбиј", "follow_requests.unlocked_explanation": "Иако ваш налог није закључан, особље {domain} сматра да бисте можда желели да ручно прегледате захтеве за праћење са ових налога.", + "follow_suggestions.dismiss": "Не приказуј поново", + "follow_suggestions.hints.featured": "Овај профил је ручно изабрао тим {domain}.", + "follow_suggestions.hints.friends_of_friends": "Овај профил је популаран међу људима које пратите.", + "follow_suggestions.hints.most_followed": "Овај профил је један од најпраћенијих на {domain}.", + "follow_suggestions.hints.most_interactions": "Овај профил је недавно добио велику пажњу на {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Овај профил је сличан профилима које сте недавно запратили.", + "follow_suggestions.personalized_suggestion": "Персонализовани предлог", + "follow_suggestions.popular_suggestion": "Популарни предлог", + "follow_suggestions.view_all": "Прикажи све", + "follow_suggestions.who_to_follow": "Кога пратити", "followed_tags": "Праћене хеш ознаке", "footer.about": "Основни подаци", "footer.directory": "Директоријум профила", @@ -305,13 +313,9 @@ "hashtag.follow": "Запрати хеш ознаку", "hashtag.unfollow": "Отпрати хеш ознаку", "hashtags.and_other": "…и {count, plural, one {још #} few {још #}other {још #}}", - "home.actions.go_to_explore": "Погледате шта је у тренду", - "home.actions.go_to_suggestions": "Пронађете људе које бисте пратили", "home.column_settings.basic": "Основна", "home.column_settings.show_reblogs": "Прикажи подржавања", "home.column_settings.show_replies": "Прикажи одговоре", - "home.explore_prompt.body": "Ваша почетна страница ће имати мешавину објава од хеш ознака које сте изабрали да пратите, људи које сте изабрали да пратите и објава које су подржали. Ако изгледа превише тихо, можда ћете желети да:", - "home.explore_prompt.title": "Ово је ваша матична база у Mastodon-у.", "home.hide_announcements": "Сакриј најаве", "home.pending_critical_update.body": "Ажурирајте свој Mastodon сервер што је пре могуће!", "home.pending_critical_update.link": "Погледајте ажурирања", diff --git a/app/javascript/mastodon/locales/sv.json b/app/javascript/mastodon/locales/sv.json index d6e6555b53..55503ddf50 100644 --- a/app/javascript/mastodon/locales/sv.json +++ b/app/javascript/mastodon/locales/sv.json @@ -145,12 +145,14 @@ "compose_form.lock_disclaimer": "Ditt konto är inte {locked}. Vem som helst kan följa dig för att se dina inlägg som endast är för följare.", "compose_form.lock_disclaimer.lock": "låst", "compose_form.placeholder": "Vad tänker du på?", - "compose_form.poll.add_option": "Lägg till alternativ", "compose_form.poll.duration": "Varaktighet för omröstning", + "compose_form.poll.multiple": "Flera val", "compose_form.poll.option_placeholder": "Alternativ {number}", + "compose_form.poll.single": "Välj en", "compose_form.poll.switch_to_multiple": "Ändra enkät för att tillåta flera val", "compose_form.poll.switch_to_single": "Ändra enkät för att tillåta ett enda val", "compose_form.poll.type": "Stil", + "compose_form.publish": "Publicera", "compose_form.publish_form": "Publicera", "compose_form.reply": "Svara", "compose_form.save_changes": "Uppdatera", @@ -274,7 +276,18 @@ "firehose.remote": "Andra servrar", "follow_request.authorize": "Godkänn", "follow_request.reject": "Avvisa", - "follow_requests.unlocked_explanation": "Även om ditt konto inte är låst tror {domain} personalen att du kanske vill granska dessa följares förfrågningar manuellt.", + "follow_requests.unlocked_explanation": "Även om ditt konto inte är låst tror {domain}-personalen att du kanske vill granska dessa följares förfrågningar manuellt.", + "follow_suggestions.curated_suggestion": "Utvald av personalen", + "follow_suggestions.dismiss": "Visa inte igen", + "follow_suggestions.hints.featured": "Denna profil är handplockad av {domain}-teamet.", + "follow_suggestions.hints.friends_of_friends": "Denna profil är populär bland de personer du följer.", + "follow_suggestions.hints.most_followed": "Denna profil är en av de mest följda på {domain}.", + "follow_suggestions.hints.most_interactions": "Denna profil har nyligen fått mycket uppmärksamhet på {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Denna profil liknar de profiler som du nyligen har följt.", + "follow_suggestions.personalized_suggestion": "Personligt förslag", + "follow_suggestions.popular_suggestion": "Populärt förslag", + "follow_suggestions.view_all": "Visa alla", + "follow_suggestions.who_to_follow": "Rekommenderade profiler", "followed_tags": "Följda hashtags", "footer.about": "Om", "footer.directory": "Profilkatalog", @@ -301,13 +314,9 @@ "hashtag.follow": "Följ hashtagg", "hashtag.unfollow": "Avfölj hashtagg", "hashtags.and_other": "…och {count, plural, one {}other {# mer}}", - "home.actions.go_to_explore": "Se vad som trendar", - "home.actions.go_to_suggestions": "Hitta personer att följa", "home.column_settings.basic": "Grundläggande", "home.column_settings.show_reblogs": "Visa boostar", "home.column_settings.show_replies": "Visa svar", - "home.explore_prompt.body": "Din hemflöde kommer att ha en blandning av inlägg från taggar du har valt att följa, de människor som du har valt att följa och de inlägg som de boostar. Om det känns för tyst kanske du vill:", - "home.explore_prompt.title": "Detta är din hembas inom Mastodon.", "home.hide_announcements": "Dölj notiser", "home.pending_critical_update.body": "Uppdatera din Mastodon-server så snart som möjligt!", "home.pending_critical_update.link": "Se uppdateringar", @@ -484,7 +493,9 @@ "onboarding.profile.note": "Bio", "onboarding.profile.note_hint": "Du kan @nämna andra personer eller #hashtags…", "onboarding.profile.save_and_continue": "Spara och fortsätt", + "onboarding.profile.title": "Konfiguration av profil", "onboarding.profile.upload_avatar": "Ladda upp profilbild", + "onboarding.profile.upload_header": "Ladda upp profilbanner", "onboarding.share.lead": "Låt folk veta hur de kan hitta dig på Mastodon!", "onboarding.share.message": "Jag är {username} på #Mastodon! Följ mig på {url}", "onboarding.share.next_steps": "Möjliga nästa steg:", @@ -518,10 +529,15 @@ "poll_button.add_poll": "Lägg till en omröstning", "poll_button.remove_poll": "Ta bort omröstning", "privacy.change": "Ändra inläggsintegritet", + "privacy.direct.long": "Alla som nämns i inlägget", + "privacy.direct.short": "Särskilda personer", "privacy.private.long": "Endast dina följare", "privacy.private.short": "Följare", "privacy.public.long": "Alla på och utanför Mastodon", - "privacy.public.short": "Publik", + "privacy.public.short": "Offentlig", + "privacy.unlisted.additional": "Detta fungerar precis som offentlig, förutom att inlägget inte visas i liveflöden eller hashtaggar, utforska eller Mastodon-sökning, även om du har valt detta för hela kontot.", + "privacy.unlisted.long": "Mindre beaktat av algoritmen", + "privacy.unlisted.short": "Offentlig (begränsad)", "privacy_policy.last_updated": "Senast uppdaterad {date}", "privacy_policy.title": "Integritetspolicy", "recommended": "Rekommenderas", @@ -539,6 +555,7 @@ "relative_time.minutes": "{number}min", "relative_time.seconds": "{number}sek", "relative_time.today": "idag", + "reply_indicator.attachments": "{count, plural, one {# bilaga} other {# bilagor}}", "reply_indicator.cancel": "Ångra", "reply_indicator.poll": "Omröstning", "report.block": "Blockera", diff --git a/app/javascript/mastodon/locales/tai.json b/app/javascript/mastodon/locales/tai.json index b1a242c751..fe6b8fe650 100644 --- a/app/javascript/mastodon/locales/tai.json +++ b/app/javascript/mastodon/locales/tai.json @@ -2,25 +2,25 @@ "about.blocks": "Siū kuán-tsè ê su-hāu-khì", "about.contact": "Liân-lo̍k:", "about.disclaimer": "Ling-khí-tshiūnn sī tsi̍t-ê khai-guân nńg-thé,i ê siong-phiau sī Mastodon gGmbH.", - "account.badges.bot": "Bot", - "account.cancel_follow_request": "Withdraw follow request", + "account.badges.bot": "Tsū-tōng-ê", + "account.cancel_follow_request": "Mài-koh tui-tsong", "account.media": "Mûi-thé", "account.mention": "Thê-khí @{name}", - "account.posts": "Toots", - "account.posts_with_replies": "Toots and replies", - "account.requested": "Awaiting approval", - "account.statuses_counter": "{count, plural, one {{counter} Toot} other {{counter} Toots}}", - "account_note.placeholder": "Click to add a note", - "column.pins": "Pinned toot", - "community.column_settings.media_only": "Media only", - "compose_form.encryption_warning": "Posts on Mastodon are not end-to-end encrypted. Do not share any dangerous information over Mastodon.", - "compose_form.hashtag_warning": "This post won't be listed under any hashtag as it is unlisted. Only public posts can be searched by hashtag.", - "compose_form.placeholder": "What is on your mind?", - "compose_form.publish_form": "Publish", - "compose_form.spoiler.marked": "Text is hidden behind warning", - "compose_form.spoiler.unmarked": "Text is not hidden", - "confirmations.delete.message": "Are you sure you want to delete this status?", - "confirmations.domain_block.confirm": "Hide entire domain", + "account.posts": "Huah-siann", + "account.posts_with_replies": "Huah-siann kah huê-ìng", + "account.requested": "Tán-thāi phue-tsún", + "account.statuses_counter": "{count, plural, one {{counter} Huah-siann} other {{counter} Huah-siann}}", + "account_note.placeholder": "Tiám tsi̍t-ē ka-thiam pī-tsù", + "column.pins": "Tah thâu-tsîng ê huah-siann", + "community.column_settings.media_only": "Kan-na muî-thé", + "compose_form.encryption_warning": "Tī Mastodon tah huah-siann m̄-sī tuan-tuì-tuan ka-pì ê. M̄-thang tī Mastodon hun-hióng jīm-hô bín-kám ê tsū-sìn.", + "compose_form.hashtag_warning": "Tsit-ê huah-siann in-uī m̄-sī kong-khai ê, sóo-í buē tī jīm-hô tsú-tê piau-tshiam hián-sī. Kan-na kong-khai ê huah-siann ē-tàng hōo tsú-tê piau-tshiam tshâ-tshuē.", + "compose_form.placeholder": "Lí teh siūnn siánn?", + "compose_form.publish_form": "Huah--tshut-khì", + "compose_form.spoiler.marked": "Î-tû luē-iông kíng-kò", + "compose_form.spoiler.unmarked": "Tsing-ka luē-iông kíng-kò", + "confirmations.delete.message": "Lí kám bueh thâi-tiāu tsi̍t-ē huah-siann?", + "confirmations.domain_block.confirm": "Hong-só tsíng-kò bāng-hi̍k", "dismissable_banner.explore_links": "These news stories are being talked about by people on this and other servers of the decentralized network right now.", "dismissable_banner.explore_tags": "These hashtags are gaining traction among people on this and other servers of the decentralized network right now.", "embed.instructions": "Embed this status on your website by copying the code below.", @@ -46,7 +46,7 @@ "keyboard_shortcuts.muted": "to open muted users list", "keyboard_shortcuts.my_profile": "to open your profile", "keyboard_shortcuts.notifications": "to open notifications column", - "keyboard_shortcuts.open_media": "to open media", + "keyboard_shortcuts.open_media": "Khui muî-thé", "keyboard_shortcuts.pinned": "to open pinned toots list", "keyboard_shortcuts.profile": "to open author's profile", "keyboard_shortcuts.reply": "to reply", diff --git a/app/javascript/mastodon/locales/th.json b/app/javascript/mastodon/locales/th.json index 4437afa78c..0865b18542 100644 --- a/app/javascript/mastodon/locales/th.json +++ b/app/javascript/mastodon/locales/th.json @@ -1,5 +1,5 @@ { - "about.blocks": "เซิร์ฟเวอร์ที่มีการควบคุม", + "about.blocks": "เซิร์ฟเวอร์ที่มีการกลั่นกรอง", "about.contact": "ติดต่อ:", "about.disclaimer": "Mastodon เป็นซอฟต์แวร์เสรี โอเพนซอร์ส และเครื่องหมายการค้าของ Mastodon gGmbH", "about.domain_blocks.no_reason_available": "เหตุผลไม่พร้อมใช้งาน", @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "ล็อคอยู่", "compose_form.placeholder": "คุณกำลังคิดอะไรอยู่?", "compose_form.poll.duration": "ระยะเวลาการสำรวจความคิดเห็น", + "compose_form.poll.multiple": "หลายตัวเลือก", + "compose_form.poll.option_placeholder": "ตัวเลือก {number}", + "compose_form.poll.single": "เลือกอย่างใดอย่างหนึ่ง", "compose_form.poll.switch_to_multiple": "เปลี่ยนการสำรวจความคิดเห็นเป็นอนุญาตหลายตัวเลือก", "compose_form.poll.switch_to_single": "เปลี่ยนการสำรวจความคิดเห็นเป็นอนุญาตตัวเลือกเดี่ยว", + "compose_form.poll.type": "ลักษณะ", + "compose_form.publish": "โพสต์", "compose_form.publish_form": "โพสต์ใหม่", + "compose_form.reply": "ตอบกลับ", + "compose_form.save_changes": "อัปเดต", "compose_form.spoiler.marked": "เอาคำเตือนเนื้อหาออก", "compose_form.spoiler.unmarked": "เพิ่มคำเตือนเนื้อหา", + "compose_form.spoiler_placeholder": "คำเตือนเนื้อหา (ไม่จำเป็น)", "confirmation_modal.cancel": "ยกเลิก", "confirmations.block.block_and_report": "ปิดกั้นแล้วรายงาน", "confirmations.block.confirm": "ปิดกั้น", @@ -269,6 +277,17 @@ "follow_request.authorize": "อนุญาต", "follow_request.reject": "ปฏิเสธ", "follow_requests.unlocked_explanation": "แม้ว่าไม่มีการล็อคบัญชีของคุณ พนักงานของ {domain} คิดว่าคุณอาจต้องการตรวจทานคำขอติดตามจากบัญชีเหล่านี้ด้วยตนเอง", + "follow_suggestions.curated_suggestion": "คัดสรรโดยพนักงาน", + "follow_suggestions.dismiss": "ไม่ต้องแสดงอีก", + "follow_suggestions.hints.featured": "โปรไฟล์นี้ได้รับการคัดสรรโดยทีม {domain}", + "follow_suggestions.hints.friends_of_friends": "โปรไฟล์นี้ได้รับความนิยมในหมู่ผู้คนที่คุณติดตาม", + "follow_suggestions.hints.most_followed": "โปรไฟล์นี้เป็นหนึ่งในโปรไฟล์ที่ได้รับการติดตามมากที่สุดใน {domain}", + "follow_suggestions.hints.most_interactions": "โปรไฟล์นี้เพิ่งได้รับความสนใจอย่างมากใน {domain}", + "follow_suggestions.hints.similar_to_recently_followed": "โปรไฟล์นี้คล้ายกับโปรไฟล์ที่คุณได้ติดตามล่าสุด", + "follow_suggestions.personalized_suggestion": "ข้อเสนอแนะเฉพาะบุคคล", + "follow_suggestions.popular_suggestion": "ข้อเสนอแนะยอดนิยม", + "follow_suggestions.view_all": "ดูทั้งหมด", + "follow_suggestions.who_to_follow": "ติดตามใครดี", "followed_tags": "แฮชแท็กที่ติดตาม", "footer.about": "เกี่ยวกับ", "footer.directory": "ไดเรกทอรีโปรไฟล์", @@ -295,13 +314,9 @@ "hashtag.follow": "ติดตามแฮชแท็ก", "hashtag.unfollow": "เลิกติดตามแฮชแท็ก", "hashtags.and_other": "…และอีก {count, plural, other {# เพิ่มเติม}}", - "home.actions.go_to_explore": "ดูสิ่งที่กำลังนิยม", - "home.actions.go_to_suggestions": "ค้นหาผู้คนที่จะติดตาม", "home.column_settings.basic": "พื้นฐาน", "home.column_settings.show_reblogs": "แสดงการดัน", "home.column_settings.show_replies": "แสดงการตอบกลับ", - "home.explore_prompt.body": "ฟีดหน้าแรกของคุณจะมีการผสมผสานของโพสต์จากแฮชแท็กที่คุณได้เลือกติดตาม, ผู้คนที่คุณได้เลือกติดตาม และโพสต์ที่เขาดัน หากนั่นรู้สึกเงียบเกินไป คุณอาจต้องการ:", - "home.explore_prompt.title": "นี่คือฐานหน้าแรกของคุณภายใน Mastodon", "home.hide_announcements": "ซ่อนประกาศ", "home.pending_critical_update.body": "โปรดอัปเดตเซิร์ฟเวอร์ Mastodon ของคุณโดยเร็วที่สุดเท่าที่จะเป็นไปได้!", "home.pending_critical_update.link": "ดูการอัปเดต", @@ -365,7 +380,7 @@ "lightbox.next": "ถัดไป", "lightbox.previous": "ก่อนหน้า", "limited_account_hint.action": "แสดงโปรไฟล์ต่อไป", - "limited_account_hint.title": "มีการซ่อนโปรไฟล์นี้โดยผู้ควบคุมของ {domain}", + "limited_account_hint.title": "มีการซ่อนโปรไฟล์นี้โดยผู้กลั่นกรองของ {domain}", "link_preview.author": "โดย {name}", "lists.account.add": "เพิ่มไปยังรายการ", "lists.account.remove": "เอาออกจากรายการ", @@ -514,7 +529,15 @@ "poll_button.add_poll": "เพิ่มการสำรวจความคิดเห็น", "poll_button.remove_poll": "เอาการสำรวจความคิดเห็นออก", "privacy.change": "เปลี่ยนความเป็นส่วนตัวของโพสต์", + "privacy.direct.long": "ทุกคนที่กล่าวถึงในโพสต์", + "privacy.direct.short": "ผู้คนที่เฉพาะเจาะจง", + "privacy.private.long": "เฉพาะผู้ติดตามของคุณเท่านั้น", + "privacy.private.short": "ผู้ติดตาม", + "privacy.public.long": "ใครก็ตามที่อยู่ในและนอก Mastodon", "privacy.public.short": "สาธารณะ", + "privacy.unlisted.additional": "สิ่งนี้ทำงานเหมือนกับสาธารณะทุกประการ ยกเว้นโพสต์จะไม่ปรากฏในฟีดสดหรือแฮชแท็ก, การสำรวจ หรือการค้นหา Mastodon แม้ว่าคุณได้เลือกรับทั่วทั้งบัญชีก็ตาม", + "privacy.unlisted.long": "การประโคมอัลกอริทึมที่น้อยลง", + "privacy.unlisted.short": "สาธารณะแบบเงียบ", "privacy_policy.last_updated": "อัปเดตล่าสุดเมื่อ {date}", "privacy_policy.title": "นโยบายความเป็นส่วนตัว", "recommended": "แนะนำ", @@ -532,7 +555,9 @@ "relative_time.minutes": "{number} นาที", "relative_time.seconds": "{number} วินาที", "relative_time.today": "วันนี้", + "reply_indicator.attachments": "{count, plural, other {# ไฟล์แนบ}}", "reply_indicator.cancel": "ยกเลิก", + "reply_indicator.poll": "การสำรวจความคิดเห็น", "report.block": "ปิดกั้น", "report.block_explanation": "คุณจะไม่เห็นโพสต์ของเขา เขาจะไม่สามารถเห็นโพสต์ของคุณหรือติดตามคุณ เขาจะสามารถบอกได้ว่ามีการปิดกั้นเขา", "report.categories.legal": "กฎหมาย", @@ -612,9 +637,9 @@ "sign_in_banner.sign_in": "เข้าสู่ระบบ", "sign_in_banner.sso_redirect": "เข้าสู่ระบบหรือลงทะเบียน", "sign_in_banner.text": "เข้าสู่ระบบเพื่อติดตามโปรไฟล์หรือแฮชแท็ก ชื่นชอบ แชร์ และตอบกลับโพสต์ คุณยังสามารถโต้ตอบจากบัญชีของคุณในเซิร์ฟเวอร์อื่น", - "status.admin_account": "เปิดส่วนติดต่อการควบคุมสำหรับ @{name}", - "status.admin_domain": "เปิดส่วนติดต่อการควบคุมสำหรับ {domain}", - "status.admin_status": "เปิดโพสต์นี้ในส่วนติดต่อการควบคุม", + "status.admin_account": "เปิดส่วนติดต่อการกลั่นกรองสำหรับ @{name}", + "status.admin_domain": "เปิดส่วนติดต่อการกลั่นกรองสำหรับ {domain}", + "status.admin_status": "เปิดโพสต์นี้ในส่วนติดต่อการกลั่นกรอง", "status.block": "ปิดกั้น @{name}", "status.bookmark": "เพิ่มที่คั่นหน้า", "status.cancel_reblog_private": "เลิกดัน", diff --git a/app/javascript/mastodon/locales/tok.json b/app/javascript/mastodon/locales/tok.json new file mode 100644 index 0000000000..4d2cc3d1dc --- /dev/null +++ b/app/javascript/mastodon/locales/tok.json @@ -0,0 +1,356 @@ +{ + "about.blocks": "ma lawa", + "about.contact": "toki:", + "about.domain_blocks.no_reason_available": "mi sona ala e tan", + "about.domain_blocks.preamble": "ilo Masoton li ken e ni: sina lukin e toki jan pi ma ilo mute. sina ken toki tawa ona lon kulupu ma. taso, ma ni li ken ala e ni tawa ma ni:", + "about.domain_blocks.silenced.explanation": "sina lukin ala e toki e jan tan ma ni. taso, sina wile la, sina ken ni.", + "about.domain_blocks.silenced.title": "ken lili lukin", + "about.domain_blocks.suspended.title": "weka", + "about.not_available": "lon kulupu ni la sina ken alasa ala e sona ni.", + "about.rules": "lawa kulupu", + "account.account_note_header": "sona awen", + "account.add_or_remove_from_list": "o ante e lipu jan", + "account.badges.bot": "ilo nanpa li lawa e ni", + "account.badges.group": "kulupu", + "account.block": "o weka e @{name}", + "account.block_domain": "o weka e ma {domain}", + "account.block_short": "o weka e jan tawa mi", + "account.blocked": "jan li weka tawa mi", + "account.browse_more_on_origin_server": "sina tawa ma tan pi jan ni la sina ken lukin e mute", + "account.cancel_follow_request": "o pini kute", + "account.copy": "o pali same e linja pi lipu jan", + "account.direct": "len la o mu e @{name}", + "account.disable_notifications": "@{name} li toki la o mu ala e mi", + "account.domain_blocked": "ma ni li weka tawa sina", + "account.edit_profile": "o ante e lipu mi", + "account.enable_notifications": "@{name} li toki la o toki e toki ona tawa mi", + "account.endorse": "lipu jan la o suli e ni", + "account.featured_tags.last_status_at": "sitelen pini pi jan ni li lon tenpo {date}", + "account.featured_tags.last_status_never": "toki ala li lon", + "account.follow": "o kute", + "account.follow_back": "jan ni li kute e sina. o kute", + "account.followers": "jan kute", + "account.followers.empty": "jan ala li kute e jan ni", + "account.following": "sina kute e jan ni", + "account.follows.empty": "jan ni li kute e jan ala", + "account.go_to_profile": "o tawa lipu jan", + "account.hide_reblogs": "o lukin ala e pana toki tan @{name}", + "account.in_memoriam": "jan ni li moli. pona o tawa ona.", + "account.languages": "sina wile lukin e sitelen pi toki seme", + "account.locked_info": "sina wile kute e jan ni la ona o toki e ken", + "account.media": "sitelen", + "account.mention": "o toki e jan @{name}", + "account.moved_to": "lipu jan sin pi jan {name} li ni:", + "account.mute": "o len e @{name}", + "account.mute_notifications_short": "o kute ala e mu tan jan ni", + "account.mute_short": "o kute ala", + "account.muted": "sina len e jan ni", + "account.no_bio": "lipu li weka", + "account.open_original_page": "o open e lipu open", + "account.posts": "toki suli", + "account.posts_with_replies": "toki ale", + "account.report": "jan @{name} la o toki tawa lawa", + "account.requested": "jan ni o ken e kute sina. sina pini wile kute la o luka e ni", + "account.requested_follow": "{name} li wile kute e sina", + "account.share": "o pana e lipu jan @{name}", + "account.show_reblogs": "o lukin e pana toki tan @{name}", + "account.unblock": "o weka ala e jan {name}", + "account.unblock_domain": "o weka ala e ma {domain}", + "account.unblock_short": "o pini weka", + "account.unendorse": "lipu jan la o suli ala e ni", + "account.unfollow": "o pini kute", + "account.unmute": "o len ala e @{name}", + "account.unmute_notifications_short": "o kute e mu tan jan ni", + "account.unmute_short": "o len ala", + "admin.dashboard.retention.average": "sama", + "admin.dashboard.retention.cohort": "tenpo mun open", + "admin.dashboard.retention.cohort_size": "jan sin", + "alert.rate_limited.message": "tenpo {retry_time, time, medium} la o pali awen", + "alert.unexpected.message": "pakala li lon", + "alert.unexpected.title": "pakala a!", + "announcement.announcement": "toki suli", + "audio.hide": "o len e kalama", + "boost_modal.combo": "sina ken luka e nena {combo} tawa ni: sina wile ala luka e nena lon tenpo kama", + "bundle_column_error.copy_stacktrace": "o awen e sona pakala lon ilo sina", + "bundle_column_error.error.body": "ilo li ken ala pana e lipu ni. ni li ken tan pakala ilo.", + "bundle_column_error.error.title": "ike a!", + "bundle_column_error.network.title": "pakala la ilo sina li toki ala tawa ilo ante", + "bundle_column_error.retry": "o ni sin", + "bundle_column_error.return": "o tawa tomo", + "bundle_column_error.routing.body": "ilo li sona ala e lipu wile. sina pana ala pana e nasin pona tawa lipu?", + "bundle_column_error.routing.title": "pakala nanpa 404", + "bundle_modal_error.close": "o pini", + "bundle_modal_error.message": "ilo li wile kama e ijo ni, taso pakala li lon.", + "bundle_modal_error.retry": "o ni sin", + "closed_registrations_modal.find_another_server": "o alasa e ma ante", + "column.about": "sona", + "column.blocks": "kulupu pi jan weka", + "column.bookmarks": "awen toki", + "column.home": "lipu open", + "column.lists": "kulupu lipu", + "column.mutes": "jan len", + "column.pins": "toki sewi", + "column_header.hide_settings": "o len e lawa", + "column_header.pin": "o sewi", + "column_header.show_settings": "o lukin e lawa", + "column_header.unpin": "o sewi ala", + "column_subheading.settings": "ken ilo", + "community.column_settings.local_only": "toki tan ni taso", + "community.column_settings.media_only": "sitelen taso", + "community.column_settings.remote_only": "toki tan ante taso", + "compose.language.change": "o ante e nasin toki", + "compose.language.search": "o alasa e nasin toki...", + "compose.published.body": "toki li pana.", + "compose.published.open": "o lukin", + "compose.saved.body": "ilo li awen e ijo pana sina.", + "compose_form.direct_message_warning_learn_more": "o kama sona e ijo ante", + "compose_form.encryption_warning": "toki li len ala lon ilo Masoton ꞏ o pana ala e sona suli len lon ilo Masoton", + "compose_form.placeholder": "sina wile toki e seme?", + "compose_form.poll.duration": "tenpo pana", + "compose_form.poll.multiple": "pana mute", + "compose_form.poll.option_placeholder": "ken nanpa {number}", + "compose_form.poll.single": "pana pi wan taso", + "compose_form.poll.switch_to_multiple": "o ante e nasin pana. pana mute o ken", + "compose_form.poll.switch_to_single": "o ante e nasin pana. pana wan taso o lon", + "compose_form.poll.type": "nasin", + "compose_form.publish": "o toki", + "compose_form.publish_form": "o open toki sin", + "compose_form.reply": "o toki lon ijo ni", + "compose_form.save_changes": "o sin e ni", + "compose_form.spoiler.marked": "o weka e toki pi ijo ike ken", + "confirmation_modal.cancel": "o pini", + "confirmations.block.confirm": "o weka", + "confirmations.block.message": "sina o wile ala wile weka e jan {name}?", + "confirmations.cancel_follow_request.confirm": "o weka e wile sina", + "confirmations.cancel_follow_request.message": "sina awen ala awen wile weka e wile kute sina lon {name}?", + "confirmations.delete.confirm": "o weka", + "confirmations.delete.message": "sina wile ala wile weka e toki ni?", + "confirmations.delete_list.confirm": "o weka", + "confirmations.delete_list.message": "sina wile ala wile weka e lipu ni?", + "confirmations.discard_edit_media.confirm": "o weka", + "confirmations.discard_edit_media.message": "toki sitelen anu lukin lili sitelen la ante pi awen ala li lon. sina wile weka e ante ni?", + "confirmations.domain_block.confirm": "o weka.", + "confirmations.domain_block.message": "sina wile ala a wile a len e ma {domain} ꞏ ken suli la len jan taso li pona ꞏ len pi ma ni la sina ken ala lukin e ijo pi ma ni lon lipu toki ale anu lukin toki ꞏ len ni la jan kute sina pi ma ni li weka", + "confirmations.edit.confirm": "o ante", + "confirmations.logout.confirm": "o weka", + "confirmations.logout.message": "sina wile ala wile weka", + "confirmations.mute.confirm": "o len", + "confirmations.mute.message": "sina awen ala awen wile kute ala e {name}?", + "confirmations.redraft.confirm": "o weka o pali sin e toki", + "confirmations.redraft.message": "pali sin e toki ni la sina wile ala wile weka e ona? sina ni la suli pi toki ni en wawa pi toki ni li weka. kin la toki lon toki ni li jo e mama ala.", + "confirmations.reply.confirm": "toki lon toki ni", + "confirmations.reply.message": "toki tawa ona li weka e toki pali sina ꞏ sina wile ala wile ni", + "confirmations.unfollow.confirm": "o pini kute", + "confirmations.unfollow.message": "sina o wile ala wile pini kute e jan {name}?", + "conversation.delete": "o weka e toki ni", + "conversation.mark_as_read": "ni o sin ala", + "conversation.open": "o lukin e toki", + "conversation.with": "lon {names}", + "directory.local": "tan {domain} taso", + "directory.new_arrivals": "jan pi kama sin", + "directory.recently_active": "jan lon tenpo poka", + "disabled_account_banner.account_settings": "wile pi lipu jan", + "disabled_account_banner.text": "sina ken ala kepeken e lipu jan sina pi nimi {disabledAccount}.", + "dismissable_banner.community_timeline": "ni li toki pi tenpo poka tawa ale tan jan lon ma lawa pi nimi {domain}.", + "dismissable_banner.dismiss": "o weka", + "dismissable_banner.explore_links": "ni li toki pi ijo sin ꞏ jan mute li pana e ni lon tenpo suno ni ꞏ sin la jan mute li pana la ni li kama suli", + "embed.preview": "ni li jo e sitelen ni:", + "emoji_button.activity": "musi", + "emoji_button.flags": "len ma", + "emoji_button.food": "moku", + "emoji_button.label": "o pana e sitelen pilin", + "emoji_button.nature": "soweli en kasi", + "emoji_button.not_found": "sitelen pilin ala li lon", + "emoji_button.objects": "ijo", + "emoji_button.people": "jan", + "emoji_button.search": "o alasa...", + "emoji_button.search_results": "ijo pi alasa ni", + "emoji_button.symbols": "sitelen", + "emoji_button.travel": "ma en tawa", + "empty_column.account_hides_collections": "jan ni li wile len e sona ni", + "empty_column.account_timeline": "toki ala li lon!", + "empty_column.account_unavailable": "ken ala lukin e lipu jan", + "empty_column.blocks": "jan ala li weka tawa sina.", + "empty_column.followed_tags": "sina alasa ala e toki ꞏ sina alasa e toki la toki li lon ni", + "empty_column.hashtag": "ala li lon toki ni", + "empty_column.mutes": "jan ala li len tawa sina.", + "errors.unexpected_crash.report_issue": "o toki e pakala tawa lawa", + "explore.search_results": "ijo pi alasa ni", + "explore.suggested_follows": "jan", + "explore.title": "o alasa", + "explore.trending_links": "sin", + "explore.trending_statuses": "toki", + "filter_modal.select_filter.expired": "tenpo pini", + "filter_modal.select_filter.search": "o alasa anu pali", + "firehose.all": "ale", + "firehose.local": "kulupu ni", + "firehose.remote": "kulupu ante", + "follow_request.authorize": "o ken", + "follow_request.reject": "o ala", + "follow_suggestions.view_all": "o lukin e ale", + "follow_suggestions.who_to_follow": "sina o kute e ni", + "footer.about": "sona", + "footer.directory": "lipu jan", + "footer.get_app": "o jo e ilo", + "footer.privacy_policy": "lawa len", + "footer.source_code": "o lukin e toki ilo", + "footer.status": "lon", + "generic.saved": "ni li awen", + "hashtag.column_header.tag_mode.all": "en {additional}", + "hashtag.column_header.tag_mode.any": "anu {additional}", + "hashtag.column_header.tag_mode.none": "en {additional} ala", + "hashtag.column_settings.tag_mode.all": "ale ni", + "hashtag.column_settings.tag_mode.any": "wan ni", + "hashtag.column_settings.tag_mode.none": "ala ni", + "home.pending_critical_update.link": "o lukin e ijo ilo sin", + "interaction_modal.on_another_server": "lon ma ante", + "interaction_modal.on_this_server": "lon ma ni", + "interaction_modal.title.favourite": "o suli e toki {name}", + "interaction_modal.title.follow": "o kute e {name}", + "interaction_modal.title.reblog": "o wawa e toki {name}", + "keyboard_shortcuts.blocked": "o lukin e lipu sina pi jan weka", + "keyboard_shortcuts.boost": "o pana sin e toki", + "keyboard_shortcuts.down": "o tawa anpa lon lipu", + "keyboard_shortcuts.enter": "o lukin e toki", + "keyboard_shortcuts.favourite": "o suli e toki", + "keyboard_shortcuts.favourites": "o lukin e lipu sina pi toki suli", + "keyboard_shortcuts.muted": "o lukin e lipu sina pi jan len", + "keyboard_shortcuts.my_profile": "o lukin e lipu sina", + "keyboard_shortcuts.open_media": "o lukin e sitelen", + "keyboard_shortcuts.pinned": "o lukin pi lipu sina pi toki sewi", + "keyboard_shortcuts.toggle_sensitivity": "o ante e ken lukin", + "keyboard_shortcuts.toot": "o toki", + "keyboard_shortcuts.up": "o tawa sewi lon lipu", + "lightbox.close": "o pini", + "lightbox.compress": "o lili e sitelen", + "lightbox.expand": "o suli e sitelen", + "lightbox.next": "sinpin", + "lightbox.previous": "monsi", + "link_preview.author": "tan {name}", + "lists.account.add": "o pana tawa kulupu lipu", + "lists.account.remove": "o weka tan kulupu lipu", + "lists.delete": "o weka e kulupu lipu", + "lists.edit": "o ante e kulupu lipu", + "lists.edit.submit": "o ante e nimi", + "lists.exclusive": "o len e toki lon lipu open", + "lists.new.create": "o sin e kulupu lipu", + "lists.replies_policy.followed": "jan kute ale", + "lists.replies_policy.list": "jan pi kulupu ni taso", + "lists.replies_policy.none": "jan ala", + "lists.subheading": "kulupu lipu sina", + "load_pending": "{count, plural, other {ijo sin #}}", + "loading_indicator.label": "ni li kama…", + "media_gallery.toggle_visible": "{number, plural, other {o len e sitelen}}", + "mute_modal.duration": "tenpo", + "mute_modal.indefinite": "tenpo ale", + "navigation_bar.about": "sona", + "navigation_bar.blocks": "jan weka", + "navigation_bar.compose": "o pali e toki sin", + "navigation_bar.favourites": "toki suli", + "navigation_bar.filters": "nimi len", + "navigation_bar.lists": "kulupu lipu", + "navigation_bar.mutes": "sina wile ala kute e jan ni", + "navigation_bar.pins": "toki sewi", + "navigation_bar.preferences": "wile sina", + "navigation_bar.search": "o alasa", + "notification.admin.sign_up": "{name} li kama", + "notification.favourite": "{name} li suli e toki sina", + "notification.follow": " {name} li kute e sina", + "notification.follow_request": "{name} li wile kute e sina", + "notification.mention": "jan {name} li toki e sina", + "notification.reblog": "{name} li wawa e toki sina", + "notification.status": "{name} li toki", + "notification.update": "{name} li ante e toki", + "notifications.column_settings.follow": "jan kute sin", + "notifications.filter.all": "ale", + "onboarding.compose.template": "toki a, #Mastodon o!", + "onboarding.start.title": "sina o kama pona a!", + "poll.total_people": "{count, plural, other {jan #}}", + "privacy.public.short": "tawa ale", + "relative_time.full.just_now": "tenpo ni", + "relative_time.just_now": "tenpo ni", + "relative_time.today": "tenpo suno ni", + "report.block": "o weka e jan", + "report.block_explanation": "sina kama lukin ala e toki ona. ona li kama ala ken lukin e toki sina li kama ala ken kute e sina. ona li ken sona e kama ni.", + "report.category.title": "ike seme li lon {type} ni", + "report.category.title_account": "lipu", + "report.category.title_status": "toki", + "report.close": "o pini", + "report.mute": "o kute ala e ona", + "report.mute_explanation": "sina kama ala lukin e ijo pana ona. ona li awen ken kute e sina li awen ken lukin e sina li sona ala e weka kute sina e weka lukin sina.", + "report.next": "awen", + "report.reasons.dislike": "ni li ike tawa mi", + "report.reasons.legal": "ni li ike tawa lawa", + "report.reasons.other": "ni li ike tan ante", + "report.reasons.spam": "ni li ike tan toki mute", + "report.thanks.title": "sina wile ala lukin e ni anu seme?", + "report.unfollow": "o pini kute e {name}", + "report_notification.categories.legal": "ike tawa nasin lawa", + "search.placeholder": "o alasa", + "search.quick_action.go_to_account": "o tawa lipu jan {x}", + "search_popout.language_code": "nimi toki kepeken nasin ISO", + "search_results.all": "ale", + "search_results.see_all": "ale", + "search_results.statuses": "toki", + "search_results.title": "o alasa e {q}", + "status.block": "o weka e @{name}", + "status.cancel_reblog_private": "o pini e pana", + "status.delete": "o weka", + "status.edit": "o ante", + "status.edited": "ni li ante lon {date}", + "status.embed": "ni o lon insa pi lipu ante", + "status.favourite": "o suli", + "status.hide": "o len", + "status.history.created": "{name} li pali e ni lon {date}", + "status.history.edited": "{name} li ante lon {date}", + "status.load_more": "o kama e ijo ante", + "status.media.open": "o open", + "status.media.show": "o lukin", + "status.media_hidden": "sitelen li len", + "status.mute": "o len e @{name}", + "status.mute_conversation": "o kute ala e ijo pi toki ni", + "status.pin": "o sewi lon lipu sina", + "status.pinned": "toki sewi", + "status.reblog": "o wawa", + "status.share": "o pana tawa ante", + "status.show_less": "o lili e ni", + "status.show_less_all": "o lili e ale", + "status.show_more": "o suli e ni", + "status.show_more_all": "o suli e ale", + "status.show_original": "o lukin e mama", + "status.translate": "o ante pi nasin toki", + "status.translated_from_with": "toki li ante tan {lang} kepeken {provider}", + "status.uncached_media_warning": "lukin lili li weka", + "status.unmute_conversation": "o ken kute e ijo pi toki ni", + "status.unpin": "o sewi ala lon lipu sina", + "subscribed_languages.save": "o awen e ante", + "tabs_bar.home": "lipu open", + "timeline_hint.resources.followers": "jan kute", + "timeline_hint.resources.follows": "jan lukin", + "timeline_hint.resources.statuses": "ijo pi tenpo suli", + "trends.trending_now": "jan mute li toki", + "units.short.million": "{count}AAA", + "upload_button.label": "o pana e sitelen anu kalama", + "upload_error.limit": "ilo li ken ala e suli pi ijo ni.", + "upload_form.audio_description": "o toki e ijo kute tawa jan pi kute ala, tawa jan pi kute lili", + "upload_form.description": "o toki e ijo lukin tawa jan pi lukin ala, tawa jan pi lukin lili", + "upload_form.edit": "o ante", + "upload_form.thumbnail": "o ante e sitelen lili", + "upload_form.video_description": "o toki e ijo kute tawa jan pi kute ala, tawa jan pi kute lili, e ijo lukin tawa jan pi lukin ala, tawa jan pi lukin lili", + "upload_modal.choose_image": "o wile e sitelen", + "upload_modal.description_placeholder": "mi pu jaki tan soweli", + "upload_modal.detect_text": "ilo o alasa e nimi tan sitelen", + "upload_modal.edit_media": "o ante e sitelen", + "upload_modal.preparing_ocr": "ilo li open e alasa nimi lon sitelen…", + "upload_progress.label": "ilo li kama jo e ijo sina...", + "upload_progress.processing": "ilo li pali…", + "username.taken": "jan ante li kepeken e nimi ni. sina o kepeken e nimi sin", + "video.close": "o weka e ni", + "video.download": "o jo e ni", + "video.exit_fullscreen": "o weka tan sitelen suli", + "video.expand": "o suli e ni", + "video.hide": "o len e sitelen", + "video.mute": "o kalama ala", + "video.pause": "o lape e ni", + "video.unmute": "o kalama" +} diff --git a/app/javascript/mastodon/locales/tr.json b/app/javascript/mastodon/locales/tr.json index 6811c158d4..02c9159be5 100644 --- a/app/javascript/mastodon/locales/tr.json +++ b/app/javascript/mastodon/locales/tr.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "kilitli", "compose_form.placeholder": "Aklında ne var?", "compose_form.poll.duration": "Anket süresi", + "compose_form.poll.multiple": "Çoktan seçmeli", + "compose_form.poll.option_placeholder": "Seçenek {number}", + "compose_form.poll.single": "Birini seç", "compose_form.poll.switch_to_multiple": "Birden çok seçeneğe izin vermek için anketi değiştir", "compose_form.poll.switch_to_single": "Tek bir seçeneğe izin vermek için anketi değiştir", + "compose_form.poll.type": "Stil", + "compose_form.publish": "Gönder", "compose_form.publish_form": "Gönder", + "compose_form.reply": "Yanıtla", + "compose_form.save_changes": "Güncelle", "compose_form.spoiler.marked": "Metin uyarının arkasına gizlenir", "compose_form.spoiler.unmarked": "Metin gizli değil", + "compose_form.spoiler_placeholder": "İçerik uyarısı (isteğe bağlı)", "confirmation_modal.cancel": "İptal", "confirmations.block.block_and_report": "Engelle ve Bildir", "confirmations.block.confirm": "Engelle", @@ -206,7 +214,7 @@ "emoji_button.food": "Yiyecek ve İçecek", "emoji_button.label": "İfade ekle", "emoji_button.nature": "Doğa", - "emoji_button.not_found": "İfade yok!! (╯°□°)╯︵ ┻━┻", + "emoji_button.not_found": "Eşleşen emoji yok", "emoji_button.objects": "Nesneler", "emoji_button.people": "Kullanıcılar", "emoji_button.recent": "Sık kullanılan", @@ -269,6 +277,17 @@ "follow_request.authorize": "İzin Ver", "follow_request.reject": "Reddet", "follow_requests.unlocked_explanation": "Hesabınız kilitli olmasa da, {domain} personeli bu hesaplardan gelen takip isteklerini gözden geçirmek isteyebileceğinizi düşündü.", + "follow_suggestions.curated_suggestion": "Çalışanların seçtikleri", + "follow_suggestions.dismiss": "Tekrar gösterme", + "follow_suggestions.hints.featured": "Bu profil {domain} ekibi tarafından elle seçilmiştir.", + "follow_suggestions.hints.friends_of_friends": "Bu profil takip ettiğiniz insanlar arasında popülerdir.", + "follow_suggestions.hints.most_followed": "Bu, {domain} sunucusunda en fazla izlenen profildir.", + "follow_suggestions.hints.most_interactions": "Bu, {domain} sunucusunda son zamanlarda oldukça fazla dikkat çeken bir profildir.", + "follow_suggestions.hints.similar_to_recently_followed": "Bu profil, son zamanlarda takip ettiğiniz profillere benziyor.", + "follow_suggestions.personalized_suggestion": "Kişiselleşmiş öneriler", + "follow_suggestions.popular_suggestion": "Popüler öneriler", + "follow_suggestions.view_all": "Tümünü gör", + "follow_suggestions.who_to_follow": "Takip edebileceklerin", "followed_tags": "Takip edilen etiketler", "footer.about": "Hakkında", "footer.directory": "Profil dizini", @@ -295,13 +314,9 @@ "hashtag.follow": "Etiketi takip et", "hashtag.unfollow": "Etiketi takibi bırak", "hashtags.and_other": "…ve {count, plural, one {}other {# fazlası}}", - "home.actions.go_to_explore": "Öne çıkanları gör", - "home.actions.go_to_suggestions": "Takip edecek kişileri bulun", "home.column_settings.basic": "Temel", "home.column_settings.show_reblogs": "Yeniden paylaşımları göster", "home.column_settings.show_replies": "Yanıtları göster", - "home.explore_prompt.body": "Ana sayfa akışınızda, takip etmeyi seçtiğiniz ETİKETlerden, takip etmeyi seçtiğiniz kişilerden ve öne çıkardıkları gönderilerden oluşan bir karışım bulunur. Şu anda oldukça sessiz görünüyor, gör ve takip et :", - "home.explore_prompt.title": "Burası Mastodon'daki Anasayfanız.", "home.hide_announcements": "Duyuruları gizle", "home.pending_critical_update.body": "Lütfen Mastodon sunucunuzu en kısa sürede güncelleyin!", "home.pending_critical_update.link": "Güncellemelerini görün", @@ -333,7 +348,7 @@ "keyboard_shortcuts.description": "Açıklama", "keyboard_shortcuts.direct": "özel değinmeler sütununu açmak için", "keyboard_shortcuts.down": "Listede aşağıya inmek için", - "keyboard_shortcuts.enter": "gönderiyi aç", + "keyboard_shortcuts.enter": "Gönderiyi açınız", "keyboard_shortcuts.favourite": "Gönderiyi favorilerine ekle", "keyboard_shortcuts.favourites": "Gözde listeni aç", "keyboard_shortcuts.federated": "Federe akışı aç", @@ -514,7 +529,15 @@ "poll_button.add_poll": "Bir anket ekleyin", "poll_button.remove_poll": "Anketi kaldır", "privacy.change": "Gönderi gizliliğini değiştir", + "privacy.direct.long": "Gönderide değinilen herkes", + "privacy.direct.short": "Belirli kişiler", + "privacy.private.long": "Sadece takipçileriniz", + "privacy.private.short": "Takipçiler", + "privacy.public.long": "Mastodon'da olan olmayan herkes", "privacy.public.short": "Herkese açık", + "privacy.unlisted.additional": "Bu neredeyse herkese açık gibi çalışır, tek farkı gönderi canlı akışlarda veya etiketlerde, keşfette, veya Mastodon aramasında gözükmez, hesap çapında öyle seçmiş olsanız bile.", + "privacy.unlisted.long": "Daha az algoritmik tantana", + "privacy.unlisted.short": "Sessizce herkese açık", "privacy_policy.last_updated": "Son güncelleme {date}", "privacy_policy.title": "Gizlilik Politikası", "recommended": "Önerilen", @@ -532,7 +555,9 @@ "relative_time.minutes": "{number}m", "relative_time.seconds": "{number}sn", "relative_time.today": "bugün", + "reply_indicator.attachments": "{count, plural, one {# ek} other {# ek}}", "reply_indicator.cancel": "İptal", + "reply_indicator.poll": "Anket", "report.block": "Engelle", "report.block_explanation": "Gönderilerini göremeyeceksiniz. Gönderilerinizi göremezler veya sizi takip edemezler. Engelli olduklarını anlayabilecekler.", "report.categories.legal": "Yasal", diff --git a/app/javascript/mastodon/locales/uk.json b/app/javascript/mastodon/locales/uk.json index 38e5f9cfbd..d14654d17c 100644 --- a/app/javascript/mastodon/locales/uk.json +++ b/app/javascript/mastodon/locales/uk.json @@ -145,13 +145,20 @@ "compose_form.lock_disclaimer": "Ваш обліковий запис не {locked}. Будь-який користувач може підписатися на вас та переглядати ваші дописи для підписників.", "compose_form.lock_disclaimer.lock": "приватний", "compose_form.placeholder": "Що у вас на думці?", - "compose_form.poll.add_option": "Додати опцію", "compose_form.poll.duration": "Тривалість опитування", + "compose_form.poll.multiple": "Кілька варіантів", + "compose_form.poll.option_placeholder": "Варіант {number}", + "compose_form.poll.single": "Виберіть варіант", "compose_form.poll.switch_to_multiple": "Дозволити вибір декількох відповідей", "compose_form.poll.switch_to_single": "Перемкнути у режим вибору однієї відповіді", + "compose_form.poll.type": "Стиль", + "compose_form.publish": "Опублікувати", "compose_form.publish_form": "Новий допис", + "compose_form.reply": "Відповісти", + "compose_form.save_changes": "Оновити", "compose_form.spoiler.marked": "Прибрати попередження про вміст", "compose_form.spoiler.unmarked": "Додати попередження про вміст", + "compose_form.spoiler_placeholder": "Попередження про вміст (необов'язково)", "confirmation_modal.cancel": "Скасувати", "confirmations.block.block_and_report": "Заблокувати та поскаржитися", "confirmations.block.confirm": "Заблокувати", @@ -270,6 +277,17 @@ "follow_request.authorize": "Авторизувати", "follow_request.reject": "Відмовити", "follow_requests.unlocked_explanation": "Хоча ваш обліковий запис не заблоковано, персонал {domain} припускає, що, можливо, ви хотіли б переглянути ці запити на підписку.", + "follow_suggestions.curated_suggestion": "Відібрано командою", + "follow_suggestions.dismiss": "Більше не показувати", + "follow_suggestions.hints.featured": "Цей профіль був обраний командою {domain}.", + "follow_suggestions.hints.friends_of_friends": "Цей профіль популярний серед тих людей, на яких ви підписані.", + "follow_suggestions.hints.most_followed": "За цим профілем один з найпопулярніших на {domain}.", + "follow_suggestions.hints.most_interactions": "Нещодавно цей профіль отримав багато уваги на {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Цей профіль схожий на профілі, за якими ви стежили останнім часом.", + "follow_suggestions.personalized_suggestion": "Персоналізована пропозиція", + "follow_suggestions.popular_suggestion": "Популярна пропозиція", + "follow_suggestions.view_all": "Переглянути все", + "follow_suggestions.who_to_follow": "На кого підписатися", "followed_tags": "Відстежувані хештеґи", "footer.about": "Про проєкт", "footer.directory": "Каталог профілів", @@ -296,13 +314,9 @@ "hashtag.follow": "Стежити за хештегом", "hashtag.unfollow": "Не стежити за хештегом", "hashtags.and_other": "…і {count, plural, other {ще #}}", - "home.actions.go_to_explore": "Переглянути тенденції", - "home.actions.go_to_suggestions": "Знайти людей, аби підписатися", "home.column_settings.basic": "Основні", "home.column_settings.show_reblogs": "Показувати поширення", "home.column_settings.show_replies": "Показувати відповіді", - "home.explore_prompt.body": "Ваша домашня стрічка буде сумішшю дописів з обраних для стеження хештегів, людей і поширених ними дописів. Якщо цього замало, ви також можете:", - "home.explore_prompt.title": "Це ваша домашня база у Mastodon.", "home.hide_announcements": "Приховати оголошення", "home.pending_critical_update.body": "Якнайшвидше оновіть свій сервер Mastodon!", "home.pending_critical_update.link": "Переглянути оновлення", @@ -515,7 +529,15 @@ "poll_button.add_poll": "Додати опитування", "poll_button.remove_poll": "Видалити опитування", "privacy.change": "Змінити видимість допису", + "privacy.direct.long": "Усі згадані в дописі", + "privacy.direct.short": "Певні люди", + "privacy.private.long": "Лише ваші підписники", + "privacy.private.short": "Підписники", + "privacy.public.long": "Усі з Mastodon", "privacy.public.short": "Публічно", + "privacy.unlisted.additional": "Має таку ж поведінку, як у людей, але повідомлення не з'являтимуться у стрічках або хештегах, оглядах, або пошуку Mastodon, навіть якщо ви використовуєте облікові записи.", + "privacy.unlisted.long": "Менше взаємодій з алгоритмами", + "privacy.unlisted.short": "Без додавання до стрічки", "privacy_policy.last_updated": "Оновлено {date}", "privacy_policy.title": "Політика приватності", "recommended": "Рекомендовано", @@ -533,7 +555,9 @@ "relative_time.minutes": "{number}х", "relative_time.seconds": "{number}с", "relative_time.today": "сьогодні", + "reply_indicator.attachments": "{count, plural, one {# вкладення} few {# вкладення} many {# вкладень} other {# вкладення}}", "reply_indicator.cancel": "Скасувати", + "reply_indicator.poll": "Опитування", "report.block": "Заблокувати", "report.block_explanation": "Ви не будете бачити дописи цього користувача, а вони не зможуть бачити ваші дописи або підписуватися на вас. Вони будуть бачити, що ви їх заблокували.", "report.categories.legal": "Правові положення", diff --git a/app/javascript/mastodon/locales/vi.json b/app/javascript/mastodon/locales/vi.json index 73a11b9573..9a4182e540 100644 --- a/app/javascript/mastodon/locales/vi.json +++ b/app/javascript/mastodon/locales/vi.json @@ -146,11 +146,19 @@ "compose_form.lock_disclaimer.lock": "khóa", "compose_form.placeholder": "Bạn đang nghĩ gì?", "compose_form.poll.duration": "Hết hạn vào", + "compose_form.poll.multiple": "Nhiều lựa chọn", + "compose_form.poll.option_placeholder": "Lựa chọn {number}", + "compose_form.poll.single": "Chọn một", "compose_form.poll.switch_to_multiple": "Có thể chọn nhiều lựa chọn", "compose_form.poll.switch_to_single": "Chỉ cho phép chọn duy nhất một lựa chọn", + "compose_form.poll.type": "Loại", + "compose_form.publish": "Đăng", "compose_form.publish_form": "Đăng", + "compose_form.reply": "Trả lời", + "compose_form.save_changes": "Cập nhật", "compose_form.spoiler.marked": "Hủy nội dung ẩn", "compose_form.spoiler.unmarked": "Tạo nội dung ẩn", + "compose_form.spoiler_placeholder": "Nội dung ẩn (tùy chọn)", "confirmation_modal.cancel": "Hủy bỏ", "confirmations.block.block_and_report": "Chặn & Báo cáo", "confirmations.block.confirm": "Chặn", @@ -266,9 +274,20 @@ "firehose.all": "Toàn bộ", "firehose.local": "Máy chủ này", "firehose.remote": "Máy chủ khác", - "follow_request.authorize": "Cho phép", + "follow_request.authorize": "Chấp nhận", "follow_request.reject": "Từ chối", "follow_requests.unlocked_explanation": "Mặc dù tài khoản của bạn đang ở chế độ công khai, quản trị viên của {domain} vẫn tin rằng bạn sẽ muốn xem lại yêu cầu theo dõi từ những người khác.", + "follow_suggestions.curated_suggestion": "Gợi ý từ máy chủ", + "follow_suggestions.dismiss": "Không hiện lại", + "follow_suggestions.hints.featured": "Người này được đội ngũ {domain} đề xuất.", + "follow_suggestions.hints.friends_of_friends": "Người này nổi tiếng với những người bạn theo dõi.", + "follow_suggestions.hints.most_followed": "Người này được theo dõi nhiều nhất trên {domain}.", + "follow_suggestions.hints.most_interactions": "Người này đang thu hút sự chú ý trên {domain}.", + "follow_suggestions.hints.similar_to_recently_followed": "Người này có nét giống những người mà bạn theo dõi gần đây.", + "follow_suggestions.personalized_suggestion": "Gợi ý cá nhân hóa", + "follow_suggestions.popular_suggestion": "Những người nổi tiếng", + "follow_suggestions.view_all": "Xem tất cả", + "follow_suggestions.who_to_follow": "Gợi ý theo dõi", "followed_tags": "Hashtag theo dõi", "footer.about": "Giới thiệu", "footer.directory": "Cộng đồng", @@ -295,13 +314,9 @@ "hashtag.follow": "Theo dõi hashtag", "hashtag.unfollow": "Bỏ theo dõi hashtag", "hashtags.and_other": "…và {count, plural, other {# nữa}}", - "home.actions.go_to_explore": "Khám phá xu hướng", - "home.actions.go_to_suggestions": "Tìm người theo dõi", "home.column_settings.basic": "Tùy chỉnh", "home.column_settings.show_reblogs": "Hiện những lượt đăng lại", "home.column_settings.show_replies": "Hiện những tút dạng trả lời", - "home.explore_prompt.body": "Bảng tin của bạn sẽ bao gồm các tút có hashtag bạn theo dõi, những người bạn theo dõi và các tút mà họ đăng lại. Lúc này có vẻ hơi trống, sao bạn không:", - "home.explore_prompt.title": "Đây là ngôi nhà Mastodon của bạn.", "home.hide_announcements": "Ẩn thông báo máy chủ", "home.pending_critical_update.body": "Vui lòng cập nhật máy chủ Mastodon của bạn càng sớm càng tốt!", "home.pending_critical_update.link": "Xem bản cập nhật", @@ -514,7 +529,15 @@ "poll_button.add_poll": "Tạo bình chọn", "poll_button.remove_poll": "Hủy cuộc bình chọn", "privacy.change": "Chọn kiểu tút", + "privacy.direct.long": "Những người được nhắc trong tút", + "privacy.direct.short": "Người cụ thể", + "privacy.private.long": "Chỉ người theo dõi", + "privacy.private.short": "Người theo dõi", + "privacy.public.long": "Bất cứ ai", "privacy.public.short": "Công khai", + "privacy.unlisted.additional": "Giống hệt như công khai, ngoại trừ tút sẽ không xuất hiện trong bảng tin hoặc hashtag, khám phá hoặc tìm kiếm Mastodon, ngay cả khi bạn chọn cho phép trong cài đặt tài khoản.", + "privacy.unlisted.long": "Ít hướng thuật toán hơn", + "privacy.unlisted.short": "Hạn chế", "privacy_policy.last_updated": "Cập nhật lần cuối {date}", "privacy_policy.title": "Chính sách bảo mật", "recommended": "Đề xuất", @@ -532,7 +555,9 @@ "relative_time.minutes": "{number} phút", "relative_time.seconds": "{number}s", "relative_time.today": "hôm nay", + "reply_indicator.attachments": "{count, plural, other {# tập tin đính kèm}}", "reply_indicator.cancel": "Hủy bỏ", + "reply_indicator.poll": "Bình chọn", "report.block": "Chặn", "report.block_explanation": "Bạn sẽ không còn thấy tút của người này. Họ sẽ không thể thấy tút của bạn hoặc theo dõi bạn. Họ biết là bạn đã chặn họ.", "report.categories.legal": "Phạm pháp", diff --git a/app/javascript/mastodon/locales/zh-CN.json b/app/javascript/mastodon/locales/zh-CN.json index 9b55e51b1f..3e714987c0 100644 --- a/app/javascript/mastodon/locales/zh-CN.json +++ b/app/javascript/mastodon/locales/zh-CN.json @@ -21,7 +21,7 @@ "account.blocked": "已屏蔽", "account.browse_more_on_origin_server": "在原始个人资料页面上浏览详情", "account.cancel_follow_request": "撤回关注请求", - "account.copy": "复制资料卡链接", + "account.copy": "复制个人资料链接", "account.direct": "私下提及 @{name}", "account.disable_notifications": "当 @{name} 发布嘟文时不要通知我", "account.domain_blocked": "域名已屏蔽", @@ -53,7 +53,7 @@ "account.mute_notifications_short": "关闭通知", "account.mute_short": "隐藏", "account.muted": "已隐藏", - "account.mutual": "互粉好友", + "account.mutual": "互相关注", "account.no_bio": "未提供描述。", "account.open_original_page": "打开原始页面", "account.posts": "嘟文", @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "你的账户没有{locked}。任何人都可以在关注你后立即查看仅关注者可见的嘟文。", "compose_form.lock_disclaimer.lock": "开启保护", "compose_form.placeholder": "想写什么?", - "compose_form.poll.add_option": "添加选项", "compose_form.poll.duration": "投票期限", "compose_form.poll.multiple": "多选", "compose_form.poll.option_placeholder": "选项 {number}", - "compose_form.poll.remove_option": "删除此选项", "compose_form.poll.single": "单选", "compose_form.poll.switch_to_multiple": "将投票改为多选", "compose_form.poll.switch_to_single": "将投票改为单选", @@ -279,6 +277,17 @@ "follow_request.authorize": "同意", "follow_request.reject": "拒绝", "follow_requests.unlocked_explanation": "尽管你没有锁嘟,但是 {domain} 的工作人员认为你也许会想手动审核审核这些账号的关注请求。", + "follow_suggestions.curated_suggestion": "站务人员精选", + "follow_suggestions.dismiss": "不再显示", + "follow_suggestions.hints.featured": "该用户已被 {domain} 管理团队精选。", + "follow_suggestions.hints.friends_of_friends": "该用户在您关注的人中很受欢迎。", + "follow_suggestions.hints.most_followed": "该用户是 {domain} 上关注度最高的用户之一。", + "follow_suggestions.hints.most_interactions": "该用户最近在 {domain} 上获得了很多关注。", + "follow_suggestions.hints.similar_to_recently_followed": "该用户与您最近关注的用户类似。", + "follow_suggestions.personalized_suggestion": "个性化建议", + "follow_suggestions.popular_suggestion": "热门建议", + "follow_suggestions.view_all": "查看全部", + "follow_suggestions.who_to_follow": "推荐关注", "followed_tags": "关注的话题标签", "footer.about": "关于", "footer.directory": "用户目录", @@ -305,13 +314,9 @@ "hashtag.follow": "关注话题标签", "hashtag.unfollow": "取消关注话题标签", "hashtags.and_other": "… 和另外 {count, plural, other {# 个话题}}", - "home.actions.go_to_explore": "查看热门话题", - "home.actions.go_to_suggestions": "寻找要关注的人", "home.column_settings.basic": "基本设置", "home.column_settings.show_reblogs": "显示转嘟", "home.column_settings.show_replies": "显示回复", - "home.explore_prompt.body": "你的主页动态会推送一系列关注的话题标签和用户,以及转发的嘟文。如果你觉得过于清净,不妨试一下:", - "home.explore_prompt.title": "这是你在 Mastodon 的主页。", "home.hide_announcements": "隐藏公告", "home.pending_critical_update.body": "请尽快更新您的 Mastodon 服务器!", "home.pending_critical_update.link": "查看更新", @@ -442,7 +447,7 @@ "notifications.column_settings.alert": "桌面通知", "notifications.column_settings.favourite": "喜欢:", "notifications.column_settings.filter_bar.advanced": "显示所有类别", - "notifications.column_settings.filter_bar.category": "快速过滤栏", + "notifications.column_settings.filter_bar.category": "快速筛选栏", "notifications.column_settings.filter_bar.show_bar": "显示过滤栏", "notifications.column_settings.follow": "新粉丝:", "notifications.column_settings.follow_request": "新关注请求:", diff --git a/app/javascript/mastodon/locales/zh-HK.json b/app/javascript/mastodon/locales/zh-HK.json index 5890c4df4b..2382e3c61c 100644 --- a/app/javascript/mastodon/locales/zh-HK.json +++ b/app/javascript/mastodon/locales/zh-HK.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "你的用戶狀態沒有{locked},任何人都能立即關注你,然後看到「只有關注者能看」的文章。", "compose_form.lock_disclaimer.lock": "鎖定", "compose_form.placeholder": "你在想甚麼?", - "compose_form.poll.add_option": "新增選項", "compose_form.poll.duration": "投票期限", "compose_form.poll.multiple": "多選", "compose_form.poll.option_placeholder": "選項 {number}", - "compose_form.poll.remove_option": "移除此選項", "compose_form.poll.single": "選擇一個", "compose_form.poll.switch_to_multiple": "變更投票為允許多個選項", "compose_form.poll.switch_to_single": "變更投票為限定單一選項", @@ -279,6 +277,11 @@ "follow_request.authorize": "批准", "follow_request.reject": "拒絕", "follow_requests.unlocked_explanation": "即使您的帳號未上鎖,{domain} 的工作人員認為您可能會想手動審核來自這些帳號的追蹤請求。", + "follow_suggestions.dismiss": "不再顯示", + "follow_suggestions.personalized_suggestion": "個人化推薦", + "follow_suggestions.popular_suggestion": "熱門推薦", + "follow_suggestions.view_all": "查看所有", + "follow_suggestions.who_to_follow": "追蹤對象", "followed_tags": "已追蹤標籤", "footer.about": "關於", "footer.directory": "個人檔案目錄", @@ -305,13 +308,9 @@ "hashtag.follow": "追蹤主題標籤", "hashtag.unfollow": "取消追蹤主題標籤", "hashtags.and_other": "…及{count, plural, other {其他 # 個}}", - "home.actions.go_to_explore": "即時熱門話題", - "home.actions.go_to_suggestions": "尋找追蹤對象", "home.column_settings.basic": "基本", "home.column_settings.show_reblogs": "顯示被轉推的文章", "home.column_settings.show_replies": "顯示回應文章", - "home.explore_prompt.body": "你的首頁時間軸將顯示來自你追蹤的標籤、使用者及他們轉推的帖文。如果時間軸感覺太安靜,你可以考慮:", - "home.explore_prompt.title": "這是你在 Mastodon 中的主頁。", "home.hide_announcements": "隱藏公告", "home.pending_critical_update.body": "請盡快更新你的 Mastodon 伺服器!", "home.pending_critical_update.link": "查看更新", diff --git a/app/javascript/mastodon/locales/zh-TW.json b/app/javascript/mastodon/locales/zh-TW.json index c365e67e07..4962aedad5 100644 --- a/app/javascript/mastodon/locales/zh-TW.json +++ b/app/javascript/mastodon/locales/zh-TW.json @@ -145,11 +145,9 @@ "compose_form.lock_disclaimer": "您的帳號尚未 {locked}。任何人皆能跟隨您並看到您設定成只對跟隨者顯示的嘟文。", "compose_form.lock_disclaimer.lock": "上鎖", "compose_form.placeholder": "正在想些什麼嗎?", - "compose_form.poll.add_option": "新增選項", "compose_form.poll.duration": "投票期限", "compose_form.poll.multiple": "多選", "compose_form.poll.option_placeholder": "選項 {number}", - "compose_form.poll.remove_option": "移除此選項", "compose_form.poll.single": "選擇一個", "compose_form.poll.switch_to_multiple": "變更投票為允許多個選項", "compose_form.poll.switch_to_single": "變更投票為允許單一選項", @@ -279,6 +277,17 @@ "follow_request.authorize": "授權", "follow_request.reject": "拒絕", "follow_requests.unlocked_explanation": "即便您的帳號未被鎖定,{domain} 的管理員認為您可能想要自己審核這些帳號的跟隨請求。", + "follow_suggestions.curated_suggestion": "精選內容", + "follow_suggestions.dismiss": "不再顯示", + "follow_suggestions.hints.featured": "這個個人檔案是 {domain} 管理團隊精心挑選。", + "follow_suggestions.hints.friends_of_friends": "這個個人檔案於您跟隨的帳號中很受歡迎。", + "follow_suggestions.hints.most_followed": "這個個人檔案是 {domain} 中最受歡迎的帳號之一。", + "follow_suggestions.hints.most_interactions": "這個個人檔案最近於 {domain} 受到非常多關注。", + "follow_suggestions.hints.similar_to_recently_followed": "這個個人檔案與您最近跟隨之帳號類似。", + "follow_suggestions.personalized_suggestion": "個人化推薦", + "follow_suggestions.popular_suggestion": "熱門推薦", + "follow_suggestions.view_all": "檢視全部", + "follow_suggestions.who_to_follow": "推薦跟隨帳號", "followed_tags": "已跟隨主題標籤", "footer.about": "關於", "footer.directory": "個人檔案目錄", @@ -305,13 +314,9 @@ "hashtag.follow": "跟隨主題標籤", "hashtag.unfollow": "取消跟隨主題標籤", "hashtags.and_other": "…及其他 {count, plural, other {# 個}}", - "home.actions.go_to_explore": "看看發生什麼新鮮事", - "home.actions.go_to_suggestions": "尋找一些人來跟隨", "home.column_settings.basic": "基本設定", "home.column_settings.show_reblogs": "顯示轉嘟", "home.column_settings.show_replies": "顯示回覆", - "home.explore_prompt.body": "您的首頁時間軸將由您所跟隨之主題標籤、帳號以及其轉嘟所組成。若目前流速有點慢,您可以考慮以下幾點:", - "home.explore_prompt.title": "這是您於 Mastodon 的基地", "home.hide_announcements": "隱藏公告", "home.pending_critical_update.body": "請立即升級您的 Mastodon 伺服器!", "home.pending_critical_update.link": "檢視更新內容", @@ -663,7 +668,7 @@ "status.mute": "靜音 @{name}", "status.mute_conversation": "靜音對話", "status.open": "展開此嘟文", - "status.pin": "釘選到個人檔案頁面", + "status.pin": "釘選至個人檔案頁面", "status.pinned": "釘選嘟文", "status.read_more": "閱讀更多", "status.reblog": "轉嘟", diff --git a/app/javascript/mastodon/reducers/compose.js b/app/javascript/mastodon/reducers/compose.js index f57bbb77b8..f1bc0cbaef 100644 --- a/app/javascript/mastodon/reducers/compose.js +++ b/app/javascript/mastodon/reducers/compose.js @@ -315,8 +315,8 @@ export default function compose(state = initialState, action) { map.set('spoiler', !state.get('spoiler')); map.set('idempotencyKey', uuid()); - if (!state.get('sensitive') && state.get('media_attachments').size >= 1) { - map.set('sensitive', true); + if (state.get('media_attachments').size >= 1 && !state.get('default_sensitive')) { + map.set('sensitive', !state.get('spoiler')); } }); case COMPOSE_SPOILER_TEXT_CHANGE: diff --git a/app/javascript/mastodon/test_helpers.tsx b/app/javascript/mastodon/test_helpers.tsx index 6895895569..69d57b95a0 100644 --- a/app/javascript/mastodon/test_helpers.tsx +++ b/app/javascript/mastodon/test_helpers.tsx @@ -40,7 +40,7 @@ function render( ui: React.ReactElement, { locale = 'en', signedIn = true, ...renderOptions } = {}, ) { - const Wrapper = (props: { children: React.ReactElement }) => { + const Wrapper = (props: { children: React.ReactNode }) => { return ( diff --git a/app/javascript/material-icons/400-20px/bar_chart_4_bars-fill.svg b/app/javascript/material-icons/400-20px/bar_chart_4_bars-fill.svg new file mode 100644 index 0000000000..78ce147272 --- /dev/null +++ b/app/javascript/material-icons/400-20px/bar_chart_4_bars-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-20px/bar_chart_4_bars.svg b/app/javascript/material-icons/400-20px/bar_chart_4_bars.svg new file mode 100644 index 0000000000..78ce147272 --- /dev/null +++ b/app/javascript/material-icons/400-20px/bar_chart_4_bars.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-20px/close-fill.svg b/app/javascript/material-icons/400-20px/close-fill.svg new file mode 100644 index 0000000000..46d8afd7e1 --- /dev/null +++ b/app/javascript/material-icons/400-20px/close-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-20px/close.svg b/app/javascript/material-icons/400-20px/close.svg new file mode 100644 index 0000000000..46d8afd7e1 --- /dev/null +++ b/app/javascript/material-icons/400-20px/close.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-20px/mood-fill.svg b/app/javascript/material-icons/400-20px/mood-fill.svg new file mode 100644 index 0000000000..ef72aeef6e --- /dev/null +++ b/app/javascript/material-icons/400-20px/mood-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-20px/mood.svg b/app/javascript/material-icons/400-20px/mood.svg new file mode 100644 index 0000000000..abb44c4663 --- /dev/null +++ b/app/javascript/material-icons/400-20px/mood.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-20px/photo_library-fill.svg b/app/javascript/material-icons/400-20px/photo_library-fill.svg new file mode 100644 index 0000000000..5f5e39fbf9 --- /dev/null +++ b/app/javascript/material-icons/400-20px/photo_library-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-20px/photo_library.svg b/app/javascript/material-icons/400-20px/photo_library.svg new file mode 100644 index 0000000000..5804edb01c --- /dev/null +++ b/app/javascript/material-icons/400-20px/photo_library.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-20px/warning-fill.svg b/app/javascript/material-icons/400-20px/warning-fill.svg new file mode 100644 index 0000000000..85dd926d39 --- /dev/null +++ b/app/javascript/material-icons/400-20px/warning-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-20px/warning.svg b/app/javascript/material-icons/400-20px/warning.svg new file mode 100644 index 0000000000..d7d45a3211 --- /dev/null +++ b/app/javascript/material-icons/400-20px/warning.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-24px/explore-fill.svg b/app/javascript/material-icons/400-24px/explore-fill.svg new file mode 100644 index 0000000000..febe0a63b4 --- /dev/null +++ b/app/javascript/material-icons/400-24px/explore-fill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-24px/explore.svg b/app/javascript/material-icons/400-24px/explore.svg new file mode 100644 index 0000000000..547a999421 --- /dev/null +++ b/app/javascript/material-icons/400-24px/explore.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/javascript/material-icons/400-24px/mood-fill.svg b/app/javascript/material-icons/400-24px/mood-fill.svg deleted file mode 100644 index 9480d0fb92..0000000000 --- a/app/javascript/material-icons/400-24px/mood-fill.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/javascript/material-icons/400-24px/mood.svg b/app/javascript/material-icons/400-24px/mood.svg deleted file mode 100644 index 46cafa7680..0000000000 --- a/app/javascript/material-icons/400-24px/mood.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/app/javascript/packs/admin.jsx b/app/javascript/packs/admin.jsx deleted file mode 100644 index d3bfc4ea90..0000000000 --- a/app/javascript/packs/admin.jsx +++ /dev/null @@ -1,248 +0,0 @@ -import './public-path'; -import React from 'react'; -import { createRoot } from 'react-dom/client'; - -import Rails from '@rails/ujs'; - -import ready from '../mastodon/ready'; - -const setAnnouncementEndsAttributes = (target) => { - const valid = target?.value && target?.validity?.valid; - const element = document.querySelector('input[type="datetime-local"]#announcement_ends_at'); - if (valid) { - element.classList.remove('optional'); - element.required = true; - element.min = target.value; - } else { - element.classList.add('optional'); - element.removeAttribute('required'); - element.removeAttribute('min'); - } -}; - -Rails.delegate(document, 'input[type="datetime-local"]#announcement_starts_at', 'change', ({ target }) => { - setAnnouncementEndsAttributes(target); -}); - -const batchCheckboxClassName = '.batch-checkbox input[type="checkbox"]'; - -const showSelectAll = () => { - const selectAllMatchingElement = document.querySelector('.batch-table__select-all'); - selectAllMatchingElement.classList.add('active'); -}; - -const hideSelectAll = () => { - const selectAllMatchingElement = document.querySelector('.batch-table__select-all'); - const hiddenField = document.querySelector('#select_all_matching'); - const selectedMsg = document.querySelector('.batch-table__select-all .selected'); - const notSelectedMsg = document.querySelector('.batch-table__select-all .not-selected'); - - selectAllMatchingElement.classList.remove('active'); - selectedMsg.classList.remove('active'); - notSelectedMsg.classList.add('active'); - hiddenField.value = '0'; -}; - -Rails.delegate(document, '#batch_checkbox_all', 'change', ({ target }) => { - const selectAllMatchingElement = document.querySelector('.batch-table__select-all'); - - [].forEach.call(document.querySelectorAll(batchCheckboxClassName), (content) => { - content.checked = target.checked; - }); - - if (selectAllMatchingElement) { - if (target.checked) { - showSelectAll(); - } else { - hideSelectAll(); - } - } -}); - -Rails.delegate(document, '.batch-table__select-all button', 'click', () => { - const hiddenField = document.querySelector('#select_all_matching'); - const active = hiddenField.value === '1'; - const selectedMsg = document.querySelector('.batch-table__select-all .selected'); - const notSelectedMsg = document.querySelector('.batch-table__select-all .not-selected'); - - if (active) { - hiddenField.value = '0'; - selectedMsg.classList.remove('active'); - notSelectedMsg.classList.add('active'); - } else { - hiddenField.value = '1'; - notSelectedMsg.classList.remove('active'); - selectedMsg.classList.add('active'); - } -}); - -Rails.delegate(document, batchCheckboxClassName, 'change', () => { - const checkAllElement = document.querySelector('#batch_checkbox_all'); - const selectAllMatchingElement = document.querySelector('.batch-table__select-all'); - - if (checkAllElement) { - checkAllElement.checked = [].every.call(document.querySelectorAll(batchCheckboxClassName), (content) => content.checked); - checkAllElement.indeterminate = !checkAllElement.checked && [].some.call(document.querySelectorAll(batchCheckboxClassName), (content) => content.checked); - - if (selectAllMatchingElement) { - if (checkAllElement.checked) { - showSelectAll(); - } else { - hideSelectAll(); - } - } - } -}); - -Rails.delegate(document, '.media-spoiler-show-button', 'click', () => { - [].forEach.call(document.querySelectorAll('button.media-spoiler'), (element) => { - element.click(); - }); -}); - -Rails.delegate(document, '.media-spoiler-hide-button', 'click', () => { - [].forEach.call(document.querySelectorAll('.spoiler-button.spoiler-button--visible button'), (element) => { - element.click(); - }); -}); - -Rails.delegate(document, '.filter-subset--with-select select', 'change', ({ target }) => { - target.form.submit(); -}); - -const onDomainBlockSeverityChange = (target) => { - const rejectMediaDiv = document.querySelector('.input.with_label.domain_block_reject_media'); - const rejectReportsDiv = document.querySelector('.input.with_label.domain_block_reject_reports'); - - if (rejectMediaDiv) { - rejectMediaDiv.style.display = (target.value === 'suspend') ? 'none' : 'block'; - } - - if (rejectReportsDiv) { - rejectReportsDiv.style.display = (target.value === 'suspend') ? 'none' : 'block'; - } -}; - -Rails.delegate(document, '#domain_block_severity', 'change', ({ target }) => onDomainBlockSeverityChange(target)); - -const onEnableBootstrapTimelineAccountsChange = (target) => { - const bootstrapTimelineAccountsField = document.querySelector('#form_admin_settings_bootstrap_timeline_accounts'); - - if (bootstrapTimelineAccountsField) { - bootstrapTimelineAccountsField.disabled = !target.checked; - if (target.checked) { - bootstrapTimelineAccountsField.parentElement.classList.remove('disabled'); - bootstrapTimelineAccountsField.parentElement.parentElement.classList.remove('disabled'); - } else { - bootstrapTimelineAccountsField.parentElement.classList.add('disabled'); - bootstrapTimelineAccountsField.parentElement.parentElement.classList.add('disabled'); - } - } -}; - -Rails.delegate(document, '#form_admin_settings_enable_bootstrap_timeline_accounts', 'change', ({ target }) => onEnableBootstrapTimelineAccountsChange(target)); - -const onChangeRegistrationMode = (target) => { - const enabled = target.value === 'approved'; - - [].forEach.call(document.querySelectorAll('#form_admin_settings_require_invite_text'), (input) => { - input.disabled = !enabled; - if (enabled) { - let element = input; - do { - element.classList.remove('disabled'); - element = element.parentElement; - } while (element && !element.classList.contains('fields-group')); - } else { - let element = input; - do { - element.classList.add('disabled'); - element = element.parentElement; - } while (element && !element.classList.contains('fields-group')); - } - }); -}; - -const convertUTCDateTimeToLocal = (value) => { - const date = new Date(value + 'Z'); - const twoChars = (x) => (x.toString().padStart(2, '0')); - return `${date.getFullYear()}-${twoChars(date.getMonth()+1)}-${twoChars(date.getDate())}T${twoChars(date.getHours())}:${twoChars(date.getMinutes())}`; -}; - -const convertLocalDatetimeToUTC = (value) => { - const re = /^([0-9]{4,})-([0-9]{2})-([0-9]{2})T([0-9]{2}):([0-9]{2})/; - const match = re.exec(value); - const date = new Date(match[1], match[2] - 1, match[3], match[4], match[5]); - const fullISO8601 = date.toISOString(); - return fullISO8601.slice(0, fullISO8601.indexOf('T') + 6); -}; - -Rails.delegate(document, '#form_admin_settings_registrations_mode', 'change', ({ target }) => onChangeRegistrationMode(target)); - -ready(() => { - const domainBlockSeverityInput = document.getElementById('domain_block_severity'); - if (domainBlockSeverityInput) onDomainBlockSeverityChange(domainBlockSeverityInput); - - const enableBootstrapTimelineAccounts = document.getElementById('form_admin_settings_enable_bootstrap_timeline_accounts'); - if (enableBootstrapTimelineAccounts) onEnableBootstrapTimelineAccountsChange(enableBootstrapTimelineAccounts); - - const registrationMode = document.getElementById('form_admin_settings_registrations_mode'); - if (registrationMode) onChangeRegistrationMode(registrationMode); - - const checkAllElement = document.querySelector('#batch_checkbox_all'); - if (checkAllElement) { - checkAllElement.checked = [].every.call(document.querySelectorAll(batchCheckboxClassName), (content) => content.checked); - checkAllElement.indeterminate = !checkAllElement.checked && [].some.call(document.querySelectorAll(batchCheckboxClassName), (content) => content.checked); - } - - document.querySelector('a#add-instance-button')?.addEventListener('click', (e) => { - const domain = document.querySelector('input[type="text"]#by_domain')?.value; - - if (domain) { - const url = new URL(event.target.href); - url.searchParams.set('_domain', domain); - e.target.href = url; - } - }); - - [].forEach.call(document.querySelectorAll('input[type="datetime-local"]'), element => { - if (element.value) { - element.value = convertUTCDateTimeToLocal(element.value); - } - if (element.placeholder) { - element.placeholder = convertUTCDateTimeToLocal(element.placeholder); - } - }); - - Rails.delegate(document, 'form', 'submit', ({ target }) => { - [].forEach.call(target.querySelectorAll('input[type="datetime-local"]'), element => { - if (element.value && element.validity.valid) { - element.value = convertLocalDatetimeToUTC(element.value); - } - }); - }); - - const announcementStartsAt = document.querySelector('input[type="datetime-local"]#announcement_starts_at'); - if (announcementStartsAt) { - setAnnouncementEndsAttributes(announcementStartsAt); - } - - [].forEach.call(document.querySelectorAll('[data-admin-component]'), element => { - const componentName = element.getAttribute('data-admin-component'); - const componentProps = JSON.parse(element.getAttribute('data-props')); - - import('../mastodon/containers/admin_component').then(({ default: AdminComponent }) => { - return import('../mastodon/components/admin/' + componentName).then(({ default: Component }) => { - const root = createRoot(element); - - root.render ( - - - , - ); - }); - }).catch(error => { - console.error(error); - }); - }); -}); diff --git a/app/javascript/packs/admin.tsx b/app/javascript/packs/admin.tsx new file mode 100644 index 0000000000..9fee560565 --- /dev/null +++ b/app/javascript/packs/admin.tsx @@ -0,0 +1,368 @@ +import './public-path'; +import { createRoot } from 'react-dom/client'; + +import Rails from '@rails/ujs'; + +import ready from '../mastodon/ready'; + +const setAnnouncementEndsAttributes = (target: HTMLInputElement) => { + const valid = target.value && target.validity.valid; + const element = document.querySelector( + 'input[type="datetime-local"]#announcement_ends_at', + ); + + if (!element) return; + + if (valid) { + element.classList.remove('optional'); + element.required = true; + element.min = target.value; + } else { + element.classList.add('optional'); + element.removeAttribute('required'); + element.removeAttribute('min'); + } +}; + +Rails.delegate( + document, + 'input[type="datetime-local"]#announcement_starts_at', + 'change', + ({ target }) => { + if (target instanceof HTMLInputElement) + setAnnouncementEndsAttributes(target); + }, +); + +const batchCheckboxClassName = '.batch-checkbox input[type="checkbox"]'; + +const showSelectAll = () => { + const selectAllMatchingElement = document.querySelector( + '.batch-table__select-all', + ); + selectAllMatchingElement?.classList.add('active'); +}; + +const hideSelectAll = () => { + const selectAllMatchingElement = document.querySelector( + '.batch-table__select-all', + ); + const hiddenField = document.querySelector( + 'input#select_all_matching', + ); + const selectedMsg = document.querySelector( + '.batch-table__select-all .selected', + ); + const notSelectedMsg = document.querySelector( + '.batch-table__select-all .not-selected', + ); + + selectAllMatchingElement?.classList.remove('active'); + selectedMsg?.classList.remove('active'); + notSelectedMsg?.classList.add('active'); + if (hiddenField) hiddenField.value = '0'; +}; + +Rails.delegate(document, '#batch_checkbox_all', 'change', ({ target }) => { + if (!(target instanceof HTMLInputElement)) return; + + const selectAllMatchingElement = document.querySelector( + '.batch-table__select-all', + ); + + document + .querySelectorAll(batchCheckboxClassName) + .forEach((content) => { + content.checked = target.checked; + }); + + if (selectAllMatchingElement) { + if (target.checked) { + showSelectAll(); + } else { + hideSelectAll(); + } + } +}); + +Rails.delegate(document, '.batch-table__select-all button', 'click', () => { + const hiddenField = document.querySelector( + '#select_all_matching', + ); + + if (!hiddenField) return; + + const active = hiddenField.value === '1'; + const selectedMsg = document.querySelector( + '.batch-table__select-all .selected', + ); + const notSelectedMsg = document.querySelector( + '.batch-table__select-all .not-selected', + ); + + if (!selectedMsg || !notSelectedMsg) return; + + if (active) { + hiddenField.value = '0'; + selectedMsg.classList.remove('active'); + notSelectedMsg.classList.add('active'); + } else { + hiddenField.value = '1'; + notSelectedMsg.classList.remove('active'); + selectedMsg.classList.add('active'); + } +}); + +Rails.delegate(document, batchCheckboxClassName, 'change', () => { + const checkAllElement = document.querySelector( + 'input#batch_checkbox_all', + ); + const selectAllMatchingElement = document.querySelector( + '.batch-table__select-all', + ); + + if (checkAllElement) { + const allCheckboxes = Array.from( + document.querySelectorAll(batchCheckboxClassName), + ); + checkAllElement.checked = allCheckboxes.every((content) => content.checked); + checkAllElement.indeterminate = + !checkAllElement.checked && + allCheckboxes.some((content) => content.checked); + + if (selectAllMatchingElement) { + if (checkAllElement.checked) { + showSelectAll(); + } else { + hideSelectAll(); + } + } + } +}); + +Rails.delegate( + document, + '.filter-subset--with-select select', + 'change', + ({ target }) => { + if (target instanceof HTMLSelectElement) target.form?.submit(); + }, +); + +const onDomainBlockSeverityChange = (target: HTMLSelectElement) => { + const rejectMediaDiv = document.querySelector( + '.input.with_label.domain_block_reject_media', + ); + const rejectReportsDiv = document.querySelector( + '.input.with_label.domain_block_reject_reports', + ); + + if (rejectMediaDiv && rejectMediaDiv instanceof HTMLElement) { + rejectMediaDiv.style.display = + target.value === 'suspend' ? 'none' : 'block'; + } + + if (rejectReportsDiv && rejectReportsDiv instanceof HTMLElement) { + rejectReportsDiv.style.display = + target.value === 'suspend' ? 'none' : 'block'; + } +}; + +Rails.delegate(document, '#domain_block_severity', 'change', ({ target }) => { + if (target instanceof HTMLSelectElement) onDomainBlockSeverityChange(target); +}); + +const onEnableBootstrapTimelineAccountsChange = (target: HTMLInputElement) => { + const bootstrapTimelineAccountsField = + document.querySelector( + '#form_admin_settings_bootstrap_timeline_accounts', + ); + + if (bootstrapTimelineAccountsField) { + bootstrapTimelineAccountsField.disabled = !target.checked; + if (target.checked) { + bootstrapTimelineAccountsField.parentElement?.classList.remove( + 'disabled', + ); + bootstrapTimelineAccountsField.parentElement?.parentElement?.classList.remove( + 'disabled', + ); + } else { + bootstrapTimelineAccountsField.parentElement?.classList.add('disabled'); + bootstrapTimelineAccountsField.parentElement?.parentElement?.classList.add( + 'disabled', + ); + } + } +}; + +Rails.delegate( + document, + '#form_admin_settings_enable_bootstrap_timeline_accounts', + 'change', + ({ target }) => { + if (target instanceof HTMLInputElement) + onEnableBootstrapTimelineAccountsChange(target); + }, +); + +const onChangeRegistrationMode = (target: HTMLSelectElement) => { + const enabled = target.value === 'approved'; + + document + .querySelectorAll( + '.form_admin_settings_registrations_mode .warning-hint', + ) + .forEach((warning_hint) => { + warning_hint.style.display = target.value === 'open' ? 'inline' : 'none'; + }); + + document + .querySelectorAll( + 'input#form_admin_settings_require_invite_text', + ) + .forEach((input) => { + input.disabled = !enabled; + if (enabled) { + let element: HTMLElement | null = input; + do { + element.classList.remove('disabled'); + element = element.parentElement; + } while (element && !element.classList.contains('fields-group')); + } else { + let element: HTMLElement | null = input; + do { + element.classList.add('disabled'); + element = element.parentElement; + } while (element && !element.classList.contains('fields-group')); + } + }); +}; + +const convertUTCDateTimeToLocal = (value: string) => { + const date = new Date(value + 'Z'); + const twoChars = (x: number) => x.toString().padStart(2, '0'); + return `${date.getFullYear()}-${twoChars(date.getMonth() + 1)}-${twoChars(date.getDate())}T${twoChars(date.getHours())}:${twoChars(date.getMinutes())}`; +}; + +function convertLocalDatetimeToUTC(value: string) { + const date = new Date(value); + const fullISO8601 = date.toISOString(); + return fullISO8601.slice(0, fullISO8601.indexOf('T') + 6); +} + +Rails.delegate( + document, + '#form_admin_settings_registrations_mode', + 'change', + ({ target }) => { + if (target instanceof HTMLSelectElement) onChangeRegistrationMode(target); + }, +); + +async function mountReactComponent(element: Element) { + const componentName = element.getAttribute('data-admin-component'); + const stringProps = element.getAttribute('data-props'); + + if (!stringProps) return; + + const componentProps = JSON.parse(stringProps) as object; + + const { default: AdminComponent } = await import( + '@/mastodon/containers/admin_component' + ); + + const { default: Component } = (await import( + `@/mastodon/components/admin/${componentName}` + )) as { default: React.ComponentType }; + + const root = createRoot(element); + + root.render( + + + , + ); +} + +ready(() => { + const domainBlockSeveritySelect = document.querySelector( + 'select#domain_block_severity', + ); + if (domainBlockSeveritySelect) + onDomainBlockSeverityChange(domainBlockSeveritySelect); + + const enableBootstrapTimelineAccounts = + document.querySelector( + 'input#form_admin_settings_enable_bootstrap_timeline_accounts', + ); + if (enableBootstrapTimelineAccounts) + onEnableBootstrapTimelineAccountsChange(enableBootstrapTimelineAccounts); + + const registrationMode = document.querySelector( + 'select#form_admin_settings_registrations_mode', + ); + if (registrationMode) onChangeRegistrationMode(registrationMode); + + const checkAllElement = document.querySelector( + 'input#batch_checkbox_all', + ); + if (checkAllElement) { + const allCheckboxes = Array.from( + document.querySelectorAll(batchCheckboxClassName), + ); + checkAllElement.checked = allCheckboxes.every((content) => content.checked); + checkAllElement.indeterminate = + !checkAllElement.checked && + allCheckboxes.some((content) => content.checked); + } + + document + .querySelector('a#add-instance-button') + ?.addEventListener('click', (e) => { + const domain = document.querySelector( + 'input[type="text"]#by_domain', + )?.value; + + if (domain && e.target instanceof HTMLAnchorElement) { + const url = new URL(e.target.href); + url.searchParams.set('_domain', domain); + e.target.href = url.toString(); + } + }); + + document + .querySelectorAll('input[type="datetime-local"]') + .forEach((element) => { + if (element.value) { + element.value = convertUTCDateTimeToLocal(element.value); + } + if (element.placeholder) { + element.placeholder = convertUTCDateTimeToLocal(element.placeholder); + } + }); + + Rails.delegate(document, 'form', 'submit', ({ target }) => { + if (target instanceof HTMLFormElement) + target + .querySelectorAll('input[type="datetime-local"]') + .forEach((element) => { + if (element.value && element.validity.valid) { + element.value = convertLocalDatetimeToUTC(element.value); + } + }); + }); + + const announcementStartsAt = document.querySelector( + 'input[type="datetime-local"]#announcement_starts_at', + ); + if (announcementStartsAt) { + setAnnouncementEndsAttributes(announcementStartsAt); + } + + document.querySelectorAll('[data-admin-component]').forEach((element) => { + void mountReactComponent(element); + }); +}).catch((reason) => { + throw reason; +}); diff --git a/app/javascript/packs/public.jsx b/app/javascript/packs/public.jsx index 5edc355370..d8a4c16034 100644 --- a/app/javascript/packs/public.jsx +++ b/app/javascript/packs/public.jsx @@ -65,7 +65,6 @@ function loaded() { const timeFormat = new Intl.DateTimeFormat(locale, { timeStyle: 'short', - hour12: false, }); const formatMessage = ({ id, defaultMessage }, values) => { @@ -73,11 +72,11 @@ function loaded() { return messageFormat.format(values); }; - [].forEach.call(document.querySelectorAll('.emojify'), (content) => { + document.querySelectorAll('.emojify').forEach((content) => { content.innerHTML = emojify(content.innerHTML); }); - [].forEach.call(document.querySelectorAll('time.formatted'), (content) => { + document.querySelectorAll('time.formatted').forEach((content) => { const datetime = new Date(content.getAttribute('datetime')); const formattedDate = dateTimeFormat.format(datetime); @@ -94,7 +93,7 @@ function loaded() { }; const todayFormat = new IntlMessageFormat(localeData['relative_format.today'] || 'Today at {time}', locale); - [].forEach.call(document.querySelectorAll('time.relative-formatted'), (content) => { + document.querySelectorAll('time.relative-formatted').forEach((content) => { const datetime = new Date(content.getAttribute('datetime')); let formattedContent; @@ -111,7 +110,7 @@ function loaded() { content.textContent = formattedContent; }); - [].forEach.call(document.querySelectorAll('time.time-ago'), (content) => { + document.querySelectorAll('time.time-ago').forEach((content) => { const datetime = new Date(content.getAttribute('datetime')); const now = new Date(); @@ -128,8 +127,8 @@ function loaded() { if (reactComponents.length > 0) { import(/* webpackChunkName: "containers/media_container" */ '../mastodon/containers/media_container') .then(({ default: MediaContainer }) => { - [].forEach.call(reactComponents, (component) => { - [].forEach.call(component.children, (child) => { + reactComponents.forEach((component) => { + Array.from(component.children).forEach((child) => { component.removeChild(child); }); }); @@ -185,7 +184,7 @@ function loaded() { return false; }); - [].forEach.call(document.querySelectorAll('.status__content__spoiler-link'), (spoilerLink) => { + document.querySelectorAll('.status__content__spoiler-link').forEach((spoilerLink) => { const statusEl = spoilerLink.parentNode.parentNode; const message = (statusEl.dataset.spoiler === 'expanded') ? (localeData['status.show_less'] || 'Show less') : (localeData['status.show_more'] || 'Show more'); spoilerLink.textContent = (new IntlMessageFormat(message, locale)).format(); diff --git a/app/javascript/styles/mailer.scss b/app/javascript/styles/mailer.scss index a2cbb494b4..e5d0c05f81 100644 --- a/app/javascript/styles/mailer.scss +++ b/app/javascript/styles/mailer.scss @@ -192,6 +192,18 @@ table + p { } } +.email-dir-rtl { + direction: rtl; + + [dir='rtl'] & { + direction: ltr; + } +} + +.email-dir-ltr { + direction: ltr; +} + .email-padding-24 { padding: 24px; } @@ -216,6 +228,30 @@ table + p { border-bottom: 1px solid #dfdee3; } +.email-desktop-flex { + font-size: 0; + max-width: 740px; + margin-left: auto; + margin-right: auto; + + &.email-dir-rtl > .email-desktop-column { + direction: ltr; + + [dir='rtl'] & { + direction: rtl; + } + } +} + +.email-desktop-column { + display: inline-block; + width: 100%; + max-width: none; + text-align: start; + vertical-align: top; + font-size: 16px; +} + // Header .email-header-td { padding: 16px 32px; @@ -312,6 +348,66 @@ table + p { } } +.email-header-card-table { + width: 100%; + border-collapse: separate; + overflow: hidden; + border-radius: 12px; + background-color: #fff; + border: 2px solid #fff; + box-shadow: 0 4px 16px 0 rgba(23, 6, 59, 8%); +} + +.email-header-card { + position: relative; + max-height: 100px; +} + +.email-header-card-banner-td { + border-radius: 12px 12px 0 0; + height: 80px; + background-color: #f3f2f5 !important; + background-position: center !important; + background-size: cover !important; +} + +.email-header-card-body-td { + padding: 12px; + + .email-btn-table { + width: 100%; + max-width: 212px; + } +} + +.email-header-card-instance { + margin-bottom: 4px; + overflow: hidden; + text-overflow: ellipsis; + word-break: break-all; + color: #17063b; + font-size: 14px; + line-height: 20px; + font-weight: 600; + + &:only-of-type { + margin-bottom: 12px; + } +} + +.email-header-card-description { + margin-bottom: 12px; + color: #746a89; + font-size: 12px; + line-height: 16px; + max-height: 32px; + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + -webkit-line-clamp: 2; + -webkit-box-orient: vertical; +} + // To make the design work with images off // we create an empty div that overlaps with // the rest of the content with a dark background. @@ -336,6 +432,16 @@ table + p { mso-padding-alt: 32px; } +.email-body-columns-td { + border-top: 1px solid #dfdee3; + padding: 32px 24px 8px; +} + +.email-body-huge-padding-td { + padding: 110px 32px 32px; + mso-padding-alt: 32px; +} + .email-body-padding-td { & > p { font-size: 14px; @@ -353,6 +459,30 @@ table + p { } } +// Texts +.email-h2 { + margin-bottom: 4px; + color: #17063b; + font-size: 18px; + font-weight: 600; + line-height: 28px; +} + +.email-h-sub { + margin-bottom: 16px; + color: #746a89; + font-size: 14px; + line-height: 16px; +} + +.email-p { + margin-bottom: 16px; + color: #746a89; + font-size: 14px; + font-weight: 400; + line-height: 20px; +} + // Footer .email-footer-td { padding: 28px 32px 32px; @@ -539,8 +669,13 @@ table + p { background-color: #fff; } +.email-checklist-checked { + border-color: #c4e6d7; + background-color: #eaf6f1; +} + .email-checklist-td { - padding: 16px; + padding: 16px 16px 6px; } .email-checklist-icons-td { @@ -576,10 +711,15 @@ table + p { font-size: 14px; font-weight: 600; line-height: 16.8px; + + .email-checklist-checked & { + color: #746a89; + text-decoration: line-through; + } } p { - margin: 0 0 2px; + margin: 0 0 12px; color: #746a89; font-size: 14px; line-height: 16.8px; @@ -597,6 +737,194 @@ table + p { padding-left: 10px; padding-right: 10px; } + + div + div { + margin-inline-start: auto; + margin-bottom: 12px; + } +} + +// Welcome email +.email-welcome-apps-btns { + font-size: 12px; + line-height: 44px; +} + +.email-column-td { + padding: 0 8px; + vertical-align: top; +} + +.email-link-with-arrow { + color: #6364ff; + font-size: 14px; + font-weight: 600; + line-height: 16.8px; + + &:hover { + color: #563acc !important; + } + + span { + font-size: 12px; + font-weight: 400; + } +} + +.email-column-action-td { + padding: 24px 0; + color: #6364ff; + font-size: 14px; + font-weight: 600; + line-height: 16.8px; + text-align: center; +} + +// Follow and hashtags +.email-mini-wrapper-td { + padding: 4px 0; + + table { + table-layout: fixed; + } +} + +.email-mini-td { + border-radius: 12px; + border: 1px solid #e8e6eb; + background-color: #fff; + padding: 15px 16px; +} + +.email-mini-follow-img-td { + width: 40px; + vertical-align: top; + + img { + border-radius: 8px; + } +} + +.email-mini-follow-text-td { + padding-left: 8px; + padding-right: 16px; + vertical-align: top; + + h3 { + color: #17063b; + font-size: 14px; + font-weight: 600; + line-height: 20px; + } + + p { + color: #746a89; + font-size: 12px; + font-weight: 400; + line-height: 16px; + } +} + +.email-mini-follow-btn-td { + width: 68px; + vertical-align: top; + + .email-btn-table { + width: 100%; + } + + .email-btn-td { + mso-padding-alt: 10px; + } + + .email-btn-a { + padding-left: 10px; + padding-right: 10px; + } +} + +.email-mini-hashtag-td { + height: 40px; + + td { + vertical-align: middle; + } + + h3 { + color: #17063b; + font-size: 14px; + font-weight: 600; + line-height: 20px; + } + + p { + color: #746a89; + font-size: 12px; + font-weight: 400; + line-height: 16px; + word-break: break-all; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + } +} + +.email-mini-hashtag-img-td { + width: 40px; + height: 20px; + white-space: nowrap; + text-indent: -2px; + font-size: 0; + + & + td { + padding-left: 8px; + } +} + +.email-mini-hashtag-img-span { + display: inline-block; + max-width: 12px; + font-size: 12px; + + img { + width: 16px; + height: 16px; + border-radius: 50%; + max-width: none; + border: 2px solid #fff; + vertical-align: middle; + } +} + +// Extra content on light purple background +.email-extra-wave { + height: 42px; + background-image: url('../images/mailer-new/welcome/purple-extra-soft-wave.png'); + background-position: bottom center; + background-repeat: no-repeat; +} + +.email-extra-td { + padding: 32px 32px 24px; + background-color: #f0f0ff; + background-image: url('../images/mailer-new/welcome/purple-extra-soft-spacer.png'); // Using an image to maintain the color even in forced dark modes + + .email-column-td { + padding-top: 8px; + padding-bottom: 8px; + } +} + +// Feature card +.email-feature-wrapper-td { + padding: 8px 0; +} + +.email-feature-td { + padding: 24px; + background-color: #fff; + border: 1px solid #e8e6eb; + border-radius: 12px; } // Responsive @@ -617,4 +945,21 @@ table + p { .email-desktop-flex { display: flex; } + + .email-header-left { + padding-right: 32px; + } + + .email-header-right { + width: 240px; + margin-inline-start: auto; + } + + .email-desktop-column { + max-width: 346px !important; + } + + .email-desktop-text-right { + text-align: right; + } } diff --git a/app/javascript/styles/mastodon-light/diff.scss b/app/javascript/styles/mastodon-light/diff.scss index 520e91e28b..e3872283e1 100644 --- a/app/javascript/styles/mastodon-light/diff.scss +++ b/app/javascript/styles/mastodon-light/diff.scss @@ -210,12 +210,6 @@ html { } } -// Change the background colors of media and video spoilers -.media-spoiler, -.video-player__spoiler { - background: $ui-base-color; -} - .account-gallery__item a { background-color: $ui-base-color; } diff --git a/app/javascript/styles/mastodon/admin.scss b/app/javascript/styles/mastodon/admin.scss index 3f538d08d6..ef9c2fd889 100644 --- a/app/javascript/styles/mastodon/admin.scss +++ b/app/javascript/styles/mastodon/admin.scss @@ -324,6 +324,23 @@ $content-width: 840px; padding-bottom: 0; margin-bottom: 0; border-bottom: 0; + + .comment { + display: block; + overflow: hidden; + text-overflow: ellipsis; + margin-top: 4px; + + &.private-comment { + display: block; + color: $darker-text-color; + } + + &.public-comment { + display: block; + color: $secondary-text-color; + } + } } & > p { @@ -622,16 +639,6 @@ body, input.button { margin: 0 5px 5px 0; } - - .media-spoiler-toggle-buttons { - margin-inline-start: auto; - - .button { - overflow: visible; - margin: 0 0 5px 5px; - float: right; - } - } } .back-link { @@ -1054,6 +1061,7 @@ a.name-tag, display: flex; justify-content: space-between; margin-bottom: 0; + word-break: break-word; } &__permissions { diff --git a/app/javascript/styles/mastodon/components.scss b/app/javascript/styles/mastodon/components.scss index f70fa12a51..5bd11c3500 100644 --- a/app/javascript/styles/mastodon/components.scss +++ b/app/javascript/styles/mastodon/components.scss @@ -669,12 +669,12 @@ body > [data-popper-placement] { } .icon-button.compose-form__upload__delete { - padding: 3px; + padding: 2px; border-radius: 50%; .icon { - width: 18px; - height: 18px; + width: 20px; + height: 20px; } } @@ -720,12 +720,12 @@ body > [data-popper-placement] { } .icon-button { - padding: 3px; + padding: 2px; } .icon-button .icon { - width: 18px; - height: 18px; + width: 20px; + height: 20px; } } @@ -4325,35 +4325,6 @@ a.status-card { z-index: 100; } -.media-spoiler { - background: $base-overlay-background; - color: $darker-text-color; - border: 0; - padding: 0; - width: 100%; - height: 100%; - border-radius: 4px; - appearance: none; - - &:hover, - &:active, - &:focus { - padding: 0; - color: lighten($darker-text-color, 8%); - } -} - -.media-spoiler__warning { - display: block; - font-size: 14px; -} - -.media-spoiler__trigger { - display: block; - font-size: 11px; - font-weight: 700; -} - .spoiler-button { top: 0; inset-inline-start: 0; @@ -4711,43 +4682,6 @@ a.status-card { animation: heartbeat 1.5s ease-in-out infinite both; } -@keyframes shake-bottom { - 0%, - 100% { - transform: rotate(0deg); - transform-origin: 50% 100%; - } - - 10% { - transform: rotate(2deg); - } - - 20%, - 40%, - 60% { - transform: rotate(-4deg); - } - - 30%, - 50%, - 70% { - transform: rotate(4deg); - } - - 80% { - transform: rotate(-2deg); - } - - 90% { - transform: rotate(2deg); - } -} - -.no-reduce-motion .shake-bottom { - transform-origin: 50% 100%; - animation: shake-bottom 0.8s cubic-bezier(0.455, 0.03, 0.515, 0.955) 2s 2 both; -} - .emoji-picker-dropdown__menu { position: relative; margin-top: 5px; @@ -5261,7 +5195,6 @@ a.status-card { .icon { position: absolute; top: 12px + 2px; - inset-inline-start: 16px - 2px; display: inline-block; opacity: 0; transition: all 100ms linear; @@ -5271,6 +5204,7 @@ a.status-card { color: $darker-text-color; cursor: default; pointer-events: none; + margin-inline-start: 16px - 2px; &.active { pointer-events: auto; @@ -5353,20 +5287,6 @@ a.status-card { } } -.search-results__hashtag { - display: block; - padding: 10px; - color: $secondary-text-color; - text-decoration: none; - - &:hover, - &:active, - &:focus { - color: lighten($secondary-text-color, 4%); - text-decoration: underline; - } -} - .search-results__info { padding: 20px; color: $darker-text-color; @@ -5394,6 +5314,8 @@ a.status-card { inset-inline-start: 0; width: 100%; height: 100%; + max-width: 100vw; + max-height: 100vh; box-sizing: border-box; display: flex; flex-direction: column; @@ -6043,6 +5965,7 @@ a.status-card { .report-modal__comment { box-sizing: border-box; width: 50%; + min-width: 50%; @media screen and (width <= 480px) { width: 100%; @@ -6111,6 +6034,14 @@ a.status-card { min-height: 100px; max-height: 50vh; border: 0; + + @media screen and (height <= 600px) { + max-height: 20vh; + } + + @media screen and (max-width: $no-columns-breakpoint) { + max-height: 20vh; + } } .setting-toggle { @@ -8330,7 +8261,7 @@ noscript { .search__input { border: 1px solid lighten($ui-base-color, 8%); padding: 10px; - padding-inline-end: 28px; + padding-inline-end: 30px; } .search__popout { @@ -9465,6 +9396,7 @@ noscript { flex-direction: column; gap: 12px; padding: 16px 0; + padding-bottom: 0; border-bottom: 1px solid mix($ui-base-color, $ui-highlight-color, 75%); background: mix($ui-base-color, $ui-highlight-color, 95%); @@ -9503,6 +9435,7 @@ noscript { cursor: pointer; top: 0; color: $primary-text-color; + opacity: 0.5; &.left { left: 0; @@ -9530,6 +9463,8 @@ noscript { &:hover, &:focus, &:active { + opacity: 1; + .inline-follow-suggestions__body__scroll-button__icon { background: lighten($ui-highlight-color, 4%); } @@ -9541,11 +9476,10 @@ noscript { flex-wrap: nowrap; gap: 16px; padding: 16px; - padding-bottom: 0; scroll-snap-type: x mandatory; scroll-padding: 16px; scroll-behavior: smooth; - overflow-x: hidden; + overflow-x: scroll; &__card { background: darken($ui-base-color, 4%); @@ -9570,6 +9504,7 @@ noscript { position: absolute; inset-inline-end: 8px; top: 8px; + opacity: 0.75; } &__avatar { @@ -9607,6 +9542,7 @@ noscript { gap: 4px; overflow: hidden; white-space: nowrap; + cursor: help; > span { overflow: hidden; diff --git a/app/javascript/styles/mastodon/forms.scss b/app/javascript/styles/mastodon/forms.scss index 555d43cc1c..3ac5c3df95 100644 --- a/app/javascript/styles/mastodon/forms.scss +++ b/app/javascript/styles/mastodon/forms.scss @@ -1078,6 +1078,7 @@ code { &__type { color: $darker-text-color; + word-break: break-word; } } diff --git a/app/lib/admin/metrics/measure/instance_media_attachments_measure.rb b/app/lib/admin/metrics/measure/instance_media_attachments_measure.rb index 2d4b5f56b0..1d2dbbe414 100644 --- a/app/lib/admin/metrics/measure/instance_media_attachments_measure.rb +++ b/app/lib/admin/metrics/measure/instance_media_attachments_measure.rb @@ -50,7 +50,7 @@ class Admin::Metrics::Measure::InstanceMediaAttachmentsMeasure < Admin::Metrics: WHERE date_trunc('day', media_attachments.created_at)::date = axis.period AND #{account_domain_sql(params[:include_subdomains])} ) - SELECT SUM(size) FROM new_media_attachments + SELECT COALESCE(SUM(size), 0) FROM new_media_attachments ) AS value FROM ( SELECT generate_series(date_trunc('day', :start_at::timestamp)::date, date_trunc('day', :end_at::timestamp)::date, interval '1 day') AS period diff --git a/app/lib/admin/metrics/measure/tag_servers_measure.rb b/app/lib/admin/metrics/measure/tag_servers_measure.rb index e6378b8021..e0f1bf3440 100644 --- a/app/lib/admin/metrics/measure/tag_servers_measure.rb +++ b/app/lib/admin/metrics/measure/tag_servers_measure.rb @@ -28,16 +28,19 @@ class Admin::Metrics::Measure::TagServersMeasure < Admin::Metrics::Measure::Base def sql_query_string <<~SQL.squish SELECT axis.*, ( - SELECT count(distinct accounts.domain) AS value - FROM statuses - INNER JOIN statuses_tags ON statuses.id = statuses_tags.status_id - INNER JOIN accounts ON statuses.account_id = accounts.id - WHERE statuses_tags.tag_id = :tag_id - AND statuses.id BETWEEN :earliest_status_id AND :latest_status_id - AND date_trunc('day', statuses.created_at)::date = axis.day - ) + WITH tag_servers AS ( + SELECT DISTINCT accounts.domain + FROM statuses + INNER JOIN statuses_tags ON statuses.id = statuses_tags.status_id + INNER JOIN accounts ON statuses.account_id = accounts.id + WHERE statuses_tags.tag_id = :tag_id + AND statuses.id BETWEEN :earliest_status_id AND :latest_status_id + AND date_trunc('day', statuses.created_at)::date = axis.period + ) + SELECT COUNT(*) FROM tag_servers + ) AS value FROM ( - SELECT generate_series(date_trunc('day', :start_at::timestamp)::date, date_trunc('day', :end_at::timestamp)::date, ('1 day')::interval) AS day + SELECT generate_series(date_trunc('day', :start_at::timestamp)::date, date_trunc('day', :end_at::timestamp)::date, interval '1 day') AS period ) as axis SQL end diff --git a/app/lib/application_extension.rb b/app/lib/application_extension.rb index fb442e2c2d..400c51a023 100644 --- a/app/lib/application_extension.rb +++ b/app/lib/application_extension.rb @@ -4,14 +4,34 @@ module ApplicationExtension extend ActiveSupport::Concern included do + include Redisable + has_many :created_users, class_name: 'User', foreign_key: 'created_by_application_id', inverse_of: :created_by_application validates :name, length: { maximum: 60 } validates :website, url: true, length: { maximum: 2_000 }, if: :website? validates :redirect_uri, length: { maximum: 2_000 } + + # The relationship used between Applications and AccessTokens is using + # dependent: delete_all, which means the ActiveRecord callback in + # AccessTokenExtension is not run, so instead we manually announce to + # streaming that these tokens are being deleted. + before_destroy :push_to_streaming_api, prepend: true end def confirmation_redirect_uri redirect_uri.lines.first.strip end + + def push_to_streaming_api + # TODO: #28793 Combine into a single topic + payload = Oj.dump(event: :kill) + access_tokens.in_batches do |tokens| + redis.pipelined do |pipeline| + tokens.ids.each do |id| + pipeline.publish("timeline:access_token:#{id}", payload) + end + end + end + end end diff --git a/app/lib/signature_parser.rb b/app/lib/signature_parser.rb new file mode 100644 index 0000000000..7a75080d98 --- /dev/null +++ b/app/lib/signature_parser.rb @@ -0,0 +1,40 @@ +# frozen_string_literal: true + +class SignatureParser + class ParsingError < StandardError; end + + # The syntax of this header is defined in: + # https://datatracker.ietf.org/doc/html/draft-cavage-http-signatures-12#section-4 + # See https://datatracker.ietf.org/doc/html/rfc7235#appendix-C + # and https://datatracker.ietf.org/doc/html/rfc7230#section-3.2.6 + + # In addition, ignore a `Signature ` string prefix that was added by old versions + # of `node-http-signatures` + + TOKEN_RE = /[0-9a-zA-Z!#$%&'*+.^_`|~-]+/ + # qdtext and quoted_pair are not exactly according to spec but meh + QUOTED_STRING_RE = /"([^\\"]|(\\.))*"/ + PARAM_RE = /(?#{TOKEN_RE})\s*=\s*((?#{TOKEN_RE})|(?#{QUOTED_STRING_RE}))/ + + def self.parse(raw_signature) + # Old versions of node-http-signature add an incorrect "Signature " prefix to the header + raw_signature = raw_signature.delete_prefix('Signature ') + + params = {} + scanner = StringScanner.new(raw_signature) + + # Use `skip` instead of `scan` as we only care about the subgroups + while scanner.skip(PARAM_RE) + # This is not actually correct with regards to quoted pairs, but it's consistent + # with our previous implementation, and good enough in practice. + params[scanner[:key]] = scanner[:value] || scanner[:quoted_value][1...-1] + + scanner.skip(/\s*/) + return params if scanner.eos? + + raise ParsingError unless scanner.skip(/\s*,\s*/) + end + + raise ParsingError + end +end diff --git a/app/mailers/admin_mailer.rb b/app/mailers/admin_mailer.rb index 2a6fbb0ab7..8990b2a847 100644 --- a/app/mailers/admin_mailer.rb +++ b/app/mailers/admin_mailer.rb @@ -61,6 +61,12 @@ class AdminMailer < ApplicationMailer end end + def auto_close_registrations + locale_for_account(@me) do + mail subject: default_i18n_subject(instance: @instance) + end + end + private def process_params diff --git a/app/mailers/user_mailer.rb b/app/mailers/user_mailer.rb index 3b1a085cb8..96fcd51efa 100644 --- a/app/mailers/user_mailer.rb +++ b/app/mailers/user_mailer.rb @@ -135,6 +135,12 @@ class UserMailer < Devise::Mailer return unless @resource.active_for_authentication? + @suggestions = AccountSuggestions.new(@resource.account).get(5) + @tags = Trends.tags.query.allowed.limit(5) + @has_account_fields = @resource.account.display_name.present? || @resource.account.note.present? || @resource.account.avatar.present? + @has_active_relationships = @resource.account.active_relationships.exists? + @has_statuses = @resource.account.statuses.exists? + I18n.with_locale(locale) do mail subject: default_i18n_subject end diff --git a/app/models/account.rb b/app/models/account.rb index 05e1f943ca..d627fd6b64 100644 --- a/app/models/account.rb +++ b/app/models/account.rb @@ -64,6 +64,7 @@ class Account < ApplicationRecord ) BACKGROUND_REFRESH_INTERVAL = 1.week.freeze + INSTANCE_ACTOR_ID = -99 USERNAME_RE = /[a-z0-9_]+([a-z0-9_.-]+[a-z0-9_]+)?/i MENTION_RE = %r{(? { will_save_change_to_username? } @@ -118,7 +119,7 @@ class Account < ApplicationRecord scope :sensitized, -> { where.not(sensitized_at: nil) } scope :without_suspended, -> { where(suspended_at: nil) } scope :without_silenced, -> { where(silenced_at: nil) } - scope :without_instance_actor, -> { where.not(id: -99) } + scope :without_instance_actor, -> { where.not(id: INSTANCE_ACTOR_ID) } scope :recent, -> { reorder(id: :desc) } scope :bots, -> { where(actor_type: %w(Application Service)) } scope :groups, -> { where(actor_type: 'Group') } @@ -176,7 +177,7 @@ class Account < ApplicationRecord end def instance_actor? - id == -99 + id == INSTANCE_ACTOR_ID end alias bot bot? diff --git a/app/models/account_suggestions.rb b/app/models/account_suggestions.rb index 25c8b04d50..98ccf4ad4f 100644 --- a/app/models/account_suggestions.rb +++ b/app/models/account_suggestions.rb @@ -31,12 +31,12 @@ class AccountSuggestions account_ids = account_ids_with_sources[offset, limit] accounts_map = Account.where(id: account_ids.map(&:first)).includes(:account_stat, :user).index_by(&:id) - account_ids.filter_map do |(account_id, source)| + account_ids.filter_map do |(account_id, sources)| next unless accounts_map.key?(account_id) AccountSuggestions::Suggestion.new( account: accounts_map[account_id], - source: source + sources: sources ) end end diff --git a/app/models/account_suggestions/friends_of_friends_source.rb b/app/models/account_suggestions/friends_of_friends_source.rb index 28d0ab99b3..0c95d21a3e 100644 --- a/app/models/account_suggestions/friends_of_friends_source.rb +++ b/app/models/account_suggestions/friends_of_friends_source.rb @@ -1,32 +1,16 @@ # frozen_string_literal: true class AccountSuggestions::FriendsOfFriendsSource < AccountSuggestions::Source - def get(account, limit: 10) - Account.find_by_sql([<<~SQL.squish, { id: account.id, limit: limit }]).map { |row| [row.id, key] } - WITH first_degree AS ( - SELECT target_account_id - FROM follows - JOIN accounts AS target_accounts ON follows.target_account_id = target_accounts.id - WHERE account_id = :id - AND NOT target_accounts.hide_collections - ) - SELECT accounts.id, COUNT(*) AS frequency - FROM accounts - JOIN follows ON follows.target_account_id = accounts.id - JOIN account_stats ON account_stats.account_id = accounts.id - LEFT OUTER JOIN follow_recommendation_mutes ON follow_recommendation_mutes.target_account_id = accounts.id AND follow_recommendation_mutes.account_id = :id - WHERE follows.account_id IN (SELECT * FROM first_degree) - AND NOT EXISTS (SELECT 1 FROM follows f WHERE f.target_account_id = follows.target_account_id AND f.account_id = :id) - AND follows.target_account_id <> :id - AND accounts.discoverable - AND accounts.suspended_at IS NULL - AND accounts.silenced_at IS NULL - AND accounts.moved_to_account_id IS NULL - AND follow_recommendation_mutes.target_account_id IS NULL - GROUP BY accounts.id, account_stats.id - ORDER BY frequency DESC, account_stats.followers_count ASC - LIMIT :limit - SQL + def get(account, limit: DEFAULT_LIMIT) + first_degree = account.following.where.not(hide_collections: true).select(:id).reorder(nil) + base_account_scope(account) + .joins(:account_stat) + .where(id: Follow.where(account_id: first_degree).select(:target_account_id)) + .group('accounts.id, account_stats.id') + .reorder('frequency DESC, followers_count DESC') + .limit(limit) + .pluck(Arel.sql('accounts.id, COUNT(*) AS frequency')) + .map { |id, _frequency| [id, key] } end private diff --git a/app/models/account_suggestions/global_source.rb b/app/models/account_suggestions/global_source.rb index d68f285e4f..c05bcf2ce8 100644 --- a/app/models/account_suggestions/global_source.rb +++ b/app/models/account_suggestions/global_source.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class AccountSuggestions::GlobalSource < AccountSuggestions::Source - def get(account, limit: 10) + def get(account, limit: DEFAULT_LIMIT) FollowRecommendation.localized(content_locale).joins(:account).merge(base_account_scope(account)).order(rank: :desc).limit(limit).pluck(:account_id, :reason) end diff --git a/app/models/account_suggestions/setting_source.rb b/app/models/account_suggestions/setting_source.rb index 4b7275bf7a..9f3cd7bd3d 100644 --- a/app/models/account_suggestions/setting_source.rb +++ b/app/models/account_suggestions/setting_source.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class AccountSuggestions::SettingSource < AccountSuggestions::Source - def get(account, limit: 10) + def get(account, limit: DEFAULT_LIMIT) if setting_enabled? base_account_scope(account).where(setting_to_where_condition).limit(limit).pluck(:id).zip([key].cycle) else diff --git a/app/models/account_suggestions/similar_profiles_source.rb b/app/models/account_suggestions/similar_profiles_source.rb index 733c5f0bbc..7ecdd607e5 100644 --- a/app/models/account_suggestions/similar_profiles_source.rb +++ b/app/models/account_suggestions/similar_profiles_source.rb @@ -47,11 +47,12 @@ class AccountSuggestions::SimilarProfilesSource < AccountSuggestions::Source end end - def get(account, limit: 10) + def get(account, limit: DEFAULT_LIMIT) recently_followed_account_ids = account.active_relationships.recent.limit(5).pluck(:target_account_id) if Chewy.enabled? && !recently_followed_account_ids.empty? - QueryBuilder.new(recently_followed_account_ids, account).build.limit(limit).hits.pluck('_id').map(&:to_i).zip([key].cycle) + ids_from_es = QueryBuilder.new(recently_followed_account_ids, account).build.limit(limit).hits.pluck('_id').map(&:to_i) + base_account_scope(account).where(id: ids_from_es).pluck(:id).zip([key].cycle) else [] end diff --git a/app/models/account_suggestions/source.rb b/app/models/account_suggestions/source.rb index d83f5e3773..7afc4c80ed 100644 --- a/app/models/account_suggestions/source.rb +++ b/app/models/account_suggestions/source.rb @@ -1,6 +1,8 @@ # frozen_string_literal: true class AccountSuggestions::Source + DEFAULT_LIMIT = 10 + def get(_account, **kwargs) raise NotImplementedError end @@ -10,6 +12,8 @@ class AccountSuggestions::Source def base_account_scope(account) Account .searchable + .where(discoverable: true) + .without_silenced .where.not(follows_sql, id: account.id) .where.not(follow_requests_sql, id: account.id) .not_excluded_by_account(account) diff --git a/app/models/account_suggestions/suggestion.rb b/app/models/account_suggestions/suggestion.rb index 2c6f4d27f5..8a5888069a 100644 --- a/app/models/account_suggestions/suggestion.rb +++ b/app/models/account_suggestions/suggestion.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class AccountSuggestions::Suggestion < ActiveModelSerializers::Model - attributes :account, :source + attributes :account, :sources delegate :id, to: :account, prefix: true end diff --git a/app/models/account_summary.rb b/app/models/account_summary.rb index 30ada50cc0..327c0ef305 100644 --- a/app/models/account_summary.rb +++ b/app/models/account_summary.rb @@ -10,21 +10,13 @@ # class AccountSummary < ApplicationRecord + include DatabaseViewRecord + self.primary_key = :account_id - has_many :follow_recommendation_suppressions, primary_key: :account_id, foreign_key: :account_id, inverse_of: false + has_many :follow_recommendation_suppressions, primary_key: :account_id, foreign_key: :account_id, inverse_of: false, dependent: nil scope :safe, -> { where(sensitive: false) } scope :localized, ->(locale) { order(Arel::Nodes::Case.new.when(arel_table[:language].eq(locale)).then(1).else(0).desc) } scope :filtered, -> { where.missing(:follow_recommendation_suppressions) } - - def self.refresh - Scenic.database.refresh_materialized_view(table_name, concurrently: true, cascade: false) - rescue ActiveRecord::StatementInvalid - Scenic.database.refresh_materialized_view(table_name, concurrently: false, cascade: false) - end - - def readonly? - true - end end diff --git a/app/models/account_warning.rb b/app/models/account_warning.rb index 9286577f51..a54387a562 100644 --- a/app/models/account_warning.rb +++ b/app/models/account_warning.rb @@ -17,7 +17,7 @@ # class AccountWarning < ApplicationRecord - enum action: { + enum :action, { none: 0, disable: 1_000, mark_statuses_as_sensitive: 1_250, @@ -25,7 +25,7 @@ class AccountWarning < ApplicationRecord sensitive: 2_000, silence: 3_000, suspend: 4_000, - }, _suffix: :action + }, suffix: :action normalizes :text, with: ->(text) { text.to_s }, apply_to_nil: true diff --git a/app/models/bulk_import.rb b/app/models/bulk_import.rb index 406fb2aba2..4cd228705a 100644 --- a/app/models/bulk_import.rb +++ b/app/models/bulk_import.rb @@ -24,7 +24,7 @@ class BulkImport < ApplicationRecord belongs_to :account has_many :rows, class_name: 'BulkImportRow', inverse_of: :bulk_import, dependent: :delete_all - enum type: { + enum :type, { following: 0, blocking: 1, muting: 2, @@ -33,7 +33,7 @@ class BulkImport < ApplicationRecord lists: 5, } - enum state: { + enum :state, { unconfirmed: 0, scheduled: 1, in_progress: 2, diff --git a/app/models/concerns/account/finder_concern.rb b/app/models/concerns/account/finder_concern.rb index 7faaddeb43..a7acff1cbb 100644 --- a/app/models/concerns/account/finder_concern.rb +++ b/app/models/concerns/account/finder_concern.rb @@ -13,11 +13,11 @@ module Account::FinderConcern end def representative - actor = Account.find(-99).tap(&:ensure_keys!) + actor = Account.find(Account::INSTANCE_ACTOR_ID).tap(&:ensure_keys!) actor.update!(username: 'mastodon.internal') if actor.username.include?(':') actor rescue ActiveRecord::RecordNotFound - Account.create!(id: -99, actor_type: 'Application', locked: true, username: 'mastodon.internal') + Account.create!(id: Account::INSTANCE_ACTOR_ID, actor_type: 'Application', locked: true, username: 'mastodon.internal') end def find_local(username) diff --git a/app/models/concerns/database_view_record.rb b/app/models/concerns/database_view_record.rb new file mode 100644 index 0000000000..8b6672e299 --- /dev/null +++ b/app/models/concerns/database_view_record.rb @@ -0,0 +1,25 @@ +# frozen_string_literal: true + +module DatabaseViewRecord + extend ActiveSupport::Concern + + class_methods do + def refresh + Scenic.database.refresh_materialized_view( + table_name, + concurrently: true, + cascade: false + ) + rescue ActiveRecord::StatementInvalid + Scenic.database.refresh_materialized_view( + table_name, + concurrently: false, + cascade: false + ) + end + end + + def readonly? + true + end +end diff --git a/app/models/concerns/ranked_trend.rb b/app/models/concerns/ranked_trend.rb new file mode 100644 index 0000000000..add36afb0c --- /dev/null +++ b/app/models/concerns/ranked_trend.rb @@ -0,0 +1,29 @@ +# frozen_string_literal: true + +module RankedTrend + extend ActiveSupport::Concern + + included do + scope :by_rank, -> { order(rank: :desc) } + scope :ranked_below, ->(value) { where(rank: ..value) } + end + + class_methods do + def recalculate_ordered_rank + connection + .exec_update(<<~SQL.squish) + UPDATE #{table_name} + SET rank = inner_ordered.calculated_rank + FROM ( + SELECT id, row_number() OVER w AS calculated_rank + FROM #{table_name} + WINDOW w AS ( + PARTITION BY language + ORDER BY score DESC + ) + ) inner_ordered + WHERE #{table_name}.id = inner_ordered.id + SQL + end + end +end diff --git a/app/models/concerns/user/ldap_authenticable.rb b/app/models/concerns/user/ldap_authenticable.rb index d84ff084b2..180df9d310 100644 --- a/app/models/concerns/user/ldap_authenticable.rb +++ b/app/models/concerns/user/ldap_authenticable.rb @@ -25,7 +25,15 @@ module User::LdapAuthenticable resource = joins(:account).find_by(accounts: { username: safe_username }) if resource.blank? - resource = new(email: attributes[Devise.ldap_mail.to_sym].first, agreement: true, account_attributes: { username: safe_username }, admin: false, external: true, confirmed_at: Time.now.utc) + resource = new( + email: attributes[Devise.ldap_mail.to_sym].first, + agreement: true, + account_attributes: { + username: safe_username, + }, + external: true, + confirmed_at: Time.now.utc + ) resource.save! end diff --git a/app/models/concerns/user/omniauthable.rb b/app/models/concerns/user/omniauthable.rb index 113bfda230..396a0598f8 100644 --- a/app/models/concerns/user/omniauthable.rb +++ b/app/models/concerns/user/omniauthable.rb @@ -19,17 +19,18 @@ module User::Omniauthable end class_methods do - def find_for_oauth(auth, signed_in_resource = nil) + def find_for_omniauth(auth, signed_in_resource = nil) # EOLE-SSO Patch auth.uid = (auth.uid[0][:uid] || auth.uid[0][:user]) if auth.uid.is_a? Hashie::Array - identity = Identity.find_for_oauth(auth) + identity = Identity.find_for_omniauth(auth) # If a signed_in_resource is provided it always overrides the existing user # to prevent the identity being locked with accidentally created accounts. # Note that this may leave zombie accounts (with no associated identity) which # can be cleaned up at a later date. user = signed_in_resource || identity.user - user ||= create_for_oauth(auth) + user ||= reattach_for_auth(auth) + user ||= create_for_auth(auth) if identity.user.nil? identity.user = user @@ -39,19 +40,35 @@ module User::Omniauthable user end - def create_for_oauth(auth) - # Check if the user exists with provided email. If no email was provided, + private + + def reattach_for_auth(auth) + # If allowed, check if a user exists with the provided email address, + # and return it if they does not have an associated identity with the + # current authentication provider. + + # This can be used to provide a choice of alternative auth providers + # or provide smooth gradual transition between multiple auth providers, + # but this is discouraged because any insecure provider will put *all* + # local users at risk, regardless of which provider they registered with. + + return unless ENV['ALLOW_UNSAFE_AUTH_PROVIDER_REATTACH'] == 'true' + + email, email_is_verified = email_from_auth(auth) + return unless email_is_verified + + user = User.find_by(email: email) + return if user.nil? || Identity.exists?(provider: auth.provider, user_id: user.id) + + user + end + + def create_for_auth(auth) + # Create a user for the given auth params. If no email was provided, # we assign a temporary email and ask the user to verify it on # the next step via Auth::SetupController.show - strategy = Devise.omniauth_configs[auth.provider.to_sym].strategy - assume_verified = strategy&.security&.assume_email_is_verified - email_is_verified = auth.info.verified || auth.info.verified_email || auth.info.email_verified || assume_verified - email = auth.info.verified_email || auth.info.email - - user = User.find_by(email: email) if email_is_verified - - return user unless user.nil? + email, email_is_verified = email_from_auth(auth) user = User.new(user_params_from_auth(email, auth)) @@ -66,7 +83,14 @@ module User::Omniauthable user end - private + def email_from_auth(auth) + strategy = Devise.omniauth_configs[auth.provider.to_sym].strategy + assume_verified = strategy&.security&.assume_email_is_verified + email_is_verified = auth.info.verified || auth.info.verified_email || auth.info.email_verified || assume_verified + email = auth.info.verified_email || auth.info.email + + [email, email_is_verified] + end def user_params_from_auth(email, auth) { diff --git a/app/models/concerns/user/pam_authenticable.rb b/app/models/concerns/user/pam_authenticable.rb index a682058cca..30dc7d8aef 100644 --- a/app/models/concerns/user/pam_authenticable.rb +++ b/app/models/concerns/user/pam_authenticable.rb @@ -32,7 +32,6 @@ module User::PamAuthenticable self.email = "#{account.username}@#{find_pam_suffix}" if email.nil? && find_pam_suffix self.confirmed_at = Time.now.utc - self.admin = false self.account = account self.external = true diff --git a/app/models/custom_filter.rb b/app/models/custom_filter.rb index c8120c2395..5e2d152e34 100644 --- a/app/models/custom_filter.rb +++ b/app/models/custom_filter.rb @@ -31,7 +31,7 @@ class CustomFilter < ApplicationRecord include Expireable include Redisable - enum action: { warn: 0, hide: 1 }, _suffix: :action + enum :action, { warn: 0, hide: 1 }, suffix: :action belongs_to :account has_many :keywords, class_name: 'CustomFilterKeyword', inverse_of: :custom_filter, dependent: :destroy diff --git a/app/models/domain_block.rb b/app/models/domain_block.rb index a05db099a8..e310918e9b 100644 --- a/app/models/domain_block.rb +++ b/app/models/domain_block.rb @@ -21,7 +21,7 @@ class DomainBlock < ApplicationRecord include DomainNormalizable include DomainMaterializable - enum severity: { silence: 0, suspend: 1, noop: 2 } + enum :severity, { silence: 0, suspend: 1, noop: 2 } validates :domain, presence: true, uniqueness: true, domain: true diff --git a/app/models/follow_recommendation.rb b/app/models/follow_recommendation.rb index 6b49a3ca66..7ac9e6dfb9 100644 --- a/app/models/follow_recommendation.rb +++ b/app/models/follow_recommendation.rb @@ -10,6 +10,8 @@ # class FollowRecommendation < ApplicationRecord + include DatabaseViewRecord + self.primary_key = :account_id self.table_name = :global_follow_recommendations @@ -17,14 +19,4 @@ class FollowRecommendation < ApplicationRecord belongs_to :account scope :localized, ->(locale) { joins(:account_summary).merge(AccountSummary.localized(locale)) } - - def self.refresh - Scenic.database.refresh_materialized_view(table_name, concurrently: true, cascade: false) - rescue ActiveRecord::StatementInvalid - Scenic.database.refresh_materialized_view(table_name, concurrently: false, cascade: false) - end - - def readonly? - true - end end diff --git a/app/models/identity.rb b/app/models/identity.rb index c95a68a6f6..77821b78fa 100644 --- a/app/models/identity.rb +++ b/app/models/identity.rb @@ -17,7 +17,7 @@ class Identity < ApplicationRecord validates :uid, presence: true, uniqueness: { scope: :provider } validates :provider, presence: true - def self.find_for_oauth(auth) + def self.find_for_omniauth(auth) find_or_create_by(uid: auth.uid, provider: auth.provider) end end diff --git a/app/models/import.rb b/app/models/import.rb index 7cd6cccf7c..4bdb392014 100644 --- a/app/models/import.rb +++ b/app/models/import.rb @@ -28,7 +28,7 @@ class Import < ApplicationRecord belongs_to :account - enum type: { following: 0, blocking: 1, muting: 2, domain_blocking: 3, bookmarks: 4 } + enum :type, { following: 0, blocking: 1, muting: 2, domain_blocking: 3, bookmarks: 4 } validates :type, presence: true diff --git a/app/models/instance.rb b/app/models/instance.rb index 0fd31c8097..3bd4b924ae 100644 --- a/app/models/instance.rb +++ b/app/models/instance.rb @@ -9,6 +9,8 @@ # class Instance < ApplicationRecord + include DatabaseViewRecord + self.primary_key = :domain attr_accessor :failure_days @@ -27,10 +29,6 @@ class Instance < ApplicationRecord scope :by_domain_and_subdomains, ->(domain) { where("reverse('.' || domain) LIKE reverse(?)", "%.#{domain}") } scope :with_domain_follows, ->(domains) { where(domain: domains).where(domain_account_follows) } - def self.refresh - Scenic.database.refresh_materialized_view(table_name, concurrently: true, cascade: false) - end - def self.domain_account_follows Arel.sql( <<~SQL.squish @@ -44,10 +42,6 @@ class Instance < ApplicationRecord ) end - def readonly? - true - end - def delivery_failure_tracker @delivery_failure_tracker ||= DeliveryFailureTracker.new(domain) end diff --git a/app/models/ip_block.rb b/app/models/ip_block.rb index 99783050b8..9def5b0cde 100644 --- a/app/models/ip_block.rb +++ b/app/models/ip_block.rb @@ -19,7 +19,7 @@ class IpBlock < ApplicationRecord include Expireable include Paginable - enum severity: { + enum :severity, { sign_up_requires_approval: 5000, sign_up_block: 5500, no_access: 9999, diff --git a/app/models/list.rb b/app/models/list.rb index fcef49e6e9..b45bd057bc 100644 --- a/app/models/list.rb +++ b/app/models/list.rb @@ -18,7 +18,7 @@ class List < ApplicationRecord PER_ACCOUNT_LIMIT = 50 - enum replies_policy: { list: 0, followed: 1, none: 2 }, _prefix: :show + enum :replies_policy, { list: 0, followed: 1, none: 2 }, prefix: :show belongs_to :account, optional: true diff --git a/app/models/login_activity.rb b/app/models/login_activity.rb index 2b7b37f8e4..654dd623ad 100644 --- a/app/models/login_activity.rb +++ b/app/models/login_activity.rb @@ -16,7 +16,7 @@ # class LoginActivity < ApplicationRecord - enum authentication_method: { password: 'password', otp: 'otp', webauthn: 'webauthn', sign_in_token: 'sign_in_token', omniauth: 'omniauth' } + enum :authentication_method, { password: 'password', otp: 'otp', webauthn: 'webauthn', sign_in_token: 'sign_in_token', omniauth: 'omniauth' } belongs_to :user diff --git a/app/models/media_attachment.rb b/app/models/media_attachment.rb index 5c2716ce59..7104738707 100644 --- a/app/models/media_attachment.rb +++ b/app/models/media_attachment.rb @@ -34,8 +34,8 @@ class MediaAttachment < ApplicationRecord include Attachmentable - enum type: { image: 0, gifv: 1, video: 2, unknown: 3, audio: 4 } - enum processing: { queued: 0, in_progress: 1, complete: 2, failed: 3 }, _prefix: true + enum :type, { image: 0, gifv: 1, video: 2, unknown: 3, audio: 4 } + enum :processing, { queued: 0, in_progress: 1, complete: 2, failed: 3 }, prefix: true MAX_DESCRIPTION_LENGTH = 1_500 diff --git a/app/models/preview_card.rb b/app/models/preview_card.rb index 8375927430..9fe02bd168 100644 --- a/app/models/preview_card.rb +++ b/app/models/preview_card.rb @@ -47,8 +47,8 @@ class PreviewCard < ApplicationRecord self.inheritance_column = false - enum type: { link: 0, photo: 1, video: 2, rich: 3 } - enum link_type: { unknown: 0, article: 1 } + enum :type, { link: 0, photo: 1, video: 2, rich: 3 } + enum :link_type, { unknown: 0, article: 1 } has_many :preview_cards_statuses, dependent: :delete_all, inverse_of: :preview_card has_many :statuses, through: :preview_cards_statuses diff --git a/app/models/preview_card_trend.rb b/app/models/preview_card_trend.rb index 018400dfa9..da2ea2f8c8 100644 --- a/app/models/preview_card_trend.rb +++ b/app/models/preview_card_trend.rb @@ -12,6 +12,8 @@ # language :string # class PreviewCardTrend < ApplicationRecord + include RankedTrend + belongs_to :preview_card scope :allowed, -> { where(allowed: true) } end diff --git a/app/models/relay.rb b/app/models/relay.rb index 8d697b891f..f652b4864b 100644 --- a/app/models/relay.rb +++ b/app/models/relay.rb @@ -15,7 +15,7 @@ class Relay < ApplicationRecord validates :inbox_url, presence: true, uniqueness: true, url: true, if: :will_save_change_to_inbox_url? - enum state: { idle: 0, pending: 1, accepted: 2, rejected: 3 } + enum :state, { idle: 0, pending: 1, accepted: 2, rejected: 3 } scope :enabled, -> { accepted } diff --git a/app/models/report.rb b/app/models/report.rb index 38da26d7b7..df7e3d2efc 100644 --- a/app/models/report.rb +++ b/app/models/report.rb @@ -47,15 +47,15 @@ class Report < ApplicationRecord delegate :local?, to: :account validates :comment, length: { maximum: 1_000 }, if: :local? - validates :rule_ids, absence: true, unless: :violation? + validates :rule_ids, absence: true, if: -> { (category_changed? || rule_ids_changed?) && !violation? } - validate :validate_rule_ids + validate :validate_rule_ids, if: -> { (category_changed? || rule_ids_changed?) && violation? } # entries here need to be kept in sync with the front-end: # - app/javascript/mastodon/features/notifications/components/report.jsx # - app/javascript/mastodon/features/report/category.jsx # - app/javascript/mastodon/components/admin/ReportReasonSelector.jsx - enum category: { + enum :category, { other: 0, spam: 1_000, legal: 1_500, @@ -162,8 +162,6 @@ class Report < ApplicationRecord end def validate_rule_ids - return unless violation? - errors.add(:rule_ids, I18n.t('reports.errors.invalid_rules')) unless rules.size == rule_ids&.size end diff --git a/app/models/software_update.rb b/app/models/software_update.rb index cb3a6df2ae..51a73c2731 100644 --- a/app/models/software_update.rb +++ b/app/models/software_update.rb @@ -16,7 +16,7 @@ class SoftwareUpdate < ApplicationRecord self.inheritance_column = nil - enum type: { patch: 0, minor: 1, major: 2 }, _suffix: :type + enum :type, { patch: 0, minor: 1, major: 2 }, suffix: :type def gem_version Gem::Version.new(version) diff --git a/app/models/status.rb b/app/models/status.rb index e3d41cceda..0ec69c8dd1 100644 --- a/app/models/status.rb +++ b/app/models/status.rb @@ -50,7 +50,7 @@ class Status < ApplicationRecord update_index('statuses', :proper) update_index('public_statuses', :proper) - enum visibility: { public: 0, unlisted: 1, private: 2, direct: 3, limited: 4 }, _suffix: :visibility + enum :visibility, { public: 0, unlisted: 1, private: 2, direct: 3, limited: 4 }, suffix: :visibility belongs_to :application, class_name: 'Doorkeeper::Application', optional: true diff --git a/app/models/status_trend.rb b/app/models/status_trend.rb index b0f1b6942d..807efec0ff 100644 --- a/app/models/status_trend.rb +++ b/app/models/status_trend.rb @@ -14,6 +14,8 @@ # class StatusTrend < ApplicationRecord + include RankedTrend + belongs_to :status belongs_to :account diff --git a/app/models/trends/links.rb b/app/models/trends/links.rb index b4eae9f702..76e50aa7a2 100644 --- a/app/models/trends/links.rb +++ b/app/models/trends/links.rb @@ -81,12 +81,12 @@ class Trends::Links < Trends::Base # Now that all trends have up-to-date scores, and all the ones below the threshold have # been removed, we can recalculate their positions - PreviewCardTrend.connection.exec_update('UPDATE preview_card_trends SET rank = t0.calculated_rank FROM (SELECT id, row_number() OVER w AS calculated_rank FROM preview_card_trends WINDOW w AS (PARTITION BY language ORDER BY score DESC)) t0 WHERE preview_card_trends.id = t0.id') + PreviewCardTrend.recalculate_ordered_rank end def request_review PreviewCardTrend.pluck('distinct language').flat_map do |language| - score_at_threshold = PreviewCardTrend.where(language: language, allowed: true).order(rank: :desc).where('rank <= ?', options[:review_threshold]).first&.score || 0 + score_at_threshold = PreviewCardTrend.where(language: language, allowed: true).by_rank.ranked_below(options[:review_threshold]).first&.score || 0 preview_card_trends = PreviewCardTrend.where(language: language, allowed: false).joins(:preview_card) preview_card_trends.filter_map do |trend| diff --git a/app/models/trends/statuses.rb b/app/models/trends/statuses.rb index c47fb8427b..9be6eb13a5 100644 --- a/app/models/trends/statuses.rb +++ b/app/models/trends/statuses.rb @@ -74,12 +74,12 @@ class Trends::Statuses < Trends::Base # Now that all trends have up-to-date scores, and all the ones below the threshold have # been removed, we can recalculate their positions - StatusTrend.connection.exec_update('UPDATE status_trends SET rank = t0.calculated_rank FROM (SELECT id, row_number() OVER w AS calculated_rank FROM status_trends WINDOW w AS (PARTITION BY language ORDER BY score DESC)) t0 WHERE status_trends.id = t0.id') + StatusTrend.recalculate_ordered_rank end def request_review StatusTrend.pluck('distinct language').flat_map do |language| - score_at_threshold = StatusTrend.where(language: language, allowed: true).order(rank: :desc).where('rank <= ?', options[:review_threshold]).first&.score || 0 + score_at_threshold = StatusTrend.where(language: language, allowed: true).by_rank.ranked_below(options[:review_threshold]).first&.score || 0 status_trends = StatusTrend.where(language: language, allowed: false).joins(:status).includes(status: :account) status_trends.filter_map do |trend| diff --git a/app/models/user.rb b/app/models/user.rb index 70c24336f3..14c2bb6e0c 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -51,6 +51,8 @@ class User < ApplicationRecord last_sign_in_ip skip_sign_in_token filtered_languages + admin + moderator ) include LanguagesHelper @@ -342,6 +344,16 @@ class User < ApplicationRecord Doorkeeper::AccessToken.by_resource_owner(self).in_batches do |batch| batch.update_all(revoked_at: Time.now.utc) Web::PushSubscription.where(access_token_id: batch).delete_all + + # Revoke each access token for the Streaming API, since `update_all`` + # doesn't trigger ActiveRecord Callbacks: + # TODO: #28793 Combine into a single topic + payload = Oj.dump(event: :kill) + redis.pipelined do |pipeline| + batch.ids.each do |id| + pipeline.publish("timeline:access_token:#{id}", payload) + end + end end end @@ -478,7 +490,7 @@ class User < ApplicationRecord BootstrapTimelineWorker.perform_async(account_id) ActivityTracker.increment('activity:accounts:local') ActivityTracker.record('activity:logins', id) - UserMailer.welcome(self).deliver_later + UserMailer.welcome(self).deliver_later(wait: 1.hour) TriggerWebhookWorker.perform_async('account.approved', 'Account', account_id) end diff --git a/app/models/user_ip.rb b/app/models/user_ip.rb index 38287c2a60..87b86a24d4 100644 --- a/app/models/user_ip.rb +++ b/app/models/user_ip.rb @@ -10,11 +10,9 @@ # class UserIp < ApplicationRecord + include DatabaseViewRecord + self.primary_key = :user_id belongs_to :user - - def readonly? - true - end end diff --git a/app/models/user_role.rb b/app/models/user_role.rb index 89354da542..23cc28b9b7 100644 --- a/app/models/user_role.rb +++ b/app/models/user_role.rb @@ -38,6 +38,9 @@ class UserRole < ApplicationRecord delete_user_data: (1 << 19), }.freeze + EVERYONE_ROLE_ID = -99 + NOBODY_POSITION = -1 + module Flags NONE = 0 ALL = FLAGS.values.reduce(&:|) @@ -94,18 +97,21 @@ class UserRole < ApplicationRecord before_validation :set_position - scope :assignable, -> { where.not(id: -99).order(position: :asc) } + scope :assignable, -> { where.not(id: EVERYONE_ROLE_ID).order(position: :asc) } + scope :highlighted, -> { where(highlighted: true) } + scope :with_color, -> { where.not(color: [nil, '']) } + scope :providing_styles, -> { highlighted.with_color } has_many :users, inverse_of: :role, foreign_key: 'role_id', dependent: :nullify def self.nobody - @nobody ||= UserRole.new(permissions: Flags::NONE, position: -1) + @nobody ||= UserRole.new(permissions: Flags::NONE, position: NOBODY_POSITION) end def self.everyone - UserRole.find(-99) + UserRole.find(EVERYONE_ROLE_ID) rescue ActiveRecord::RecordNotFound - UserRole.create!(id: -99, permissions: Flags::DEFAULT) + UserRole.create!(id: EVERYONE_ROLE_ID, permissions: Flags::DEFAULT) end def self.that_can(*any_of_privileges) @@ -113,7 +119,7 @@ class UserRole < ApplicationRecord end def everyone? - id == -99 + id == EVERYONE_ROLE_ID end def nobody? @@ -168,7 +174,7 @@ class UserRole < ApplicationRecord end def set_position - self.position = -1 if everyone? + self.position = NOBODY_POSITION if everyone? end def validate_own_role_edition diff --git a/app/serializers/rest/admin/domain_block_serializer.rb b/app/serializers/rest/admin/domain_block_serializer.rb index b955d008a6..e94a337cb8 100644 --- a/app/serializers/rest/admin/domain_block_serializer.rb +++ b/app/serializers/rest/admin/domain_block_serializer.rb @@ -1,11 +1,15 @@ # frozen_string_literal: true class REST::Admin::DomainBlockSerializer < ActiveModel::Serializer - attributes :id, :domain, :created_at, :severity, + attributes :id, :domain, :digest, :created_at, :severity, :reject_media, :reject_reports, :private_comment, :public_comment, :obfuscate def id object.id.to_s end + + def digest + object.domain_digest + end end diff --git a/app/serializers/rest/suggestion_serializer.rb b/app/serializers/rest/suggestion_serializer.rb index 3d697fd9f1..c60f343ba4 100644 --- a/app/serializers/rest/suggestion_serializer.rb +++ b/app/serializers/rest/suggestion_serializer.rb @@ -1,7 +1,20 @@ # frozen_string_literal: true class REST::SuggestionSerializer < ActiveModel::Serializer - attributes :source + attributes :source, :sources has_one :account, serializer: REST::AccountSerializer + + LEGACY_SOURCE_TYPE_MAP = { + featured: 'staff', + most_followed: 'global', + most_interactions: 'global', + # NOTE: Those are not completely accurate, but those are personalized interactions + similar_to_recently_followed: 'past_interactions', + friends_of_friends: 'past_interactions', + }.freeze + + def source + LEGACY_SOURCE_TYPE_MAP[object.sources.first] + end end diff --git a/app/services/activitypub/process_account_service.rb b/app/services/activitypub/process_account_service.rb index 9e787ace50..b667e97f4d 100644 --- a/app/services/activitypub/process_account_service.rb +++ b/app/services/activitypub/process_account_service.rb @@ -201,10 +201,15 @@ class ActivityPub::ProcessAccountService < BaseService value = first_of_value(@json[key]) return if value.nil? - return value['url'] if value.is_a?(Hash) - image = fetch_resource_without_id_validation(value) - image['url'] if image + if value.is_a?(String) + value = fetch_resource_without_id_validation(value) + return if value.nil? + end + + value = first_of_value(value['url']) if value.is_a?(Hash) && value['type'] == 'Image' + value = value['href'] if value.is_a?(Hash) + value if value.is_a?(String) end def public_key diff --git a/app/services/fetch_resource_service.rb b/app/services/fetch_resource_service.rb index 71c6cca790..84c36f6a10 100644 --- a/app/services/fetch_resource_service.rb +++ b/app/services/fetch_resource_service.rb @@ -44,7 +44,7 @@ class FetchResourceService < BaseService @response_code = response.code return nil if response.code != 200 - if ['application/activity+json', 'application/ld+json'].include?(response.mime_type) + if valid_activitypub_content_type?(response) body = response.body_with_limit json = body_to_json(body) diff --git a/app/services/tag_search_service.rb b/app/services/tag_search_service.rb index d5d1974275..929cfd884f 100644 --- a/app/services/tag_search_service.rb +++ b/app/services/tag_search_service.rb @@ -16,7 +16,32 @@ class TagSearchService < BaseService private def from_elasticsearch - query = { + definition = TagsIndex.query(elastic_search_query) + definition = definition.filter(elastic_search_filter) if @options[:exclude_unreviewed] + + ensure_exact_match(definition.limit(@limit).offset(@offset).objects.compact) + rescue Faraday::ConnectionFailed, Parslet::ParseFailed + nil + end + + # Since the ElasticSearch Query doesn't guarantee the exact match will be the + # first result or that it will even be returned, patch the results accordingly + def ensure_exact_match(results) + return results unless @offset.nil? || @offset.zero? + + normalized_query = Tag.normalize(@query) + exact_match = results.find { |tag| tag.name.downcase == normalized_query } + exact_match ||= Tag.find_normalized(normalized_query) + unless exact_match.nil? + results.delete(exact_match) + results = [exact_match] + results + end + + results + end + + def elastic_search_query + { function_score: { query: { multi_match: { @@ -50,8 +75,10 @@ class TagSearchService < BaseService boost_mode: 'multiply', }, } + end - filter = { + def elastic_search_filter + { bool: { should: [ { @@ -72,29 +99,6 @@ class TagSearchService < BaseService ], }, } - - definition = TagsIndex.query(query) - definition = definition.filter(filter) if @options[:exclude_unreviewed] - - ensure_exact_match(definition.limit(@limit).offset(@offset).objects.compact) - rescue Faraday::ConnectionFailed, Parslet::ParseFailed - nil - end - - # Since the ElasticSearch Query doesn't guarantee the exact match will be the - # first result or that it will even be returned, patch the results accordingly - def ensure_exact_match(results) - return results unless @offset.nil? || @offset.zero? - - normalized_query = Tag.normalize(@query) - exact_match = results.find { |tag| tag.name.downcase == normalized_query } - exact_match ||= Tag.find_normalized(normalized_query) - unless exact_match.nil? - results.delete(exact_match) - results = [exact_match] + results - end - - results end def from_database diff --git a/app/services/verify_link_service.rb b/app/services/verify_link_service.rb index 707aeb4e08..b317fc31a8 100644 --- a/app/services/verify_link_service.rb +++ b/app/services/verify_link_service.rb @@ -19,7 +19,7 @@ class VerifyLinkService < BaseService def perform_request! @body = Request.new(:get, @url).add_headers('Accept' => 'text/html').perform do |res| - res.code == 200 ? res.body_with_limit : nil + res.code == 200 ? res.truncated_body : nil end end diff --git a/app/views/admin/instances/_instance.html.haml b/app/views/admin/instances/_instance.html.haml index 65cf789ce3..522a2444bb 100644 --- a/app/views/admin/instances/_instance.html.haml +++ b/app/views/admin/instances/_instance.html.haml @@ -7,6 +7,10 @@ %small - if instance.domain_block = instance.domain_block.policies.map { |policy| t(policy, scope: 'admin.instances.content_policies.policies') }.join(' · ') + - if instance.domain_block.public_comment.present? + %span.comment.public-comment #{t('admin.domain_blocks.public_comment')}: #{instance.domain_block.public_comment} + - if instance.domain_block.private_comment.present? + %span.comment.private-comment #{t('admin.domain_blocks.private_comment')}: #{instance.domain_block.private_comment} - elsif instance.domain_allow = t('admin.accounts.whitelisted') - else diff --git a/app/views/admin/reports/_media_attachments.html.haml b/app/views/admin/reports/_media_attachments.html.haml index 3c52d69178..45cc4c5aa3 100644 --- a/app/views/admin/reports/_media_attachments.html.haml +++ b/app/views/admin/reports/_media_attachments.html.haml @@ -12,6 +12,6 @@ = react_component :media_gallery, height: 343, lang: status.language, - media: status.ordered_media_attachments.map { |a| ActiveModelSerializers::SerializableResource.new(a, serializer: REST::MediaAttachmentSerializer).as_json }, + media: serialized_media_attachments(status.ordered_media_attachments), sensitive: status.sensitive?, visible: false diff --git a/app/views/admin/settings/registrations/show.html.haml b/app/views/admin/settings/registrations/show.html.haml index 168f109757..4ece27bf4e 100644 --- a/app/views/admin/settings/registrations/show.html.haml +++ b/app/views/admin/settings/registrations/show.html.haml @@ -10,9 +10,11 @@ %p.lead= t('admin.settings.registrations.preamble') + .flash-message= t('admin.settings.registrations.moderation_recommandation') + .fields-row .fields-row__column.fields-row__column-6.fields-group - = f.input :registrations_mode, collection: %w(open approved none), wrapper: :with_label, include_blank: false, label_method: ->(mode) { I18n.t("admin.settings.registrations_mode.modes.#{mode}") } + = f.input :registrations_mode, collection: %w(open approved none), wrapper: :with_label, include_blank: false, label_method: ->(mode) { I18n.t("admin.settings.registrations_mode.modes.#{mode}") }, warning_hint: I18n.t('admin.settings.registrations_mode.warning_hint') .fields-row__column.fields-row__column-6.fields-group = f.input :require_invite_text, as: :boolean, wrapper: :with_label, disabled: !approved_registrations? diff --git a/app/views/admin_mailer/auto_close_registrations.text.erb b/app/views/admin_mailer/auto_close_registrations.text.erb new file mode 100644 index 0000000000..c0f8486929 --- /dev/null +++ b/app/views/admin_mailer/auto_close_registrations.text.erb @@ -0,0 +1,3 @@ +<%= raw t('admin_mailer.auto_close_registrations.body', instance: @instance) %> + +<%= raw t('application_mailer.view')%> <%= admin_settings_registrations_url %> diff --git a/app/views/application/mailer/_button.html.haml b/app/views/application/mailer/_button.html.haml index 61430732eb..0bf80b505a 100644 --- a/app/views/application/mailer/_button.html.haml +++ b/app/views/application/mailer/_button.html.haml @@ -1,4 +1,7 @@ %table.email-btn-table{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } %tr %td.email-btn-td - = link_to "#{text} ➜", url, class: 'email-btn-a email-btn-hover' + - if defined?(has_arrow) && !has_arrow + = link_to text, url, class: 'email-btn-a email-btn-hover' + - else + = link_to "#{text} ➜", url, class: 'email-btn-a email-btn-hover' diff --git a/app/views/application/mailer/_checklist.html.haml b/app/views/application/mailer/_checklist.html.haml index 83072bd36b..324fd7e6f8 100644 --- a/app/views/application/mailer/_checklist.html.haml +++ b/app/views/application/mailer/_checklist.html.haml @@ -1,7 +1,7 @@ %table.email-w-full.email-checklist-wrapper-table{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } %tr %td.email-checklist-wrapper-td - %table.email-w-full.email-checklist-table{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %table.email-w-full.email-checklist-table{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation', class: ('email-checklist-checked' if defined?(checked) && checked) } %tr %td.email-checklist-td %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } @@ -15,15 +15,25 @@ - else = image_tag frontend_asset_url('images/mailer-new/welcome/checkbox-off.png'), alt: '', width: 20, height: 20 %td.email-checklist-icons-step-td - - if defined?(step_image_url) - = image_tag step_image_url, alt: '', width: 40, height: 40 + - if defined?(key) + = image_tag frontend_asset_url("images/mailer-new/welcome-icons/#{key}-#{checked ? 'on' : 'off'}.png"), alt: '', width: 40, height: 40 %td.email-checklist-text-td .email-desktop-flex + /[if mso] +
%div - if defined?(title) %h3= title - if defined?(text) %p= text + /[if mso] + %div - - if defined?(button_text) && defined?(button_url) && defined?(checked) && !checked - = render 'application/mailer/button', text: button_text, url: button_url + - if defined?(show_apps_buttons) && show_apps_buttons + .email-welcome-apps-btns + = link_to image_tag(frontend_asset_url('images/mailer-new/store-icons/btn-app-store.png'), alt: t('user_mailer.welcome.apps_ios_action'), width: 120, height: 40), 'https://apps.apple.com/app/mastodon-for-iphone-and-ipad/id1571998974' + = link_to image_tag(frontend_asset_url('images/mailer-new/store-icons/btn-google-play.png'), alt: t('user_mailer.welcome.apps_android_action'), width: 120, height: 40), 'https://play.google.com/store/apps/details?id=org.joinmastodon.android' + - elsif defined?(button_text) && defined?(button_url) && defined?(checked) && !checked + = render 'application/mailer/button', text: button_text, url: button_url, has_arrow: false + /[if mso] +
diff --git a/app/views/application/mailer/_feature.html.haml b/app/views/application/mailer/_feature.html.haml new file mode 100644 index 0000000000..d051338a9c --- /dev/null +++ b/app/views/application/mailer/_feature.html.haml @@ -0,0 +1,32 @@ +%table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-feature-wrapper-td + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-feature-td + .email-desktop-flex{ class: ('email-dir-rtl' if defined?(text_first_on_desktop) && !text_first_on_desktop) } + /[if mso] +
+ .email-desktop-column + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-column-td + - if defined?(feature_title) + %h2.email-h2= feature_title + - if defined?(feature_text) + %p.email-p= feature_text + - if defined?(feature_btn_url) + = link_to '', href: feature_btn_url, class: 'email-link-with-arrow' do + #{t('user_mailer.welcome.feature_action')}  + %span= '❯' + /[if mso] + + .email-desktop-column + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-column-td + - if defined?(key) + %p{ class: ('email-desktop-text-right' if defined?(text_first_on_desktop) && text_first_on_desktop) } + = image_tag frontend_asset_url("images/mailer-new/welcome/#{key}.png"), alt: '', width: 240, height: 230 + /[if mso] +
diff --git a/app/views/application/mailer/_follow.html.haml b/app/views/application/mailer/_follow.html.haml new file mode 100644 index 0000000000..382151a234 --- /dev/null +++ b/app/views/application/mailer/_follow.html.haml @@ -0,0 +1,15 @@ +%table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-mini-wrapper-td + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-mini-td + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-mini-follow-img-td + = image_tag full_asset_url(follow.account.avatar.url), alt: '', width: 40, height: 40 + %td.email-mini-follow-text-td + %h3= follow.account.display_name.presence || follow.account.username + %p @#{follow.account.pretty_acct} + %td.email-mini-follow-btn-td + = render 'application/mailer/button', text: t('user_mailer.welcome.follow_action'), url: web_url("@#{follow.account.acct}"), has_arrow: false diff --git a/app/views/application/mailer/_hashtag.html.haml b/app/views/application/mailer/_hashtag.html.haml new file mode 100644 index 0000000000..524fd7e274 --- /dev/null +++ b/app/views/application/mailer/_hashtag.html.haml @@ -0,0 +1,20 @@ +- accounts = hashtag.statuses.with_public_visibility.joins(:account).merge(Account.without_suspended.without_silenced).includes(:account).limit(3).map(&:account) + +%table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-mini-wrapper-td + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-mini-td + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-mini-hashtag-td{ height: 40 } + %h3 ##{hashtag.display_name} + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-mini-hashtag-img-td + - accounts.each do |account| + %span.email-mini-hashtag-img-span + = image_tag full_asset_url(account.avatar.url), alt: '', width: 16, height: 16 + %td + %p= t('user_mailer.welcome.hashtags_recent_count', people: number_with_delimiter(hashtag.history.aggregate(2.days.ago.to_date..Time.zone.today).accounts), days: 2) diff --git a/app/views/relationships/_account.html.haml b/app/views/relationships/_account.html.haml index 43a3d64bc8..23afcf7495 100644 --- a/app/views/relationships/_account.html.haml +++ b/app/views/relationships/_account.html.haml @@ -16,7 +16,7 @@ %small= t('accounts.followers', count: account.followers_count).downcase %td.accounts-table__count - if account.last_status_at.present? - %time.time-ago{ datetime: account.last_status_at.to_date.iso8601, title: l(account.last_status_at.to_date) }= l account.last_status_at + %time.time-ago{ datetime: account.last_status_at.to_date.iso8601, title: l(account.last_status_at.to_date) }= l account.last_status_at.to_date - else \- %small= t('accounts.last_active') diff --git a/app/views/user_mailer/welcome.html.haml b/app/views/user_mailer/welcome.html.haml index b77d40fb05..e7f9c47e3b 100644 --- a/app/views/user_mailer/welcome.html.haml +++ b/app/views/user_mailer/welcome.html.haml @@ -1,25 +1,76 @@ +- instance_presenter = InstancePresenter.new + = content_for :heading do - = render 'application/mailer/heading', heading_title: t('user_mailer.welcome.title', name: @resource.account.username), heading_subtitle: t('user_mailer.welcome.explanation') + .email-desktop-flex + .email-header-left + = render 'application/mailer/heading', heading_title: t('user_mailer.welcome.title', name: @resource.account.username), heading_subtitle: t('user_mailer.welcome.explanation') + .email-header-right + .email-header-card + %table.email-header-card-table{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-header-card-banner-td{ height: 140, background: full_asset_url(instance_presenter.thumbnail&.file&.url(:'@1x') || frontend_asset_path('images/preview.png')) } + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-header-card-body-td + %p.email-header-card-instance= @instance + - if instance_presenter.description.present? + %p.email-header-card-description= instance_presenter.description + = render 'application/mailer/button', text: t('user_mailer.welcome.sign_in_action'), url: new_user_session_url, has_arrow: false + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } %tr - %td.email-body-padding-td - %table.email-inner-card-table{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } - %tr - %td.email-inner-card-td-without-padding - %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } - %tr - %td.email-prose.email-padding-24 - %p - %b= t 'user_mailer.welcome.full_handle' - = render 'application/mailer/frame', text: "#{@resource.account.username}@#{@instance}" - %p= t 'user_mailer.welcome.full_handle_hint', instance: @instance - %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } - %tr - %td.email-border-top.email-prose.email-padding-24 - %p= t 'user_mailer.welcome.edit_profile_step' - = render 'application/mailer/button', text: t('user_mailer.welcome.edit_profile_action'), url: settings_profile_url - %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } - %tr - %td.email-border-top.email-prose.email-padding-24 - %p= t 'user_mailer.welcome.edit_profile_step' - = render 'application/mailer/button', text: t('user_mailer.welcome.final_action'), url: web_url + %td.email-body-huge-padding-td + %h2.email-h2= t('user_mailer.welcome.checklist_title') + %p.email-h-sub= t('user_mailer.welcome.checklist_subtitle') + = render 'application/mailer/checklist', key: 'edit_profile_step', title: t('user_mailer.welcome.edit_profile_title'), text: t('user_mailer.welcome.edit_profile_step'), checked: @has_account_fields, button_text: t('user_mailer.welcome.edit_profile_action'), button_url: web_url('start/profile') + = render 'application/mailer/checklist', key: 'follow_step', title: t('user_mailer.welcome.follow_title'), text: t('user_mailer.welcome.follow_step'), checked: @has_active_relationships, button_text: t('user_mailer.welcome.follow_action'), button_url: web_url('start/follows') + = render 'application/mailer/checklist', key: 'post_step', title: t('user_mailer.welcome.post_title'), text: t('user_mailer.welcome.post_step'), checked: @has_statuses, button_text: t('user_mailer.welcome.post_action'), button_url: web_url + = render 'application/mailer/checklist', key: 'share_step', title: t('user_mailer.welcome.share_title'), text: t('user_mailer.welcome.share_step'), checked: false, button_text: t('user_mailer.welcome.share_action'), button_url: web_url('start/share') + = render 'application/mailer/checklist', key: 'apps_step', title: t('user_mailer.welcome.apps_title'), text: t('user_mailer.welcome.apps_step'), checked: false, show_apps_buttons: true +%table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-body-columns-td + .email-desktop-flex + /[if mso] +
+ .email-desktop-column + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-column-td + %h2.email-h2= t('user_mailer.welcome.follows_title') + %p.email-h-sub= t('user_mailer.welcome.follows_subtitle') + = render partial: 'application/mailer/follow', collection: @suggestions + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-column-action-td + = link_to '', href: web_url('explore/suggestions'), class: 'email-link-with-arrow' do + = t('user_mailer.welcome.follows_view_more') + %span= '❯' + /[if mso] + + .email-desktop-column + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-column-td + %h2.email-h2= t('user_mailer.welcome.hashtags_title') + %p.email-h-sub= t('user_mailer.welcome.hashtags_subtitle') + = render partial: 'application/mailer/hashtag', collection: @tags + %table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-column-action-td + = link_to '', href: web_url('explore/tags'), class: 'email-link-with-arrow' do + = t('user_mailer.welcome.hashtags_view_more') + %span= '❯' + /[if mso] +
+.email-extra-wave +%table.email-w-full{ cellspacing: 0, cellpadding: 0, border: 0, role: 'presentation' } + %tr + %td.email-extra-td + = render 'application/mailer/feature', key: 'feature_control', feature_title: t('user_mailer.welcome.feature_control_title'), feature_text: t('user_mailer.welcome.feature_control'), text_first_on_desktop: true + = render 'application/mailer/feature', key: 'feature_audience', feature_title: t('user_mailer.welcome.feature_audience_title'), feature_text: t('user_mailer.welcome.feature_audience'), text_first_on_desktop: false + = render 'application/mailer/feature', key: 'feature_moderation', feature_title: t('user_mailer.welcome.feature_moderation_title'), feature_text: t('user_mailer.welcome.feature_moderation'), text_first_on_desktop: true + = render 'application/mailer/feature', key: 'feature_creativity', feature_title: t('user_mailer.welcome.feature_creativity_title'), feature_text: t('user_mailer.welcome.feature_creativity'), text_first_on_desktop: false diff --git a/app/views/user_mailer/welcome.text.erb b/app/views/user_mailer/welcome.text.erb index d78cdb938a..150944605f 100644 --- a/app/views/user_mailer/welcome.text.erb +++ b/app/views/user_mailer/welcome.text.erb @@ -1,16 +1,78 @@ <%= t 'user_mailer.welcome.title', name: @resource.account.username %> <%= t 'user_mailer.welcome.explanation' %> -=== - -<%= t 'user_mailer.welcome.full_handle' %> (<%= "@#{@resource.account.local_username_and_domain}" %>) -<%= t 'user_mailer.welcome.full_handle_hint', instance: @instance %> - --- -<%= t 'user_mailer.welcome.edit_profile_step' %> +<%= t('user_mailer.welcome.sign_in_action') %> +=== +<%= new_user_session_url %> -=> <%= settings_profile_url %> +--- -<%= t 'user_mailer.welcome.final_step' %> +<%= t('user_mailer.welcome.checklist_title') %> +=== +<%= t('user_mailer.welcome.checklist_subtitle') %> -=> <%= web_url %> +1. <%= t('user_mailer.welcome.edit_profile_title') %> + <%= t('user_mailer.welcome.edit_profile_step') %> + * <%= web_url('start/profile') %> + +2. <%= t('user_mailer.welcome.follow_title') %> + <%= t('user_mailer.welcome.follow_step') %> + * <%= web_url('start/follows') %> + +3. <%= t('user_mailer.welcome.post_title') %> + <%= t('user_mailer.welcome.post_step') %> + * <%= web_url %> + +4. <%= t('user_mailer.welcome.share_title') %> + <%= t('user_mailer.welcome.share_step') %> + * <%= web_url('start/share') %> + +5. <%= t('user_mailer.welcome.apps_title') %> + <%= t('user_mailer.welcome.apps_step') %> + * iOS: https://apps.apple.com/app/mastodon-for-iphone-and-ipad/id1571998974 + * Android: https://play.google.com/store/apps/details?id=org.joinmastodon.android + +--- + +<%= t('user_mailer.welcome.follows_title') %> +=== +<%= t('user_mailer.welcome.follows_subtitle') %> + +<%- @suggestions.each do |suggestion| %> +* <%= suggestion.account.display_name.presence || suggestion.account.username %> · @<%= suggestion.account.pretty_acct %> + <%= web_url("@#{suggestion.account.acct}") %> +<%- end %> + +<%= web_url('explore/suggestions') %> + +--- + +<%= t('user_mailer.welcome.hashtags_title') %> +=== +<%= t('user_mailer.welcome.hashtags_subtitle') %> + +<%- @tags.each do |tag| %> +* #<%= tag.display_name %> · <%= t('user_mailer.welcome.hashtags_recent_count', people: number_with_delimiter(tag.history.aggregate(2.days.ago.to_date..Time.zone.today).accounts), days: 2) %> + <%= tag_url(tag) %> +<%- end %> + +<%= web_url('explore/tags') %> + +--- + +<%= t('user_mailer.welcome.feature_control_title') %> +=== +<%= word_wrap t('user_mailer.welcome.feature_control') %> + +<%= t('user_mailer.welcome.feature_audience_title') %> +=== +<%= word_wrap t('user_mailer.welcome.feature_audience') %> + +<%= t('user_mailer.welcome.feature_moderation_title') %> +=== +<%= word_wrap t('user_mailer.welcome.feature_moderation') %> + +<%= t('user_mailer.welcome.feature_creativity_title') %> +=== +<%= word_wrap t('user_mailer.welcome.feature_creativity') %> diff --git a/app/workers/scheduler/auto_close_registrations_scheduler.rb b/app/workers/scheduler/auto_close_registrations_scheduler.rb new file mode 100644 index 0000000000..6874502915 --- /dev/null +++ b/app/workers/scheduler/auto_close_registrations_scheduler.rb @@ -0,0 +1,33 @@ +# frozen_string_literal: true + +class Scheduler::AutoCloseRegistrationsScheduler + include Sidekiq::Worker + include Redisable + + sidekiq_options retry: 0 + + # Automatically switch away from open registrations if no + # moderator had any activity in that period of time + OPEN_REGISTRATIONS_MODERATOR_THRESHOLD = 1.week + UserTrackingConcern::SIGN_IN_UPDATE_FREQUENCY + + def perform + return if Rails.configuration.x.email_domains_whitelist.present? || ENV['DISABLE_AUTOMATIC_SWITCHING_TO_APPROVED_REGISTRATIONS'] == 'true' + return unless Setting.registrations_mode == 'open' + + switch_to_approval_mode! unless active_moderators? + end + + private + + def active_moderators? + User.those_who_can(:manage_reports).exists?(current_sign_in_at: OPEN_REGISTRATIONS_MODERATOR_THRESHOLD.ago...) + end + + def switch_to_approval_mode! + Setting.registrations_mode = 'approved' + + User.those_who_can(:manage_settings).includes(:account).find_each do |user| + AdminMailer.with(recipient: user.account).auto_close_registrations.deliver_later + end + end +end diff --git a/bin/dev b/bin/dev new file mode 100755 index 0000000000..9b1d3ac6fc --- /dev/null +++ b/bin/dev @@ -0,0 +1,20 @@ +#!/usr/bin/env sh + +# Default to port 3000 if not specified +export PORT="${PORT:-3000}" + +# Get around our boot.rb ENV check +export RAILS_ENV="${RAILS_ENV:-development}" + +if command -v overmind &> /dev/null +then + overmind start -f Procfile.dev "$@" + exit $? +fi + +if gem list --no-installed --exact --silent foreman; then + echo "Installing foreman..." + gem install foreman +fi + +foreman start -f Procfile.dev "$@" diff --git a/config/boot.rb b/config/boot.rb index 717de85f20..70ffe22c04 100644 --- a/config/boot.rb +++ b/config/boot.rb @@ -1,8 +1,15 @@ # frozen_string_literal: true unless ENV.key?('RAILS_ENV') - warn 'ERROR: Missing RAILS_ENV environment variable, please set it to "production", "development", or "test".' - exit 1 + abort <<~ERROR + The RAILS_ENV environment variable is not set. + + Please set it correctly depending on context: + + - Use "production" for a live deployment of the application + - Use "development" for local feature work + - Use "test" when running the automated spec suite + ERROR end ENV['BUNDLE_GEMFILE'] ||= File.expand_path('../Gemfile', __dir__) diff --git a/config/initializers/chewy.rb b/config/initializers/chewy.rb index 076f383324..0d9fc75e99 100644 --- a/config/initializers/chewy.rb +++ b/config/initializers/chewy.rb @@ -7,6 +7,9 @@ user = ENV.fetch('ES_USER', nil).presence password = ENV.fetch('ES_PASS', nil).presence fallback_prefix = ENV.fetch('REDIS_NAMESPACE', nil).presence prefix = ENV.fetch('ES_PREFIX') { fallback_prefix } +ca_file = ENV.fetch('ES_CA_FILE', nil).presence + +transport_options = { ssl: { ca_file: ca_file } } if ca_file.present? Chewy.settings = { host: "#{host}:#{port}", @@ -18,6 +21,7 @@ Chewy.settings = { index: { number_of_replicas: ['single_node_cluster', nil].include?(ENV['ES_PRESET'].presence) ? 0 : 1, }, + transport_options: transport_options, } # We use our own async strategy even outside the request-response diff --git a/config/initializers/doorkeeper.rb b/config/initializers/doorkeeper.rb index fe3871d2e7..f9d47a205c 100644 --- a/config/initializers/doorkeeper.rb +++ b/config/initializers/doorkeeper.rb @@ -21,9 +21,14 @@ Doorkeeper.configure do user unless user&.otp_required_for_login? end - # If you want to restrict access to the web interface for adding oauth authorized applications, you need to declare the block below. + # Doorkeeper provides some administrative interfaces for managing OAuth + # Applications, allowing creation, edit, and deletion of applications from the + # server. At present, these administrative routes are not integrated into + # Mastodon, and as such, we've disabled them by always return a 403 forbidden + # response for them. This does not affect the ability for users to manage + # their own OAuth Applications. admin_authenticator do - current_user&.admin? || redirect_to(new_user_session_url) + head 403 end # Authorization Code expiration time (default 10 minutes). diff --git a/config/initializers/i18n.rb b/config/initializers/i18n.rb index 1c1cea1b94..8643060fa6 100644 --- a/config/initializers/i18n.rb +++ b/config/initializers/i18n.rb @@ -42,6 +42,7 @@ Rails.application.configure do :hu, :hy, :id, + :ie, :ig, :io, :is, diff --git a/config/initializers/sidekiq.rb b/config/initializers/sidekiq.rb index 9a2743ed5b..53b02edc40 100644 --- a/config/initializers/sidekiq.rb +++ b/config/initializers/sidekiq.rb @@ -26,6 +26,7 @@ Sidekiq.configure_server do |config| 'queue' => 'scheduler', }, } + SidekiqScheduler::Scheduler.instance.reload_schedule! end end diff --git a/config/locales/activerecord.el.yml b/config/locales/activerecord.el.yml index 4eae3b6a00..01e9a75f98 100644 --- a/config/locales/activerecord.el.yml +++ b/config/locales/activerecord.el.yml @@ -53,3 +53,7 @@ el: position: elevated: δεν μπορεί να είναι μεγαλύτερο από τον τρέχοντα ρόλο σας own_role: δεν μπορεί να αλλάξει με τον τρέχοντα ρόλο σας + webhook: + attributes: + events: + invalid_permissions: δεν μπορείτε να συμπεριλάβετε συμβάντα για τα οποία δεν έχετε τα δικαιώματα diff --git a/config/locales/activerecord.es.yml b/config/locales/activerecord.es.yml index 186104c702..569b783103 100644 --- a/config/locales/activerecord.es.yml +++ b/config/locales/activerecord.es.yml @@ -56,4 +56,4 @@ es: webhook: attributes: events: - invalid_permissions: no se pueden incluir eventos para los que no tienes derechos + invalid_permissions: no puede incluir eventos para los que no tienes permisos diff --git a/config/locales/activerecord.eu.yml b/config/locales/activerecord.eu.yml index 818dab939c..a67c1403c5 100644 --- a/config/locales/activerecord.eu.yml +++ b/config/locales/activerecord.eu.yml @@ -19,7 +19,7 @@ eu: account: attributes: username: - invalid: letrak, zenbakiak eta gidoi baxuak besterik ez + invalid: letrak, zenbakiak eta azpimarrak soilik izan behar ditu reserved: erreserbatuta dago admin/webhook: attributes: diff --git a/config/locales/activerecord.fi.yml b/config/locales/activerecord.fi.yml index 93f338b5d5..feb4fbf4c5 100644 --- a/config/locales/activerecord.fi.yml +++ b/config/locales/activerecord.fi.yml @@ -4,7 +4,7 @@ fi: attributes: poll: expires_at: Määräaika - options: Valinnat + options: Vaihtoehdot user: agreement: Palvelusopimus email: Sähköpostiosoite @@ -36,7 +36,7 @@ fi: status: attributes: reblog: - taken: tila on jo olemassa + taken: tästä julkaisusta on jo tehty user: attributes: email: @@ -47,7 +47,7 @@ fi: user_role: attributes: permissions_as_keys: - dangerous: sisältää oikeudet, jotka eivät ole turvallisia perusroolille + dangerous: sisältää oikeuksia, jotka eivät ole turvallisia perusroolille elevated: ei voi sisältää oikeuksia, joita nykyisellä roolillasi ei ole own_role: ei voi muuttaa nykyisellä roolillasi position: diff --git a/config/locales/activerecord.lad.yml b/config/locales/activerecord.lad.yml index 71a63d1cd1..31e0223cca 100644 --- a/config/locales/activerecord.lad.yml +++ b/config/locales/activerecord.lad.yml @@ -11,7 +11,7 @@ lad: locale: Lingua password: Kod user/account: - username: Nombre de uzador + username: Nombre de utilizador user/invite_request: text: Razon errors: diff --git a/config/locales/activerecord.tok.yml b/config/locales/activerecord.tok.yml new file mode 100644 index 0000000000..9862a7f953 --- /dev/null +++ b/config/locales/activerecord.tok.yml @@ -0,0 +1,14 @@ +--- +tok: + activerecord: + attributes: + poll: + expires_at: pini tenpo + user/account: + username: nimi jan + errors: + models: + account: + attributes: + username: + reserved: jan ante li jo e nimi ni diff --git a/config/locales/af.yml b/config/locales/af.yml index 74d3495914..62c52fa493 100644 --- a/config/locales/af.yml +++ b/config/locales/af.yml @@ -2,7 +2,7 @@ af: about: contact_missing: Nie ingestel nie - contact_unavailable: NVT + contact_unavailable: n.v.t hosted_on: Mastodon gehuisves op %{domain} title: Aangaande accounts: @@ -23,13 +23,18 @@ af: account_moderation_notes: create: Los nota accounts: + email: E-pos + ip: IP location: local: Plaaslik moderation: silenced: Beperk + reset_password: Herstel wagwoord search: Soek silenced: Beperk action_logs: + action_types: + reset_password_user: Herstel Wagwoord actions: silence_account_html: "%{name} het %{target} se rekening beperk" deleted_account: geskrapte rekening @@ -97,6 +102,7 @@ af: auth: apply_for_account: Doen aansoek om ’n rekening logout: Teken uit + reset_password: Herstel wagwoord datetime: distance_in_words: about_x_hours: "%{count} uur" @@ -121,6 +127,8 @@ af: invalid: Hierdie uitnodiging is nie geldig nie title: Nooi ander login_activities: + authentication_methods: + password: wagwoord description_html: Indien jy onbekende aktiwiteite gewaar, oorweeg dit om jou wagwoord te verander en tweefaktorverifikasie te aktiveer. navigation: toggle_menu: Wisselkieslys diff --git a/config/locales/an.yml b/config/locales/an.yml index 17077041da..edfdb44b35 100644 --- a/config/locales/an.yml +++ b/config/locales/an.yml @@ -1600,10 +1600,6 @@ an: edit_profile_action: Configurar lo perfil edit_profile_step: Puetz personalizar lo tuyo perfil puyando una foto de perfil, cambiando lo tuyo nombre d'usuario y muito mas. Puetz optar per revisar a los nuevos seguidores antes que puedan seguir-te. explanation: Aquí i hai qualques consellos pa empecipiar - final_action: Empecipiar a publicar - final_step: 'Empecipia a publicar! Mesmo sin seguidores, las tuyas publicacions publicas pueden estar vistas per atros, per eixemplo en a linia de tiempo local u en etiquetas. Tal vegada quieras presentar-te con a etiqueta de #presentacions.' - full_handle: Lo suyo sobrenombre completo - full_handle_hint: Esto ye lo que le dirías a los tuyos amigos pa que ells puedan ninviar-te mensaches u seguir-te dende unatra instancia. subject: Bienveniu a Mastodon title: Te damos la bienvenida a bordo, %{name}! users: diff --git a/config/locales/ar.yml b/config/locales/ar.yml index e6d653c674..2b2052172e 100644 --- a/config/locales/ar.yml +++ b/config/locales/ar.yml @@ -42,7 +42,7 @@ ar: add_email_domain_block: حظر نطاق البريد الإلكتروني هذا approve: صادِق عليه approved_msg: تمت الموافقة على تسجيل %{username} - are_you_sure: متأكد ؟ + are_you_sure: هل أنت متأكد؟ avatar: الصورة الرمزية by_domain: النطاق change_email: @@ -55,17 +55,17 @@ ar: change_role: changed_msg: تم تغيير بنجاح! label: تغيير الدور - no_role: لا رتب - title: تم تغيير الرتب ل %{username} + no_role: بلا دور + title: تغيير دور %{username} confirm: تأكيد confirmed: مؤكَّد confirming: التأكد custom: مخصص delete: حذف البيانات - deleted: تمت إزالته - demote: إنزال الرُتبة الوظيفية + deleted: محذوف + demote: إنزال الدور الوظيفي destroyed_msg: بيانات حساب %{username} الآن في قائمة الانتظار ليتم حذفها قريباً - disable: تعطيل + disable: تجميد disable_sign_in_token_auth: تعطيل مصادقة رمز البريد الإلكتروني disable_two_factor_authentication: تعطيل المصادقة بخطوتين disabled: معطَّل @@ -91,7 +91,7 @@ ar: local: المحلي remote: عن بُعد title: الموقع - login_status: وضع الدخول + login_status: حالة الولوج media_attachments: الوسائط المرفقة memorialize: تحويل الحساب إلى صفحة ذكرى memorialized: تذكاري @@ -203,10 +203,10 @@ ar: destroy_canonical_email_block: حذف نطاق للبريد destroy_custom_emoji: احذف الإيموجي المخصص destroy_domain_allow: حذف النطاق المسموح به - destroy_domain_block: حذف كتلة النطاق - destroy_email_domain_block: حذف نطاق بريد إلكتروني + destroy_domain_block: إزالة حظر النطاق + destroy_email_domain_block: حذف حظر نطاق بريد إلكتروني destroy_instance: تنظيف النطاق - destroy_ip_block: حذف قانون IP + destroy_ip_block: حذف قاعدة IP destroy_status: حذف المنشور destroy_unavailable_domain: حذف نطاق غير متوفر destroy_user_role: حذف الدور @@ -225,7 +225,7 @@ ar: reopen_report: إعادة فتح التقرير resend_user: إعادة إرسال بريد التأكيد reset_password_user: إعادة تعيين كلمة المرور - resolve_report: حل الشكوى + resolve_report: معالجة الشكوى sensitive_account: وضع علامة على الوسائط في حسابك على أنها حساسة silence_account: كتم الحساب suspend_account: تعليق الحساب @@ -236,14 +236,14 @@ ar: unsuspend_account: إلغاء تعليق الحساب update_announcement: تحديث الإعلان update_custom_emoji: تحديث الإيموجي المخصص - update_domain_block: تحديث كتلة النطاق + update_domain_block: تحديث حظر النطاق update_ip_block: تحديث قاعدة IP update_status: تحديث المنشور update_user_role: تحديث الدور actions: - approve_appeal_html: وافق %{name} على استئناف قرار الاعتدال من %{target} - approve_user_html: قبل %{name} تسجيل %{target} - assigned_to_self_report_html: قام %{name} بتعيين التقرير %{target} لأنفسهم + approve_appeal_html: وافق %{name} على استئناف الطعن بشأن قرار الإشراف من %{target} + approve_user_html: وافق %{name} على تسجيل %{target} + assigned_to_self_report_html: قام %{name} بإسناد التقرير %{target} لأنفسهم change_email_user_html: غيّر %{name} عنوان البريد الإلكتروني للمستخدم %{target} change_role_user_html: قام %{name} بإنشاء قاعدة للـIP %{target} confirm_user_html: "%{name} قد قام بتأكيد عنوان البريد الإلكتروني لـ %{target}" @@ -284,7 +284,7 @@ ar: reopen_report_html: قام %{name} بإعادة فتح الشكوى %{target} resend_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} silence_account_html: قام %{name} بكتم حساب %{target} suspend_account_html: قام %{name} بتعليق حساب %{target} @@ -299,7 +299,7 @@ ar: update_ip_block_html: قام %{name} بإنشاء قاعدة للـIP %{target} update_status_html: قام %{name} بتحديث منشور من %{target} update_user_role_html: "%{name} تغيير رتبه %{target}" - deleted_account: احذف الحساب + deleted_account: حذف الحساب empty: لم يتم العثور على سجلات. filter_by_action: تصفية بحسب الإجراء filter_by_user: تصفية حسب المستخدم @@ -309,14 +309,14 @@ ar: edit: title: تعديل الإعلان empty: لم يتم العثور على أية إعلانات. - live: على المباشر + live: حي new: create: إنشاء إعلان title: إعلان جديد publish: نشر published_msg: تم نشر الإعلان بنجاح! scheduled_for: بُرمِج على %{time} - scheduled_msg: تمت جدولة نشر الإعلان! + scheduled_msg: تمت برمجة نشر الإعلان! title: الإعلانات unpublish: إلغاء النشر unpublished_msg: تم إلغاء نشر الإعلان بنجاح! @@ -390,8 +390,8 @@ ar: other: "%{count} مستخدماً قيدَ الانتظار" two: "%{count} مستخدمان قيدَ الانتظار" zero: "%{count} مستخدمٍ قيدَ الانتظار" - resolved_reports: تقارير تم حلها - software: البرنامج + resolved_reports: تقارير تم معالجتها + software: البرمجيات sources: مصادر التسجيل space: المساحة المستخدَمة title: لوح المراقبة @@ -453,6 +453,7 @@ ar: view: عرض كتلة النطاق email_domain_blocks: add_new: إضافة + allow_registrations_with_approval: السماح بالتسجيلات وإنشاء الحسابات بعد الموافقة attempts_over_week: few: "%{count} محاولات تسجيل في آخر أسبوع" many: "%{count} محاولات تسجيل في آخر أسبوع" @@ -645,8 +646,8 @@ ar: actions_description_remote_html: حدّد الإجراءات التي يتعين اتخاذها لحل هذا التقرير. هذا سيؤثر فقط على كيفية اتصال خادمك بهذا الحساب البعيد والتعامل مع محتوياته. add_to_report: أضف المزيد إلى التقرير are_you_sure: هل أنت متأكد ؟ - assign_to_self: عين لي - assigned: تعين رئيس + assign_to_self: اسنده لي + assigned: المشرف المُسنَد by_target_domain: نطاق الحساب المبلّغ عنه cancel: إلغاء category: الفئة @@ -659,14 +660,15 @@ ar: created_at: ذكرت delete_and_resolve: احذف المنشورات forwarded: أُعيد توجيهه + forwarded_replies_explanation: هذا التقرير من مستخدم عن بُعد وحول محتوى عن بُعد. تم تحويله إليك لأن المحتوى المُبلَغ عنه هو ردّ على أحد مستخدميك. forwarded_to: أُعيد توجيهه إلى %{domain} - mark_as_resolved: اعتبار الشكوى كمحلولة + mark_as_resolved: اعتبار الشكوى كمعالَجة mark_as_sensitive: تعيينه كمنشور حساس - mark_as_unresolved: علم كغير محلولة + mark_as_unresolved: وضع علامة لم يتم معالجتها no_one_assigned: لا أحد notes: create: اضف ملاحظة - create_and_resolve: الحل مع ملاحظة + create_and_resolve: معالجة مرفوقة بملاحظة create_and_unresolve: إعادة فتح مع ملاحظة delete: حذف placeholder: قم بوصف الإجراءات التي تم اتخاذها أو أي تحديثات أخرى ذات علاقة... @@ -680,7 +682,7 @@ ar: reported_account: حساب مُبلّغ عنه reported_by: أبلغ عنه من طرف resolved: معالجة - resolved_msg: تم حل تقرير بنجاح! + resolved_msg: تمت معالجة الشكوى بنجاح! skip_to_actions: تخطي إلى الإجراءات status: الحالة statuses: المحتوى المبلغ عنه @@ -1116,6 +1118,9 @@ ar: clicking_this_link: اضغط على هذا الرابط login_link: تسجيل الدخول proceed_to_login_html: يمكنكَ الآن الاستمرار إلى %{login_link}. + redirect_to_app_html: كان من المفترض إعادة توجيهك إلى تطبيق %{app_name}. إن لم يحدث ذلك، حاول %{clicking_this_link} أو العودة يدويًا إلى التطبيق. + registration_complete: اكتمل تسجيل حسابك على %{domain} الآن! + welcome_title: أهلاً بك، %{name}! wrong_email_hint: إذا كان عنوان البريد الإلكتروني هذا غير صحيح، يمكنك تغييره في إعدادات الحساب. delete_account: احذف الحساب delete_account_html: إن كنت ترغب في حذف حسابك يُمكنك المواصلة هنا. سوف يُطلَبُ منك التأكيد قبل الحذف. @@ -1177,6 +1182,7 @@ ar: functional: حسابك يعمل بشكل كامل. pending: إن طلبك قيد المراجعة من قبل فريقنا. قد يستغرق هذا بعض الوقت. سوف تتلقى بريدا إلكترونيا إذا تمت الموافقة على طلبك. redirecting_to: حسابك غير نشط لأنه تم تحويله حاليا إلى %{acct}. + self_destruct: نظرًا لإغلاق %{domain}، ستحصل فقط على وصول محدود إلى حسابك. view_strikes: عرض العقوبات السابقة المُطَبَّقة ضد حسابك too_fast: تم إرسال النموذج بسرعة كبيرة، حاول مرة أخرى. use_security_key: استخدام مفتاح الأمان @@ -1354,6 +1360,20 @@ ar: title: الرسائل المصفّاة generic: all: الكل + all_items_on_page_selected_html: + few: تم تحديد كافة العناصر التي يبلغ عددها %{count} في هذه الصفحة. + many: تم تحديد كافة العناصر التي يبلغ عددها %{count} في هذه الصفحة. + one: تم تحديد كافة العناصر التي يبلغ عددها %{count} في هذه الصفحة. + other: تم تحديد كافة العناصر التي يبلغ عددها %{count} في هذه الصفحة. + two: تم تحديد كافة العناصر التي يبلغ عددها %{count} في هذه الصفحة. + zero: تم تحديد كافة العناصر التي يبلغ عددها %{count} في هذه الصفحة. + all_matching_items_selected_html: + few: تم تحديد كافة العناصر التي تشمل عددها %{count} في هذه الصفحة. + many: تم تحديد كافة العناصر التي تشمل عددها %{count} في هذه الصفحة. + one: تم تحديد كافة العناصر التي تشمل عددها %{count} في هذه الصفحة. + other: تم تحديد كافة العناصر التي تشمل عددها %{count} في هذه الصفحة. + two: تم تحديد كافة العناصر التي تشمل عددها %{count} في هذه الصفحة. + zero: تم تحديد كافة العناصر التي تشمل عددها %{count} في هذه الصفحة. cancel: إلغاء changes_saved_msg: تم حفظ التعديلات بنجاح! confirm: تأكيد @@ -1363,6 +1383,13 @@ ar: none: لا شيء order_by: ترتيب بحسب save_changes: حفظ التغييرات + select_all_matching_items: + few: حدد كافة العناصر الـ %{count} المطابقة لبحثك. + many: حدد كافة العناصر الـ %{count} المطابقة لبحثك. + one: حدد العنصر المطابق لبحثك. + other: حدد كافة العناصر الـ %{count} المطابقة لبحثك. + two: حدد العنصران المطابقان لبحثك. + zero: حدد كافة العناصر الـ %{count} المطابقة لبحثك. today: اليوم validation_errors: few: هناك شيء ما ليس على ما يرام! يُرجى مراجعة الأخطاء الـ %{count} أدناه @@ -1441,6 +1468,7 @@ ar: '86400': يوم واحد expires_in_prompt: أبدا generate: توليد + invalid: هذه الدعوة غير صالحة invited_by: 'تمت دعوتك من طرف:' max_uses: few: "%{count} استخدامات" @@ -1622,6 +1650,9 @@ ar: errors: limit_reached: تم بلوغ الحد الأقصى لردود الفعل المختلفة unrecognized_emoji: لم يتم التعرف على أنه إيموجي + redirects: + prompt: إن كنت واثق من هذا الرابط، انقر عليه للمتابعة. + title: إنّك مغادر %{instance}. relationships: activity: نشاط الحساب confirm_follow_selected_followers: هل أنت متأكد من أنك تريد متابعة المتابِعين المحددين؟ @@ -1657,6 +1688,9 @@ ar: over_daily_limit: لقد تجاوزتَ حد الـ %{limit} منشورات مُبَرمَجة مسموح بها اليوم over_total_limit: لقد بلغت حد الـ %{limit} مِن المنشورات المبرمَجة too_soon: يجب أن يكون تاريخ البرمجة في المستقبَل + self_destruct: + lead_html: للأسف، سيتم إغلاق %{domain} بشكل دائم. إذا كان لديك حساب هناك، لن تكون قادرًا على الاستمرار في استخدامه، غير أنه يمكنك طلب نسخة احتياطية لبياناتك. + title: سيُغلق هذا الخادم أبوابه sessions: activity: آخر نشاط browser: المتصفح @@ -1681,6 +1715,7 @@ ar: unknown_browser: متصفح غير معروف weibo: وايبو current_session: الجلسة الحالية + date: التاريخ description: "%{browser} على %{platform}" explanation: ها هي قائمة مُتصفِّحات الويب التي تستخدِم حاليًا حساب ماستدون الخاص بك. ip: عنوان الإيبي @@ -1871,16 +1906,27 @@ ar: webauthn: مفاتيح الأمان user_mailer: appeal_approved: + action: إعدادات الحساب explanation: تمت الموافقة على استئناف السجل ضد حسابك في %{strike_date} الذي قدمته في %{appeal_date}. حسابك مرة أخرى في حالة جيدة. subject: تم قبول طعنك الذي قدمته بتاريخ %{date} + subtitle: حسابك في وضع جيد مجدّدا. title: تم قبول طعنك appeal_rejected: explanation: تم رفض استئناف السجل ضد حسابك في %{strike_date} الذي قدمته في %{appeal_date}. subject: تم رفض طعنك الذي قدمته بتاريخ %{date} + subtitle: تم رفض طعنك. title: رُفض الاستئناف backup_ready: + explanation: لقد قمت بطلب نسخة كاملة لحسابك على ماستدون. + extra: إنه الآن جاهز للتحميل! subject: نسخة بيانات حسابك جاهزة للتنزيل title: المغادرة بأرشيف الحساب + failed_2fa: + details: 'فيما يلي تفاصيل محاولة تسجيل الدخول:' + explanation: حاول شخص ما تسجيل الدخول إلى حسابك ولكنه قدم عامل مصادقة ثانٍ غير صالح. + further_actions_html: إن لم تكن أنت، نوصي بأن تقوم بـ %{action} على الفور، حيث قد يكون الحساب قد تعرض للاختراق. + subject: فشل المصادقة على العامل الثاني + title: فشل المصادقة على العامل الثاني suspicious_sign_in: change_password: غيّر كلمتك السرية details: 'فيما يلي تفاصيل تسجيل الدخول:' @@ -1923,10 +1969,6 @@ ar: edit_profile_action: تهيئة الملف التعريفي edit_profile_step: يمكنك تخصيص ملفك الشخصي عن طريق رفع صورة ملفك الشخصي, تغيير اسم العرض الخاص بك والمزيد. يمكنك اختيار مراجعة المتابعين الجدد قبل السماح لهم بمتابعتك. explanation: ها هي بعض النصائح قبل بداية الاستخدام - final_action: اشرَع في النشر - final_step: 'ابدأ في النشر! حتى بدون متابعين، منشوراتك العامة قد يشاهدها آخرون، على سبيل المثال في التوقيت المحلي أو في الوسوم. قد ترغب في تقديم نفسك على وسم #introductions.' - full_handle: عنوانك الكامل - full_handle_hint: هذا هو ما يجب تقديمه لأصدقائك قصد أن يكون بإمكانهم متابَعتك أو مُراسَلتك حتى و إن كانت حساباتهم على خوادم أخرى. subject: أهلًا بك على ماستدون title: أهلاً بك، %{name}! users: @@ -1934,7 +1976,7 @@ ar: go_to_sso_account_settings: انتقل إلى إعدادات حساب مزود الهوية الخاص بك invalid_otp_token: رمز المصادقة بخطوتين غير صالح otp_lost_help_html: إن فقدتَهُما ، يمكنك الاتصال بـ %{email} - rate_limited: عدد محاولات التحقق كثير جدًا، يرجى المحاولة مرة أخرى لاحقًا. + rate_limited: عدد محاولات المصادقة كثير جداً، حاول مرة أخرى لاحقاً. seamless_external_login: لقد قمت بتسجيل الدخول عبر خدمة خارجية، إنّ إعدادات الكلمة السرية و البريد الإلكتروني غير متوفرة. signed_in_as: 'تم تسجيل دخولك بصفة:' verification: diff --git a/config/locales/ast.yml b/config/locales/ast.yml index 7e5a4c8876..da7e99c2fa 100644 --- a/config/locales/ast.yml +++ b/config/locales/ast.yml @@ -903,7 +903,6 @@ ast: edit_profile_action: Configurar el perfil edit_profile_step: Pues personalizar el perfil pente la xuba d'una semeya, el cambéu del nome visible ya muncho más. Tamién, si lo prefieres, pues revisar los perfiles nuevos enantes de que puedan siguite. explanation: Equí tienes dalgunos conseyos pa que comiences - final_action: Comenzar a espublizar subject: Afáyate en Mastodon title: "¡Afáyate, %{name}!" users: diff --git a/config/locales/be.yml b/config/locales/be.yml index c0ed043f8e..34e0722ba9 100644 --- a/config/locales/be.yml +++ b/config/locales/be.yml @@ -88,7 +88,7 @@ be: remote: Адлеглы title: Месцазнаходжанне login_status: Стан уваходу - media_attachments: Медыя дадаткі + media_attachments: Медыя далучэнні memorialize: Даданае да памяці memorialized: Запомненае memorialized_msg: Уліковы запіс %{username} ператвораны ў мемарыяльны @@ -522,7 +522,7 @@ be: instance_followers_measure: нашых падпісчыкаў там instance_follows_measure: іх падпісчыкаў тут instance_languages_dimension: Папулярныя мовы - instance_media_attachments_measure: захаваныя медыя-ўкладанні + instance_media_attachments_measure: захаваныя медыя-далучэнні instance_reports_measure: справаздач пра іх instance_statuses_measure: захаваных паведамленняў delivery: @@ -555,7 +555,7 @@ be: total_followed_by_them: Іхнія падпіскі total_followed_by_us: Нашыя падпіскі total_reported: Скаргі на іх - total_storage: Медыя дадаткі + total_storage: Медыя далучэнні totals_time_period_hint_html: Паказаныя агульныя значэнні ніжэй уключаюць даныя за ўвесь час. unknown_instance: На дадзены момант няма запісаў аб гэтым дамене на гэтым серверы. invites: @@ -795,6 +795,7 @@ be: disabled: Нікому users: Лакальным карыстальнікам, якія ўвайшлі registrations: + moderation_recommandation: Пераканайцеся, што ў вас ёсць адэкватная і аператыўная каманда мадэратараў, перш чым адчыняць рэгістрацыю для ўсіх жадаючых! preamble: Кантралюйце, хто можа ствараць уліковы запіс на вашым серверы. title: Рэгістрацыя registrations_mode: @@ -802,6 +803,7 @@ be: approved: Для рэгістрацыі патрабуецца пацвярджэнне none: Нікому не магчыма зарэгістравацца open: Любому магчыма зарэгістравацца + warning_hint: Мы рэкамендуем выкарыстоўваць рэжым "для рэгістрацыі патрабуецца пацвярджэнне", калі вы не ўпэўненыя, што ваша каманда мадэратараў зможа своечасова спраўляцца са спамам і шкоднымі рэгістрацыямі. security: authorized_fetch: Патрабаваць аўтэнтыфікацыю ад федэратыўных сервераў authorized_fetch_hint: Патрабаванне аўтэнтыфікацыі ад федэратыўных сервераў дазваляе больш строга выконваць блакіроўкі як на ўзроўні карыстача, так і на ўзроўні сервера. Аднак пры гэтым зніжаецца прадукцыйнасць, памяншаецца ахоп вашых адказаў на допісы і могуць узнікнуць праблемы сумяшчальнасці з некаторымі федэратыўнымі сэрвісамі. Акрамя таго, гэта не перашкодзіць атрымліваць вашыя публічныя допісы і ўліковыя запісы. @@ -1002,6 +1004,9 @@ be: title: Вэбхукі webhook: Вэбхук admin_mailer: + auto_close_registrations: + body: У сувязі з адсутнасцю актыўнасці мадэратараў у апошні час, рэгістрацыя на %{instance} была аўтаматычна пераведзена ў рэжым, які патрабуе ручной праверкі, каб прадухіліць выкарыстанне %{instance} у якасці платформы для патэнцыйных зламыснікаў. Вы можаце ў любы момант пераключыць яго назад ў рэжым "вольная рэгістрацыя". + subject: Рэгістрацыі для %{instance} былі аўтаматычна пераведзены ў рэжым "патрабуецца пацвярджэнне" new_appeal: actions: delete_statuses: выдаліць іх допісы @@ -1462,9 +1467,9 @@ be: title: Адпісацца media_attachments: validations: - images_and_video: Немагчыма прымацаваць відэа да допісу, які ўжо змяшчае выявы - not_ready: Няможна дадаць файлы, апрацоўка якіх яшчэ не скончылася. Паспрабуйце яшчэ раз праз хвілінку! - too_many: Няможна дадаць больш за 4 файлы + images_and_video: Немагчыма далучыць відэа да допісу, які ўжо змяшчае выявы + not_ready: Няможна далучыць файлы, апрацоўка якіх яшчэ не скончылася. Паспрабуйце яшчэ раз праз хвілінку! + too_many: Немагчыма далучыць больш за 4 файлы migrations: acct: Перамешчана ў cancel: Скасаваць перанакіраванне @@ -1598,6 +1603,9 @@ be: errors: limit_reached: Дасягнуты ліміт розных рэакцый unrecognized_emoji: невядомае эмодзі + redirects: + prompt: Калі вы давяраеце гэтай спасылцы, націсніце на яе, каб працягнуць. + title: Вы пакідаеце %{instance}. relationships: activity: Актыўнасць ул. запісу confirm_follow_selected_followers: Вы ўпэўнены, што жадаеце падпісацца на выбраных падпісчыкаў? @@ -1660,6 +1668,7 @@ be: unknown_browser: Невядомы браўзер weibo: Weibo current_session: Бягучая сесія + date: Дата description: "%{browser} на %{platform}" explanation: Гэта вэб-браўзэры, з якіх выкананы ўваход у ваш уліковы запіс Mastodon. ip: IP @@ -1776,7 +1785,7 @@ be: interaction_exceptions_explanation: Звярніце ўвагу, што няма гарантыі выдалення пастоў, калі колькасць іх упадабанняў ці пашырэннняў упадзе ніжэй за ліміт, хаця некалі гэтая колькасць перавышала яго. keep_direct: Захаваць асабістыя паведамленні keep_direct_hint: Не выдаляць асабістыя паведамленні - keep_media: Захоўваць допісы з медыя дадаткамі + keep_media: Захоўваць допісы з далучаным медыя keep_media_hint: Не выдаляць вашыя допісы, якія ўтрымліваюць медыя keep_pinned: Захаваць замацаваныя допісы keep_pinned_hint: Не выдаляць вашыя замацаваныя допісы @@ -1838,16 +1847,27 @@ be: webauthn: Ключы бяспекі user_mailer: appeal_approved: + action: Налады ўліковага запісу explanation: Апеляцыя на папярэджанне супраць вашага ўліковага запісу ад %{strike_date}, якую вы падалі %{appeal_date}, была ўхвалена. Ваш уліковы запіс зноў на добрым рахунку. subject: Вашая апеляцыя ад %{date} была ўхваленая + subtitle: Ваш уліковы запіс зноў знаходзіцца ў добрым стане. title: Абскарджанне ўхвалена appeal_rejected: explanation: Апеляцыя на папярэджанне супраць вашага ўліковага запісу ад %{strike_date}, якую вы падалі %{appeal_date}, была адхілена. subject: Вашая апеляцыя ад %{date} была адхіленая + subtitle: Ваша абскарджанне было адхілена. title: Абскарджанне адхілена backup_ready: + explanation: Вы запыталі поўную рэзервовую копію вашага ўліковага запісу Mastodon. + extra: Цяпер ён гатовы да загрузкі! subject: Ваш архіў гатовы да спампавання title: Ваш архіў можна спампаваць + failed_2fa: + details: 'Вось падрабязнасці ўваходу:' + explanation: Хтосьці спрабаваў увайсці ў ваш уліковы запіс, але ўвёў няправільны другі фактар аўтэнтыфікацыі. + further_actions_html: Калі гэта не вы, мы рэкамендуем неадкладна %{action}, бо ён можа быць скампраметаваны. + subject: Збой аўтэнтыфікацыі па другім фактары + title: Няўдалая аўтэнтыфікацыя па другім фактары suspicious_sign_in: change_password: змяніць свой пароль details: 'Вось падрабязнасці ўваходу:' @@ -1890,10 +1910,6 @@ be: edit_profile_action: Наладзіць профіль edit_profile_step: Вы можаце наладзіць свой профіль, запампаваўшы выяву профілю, змяніўшы адлюстраванае імя і іншае. Вы можаце праглядаць новых падпісчыкаў, перш чым ім будзе дазволена падпісацца на вас. explanation: Вось некаторыя парады каб пачаць - final_action: Пачаць пісаць - final_step: 'Пачынайце пісаць! Нават, калі ў вас няма падпісчыкаў, іншыя людзі змогуць пабачыць вашыя допісы, напрыклад, у лакальнай стужцы, або праз хэштэгі. Калі хочаце, вы можаце прадставіцца праз хэштэг #introductions.' - full_handle: Ваш поўны маркер - full_handle_hint: Гэта тое, што вы дасце сваім сябрам, каб яны маглі адпраўляць паведамленні або падпісацца на вас з іншага сервера. subject: Вітаем у Mastodon title: Рады вітаць вас, %{name}! users: @@ -1901,6 +1917,7 @@ be: go_to_sso_account_settings: Перайдзіце ў налады ідэнтыфікацыі вашага ўліковага запісу invalid_otp_token: Няправільны код двухфактарнай аўтэнтыфікацыі otp_lost_help_html: Калі вы страцілі доступ да абодвух, вы можаце скарыстацца %{email} + rate_limited: Занадта шмат спробаў аўтэнтыфікацыі, паспрабуйце пазней. seamless_external_login: Вы ўвайшлі праз знешні сэрвіс, таму налады пароля і эл. пошты недаступныя. signed_in_as: 'Увайшлі як:' verification: diff --git a/config/locales/bg.yml b/config/locales/bg.yml index 9c8456a05f..15c671d539 100644 --- a/config/locales/bg.yml +++ b/config/locales/bg.yml @@ -7,7 +7,7 @@ bg: hosted_on: Mastodon е разположен на хост %{domain} title: Относно accounts: - follow: Последвай + follow: Последване followers: one: Последовател other: Последователи @@ -28,7 +28,7 @@ bg: title: Извършване на модериращо действие за %{acct} account_moderation_notes: create: Оставяне на бележка - created_msg: Бележката за модерация е създадена успешно! + created_msg: Успешно създадена бележка за модерация! destroyed_msg: Успешно унищожена бележка за модериране! accounts: add_email_domain_block: Блокиране на домейн на имейл @@ -757,7 +757,7 @@ bg: follow_recommendations: Препоръки за следване preamble: За потребители, които са нови и не познават никого в Mastodon, показването на интересно съдържание е ключово. Настройте начина, по който различни функции по откриване на съдържание работят на вашия сървър. profile_directory: Указател на профила - public_timelines: Публични часови оси + public_timelines: Публични хронологии publish_discovered_servers: Публикуване на откритите сървъри publish_statistics: Публикуване на статистиката title: Откриване @@ -804,7 +804,7 @@ bg: remove_from_report: Премахване от доклада report: Докладване deleted: Изтрито - favourites: Любими + favourites: Харесвани history: История на версиите in_reply_to: Отговор до language: Език @@ -840,7 +840,7 @@ bg: elasticsearch_health_yellow: message_html: Клъстерът Elasticsearch е нездрав (жълто състояние), може да искате да разследвате причината elasticsearch_index_mismatch: - message_html: Картографиранията на показатели в Elasticsearch са остарели. Пуснете tootctl search deploy --only=%{value} + message_html: Речниковите съответствия в Elasticsearch са с изтекла давност. Пуснете tootctl search deploy --only=%{value} elasticsearch_preset: action: Преглед на документацията message_html: Вашият клъстер в Elasticsearch има повече от един възел, но Mastodon не е настроен да ги употребява. @@ -905,14 +905,14 @@ bg: statuses: allow: Позволяване на публикацията allow_account: Позволяване на автора - description_html: Има публикации, за които сървърът ви знае, че в момента са често споделяни или означавани като любими. Биха помогнали на вашите нови и завръщащи се потребители да открият повече хора за последване. Никоя от публикациите няма да бъде показана публично, докато не одобрите автора и докато авторът не позволи акаунтът му да бъде предлган на другите. Може още да позволявате или отхвърляте отделни публикации. + description_html: Това са публикации, за които сървърът ви знае, че са често споделяни или харесвани в момента. Това може да помогне на вашите нови и завръщащи се потребители да открият повече хора за следване. Никоя от публикациите няма да бъде показана публично, докато не одобрите автора и докато авторът не позволи акаунтът му да бъде предлган на другите. Също така можете да позволявате или отхвърляте отделни публикации. disallow: Забраняване на публикацията disallow_account: Забрана на автора no_status_selected: Няма промяна, тъй като няма избрана нашумяла публикация not_discoverable: Авторът не е избрал да е откриваем shared_by: - one: Споделено или сложено веднъж в любими - other: Споделено или сложено в любими %{friendly_count} пъти + one: Споделено или харесано веднъж + other: Споделено или харесано %{friendly_count} пъти title: Налагащи се публикации tags: current_score: Текущ резултат %{score} @@ -1009,7 +1009,7 @@ bg: remove: Разкачвне на псевдонима appearance: advanced_web_interface: Разширен уеб интерфейс - advanced_web_interface_hint: 'Ако желаете да се възползвате от пълната ширина на своя екран, разширеният уеб интерфейс ще ви позволи да настроите най-различни колони, за да виждате едновременно множество информация: Начало, известия, федериран инфопоток, множество списъци и хаштагове.' + advanced_web_interface_hint: 'Ако желаете да се възползвате от цялата ширина на своя екран, разширеният уеб интерфейс ще ви позволи да настроите няколко различни колони, за да виждате едновременно различна информация: Начало, известия, федерирана хронология, множество списъци и хаштагове.' animations_and_accessibility: Анимация и достъпност confirmation_dialogs: Диалогов прозорец за потвърждение discovery: Откриване @@ -1231,13 +1231,13 @@ bg: add_new: Добавяне на нов errors: limit: Вече достигнахте максималния брой хаштагове - hint_html: "Какво представляват актуалните хаштагове? Те се показват ясно на вашия публичен профил и позволяват на хората да преглеждат публичните ви публикации с тези хаштагове. Те са чудесен инструмент, с който може да се следи творческа работа или дългосрочни проекти." + hint_html: "Изтъкнете най-важните си хаштагове на профила? Чудесен инструмент за организиране на вашите творби и дългосрочни проекти, изтъкнатите хаштагове са отчетливо видими на вашия профил и позволяват лесен достъп до вашите собствени публикации." filters: contexts: account: Профили home: Начало и списъци notifications: Известия - public: Публични инфопотоци + public: Публични хронологии thread: Разговори edit: add_keyword: Добавяне на ключова дума @@ -1400,11 +1400,11 @@ bg: confirmation_html: Наистина ли искате да спрете абонамента от получаването на %{type} за Mastodon в %{domain} към имейла си при %{email}? Може винаги пак да се абонирате от своите настройки за известяване по е-поща. emails: notification_emails: - favourite: е-писма с любими известия + favourite: е-писма за харесани известия follow: е-писма с известия за последване follow_request: е-писма със заявки за следване mention: е-писма с известия за споменаване - reblog: е-писма с известия за подсилване + reblog: е-писма с известия за раздуване resubscribe_html: Ако погрешка сте спрели абонамента, то може пак да се абонирате от своите настройки за известия по е-поща. success_html: Повече няма да получавате %{type} за Mastodon в %{domain} към имейла си при %{email}. title: Спиране на абонамента @@ -1459,9 +1459,9 @@ bg: sign_up: subject: "%{name} се регистрира" favourite: - body: 'Вашата публикация беше добавена в любими от %{name}:' + body: 'Вашата публикация беше харесана от %{name}:' subject: "%{name} хареса вашата публикация" - title: Нова любима публикация + title: Нова харесана публикация follow: body: "%{name} те последва!" subject: "%{name} те последва" @@ -1479,9 +1479,9 @@ bg: poll: subject: Анкетата от %{name} приключи reblog: - body: 'Ваша публикация беше подсилена от %{name}:' - subject: "%{name} подсили ваша публикация" - title: Ново подсилване + body: 'Ваша публикация беше раздута от %{name}:' + subject: "%{name} разду ваша публикация" + title: Ново раздуване status: subject: "%{name} току-що публикува" update: @@ -1530,7 +1530,7 @@ bg: preferences: other: Друго posting_defaults: По подразбиране за публикации - public_timelines: Публични инфопотоци + public_timelines: Публични хронологии privacy: hint_html: "Персонализирайте как искате профилът ви и публикациите ви да се намират. Разнообразие от функции в Mastodon може да ви помогнат да достигнете по-широка публика, когато е включено. Отделете малко време, за да прегледате тези настройки, за да се уверите, че отговарят на вашия случай на употреба." privacy: Поверителност @@ -1668,7 +1668,7 @@ bg: video: one: "%{count} видео" other: "%{count} видеозаписа" - boosted_from_html: Подсилено от %{acct_link} + boosted_from_html: Раздуто от %{acct_link} content_warning: 'Предупреждение за съдържание: %{warning}' default_language: Същият като езика на интерфейса disallowed_hashtags: @@ -1680,10 +1680,10 @@ bg: open_in_web: Отвори в уеб over_character_limit: прехвърлен лимит от %{max} символа pin_errors: - direct: Публикациите, които са видими само за споменати потребители не може да се закачат + direct: Публикациите, които са видими само за потребители споменати в тях, не могат да бъдат закачани limit: Вече сте закачили максималния брой публикации - ownership: Публикация на някого другиго не може да се закачи - reblog: Подсилване не може да се закача + ownership: Публикация на някого другиго не може да бъде закачена + reblog: Раздуване не може да бъде закачано poll: total_people: one: "%{count} човек" @@ -1704,27 +1704,27 @@ bg: public: Публично public_long: Всеки ги вижда unlisted: Публично, но не показвай в публичния канал - unlisted_long: Всеки ги вижда, но са скрити от публичните инфопотоци + unlisted_long: Всеки ги вижда, но са скрити от публичните хронологии statuses_cleanup: enabled: Автоматично изтриване на стари публикации enabled_hint: От само себе си трие публикациите ви, щом достигнат указания възрастов праг, освен ако не съвпаднат с някое от изключенията долу exceptions: Изключения explanation: Тъй като изтриването на публикации е скъпа операция, това се прави бавно във времето, когато сървърът иначе не е зает. Поради тази причина публикациите ви може да се изтрият известно време след като достигнат възрастовия праг. ignore_favs: Игнориране на харесвания - ignore_reblogs: Игнориране на подсилвания + ignore_reblogs: Игнориране на раздувания interaction_exceptions: Изключения въз основа на взаимодействия - interaction_exceptions_explanation: Забележете, че няма гаранция, че публикацията ще се изтрият, ако паднат под прага на брой маркирания като любими/подсилвания, след като са го надвишили. + interaction_exceptions_explanation: Забележете, че няма гаранция, че публикациите ще бъдат изтрити, ако паднат под прага на брой маркирания като харесвани или раздувани, след като са го надвишили. keep_direct: Запазване на директните съобщения keep_direct_hint: Директните ви съобщения не се изтриват keep_media: Задържане на публикации с прикачена мултимедия keep_media_hint: Не изтрива публикации, които съдържат мултимедийни прикачвания - keep_pinned: Запазване на закачените публикации - keep_pinned_hint: Не изтрива закачени публикации + keep_pinned: Задържане на закачените публикации + keep_pinned_hint: Не изтрива закачените ви публикации keep_polls: Запазване на запитванията keep_polls_hint: Не изтрива запитвания keep_self_bookmark: Запазване на публикации, добавени в отметки keep_self_bookmark_hint: Не се изтриват ваши публикации, ако сте ги добавили към отметки - keep_self_fav: Запазване на публикации, които сте маркирали като любими + keep_self_fav: Задържане на публикации, които сте харесали keep_self_fav_hint: Не се изтриват публикации, които сте харесали min_age: '1209600': 2 седмици @@ -1736,10 +1736,10 @@ bg: '63113904': 2 години '7889238': 3 месеца min_age_label: Възрастов праг - min_favs: Запазване на публикации, маркирани като любими поне - min_favs_hint: Не се изтриват никоя от публикациите ви, маркирани като любими поне толкова пъти. Оставете празно, за да изтриете публикациите независимо от броя маркирания като любими - min_reblogs: Запазване на публикации с поне толкова споделяния - min_reblogs_hint: Не се изтриват ваши публикации, споделени поне толкова пъти. Оставете празно, за да изтриете публикациите независимо от техния брой споделяния + min_favs: Запазване на харесани публикации поне + min_favs_hint: Не се изтрива никоя от публикациите, които сте харесали поне толкова пъти. Оставете празно, за да изтриете публикациите независимо от броя харесвания + min_reblogs: Запазване на публикации с поне толкова раздувания + min_reblogs_hint: Не се изтриват ваши публикации, споделени поне толкова пъти. Оставете празно, за да изтриете публикациите независимо от броя на техния раздувания stream_entries: sensitive_content: Деликатно съдържание strikes: @@ -1841,10 +1841,6 @@ bg: edit_profile_action: Настройване на профила edit_profile_step: Може да настроите профила си, качвайки снимката на профила, променяйки показваното си име и други неща. Може да се включите за преглед на нови последователи преди да бъдат позволени да ви последват. explanation: Ето няколко стъпки за начало - final_action: Начало на публикуване - final_step: 'Публикувайте! Дори без последователи, вашите публични публикации ще бъдат видени от други, например в местния инфопоток или под хаштагове. Не забравяйте да се представите с хаштаг #introductions.' - full_handle: Пълното ви име - full_handle_hint: Ето какво бихте казали на приятелите си, за да могат да ви изпращат съобщения или да ви последват от друг сървър. subject: Добре дошли в Mastodon title: Добре дошли на борда, %{name}! users: diff --git a/config/locales/br.yml b/config/locales/br.yml index d20609a8ce..01c6db4ef5 100644 --- a/config/locales/br.yml +++ b/config/locales/br.yml @@ -3,6 +3,7 @@ br: about: contact_missing: Andermenet contact_unavailable: N'eus ket + hosted_on: Servijer Mastodon herberc'hiet war %{domain} title: Diwar-benn accounts: follow: Heuliañ @@ -135,6 +136,9 @@ br: disputes: appeals: title: Galvoù + domain_allows: + export: Ezporzhiañ + import: Enporzhiañ domain_blocks: domain: Domani new: @@ -151,6 +155,8 @@ br: domain: Domani new: create: Ouzhpenniñ un domani + export_domain_allows: + no_file: Restr ebet diuzet follow_recommendations: status: Statud suppressed: Dilamet @@ -265,10 +271,12 @@ br: delete_statuses: Dilamet eo bet toudoù %{target} gant %{name} trends: allow: Aotren + approved: Aprouet links: allow: Aotren al liamm preview_card_providers: title: Embannerien·ezed + rejected: Nac'het statuses: allow: Aotren ar c'hannad tags: @@ -297,6 +305,9 @@ br: title: Hashtagoù diouzh ar c'hiz appearance: discovery: Dizoloadur + localization: + body: Gant tud a-youl vat eo troet Mastodon. + guide_link: https://crowdin.com/project/mastodon application_mailer: view: 'Sellet :' view_status: Gwelet ar c'hannad @@ -373,10 +384,12 @@ br: title: Toudoù silet generic: all: Pep tra + changes_saved_msg: Enrollet eo bet ar cheñchamantoù gant berzh! copy: Eilañ delete: Dilemel none: Hini ebet order_by: Urzhiañ dre + save_changes: Enrollañ ar cheñchamantoù today: hiziv imports: modes: @@ -488,6 +501,7 @@ br: settings: account: Kont account_settings: Arventennoù ar gont + back: Distreiñ da vMastodon development: Diorren edit_profile: Kemmañ ar profil featured_tags: Hashtagoù pennañ @@ -521,13 +535,14 @@ br: '604800': 1 sizhunvezh '63113904': 2 vloavezh themes: - default: Mastodoñ (Teñval) - mastodon-light: Mastodoñ (Sklaer) + default: Mastodon (Teñval) + mastodon-light: Mastodon (Sklaer) time: formats: default: "%d a viz %b %Y, %H:%M" month: Miz %b %Y time: "%H:%M" + with_time_zone: "%d a viz %b %Y, %H:%M %Z" two_factor_authentication: add: Ouzhpennañ disable: Diweredekaat @@ -546,7 +561,7 @@ br: none: Diwall welcome: edit_profile_action: Kefluniañ ar profil - subject: Donemat e Mastodoñ + subject: Donemat e Mastodon title: Degemer mat e bourzh, %{name}! users: follow_limit_reached: N'hallit ket heulian muioc'h eget %{limit} a zen diff --git a/config/locales/ca.yml b/config/locales/ca.yml index 58f6e26374..d80fb598e3 100644 --- a/config/locales/ca.yml +++ b/config/locales/ca.yml @@ -767,6 +767,7 @@ ca: disabled: Per a ningú users: Per als usuaris locals en línia registrations: + moderation_recommandation: Assegureu-vos de tenir un equip de moderadors adient i actiu abans d'obrir l'alta de comptes al públic! preamble: Controla qui pot crear un compte en el teu servidor. title: Registres registrations_mode: @@ -774,6 +775,7 @@ ca: approved: Cal l’aprovació per a registrar-se none: No es pot registrar ningú open: Qualsevol pot registrar-se + warning_hint: Recomanem utilitzar l'opció "Es requereix aprovació per a donar-se d'alta" si no teniu un equip de moderadors que puguin gestionar els enviaments de brossa o maliciosos en un temps raonable. security: authorized_fetch: Requereix autenticació dels servidors federats authorized_fetch_hint: Requerir l'autenticació dels servidors federats permet una aplicació més estricta dels bloqueigs a nivell d'usuari i a nivell de servidor. Tanmateix, això provoca una penalització del rendiment, redueix l'abast de les seves respostes i pot introduir problemes de compatibilitat amb alguns serveis federats. A més, això no impedirà que els actors dedicats busquin les teves publicacions i comptes públics. @@ -966,6 +968,9 @@ ca: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: A causa de la manca d'activitat recent dels moderadors, s'ha passat el procés d'alta de %{instance} al mode de revisió manual, a fi d'evitar que malfactors l'utilitzin com a plataforma. Podeu obrir el procés de registre en qualsevol moment. + subject: S'ha passat el procés d'alta de %{instance} al mode de validació manual new_appeal: actions: delete_statuses: eliminar els seus tuts @@ -1548,7 +1553,7 @@ ca: unrecognized_emoji: no és un emoji reconegut redirects: prompt: Si confieu en aquest enllaç, feu-hi clic per a continuar. - title: Esteu sortint de %{instance}. + title: Deixeu %{instance}. relationships: activity: Activitat del compte confirm_follow_selected_followers: Segur que vols seguir els seguidors seleccionats? @@ -1841,10 +1846,6 @@ ca: edit_profile_action: Configura el perfil edit_profile_step: Pots personalitzar el teu perfil pujant-hi un avatar, canviant el teu nom de visualització i molt més. Si ho prefereixes, pots revisar els seguidors nous abans que et puguin seguir. explanation: Aquests són alguns consells per a començar - final_action: Comença a publicar - final_step: 'Comença a publicar! Fins i tot sense seguidors, els altres poden veure els teus missatges públics, per exemple, a la línia de temps local i a les etiquetes. És possible que vulguis presentar-te amb l''etiqueta #introductions.' - full_handle: El teu nom d'usuari sencer - full_handle_hint: Això és el que has de dir als teus amics perquè puguin enviar-te missatges o seguir-te des d'un altre servidor. subject: Et donem la benvinguda a Mastodon title: Benvingut a bord, %{name}! users: diff --git a/config/locales/ckb.yml b/config/locales/ckb.yml index 7905024381..fec8f73323 100644 --- a/config/locales/ckb.yml +++ b/config/locales/ckb.yml @@ -521,11 +521,14 @@ ckb: all: بۆ هەموو کەسێک disabled: بۆ هیچ کەسێک users: بۆ چوونە ژوورەوەی بەکارهێنەرانی ناوخۆ + registrations: + moderation_recommandation: تکایە دڵنیابە پێش ئەوەی ناو تۆمارکردن بۆ هەمووان بکەیتەوە، تیمێکی میانڕەوی گونجاو و کاردانەوەتان هەیە! registrations_mode: modes: approved: پەسەندکردنی داواکراو بۆ ناوتۆمارکردن none: کەس ناتوانێت خۆی تۆمار بکات open: هەر کەسێک دەتوانێت خۆی تۆمار بکات + warning_hint: پێشنیار دەکەین "ڕەزامەندی پێویستە بۆ ناو تۆمارکردن" بەکاربهێنیت مەگەر دڵنیا بیت کە تیمی بەڕێوەبردنەکەت دەتوانێت لە کاتی خۆیدا مامەڵە لەگەڵ سپام و تۆمارکردنی زیانبەخشدا بکات. site_uploads: delete: سڕینەوەی فایلی بارکراو destroyed_msg: بارکردنی ماڵپەڕ بە سەرکەوتوویی سڕدراوەتەوە! @@ -1032,9 +1035,6 @@ ckb: welcome: edit_profile_action: پرۆفایلی جێگیرکردن explanation: ئەمە چەند ئامۆژگارییەکن بۆ دەست پێکردنت - final_action: دەست بکە بە بڵاوکردنەوە - full_handle: ناوی بەکارهێنەری تەواوی ئێوە - full_handle_hint: ئەمە ئەو شتەیە کە بە هاوڕێکانت دەلێی بۆ ئەوەی پەیام یان لە ڕاژەیەکی دیکەی ترەوە بەدوات بکەون. subject: بەخێربیت بۆ ماستۆدۆن title: بەخێربێیت، بەکارهێنەر %{name}! users: diff --git a/config/locales/co.yml b/config/locales/co.yml index f5b6b46d92..c3c185c2f5 100644 --- a/config/locales/co.yml +++ b/config/locales/co.yml @@ -1050,9 +1050,6 @@ co: welcome: edit_profile_action: Cunfigurazione di u prufile explanation: Eccu alcune idee per principià - final_action: Principià à pustà - full_handle: U vostru identificatore cumplettu - full_handle_hint: Quessu ghjè cio chì direte à i vostri amichi per circavi, abbunassi à u vostru contu da altrò, o mandà missaghji. subject: Benvenutu·a nant’à Mastodon title: Benvenutu·a, %{name}! users: diff --git a/config/locales/cs.yml b/config/locales/cs.yml index eafbead761..69640a261f 100644 --- a/config/locales/cs.yml +++ b/config/locales/cs.yml @@ -439,6 +439,7 @@ cs: view: Zobrazit blokaci domény email_domain_blocks: add_new: Přidat + allow_registrations_with_approval: Povolit registrace se schválením attempts_over_week: few: "%{count} pokusy o registraci za poslední týden" many: "%{count} pokusů o registraci za poslední týden" @@ -635,6 +636,7 @@ cs: created_at: Nahlášené delete_and_resolve: Smazat příspěvky forwarded: Přeposláno + forwarded_replies_explanation: Toto hlášení je od uživatele z jiného serveru, a je o obsahu z jeho serveru. Byl převeden na vás, protože nahlášený obsah odpovídá jednomu z vašich uživatelů. forwarded_to: Přeposláno na %{domain} mark_as_resolved: Označit jako vyřešené mark_as_sensitive: Označit jako citlivé @@ -645,7 +647,7 @@ cs: create_and_resolve: Vyřešit s poznámkou create_and_unresolve: Znovu otevřít s poznámkou delete: Smazat - placeholder: Popište, jaké akce byly vykonány, nebo jakékoliv jiné související aktuality… + placeholder: Popište, jaké akce byly vykonány, nebo jakékoliv jiné související aktuality... title: Poznámky notes_description_html: Zobrazit a zanechat poznámky pro ostatní moderátory i sebe v budoucnu processed_msg: Nahlášení č.%{id} bylo úspěšně zpracováno @@ -714,7 +716,7 @@ cs: administrator_description: Uživatelé s tímto oprávněním obejdou všechna oprávnění delete_user_data: Mazat uživatelská data delete_user_data_description: Umožňuje uživatelům bezodkladně mazat data jiných uživatelů - invite_users: Zvát uživatele + invite_users: Pozvat uživatele invite_users_description: Umožňuje uživatelům zvát na server nové lidi manage_announcements: Spravovat oznámení manage_announcements_description: Umožňuje uživatelům spravovat oznámení na serveru @@ -793,22 +795,27 @@ cs: disabled: Nikomu users: Přihlášeným místním uživatelům registrations: + moderation_recommandation: Před otevřením registrací všem se ujistěte, že máte vhodný a reaktivní moderační tým! preamble: Mějte pod kontrolou, kdo může vytvořit účet na vašem serveru. title: Registrace registrations_mode: modes: - approved: Pro registraci je vyžadováno schválení + approved: Schválení požadované pro registraci none: Nikdo se nemůže registrovat open: Kdokoliv se může registrovat + warning_hint: Doporučujeme použít "Schválení požadované pro registraci", pokud si nejste jistí, že váš moderační tým dokáže včas zpracovat spam a škodlivé registrace. security: authorized_fetch: Vyžadovat autentizaci od federovaných serverů + authorized_fetch_hint: Vyžadování ověřování pravosti od federalizovaných serverů umožňuje přísnější prosazování uživatelských i serverních bloků. K tomu však dochází k snížení výkonu, snižení dosah vašich odpovědí a můžou se zavést problémy s kompatibilitou s některými federálními službami. Kromě toho to nebude bránit oddaným uživatelům či robotům v načítání vašich veřejných příspěvků a účtů. authorized_fetch_overridden_hint: Momentálně nemůžete změnit toto nastavení, protože je přepsáno proměnnou prostředí. + federation_authentication: Uplatnění ověřování pravosti federace title: Nastavení serveru site_uploads: delete: Odstranit nahraný soubor destroyed_msg: Upload stránky byl úspěšně smazán! software_updates: critical_update: Kritické — aktualizujte, prosím, co nejdříve + description: Doporučujeme udržovat vaši instalaci Mastodonu aktuální, aby se využily nejnovější opravy a funkce. Kromě toho je někdy velmi důležité včas aktualizovat Mastodon, aby se předešlo bezpečnostním problémům. Z těchto důvodů Mastodon kontroluje aktualizace každých 30 minut a bude vás informovat podle nastavení e-mailových oznámení. documentation_link: Zjistit více release_notes: Poznámky k vydání title: Dostupné aktualizace @@ -997,6 +1004,9 @@ cs: title: Webhooky webhook: Webhook admin_mailer: + auto_close_registrations: + body: Kvůli nedostatku nedávných aktivit od moderátorů byly registrace na %{instance} automaticky přepnuty na vyžadující manuální kontrolu. aby se zabránilo použití %{instance} jako platformy pro potenciálně škodlivých hráčů. Můžete ji kdykoliv přepnout zpět na otevřené registrace. + subject: Registrace pro %{instance} byly automaticky přepnuty na vyžadující schválení new_appeal: actions: delete_statuses: smazání jeho příspěvků @@ -1072,8 +1082,12 @@ cs: hint_html: Ještě jedna věc! Musíme potvrdit, že jste člověk (to proto, abychom drželi stranou spam!). Vyřešte CAPTCHA níže a klikněte na "Pokračovat". title: Bezpečnostní kontrola confirmations: + awaiting_review: Vaše e-mailová adresa je potvrzena! Personál %{domain} nyní kontrolují vaši registraci. Pokud váš účet schválí, obdržíte e-mail! awaiting_review_title: Vaše registrace se ověřuje clicking_this_link: kliknutím na tento odkaz + login_link: přihlásit se + proceed_to_login_html: Nyní můžete pokračovat do %{login_link}. + redirect_to_app_html: Měli byste být přesměrováni do aplikace %{app_name}. Pokud se tak nestalo, zkuste %{clicking_this_link} nebo ručně se vrátit do aplikace. registration_complete: Vaše registrace na %{domain} je hotová! welcome_title: Vítám uživatele %{name}! wrong_email_hint: Pokud není e-mail správný, můžete si ho změnit v nastavení účtu. @@ -1244,7 +1258,7 @@ cs: date: Datum download: Stáhnout váš archiv hint_html: Můžete si vyžádat archiv vašich příspěvků a nahraných médií. Exportovaná data budou ve formátu ActivityPub a budou čitelná kterýmkoliv kompatibilním softwarem. Archiv si můžete vyžádat každých 7 dní. - in_progress: Kompiluji váš archiv… + in_progress: Kompilujeme váš archiv... request: Vyžádat váš archiv size: Velikost blocks: Blokujete @@ -1354,6 +1368,20 @@ cs: merge_long: Ponechat existující záznamy a přidat nové overwrite: Přepsat overwrite_long: Nahradit aktuální záznamy novými + overwrite_preambles: + blocking_html: Chystáte se nahradit váš seznam bloků s %{total_items} účtami od %{filename}. + bookmarks_html: Chystáte se nahradit své záložky s %{total_items} příspěvků z %{filename}. + domain_blocking_html: Chystáte se nahradit seznam stránek s %{total_items} stránek z %{filename}. + following_html: Chystáte se sledovat%{total_items} účtů z %{filename} a přestanete sledovat všechny ostatní. + lists_html: Chystáte se nahradit své seznamy obsahem %{filename}. Až %{total_items} účtů budou přidány do nových seznamů. + muting_html: Chystáte se nahradit seznam skrytých účtů s %{total_items} účtami z %{filename}. + preambles: + blocking_html: Chystáte se blokovat%{total_items} účtů z %{filename}. + bookmarks_html: Chystáte se přidat až %{total_items} příspěvků z %{filename} do vašich záložek. + domain_blocking_html: Chystáte se blokovat%{total_items} stránek z %{filename}. + following_html: Chystáte se sledovat%{total_items} účtů z %{filename}. + lists_html: Chystáte se přidat %{total_items} účtů z %{filename} do vaších seznamů. Nové seznamy budou vytvořeny, pokud neexistuje žádný seznam, do kterého by bylo možné přidat. + muting_html: Chystáte se skrýt%{total_items} účtů z %{filename}. preface: Můžete importovat data, která jste exportovali z jiného serveru, jako například seznam lidí, které sledujete či blokujete. recent_imports: Nedávné importy states: @@ -1369,8 +1397,12 @@ cs: bookmarks: Import záložek domain_blocking: Import blokovaných domén following: Import sledovaných účtů - muting: Import ztlumených účtů + lists: Příjmání seznamů + muting: Dovoz skrytých uživatelů type: Typ importu + type_groups: + constructive: Sledování a Záložky + destructive: Bloky & skrytí types: blocking: Seznam blokovaných bookmarks: Záložky @@ -1391,6 +1423,7 @@ cs: '86400': 1 den expires_in_prompt: Nikdy generate: Vygenerovat zvací odkaz + invalid: Tato pozvánka není platná invited_by: 'Pozval váš uživatel:' max_uses: few: "%{count} použití" @@ -1417,6 +1450,21 @@ cs: failed_sign_in_html: Neúspěšný pokus o přihlášení %{method} z %{ip} (%{browser}) successful_sign_in_html: Úspěšné přihlášení %{method} z %{ip} (%{browser}) title: Historie přihlášení + mail_subscriptions: + unsubscribe: + action: Ano, odeberte odběr + complete: Odběr byl odhlášen + confirmation_html: Opravdu nechcete dostávat %{type} pro Mastodon na %{domain} na váš e-mail %{email}? Vždy se můžete opět přihlásit do nastavení e-mailových oznámení. + emails: + notification_emails: + favourite: e-mailové oznámení při oblíbení + follow: e-mailové oznámení při sledování + follow_request: e-mail při žádost o sledování + mention: e-mailové oznámení při zmínění + reblog: e-mailové oznámení při boostu + resubscribe_html: Při omylu se můžete znovu přihlásit do vaších nastavení e-mailových oznámení. + success_html: Již nebudete dostávat %{type} pro Mastodon na %{domain} na vaší e-mailové adrese %{email}. + title: Odhlásit odběr media_attachments: validations: images_and_video: K příspěvku, který již obsahuje obrázky, nelze připojit video @@ -1496,6 +1544,7 @@ cs: update: subject: Uživatel %{name} upravil příspěvek notifications: + administration_emails: E-mailová oznámení administrátora email_events: Události pro e-mailová oznámení email_events_hint: 'Vyberte události, pro které chcete dostávat oznámení:' other_settings: Další nastavení oznámení @@ -1554,6 +1603,9 @@ cs: errors: limit_reached: Dosažen limit různých reakcí unrecognized_emoji: není známý smajlík + redirects: + prompt: Pokud tomuto odkazu důvěřujete, klikněte na něj a pokračujte. + title: Odcházíte z %{instance}. relationships: activity: Aktivita účtu confirm_follow_selected_followers: Jste si jisti, že chcete sledovat vybrané sledující? @@ -1616,6 +1668,7 @@ cs: unknown_browser: Neznámý prohlížeč weibo: Weibo current_session: Aktuální relace + date: Datum description: "%{browser} na systému %{platform}" explanation: Tohle jsou webové prohlížeče aktuálně přihlášené na váš účet Mastodon. ip: IP adresa @@ -1772,8 +1825,10 @@ cs: default: "%d. %b %Y, %H:%M" month: "%b %Y" time: "%H:%M" + with_time_zone: "%b %d, %Y, %H:%M %Z" translation: errors: + quota_exceeded: Byla vyčerpaná kvóta pro využívání překládací služby na úrovni serveru. too_many_requests: Na překladatelskou službu bylo zasláno v poslední době příliš mnoho požadavků. two_factor_authentication: add: Přidat @@ -1792,16 +1847,27 @@ cs: webauthn: Bezpečnostní klíče user_mailer: appeal_approved: + action: Možnosti Účtu explanation: Odvolání proti prohřešku vašeho účtu ze dne %{strike_date}, které jste podali %{appeal_date}, bylo schváleno. Váš účet je opět v pořádku. subject: Vaše odvolání ze dne %{date} bylo schváleno + subtitle: Váš účet je opět v dobrém stavu. title: Odvolání schváleno appeal_rejected: explanation: Odvolání proti prohřešku vašeho účtu ze dne %{strike_date}, které jste podali %{appeal_date}, bylo zamítnuto. subject: Vaše odvolání z %{date} bylo zamítnuto + subtitle: Vaše odvolání bylo zamítnuto. title: Odvolání zamítnuto backup_ready: + explanation: Požádali jste o úplnou zálohu vašeho účtu Mastodon. + extra: Nyní je připraven ke stažení! subject: Váš archiv je připraven ke stažení title: Stažení archivu + failed_2fa: + details: 'Zde jsou podrobnosti o pokusu o přihlášení:' + explanation: Někdo se pokusil přihlásit k vašemu účtu, ale poskytl neplatný token Dvoufázového ověření. + further_actions_html: Pokud jste to nebyl, doporučujeme vám okamžitě %{action}, protože váš účet mohl být napaden. + subject: Druhý omyl při Dvoufázovém ověření + title: Omyl při Dvoufázovém ověření suspicious_sign_in: change_password: změnit vaše heslo details: 'Tady jsou detaily přihášení:' @@ -1844,10 +1910,6 @@ cs: edit_profile_action: Nastavit profil edit_profile_step: Váš profil si můžete přizpůsobit nahráním profilového obrázku, změnou zobrazovaného jména a dalším. Můžete se přihlásit k přezkoumání nových následovatelů, než vás budou moci následovat. explanation: Zde je pár tipů do začátku - final_action: Začít psát - final_step: 'Začněte psát příspěvky! I bez sledujících mohou vaše veřejné příspěvky vidět ostatní, například na místní časové ose nebo v hashtagu. Možná se budete chtít představit na hashtagu #představení.' - full_handle: Vaše celá adresa profilu - full_handle_hint: Tohle je, co byste řekli svým přátelům, aby vám mohli posílat zprávy nebo vás sledovat z jiného serveru. subject: Vítejte na Mastodonu title: Vítejte na palubě, %{name}! users: @@ -1855,10 +1917,13 @@ cs: go_to_sso_account_settings: Přejděte do nastavení účtu poskytovatele identity invalid_otp_token: Neplatný kód pro dvoufázové ověřování otp_lost_help_html: Pokud jste ztratili přístup k oběma, spojte se s %{email} + rate_limited: Příliš mnoho pokusů o ověření, zkuste to znovu později. seamless_external_login: Jste přihlášeni přes externí službu, nastavení hesla a e-mailu proto nejsou dostupná. signed_in_as: 'Přihlášeni jako:' verification: + extra_instructions_html: Tip: Odkaz na vaší webové stránce může být neviditelný. Důležitou součástí je rel="me", která brání proti napodování vás na webových stránkách s obsahem vytvořeným uživatelem. Můžete dokonce použít odkaz v záhlaví stránky místo a, ale HTML musí být přístupné bez spuštění JavaScript. here_is_how: Jak na to + hint_html: "Ověření Vaší identity na Mastodonu je pro každého výborné. Na základě otevřených webových standardů, nyní a navždy zdarma. Jediné, co potřebujete, je osobní webová stránka, na které vás lidé poznají. Když odkazujete na tuto stránku z vašeho profilu, zkontrolujeme, zda webové stránky odkazují na váš profil a zobrazí na něm vizuální indikátor." instructions_html: Zkopírujte a vložte níže uvedený kód do HTML vašeho webu. Poté přidejte adresu vašeho webu do jednoho z extra políček na vašem profilu na záložce "Upravit profil" a uložte změny. verification: Ověření verified_links: Vaše ověřené odkazy diff --git a/config/locales/cy.yml b/config/locales/cy.yml index 768dd3e0c8..19343146f3 100644 --- a/config/locales/cy.yml +++ b/config/locales/cy.yml @@ -823,6 +823,7 @@ cy: disabled: I neb users: I ddefnyddwyr lleol wedi'u mewngofnodi registrations: + moderation_recommandation: Gwnewch yn siŵr bod gennych chi dîm cymedroli digonol ac adweithiol cyn i chi agor cofrestriadau i bawb! preamble: Rheoli pwy all greu cyfrif ar eich gweinydd. title: Cofrestriadau registrations_mode: @@ -830,6 +831,7 @@ cy: approved: Mae angen cymeradwyaeth i gofrestru none: Nid oes neb yn gallu cofrestru open: Gall unrhyw un cofrestru + warning_hint: Rydym yn argymell defnyddio “Mae angen cymeradwyaeth ar gyfer cofrestru” oni bai eich bod yn hyderus y gall eich tîm cymedroli ymdrin â chofrestriadau sbam a rhai maleisus mewn modd amserol. security: authorized_fetch: Mae angen dilysu gan weinyddion ffederal authorized_fetch_hint: Mae gofyn am ddilysiad gan weinyddion ffederal yn galluogi gorfodi llymach ar flociau lefel defnyddiwr a lefel gweinydd. Fodd bynnag, daw hyn ar gost perfformiad arafach, mae'n lleihau cyrhaeddiad eich atebion, a gall gyflwyno materion cydnawsedd gyda rhai gwasanaethau ffederal. Yn ogystal, ni fydd hyn yn atal actorion ymroddedig rhag estyn eich postiadau a'ch cyfrifon cyhoeddus. @@ -1038,6 +1040,9 @@ cy: title: Bachau Gwe webhook: Bachyn Gwe admin_mailer: + auto_close_registrations: + body: Oherwydd diffyg gweithgarwch cymedrolwr diweddar, mae cofrestriadau ar %{instance} wedi'u newid yn awtomatig i'r angen i gael adolygiad â llaw, er mwyn atal %{instance} rhag cael ei ddefnyddio fel llwyfan ar gyfer actorion drwg posibl. Gallwch ei newid yn ôl i agor cofrestriadau ar unrhyw adeg. + subject: Mae cofrestriadau ar gyfer %{instance} wedi'u newid yn awtomatig i'r angen i gael cymeradwyaeth new_appeal: actions: delete_statuses: i ddileu eu postiadau @@ -1650,6 +1655,9 @@ cy: errors: limit_reached: Cyrhaeddwyd terfyn y gwahanol adweithiau unrecognized_emoji: nid yw'n emoji cydnabyddedig + redirects: + prompt: Os ydych chi'n ymddiried yn y ddolen hon, cliciwch arni i barhau. + title: Rydych chi'n gadael %{instance}. relationships: activity: Gweithgareddau cyfrif confirm_follow_selected_followers: Ydych chi'n siŵr eich bod am ddilyn y dilynwyr a ddewiswyd? @@ -1911,13 +1919,19 @@ cy: appeal_rejected: explanation: Mae apêl y rhybudd yn erbyn eich cyfrif ar %{strike_date} a gyflwynwyd gennych ar %{appeal_date} wedi'i gwrthod. subject: Mae eich apêl ar %{date} wedi'i gwrthod - subtitle: Mae eich apêl wedi'i gwrthod + subtitle: Mae eich apêl wedi'i gwrthod. title: Mae'r apêl wedi'i gwrthod backup_ready: explanation: Rydych wedi gofyn am gopi wrth gefn llawn o'ch cyfrif Mastodon. extra: Mae nawr yn barod i'w lwytho i lawr! subject: Mae eich archif yn barod i'w lawrlwytho title: Allfudo archif + failed_2fa: + details: 'Dyma fanylion yr ymgais i fewngofnodi:' + explanation: Mae rhywun wedi ceisio mewngofnodi i'ch cyfrif ond wedi darparu ail ffactor dilysu annilys. + further_actions_html: Os nad chi oedd hwn, rydym yn argymell eich bod yn %{action} ar unwaith oherwydd gall fod o dan fygythiad. + subject: Methiant dilysu ail ffactor + title: Wedi methu dilysu ail ffactor suspicious_sign_in: change_password: newidiwch eich cyfrinair details: 'Dyma fanylion y mewngofnodi:' @@ -1960,10 +1974,6 @@ cy: edit_profile_action: Sefydlu proffil edit_profile_step: Gallwch addasu'ch proffil trwy lwytho llun proffil, newid eich enw dangos a mwy. Gallwch ddewis i adolygu dilynwyr newydd cyn iddyn nhw gael caniatâd i'ch dilyn. explanation: Dyma ambell nodyn i'ch helpu i ddechrau - final_action: Dechrau postio - final_step: 'Dechreuwch bostio! Hyd yn oed heb ddilynwyr, efallai y bydd eraill yn gweld eich postiadau cyhoeddus, er enghraifft ar y ffrwd leol neu mewn hashnodau. Efallai y byddwch am gyflwyno eich hun ar yr hashnod #cyflwyniadau neu/a #introductions.' - full_handle: Eich enw llawn - full_handle_hint: Dyma beth fyddech chi'n ei ddweud wrth eich ffrindiau fel y gallant anfon neges neu eich dilyn o weinydd arall. subject: Croeso i Mastodon title: Croeso, %{name}! users: @@ -1971,6 +1981,7 @@ cy: go_to_sso_account_settings: Ewch i osodiadau cyfrif eich darparwr hunaniaeth invalid_otp_token: Côd dau-ffactor annilys otp_lost_help_html: Os colloch chi fynediad i'r ddau, mae modd i chi gysylltu a %{email} + rate_limited: Gormod o geisiadau dilysu, ceisiwch eto yn nes ymlaen. seamless_external_login: Yr ydych wedi'ch mewngofnodi drwy wasanaeth allanol, felly nid yw gosodiadau cyfrinair ac e-bost ar gael. signed_in_as: 'Wedi mewngofnodi fel:' verification: diff --git a/config/locales/da.yml b/config/locales/da.yml index 57899d5f71..62e28cef16 100644 --- a/config/locales/da.yml +++ b/config/locales/da.yml @@ -500,7 +500,7 @@ da: instance_accounts_dimension: Mest fulgte konti instance_accounts_measure: gemte konti instance_followers_measure: vores følgere dér - instance_follows_measure: deres følgere dér + instance_follows_measure: deres følgere her instance_languages_dimension: Topsprog instance_media_attachments_measure: gemte medievedhæftninger instance_reports_measure: anmeldelser af dem @@ -767,6 +767,7 @@ da: disabled: Til ingen users: Til indloggede lokale brugere registrations: + moderation_recommandation: Sørg for, at der er et tilstrækkeligt og reaktivt moderationsteam, før registrering åbnes for alle! preamble: Styr, hvem der kan oprette en konto på serveren. title: Registreringer registrations_mode: @@ -774,6 +775,7 @@ da: approved: Tilmeldingsgodkendelse kræves none: Ingen kan tilmelde sig open: Alle kan tilmelde sig + warning_hint: Brug af "Godkendelse kræves ved tilmelding" anbefales, medmindre man er sikker på, at moderationsteamet kan håndtere spam og ondsindede registreringer i tide. security: authorized_fetch: Kræver godkendelse fra fødererede servere authorized_fetch_hint: Krav om godkendelse fra fødererede servere muliggør strengere håndhævelse af både bruger- og serverniveaublokeringer. Omkostningen er dog en ydelsesreduktion, reduceret udstrækning af dine svar samt potentielle kompatibilitetsproblemer med visse fødererede tjenester. Derudover vil dette ikke hindre målrettede aktører i at hente dine offentlige indlæg og konti. @@ -966,6 +968,9 @@ da: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: Grundet manglende nylig moderatoraktivitet er registreringsproceduren på %{instance} automatisk ændret til at kræve manuel gennemgang for at forhindre, at %{instance} bruges som platform for potentielle dårlige aktører. Proceduren kan til enhver tid ændre igen til åbne registreringer. + subject: Registreringsproceduren for %{instance} er automatisk ændret til at kræve godkendelse new_appeal: actions: delete_statuses: for sletning af vedkommendes indlæg @@ -1440,7 +1445,7 @@ da: before: 'Inder der fortsættes, læs venligst disse notater omhyggeligt:' cooldown: Efter flytningen er der en venteperiode, hvor kontoen ikke kan flyttes igen disabled_account: Efterfølgende er din nuværende konto ikke fuldt funktionsdygtig, der er dog adgang til dataeksport samt genaktivering. - followers: Denne handling vil flytte alle følgere fra den aktuelle konto til den nye ditto + followers: Denne handling vil flytte alle følgere fra den aktuelle konto til den nye konto only_redirect_html: Alternativt kan du oprette en omdirigering for din profil alene. other_data: Ingen øvrige data flyttes automatisk redirect: Din nuværende kontoprofil opdateres med en omdirigeringsnotits og ekskluderes fra søgninger @@ -1841,10 +1846,6 @@ da: edit_profile_action: Opsæt profil edit_profile_step: Man kan tilpasse sin profil ved at uploade profilfoto, overskrift, ændre visningsnavn mv. Ønskes nye følgere vurderet, før de må følge dig, kan kontoen låses. explanation: Her er nogle råd for at få dig i gang - final_action: Begynd at poste - final_step: 'Begynd at poste! Selv uden følgere vil offentlige indlæg kunne ses af andre f.eks. på den lokale tidslinje og i hashtags. Man kan introducere sig selv via hastagget #introductions.' - full_handle: Dit fulde brugernavn - full_handle_hint: Dette er, hvad du oplyser til dine venner, så de kan sende dig beskeder eller følge dig fra andre servere. subject: Velkommen til Mastodon title: Velkommen ombord, %{name}! users: diff --git a/config/locales/de.yml b/config/locales/de.yml index b77f415190..123942672e 100644 --- a/config/locales/de.yml +++ b/config/locales/de.yml @@ -767,6 +767,7 @@ de: disabled: Niemandem users: Für angemeldete lokale Benutzer*innen registrations: + moderation_recommandation: Bitte vergewissere dich, dass du ein geeignetes und reaktionsschnelles Moderationsteam hast, bevor du die Registrierungen uneingeschränkt zulässt! preamble: Lege fest, wer auf deinem Server ein Konto erstellen darf. title: Registrierungen registrations_mode: @@ -774,6 +775,7 @@ de: approved: Registrierung muss genehmigt werden none: Niemand darf sich registrieren open: Alle können sich registrieren + warning_hint: Wir empfehlen die Einstellung „Registrierung muss genehmigt werden“ zu verwenden, es sei denn, du bist dir sicher, dass dein Moderationsteam Spam und böswillige Registrierungen rechtzeitig bearbeiten kann. security: authorized_fetch: Authentisierung von föderierten Servern erforderlich machen authorized_fetch_hint: Das Anfordern einer Authentisierung von föderierten Servern ermöglicht ein strengeres Durchsetzen von Sperren sowohl auf Ebene der Benutzer*innen als auch des Servers. Allerdings ist das mit Leistungseinbußen verbunden, reduziert die Reichweite deiner Antworten und kann zu Kompatibilitätsproblemen mit einigen föderierten Diensten führen. Darüber hinaus wird das Abrufen deiner öffentlichen Beiträge und Konten durch spezialisierte Akteur*innen nicht verhindert. @@ -966,6 +968,9 @@ de: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: Aufgrund fehlender Aktivität von Moderator*innen müssen neue Registrierungen auf %{instance} jetzt manuell genehmigt werden. Dies wurde automatisch umgestellt, damit %{instance} nicht als Plattform für Böswillige missbraucht werden kann. Du kannst jederzeit auf uneingeschränkte Registrierungen zurückwechseln. + subject: Registrierungen auf %{instance} müssen ab jetzt manuell genehmigt werden (automatisch umgestellt) new_appeal: actions: delete_statuses: das Löschen der Beiträge @@ -979,7 +984,7 @@ de: next_steps: Du kannst dem Einspruch zustimmen, um die Moderationsentscheidung rückgängig zu machen, oder ihn ignorieren. subject: "%{username} hat Einspruch gegen eine Moderationsentscheidung auf %{instance} erhoben" new_critical_software_updates: - body: Kritische Updates wurden für Mastodon veröffentlicht – du solltest so schnell wie möglich aktualisieren! + body: ein neues Sicherheitsupdate wurde veröffentlicht. Du solltest Mastodon so schnell wie möglich aktualisieren! subject: Kritische Mastodon-Updates sind für %{instance} verfügbar! new_pending_account: body: Die Details von diesem neuem Konto sind unten. Du kannst die Anfrage akzeptieren oder ablehnen. @@ -1023,7 +1028,7 @@ de: salutation: "%{name}," settings: 'E-Mail-Einstellungen ändern: %{link}' unsubscribe: Abbestellen - view: 'Hier überprüfen:' + view: 'Siehe:' view_profile: Profil anzeigen view_status: Beitrag anschauen applications: @@ -1841,10 +1846,6 @@ de: edit_profile_action: Profil einrichten edit_profile_step: Du kannst dein Profil anpassen, indem du ein Profilbild hochlädst, deinen Anzeigenamen änderst und vieles mehr. Du kannst dich dafür entscheiden, neue Follower zu überprüfen, bevor sie dir folgen dürfen. explanation: Hier sind ein paar Tipps, um loszulegen - final_action: Mit erstem Beitrag starten - final_step: 'Fang jetzt an zu posten! Selbst ohne Follower werden deine öffentlichen Beiträge von anderen gesehen, zum Beispiel in der lokalen Timeline oder über die Hashtags. Möglicherweise möchtest du dich allen mit dem Hashtag #neuhier vorstellen.' - full_handle: Dein vollständiger Profilname - full_handle_hint: Deinen vollständigen Profilnamen kannst du deinen Freund*innen mitteilen, damit sie dich anschreiben oder dir von einem anderen Server folgen können. subject: Willkommen bei Mastodon! title: Willkommen an Bord, %{name}! users: diff --git a/config/locales/devise.ar.yml b/config/locales/devise.ar.yml index 28e721e667..4e6adf42e5 100644 --- a/config/locales/devise.ar.yml +++ b/config/locales/devise.ar.yml @@ -47,14 +47,19 @@ ar: subject: 'ماستدون: تعليمات استعادة كلمة المرور' title: إعادة تعيين كلمة السر two_factor_disabled: + explanation: أصبح الولوج الآن ممكنا باستخدام عنوان البريد الإلكتروني وكلمة المرور فقط. subject: 'ماستدون: نظام المصادقة بخطوتين مُعطّل' + subtitle: تم تعطيل المصادقة بعاملين لحسابك. title: إنّ 2FA معطّل two_factor_enabled: + explanation: سيتعين استخدام رمز يتم إنشاؤه بواسطة تطبيق TOTP المقترن لتسجيل الدخول. subject: 'ماستدون: تم تفعيل نظام المصادقة بخطوتين' - title: إنّ 2FA نشِط + subtitle: تم تفعيل المصادقة الثنائية لحسابك. + title: الاستيثاق الثنائي 2FA مُفعّل two_factor_recovery_codes_changed: explanation: لقد تم إلغاء رموز الاسترداد السابقة وأنشئت رموز جديدة. subject: 'ماستدون: تم إعادة توليد رموز استرجاع المصادقة بخطوتين' + subtitle: تم إبطال رموز الاسترداد السابقة وإنشاء رموز جديدة. title: تم استبدال رموز استرجاع 2FA unlock_instructions: subject: 'ماستدون: تعليمات فك القفل' @@ -68,9 +73,13 @@ ar: subject: 'ماستدون: تم حذف مفتاح الأمان' title: تم حذف أحد مفاتيح الأمان الخاصة بك webauthn_disabled: + explanation: تم تعطيل المصادقة باستخدام مفاتيح الأمان لحسابك. + extra: يمكن الآن تسجيل الدخول باستخدام الرمز المميز الذي تم إنشاؤه بواسطة تطبيق TOTP المقترن فقط. subject: 'ماستدون: الاستيثاق مع مفاتيح الأمان معطلة' title: مفاتيح الأمان معطلة webauthn_enabled: + explanation: تم تمكين مصادقة مفتاح الأمان لحسابك. + extra: يمكن الآن استخدام مفتاح الأمان الخاص بك لتسجيل الدخول. subject: 'ماستدون: تم تفعيل نظام استيثاق مفتاح الأمان' title: مفاتيح الأمان مفعلة omniauth_callbacks: diff --git a/config/locales/devise.be.yml b/config/locales/devise.be.yml index 8679275c20..81f3120a88 100644 --- a/config/locales/devise.be.yml +++ b/config/locales/devise.be.yml @@ -12,6 +12,7 @@ be: last_attempt: У вас ёсць яшчэ адна спроба, перш чым ваш рахунак будзе заблакаваны locked: Ваш уліковы запіс заблакіраваны. not_found_in_database: Няправільны %{authentication_keys} або пароль. + omniauth_user_creation_failure: Памылка пры стварэнні ўліковага запісу для гэтай асобы. pending: Ваш уліковы запіс яшчэ разглядаецца. timeout: Ваш сеанс скончыўся. Каб працягнуць, увайдзіце яшчэ раз. unauthenticated: Вам патрэбна зайсьці альбо зарэгістравацца, каб працягнуць @@ -47,14 +48,19 @@ be: subject: 'Mastodon: Інструкцыі па скіданню пароля' title: Скіданне пароля two_factor_disabled: + explanation: Уваход у сістэму цяпер магчымы толькі з выкарыстаннем адраса электроннай пошты і пароля. subject: 'Mastodon: двухфактарная аўтэнтыфікацыя адключана' + subtitle: Двухфактарная аўтэнтыфікацыя для вашага ўліковага запісу была адключаная. title: двухэтапнае спраўджанне адключана two_factor_enabled: + explanation: Для ўваходу ў сістэму патрабуецца токен, згенераваны спалучанай праграмай TOTP. subject: 'Mastodon: двухфактарная аўтэнтыфікацыя ўключана' + subtitle: Для вашага ўліковага запісу была ўключаная двухфактарная аўтэнтыфікацыя. title: двухэтапнае спраўджанне уключана two_factor_recovery_codes_changed: explanation: Папярэднія коды аднаўлення былі ануляваны і створаны новыя. subject: 'Mastodon: створаны новыя коды аднаўлення' + subtitle: Папярэднія коды аднаўлення былі ануляваны і замест іх створаны новыя. title: 2FA коды аднаўлення былі зменены unlock_instructions: subject: 'Mastodon: інструкцыя па разблакаванні' @@ -68,9 +74,13 @@ be: subject: 'Mastodon: ключ бяспекі выдалены' title: Адзін з вашых ключоў бяспекі быў выдалены webauthn_disabled: + explanation: Аўтэнтыфікацыя з дапамогай ключоў бяспекі была адключаная для вашага ўліковага запісу. + extra: Зараз уваход у сістэму магчымы толькі з выкарыстаннем токена, згенераванага спалучанай праграмай TOTP. subject: 'Mastodon: Аўтэнтыфікацыя з дапамогай ключоў бяспекі адключана' title: Ключы бяспекі адключаны webauthn_enabled: + explanation: Для вашага ўліковага запісу ўключана аўтэнтыфікацыя па ключу бяспекі. + extra: Цяпер ваш ключ бяспекі можна выкарыстоўваць для ўваходу ў сістэму. subject: 'Mastodon: Аўтэнтыфікацыя праз ключ бяспекі была ўключана' title: Ключы бяспекі ўключаны omniauth_callbacks: diff --git a/config/locales/devise.bg.yml b/config/locales/devise.bg.yml index f3586bcd85..116939762c 100644 --- a/config/locales/devise.bg.yml +++ b/config/locales/devise.bg.yml @@ -12,6 +12,7 @@ bg: last_attempt: Разполагате с още един опит преди акаунтът ви да се заключи. locked: Вашият акаунт е заключен. not_found_in_database: Невалиден %{authentication_keys} или парола. + omniauth_user_creation_failure: Грешка, сътворявайки акаунт за тази самоличност. pending: Вашият акаунт все още е в процес на проверка. timeout: Заседанието ви изтече. Влезте пак, за да продължите. unauthenticated: Преди да продължите, трябва да влезете или да се регистрирате. diff --git a/config/locales/devise.br.yml b/config/locales/devise.br.yml index 205e11e797..cb406e5f5e 100644 --- a/config/locales/devise.br.yml +++ b/config/locales/devise.br.yml @@ -19,7 +19,7 @@ br: mailer: confirmation_instructions: action: Gwiriekaat ar chomlec'h postel - action_with_app: Kadarnaat ha distroiñ da %{app} + action_with_app: Kadarnaat ha distreiñ da %{app} explanation: Krouet ho peus ur c'hont war %{host} gant ar chomlec'h-postel-mañ. N'eus nemet ur c'hlik evit bevaat anezhañ. Ma ne oa ket krouet ganeoc'h, dianavezit ar postel-se. explanation_when_pending: Enskrivañ ho peus d'ur c'hemennad da %{host} gant ar chomlec'h-postel-se. Pa vo kadarnaet ho chomlec'h-postel, hoc'h enskrivadur a vo asantet. Gallout a rit mont-tre evit kemmañ munudoù ho kont pe skarzhañ anezhañ, met ne c'hellit ket implijout ul lod eus an aezamantoù par ma n'eo ket asantet ho kont. Ma vefe hoc'h enskrivadur nac'het, ho keloù a vefe skarzhet, neuze ne vo ket ret deoc'h ober netra ken. Ma ne oa ket ac'hanoc'h, dianavezit ar postel-se. extra_html: Mar plij, gwiriit ivez reolennoù ar servijer ha hon divizoù-implij. diff --git a/config/locales/devise.ca.yml b/config/locales/devise.ca.yml index 3720d3c5f7..9b4ccccff7 100644 --- a/config/locales/devise.ca.yml +++ b/config/locales/devise.ca.yml @@ -14,6 +14,7 @@ ca: last_attempt: Tens un intent més abans no es bloqui el teu compte. locked: El teu compte s'ha blocat. not_found_in_database: "%{authentication_keys} o contrasenya no són vàlids." + omniauth_user_creation_failure: S'ha produït un error en crear un compte per a aquesta identitat. pending: El teu compte encara està en revisió. timeout: La teva sessió ha expirat. Torna a iniciar-la per a continuar. unauthenticated: Necessites iniciar sessió o registrar-te abans de continuar. diff --git a/config/locales/devise.cs.yml b/config/locales/devise.cs.yml index fb3893325c..4dbc2e08bf 100644 --- a/config/locales/devise.cs.yml +++ b/config/locales/devise.cs.yml @@ -12,6 +12,7 @@ cs: last_attempt: Máte ještě jeden pokus, než bude váš účet uzamčen. locked: Váš účet je uzamčen. not_found_in_database: Neplatné %{authentication_keys} nebo heslo. + omniauth_user_creation_failure: Při vytvoření účtu pro tuto identitu se nastala chyba. pending: Váš účet je stále posuzován. timeout: Vaše relace vypršela. Pro pokračování se prosím přihlaste znovu. unauthenticated: Před pokračováním se musíte přihlásit nebo zaregistrovat. @@ -47,15 +48,20 @@ cs: subject: 'Mastodon: Instrukce pro obnovení hesla' title: Obnovení hesla two_factor_disabled: + explanation: Přihlášení je nyní možné pouze pomocí emailové adresy a hesla. subject: 'Mastodon: Dvoufázové ověření bylo vypnuto' - title: 2FA bylo vypnuto + subtitle: Dvoufaktorové ověřování vašeho účtu bylo vypnuto. + title: Dvoufázové ověření bylo vypnuto two_factor_enabled: + explanation: Pro přihlášení bude vyžadován token generovaný spárovanou TOTP aplikací. subject: 'Mastodon: Dvoufázové ověření bylo zapnuto' - title: 2FA bylo zapnuto + subtitle: Dvoufaktorové ověřování vašeho účtu bylo zapnuto. + title: Dvoufázové ověření bylo zapnuto two_factor_recovery_codes_changed: explanation: Předchozí záložní kódy byly zrušeny a byly vygenerovány nové. - subject: 'Mastodon: Dvoufázové záložní kódy byly znovu vygenerovány' - title: Záložní kódy pro 2FA byly změněny + subject: 'Mastodon: Záložní kódy pro dvoufázové ověření byly znovu vygenerovány' + subtitle: Předchozí záložní kódy byly zrušeny a byly vygenerovány nové. + title: Záložní kódy pro dvoufázové ověření byly změněny unlock_instructions: subject: 'Mastodon: Instrukce pro odemčení účtu' webauthn_credential: @@ -68,9 +74,13 @@ cs: subject: 'Mastodon: Bezpečnostní klíč byl smazán' title: Jeden z vašich bezpečnostních klíčů byl smazán webauthn_disabled: - subject: 'Mastodon: Přihlašování bezpečnostními klíči bylo vypnuto' + explanation: 'Mastodon: Přihlašování pomocí bezpečnostními klíčemi bylo pro váš účet vypnuto.' + extra: Přihlášení je nyní možné pouze pomocí tokenem vygenerovaný spárovanou TOTP aplikací. + subject: 'Mastodon: Přihlašování pomocí bezpečnostními klíčemi bylo vypnuto' title: Bezpečnostní klíče byly zakázány webauthn_enabled: + explanation: 'Mastodon: Přihlašování bezpečnostními klíči bylo pro váš účet povoleno.' + extra: Váš bezpečnostní klíč nyní může být použit pro přihlášení. subject: 'Mastodon: Přihlašování bezpečnostními klíči bylo povoleno' title: Bezpečnostní klíče byly povoleny omniauth_callbacks: diff --git a/config/locales/devise.cy.yml b/config/locales/devise.cy.yml index d3eeb8eeb6..523ae70b04 100644 --- a/config/locales/devise.cy.yml +++ b/config/locales/devise.cy.yml @@ -12,6 +12,7 @@ cy: last_attempt: Mae gennych un cyfle arall cyn i'ch cyfrif gael ei gloi. locked: Mae eich cyfrif wedi ei gloi. not_found_in_database: "%{authentication_keys} neu gyfrinair annilys." + omniauth_user_creation_failure: Gwall wrth greu cyfrif ar gyfer yr hunaniaeth hon. pending: Mae eich cyfrif dal o dan adolygiad. timeout: Mae eich sesiwn wedi dod i ben. Mewngofnodwch eto i barhau. unauthenticated: Mae angen i chi fewngofnodi neu gofrestru cyn parhau. diff --git a/config/locales/devise.da.yml b/config/locales/devise.da.yml index daf802cdb7..c472242ba7 100644 --- a/config/locales/devise.da.yml +++ b/config/locales/devise.da.yml @@ -12,6 +12,7 @@ da: last_attempt: Du har ét forsøg mere, før din konto bliver låst. locked: Din konto er låst. not_found_in_database: Ugyldig %{authentication_keys} eller adgangskode. + omniauth_user_creation_failure: Fejl under oprettelse af konto for denne identitet. pending: Din konto er stadig under revision. timeout: Session udløbet. Log ind igen for at fortsætte. unauthenticated: Log ind eller tilmeld dig for at fortsætte. diff --git a/config/locales/devise.de.yml b/config/locales/devise.de.yml index cf05ddc16b..7982f8a743 100644 --- a/config/locales/devise.de.yml +++ b/config/locales/devise.de.yml @@ -12,6 +12,7 @@ de: last_attempt: Du hast nur noch einen Versuch, bevor dein Zugang gesperrt wird. locked: Dein Konto ist gesperrt. not_found_in_database: "%{authentication_keys} oder Passwort ungültig." + omniauth_user_creation_failure: Fehler beim Erstellen eines Kontos für diese Identität. pending: Dein Konto wird weiterhin überprüft. timeout: Deine Sitzung ist abgelaufen. Bitte melde dich erneut an, um fortzufahren. unauthenticated: Du musst dich anmelden oder registrieren, bevor du fortfahren kannst. diff --git a/config/locales/devise.en-GB.yml b/config/locales/devise.en-GB.yml index 8fa02bbd4a..823be9aa6c 100644 --- a/config/locales/devise.en-GB.yml +++ b/config/locales/devise.en-GB.yml @@ -47,14 +47,19 @@ en-GB: subject: 'Mastodon: Reset password instructions' title: Password reset two_factor_disabled: + explanation: Login is now possible using only e-mail address and password. subject: 'Mastodon: Two-factor authentication disabled' + subtitle: Two-factor authentication for your account has been disabled. title: 2FA disabled two_factor_enabled: + explanation: A token generated by the paired TOTP app will be required for login. subject: 'Mastodon: Two-factor authentication enabled' + subtitle: Two-factor authentication has been enabled for your account. title: 2FA enabled two_factor_recovery_codes_changed: explanation: The previous recovery codes have been invalidated and new ones generated. subject: 'Mastodon: Two-factor recovery codes re-generated' + subtitle: The previous recovery codes have been invalidated and new ones generated. title: 2FA recovery codes changed unlock_instructions: subject: 'Mastodon: Unlock instructions' @@ -68,9 +73,13 @@ en-GB: subject: 'Mastodon: Security key deleted' title: One of your security keys has been deleted webauthn_disabled: + explanation: Authentication with security keys has been disabled for your account. + extra: Login is now possible using only the token generated by the paired TOTP app. subject: 'Mastodon: Authentication with security keys disabled' title: Security keys disabled webauthn_enabled: + explanation: Security key authentication has been enabled for your account. + extra: Your security key can now be used for login. subject: 'Mastodon: Security key authentication enabled' title: Security keys enabled omniauth_callbacks: diff --git a/config/locales/devise.en.yml b/config/locales/devise.en.yml index 4439397c8e..61bd33851b 100644 --- a/config/locales/devise.en.yml +++ b/config/locales/devise.en.yml @@ -12,6 +12,7 @@ en: last_attempt: You have one more attempt before your account is locked. locked: Your account is locked. not_found_in_database: Invalid %{authentication_keys} or password. + omniauth_user_creation_failure: Error creating an account for this identity. pending: Your account is still under review. timeout: Your session expired. Please login again to continue. unauthenticated: You need to login or sign up before continuing. diff --git a/config/locales/devise.es-AR.yml b/config/locales/devise.es-AR.yml index ca60ee5deb..6249294597 100644 --- a/config/locales/devise.es-AR.yml +++ b/config/locales/devise.es-AR.yml @@ -12,6 +12,7 @@ es-AR: last_attempt: Tenés un intento más antes de que se bloquee tu cuenta. locked: Se bloqueó tu cuenta. not_found_in_database: "%{authentication_keys} o contraseña no válidas." + omniauth_user_creation_failure: Error al crear una cuenta para esta identidad. pending: Tu cuenta todavía está bajo revisión. timeout: Venció tu sesión. Por favor, volvé a iniciar sesión para continuar. unauthenticated: Necesitás iniciar sesión o registrarte antes de continuar. diff --git a/config/locales/devise.es-MX.yml b/config/locales/devise.es-MX.yml index c4a7f319af..ac90412e85 100644 --- a/config/locales/devise.es-MX.yml +++ b/config/locales/devise.es-MX.yml @@ -12,6 +12,7 @@ es-MX: last_attempt: Tiene un intento más antes de que tu cuenta sea bloqueada. locked: Tu cuenta está bloqueada. not_found_in_database: Incorrecto %{authentication_keys} o contraseña. + omniauth_user_creation_failure: Error al crear una cuenta para esta identidad. pending: Su cuenta aun se encuentra bajo revisión. timeout: Su sesión ha expirado. Por favor inicie sesión de nuevo para continuar. unauthenticated: Necesita iniciar sesión o registrarse antes de continuar. diff --git a/config/locales/devise.es.yml b/config/locales/devise.es.yml index 642871710d..0d8fc0ac67 100644 --- a/config/locales/devise.es.yml +++ b/config/locales/devise.es.yml @@ -12,6 +12,7 @@ es: last_attempt: Tiene un intento más antes de que tu cuenta sea bloqueada. locked: Tu cuenta está bloqueada. not_found_in_database: Incorrecto %{authentication_keys} o contraseña. + omniauth_user_creation_failure: Error al crear una cuenta para esta identidad. pending: Su cuenta aun se encuentra bajo revisión. timeout: Tu sesión expiró. Por favor, inicia sesión nuevamente para continuar. unauthenticated: Necesitas iniciar sesión o registrarte antes de continuar. diff --git a/config/locales/devise.eu.yml b/config/locales/devise.eu.yml index 624f9ee93d..3e675659fe 100644 --- a/config/locales/devise.eu.yml +++ b/config/locales/devise.eu.yml @@ -12,6 +12,7 @@ eu: last_attempt: Saiakera bat geratzen zaizu zure kontua giltzapetu aurretik. locked: Zure kontua giltzapetuta dago. not_found_in_database: Baliogabeko %{authentication_keys} edo pasahitza. + omniauth_user_creation_failure: Errorea identitate honen kontu bat sortzean. pending: Zure kontua oraindik berrikusteke dago. timeout: Zure saioa iraungitu da. Hasi saioa berriro jarraitzeko. unauthenticated: Saioa hasi edo izena eman behar duzu jarraitu aurretik. diff --git a/config/locales/devise.fa.yml b/config/locales/devise.fa.yml index d4198626d4..c441e346a2 100644 --- a/config/locales/devise.fa.yml +++ b/config/locales/devise.fa.yml @@ -2,16 +2,17 @@ fa: devise: confirmations: - confirmed: نشانی ایمیل شما با موفقیت تأیید شد. - send_instructions: تا دقایقی دیگر ایمیلی خواهید گرفت که به شما می‌گوید چگونه باید نشانی ایمیل خود را تأیید کنید. اگر این ایمیل نیامد، لطفاً پوشهٔ هرزنامه‌هایتان را بررسی کنید. - send_paranoid_instructions: اگر ایمیل شما در پایگاه دادهٔ ما موجود باشد، تا دقایقی دیگر ایمیلی خواهید گرفت که به شما می‌گوید چگونه باید نشانی ایمیل خود را تأیید کنید. اگر این ایمیل نیامد، لطفاً پوشهٔ هرزنامه‌هایتان را بررسی کنید. + confirmed: نشانی رایانامه‌تان با موفقیت تأیید شد. + send_instructions: تا دقایقی دیگر رایانامه‌ای با دستورالعمل تأیید نشانی رایانامه‌تان دریافت خواهید کرد. اگر این رایانامه را نگرفتید، لطفاً پوشهٔ هرزنامه‌هایتان را بررسی کنید. + send_paranoid_instructions: اگر نشانی رایانامه‌تان در پایگاه داده‌مان وجود داشته باشد، تا دقایقی دیگر تا دقایقی دیگر رایانامه‌ای با دستورالعمل تأیید نشانی رایانامه‌تان دریافت خواهید کرد. اگر این رایانامه را نگرفتید، لطفاً پوشهٔ هرزنامه‌هایتان را بررسی کنید. failure: - already_authenticated: همین الآن هم وارد شده‌اید. - inactive: حساب شما هنوز فعال نشده است. + already_authenticated: از پیش وارد شده‌اید. + inactive: هنوز حسابتان فعّال نشده. invalid: "%{authentication_keys} یا گذرواژه نامعتبر." last_attempt: پیش از آن که حساب شما قفل شود، یک فرصت دیگر دارید. - locked: حساب شما قفل شده است. + locked: حسابتان قفل شده. not_found_in_database: "%{authentication_keys} یا گذرواژه نامعتبر." + omniauth_user_creation_failure: خطای ایجاد حسابی برای این هویت. pending: حساب شما همچنان در دست بررسی است. timeout: مهلت این ورود شما به سر رسید. برای ادامه، دوباره وارد شوید. unauthenticated: برای ادامه باید وارد شوید یا ثبت نام کنید. @@ -24,37 +25,42 @@ fa: explanation_when_pending: شما با این نشانی ایمیل برای %{host} درخواست دعوت‌نامه داده‌اید. اگر ایمیل خود را تأیید کنید، ما درخواست شما را بررسی خواهیم کرد. تا وقتی بررسی تمام نشده، شما نمی‌توانید به حساب خود وارد شوید. اگر درخواست شما رد شود، ما اطلاعاتی را که از شما داریم پاک خواهیم کرد پس نیازی به کاری از سمت شما نخواهد بود. اگر شما چنین درخواستی نداده‌اید، لطفاً این ایمیل را نادیده بگیرید. extra_html: لطفاً همچنین قوانین کارساز و شرایط خدمتمان را بررسی کنید. subject: 'ماستودون: دستورالعمل تأیید برای %{instance}' - title: تأیید نشانی ایمیل + title: تأیید نشانی رایانامه email_changed: - explanation: 'نشانی ایمیل حساب شما تغییر می‌کند به:' - extra: اگر شما ایمیل خود را عوض نکردید، شاید کسی به حساب شما دسترسی پیدا کرده است. در این صورت لطفاً هر چه زودتر گذرواژه حسابتان را عوض کنید. اگر گذرواژه‌تان دیگر کار نمی‌کند، لطفاً با مدیر سرور تماس بگیرید. - subject: 'ماستودون: نشانی ایمیل عوض شد' - title: نشانی ایمیل تازه + explanation: 'نشانی رایانامهٔ حسابتان تغییر می‌کند به:' + extra: اگر رایانامه‌تان را عوض نکرده‌اید، ممکن است کسی به حسابتان دسترسی پیدا کرده باشد. لطفاً فوراُ گذرواژه‌تان را عوض کرده و اگر از حسابتان بیرون مانده‌اید با مدیر کارساز تماس بگیرید. + subject: 'ماستودون: رایانامه عوض شد' + title: نشانی جدید رایانامه password_change: - explanation: گذرواژه حساب شما تغییر کرد. - extra: اگر شما گذرواژه حسابتان را تغییر ندادید، شاید کسی به حساب شما دسترسی پیدا کرده است. در این صورت لطفاً هر چه زودتر گذرواژه حسابتان را عوض کنید. اگر گذرواژه‌تان دیگر کار نمی‌کند، لطفاً با مدیر سرور تماس بگیرید. - subject: 'ماستودون: گذرواژه‌تان عوض شد' - title: گذرواژه‌تان عوض شد + explanation: گذرواژهٔ حسابتان عوض شده. + extra: اگر گذرواژه‌تان را عوض نکرده‌اید، ممکن است کسی به حسابتان دسترسی پیدا کرده باشد. لطفاً فوراُ گذرواژه‌تان را عوض کرده و اگر از حسابتان بیرون مانده‌اید با مدیر کارساز تماس بگیرید. + subject: 'ماستودون: گذرواژه عوض شد' + title: گذرواژه عوض شد reconfirmation_instructions: - explanation: نشانی تازه را تأیید کنید تا ایمیل‌تان عوض شود. - extra: اگر شما باعث این تغییر نبودید، لطفاً این ایمیل را نادیده بگیرید. تا زمانی که شما پیوند بالا را باز نکنید، نشانی ایمیل مربوط به حساب شما عوض نخواهد شد. + explanation: برای تغییر رایانامه‌تان نشانی جدید را تأیید کنید. + extra: اگر خودتان چنین درخواستی نداده‌اید لطفاً از این رایانامه چشم بپوشید. نشانی رایانامهٔ حساب ماستودون تا وقتی به پیوند بالا دسترسی پیدا نکنید عوض نخواهد شد. subject: 'ماستودون: تأیید رایانامه برای %{instance}' - title: تأیید نشانی ایمیل + title: تأیید نشانی رایانامه reset_password_instructions: action: تغییر گذرواژه - explanation: شما گذرواژه تازه‌ای برای حسابتان درخواست کردید. - extra: اگر شما چنین درخواستی نکردید، لطفاً این ایمیل را نادیده بگیرید. تا زمانی که شما پیوند بالا را باز نکنید و گذرواژه تازه‌ای نسازید، گذرواژه شما عوض نخواهد شد. - subject: 'ماستودون: راهنمایی برای بازنشانی گذرواژه' + explanation: درخواست گذرواژه‌ای تازه‌ای برای حسابتان کرده‌اید. + extra: اگر خودتان چنین درخواستی نداده‌اید لطفاً از این رایانامه چشم بپوشید. گذرواژه‌تان تا وقتی به پیوند بالا دسترسی پیدا نکرده و گذرواژهٔ جدیدی نسازید عوض نخواهد شد. + subject: 'ماستودون: دستورالعمل‌های بازنشانی گذرواژه' title: بازنشانی گذرواژه two_factor_disabled: - subject: 'ماستودون: تأیید هویت دو مرحله‌ای از کار افتاد' - title: ورود دومرحله‌ای غیرفعال + explanation: ورود اکنون تنها با نشانی رایانامه و گذرواژه ممکن است. + subject: 'ماستودون: هویت‌سنجی دو مرحله‌ای از کار افتاده' + subtitle: هویت‌سنجی دو مرحله‌ای برای حسابتان از کار افتاده. + title: ورود دومرحله‌ای از کار افتاده two_factor_enabled: - subject: 'ماستودون: تأیید هویت دومرحله‌ای به کار افتاد' - title: ورود دومرحله‌ای فعال + explanation: ورود نیازمند ژتونی تولید شده به دست کارهٔ TOTP جفت‌شده است. + subject: 'ماستودون: هویت‌سنجی دومرحله‌ای به کار افتاده' + subtitle: هویت‌سنجی دو عاملی برای حسابتان به کار افتاده. + title: ورود دومرحله‌ای به کار افتاده two_factor_recovery_codes_changed: explanation: کدهای بازیابی پیشین نامعتبر شده و کدهای جدیدی ساخته شدند. subject: 'ماستودون: کدهای بازیابی برای تأیید هویت دو مرحله‌ای دوباره ساخته شدند' + subtitle: کدهای بازیابی پیشین از اعتبار ساقط شده و کدهایی جدید ایجاد شدند. title: کدهای بازیابی تأیید هویت دو مرحله‌ای عوض شده‌اند unlock_instructions: subject: 'ماستودون: دستورالعمل‌های قفل‌گشایی' @@ -68,9 +74,13 @@ fa: subject: 'ماستودون: کلید امنیتی حذف شد' title: یکی از کلیدهای امنیتیتان حذف شد webauthn_disabled: + explanation: هویت‌سنجی با کلیدهای امنیتی برای حسابتان از کار افتاده. + extra: ورود اکنون تنها با ژتون تولید شده به دست کارهٔ TOTP جفت‌شده ممکن است. subject: 'ماستودون: تأیید هویت با کلیدهای امنیتی از کار افتاد' title: کلیدهای امنیتی از کار افتادند webauthn_enabled: + explanation: هویت‌سنجی با کلیدهای امنیتی برای حسابتان به کار افتاده. + extra: کلید امنیتیتان اکنون می‌تواند برای ورود استفاده شود. subject: 'ماستودون: تأیید هویت با کلید امنیتی به کار افتاد' title: کلیدهای امنیتی به کار افتادند omniauth_callbacks: @@ -86,22 +96,22 @@ fa: destroyed: بدرود! حساب شما با موفقیت لغو شد. امیدواریم دوباره شما را ببینیم. signed_up: خوش آمدید! شما با موفقیت ثبت نام کردید. signed_up_but_inactive: خوش آمدید! با موفقیت ثبت نام کردید. ولی هنوز وارد نشده‌اید؛ چرا که حسابتان هنوز فعال نشده است. - signed_up_but_locked: خوش آمدید! با موفقیت ثبت نام کردید. ولی هنوز وارد نشده‌اید؛ چرا که حسابتان قفل است. - signed_up_but_pending: پیغامی که دارای یک پیوند برای تأیید است به نشانی ایمیل شما فرستاده شده. پس از این‌که پیوند را باز کردید، ما درخواست شما را بررسی خواهیم کرد. اگر درخواست شما پذیرفته شود، به شما خواهیم گفت. - signed_up_but_unconfirmed: پیامی با یک پیوند تأیید به نشانی ایمیل شما فرستاده شده. لطفاً پیوند موجود در ایمیل را دنبال کنید تا حسابتان فعال شود. اگر این ایمیل نیامد، لطفاً پوشهٔ هرزنامه‌هایتان را بررسی کنید. - update_needs_confirmation: شما با موفقیت حسابتان را به‌روز کردید، ولی لازم است که ما نشانی ایمیل تازهٔ شما را تأیید کنیم. لطفاً ایمیل خود را ببینید و پیوند موجود در ایمیل را دنبال کنید تا تا نشانی ایمیل تازهٔ شما تأیید شود. اگر این ایمیل نیامد، لطفاً پوشهٔ هرزنامه‌هایتان را بررسی کنید. - updated: حسابتان با موفقبت به‌روز شد. + signed_up_but_locked: با موفّقیت ثبت‌نام کرده‌اید. با این حال نمی‌توان واردتان کرد؛ چرا که حسابتان قفل است. + signed_up_but_pending: پیامی با پیوند تأیید به نشانی رایانامه‌تان فرستاده شده. پس از زدن پیوند درخواستتان را بازبینی خواهیم کرد. در صورت پذیرش آگاه خواهید شد. + signed_up_but_unconfirmed: پیامی با پیوند تأیید به نشانی رایانامه‌تان فرستاده شده. لطفاً برای فعّال کردن حسابتان پیوند را بزنید. اگر این رایانامه را نگرفته‌اید شاخهٔ هرزنامه‌ها را بررسی کنید. + update_needs_confirmation: حسابتان را با موفّقیت به‌روز کردید؛‌ ولی باید نشانی رایانامهٔ جدیتان را تأیید کنیم. لطفاً رایانامه‌تان را بررسی کرده و برای تأیید نشانی رایانهٔ جدیدتان پیوند را بزنید. اگر این رایانامه را نگرفته‌اید شاخهٔ هرزنامه‌ها را بررسی کنید. + updated: حسابتان با موفّقیت به‌روز شد. sessions: - already_signed_out: با موفقیت خارج شدید. - signed_in: با موفقیت وارد شدید. - signed_out: با موفقیت خارج شدید. + already_signed_out: با موفّقیت خارج شدید. + signed_in: با موفّقیت وارد شدید. + signed_out: با موفّقیت خارج شدید. unlocks: - send_instructions: تا دقایقی دیگر ایمیلی خواهید گرفت که به شما می‌گوید چگونه باید قفل حساب خود را باز کنید. اگر این ایمیل نیامد، لطفاً پوشهٔ هرزنامه‌هایتان را بررسی کنید. - send_paranoid_instructions: اگر حساب شما موجود باشد، تا دقایقی دیگر ایمیلی خواهید گرفت که به شما می‌گوید چگونه باید قفل آن را باز کنید. اگر این ایمیل نیامد، لطفاً پوشهٔ هرزنامه‌هایتان را بررسی کنید. - unlocked: قفل حساب شما با موفقیت باز شد. لطفاً برای ادامه وارد سیستم شوید. + send_instructions: تا دقایقی دیگر رایانامه‌ای با دستورالعمل قفل‌گشایی حسابتان دریافت خواهید کرد. اگر این رایانامه را نگرفتید، لطفاً پوشهٔ هرزنامه‌هایتان را بررسی کنید. + send_paranoid_instructions: اگر حسابتان وجود داشته باشد تا دقایقی دیگر رایانامه‌ای با دستورالعمل قفل‌گشاییش دریافت خواهید کرد. اگر این رایانامه را نگرفتید، لطفاً پوشهٔ هرزنامه‌هایتان را بررسی کنید. + unlocked: حسابتان با موفّقیت قفل‌گشایی شد. لطفاً برای ادامه وارد شوید. errors: messages: - already_confirmed: تأیید شده، لطفاً وارد شوید + already_confirmed: از پیش تأیید شده. لطفاً ورود را بیازمایید confirmation_period_expired: باید ظرف %{period} تأیید شود، لطفاً دوباره درخواست دهید expired: مهلتش به سر رسید، لطفاً دوباره درخواست دهید not_found: پیدا نشد diff --git a/config/locales/devise.fi.yml b/config/locales/devise.fi.yml index 22fd7ff47b..003d48417b 100644 --- a/config/locales/devise.fi.yml +++ b/config/locales/devise.fi.yml @@ -12,33 +12,34 @@ fi: last_attempt: Sinulla on vielä yksi yritys ennen kuin tilisi lukitaan. locked: Tilisi on lukittu. not_found_in_database: Virheellinen %{authentication_keys} tai salasana. + omniauth_user_creation_failure: Virhe luotaessa tiliä tälle henkilöllisyydelle. pending: Tilisi on vielä tarkistamatta. - timeout: Istuntosi on umpeutunut. Jatka kirjautumalla uudelleen sisään. + timeout: Istuntosi on vanhentunut. Jatkaaksesi käyttöä, kirjaudu uudelleen. unauthenticated: Sinun on kirjauduttava tai rekisteröidyttävä ennen kuin voit jatkaa. unconfirmed: Vahvista sähköpostiosoitteesi, ennen kuin jatkat. mailer: confirmation_instructions: action: Vahvista sähköpostiosoite action_with_app: Vahvista ja palaa %{app} - explanation: Olet luonut tilin palvelimelle %{host} käyttäen tätä sähköpostiosoitetta. Olet painalluksen päässä tilin aktivoinnista. Jos et luonut tiliä itse, voit jättää tämän viestin huomiotta. + explanation: Olet luonut käyttäjätilin palvelimelle %{host} tätä sähköpostiosoitetta käyttäen. Olet painalluksen päässä tilin aktivoinnista. Jos et luonut tiliä itse, voit jättää tämän viestin huomiotta. explanation_when_pending: Teit hakemuksen kutsusta palvelimelle %{host} tällä sähköpostiosoitteella. Kun olet vahvistanut sähköpostiosoitteesi, tarkistamme hakemuksesi. Voit kirjautua sisään muuttaaksesi hakemuksen sisältöä tai poistaaksesi tilin, mutta et voi käyttää suurinta osaa toiminnallisuudesta ennen kuin hakemuksesi on hyväksytty. Jos hakemuksesi hylätään, tietosi poistetaan eikä sinulta tarvita enempää toimia. Jos sinä et tehnyt hakemusta, voit jättää tämän viestin huomiotta. extra_html: Tutustu myös palvelimen sääntöihin ja palveluehtoihimme. subject: 'Mastodon: Vahvistusohjeet instanssille %{instance}' title: Vahvista sähköpostiosoite email_changed: explanation: 'Tilin sähköpostiosoitteeksi vaihdetaan:' - extra: Jos et vaihtanut sähköpostiosoitettasi, joku muu on todennäköisesti päässyt käyttämään tiliäsi. Vaihda salasanasi viipymättä, tai ota yhteys palvelimen ylläpitäjään, jos et pääse kirjautumaan tilillesi. + extra: Jos et vaihtanut sähköpostiosoitettasi, joku muu on todennäköisesti päässyt käyttämään tiliäsi. Vaihda salasanasi viipymättä, tai ota yhteys palvelimen ylläpitoon, ellet pääse sisään käyttäjätilillesi. subject: 'Mastodon: Sähköpostiosoite vaihdettu' title: Uusi sähköpostiosoite password_change: explanation: Tilisi salasana on vaihdettu. - extra: Jos et vaihtanut salasanaasi, joku muu on todennäköisesti päässyt käyttämään tiliäsi. Vaihda salasanasi viipymättä, tai ota yhteys palvelimen ylläpitäjään, jos et pääse kirjautumaan tilillesi. + extra: Ellet vaihtanut salasanaasi, joku muu on todennäköisesti päässyt käyttäjätilillesi. Vaihda salasanasi viipymättä, tai ota yhteys palvelimen ylläpitoon, jos kirjautuminen käyttäjätilillesi ei onnistu. subject: 'Mastodon: salasana vaihdettu' title: Salasana vaihdettu reconfirmation_instructions: explanation: Vahvista uusi sähköpostiosoite, niin muutos astuu voimaan. extra: Jos et tehnyt muutosta itse, voit jättää tämän viestin huomiotta. Mastodon-tilin sähköpostiosoitetta ei vaihdeta, ennen kuin klikkaat yllä olevaa linkkiä. - subject: 'Mastodon: vahvista sähköpostiosoite: %{instance}' + subject: 'Mastodon: Vahvista sähköpostiosoite palvelimelle %{instance}' title: Vahvista sähköpostiosoite reset_password_instructions: action: Vaihda salasana @@ -55,27 +56,27 @@ fi: explanation: Sisäänkirjautuminen edellyttää liitetyn TOTP-sovelluksen luomaa aikarajattua kertatunnuslukua. subject: 'Mastodon: kaksivaiheinen todennus otettu käyttöön' subtitle: Kaksivaiheinen todennus on otettu käyttöön tilillesi. - title: 2-vaiheinen todennus käytössä + title: Kaksivaiheinen todennus käytössä two_factor_recovery_codes_changed: - explanation: Uudet palautuskoodit on nyt luotu ja vanhat on mitätöity. - subject: 'Mastodon: kaksivaiheisen todennuksen palautuskoodit luotiin uudelleen' - subtitle: Aiemmat palautuskoodit on mitätöity ja tilalle on luotu uudet. + explanation: Uudet palautuskoodit on nyt luotu, ja vanhat mitätöity. + subject: 'Mastodon: Kaksivaihetodennuksen palautuskoodit luotiin uudelleen' + subtitle: Aiemmat palautuskoodit on mitätöity, ja korvaavat uudet koodit on luotu. title: 2-vaiheisen todennuksen palautuskoodit vaihdettiin unlock_instructions: subject: 'Mastodon: lukituksen poistamisen ohjeet' webauthn_credential: added: explanation: Seuraava suojausavain on lisätty tilillesi - subject: 'Mastodon: uusi suojausavain' + subject: 'Mastodon: Uusi suojausavain' title: Uusi suojausavain on lisätty deleted: explanation: Seuraava suojausavain on poistettu tililtäsi - subject: 'Mastodon: suojausavain poistettu' + subject: 'Mastodon: Suojausavain poistettu' title: Yksi suojausavaimistasi on poistettu webauthn_disabled: - explanation: Turva-avaimin kirjautuminen on poistettu käytöstä tililtäsi. - extra: Sisäänkirjautuminen on nyt mahdollista pelkällä palveluun liitetyn TOTP-sovelluksen luomalla aikarajoitteisella kertatunnusluvulla. - subject: 'Mastodon: Todennus suojausavaimilla poistettu käytöstä' + explanation: Turva-avaimin kirjautuminen tilillesi on kytketty pois käytöstä. + extra: Olet nyt mahdollistanut sisäänkirjautumisen käyttäjätilillesi pelkästään palveluun liitetyn TOTP-sovelluksen luomalla aikarajoitteisella kertatunnusluvulla. + subject: 'Mastodon: Turva-avaintodennus on poistettu käytöstä' title: Suojausavaimet poistettu käytöstä webauthn_enabled: explanation: Turva-avaimella kirjautuminen on otettu käyttöön tilillesi. @@ -86,20 +87,20 @@ fi: failure: Tunnistautuminen lähteestä %{kind} ei onnistunut, koska "%{reason}". success: Tunnistautuminen tililtä %{kind} onnistui. passwords: - no_token: Tälle sivulle pääsee vain salasananvaihtoviestin kautta. Jos tiedät tulevasi salasananvaihtoviestin kautta, varmista, että käytät koko viestissä mainittua URL-osoitetta. - send_instructions: Jos sähköpostiosoite on tietokannassamme, siihen lähetetään pian linkki salasanan vaihtoon. Jos et saa viestiä, tarkista roskapostikansio. - send_paranoid_instructions: Jos sähköpostiosoite on tietokannassamme, siihen lähetetään pian linkki salasanan vaihtoon. Jos et saa viestiä, tarkista roskapostikansio. + no_token: Tälle sivulle pääsee vain salasananvaihtoviestin kautta. Jos tiedät tulevasi sen kautta, varmista, että käytät viestissä mainittua URL-osoitetta kokonaisuudessaan. + send_instructions: Jos sähköpostiosoite on tietokannassamme, siihen lähetetään pian viesti, jossa on linkki salasanan vaihtamiseksi. Mikäli viestiä ei kuulu, tarkista myös roskapostisi. + send_paranoid_instructions: Jos sähköpostiosoite on tietokannassamme, siihen lähetetään pian viesti, jossa on linkki salasanan vaihtamiseksi. Mikäli viestiä ei kuulu, tarkista myös roskapostisi. updated: Salasanan vaihto onnistui. Olet nyt kirjautunut sisään. updated_not_active: Salasanan vaihto onnistui. registrations: - destroyed: Tilisi on poistettu. Näkemiin ja tervetuloa uudelleen! + destroyed: Tilisi on poistettu. Näkemiin ja tervetuloa uudelleen. signed_up: Tervetuloa! Rekisteröityminen onnistui. - signed_up_but_inactive: Rekisteröityminen onnistui. Emme kuitenkaan voi kirjata sinua sisään, sillä tiliäsi ei ole vielä aktivoitu. - signed_up_but_locked: Rekisteröityminen onnistui. Emme kuitenkaan voi kirjata sinua sisään, sillä tilisi on lukittu. - signed_up_but_pending: Sähköpostiosoitteeseesi on lähetetty vahvistuslinkki. Kun olet klikannut linkkiä, tarkistamme hakemuksesi. Sinulle tiedotetaan jos se hyväksytään. - signed_up_but_unconfirmed: Sähköpostiosoitteeseesi on lähetetty vahvistuslinkki. Aktivoi tili seuraamalla linkkiä. Jos et saanut viestiä, tarkista roskapostikansio. - update_needs_confirmation: Tilin päivitys onnistui, mutta uusi sähköpostiosoite on vahvistettava. Tarkista sähköpostisi ja vahvista uusi sähköpostiosoite seuraamalla vahvistuslinkkiä. Jos et saanut viestiä, tarkista roskapostikansio. - updated: Tilin päivitys onnistui. + signed_up_but_inactive: Rekisteröityminen onnistui. Emme kuitenkaan voi kirjata sinua sisään, sillä käyttäjätiliäsi ei ole vielä aktivoitu. + signed_up_but_locked: Rekisteröityminen onnistui. Emme kuitenkaan voi kirjata sinua sisään, sillä käyttäjätilisi on lukittuna. + signed_up_but_pending: Sähköpostiosoitteeseesi on lähetetty vahvistuslinkki. Sen avattuasi tarkistamme hakemuksesi, ja ilmoitamme hyväksynnästä. + signed_up_but_unconfirmed: Sähköpostiosoitteeseesi on lähetetty vahvistuslinkki. Aktivoi käyttäjätilisi seuraamalla linkkiä. Mikäli sitä ei kuulu, tarkista myös roskapostisi. + update_needs_confirmation: Tilin päivitys onnistui. Uusi sähköpostiosoite on kuitenkin vahvistettava. Tarkista saapuneet viestisi, ja vahvista uusi sähköpostiosoitteesi vahvistuslinkkiä seuraten. Mikäli viestiä ei kuulu, tarkista myös roskapostisi. + updated: Käyttäjätilisi tietojen päivittäminen onnistui. sessions: already_signed_out: Uloskirjautuminen onnistui. signed_in: Sisäänkirjautuminen onnistui. diff --git a/config/locales/devise.fo.yml b/config/locales/devise.fo.yml index 1f7708bb44..30f83ba0da 100644 --- a/config/locales/devise.fo.yml +++ b/config/locales/devise.fo.yml @@ -12,6 +12,7 @@ fo: last_attempt: Tú kanst royna einaferð afturat áðrenn kontan verður stongd. locked: Kontan hjá tær er læst. not_found_in_database: Ogyldigur %{authentication_keys} ella loyniorð. + omniauth_user_creation_failure: Feilur í sambandi við, at ein konta fyri hendan samleikan bleiv stovnað. pending: Kontan hjá tær verður kannað enn. timeout: Tín innritan er útgingin. Innrita av nýggjum, fyri at hada fram. unauthenticated: Tú mást skriva teg inn aftur fyri at halda fram. diff --git a/config/locales/devise.fy.yml b/config/locales/devise.fy.yml index 05fd7b8071..c8a04a7405 100644 --- a/config/locales/devise.fy.yml +++ b/config/locales/devise.fy.yml @@ -12,6 +12,7 @@ fy: last_attempt: Jo hawwe noch ien besykjen oer eardat jo account blokkearre wurdt. locked: Jo account is blokkearre. not_found_in_database: "%{authentication_keys} of wachtwurd ûnjildich." + omniauth_user_creation_failure: Flater by it oanmeitsjen fan in account foar dizze identiteit. pending: Jo account moat noch hieltyd beoardiele wurde. timeout: Jo sesje is ferrûn. Meld jo opnij oan om troch te gean. unauthenticated: Jo moatte oanmelde of registrearje. diff --git a/config/locales/devise.ga.yml b/config/locales/devise.ga.yml index 0949e140d1..6e6bd0a013 100644 --- a/config/locales/devise.ga.yml +++ b/config/locales/devise.ga.yml @@ -1,9 +1,23 @@ --- ga: devise: + confirmations: + confirmed: D'éirigh le deimhniú do ríomhphost. + send_instructions: Gheobhaidh tú r-phost go gairid ina mbeidh treoracha faoi conas do sheoladh r-phost a dheimhniú. Féach i d'fhillteán turscair mura bhfuair tú an r-phost seo. + send_paranoid_instructions: Más ann do do r-phost inár mbonneagar, gheobhaidh tú r-phost i gceann cúpla nóiméad faoi conas do sheoladh r-phost a dheimhniú. Féach i d'fhillteán turscair mura bhfuair tú an r-phost seo. failure: + already_authenticated: Tá tú sínithe isteach cheana. + inactive: Níl do chuntas gníomhachtaithe fós. + invalid: "%{authentication_keys} nó pasfhocal neamhbhailí." + last_attempt: Tá iarracht amháin eile agat sula gcuirtear do chuntas faoi ghlas. locked: Tá do chuntas faoi ghlas. + pending: Tá do chuntas fós faoi athbhreithniú. + unauthenticated: Ní mór duit lógáil isteach nó síniú suas roimh leanúint leat. + unconfirmed: Caithfidh tú do r-phost a dheimhniú roimh leanúint leat. mailer: + confirmation_instructions: + action: Deimhnigh seoladh r-phost + action_with_app: Deimhnigh agus fill ar %{app} email_changed: title: Seoladh ríomhphoist nua password_change: diff --git a/config/locales/devise.gl.yml b/config/locales/devise.gl.yml index b9f4a0a005..00b1824808 100644 --- a/config/locales/devise.gl.yml +++ b/config/locales/devise.gl.yml @@ -12,6 +12,7 @@ gl: last_attempt: Tes un intento máis antes de que a túa conta fique bloqueada. locked: A túa conta está bloqueada. not_found_in_database: "%{authentication_keys} ou contrasinal non válidos." + omniauth_user_creation_failure: Erro ao crear unha conta para esta identidade. pending: A túa conta aínda está baixo revisión. timeout: A túa sesión caducou. Accede outra vez para continuar. unauthenticated: Precisas iniciar sesión ou rexistrarte antes de continuar. diff --git a/config/locales/devise.he.yml b/config/locales/devise.he.yml index f2ec3a6716..02e307ae1c 100644 --- a/config/locales/devise.he.yml +++ b/config/locales/devise.he.yml @@ -12,6 +12,7 @@ he: last_attempt: יש לך עוד ניסיון אחד לפני נעילת החשבון. locked: חשבון זה נעול. not_found_in_database: "%{authentication_keys} או סיסמה לא נכונים." + omniauth_user_creation_failure: שגיאה ביצירת חשבון לזהות הזו. pending: חשבונך נמצא עדיין בבדיקה. timeout: פג תוקף השהיה בחשבון. נא להכנס מחדש על מנת להמשיך. unauthenticated: יש להרשם או להכנס לחשבון על מנת להמשיך. diff --git a/config/locales/devise.hu.yml b/config/locales/devise.hu.yml index fea56ab24a..8c9fdf6a50 100644 --- a/config/locales/devise.hu.yml +++ b/config/locales/devise.hu.yml @@ -12,6 +12,7 @@ hu: last_attempt: Már csak egy próbálkozásod maradt, mielőtt a fiókodat zároljuk. locked: A fiókodat zároltuk. not_found_in_database: Helytelen %{authentication_keys} vagy jelszó. + omniauth_user_creation_failure: Hiba történt a fiók létrehozása során ehhez az identitáshoz. pending: A fiókod még engedélyezésre vár. timeout: A munkameneted lejárt. A folytatáshoz jelentkezz be újra. unauthenticated: A folytatás előtt be kell jelentkezned vagy regisztrálnod kell. diff --git a/config/locales/devise.ia.yml b/config/locales/devise.ia.yml index c45994160c..4b4d1f441b 100644 --- a/config/locales/devise.ia.yml +++ b/config/locales/devise.ia.yml @@ -11,17 +11,36 @@ ia: email_changed: title: Nove adresse de e-mail password_change: + subject: 'Mastodon: Contrasigno cambiate' title: Contrasigno cambiate reconfirmation_instructions: + explanation: Confirma le nove adresse pro cambiar tu email. title: Verificar adresse de e-mail reset_password_instructions: action: Cambiar contrasigno + subject: 'Mastodon: Instructiones pro reinitialisar le contrasigno' title: Reinitialisar contrasigno two_factor_disabled: title: 2FA disactivate two_factor_enabled: title: 2FA activate + unlock_instructions: + subject: 'Mastodon: Instructiones pro disblocar' + webauthn_credential: + added: + explanation: Le sequente clave de securitate esseva addite a tu conto + subject: 'Mastodon: Nove clave de securitate' + title: Un nove clave de securitate esseva addite + deleted: + explanation: Le sequente clave de securitate esseva delite de tu conto + subject: 'Mastodon: Clave de securitate delite' + webauthn_disabled: + title: Claves de securitate disactivate + webauthn_enabled: + title: Claves de securitate activate registrations: + destroyed: A revider! Tu conto esseva cancellate con successo. Nos spera vider te novemente tosto. + signed_up_but_pending: Un message con un ligamine de confirmation esseva inviate a tu conto de email. Post que tu clicca le ligamine, nos revidera tu application. Tu essera notificate si illo es approbate. updated: Tu conto ha essite actualisate con successo. unlocks: unlocked: Tu conto ha essite disblocate con successo. Initia session a continuar. diff --git a/config/locales/devise.ie.yml b/config/locales/devise.ie.yml index 332c9da456..9c82bd4529 100644 --- a/config/locales/devise.ie.yml +++ b/config/locales/devise.ie.yml @@ -12,6 +12,7 @@ ie: last_attempt: Hay solmen un prova ante que tui conto deveni serrat. locked: Tui conto es serrat. not_found_in_database: Ínvalid %{authentication_keys} o passa-parol. + omniauth_user_creation_failure: Errore in li creation de un conto por ti-ci identitá. pending: Tui conto es ancor sub revision. timeout: Tui session ha expirat. Ples reintrar denov por continuar. unauthenticated: Tu deve intrar o registrar te ante continuar. diff --git a/config/locales/devise.is.yml b/config/locales/devise.is.yml index 12015fa29d..a045bdd80c 100644 --- a/config/locales/devise.is.yml +++ b/config/locales/devise.is.yml @@ -12,6 +12,7 @@ is: last_attempt: Þú getur reynt einu sinni í viðbót áður en aðgangnum þínum verður læst. locked: Notandaaðgangurinn þinn er læstur. not_found_in_database: Ógilt %{authentication_keys} eða lykilorð. + omniauth_user_creation_failure: Villa við að útbúa aðgang fyrir þetta auðkenni. pending: Notandaaðgangurinn þinn er enn til yfirferðar. timeout: Setan þín er útrunnin. Skráðu þig aftur inn til að halda áfram. unauthenticated: Þú þarft að skrá þig inn eða nýskrá þig áður en lengra er haldið. diff --git a/config/locales/devise.it.yml b/config/locales/devise.it.yml index 19bd999aad..8aaea3c15b 100644 --- a/config/locales/devise.it.yml +++ b/config/locales/devise.it.yml @@ -12,6 +12,7 @@ it: last_attempt: Hai un altro tentativo, prima che il tuo profilo venga bloccato. locked: Il tuo profilo è bloccato. not_found_in_database: "%{authentication_keys} o password non valida." + omniauth_user_creation_failure: Errore nella creazione di un account per questa identità. pending: Il tuo profilo è ancora in revisione. timeout: La tua sessione è scaduta. Sei pregato di accedere nuovamente per continuare. unauthenticated: Devi accedere o registrarti, per continuare. diff --git a/config/locales/devise.ja.yml b/config/locales/devise.ja.yml index 44a9a31839..2cd7cfa415 100644 --- a/config/locales/devise.ja.yml +++ b/config/locales/devise.ja.yml @@ -12,6 +12,7 @@ ja: last_attempt: あと1回失敗するとアカウントがロックされます。 locked: アカウントはロックされました。 not_found_in_database: "%{authentication_keys}かパスワードが誤っています。" + omniauth_user_creation_failure: 指定されたIDに対応するアカウントを作成できませんでした。 pending: あなたのアカウントはまだ承認待ちです。 timeout: セッションの有効期限が切れました。続行するには再度ログインしてください。 unauthenticated: 続行するにはログインするか、アカウントを作成してください。 diff --git a/config/locales/devise.kab.yml b/config/locales/devise.kab.yml index 2f60629fd7..f878a5b503 100644 --- a/config/locales/devise.kab.yml +++ b/config/locales/devise.kab.yml @@ -13,13 +13,13 @@ kab: locked: Amiḍan-ik yettwargel. not_found_in_database: Tella tuccḍa deg %{authentication_keys} neγ deg wawal uffir. pending: Amiḍan-inek mazal-it deg ɛiwed n tmuγli. - timeout: Tiγimit n tuqqna tezri. Ma ulac aγilif ɛiwed tuqqna akken ad tkemmleḍ. - unauthenticated: Ilaq ad teqqneḍ neγ ad tjerrḍeḍ akken ad tkemmelḍ. + timeout: Tiɣimit n tuqqna tezri. Ma ulac aɣilif ɛiwed tuqqna akken ad tkemmleḍ. + unauthenticated: Ilaq ad teqqneḍ neɣ ad tjerrḍeḍ akken ad tkemmelḍ. unconfirmed: Ilaq ad wekdeḍ tansa-inek imayl akken ad tkemmelḍ. mailer: confirmation_instructions: action: Senqed tansa-inek imayl - action_with_app: Wekked sakkin uγal γer %{app} + action_with_app: Sentem sakkin uɣal ɣer %{app} explanation: Aqla-k terniḍ amiḍan deg %{host} s tansa imayl-agi. Mazal-ak yiwen utekki akken ad t-tremdeḍ. Ma mačči d kečč i yessutren ay-agi, ttxil-k ssinef izen-a. explanation_when_pending: Tsutreḍ-d ajerred deg %{host} s tansa-agi imayl. Ad nγeṛ asuter-ik ticki tsentmeḍ tansa-ik imayl. Send asentem, ur tezmireḍ ara ad teqqneḍ γer umiḍan-ik. Ma yella nugi asuter-ik, isefka-ik ad ttwakksen seg uqeddac, ihi ulac tigawt-nniḍen ara k-d-yettuqeblen. Ma mačči d kečč i yellan deffir n usuter-agi, ttxil-k ssinef izen-agi. extra_html: Ttxil-k ẓer daγen ilugan n uqeddac akked twetlin n useqdec-nneγ. @@ -87,7 +87,7 @@ kab: unlocks: send_instructions: Deg kra n tesdatin, ad teṭṭfeḍ imayl deg-s iwellihen i yilaqen i userreḥ n umiḍan-ik·im. Ma yella ur tufiḍ ara izen-agi, ttxil-k·m ẓer deg ukaram spam. send_paranoid_instructions: Ma yella umiḍan-ik·im yella, ad teṭṭfeḍ imayl deg tesdatin i d-iteddun, deg-s iwellihen i yilaqen i userreḥ n umiḍan-ik·im. Ma yella ur tufiḍ ara izen-agi, ttxil-k·m ẓer deg ukaram spam. - unlocked: Iserreḥ umiḍan-ik·im akken iwata. ttxil qqen akken ad tkemleḍ. + unlocked: Iserreḥ umiḍan-ik·im akken iwata. Ttxil qqen akken ad tkemleḍ. errors: messages: already_confirmed: ittwasentem yakan, ttxil εreḍ ad teqneḍ diff --git a/config/locales/devise.ko.yml b/config/locales/devise.ko.yml index 0c848e4bac..198d44a4f7 100644 --- a/config/locales/devise.ko.yml +++ b/config/locales/devise.ko.yml @@ -12,6 +12,7 @@ ko: last_attempt: 계정이 잠기기까지 한 번의 시도가 남았습니다. locked: 계정이 잠겼습니다. not_found_in_database: 올바르지 않은 %{authentication_keys} 혹은 암호입니다. + omniauth_user_creation_failure: 이 신원으로 계정을 만드는데 실패했습니다. pending: 이 계정은 아직 검토 중입니다. timeout: 세션이 만료되었습니다. 다시 로그인 하세요. unauthenticated: 계속 하려면 로그인을 해야 합니다. diff --git a/config/locales/devise.lad.yml b/config/locales/devise.lad.yml index 2b6b8aafb1..7d447140f4 100644 --- a/config/locales/devise.lad.yml +++ b/config/locales/devise.lad.yml @@ -3,7 +3,7 @@ lad: devise: confirmations: confirmed: Tu adreso de posta elektronika tyene sido konfirmado korektamente. - send_instructions: Risiviras una posta elektronika kon instruksyones para konfirmar tu adreso de posta elektronika en unos minutos. Por favor, komprova tu kuti de spam si no risivites esta posta elektronika. + send_instructions: Risiviras una mesaj de posta elektronika kon instruksyones para konfirmar tu adreso de posta elektronika en unos minutos. Por favor, komprova tu kuti de spam si no risivites esta posta elektronika. send_paranoid_instructions: Si tu adreso de posta elektronika existe en muestra baza de datos, risiviras una posta elektronika kon instruksyones sobre komo konfirmar tu adreso de posta elektronika en pokos minutos. failure: already_authenticated: Ya te konektates kon tu kuento. @@ -12,7 +12,8 @@ lad: last_attempt: Aprova una vez mas antes de ke tu kuento sea blokado. locked: Tu kuento esta blokado. not_found_in_database: Inkorekto %{authentication_keys} o kod. - pending: Tu ainda esta basho revizyon. + omniauth_user_creation_failure: Ay un error en kriyar un kuento para esta identita. + pending: Tu kuento ainda esta basho revizyon. timeout: Tu sesyon tiene kadukado. Por favor konektate kon tu kuento de muevo para kontinuar. unauthenticated: Kale konektarte kon tu kuento o enregistrarte antes de kontinuar. unconfirmed: Tyenes ke konfirmar tu adreso de posta elektronika antes de kontinuar. @@ -45,17 +46,17 @@ lad: explanation: Solisitates un muevo kod para tu kuento. extra: Si no solisitates esto, por favor ignora esta posta. Tu kod no trokara asta ke tu aksedas al atadijo arriva i kriyes un muevo. subject: 'Mastodon: Instruksyones para reinisyar kod' - title: Reinisyar kod + title: Reinisya kod two_factor_disabled: explanation: Agora puedes konektarte kon tu kuento uzando solo tu adreso de posta i kod. subject: 'Mastodon: La autentifikasyon de dos pasos esta inkapasitada' subtitle: La autentifikasyon en dos pasos para tu kuento tiene sido inkapasitada. - title: Autentifikasyon 2FA inkapasitada + title: Autentifikasyon de dos pasos inkapasitada two_factor_enabled: explanation: Se rekierira un token djenerado por la aplikasyon TOTP konektada para entrar. subject: 'Mastodon: La autentifikasyon de dos pasos esta kapasitada' subtitle: La autentifikasyon de dos pasos para tu kuento tiene sido kapasitada. - title: Autentifikasyon 2FA aktivada + title: Autentifikasyon de dos pasos aktivada two_factor_recovery_codes_changed: explanation: Los kodiches de rekuperasyon previos tienen sido invalidados i se djeneraron kodiches muevos. subject: 'Mastodon: Los kodiches de rekuperasyon de dos pasos fueron rejenerados' @@ -69,9 +70,9 @@ lad: subject: 'Mastodon: Mueva yave de sigurita' title: Se tiene adjustado una mueva yave de sigurita deleted: - explanation: La sigiente yave de sigurita a sido supremida de tu kuento + explanation: La sigiente yave de sigurita a sido suprimida de tu kuento subject: 'Mastodon: Yave de sigurita supremida' - title: Una de tus yaves de sigurita tiene sido supremida + title: Una de tus yaves de sigurita tiene sido suprimida webauthn_disabled: explanation: La autentifikasyon kon yaves de sigurita tiene sido inkapasitada para tu kuento. extra: Agora el inisyo de sesyon solo es posivle utilizando el token djeenerado por la aplikasyon TOTP konektada. @@ -89,25 +90,25 @@ lad: no_token: No puedes akseder a esta pajina si no vienes dizde una posta elektronika de restablesimyento de kod. Si vienes dizde una posta elektronika de restablesimyento de kod, por favor asigurate de utilizar el URL kompleto embiado. send_instructions: Si tu adreso de posta elektronika existe en muestra baza de datos, risiviras un atadijo de rekuperasyon de kod en tu adreso de posta elektronika en pokos minutos. Por favor, komprova tu kuti de posta spam si no risives akeya posta elektronika. send_paranoid_instructions: Si tu adreso de posta elektronika existe en muestra baza de datos, risiviras un atadijo de rekuperasyon de kod en tu adreso de posta elektronika en pokos minutos. Por favor, komprova tu kuti de posta no deseado si no risives akeya posta elektronika. - updated: Tu kod a sido trokado kon reusho. Tinenes entrado en kuento. - updated_not_active: Tu kod se tiene trokado kon reusho. + updated: Tu kod a sido trokado kon reushita. Tyenes entrado en kuento. + updated_not_active: Tu kod se tiene trokado kon reushita. registrations: - destroyed: Tu kuento a sido efasado kon reusho. Asperamos verte de muevo pronto. + destroyed: Tu kuento a sido efasado kon reushita. Asperamos verte de muevo pronto. signed_up: Bienvenido! Te tienes enrejistrado djustamente. - signed_up_but_inactive: Te tienes enrejistrado kon reusho. Entanto, no se pudio inisyar sesyon porke tu kuento ainda no esta aktivado. - signed_up_but_locked: Te tienes enrejistrado kon reusho. Entanto, no pudites konektarte kon tu kuento porke tu kuento esta blokado. + signed_up_but_inactive: Te tienes enrejistrado kon reushita. Entanto, no se pudio inisyar sesyon porke tu kuento ainda no esta aktivado. + signed_up_but_locked: Te tienes enrejistrado kon reushita. Entanto, no pudites konektarte kon tu kuento porke tu kuento esta blokado. signed_up_but_pending: Un mesaj kon un atadijo de konfirmasyon a sido enviado a tu adreso de posta elektronika. Dempues de klikar en el atadijo, revizaremos tu solisitud. Seras avizado si se acheta. signed_up_but_unconfirmed: Un mesaj kon un atadijo de konfirmasyon a sido enviado a tu adreso de posta elektronika. Por favor, sigue el atadijo para aktivar tu kuento. Por favor, komprova tu kuti de posta spam si no risives akeya posta elektronika. - update_needs_confirmation: Tienes aktualizado tu kuento kon reusho, pero kale verifikar tu muevo adreso de posta elektronika. Por favor, komprova tu posta elektronika i sige el atadijo de konfirmasyon para konfirmar tu muevo adreso de posta elektronika. Por favor, komprova tu kuti de posta spam si no risives akeya posta elektronika. - updated: Tu kuento se aktualizo kon reusho. + update_needs_confirmation: Tienes aktualizado tu kuento kon reushita, pero kale verifikar tu muevo adreso de posta elektronika. Por favor, komprova tu posta elektronika i sige el atadijo de konfirmasyon para konfirmar tu muevo adreso de posta elektronika. Por favor, komprova tu kuti de posta spam si no risives akeya posta elektronika. + updated: Tu kuento se aktualizo kon reushita. sessions: - already_signed_out: Salites del kuento kon reusho. - signed_in: Konektates kon tu kuento kon reusho. - signed_out: Salites del kuento kon reusho. + already_signed_out: Salites del kuento kon reushita. + signed_in: Konektates kon tu kuento kon reushita. + signed_out: Salites del kuento kon reushita. unlocks: send_instructions: En unos minutos risiviras una posta elektronika kon instruksyones para dezblokar tu kuento. Por favor, komprova tu kuti de posta spam si no risives akeya posta elektronika. send_paranoid_instructions: Si tu kuento existe, en unos minutos risiviras una posta elektronika kon instruksyones para dezblokarlo. Por favor, reviza tu kuti de posta spam si no risives akeya posta elektronika. - unlocked: Tu kuento fue dezblokado kon reusho. Por favor, konektate kon tu kuento para kontinuar. + unlocked: Tu kuento fue dezblokado kon reushita. Por favor, konektate kon tu kuento para kontinuar. errors: messages: already_confirmed: ya estaba konfirmado, por favor aprova konektarte kon tu kuento diff --git a/config/locales/devise.lt.yml b/config/locales/devise.lt.yml index 3fba5ed08e..548894cca0 100644 --- a/config/locales/devise.lt.yml +++ b/config/locales/devise.lt.yml @@ -12,6 +12,7 @@ lt: last_attempt: Turi dar vieną bandymą, kol tavo paskyra bus užrakinta. locked: Tavo paskyra užrakinta. not_found_in_database: Netinkami %{authentication_keys} arba slaptažodis. + omniauth_user_creation_failure: Klaida kuriant šios tapatybės paskyrą. pending: Tavo paskyra vis dar peržiūrima. timeout: Tavo seansas baigėsi. Norėdamas (-a) tęsti, prisijunk dar kartą. unauthenticated: Prieš tęsdamas (-a) turi prisijungti arba užsiregistruoti. diff --git a/config/locales/devise.nl.yml b/config/locales/devise.nl.yml index 33d777e2cc..ab6ae84db4 100644 --- a/config/locales/devise.nl.yml +++ b/config/locales/devise.nl.yml @@ -12,6 +12,7 @@ nl: last_attempt: Je hebt nog één poging over voordat jouw account wordt opgeschort. locked: Jouw account is opgeschort. not_found_in_database: "%{authentication_keys} of wachtwoord ongeldig." + omniauth_user_creation_failure: Fout bij het aanmaken van een account voor deze identiteit. pending: Jouw account moet nog steeds worden beoordeeld. timeout: Jouw sessie is verlopen, log opnieuw in. unauthenticated: Je dient in te loggen of te registreren. @@ -74,7 +75,7 @@ nl: title: Een van jouw beveiligingssleutels is verwijderd webauthn_disabled: explanation: Verificatie met beveiligingssleutels is uitgeschakeld voor je account. - extra: Het is nu alleen mogelijk om te te loggen met een door de authenticatie-app gegeneerde toegangscode. + extra: Het is nu alleen mogelijk om in te loggen met een door de authenticatie-app gegeneerde toegangscode. subject: 'Mastodon: Verificatie met beveiligingssleutels is uitgeschakeld' title: Beveiligingssleutels uitgeschakeld webauthn_enabled: diff --git a/config/locales/devise.nn.yml b/config/locales/devise.nn.yml index 96920d42b5..01d6e5a468 100644 --- a/config/locales/devise.nn.yml +++ b/config/locales/devise.nn.yml @@ -12,6 +12,7 @@ nn: last_attempt: Du har eitt forsøk igjen før kontoen din vert låst. locked: Kontoen din er låst. not_found_in_database: Ugyldig %{authentication_keys} eller passord. + omniauth_user_creation_failure: Greidde ikkje laga konto for denne identiteten. pending: Kontoen din er vert gjennomgått enno. timeout: Økta di er utgått. Logg inn omatt for å halde fram. unauthenticated: Du må logge inn eller registere deg før du kan halde fram. @@ -47,19 +48,19 @@ nn: subject: 'Mastodon: Instuksjonar for å endra passord' title: Attstilling av passord two_factor_disabled: - explanation: Innlogging er nå mulig med kun e-postadresse og passord. + explanation: No kan du logga inn med berre epostadresse og passord. subject: 'Mastodon: To-faktor-autentisering deaktivert' - subtitle: To-faktor autentisering for din konto har blitt deaktivert. + subtitle: Tofaktorinnlogging for denne kontoen er skrudd av. title: 2FA deaktivert two_factor_enabled: - explanation: En token generert av den sammenkoblede TOTP-appen vil være påkrevd for innlogging. + explanation: Du treng ein kode frå den tilkopla tofaktor-appen din for å logga inn. subject: 'Mastodon: To-faktor-autentisering aktivert' - subtitle: Tofaktorautentisering er aktivert for din konto. + subtitle: Tofaktorpålogging er skrudd på for kontoen din. title: 2FA aktivert two_factor_recovery_codes_changed: explanation: Dei førre gjenopprettingskodane er ugyldige og nye er genererte. subject: 'Mastodon: To-faktor-gjenopprettingskodar har vorte genererte på nytt' - subtitle: De forrige gjenopprettingskodene er gjort ugyldige og nye er generert. + subtitle: Dei førre innloggingskodane er ikkje gyldige lenger, og nye kodar er laga. title: 2FA-gjenopprettingskodane er endra unlock_instructions: subject: 'Mastodon: Instruksjonar for å opne kontoen igjen' @@ -73,13 +74,13 @@ nn: subject: 'Mastodon: Sikkerheitsnøkkel sletta' title: Ein av sikkerheitsnøklane dine har blitt sletta webauthn_disabled: - explanation: Autentisering med sikkerhetsnøkler er deaktivert for kontoen din. - extra: Innlogging er nå mulig med kun tilgangstoken generert av den sammenkoblede TOTP-appen. + explanation: Innlogging med tryggingsnykjel er skrudd av for kontoen din. + extra: No kan du logga inn med berre kodane som er laga av den tilkopla tofaktor-appen din. subject: 'Mastodon: Autentisering med sikkerheitsnøklar vart skrudd av' title: Sikkerheitsnøklar deaktivert webauthn_enabled: - explanation: Sikkerhetsnøkkelautentisering har blitt aktivert for kontoen din. - extra: Sikkerhetsnøkkelen din kan nå bli brukt for innlogging. + explanation: Innlogging med tryggingsnyklar er skrudd på for kontoen din. + extra: No kan du bruka tryggingsnykjelen din for å logga inn. subject: 'Mastodon: Sikkerheitsnøkkelsautentisering vart skrudd på' title: Sikkerheitsnøklar aktivert omniauth_callbacks: diff --git a/config/locales/devise.pl.yml b/config/locales/devise.pl.yml index a6d48f11ef..f34fd04633 100644 --- a/config/locales/devise.pl.yml +++ b/config/locales/devise.pl.yml @@ -12,6 +12,7 @@ pl: last_attempt: Masz jeszcze jedną próbę; Twoje konto zostanie zablokowane jeśli się nie powiedzie. locked: Twoje konto zostało zablokowane. not_found_in_database: Nieprawidłowy %{authentication_keys} lub hasło. + omniauth_user_creation_failure: Błąd przy tworzeniu konta dla tej tożsamości. pending: Twoje konto oczekuje na przegląd. timeout: Twoja sesja wygasła. Zaloguj się ponownie, aby kontynuować.. unauthenticated: Zapisz się lub zaloguj, aby kontynuować. diff --git a/config/locales/devise.pt-BR.yml b/config/locales/devise.pt-BR.yml index 8b53f96514..e79a83c431 100644 --- a/config/locales/devise.pt-BR.yml +++ b/config/locales/devise.pt-BR.yml @@ -12,6 +12,7 @@ pt-BR: last_attempt: Você tem mais uma tentativa antes de sua conta ser bloqueada. locked: Sua conta está bloqueada. not_found_in_database: "%{authentication_keys} ou senha inválida." + omniauth_user_creation_failure: Erro ao criar uma conta para esta identidade. pending: Sua conta está sendo revisada. timeout: Sua sessão expirou. Por favor, entre novamente para continuar. unauthenticated: Você precisa entrar ou criar uma conta antes de continuar. diff --git a/config/locales/devise.pt-PT.yml b/config/locales/devise.pt-PT.yml index c169ddeb97..c66181fc5b 100644 --- a/config/locales/devise.pt-PT.yml +++ b/config/locales/devise.pt-PT.yml @@ -12,6 +12,7 @@ pt-PT: last_attempt: Tem só mais uma tentativa antes da sua conta ser bloqueada. locked: A tua conta está bloqueada. not_found_in_database: "%{authentication_keys} ou palavra-passe inválida." + omniauth_user_creation_failure: Erro ao criar uma conta para esta identidade. pending: A sua conta está ainda a aguardar revisão. timeout: A tua sessão expirou. Por favor, entra de novo para continuares. unauthenticated: Precisas de entrar na tua conta ou de te registares antes de continuar. diff --git a/config/locales/devise.ro.yml b/config/locales/devise.ro.yml index 1a6a3ecd77..868bb4b3a1 100644 --- a/config/locales/devise.ro.yml +++ b/config/locales/devise.ro.yml @@ -47,14 +47,19 @@ ro: subject: Instrucțiuni pentru resetarea parolei title: Resetare parolă two_factor_disabled: + explanation: Conectarea este acum posibilă folosind doar adresa de e-mail și parola. subject: Autentificare cu doi factori dezactivată + subtitle: Autentificarea cu doi factori pentru contul dvs. a fost dezactivată. title: 2FA dezactivat two_factor_enabled: + explanation: Pentru autentificare va fi necesar un token generat de aplicația TOTP asociată. subject: Autentificare în doi pași activată + subtitle: Autentificarea cu doi factori a fost activată pentru contul dvs. title: 2FA activat two_factor_recovery_codes_changed: explanation: Codurile anterioare de recuperare au fost invalidate și unele noi generate. subject: Recuperare în doi factori + subtitle: Codurile de recuperare anterioare au fost invalidate și s-au generat altele noi. title: Coduri de recuperare 2FA modificate unlock_instructions: subject: Instrucțiuni de deblocare @@ -68,9 +73,13 @@ ro: subject: 'Mastodon: Cheie de securitate ștearsă' title: Una dintre cheile tale de securitate a fost ștearsă webauthn_disabled: + explanation: Autentificarea cu chei de securitate a fost dezactivată pentru contul dvs. + extra: Conectarea este acum posibilă folosind doar token-ul generat de aplicația TOTP asociată. subject: 'Mastodon: Autentificarea cu chei de securitate dezactivată' title: Chei de securitate dezactivate webauthn_enabled: + explanation: Autentificarea cu cheie de securitate a fost activată pentru contul dvs. + extra: Cheia ta de securitate poate fi acum folosită pentru conectare. subject: 'Mastodon: Autentificarea cheii de securitate activată' title: Chei de securitate activate omniauth_callbacks: diff --git a/config/locales/devise.sk.yml b/config/locales/devise.sk.yml index 3eb4b5304c..bc01b73ccf 100644 --- a/config/locales/devise.sk.yml +++ b/config/locales/devise.sk.yml @@ -12,6 +12,7 @@ sk: last_attempt: Máš posledný pokus pred zamknutím tvojho účtu. locked: Tvoj účet je zamknutý. not_found_in_database: Nesprávny %{authentication_keys}, alebo heslo. + omniauth_user_creation_failure: Chyba pri vytváraní účtu pre túto identitu. pending: Tvoj účet je stále prehodnocovaný. timeout: Tvoja aktívna sezóna vypršala. Pre pokračovanie sa prosím prihlás znovu. unauthenticated: K pokračovaniu sa musíš zaregistrovať alebo prihlásiť. diff --git a/config/locales/devise.sl.yml b/config/locales/devise.sl.yml index 2d567e63f4..0eb9b6330a 100644 --- a/config/locales/devise.sl.yml +++ b/config/locales/devise.sl.yml @@ -12,6 +12,7 @@ sl: last_attempt: Pred zaklepom računa imate še en poskus. locked: Vaš račun je zaklenjen. not_found_in_database: Neveljavno %{authentication_keys} ali geslo. + omniauth_user_creation_failure: Napaka pri ustvarjanju računa za to identiteto. pending: Vaš račun je še vedno pod drobnogledom. timeout: Vaša seja je potekla. Če želite nadaljevati, se znova prijavite. unauthenticated: Pred nadaljevanjem se morate prijaviti ali vpisati. diff --git a/config/locales/devise.sq.yml b/config/locales/devise.sq.yml index 32136a0baa..76dd493245 100644 --- a/config/locales/devise.sq.yml +++ b/config/locales/devise.sq.yml @@ -12,6 +12,7 @@ sq: last_attempt: Mund të provoni edhe një herë, përpara se llogaria juaj të kyçet. locked: Llogaria juaj është e kyçur. not_found_in_database: "%{authentication_keys} ose fjalëkalim i pavlefshëm." + omniauth_user_creation_failure: Gabim në krijim llogarie për këtë identitet. pending: Llogaria juaj është ende nën shqyrtim. timeout: Sesioni juaj ka skaduar. Ju lutemi, që të vazhdohet, ribëni hyrjen. unauthenticated: Përpara se të vazhdohet më tej, lypset të bëni hyrjen ose të regjistroheni. diff --git a/config/locales/devise.sr-Latn.yml b/config/locales/devise.sr-Latn.yml index c48ed87dca..3947b2d84f 100644 --- a/config/locales/devise.sr-Latn.yml +++ b/config/locales/devise.sr-Latn.yml @@ -12,6 +12,7 @@ sr-Latn: last_attempt: Imate još jedan pokušaj pre nego što Vaš nalog bude zaključan. locked: Vaš nalog je zaključan. not_found_in_database: Neispravna %{authentication_keys} ili lozinka. + omniauth_user_creation_failure: Greška pri kreiranju naloga za ovaj identitet. pending: Vaš račun je još uvek u pregledu. timeout: Vreme trajanja Vaše sesije je isteklo. Za nastavak prijavite se ponovo. unauthenticated: Za nastavak se morate prijaviti ili registrovati. diff --git a/config/locales/devise.sr.yml b/config/locales/devise.sr.yml index 3e49cf97ee..a4c08dfaf0 100644 --- a/config/locales/devise.sr.yml +++ b/config/locales/devise.sr.yml @@ -12,6 +12,7 @@ sr: last_attempt: Имате још један покушај пре него што Ваш налог буде закључан. locked: Ваш налог је закључан. not_found_in_database: Неисправна %{authentication_keys} или лозинка. + omniauth_user_creation_failure: Грешка при креирању налога за овај идентитет. pending: Ваш налог се још увек прегледа. timeout: Ваша сесија је истекла. Пријавите се поново да бисте наставили. unauthenticated: Морате да се пријавите или региструјете пре него што наставите. diff --git a/config/locales/devise.sv.yml b/config/locales/devise.sv.yml index 6544f426bd..9300493fa0 100644 --- a/config/locales/devise.sv.yml +++ b/config/locales/devise.sv.yml @@ -77,6 +77,7 @@ sv: subject: 'Mastodon: Autentisering med säkerhetsnycklar är inaktiverat' title: Säkerhetsnycklar inaktiverade webauthn_enabled: + explanation: Autentisering med säkerhetsnyckel har aktiverats för ditt konto. extra: Din säkerhetsnyckel kan nu användas för inloggning. subject: 'Mastodon: Autentisering med säkerhetsnyckel är aktiverat' title: Säkerhetsnycklar aktiverade diff --git a/config/locales/devise.th.yml b/config/locales/devise.th.yml index 40baabcf75..50e2e4b29e 100644 --- a/config/locales/devise.th.yml +++ b/config/locales/devise.th.yml @@ -12,6 +12,7 @@ th: last_attempt: คุณลองได้อีกหนึ่งครั้งก่อนที่จะมีการล็อคบัญชีของคุณ locked: มีการล็อคบัญชีของคุณอยู่ not_found_in_database: "%{authentication_keys} หรือรหัสผ่านไม่ถูกต้อง" + omniauth_user_creation_failure: เกิดข้อผิดพลาดในการสร้างบัญชีสำหรับข้อมูลประจำตัวนี้ pending: บัญชีของคุณยังคงอยู่ระหว่างการตรวจทาน timeout: เซสชันของคุณหมดอายุแล้ว โปรดเข้าสู่ระบบอีกครั้งเพื่อดำเนินการต่อ unauthenticated: คุณจำเป็นต้องเข้าสู่ระบบหรือลงทะเบียนก่อนดำเนินการต่อ diff --git a/config/locales/devise.tok.yml b/config/locales/devise.tok.yml new file mode 100644 index 0000000000..d15ecd21b2 --- /dev/null +++ b/config/locales/devise.tok.yml @@ -0,0 +1 @@ +tok: diff --git a/config/locales/devise.tr.yml b/config/locales/devise.tr.yml index 66ca9b2816..e709d3fff1 100644 --- a/config/locales/devise.tr.yml +++ b/config/locales/devise.tr.yml @@ -12,6 +12,7 @@ tr: last_attempt: Hesabınız kilitlenmeden önce bir kez daha denemeniz gerekir. locked: Hesabınız kilitlendi. not_found_in_database: Geçersiz %{authentication_keys} ya da parola. + omniauth_user_creation_failure: Bu kimlik için hesap oluşturmada hata. pending: Hesabınız hala inceleniyor. timeout: Oturum süreniz sona erdi. Lütfen devam etmek için tekrar giriş yapınız. unauthenticated: Devam etmeden önce oturum açmanız veya kayıt olmanız gerek. diff --git a/config/locales/devise.uk.yml b/config/locales/devise.uk.yml index 55429b3c76..65e89a274f 100644 --- a/config/locales/devise.uk.yml +++ b/config/locales/devise.uk.yml @@ -12,6 +12,7 @@ uk: last_attempt: У вас залишилась ще одна спроба, після якої ваш обліковий запис буде заблоковано. locked: Ваш обліковий запис заблоковано. not_found_in_database: Неправильний %{authentication_keys} або пароль. + omniauth_user_creation_failure: Помилка створення облікового запису для цієї особи. pending: Ваш обліковий запис ще перебуває на розгляді. timeout: Час сеансу минув. Будь ласка, увійдіть знову, щоб продовжити. unauthenticated: Щоб продовжити, увійдіть або зареєструйтеся. @@ -47,14 +48,19 @@ uk: subject: 'Mastodon: Інструкції для скидання паролю' title: Скидання пароля two_factor_disabled: + explanation: Вхід можливий лише за допомогою адреси електронної пошти та пароля. subject: 'Mastodon: двофакторну авторизацію вимкнено' + subtitle: Двоетапна перевірка для вашого облікового запису вимкнена. title: Двофакторна автентифікація вимкнена two_factor_enabled: + explanation: Для входу необхідний токен створений пов'язаним застосунком TOTP. subject: 'Mastodon: двофакторну авторизацію увімкнено' + subtitle: Двоетапна перевірка увімкнена для вашого облікового запису. title: Двофакторна автентифікація увімкнена two_factor_recovery_codes_changed: explanation: Попередні коди відновлення були анульовані і генеруються нові. subject: 'Mastodon: коди двофакторного відновлення повторно згенеровано' + subtitle: Попередні коди відновлення анульовані та генеруються нові. title: Коди двофакторного відновлення змінено unlock_instructions: subject: 'Mastodon: Інструкції для розблокування' @@ -68,9 +74,13 @@ uk: subject: 'Mastodon: Ключ безпеки видалено' title: Один з ваших ключів безпеки було видалено webauthn_disabled: + explanation: Автентифікація з ключами безпеки була вимкнена для вашого облікового запису. + extra: Тепер можна ввійти використовуючи лише токен, згенерований застосунком TOTP. subject: 'Mastodon: Аутентифікація за допомогою ключів безпеки вимкнена' title: Ключі безпеки вимкнуто webauthn_enabled: + explanation: Вхід за допомогою ключів безпеки ввімкнено для вашого облікового запису. + extra: Тепер ви можете використовувати ваш ключ безпеки для входу. subject: 'Mastodon: Авторизація ключа безпеки увімкнена' title: Ключі безпеки увімкнено omniauth_callbacks: diff --git a/config/locales/devise.vi.yml b/config/locales/devise.vi.yml index 190f7282c4..6ae78f83cc 100644 --- a/config/locales/devise.vi.yml +++ b/config/locales/devise.vi.yml @@ -12,6 +12,7 @@ vi: last_attempt: Nếu thử sai lần nữa, tài khoản của bạn sẽ bị khóa. locked: Tài khoản của bạn bị khóa. not_found_in_database: "%{authentication_keys} không có trong dữ liệu." + omniauth_user_creation_failure: Xảy ra lỗi khi tạo tài khoản này. pending: Tài khoản của bạn vẫn đang được xem xét. timeout: Phiên của bạn đã hết hạn. Vui lòng đăng nhập lại để tiếp tục. unauthenticated: Bạn cần đăng nhập để tiếp tục. diff --git a/config/locales/devise.zh-CN.yml b/config/locales/devise.zh-CN.yml index 9b4b3ae203..3eb722b961 100644 --- a/config/locales/devise.zh-CN.yml +++ b/config/locales/devise.zh-CN.yml @@ -12,6 +12,7 @@ zh-CN: last_attempt: 你只有最后一次尝试机会,若未通过,帐号将被锁定。 locked: 你的账户已被锁定。 not_found_in_database: "%{authentication_keys}或密码错误。" + omniauth_user_creation_failure: 为此身份创建账户时出错。 pending: 你的账号仍在审核中。 timeout: 你的会话已过期。请重新登录再继续操作。 unauthenticated: 继续操作前请注册或者登录。 diff --git a/config/locales/devise.zh-HK.yml b/config/locales/devise.zh-HK.yml index 7f728bf0ad..a2620a8e4a 100644 --- a/config/locales/devise.zh-HK.yml +++ b/config/locales/devise.zh-HK.yml @@ -12,6 +12,7 @@ zh-HK: last_attempt: 若你再一次嘗試失敗,我們將鎖定你的帳號,以策安全。 locked: 你的帳號已被鎖定。 not_found_in_database: 不正確的%{authentication_keys}或密碼。 + omniauth_user_creation_failure: 為此身份建立帳號時出錯。 pending: 你的帳號仍在審核中 timeout: 你的登入階段已經過期,請重新登入以繼續使用。 unauthenticated: 你必須先登入或登記,以繼續使用。 diff --git a/config/locales/devise.zh-TW.yml b/config/locales/devise.zh-TW.yml index 06438971a7..7ead831e4f 100644 --- a/config/locales/devise.zh-TW.yml +++ b/config/locales/devise.zh-TW.yml @@ -12,6 +12,7 @@ zh-TW: last_attempt: 帳號鎖定前,您還有最後一次嘗試機會。 locked: 已鎖定您的帳號。 not_found_in_database: 無效的 %{authentication_keys} 或密碼。 + omniauth_user_creation_failure: 以此身分新增帳號時發生錯誤。 pending: 您的帳號仍在審核中。 timeout: 登入階段逾時。請重新登入以繼續。 unauthenticated: 您必須先登入或註冊才能繼續使用。 diff --git a/config/locales/doorkeeper.be.yml b/config/locales/doorkeeper.be.yml index 4524dd707e..748cbeafa1 100644 --- a/config/locales/doorkeeper.be.yml +++ b/config/locales/doorkeeper.be.yml @@ -132,7 +132,7 @@ be: follow: Падпіскі, ігнараванне і блакіроўка follows: Падпіскі lists: Спісы - media: Мультымедыйныя ўкладанні + media: Мультымедыйныя далучэнні mutes: Ігнараваныя notifications: Апавяшчэнні push: Push-апавяшчэнні diff --git a/config/locales/doorkeeper.cs.yml b/config/locales/doorkeeper.cs.yml index ba2100edfd..be2a4d971a 100644 --- a/config/locales/doorkeeper.cs.yml +++ b/config/locales/doorkeeper.cs.yml @@ -84,7 +84,7 @@ cs: credential_flow_not_configured: Proud Resource Owner Password Credentials selhal, protože Doorkeeper.configure.resource_owner_from_credentials nebylo nakonfigurováno. invalid_client: Ověření klienta selhalo kvůli neznámému klientovi, chybějící klientské autentizaci či nepodporované autentizační metodě. invalid_grant: Poskytnuté oprávnění je neplatné, vypršela jeho platnost, bylo odvoláno, neshoduje se s URI přesměrování použitým v požadavku o autorizaci, nebo bylo uděleno jinému klientu. - invalid_redirect_uri: URI pro přesměrování není platné. + invalid_redirect_uri: Zahrnutá přesměrovací URI není platná. invalid_request: missing_param: 'Chybí potřebný parametr: %{value}.' request_not_authorized: Požadavek musí být autorizován. Potřebný parametr pro autorizaci požadavku chybí nebo není platný. diff --git a/config/locales/doorkeeper.eu.yml b/config/locales/doorkeeper.eu.yml index 9886e034b0..e7963672fa 100644 --- a/config/locales/doorkeeper.eu.yml +++ b/config/locales/doorkeeper.eu.yml @@ -97,7 +97,7 @@ eu: unknown: Sarbide token-a baliogabea da resource_owner_authenticator_not_configured: Baliabidearen jabearen bilaketak huts egin du Doorkeeper.configure.resource_owner_authenticator konfiguratu gabe dagoelako. server_error: Autorizatze zerbitzariak eskaera betetzea eragotzi duen ustekabeko baldintza bat aurkitu du. - temporarily_unavailable: Autorizatze zerbitzariak ezin du orain eskaera bete une batez zerbitzariak gainezka egin duelako edo mantentze lanetan dagoelako. + temporarily_unavailable: Baimen-zerbitzariak ezin du orain eskaera bete, une batez zerbitzariak gainezka egin duelako edo mantentze lanetan dagoelako. unauthorized_client: Bezeroak ez du eskaera hau metodo hau erabiliz egiteko baimenik. unsupported_grant_type: Autorizatze mota ez da onartzen autorizatze zerbitzarian. unsupported_response_type: Autorizatze zerbitzari honek ez du onartzen erantzun mota hau. diff --git a/config/locales/doorkeeper.gl.yml b/config/locales/doorkeeper.gl.yml index 57ee4777c9..7564bc2dc6 100644 --- a/config/locales/doorkeeper.gl.yml +++ b/config/locales/doorkeeper.gl.yml @@ -151,9 +151,9 @@ gl: admin:read:accounts: ler información sensible de todas as contas admin:read:canonical_email_blocks: ler a información sensíbel de tódolos bloqueos de correos electrónicos canónicos admin:read:domain_allows: ler a información sensible de todos os dominios permitidos - admin:read:domain_blocks: ler a información sensible de tódolos bloqueos de dominio + admin:read:domain_blocks: ler a información sensible de todos os bloqueos de dominio admin:read:email_domain_blocks: ler a información sensible de tódolos dominios de correo electrónico - admin:read:ip_blocks: ler a información sensible de tódolos bloqueos de IP + admin:read:ip_blocks: ler a información sensible de todos os bloqueos de IP admin:read:reports: ler información sensible de todos os informes e contas denunciadas admin:write: modificar todos os datos no servidor admin:write:accounts: executar accións de moderación nas contas diff --git a/config/locales/doorkeeper.ia.yml b/config/locales/doorkeeper.ia.yml index d689354f61..443342b404 100644 --- a/config/locales/doorkeeper.ia.yml +++ b/config/locales/doorkeeper.ia.yml @@ -34,6 +34,8 @@ ia: confirmations: revoke: Es tu secur? index: + last_used_at: Ultime uso in %{date} + never_used: Nunquam usate scopes: Permissiones title: Tu applicationes autorisate flash: @@ -53,6 +55,7 @@ ia: conversations: Conversationes favourites: Favoritos lists: Listas + mutes: Silentiates notifications: Notificationes push: Notificationes push search: Cercar @@ -63,15 +66,23 @@ ia: applications: Applicationes oauth2_provider: Fornitor OAuth2 scopes: + admin:read: leger tote le datos in le servitor + read: leger tote le datos de tu conto + read:accounts: vider informationes de conto read:favourites: vider tu favoritos + read:filters: vider tu filtros read:lists: vider tu listas read:notifications: vider tu notificationes + read:reports: vider tu reportos read:statuses: vider tote le messages write:accounts: modificar tu profilo write:blocks: blocar contos e dominios + write:conversations: silentiar e deler conversationes write:favourites: messages favorite write:filters: crear filtros + write:follows: sequer personas write:lists: crear listas write:media: incargar files de medios + write:mutes: silentiar personas e conversationes write:notifications: rader tu notificationes write:statuses: publicar messages diff --git a/config/locales/doorkeeper.kab.yml b/config/locales/doorkeeper.kab.yml index fe1a8d9c50..d7f8904a35 100644 --- a/config/locales/doorkeeper.kab.yml +++ b/config/locales/doorkeeper.kab.yml @@ -36,7 +36,7 @@ kab: application: Asnas callback_url: URL n tririt n wawal delete: Kkes - empty: Ulac γur-ek·em isnasen. + empty: Ulac ɣur-k·m isnasen. name: Isem new: Asnas amaynut show: Ẓer @@ -57,7 +57,7 @@ kab: new: title: Tlaq tsiregt show: - title: Nγel tangalt n wurag sakkin senteḍ-itt deg usnas. + title: Nɣel tangalt n wurag sakkin senteḍ-itt deg usnas. authorized_applications: buttons: revoke: Ḥwi @@ -113,13 +113,13 @@ kab: read:notifications: ẓer tilγa-ik read:reports: ẓer ineqqisen-ik·im read:search: anadi deg umkan-ik·im - read:statuses: ẓer meṛṛa tisuffaγ + read:statuses: ẓer meṛṛa tisuffaɣ write: beddel meṛṛa isefka n umiḍan-ik write:accounts: ẓreg amaγnu-ik write:blocks: seḥbes imiḍanen d tγula - write:bookmarks: ad yernu tisuffγin γer ticraḍ + write:bookmarks: ad yernu tisuffaɣ ɣer ticraḍ write:filters: rnu-d imsizedgen write:follows: ḍfeṛ imdanen write:lists: ad yesnulfu tibdarin - write:media: ad yessali ifayluyen n teγwalt + write:media: ad yessali ifuyla n umidya write:notifications: sfeḍ tilɣa-k·m diff --git a/config/locales/doorkeeper.lad.yml b/config/locales/doorkeeper.lad.yml index f52bac39c2..b2c140b9c2 100644 --- a/config/locales/doorkeeper.lad.yml +++ b/config/locales/doorkeeper.lad.yml @@ -130,7 +130,7 @@ lad: favourites: Favoritos filters: Filtros follow: Segimientos, silensiasyones i blokos - follows: Segimientos + follows: Segimyentos lists: Listas media: Aneksos de multimedia mutes: Silensiasyones diff --git a/config/locales/doorkeeper.th.yml b/config/locales/doorkeeper.th.yml index 3c2c75565b..067e065588 100644 --- a/config/locales/doorkeeper.th.yml +++ b/config/locales/doorkeeper.th.yml @@ -156,13 +156,13 @@ th: admin:read:ip_blocks: อ่านข้อมูลที่ละเอียดอ่อนของการปิดกั้น IP ทั้งหมด admin:read:reports: อ่านข้อมูลที่ละเอียดอ่อนของรายงานและบัญชีที่ได้รับการรายงานทั้งหมด admin:write: ปรับเปลี่ยนข้อมูลทั้งหมดในเซิร์ฟเวอร์ - admin:write:accounts: ทำการกระทำการควบคุมบัญชี - admin:write:canonical_email_blocks: ทำการกระทำการควบคุมการปิดกั้นอีเมลมาตรฐาน - admin:write:domain_allows: ทำการกระทำการควบคุมการอนุญาตโดเมน - admin:write:domain_blocks: ทำการกระทำการควบคุมการปิดกั้นโดเมน - admin:write:email_domain_blocks: ทำการกระทำการควบคุมการปิดกั้นโดเมนอีเมล - admin:write:ip_blocks: ทำการกระทำการควบคุมการปิดกั้น IP - admin:write:reports: ทำการกระทำการควบคุมรายงาน + admin:write:accounts: ทำการกระทำการกลั่นกรองต่อบัญชี + admin:write:canonical_email_blocks: ทำการกระทำการกลั่นกรองต่อการปิดกั้นอีเมลมาตรฐาน + admin:write:domain_allows: ทำการกระทำการกลั่นกรองต่อการอนุญาตโดเมน + admin:write:domain_blocks: ทำการกระทำการกลั่นกรองต่อการปิดกั้นโดเมน + admin:write:email_domain_blocks: ทำการกระทำการกลั่นกรองต่อการปิดกั้นโดเมนอีเมล + admin:write:ip_blocks: ทำการกระทำการกลั่นกรองต่อการปิดกั้น IP + admin:write:reports: ทำการกระทำการกลั่นกรองต่อรายงาน crypto: ใช้การเข้ารหัสแบบต้นทางถึงปลายทาง follow: ปรับเปลี่ยนความสัมพันธ์ของบัญชี push: รับการแจ้งเตือนแบบผลักของคุณ diff --git a/config/locales/doorkeeper.tok.yml b/config/locales/doorkeeper.tok.yml new file mode 100644 index 0000000000..6aef4fb34b --- /dev/null +++ b/config/locales/doorkeeper.tok.yml @@ -0,0 +1,51 @@ +--- +tok: + doorkeeper: + applications: + buttons: + cancel: o pini + destroy: o weka + edit: o ante + submit: o awen + confirmations: + destroy: ni li pona ala pona? + edit: + title: o ante e ilo nanpa + form: + error: 'pakala a! o lukin e ni: lipu sina li jo ala jo e pakala.' + index: + delete: o weka + empty: sina li jo e ilo nanpa ala. + name: nimi + new: o pali e ilo nanpa sin + title: ilo nanpa sina + new: + title: o pali e ilo nanpa sin + show: + title: ilo nanpa pi nimi %{name} + authorizations: + error: + title: pakala li lon. + authorized_applications: + confirmations: + revoke: ni li pona ala pona? + index: + scopes: ken + errors: + messages: + invalid_request: + missing_param: o pana e sona "%{value}". + flash: + applications: + create: + notice: sina pali e ilo nanpa. + destroy: + notice: sina weka e ilo nanpa. + update: + notice: sina ante e ilo nanpa. + authorized_applications: + destroy: + notice: sina weka e ilo nanpa tawa sina. + grouped_scopes: + access: + read: lukin taso diff --git a/config/locales/doorkeeper.tr.yml b/config/locales/doorkeeper.tr.yml index fce8c646e8..2dde5f6322 100644 --- a/config/locales/doorkeeper.tr.yml +++ b/config/locales/doorkeeper.tr.yml @@ -15,7 +15,7 @@ tr: fragment_present: parça içeremez. invalid_uri: geçerli bir URL olmalıdır. relative_uri: mutlaka bir URL olmalıdır. - secured_uri: HTTPS/SSL URL olması gerekir. + secured_uri: HTTPS/SSL URI olması gerekir. doorkeeper: applications: buttons: @@ -84,7 +84,7 @@ tr: credential_flow_not_configured: Kaynak Sahibi Parolası Kimlik Bilgileri akışı Doorkeeper.configure.resource_owner_from_credentials 'ın yapılandırılmamış olması nedeniyle başarısız oldu. invalid_client: İstemcinin kimlik doğrulaması bilinmeyen istemci, istemci kimlik doğrulamasının dahil olmaması veya desteklenmeyen kimlik doğrulama yöntemi nedeniyle başarısız oldu. invalid_grant: Sağlanan yetkilendirme izni geçersiz, süresi dolmuş, iptal edilmiş, yetkilendirme isteğinde kullanılan yönlendirme URL'siyle eşleşmiyor veya başka bir istemciye verilmiş. - invalid_redirect_uri: Dahil edilmiş yönlendirme URL'si geçersiz. + invalid_redirect_uri: Dahil edilmiş yönlendirme uri'si geçersiz. invalid_request: missing_param: 'Gerekli parametre eksik: %{value}.' request_not_authorized: İsteğin yetkilendirilmesi gerekiyor. İsteği yetkilendirmek için gereken parametre eksik veya geçersiz. @@ -128,7 +128,7 @@ tr: conversations: Sohbetler crypto: Uçtan uca şifreleme favourites: Favoriler - filters: Filtreler + filters: Süzgeçler follow: Takipler, Sessizler ve Engeller follows: Takip edilenler lists: Listeler @@ -161,7 +161,7 @@ tr: admin:write:domain_allows: alan adı izinleri için denetleme eylemleri gerçekleştirin admin:write:domain_blocks: alan adı engellemeleri için denetleme eylemleri gerçekleştirin admin:write:email_domain_blocks: e-posta alan adı engellemeleri için denetleme eylemleri gerçekleştirin - admin:write:ip_blocks: IP engellemeleri için denetleme eylemleri gerçekleştirin + admin:write:ip_blocks: IP blokları üzerinde moderasyon eylemleri gerçekleştir admin:write:reports: raporlarda denetleme eylemleri gerçekleştirin crypto: uçtan uca şifreleme kullan follow: hesap ilişkilerini değiştirin @@ -171,7 +171,7 @@ tr: read:blocks: engellemelerinizi görün read:bookmarks: yer imlerinizi görün read:favourites: favorilerinizi görün - read:filters: filtrelerinizi görün + read:filters: süzgeçlerinizi görün read:follows: takip ettiklerinizi görün read:lists: listelerinizi görün read:mutes: sessize aldıklarınızı görün diff --git a/config/locales/el.yml b/config/locales/el.yml index 8b632a358b..c641d4dca9 100644 --- a/config/locales/el.yml +++ b/config/locales/el.yml @@ -309,6 +309,7 @@ el: unpublish: Αναίρεση δημοσίευσης unpublished_msg: Επιτυχής ακύρωση δημοσίευσης ανακοίνωσης! updated_msg: Επιτυχής ενημέρωση ανακοίνωσης! + critical_update_pending: Κρίσιμη ενημέρωση σε αναμονή custom_emojis: assign_category: Ανάθεση κατηγορίας by_domain: Τομέας @@ -382,6 +383,15 @@ el: undo: Αφαίρεση συναλλαγής με τον τομέα domain_blocks: add_new: Προσθήκη νέου αποκλεισμού τομέα + confirm_suspension: + cancel: Άκυρο + confirm: Αναστολή + permanent_action: Η κατάργηση της αναστολής δε θα αποκαταστήσει καθόλου δεδομένα ή σχέση. + preamble_html: Πρόκειται να αναστείλετε το %{domain} και τους υποτομείς του. + remove_all_data: Αυτό θα αφαιρέσει όλο το περιεχόμενο, τα μέσα και τα δεδομένα προφίλ για τους λογαριασμούς αυτού του τομέα από το διακομιστή σας. + stop_communication: Ο διακομιστής σας θα σταματήσει να επικοινωνεί με αυτούς τους διακομιστές. + title: Επιβεβαίωση αποκλεισμού τομέα για %{domain} + undo_relationships: Αυτό θα αναιρέσει οποιαδήποτε σχέση ακολουθίας μεταξύ των λογαριασμών αυτών των διακομιστών και των δικών σας. created_msg: Ο αποκλεισμός τομέα είναι υπό επεξεργασία destroyed_msg: Ο αποκλεισμός τομέα αναιρέθηκε domain: Τομέας @@ -415,6 +425,7 @@ el: view: Εμφάνιση αποκλεισμού τομέα email_domain_blocks: add_new: Προσθήκη νέου + allow_registrations_with_approval: Να επιτρέπονται εγγραφές με έγκριση attempts_over_week: one: "%{count} προσπάθεια την τελευταία εβδομάδα" other: "%{count} προσπάθειες εγγραφής την τελευταία εβδομάδα" @@ -524,6 +535,7 @@ el: total_reported: Αναφορές προς εκείνους total_storage: Συνημμένα πολυμέσα totals_time_period_hint_html: Τα σύνολα που εμφανίζονται παρακάτω περιλαμβάνουν στοιχεία από την αρχή. + unknown_instance: Προς το παρόν δεν υπάρχει καμία εγγραφή αυτού του τομέα σε αυτόν το διακομιστή. invites: deactivate_all: Απενεργοποίηση όλων filter: @@ -600,6 +612,7 @@ el: created_at: Αναφέρθηκε delete_and_resolve: Διαγραφή αναρτήσεων forwarded: Προωθημένα + forwarded_replies_explanation: Αυτή η αναφορά είναι από απομακρυσμένο χρήστη και για απομακρυσμένο περιεχόμενο. Σας έχει διαβιβαστεί, επειδή το αναφερόμενο περιεχόμενο απαντά σε έναν από τους χρήστες σας. forwarded_to: Προώθημένα προς %{domain} mark_as_resolved: Σημείωση ως επιλυμένο mark_as_sensitive: Σήμανση ως ευαίσθητο @@ -1694,10 +1707,6 @@ el: edit_profile_action: Στήσιμο προφίλ edit_profile_step: Μπορείς να προσαρμόσεις το προφίλ σου ανεβάζοντας μια εικόνα προφίλ, αλλάζοντας το εμφνιζόμενο όνομα και άλλα. Μπορείς να επιλέξεις να αξιολογείς νέους ακόλουθους πριν τους επιτραπεί να σε ακολουθήσουν. explanation: Μερικές συμβουλές για να ξεκινήσεις - final_action: Ξεκίνα να αναρτάς - final_step: 'Ξεκίνα να δημοσιεύεις! Ακόμα και χωρίς ακόλουθους τις δημόσιες δημοσιεύσεις σου μπορεί να τις δουν άλλοι, για παράδειγμα στην τοπική ροή ή στις ετικέτες. Ίσως να θέλεις να μας γνωρίσεις τον εαυτό σου με την ετικέτα #introductions.' - full_handle: Το πλήρες όνομά σου - full_handle_hint: Αυτό θα εδώ θα πεις στους φίλους σου για να σου μιλήσουν ή να σε ακολουθήσουν από άλλο διακομιστή. subject: Καλώς ήρθες στο Mastodon title: Καλώς όρισες, %{name}! users: diff --git a/config/locales/en-GB.yml b/config/locales/en-GB.yml index b11c6de11f..6b2554fe15 100644 --- a/config/locales/en-GB.yml +++ b/config/locales/en-GB.yml @@ -425,6 +425,7 @@ en-GB: view: View domain block email_domain_blocks: add_new: Add new + allow_registrations_with_approval: Allow registrations with approval attempts_over_week: one: "%{count} attempt over the last week" other: "%{count} sign-up attempts over the last week" @@ -1545,6 +1546,9 @@ en-GB: errors: limit_reached: Limit of different reactions reached unrecognized_emoji: is not a recognised emoji + redirects: + prompt: If you trust this link, click it to continue. + title: You are leaving %{instance}. relationships: activity: Account activity confirm_follow_selected_followers: Are you sure you want to follow selected followers? @@ -1607,6 +1611,7 @@ en-GB: unknown_browser: Unknown Browser weibo: Weibo current_session: Current session + date: Date description: "%{browser} on %{platform}" explanation: These are the web browsers currently logged in to your Mastodon account. ip: IP @@ -1773,16 +1778,27 @@ en-GB: webauthn: Security keys user_mailer: appeal_approved: + action: Account Settings explanation: The appeal of the strike against your account on %{strike_date} that you submitted on %{appeal_date} has been approved. Your account is once again in good standing. subject: Your appeal from %{date} has been approved + subtitle: Your account is once again in good standing. title: Appeal approved appeal_rejected: explanation: The appeal of the strike against your account on %{strike_date} that you submitted on %{appeal_date} has been rejected. subject: Your appeal from %{date} has been rejected + subtitle: Your appeal has been rejected. title: Appeal rejected backup_ready: + explanation: You requested a full backup of your Mastodon account. + extra: It's now ready for download! subject: Your archive is ready for download title: Archive takeout + failed_2fa: + details: 'Here are details of the sign-in attempt:' + explanation: Someone has tried to sign in to your account but provided an invalid second authentication factor. + further_actions_html: If this wasn't you, we recommend that you %{action} immediately as it may be compromised. + subject: Second factor authentication failure + title: Failed second factor authentication suspicious_sign_in: change_password: change your password details: 'Here are details of the login:' @@ -1825,10 +1841,6 @@ en-GB: edit_profile_action: Setup profile edit_profile_step: You can customise your profile by uploading a profile picture, changing your display name and more. You can opt-in to review new followers before they’re allowed to follow you. explanation: Here are some tips to get you started - final_action: Start posting - final_step: 'Start posting! Even without followers, your public posts may be seen by others, for example on the local timeline or in hashtags. You may want to introduce yourself on the #introductions hashtag.' - full_handle: Your full handle - full_handle_hint: This is what you would tell your friends so they can message or follow you from another server. subject: Welcome to Mastodon title: Welcome aboard, %{name}! users: @@ -1836,6 +1848,7 @@ en-GB: go_to_sso_account_settings: Go to your identity provider's account settings invalid_otp_token: Invalid two-factor code otp_lost_help_html: If you lost access to both, you may get in touch with %{email} + rate_limited: Too many authentication attempts, try again later. seamless_external_login: You are logged in via an external service, so password and e-mail settings are not available. signed_in_as: 'Logged in as:' verification: diff --git a/config/locales/en.yml b/config/locales/en.yml index 9d739be07f..cff244a4b9 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -767,6 +767,7 @@ en: disabled: To no one users: To logged-in local users registrations: + moderation_recommandation: Please make sure you have an adequate and reactive moderation team before you open registrations to everyone! preamble: Control who can create an account on your server. title: Registrations registrations_mode: @@ -774,6 +775,7 @@ en: approved: Approval required for sign up none: Nobody can sign up open: Anyone can sign up + warning_hint: We recommend using “Approval required for sign up” unless you are confident your moderation team can handle spam and malicious registrations in a timely fashion. security: authorized_fetch: Require authentication from federated servers authorized_fetch_hint: Requiring authentication from federated servers enables stricter enforcement of both user-level and server-level blocks. However, this comes at the cost of a performance penalty, reduces the reach of your replies, and may introduce compatibility issues with some federated services. In addition, this will not prevent dedicated actors from fetching your public posts and accounts. @@ -966,6 +968,9 @@ en: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: Due to a lack of recent moderator activity, registrations on %{instance} have been automatically switched to requiring manual review, to prevent %{instance} from being used as a platform for potential bad actors. You can switch it back to open registrations at any time. + subject: Registrations for %{instance} have been automatically switched to requiring approval new_appeal: actions: delete_statuses: to delete their posts @@ -1839,13 +1844,42 @@ en: silence: Account limited suspend: Account suspended welcome: - edit_profile_action: Setup profile - edit_profile_step: You can customize your profile by uploading a profile picture, changing your display name and more. You can opt-in to review new followers before they’re allowed to follow you. + apps_android_action: Get it on Google Play + apps_ios_action: Download on the App Store + apps_step: Download our official apps. + apps_title: Mastodon apps + checklist_subtitle: 'Let''s get you started on this new social frontier:' + checklist_title: Welcome Checklist + edit_profile_action: Personalize + edit_profile_step: Boost your interactions by having a comprehensive profile. + edit_profile_title: Personalize your profile explanation: Here are some tips to get you started - final_action: Start posting - final_step: 'Start posting! Even without followers, your public posts may be seen by others, for example on the local timeline or in hashtags. You may want to introduce yourself on the #introductions hashtag.' - full_handle: Your full handle - full_handle_hint: This is what you would tell your friends so they can message or follow you from another server. + feature_action: Learn more + feature_audience: Mastodon provides you with a unique possibility of managing your audience without middlemen. Mastodon deployed on your own infrastructure allows you to follow and be followed from any other Mastodon server online and is under no one's control but yours. + feature_audience_title: Build your audience in confidence + feature_control: You know best what you want to see on your home feed. No algorithms or ads to waste your time. Follow anyone across any Mastodon server from a single account and receive their posts in chronological order, and make your corner of the internet a little more like you. + feature_control_title: Stay in control of your own timeline + feature_creativity: Mastodon supports audio, video and picture posts, accessibility descriptions, polls, content warnings, animated avatars, custom emojis, thumbnail crop control, and more, to help you express yourself online. Whether you're publishing your art, your music, or your podcast, Mastodon is there for you. + feature_creativity_title: Unparalleled creativity + feature_moderation: Mastodon puts decision making back in your hands. Each server creates their own rules and regulations, which are enforced locally and not top-down like corporate social media, making it the most flexible in responding to the needs of different groups of people. Join a server with the rules you agree with, or host your own. + feature_moderation_title: Moderating the way it should be + follow_action: Follow + follow_step: Following interesting people is what Mastodon is all about. + follow_title: Personalize your home feed + follows_subtitle: Follow well-known accounts + follows_title: Who to follow + follows_view_more: View more people to follow + hashtags_recent_count: "%{people} people in the past %{days} days" + hashtags_subtitle: Explore what’s trending since past 2 days + hashtags_title: Trending hashtags + hashtags_view_more: View more trending hashtags + post_action: Compose + post_step: Say hello to the world with text, photos, videos, or polls. + post_title: Make your first post + share_action: Share + share_step: Let your friends know how to find you on Mastodon. + share_title: Share your Mastodon profile + sign_in_action: Sign in subject: Welcome to Mastodon title: Welcome aboard, %{name}! users: diff --git a/config/locales/eo.yml b/config/locales/eo.yml index beb6aa6d9f..bc694578b7 100644 --- a/config/locales/eo.yml +++ b/config/locales/eo.yml @@ -1763,10 +1763,6 @@ eo: edit_profile_action: Agordi profilon edit_profile_step: Vi povas personecigi vian profilon per alŝuti profilbildon, ŝangi vian montronomo kaj pli. explanation: Jen kelkaj konsiloj por helpi vin komenci - final_action: Ekmesaĝi - final_step: 'Ekmesaĝu! Eĉ sen sekvantoj, viaj publikaj mesaĝoj povas esti vidataj de aliaj, ekzemple en la loka templinio aŭ per kradvortoj. Eble vi ŝatus prezenti vin per la kradvorto #introductions / #konigo.' - full_handle: Via kompleta uzantnomo - full_handle_hint: Jen kion vi dirus al viaj amikoj, por ke ili mesaĝu aŭ sekvu vin de alia servilo. subject: Bonvenon en Mastodon title: Bonvenon, %{name}! users: diff --git a/config/locales/es-AR.yml b/config/locales/es-AR.yml index d1dbdbf0b8..37fcc11d78 100644 --- a/config/locales/es-AR.yml +++ b/config/locales/es-AR.yml @@ -767,6 +767,7 @@ es-AR: disabled: A nadie users: A usuarios locales con sesiones abiertas registrations: + moderation_recommandation: Por favor, ¡asegurate de tener un equipo de moderación adecuado y reactivo antes de abrir los registros a todos! preamble: Controlá quién puede crear una cuenta en tu servidor. title: Registros registrations_mode: @@ -774,6 +775,7 @@ es-AR: approved: Se requiere aprobación para registrarse none: Nadie puede registrarse open: Cualquiera puede registrarse + warning_hint: Recomendamos el uso de la opción “Se requiere aprobación para registrarse”, a menos que estés seguro de que tu equipo de moderación puede manejar el spam y los registros maliciosos de forma oportuna. security: authorized_fetch: Requiere autenticación de servidores federados authorized_fetch_hint: Requerir autenticación de servidores federados permite un cumplimiento más estricto tanto de los bloques de nivel de usuario como de nivel de servidor. Sin embargo, esto se produce a costa de una penalidad en el rendimiento, reduce el alcance de tus respuestas y puede introducir problemas de compatibilidad con algunos servicios federados. Además, esto no impedirá que actores dedicados obtengan tus mensajes y cuentas públicas. @@ -966,6 +968,9 @@ es-AR: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: Debido a la falta de actividad reciente por parte de moderadores, los registros en %{instance} fueron cambiados automáticamente para requerir revisión manual, para evitar que %{instance} se use como una plataforma para potenciales malos actores. Podés volver a cambiar esto para abrir los registros en cualquier momento. + subject: Los registros de %{instance} se cambiaron automáticamente para requerir aprobación new_appeal: actions: delete_statuses: para eliminar sus mensajes @@ -1841,10 +1846,6 @@ es-AR: edit_profile_action: Configurar perfil edit_profile_step: Podés personalizar tu perfil subiendo un avatar (imagen de perfil), cambiando tu nombre a mostrar y más. Podés optar por revisar a los nuevos seguidores antes de que puedan seguirte. explanation: Aquí hay algunos consejos para empezar - final_action: Empezá a enviar mensajes - final_step: "¡Empezá a enviar mensajes! Incluso sin seguidores, tus mensajes públicos pueden ser vistos por otros, por ejemplo en la linea temporal local o al usar etiquetas. Capaz que quieras presentarte al mundo con la etiqueta «#presentación»." - full_handle: Tu nombre de usuario completo - full_handle_hint: Esto es lo que le dirás a tus contactos para que ellos puedan enviarte mensajes o seguirte desde otro servidor. subject: Bienvenido a Mastodon title: "¡Bienvenido a bordo, %{name}!" users: diff --git a/config/locales/es-MX.yml b/config/locales/es-MX.yml index 4d228e98d4..26dbc2dfb8 100644 --- a/config/locales/es-MX.yml +++ b/config/locales/es-MX.yml @@ -767,6 +767,7 @@ es-MX: disabled: A nadie users: Para los usuarios locales que han iniciado sesión registrations: + moderation_recommandation: Por favor, ¡asegúrate de tener un equipo de moderación adecuado y reactivo antes de abrir los registros a todo el mundo! preamble: Controla quién puede crear una cuenta en tu servidor. title: Registros registrations_mode: @@ -774,6 +775,7 @@ es-MX: approved: Se requiere aprobación para registrarse none: Nadie puede registrarse open: Cualquiera puede registrarse + warning_hint: Recomendamos el uso de “Se requiere aprobación para registrarse” a menos que estés seguro de que tu equipo de moderación puede manejar el spam y los registros maliciosos en un tiempo razonable. security: authorized_fetch: Requerir autenticación de servidores federados authorized_fetch_hint: Requerir autenticación de servidores federados permite un cumplimiento más estricto tanto de los bloqueos a nivel de usuario como a nivel de servidor. Sin embargo, esto se produce a costa de una penalización en el rendimiento, reduce el alcance de tus respuestas y puede introducir problemas de compatibilidad con algunos servicios federados. Además, esto no impedirá que actores dedicados obtengan tus cuentas y publicaciones públicas. @@ -966,6 +968,9 @@ es-MX: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: Debido a la falta de moderadores activos, los registros en %{instance} han sido cambiados automáticamente para requerir revisión manual, para evitar que %{instance} se utilice potencialmente como plataforma por malos actores. Puedes volver a cambiarlo para abrir los registros en cualquier momento. + subject: Se ha cambiado automáticamente el registro de %{instance} para requerir aprobación new_appeal: actions: delete_statuses: para eliminar sus mensajes @@ -1548,7 +1553,7 @@ es-MX: unrecognized_emoji: no es un emoji conocido redirects: prompt: Si confías en este enlace, púlsalo para continuar. - title: Vas a salir de %{instance}. + title: Estás saliendo de %{instance}. relationships: activity: Actividad de la cuenta confirm_follow_selected_followers: "¿Estás seguro de que quieres seguir a las cuentas seleccionadas?" @@ -1841,10 +1846,6 @@ es-MX: edit_profile_action: Configurar el perfil edit_profile_step: Puedes personalizar tu perfil subiendo una foto de perfil, cambiando tu nombre de usuario y mucho más. Puedes optar por revisar a los nuevos seguidores antes de que puedan seguirte. explanation: Aquí hay algunos consejos para empezar - final_action: Empezar a publicar - final_step: "¡Empieza a publicar! Incluso sin seguidores, tus publicaciones públicas pueden ser vistas por otros, por ejemplo en la línea de tiempo local o en etiquetas. Tal vez quieras presentarte con la etiqueta de #introducciones." - full_handle: Su sobrenombre completo - full_handle_hint: Esto es lo que le dirías a tus amigos para que ellos puedan enviarte mensajes o seguirte desde otra instancia. subject: Bienvenido a Mastodon title: Te damos la bienvenida a bordo, %{name}! users: diff --git a/config/locales/es.yml b/config/locales/es.yml index 08fc0988e4..7956580138 100644 --- a/config/locales/es.yml +++ b/config/locales/es.yml @@ -31,7 +31,7 @@ es: created_msg: "¡Nota de moderación creada con éxito!" destroyed_msg: "¡Nota de moderación destruida con éxito!" accounts: - add_email_domain_block: Poner en lista negra el dominio del correo + add_email_domain_block: Bloquear el dominio del correo approve: Aprobar approved_msg: La solicitud de registro de %{username} ha sido aprobada correctamente are_you_sure: "¿Estás seguro?" @@ -767,6 +767,7 @@ es: disabled: A nadie users: Para los usuarios locales que han iniciado sesión registrations: + moderation_recommandation: Por favor, ¡asegúrate de tener un equipo de moderación adecuado y reactivo antes de abrir los registros a todo el mundo! preamble: Controla quién puede crear una cuenta en tu servidor. title: Registros registrations_mode: @@ -774,6 +775,7 @@ es: approved: Se requiere aprobación para registrarse none: Nadie puede registrarse open: Cualquiera puede registrarse + warning_hint: Recomendamos el uso de “Se requiere aprobación para registrarse” a menos que estés seguro de que tu equipo de moderación puede manejar el spam y los registros maliciosos en un tiempo razonable. security: authorized_fetch: Requerir autenticación de servidores federados authorized_fetch_hint: Requerir autenticación de servidores federados permite un cumplimiento más estricto tanto de los bloqueos a nivel de usuario como a nivel de servidor. Sin embargo, esto se produce a costa de una penalización en el rendimiento, reduce el alcance de tus respuestas y puede introducir problemas de compatibilidad con algunos servicios federados. Además, esto no impedirá que actores dedicados obtengan tus cuentas y publicaciones públicas. @@ -966,6 +968,9 @@ es: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: Debido a la falta de moderadores activos, los registros en %{instance} han sido cambiados automáticamente para requerir revisión manual, para evitar que %{instance} se utilice potencialmente como plataforma por malos actores. Puedes volver a cambiarlo para abrir los registros en cualquier momento. + subject: Se ha cambiado automáticamente el registro de %{instance} para requerir aprobación new_appeal: actions: delete_statuses: para eliminar sus mensajes @@ -1841,10 +1846,6 @@ es: edit_profile_action: Configurar el perfil edit_profile_step: Puedes personalizar tu perfil subiendo una foto de perfil, cambiando tu nombre de usuario y mucho más. Puedes optar por revisar a los nuevos seguidores antes de que puedan seguirte. explanation: Aquí hay algunos consejos para empezar - final_action: Empezar a publicar - final_step: "¡Empieza a publicar! Incluso sin seguidores, tus publicaciones públicas pueden ser vistas por otros, por ejemplo en la línea de tiempo local o en etiquetas. Tal vez quieras presentarte con la etiqueta de #introducciones." - full_handle: Su sobrenombre completo - full_handle_hint: Esto es lo que le dirías a tus amigos para que ellos puedan enviarte mensajes o seguirte desde otra instancia. subject: Bienvenido a Mastodon title: Te damos la bienvenida a bordo, %{name}! users: diff --git a/config/locales/et.yml b/config/locales/et.yml index f82ee6cb8f..ed25488ce4 100644 --- a/config/locales/et.yml +++ b/config/locales/et.yml @@ -1546,6 +1546,9 @@ et: errors: limit_reached: Jõutud on erinevate reaktsioonide limiidini unrecognized_emoji: ei ole tuntud emotikoon + redirects: + prompt: Kui te usaldate seda linki, klõpsake sellele, et jätkata. + title: Te lahkute %{instance}. relationships: activity: Konto tegevus confirm_follow_selected_followers: Oled kindel, et soovid jälgida valitud jälgijaid? @@ -1843,10 +1846,6 @@ et: Kui mõni asi arusaamatuks jääb, siis võib vaadata juhendvideot: https://youtu.be/J4ItbTOAw7Q explanation: Siin on mõned nõuanded, mis aitavad alustada - final_action: Alusta postitamist - final_step: 'Nüüd tee oma esimene postitus. Hea tava on uues kohas ennast tutvustada ning kindlasti kasuta selles postituses ka silti #tutvustus. Isegi kui sul ei ole veel jälgijaid, siis su postitusi näevad kohalikul ajajoonel ka kõik teised serveri kasutajad.' - full_handle: Kasutajanimi Mastodon võrgustikus - full_handle_hint: Kui jagad kasutajanime väljaspool serverit, siis kasuta kindlasti pikka nime. Erinevates serverites võib olla sama kasutajanimega liikmeid. subject: Tere tulemast Mastodoni title: Tere tulemast, %{name}! users: diff --git a/config/locales/eu.yml b/config/locales/eu.yml index 444d0e2c5f..fb3013e008 100644 --- a/config/locales/eu.yml +++ b/config/locales/eu.yml @@ -336,7 +336,7 @@ eu: not_permitted: Ez daukazu ekintza hau burutzeko baimenik overwrite: Gainidatzi shortcode: Laster-kodea - shortcode_hint: Gutxienez 2 karaktere, alfanumerikoak eta azpimarra besterik ez + shortcode_hint: Gutxienez 2 karaktere, alfanumerikoak eta azpimarrak soilik title: Emoji pertsonalak uncategorized: Kategoriarik gabe unlist: Kendu zerrendatik @@ -597,7 +597,7 @@ eu: silence_description_html: Kontua soilik honen jarraitzaile edo espresuki bilatzen dutenentzat izango da ikusgarri, kontuaren irisgarritasuna gogorki mugatzen delarik. suspend_description_html: Kontua bera eta honen edukiak eskuraezinak izango dira, eta azkenean, ezabatuak. Kontu honekin erlazionatzea ezinezkoa izango da. Prozesua 30 egunez itzulgarria izango da. Kontu honen aurkako txosten guztiak baztertuko lirateke. actions_description_html: Erabaki txosten hau konpontzeko ze ekintza hartu. Salatutako kontuaren aurka zigor ekintza bat hartzen baduzu, eposta jakinarazpen bat bidaliko zaie, Spam kategoria hautatzean ezik. - actions_description_remote_html: Txosten honi konponbidea aurkitzeko zein ekintza egin hautatu. Hau soilik zure zerbitzaria kontu honekin nola komunikatu eta bere edukia nola maneiatzeko da. + actions_description_remote_html: Hautatu txosten honi konponbidea aurkitzeko zein neurri hartu. Hau soilik zure zerbitzaria urruneko kontu honekin nola komunikatu eta bere edukia nola maneiatzeko da. add_to_report: Gehitu gehiago txostenera are_you_sure: Ziur zaude? assign_to_self: Esleitu niri @@ -769,6 +769,7 @@ eu: disabled: Inori ez users: Saioa hasita duten erabiltzaile lokalei registrations: + moderation_recommandation: Mesedez, ziurtatu moderazio-talde egokia eta erreaktiboa duzula erregistroak guztiei ireki aurretik! preamble: Kontrolatu nork sortu dezakeen kontua zerbitzarian. title: Izen emateak registrations_mode: @@ -776,6 +777,7 @@ eu: approved: Izena emateko onarpena behar da none: Ezin du inork izena eman open: Edonork eman dezake izena + warning_hint: "“Izena emateko onarpena behar da” erabiltzea gomendatzen dugu, baldin eta ez badakizu ziur zure moderazio-taldeak spama eta erregistro maltzurrak arrazoizko denboran erantzun ditzakeela." security: authorized_fetch: Eskatu autentifikazioa federatutako zerbitzarietatik authorized_fetch_hint: Zerbitzari federatuen autentifikazioa eskatzeak erabiltzaile-mailako zein zerbitzari-mailako blokeak zorrotzago betearaztea ahalbidetzen du. Hala ere, horrek errendimendu galera dakar, zure erantzunen irismena murrizten du eta baliteke federatutako zerbitzu batzuekin bateragarritasun-arazoak sortu ahal izatea. Horrez gain, horrek ez du eragotziko aktore dedikatuek zure mezu eta kontu publikoak eskuratzea. @@ -1703,8 +1705,8 @@ eu: title: '%{name}: "%{quote}"' visibilities: direct: Zuzena - private: Jarraitzaileak besterik ez - private_long: Erakutsi jarraitzaileei besterik ez + private: Jarraitzaileak soilik + private_long: Erakutsi jarraitzaileei soilik public: Publikoa public_long: Edonork ikusi dezake unlisted: Zerrendatu gabea @@ -1845,10 +1847,6 @@ eu: edit_profile_action: Ezarri profila edit_profile_step: Pertsonalizatu profila abatar bat igoz, zure pantaila-izena aldatuz eta gehiago. Jarraitzaile berriak onartu aurretik berrikusi nahi badituzu, kontuari giltzarrapoa jarri diezaiokezu. explanation: Hona hasteko aholku batzuk - final_action: Hasi bidalketak argitaratzen - final_step: 'Hasi argitaratzen! Jarraitzailerik ez baduzu ere zure bidalketa publikoak besteek ikusi ditzakete, esaterako denbora-lerro lokalean eta traoletan. Zure burua aurkeztu nahi baduzu #aurkezpenak traola erabili zenezake.' - full_handle: Zure erabiltzaile-izen osoa - full_handle_hint: Hau da lagunei esango zeniekeena beste zerbitzari batetik zu jarraitzeko edo zuri mezuak bidaltzeko. subject: Ongi etorri Mastodon-era title: Ongi etorri, %{name}! users: diff --git a/config/locales/fa.yml b/config/locales/fa.yml index bb3368dd9e..4339e06c34 100644 --- a/config/locales/fa.yml +++ b/config/locales/fa.yml @@ -80,7 +80,7 @@ fa: joined: عضو شده در location: all: همه - local: محلّی + local: محلی remote: کارسازهای دیگر title: مکان login_status: وضعیت ورود @@ -415,13 +415,14 @@ fa: public_comment: یادداشت عمومی public_comment_hint: یادداشتی دربارهٔ محدودیت روی این دامین برای عموم، در صورتی که فهرست دامین‌های محدود شده منتشر شود. reject_media: نپذیرفتن پرونده‌های رسانه‌ای - reject_media_hint: پرونده‌های رسانه‌ای ذخیره‌شدهٔ محلّی را پاک کرده و از بارگیریشان در آینده خودداری می‌کند. بی‌تأثیر روی معلق‌ها + reject_media_hint: پرونده‌های رسانه‌ای ذخیره‌شدهٔ محلی را پاک کرده و از بارگیریشان در آینده خودداری می‌کند. بی‌تأثیر روی معلّق‌ها reject_reports: نپذیرفتن گزارش‌ها reject_reports_hint: گزارش‌هایی را که از این دامنه می‌آید نادیده می‌گیرد. بی‌تأثیر برای معلق‌شده‌ها undo: واگردانی مسدودسازی دامین view: دیدن مسدودسازی دامنه email_domain_blocks: add_new: افزودن تازه + allow_registrations_with_approval: اجازهٔ ثبت‌نام با تأیید attempts_over_week: one: "%{count} تلاش در هفتهٔ گذشته" other: "%{count} تلاش ورود در هفتهٔ گذشته" @@ -1578,10 +1579,6 @@ fa: edit_profile_action: تنظیم نمایه edit_profile_step: می‌توانید نمایه‌تان را با بارگذاری تصویر نمایه، تغییر نام نمایشی و بیش از این‌‌ها سفارشی کنید. می‌توانید تعیین کنید که پی‌گیران جدید را پیش‌از این که بتوانند دنبالتان کنند بازبینی کنید. explanation: نکته‌هایی که برای آغاز کار به شما کمک می‌کنند - final_action: چیزی منتشر کنید - final_step: 'چیزی بنویسید! حتا بدون پی‌گیر ممکن است فرسته‌های عمومیتان دیده شود. برای مثال روی خط زمانی محلی یا در برچسب‌ها. شاید بخواهید با برچسب #معرفی خودتان را معرّفی کنید.' - full_handle: نام کاربری کامل شما - full_handle_hint: این چیزی است که باید به دوستانتان بگویید تا بتوانند از کارسازی دیگر به شما پیام داده یا پی‌گیرتان شوند. subject: به ماستودون خوش آمدید title: خوش آمدید، کاربر %{name}! users: diff --git a/config/locales/fi.yml b/config/locales/fi.yml index 856532f8f1..dc303991bc 100644 --- a/config/locales/fi.yml +++ b/config/locales/fi.yml @@ -387,7 +387,7 @@ fi: cancel: Peruuta confirm: Jäädytä permanent_action: Jäädytyksen kumoaminen ei palauta mitään tietoja tai suhteita. - preamble_html: Olet jäädyttämässä verkkotunnuksen %{domain} ja sen aliverkkotunnukset. + preamble_html: Olet jäädyttämässä verkkotunnuksen %{domain} aliverkkotunnuksineen. remove_all_data: Tämä toiminto poistaa palvelimeltasi kaiken sisällön, median ja profiilitiedot tämän palvelun tileiltä. stop_communication: Palvelimesi lopettaa viestinnän näiden palvelinten kanssa. title: Vahvista verkkotunnuksen %{domain} esto @@ -767,6 +767,7 @@ fi: disabled: Ei kenellekkään users: Kirjautuneille paikallisille käyttäjille registrations: + moderation_recommandation: Varmista, että sinulla on riittävä ja toimintavalmis joukko moderaattoreita ennen kuin avaat rekisteröitymiset kaikille! preamble: Määritä, kuka voi luoda tilin palvelimellesi. title: Rekisteröityminen registrations_mode: @@ -774,6 +775,7 @@ fi: approved: Rekisteröinti vaatii hyväksynnän none: Kukaan ei voi rekisteröityä open: Kaikki voivat rekisteröityä + warning_hint: Suosittelemme käyttämään asetusta “Rekisteröinti vaatii hyväksynnän” ellet ole varma siitä, että moderaattorit ovat valmiina käsittelemään roskapostia ja haittarekisteröitymisiä oikea-aikaisesti. security: authorized_fetch: Vaadi todennus liittoutuvilta palvelimilta authorized_fetch_hint: Todennuksen vaatiminen liittoutuvilta palvelimilta mahdollistaa sekä käyttäjä- että palvelintason estojen tiukemman valvonnan. Tämä tapahtuu kuitenkin suorituskyvyn kustannuksella, vähentää vastauksiesi tavoittavuutta ja voi aiheuttaa yhteensopivuusongelmia joidenkin liittoutuvien palvelujen kanssa. Tämä ei myöskään estä omistautuneita toimijoita hakemasta julkisia julkaisujasi ja tilejäsi. @@ -831,7 +833,7 @@ fi: suspend: "%{name} jäädytti käyttäjän %{target} tilin" appeal_approved: Valitti appeal_pending: Valitus vireillä - appeal_rejected: Muutoksenhaku hylättiin + appeal_rejected: Vetoomus hylättiin system_checks: database_schema_check: message_html: Tietokannan siirto on vireillä. Suorita ne varmistaaksesi, että sovellus toimii odotetulla tavalla @@ -966,6 +968,9 @@ fi: title: Webhookit webhook: Webhook admin_mailer: + auto_close_registrations: + body: Viimeaikaisen moderaattoritoiminnan puutteen vuoksi %{instance} rekisteröinnit on vaihdettu automaattisesti manuaaliseen tarkasteluun, jotta %{instance} ei käytetä mahdollisien huonojen toimijoiden alustana. Voit vaihtaa sen takaisin avaamalla rekisteröinnit milloin tahansa. + subject: Rekisteröinnit %{instance} on automaattisesti vaihdettu vaatimaan hyväksyntää new_appeal: actions: delete_statuses: poistaa hänen julkaisunsa @@ -1043,10 +1048,10 @@ fi: confirmations: awaiting_review: Sähköpostiosoitteesi on vahvistettu! Seuraavaksi palvelimen %{domain} ylläpito tarkistaa rekisteröitymisesi, ja saat lopuksi ilmoituksen sähköpostitse, jos tilisi hyväksytään! awaiting_review_title: Rekisteröitymisesi on tarkistettavana - clicking_this_link: tästä linkistä + clicking_this_link: napsauttaa tätä linkkiä login_link: kirjautumalla sisään proceed_to_login_html: Voit nyt jatkaa %{login_link}. - redirect_to_app_html: Sinun olisi pitänyt ohjautua sovellukseen %{app_name}. Jos näin ei tapahtunut, yritä avata se %{clicking_this_link} tai palaa sovellukseen manuaalisesti. + redirect_to_app_html: Sinun olisi pitänyt ohjautua sovellukseen %{app_name}. Jos näin ei tapahtunut, voit %{clicking_this_link} tai palata sovellukseen käsikäyttöisesti. registration_complete: Rekisteröitymisesi palvelimelle %{domain} on nyt valmis! welcome_title: Tervetuloa, %{name}! wrong_email_hint: Jos sähköpostiosoite ei ole oikein, voit muuttaa sen tilin asetuksista. @@ -1547,7 +1552,7 @@ fi: limit_reached: Erilaisten reaktioiden raja saavutettu unrecognized_emoji: ei ole tunnistettu emoji redirects: - prompt: Jos luotat tähän linkkiin, jatka napsauttamalla. + prompt: Mikäli luotat linkkiin, jatka napsauttaen sitä. title: Olet poistumassa palvelimelta %{instance}. relationships: activity: Tilin aktiivisuus @@ -1560,7 +1565,7 @@ fi: followers: Seuraajat following: Seuratut invited: Kutsutut - last_active: Viimeksi aktiivinen + last_active: Viimeksi aktiiviset most_recent: Viimeisimmät moved: Muuttaneet mutual: Seuraatte toisianne @@ -1794,11 +1799,11 @@ fi: subject: Arkisto on valmiina ladattavaksi title: Arkiston tallennus failed_2fa: - details: 'Tässä on tietoja kirjautumisyrityksestä:' - explanation: Joku on yrittänyt kirjautua tilillesi mutta on antanut virheellisen toisen vaiheen todennustekijän. + details: 'Sisäänkirjautumispyrkimyksen yksityiskohtaiset tiedot:' + explanation: Joku on yrittänyt kirjautua tilillesi antaen väärän toisen todennustunnisteen. further_actions_html: Jos se et ollut sinä, suosittelemme, että %{action} välittömästi, sillä se on saattanut vaarantua. subject: Kaksivaiheisen todennuksen virhe - title: Epäonnistunut kaksivaiheinen todennus + title: Kaksivaihekirjautumisen toinen vaihe epäonnistui suspicious_sign_in: change_password: vaihda salasanasi details: 'Tässä on tiedot kirjautumisesta:' @@ -1841,10 +1846,6 @@ fi: edit_profile_action: Määritä profiili 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.' - full_handle: Koko käyttäjätunnuksesi - full_handle_hint: Kerro tämä kavereillesi, niin he voivat lähettää sinulle viestejä tai seurata sinua toiselta palvelimelta. subject: Tervetuloa Mastodoniin title: Tervetuloa mukaan, %{name}! users: @@ -1852,7 +1853,7 @@ fi: go_to_sso_account_settings: Avaa identiteettitarjoajasi tiliasetukset invalid_otp_token: Virheellinen kaksivaiheisen todentamisen koodi otp_lost_help_html: Jos sinulla ei ole pääsyä kumpaankaan, voit ottaa yhteyden osoitteeseen %{email} - rate_limited: Liian monta todennusyritystä. Yritä myöhemmin uudelleen. + rate_limited: Liian monta todennusyritystä – yritä uudelleen myöhemmin. seamless_external_login: Olet kirjautunut ulkoisen palvelun kautta, joten salasana- ja sähköpostiasetukset eivät ole käytettävissä. signed_in_as: 'Kirjautunut tilillä:' verification: diff --git a/config/locales/fo.yml b/config/locales/fo.yml index 10b1e76f5f..6a8dd9b2ee 100644 --- a/config/locales/fo.yml +++ b/config/locales/fo.yml @@ -767,6 +767,7 @@ fo: disabled: Til ongan users: Fyri lokalum brúkarum, sum eru ritaðir inn registrations: + moderation_recommandation: Vinarliga tryggja tær, at tú hevur eitt nøktandi og klárt umsjónartoymi, áðreen tú letur upp fyri skrásetingum frá øllum! preamble: Stýr, hvør kann stovna eina kontu á tínum ambætara. title: Skrásetingar registrations_mode: @@ -774,6 +775,7 @@ fo: approved: Góðkenning kravd fyri tilmelding none: Eingin kann tilmelda seg open: Øll kunnu tilmelda seg + warning_hint: Vit mæla til at brúka "Góðkenning kravd fyri tilmelding" uttan so at tú er fullvís/ur í, at umsjónartoymið hjá tær kann handfara ruskpost og óndsinnaðar skrásetingar so hvørt. security: authorized_fetch: Krev samgildi frá sameindum ambætarum authorized_fetch_hint: At krevja samgildi frá sameindum ambætarum ger strangari útinning av blokkum bæði á brúkara- og ambætara-stigi møguliga. Tó so, kostnaðurin er ein avriksstraffur, minkar um hvussu langt svarini hjá tær røkka og kann viðføra sambæristruplleikar við summar sameindar tænastur. Harafturat forðar hetta ikki teimum, ið miðvíst leggja seg eftir at heinta tínar almennu postar og kontur. @@ -966,6 +968,9 @@ fo: title: Webhooks/vevhúkar webhook: Webhook/vevhúkur admin_mailer: + auto_close_registrations: + body: Vegna avmarkað virksemi hjá umsjónarfólki eru skrásetingar á %{instance} broyttar sjálvvirkandi til at krevja manuella eftirkanning fyri at forða at %{instance} verður brúktur sum ein pallur fyri ringar aktørar. Tú kanst skifta aftur til opnar skrásetingar tá tú vilt. + subject: Skrásetingar á %{instance} eru sjálvvirkandi broyttar soleiðis at tær krevja váttan new_appeal: actions: delete_statuses: at strika teirra postar @@ -1841,10 +1846,6 @@ fo: edit_profile_action: Set upp vanga edit_profile_step: Tú kanst tillaga vanga tín við at leggja eina vangamynd inn, broyta vísta navnið hjá tær og meira. Tú kanst velja at eftirkanna nýggjar fylgjarar, áðrenn teir sleppa at fylgja tær. explanation: Her eru nøkur ráð so tú kann koma gott ígongd - final_action: Byrja at posta - final_step: 'Byrja at posta! Sjálvt uttan fylgjarar, so kunnu tínir almennu postar vera sæddir av øðrum, til dømis á lokalu tíðarlinjuni ella í frámerkjum. Kanska vilt tú greiða frá um teg sjálva/n við frámerkinum #introductions.' - full_handle: Fulla brúkaranavn títt - full_handle_hint: Hetta er tað, sum tú fortelur vinum tínum, soleiðis at tey kunnu senda tær boð ella fylgja tær frá einum øðrum ambætara. subject: Vælkomin til Mastodon title: Vælkomin umborð, %{name}! users: diff --git a/config/locales/fr-CA.yml b/config/locales/fr-CA.yml index 3676d0b7b5..97cb08c918 100644 --- a/config/locales/fr-CA.yml +++ b/config/locales/fr-CA.yml @@ -1841,10 +1841,6 @@ fr-CA: edit_profile_action: Configuration du profil edit_profile_step: Vous pouvez personnaliser votre profil en téléchargeant une photo de profil, en changant votre nom d'utilisateur, etc. Vous pouvez opter pour le passage en revue de chaque nouvelle demande d'abonnement à chaque fois qu'un utilisateur essaie de s'abonner à votre compte. explanation: Voici quelques conseils pour vous aider à démarrer - final_action: Commencez à publier - final_step: 'Commencez à publier ! Même si vous n''avez pas encore d''abonnés, vos publications sont publiques et sont accessibles par les autres, par exemple grâce à la zone horaire locale ou par les hashtags. Vous pouvez vous présenter sur le hashtag #introductions.' - full_handle: Votre identifiant complet - full_handle_hint: C’est ce que vous diriez à vos ami·e·s pour leur permettre de vous envoyer un message ou vous suivre à partir d’un autre serveur. subject: Bienvenue sur Mastodon title: Bienvenue à bord, %{name} ! users: diff --git a/config/locales/fr.yml b/config/locales/fr.yml index a3aaf7a26e..b085937c76 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -1841,10 +1841,6 @@ fr: edit_profile_action: Configuration du profil edit_profile_step: Vous pouvez personnaliser votre profil en téléchargeant une photo de profil, en changant votre nom d'utilisateur, etc. Vous pouvez opter pour le passage en revue de chaque nouvelle demande d'abonnement à chaque fois qu'un utilisateur essaie de s'abonner à votre compte. explanation: Voici quelques conseils pour vous aider à démarrer - final_action: Commencez à publier - final_step: 'Commencez à publier ! Même si vous n''avez pas encore d''abonnés, vos publications sont publiques et sont accessibles par les autres, par exemple grâce à la zone horaire locale ou par les hashtags. Vous pouvez vous présenter sur le hashtag #introductions.' - full_handle: Votre identifiant complet - full_handle_hint: C’est ce que vous diriez à vos ami·e·s pour leur permettre de vous envoyer un message ou vous suivre à partir d’un autre serveur. subject: Bienvenue sur Mastodon title: Bienvenue à bord, %{name} ! users: diff --git a/config/locales/fy.yml b/config/locales/fy.yml index c59ad72725..caa88dcfe4 100644 --- a/config/locales/fy.yml +++ b/config/locales/fy.yml @@ -1546,6 +1546,9 @@ fy: errors: limit_reached: Limyt fan ferskate emoji-reaksjes berikt unrecognized_emoji: is gjin besteande emoji-reaksje + redirects: + prompt: As jo dizze keppeling fertrouwe, klik der dan op om troch te gean. + title: Jo ferlitte %{instance}. relationships: activity: Accountaktiviteit confirm_follow_selected_followers: Binne jo wis dat jo de selektearre folgers folgje wolle? @@ -1838,10 +1841,6 @@ fy: edit_profile_action: Profyl ynstelle edit_profile_step: Jo kinne jo profyl oanpasse troch in profylfoto op te laden, jo werjeftenamme oan te passen en mear. Jo kinne it hânmjittich goedkarren fan folgers ynstelle. explanation: Hjir binne inkelde tips om jo op wei te helpen - final_action: Begjin mei berjochten te pleatsen - final_step: 'Begjin berjochten te pleatsen! Sels sûnder folgers kinne jo iepenbiere berjochten troch oaren besjoen wurde, bygelyks op de lokale tiidline en ûnder hashtags. Jo kinne josels foarstelle mei it gebrûk fan de hashtag #introductions.' - full_handle: Jo folsleine Mastodon-adres - full_handle_hint: Dit jouwe jo oan jo freonen, sadat se jo berjochten stjoere kinne of (fan in oare Mastodon-server ôf) folgje kinne. subject: Wolkom op Mastodon title: Wolkom oan board %{name}! users: diff --git a/config/locales/gd.yml b/config/locales/gd.yml index 521f4fd60d..e2a43564c0 100644 --- a/config/locales/gd.yml +++ b/config/locales/gd.yml @@ -439,6 +439,7 @@ gd: view: Seall bacadh na h-àrainne email_domain_blocks: add_new: Cuir tè ùr ris + allow_registrations_with_approval: Ceadaich clàradh le aontachadh attempts_over_week: few: "%{count} oidhirpean clàraidh rè na seachdain seo chaidh" one: "%{count} oidhirp clàraidh rè na seachdain seo chaidh" @@ -1879,10 +1880,6 @@ gd: edit_profile_action: Suidhich a’ phròifil agad edit_profile_step: "’S urrainn dhut a’ phròifil agad a ghnàthachadh is tu a’ luchdadh suas dealbh pròifil, ag atharrachadh d’ ainm-taisbeanaidh is a bharrachd. ’S urrainn dhut lèirmheas a dhèanamh air daoine mus fhaod iad ’gad leantainn ma thogras tu." explanation: Seo gliocas no dhà gus tòiseachadh - final_action: Tòisich air postadh - final_step: 'Tòisich air postadh! Fiù ’s mur eil duine sam bith ’gad leantainn, chì cuid mhath na postaichean poblach agad, can air an loidhne-ama ionadail no le tagaichean hais. Saoil an innis thu beagan mu d’ dhèidhinn air an taga hais #fàilte?' - full_handle: D’ ainm-cleachdaiche slàn - full_handle_hint: Seo na bheir thu dha na caraidean agad ach an urrainn dhaibh teachdaireachd a chur thugad no ’gad leantainn o fhrithealaiche eile. subject: Fàilte gu Mastodon title: Fàilte air bòrd, %{name}! users: diff --git a/config/locales/gl.yml b/config/locales/gl.yml index 7b3fd1a6eb..8520b90ead 100644 --- a/config/locales/gl.yml +++ b/config/locales/gl.yml @@ -767,6 +767,7 @@ gl: disabled: Para ninguén users: Para usuarias locais conectadas registrations: + moderation_recommandation: Por favor, pon interese en crear un equipo de moderación competente e reactivo antes de permitir que calquera poida crear unha conta! preamble: Xestiona quen pode crear unha conta no teu servidor. title: Rexistros registrations_mode: @@ -774,6 +775,7 @@ gl: approved: Precisa aprobación para rexistrarse none: Rexistro pechado open: Rexistro aberto + warning_hint: Recomendamos utilizar "Requerir aprobación para o rexistro" a menos que confíes en que o equipo de moderación é quen de xestionar áxilmente o spam e a creación de contas maliciosas. security: authorized_fetch: Require autenticación desde os servidores federados authorized_fetch_hint: Ao requerir autenticación desde os servidores federados activas un reforzamento das políticas de bloqueo a nivel usuaria e nivel servidor. Este proceder ten un custo no rendemento, reducindo o alcance das túas respostas e podería introducir problemas de compatibilidade con algúns servizos federados. Ademais, non evitará que contas con tal propósito vexan as túas publicacións públicas e contas. @@ -966,6 +968,9 @@ gl: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: Debido á falta de actividade recente de moderación, a creación de contas en %{instance} mudou ao modo de revisión manual das solicitudes, para evitar que %{instance} sexa usada como plataforma por actores maliciosos. Podes volver ao rexistro aberto en calquera momento. + subject: O modo de creación de contas en %{instance} mudou automáticamente a aprobación manual new_appeal: actions: delete_statuses: borrar as súas publicacións @@ -1841,10 +1846,6 @@ gl: edit_profile_action: Configurar perfil edit_profile_step: Podes personalizar o teu perfil subindo unha imaxe de perfil, cambiar o nome público e moito máis. Podes elexir revisar as solicitudes de seguimento recibidas antes de permitirlles que te sigan. explanation: Aquí tes algunhas endereitas para ir aprendendo - final_action: Comeza a publicar - final_step: 'Publica! Incluso sen seguidoras, as túas mensaxes públicas serán vistas por outras persoas, por exemplo na cronoloxía local e nos cancelos. Poderías presentarte ao #fediverso utilizando o cancelo #introductions.' - full_handle: O teu alcume completo - full_handle_hint: Compárteo coas túas amizades para que poidan seguirte ou enviarche mensaxes desde outros servidores. subject: Benvida a Mastodon title: Benvida, %{name}! users: diff --git a/config/locales/he.yml b/config/locales/he.yml index 05b52213a7..55ab576142 100644 --- a/config/locales/he.yml +++ b/config/locales/he.yml @@ -795,6 +795,7 @@ he: disabled: לאף אחד users: למשתמשים מקומיים מחוברים registrations: + moderation_recommandation: יש לוודא שלאתר יש צוות מנחות ומנחי שיחה מספק ושירותי בטרם תבחרו לפתוח הרשמה לכולם! preamble: שליטה בהרשאות יצירת חשבון בשרת שלך. title: הרשמות registrations_mode: @@ -802,6 +803,7 @@ he: approved: נדרש אישור הרשמה none: אף אחד לא יכול להרשם open: כל אחד יכול להרשם + warning_hint: אנו ממליצים להפעיל דרישה לאישור ידני של הרשמה אלא אם אתם מאמינים שצוות הנחיית השיחות שלכם יוכל להסתדר בזריזות עם מפיצי תכנים פוגעניים או פרסומיים על בסיס קבוע. security: authorized_fetch: לדרוש הזדהות מול שרתים בפדרציה authorized_fetch_hint: הדרישה להזדהות מול שרתים בפדרציה מאפשרת חסימה יותר יעילה ברמת המשתמש וברמת שרת. עם זאת, הדרישה באה עם מחיר של נפילת ביצועים, מקטינה את מעגל התפוצה של התשובות שלך, ועשויה ליצור אי תאימות מול שירותים אחרים בפדרציה. בנוסף, זה לא ימנע מצדדים החלטיים לקבל גישת קריאה להודעות ופרופילים ציבוריים. @@ -1002,6 +1004,9 @@ he: title: התליות רשת webhook: התליית רשת admin_mailer: + auto_close_registrations: + body: עקב חוסר פעילות מנחים, הרשמות אל %{instance} עברו אוטומטית למצב אישור ידני, כדי למנוע משרת %{instance} לשמש לכר פעילות לגורמים עוינים. ניתן תמיד לחזור להרשמה פתוחה. + subject: הרשמות אל %{instance} הועברו אוטומטית לדרישה לאישור ידני new_appeal: actions: delete_statuses: כדי למחוק את הודעותיהם @@ -1905,10 +1910,6 @@ he: edit_profile_action: הגדרת פרופיל edit_profile_step: תוכל.י להתאים אישית את הפרופיל באמצעות העלאת יצגן (אוואטר), כותרת, שינוי כינוי ועוד. אם תרצה.י לסקור את עוקביך/ייך החדשים לפני שתרשה.י להם לעקוב אחריך/ייך. explanation: הנה כמה טיפים לעזור לך להתחיל - final_action: התחל/ילי לחצרץ - final_step: 'התחל/ילי לחצצר! אפילו ללא עוקבים ייתכן שהחצרוצים הפומביים שלך יראו ע"י אחרים, למשל בציר הזמן המקומי או בתגיות הקבצה (האשתגים). כדאי להציג את עצמך תחת התגית #introductions או #היכרות' - full_handle: שם המשתמש המלא שלך - full_handle_hint: זה מה שתאמר.י לחברייך כדי שיוכלו לשלוח לך הודעה או לעקוב אחרייך ממופע אחר. subject: ברוכים הבאים למסטודון title: ברוך/ה הבא/ה, %{name} ! users: diff --git a/config/locales/hu.yml b/config/locales/hu.yml index 545da69d9c..733d883da0 100644 --- a/config/locales/hu.yml +++ b/config/locales/hu.yml @@ -767,6 +767,7 @@ hu: disabled: Senkinek users: Bejelentkezett helyi felhasználóknak registrations: + moderation_recommandation: Győződj meg arról, hogy megfelelő és gyors reagálású moderátor csapatod van, mielőtt mindenki számára megnyitod a regisztrációt! preamble: Szabályozd, hogy ki hozhat létre fiókot a kiszolgálón. title: Regisztrációk registrations_mode: @@ -774,6 +775,7 @@ hu: approved: A regisztráció engedélyhez kötött none: Senki sem regisztrálhat open: Bárki regisztrálhat + warning_hint: Javasoljuk a "Jóváhagyás szükséges a regisztrációhoz” lehetőség használatát, hacsak nem vagy biztos abban, hogy a moderátor csapatod időben tudja kezelni a szemetet és a rosszindulatú regisztrációkat. security: authorized_fetch: Hitelesítés szükséges a föderációs kiszolgálóktól authorized_fetch_hint: A föderációs szerverek hitelesítésének szükségessége lehetővé teszi mind a felhasználói mind a szerver szintű blokkok szigorúbb végrehajtását. Ez azonban a teljesítménybüntetés árán jár, csökkenti a válaszok elérhetőségét és kompatibilitási problémákat vethet fel egyes föderációs szolgáltatásokkal. Emellett ez nem akadályozza meg a dedikált szereplőket abban, hogy nyilvános bejegyzéseiket és fiókjaikat letöltsék. @@ -966,6 +968,9 @@ hu: title: Webhookok webhook: Webhook admin_mailer: + auto_close_registrations: + body: A közelmúlt moderátori tevékenységének hiánya miatt a %{instance} regisztrációja automatikusan kézi ellenőrzést igénylőre váltott azért, hogy megakadályozzuk, hogy a %{instance} potenciálisan rossz szándékú szereplők számára szolgálhasson platformként. A nyílt regisztrációt bármikor visszakapcsolhatod. + subject: "%{instance} regisztrációja automatikusan átállt jóváhagyást igénylőre" new_appeal: actions: delete_statuses: bejegyzések törléséről @@ -1548,7 +1553,7 @@ hu: unrecognized_emoji: nem ismert emodzsi redirects: prompt: Ha megbízol ebben a hivatkozásban, kattints rá a folytatáshoz. - title: Épp elhagyni készülöd a %{instance} kiszolgálót. + title: Elhagyod a(z) %{instance} kiszolgálót. relationships: activity: Fiók aktivitás confirm_follow_selected_followers: Biztos, hogy követni akarod a kiválasztott követőket? @@ -1841,10 +1846,6 @@ hu: edit_profile_action: Készítsd el profilod edit_profile_step: Testreszabhatod a profilod egy profilkép feltöltésével, a megjelenített neved megváltoztatásával és így tovább. Bekapcsolhatod az új követőid jóváhagyását, mielőtt követhetnek. explanation: Néhány tipp a kezdeti lépésekhez - final_action: Kezdj bejegyzéseket írni - final_step: 'Kezdj tülkölni! A nyilvános bejegyzéseid még követők híján is megjelennek másoknak, például a helyi idővonalon vagy a hashtageknél. Kezdd azzal, hogy bemutatkozol a #bemutatkozas vagy az #introductions hashtag használatával.' - full_handle: Teljes felhasználóneved - full_handle_hint: Ez az, amit megadhatsz másoknak, hogy üzenhessenek neked vagy követhessenek téged más szerverekről. subject: Üdvözöl a Mastodon title: Üdv a fedélzeten, %{name}! users: diff --git a/config/locales/hy.yml b/config/locales/hy.yml index f3a6392ff0..b0d8f00864 100644 --- a/config/locales/hy.yml +++ b/config/locales/hy.yml @@ -875,7 +875,6 @@ hy: suspend: Հաշիւը արգելափակուած է welcome: edit_profile_action: Կարգաւորել հաշիւը - final_action: Սկսել գրել subject: Բարի գալուստ Մաստոդոն title: Բարի գալուստ նաւամատոյց, %{name} users: diff --git a/config/locales/ia.yml b/config/locales/ia.yml index 48a802a2cd..52cf861b48 100644 --- a/config/locales/ia.yml +++ b/config/locales/ia.yml @@ -33,11 +33,27 @@ ia: username: Nomine de usator action_logs: action_types: + create_announcement: Crear annuncio + destroy_ip_block: Deler le regula IP + destroy_status: Deler le message + destroy_unavailable_domain: Deler le dominio non disponibile + disable_user: Disactivar le usator + enable_user: Activar le usator reset_password_user: Reinitialisar contrasigno + update_announcement: Actualisar annuncio + update_custom_emoji: Actualisar emoji personalisate + actions: + change_email_user_html: "%{name} cambiava le adresse de e-mail address del usator %{target}" + create_announcement_html: "%{name} creava un nove annuncio %{target}" announcements: + edit: + title: Modificar annuncio + empty: Necun annuncios trovate. new: create: Crear annuncio title: Nove annuncio + publish: Publicar + published_msg: Annuncio publicate con successo! title: Annuncios custom_emojis: by_domain: Dominio @@ -46,9 +62,16 @@ ia: delete: Deler disable: Disactivar disabled: Disactivate + enable: Activar + enabled: Activate + enabled_msg: Emoji activate con successo + new: + title: Adder nove emoji personalisate dashboard: active_users: usatores active + media_storage: Immagazinage de medios new_users: nove usatores + opened_reports: reportos aperte website: Sito web domain_allows: add_new: Permitter federation con dominio @@ -58,9 +81,14 @@ ia: domain: Dominio export: Exportar import: Importar + private_comment: Commento private + public_comment: Commento public email_domain_blocks: add_new: Adder nove delete: Deler + domain: Dominio + new: + create: Adder un dominio export_domain_allows: no_file: Necun file seligite follow_recommendations: @@ -79,6 +107,7 @@ ia: filter: available: Disponibile ip_blocks: + add_new: Crear regula delete: Deler expires_in: '1209600': 2 septimanas @@ -95,8 +124,120 @@ ia: enable: Activar enabled: Activate reports: + add_to_report: Adder plus al reporto are_you_sure: Es tu secur? cancel: Cancellar + delete_and_resolve: Deler le messages + notes: + delete: Deler + skip_to_actions: Saltar al actiones + status: Stato + updated_at: Actualisate + view_profile: Vider profilo + roles: + everyone: Permissiones predefinite + privileges: + manage_users: Gerer usatores + rules: + delete: Deler + settings: + about: + title: A proposito de + appearance: + preamble: Personalisar le interfacie web de Mastodon. + title: Apparentia + discovery: + profile_directory: Directorio de profilos + public_timelines: Chronologias public + trends: Tendentias + title: Parametros de servitor + site_uploads: + delete: Deler file incargate + statuses: + language: Lingua + metadata: Metadatos + open: Aperir message + original_status: Message original + title: Messages del conto + trending: Tendentias + visibility: Visibilitate + strikes: + actions: + none: "%{name} ha inviate un advertimento a %{target}" + system_checks: + rules_check: + action: Gerer le regulas del servitor + software_version_critical_check: + action: Vider le actualisationes disponibile + software_version_patch_check: + action: Vider le actualisationes disponibile + upload_check_privacy_error: + action: Verifica hic pro plus de information + edit_profile: + other: Alteres + existing_username_validator: + not_found_multiple: non poteva trovar %{usernames} + exports: + archive_takeout: + date: Data + download: Discargar tu archivo + size: Dimension + blocks: Tu ha blocate + bookmarks: Marcapaginas + csv: CSV + mutes: Tu ha silentiate + storage: Immagazinage de medios + featured_tags: + add_new: Adder nove + filters: + contexts: + account: Profilos + home: Pagina de initio e listas + notifications: Notificationes + public: Chronologias public + thread: Conversationes + edit: + add_keyword: Adder parola clave + keywords: Parolas clave + statuses: Messages individual + title: Modificar filtro + index: + delete: Deler + generic: + all: Toto + cancel: Cancellar + changes_saved_msg: Cambios salveguardate con successo! + confirm: Confirmar + copy: Copiar + delete: Deler + order_by: Ordinar per + save_changes: Salvar le cambios + today: hodie + imports: + errors: + empty: File CSV vacue + too_large: Le file es troppo longe + failures: Fallimentos + status: Stato + types: + lists: Listas + invites: + expires_in: + '1800': 30 minutas + '21600': 6 horas + '3600': 1 hora + '43200': 12 horas + '604800': 1 septimana + '86400': 1 die + expires_in_prompt: Nunquam + login_activities: + authentication_methods: + password: contrasigno + migrations: + errors: + not_found: non poterea esser trovate + preferences: + public_timelines: Chronologias public statuses_cleanup: min_age: '1209600': 2 septimanas diff --git a/config/locales/id.yml b/config/locales/id.yml index ec8cf9e031..e7f42e115b 100644 --- a/config/locales/id.yml +++ b/config/locales/id.yml @@ -1560,10 +1560,6 @@ id: edit_profile_action: Siapkan profil edit_profile_step: Anda dapat mengubah profil Anda dengan mengunggah sebuah foto profil, mengubah nama tampilan Anda dan lain-lain. Anda dapat memilih untuk meninjau pengikut baru sebelum mereka diperbolehkan untuk mengikuti Anda. explanation: Beberapa tips sebelum Anda memulai - final_action: Mulai mengirim - final_step: 'Mulai mengirim! Bahkan tanpa pengikut, kiriman publik Anda dapat dilihat oleh orang lain, misalkan di linimasa lokal atau dalam tagar. Anda dapat memperkenalkan diri Anda dalam tagar #introductions.' - full_handle: Penanganan penuh Anda - full_handle_hint: Ini yang dapat Anda sampaikan kepada teman agar mereka dapat mengirim pesan atau mengikuti Anda dari server lain. subject: Selamat datang di Mastodon title: Selamat datang, %{name}! users: diff --git a/config/locales/ie.yml b/config/locales/ie.yml index a8287da533..eec8569bb2 100644 --- a/config/locales/ie.yml +++ b/config/locales/ie.yml @@ -767,6 +767,7 @@ ie: disabled: A necun users: A local usatores qui ha initiat session registrations: + moderation_recommandation: Ples assecurar que tu have un equip de moderation quel es adequat e reactiv ante que tu aperte registrationes a omnes! preamble: Decider qui posse crear un conto che vor servitor. title: Registrationes registrations_mode: @@ -774,6 +775,7 @@ ie: approved: Aprobation besonat por adhesion none: Nequi posse registrar se open: Quicunc posse registrar se + warning_hint: Noi recomanda usar "Aprobation besonat por inscrir" si tu ne es confident que tui equip de moderation posse gerer spam e maliciosi registrationes in un curt témpor. security: authorized_fetch: Postular autentication de federat servitores authorized_fetch_hint: Postular autentication de federat servitores possibilisa plu strict infortiament de ambi usatori e servitori bloccas. Támen, ti fórsan va limitar li potentie de vor servitor, reducter li atingement de vor responses, e possibilmen introducter problemas de compatibilitá con quelc federat servicies. Additionalmen, ti ne va preventer dedicat actores de accesser vor public postas e contos. @@ -966,6 +968,9 @@ ie: title: Webcrocs webhook: Webcroc admin_mailer: + auto_close_registrations: + body: Pro un manca de recent activitá moderatori, registrationes sur %{instance} ha esset automaticmen changeat al mode quel besona un manual recension, por que %{instance} ne mey esser usat quam un platform por malfatores. Tu posse rechangear a apert registrationes quandecunc. + subject: Registrationes por %{instance} ha esset automaticmen changeat al mode quel besona aprobation new_appeal: actions: delete_statuses: deleter su postas @@ -1793,6 +1798,12 @@ ie: extra: It es ja pret a descargar! subject: Tui archive es pret por descargar title: Descargar archive + failed_2fa: + details: 'Vi li detallies del prova de intrar:' + explanation: Alqui provat accesser tui conto ma usat un ínvalid duesim factor de autentication. + further_actions_html: Si it ne esset tu, noi recomanda que tu strax %{action} nam li conto posse esser compromisset. + subject: Falliment de autentication de duesim factor + title: Fallit autentication de duesim factor suspicious_sign_in: change_password: changear tui passa-parol details: 'Vi li detallies del apertion de session:' @@ -1835,10 +1846,6 @@ ie: edit_profile_action: Configuration de profil edit_profile_step: Tu posse personalisar tui profil por cargar un profil-image, changear tui monstrat nómine e plu. Tu posse optar tractar nov sequitores ante que ili es permisset sequer te. explanation: Vi quelc suggestiones por que tu mey comensar - final_action: Comensar postar - final_step: 'Comensa a postar! Mem sin sequitores, tui public postas posse esser videt de altres, per exemple in li local témpor-linea o in hashtags. Tu fórsan vole introducter te per li hashtag #introductions.' - full_handle: Tui plen usator-nómine - full_handle_hint: Ti-ci es ti quel tu vell dir a tui amics por que ili mey inviar missages a te o sequer te de un altri servitor. subject: Benevenit a Mastodon title: Benevenit, %{name}! users: diff --git a/config/locales/io.yml b/config/locales/io.yml index 341477852f..189f616a4e 100644 --- a/config/locales/io.yml +++ b/config/locales/io.yml @@ -1799,10 +1799,6 @@ io: edit_profile_action: Facez profilo edit_profile_step: Vu povas kustumizar vua profilo per adchargar profilimajo, chanjesar vua montronomo e plue. Vu povas selektas kontrolar nova sequanti ante oli permisesas sequar vu. explanation: Subo esas guidilo por helpar vu komencar - final_action: Komencez postigar - final_step: 'Jus postigez! Mem sen sequanti, vua publika posti povas videsar da altra personi, exemplo es en lokala tempolineo e en hashtagi. Vu povas anke introduktar su en #introductions hashtagi.' - full_handle: Vua kompleta profilnomo - full_handle_hint: Co esas quon vu dicos a amiki por ke oli povas mesajigar o sequar vu de altra servilo. subject: Bonveno a Mastodon title: Bonveno, %{name}! users: diff --git a/config/locales/is.yml b/config/locales/is.yml index d374c60755..da6eee9e20 100644 --- a/config/locales/is.yml +++ b/config/locales/is.yml @@ -769,6 +769,7 @@ is: disabled: Til engra users: Til innskráðra staðværra notenda registrations: + moderation_recommandation: Tryggðu að þú hafir hæft og aðgengilegt umsjónarteymi til taks áður en þú opnar á skráningar fyrir alla! preamble: Stýrðu því hverjir geta útbúið notandaaðgang á netþjóninum þínum. title: Nýskráningar registrations_mode: @@ -776,6 +777,7 @@ is: approved: Krafist er samþykkt nýskráningar none: Enginn getur nýskráð sig open: Allir geta nýskráð sig + warning_hint: Við mælum með því að nota "Krafist er samþykkt nýskráningar" nema ef þú sért viss um að umsjónarteymið þitt geti brugðist tímanlega við ruslpósti og skráningum í misjöfnum tilgangi. security: authorized_fetch: Krefjast auðkenningar frá netþjónum í skýjasambandi authorized_fetch_hint: Að krefjast auðkenningar frá netþjónum í skýjasambandi kallar fram strangari útfærslu á útilokunum, bæði varðandi notendur og netþjóna. Hins vegar kemur þetta niður á afköstum, minnkar útbreiðslu á svörum þínum og gæti valdið samhæfnivandamálum við sumar sambandsþjónustur. Að auki kemur þetta ekki í veg fyrir að aðilar sem ætla sér að ná í opinberar færslur og notendaaðganga frá þér geri það. @@ -968,6 +970,9 @@ is: title: Webhook-vefkrækjur webhook: Webhook-vefkrækja admin_mailer: + auto_close_registrations: + body: Vegna skorts á virkni umsjónaraðila að undanförnu, hafa nýskráningar á %{instance} sjálfkrafa verið stilltar á að þarfnast samþykktar umsjónaraðila, til að koma í veg fyrir að %{instance} verði mögulega misnotað af óprúttnum aðilum. Þú getur skipt hvenær sem er aftur yfir í opnar nýskráningar. + subject: Nýskráningar á %{instance} hafa sjálfkrafa verið stilltar á að krefjast samþykktar new_appeal: actions: delete_statuses: að eyða færslum viðkomandi @@ -1845,10 +1850,6 @@ is: edit_profile_action: Setja upp notandasnið edit_profile_step: Þú getur sérsniðið notandasniðið þitt með því að setja inn auðkennismynd þína, breyta birtingarnafninu þínu og ýmislegt fleira. Þú getur valið að yfirfara nýja fylgjendur áður en þú leyfir þeim að fylgjast með þér. explanation: Hér eru nokkrar ábendingar til að koma þér í gang - final_action: Byrjaðu að skrifa - final_step: 'Byrjaðu að tjá þig! Jafnvel án fylgjenda geta aðrir séð opinberar færslur frá þér, til dæmis á staðværu tímalínunni eða í myllumerkjum. Þú gætir jafnvel viljað kynna þig á myllumerkinu #introductions.' - full_handle: Fullt auðkenni þitt - full_handle_hint: Þetta er það sem þú myndir gefa upp við vini þína svo þeir geti sent þér skilaboð eða fylgst með þér af öðrum netþjóni. subject: Velkomin í Mastodon title: Velkomin/n um borð, %{name}! users: diff --git a/config/locales/it.yml b/config/locales/it.yml index 31de2252d1..3adb4f6c65 100644 --- a/config/locales/it.yml +++ b/config/locales/it.yml @@ -767,6 +767,7 @@ it: disabled: A nessuno users: Agli utenti locali connessi registrations: + moderation_recommandation: Assicurati di avere un team di moderazione adeguato e reattivo prima di aprire le registrazioni a tutti! preamble: Controlla chi può creare un account sul tuo server. title: Registrazioni registrations_mode: @@ -774,6 +775,7 @@ it: approved: Approvazione richiesta per le iscrizioni none: Nessuno può iscriversi open: Chiunque può iscriversi + warning_hint: Ti consigliamo di utilizzare “Approvazione richiesta per la registrazione” a meno che tu non sia sicuro che il tuo team di moderazione possa gestire lo spam e le registrazioni dannose in modo tempestivo. security: authorized_fetch: Richiede l'autenticazione dai server federati authorized_fetch_hint: La richiesta di autenticazione da server federati consente un'applicazione più rigorosa dei blocchi sia a livello di utente che a livello di server. Tuttavia, ciò comporta una riduzione delle prestazioni, riduce la portata delle tue risposte e potrebbe introdurre problemi di compatibilità con alcuni servizi federati. Inoltre, ciò non impedirà agli attori dedicati di recuperare i tuoi post pubblici e account. @@ -966,6 +968,9 @@ it: title: Webhook webhook: Webhook admin_mailer: + auto_close_registrations: + body: A causa della mancanza di attività recente da parte dei moderatori, le registrazioni su %{instance} sono passate automaticamente alla richiesta di revisione manuale, per evitare che %{instance} venga utilizzata come piattaforma per potenziali malintenzionati. Puoi ripristinarlo per aprire le registrazioni in qualsiasi momento. + subject: Le registrazioni per %{instance} sono passate automaticamente alla richiesta di approvazione new_appeal: actions: delete_statuses: per cancellare i loro post @@ -1843,10 +1848,6 @@ it: edit_profile_action: Configura profilo edit_profile_step: Puoi personalizzare il tuo profilo caricando un'immagine del profilo, cambiare il tuo nome e altro ancora. Puoi scegliere di esaminare i nuovi seguaci prima che loro siano autorizzati a seguirti. explanation: Ecco alcuni suggerimenti per iniziare - final_action: Inizia a pubblicare - final_step: 'Inizia a pubblicare! Anche senza seguaci, i tuoi post pubblici possono essere visti da altri, ad esempio sulla timeline locale o negli hashtag. Potresti presentarti con l''hashtag #presentazione.' - full_handle: Il tuo nome utente completo - full_handle_hint: Questo è ciò che diresti ai tuoi amici in modo che possano seguirti o contattarti da un altro server. subject: Benvenuto/a su Mastodon title: Benvenuto a bordo, %{name}! users: diff --git a/config/locales/ja.yml b/config/locales/ja.yml index 6880f64c5e..460f02d0a5 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -753,6 +753,7 @@ ja: disabled: 誰にも許可しない users: ログイン済みローカルユーザーのみ許可 registrations: + moderation_recommandation: 登録受付を開始する前に、迅速かつ適切にモデレーションを行うチームを編成しましょう! preamble: あなたのサーバー上でアカウントを作成できるユーザーを制御します。 title: アカウント作成 registrations_mode: @@ -760,6 +761,7 @@ ja: approved: 登録には承認が必要 none: 誰にも許可しない open: 誰でも登録可 + warning_hint: モデレーションチームがスパムや悪意のある登録を迅速に処理できる自信がない限り、サインアップを承認制にすることをお勧めします。 security: authorized_fetch: 連合サーバーによる署名なしでの情報取得を拒否する authorized_fetch_hint: ほかの連合サーバーから受け付けるリクエストに署名を必須にすることで、ユーザーによるブロックおよびドメインブロック両方の効果をより強力にします。ただし連合の処理コストが増えてパフォーマンス面で不利になるほか、このサーバーから送られた反応が届く範囲が狭まったり、連合における互換性の問題を招く可能性もあります。また、この機能は公開投稿やプロフィールへのアクセスをブロックした相手から完全に遮断できるものではありません。 @@ -948,6 +950,9 @@ ja: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: "%{instance} のモデレーターによる活動がしばらくなかったため、%{instance} のアカウント作成は手動での承認を必要とするように自動的に変更されました。これには %{instance} が悪意ある者の踏み台として使われることを防ぐ役割があります。アカウント作成は必要に応じていつでも再び開放できます。" + subject: "%{instance} のアカウント作成は自動的に承認制に変更されました" new_appeal: actions: delete_statuses: 投稿を削除する @@ -1811,10 +1816,6 @@ ja: プロフィール画像をアップロードしたり、表示名を変更したりして、プロフィールをカスタマイズできます。 新しいフォロワーからフォローリクエストを承認する前に、オプトインで確認できます。 explanation: 始めるにあたってのアドバイスです - final_action: 始めましょう - final_step: 'さあ、始めましょう! たとえフォロワーがまだいなくても、あなたの公開した投稿はローカルタイムラインやハッシュタグなどを通じて誰かの目にとまるはずです。自己紹介をしたいときには #introductions ハッシュタグが便利かもしれません。' - full_handle: あなたの正式なユーザーID - full_handle_hint: 別のサーバーの友達とフォローやメッセージをやり取りする際には、これを伝えることになります。 subject: Mastodonへようこそ title: ようこそ、%{name}さん! users: diff --git a/config/locales/ka.yml b/config/locales/ka.yml index 926922154f..1b3d48810e 100644 --- a/config/locales/ka.yml +++ b/config/locales/ka.yml @@ -472,9 +472,6 @@ ka: welcome: edit_profile_action: პროფილის მოწყობა explanation: აქ რამდენიმე რჩევაა დასაწყისისთვის - final_action: დაიწყე პოსტვა - full_handle: თქვენი სრული სახელური - full_handle_hint: ეს არის ის რასაც ეტყვით თქვენს მეგობრებს, რათა მოგწერონ ან გამოგყვნენ სხვა ინსტანციიდან. subject: კეთილი იყოს თქვენი მობრძანება მასტოდონში title: კეთილი იყოს თქვენი მობრძანება, %{name}! users: diff --git a/config/locales/kab.yml b/config/locales/kab.yml index 66aeafde60..d424810926 100644 --- a/config/locales/kab.yml +++ b/config/locales/kab.yml @@ -5,19 +5,19 @@ kab: contact_missing: Ur yettusbadu ara contact_unavailable: Wlac hosted_on: Maṣṭudun yersen deg %{domain} - title: Γef + title: Ɣef accounts: follow: Ḍfeṛ followers: one: Umeḍfaṛ other: Imeḍfaṛen - following: Yeṭafaṛ + following: Yeṭṭafaṛ last_active: armud aneggaru nothing_here: Ulac kra da! posts: - one: Tajewwiqt - other: Tijewwiqin - posts_tab_heading: Tijewwiqin + one: Tasuffeɣt + other: Tisuffaɣ + posts_tab_heading: Tisuffaɣ admin: account_actions: action: Eg tigawt @@ -47,7 +47,7 @@ kab: disable_two_factor_authentication: Gdel 2FA disabled: Yensa display_name: Isem ara d-yettwaskanen - domain: Taγult + domain: Taɣult edit: Ẓreg email: Imayl email_status: Addad n imayl @@ -111,7 +111,7 @@ kab: targeted_reports: Yettwazen uneqqis sɣur wiyaḍ silence: Sgugem silenced: Yettwasgugem - statuses: Tisuffɣin + statuses: Tisuffaɣ subscribe: Jerred suspended: Yeḥbes title: Imiḍanen @@ -203,22 +203,22 @@ kab: announcements: destroyed_msg: Tamselɣut tettwakkes akken iwata! edit: - title: Ẓreg ulγu - empty: Ulac kra n ulγuyen. + title: Ẓreg ulɣu + empty: Ulac kra n yilɣa yettwafen. live: Srid new: - create: Rnu-d ulγu - title: Ulγu amaynut + create: Snlufu-d ulɣu + title: Ulɣu amaynut publish: Sufeɣ published_msg: Tamselɣut tettwasufeɣ-d akken iwata! scheduled_for: Yettusɣiwsen i %{time} scheduled_msg: Tamselɣut tettusɣiwes i usufeɣ! - title: Ulγuyen + title: Ilɣa custom_emojis: assign_category: Efk taggayt - by_domain: Taγult + by_domain: Taɣult copied_msg: Takna tadigant n imuji yettwarna-d mebla ugur - copy: Nγel + copy: Nɣel create_new_category: Rnu-d taggayt tamaynut created_msg: Imuji yettwarna-d mebla ugur! delete: Kkes @@ -229,7 +229,7 @@ kab: enable: Rmed enabled: Yermed enabled_msg: Imuji yermed mebla ugur - list: Umuγ + list: Tabdart new: title: Timerna n imuji udmawan amaynut overwrite: Semselsi @@ -256,7 +256,7 @@ kab: add_new: Rni iḥder amaynut n taɣult confirm_suspension: cancel: Sefsex - domain: Taγult + domain: Taɣult export: Sifeḍ import: Kter new: @@ -274,9 +274,9 @@ kab: email_domain_blocks: add_new: Rnu amaynut delete: Kkes - domain: Taγult + domain: Taɣult new: - create: Rnu taγult + create: Rnu taɣult title: Timerna n taɣult tamaynut n imayl ɣer tebdart taberkant title: Tabdart taberkant n imayl follow_recommendations: @@ -286,8 +286,8 @@ kab: instances: back_to_all: Akk back_to_limited: Ɣur-s talast - back_to_warning: Γur-wat - by_domain: Taγult + back_to_warning: Ɣur-wat + by_domain: Taɣult content_policies: policy: Tasertit delivery: @@ -306,7 +306,7 @@ kab: private_comment: Awennit uslig public_comment: Awennit azayez title: Tamatut - total_blocked_by_us: Ttwasḥebsen sγur-neγ + total_blocked_by_us: Ttwasḥebsen sɣur-neɣ total_followed_by_them: Ṭtafaṛen-t total_followed_by_us: Neṭṭafaṛ-it total_reported: Ineqqisen fell-asen @@ -354,12 +354,15 @@ kab: other: "%{count} n timawin" action_taken_by: Tigawt yettwaṭṭfen sɣur are_you_sure: Tetḥaq-eḍ? + cancel: Sefsex category: Taggayt comment: none: Ula yiwen confirm: Sentem + delete_and_resolve: Kkes tisuffaɣ mark_as_resolved: Creḍ-it yefra mark_as_unresolved: Creḍ-it ur yefra ara + no_one_assigned: Ula yiwen notes: create: Rnu tazmilt create_and_resolve: Fru s tamawt @@ -390,16 +393,16 @@ kab: title: Ilugan n uqeddac settings: about: - title: Γef + title: Ɣef appearance: title: Udem discovery: - profile_directory: Akaram n imaγnuten + profile_directory: Akaram n imaɣnuten trends: Ayen mucaɛen domain_blocks: all: I medden akk - disabled: Γef ula yiwen - users: Γef yimseqdacen idiganen i yeqqnen + disabled: Ɣef ula yiwen + users: Ɣef yimseqdacen idiganen i yeqqnen registrations: title: Ajerred registrations_mode: @@ -408,19 +411,26 @@ kab: open: Zemren akk ad jerden site_uploads: delete: Kkes afaylu yulin + software_updates: + documentation_link: Issin ugar statuses: application: Asnas - back_to_account: Tuγalin γer usebter n umiḍan + back_to_account: Tuɣalin ɣer usebter n umiḍan deleted: Yettwakkes favourites: Imenyafen language: Tutlayt media: - title: Taγwalt - title: Tisuffiγin n umiḍan - with_media: S taγwalt + title: Amidya + title: Tisuffaɣ n umiḍan + trending: Ayen mucaɛen + visibility: Abani + with_media: S umidya title: Tadbelt trends: allow: Sireg + statuses: + title: Tisuffaɣ mucaɛen + trending: Ayen mucaɛen warning_presets: add_new: Rnu amaynut delete: Kkes @@ -431,7 +441,11 @@ kab: new_report: body: "%{reporter} yettwazen ɣef %{target}" subject: Aneqqis amaynut i %{instance} (#%{id}) + new_trends: + new_trending_statuses: + title: Tisuffaɣ mucaɛen appearance: + advanced_web_interface: Agrudem n web leqqayen discovery: Asnirem localization: guide_link: https://crowdin.com/project/mastodon @@ -448,6 +462,8 @@ kab: your_token: Ajiṭun-ik·im n unekcum auth: apply_for_account: Suter amiḍan + confirmations: + welcome_title: Ansuf yessek·em, %{name}! delete_account: Kkes amiḍan description: prefix_invited_by_user: "@%{name} inced-ik·ikem ad ternuḍ ɣer uqeddac-a n Mastodon!" @@ -455,9 +471,11 @@ kab: forgot_password: Tettud awal-ik uffir? log_in_with: Qqen s login: Qqen - logout: Ffeγ - migrate_account: Gujj γer umiḍan nniḍen - or_log_in_with: Neγ eqqen s + logout: Ffeɣ + migrate_account: Gujj ɣer umiḍan nniḍen + or_log_in_with: Neɣ eqqen s + progress: + confirm: Sentem imayl providers: cas: CAS saml: SAML @@ -466,8 +484,11 @@ kab: reset_password: Wennez awal uffir rules: back: Tuɣalin - security: Taγellist + security: Taɣellist set_new_password: Egr-d awal uffir amaynut + sign_in: + preamble_html: Kcem ar %{domain} s inekcam-inek n tuqqna. Ma yella yezga-d umiḍan-ik deg uqeddac-nniḍen, ur tezmireḍ ara ad tkecmeḍ sya. + title: Akeččum ɣer %{domain} status: account_status: Addad n umiḍan use_security_key: Seqdec tasarut n teɣlist @@ -498,16 +519,21 @@ kab: warning: username_available: Isem-ik·im n useqdac ad yuɣal yella i tikkelt-nniḍen username_unavailable: Isem-ik·im n useqdac ad yeqqim ulac-it + disputes: + strikes: + status: 'Tasuffeɣt #%{id}' + title_actions: + none: Ɣur-wat errors: '500': - title: Asebter-ayi d arameγtu + title: Asebter-ayi d arameɣtu existing_username_validator: not_found_multiple: ur yezmir ara ad yaf %{usernames} exports: archive_takeout: date: Azemz download: Sider-d aḥraz-ik·im - size: Teγzi + size: Teɣzi bookmarks: Ticraḍ csv: CSV lists: Tibdarin @@ -516,8 +542,8 @@ kab: add_new: Rnu amaynut filters: contexts: - account: Imuγna - notifications: Tilγa + account: Imeɣna + notifications: Ilɣa thread: Idiwenniyen edit: title: Ẓreg amzizdig @@ -534,8 +560,10 @@ kab: remove: Kkes seg umsizdeg generic: all: Akk + cancel: Sefsex changes_saved_msg: Ttwaskelsen ibelliden-ik·im akken ilaq! - copy: Nγel + confirm: Sentem + copy: Nɣel delete: Kkes order_by: Sizwer s save_changes: Sekles ibeddilen @@ -561,11 +589,13 @@ kab: '604800': 1 umalas '86400': 1 wass expires_in_prompt: Werǧin + generate: Slaled aseɣwen n uɛraḍ invited_by: 'Tettwaɛraḍeḍ s ɣur:' max_uses: one: 1 uuseqdec other: "%{count} yiseqdac" max_uses_prompt: Ulac talast + prompt: Slaled rnu bḍu assaɣen d wiyaḍ akken ad kecmen ɣer uqeddac-a table: expires_at: Ad ifat di title: Ɛreḍ-d kra n yimdanen @@ -575,7 +605,7 @@ kab: sign_in_token: tangalt n tɣellist n tansa imayl webauthn: tisura n tɣellist migrations: - acct: Ibeddel γer + acct: Ibeddel ɣer incoming_migrations: Tusiḍ-d seg umiḍan nniḍen proceed_with_move: Awid imeḍfaṛen-ik moderation: @@ -597,7 +627,7 @@ kab: reblog: subject: "%{name} yesselha addad-ik·im" notifications: - other_settings: Iγewwaṛen nniḍen n tilγa + other_settings: Iɣewwaṛen nniḍen n yilɣa number: human: decimal_units: @@ -611,17 +641,20 @@ kab: setup: Sbadu pagination: newer: Amaynut - next: Γer zdat + next: Ɣer zdat older: Aqbuṛ prev: Win iɛeddan preferences: other: Wiyaḍ + privacy: + privacy: Tabaḍnit + search: Anadi privacy_policy: title: Tasertit tabaḍnit relationships: activity: Armud n umiḍan followers: Imeḍfaṛen - following: Yeṭafaṛ + following: Yeṭṭafaṛ invited: Yettwancad last_active: Armud aneggaru most_recent: Melmi kan @@ -634,6 +667,7 @@ kab: browser: Iminig browsers: alipay: Alipay + blackberry: BlackBerry chrome: Chrome edge: Microsoft Edge electron: Electron @@ -648,37 +682,41 @@ kab: qq: Iminig QQ safari: Safari weibo: Weibo - current_session: Tiγimit tamirant + current_session: Tiɣimit tamirant + date: Azemz description: "%{browser} s %{platform}" ip: IP platforms: adobe_air: Adobe Air android: Android + blackberry: BlackBerry + chrome_os: ChromeOS firefox_os: Firefox OS ios: iOS + kai_os: KaiOS linux: Linux mac: macOS windows: Windows windows_mobile: Windows Mobile - windows_phone: Tiliγri Windows Phone + windows_phone: Tiliɣri Windows Phone revoke: Ḥwi title: Tiɣimiyin settings: account: Amiḍan - account_settings: Iγewwaṛen n umiḍan + account_settings: Iɣewwaṛen n umiḍan appearance: Udem authorized_apps: Isnasen yettussirgen - back: Uγal γer Maṣṭudun + back: Uɣal ɣer Maṣṭudun delete: Tukksa n umiḍan development: Taneflit - edit_profile: Ẓreg amaγnu + edit_profile: Ẓreg amaɣnu export: Taktert n yisefka import: Kter import_and_export: Taktert d usifeḍ migrate: Tunigin n umiḍan - notifications: Tilγa + notifications: Ilɣa preferences: Imenyafen - profile: Ameγnu + profile: Ameɣnu relationships: Imeḍfaṛen akked wid i teṭṭafaṛeḍ statuses_cleanup: Tukksa tawurmant n tsuffaɣ two_factor_authentication: Asesteb s snat n tarrayin @@ -745,22 +783,23 @@ kab: otp: Asnas n usesteb webauthn: Tisura n teɣlist user_mailer: + appeal_approved: + action: Iɣewwaṛen n umiḍan warning: categories: spam: Aspam title: disable: Amiḍan i igersen - none: Γur-wat + none: Ɣur-wat silence: Amiḍan yesɛa talast suspend: Amiḍan yettwaḥbas welcome: - final_action: Bdu asuffeɣ - full_handle: Tansa umiḍan-ik takemmalit - subject: Ansuf γer Maṣṭudun + subject: Ansuf ɣer Maṣṭudun title: Ansuf yessek·em, %{name}! users: signed_in_as: 'Teqqneḍ amzun d:' verification: + here_is_how: Ha-t-a amek verification: Asenqed webauthn_credentials: add: Rnu tasarut n teɣlist tamaynut diff --git a/config/locales/kk.yml b/config/locales/kk.yml index 27c76b4378..2cd894befb 100644 --- a/config/locales/kk.yml +++ b/config/locales/kk.yml @@ -721,9 +721,6 @@ kk: welcome: edit_profile_action: Профиль өңдеу explanation: Мына кеңестерді шолып өтіңіз - final_action: Жазба жазу - full_handle: Желі тұтқасы - full_handle_hint: This is what you would tell your friends so they can message or follow you frоm another server. subject: Mastodon Желісіне қош келдіңіз title: Ортаға қош келдің, %{name}! users: diff --git a/config/locales/ko.yml b/config/locales/ko.yml index 9f4f1343c7..45a95139f0 100644 --- a/config/locales/ko.yml +++ b/config/locales/ko.yml @@ -525,7 +525,7 @@ ko: total_followed_by_us: 우리가 한 팔로우 total_reported: 이들에 대한 신고 total_storage: 미디어 첨부 - totals_time_period_hint_html: 아래에 표시된 총계에는 모든 시간에 대한 데이터가 포함됩니다. + totals_time_period_hint_html: 아래에 표시된 총계는 역대 데이터에 대한 것입니다. unknown_instance: 현재 이 서버에서 해당 도메인에 대한 기록은 없습니다. invites: deactivate_all: 전부 비활성화 @@ -755,6 +755,7 @@ ko: disabled: 아무에게도 안 함 users: 로그인 한 사용자에게 registrations: + moderation_recommandation: 모두에게 가입을 열기 전에 적절하고 반응이 빠른 중재 팀을 데리고 있는지 확인해 주세요! preamble: 누가 이 서버에 계정을 만들 수 있는지 제어합니다. title: 가입 registrations_mode: @@ -762,6 +763,7 @@ ko: approved: 가입하려면 승인이 필요함 none: 아무도 가입 할 수 없음 open: 누구나 가입 할 수 있음 + warning_hint: 당신의 중재 팀이 스팸이나 악의적인 가입을 시기적절하게 처리할 수 있다고 자신할 수 없다면 "가입이 승인을 요구하도록" 설정하는 것을 추천합니다. security: authorized_fetch: 연합된 서버들에게서 인증 필수 authorized_fetch_hint: 연합된 서버들에게서 인증을 요구하는 것은 사용자 레벨과 서버 레벨의 차단을 좀 더 확실하게 해줍니다. 한편으로는 성능적인 페널티, 답글의 전달 범위 감소, 몇몇 연합된 서비스들과의 호환성 문제가 있을 가능성이 있습니다. 추가적으로 이 기능은 전용 액터가 공개된 게시물이나 계정을 페치하는 것은 막지 않습니다. @@ -950,6 +952,9 @@ ko: title: 웹훅 webhook: 웹훅 admin_mailer: + auto_close_registrations: + body: 최근 모더레이터 활동 부족으로, %{instance}가 안좋은 일에 사용되는 것을 방지하기 위해 %{instance}의 가입이 수동 심사를 요구하도록 자동으로 변경되었습니다. 언제든지 가입을 다시 열 수 있습니다. + subject: "%{instance}의 가입이 승인을 필요로 하도록 자동으로 변경되었습니다" new_appeal: actions: delete_statuses: 게시물을 삭제하는 것 @@ -1811,10 +1816,6 @@ ko: edit_profile_action: 프로필 설정 edit_profile_step: 프로필 사진을 업로드하거나 사람들에게 표시할 이름을 바꾸는 것 등으로 자신의 프로필을 커스텀 할 수 있습니다. 새로운 팔로워를 검토 후에 허용하도록 할 수도 있습니다. explanation: 시작하기 전에 몇가지 팁들을 준비했습니다 - final_action: 포스팅 시작하기 - final_step: '게시물을 올리세요! 팔로워가 없더라도, 공개 게시물들은 다른 사람에게 보여질 수 있습니다, 예를 들자면 로컬이나 연합 타임라인 등이 있습니다. 사람들에게 자신을 소개하고 싶다면 #툿친소 해시태그를 이용해보세요.' - full_handle: 당신의 풀 핸들은 다음과 같습니다 - full_handle_hint: 이것을 당신의 친구들에게 알려주면 다른 서버에서 팔로우 하거나 메시지를 보낼 수 있습니다. subject: 마스토돈에 오신 것을 환영합니다 title: 환영합니다 %{name} 님! users: diff --git a/config/locales/ku.yml b/config/locales/ku.yml index e78e7ecfbb..d744aaa903 100644 --- a/config/locales/ku.yml +++ b/config/locales/ku.yml @@ -1594,10 +1594,6 @@ ku: edit_profile_action: Profîlê saz bike edit_profile_step: Tu dikarî bi barkirina wêneyek profîlê, guhertina navê xwe ya xuyangê û bêtir profîla xwe kesane bikî. Berî ku mafê bidî ku te şopînerên nû te bişopînin, tu dikarî binirxînî. explanation: Li vir çend serişte hene ku tu dest pê bike - final_action: Dest bi weşandinê bike - final_step: 'Dest bi weşandinê bike! Bêyî şopîneran jî dibe ku şandiyên te yên gelemperî ji hêla kesên din ve werin dîtin, mînakî li ser demjimêra herêmî û di hashtagan de. Dibe ku tu bixwazî xwe li ser hashtagê #nasname bidî nasandin.' - full_handle: Hemî destikê te - full_handle_hint: Ji hevalên xwe re, ji bona ji rajekarekê din peyam bişîne an jî ji bona ku te bikaribe bişopîne tişta ku tu bibêjî ev e. subject: Tu bi xêr hatî Mastodon title: Bi xêr hatî, %{name}! users: diff --git a/config/locales/lad.yml b/config/locales/lad.yml index 02308cf2f0..13e29f927e 100644 --- a/config/locales/lad.yml +++ b/config/locales/lad.yml @@ -18,6 +18,9 @@ lad: nothing_here: No ay niente aki! pin_errors: following: Deves estar sigiendo a la persona a la ke keres achetar + posts: + one: Publikasyon + other: Publikasyones posts_tab_heading: Publikasyones admin: account_actions: @@ -82,7 +85,7 @@ lad: title: Lokalizasyon login_status: Estado de koneksyon kon kuento media_attachments: Aneksos de multimedia - memorialize: Konvirtir en memorial + memorialize: Konvirte en memorial memorialized: Kuento komemorativo memorialized_msg: "%{username} se konvirtido kon sukseso en un kuento komemorativo" moderation: @@ -106,14 +109,14 @@ lad: previous_strikes_description_html: one: Este kuento tiene un amonestamiento. other: Este kuento tiene %{count} amonestamientos. - promote: Promosyonar + promote: Promosyona protocol: Protokol public: Publiko push_subscription_expires: Ekspirasyon del abonamiento PuSH - redownload: Arefreskar profil + redownload: Arefreska profil redownloaded_msg: Se aktualizo djustamente el profil de %{username} dizde el orijin reject: Refuza - rejected_msg: La solisitasyon de enrejistrasyon de %{username} a sido refuzada kon sukseso + rejected_msg: La solisitasyon de enrejistrasyon de %{username} tyene sido refuzada kon sukseso remote_suspension_irreversible: Los datos de este kuento fueron irreversivlemente supremidos. remote_suspension_reversible_hint_html: El kuento fue suspendido en este sirvidor i los datos seran totalmente supremidos el %{date}. Asta estonses el sirvidor remoto puede restaurar este kuento sin dingun efekto negativo. Si keres supremir todos los datos del kuento pishin, puedes fazerlo a kontinuasyon. remove_avatar: Efasa imaje de profil @@ -288,7 +291,7 @@ lad: empty: No se toparon rejistros. filter_by_action: Filtra por aksion filter_by_user: Filtra por utilizador - title: Log de revizyon + title: Defter de revizyon announcements: destroyed_msg: Pregon supremido kon sukseso! edit: @@ -303,12 +306,12 @@ lad: scheduled_for: Programado para %{time} scheduled_msg: Pregon programado para su publikasyon! title: Pregones - unpublish: Retirar publikasyon + unpublish: Retira publikasyon unpublished_msg: Pregon retirado kon sukseso! updated_msg: Pregon aktualizado kon sukseso! critical_update_pending: Aktualizasyon kritika esta asperando custom_emojis: - assign_category: Asinyar kategoria + assign_category: Asinya kategoria by_domain: Domeno copied_msg: Kopia lokala del emoji kriyada kon sukseso copy: Kopia @@ -328,7 +331,7 @@ lad: list: Lista listed: Listados new: - title: Adjustar muevo emoji personalizado + title: Adjusta muevo emoji personalizado no_emoji_selected: No se troko dingun emoji porke no eskojites dinguno not_permitted: No tienes permiso para realizar esta aksyon overwrite: Sobreskrive @@ -506,8 +509,8 @@ lad: all: Todos clear: Alimpiar yerros de entrega failing: Fayando - restart: Reinisyar entrega - stop: Detener entrega + restart: Reinisya entrega + stop: Deten entrega unavailable: No desponivle delivery_available: Entrega desponivle delivery_error_days: Diyas de yerro de entrega @@ -632,7 +635,7 @@ lad: reported_by: Raportado por resolved: Rezolvido resolved_msg: Tienes rezolvido la denunsia djustamente! - skip_to_actions: Ir direktamente a las aksyones + skip_to_actions: Va direktamente a las aksyones status: Estado statuses: Kontenido raportado statuses_description_html: El kontenido ofensivo se sitara en la komunikasyon kon el kuento raportado @@ -643,12 +646,12 @@ lad: silence_html: 'Vas limitar el kuento de @%{acct}''''. Esto va:' suspend_html: 'Vas suspender el kuento de @%{acct}''''. Esto va:' actions: - delete_html: Kitar las publikasyones ofensivas - mark_as_sensitive_html: Markar los multimedios de la publikasyon komo sensivles - silence_html: Severamente limitar la vizivilita de @%{acct}, fazendo su profil i kontenido vizivles solo para las personas ke ya lo sigen o manualmente bushkan su profil - suspend_html: Suspender @%{acct}, faziendo su profil i kontenido inaksesivle i no disponivle para interaksiones - close_report: 'Markar raporto #%{id} komo rezolvido' - close_reports_html: Markar todos los raportos kontra @%{acct} komo rezolvidos + delete_html: Kita las publikasyones ofensivas + mark_as_sensitive_html: Marka los multimedios de la publikasyon komo sensivles + silence_html: Severamente limita la vizivilita de @%{acct}, fazendo su profil i kontenido vizivles solo para las personas ke ya lo sigen o manualmente bushkan su profil + suspend_html: Suspende @%{acct}, faziendo su profil i kontenido inaksesivle i no disponivle para interaksiones + close_report: 'Marka raporto #%{id} komo rezolvido' + close_reports_html: Marka todos los raportos kontra @%{acct} komo rezolvidos delete_data_html: Efasa el profil i kontenido de @%{acct} en 30 dias si no sea desuspendido en akel tiempo preview_preamble_html: "@%{acct} resivira una avertensya komo esta:" record_strike_html: Enrejistra un amonestamiento kontra @%{acct} para ke te ayude eskalar las violasyones de reglas de este kuento en el avenir @@ -656,7 +659,7 @@ lad: warning_placeholder: Adisionalas, opsionalas razones la aksyon de moderasyon. target_origin: Orijin del kuento raportado title: Raportos - unassign: Dezasinyar + unassign: Dezasinya unknown_action_msg: 'Aksyon no konesida: %{action}' unresolved: No rezolvido updated_at: Aktualizado @@ -742,6 +745,7 @@ lad: preamble: La marka de tu sirvidor lo desferensia de otros sirvidores de la red. Esta enformasyon puede amostrarse por una varieta de entornos, komo en la enterfaz web de Mastodon, en aplikasyones nativas, en previsualizasiones de atadijos en otros sitios internetikos i en aplikasyones de mesajes, etc. Por esta razon, es mijor mantener esta enformasyon klara, breve i konsiza. title: Marka captcha_enabled: + desc_html: Esto se baza en eskriptos eksternos de hCaptcha, ke pueden ser una influensya negra a la sigurita i privasita. Ademas, esto puede rezultar en un proseso de enrejistrasyon signifikativamente manko aksesivle para algunas personas (espesyalmente diskapasitadas). Por estas razones, por favor, konsidera otras alternativas komo rejistrasyon por aprovasyon manuala o kon envitasyon. title: Solisita ke los muevos utilizadores rezolven un CAPTCHA para konfirmar su konto content_retention: preamble: Kontrola komo el kontenido jenerado por el utilizador se magazina en Mastodon. @@ -763,6 +767,7 @@ lad: disabled: A dinguno users: Para los utilizadores lokales ke entrado en su kuento registrations: + moderation_recommandation: Por favor, asigurate ke tyenes una taifa de moderasyon adekuada i reaktiva antes de avrir los enrejistramyentos a todos! preamble: Kontrola ken puede kriyar un kuento en tu sirvidor. title: Enrejistramientos registrations_mode: @@ -770,7 +775,10 @@ lad: approved: Se rekiere achetasion para enrejistrarse none: Permete a los utilizadores trokar la konfigurasyon del sitio open: Kualkiera puede enrejistrarse + warning_hint: Rekomendamos el uzo de "Se rekiere achetasion para enrejistrarse" a manko ke estes siguro ke tu taifa de moderasyon puede moderar el spam i los enrejistramyentos malisiozos en un tyempo razonavle. security: + authorized_fetch: Rekere autentifikasyon de sirvidores federados + authorized_fetch_hint: Rekerir autentifikasyon de sirvidores federados permite un forsamyento mas estrikto de los blokos a nivel de utilizador i a nivel de sirvidor. Malgrado esto, el koste de esto es una penalizasyon de efisyensya, reduksyon del alkanse de tus repuestas i puede introduzir problemas de kompatibilita kon algunos sirvisyos federados. Ademas, esto no impidira ke aktores dedikados obtengan tus kuentos publikos i publikasyones publikas. authorized_fetch_overridden_hint: Agora no puedes trokar esta konfigurasyon dkee esta sovreeskrita por una variable de entorno. federation_authentication: Forzamyento de autentifikasyon para la federasyon title: Konfigurasyon del sirvidor @@ -779,6 +787,7 @@ lad: destroyed_msg: Dosya supremida kon sukseso! software_updates: critical_update: Kritiko – por favor aktualiza pishin + description: Rekomendamos ke mantengas aktualizada tu enstalasyon de Mastodon para benefisyar de las muevas koreksyones y funksyones. Ademas, a vezes es kritiko aktualizar Mastodon punktualmente para evitar problemas de sigurita. Por estas razones, Mastodon komprova si ay aktualizasyones kada 30 minutos, i te avizara de akodro a tus preferensyas de avizos por posta elektronika. documentation_link: Ambezate mas release_notes: Notas sovre la versyon title: Aktualizasyones desponivles @@ -832,11 +841,16 @@ lad: message_html: El klaster de Elasticsearch no es sano (estado kolorado), funksyones de bushkeda no estan disponivles elasticsearch_health_yellow: message_html: El klaster de Elasticsearch no es sano (estado amariyo), es posivle ke keras investigar la razon + elasticsearch_index_mismatch: + message_html: Las mapas de indeksos Elasticsearch estan dezaktualizadas. Por favor, uza tootctl search deploy --only=%{value} elasticsearch_preset: action: Ve dokumentasyon message_html: Tu klaster de Elasticsearch tiene mas ke un nodo, ama Mastodon no esta konfigurado para uzarlos. elasticsearch_preset_single_node: action: Ve dokumentasyon + message_html: Tu klaster de Elasticsearch solo tyene un nodo, ES_PRESET deve estableserse a single_node_cluster. + elasticsearch_reset_chewy: + message_html: Tu indekso del sistema Elasticsearch esta dezaktualizado por un trokamyento de konfigurasyon. Por favor uza tootctl search deploy --reset-chewy para aktualizarlo. elasticsearch_running_check: message_html: No se pudo konektar a Elasticsearch. Por favor, averigua ke esta egzekutandose, o dezaktiva la bushkeda de teksto kompleto elasticsearch_version_check: @@ -954,6 +968,9 @@ lad: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: Por la falta de moderadores aktivos, los enrejistramyentos en %{instance} tyenen sido trokados otomatikamente para rekerir revizyon manuala, para ke %{instance} no se utilize potensyalmente komo platforma por malos aktores. Puedes trokarlo de muevo para avrir los enrejistramyentos en kualseker momento. + subject: Enrejistramyentos de %{instance} fueron otomatikamente trokados i agora nesesitan aprovasyon new_appeal: actions: delete_statuses: para supremir sus mesajes @@ -1089,6 +1106,7 @@ lad: preamble_html: Konektate kon tus kredensiales de %{domain}. Si tu kuento esta balabayado en otruno servidor, no puedras konektarte aki. title: Konektate kon %{domain} sign_up: + manual_review: Las enrejistrasyones en %{domain} pasan por la revizyon manuala de muestros moderadores. Para ayudarmos a prosesar tu enrejistrasyon, eskrive un poko sovre ti i por ke keres un kuento en %{domain}. preamble: Kon un kuento en este sirvidor de Mastodon, podras segir a kualkier otra persona en la red, endependientemente del sirvidor en el ke se tope. title: Kriya kuento de Mastodon en %{domain}. status: @@ -1103,7 +1121,7 @@ lad: use_security_key: Uza la yave de sigurita challenge: confirm: Kontinua - hint_html: "Tip: No retornaremos a demandarte por el kod durante la sigiente ora." + hint_html: "Konsejo: No retornaremos a demandarte por el kod durante la sigiente ora." invalid_password: Kod inkorekto prompt: Konfirma kod para segir crypto: @@ -1133,7 +1151,7 @@ lad: confirm_password: Eskrive tu kod aktual para demostrar tu identita confirm_username: Eskrive tu nombre de utilizador para konfirmar proceed: Efasa kuento - success_msg: Tu kuento fue efasado kon reusho + success_msg: Tu kuento fue efasado kon reushita warning: before: 'Antes de kontinuar, por favor melda kon atensyon las sigientes notas:' caches: El kontenido ke tiene sido magazinado en kashe por otros sirvidores puede persistir @@ -1179,6 +1197,7 @@ lad: invalid_domain: no es un nombre de domeno valido edit_profile: basic_information: Enformasyon bazika + hint_html: "Personaliza lo ke la djente ve en tu profil publiko i kon tus publikasyones. Es mas probavle ke otras personas te sigan i enteraktuen kontigo kuando kompletas tu profil i foto." other: Otros errors: '400': La solisitasyon ke enviates no fue valida o fue malformada. @@ -1258,11 +1277,18 @@ lad: batch: remove: Kita del filtro index: + hint: Este filtro se aplika a la seleksyon de publikasyones individualas independentemente de otros kriteryos. Puedes adjustar mas publikasyones a este filtro dizde la enterfaz de web. title: Publikasyones filtradas generic: all: Todos + all_items_on_page_selected_html: + one: "%{count} elemento en esta pajina esta eskojido." + other: Todos los %{count} elementos en esta pajina estan eskojidos. + all_matching_items_selected_html: + one: "%{count} elemento ke koenside con tu bushkeda esta eskojido." + other: Todos los %{count} elementos ke koensiden con tu bushkeda estan eskojidos. cancel: Anula - changes_saved_msg: Trokamientos guadrados kon reusho! + changes_saved_msg: Trokamientos guadrados kon reushita! confirm: Konfirma copy: Kopia delete: Efasa @@ -1286,6 +1312,7 @@ lad: too_large: Dosya es mas grande failures: Yerros imported: Importado + mismatched_types_warning: Parese ke podrias eskojer el tipo inkorekto para este importo, por favor verifikalo de muevo. modes: merge: Une merge_long: Manten rejistros egzistentes i adjusta muevos @@ -1303,6 +1330,7 @@ lad: bookmarks_html: Estas a punto de adjustar asta %{total_items} publikasyones de %{filename} a tus markadores. domain_blocking_html: Estas a punto de blokar asta %{total_items} domenos de %{filename}. following_html: Estas a punto de segir asta %{total_items} kuentos de %{filename}. + lists_html: Estas a punto de adjustar %{total_items} kuentos dizde %{filename} a tus listas. Se kriyaran muevas listas si no ay listas para adjustarlas. muting_html: Estas a punto de silensyar asta %{total_items} kuentos de %{filename}. preface: Puedes importar siertos datos, komo todas las personas a las kualas estas sigiendo o blokando en tu kuento en esta instansya, dizde dosyas eksportadas de otra instansya. recent_imports: Importasyones resyentes @@ -1374,6 +1402,7 @@ lad: unsubscribe: action: Si, dezabona complete: Dezabonado + confirmation_html: Estas siguro de ke ya no keres risivir %{type} de Mastodon en %{domain} a tu posta elektronika %{email}? Syempre podras reabonarte dizde las opsyones de avizos por posta.. emails: notification_emails: favourite: avizos de favoritos por posta @@ -1381,6 +1410,8 @@ lad: follow_request: avizos de solisitasyones de segimyento por posta mention: avizos de enmentaduras por posta reblog: avizos de repartajasyones por posta + resubscribe_html: Si tyenes deabonado por yerro, puedes reabonar en tus opsyones de avizos por posta elektronika. + success_html: Ya no risiviras %{type} de Mastodon en %{domain} a tu posta en %{email}. title: Dezabona media_attachments: validations: @@ -1506,9 +1537,13 @@ lad: posting_defaults: Konfigurasyon predeterminada de publikasyones public_timelines: Linyas de tiempo publikas privacy: + hint_html: "Personaliza el diskuvrimyento de tu profil y tus publikasyones. En Mastodon tyenes distinktas funksyones ke te ayudaran a alkansar una audiensya mas ancha si las aktivas. Reviza estas opsyones por un momento para estar siguro ke kaven tus nesesidades." privacy: Privasita + privacy_hint_html: Kontrola kuanto keres revelar a otros. Las personas diskuvren profiles i aplikasyones interesantes navigando por los suivantes de otras personas i vyendo dizde ke aplikasyones publikan, ama puede ke preferas mantenerlo eskondido. reach: Alkanse + reach_hint_html: Kontrola si keres ke te diskuvren i sigen muevas personas. Keres ke tus publikasyones se amostren en la seksyon de Eksplorasyon? Keres que tu kuento este rekomendado a otras personas? Keres achetar otomatikamente a todos los muevos suivantes o tener kontrol sovre kada uno de eyos? search: Bushkeda + search_hint_html: Kontrola komo keres ke te topen. Keres ke otras personas te topan por lo ke tyenes publikado publikamente? Keres ke las personas de fuera de Mastodon topen tu profil al bushkar en la web? Por favor, akodrate de ke la ekskluzyon totala de todos los bushkadores no puede ser garantizada para enformasyon publika. title: Privasita i alkanse privacy_policy: title: Politika de privasita @@ -1555,6 +1590,7 @@ lad: over_total_limit: Tienes superado el limito de %{limit} publikasyones programadas too_soon: La data programada deve estar en el avenir self_destruct: + lead_html: Malorozamente, %{domain} va serrar permanentemente. Si teniyas un kuento ayi, ya no podras utilizarlo, ama ainda puedes solisitar una kopya de tus datos. title: Este sirvidor esta serrando sessions: activity: Ultima aktivita @@ -1728,6 +1764,7 @@ lad: with_time_zone: "%d de %b del %Y, %H:%M %Z" translation: errors: + quota_exceeded: La kuota de uzo del sirvisyo de traduksyon para todo el sirvidor tiene sido sovrepasada. too_many_requests: Ay demaziadas solisitudes de servisyo de traduksyon. two_factor_authentication: add: Adjusta @@ -1740,7 +1777,7 @@ lad: lost_recovery_codes: Los kodiches de rekuperasyon te permeten obtener akseso a tu kuento si piedres tu telefon. Si tienes pedrido tus kodiches de rekuperasyon, puedes redjenerarlos aki. Tus viejos kodiches de rekuperasyon se aran malatos. methods: Metodos de autentifikasyon de dos pasos otp: Aplikasyon de autentifikasyon - recovery_codes: Fazer kopias de sigurita de tus kodiches de rekuperasyon + recovery_codes: Faz kopias de sigurita de tus kodiches de rekuperasyon recovery_codes_regenerated: Kodiches de rekupersayon redjenerados kon sukseso recovery_instructions_html: Si piedres akseso a tu telefon, puedes uzar uno de los sigientes kodiches de rekuperasyon para obtener akseso a tu kuento. Mantenlos a salvo. Por enshemplo, puedes imprimirlos i guadrarlos kon otros dokumentos emportantes. webauthn: Yaves de sigurita @@ -1757,11 +1794,16 @@ lad: subtitle: Tu apelasyon fue refuzada. title: Apelasyon refuzada backup_ready: + explanation: Tienes solisitado una kopia de sigurita de tu kuento de Mastodon. extra: Agora esta pronto para abashar! subject: Tu dosya esta pronta para abashar title: Abasha dosya failed_2fa: details: 'Aki estan los peratim de las provas de koneksyon kon tu kuento:' + explanation: Algun ha intentado konektarte kon tu cuenta ama prokuro un sigundo paso de autentifikasyon invalido. + further_actions_html: Si no fuites tu, rekomendamos %{action} inmediatamente deke puede estar komprometido. + subject: Autentikasyon del sigundo paso sin sukseso + title: Autentifikasyon del sigundo paso no reushida suspicious_sign_in: change_password: troka tu kod details: 'Aki estan los peratim de la koneksyon kon tu kuento:' @@ -1804,10 +1846,6 @@ lad: edit_profile_action: Konfigurasyon de profil edit_profile_step: Puedes personalizar tu profil kargando una foto de profil, trokando tu nombre de utilizador i muncho mas. Puedes optar por revizar a los muevos suivantes antes de ke puedan segirte. explanation: Aki ay algunos konsejos para ampesar - final_action: Ampesa a publikar - final_step: 'Ampesa a publikar! Inkluzo sin suivantes, tus publikasyones publikas pueden ser vistas por otros, por enshemplo en la linya de tiempo lokal o en etiketas. Tal vez keras aprezentarte kon la etiketa de #introduksiones.' - full_handle: Tu sovrenombre kompleto - full_handle_hint: Esto es lo ke le dirias a tus haverim para ke eyos puedan embiarte mesajes o segirte dizde otra instansya. subject: Bienvenido a Mastodon title: Bienvenido, %{name}! users: @@ -1819,7 +1857,10 @@ lad: seamless_external_login: Estas konektado por un servisyo eksterno i estonses la konfigurasyon de kod i konto de posta no estan disponivles. signed_in_as: 'Konektado komo:' verification: + extra_instructions_html: Konsejo: El atadijo en tu web puede ser invizivle. La parte importante es rel="me", ke evita la suplantasyon de identita en sitios kon kontenido jenerado por el utilizador. Puedes inkluzo uzar una etiketa atadijo en la kavesera de la pajina en vez de a, ama el HTML deve ser aksesivle sin exekutar JavaScript. here_is_how: Ansina es komo + hint_html: "La verifikasyon de identita en Mastodon es para todos. Bazado en estandardes abiertos, agora i para syempre. Todo lo ke nesesitas es un sitio web propio ke la gente rekonozka. Kuando adjustas un atadijo a este sitio web dizde tu profil, komprovaremos ke el sitio web se ata a tu profil i lo amostraremos vizualmente." + instructions_html: Kopia i apega este kodiche en el HTML de tu sitio web. Estonses, adjusta el adreso de tu sitio web en uno de los kutis adisyonales de tu profil dizde la seksyon "Edita profil" i guadra los trokamyentos. verification: Verifikasyon verified_links: Tus atadijos verifikados webauthn_credentials: diff --git a/config/locales/lt.yml b/config/locales/lt.yml index 1d159bf45a..7ffce1a516 100644 --- a/config/locales/lt.yml +++ b/config/locales/lt.yml @@ -102,14 +102,27 @@ lt: public: Viešas push_subscription_expires: PuSH prenumeramivas pasibaigė redownload: Perkrauti profilį + rejected_msg: Sėkmingai patvirtinta %{username} registracijos paraiška + remote_suspension_irreversible: Šios paskyros duomenys negrįžtamai ištrinti. + remote_suspension_reversible_hint_html: Paskyra jų serveryje buvo sustabdyta, o duomenys bus visiškai pašalinti %{date}. Iki to laiko nuotolinis serveris gali atkurti šią paskyrą be jokių neigiamų pasekmių. Jei norite iš karto pašalinti visus paskyros duomenis, galite tai padaryti toliau. remove_avatar: Panaikinti profilio nuotrauką remove_header: Panaikinti antraštę + removed_header_msg: Sėkmingai pašalintas %{username} antraštės paveikslėlis resend_confirmation: already_confirmed: Šis vartotojas jau patvirtintas + send: Dar kartą išsiųsti patvirtinimo nuorodą + success: Patvirtinimo laiškas sėkmingai išsiųstas! reset: Iš naujo reset_password: Atkurti slaptažodį resubscribe: Per prenumeruoti + role: Vaidmuo search: Ieškoti + search_same_email_domain: Kiti tą patį el. pašto domeną turintys naudotojai + search_same_ip: Kiti tą patį IP turintys naudotojai + security: Apsauga + security_measures: + only_password: Tik slaptažodis + password_and_2fa: Slaptažodis ir 2FA sensitized: Pažymėti kaip jautrią informaciją shared_inbox_url: Bendroji gautųjų URL show: @@ -120,13 +133,21 @@ lt: statuses: Statusai subscribe: Prenumeruoti suspended: Užrakintas + suspension_irreversible: Šios paskyros duomenys negrįžtamai ištrinti. Galite atšaukti paskyros sustabdymą, kad ja būtų galima naudotis, tačiau nebus atkurti jokie anksčiau turėti duomenys. + suspension_reversible_hint_html: Paskyra sustabdyta, o duomenys bus visiškai pašalinti %{date}. Iki to laiko paskyrą galima atkurti be jokių neigiamų pasekmių. Jei norite iš karto pašalinti visus paskyros duomenis, galite tai padaryti toliau. title: Vartotojai + unblock_email: El. pašto adreso atblokavimas + unblocked_email_msg: Sėkmingai atblokuotas %{username} el. pašto adresas unconfirmed_email: Nepatvirtintas el pašto adresas undo_silenced: Atšaukti užtildymą undo_suspension: Atšaukti užrakinimą + unsilenced_msg: Sėkmingai panaikintas %{username} paskyros apribojimas unsubscribe: Nebeprenumeruoti + unsuspended_msg: Sėkmingai panaikintas %{username} paskyros apribojimas username: Slapyvardis + view_domain: Peržiūrėti domeno santrauką warn: Įspėti + whitelisted: Leidžiama federacijai action_logs: title: Audito žurnalas custom_emojis: @@ -260,6 +281,8 @@ lt: desc_html: Tai priklauso nuo hCaptcha išorinių skriptų, kurie gali kelti susirūpinimą dėl saugumo ir privatumo. Be to, dėl to registracijos procesas kai kuriems žmonėms (ypač neįgaliesiems) gali būti gerokai sunkiau prieinami. Dėl šių priežasčių apsvarstyk alternatyvias priemones, pavyzdžiui, patvirtinimu arba kvietimu grindžiamą registraciją. domain_blocks: all: Visiems + registrations: + moderation_recommandation: Prieš atidarant registraciją visiems, įsitikink, kad turi tinkamą ir reaguojančią prižiūrėjimo komandą! software_updates: description: Rekomenduojama nuolat atnaujinti Mastodon diegyklę, kad galėtum naudotis naujausiais pataisymais ir funkcijomis. Be to, kartais labai svarbu laiku naujinti Mastodon, kad būtų išvengta saugumo problemų. Dėl šių priežasčių Mastodon kas 30 minučių tikrina, ar yra atnaujinimų, ir praneša tau apie tai pagal tavo el. pašto pranešimų parinktis. statuses: @@ -283,6 +306,9 @@ lt: edit_preset: Keisti įspėjimo nustatymus title: Valdyti įspėjimo nustatymus admin_mailer: + auto_close_registrations: + body: Dėl pastarojo meto peržiūrėtojų aktyvumo trūkumo %{instance} registracija buvo automatiškai pakeista į reikalaujančią rankinės būdo peržiūros, kad %{instance} nebūtų naudojama kaip platforma potencialiems blogiems veikėjams. Bet kuriuo metu gali ją vėl perjungti į atvirą registraciją. + subject: "%{instance} registracijos automatiškai pakeistos į reikalaujančias patvirtinimo" new_report: body: "%{reporter} parašė skundą apie %{target}" body_remote: Kažkas iš %{domain} parašė skundą apie %{target} @@ -293,7 +319,7 @@ lt: guide_link_text: Visi gali prisidėti. application_mailer: notification_preferences: Keisti el pašto parinktis - settings: 'Keisti el pašto parinktis: %{link}' + settings: 'Keisti el. pašto nuostatas: %{link}' view: 'Peržiūra:' view_profile: Peržiurėti profilį view_status: Peržiūrėti statusą @@ -582,10 +608,6 @@ lt: welcome: edit_profile_action: Nustatyti profilį explanation: Štai keletas patarimų, kaip pradėti - final_action: Pradėti kelti įrašus - final_step: 'Pradėk skelbti! Net jei ir neturi sekėjų, tavo viešus įrašus gali matyti kiti, pavyzdžiui, vietinėje laiko skalėje arba saitažodžiuose. Galbūt norėsi prisistatyti saitažodyje #introductions.' - full_handle: Tavo pilnas slapyvardis - full_handle_hint: Štai ką pasakytum savo draugams, kad jie galėtų parašyti arba sekti tave iš kito serverio. subject: Sveiki atvykę į Mastodon title: Sveiki atvykę, %{name}! users: diff --git a/config/locales/lv.yml b/config/locales/lv.yml index fcf478cf93..89bdf5f05f 100644 --- a/config/locales/lv.yml +++ b/config/locales/lv.yml @@ -1855,10 +1855,6 @@ lv: edit_profile_action: Iestatīt profilu edit_profile_step: Tu vari pielāgot savu profilu, augšupielādējot profila attēlu, mainot parādāmo vārdu un citas lietas. Vari izvēlēties pārskatīt jaunus sekotājus, pirms atļauj viņiem tev sekot. explanation: Šeit ir daži padomi, kā sākt darbu - final_action: Sāc publicēt - final_step: 'Sāc publicēt! Pat bez sekotājiem tavas publiskās ziņas var redzēt citi, piemēram, vietējā ziņu lentā vai atsaucēs. Iespējams, tu vēlēsies iepazīstināt ar sevi, izmantojot tēmturi #introductions.' - full_handle: Tavs pilnais lietotājvārds - full_handle_hint: Šis ir tas, ko tu pasaki saviem draugiem, lai viņi varētu tev ziņot vai sekot tev no cita servera. subject: Laipni lūgts Mastodon title: Laipni lūgts uz borta, %{name}! users: diff --git a/config/locales/ms.yml b/config/locales/ms.yml index 6625a13b3b..81f1851b1e 100644 --- a/config/locales/ms.yml +++ b/config/locales/ms.yml @@ -1772,10 +1772,6 @@ ms: edit_profile_action: Sediakan profil edit_profile_step: Anda boleh menyesuaikan profil anda dengan memuat naik gambar profil, menukar nama paparan anda dan banyak lagi. Anda boleh ikut serta untuk menyemak pengikut baharu sebelum mereka dibenarkan mengikuti anda. explanation: Berikut ialah beberapa petua untuk anda bermula - final_action: Mula menyiarkan - final_step: 'Mula menyiarkan! Walaupun tanpa pengikut, pos awam anda mungkin dilihat oleh orang lain, contohnya pada garis masa tempatan atau dalam hashtag. Anda mungkin ingin memperkenalkan diri anda pada hashtag #introductions.' - full_handle: Pemegang penuh anda - full_handle_hint: Inilah yang anda akan beritahu rakan anda supaya mereka boleh menghantar mesej atau mengikuti anda dari server lain. subject: Selamat datang kepada Mastodon title: Selamat datang, %{name}! users: diff --git a/config/locales/my.yml b/config/locales/my.yml index 094f581eb9..18f5c6a2d0 100644 --- a/config/locales/my.yml +++ b/config/locales/my.yml @@ -1771,10 +1771,6 @@ my: edit_profile_action: ပရိုဖိုင်ထည့်သွင်းရန် edit_profile_step: ပရိုဖိုင်ဓာတ်ပုံတစ်ပုံ တင်ခြင်း၊ ဖော်ပြမည့်အမည် ပြောင်းလဲခြင်းနှင့် အခြားအရာများပြုလုပ်ခြင်းတို့ဖြင့် သင့်ပရိုဖိုင်ကို စိတ်ကြိုက်ပြင်ဆင်နိုင်ပါသည်။ စောင့်ကြည့်သူအသစ်များ သင့်ကိုစောင့်ကြည့်ခွင့်မပြုမီ ပြန်လည်သုံးသပ်ရန်အတွက် ဆုံးဖြတ်နိုင်ပါသည်။ explanation: ဤသည်မှာ သင် စတင်အသုံးပြုနိုင်ရန်အတွက် အကြံပြုချက်အချို့ဖြစ်ပါသည် - final_action: ပို့စ် တင်ရန် - final_step: 'ပို့စ်စပြီး တင်နိုင်ပါပြီ။ စောင့်ကြည့်သူများမရှိသေးသော်လည်း သင့်အများမြင်ပို့စ်များကို ဒေသတွင်းစာမျက်နှာ သို့မဟုတ် ဟက်ရှ်တက်စာမျက်နှာတို့တွင် အခြားသူများက မြင်နိုင်ပါသည်။ #introductions ဟက်ရှ်တက်ဖြင့် သင့်ကိုယ်သင် မိတ်ဆက်နိုင်ပါသည်။' - full_handle: ကိုယ်တိုင်ထိန်းချုပ်နိုင်သည် - full_handle_hint: ဤသည်မှာ သင့်သူငယ်ချင်းများကို အခြားဆာဗာတစ်ခုမှ မက်ဆေ့ချ်ပို့နိုင်ကြောင်း သို့မဟုတ် စောင့်ကြည့်နိုင်ကြောင်း အသိပေးပါမည်။ subject: Mastodon မှ လှိုက်လှဲစွာကြိုဆိုပါသည်။ title: "%{name} က ကြိုဆိုပါတယ်။" users: diff --git a/config/locales/nl.yml b/config/locales/nl.yml index a3657890da..c935e9f4aa 100644 --- a/config/locales/nl.yml +++ b/config/locales/nl.yml @@ -767,6 +767,7 @@ nl: disabled: Aan niemand users: Aan ingelogde lokale gebruikers registrations: + moderation_recommandation: Zorg ervoor dat je een adequaat en responsief moderatieteam hebt voordat je registraties voor iedereen openstelt! preamble: Toezicht houden op wie een account op deze server kan registreren. title: Registraties registrations_mode: @@ -774,6 +775,7 @@ nl: approved: Goedkeuring vereist om te kunnen registreren none: Niemand kan zich registreren open: Iedereen kan zich registreren + warning_hint: We raden je aan om “Goedkeuring vereist om te kunnen registreren” te gebruiken, tenzij je er zeker van bent dat jouw moderatieteam spam en kwaadwillende registraties tijdig kan afhandelen. security: authorized_fetch: Verificatie van gefedeerde servers vereisen authorized_fetch_hint: Verificatie vereisen van gefedereerde servers maakt een striktere handhaving van blokkades op gebruikersniveau en serverniveau mogelijk. Dit gaat echter ten koste van de prestaties, vermindert het bereik van je reacties en kan compatibiliteitsproblemen met sommige gefedereerde services opleveren. Bovendien zal dit niet voorkomen dat personen met slechte bedoelingen je openbare berichten en accounts kunnen ophalen. @@ -966,6 +968,9 @@ nl: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: In verband met een gebrek aan recentelijke moderator-activiteit, is de registratie-modus op %{instance} automatisch veranderd naar handmatige beoordeling door moderatoren. Dit om te voorkomen dat %{instance} als platform voor eventueel misbruik kan worden gebruikt. Je kunt op elk gewenst moment veel terugschakelen naar open registraties. + subject: De registratie-modus op %{instance} is automatisch veranderd naar handmatige beoordeling door moderatoren new_appeal: actions: delete_statuses: het verwijderen van diens berichten @@ -1794,10 +1799,10 @@ nl: subject: Jouw archief staat klaar om te worden gedownload title: Archief ophalen failed_2fa: - details: 'Hier zijn details van de aanmeldpoging:' + details: 'Hier zijn details van de inlogpoging:' explanation: Iemand heeft geprobeerd om in te loggen op jouw account maar heeft een ongeldige tweede verificatiefactor opgegeven. further_actions_html: Als jij dit niet was, raden we je aan om onmiddellijk %{action} aangezien het in gevaar kan zijn. - subject: Tweede factor authenticatiefout + subject: Tweestapsverificatiefout title: Tweestapsverificatie mislukt suspicious_sign_in: change_password: je wachtwoord te wijzigen @@ -1841,10 +1846,6 @@ nl: edit_profile_action: Profiel instellen edit_profile_step: Je kunt jouw profiel aanpassen door een profielfoto te uploaden, jouw weergavenaam aan te passen en meer. Je kunt het handmatig goedkeuren van volgers instellen. explanation: Hier zijn enkele tips om je op weg te helpen - final_action: Begin berichten te plaatsen - final_step: 'Begin berichten te plaatsen! Zelfs zonder volgers kunnen jouw openbare berichten door anderen bekeken worden, bijvoorbeeld op de lokale tijdlijn en onder hashtags. Je kunt jezelf voorstellen met het gebruik van de hashtag #introductions.' - full_handle: Jouw volledige Mastodonadres - full_handle_hint: Dit geef je aan jouw vrienden, zodat ze jou berichten kunnen sturen of (vanaf een andere Mastodonserver) kunnen volgen. subject: Welkom op Mastodon title: Welkom aan boord %{name}! users: diff --git a/config/locales/nn.yml b/config/locales/nn.yml index ffa5198a3a..aecd148e28 100644 --- a/config/locales/nn.yml +++ b/config/locales/nn.yml @@ -31,7 +31,7 @@ nn: created_msg: Moderatormerknad er laga! destroyed_msg: Moderatormerknad er utsletta! accounts: - add_email_domain_block: Gøym e-postdomene + add_email_domain_block: Blokker e-postdomene approve: Godtak approved_msg: Godkjende %{username} sin registreringssøknad are_you_sure: Er du sikker? @@ -767,13 +767,15 @@ nn: disabled: Til ingen users: Til lokale brukarar som er logga inn registrations: + moderation_recommandation: Pass på at du har mange og kjappe redaktørar og moderatorar på laget ditt før du opnar for allmenn registrering! preamble: Kontroller kven som kan oppretta konto på tenaren din. title: Registreringar registrations_mode: modes: - approved: Godkjenning kreves for påmelding + approved: Godkjenning krevst for å registrera seg none: Ingen kan melda seg inn open: Kven som helst kan melda seg inn + warning_hint: Me rår til at du bruker "Godkjenning krevst for å registrera seg" viss du ikkje er sikker på at moderatorane kan handtera søppel og illmeinte registreringar kvikt. security: authorized_fetch: Krev autentisering frå fødererte tenarar authorized_fetch_hint: Krav om autentisering frå fødererte tenarar gjer det mogleg med strengare handheving av blokkering, både på brukar- og tenar-nivå. Likevel, dette har ein kostnad når det gjeld yting, reduserer rekkevidda til svara dine og kan medføra kompabilitetsproblem med enkelte fødererte tenester. Dette vil heller ikkje hindra dei som verkeleg vil i å henta dei offentlege innlegga eller kontoane dine. @@ -966,6 +968,9 @@ nn: title: Webhooker webhook: Webhook admin_mailer: + auto_close_registrations: + body: På grunn av mangel på nyleg moderatoraktivitet, er registreringar på %{instance} automatisk bytt til å krevje manuell gjennomgang, for å hindre at %{instance} vert brukt som ein plattform for potensielle dårlege aktørar. Du kan byte tilbake for å opne registreringar når som helst. + subject: Registreringar for %{instance} er automatisk bytt til å krevje godkjenning new_appeal: actions: delete_statuses: å slette sine innlegg @@ -1447,7 +1452,7 @@ nn: moderation: title: Moderasjon move_handler: - carry_blocks_over_text: Denne brukaren flytta frå %{acct}, som du gøymde. + carry_blocks_over_text: Denne brukaren flytta frå %{acct}, som du hadde blokkert. carry_mutes_over_text: Denne brukeren flyttet fra %{acct}, som du hadde dempet. copy_account_note_text: 'Denne brukeren flyttet fra %{acct}, her var dine tidligere notater om dem:' navigation: @@ -1534,7 +1539,7 @@ nn: privacy: hint_html: "Tilpass korleis du vil at andre skal finna profilen og innlegga dine. Mastodon har fleire funksjonar du kan ta i bruk for å få kontakt med eit større publikum. Sjå gjerne gjennom innstillingane slik at du er sikker på at dei passar til deg og din bruk." privacy: Personvern - privacy_hint_html: Ha kontroll over kor mykje du vil dela. Folk finn interessante profilar og fine appar ved å sjå gjennom kva andre fylgjer og kva appar dei legg ut innlegg med, men det kan henda du vil gøyma desse opplysingane. + privacy_hint_html: Kontroller kor mykje du vil dela. Folk finn interessante profilar og fine appar ved å sjå gjennom kva andre fylgjer og kva appar dei legg ut innlegg med, men det kan henda du vil gøyma desse opplysingane. reach: Nå andre reach_hint_html: Hald styring med om du vil at andre skal kunna oppdaga og fylgja deg. Vil du at innlegga dine skal stå på Utforsk-sida? Vil du at andre skal sjå deg i tilrådingane for kven dei skal fylgja? Vil du ta imot nye fylgjarar automatisk, eller vil du kontrollera kvar einskild fylgjar? search: Søk @@ -1547,8 +1552,8 @@ nn: limit_reached: Grensen for forskjellige reaksjoner nådd unrecognized_emoji: er ikke en gjenkjent emoji redirects: - prompt: Hvis du stoler på denne lenken, så trykk på den for å fortsette. - title: Du forlater %{instance}. + prompt: Viss du stolar på denne lenka, klikkar du på ho for å halda fram. + title: No forlèt du %{instance}. relationships: activity: Kontoaktivitet confirm_follow_selected_followers: Er du sikker på at du ynskjer å fylgja dei valde fylgjarane? @@ -1778,7 +1783,7 @@ nn: webauthn: Sikkerhetsnøkler user_mailer: appeal_approved: - action: Kontoinnstillinger + action: Kontoinnstillingar explanation: Apellen på prikken mot din kontor på %{strike_date} som du la inn på %{appeal_date} har blitt godkjend. Din konto er nok ein gong i god stand. subject: Din klage fra %{date} er godkjent subtitle: Kontoen din er tilbake i god stand. @@ -1786,11 +1791,11 @@ nn: appeal_rejected: explanation: Klagen på advarselen mot din konto den %{strike_date} som du sendte inn den %{appeal_date} har blitt avvist. subject: Din klage fra %{date} er avvist - subtitle: Anken din har blitt avvist. + subtitle: Klaga di vart avvist. title: Anke avvist backup_ready: - explanation: Du etterspurte en fullstendig sikkerhetskopi av din Mastodon-konto. - extra: Den er nå klar for nedlasting! + explanation: Du ba om ein fullstendig tryggingskopi av Mastodon-kontoen din. + extra: No kan du lasta han ned! subject: Arkivet ditt er klart til å lastes ned title: Nedlasting av arkiv failed_2fa: @@ -1841,10 +1846,6 @@ nn: edit_profile_action: Lag til profil edit_profile_step: Du kan tilpasse profilen din ved å laste opp et profilbilde, endre visningsnavnet ditt og mer. Du kan velge at nye følgere må godkjennes av deg før de får lov til å følge deg. explanation: Her er nokre tips for å koma i gang - final_action: Kom i gang med å leggja ut - final_step: 'Skriv innlegg! Selv uten følgere kan dine offentlige innlegg bli sett av andre, for eksempel på den lokale tidslinjen og i emneknagger. Du kan introdusere deg selv ved å bruke emneknaggen #introduksjon.' - full_handle: Det fulle brukarnamnet ditt - full_handle_hint: Dette er det du fortel venene dine for at dei skal kunna senda deg meldingar eller fylgja deg frå ein annan tenar. subject: Velkomen til Mastodon title: Velkomen om bord, %{name}! users: diff --git a/config/locales/no.yml b/config/locales/no.yml index d26b20379e..481e28e863 100644 --- a/config/locales/no.yml +++ b/config/locales/no.yml @@ -1841,10 +1841,6 @@ edit_profile_action: Sett opp profil edit_profile_step: Du kan tilpasse profilen din ved å laste opp et profilbilde, endre visningsnavnet ditt og mer. Du kan velge at nye følgere må godkjennes av deg før de får lov til å følge deg. explanation: Her er noen tips for å komme i gang - final_action: Start postingen - final_step: 'Skriv innlegg! Selv uten følgere kan dine offentlige innlegg bli sett av andre, for eksempel på den lokale tidslinjen og i emneknagger. Du kan introdusere deg selv ved å bruke emneknaggen #introduksjon.' - full_handle: Ditt fullstendige brukernavn - full_handle_hint: Dette er hva du forteller venner slik at de kan sende melding eller følge deg fra en annen instanse. subject: Velkommen til Mastodon title: Velkommen ombord, %{name}! users: diff --git a/config/locales/oc.yml b/config/locales/oc.yml index 2887fc98b3..b8330992c9 100644 --- a/config/locales/oc.yml +++ b/config/locales/oc.yml @@ -968,9 +968,6 @@ oc: welcome: edit_profile_action: Configuracion del perfil explanation: Vaquí qualques astúcias per vos preparar - final_action: Començar de publicar - full_handle: Vòstre escais-nom complèt - full_handle_hint: Es aquò que vos cal donar a vòstres amics per que pòscan vos escriure o sègre a partir d’un autre servidor. subject: Benvengut a Mastodon title: Vos desirem la benvenguda a bòrd %{name} ! users: diff --git a/config/locales/pl.yml b/config/locales/pl.yml index 5bc78a6adf..f7c5d60f65 100644 --- a/config/locales/pl.yml +++ b/config/locales/pl.yml @@ -795,6 +795,7 @@ pl: disabled: Nikomu users: Zalogowanym lokalnym użytkownikom registrations: + moderation_recommandation: Upewnij się, że masz adekwatny i szybko reagujący zespół moderacyjny przed otwarciem rejestracji! preamble: Kontroluj, kto może utworzyć konto na Twoim serwerze. title: Rejestracje registrations_mode: @@ -802,6 +803,7 @@ pl: approved: Przyjęcie jest wymagane do rejestracji none: Nikt nie może się zarejestrować open: Każdy może się zarejestrować + warning_hint: Polecamy "Przyjęcie jest wymagane do rejestracji" chyba że masz pewność, że twój zespół moderacyjny może szybko obsłużyć spam i złośliwe rejestracje. security: authorized_fetch: Wymagaj uwierzytelnienia od sfederowanych serwerów authorized_fetch_hint: Wymaganie uwierzytelnienia ze sfederowanych serwerów pozwala na ściślejsze wymuszanie bloków z poziomu użytkowników i serwera, ale jest wolniejsze, redukuje zasięg odpowiedzi, i może być niekompatybilne z niektórymi sfederowanymi usługami. Nie chroni również publicznych kont i wpisów przed oddanymi użytkownikami. @@ -1002,6 +1004,9 @@ pl: title: Webhooki webhook: Webhook admin_mailer: + auto_close_registrations: + body: Z powodu braku niedawnych działań moderacyjnych, rejestracje na %{instance} wymagają ręcznej weryfikacji (by uniknąć dystrybucji spamu itp.). W dowolnym momencie możesz przywrócić politykę otwartej rejestracji. + subject: "%{instance} zostało automatycznie przełączone na zatwierdzanie rejestracji" new_appeal: actions: delete_statuses: aby usunąć ich wpisy @@ -1905,10 +1910,6 @@ pl: edit_profile_action: Skonfiguruj profil edit_profile_step: Możesz dostosować profil wysyłając awatar, zmieniając wyświetlaną nazwę i o wiele więcej. Jeżeli chcesz, możesz również włączyć przeglądanie i ręczne akceptowanie nowych próśb o możliwość obserwacji Twojego profilu. explanation: Kilka wskazówek, które pomogą Ci rozpocząć - final_action: Zacznij pisać - final_step: 'Zacznij tworzyć! Nawet jeżeli nikt Cię nie obserwuje, Twoje publiczne wiadomości będą widziane przez innych, na przykład na lokalnej osi czasu i w hashtagach. Możesz też utworzyć wpis wprowadzający używając hashtagu #introductions.' - full_handle: Twój pełny adres - full_handle_hint: Ten adres możesz podać znajomym, aby mogli skontaktować się z Tobą lub zacząć obserwować z innego serwera. subject: Witaj w Mastodonie title: Witaj na pokładzie, %{name}! users: diff --git a/config/locales/pt-BR.yml b/config/locales/pt-BR.yml index 79396d627f..86972f9ef1 100644 --- a/config/locales/pt-BR.yml +++ b/config/locales/pt-BR.yml @@ -767,6 +767,7 @@ pt-BR: disabled: Para ninguém users: Para usuários locais logados registrations: + moderation_recommandation: Por favor, certifique-se de ter uma equipe de moderação adequada e reativa antes de abrir as inscrições para todos! preamble: Controle quem pode criar uma conta no seu servidor. title: Inscrições registrations_mode: @@ -1840,10 +1841,6 @@ pt-BR: edit_profile_action: Configurar perfil edit_profile_step: Você pode personalizar seu perfil enviando uma foto de perfil, mudando seu nome de exibição e mais. Você pode optar por revisar novos seguidores antes que eles possam te seguir. explanation: Aqui estão algumas dicas para você começar - final_action: Comece a publicar - final_step: 'Comece a postar! Mesmo sem seguidores, suas postagens públicas podem ser vistas pelos outros, por exemplo, na linha do tempo local ou nas hashtags. Você pode querer fazer uma introdução usando a hashtag #introduções.' - full_handle: Seu nome de usuário completo - full_handle_hint: Isso é o que você compartilha com seus amigos para que eles possam te mandar mensagens ou te seguir a partir de outro servidor. subject: Boas-vindas ao Mastodon title: Boas vindas, %{name}! users: diff --git a/config/locales/pt-PT.yml b/config/locales/pt-PT.yml index 8a20bc68a1..0786ba2ed4 100644 --- a/config/locales/pt-PT.yml +++ b/config/locales/pt-PT.yml @@ -767,6 +767,7 @@ pt-PT: disabled: Para ninguém users: Para utilizadores locais que se encontrem autenticados registrations: + moderation_recommandation: Por favor, certifique-se de que você tem uma equipe de moderação adequada e reativa antes de abrir os registros para todos! preamble: Controle quem pode criar uma conta no seu servidor. title: Inscrições registrations_mode: @@ -774,6 +775,7 @@ pt-PT: approved: Registo sujeito a aprovação none: Ninguém se pode registar open: Qualquer pessoa se pode registar + warning_hint: Recomendamos o uso de "Aprovação necessária para se cadastrar", a menos que você esteja confiante de que sua equipe de moderação pode lidar com spam e registros maliciosos em tempo hábil. security: authorized_fetch: Exigir autenticação de servidores federados authorized_fetch_hint: Exigir autenticação de servidores federados permite uma aplicação mais rigorosa de bloqueios tanto ao nível do utilizador como do servidor. No entanto, isso é feito à custa de uma diminuição de desempenho, reduz o alcance das suas respostas e pode introduzir problemas de compatibilidade com alguns serviços federados. Além disso, isso não impede os atores mais empenhados de aceder às suas publicações e contas públicas. @@ -966,6 +968,9 @@ pt-PT: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: Devido à falta de atividade recente dos moderadores, as inscrições em %{instance} foram automaticamente alteradas para requererem revisão manual, para evitar que %{instance} seja utilizada como plataforma para potenciais maus atores. Pode voltar a alterar para inscrições abertas em qualquer altura. + subject: As incrições em %{instance} foram automaticamente alteradas para requererem aprovação new_appeal: actions: delete_statuses: para eliminar as suas publicações @@ -1841,10 +1846,6 @@ pt-PT: edit_profile_action: Configurar o perfil edit_profile_step: Pode personalizar o seu perfil carregando uma imagem de perfil, alterando o nome a exibir, entre outras opções. Pode optar por rever os novos seguidores antes de estes o poderem seguir. explanation: Aqui estão algumas dicas para começar - final_action: Começar a publicar - final_step: 'Comece a publicar! Mesmo sem seguidores, as suas mensagens públicas podem ser vistas por outros, como por exemplo na cronologia local e em etiquetas. Pense em apresentar-se usando a etiqueta #apresentações.' - full_handle: O seu nome completo - full_handle_hint: Isto é o que tem de facultar aos seus amigos para que eles lhe possam enviar mensagens ou segui-lo a partir de outra instância. subject: Bem-vindo ao Mastodon title: Bem-vindo a bordo, %{name}! users: diff --git a/config/locales/ro.yml b/config/locales/ro.yml index 1bdc4e8ca5..8e4f9e7913 100644 --- a/config/locales/ro.yml +++ b/config/locales/ro.yml @@ -709,9 +709,6 @@ ro: welcome: edit_profile_action: Configurare profil explanation: Iată câteva sfaturi pentru a începe - final_action: Începe să postezi - full_handle: Numele tău complet - full_handle_hint: Asta este ceea ce vei putea spune prietenilor pentru a te putea contacta sau pentru a te urmării de pe un alt server. subject: Bine ai venit title: Bine ai venit la bord, %{name}! users: diff --git a/config/locales/ru.yml b/config/locales/ru.yml index 04e49e0427..3f15b064f0 100644 --- a/config/locales/ru.yml +++ b/config/locales/ru.yml @@ -1905,10 +1905,6 @@ ru: edit_profile_action: Настроить профиль edit_profile_step: Вы можете настроить свой профиль добавляя аватарку, изменяя отображаемое имя и так далее. Вы можете вручную подтверждать подписчиков, перед тем как им будет разрешено подписаться на вас. explanation: Вот несколько советов для новичков - final_action: Начать постить - final_step: 'Начинайте постить! Даже без подписчиков, ваши публичные посты могут быть увиденными другими, например в локальной ленте или в хештегах. Вы можете представиться с хэштегом #introductions.' - full_handle: Ваше обращение - full_handle_hint: То, что Вы хотите сообщить своим друзьям, чтобы они могли написать Вам или подписаться с другого узла. subject: Добро пожаловать в Mastodon title: Добро пожаловать на борт, %{name}! users: diff --git a/config/locales/sc.yml b/config/locales/sc.yml index 273ef9d2d9..533764606b 100644 --- a/config/locales/sc.yml +++ b/config/locales/sc.yml @@ -1094,9 +1094,6 @@ sc: welcome: edit_profile_action: Cunfigura su profilu explanation: Inoghe ddoe at una paja de impòsitos pro cumintzare - final_action: Cumintza a publicare - full_handle: Su nòmine utente intreu tuo - full_handle_hint: Custu est su chi dias nàrrere a is amistades tuas pro chi ti potzant imbiare messàgios o sighire dae un'àteru serbidore. subject: Ti donamus su benebènnidu a Mastodon title: Ti donamus su benebènnidu, %{name}! users: diff --git a/config/locales/sco.yml b/config/locales/sco.yml index a1071197f1..dc273d2d83 100644 --- a/config/locales/sco.yml +++ b/config/locales/sco.yml @@ -1584,10 +1584,6 @@ sco: edit_profile_action: Setup profile edit_profile_step: Ye kin customize yer profile bi uploadin a profile picture, chyngin yer display nemm an mair. Ye kin opt-in fir tae luik ower new follaers afore they’re allooed tae follae ye. explanation: Here some tips fir tae get ye stertit - final_action: Stert postin - final_step: 'Stert postin! Even athout follaers, yer public posts kin stull be seen bi ithers, fir example on the local timeline or in hashtags. Ye mibbie want tae introduce yersel on the #introductions hashtag.' - full_handle: Yer ful haunnle - full_handle_hint: This is whit ye wad tell yer pals sae thit they kin message or follae ye fae anither server. subject: Welcome tae Mastodon, 'mon in title: Welcome aboord, %{name}! users: diff --git a/config/locales/si.yml b/config/locales/si.yml index 660fd3ba31..ac292d6cf8 100644 --- a/config/locales/si.yml +++ b/config/locales/si.yml @@ -1436,9 +1436,6 @@ si: welcome: edit_profile_action: පැතිකඩ පිහිටුවන්න explanation: ඔබ ආරම්භ කිරීමට උපදෙස් කිහිපයක් මෙන්න - final_action: ලිපි පළ කරන්න - full_handle: ඔබේ සම්පූර්ණ හසුරුව - full_handle_hint: මෙය ඔබ ඔබේ මිතුරන්ට පවසනු ඇත, එවිට ඔවුන්ට වෙනත් සේවාදායකයකින් ඔබට පණිවිඩ යැවීමට හෝ අනුගමනය කිරීමට හැකිය. subject: මාස්ටඩන් වෙත පිළිගනිමු title: නැවට සාදරයෙන් පිළිගනිමු, %{name}! users: diff --git a/config/locales/simple_form.af.yml b/config/locales/simple_form.af.yml index 6c87a7a636..a7c449f86d 100644 --- a/config/locales/simple_form.af.yml +++ b/config/locales/simple_form.af.yml @@ -14,6 +14,8 @@ af: labels: defaults: locale: Koppelvlaktaal + new_password: Newe wagwoord + password: Wagwoord featured_tag: name: Hutsetiket form_admin_settings: diff --git a/config/locales/simple_form.an.yml b/config/locales/simple_form.an.yml index f354e5ba82..6ec8380f2a 100644 --- a/config/locales/simple_form.an.yml +++ b/config/locales/simple_form.an.yml @@ -31,14 +31,12 @@ an: text: Nomás puetz apelar una amonestación una vegada defaults: autofollow: Los usuarios que se rechistren per medio d'a invitación te seguirán automaticament - avatar: PNG, GIF u JPG. Maximo %{size}. Será escalau a %{dimensions}px bot: Esta cuenta executa prencipalment accions automatizadas y podría no estar monitorizada context: Un u multiples contextos en os quals ha d'aplicar-se lo filtro current_password: Per razons de seguranza per favor ingrese la clau d'a cuenta actual current_username: Pa confirmar, per favor ingrese lo nombre d'usuario d'a cuenta actual digest: Solo ninviau dimpués d'un largo periodo d'inactividat y nomás si has recibiu mensaches personals entre la tuya ausencia email: Se le ninviará un correu de confirmación - header: PNG, GIF u JPG. Maximo %{size}. Será escalau a %{dimensions}px inbox_url: Copia la URL d'a pachina prencipal d'o relés que quiers utilizar irreversible: Las publicacions filtradas desapareixerán irreversiblement, mesmo si este filtro ye eliminau mas abance locale: L'idioma d'a interficie d'usuario, correus y notificacions push diff --git a/config/locales/simple_form.ar.yml b/config/locales/simple_form.ar.yml index 92e181a8ed..896fcbf3fa 100644 --- a/config/locales/simple_form.ar.yml +++ b/config/locales/simple_form.ar.yml @@ -39,14 +39,12 @@ ar: text: يمكنك الطعن في عقوبة مرة واحدة فقط defaults: autofollow: سوف يتابعك تلقائيًا الأشخاص الذين يقومون بالتسجيل من خلال الدعوة - avatar: ملف PNG أو GIF أو JPG. حجمه على أقصى تصدير %{size}. سيتم تصغيره إلى %{dimensions}px bot: يقوم هذا الحساب أساسا بإجراءات آلية وقد لا يتم مراقبته context: واحد أو أكثر من السياقات التي يجب أن ينطبق عليها عامل التصفية current_password: لأسباب أمنية ، يرجى إدخال الكلمة السرية الخاصة بالحساب الحالي current_username: يرجى إدخال اسم المستخدم الخاص بالحساب الحالي قصد التأكيد digest: تُرسَل إليك بعد مُضيّ مدة مِن خمول نشاطك و فقط إذا ما تلقيت رسائل شخصية مباشِرة أثناء فترة غيابك مِن الشبكة email: سوف تتلقى رسالة إلكترونية للتأكيد - header: ملف PNG أو GIF أو JPG. حجمه على أقصى تصدير %{size}. سيتم تصغيره إلى %{dimensions}px inbox_url: نسخ العنوان الذي تريد استخدامه مِن صفحة الاستقبال للمُرحَّل irreversible: المنشورات التي تم تصفيتها ستختفي لا محالة حتى و إن تمت إزالة عامِل التصفية لاحقًا locale: لغة واجهة المستخدم و الرسائل الإلكترونية و الإشعارات diff --git a/config/locales/simple_form.ast.yml b/config/locales/simple_form.ast.yml index 9b560b67eb..e396962567 100644 --- a/config/locales/simple_form.ast.yml +++ b/config/locales/simple_form.ast.yml @@ -18,10 +18,8 @@ ast: text: Pues usar la sintaxis de los artículos. Ten en cuenta l'espaciu que l'anunciu va ocupar na pantalla del usuariu/a defaults: autofollow: Les persones que se rexistren pente la invitación van siguite automáticamente - avatar: Ficheros PNG, GIF o JPG de %{size} como muncho. La semeya va redimensionase a %{dimensions} px bot: Avisa a otres persones de qu'esta cuenta fai principalmente aiciones automatizaes ya de que ye posible que nun tean supervisaes digest: Namás s'unvia dempués d'un periodu llongu d'inactividá ya namás si recibiesti dalgún mensaxe personal demientres la to ausencia - header: Ficheros PNG, GIF o JPG de %{size} como muncho. La semeya va redimensionase a %{dimensions} px irreversible: Los artículos peñeraos desapaecen de forma irreversible, magar que la peñera se quite dempués locale: La llingua de la interfaz, los mensaxes per corréu electrónicu ya los avisos push password: Usa polo menos 8 caráuteres diff --git a/config/locales/simple_form.be.yml b/config/locales/simple_form.be.yml index 7ad87cdd9f..e72d16a187 100644 --- a/config/locales/simple_form.be.yml +++ b/config/locales/simple_form.be.yml @@ -39,14 +39,14 @@ be: text: Вы можаце абскардзіць рашэнне толькі адзін раз defaults: autofollow: Людзі, якія зарэгістраваліся праз запрашэнне, аўтаматычна падпішуцца на вас - avatar: PNG, GIF ці JPG. Не больш за %{size}. Будзе сціснуты да памеру %{dimensions}} пікселяў + avatar: WEBP, PNG, GIF ці JPG. Не больш за %{size}. Будзе сціснуты да памеру %{dimensions}} пікселяў bot: Паведаміць іншым, што гэты ўліковы запіс у асноўным выконвае аўтаматычныя дзеянні і можа не кантралявацца context: Адзін ці некалькі кантэкстаў, да якіх трэба прымяніць фільтр current_password: У мэтах бяспекі, калі ласка, увядзіце пароль бягучага ўліковага запісу current_username: Каб пацвердзіць, увядзіце, калі ласка імя карыстальніка бягучага ўліковага запісу digest: Будзе даслана толькі пасля доўгага перыяду неактыўнасці і толькі калі вы атрымалі асабістыя паведамленні падчас вашай адсутнасці email: Пацвярджэнне будзе выслана па электроннай пошце - header: PNG, GIF ці JPG. Не больш за %{size}. Будзе сціснуты да памеру %{dimensions}} пікселяў + header: WEBP, PNG, GIF ці JPG. Не больш за %{size}. Будзе сціснуты да памеру %{dimensions}} пікселяў inbox_url: Капіраваць URL са старонкі рэтранслятара, якім вы хочаце карыстацца irreversible: Адфільтраваныя пасты прападуць незваротна, нават калі фільтр потым будзе выдалены locale: Мова карыстальніцкага інтэрфейсу, электронных паведамленняў і апавяшчэнняў diff --git a/config/locales/simple_form.bg.yml b/config/locales/simple_form.bg.yml index 68e45ef47b..831e1a2f8c 100644 --- a/config/locales/simple_form.bg.yml +++ b/config/locales/simple_form.bg.yml @@ -9,7 +9,7 @@ bg: indexable: Вашите обществени публикации може да се появят в резултатите от търсене в Mastodon. Взаимодействалите с публикациите ви може да ги търсят независимо. note: 'Може да @споменавате други хора или #хаштагове.' show_collections: Хората ще може да разглеждат през вашите последвания и последователи. Хората, които сте следвали, ще видят, че ги следвате независимо от това. - unlocked: Хората ще може да ви следват без да се изисква одобрение. Размаркирайте, ако искате да преглеждате заявките за последване и изберете дали да приемете или отхвърлите новите последователи. + unlocked: Хората ще могат да ви последват без изискване на одобрение. Размаркирайте, ако искате да преглеждате заявките за последване и изберете дали да приемете или отхвърлите новите последователи. account_alias: acct: Посочете потребителско_име@домейн на акаунта си, от който искате да се преместите account_migration: @@ -39,14 +39,14 @@ bg: text: Може да възразите срещу провинение само веднъж defaults: autofollow: Хората, които се регистрират чрез поканата, автоматично ще ви последват - avatar: PNG, GIF или JPG. До най-много %{size}. Ще се смали до %{dimensions} пиксела + avatar: WEBP, PNG, GIF или JPG. До най-много %{size}. Ще се смали до %{dimensions} пиксела bot: Сигнализиране до другите, че акаунтът изпълнява предимно автоматизирани деяния и може да не се наблюдава context: Един или повече контексти, към които да се приложи филтърът current_password: От съображения за сигурност, въведете паролата на текущия акаунт current_username: Въведете потребителското име на текущия профил, за да потвърдите digest: Изпраща се само след дълъг период на бездействие и само ако сте получили лични съобщения във ваше отсъствие email: Ще ви се изпрати имейл за потвърждение - header: PNG, GIF или JPG. До най-много %{size}. Ще се смали до %{dimensions} пиксела + header: WEBP, PNG, GIF или JPG. До най-много %{size}. Ще се смали до %{dimensions} пиксела inbox_url: Копирайте URL адреса от заглавната страница на предаващия сървър, който искате да използвате irreversible: Филтрираните публикации ще изчезнат безвъзвратно, дори филтърът да бъде премахнат по-късно locale: Езикът на потребителския интерфейс, известиятата по имейл и насочените известия @@ -261,7 +261,7 @@ bg: status_page_url: URL адрес на страница със състоянието theme: Стандартна тема thumbnail: Образче на сървъра - timeline_preview: Позволяване на неупълномощен достъп до публични часови оси + timeline_preview: Позволяване на неудостоверен достъп до публични инфопотоци trendable_by_default: Без преглед на налагащото се trends: Включване на налагащи се trends_as_landing_page: Употреба на налагащото се като целева страница diff --git a/config/locales/simple_form.br.yml b/config/locales/simple_form.br.yml index 9e8aefad49..529e3224e6 100644 --- a/config/locales/simple_form.br.yml +++ b/config/locales/simple_form.br.yml @@ -3,8 +3,8 @@ br: simple_form: hints: defaults: - avatar: PNG, GIF pe JPG. Brasoc'h eget %{size}. A vo izelaet betek %{dimensions}px - header: PNG, GIF pe JPG. Brasoc'h eget %{size}. A vo izelaet betek %{dimensions}px + avatar: WEBP, PNG, GIF pe JPG. Bihanoc'h eget %{size}. A vo izelaet betek %{dimensions}px + header: WEBP, PNG, GIF pe JPG. Bihanoc'h eget %{size}. A vo izelaet betek %{dimensions}px password: Implijit 8 lizherennoù d'an neubeutañ setting_default_sensitive: Ar mediaoù kizidik a zo kuzhet dre ziouer ha gallout a reont bezañ diguzhet dre ur c'hlik setting_display_media_default: Kuzhat mediaoù aroueziet evel kizidik @@ -41,7 +41,7 @@ br: email: Chomlec'h postel expires_in: Mont war e dermen goude header: Talbenn - locale: Yezh ar c'hetal + locale: Yezh an etrefas new_password: Ger-tremen nevez note: Kinnig password: Ger-tremen @@ -49,6 +49,7 @@ br: setting_display_media_default: Dre ziouer setting_display_media_hide_all: Kuzhat pep tra setting_display_media_show_all: Diskouez pep tra + setting_theme: Neuz al lec'hienn setting_use_pending_items: Mod gorrek title: Titl username: Anv @@ -73,6 +74,7 @@ br: usable: Aotren an embannadurioù da implijout an hashtag-mañ user: role: Roll + time_zone: Gwerzhid eur user_role: name: Anv 'no': Ket diff --git a/config/locales/simple_form.ckb.yml b/config/locales/simple_form.ckb.yml index a6110e2034..3c1d8315e3 100644 --- a/config/locales/simple_form.ckb.yml +++ b/config/locales/simple_form.ckb.yml @@ -25,14 +25,12 @@ ckb: text: دەتوانیت ڕستەسازی توت بەکار بێنیت. تکایە بیر لەو بۆشاییە بکەوە کە بانگەوازەکە لەسەر شاشەی بەکارهێنەرەکە دەست نیشان دەکات defaults: autofollow: ئەو کەسانەی کە لە ڕێگەی بانگهێشتکردنەوە تۆمار دەکرێن بە خۆکارانە شوێنت دەکەون - avatar: PNG, GIF یان JPG. لە زۆربەی %{size}. دەبێتە ئەندازەیەکی کەمکراوە بۆ %{dimensions}px bot: ئەم هەژمارە بەشێوەیەکی سەرەکی کردارە خۆکارانە ئەنجام دەدات و لەوانەیە چاودێری نەکرێت context: یەک یان چەند دەقێک کە پالافتنەکە جێبەجێ بکات current_password: بۆ مەبەستی پاراستن تکایە تێپەروشەی هەژمارەی ئێستاکەت بنووسە current_username: بۆ دڵنیابوون، تکایە ناوی بەکارهێنەری ئەم هەژمارەیە بنووسە digest: تەنیا دوای ماوەیەکی زۆر لە بێ چالاکیدەنێردرێت و تەنیا ئەگەر نامەیەکی کەسیت بۆ نووسرابێت email: ئیمەیڵێکی پشتڕاستکردنەوەت بۆ دەنێردرێت - header: PNG, GIF یان JPG. لە زۆربەی %{size}. دەبێتە ئەندازەیەکی کەمکراوە بۆ %{dimensions}پیکسێڵ inbox_url: نیشانەی پەڕەی سەرەکی ئەو رێڵە کە هەرەکتە بەکاریببەیت ڕوونووس دەکات irreversible: توتە فلتەرکراوەکە بە شێوەیەکی نەگەڕاو فرەدەدرێن، تەنانەت ئەگەر فلتەردواتر لاببرێت locale: زمانی ڕووکاری بەکارهێنەر، ئیمەیلەکان و ئاگانامەکان diff --git a/config/locales/simple_form.co.yml b/config/locales/simple_form.co.yml index fd6f595e91..dfec033469 100644 --- a/config/locales/simple_form.co.yml +++ b/config/locales/simple_form.co.yml @@ -23,14 +23,12 @@ co: text: Pudete utilizà a sintassa di i statuti. Pensate à a piazza chì l'annunziu hà da piglià nant'à u screnu di l'utilizatore defaults: autofollow: Quelli·e chì s'arregistranu cù l'invitazione saranu autumaticamente abbunati·e à voi - avatar: Furmatu PNG, GIF o JPG. %{size} o menu. Sarà ridottu à %{dimensions}px bot: Stu contu hè autumatizatu è ùn hè forse micca survegliatu context: Cuntestu·i induve u filtru deve esse applicatu current_password: Per ragione di sicurità, entrate a chjave d'accessu di stu contu current_username: Per cunfirmà, entrate u cugnome di questu contu digest: Solu mandatu dopu à una longa perioda d’inattività, è solu s’elli ci sò novi missaghji diretti email: Avete da riceve un'e-mail di cunfirmazione - header: Furmatu PNG, GIF o JPG. %{size} o menu. Sarà ridottu à %{dimensions}px inbox_url: Cupiate l'URL di a pagina d'accolta di u ripetitore chì vulete utilizà irreversible: I statuti filtrati saranu sguassati di manera irreversibile, ancu s'ellu hè toltu u filtru locale: A lingua di l'interfaccia utilizatore, di l'e-mail è di e nutificazione push diff --git a/config/locales/simple_form.cs.yml b/config/locales/simple_form.cs.yml index dff9378098..ca8cc49a98 100644 --- a/config/locales/simple_form.cs.yml +++ b/config/locales/simple_form.cs.yml @@ -3,9 +3,13 @@ cs: simple_form: hints: account: + discoverable: Vaše veřejné příspěvky a profil mohou být zobrazeny nebo doporučeny v různých oblastech Mastodonu a váš profil může být navrhován ostatním uživatelům. display_name: Vaše celé jméno nebo přezdívka. fields: Vaše domovská stránka, zájmena, věk, cokoliv chcete. + indexable: Vaše veřejné příspěvky se mohou objevit ve výsledcích vyhledávání na Mastodonu. Lidé, kteří s vašimi příspěvky interagovaly, je mohou stále vyhledávat. note: 'Můžete @zmínit jiné osoby nebo #hashtagy.' + show_collections: Lidé budou moci procházet skrz sledující. Lidé, které sledujete, uvidí, že je sledujete bezohledně. + unlocked: Lidé vás budou moci sledovat, aniž by vás žádali o schválení. Zrušte zaškrtnutí, pokud chcete zkontrolovat požadavky a zvolte, zda přijmete nebo odmítněte nové následovníky. account_alias: acct: Zadejte svůj účet, ze kterého se chcete přesunout jinam, ve formátu přezdívka@doména account_migration: @@ -34,15 +38,15 @@ cs: appeal: text: Proti prohřešku se můžete odvolat jen jednou defaults: - autofollow: Lidé, kteří se zaregistrují na základě pozvánky, vás budou automaticky sledovat - avatar: PNG, GIF či JPG. Maximálně %{size}. Bude zmenšen na %{dimensions} px + autofollow: Lidé, kteří se zaregistrují skrz pozvánky, vás budou automaticky sledovat + avatar: WEBP, PNG, GIF či JPG. Maximálně %{size}. Bude zmenšen na %{dimensions} px bot: Signalizovat ostatním, že účet převážně vykonává automatizované akce a nemusí být monitorován context: Jeden či více kontextů, ve kterých má být filtr uplatněn current_password: Z bezpečnostních důvodů prosím zadejte heslo současného účtu current_username: Potvrďte prosím tuto akci zadáním uživatelského jména aktuálního účtu digest: Odesíláno pouze po dlouhé době nečinnosti a pouze, pokud jste během své nepřítomnosti obdrželi osobní zprávy email: Bude vám poslán potvrzovací e-mail - header: PNG, GIF či JPG. Maximálně %{size}. Bude zmenšen na %{dimensions} px + header: WEBP, PNG, GIF či JPG. Maximálně %{size}. Bude zmenšen na %{dimensions} px inbox_url: Zkopírujte URL z hlavní stránky mostu, který chcete použít irreversible: Filtrované příspěvky nenávratně zmizí, i pokud bude filtr později odstraněn locale: Jazyk uživatelského rozhraní, e-mailů a push notifikací @@ -72,7 +76,7 @@ cs: hide: Úplně schovat filtrovaný obsah tak, jako by neexistoval warn: Schovat filtrovaný obsah za varováním zmiňujicím název filtru form_admin_settings: - activity_api_enabled: Počty lokálně publikovaných příspěvků, aktivních uživatelů a nových registrací v týdenních intervalech + activity_api_enabled: Počty lokálně zveřejnělých příspěvků, aktivních uživatelů a nových registrací v týdenních intervalech backups_retention_period: Zachovat generované uživatelské archivy pro zadaný počet dní. bootstrap_timeline_accounts: Tyto účty budou připnuty na vrchol nových uživatelů podle doporučení. closed_registrations_message: Zobrazeno při zavření registrace @@ -116,6 +120,9 @@ cs: sessions: otp: 'Zadejte kód pro dvoufázové ověření vygenerovaný vaší mobilní aplikací, nebo použijte jeden z vašich záložních kódů:' webauthn: Pokud jde o USB klíč, vložte jej a případně se dotkněte jeho tlačítka. + settings: + indexable: Vaše profilová stránka se může objevit ve výsledcích vyhledávání na Google, Bingu a ostatních vyhledávačích. + show_application: I tak budete vždy moci vidět, která aplikace zveřejnila váš příspěvek. tag: name: Můžete měnit pouze velikost písmen, například kvůli lepší čitelnosti user: @@ -133,9 +140,13 @@ cs: url: Kam budou události odesílány labels: account: + discoverable: Zobrazovat profil a příspěvky ve vyhledávacích algoritmech fields: name: Označení value: Obsah + indexable: Zahrnout veřejné příspěvky do výsledků hledání + show_collections: Zobrazit koho sledujete a kdo vás sleduje v profilu + unlocked: Automaticky přijímat nové sledující account_alias: acct: Adresa starého účtu account_migration: @@ -280,9 +291,18 @@ cs: pending_account: Je třeba posoudit nový účet reblog: Někdo boostnul váš příspěvek report: Je odesláno nové hlášení + software_updates: + all: Upozornit na všechny aktualizace + critical: Upozornit pouze na kritické aktualizace + label: Nová verze Mastodonu k dispozici + none: Nikdy neoznamovat aktualizace (nedoporučeno) + patch: Upozornit na aktualizace chyb trending_tag: Nový trend vyžaduje posouzení rule: text: Pravidlo + settings: + indexable: Zahrnout stránku profilu do vyhledávačů + show_application: Zobrazit aplikaci, ze které jste odeslali příspěvek tag: listable: Povolit zobrazení tohoto hashtagu ve vyhledávání a návrzích name: Hashtag @@ -303,6 +323,7 @@ cs: url: URL koncového bodu 'no': Ne not_recommended: Nedoporučuje se + overridden: Přepsáno recommended: Doporučeno required: mark: "*" diff --git a/config/locales/simple_form.cy.yml b/config/locales/simple_form.cy.yml index ddc1b1b935..3daedfc860 100644 --- a/config/locales/simple_form.cy.yml +++ b/config/locales/simple_form.cy.yml @@ -39,14 +39,14 @@ cy: text: Dim ond unwaith y gallwch apelio yn erbyn rhybudd defaults: autofollow: Bydd pobl sy'n cofrestru drwy'r gwahoddiad yn eich dilyn yn awtomatig - avatar: PNG, GIF neu JPG. %{size} yn uchafswm. Bydd yn cael ei israddio i %{dimensions}px + avatar: WEBP, PNG, GIF neu JPG. %{size} ar y mwyaf. Bydd yn cael ei leihau i %{dimensions}px bot: Mae'r cyfrif hwn yn perfformio gweithredoedd awtomatig yn bennaf ac mae'n bosib nad yw'n cael ei fonitro context: Un neu fwy cyd-destun lle dylai'r hidlydd weithio current_password: At ddibenion diogelwch, nodwch gyfrinair y cyfrif cyfredol current_username: I gadarnhau, nodwch enw defnyddiwr y cyfrif cyfredol digest: Ond yn cael eu hanfon ar ôl cyfnod hir o anweithgarwch ac ond os ydych wedi derbyn unrhyw negeseuon personol yn eich absenoldeb email: Byddwch yn derbyn e-bost cadarnhau - header: PNG, GIF neu JPG. %{size} ar y mwyaf. Bydd yn cael ei israddio i %{dimensions}px + header: WEBP, PNG, GIF neu JPG. %{size} ar y mwyaf. Bydd yn cael ei leihau i %{dimensions}px inbox_url: Copïwch yr URL o dudalen flaen y relái yr ydych am ei ddefnyddio irreversible: Bydd postiadau wedi'u hidlo'n diflannu'n ddiwrthdro, hyd yn oed os caiff yr hidlydd ei dynnu'n ddiweddarach locale: Iaith y rhyngwyneb, e-byst a hysbysiadau gwthiadwy diff --git a/config/locales/simple_form.da.yml b/config/locales/simple_form.da.yml index 0d86b2bc8d..fde0bcc248 100644 --- a/config/locales/simple_form.da.yml +++ b/config/locales/simple_form.da.yml @@ -39,14 +39,14 @@ da: text: En advarsel kan kun appelleres én gang defaults: autofollow: Personer tilmeldt via invitationen vil automatisk blive følgere - avatar: PNG, GIF eller JPG. Maks. %{size}. Auto-nedskaleres til %{dimensions}px + avatar: WEBP, PNG, GIF eller JPG. Maks. %{size}. Nedskaleres til %{dimensions}px bot: Signalér til andre, at denne konto primært udfører automatiserede handlinger og muligvis ikke monitoreres context: En eller flere kontekster, hvor filteret skal anvendes current_password: Angiv af sikkerhedsårsager adgangskoden til den aktuelle konto current_username: For at bekræfte, angiv brugernavnet for den aktuelle konto digest: Sendes kun efter en lang inaktivitetsperiode, og kun hvis du har modtaget personlige beskeder under fraværet email: En bekræftelses-e-mail fremsendes - header: PNG, GIF eller JPG. Maks. %{size}. Auto-nedskaleres til %{dimensions}px + header: WEBP, PNG, GIF eller JPG. Maks. %{size}. Nedskaleres til %{dimensions}px inbox_url: Kopiér URL'en fra forsiden af den videreformidler, der skal anvendes irreversible: Filtrerede indlæg forsvinder permanent, selv hvis filteret senere fjernes locale: Sprog til brug for brugerflade, e-mails og push-notifikationer diff --git a/config/locales/simple_form.de.yml b/config/locales/simple_form.de.yml index fcf92e29f4..b8fec42d66 100644 --- a/config/locales/simple_form.de.yml +++ b/config/locales/simple_form.de.yml @@ -39,14 +39,14 @@ de: text: Du kannst nur einmal Einspruch gegen eine Maßnahme einlegen defaults: autofollow: Personen, die sich über deine Einladung registrieren, folgen automatisch deinem Profil - avatar: PNG, GIF oder JPG. Höchstens %{size} groß. Wird auf %{dimensions} px verkleinert + avatar: WEBP, PNG, GIF oder JPG. Höchstens %{size} groß. Wird auf %{dimensions} px verkleinert bot: Signalisiert, dass dieses Konto hauptsächlich automatisierte Aktionen durchführt und möglicherweise nicht persönlich betreut wird context: Orte, an denen der Filter aktiv sein soll current_password: Gib aus Sicherheitsgründen bitte das Passwort des aktuellen Kontos ein current_username: Um das zu bestätigen, gib den Profilnamen des aktuellen Kontos ein digest: Wenn du eine längere Zeit inaktiv bist oder du während deiner Abwesenheit in einer privaten Nachricht erwähnt worden bist email: Du wirst eine E-Mail zur Verifizierung dieser E-Mail-Adresse erhalten - header: PNG, GIF oder JPG. Höchstens %{size} groß. Wird auf %{dimensions} px verkleinert + header: WEBP, PNG, GIF oder JPG. Höchstens %{size} groß. Wird auf %{dimensions} px verkleinert inbox_url: Kopiere die URL von der Startseite des gewünschten Relays irreversible: Bereinigte Beiträge verschwinden unwiderruflich für dich, auch dann, wenn dieser Filter zu einem späteren wieder entfernt wird locale: Die Sprache der Bedienoberfläche, E-Mails und Push-Benachrichtigungen diff --git a/config/locales/simple_form.el.yml b/config/locales/simple_form.el.yml index dc140a199f..4ffc496d02 100644 --- a/config/locales/simple_form.el.yml +++ b/config/locales/simple_form.el.yml @@ -31,14 +31,12 @@ el: text: Μπορείς να κάνετε έφεση σε ένα παράπτωμα μόνο μία φορά defaults: autofollow: Όσοι εγγραφούν μέσω της πρόσκλησης θα σε ακολουθούν αυτόματα - avatar: PNG, GIF ή JPG. Έως %{size}. Θα περιοριστεί σε διάσταση %{dimensions}px bot: Ο λογαριασμός αυτός εκτελεί κυρίως αυτοματοποιημένες ενέργειες και ίσως να μην παρακολουθείται context: Ένα ή περισσότερα πλαίσια στα οποία μπορεί να εφαρμόζεται αυτό το φίλτρο current_password: Για λόγους ασφαλείας παρακαλώ γράψε τον κωδικό του τρέχοντος λογαριασμού current_username: Για επιβεβαίωση, παρακαλώ γράψε το όνομα χρήστη του τρέχοντος λογαριασμού digest: Αποστέλλεται μόνο μετά από μακρά περίοδο αδράνειας και μόνο αν έχεις λάβει προσωπικά μηνύματα κατά την απουσία σου email: Θα σου σταλεί email επιβεβαίωσης - header: PNG, GIF ή JPG. Έως %{size}. Θα περιοριστεί σε διάσταση %{dimensions}px inbox_url: Αντέγραψε το URL της αρχικής σελίδας του ανταποκριτή που θέλεις να χρησιμοποιήσεις irreversible: Οι φιλτραρισμένες αναρτήσεις θα εξαφανιστούν αμετάκλητα, ακόμα και αν το φίλτρο αργότερα αφαιρεθεί locale: Η γλώσσα χρήσης, των email και των ειδοποιήσεων push diff --git a/config/locales/simple_form.en-GB.yml b/config/locales/simple_form.en-GB.yml index f0c18d1128..2ac4508b05 100644 --- a/config/locales/simple_form.en-GB.yml +++ b/config/locales/simple_form.en-GB.yml @@ -39,14 +39,12 @@ en-GB: text: You can only appeal a strike once defaults: autofollow: People who sign up through the invite will automatically follow you - avatar: PNG, GIF or JPG. At most %{size}. Will be downscaled to %{dimensions}px bot: Signal to others that the account mainly performs automated actions and might not be monitored context: One or multiple contexts where the filter should apply current_password: For security purposes please enter the password of the current account current_username: To confirm, please enter the username of the current account digest: Only sent after a long period of inactivity and only if you have received any personal messages in your absence email: You will be sent a confirmation e-mail - header: PNG, GIF or JPG. At most %{size}. Will be downscaled to %{dimensions}px inbox_url: Copy the URL from the frontpage of the relay you want to use irreversible: Filtered posts will disappear irreversibly, even if filter is later removed locale: The language of the user interface, e-mails and push notifications diff --git a/config/locales/simple_form.en.yml b/config/locales/simple_form.en.yml index 0b718c5b65..7ece81290f 100644 --- a/config/locales/simple_form.en.yml +++ b/config/locales/simple_form.en.yml @@ -39,14 +39,14 @@ en: text: You can only appeal a strike once defaults: autofollow: People who sign up through the invite will automatically follow you - avatar: PNG, GIF or JPG. At most %{size}. Will be downscaled to %{dimensions}px + avatar: WEBP, PNG, GIF or JPG. At most %{size}. Will be downscaled to %{dimensions}px bot: Signal to others that the account mainly performs automated actions and might not be monitored context: One or multiple contexts where the filter should apply current_password: For security purposes please enter the password of the current account current_username: To confirm, please enter the username of the current account digest: Only sent after a long period of inactivity and only if you have received any personal messages in your absence email: You will be sent a confirmation e-mail - header: PNG, GIF or JPG. At most %{size}. Will be downscaled to %{dimensions}px + header: WEBP, PNG, GIF or JPG. At most %{size}. Will be downscaled to %{dimensions}px inbox_url: Copy the URL from the frontpage of the relay you want to use irreversible: Filtered posts will disappear irreversibly, even if filter is later removed locale: The language of the user interface, e-mails and push notifications diff --git a/config/locales/simple_form.eo.yml b/config/locales/simple_form.eo.yml index d25412561b..ef4641d3e7 100644 --- a/config/locales/simple_form.eo.yml +++ b/config/locales/simple_form.eo.yml @@ -39,14 +39,12 @@ eo: text: Oni povas apelaci strikin nur unufoje defaults: autofollow: Homoj, kiuj registriĝos per la invito aŭtomate sekvos vin - avatar: Formato PNG, GIF aŭ JPG. Ĝis %{size}. Estos malgrandigita al %{dimensions}px bot: Tiu konto ĉefe faras aŭtomatajn agojn, kaj povas esti ne kontrolata context: Unu ol pluraj kuntekstoj kie la filtrilo devus agi current_password: Pro sekuraj kialoj, bonvolu enigi la pasvorton de la nuna konto current_username: Por konfirmi, bonvolu enigi la uzantnomon de la nuna konto digest: Sendita nur post longa tempo de neaktiveco, kaj nur se vi ricevis personan mesaĝon en via foresto email: Vi ricevos konfirman retpoŝton - header: Formato PNG, GIF aŭ JPG. Ĝis %{size}. Estos malgrandigita al %{dimensions}px inbox_url: Kopiu la URL de la ĉefpaĝo de la ripetilo, kiun vi volas uzi irreversible: La filtritaj mesaĝoj malaperos por eterne, eĉ se la filtrilo poste estas forigita locale: La lingvo de la fasado, retpoŝtaĵoj, kaj sciigoj diff --git a/config/locales/simple_form.es-AR.yml b/config/locales/simple_form.es-AR.yml index 9b52ece34e..a074091313 100644 --- a/config/locales/simple_form.es-AR.yml +++ b/config/locales/simple_form.es-AR.yml @@ -39,14 +39,14 @@ es-AR: text: Sólo podés apelar un incumplimiento una vez defaults: autofollow: Los usuarios que se registren mediante la invitación te seguirán automáticamente - avatar: 'PNG, GIF o JPG. Máximo: %{size}. Será subescalado a %{dimensions} píxeles.' + avatar: WEBP, PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px bot: Esta cuenta ejecuta principalmente acciones automatizadas y podría no ser monitorizada context: Uno o múltiples contextos en los que debe aplicarse el filtro current_password: Por razones de seguridad, por favor, ingresá la contraseña de la cuenta actual current_username: Para confirmar, por favor, ingresá el nombre de usuario de la cuenta actual digest: Sólo enviado tras un largo periodo de inactividad, y sólo si recibiste mensajes personales en tu ausencia email: Se te enviará un correo electrónico de confirmación - header: 'PNG, GIF o JPG. Máximo: %{size}. Será subescalado a %{dimensions} píxeles.' + header: WEBP, PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px inbox_url: Copiá la dirección web desde la página principal del relé que querés usar irreversible: Los mensajes filtrados desaparecerán irreversiblemente, incluso si este filtro es eliminado después locale: El idioma de la interface de usuario, correos electrónicos y notificaciones push diff --git a/config/locales/simple_form.es-MX.yml b/config/locales/simple_form.es-MX.yml index 932ed6c59a..d8f1cf95a0 100644 --- a/config/locales/simple_form.es-MX.yml +++ b/config/locales/simple_form.es-MX.yml @@ -39,14 +39,14 @@ es-MX: text: Sólo puede apelar una amonestación a la vez defaults: autofollow: Los usuarios que se registren mediante la invitación te seguirán automáticamente - avatar: PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px + avatar: WEBP, PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px bot: Esta cuenta ejecuta principalmente acciones automatizadas y podría no ser monitorizada context: Uno o múltiples contextos en los que debe aplicarse el filtro current_password: Por razones de seguridad por favor ingrese la contraseña de la cuenta actual current_username: Para confirmar, por favor ingrese el nombre de usuario de la cuenta actual digest: Solo enviado tras un largo periodo de inactividad y solo si has recibido mensajes personales durante tu ausencia email: Se le enviará un correo de confirmación - header: PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px + header: WEBP, PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px inbox_url: Copia la URL de la página principal del relés que quieres utilizar irreversible: Los toots filtrados desaparecerán irreversiblemente, incluso si este filtro es eliminado más adelante locale: El idioma de la interfaz de usuario, correos y notificaciones push diff --git a/config/locales/simple_form.es.yml b/config/locales/simple_form.es.yml index 997f09bf08..fee260aa89 100644 --- a/config/locales/simple_form.es.yml +++ b/config/locales/simple_form.es.yml @@ -11,9 +11,9 @@ es: show_collections: Las personas podrán navegar a través de tus seguidos y seguidores. Esto no impide que las personas que sigues sepan que las estás siguiendo. unlocked: Las personas podrán seguirte sin pedir aprobación. Desmarca si deseas revisar las solicitudes de seguimiento y aceptar o rechazar nuevos seguidores. account_alias: - acct: Especifique su nombre de usuario@dominio de la cuenta de donde se desea migrar + acct: Especifica el nombre_de_usuario@dominio de la cuenta desde donde deseas migrar account_migration: - acct: Especifique el nombre de usuario@dominio de la cuenta de la cual se desea migrar + acct: Especifica el nombre_de_usuario@dominio de la cuenta hacia la que quieres migrar account_warning_preset: text: Puede usar sintaxis de publicaciones, como URLs, hashtags y menciones title: Opcional. No es visible para el destinatario @@ -21,14 +21,14 @@ es: include_statuses: El usuario verá qué publicaciones han causado la acción de moderación o advertencia send_email_notification: El usuario recibirá una explicación de lo que ha sucedido con su cuenta text_html: Opcional. Puede usar sintaxis de publicaciones. Puede añadir configuraciones predefinidas de advertencia para ahorrar tiempo - type_html: Elige lo qué vas a hacer con %{acct} + type_html: Elige lo que vas a hacer con %{acct} types: disable: Evita que el usuario utilice su cuenta, pero no elimina ni oculta sus contenidos. - none: Utilizar esto para enviar una advertencia al usuario, sin poner en marcha ninguna otra acción. + none: Utiliza esto para enviar una advertencia al usuario, sin ejecutar ninguna otra acción. sensitive: Forzar que todos los archivos multimedia de este usuario sean marcados como sensibles. silence: Evita que el usuario pueda publicar con visibilidad pública, y oculta sus mensajes y notificaciones a personas que no lo siguen. Cierra todos los informes contra esta cuenta. suspend: Evita cualquier interacción desde o hacia esta cuenta y elimina su contenido. Reversible en 30 días. Cierra todos los informes contra esta cuenta. - warning_preset_id: Opcional. Aún puede añadir texto personalizado al final de la configuración predefinida + warning_preset_id: Opcional. Aún puedes añadir texto personalizado al final de la configuración predefinida announcement: all_day: Cuando está seleccionado solo se mostrarán las fechas del rango de tiempo ends_at: Opcional. El anuncio desaparecerá automáticamente en este momento @@ -36,17 +36,17 @@ es: starts_at: Opcional. En caso de que su anuncio esté vinculado a un intervalo de tiempo específico text: Puedes usar la sintaxis de publicaciones. Por favor ten en cuenta el espacio que ocupará el anuncio en la pantalla del usuario appeal: - text: Sólo puedes apelar una amonestación una vez + text: Solo puedes apelar la amonestación una vez defaults: autofollow: Los usuarios que se registren mediante la invitación te seguirán automáticamente - avatar: PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px + avatar: WEBP, PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px bot: Esta cuenta ejecuta principalmente acciones automatizadas y podría no ser monitorizada context: Uno o múltiples contextos en los que debe aplicarse el filtro current_password: Por razones de seguridad por favor ingrese la contraseña de la cuenta actual current_username: Para confirmar, por favor ingrese el nombre de usuario de la cuenta actual digest: Solo enviado tras un largo periodo de inactividad y solo si has recibido mensajes personales durante tu ausencia email: Se le enviará un correo de confirmación - header: PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px + header: WEBP, PNG, GIF o JPG. Máximo %{size}. Será escalado a %{dimensions}px inbox_url: Copia la URL de la página principal del relés que quieres utilizar irreversible: Las publicaciones filtradas desaparecerán irreversiblemente, incluso si este filtro es eliminado más adelante locale: El idioma de la interfaz de usuario, correos y notificaciones push diff --git a/config/locales/simple_form.et.yml b/config/locales/simple_form.et.yml index 501e1f333e..15cf403cf2 100644 --- a/config/locales/simple_form.et.yml +++ b/config/locales/simple_form.et.yml @@ -39,14 +39,12 @@ et: text: Otsust on võimalik vaidlustada vaid 1 kord defaults: autofollow: Inimesed, kes loovad konto selle kutse läbi, automaatselt jälgivad sind - avatar: PNG, GIF või JPG. Kõige rohkem %{size}. Vähendatakse %{dimensions} pikslini bot: Teavita teisi, et see konto teeb enamjaolt automatiseeritud tegevusi ja ei pruugi olla järelvalve all context: Üks või mitu konteksti, mille vastu see filter peaks rakenduma current_password: Sisesta turvalisuse huvides oma siinse konto salasõna current_username: Kinnitamiseks palun sisesta oma konto kasutajanimi digest: Saadetakse ainult pärast pikka tegevusetuse perioodi ja ainult siis, kui on saadetud otsesõnumeid email: Sulle saadetakse e-posti teel kinnituskiri - header: PNG, GIF või JPG. Kõige rohkem %{size}. Vähendatakse %{dimensions} pikslini inbox_url: Kopeeri soovitud vahendaja avalehe URL irreversible: Filtreeritud postitused kaovad taastamatult, isegi kui filter on hiljem eemaldatud locale: Kasutajaliidese, e-kirjade ja tõuketeadete keel diff --git a/config/locales/simple_form.eu.yml b/config/locales/simple_form.eu.yml index 6f2bbfd969..b417b45fa9 100644 --- a/config/locales/simple_form.eu.yml +++ b/config/locales/simple_form.eu.yml @@ -39,14 +39,14 @@ eu: text: Neurri bati apelazioa behin bakarrik jarri diezaiokezu defaults: autofollow: Gonbidapena erabiliz izena ematen dutenek automatikoki jarraituko dizute - avatar: PNG, GIF edo JPG. Gehienez %{size}. %{dimensions}px neurrira eskalatuko da + avatar: WEBP, GIF edo JPG. Gehienez %{size}. %{dimensions}px neurrira eskalatuko da bot: Kontu honek nagusiki automatizatutako ekintzak burutzen ditu eta agian ez du inork monitorizatzen context: Iragazkia aplikatzeko testuinguru bat edo batzuk current_password: Segurtasunagatik sartu uneko kontuaren pasahitza current_username: Berresteko sartu uneko kontuaren erabiltzaile-izena - digest: Jarduerarik gabeko epe luze bat eta gero mezu pertsonalen bat jaso baduzu, besterik ez + digest: Jarduerarik gabeko epe luze bat eta gero mezu pertsonalen bat jaso baduzu soilik email: Baieztapen e-mail bat bidaliko zaizu - header: PNG, GIF edo JPG. Gehienez %{size}. %{dimensions}px eskalara txikituko da + header: WEBP, GIF edo JPG. Gehienez %{size}. %{dimensions}px neurrira eskalatuko da inbox_url: Kopiatu erabili nahi duzun errelearen hasiera orriaren URLa irreversible: Iragazitako tootak betirako galduko dira, geroago iragazkia kentzen baduzu ere locale: Erabiltzaile-interfazea, e-mail mezuen eta jakinarazpenen hizkuntza @@ -126,7 +126,7 @@ eu: tag: name: Letrak maiuskula/minuskulara aldatu ditzakezu besterik ez, adibidez irakurterrazago egiteko user: - chosen_languages: Ezer markatzekotan, hautatutako hizkuntzetan dauden tootak besterik ez dira erakutsiko + chosen_languages: Markatzean, hautatutako hizkuntzetan dauden tutak besterik ez dira erakutsiko. role: Rolak erabiltzaileak dituen baimenak kontrolatzen ditu user_role: color: Rolarentzat erabiltzaile interfazean erabiliko den kolorea, formatu hamaseitarreko RGB bezala diff --git a/config/locales/simple_form.fa.yml b/config/locales/simple_form.fa.yml index 23fbc43b07..a312e5aa1c 100644 --- a/config/locales/simple_form.fa.yml +++ b/config/locales/simple_form.fa.yml @@ -39,14 +39,12 @@ fa: text: فقط یک بار می‌توانید برای اخطار درخواست تجدیدنظر کنید defaults: autofollow: کسانی که از راه دعوت‌نامه عضو می‌شوند به طور خودکار پیگیر شما خواهند شد - avatar: یکی از قالب‌های PNG یا GIF یا JPG. بیشترین اندازه %{size}. تصویر به اندازهٔ %{dimensions} پیکسل تبدیل خواهد شد bot: این حساب بیشتر به طور خودکار فعالیت می‌کند و نظارت پیوسته‌ای روی آن وجود ندارد context: یک یا چند زمینه که پالایه باید در آن‌ها اعمال شود current_password: به دلایل امنیتی لطفاً گذرواژه این حساب را وارد کنید current_username: برای تأیید، لطفاً نام کاربری حساب فعلی را وارد کنید digest: تنها وقتی فرستاده می‌شود که مدتی طولانی فعالیتی نداشته باشید و در این مدت برای شما پیغام خصوصی‌ای نوشته شده باشد email: به شما ایمیل تأییدی فرستاده خواهد شد - header: یکی از قالب‌های PNG یا GIF یا JPG. بیشترین اندازه %{size}. تصویر به اندازهٔ %{dimensions} پیکسل تبدیل خواهد شد inbox_url: نشانی صفحهٔ اصلی رله‌ای را که می‌خواهید به کار ببرید کپی کنید irreversible: فرسته‌های پالوده به طور برگشت‌ناپذیری ناپدید می‌شوند، حتا اگر بعدها پالایه برداشته شود locale: زبان واسط کاربری، رایانامه‌ها و آگاهی‌های ارسالی diff --git a/config/locales/simple_form.fi.yml b/config/locales/simple_form.fi.yml index 29f2398a90..96bf11ef2d 100644 --- a/config/locales/simple_form.fi.yml +++ b/config/locales/simple_form.fi.yml @@ -5,7 +5,7 @@ fi: account: 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. + fields: Verkkosivustosi, pronominisi, ikäsi ja mitä ikinä haluatkaan ilmoittaa. indexable: Julkiset julkaisusi voivat näkyä hakutuloksissa Mastodonissa. Ihmiset, jotka ovat olleet vuorovaikutuksessa julkaisujesi kanssa, voivat etsiä niitä asetuksesta riippumatta. note: 'Voit @mainita muita käyttäjiä tai #aihetunnisteita.' show_collections: Käyttäjät voivat selata seurattujasi ja seuraajiasi. Käyttäjät, joita seuraat, näkevät joka tapauksessa, että seuraat heitä. @@ -39,14 +39,14 @@ fi: text: Voit valittaa varoituksesta vain kerran defaults: autofollow: Henkilöt, jotka rekisteröityvät kutsun kautta, seuraavat sinua automaattisesti - avatar: PNG, GIF tai JPG. Enintään %{size}. Skaalataan kokoon %{dimensions} px + avatar: WEBP, PNG, GIF tai JPG. Enintään %{size}. Skaalataan kokoon %{dimensions} px bot: Tämä tili suorittaa enimmäkseen automaattisia toimintoja eikä sitä ehkä valvota context: Ainakin yksi konteksti, jossa suodattimen pitäisi olla voimassa current_password: Turvallisuussyistä kirjoita nykyisen tilin salasana current_username: Vahvista kirjoittamalla nykyisen tilin käyttäjänimi digest: Lähetetään vain pitkän poissaolon jälkeen ja vain, jos olet saanut suoria viestejä poissaolosi aikana email: Sinulle lähetetään vahvistussähköposti - header: PNG, GIF tai JPG. Enintään %{size}. Skaalataan kokoon %{dimensions} px + header: WEBP, 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 puskuilmoitusten kieli @@ -55,14 +55,14 @@ fi: scopes: Mihin sovellusliittymiin sovellus pääsee käsiksi. Jos valitset ylätason laajuuden, sinun ei tarvitse valita yksittäisiä. setting_aggregate_reblogs: Älä näytä uusia tehostuksia julkaisuille, joita on äskettäin tehostettu (koskee vain juuri vastaanotettuja tehostuksia) setting_always_send_emails: Yleensä sähköposti-ilmoituksia ei lähetetä, kun käytät Mastodonia aktiivisesti - setting_default_sensitive: Arkaluonteinen media on oletuksena piilotettu, ja se voidaan näyttää yhdellä napsautuksella + setting_default_sensitive: Arkaluonteinen media piilotetaan oletusarvoisesti, ja se voidaan näyttää yhdellä napsautuksella setting_display_media_default: Piilota arkaluonteiseksi merkitty media - setting_display_media_hide_all: Piilota media aina - setting_display_media_show_all: Näytä media aina + setting_display_media_hide_all: Piilota mediasisältö aina + setting_display_media_show_all: Näytä mediasisältö aina setting_use_blurhash: Liukuvärit perustuvat piilotettujen kuvien väreihin mutta sumentavat yksityiskohdat setting_use_pending_items: Piilota aikajanan päivitykset napsautuksen taakse syötteen automaattisen vierityksen sijaan username: Voit käyttää kirjaimia, numeroita ja alaviivoja - whole_word: Kun avainsana tai -fraasi on kokonaan aakkosnumeerinen, se on voimassa vain, jos se vastaa koko sanaa + whole_word: Kun avainsana tai -fraasi on täysin aakkosnumeerinen, suodatin aktivoituu vain sen täysvastineille domain_allow: domain: Tämä verkkotunnus voi noutaa tietoja tältä palvelimelta ja sieltä saapuvat tiedot käsitellään ja tallennetaan email_domain_block: @@ -78,7 +78,7 @@ fi: form_admin_settings: activity_api_enabled: Paikallisesti julkaistujen julkaisujen, aktiivisten käyttäjien ja rekisteröitymisten viikoittainen määrä backups_retention_period: Säilytä luodut arkistot määritetyn määrän päiviä. - bootstrap_timeline_accounts: Nämä tilit kiinnitetään uusien käyttäjien seuraamissuositusten yläpuolelle. + bootstrap_timeline_accounts: Nämä tilit kiinnitetään uusien käyttäjien seuraamissuosituslistojen alkuun. closed_registrations_message: Näkyy, kun rekisteröityminen on suljettu content_cache_retention_period: Kaikki julkaisut ja tehostukset muilta palvelimilta poistetaan, kun määritelty määrä päiviä on kulunut. Osaa julkaisuista voi olla mahdoton palauttaa. Kaikki julkaisuihin liittyvät kirjanmerkit, suosikit ja tehostukset menetetään, eikä niitä voi palauttaa. custom_css: Voit käyttää mukautettuja tyylejä Mastodonin verkkoversiossa. @@ -108,26 +108,26 @@ fi: text: Tämä auttaa meitä arvioimaan hakemustasi ip_block: comment: Valinnainen. Muista miksi lisäsit tämän säännön. - expires_in: IP-osoitteet ovat rajallinen resurssi, joskus niitä jaetaan ja vaihtavat usein omistajaa. Tästä syystä epämääräisiä IP-lohkoja ei suositella. - ip: Kirjoita IPv4- tai IPv6-osoite. Voit estää kokonaisia alueita käyttämällä CIDR-syntaksia. Varo, että et lukitse itseäsi ulos! + expires_in: IP-osoitteet ovat rajallinen resurssi – joskus niitä jaetaan, ja ne vaihtavat usein omistajaa. Niinpä epämääräisiä IP-lohkoja ei suositella. + ip: Kirjoita IPv4- tai IPv6-osoite. Voit estää kokonaisia IP-osoitealueita CIDR-syntaksin avulla. Varo lukitsemasta itseäsi ulos! severities: no_access: Estä pääsy kaikkiin resursseihin sign_up_block: Uudet rekisteröitymiset eivät ole mahdollisia sign_up_requires_approval: Uudet rekisteröitymiset edellyttävät hyväksyntääsi severity: Valitse, mitä tapahtuu tämän IP-osoitteen pyynnöille rule: - text: Kuvaile sääntöä tai vaatimusta tämän palvelimen käyttäjille. Yritä pitää se lyhyenä ja yksinkertaisena + text: Kuvaile sääntöä tai edellytystä palvelimesi käyttäjille. Suosi tiivistä, yksinkertaista ilmaisua sessions: - otp: Syötä puhelimeen saamasi kaksivaiheisen tunnistautumisen koodi tai käytä palautuskoodia. + otp: 'Näppäile mobiilisovelluksessa näkyvä kaksivaiheisen todennuksen tunnusluku, tai käytä tarvittaessa palautuskoodia:' webauthn: Jos kyseessä on USB-avain, muista laittaa se paikalleen ja tarvittaessa napauttaa sitä. settings: indexable: Profiilisi voi näkyä Googlen, Bingin ja muiden hakukoneiden hakutuloksissa. show_application: Voit silti aina nähdä, mistä sovelluksesta julkaisusi lähetettiin. tag: - name: Voit muuttaa esimerkiksi kirjaimia paremmin luettavaksi + name: Voit esimerkiksi vaihtaa suur- ja pienaakkosten kesken helppolukuistaaksesi tekstiäsi user: - chosen_languages: Kun valittu, vain valituilla kielillä kirjoitetut julkaisut näkyvät julkisilla aikajanoilla - role: Rooli määrää, mitkä käyttöoikeudet käyttäjällä on + chosen_languages: Jos valitset kieliä oheisesta listauksesta, vain niidenkieliset julkaisut näkyvät julkisilla aikajanoilla sinulle + role: Rooli vaikuttaa käyttäjän käyttöoikeuksiin user_role: color: Väri, jota käytetään roolille kaikkialla käyttöliittymässä, RGB-heksadesimaalimuodossa highlighted: Tämä tekee roolista julkisesti näkyvän @@ -152,22 +152,22 @@ fi: account_migration: acct: Uuden tilin käyttäjänimi account_warning_preset: - text: Esiasetettu teksti + text: Esimääritetty teksti title: Nimi admin_account_action: - include_statuses: Sisällytä raportoidut viestit sähköpostiin + include_statuses: Sisällytä raportoidut viestit sähköposti-ilmoitukseen send_email_notification: Ilmoita käyttäjälle sähköpostitse text: Mukautettu varoitus type: Toimi types: - disable: Poista kirjautuminen käytöstä - none: Älä tee mitään + disable: Jäädytä + none: Lähetä varoitus sensitive: Arkaluonteinen silence: Rajoita suspend: Jäädytä - warning_preset_id: Käytä varoitusmallia + warning_preset_id: Käytä varoituspohjaa announcement: - all_day: Koko päivän kestävä tapahtuma + all_day: Koko päivän tapahtuma ends_at: Tapahtuman loppu scheduled_at: Ajoita julkaisu starts_at: Tapahtuman alku @@ -196,7 +196,7 @@ fi: max_uses: Käyttökertoja enintään new_password: Uusi salasana note: Elämäkerta - otp_attempt: Kaksivaiheisen tunnistuksen koodi + otp_attempt: Kaksivaiheisen todennuksen tunnusluku password: Salasana phrase: Avainsana tai -fraasi setting_advanced_layout: Ota edistynyt selainkäyttöliittymä käyttöön @@ -208,19 +208,19 @@ fi: setting_default_privacy: Julkaisun näkyvyys setting_default_sensitive: Merkitse media aina arkaluonteiseksi setting_delete_modal: Kysy vahvistusta ennen julkaisun poistamista - setting_disable_swiping: Poista pyyhkäisyt käytöstä + setting_disable_swiping: Poista pyyhkäisyeleet käytöstä setting_display_media: Median näyttäminen setting_display_media_default: Oletus setting_display_media_hide_all: Piilota kaikki setting_display_media_show_all: Näytä kaikki setting_expand_spoilers: Laajenna aina sisältövaroituksilla merkityt julkaisut - setting_hide_network: Piilota verkkosi + setting_hide_network: Piilota verkostotietosi setting_reduce_motion: Vähennä animaatioiden liikettä setting_system_font_ui: Käytä järjestelmän oletusfonttia setting_theme: Sivuston teema setting_trends: Näytä päivän trendit setting_unfollow_modal: Kysy vahvistusta ennen seuraamisen lopettamista - setting_use_blurhash: Näytä värikkäät liukuvärit piilotetulle medialle + setting_use_blurhash: Käytä värikästä liukusävytystä piilotetulle medialle setting_use_pending_items: Hidas tila severity: Vakavuus sign_in_token_attempt: Turvakoodi @@ -230,13 +230,13 @@ fi: username_or_email: Käyttäjänimi tai sähköpostiosoite whole_word: Koko sana email_domain_block: - with_dns_records: Sisällytä toimialueen MX tietueet ja IP-osoite + with_dns_records: Sisällytä toimialueen MX-tietueet ja IP-osoitteet featured_tag: name: Aihetunniste filters: actions: hide: Piilota kokonaan - warn: Piilota ja näytä varoitus + warn: Piilota varoittaen form_admin_settings: activity_api_enabled: Julkaise yhteenlasketut tilastot käyttäjätoiminnasta ohjelmointirajapinnassa backups_retention_period: Käyttäjän arkiston säilytysaika @@ -244,9 +244,9 @@ fi: closed_registrations_message: Mukautettu viesti, kun rekisteröityminen ei ole saatavilla content_cache_retention_period: Sisällön välimuistin säilytysaika custom_css: Mukautettu CSS - mascot: Mukautettu maskotti (legacy) - media_cache_retention_period: Median välimuistin säilytysaika - peers_api_enabled: Julkaise löydettyjen instanssien luettelo ohjelmointirajapinnassa + mascot: Mukautettu maskotti (vanhentunut ominaisuus) + media_cache_retention_period: Mediasisältövälimuistin säilytysaika + peers_api_enabled: Julkaise löydettyjen palvelinten luettelo ohjelmointirajapinnassa profile_directory: Ota profiilihakemisto käyttöön registrations_mode: Kuka voi rekisteröityä require_invite_text: Vaadi syy liittyä @@ -260,11 +260,11 @@ fi: site_title: Palvelimen nimi status_page_url: Tilasivun URL-osoite theme: Oletusteema - thumbnail: Palvelimen pikkukuva + thumbnail: Palvelimen pienoiskuva timeline_preview: Salli todentamaton pääsy julkisille aikajanoille - trendable_by_default: Salli trendit ilman ennakkotarkastusta + trendable_by_default: Salli suositun sisällön koonti ilman ennakkotarkastusta trends: Ota trendit käyttöön - trends_as_landing_page: Käytä trendejä aloitussivuna + trends_as_landing_page: Käytä suosittua sisältöä aloitussivuna interactions: must_be_follower: Estä ilmoitukset käyttäjiltä, jotka eivät seuraa sinua must_be_following: Estä ilmoitukset käyttäjiltä, joita et seuraa @@ -318,7 +318,7 @@ fi: permissions_as_keys: Oikeudet position: Prioriteetti webhook: - events: Tapahtumat käytössä + events: Käytössä olevat tapahtumat template: Hyötykuormapohja url: Päätepisteen URL 'no': Ei @@ -327,8 +327,8 @@ fi: recommended: Suositeltu required: mark: "*" - text: pakollinen tieto + text: vaadittu tieto title: sessions: - webauthn: Käytä jotakin suojausavainta kirjautuaksesi sisään + webauthn: Käytä yhtä turva-avaimistasi kirjautuaksesi sisään 'yes': Kyllä diff --git a/config/locales/simple_form.fo.yml b/config/locales/simple_form.fo.yml index e4d87e1786..003eede25b 100644 --- a/config/locales/simple_form.fo.yml +++ b/config/locales/simple_form.fo.yml @@ -39,14 +39,14 @@ fo: text: Tú kanst bara kæra eina atsókn eina ferð defaults: autofollow: Fólk, sum tilmelda seg gjøgnum innbjóðingina, fylgja tær sjálvvirkandi - avatar: PNG, GIF ella JPG. Ikki størri enn %{size}. Verður minkað til %{dimensions}px + avatar: WEBP, PNG, GIF ella JPG. Í mesta lagi %{size}. Verður minkað til %{dimensions}px bot: Tekin til onnur, at kontan í høvuðsheitum ger sjálvvirkandi atgerðir og møguliga ikki verður yvirvakað context: Ein ella fleiri kontekstir, har sum filtrið skal brúkast current_password: Av trygdarávum vinarliga les inn loyniorðið hjá verandi kontu current_username: Fyri at vátta, vinarliga les inn brúkaranavnið á verandi kontu digest: Einans sent eftir eitt langt tíðarskeið við óvirkni og einans um tú hevur móttikið persónlig boð meðan tú var burtur email: Tú fær sendandi ein váttanarteldupost - header: PNG, GIF ella JPG. Ikki størri enn %{size}. Verður minkað til %{dimensions}px + header: WEBP, PNG, GIF ella JPG. Í mesta lagi %{size}. Verður minkað til %{dimensions}px inbox_url: Avrita URL'in frá forsíðuni hjá reiðlagnum, sum tú vilt brúka irreversible: Filtreraðir postar blíva burtur med alla, eisini sjálvt um filtrið seinni verður strikað locale: Málið, sum verður brúkt í brúkaramarkamótinum, teldupostum og skumpiboðum diff --git a/config/locales/simple_form.fr-CA.yml b/config/locales/simple_form.fr-CA.yml index f5a2a428e9..a4e57841e6 100644 --- a/config/locales/simple_form.fr-CA.yml +++ b/config/locales/simple_form.fr-CA.yml @@ -39,14 +39,14 @@ fr-CA: text: Vous ne pouvez faire appel d'une sanction qu'une seule fois defaults: autofollow: Les personnes qui s’inscrivent grâce à l’invitation vous suivront automatiquement - avatar: Au format PNG, GIF ou JPG. %{size} maximum. Sera réduit à %{dimensions}px + avatar: WEBP, PNG, GIF ou JPG. Au plus %{size}. Sera réduit à %{dimensions}px bot: Signale aux autres que ce compte exécute principalement des actions automatisées et pourrait ne pas être surveillé context: Un ou plusieurs contextes où le filtre devrait s’appliquer current_password: Par mesure de sécurité, veuillez saisir le mot de passe de ce compte current_username: Pour confirmer, veuillez saisir le nom d'utilisateur de ce compte digest: Uniquement envoyé après une longue période d’inactivité en cas de messages personnels reçus pendant votre absence email: Vous recevrez un courriel de confirmation - header: Au format PNG, GIF ou JPG. %{size} maximum. Sera réduit à %{dimensions}px + header: WEBP, PNG, GIF ou JPG. Au plus %{size}. Sera réduit à %{dimensions}px inbox_url: Copiez l’URL depuis la page d’accueil du relai que vous souhaitez utiliser irreversible: Les messages filtrés disparaîtront irrévocablement, même si le filtre est supprimé plus tard locale: La langue de l’interface, des courriels et des notifications diff --git a/config/locales/simple_form.fr.yml b/config/locales/simple_form.fr.yml index 5a74facb7a..bd1dc6885f 100644 --- a/config/locales/simple_form.fr.yml +++ b/config/locales/simple_form.fr.yml @@ -39,14 +39,14 @@ fr: text: Vous ne pouvez faire appel d'une sanction qu'une seule fois defaults: autofollow: Les personnes qui s’inscrivent grâce à l’invitation vous suivront automatiquement - avatar: Au format PNG, GIF ou JPG. %{size} maximum. Sera réduit à %{dimensions}px + avatar: WEBP, PNG, GIF ou JPG. Au plus %{size}. Sera réduit à %{dimensions}px bot: Signale aux autres que ce compte exécute principalement des actions automatisées et pourrait ne pas être surveillé context: Un ou plusieurs contextes où le filtre devrait s’appliquer current_password: Par mesure de sécurité, veuillez saisir le mot de passe de ce compte current_username: Pour confirmer, veuillez saisir l’identifiant de ce compte digest: Uniquement envoyé après une longue période d’inactivité en cas de messages personnels reçus pendant votre absence email: Vous recevrez un courriel de confirmation - header: Au format PNG, GIF ou JPG. %{size} maximum. Sera réduit à %{dimensions}px + header: WEBP, PNG, GIF ou JPG. Au plus %{size}. Sera réduit à %{dimensions}px inbox_url: Copiez l’URL depuis la page d’accueil du relais que vous souhaitez utiliser irreversible: Les messages filtrés disparaîtront irrévocablement, même si le filtre est supprimé plus tard locale: La langue de l’interface, des courriels et des notifications diff --git a/config/locales/simple_form.fy.yml b/config/locales/simple_form.fy.yml index f506b79252..8cedc3b1d5 100644 --- a/config/locales/simple_form.fy.yml +++ b/config/locales/simple_form.fy.yml @@ -39,14 +39,12 @@ fy: text: Jo kinne mar ien kear beswier yntsjinje tsjin in fêststelde oertrêding defaults: autofollow: Minsken dy’t harren fia de útnûging registrearre hawwe, folgje jo automatysk - avatar: PNG, GIF of JPG. Maksimaal %{size}. Wurdt weromskeald nei %{dimensions}px bot: Sinjaal nei oare brûkers ta dat dizze account yn haadsaak automatisearre berjochten stjoert en mooglik net kontrolearre wurdt context: Ien of meardere lokaasjes wêr’t it filter aktyf wêze moat current_password: Fier foar feilichheidsredenen it wachtwurd fan jo aktuele account yn current_username: Fier ta befêstiging de brûkersnamme fan jo aktuele account yn digest: Wurdt allinnich nei in lange perioade fan ynaktiviteit ferstjoerd en allinnich wannear’t jo wylst jo ôfwêzigens persoanlike berjochten ûntfongen hawwe email: Jo krije in befêstigings-e-mailberjocht - header: PNG, GIF of JPG. Maksimaal %{size}. Wurdt weromskeald nei %{dimensions}px inbox_url: Kopiearje de URL fan de foarside fan de relayserver dy’t jo brûke wolle irreversible: Filtere berjochten ferdwine definityf, sels as it filter letter fuortsmiten wurdt locale: De taal fan de brûkersomjouwing, e-mailberjochten en pushmeldingen diff --git a/config/locales/simple_form.gd.yml b/config/locales/simple_form.gd.yml index f567866c3e..7941ac334d 100644 --- a/config/locales/simple_form.gd.yml +++ b/config/locales/simple_form.gd.yml @@ -39,14 +39,12 @@ gd: text: Chan urrainn dhut ath-thagradh a dhèanamh air rabhadh ach aon turas defaults: autofollow: Leanaidh na daoine a chlàraicheas leis a cuireadh thu gu fèin-obrachail - avatar: PNG, GIF or JPG. %{size} air a char as motha. Thèid a sgèileadh sìos gu %{dimensions}px bot: Comharraich do chàch gu bheil an cunntas seo ri gnìomhan fèin-obrachail gu h-àraidh is dh’fhaoidte nach doir duine sam bith sùil air idir context: Na co-theacsaichean air am bi a’ chriathrag an sàs current_password: A chùm tèarainteachd, cuir a-steach facal-faire a’ chunntais làithrich current_username: Airson seo a dhearbhadh, cuir a-steach ainm-cleachdaiche a’ chunntais làithrich digest: Cha dèid seo a chur ach nuair a bhios tu air ùine mhòr gun ghnìomh a ghabhail agus ma fhuair thu teachdaireachd phearsanta fhad ’s a bha thu air falbh email: Thèid post-d dearbhaidh a chur thugad - header: PNG, GIF or JPG. %{size} air a char as motha. Thèid a sgèileadh sìos gu %{dimensions}px inbox_url: Dèan lethbhreac dhen URL o phrìomh-dhuilleag an ath-sheachadain a bu mhiann leat cleachdadh irreversible: Thèid postaichean criathraichte à sealladh gu buan fiù ’s ma bheir thu a’ chriathrag air falbh às dèidh làimhe locale: Cànan eadar-aghaidh a’ chleachdaiche, nam post-d ’s nam brathan putaidh @@ -304,10 +302,10 @@ gd: indexable: Gabh a-staigh duilleag na pròifil sna h-einnseanan-luirg show_application: Seall dè an aplacaid a chuir thu post leatha tag: - listable: Leig leis an taga hais seo gun nochd e ann an toraidhean luirg ’s am measg nam molaidhean + listable: Faodaidh an taga hais seo nochdadh ann an toraidhean luirg ’s am measg nam molaidhean name: Taga hais - trendable: Leig leis an taga hais seo gun nochd e am measg nan treandaichean - usable: Leig le postaichean an taga hais seo a chleachdadh + trendable: Faodaidh an taga hais seo nochdadh am measg nan treandaichean + usable: Faodaidh postaichean an taga hais seo a chleachdadh user: role: Dreuchd time_zone: Roinn-tìde diff --git a/config/locales/simple_form.gl.yml b/config/locales/simple_form.gl.yml index 7bafca6b71..719da8eefa 100644 --- a/config/locales/simple_form.gl.yml +++ b/config/locales/simple_form.gl.yml @@ -39,14 +39,14 @@ gl: text: Só podes apelar a decisión unha vez defaults: autofollow: As persoas que se conectaron a través dun convite seguirante automáticamente - avatar: PNG, GIF ou JPG. Máximo %{size}. Será reducida a %{dimensions}px + avatar: WEBP, PNG, GIF ou JPG. Máximo %{size}. Será reducida a %{dimensions}px bot: Advirte ás usuarias de que esta conta realiza principalmente accións automatizadas e podería non estar monitorizada context: Un ou varios contextos onde se debería aplicar o filtro current_password: Por razóns de seguridade, introduce o contrasinal da conta actual current_username: Para confirmar, introduce o nome de usuaria da conta actual digest: Enviar só tras un longo período de inactividade e só se recibiches algunha mensaxe directa na tua ausencia email: Ímosche enviar un correo de confirmación - header: PNG, GIF ou JPG. Máximo %{size}. Será reducida a %{dimensions}px + header: WEBP, PNG, GIF ou JPG. Máximo %{size}. Será reducida a %{dimensions}px inbox_url: Copiar o URL desde a páxina de inicio do repetidor que queres utilizar irreversible: As publicacións filtradas desaparecerán de xeito irreversible, incluso se despois se elimina o filtro locale: O idioma da interface de usuaria, correos e notificacións diff --git a/config/locales/simple_form.he.yml b/config/locales/simple_form.he.yml index 0a8a57c347..3d7512c5f5 100644 --- a/config/locales/simple_form.he.yml +++ b/config/locales/simple_form.he.yml @@ -39,14 +39,14 @@ he: text: ניתן לערער על עברה רק פעם אחת defaults: autofollow: אנשים שיצטרפו בעזרת ההזמנה יעקבו אחריך באופן אוטומטי - avatar: PNG, GIF או JPG. מקסימום %{size}. גודל התמונה יוקטן ל-%{dimensions}px + avatar: WEBP, PNG, GIF או JPG. גודל מירבי %{size}. גודל התמונה יוקטן ל־%{dimensions} פיקסלים bot: איתות לאחרים שהחשבון מבצע בעיקר פעולות אוטומטיות ועשוי לא להיות מנוטר context: הקשר אחד או יותר בהם יופעל המסנן current_password: מסיבות אבטחה נא להזין את הסיסמא של החשבון הנוכחי current_username: על מנת לאשר, נא להכניס את שם המשתמש של החשבון הנוכחי digest: נשלח לאחר תקופה ארוכה של אי-פעילות עם סיכום איזכורים שקיבלת בהעדרך email: דוא"ל אישור יישלח אליך - header: PNG, GIF או JPG. מקסימום %{size}. גודל התמונה יוקטן %{dimensions}px + header: WEBP, PNG, GIF או JPG. גודל מירבי %{size}. גודל התמונה יוקטן ל־%{dimensions} פיקסלים inbox_url: נא להעתיק את הקישורית מדף הבית של הממסר בו תרצה/י להשתמש irreversible: הודעות מסוננות יעלמו באופן בלתי הפיך, אפילו אם מאוחר יותר יוסר המסנן locale: שפת ממשק המשתמש, הדוא"ל וההתראות בדחיפה diff --git a/config/locales/simple_form.hr.yml b/config/locales/simple_form.hr.yml index 3db4fd3b4a..ea40543c51 100644 --- a/config/locales/simple_form.hr.yml +++ b/config/locales/simple_form.hr.yml @@ -8,8 +8,6 @@ hr: title: Proizvoljno. Nije vidljivo primatelju defaults: autofollow: Ljudi koji se registriraju kroz pozivnicu će te automatski slijediti - avatar: PNG, GIF ili JPG. Najviše %{size}. Bit će smanjeno na %{dimensions}px - header: PNG, GIF ili JPG. Najviše %{size}. Bit će smanjeno na %{dimensions}px password: Mora biti najmanje 8 znakova setting_display_media_default: Sakrij medijski sadržaj označen kao osjetljiv setting_display_media_hide_all: Uvijek sakrij medijski sadržaj diff --git a/config/locales/simple_form.hu.yml b/config/locales/simple_form.hu.yml index 6e11f7fb93..573809c73a 100644 --- a/config/locales/simple_form.hu.yml +++ b/config/locales/simple_form.hu.yml @@ -39,14 +39,14 @@ hu: text: Egy vétséget csak egyszer fellebbezhetsz meg defaults: autofollow: Akik meghívón keresztül regisztrálnak, automatikusan követni fognak téged - avatar: PNG, GIF vagy JPG. Maximum %{size}. Átméretezzük %{dimensions} pixelre + avatar: WEBP, PNG, GIF vagy JPG. Legfeljebb %{size}. Át lesz méretezve %{dimensions} képpontosra. bot: Ez a fiók automatikus műveleteket végez és valószínűleg nem figyeljük context: Kontextusok, ahol a szűrőnek működnie kell current_password: Biztonsági okok miatt kérlek, írd be a jelenlegi fiók jelszavát current_username: A jóváhagyáshoz írd be a jelenlegi fiók felhasználói nevét digest: Csak hosszú távollét esetén küldődik és csak ha személyes üzenetet kaptál távollétedben email: Kapsz egy megerősítő e-mailt - header: PNG, GIF vagy JPG. Maximum %{size}. Átméretezzük %{dimensions} pixelre + header: WEBP, PNG, GIF vagy JPG. Legfeljebb %{size}. Át lesz méretezve %{dimensions} képpontosra. inbox_url: Másold ki a használandó relé szerver kezdőoldalának URL-jét irreversible: A kiszűrt bejegyzések visszafordíthatatlanul eltűnnek, a szűrő későbbi törlése esetén is locale: A felhasználói felület, e-mailek, push üzenetek nyelve diff --git a/config/locales/simple_form.hy.yml b/config/locales/simple_form.hy.yml index 9dbcd1301e..0525f2d6fc 100644 --- a/config/locales/simple_form.hy.yml +++ b/config/locales/simple_form.hy.yml @@ -23,14 +23,12 @@ hy: text: Կարող ես օգտագործել գրառման առանձնայատկութիւնը։ Խնդրում ենք, լինել խելամիտ յայտարարութեան տարածքն օգտագործելիս, այն յայտնուելու է օգտատիրոջ էկրանին defaults: autofollow: Հրաւէրի միջոցով գրանցուող մարդիկ կը հետեւեն քեզ - avatar: PNG, GIF կամ JPG։ Առաւելագոյնը՝ %{size}։ Կը փոքրացուի մինչեւ %{dimensions} bot: Այս հաշիւը հիմնականում կատարում է աւտօմատացուած գործողութւնները եւ գուցէ չի վերայսկուում context: Մէկ կամ մի քանի կոնտեքստներ, որտեղ պէտք է կիրառուի զտիչ current_password: Անվտանգութեան նկատառումներից ելնելով, խնդրում ենք մուտքագրել տուել հաշուի ծածկագիրը current_username: Հաստատելու համար խնդրում ենք մուտքագրել տուել հաշուի օգտանունը digest: Ուղարկուում է պասիւութեան երկար շրջանից յետոյ եւ միայն այն դէպքում, երբ բացակայութեանդ ժամանակ որեւէ անձնական հաղորդագրութիւն ես ստացել email: Քեզ ուղարկուել է հաստատման իմակ - header: PNG, GIF կամ JPG։ Առաւելագոյնը՝ %{size}։ Կը փոքրացուի մինչեւ %{dimensions} inbox_url: Պատճէնիր URL այն շերտի դիմերեսից, որը ցանկանում ես օգտագործել irreversible: Զտուած գրառումները կորչելու են անդառնալիօրէն, նոյնիսկ եթէ զտիչը յետոյ հեռացնես locale: Ինտերֆեյսի լեզուն, էլ. նամակները եւ push ծանուցումները diff --git a/config/locales/simple_form.ia.yml b/config/locales/simple_form.ia.yml index 552abb2550..af198d932a 100644 --- a/config/locales/simple_form.ia.yml +++ b/config/locales/simple_form.ia.yml @@ -26,6 +26,7 @@ ia: username: Nomine de usator username_or_email: Nomine de usator o e-mail form_admin_settings: + bootstrap_timeline_accounts: Recommenda sempre iste contos a nove usatores custom_css: CSS personalisate profile_directory: Activar directorio de profilos site_contact_email: Adresse de e-mail de contacto diff --git a/config/locales/simple_form.id.yml b/config/locales/simple_form.id.yml index 51046ce9d4..8b9e74406a 100644 --- a/config/locales/simple_form.id.yml +++ b/config/locales/simple_form.id.yml @@ -29,14 +29,12 @@ id: text: Anda hanya dapat mengajukan banding peringatan sekali defaults: autofollow: Orang yang ingin mendaftar lewat undangan, otomatis mengikuti Anda - avatar: PNG, GIF atau JPG. Maksimal %{size}. Ukuran dikecilkan menjadi %{dimensions}px bot: Akun ini melakukan aksi otomatis dan mungkin tak termonitor context: Satu atau lebih konteks tempat saringan perlu diterapkan current_password: Untuk tujuan keamanan mohon masukkan kata sandi akun ini current_username: Untuk konfirmasi, mohon masukkan nama pengguna akun ini digest: Hanya kirim setelah lama tidak aktif dan hanya jika Anda menerima pesan personal atas absensi Anda email: Anda akan dikirimi email konfirmasi - header: PNG, GIF atau JPG. Maksimal %{size}. Ukuran dikecilkan menjadi %{dimensions}px inbox_url: Salin URL dari halaman depan relai yang ingin Anda pakai irreversible: Toot tersaring akan hilang permanen bahkan jika saringan dihapus kemudian locale: Bahasa antar muka pengguna, email, dan notifikasi dorong diff --git a/config/locales/simple_form.ie.yml b/config/locales/simple_form.ie.yml index dfd0836412..3cf5c33f2c 100644 --- a/config/locales/simple_form.ie.yml +++ b/config/locales/simple_form.ie.yml @@ -39,14 +39,14 @@ ie: text: Tu posse apellar un admoniment solmen un vez defaults: autofollow: Persones qui adherer per li invitation va sequer te automaticmen - avatar: PNG, GIF o JPEG. Admaxim %{size}. Li grandore va esser contraet a %{dimensions}px + avatar: WEBP, PNG, GIF o JPG, con un maximum de %{size}. Va esser diminuet a %{dimensions}px bot: Dir a altres que li conto primarimen far automatic actiones e que fórsan null homan vigila it context: Un o multiplic contextus u li filtre deve aplicar current_password: Por securital rasones, ples introducter li passa-parol del actual conto current_username: Por confirmar, ples inmetter li usator-nómine del actual conto digest: Misset solmen pos un long periode de ínactivitá e solmen si tu ha recivet quelcunc missages personal in tui inbuxe email: On va misser te un email de confirmation - header: PNG, GIF o JPEG. Admaxim %{size}. Li grandore va esser contraet a %{dimensions}px + header: WEBP, PNG, GIF o JPG, con un maximum de %{size}. Va esser diminuet a %{dimensions}px inbox_url: Copiar li URL del initial págine del relé quel tu vole usar irreversible: Filtrat postas va desaparir ínreversibilmen, mem si li filtre es removet plu tard locale: Li lingue del usator-interfacie, emails e notificationes push diff --git a/config/locales/simple_form.io.yml b/config/locales/simple_form.io.yml index eef2014d19..57a2aeb64d 100644 --- a/config/locales/simple_form.io.yml +++ b/config/locales/simple_form.io.yml @@ -39,14 +39,12 @@ io: text: Vu povas nur apelar striko unafoye defaults: autofollow: Personi quo registresesas tra invito automatika sequos vu - avatar: En la formato PNG, GIF o JPG. Til %{size}. Esos mikrigita a %{dimensions}px bot: Signalez a altra personi ke la konto precipue havas automatikigita agi e forsan ne surveyesas context: Situeso kande filtrilo debas aplikesar current_password: Por sekuresorezoni, pozez pasvorto di ca konto current_username: Por konfirmar, pozez uzantonomo di ca konto digest: Nur sendesas pos longa neaktiveso e nur se vu ganis irga mesaji dum ke vu esas neprezenta email: Vu sendesos konfirmretposto - header: En la formato PNG, GIF o JPG. Til %{size}. Esos mikrigita a %{dimensions}px inbox_url: Kopiez URL de frontpagino de relayo quon vu volas uzar irreversible: Filtrita posti neinversigeble desaparos, mem se filtro efacesas pose locale: Linguo di uzantointervizajo, retposti e pulsavizi diff --git a/config/locales/simple_form.is.yml b/config/locales/simple_form.is.yml index 87190693f6..0859e89897 100644 --- a/config/locales/simple_form.is.yml +++ b/config/locales/simple_form.is.yml @@ -39,14 +39,14 @@ is: text: Þú getur aðeins áfrýjað refsingu einu sinni defaults: autofollow: Fólk sem skráir sig í gegnum boðið mun sjálfkrafa fylgjast með þér - avatar: PNG, GIF eða JPG. Mest %{size}. Verður smækkað í %{dimensions}px + avatar: WEBP, PNG, GIF eða JPG. Mest %{size}. Verður smækkað í %{dimensions}px bot: Þessi aðgangur er aðallega til að framkvæma sjálfvirkar aðgerðir og gæti verið án þess að hann sé vaktaður reglulega context: Eitt eða fleiri samhengi þar sem sían ætti að gilda current_password: Í öryggisskyni skaltu setja inn lykilorðið fyrir þennan notandaaðgang current_username: Til að staðfesta skaltu setja inn notandanafnið fyrir þennan notandaaðgang digest: Er aðeins sent eftir lengri tímabil án virkni og þá aðeins ef þú hefur fengið persónuleg skilaboð á meðan þú hefur ekki verið á línunni email: Þú munt fá sendan staðfestingarpóst - header: PNG, GIF eða JPG. Mest %{size}. Verður smækkað í %{dimensions}px + header: WEBP, PNG, GIF eða JPG. Mest %{size}. Verður smækkað í %{dimensions}px inbox_url: Afritaðu slóðina af forsíðu endurvarpans sem þú vilt nota irreversible: Síaðar færslur munu hverfa óendurkræft, jafnvel þó sían sé seinna fjarlægð locale: Tungumál notandaviðmótsins, tölvupósts og ýti-tilkynninga diff --git a/config/locales/simple_form.it.yml b/config/locales/simple_form.it.yml index 731379835a..244cf7c44a 100644 --- a/config/locales/simple_form.it.yml +++ b/config/locales/simple_form.it.yml @@ -39,14 +39,14 @@ it: text: Puoi appellarti solo una volta defaults: autofollow: Le persone che si iscrivono attraverso l'invito ti seguiranno automaticamente - avatar: PNG, GIF o JPG. Al massimo %{size}. Verranno scalate a %{dimensions}px + avatar: WEBP, PNG, GIF o JPG. Al massimo %{size}. Verranno scalate a %{dimensions}px bot: Questo account esegue principalmente operazioni automatiche e potrebbe non essere tenuto sotto controllo da una persona context: Uno o più contesti nei quali il filtro dovrebbe essere applicato current_password: Per motivi di sicurezza inserisci la password dell'account attuale current_username: Per confermare, inserisci il nome utente dell'account attuale digest: Inviata solo dopo un lungo periodo di inattività e solo se hai ricevuto qualche messaggio personale in tua assenza email: Ti manderemo una email di conferma - header: PNG, GIF o JPG. Al massimo %{size}. Verranno scalate a %{dimensions}px + header: WEBP, PNG, GIF o JPG. Al massimo %{size}. Verranno scalate a %{dimensions}px inbox_url: Copia la URL dalla pagina iniziale del ripetitore che vuoi usare irreversible: I post filtrati scompariranno in modo irreversibile, anche se il filtro viene eliminato locale: La lingua dell'interfaccia utente, di email e notifiche push diff --git a/config/locales/simple_form.ja.yml b/config/locales/simple_form.ja.yml index 08e866b55e..eae1ea2179 100644 --- a/config/locales/simple_form.ja.yml +++ b/config/locales/simple_form.ja.yml @@ -39,14 +39,12 @@ ja: text: 一度だけ異議を申し立てることができます defaults: autofollow: 招待から登録した人が自動的にあなたをフォローするようになります - avatar: "%{size}までのPNG、GIF、JPGが利用可能です。%{dimensions}pxまで縮小されます" bot: このアカウントは主に自動で動作し、人が見ていない可能性があります context: フィルターを適用する対象 (複数選択可) current_password: 現在のアカウントのパスワードを入力してください current_username: 確認のため、現在のアカウントのユーザー名を入力してください digest: 長期間使用していない場合と不在時に返信を受けた場合のみ送信されます email: 確認のメールが送信されます - header: "%{size}までのPNG、GIF、JPGが利用可能です。 %{dimensions}pxまで縮小されます" inbox_url: 使用したいリレーサーバーのトップページからURLをコピーします irreversible: フィルターが後で削除されても、除外された投稿は元に戻せなくなります locale: ユーザーインターフェース、メールやプッシュ通知の言語 @@ -294,7 +292,7 @@ ja: software_updates: all: すべてのアップデートを通知する critical: 緊急のアップデートのみ通知する - label: 新しいMastodonバージョンが利用可能です + label: 新しいMastodonバージョンが利用可能になった時 none: 通知しない (非推奨) patch: 緊急のアップデートとバグ修正アップデートを通知する trending_tag: 新しいトレンドのレビューをする必要がある時 diff --git a/config/locales/simple_form.ka.yml b/config/locales/simple_form.ka.yml index e5d874c5a5..48f028c575 100644 --- a/config/locales/simple_form.ka.yml +++ b/config/locales/simple_form.ka.yml @@ -4,11 +4,9 @@ ka: hints: defaults: autofollow: ადამიანები რომლებიც დარეგისტრირდებიან მოწვევით, ავტომატურად გამოგყვებიან - avatar: პნგ, გიფ ან ჯპგ. მაქს. %{size}. ზომა დაპატარავდება %{dimensions}პიქს.-ზე bot: ეს ანგარიში უმთავრესად ასრულებს ავტომატურ მოქმედებებს და შესაძლოა არ იყოს მონიტორინგის ქვეშ context: ერთ ან მრავალი კონტექსტი სადაც ფილტრი უნდა შესრულდეს digest: იგზავნება მხოლოდ ხანგრძლივი უაქტივობის პერიოდის შემდეგ და არყოფნისას თუ მიიღეთ ერთი წერილი მაინც - header: პნგ, გიფ ან ჯპგ. მაქს. %{size}. ზომა დაპატარავდება %{dimensions}პიქს.-ზე inbox_url: ურლ დააკოირეთ გამოყენებისთვის სასურველი რილეის წინა გვერდიდან irreversible: გაფილტრული ტუტები გაუქმდება აღუდგენლად, იმ შემთხვევაშიც კი თუ ფილტრი სამომავლოდ გაუქმდება locale: მომხმარებლის ინტერფეისის, ელ-ფოსტის წერილების და ფუშ შეტყობინებების ენა diff --git a/config/locales/simple_form.kab.yml b/config/locales/simple_form.kab.yml index 1e1c52da24..c7370aedf6 100644 --- a/config/locales/simple_form.kab.yml +++ b/config/locales/simple_form.kab.yml @@ -12,7 +12,7 @@ kab: defaults: autofollow: Imdanen ara ijerrden s usnebgi-inek, ad k-ḍefṛen s wudem awurman email: Ad n-teṭṭfeḍ imayl i usentem - irreversible: Tijewwaqin i tessazedgeḍ ad ttwakksent i lebda, ula ma tekkseḍ imsizdeg-nni ar zdat + irreversible: Tisuffaɣ i tessazedgeḍ ad ttwakksent i lebda, ula ma tekkseḍ imsizdeg-nni ar zdat locale: Tutlayt n ugrudem, imaylen d tilγa password: Seqdec ma drus 8 n yisekkilen setting_display_media_default: Ffer teywalt yettwacreḍ d tanafrit @@ -55,6 +55,7 @@ kab: data: Isefka display_name: Isem ara d-yettwaskanen email: Tansa imayl + expires_in: Ad yemmet header: Ixef locale: Tutlayt n wegrudem max_uses: Amḍan afellay n iseqdacen @@ -69,12 +70,12 @@ kab: setting_display_media_show_all: Ssken kullec setting_hide_network: Ffer azetta-k·m setting_theme: Asental n wesmel - setting_use_pending_items: Askar aleγwayan + setting_use_pending_items: Askar aleɣwayan sign_in_token_attempt: Tangalt n tɣellist title: Azwel type: Anaw n uktar username: Isem n useqdac - username_or_email: Isem n useqdac neγ imal + username_or_email: Isem n useqdac neɣ imal whole_word: Awal akk featured_tag: name: Ahacṭag @@ -84,7 +85,7 @@ kab: invite: comment: Awennit invite_request: - text: Acimi tebγiḍ ad ternuḍ iman-ik? + text: Acimi tebɣiḍ ad ternuḍ iman-ik? ip_block: comment: Awennit ip: IP diff --git a/config/locales/simple_form.ko.yml b/config/locales/simple_form.ko.yml index 4da58e6c64..1dee6f1431 100644 --- a/config/locales/simple_form.ko.yml +++ b/config/locales/simple_form.ko.yml @@ -39,14 +39,14 @@ ko: text: 처벌에 대해 단 한 번만 이의제기를 할 수 있습니다 defaults: autofollow: 이 초대로 가입한 사람은 나를 팔로우하게 됩니다. - avatar: PNG, GIF 혹은 JPG. 최대 %{size}. %{dimensions}px로 축소 됨 + avatar: WEBP, PNG, GIF 혹은 JPG. 최대 %{size}. %{dimensions}px로 축소됨 bot: 이 계정이 대부분 자동으로 작업을 수행하고 잘 확인하지 않는다는 것을 알립니다. context: 필터를 적용 할 한 개 이상의 컨텍스트 current_password: 보안을 위해 현재 계정의 암호를 입력해주세요 current_username: 확인을 위해, 현재 계정의 사용자명을 입력해주세요 digest: 오랫동안 활동하지 않았을 때 받은 멘션들에 대한 요약 받기 email: 확인용 이메일을 보냈습니다. - header: PNG, GIF 혹은 JPG. 최대 %{size}. %{dimensions}px로 축소 됨 + header: WEBP, PNG, GIF 혹은 JPG. 최대 %{size}. %{dimensions}px로 축소됨 inbox_url: 사용 할 릴레이 서버의 프론트페이지에서 URL을 복사합니다 irreversible: 필터링 된 게시물은 나중에 필터가 사라지더라도 돌아오지 않게 됩니다 locale: 사용자 인터페이스, 이메일, 푸시 알림 언어 diff --git a/config/locales/simple_form.ku.yml b/config/locales/simple_form.ku.yml index fb7a45c34b..aa8501bf24 100644 --- a/config/locales/simple_form.ku.yml +++ b/config/locales/simple_form.ku.yml @@ -29,14 +29,12 @@ ku: text: Tu dikarî tenê carekê îtîraza binpêkirinê bikî defaults: autofollow: Mirovên ku bi riya vexwendinê xwe tomar kirine ew ên bi xweberî te bişopînin - avatar: PNG, GIF an jî JPG. Herî zêde %{size} dê ber bi %{dimensions}px ve were kêmkirin bot: Ji yên din re nîşan bike ku ajimêr bi piranî kiryarên xweberî dike û dibe ku neyê çavdêrî kirin context: Yek an jî zêdetir girêdan divê parzûn were sepandin current_password: Ji bo ewlehiyê ji kerema xwe borînpeyva ajimêrê xwe têxe current_username: Ji bo piştrastkirinê, ji kerema xwe navê bikarhêner ya ajimêrê niha binvîse digest: Tenê piştî demek dirêj neçalakiyê de û tenê di nebûna te da peyamên teybetî standî be tê şandin email: Ji te re e-name ya pejirandinê were - header: PNG, GIF an jî JPG. Herî zêde %{size} ber bi %{dimensions}px ve were kêmkirin inbox_url: Girêdanê ji rûpela pêşîn a guhêrkera ku tu dixwazî bi kar bînî jê bigire irreversible: Şandiyên parzûnkirî êdî bê veger wenda bibe, heger parzûn paşê were rakirin jî nabe locale: Zimanê navrûyê bikarhêner, agahdarîyên e-name û pêl kirin diff --git a/config/locales/simple_form.lad.yml b/config/locales/simple_form.lad.yml index c23960e07d..f9ee9a4b9a 100644 --- a/config/locales/simple_form.lad.yml +++ b/config/locales/simple_form.lad.yml @@ -32,21 +32,21 @@ lad: announcement: all_day: Kuando esta eskojido solo se amostraran las datas del rango de tiempo ends_at: Opsyonal. El pregon dezaparesera otomatikamente en este momento - scheduled_at: Deshar en blanko para publikar el pregon pishin + scheduled_at: Desha en blanko para publikar el pregon pishin starts_at: Opsyonal. En caso de ke tu pregon este atado a un intervalo de tiempo espesifiko text: Puedes kulanear la sintaksa de publikasyones. Por favor nota el espasyo ke okupara el pregon en el ekran del utilizador appeal: text: Solo puedes apelar un amonestamiento una vez defaults: autofollow: Los utilizadores ke se enrejistren por la envitasyon te segiran otomatikamente - avatar: PNG, GIF o JPG. Maksimo %{size}. Sera eskalado a %{dimensions}px + avatar: WEBP, PNG, GIF o JPG. Maksimo %{size}. Sera eskalado a %{dimensions}px bot: Indika ke este kuento egzekuta prinsipalmente aksyones otomatizadas i podria no ser monitorizada context: Uno o multiples kontekstos en los ke deve aplikarse el filtro current_password: Por razones de sigurita por favor ingresa el kod del kuento aktual current_username: Para konfirmar, por favor ingresa el nombre de utilizador del kuento aktual digest: Solo embiado dempues de un eluengo periodo de inaktivita i solo si tienes recibido mesajes personales durante tu ausensya email: Se te embiara konfirmasyon por posta elektronika - header: PNG, GIF o JPG. Maksimo %{size}. Sera eskalado a %{dimensions}px + header: WEBP, PNG, GIF o JPG. Maksimo %{size}. Sera eskalado a %{dimensions}px inbox_url: Kopia el URL de la pajina prinsipala del relevo ke keres utilizar irreversible: Las publikasyones filtradas dezapareseran irreversivlemente, inkluzo si este filtro es supremido mas adelante locale: La lingua de la enterfaz de utilizador, posta i avizos arrepushados diff --git a/config/locales/simple_form.lt.yml b/config/locales/simple_form.lt.yml index 6eb90340dc..53b8d672de 100644 --- a/config/locales/simple_form.lt.yml +++ b/config/locales/simple_form.lt.yml @@ -39,14 +39,14 @@ lt: text: Gali pateikti apeliaciją dėl streiko tik vieną kartą defaults: autofollow: Žmonės, kurie užsiregistruos per kvietimą, automatiškai seks tave - avatar: PNG, GIF arba JPG. Ne daugiau kaip %{size}. Bus sumažintas iki %{dimensions} tšk. + avatar: WEBP, PNG, GIF arba JPG. Ne daugiau kaip %{size}. Bus sumažintas iki %{dimensions} tšk. bot: Signalizuoti kitiems, kad paskyroje daugiausia atliekami automatiniai veiksmai ir kad ji gali būti nestebima context: Vienas arba keli kontekstai, kuriems turėtų būti taikomas filtras current_password: Saugumo sumetimais įvesk dabartinės paskyros slaptažodį current_username: Kad patvirtintum, įvesk dabartinės paskyros naudotojo vardą digest: Siunčiama tik po ilgo neaktyvumo laikotarpio ir tik tuo atveju, jei negavai jokių asmeninių žinučių email: Tau bus išsiųstas patvirtinimo el. laiškas - header: PNG, GIF arba JPG. Ne daugiau kaip %{size}. Bus sumažintas iki %{dimensions} tšk. + header: WEBP, PNG, GIF arba JPG. Ne daugiau kaip %{size}. Bus sumažintas iki %{dimensions} tšk. inbox_url: Nukopijuok URL adresą iš pradinio puslapio perdavėjo, kurį nori naudoti irreversible: Filtruoti įrašai išnyks negrįžtamai, net jei vėliau filtras bus pašalintas locale: Naudotojo sąsajos kalba, el. laiškai ir stumiamieji pranešimai diff --git a/config/locales/simple_form.lv.yml b/config/locales/simple_form.lv.yml index bf831c946f..5d23a70100 100644 --- a/config/locales/simple_form.lv.yml +++ b/config/locales/simple_form.lv.yml @@ -39,14 +39,12 @@ lv: text: Brīdinājumu var pārsūdzēt tikai vienu reizi defaults: autofollow: Cilvēki, kuri reģistrējas, izmantojot uzaicinājumu, automātiski sekos tev - avatar: PNG, GIF vai JPG. Ne vairāk kā %{size}. Tiks samazināts līdz %{dimensions} px bot: Paziņo citiem, ka kontā galvenokārt tiek veiktas automatizētas darbības un tas var netikt uzraudzīts context: Viens vai vairāki konteksti, kur jāpiemēro filtrs current_password: Drošības nolūkos, lūdzu, ievadi pašreizējā konta paroli current_username: Lai apstiprinātu, lūdzu, ievadi pašreizējā konta paroli digest: Sūta tikai pēc ilgstošas neaktivitātes un tikai tad, ja savas prombūtnes laikā neesi saņēmis personiskas ziņas email: Tev tiks nosūtīts apstiprinājuma e-pasts - header: PNG, GIF vai JPG. Ne vairāk kā %{size}. Tiks samazināts līdz %{dimensions}px inbox_url: Nokopē URL no tā releja sākumlapas, kuru vēlies izmantot irreversible: Filtrētās ziņas neatgriezeniski pazudīs, pat ja filtrs vēlāk tiks noņemts locale: Lietotāja saskarnes, e-pasta ziņojumu un push paziņojumu valoda diff --git a/config/locales/simple_form.ms.yml b/config/locales/simple_form.ms.yml index 79929cec5d..9e9931cc3e 100644 --- a/config/locales/simple_form.ms.yml +++ b/config/locales/simple_form.ms.yml @@ -39,14 +39,12 @@ ms: text: Anda boleh membuat rayuan terhadap pelanggaran sekali sahaja defaults: autofollow: Orang yang mendaftar melalui undangan akan mengikuti anda secara automatik - avatar: PNG, GIF atau JPG. Kebanyakannya %{size}. Saiz akan dikecilkan kepada %{dimensions}px bot: Memberi isyarat kepada orang lain bahawa akaun itu kebanyakannya melakukan tindakan automatik dan mungkin tidak dipantau context: Satu atau berbilang konteks di mana penapis harus digunakan current_password: Untuk tujuan keselamatan sila masukkan kata laluan akaun semasa current_username: Untuk mengesahkan, sila masukkan nama pengguna akaun semasa digest: Hanya dihantar selepas tempoh yang lama tidak aktif dan hanya jika anda telah menerima sebarang mesej peribadi semasa ketiadaan anda email: Anda akan dihantar e-mel pengesahan - header: PNG, GIF atau JPG. Paling banyak %{size}. Akan diturunkan skala kepada %{dimensions}px inbox_url: Salin URL dari muka depan geganti yang anda mahu gunakan irreversible: Siaran yang ditapis akan hilang secara tidak dapat dipulihkan, walaupun penapis dialih keluar kemudian locale: Bahasa untuk antara muka pengguna, e-mel dan pemberitahuan segera diff --git a/config/locales/simple_form.my.yml b/config/locales/simple_form.my.yml index 80b234c17c..4f8a39782a 100644 --- a/config/locales/simple_form.my.yml +++ b/config/locales/simple_form.my.yml @@ -39,14 +39,12 @@ my: text: လုပ်ဆောင်ချက်တစ်ကြိမ်သာ အသုံးပြုနိုင်သည် defaults: autofollow: ဖိတ်ကြားချက်မှတစ်ဆင့် အကောင့်ဖွင့်သူများမှာ သင့်ကို အလိုအလျောက်စောင့်ကြည့်မည်ဖြစ်ပါသည် - avatar: PNG၊ GIF သို့မဟုတ် JPG။ အများဆုံး %{size}။ %{dimensions}px သို့ လျှော့ချပါမည်။ bot: အကောင့်သည် အဓိကအားဖြင့် အလိုအလျောက် လုပ်ဆောင်ချက်များ ဆောင်ရွက်နိုင်ပြီး စောင့်ကြည့်ခြင်းမပြုနိုင်ကြောင်း အခြားသူများအား အသိပေးပါ context: စစ်ထုတ်သင့်သည့် အကြောင်းအရာ တစ်ခု သို့မဟုတ် များစွာ current_password: လုံခြုံရေးအတွက် ကျေးဇူးပြုပြီး လက်ရှိအကောင့်၏ စကားဝှက်ကို ထည့်ပါ current_username: အတည်ပြုရန်အတွက် လက်ရှိအကောင့်၏ အသုံးပြုသူအမည်ကို ရိုက်ထည့်ပါ digest: အချိန်အတော်ကြာ အသုံးမပြုသည့်သည့်နောက်တွင်သာ ပေးပို့ပြီး အသုံးမပြုသည့်ကာလအတွင်း ကိုယ်ရေးကိုယ်တာစာများသာ လက်ခံရန် email: သင့်ထံ အတည်ပြုချက်အီးမေးလ်တစ်စောင် ပေးပို့ပါမည် - header: PNG၊ GIF သို့မဟုတ် JPG။ အများဆုံး %{size}။ %{dimensions}px သို့ လျှော့ချပါမည် inbox_url: သင်အသုံးပြုလိုသော relay ၏ ရှေ့စာမျက်နှာမှ URL ကို ကူးယူပါ irreversible: စစ်ထုတ်ခြင်းကိုဖယ်ရှားလိုက်ပါက စစ်ထုတ်ထားသော ပို့စ်များမှာ ပျောက်ကွယ်သွားပါမည် locale: အသုံးပြုသူမှ လက်ရှိသုံးနေသည့်ဘာသာစကား၊ အီးမေးလ်များနှင့် ရရှိစေရန်ပေးပို့သည့် အသိပေးချက်များ diff --git a/config/locales/simple_form.nl.yml b/config/locales/simple_form.nl.yml index b0b695745b..3f4f339b93 100644 --- a/config/locales/simple_form.nl.yml +++ b/config/locales/simple_form.nl.yml @@ -39,14 +39,14 @@ nl: text: Je kunt maar eenmalig bezwaar indienen tegen een vastgestelde overtreding defaults: autofollow: Mensen die zich via de uitnodiging hebben geregistreerd, volgen jou automatisch - avatar: PNG, GIF of JPG. Maximaal %{size}. Wordt teruggeschaald naar %{dimensions}px + avatar: WEBP, PNG, GIF of JPG. Maximaal %{size}. Wordt verkleind naar %{dimensions}px bot: Signaal aan anderen dat het account voornamelijk geautomatiseerde acties uitvoert en mogelijk niet wordt gecontroleerd context: Een of meerdere locaties waar de filter actief moet zijn current_password: Voer voor veiligheidsredenen het wachtwoord van je huidige account in current_username: Voer ter bevestiging de gebruikersnaam van je huidige account in digest: Wordt alleen na een lange periode van inactiviteit verzonden en alleen wanneer je tijdens jouw afwezigheid persoonlijke berichten hebt ontvangen email: Je krijgt een bevestigingsmail - header: PNG, GIF of JPG. Maximaal %{size}. Wordt teruggeschaald naar %{dimensions}px + header: WEBP, PNG, GIF of JPG. Maximaal %{size}. Wordt verkleind naar %{dimensions}px inbox_url: Kopieer de URL van de voorpagina van de relayserver die je wil gebruiken irreversible: Gefilterde berichten verdwijnen onomkeerbaar, zelfs als de filter later wordt verwijderd locale: De taal van de gebruikersomgeving, e-mails en pushmeldingen @@ -148,9 +148,9 @@ nl: show_collections: Accounts die jij volgt en die jou volgen op je profiel tonen unlocked: Automatisch nieuwe volgers accepteren account_alias: - acct: Mastodonadres van het oude account + acct: Mastodon-adres van het oude account account_migration: - acct: Mastodonadres van het nieuwe account + acct: Mastodon-adres van het nieuwe account account_warning_preset: text: Tekst van preset title: Titel diff --git a/config/locales/simple_form.nn.yml b/config/locales/simple_form.nn.yml index 266ef1fcce..98cc372be7 100644 --- a/config/locales/simple_form.nn.yml +++ b/config/locales/simple_form.nn.yml @@ -39,14 +39,14 @@ nn: text: Ei åtvaring kan kun ankast ein gong defaults: autofollow: Folk som lagar ein konto gjennom innbydinga fylgjer deg automatisk - avatar: PNG, GIF eller JPG. Maksimalt %{size}. Minkast til %{dimensions}px + avatar: WEBP, PNG, GIF eller JPG. Maks %{size}. Blir forminska til %{dimensions}pkt bot: Denne kontoen utfører i hovedsak automatiserte handlinger og blir kanskje ikke holdt øye med context: En eller flere sammenhenger der filteret skal gjelde current_password: For sikkerhetsgrunner, vennligst oppgi passordet til den nåværende bruker current_username: Skriv inn brukarnamnet til den noverande kontoen for å stadfesta digest: Kun sendt etter en lang periode med inaktivitet og bare dersom du har mottatt noen personlige meldinger mens du var borte email: Du får snart ein stadfestings-e-post - header: PNG, GIF eller JPG. Maksimalt %{size}. Minkast til %{dimensions}px + header: WEBP, PNG, GIF eller JPG. Maks %{size}. Blir forminska til %{dimensions}pkt inbox_url: Kopier URLen fra forsiden til overgangen du vil bruke irreversible: Filtrerte tut vil verta borte for evig, sjølv om filteret vert fjerna seinare locale: Språket til brukargrensesnittet, e-postar og push-varsel @@ -55,8 +55,8 @@ nn: scopes: API-ane som programmet vil få tilgjenge til. Ettersom du vel eit toppnivåomfang tarv du ikkje velja einskilde API-ar. setting_aggregate_reblogs: Ikkje vis nye framhevingar for tut som nyleg har vorte heva fram (Påverkar berre nylege framhevingar) setting_always_send_emails: Vanlegvis vil ikkje e-postvarsel bli sendt når du brukar Mastodon aktivt - setting_default_sensitive: Nærtakande media vert gøymd som standard og kan synast med eit klikk - setting_display_media_default: Gøym media som er merka som nærtakande + setting_default_sensitive: Sensitive media vert gøymde som standard, og du syner dei ved å klikka på dei + setting_display_media_default: Gøym media som er merka som sensitive setting_display_media_hide_all: Alltid skjul alt media setting_display_media_show_all: Vis alltid media setting_use_blurhash: Overgangar er basert på fargane til skjulte grafikkelement, men gjer detaljar utydelege @@ -220,7 +220,7 @@ nn: setting_theme: Sidetema setting_trends: Vis kva som er populært i dag setting_unfollow_modal: Vis stadfesting før du sluttar å fylgja nokon - setting_use_blurhash: Vis fargerike overgangar for gøymt media + setting_use_blurhash: Vis fargerike overgangar for gøymde medium setting_use_pending_items: Saktemodus severity: Alvorsgrad sign_in_token_attempt: Trygdenykel @@ -235,8 +235,8 @@ nn: name: Emneknagg filters: actions: - hide: Gøym totalt - warn: Gøym med ei advarsel + hide: Gøym heilt + warn: Gøym med ei åtvaring form_admin_settings: activity_api_enabled: Legg ut samla statistikk om brukaraktiviteten i APIet backups_retention_period: Arkiveringsperiode for brukararkiv @@ -266,9 +266,9 @@ nn: trends: Aktiver trendar trends_as_landing_page: Bruk trendar som startside interactions: - must_be_follower: Gøym varslingar frå folk som ikkje fylgjer deg - must_be_following: Gøym varslingar frå folk du ikkje fylgjer - must_be_following_dm: Gøym direktemeldinger frå folk du ikkje fylgjer + must_be_follower: Blokker varsel frå folk som ikkje fylgjer deg + must_be_following: Blokker varsel frå folk du ikkje fylgjer + must_be_following_dm: Blokker direktemeldinger frå folk du ikkje fylgjer invite: comment: Kommentar invite_request: diff --git a/config/locales/simple_form.no.yml b/config/locales/simple_form.no.yml index 7651792212..6c47a9deee 100644 --- a/config/locales/simple_form.no.yml +++ b/config/locales/simple_form.no.yml @@ -39,14 +39,12 @@ text: Du kan kun anke en advarsel en gang defaults: autofollow: Folk som lager en konto gjennom invitasjonen, vil automatisk følge deg - avatar: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px bot: Denne kontoen utfører i hovedsak automatiserte handlinger og blir kanskje ikke holdt øye med context: En eller flere sammenhenger der filteret skal gjelde current_password: For sikkerhetsgrunner, vennligst oppgi passordet til den nåværende bruker current_username: For å bekrefte, vennligst skriv inn brukernavnet til den nåværende kontoen digest: Kun sendt etter en lang periode med inaktivitet og bare dersom du har mottatt noen personlige meldinger mens du var borte email: Du vil bli tilsendt en bekreftelses-E-post - header: PNG, GIF eller JPG. Maksimalt %{size}. Vil bli nedskalert til %{dimensions}px inbox_url: Kopier URLen fra forsiden til overgangen du vil bruke irreversible: Filtrerte innlegg vil ugjenkallelig forsvinne, selv om filteret senere blir fjernet locale: Språket til brukergrensesnittet, e-mailer og push-varsler diff --git a/config/locales/simple_form.oc.yml b/config/locales/simple_form.oc.yml index 7159eed322..ba9c260e47 100644 --- a/config/locales/simple_form.oc.yml +++ b/config/locales/simple_form.oc.yml @@ -25,14 +25,12 @@ oc: text: Podètz utilizar la sintaxi dels tuts. Gardatz al cap qu’aquesta anóncia ocuparà la fenèstra de l’utilizaire defaults: autofollow: Lo mond que se marcan gràcia a l’invitacion vos segràn automaticament - avatar: PNG, GIF o JPG. Maximum %{size}. Serà retalhat en %{dimensions}px bot: Avisar lo mond qu’aqueste compte es pas d’una persona context: Un o mai de contèxtes ont lo filtre deuriá s’aplicar current_password: Per de rasons de seguretat volgatz picar lo senhal del compte actual current_username: Per confirmar, volgatz picar lo nom d’utilizaire del compte actual digest: Solament enviat aprèp un long moment d’inactivitat e solament s’avètz recebut de messatges personals pendent vòstra abséncia email: Vos mandarem un corrièl de confirmacion - header: PNG, GIF o JPG. Maximum %{size}. Serà retalhada en %{dimensions}px inbox_url: Copiatz l’URL de la pagina màger del relai que volètz utilizar irreversible: Los tuts filtrats desapareisseràn irreversiblament, encara que lo filtre siá suprimit mai tard locale: La lenga de l’interfàcia d’utilizacion, los messatges e las notificacions diff --git a/config/locales/simple_form.pl.yml b/config/locales/simple_form.pl.yml index a55a93556f..4a8208202f 100644 --- a/config/locales/simple_form.pl.yml +++ b/config/locales/simple_form.pl.yml @@ -39,14 +39,14 @@ pl: text: Możesz wysłać odwołanie do ostrzeżenia tylko raz defaults: autofollow: Osoby, które zarejestrują się z Twojego zaproszenia automatycznie zaczną Cię obserwować - avatar: PNG, GIF lub JPG. Maksymalnie %{size}. Zostanie zmniejszony do %{dimensions}px + avatar: WEBP, PNG, GIF lub JPG. Maksymalnie %{size}. Zostanie zmniejszony do %{dimensions}px bot: To konto wykonuje głównie zautomatyzowane działania i może nie być monitorowane context: Jedno lub wiele miejsc, w których filtr zostanie zastosowany current_password: Ze względów bezpieczeństwa wprowadź hasło obecnego konta current_username: Aby potwierdzić, wprowadź nazwę użytkownika obecnego konta digest: Wysyłane tylko po długiej nieaktywności, jeżeli w tym czasie otrzymaleś jakąś wiadomość bezpośrednią email: Otrzymasz e-mail potwierdzający - header: PNG, GIF lub JPG. Maksymalnie %{size}. Zostanie zmniejszony do %{dimensions}px + header: WEBP, PNG, GIF lub JPG. Maksymalnie %{size}. Zostanie zmniejszony do %{dimensions}px inbox_url: Skopiuj adres ze strony głównej przekaźnika, którego chcesz użyć irreversible: Filtrowane wpisy znikną bezpowrotnie, nawet gdy filtr zostanie usunięty locale: Język interfejsu, wiadomości e-mail i powiadomieniach push diff --git a/config/locales/simple_form.pt-BR.yml b/config/locales/simple_form.pt-BR.yml index 1c303c0dae..3a4e99a0d1 100644 --- a/config/locales/simple_form.pt-BR.yml +++ b/config/locales/simple_form.pt-BR.yml @@ -39,14 +39,12 @@ pt-BR: text: Você só pode solicitar uma revisão uma vez defaults: autofollow: Pessoas que criarem conta através de seu convite te seguirão automaticamente - avatar: PNG, GIF or JPG. Arquivos de até %{size}. Serão redimensionados para %{dimensions}px bot: Essa conta executa principalmente ações automatizadas e pode não ser monitorada context: Um ou mais contextos onde o filtro deve atuar current_password: Para fins de segurança, digite a senha da conta atual current_username: Para confirmar, digite o nome de usuário da conta atual digest: Enviado apenas após um longo período de inatividade com um resumo das menções recebidas durante ausência email: Você receberá um e-mail de confirmação - header: PNG, GIF ou JPG de até %{size}. Serão redimensionados para %{dimensions}px inbox_url: Copie o link da página inicial do repetidor que você deseja usar irreversible: As publicações filtradas desaparecerão irreversivelmente, mesmo se o filtro for removido depois locale: O idioma da interface do usuário, e-mails e notificações diff --git a/config/locales/simple_form.pt-PT.yml b/config/locales/simple_form.pt-PT.yml index 691ecec3a0..9c54e72140 100644 --- a/config/locales/simple_form.pt-PT.yml +++ b/config/locales/simple_form.pt-PT.yml @@ -39,14 +39,14 @@ pt-PT: text: Só pode recorrer uma única vez de uma reprimenda defaults: autofollow: As pessoas que aderirem através do convite segui-lo-ão automaticamente - avatar: PNG, GIF ou JPG. Ficheiros no máximo de %{size}. Serão reduzidos para %{dimensions}px + avatar: WEBP, PNG, GIF ou JPG. No máximo %{size}. Será reduzido para %{dimensions}px bot: Esta conta executa essencialmente ações automatizadas e pode não ser monitorizada context: Um ou diversos contextos nos quais o filtro deve ser aplicado current_password: Para fins de segurança, queira inserir a palavra-passe da conta atual current_username: Para confirmar, queira inserir o nome de utilizador da conta atual digest: Enviado após um longo período de inatividade e apenas se foste mencionado na tua ausência email: Será enviado um e-mail de confirmação - header: PNG, GIF ou JPG. Ficheiros no máximo de %{size}. Serão reduzidos para %{dimensions}px + header: WEBP, PNG, GIF ou JPG. No máximo %{size}. Será reduzido para %{dimensions}px inbox_url: Copie o URL da página inicial do repetidor que quer usar irreversible: Publicações filtradas irão desaparecer irremediavelmente, mesmo que o filtro seja removido posteriormente locale: O idioma da interface de utilizador, e-mails e notificações push diff --git a/config/locales/simple_form.ro.yml b/config/locales/simple_form.ro.yml index cade572f38..5593022708 100644 --- a/config/locales/simple_form.ro.yml +++ b/config/locales/simple_form.ro.yml @@ -23,14 +23,12 @@ ro: text: Poți folosi sintaxa de postare. Te rugăm să fii atent la spațiul pe care anunțul îl va ocupa pe ecranul utilizatorului defaults: autofollow: Persoanele care se înregistrează datorită invitației tale te vor urmări automat - avatar: PNG, GIF sau JPG. Cel mult %{size}. Va fi redimensionată la %{dimensions}px bot: Acest cont performează în cea mai mare parte acțiuni automate și nu poate fi monitorizat context: Contextele în care filtrul trebuie aplicat current_password: În scopuri de securitate, vă rugăm să introduceţi parola contului curent current_username: Pentru a confirma, vă rugăm să introduceţi numele de utilizator al contului curent digest: Este trimis doar după o lungă perioadă de inactivitate și numai dacă primești mesaje personale în perioada de absență email: Vei primi un e-mail de confirmare - header: PNG, GIF sau JPG. Cel mult %{size}. Vor fi redimensionate la %{dimensions}px inbox_url: Copiază adresa URL de pe prima pagină a reului pe care vrei să îl utilizezi irreversible: Postările sortate vor dispărea ireversibil, chiar dacă filtrul este ulterior șters locale: Limba interfaței de utilizator, e-mailurile si notificările push diff --git a/config/locales/simple_form.ru.yml b/config/locales/simple_form.ru.yml index 2d82a66358..192a2f96df 100644 --- a/config/locales/simple_form.ru.yml +++ b/config/locales/simple_form.ru.yml @@ -39,14 +39,12 @@ ru: text: Вы можете обжаловать замечание только один раз defaults: autofollow: Люди, пришедшие по этому приглашению, автоматически будут подписаны на вас. - avatar: Поддерживается PNG, GIF и JPG. Максимальный размер — %{size}. Будет уменьшен до %{dimensions}px. bot: Отметьте, если с этой учётной записи выполняются автоматизированные действия и она может не просматриваться владельцем. context: Один или несколько контекстов, к которым должны быть применены фильтры current_password: В целях безопасности введите пароль текущей учётной записи current_username: Для подтверждения, пожалуйста, введите имя пользователя текущей учётной записи digest: Если вы долго не заглядывали, отправим вам дайджест событий, которые происходили в период вашего отсутствия. email: Вам будет отправлено электронное письмо с подтверждением. - header: Поддерживается PNG, GIF и JPG. Максимальный размер — %{size}. Будет уменьшена до %{dimensions}px. inbox_url: Копировать URL с главной страницы ретранслятора, который вы хотите использовать irreversible: Отфильтрованные посты будут утеряны навсегда, даже если в будущем фильтр будет убран locale: Язык интерфейса, e-mail писем и push-уведомлений diff --git a/config/locales/simple_form.sc.yml b/config/locales/simple_form.sc.yml index 5f5d633079..792619e6c7 100644 --- a/config/locales/simple_form.sc.yml +++ b/config/locales/simple_form.sc.yml @@ -27,14 +27,12 @@ sc: text: Podes impreare sintassi in is tuts. Dae cara a su tretu chi s'annùntziu at a pigare in s'ischermu de s'utente defaults: autofollow: Is persones chi s'ant a registrare pro mèdiu de s'invitu t'ant a sighire in manera automàtica - avatar: PNG, GIF o JPG. Màssimu %{size}. Ant a èssere iscaladas a %{dimensions}px bot: Sinnala a àtere chi custu contu faghet pro su prus atziones automatizadas e diat pòdere no èssere monitoradu context: Unu o prus cuntestos in ue su filtru si diat dèpere aplicare current_password: Pro chistiones de seguresa inserta sa crae de intrada de su contu atuale current_username: Pro cunfirmare inserta su nòmine utente de su contu atuale digest: Imbiadu isceti a pustis de unu perìodu longu de inatividade, e isceti si as retzidu calicunu messàgiu personale cando non bi fias email: As a retzire unu messàgiu eletrònicu de cunfirma - header: PNG, GIF o JPG. Màssimu %{size}. Ant a èssere iscaladas a %{dimensions}px inbox_url: Còpia s'URL dae sa pàgina printzipale de su ripetidore chi boles impreare irreversible: Is tuts filtrados ant a isparèssere in manera irreversìbile, fintzas si prus a tardu s'at a bogare su filtru locale: S'idioma de s'interfache de s'utente, de is messàgios de posta eletrònica e de is notìficas push diff --git a/config/locales/simple_form.sco.yml b/config/locales/simple_form.sco.yml index 85fa66ddc9..7eeaca375a 100644 --- a/config/locales/simple_form.sco.yml +++ b/config/locales/simple_form.sco.yml @@ -29,14 +29,12 @@ sco: text: Ye kin ainly appeal a strike the wance defaults: autofollow: Fowk thit signs up throu the invite wull follae ye automatic - avatar: PNG, GIF or JPG. At maist %{size}. Wull get doonscaled tae %{dimensions}px bot: Signal tae ithers thit the accoont maistly performs automatit actions an mibbie wullnae be monitort context: Ae or mair contexts whaur the filter shuid apply current_password: Fir security purposes please pit in the passwird o the current accoont current_username: Fir tae confirm, please pit in the uisernemm o the current accoont digest: Ainly sent efter a lang whilie o inactivity an ainly if ye'v gotten onie personal messages whilst ye wis awa email: Ye'll be sent a confirmation email - header: PNG, GIF or JPG. At maist %{size}. Wull get doonscaled tae %{dimensions}px inbox_url: Copy the URL fae the frontpage o the relay thit ye'r wantin tae uise irreversible: Filtert posts wull dizappear irreversibly, even if filter is taen aff efter locale: The leid o the uiser interface, emails an push notes diff --git a/config/locales/simple_form.si.yml b/config/locales/simple_form.si.yml index ededa85bcc..eb41d263bc 100644 --- a/config/locales/simple_form.si.yml +++ b/config/locales/simple_form.si.yml @@ -27,14 +27,12 @@ si: text: ඔබට වර්ජනයකට අභියාචනා කළ හැක්කේ එක් වරක් පමණි defaults: autofollow: ආරාධනාව හරහා ලියාපදිංචි වන පුද්ගලයින් ස්වයංක්‍රීයව ඔබව අනුගමනය කරනු ඇත - avatar: PNG, GIF හෝ JPG. වැඩිම %{size}. %{dimensions}px දක්වා අඩු කරනු ඇත bot: ගිණුම ප්‍රධාන වශයෙන් ස්වයංක්‍රීය ක්‍රියා සිදු කරන බවත් නිරීක්ෂණය නොකළ හැකි බවත් අන් අයට සංඥා කරන්න context: පෙරහන යෙදිය යුතු සන්දර්භ එකක් හෝ කිහිපයක් current_password: ආරක්ෂක අරමුණු සඳහා කරුණාකර ජංගම ගිණුමේ මුරපදය ඇතුළත් කරන්න current_username: තහවුරු කිරීමට, කරුණාකර වත්මන් ගිණුමේ පරිශීලක නාමය ඇතුළත් කරන්න digest: දිගු කාලයක් අක්‍රියව සිටීමෙන් පසුව පමණක් යවන ලද අතර ඔබ නොමැති විට ඔබට කිසියම් පුද්ගලික පණිවිඩයක් ලැබී ඇත්නම් පමණි email: ඔබට තහවුරු කිරීමේ විද්‍යුත් තැපෑලක් එවනු ලැබේ - header: PNG, GIF හෝ JPG. වැඩිම %{size}. %{dimensions}px දක්වා අඩු කරනු ඇත inbox_url: ඔබට භාවිතා කිරීමට අවශ්‍ය රිලේ හි මුල් පිටුවෙන් URL එක පිටපත් කරන්න irreversible: පෙරහන පසුව ඉවත් කළ ද, පෙරූ ලිපි අප්‍රතිවර්ත්‍යව අතුරුදහන් වනු ඇත locale: වි-තැපැල්, තල්ලු දැනුම්දීම් සහ පරිශ්‍රීලක අතුරුමුහුණතේ භාෂාව diff --git a/config/locales/simple_form.sk.yml b/config/locales/simple_form.sk.yml index 614812a3a9..71bd25d6df 100644 --- a/config/locales/simple_form.sk.yml +++ b/config/locales/simple_form.sk.yml @@ -16,14 +16,14 @@ sk: warning_preset_id: Voliteľné. Stále môžeš vložiť vlastný text na samý koniec predlohy defaults: autofollow: Ľudia ktorí sa zaregistrujú prostredníctvom pozvánky, ťa budú inheď následovať - avatar: PNG, GIF alebo JPG. Maximálne %{size}. Bude zmenšený na %{dimensions}px + avatar: WEBP, PNG, GIF, alebo JPG. Najviac %{size}. Bude zmenšený na %{dimensions}px bot: Tento účet vykonáva hlavne automatizované akcie, a je pravdepodobne nespravovaný context: Jedno, alebo viac kritérií, v ktorých má byť filtrovanie uplatnené current_password: Z bezpečtnostných dôvodov prosím zadaj heslo súčasného účtu current_username: Pre potvrdenie prosím zadaj prezývku súčasného účtu digest: Odoslané iba v prípade dlhodobej neprítomnosti, a len ak si obdržal/a nejaké osobné správy kým si bol/a preč email: Bude ti odoslaný potvrdzujúci email - header: PNG, GIF, alebo JPG. Maximálne %{size}. Bude zmenšený na %{dimensions}px + header: WEBP, PNG, GIF, alebo JPG. Najviac %{size}. Bude zmenšený na %{dimensions}px inbox_url: Skopíruj adresu z hlavnej stránky mostíka, ktorý chceš používať irreversible: Vytriedené príspevky zmiznú nenávratne, aj keď triedenie neskôr zrušíš locale: Jazyk užívateľského rozhrania, emailových, a nástenkových oboznámení diff --git a/config/locales/simple_form.sl.yml b/config/locales/simple_form.sl.yml index ef345f78c3..1e56894384 100644 --- a/config/locales/simple_form.sl.yml +++ b/config/locales/simple_form.sl.yml @@ -39,14 +39,14 @@ sl: text: Na ukrep se lahko pritožite le enkrat defaults: autofollow: Osebe, ki se prijavijo prek povabila, vas bodo samodejno sledile - avatar: PNG, GIF ali JPG. Največ %{size}. Zmanjšana bo na %{dimensions}px + avatar: WEBP, PNG, GIF ali JPG. Največ %{size}. Zmanjšana bo na %{dimensions} sl. točk bot: Ta račun v glavnem opravlja samodejna dejanja in morda ni pod nadzorom context: En ali več kontekstov, kjer naj se uporabi filter current_password: Iz varnostnih razlogov vnesite geslo trenutnega računa current_username: Za potrditev vnesite uporabniško ime trenutnega računa digest: Pošlje se le po dolgem obdobju nedejavnosti in samo, če ste prejeli osebna sporočila v vaši odsotnosti email: Poslali vam bomo potrditveno e-pošto - header: PNG, GIF ali JPG. Največ %{size}. Zmanjšana bo na %{dimensions}px + header: WEBP, PNG, GIF ali JPG. Največ %{size}. Zmanjšana bo na %{dimensions} sl. točk inbox_url: Kopirajte URL naslov s prve strani releja, ki ga želite uporabiti irreversible: Filtrirane objave bodo nepovratno izginile, tudi če je filter kasneje odstranjen locale: Jezik uporabniškega vmesnika, e-poštnih sporočil in potisnih obvestil diff --git a/config/locales/simple_form.sq.yml b/config/locales/simple_form.sq.yml index dc07478070..b8404766f3 100644 --- a/config/locales/simple_form.sq.yml +++ b/config/locales/simple_form.sq.yml @@ -39,14 +39,14 @@ sq: text: Një paralajmërim mund ta apeloni vetëm një herë defaults: autofollow: Personat që regjistrohen përmes ftesës do t’ju ndjekin vetvetiu - avatar: PNG, GIF ose JPG. Maksimumi %{size}. Do të zvogëlohen në %{dimensions}px + avatar: WEBP, PNG, GIF ose JPG. E shumta %{size}. Do të zvogëlohet në %{dimensions}px bot: Kjo llogari kryesisht bën veprime të automatizuara dhe mund të mos mbikëqyret dot context: Një ose disa kontekste kur duhet të zbatohet filtri current_password: Për qëllime sigurie, ju lutemi, jepni fjalëkalimin e llogarisë së tanishme current_username: Që ta ripohoni, ju lutemi, jepni emrin e përdoruesit të llogarisë së tanishme digest: I dërguar vetëm pas një periudhe të gjatë pasiviteti dhe vetëm nëse keni marrë ndonjë mesazh personal gjatë mungesës tuaj email: Do t’ju dërgohet një email ripohimi - header: PNG, GIF ose JPG. E shumta %{size}. Do të ripërmasohet në %{dimensions}px + header: WEBP, PNG, GIF ose JPG. E shumta %{size}. Do të zvogëlohet në %{dimensions}px inbox_url: Kopjoni URL-në prej faqes ballore të relesë që doni të përdorni irreversible: Mesazhet e filtruar do të zhduken në mënyrë të pakthyeshme, edhe nëse filtri hiqet më vonë locale: Gjuha e ndërfaqes së përdoruesit, email-eve dhe njoftimeve push diff --git a/config/locales/simple_form.sr-Latn.yml b/config/locales/simple_form.sr-Latn.yml index 6405ee338a..62e12201ae 100644 --- a/config/locales/simple_form.sr-Latn.yml +++ b/config/locales/simple_form.sr-Latn.yml @@ -39,14 +39,12 @@ sr-Latn: text: Možete podneti samo jednu žalbu na upisan prestup defaults: autofollow: Osobe koje se prijave kroz pozivnice će vas automatski zapratiti - avatar: PNG, GIF ili JPG. Najviše %{size}. Biće smanjeno na %{dimensions}px bot: Daje drugima do znanja da ovaj nalog uglavnom vrši automatizovane radnje i možda se ne nadgleda context: Jedan ili više konteksta u kojima treba da se primeni filter current_password: Iz bezbednosnih razloga molimo Vas unesite lozinku trenutnog naloga current_username: Da biste potvrdili, Molimo Vas unesite korisničko ime trenutno aktivnog naloga digest: Šalje se samo posle dužeg perioda neaktivnosti i samo u slučaju da ste primili jednu ili više ličnih poruka tokom Vašeg odsustva email: Biće Vam poslat mejl sa potvrdom - header: PNG, GIF ili JPG. Najviše %{size}. Biće smanjeno na %{dimensions}px inbox_url: Kopirajte URL sa naslovne strane releja koji želite koristiti irreversible: Filtrirane obajve će nestati nepovratno, čak i ako je filter kasnije uklonjen locale: Jezik korisničkog okruženja, e-pošte i mobilnih obaveštenja @@ -192,7 +190,7 @@ sr-Latn: honeypot: "%{label} (ne popunjavaj)" inbox_url: URL od relejnog prijemnog sandučeta irreversible: Ispustiti umesto sakriti - locale: Jezik + locale: Jezik okruženja max_uses: Maksimalni broj korišćenja new_password: Nova lozinka note: Biografija diff --git a/config/locales/simple_form.sr.yml b/config/locales/simple_form.sr.yml index da1ac81233..10434be1e4 100644 --- a/config/locales/simple_form.sr.yml +++ b/config/locales/simple_form.sr.yml @@ -39,14 +39,12 @@ sr: text: Можете поднети само једну жалбу на уписан преступ defaults: autofollow: Особе које се пријаве кроз позивнице ће вас аутоматски запратити - avatar: PNG, GIF или JPG. Највише %{size}. Биће смањено на %{dimensions}px bot: Даје другима до знања да овај налог углавном врши аутоматизоване радње и можда се не надгледа context: Један или више контекста у којима треба да се примени филтер current_password: Из безбедносних разлога молимо Вас унесите лозинку тренутног налога current_username: Да бисте потврдили, Молимо Вас унесите корисничко име тренутно активног налога digest: Шаље се само после дужег периода неактивности и само у случају да сте примили једну или више личних порука током Вашег одсуства email: Биће Вам послат мејл са потврдом - header: PNG, GIF или JPG. Највише %{size}. Биће смањено на %{dimensions}px inbox_url: Копирајте URL са насловне стране релеја који желите користити irreversible: Филтриранe обајве ће нестати неповратно, чак и ако је филтер касније уклоњен locale: Језик корисничког окружења, е-поште и мобилних обавештења @@ -192,7 +190,7 @@ sr: honeypot: "%{label} (не попуњавај)" inbox_url: URL од релејног пријемног сандучета irreversible: Испустити уместо сакрити - locale: Језик + locale: Језик окружења max_uses: Максимални број коришћења new_password: Нова лозинка note: Биографија diff --git a/config/locales/simple_form.sv.yml b/config/locales/simple_form.sv.yml index b01436b415..fcf3788027 100644 --- a/config/locales/simple_form.sv.yml +++ b/config/locales/simple_form.sv.yml @@ -39,14 +39,12 @@ sv: text: Du kan endast överklaga en varning en gång defaults: autofollow: Användarkonton som skapas genom din inbjudan kommer automatiskt följa dig - avatar: PNG, GIF eller JPG. Högst %{size}. Kommer att skalas ner till %{dimensions}px bot: Detta konto utför huvudsakligen automatiserade åtgärder och kanske inte övervakas context: Ett eller fler sammanhang där filtret ska tillämpas current_password: Av säkerhetsskäl krävs lösenordet till det nuvarande kontot current_username: Ange det nuvarande kontots användarnamn för att bekräfta digest: Skickas endast efter en lång period av inaktivitet och endast om du har fått några personliga meddelanden i din frånvaro email: Du kommer att få ett bekräftelsemeddelande via e-post - header: PNG, GIF eller JPG. Högst %{size}. Kommer att skalas ner till %{dimensions}px inbox_url: Kopiera webbadressen från hemsidan av det ombud du vill använda irreversible: Filtrerade inlägg kommer att försvinna oåterkalleligt, även om filter tas bort senare locale: Språket för användargränssnittet, e-postmeddelanden och push-aviseringar diff --git a/config/locales/simple_form.ta.yml b/config/locales/simple_form.ta.yml index a3819e5eb5..fcf031f90e 100644 --- a/config/locales/simple_form.ta.yml +++ b/config/locales/simple_form.ta.yml @@ -17,7 +17,6 @@ ta: starts_at: கட்டாயமில்லை. உங்கள் அறிவிப்பு ஒரு குறிப்பிட்ட நேரத்தில் வெளியாக வேண்டுமெனில் மட்டும் defaults: autofollow: அழைப்பின் வாயிலாக புதிய கணக்கை துவங்குவோர் தாமாகவே உங்களை பின்தொடர்வர் - avatar: PNG, GIF or JPG. அதிகபட்சம் %{size}, %{dimensions}px க்கு குறைக்கப்படும் bot: இந்த கணக்கு முக்கியமாக தானியங்கு செயல்களைச் செய்கிறது மற்றும் கண்காணிக்கப்படாமல் போகலாம் current_password: பாதுகாப்பு காரணங்களுக்காக, தங்களின் தற்போதைய கணக்கின் கடவுச்சொல்லை உள்ளீடு செய்க current_username: உறுதிசெய்ய, தற்போதைய கணக்கின் பயனர் பெயரை உள்ளிடுக diff --git a/config/locales/simple_form.th.yml b/config/locales/simple_form.th.yml index c388001888..259bb00099 100644 --- a/config/locales/simple_form.th.yml +++ b/config/locales/simple_form.th.yml @@ -18,7 +18,7 @@ th: text: คุณสามารถใช้ไวยากรณ์โพสต์ เช่น URL, แฮชแท็ก และการกล่าวถึง title: ไม่จำเป็น ไม่ปรากฏแก่ผู้รับ admin_account_action: - include_statuses: ผู้ใช้จะเห็นว่าโพสต์ใดก่อให้เกิดการกระทำการควบคุมหรือคำเตือน + include_statuses: ผู้ใช้จะเห็นว่าโพสต์ใดก่อให้เกิดการกระทำการกลั่นกรองหรือคำเตือน send_email_notification: ผู้ใช้จะได้รับคำอธิบายว่าเกิดอะไรขึ้นกับบัญชีของเขา text_html: ไม่จำเป็น คุณสามารถใช้ไวยากรณ์โพสต์ คุณสามารถ เพิ่มคำเตือนที่ตั้งไว้ล่วงหน้า เพื่อประหยัดเวลา type_html: เลือกสิ่งที่จะทำกับ %{acct} @@ -39,14 +39,14 @@ th: text: คุณสามารถอุทธรณ์การดำเนินการได้เพียงครั้งเดียวเท่านั้น defaults: autofollow: ผู้คนที่ลงทะเบียนผ่านคำเชิญจะติดตามคุณโดยอัตโนมัติ - avatar: PNG, GIF หรือ JPG สูงสุด %{size} จะได้รับการย่อขนาดเป็น %{dimensions}px + avatar: WEBP, PNG, GIF หรือ JPG สูงสุด %{size} จะได้รับการย่อขนาดเป็น %{dimensions}px bot: ส่งสัญญาณให้ผู้อื่นว่าบัญชีทำการกระทำแบบอัตโนมัติเป็นหลักและอาจไม่ได้รับการสังเกตการณ์ context: หนึ่งหรือหลายบริบทที่ตัวกรองควรนำไปใช้ current_password: เพื่อวัตถุประสงค์ด้านความปลอดภัย โปรดป้อนรหัสผ่านของบัญชีปัจจุบัน current_username: เพื่อยืนยัน โปรดป้อนชื่อผู้ใช้ของบัญชีปัจจุบัน digest: ส่งเฉพาะหลังจากไม่มีการใช้งานเป็นเวลานานและในกรณีที่คุณได้รับข้อความส่วนบุคคลใด ๆ เมื่อคุณไม่อยู่เท่านั้น email: คุณจะได้รับอีเมลการยืนยัน - header: PNG, GIF หรือ JPG สูงสุด %{size} จะได้รับการย่อขนาดเป็น %{dimensions}px + header: WEBP, PNG, GIF หรือ JPG สูงสุด %{size} จะได้รับการย่อขนาดเป็น %{dimensions}px inbox_url: คัดลอก URL จากหน้าแรกของรีเลย์ที่คุณต้องการใช้ irreversible: โพสต์ที่กรองอยู่จะหายไปอย่างถาวร แม้ว่าจะเอาตัวกรองออกในภายหลังก็ตาม locale: ภาษาของส่วนติดต่อผู้ใช้, อีเมล และการแจ้งเตือนแบบผลัก @@ -86,7 +86,7 @@ th: media_cache_retention_period: จะลบไฟล์สื่อที่ดาวน์โหลดหลังจากจำนวนวันที่ระบุเมื่อตั้งเป็นค่าบวก และดาวน์โหลดใหม่ตามความต้องการ peers_api_enabled: รายการชื่อโดเมนที่เซิร์ฟเวอร์นี้พบในจักรวาลสหพันธ์ ไม่มีข้อมูลรวมอยู่ที่นี่เกี่ยวกับว่าคุณติดต่อกับเซิร์ฟเวอร์ที่กำหนดหรือไม่ เพียงแค่ว่าเซิร์ฟเวอร์ของคุณทราบเกี่ยวกับเซิร์ฟเวอร์ที่กำหนด มีการใช้สิ่งนี้โดยบริการที่เก็บรวบรวมสถิติในการติดต่อกับภายนอกในความหมายทั่วไป profile_directory: ไดเรกทอรีโปรไฟล์แสดงรายการผู้ใช้ทั้งหมดที่ได้เลือกรับให้สามารถค้นพบได้ - require_invite_text: เมื่อการลงทะเบียนต้องมีการอนุมัติด้วยตนเอง ทำให้การป้อนข้อความ “ทำไมคุณจึงต้องการเข้าร่วม?” บังคับแทนที่จะไม่จำเป็น + require_invite_text: เมื่อการลงทะเบียนต้องการการอนุมัติด้วยตนเอง ทำให้การป้อนข้อความ “ทำไมคุณจึงต้องการเข้าร่วม?” บังคับแทนที่จะไม่จำเป็น site_contact_email: วิธีที่ผู้คนสามารถเข้าถึงคุณสำหรับการสอบถามด้านกฎหมายหรือการสนับสนุน site_contact_username: วิธีที่ผู้คนสามารถเข้าถึงคุณใน Mastodon site_extended_description: ข้อมูลเพิ่มเติมใด ๆ ที่อาจเป็นประโยชน์กับผู้เยี่ยมชมและผู้ใช้ของคุณ สามารถจัดโครงสร้างด้วยไวยากรณ์ Markdown @@ -113,7 +113,7 @@ th: severities: no_access: ปิดกั้นการเข้าถึงทรัพยากรทั้งหมด sign_up_block: จะไม่สามารถทำการลงทะเบียนใหม่ - sign_up_requires_approval: การลงทะเบียนใหม่จะต้องมีการอนุมัติของคุณ + sign_up_requires_approval: การลงทะเบียนใหม่จะต้องการการอนุมัติของคุณ severity: เลือกสิ่งที่จะเกิดขึ้นกับคำขอจาก IP นี้ rule: text: อธิบายกฎหรือข้อกำหนดสำหรับผู้ใช้ในเซิร์ฟเวอร์นี้ พยายามทำให้กฎหรือข้อกำหนดสั้นและเรียบง่าย @@ -282,7 +282,7 @@ th: sign_up_requires_approval: จำกัดการลงทะเบียน severity: กฎ notification_emails: - appeal: ใครสักคนอุทธรณ์การตัดสินใจของผู้ควบคุม + appeal: ใครสักคนอุทธรณ์การตัดสินใจของผู้กลั่นกรอง digest: ส่งอีเมลสรุป favourite: ใครสักคนได้ชื่นชอบโพสต์ของคุณ follow: ใครสักคนได้ติดตามคุณ diff --git a/config/locales/simple_form.tok.yml b/config/locales/simple_form.tok.yml new file mode 100644 index 0000000000..37b0ee765a --- /dev/null +++ b/config/locales/simple_form.tok.yml @@ -0,0 +1,17 @@ +--- +tok: + simple_form: + hints: + account: + display_name: nimi sina ale anu nimi sina musi. + defaults: + setting_display_media_hide_all: sitelen ale li len + setting_display_media_show_all: sitelen ale li len ala + labels: + defaults: + expires_in: ona o moli lon + setting_theme: kule lipu + user_role: + name: nimi + required: + text: ni li ken ala lon ala diff --git a/config/locales/simple_form.tr.yml b/config/locales/simple_form.tr.yml index 7d16531eae..cc644d4df4 100644 --- a/config/locales/simple_form.tr.yml +++ b/config/locales/simple_form.tr.yml @@ -39,16 +39,16 @@ tr: text: Bir eyleme yalnızca bir kere itiraz edebilirsiniz defaults: autofollow: Davetiyeyle kaydolan kişiler sizi otomatik olarak takip eder - avatar: En fazla %{size} olacak şekilde PNG, GIF veya JPG formatında yükleyiniz. %{dimensions}px büyüklüğüne indirgenecektir + avatar: En fazla %{size} olacak şekilde WEBP, PNG, GIF veya JPG formatında yükleyiniz. %{dimensions}px boyutuna küçültülecektir bot: Bu hesap temelde otomatik eylemler gerçekleştirir ve izlenmeyebilir context: Filtrenin geçerli olması gereken bir veya daha fazla içerik current_password: Güvenlik nedeniyle lütfen şu anki hesabın parolasını girin current_username: Onaylamak için lütfen şu anki hesabın kullanıcı adını girin digest: Sadece uzun bir süre hareketsiz kaldıktan sonra ve yalnızca yokluğunuzda herhangi bir kişisel mesaj aldıysanız gönderilir email: Onay e-postası gönderilir - header: PNG, GIF ya da JPG. En fazla %{size}. %{dimensions}px boyutuna küçültülecek + header: WEBP, PNG, GIF veya JPG. En fazla %{size}. %{dimensions}px boyutuna küçültülecektir inbox_url: Kullanmak istediğiniz aktarıcının ön sayfasından URL'yi kopyalayın - irreversible: Filtrelenmiş gönderiler, filtre daha sonra kaldırılsa bile, geri dönüşümsüz biçimde kaybolur + irreversible: Süzgeçlenmiş gönderiler, filtre daha sonra kaldırılsa bile, geri dönüşümsüz biçimde kaybolur locale: Kullanıcı arayüzünün dili, e-postalar ve push bildirimleri password: En az 8 karakter kullanın phrase: Metnin büyük/küçük harf durumundan veya gönderinin içerik uyarısından bağımsız olarak eşleştirilecek @@ -74,7 +74,7 @@ tr: action: Bir gönderi filtreyle eşleştiğinde hangi eylemin yapılacağını seçin actions: hide: Filtrelenmiş içeriği tamamen gizle, sanki varolmamış gibi - warn: Filtrelenmiş içeriği, filtrenin başlığından söz eden bir uyarının arkasında gizle + warn: Süzgeçlenmiş içeriği, süzgecinin başlığından söz eden bir uyarının arkasında gizle form_admin_settings: activity_api_enabled: Yerel olarak yayınlanan gönderi, etkin kullanıcı ve yeni kayıtların haftalık sayıları backups_retention_period: Üretilen kullanıcı arşivlerini belirli gün sayısı kadar sakla. @@ -118,7 +118,7 @@ tr: rule: text: Bu sunucu üzerindeki kullanıcılar için bir kural veya gereksinimi tanımlayın. Kuralı kısa ve yalın tutmaya çalışın sessions: - otp: Telefonunuzdaki two-factor kodunuzu giriniz veya kurtarma kodlarınızdan birini giriniz. + otp: 'Telefonunuzdaki two-factor kodunuzu giriniz veya kurtarma kodlarınızdan birini giriniz:' webauthn: Bir USB anahtarıysa, taktığınızdan ve gerekirse üzerine tıkladığınızdan emin olun. settings: indexable: Profil sayfanız Google, Bing ve diğerlerindeki arama sonuçlarında görüntülenebilir. @@ -178,10 +178,10 @@ tr: autofollow: Hesabınızı takip etmeye davet edin avatar: Profil resmi bot: Bu bir bot hesabı - chosen_languages: Dilleri filtrele + chosen_languages: Dilleri süzgeçle confirm_new_password: Yeni parolayı onayla confirm_password: Parolayı doğrula - context: İçeriği filtrele + context: İçeriği süzgeçle current_password: Güncel parola data: Veri display_name: Görünen isim @@ -203,7 +203,7 @@ tr: setting_aggregate_reblogs: Zaman çizelgesindeki boostları grupla setting_always_send_emails: Her zaman e-posta bildirimleri gönder setting_auto_play_gif: Hareketli GIF'leri otomatik oynat - setting_boost_modal: Boostlamadan önce onay iletişim kutusu göster + setting_boost_modal: Paylaşmadan önce onay iletişim kutusu göster setting_default_language: Gönderi dili setting_default_privacy: Gönderi gizliliği setting_default_sensitive: Medyayı her zaman hassas olarak işaretle diff --git a/config/locales/simple_form.uk.yml b/config/locales/simple_form.uk.yml index aa64ecfdb7..a85684a0f9 100644 --- a/config/locales/simple_form.uk.yml +++ b/config/locales/simple_form.uk.yml @@ -39,14 +39,14 @@ uk: text: Ви можете оскаржити рішення лише один раз defaults: autofollow: Люди, що зареєструвалися за вашим запрошенням, автоматично підпишуться на вас - avatar: PNG, GIF, або JPG. Максимум - %{size}. Буде зменшено до %{dimensions}px + avatar: WEBP, PNG, GIF, або JPG. Максимальний розмір - %{size}. Буде зменшено до %{dimensions}px bot: Цей обліковий запис виконує переважно автоматичні дії та може не відстежуватися context: Один або кілька контекстів, до яких повинні бути застосовані фільтри current_password: Для цілей безпеки, будь ласка, введіть пароль поточного облікового запису current_username: Для підтвердження, будь ласка, введіть ім'я користувача поточного облікового запису digest: Буде послано тільки після довгого періоду неактивності, та тільки якщо ви отримаєте персональне повідомлення у цей період email: Вам надійде електронний лист з підтвердженням - header: PNG, GIF, або JPG. Максимум - %{size}. Буде зменшено до %{dimensions}px + header: WEBP, PNG, GIF, або JPG. Максимальний розмір - %{size}. Буде зменшено до %{dimensions}px inbox_url: Скопіюйте інтернет-адресу з титульної сторінки ретранслятора irreversible: Відфільтровані дописи зникнуть назавжди, навіть якщо фільтр потім буде вилучено locale: Мова інтерфейсу, електронних листів та push-сповіщень diff --git a/config/locales/simple_form.vi.yml b/config/locales/simple_form.vi.yml index 8943527b16..817883941c 100644 --- a/config/locales/simple_form.vi.yml +++ b/config/locales/simple_form.vi.yml @@ -39,14 +39,12 @@ vi: text: Bạn chỉ có thể khiếu nại mỗi lần một cảnh cáo defaults: autofollow: Những người đăng ký sẽ tự động theo dõi bạn - avatar: PNG, GIF hoặc JPG, tối đa %{size}. Sẽ bị nén xuống %{dimensions}px bot: Tài khoản này tự động thực hiện các hành động và không được quản lý bởi người thật context: Chọn một hoặc nhiều nơi mà bộ lọc sẽ áp dụng current_password: Vì mục đích bảo mật, vui lòng nhập mật khẩu của tài khoản hiện tại current_username: Để xác nhận, vui lòng nhập tên người dùng của tài khoản hiện tại digest: Chỉ gửi sau một thời gian dài không hoạt động hoặc khi bạn nhận được tin nhắn (trong thời gian vắng mặt) email: Bạn sẽ được gửi một email xác minh - header: PNG, GIF hoặc JPG, tối đa %{size}. Sẽ bị nén xuống %{dimensions}px inbox_url: Sao chép URL của máy chủ mà bạn muốn dùng irreversible: Các tút đã lọc sẽ không thể phục hồi, kể cả sau khi xóa bộ lọc locale: Ngôn ngữ của giao diện, email và thông báo đẩy diff --git a/config/locales/simple_form.zh-CN.yml b/config/locales/simple_form.zh-CN.yml index 7a56fa2559..d0ca529a4d 100644 --- a/config/locales/simple_form.zh-CN.yml +++ b/config/locales/simple_form.zh-CN.yml @@ -39,14 +39,14 @@ zh-CN: text: 你仅能对单次处罚提交一次申诉 defaults: autofollow: 通过邀请链接注册的用户将会自动关注你 - avatar: 文件大小限制 %{size},只支持 PNG、GIF 或 JPG 格式。图片分辨率将会压缩至 %{dimensions}px + avatar: 支持WEBP、PNG、GIF 或 JPG。最大 %{size}。将缩小到 %{dimensions}px bot: 来自这个账户的绝大多数操作都是自动进行的,并且可能无人监控 context: 过滤器的应用环境 current_password: 为了安全起见,请输入当前账号的密码 current_username: 请输入当前账号的用户名以确认 digest: 仅在你长时间未登录,且收到了私信时发送 email: 我们会向你发送一封确认邮件 - header: 文件大小限制 %{size},只支持 PNG、GIF 或 JPG 格式。图片分辨率将会压缩至 %{dimensions}px + header: 支持WEBP、PNG、GIF 或 JPG。最大 %{size}。将缩小到 %{dimensions}px inbox_url: 从你想要使用的中继站的主页上复制 URL irreversible: 已过滤的嘟文会不可逆转地消失,即便移除过滤器之后也一样 locale: 用户界面、电子邮件和推送通知中使用的语言 diff --git a/config/locales/simple_form.zh-HK.yml b/config/locales/simple_form.zh-HK.yml index ad963b32b6..6fa052082e 100644 --- a/config/locales/simple_form.zh-HK.yml +++ b/config/locales/simple_form.zh-HK.yml @@ -39,14 +39,12 @@ zh-HK: text: 你每次只能提出一次申訴 defaults: autofollow: 通過邀請網址註冊的用戶將會自動關注你 - avatar: 支援 PNG, GIF 或 JPG 圖片,檔案最大為 %{size},會縮裁成 %{dimensions}px bot: 這個帳號是機械人,所做的事情可能沒有經人為監察 context: 過濾器應該套用的一項或多項條件 current_password: 基於保安緣故,請輸入目前帳號的密碼 current_username: 請輸入目前帳戶的使用者名稱以確認 digest: 僅在你長時間未登錄,且收到了私信時發送 email: 你將收到一封確認電郵 - header: 支援 PNG, GIF 或 JPG 圖片,檔案最大為 %{size},會縮裁成 %{dimensions}px inbox_url: 在你想要使用的中繼站首頁,複製它的網址 irreversible: 文章過濾是不可還原的,即使日後過濾器被移除,也無法重新看到被它濾走的文章 locale: 使用者介面、電郵和通知的語言 diff --git a/config/locales/simple_form.zh-TW.yml b/config/locales/simple_form.zh-TW.yml index a31ad5eb11..c83a7be75a 100644 --- a/config/locales/simple_form.zh-TW.yml +++ b/config/locales/simple_form.zh-TW.yml @@ -39,14 +39,14 @@ zh-TW: text: 您只能對警示提出一次申訴 defaults: autofollow: 通過邀請網址註冊的使用者將自動跟隨您 - avatar: 支援 PNG、GIF 或 JPG 圖片格式,檔案最大為 %{size},會等比例縮減至 %{dimensions} 像素 + avatar: 支援 WEBP、PNG、GIF 或 JPG 圖片格式,檔案最大為 %{size}。將等比例縮減至 %{dimensions} 像素 bot: 此帳號主要執行自動化操作且可能未受人為監控 context: 此過濾器應套用於以下一項或多項情境 current_password: 因安全因素,請輸入目前帳號的密碼 current_username: 請輸入目前帳號的使用者名稱以確認 digest: 僅於您長時間未登入且於未登入期間收到私訊時傳送 email: 您將收到一封確認電子郵件 - header: 支援 PNG、GIF 或 JPG 圖片格式,檔案最大為 %{size},會等比例縮減至 %{dimensions} 像素 + header: 支援 WEBP、PNG、GIF 或 JPG 圖片格式,檔案最大為 %{size}。將等比例縮減至 %{dimensions} 像素 inbox_url: 從您想要使用的中繼首頁複製網址 irreversible: 已過濾的嘟文將會不可逆地消失,即便之後移除過濾器也一樣 locale: 使用者介面、電子郵件與推播通知的語言 @@ -200,12 +200,12 @@ zh-TW: password: 密碼 phrase: 關鍵字或片語 setting_advanced_layout: 啟用進階網頁介面 - setting_aggregate_reblogs: 時間軸中的群組轉嘟 + setting_aggregate_reblogs: 於時間軸中不重複顯示轉嘟 setting_always_send_emails: 總是發送電子郵件通知 setting_auto_play_gif: 自動播放 GIF 動畫 setting_boost_modal: 轉嘟前先詢問我 setting_default_language: 嘟文語言 - setting_default_privacy: 嘟文可見範圍 + setting_default_privacy: 嘟文隱私設定 setting_default_sensitive: 總是將媒體標記為敏感內容 setting_delete_modal: 刪除嘟文前先詢問我 setting_disable_swiping: 停用滑動手勢 diff --git a/config/locales/sk.yml b/config/locales/sk.yml index 20df763463..d97cfac0ea 100644 --- a/config/locales/sk.yml +++ b/config/locales/sk.yml @@ -88,7 +88,7 @@ sk: remote: Federované title: Umiestnenie login_status: Stav prihlásenia - media_attachments: Prílohy + media_attachments: Mediálne prílohy memorialize: Zmeň na "Navždy budeme spomínať" memorialized: Spomienka na memorialized_msg: Úspešne zmenené %{username} na spomienkové konto @@ -175,6 +175,7 @@ sk: approve_user: Odobri užívateľa assigned_to_self_report: Priraď hlásenie change_email_user: Zmeň email pre užívateľa + change_role_user: Zmeň užívateľskú rolu confirm_user: Potvrď užívateľa create_account_warning: Vytvor výstrahu create_announcement: Vytvor oboznámenie @@ -251,15 +252,22 @@ sk: enable_user_html: "%{name} povolil/a prihlásenie pre používateľa %{target}" memorialize_account_html: "%{name} zmenil/a účet %{target} na pamätnú stránku" reject_appeal_html: "%{name} zamietol/la námietku moderovacieho rozhodnutia od %{target}" + remove_avatar_user_html: "%{name} vymazal/a %{target}/ov/in avatar" reopen_report_html: "%{name} znovu otvoril/a nahlásenie %{target}" resend_user_html: "%{name} znovu odoslal/a potvrdzovací email pre %{target}" reset_password_user_html: "%{name} resetoval/a heslo používateľa %{target}" resolve_report_html: "%{name} vyriešil/a nahlásenie %{target}" - sensitive_account_html: "%{name} označil médium od %{target} za chúlostivé" + sensitive_account_html: "%{name} označil/a médium od %{target} za chúlostivé" silence_account_html: "%{name} obmedzil/a účet %{target}" suspend_account_html: "%{name} zablokoval/a účet používateľa %{target}" unassigned_report_html: "%{name} odobral/a report od %{target}" + unsensitive_account_html: "%{name} odznačil/a médium od %{target} ako chúlostivé" unsuspend_account_html: "%{name} spojazdnil/a účet %{target}" + update_announcement_html: "%{name} aktualizoval/a oboznámenie %{target}" + update_custom_emoji_html: "%{name} aktualizoval/a emotikonu %{target}" + update_domain_block_html: "%{name} aktualizoval/a blokovanie domény pre %{target}" + update_ip_block_html: "%{name} zmenil/a pravidlo pre IP %{target}" + update_status_html: "%{name} aktualizoval/a príspevok od %{target}" update_user_role_html: "%{name} zmenil/a rolu pre %{target}" deleted_account: zmazaný účet empty: Žiadne záznamy nenájdené. @@ -363,6 +371,7 @@ sk: silence: Obmedz suspend: Pozastav title: Nové blokovanie domény + no_domain_block_selected: Žiadne blokovanie domén nebolo zmenené, keďže žiadne neboli vybrané not_permitted: Nemáš povolenie na vykonanie tohto kroku obfuscate: Zatemniť názov domény private_comment: Súkromný komentár @@ -625,6 +634,7 @@ sk: approved: Pre registráciu je nutné povolenie none: Nikto sa nemôže registrovať open: Ktokoľvek sa môže zaregistrovať + warning_hint: Odporúčame používať "Pre registráciu je potrebné schválenie", pokiaľ si niesi istý/á, že tvoj moderovací tím vie zvládnuť spam a záškodné registrácie včas. title: Nastavenia servera site_uploads: delete: Vymaž nahratý súbor @@ -730,6 +740,8 @@ sk: enabled: Aktívne status: Stav admin_mailer: + auto_close_registrations: + subject: Registrácie na %{instance} boli automaticky prepnuté na vyžadujúce schválenie new_appeal: actions: none: varovanie @@ -783,6 +795,7 @@ sk: captcha_confirmation: title: Bezpečnostná kontrola confirmations: + clicking_this_link: kliknutím na tento odkaz login_link: prihlás sa welcome_title: Vitaj, %{name}! delete_account: Vymaž účet @@ -1277,9 +1290,6 @@ sk: welcome: edit_profile_action: Nastav profil explanation: Tu nájdeš nejaké tipy do začiatku - final_action: Začni prispievať - full_handle: Adresa tvojho profilu v celom formáte - full_handle_hint: Toto je čo musíš dať vedieť svojím priateľom aby ti mohli posielať správy, alebo ťa následovať z iného serveru. subject: Vitaj na Mastodone title: Vitaj na palube, %{name}! users: diff --git a/config/locales/sl.yml b/config/locales/sl.yml index ba707f49eb..c9b2343b69 100644 --- a/config/locales/sl.yml +++ b/config/locales/sl.yml @@ -795,6 +795,7 @@ sl: disabled: Nikomur users: Prijavljenim krajevnim uporabnikom registrations: + moderation_recommandation: Preden prijave odprete za vse poskrbite, da imate v ekipi moderatorjev zadosti aktivnih članov. preamble: Nadzirajte, kdo lahko ustvari račun na vašem strežniku. title: Registracije registrations_mode: @@ -802,6 +803,7 @@ sl: approved: Potrebna je odobritev za prijavo none: Nihče se ne more prijaviti open: Vsakdo se lahko prijavi + warning_hint: Priporočamo uporabo možnosti »Potrebna je odobritev za prijavo«, razen če ste gotovi, da se bo vaša ekipa moderatorjev res zmožna hitro odzvati na neželene vsebine in škodoželjne prijave. security: authorized_fetch: Od drugih strežnikov v federaciji zahtevaj overitev pristnosti authorized_fetch_hint: Zahtevanje overitve pristnosti od drugih strežnikov v federaciji omogoči strožje uveljavljanje uporabniških in strežniških blokad. Vendar je cena za to počasnejše delovanje, zmanjšanje dosega vaših odgovorov in morebitne težave z združljivostjo z nekaterimi storitvami v federaciji. Poleg tega to odločenim akterjem ne bo preprečilo pridobivanja vaših javnih objav in računov. @@ -1002,6 +1004,9 @@ sl: title: Spletne zanke webhook: Spletna zanka admin_mailer: + auto_close_registrations: + body: Zaradi pomanjkanja moderiranja v zadnjem času, se je za strežnik %{instance} samodejno vklopilo ročno preverjanje in potrjevanje prijav. S tem se prepreči morebitno zlorabo strežnika %{instance}. Prijave lahko kadarkoli spet spremenite nazaj v odprte. + subject: Za strežnik %{instance} se je samodejno vklopilo ročno potrjevanje prijav new_appeal: actions: delete_statuses: brisanje njihovih objav, @@ -1598,6 +1603,9 @@ sl: errors: limit_reached: Dosežena omejitev različnih reakcij/odzivov unrecognized_emoji: ni prepoznan emotikon + redirects: + prompt: Če zaupate tej povezavi, jo kliknite za nadaljevanje. + title: Zapuščate %{instance}. relationships: activity: Dejavnost računa confirm_follow_selected_followers: Ali ste prepričani, da želite slediti izbranim sledilcem? @@ -1854,6 +1862,12 @@ sl: extra: Zdaj je na voljo za prenos! subject: Vaš arhiv je pripravljen za prenos title: Prevzem arhiva + failed_2fa: + details: 'Tukaj so podrobnosti poskusa prijave:' + explanation: Nekdo se je poskusil prijaviti v vaš račun, vendar ni podal veljavnega drugega faktorja preverjanja pristnosti. + further_actions_html: Če to niste bili vi, priporočamo, da takoj %{action}, ker je lahko ogrožena varnost. + subject: Napaka preverjanja pristnosti z drugim faktorjem + title: Preverjanje pristnosti z drugim faktorjem je spodletelo suspicious_sign_in: change_password: spremenite svoje geslo details: 'Tukaj so podrobnosti prijave:' @@ -1896,10 +1910,6 @@ sl: edit_profile_action: Nastavitve profila edit_profile_step: Profil lahko prilagodite tako, da naložite sliko profila, spremenite pojavno ime in drugo. Lahko izberete, da želite pregledati nove sledilce, preden jim dovolite sledenje. explanation: Tu je nekaj nasvetov za začetek - final_action: Začnite objavljati - final_step: 'Začnite objavljati! Tudi brez sledilcev bodo vaše javne objave videli drugi, npr. na krajevni časovnici ali v ključnikih. Morda se želite predstaviti s ključnikom #introductions.' - full_handle: Vaša polna ročica - full_handle_hint: To bi povedali svojim prijateljem, da vam lahko pošljejo sporočila ali vam sledijo iz drugega strežnika. subject: Dobrodošli na Mastodon title: Dobrodošli, %{name}! users: diff --git a/config/locales/sq.yml b/config/locales/sq.yml index 3dd4731209..4293271bb2 100644 --- a/config/locales/sq.yml +++ b/config/locales/sq.yml @@ -188,7 +188,7 @@ sq: create_user_role: Krijoni Rol demote_user: Zhgradoje Përdoruesin destroy_announcement: Fshije Lajmërimin - destroy_canonical_email_block: Fshi Bllokim El-esh + destroy_canonical_email_block: Fshi Bllokim Email-esh destroy_custom_emoji: Fshi Emotikon Vetjak destroy_domain_allow: Fshi Lejim Përkatësie destroy_domain_block: Fshi Bllokim Përkatësie @@ -283,7 +283,7 @@ sq: unsuspend_account_html: "%{name} hoqi pezullimin për llogarinë e %{target}" update_announcement_html: "%{name} përditësoi lajmërimin %{target}" update_custom_emoji_html: "%{name} përditësoi emoxhin %{target}" - update_domain_block_html: "%{name} përditësoi bllokimin e përkatësish për %{target}" + update_domain_block_html: "%{name} përditësoi bllokim përkatësish për %{target}" update_ip_block_html: "%{name} ndryshoi rregull për IP-në %{target}" update_status_html: "%{name} përditësoi gjendjen me %{target}" update_user_role_html: "%{name} ndryshoi rolin për %{target}" @@ -764,6 +764,7 @@ sq: disabled: Për askënd users: Për përdorues vendorë që kanë bërë hyrjen registrations: + moderation_recommandation: Ju lutemi, sigurohuni si keni një ekip adekuat dhe reagues moderimi, përpara se të hapni regjistrimet për këdo! preamble: Kontrolloni cilët mund të krijojnë llogari në shërbyesin tuaj. title: Regjistrime registrations_mode: @@ -771,6 +772,7 @@ sq: approved: Për regjistrim, lypset miratimi none: S’mund të regjistrohet ndokush open: Mund të regjistrohet gjithkush + warning_hint: Rekomandojmë përdorimin e “Për regjistrim lypset miratim”. veç nëse jeni i bindur se ekipi juaj i moderimit mund të trajtojë në kohë mesazhe të padëshiruar dhe regjistrime dashakeqe. security: authorized_fetch: Kërko doemos mirëfilltësim prej shërbyes të federuar authorized_fetch_hint: Kërkimi doemos i kryerjes së mirëfilltësimit për shërbyes të federuar aktivizon detyrim më strikt të bllokimeve si në shkallë përdoruesi, ashtu edhe në shkallë shërbyesi. Por kjo vjen me koston e një keqësimi të funksionimit, redukton përhapjen e përgjigjeve tuaja dhe mund të sjellë probleme përputhshmërie me disa shërbime të federuara. Veç kësaj, kjo s’do t’ua pengojë, aktorëve vënë kësaj, të sjellin postimet dhe llogaritë tuaja publike. @@ -962,6 +964,9 @@ sq: title: Webhook-ë webhook: Webhook admin_mailer: + auto_close_registrations: + body: Për shkak mungese veprimtarie moderatori së fundi, regjistrimet te %{instance} janë kaluar automatikisht të kërkojnë shqyrtim dorazi, për të penguar përdorimin e %{instance} si një platformë për aktorë të këqij. Mund të kaloni kurdo te regjistrime të hapura. + subject: Regjistrimet te %{instance} janë kaluar automatikisht të kërkojnë miratim new_appeal: actions: delete_statuses: fshirje e postimeve të tij @@ -1837,10 +1842,6 @@ sq: edit_profile_action: Ujdisje profili edit_profile_step: Profilin tuaj mund ta përshtatni duke ngarkuar një figurë, duke ndryshuar emrin tuaj në ekran, etj. Mund të zgjidhni të shqyrtoni ndjekës të rinj, para se të jenë lejuar t’ju ndjekin. explanation: Ja disa ndihmëza, sa për t’ia filluar - final_action: Filloni të postoni - final_step: 'Filloni të postoni! Edhe pa ndjekës, postimet tuaja publike mund të shihen nga të tjerët, për shembull, në rrjedhën kohore vendore, ose në hashtag-ë. Mund të doni të prezantoni veten përmes hashtag-ut #introductions.' - full_handle: Identifikuesi juaj i plotë - full_handle_hint: Kjo është ajo çka do të duhej t’u tregonit shokëve tuaj, që të mund t’ju dërgojnë mesazhe ose t’ju ndjekin nga një shërbyes tjetër. subject: Mirë se vini te Mastodon-i title: Mirë se vini, %{name}! users: diff --git a/config/locales/sr-Latn.yml b/config/locales/sr-Latn.yml index b55b6e0d19..a1f6df067f 100644 --- a/config/locales/sr-Latn.yml +++ b/config/locales/sr-Latn.yml @@ -1873,10 +1873,6 @@ sr-Latn: edit_profile_action: Podesi nalog edit_profile_step: Možete prilagoditi svoj profil tako što ćete postaviti profilnu sliku, promeniti ime za prikaz i tako dalje. Možete dati saglasnost da pregledate nove pratioce pre nego što im dozvolite da Vas zaprate. explanation: Evo nekoliko saveta za početak - final_action: Počnite objavljivati - final_step: 'Počnite da objavljujete! Čak i bez pratilaca, Vaše javne objave su vidljive drugim ljudima, na primer na lokalnoj vremenskoj liniji ili u heš oznakama. Možda želite da se predstavite sa heš oznakom #introductions ili #predstavljanja.' - full_handle: Vaš pun nadimak - full_handle_hint: Ovo biste rekli svojim prijateljima kako bi vam oni poslali poruku, ili zapratili sa druge instance. subject: Dobro došli na Mastodon title: Dobro došli, %{name}! users: diff --git a/config/locales/sr.yml b/config/locales/sr.yml index 8de7c90e73..494b41a754 100644 --- a/config/locales/sr.yml +++ b/config/locales/sr.yml @@ -1781,8 +1781,8 @@ sr: does_not_match_previous_name: не поклапа се са претходним именом themes: contrast: Велики контраст - default: Mastodon (тамно) - mastodon-light: Mastodon (светло) + default: Mastodon (тамна) + mastodon-light: Mastodon (светла) time: formats: default: "%d %b %Y, %H:%M" @@ -1873,10 +1873,6 @@ sr: edit_profile_action: Подеси налог edit_profile_step: Можете прилагодити свој профил тако што ћете поставити профилну слику, променити име за приказ и тако даље. Можете дати сагласност да прегледате нове пратиоце пре него што им дозволите да Вас запрате. explanation: Ево неколико савета за почетак - final_action: Почните објављивати - final_step: 'Почните да објављујете! Чак и без пратилаца, Ваше јавне објаве су видљиве другим људима, на пример на локалној временској линији или у хеш ознакама. Можда желите да се представите са хеш ознаком #introductions или #представљања.' - full_handle: Ваш пун надимак - full_handle_hint: Ово бисте рекли својим пријатељима како би вам они послали поруку, или запратили са друге инстанце. subject: Добро дошли на Mastodon title: Добро дошли, %{name}! users: diff --git a/config/locales/sv.yml b/config/locales/sv.yml index deac7cc638..d0f3994b4e 100644 --- a/config/locales/sv.yml +++ b/config/locales/sv.yml @@ -1837,10 +1837,6 @@ sv: edit_profile_action: Profilinställning edit_profile_step: Du kan anpassa din profil genom att ladda upp en profilbild, ändra ditt visningsnamn med mera. Du kan välja att granska nya följare innan de får följa dig. explanation: Här är några tips för att komma igång - final_action: Börja göra inlägg - final_step: 'Börja skriv inlägg! Även utan följare kan dina offentliga inlägg ses av andra, exempelvis på den lokala tidslinjen eller i hashtaggar. Du kanske vill introducera dig själv under hashtaggen #introduktion eller #introductions.' - full_handle: Ditt fullständiga användarnamn/mastodonadress - full_handle_hint: Det här är vad du skulle berätta för dina vänner så att de kan meddela eller följa dig från en annan instans. subject: Välkommen till Mastodon title: Välkommen ombord, %{name}! users: diff --git a/config/locales/th.yml b/config/locales/th.yml index ac5cfbacf5..5253dd6b78 100644 --- a/config/locales/th.yml +++ b/config/locales/th.yml @@ -23,11 +23,11 @@ th: admin: account_actions: action: ทำการกระทำ - title: ทำการกระทำการควบคุม %{acct} + title: ทำการกระทำการกลั่นกรองต่อ %{acct} account_moderation_notes: create: เขียนหมายเหตุ - created_msg: สร้างหมายเหตุการควบคุมสำเร็จ! - destroyed_msg: ทำลายหมายเหตุการควบคุมสำเร็จ! + created_msg: สร้างหมายเหตุการกลั่นกรองสำเร็จ! + destroyed_msg: ทำลายหมายเหตุการกลั่นกรองสำเร็จ! accounts: add_email_domain_block: ปิดกั้นโดเมนอีเมล approve: อนุมัติ @@ -93,8 +93,8 @@ th: pending: รอดำเนินการ silenced: จำกัดอยู่ suspended: ระงับอยู่ - title: การควบคุม - moderation_notes: หมายเหตุการควบคุม + title: การกลั่นกรอง + moderation_notes: หมายเหตุการกลั่นกรอง most_recent_activity: กิจกรรมล่าสุด most_recent_ip: IP ล่าสุด no_account_selected: ไม่มีการเปลี่ยนแปลงบัญชีเนื่องจากไม่มีการเลือก @@ -226,7 +226,7 @@ th: update_status: อัปเดตโพสต์ update_user_role: อัปเดตบทบาท actions: - approve_appeal_html: "%{name} ได้อนุมัติการอุทธรณ์การตัดสินใจในการควบคุมจาก %{target}" + approve_appeal_html: "%{name} ได้อนุมัติการอุทธรณ์การตัดสินใจในการกลั่นกรองจาก %{target}" approve_user_html: "%{name} ได้อนุมัติการลงทะเบียนจาก %{target}" assigned_to_self_report_html: "%{name} ได้มอบหมายรายงาน %{target} ให้กับตนเอง" change_email_user_html: "%{name} ได้เปลี่ยนที่อยู่อีเมลของผู้ใช้ %{target}" @@ -263,7 +263,7 @@ th: enable_user_html: "%{name} ได้เปิดใช้งานการเข้าสู่ระบบสำหรับผู้ใช้ %{target}" memorialize_account_html: "%{name} ได้เปลี่ยนบัญชีของ %{target} เป็นหน้าอนุสรณ์" promote_user_html: "%{name} ได้เลื่อนขั้นผู้ใช้ %{target}" - reject_appeal_html: "%{name} ได้ปฏิเสธการอุทธรณ์การตัดสินใจในการควบคุมจาก %{target}" + reject_appeal_html: "%{name} ได้ปฏิเสธการอุทธรณ์การตัดสินใจในการกลั่นกรองจาก %{target}" reject_user_html: "%{name} ได้ปฏิเสธการลงทะเบียนจาก %{target}" remove_avatar_user_html: "%{name} ได้เอาภาพประจำตัวของ %{target} ออก" reopen_report_html: "%{name} ได้เปิดรายงาน %{target} ใหม่" @@ -395,7 +395,7 @@ th: import: นำเข้า new: create: สร้างการปิดกั้น - hint: การปิดกั้นโดเมนจะไม่ป้องกันการสร้างรายการบัญชีในฐานข้อมูล แต่จะนำไปใช้วิธีการควบคุมที่เฉพาะเจาะจงกับบัญชีเหล่านั้นย้อนหลังและโดยอัตโนมัติ + hint: การปิดกั้นโดเมนจะไม่ป้องกันการสร้างรายการบัญชีในฐานข้อมูล แต่จะนำไปใช้วิธีการกลั่นกรองที่เฉพาะเจาะจงกับบัญชีเหล่านั้นย้อนหลังและโดยอัตโนมัติ severity: desc_html: "จำกัด จะทำให้โพสต์จากบัญชีที่โดเมนนี้ไม่ปรากฏแก่ใครก็ตามที่ไม่ได้กำลังติดตามเขา ระงับ จะเอาข้อมูลเนื้อหา, สื่อ และโปรไฟล์ทั้งหมดสำหรับบัญชีของโดเมนนี้ออกจากเซิร์ฟเวอร์ของคุณ ใช้ ไม่มี หากคุณแค่ต้องการปฏิเสธไฟล์สื่อ" noop: ไม่มี @@ -407,7 +407,7 @@ th: obfuscate: ทำให้ชื่อโดเมนคลุมเครือ obfuscate_hint: ทำให้ชื่อโดเมนในรายการคลุมเครือบางส่วนหากมีการเปิดใช้งานการประกาศรายการการจำกัดโดเมน private_comment: ความคิดเห็นส่วนตัว - private_comment_hint: ความคิดเห็นเกี่ยวกับการจำกัดโดเมนนี้สำหรับการใช้งานภายในโดยผู้ควบคุม + private_comment_hint: ความคิดเห็นเกี่ยวกับการจำกัดโดเมนนี้สำหรับการใช้งานภายในโดยผู้กลั่นกรอง public_comment: ความคิดเห็นสาธารณะ public_comment_hint: ความคิดเห็นเกี่ยวกับการจำกัดโดเมนนี้สำหรับสาธารณชนทั่วไป หากมีการเปิดใช้งานการประกาศรายการการจำกัดโดเมน reject_media: ปฏิเสธไฟล์สื่อ @@ -452,7 +452,7 @@ th: title: นำเข้าการปิดกั้นโดเมน no_file: ไม่ได้เลือกไฟล์ follow_recommendations: - description_html: "คำแนะนำการติดตามช่วยให้ผู้ใช้ใหม่ค้นหาเนื้อหาที่น่าสนใจได้อย่างรวดเร็ว เมื่อผู้ใช้ไม่ได้โต้ตอบกับผู้อื่นมากพอที่จะสร้างคำแนะนำการติดตามส่วนบุคคล จะแนะนำบัญชีเหล่านี้แทน จะคำนวณคำแนะนำใหม่เป็นประจำทุกวันจากบัญชีต่าง ๆ ที่มีการมีส่วนร่วมล่าสุดสูงสุดและจำนวนผู้ติดตามในเซิร์ฟเวอร์สูงสุดสำหรับภาษาที่กำหนด" + description_html: "คำแนะนำการติดตามช่วยให้ผู้ใช้ใหม่ค้นหาเนื้อหาที่น่าสนใจได้อย่างรวดเร็ว เมื่อผู้ใช้ไม่ได้โต้ตอบกับผู้อื่นมากพอที่จะสร้างคำแนะนำการติดตามเฉพาะบุคคล จะแนะนำบัญชีเหล่านี้แทน จะคำนวณคำแนะนำใหม่เป็นประจำทุกวันจากบัญชีต่าง ๆ ที่มีการมีส่วนร่วมล่าสุดสูงสุดและจำนวนผู้ติดตามในเซิร์ฟเวอร์สูงสุดสำหรับภาษาที่กำหนด" language: สำหรับภาษา status: สถานะ suppress: ระงับคำแนะนำการติดตาม @@ -512,7 +512,7 @@ th: moderation: all: ทั้งหมด limited: จำกัดอยู่ - title: การควบคุม + title: การกลั่นกรอง private_comment: ความคิดเห็นส่วนตัว public_comment: ความคิดเห็นสาธารณะ purge: ล้างข้อมูล @@ -587,7 +587,7 @@ th: add_to_report: เพิ่มข้อมูลเพิ่มเติมไปยังรายงาน are_you_sure: คุณแน่ใจหรือไม่? assign_to_self: มอบหมายให้ฉัน - assigned: ผู้ควบคุมที่ได้รับมอบหมาย + assigned: ผู้กลั่นกรองที่ได้รับมอบหมาย by_target_domain: โดเมนของบัญชีที่ได้รับการรายงาน cancel: ยกเลิก category: หมวดหมู่ @@ -596,7 +596,7 @@ th: none: ไม่มี comment_description_html: 'เพื่อให้ข้อมูลเพิ่มเติม %{name} ได้เขียน:' confirm: ยืนยัน - confirm_action: ยืนยันการกระทำการควบคุมต่อ @%{acct} + confirm_action: ยืนยันการกระทำการกลั่นกรองต่อ @%{acct} created_at: รายงานเมื่อ delete_and_resolve: ลบโพสต์ forwarded: ส่งต่อแล้ว @@ -613,7 +613,7 @@ th: delete: ลบ placeholder: อธิบายว่ามีการใช้การกระทำใด หรือการอัปเดตที่เกี่ยวข้องอื่นใด... title: หมายเหตุ - notes_description_html: ดูและฝากหมายเหตุถึงผู้ควบคุมอื่น ๆ และตัวคุณเองในอนาคต + notes_description_html: ดูและฝากหมายเหตุถึงผู้กลั่นกรองอื่น ๆ และตัวคุณเองในอนาคต processed_msg: 'ประมวลผลรายงาน #%{id} สำเร็จ' quick_actions_description_html: 'ดำเนินการอย่างรวดเร็วหรือเลื่อนลงเพื่อดูเนื้อหาที่รายงาน:' remote_user_placeholder: ผู้ใช้ระยะไกลจาก %{instance} @@ -644,7 +644,7 @@ th: preview_preamble_html: "@%{acct} จะได้รับคำเตือนโดยมีเนื้อหาดังต่อไปนี้:" record_strike_html: บันทึกการดำเนินการต่อ @%{acct} เพื่อช่วยให้คุณเลื่อนระดับการละเมิดในอนาคตจากบัญชีนี้ send_email_html: ส่งอีเมลคำเตือนถึง @%{acct} - warning_placeholder: การให้เหตุผลเพิ่มเติมที่ไม่จำเป็นสำหรับการกระทำการควบคุม + warning_placeholder: การให้เหตุผลเพิ่มเติมที่ไม่จำเป็นสำหรับการกระทำการกลั่นกรอง target_origin: จุดเริ่มต้นของบัญชีที่ได้รับการรายงาน title: รายงาน unassign: เลิกมอบหมาย @@ -660,7 +660,7 @@ th: administration: การดูแล devops: DevOps invites: คำเชิญ - moderation: การควบคุม + moderation: การกลั่นกรอง special: พิเศษ delete: ลบ description_html: ด้วย บทบาทผู้ใช้ คุณสามารถปรับแต่งว่าฟังก์ชันและพื้นที่ใดของ Mastodon ที่ผู้ใช้ของคุณสามารถเข้าถึง @@ -679,7 +679,7 @@ th: manage_announcements: จัดการประกาศ manage_announcements_description: อนุญาตให้ผู้ใช้จัดการประกาศในเซิร์ฟเวอร์ manage_appeals: จัดการการอุทธรณ์ - manage_appeals_description: อนุญาตให้ผู้ใช้ตรวจทานการอุทธรณ์ต่อการกระทำการควบคุม + manage_appeals_description: อนุญาตให้ผู้ใช้ตรวจทานการอุทธรณ์ต่อการกระทำการกลั่นกรอง manage_blocks: จัดการการปิดกั้น manage_blocks_description: อนุญาตให้ผู้ใช้ปิดกั้นผู้ให้บริการอีเมลและที่อยู่ IP manage_custom_emojis: จัดการอีโมจิที่กำหนดเอง @@ -689,7 +689,7 @@ th: manage_invites: จัดการคำเชิญ manage_invites_description: อนุญาตให้ผู้ใช้เรียกดูและปิดใช้งานลิงก์เชิญ manage_reports: จัดการรายงาน - manage_reports_description: อนุญาตให้ผู้ใช้ตรวจทานรายงานและทำการกระทำการควบคุมต่อรายงานเหล่านั้น + manage_reports_description: อนุญาตให้ผู้ใช้ตรวจทานรายงานและทำการกระทำการกลั่นกรองต่อรายงานเหล่านั้น manage_roles: จัดการบทบาท manage_roles_description: อนุญาตให้ผู้ใช้จัดการและกำหนดบทบาทที่ต่ำกว่าบทบาทของเขา manage_rules: จัดการกฎ @@ -701,7 +701,7 @@ th: manage_user_access: จัดการการเข้าถึงของผู้ใช้ manage_user_access_description: อนุญาตให้ผู้ใช้ปิดใช้งานการรับรองความถูกต้องด้วยสองปัจจัยของผู้ใช้อื่น เปลี่ยนที่อยู่อีเมลของเขา และตั้งรหัสผ่านของเขาใหม่ manage_users: จัดการผู้ใช้ - manage_users_description: อนุญาตให้ผู้ใช้ดูรายละเอียดของผู้ใช้อื่น ๆ และทำการกระทำการควบคุมต่อผู้ใช้เหล่านั้น + manage_users_description: อนุญาตให้ผู้ใช้ดูรายละเอียดของผู้ใช้อื่น ๆ และทำการกระทำการกลั่นกรองต่อผู้ใช้เหล่านั้น manage_webhooks: จัดการเว็บฮุค manage_webhooks_description: อนุญาตให้ผู้ใช้ตั้งค่าเว็บฮุคสำหรับเหตุการณ์การดูแล view_audit_log: ดูรายการบันทึกการตรวจสอบ @@ -721,7 +721,7 @@ th: settings: about: manage_rules: จัดการกฎของเซิร์ฟเวอร์ - preamble: ให้ข้อมูลเชิงลึกเกี่ยวกับวิธีที่เซิร์ฟเวอร์ได้รับการดำเนินงาน ควบคุม ได้รับทุน + preamble: ให้ข้อมูลเชิงลึกเกี่ยวกับวิธีที่เซิร์ฟเวอร์ได้รับการดำเนินงาน กลั่นกรอง ได้รับทุน rules_hint: มีพื้นที่เฉพาะสำหรับกฎที่คาดหวังให้ผู้ใช้ของคุณปฏิบัติตาม title: เกี่ยวกับ appearance: @@ -753,6 +753,7 @@ th: disabled: ให้กับไม่มีใคร users: ให้กับผู้ใช้ในเซิร์ฟเวอร์ที่เข้าสู่ระบบ registrations: + moderation_recommandation: โปรดตรวจสอบให้แน่ใจว่าคุณมีทีมการกลั่นกรองที่เพียงพอและมีปฏิกิริยาตอบสนองก่อนที่คุณจะเปิดการลงทะเบียนให้กับทุกคน! preamble: ควบคุมผู้ที่สามารถสร้างบัญชีในเซิร์ฟเวอร์ของคุณ title: การลงทะเบียน registrations_mode: @@ -760,6 +761,7 @@ th: approved: ต้องการการอนุมัติสำหรับการลงทะเบียน none: ไม่มีใครสามารถลงทะเบียน open: ใครก็ตามสามารถลงทะเบียน + warning_hint: เราแนะนำให้ใช้ “ต้องการการอนุมัติสำหรับการลงทะเบียน” เว้นแต่คุณมั่นใจว่าทีมการกลั่นกรองของคุณสามารถจัดการกับสแปมและการลงทะเบียนที่เป็นอันตรายได้อย่างทันท่วงที security: authorized_fetch: ต้องมีการรับรองความถูกต้องจากเซิร์ฟเวอร์ที่ติดต่อกับภายนอก authorized_fetch_hint: การต้องการการรับรองความถูกต้องจากเซิร์ฟเวอร์ที่ติดต่อกับภายนอกทำให้การบังคับใช้การปิดกั้นทั้งระดับผู้ใช้และระดับเซิร์ฟเวอร์เข้มงวดขึ้น อย่างไรก็ตาม สิ่งนี้มาพร้อมกับต้นทุนที่ต้องแลกด้วยผลเสียด้านประสิทธิภาพ ลดการเข้าถึงการตอบกลับของคุณ และอาจก่อให้เกิดปัญหาความเข้ากันได้กับบริการที่ติดต่อกับภายนอกบางอย่าง นอกจากนี้ สิ่งนี้จะไม่ป้องกันตัวดำเนินการเฉพาะจากการดึงข้อมูลโพสต์และบัญชีสาธารณะของคุณ @@ -771,7 +773,7 @@ th: destroyed_msg: ลบการอัปโหลดไซต์สำเร็จ! software_updates: critical_update: สำคัญ — โปรดอัปเดตอย่างรวดเร็ว - description: ขอแนะนำให้ทำให้การติดตั้ง Mastodon ของคุณทันสมัยอยู่เสมอเพื่อรับประโยชน์จากการแก้ไขและคุณลักษณะล่าสุด ยิ่งไปกว่านั้น บางครั้งก็เป็นสิ่งสำคัญที่จะอัปเดต Mastodon ในเวลาที่เหมาะสมเพื่อหลีกเลี่ยงปัญหาความปลอดภัย ด้วยเหตุผลเหล่านี้ Mastodon จึงตรวจสอบการอัปเดตทุก 30 นาที และจะแจ้งเตือนคุณตามการกำหนดลักษณะการแจ้งเตือนอีเมลของคุณ + description: ขอแนะนำให้ทำให้การติดตั้ง Mastodon ของคุณทันสมัยอยู่เสมอเพื่อรับประโยชน์จากการแก้ไขและคุณลักษณะล่าสุด ยิ่งไปกว่านั้น บางครั้งก็เป็นสิ่งสำคัญที่จะอัปเดต Mastodon อย่างทันท่วงทีเพื่อหลีกเลี่ยงปัญหาความปลอดภัย ด้วยเหตุผลเหล่านี้ Mastodon จึงตรวจสอบการอัปเดตทุก 30 นาที และจะแจ้งเตือนคุณตามการกำหนดลักษณะการแจ้งเตือนอีเมลของคุณ documentation_link: เรียนรู้เพิ่มเติม release_notes: บันทึกประจำรุ่น title: การอัปเดตที่พร้อมใช้งาน @@ -948,6 +950,9 @@ th: title: เว็บฮุค webhook: เว็บฮุค admin_mailer: + auto_close_registrations: + body: เนื่องจากการขาดกิจกรรมของผู้กลั่นกรองล่าสุด จึงมีการสลับการลงทะเบียนใน %{instance} เป็นการต้องการการตรวจทานด้วยตนเองโดยอัตโนมัติ เพื่อป้องกันไม่ให้มีการใช้ %{instance} เป็นแพลตฟอร์มสำหรับผู้ไม่ประสงค์ดี คุณสามารถสลับการลงทะเบียนกลับเป็นการลงทะเบียนแบบเปิดเมื่อใดก็ได้ + subject: มีการสลับการลงทะเบียนสำหรับ %{instance} เป็นการต้องการการอนุมัติโดยอัตโนมัติ new_appeal: actions: delete_statuses: เพื่อลบโพสต์ของเขา @@ -957,9 +962,9 @@ th: sensitive: เพื่อทำเครื่องหมายบัญชีของเขาว่าละเอียดอ่อน silence: เพื่อจำกัดบัญชีของเขา suspend: เพื่อระงับบัญชีของเขา - body: "%{target} กำลังอุทธรณ์การตัดสินใจในการควบคุมโดย %{action_taken_by} จาก %{date} ซึ่งเป็น %{type} เขาเขียนว่า:" - next_steps: คุณสามารถอนุมัติการอุทธรณ์เพื่อเลิกทำการตัดสินใจในการควบคุม หรือเพิกเฉยต่อการอุทธรณ์ - subject: "%{username} กำลังอุทธรณ์การตัดสินใจในการควบคุมใน %{instance}" + body: "%{target} กำลังอุทธรณ์การตัดสินใจในการกลั่นกรองโดย %{action_taken_by} จาก %{date} ซึ่งก็คือ %{type} เขาเขียนว่า:" + next_steps: คุณสามารถอนุมัติการอุทธรณ์เพื่อเลิกทำการตัดสินใจในการกลั่นกรอง หรือเพิกเฉยต่อการอุทธรณ์ + subject: "%{username} กำลังอุทธรณ์การตัดสินใจในการกลั่นกรองใน %{instance}" new_critical_software_updates: body: มีการปล่อยรุ่น Mastodon สำคัญใหม่ คุณอาจต้องการอัปเดตโดยเร็วที่สุดเท่าที่จะเป็นไปได้! subject: การอัปเดต Mastodon สำคัญพร้อมใช้งานสำหรับ %{instance}! @@ -1067,8 +1072,8 @@ th: accept: ยอมรับ back: ย้อนกลับ invited_by: 'คุณสามารถเข้าร่วม %{domain} ได้ด้วยคำเชิญที่คุณได้รับจาก:' - preamble: มีการตั้งและบังคับใช้กฎโดยผู้ควบคุมของ %{domain} - preamble_invited: ก่อนที่คุณจะดำเนินการต่อ โปรดพิจารณากฎพื้นฐานที่ตั้งโดยผู้ควบคุมของ %{domain} + preamble: มีการตั้งและบังคับใช้กฎโดยผู้กลั่นกรองของ %{domain} + preamble_invited: ก่อนที่คุณจะดำเนินการต่อ โปรดพิจารณากฎพื้นฐานที่ตั้งโดยผู้กลั่นกรองของ %{domain} title: กฎพื้นฐานบางประการ title_invited: คุณได้รับการเชิญ security: ความปลอดภัย @@ -1083,7 +1088,7 @@ th: preamble_html: เข้าสู่ระบบด้วยข้อมูลประจำตัว %{domain} ของคุณ หากบัญชีของคุณได้รับการโฮสต์ในเซิร์ฟเวอร์อื่น คุณจะไม่สามารถเข้าสู่ระบบได้ที่นี่ title: เข้าสู่ระบบ %{domain} sign_up: - manual_review: การลงทะเบียนใน %{domain} จะผ่านการตรวจทานด้วยตนเองโดยผู้ควบคุมของเรา เพื่อช่วยให้เราประมวลผลการลงทะเบียนของคุณ เขียนสักนิดเกี่ยวกับตัวคุณเองและเหตุผลที่คุณต้องการบัญชีใน %{domain} + manual_review: การลงทะเบียนใน %{domain} จะผ่านการตรวจทานด้วยตนเองโดยผู้กลั่นกรองของเรา เพื่อช่วยให้เราประมวลผลการลงทะเบียนของคุณ เขียนสักนิดเกี่ยวกับตัวคุณเองและเหตุผลที่คุณต้องการบัญชีใน %{domain} preamble: ด้วยบัญชีในเซิร์ฟเวอร์ Mastodon นี้ คุณจะสามารถติดตามบุคคลอื่นใดในเครือข่าย โดยไม่คำนึงถึงที่ซึ่งบัญชีของเขาได้รับการโฮสต์ title: มาตั้งค่าของคุณใน %{domain} กันเลย status: @@ -1364,7 +1369,7 @@ th: webauthn: กุญแจความปลอดภัย description_html: หากคุณเห็นกิจกรรมที่คุณไม่รู้จัก พิจารณาเปลี่ยนรหัสผ่านของคุณและเปิดใช้งานการรับรองความถูกต้องด้วยสองปัจจัย empty: ไม่มีประวัติการรับรองความถูกต้อง - failed_sign_in_html: ความพยายามลงชื่อเข้าด้วย %{method} จาก %{ip} (%{browser}) ล้มเหลว + failed_sign_in_html: ความพยายามในการลงชื่อเข้าด้วย %{method} จาก %{ip} (%{browser}) ล้มเหลว successful_sign_in_html: ลงชื่อเข้าด้วย %{method} จาก %{ip} (%{browser}) สำเร็จ title: ประวัติการรับรองความถูกต้อง mail_subscriptions: @@ -1419,7 +1424,7 @@ th: other_data: จะไม่ย้ายข้อมูลอื่น ๆ โดยอัตโนมัติ redirect: จะอัปเดตโปรไฟล์ของบัญชีปัจจุบันของคุณด้วยข้อสังเกตการเปลี่ยนเส้นทางและจะไม่รวมอยู่ในการค้นหา moderation: - title: การควบคุม + title: การกลั่นกรอง move_handler: carry_blocks_over_text: ผู้ใช้นี้ได้ย้ายจาก %{acct} ซึ่งคุณได้ปิดกั้น carry_mutes_over_text: ผู้ใช้นี้ได้ย้ายจาก %{acct} ซึ่งคุณได้ซ่อน @@ -1520,6 +1525,9 @@ th: errors: limit_reached: ถึงขีดจำกัดของการตอบสนองต่าง ๆ แล้ว unrecognized_emoji: ไม่ใช่อีโมจิที่รู้จัก + redirects: + prompt: หากคุณเชื่อถือลิงก์นี้ ให้คลิกลิงก์เพื่อดำเนินการต่อ + title: คุณกำลังจะออกจาก %{instance} relationships: activity: กิจกรรมบัญชี confirm_follow_selected_followers: คุณแน่ใจหรือไม่ว่าต้องการติดตามผู้ติดตามที่เลือก? @@ -1624,7 +1632,7 @@ th: profile: โปรไฟล์สาธารณะ relationships: การติดตามและผู้ติดตาม statuses_cleanup: การลบโพสต์แบบอัตโนมัติ - strikes: การดำเนินการการควบคุม + strikes: การดำเนินการการกลั่นกรอง two_factor_authentication: การรับรองความถูกต้องด้วยสองปัจจัย webauthn_authentication: กุญแจความปลอดภัย statuses: @@ -1758,6 +1766,12 @@ th: extra: ตอนนี้ข้อมูลสำรองพร้อมสำหรับการดาวน์โหลดแล้ว! subject: การเก็บถาวรของคุณพร้อมสำหรับการดาวน์โหลดแล้ว title: การส่งออกการเก็บถาวร + failed_2fa: + details: 'นี่คือรายละเอียดของความพยายามในการลงชื่อเข้า:' + explanation: ใครสักคนได้ลองลงชื่อเข้าบัญชีของคุณแต่ให้การรับรองความถูกต้องด้วยปัจจัยที่สองที่ไม่ถูกต้อง + further_actions_html: หากนี่ไม่ใช่คุณ เราแนะนำให้คุณ %{action} ทันทีเนื่องจากอาจมีการบุกรุกบัญชี + subject: ความล้มเหลวการรับรองความถูกต้องด้วยปัจจัยที่สอง + title: การรับรองความถูกต้องด้วยปัจจัยที่สองล้มเหลว suspicious_sign_in: change_password: เปลี่ยนรหัสผ่านของคุณ details: 'นี่คือรายละเอียดของการลงชื่อเข้า:' @@ -1772,9 +1786,9 @@ th: spam: สแปม violation: เนื้อหาละเมิดหลักเกณฑ์ชุมชนดังต่อไปนี้ explanation: - delete_statuses: มีการพบว่าโพสต์บางส่วนของคุณละเมิดหลักเกณฑ์ชุมชนจำนวนหนึ่งหรือมากกว่าและได้รับการเอาออกโดยผู้ควบคุมของ %{instance} ในเวลาต่อมา + delete_statuses: มีการพบว่าโพสต์บางส่วนของคุณละเมิดหลักเกณฑ์ชุมชนจำนวนหนึ่งหรือมากกว่าและได้รับการเอาออกโดยผู้กลั่นกรองของ %{instance} ในเวลาต่อมา disable: คุณไม่สามารถใช้บัญชีของคุณได้อีกต่อไป แต่โปรไฟล์และข้อมูลอื่น ๆ ของคุณยังคงอยู่ในสภาพเดิม คุณสามารถขอข้อมูลสำรองของข้อมูลของคุณ เปลี่ยนการตั้งค่าบัญชี หรือลบบัญชีของคุณ - mark_statuses_as_sensitive: ทำเครื่องหมายโพสต์บางส่วนของคุณว่าละเอียดอ่อนโดยผู้ควบคุมของ %{instance} แล้ว นี่หมายความว่าผู้คนจะต้องแตะสื่อในโพสต์ก่อนที่จะแสดงตัวอย่าง คุณสามารถทำเครื่องหมายสื่อว่าละเอียดอ่อนด้วยตัวคุณเองเมื่อโพสต์ในอนาคต + mark_statuses_as_sensitive: ทำเครื่องหมายโพสต์บางส่วนของคุณว่าละเอียดอ่อนโดยผู้กลั่นกรองของ %{instance} แล้ว นี่หมายความว่าผู้คนจะต้องแตะสื่อในโพสต์ก่อนที่จะแสดงตัวอย่าง คุณสามารถทำเครื่องหมายสื่อว่าละเอียดอ่อนด้วยตัวคุณเองเมื่อโพสต์ในอนาคต sensitive: จากนี้ไป จะทำเครื่องหมายไฟล์สื่อที่อัปโหลดทั้งหมดของคุณว่าละเอียดอ่อนและซ่อนอยู่หลังการคลิกไปยังคำเตือน silence: คุณยังคงสามารถใช้บัญชีของคุณแต่เฉพาะผู้คนที่กำลังติดตามคุณอยู่แล้วเท่านั้นที่จะเห็นโพสต์ของคุณในเซิร์ฟเวอร์นี้ และอาจไม่รวมคุณอยู่ในคุณลักษณะการค้นพบต่าง ๆ อย่างไรก็ตาม ผู้อื่นอาจยังติดตามคุณด้วยตนเอง suspend: คุณไม่สามารถใช้บัญชีของคุณได้อีกต่อไป และจะไม่สามารถเข้าถึงโปรไฟล์และข้อมูลอื่น ๆ ของคุณได้อีกต่อไป คุณยังคงสามารถเข้าสู่ระบบเพื่อขอข้อมูลสำรองของข้อมูลของคุณจนกว่าจะเอาข้อมูลออกอย่างสมบูรณ์ในเวลาประมาณ 30 วัน แต่เราจะเก็บรักษาข้อมูลพื้นฐานบางอย่างไว้เพื่อป้องกันไม่ให้คุณหลบเลี่ยงการระงับ @@ -1800,10 +1814,6 @@ th: edit_profile_action: ตั้งค่าโปรไฟล์ edit_profile_step: คุณสามารถปรับแต่งโปรไฟล์ของคุณได้โดยอัปโหลดรูปภาพโปรไฟล์ เปลี่ยนชื่อที่แสดงของคุณ และอื่น ๆ คุณสามารถเลือกรับการตรวจทานผู้ติดตามใหม่ก่อนที่จะอนุญาตให้เขาติดตามคุณ explanation: นี่คือเคล็ดลับบางส่วนที่จะช่วยให้คุณเริ่มต้นใช้งาน - final_action: เริ่มโพสต์ - final_step: 'เริ่มโพสต์! แม้ว่าไม่มีผู้ติดตาม โพสต์สาธารณะของคุณอาจเห็นโดยผู้อื่น ตัวอย่างเช่น ในเส้นเวลาในเซิร์ฟเวอร์หรือในแฮชแท็ก คุณอาจต้องการแนะนำตัวเองในแฮชแท็ก #introductions' - full_handle: นามเต็มของคุณ - full_handle_hint: นี่คือสิ่งที่คุณจะบอกเพื่อน ๆ ของคุณเพื่อให้เขาสามารถส่งข้อความหรือติดตามคุณจากเซิร์ฟเวอร์อื่น subject: ยินดีต้อนรับสู่ Mastodon title: ยินดีต้อนรับ %{name}! users: diff --git a/config/locales/tok.yml b/config/locales/tok.yml new file mode 100644 index 0000000000..9f962d2b53 --- /dev/null +++ b/config/locales/tok.yml @@ -0,0 +1,5 @@ +--- +tok: + admin: + accounts: + are_you_sure: ni li pona ala pona? diff --git a/config/locales/tr.yml b/config/locales/tr.yml index b3a52715b7..7dbec9abbd 100644 --- a/config/locales/tr.yml +++ b/config/locales/tr.yml @@ -10,7 +10,7 @@ tr: follow: Takip et followers: one: Takipçi - other: Takipçi + other: Takipçiler following: Takip ediliyor instance_actor_flash: Bu hesap, herhangi bir bireysel kullanıcı değil, sunucunun kendisini temsil etmek için kullanılan sanal bir aktördür. Birleştirme amacıyla kullanılmaktadır ve askıya alınmamalıdır. last_active: son etkinlik @@ -767,6 +767,7 @@ tr: disabled: Hiç kimseye users: Oturum açan yerel kullanıcılara registrations: + moderation_recommandation: Lütfen kayıtları herkese açmadan önce yeterli ve duyarlı bir denetleyici ekibine sahip olduğunuzdan emin olun! preamble: Sunucunuzda kimin hesap oluşturabileceğini denetleyin. title: Kayıtlar registrations_mode: @@ -774,6 +775,7 @@ tr: approved: Kayıt için onay gerekli none: Hiç kimse kayıt olamaz open: Herkes kaydolabilir + warning_hint: Denetleyici ekibinizin istenmeyen ve kötü niyetli kayıtları ele alabilecekleri konusunda emin değilseniz "Kayıt için onay gerekli" seçeneğini kullanmanızı öneririz. security: authorized_fetch: Dağıtık sunuculardan kimlik doğrulama gerektir authorized_fetch_hint: Dağıtık sunuculardan kimlik doğrulaması istemek, hem kullanıcı düzeyinde hem de sunucu düzeyinde blokların daha sıkı bir şekilde uygulanmasını sağlar. Ancak bu performans kaybına sebep olur, yanıtlarınızın erişimini azaltır ve bazı dağıtık hizmetlerle uyumluluk sorunları ortaya çıkarabilir. Ayrıca bu, özel aktörlerin herkese açık gönderilerinizi ve hesaplarınızı getirilmesini engellemez. @@ -966,6 +968,9 @@ tr: title: Web kancaları webhook: Web kancası admin_mailer: + auto_close_registrations: + body: Son zamanlardaki denetleyi faaliyeti eksikliğinden dolayı, %{instance} üzerindeki kayıtlar, %{instance} sunucusunun olası kötü aktörler tarafından bir platform olarak kullanımını engellemek için otomatik olarak elle onay gerektirecek şekilde değiştirilmiştir. İstediğiniz zaman açık kayıtlara çevirebilirsiniz. + subject: "%{instance} üzerindeki kayıtlar otomatik olarak onay gerektirecek şekilde değiştirilmiştir" new_appeal: actions: delete_statuses: gönderilerini silme @@ -1201,8 +1206,8 @@ tr: '406': Bu sayfa istenen formatta mevcut değil. '410': Aradığınız sayfa artık yok. '422': - content: Güvenlik doğrulaması başarısız oldu. Site cookie'lerini engellemiş olabilirsiniz. - title: Güvenlik doğrulamasu başarısız + content: Güvenlik doğrulaması başarısız oldu. Site çerezlerini engellemiş olabilirmisiniz? + title: Güvenlik doğrulaması başarısız '429': Kısıtlandı '500': content: Üzgünüz, ancak bir şey ters gitti. @@ -1243,15 +1248,15 @@ tr: add_keyword: Anahtar sözcük ekle keywords: Anahtar Sözcükler statuses: Tekil gönderiler - statuses_hint_html: Bu filtre, aşağıdaki anahtar kelimelerle eşleşip eşleşmediklerinden bağımsız olarak tekil gönderileri seçmek için uygulanıyor. Filtredeki gönderileri inceleyin veya kaldırın. - title: Filtreyi düzenle + statuses_hint_html: Bu süzgeçlere, aşağıdaki anahtar kelimelerle eşleşip eşleşmediklerinden bağımsız olarak tekil gönderileri seçmek için uygulanıyor. Süzgeçlerdeki gönderileri inceleyin veya kaldırın. + title: Süzgeci düzenle errors: - deprecated_api_multiple_keywords: Bu parametreler, birden fazla filtre anahtar sözcüğü için geçerli olduğundan dolayı bu uygulama içerisinden değiştirilemezler. Daha yeni bir uygulama veya web arayüzünü kullanın. + deprecated_api_multiple_keywords: Bu parametreler, birden fazla süzgeç anahtar sözcüğü için geçerli olduğundan dolayı bu uygulama içerisinden değiştirilemezler. Daha yeni bir uygulama veya web arayüzünü kullanın. invalid_context: Sıfır ya da geçersiz içerik sağlandı index: contexts: "%{contexts} içindeki filtreler" delete: Sil - empty: Hiç filtreniz yok. + empty: Hiç süzgeciniz yok. expires_in: "%{distance} sürede sona eriyor" expires_on: "%{date} tarihinde sona eriyor" keywords: @@ -1263,16 +1268,16 @@ tr: statuses_long: one: "%{count} tekil gönderi gizli" other: "%{count} tekil gönderi gizli" - title: Filtreler + title: Süzgeçler new: - save: Yeni filtre kaydet - title: Yeni filtre ekle + save: Yeni süzgeç kaydet + title: Yeni süzgeç ekle statuses: - back_to_filter: Filtreye dön + back_to_filter: Süzgeçe dön batch: - remove: Filtreden kaldır + remove: Süzgeçden kaldır index: - hint: Bu filtre diğer ölçütlerden bağımsız olarak tekil gönderileri seçmek için uygulanıyor. Web arayüzünü kullanarak bu filtreye daha fazla gönderi ekleyebilirsiniz. + hint: Bu süzgece diğer ölçütlerden bağımsız olarak tekil gönderileri seçmek için uygulanıyor. Web arayüzünü kullanarak bu süzgece daha fazla gönderi ekleyebilirsiniz. title: Süzgeçlenmiş gönderiler generic: all: Tümü @@ -1480,8 +1485,8 @@ tr: subject: Anket %{name} tarafından sonlandırıldı reblog: body: "%{name} durumunuzu boostladı:" - subject: "%{name} durumunuzu boostladı" - title: Yeni boost + subject: "%{name} durumunuzu paylaştı" + title: Yeni paylaşım status: subject: "%{name} az önce gönderdi" update: @@ -1544,7 +1549,7 @@ tr: title: Gizlilik Politikası reactions: errors: - limit_reached: Farklı reaksiyonların sınırına ulaşıldı + limit_reached: Farklı tepkilerin sınırına ulaşıldı unrecognized_emoji: tanınan bir emoji değil redirects: prompt: Eğer bu bağlantıya güveniyorsanız, tıklayıp devam edebilirsiniz. @@ -1663,17 +1668,17 @@ tr: other: "%{count} ses" description: 'Ekli: %{attached}' image: - one: "%{count} resim" - other: "%{count} resim" + one: "%{count} görsel" + other: "%{count} görseller" video: one: "%{count} video" - other: "%{count} video" - boosted_from_html: "%{acct_link} kişisinden boostladı" + other: "%{count} videolar" + boosted_from_html: "%{acct_link} kişisinden paylaştı" content_warning: 'İçerik uyarısı: %{warning}' default_language: Arayüz diliyle aynı disallowed_hashtags: one: 'izin verilmeyen bir etiket içeriyordu: %{tags}' - other: 'izin verilmeyen hashtag''leri içeriyordu: %{tags}' + other: 'izin verilmeyen etiketler içeriyordu: %{tags}' edited_at_html: "%{date} tarihinde düzenlendi" errors: in_reply_not_found: Yanıtlamaya çalıştığınız durum yok gibi görünüyor. @@ -1683,14 +1688,14 @@ tr: direct: Sadece değinilen kullanıcıların görebileceği gönderiler üstte tutulamaz limit: Halihazırda maksimum sayıda gönderi sabitlediniz ownership: Başkasının gönderisi sabitlenemez - reblog: Bir boost sabitlenemez + reblog: Bir gönderi sabitlenemez poll: total_people: one: "%{count} kişi" - other: "%{count} kişi" + other: "%{count} kişiler" total_votes: one: "%{count} oy" - other: "%{count} oy" + other: "%{count} oylar" vote: Oy Ver show_more: Daha fazlasını göster show_newer: Yenileri göster @@ -1756,7 +1761,7 @@ tr: default: "%d %b %Y %H:%M" month: "%b %Y" time: "%H:%M" - with_time_zone: "%d.%m.%Y %H:%M %Z" + with_time_zone: "%b %d, %Y, %H:%M %Z" translation: errors: quota_exceeded: Çeviri hizmetinin sunucu kapsamındaki kullanım kotası aşıldı. @@ -1774,7 +1779,7 @@ tr: otp: Authenticator uygulaması recovery_codes: Kurtarma kodlarını yedekle recovery_codes_regenerated: Kurtarma kodları başarıyla yeniden oluşturuldu - recovery_instructions_html: 'Eğer telefonunuza erişiminizi kaybederseniz, aşağıdaki kurtarma kodlarından birini kullanarak hesabınıza giriş yapabilirsiniz. Kurtarma kodlarınızı güvenli halde tutunuz. Örneğin: kodların çıktısını alıp diğer önemli belgeleriniz ile birlikte saklayabilirsiniz.' + recovery_instructions_html: 'Eğer telefonunuza erişiminizi kaybederseniz, aşağıdaki kurtarma kodlarından birini kullanarak hesabınıza giriş yapabilirsiniz. Kurtarma kodlarınızı güvenli halde tutunuz. Örneğin: kodların çıktısını alıp diğer önemli belgeleriniz ile birlikte saklayabilirsiniz.' webauthn: Güvenlik anahtarları user_mailer: appeal_approved: @@ -1841,10 +1846,6 @@ tr: edit_profile_action: Profil kurulumu edit_profile_step: Bir profil resmi yükleyerek, ekran adınızı değiştirerek ve daha fazlasını yaparak profilinizi kişiselleştirebilirsiniz. Sizi takip etmelerine izin verilmeden önce yeni takipçileri incelemeyi tercih edebilirsiniz. explanation: İşte sana başlangıç için birkaç ipucu - final_action: Gönderi yazmaya başlayın - final_step: 'Gönderi yazmaya başlayın! Takipçiler olmadan bile, herkese açık gönderileriniz başkaları tarafından görülebilir, örneğin yerel zaman tünelinde veya etiketlerde. Kendinizi #introductions etiketinde tanıtmak isteyebilirsiniz.' - full_handle: Tanıtıcınız - full_handle_hint: Arkadaşlarınıza, size başka bir sunucudan mesaj atabilmeleri veya sizi takip edebilmeleri için söyleyeceğiniz şey budur. subject: Mastodon'a hoş geldiniz title: Gemiye hoşgeldin, %{name}! users: diff --git a/config/locales/uk.yml b/config/locales/uk.yml index 531bdb3d59..7273a0ff2b 100644 --- a/config/locales/uk.yml +++ b/config/locales/uk.yml @@ -795,6 +795,7 @@ uk: disabled: Нікого users: Для авторизованих локальних користувачів registrations: + moderation_recommandation: Переконайтеся, що у вас є адекватна і швидка команда модерації, перш ніж ви відкриєте реєстрацію для всіх! preamble: Контролюйте, хто може створити обліковий запис на вашому сервері. title: Реєстрації registrations_mode: @@ -802,6 +803,7 @@ uk: approved: Для входу потрібне схвалення none: Ніхто не може увійти open: Будь-хто може увійти + warning_hint: Радимо використовувати "Обов'язкове затвердження", якщо ви не впевнені, що ваша команда модерації може вчасно обробляти спам та зловмисні реєстрації. security: authorized_fetch: Вимагати аутентифікацію з федеративних серверів authorized_fetch_hint: Вимога автентифікації від федеративних серверів забезпечує суворіше застосування блокування як на рівні користувача, так і на рівні сервера. Однак це призводить до зниження продуктивності, зменшує охоплення ваших відповідей і може спричинити проблеми сумісності з деякими федеративними сервісами. Крім того, це не завадить зловмисникам отримувати ваші загальнодоступні дописи та облікові записи. @@ -1002,6 +1004,9 @@ uk: title: Вебхуки webhook: Вебхук admin_mailer: + auto_close_registrations: + body: Через нестачу нещодавньої активності модератора реєстрація на %{instance} автоматично перемкнута на обов'язковий розгляд вручну, для запобігання використанню %{instance} платформою для потенційних зловмисників. Ви можете будь-коли перемкнутися на відкриту реєстрацію. + subject: Реєстрації для %{instance} автоматично перейшли на такі, що вимагають схвалення new_appeal: actions: delete_statuses: щоб видалити їхні дописи @@ -1845,14 +1850,24 @@ uk: action: Налаштування облікового запису explanation: Оскарження попередження вашому обліковому запису %{strike_date}, яке ви надіслали %{appeal_date} було схвалено. Ваш обліковий запис знову вважається добропорядним. subject: Вашу апеляцію від %{date} було схвалено + subtitle: Ваш обліковий запис знову готовий до користування. title: Апеляцію схвалено appeal_rejected: explanation: Оскарження попередження вашому обліковому запису %{strike_date}, яке ви надіслали %{appeal_date} було відхилено. subject: Вашу апеляцію від %{date} було відхилено + subtitle: Вашу апеляцію відхилено. title: Апеляцію відхилено backup_ready: + explanation: Ви просили про створення резервної копії вашого облікового запису Mastodon. + extra: Вона готова до завантаження! subject: Ваш архів готовий до завантаження title: Винесення архіву + failed_2fa: + details: 'Подробиці спроби входу:' + explanation: Хтось намагався ввійти у ваш обліковий запис, але надав недійсний другий фактор автентифікації. + further_actions_html: Якщо це не ви, ми радимо вам негайно %{action}, оскільки обліковий запис може бути скомпрометованим. + subject: Помилка другого фактору автентифікації + title: Помилка другого фактора автентифікації suspicious_sign_in: change_password: змінити свій пароль details: 'Відомості про вхід:' @@ -1895,10 +1910,6 @@ uk: edit_profile_action: Налаштувати профіль edit_profile_step: Ви можете налаштувати свій профіль, завантаживши зображення профілю, змінивши відображуване ім'я та інше. Ви можете включити для перегляду нових підписників до того, як вони матимуть змогу підписатися на вас. explanation: Ось кілька порад для початку - final_action: Почати писати - final_step: 'Почніть дописувати! Навіть не підписавшись на вас, інші зможуть побачити ваші дописи, наприклад, у локальній стрічці та у хештеґах. Якщо ви хочете представитися, можете скористатися хештеґом #introductions.' - full_handle: Ваше звернення - full_handle_hint: Те, що ви хочете сказати друзям, щоб вони могли написати вам або підписатися з інших сайтів. subject: Ласкаво просимо до Mastodon title: Ласкаво просимо, %{name}! users: @@ -1906,7 +1917,7 @@ uk: go_to_sso_account_settings: Перейдіть до налаштувань облікового запису постачальника ідентифікації invalid_otp_token: Введено неправильний код otp_lost_help_html: Якщо ви втратили доступ до обох, ви можете отримати доступ з %{email} - rate_limited: Занадто багато спроб з'єднання. Спробуйте ще раз пізніше. + rate_limited: Забагато спроб з'єднання. Спробуйте ще раз пізніше. seamless_external_login: Ви увійшли за допомогою зовнішнього сервісу, тому налаштування паролю та електронної пошти недоступні. signed_in_as: 'Ви увійшли як:' verification: diff --git a/config/locales/vi.yml b/config/locales/vi.yml index 045a000e38..e362c97a41 100644 --- a/config/locales/vi.yml +++ b/config/locales/vi.yml @@ -948,6 +948,9 @@ vi: title: Webhook webhook: Webhook admin_mailer: + auto_close_registrations: + body: Do gần đây thiếu kiểm duyệt viên nên việc đăng ký trên %{instance} sẽ tự động chuyển thành duyệt thủ công, để tránh %{instance} bị sử dụng làm nền tảng cho những kẻ xấu. Bạn có thể chuyển nó trở lại trạng thái đăng ký mở bất kỳ lúc nào. + subject: Đăng ký mới %{instance} đã được tự động chuyển sang duyệt thủ công new_appeal: actions: delete_statuses: xóa tút của họ @@ -1809,10 +1812,6 @@ vi: edit_profile_action: Cài đặt trang hồ sơ edit_profile_step: Bạn có thể chỉnh sửa trang hồ sơ của mình bằng cách tải lên ảnh đại diện, ảnh bìa, đổi biệt danh và hơn thế nữa. Bạn cũng có thể tự phê duyệt những người theo dõi mới. explanation: Dưới đây là một số mẹo để giúp bạn bắt đầu - final_action: Soạn tút mới - final_step: 'Viết tút mới! Ngay cả khi chưa có người theo dõi, người khác vẫn có thể xem tút công khai của bạn trên bảng tin máy chủ và qua hashtag. Hãy giới thiệu bản thân với hashtag #introductions.' - full_handle: Tên đầy đủ của bạn - full_handle_hint: Đây cũng là địa chỉ được dùng để giao tiếp với tất cả mọi người. subject: Chào mừng đến với Mastodon title: Xin chào %{name}! users: diff --git a/config/locales/zh-CN.yml b/config/locales/zh-CN.yml index d1255bfefe..46a0e40152 100644 --- a/config/locales/zh-CN.yml +++ b/config/locales/zh-CN.yml @@ -753,6 +753,7 @@ zh-CN: disabled: 不对任何人 users: 对本地已登录用户 registrations: + moderation_recommandation: 在向所有人开放注册之前,请确保您拥有一个人手足够且反应迅速的管理团队! preamble: 控制谁可以在你的服务器上创建账号。 title: 注册 registrations_mode: @@ -760,6 +761,7 @@ zh-CN: approved: 注册时需要批准 none: 关闭注册 open: 开放注册 + warning_hint: 我们建议使用“注册必须经过批准”,除非您确信您的管理团队能够及时处理骚扰和恶意注册。 security: authorized_fetch: 需要跨站认证 authorized_fetch_hint: 要求外站请求通过验证能够使用户级别与服务器级别的封锁更为严格。然而,这将带来额外的性能负担、减少回复触达范围、并可能导致与一些联邦宇宙服务的兼容性问题。此外,这并不能阻止他人针对性地获取公开嘟文与账户。 @@ -772,13 +774,13 @@ zh-CN: software_updates: critical_update: 紧急 — 请尽快更新 description: 建议您及时更新Mastodon实例,以便获得最新修复和功能。此外,为避免安全问题,有时候及时更新Mastodon是至关重要的。出于这些原因,Mastodon每30分钟检查一次更新,并根据您的电子邮件通知偏好向您发送通知。 - documentation_link: 了解详情 - release_notes: 更新日志 + documentation_link: 详细了解 + release_notes: 发行说明 title: 可用的更新 type: 类型 types: - major: 大版本更新 - minor: 小版本更新 + major: 重大更新 + minor: 次要更新 patch: 补丁级更新 - 修复了错误并进行了易于应用的更改 version: 版本 statuses: @@ -948,6 +950,9 @@ zh-CN: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: 由于近期缺乏管理员活动, %{instance} 上的注册已自动切换为需要手动审核,以防止 %{instance} 被潜在的不良行为者用作平台。您可以随时将其切换回开放注册。 + subject: "%{instance} 的注册已自动切换为需要批准" new_appeal: actions: delete_statuses: 删除其嘟文 @@ -1809,10 +1814,6 @@ zh-CN: edit_profile_action: 设置个人资料 edit_profile_step: 您可以通过上传个人资料图片、更改您的昵称等来自定义您的个人资料。 您可以选择在新关注者关注您之前对其进行审核。 explanation: 下面是几个小贴士,希望它们能帮到你 - final_action: 开始嘟嘟 - final_step: '开始发布嘟文! 即使没有关注者,您的公开嘟文也可能会被其他人看到,例如在本地时间轴或话题标签中。 您可能想在 #introductions 话题标签上介绍自己。' - full_handle: 你的完整用户地址 - full_handle_hint: 你需要把这个告诉你的朋友们,这样他们就能从另一台服务器向你发送信息或者关注你。 subject: 欢迎来到 Mastodon title: "%{name},欢迎你的加入!" users: diff --git a/config/locales/zh-HK.yml b/config/locales/zh-HK.yml index b010a75c04..e666e4965d 100644 --- a/config/locales/zh-HK.yml +++ b/config/locales/zh-HK.yml @@ -1809,10 +1809,6 @@ zh-HK: edit_profile_action: 設定個人資料 edit_profile_step: 你可以透過上傳頭像、更改顯示名稱等來自訂個人檔案。你可以選擇讓新使用者追蹤你之前先審查他們。 explanation: 下面是幾個小貼士,希望它們能幫到你 - final_action: 開始發文 - final_step: '開始發文吧!即使你沒有追蹤者,其他人仍然能在本站時間軸或標籤等地方,看到你的公開帖文。試着用 #introductions 標籤來介紹自己吧。' - full_handle: 你的完整 Mastodon 地址 - full_handle_hint: 這訊息將顯示給你朋友們,讓他們能從另一個服務站發信息給你,或者關注你的。 subject: 歡迎來到 Mastodon (萬象) title: 歡迎 %{name} 加入! users: diff --git a/config/locales/zh-TW.yml b/config/locales/zh-TW.yml index 7fe60541e6..3cd3583830 100644 --- a/config/locales/zh-TW.yml +++ b/config/locales/zh-TW.yml @@ -755,6 +755,7 @@ zh-TW: disabled: 給沒有人 users: 套用至所有登入的本站使用者 registrations: + moderation_recommandation: 對所有人開放註冊之前,請確保您有人手充足且反應靈敏的管理員團隊! preamble: 控制誰能於您伺服器上建立帳號。 title: 註冊 registrations_mode: @@ -762,6 +763,7 @@ zh-TW: approved: 註冊需要審核 none: 沒有人可註冊 open: 任何人皆能註冊 + warning_hint: 建議您使用「需要審核註冊」除非您相信您的管理員團隊能即時處理垃圾訊息與惡意帳號註冊。 security: authorized_fetch: 要求自聯邦宇宙伺服器之驗證 authorized_fetch_hint: 要求聯邦宇宙伺服器進行驗證將更嚴格地執行使用者層級及伺服器層級之封鎖。然而,這將會帶來一些性能損失、減少您的回嘟觸及量、並可能會引入與某些聯邦宇宙伺服器之相容性問題。 此外,這無法阻止專門服務抓取您的公開嘟文及帳號資料。 @@ -779,7 +781,7 @@ zh-TW: title: 可取得的更新 type: 類型 types: - major: 主要版本更新 (major release) + major: 主要版本更新 minor: 次要版本更新 (minor release) patch: 修正版本 (patch release) — 錯誤修正及易於套用之變更 version: 版本 @@ -950,6 +952,9 @@ zh-TW: title: Webhooks webhook: Webhook admin_mailer: + auto_close_registrations: + body: 由於近日缺少管理員活動,%{instance} 上之註冊已自動切換為需要人工審核,以防止 %{instance} 被作為潛在不良行為者之跳板。您隨時能將其切換回開放註冊。 + subject: "%{instance} 之註冊已自動切換為需要審核" new_appeal: actions: delete_statuses: 要刪除他們的嘟文 @@ -1811,10 +1816,6 @@ zh-TW: edit_profile_action: 設定個人檔案 edit_profile_step: 您可以設定您的個人檔案,包括上傳大頭貼、變更顯示名稱等等。您也可以選擇於新的跟隨者跟隨前,先對他們進行審核。 explanation: 以下是幾個小技巧,希望它們能幫到您 - final_action: 開始嘟嘟 - final_step: '開始嘟嘟吧!即使您現在沒有跟隨者,其他人仍然能於本站時間軸、主題標籤等地方,看到您的公開嘟文。試著用 #introductions 這個主題標籤介紹一下自己吧。' - full_handle: 您的完整帳號名稱 - full_handle_hint: 您需要將這告訴您的朋友們,這樣他們就能從另一個伺服器向您發送訊息或跟隨您。 subject: 歡迎來到 Mastodon title: "%{name} 誠摯歡迎您的加入!" users: diff --git a/config/routes.rb b/config/routes.rb index bb088821fd..51c10a14f6 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -1,6 +1,6 @@ # frozen_string_literal: true -require 'sidekiq_unique_jobs/web' +require 'sidekiq_unique_jobs/web' if ENV['ENABLE_SIDEKIQ_UNIQUE_JOBS_UI'] == true require 'sidekiq-scheduler/web' class RedirectWithVary < ActionDispatch::Routing::PathRedirect diff --git a/config/settings.yml b/config/settings.yml index 67297c26ce..208c8e3760 100644 --- a/config/settings.yml +++ b/config/settings.yml @@ -9,7 +9,7 @@ defaults: &defaults site_terms: '' site_contact_username: '' site_contact_email: '' - registrations_mode: 'open' + registrations_mode: 'none' profile_directory: true closed_registrations_message: '' timeline_preview: true diff --git a/config/sidekiq.yml b/config/sidekiq.yml index 3f9cbd9a7a..488c2f2ab3 100644 --- a/config/sidekiq.yml +++ b/config/sidekiq.yml @@ -63,3 +63,7 @@ interval: 30 minutes class: Scheduler::SoftwareUpdateCheckScheduler queue: scheduler + auto_close_registrations_scheduler: + interval: 1 hour + class: Scheduler::AutoCloseRegistrationsScheduler + queue: scheduler diff --git a/db/migrate/20161006213403_rails_settings_migration.rb b/db/migrate/20161006213403_rails_settings_migration.rb index 401b7a83b7..9764196fab 100644 --- a/db/migrate/20161006213403_rails_settings_migration.rb +++ b/db/migrate/20161006213403_rails_settings_migration.rb @@ -1,12 +1,6 @@ # frozen_string_literal: true -MIGRATION_BASE_CLASS = if ActiveRecord::VERSION::MAJOR >= 5 - ActiveRecord::Migration[5.0] - else - ActiveRecord::Migration[4.2] - end - -class RailsSettingsMigration < MIGRATION_BASE_CLASS +class RailsSettingsMigration < ActiveRecord::Migration[5.0] def self.up create_table :settings do |t| t.string :var, null: false diff --git a/db/migrate/20170317193015_add_search_index_to_accounts.rb b/db/migrate/20170317193015_add_search_index_to_accounts.rb index e29da61b15..0edc381549 100644 --- a/db/migrate/20170317193015_add_search_index_to_accounts.rb +++ b/db/migrate/20170317193015_add_search_index_to_accounts.rb @@ -2,7 +2,17 @@ class AddSearchIndexToAccounts < ActiveRecord::Migration[5.0] def up - execute 'CREATE INDEX search_index ON accounts USING gin((setweight(to_tsvector(\'simple\', accounts.display_name), \'A\') || setweight(to_tsvector(\'simple\', accounts.username), \'B\') || setweight(to_tsvector(\'simple\', coalesce(accounts.domain, \'\')), \'C\')));' + execute <<~SQL.squish + CREATE INDEX search_index + ON accounts + USING gin( + ( + setweight(to_tsvector('simple', accounts.display_name), 'A') || + setweight(to_tsvector('simple', accounts.username), 'B') || + setweight(to_tsvector('simple', coalesce(accounts.domain, '')), 'C') + ) + ) + SQL end def down diff --git a/db/migrate/20170918125918_ids_to_bigints.rb b/db/migrate/20170918125918_ids_to_bigints.rb index 83c5ab971b..64f1d0093a 100644 --- a/db/migrate/20170918125918_ids_to_bigints.rb +++ b/db/migrate/20170918125918_ids_to_bigints.rb @@ -7,80 +7,73 @@ class IdsToBigints < ActiveRecord::Migration[5.1] include Mastodon::MigrationHelpers include Mastodon::MigrationWarning + TABLE_COLUMN_MAPPING = [ + [:account_domain_blocks, :account_id], + [:account_domain_blocks, :id], + [:accounts, :id], + [:blocks, :account_id], + [:blocks, :id], + [:blocks, :target_account_id], + [:conversation_mutes, :account_id], + [:conversation_mutes, :id], + [:domain_blocks, :id], + [:favourites, :account_id], + [:favourites, :id], + [:favourites, :status_id], + [:follow_requests, :account_id], + [:follow_requests, :id], + [:follow_requests, :target_account_id], + [:follows, :account_id], + [:follows, :id], + [:follows, :target_account_id], + [:imports, :account_id], + [:imports, :id], + [:media_attachments, :account_id], + [:media_attachments, :id], + [:mentions, :account_id], + [:mentions, :id], + [:mutes, :account_id], + [:mutes, :id], + [:mutes, :target_account_id], + [:notifications, :account_id], + [:notifications, :from_account_id], + [:notifications, :id], + [:oauth_access_grants, :application_id], + [:oauth_access_grants, :id], + [:oauth_access_grants, :resource_owner_id], + [:oauth_access_tokens, :application_id], + [:oauth_access_tokens, :id], + [:oauth_access_tokens, :resource_owner_id], + [:oauth_applications, :id], + [:oauth_applications, :owner_id], + [:reports, :account_id], + [:reports, :action_taken_by_account_id], + [:reports, :id], + [:reports, :target_account_id], + [:session_activations, :access_token_id], + [:session_activations, :user_id], + [:session_activations, :web_push_subscription_id], + [:settings, :id], + [:settings, :thing_id], + [:statuses, :account_id], + [:statuses, :application_id], + [:statuses, :in_reply_to_account_id], + [:stream_entries, :account_id], + [:stream_entries, :id], + [:subscriptions, :account_id], + [:subscriptions, :id], + [:tags, :id], + [:users, :account_id], + [:users, :id], + [:web_settings, :id], + [:web_settings, :user_id], + ].freeze + disable_ddl_transaction! def migrate_columns(to_type) - included_columns = [ - [:account_domain_blocks, :account_id], - [:account_domain_blocks, :id], - [:accounts, :id], - [:blocks, :account_id], - [:blocks, :id], - [:blocks, :target_account_id], - [:conversation_mutes, :account_id], - [:conversation_mutes, :id], - [:domain_blocks, :id], - [:favourites, :account_id], - [:favourites, :id], - [:favourites, :status_id], - [:follow_requests, :account_id], - [:follow_requests, :id], - [:follow_requests, :target_account_id], - [:follows, :account_id], - [:follows, :id], - [:follows, :target_account_id], - [:imports, :account_id], - [:imports, :id], - [:media_attachments, :account_id], - [:media_attachments, :id], - [:mentions, :account_id], - [:mentions, :id], - [:mutes, :account_id], - [:mutes, :id], - [:mutes, :target_account_id], - [:notifications, :account_id], - [:notifications, :from_account_id], - [:notifications, :id], - [:oauth_access_grants, :application_id], - [:oauth_access_grants, :id], - [:oauth_access_grants, :resource_owner_id], - [:oauth_access_tokens, :application_id], - [:oauth_access_tokens, :id], - [:oauth_access_tokens, :resource_owner_id], - [:oauth_applications, :id], - [:oauth_applications, :owner_id], - [:reports, :account_id], - [:reports, :action_taken_by_account_id], - [:reports, :id], - [:reports, :target_account_id], - [:session_activations, :access_token_id], - [:session_activations, :user_id], - [:session_activations, :web_push_subscription_id], - [:settings, :id], - [:settings, :thing_id], - [:statuses, :account_id], - [:statuses, :application_id], - [:statuses, :in_reply_to_account_id], - [:stream_entries, :account_id], - [:stream_entries, :id], - [:subscriptions, :account_id], - [:subscriptions, :id], - [:tags, :id], - [:users, :account_id], - [:users, :id], - [:web_settings, :id], - [:web_settings, :user_id], - ] - included_columns << [:deprecated_preview_cards, :id] if table_exists?(:deprecated_preview_cards) + display_warning - migration_duration_warning(<<~EXPLANATION) - This migration has some sections that can be safely interrupted - and restarted later, and will tell you when those are occurring. - - For more information, see https://github.com/mastodon/mastodon/pull/5088 - EXPLANATION - - tables = included_columns.map(&:first).uniq table_sizes = {} # Sort tables by their size @@ -103,6 +96,25 @@ class IdsToBigints < ActiveRecord::Migration[5.1] end end + def display_warning + migration_duration_warning(<<~EXPLANATION) + This migration has some sections that can be safely interrupted + and restarted later, and will tell you when those are occurring. + + For more information, see https://github.com/mastodon/mastodon/pull/5088 + EXPLANATION + end + + def tables + included_columns.map(&:first).uniq + end + + def included_columns + TABLE_COLUMN_MAPPING.dup.tap do |included_columns| + included_columns << [:deprecated_preview_cards, :id] if table_exists?(:deprecated_preview_cards) + end + end + def up migrate_columns(:bigint) end diff --git a/db/migrate/20190715164535_add_instance_actor.rb b/db/migrate/20190715164535_add_instance_actor.rb index 3785dc2553..6871b37bdf 100644 --- a/db/migrate/20190715164535_add_instance_actor.rb +++ b/db/migrate/20190715164535_add_instance_actor.rb @@ -5,6 +5,8 @@ class AddInstanceActor < ActiveRecord::Migration[5.2] # Dummy class, to make migration possible across version changes validates :username, uniqueness: { scope: :domain, case_sensitive: false } + INSTANCE_ACTOR_ID = -99 + before_create :generate_keys def generate_keys @@ -15,10 +17,10 @@ class AddInstanceActor < ActiveRecord::Migration[5.2] end def up - Account.create!(id: -99, actor_type: 'Application', locked: true, username: Rails.configuration.x.local_domain) + Account.create!(id: Account::INSTANCE_ACTOR_ID, actor_type: 'Application', locked: true, username: Rails.configuration.x.local_domain) end def down - Account.find_by(id: -99, actor_type: 'Application').destroy! + Account.find_by(id: Account::INSTANCE_ACTOR_ID, actor_type: 'Application').destroy! end end diff --git a/db/migrate/20190726175042_add_case_insensitive_index_to_tags.rb b/db/migrate/20190726175042_add_case_insensitive_index_to_tags.rb index f2d3aa8ee8..02f073e14f 100644 --- a/db/migrate/20190726175042_add_case_insensitive_index_to_tags.rb +++ b/db/migrate/20190726175042_add_case_insensitive_index_to_tags.rb @@ -9,9 +9,32 @@ class AddCaseInsensitiveIndexToTags < ActiveRecord::Migration[5.2] redundant_tag_ids = row['ids'].split(',')[1..] safety_assured do - execute "UPDATE accounts_tags AS t0 SET tag_id = #{canonical_tag_id} WHERE tag_id IN (#{redundant_tag_ids.join(', ')}) AND NOT EXISTS (SELECT t1.tag_id FROM accounts_tags AS t1 WHERE t1.tag_id = #{canonical_tag_id} AND t1.account_id = t0.account_id)" - execute "UPDATE statuses_tags AS t0 SET tag_id = #{canonical_tag_id} WHERE tag_id IN (#{redundant_tag_ids.join(', ')}) AND NOT EXISTS (SELECT t1.tag_id FROM statuses_tags AS t1 WHERE t1.tag_id = #{canonical_tag_id} AND t1.status_id = t0.status_id)" - execute "UPDATE featured_tags AS t0 SET tag_id = #{canonical_tag_id} WHERE tag_id IN (#{redundant_tag_ids.join(', ')}) AND NOT EXISTS (SELECT t1.tag_id FROM featured_tags AS t1 WHERE t1.tag_id = #{canonical_tag_id} AND t1.account_id = t0.account_id)" + execute <<~SQL.squish + UPDATE accounts_tags + AS t0 + SET tag_id = #{canonical_tag_id} + WHERE + tag_id IN (#{redundant_tag_ids.join(', ')}) + AND NOT EXISTS (SELECT t1.tag_id FROM accounts_tags AS t1 WHERE t1.tag_id = #{canonical_tag_id} AND t1.account_id = t0.account_id) + SQL + + execute <<~SQL.squish + UPDATE statuses_tags + AS t0 + SET tag_id = #{canonical_tag_id} + WHERE + tag_id IN (#{redundant_tag_ids.join(', ')}) + AND NOT EXISTS (SELECT t1.tag_id FROM statuses_tags AS t1 WHERE t1.tag_id = #{canonical_tag_id} AND t1.status_id = t0.status_id) + SQL + + execute <<~SQL.squish + UPDATE featured_tags + AS t0 + SET tag_id = #{canonical_tag_id} + WHERE + tag_id IN (#{redundant_tag_ids.join(', ')}) + AND NOT EXISTS (SELECT t1.tag_id FROM featured_tags AS t1 WHERE t1.tag_id = #{canonical_tag_id} AND t1.account_id = t0.account_id) + SQL end Tag.where(id: redundant_tag_ids).in_batches.delete_all diff --git a/db/migrate/20210630000137_fix_canonical_email_blocks_foreign_key.rb b/db/migrate/20210630000137_fix_canonical_email_blocks_foreign_key.rb index 9b475966bb..90a1b1a5cf 100644 --- a/db/migrate/20210630000137_fix_canonical_email_blocks_foreign_key.rb +++ b/db/migrate/20210630000137_fix_canonical_email_blocks_foreign_key.rb @@ -3,13 +3,26 @@ class FixCanonicalEmailBlocksForeignKey < ActiveRecord::Migration[6.1] def up safety_assured do - execute 'ALTER TABLE canonical_email_blocks DROP CONSTRAINT fk_rails_1ecb262096, ADD CONSTRAINT fk_rails_1ecb262096 FOREIGN KEY (reference_account_id) REFERENCES accounts(id) ON DELETE CASCADE;' + execute <<~SQL.squish + ALTER TABLE canonical_email_blocks + DROP CONSTRAINT fk_rails_1ecb262096, + ADD CONSTRAINT fk_rails_1ecb262096 + FOREIGN KEY (reference_account_id) + REFERENCES accounts(id) + ON DELETE CASCADE + SQL end end def down safety_assured do - execute 'ALTER TABLE canonical_email_blocks DROP CONSTRAINT fk_rails_1ecb262096, ADD CONSTRAINT fk_rails_1ecb262096 FOREIGN KEY (reference_account_id) REFERENCES accounts(id);' + execute <<~SQL.squish + ALTER TABLE canonical_email_blocks + DROP CONSTRAINT fk_rails_1ecb262096, + ADD CONSTRAINT fk_rails_1ecb262096 + FOREIGN KEY (reference_account_id) + REFERENCES accounts(id) + SQL end end end diff --git a/db/migrate/20220309213005_fix_reblog_deleted_at.rb b/db/migrate/20220309213005_fix_reblog_deleted_at.rb index e3474beeb1..7fb9bff26c 100644 --- a/db/migrate/20220309213005_fix_reblog_deleted_at.rb +++ b/db/migrate/20220309213005_fix_reblog_deleted_at.rb @@ -4,7 +4,16 @@ class FixReblogDeletedAt < ActiveRecord::Migration[6.1] disable_ddl_transaction! def up - safety_assured { execute 'UPDATE statuses s SET deleted_at = r.deleted_at FROM statuses r WHERE s.reblog_of_id = r.id AND r.deleted_at IS NOT NULL' } + safety_assured do + execute <<~SQL.squish + UPDATE statuses s + SET deleted_at = r.deleted_at + FROM statuses r + WHERE + s.reblog_of_id = r.id + AND r.deleted_at IS NOT NULL + SQL + end end def down; end diff --git a/db/post_migrate/20220704024901_migrate_settings_to_user_roles.rb b/db/post_migrate/20220704024901_migrate_settings_to_user_roles.rb index 00afee26d0..42dc37f08b 100644 --- a/db/post_migrate/20220704024901_migrate_settings_to_user_roles.rb +++ b/db/post_migrate/20220704024901_migrate_settings_to_user_roles.rb @@ -3,7 +3,9 @@ class MigrateSettingsToUserRoles < ActiveRecord::Migration[6.1] disable_ddl_transaction! - class UserRole < ApplicationRecord; end + class UserRole < ApplicationRecord + EVERYONE_ROLE_ID = -99 + end def up process_role_everyone @@ -17,7 +19,7 @@ class MigrateSettingsToUserRoles < ActiveRecord::Migration[6.1] private def process_role_everyone - everyone_role = UserRole.find_by(id: -99) + everyone_role = UserRole.find_by(id: UserRole::EVERYONE_ROLE_ID) return unless everyone_role everyone_role.permissions &= ~::UserRole::FLAGS[:invite_users] unless min_invite_role == 'user' diff --git a/db/seeds/02_instance_actor.rb b/db/seeds/02_instance_actor.rb index 55e83e8a08..2b6befec0d 100644 --- a/db/seeds/02_instance_actor.rb +++ b/db/seeds/02_instance_actor.rb @@ -1,3 +1,3 @@ # frozen_string_literal: true -Account.create_with(actor_type: 'Application', locked: true, username: 'mastodon.internal').find_or_create_by(id: -99) +Account.create_with(actor_type: 'Application', locked: true, username: 'mastodon.internal').find_or_create_by(id: Account::INSTANCE_ACTOR_ID) diff --git a/docker-compose.yml b/docker-compose.yml index 93451d9611..154754d45f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -56,7 +56,7 @@ services: web: build: . - image: ghcr.io/mastodon/mastodon:v4.2.0 + image: ghcr.io/mastodon/mastodon:v4.2.7 restart: always env_file: .env.production command: bundle exec puma -C config/puma.rb @@ -77,7 +77,7 @@ services: streaming: build: . - image: ghcr.io/mastodon/mastodon:v4.2.0 + image: ghcr.io/mastodon/mastodon:v4.2.7 restart: always env_file: .env.production command: node ./streaming @@ -95,7 +95,7 @@ services: sidekiq: build: . - image: ghcr.io/mastodon/mastodon:v4.2.0 + image: ghcr.io/mastodon/mastodon:v4.2.7 restart: always env_file: .env.production command: bundle exec sidekiq diff --git a/jsconfig.json b/jsconfig.json index 7b710de83c..d52816a98b 100644 --- a/jsconfig.json +++ b/jsconfig.json @@ -11,7 +11,7 @@ "noEmit": true, "resolveJsonModule": true, "strict": false, - "target": "ES2022", + "target": "ES2022" }, - "exclude": ["**/build/*", "**/node_modules/*", "**/public/*", "**/vendor/*"], + "exclude": ["**/build/*", "**/node_modules/*", "**/public/*", "**/vendor/*"] } diff --git a/lib/mastodon/version.rb b/lib/mastodon/version.rb index dd7c84207e..1135ba0a17 100644 --- a/lib/mastodon/version.rb +++ b/lib/mastodon/version.rb @@ -17,7 +17,7 @@ module Mastodon end def default_prerelease - 'alpha.1' + 'alpha.3' end def prerelease diff --git a/lib/tasks/mastodon.rake b/lib/tasks/mastodon.rake index f50ef4bbff..cb364b3021 100644 --- a/lib/tasks/mastodon.rake +++ b/lib/tasks/mastodon.rake @@ -544,6 +544,7 @@ namespace :mastodon do owner_role = UserRole.find_by(name: 'Owner') user = User.new(email: email, password: password, confirmed_at: Time.now.utc, account_attributes: { username: username }, bypass_invite_request_check: true, role: owner_role) user.save(validate: false) + user.approve! Setting.site_contact_username = username diff --git a/lib/tasks/sidekiq_unique_jobs.rake b/lib/tasks/sidekiq_unique_jobs.rake new file mode 100644 index 0000000000..bedc8fe4c6 --- /dev/null +++ b/lib/tasks/sidekiq_unique_jobs.rake @@ -0,0 +1,11 @@ +# frozen_string_literal: true + +namespace :sidekiq_unique_jobs do + task delete_all_locks: :environment do + digests = SidekiqUniqueJobs::Digests.new + digests.delete_by_pattern('*', count: digests.count) + + expiring_digests = SidekiqUniqueJobs::ExpiringDigests.new + expiring_digests.delete_by_pattern('*', count: expiring_digests.count) + end +end diff --git a/lib/tasks/tests.rake b/lib/tasks/tests.rake index 885be79f41..935f6d24a3 100644 --- a/lib/tasks/tests.rake +++ b/lib/tasks/tests.rake @@ -50,7 +50,7 @@ namespace :tests do exit(1) end - if Account.find(-99).private_key.blank? + if Account.find(Account::INSTANCE_ACTOR_ID).private_key.blank? puts 'Instance actor does not have a private key' exit(1) end diff --git a/package.json b/package.json index d0b1b2e71c..9f20a981ae 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@mastodon/mastodon", "license": "AGPL-3.0-or-later", - "packageManager": "yarn@4.0.2", + "packageManager": "yarn@4.1.1", "engines": { "node": ">=18" }, @@ -12,22 +12,18 @@ "scripts": { "build:development": "cross-env RAILS_ENV=development NODE_ENV=development ./bin/webpack", "build:production": "cross-env RAILS_ENV=production NODE_ENV=production ./bin/webpack", - "fix:js": "yarn lint:js --fix", - "fix:json": "prettier --write \"**/*.{json,json5}\"", - "fix:md": "prettier --write \"**/*.md\"", - "fix:sass": "stylelint --fix \"**/*.{css,scss}\" && prettier --write \"**/*.{css,scss}\"", - "fix:yml": "prettier --write \"**/*.{yaml,yml}\"", - "fix": "yarn fix:js && yarn fix:json && yarn fix:sass && yarn fix:yml", + "fix:js": "eslint . --ext=.js,.jsx,.ts,.tsx --cache --report-unused-disable-directives --fix", + "fix:css": "stylelint --fix \"**/*.{css,scss}\"", + "fix": "yarn fix:js && yarn fix:css", + "format": "prettier --write --log-level warn .", + "format:check": "prettier --check --ignore-unknown .", "i18n:extract": "formatjs extract 'app/javascript/**/*.{js,jsx,ts,tsx}' '--ignore=**/*.d.ts' --out-file app/javascript/mastodon/locales/en.json --format config/formatjs-formatter.js", "jest": "cross-env NODE_ENV=test jest", "lint:js": "eslint . --ext=.js,.jsx,.ts,.tsx --cache --report-unused-disable-directives", - "lint:json": "prettier --check \"**/*.{json,json5}\"", - "lint:md": "prettier --check \"**/*.md\"", - "lint:sass": "stylelint \"**/*.{css,scss}\" && prettier --check \"**/*.{css,scss}\"", - "lint:yml": "prettier --check \"**/*.{yaml,yml}\"", - "lint": "yarn lint:js && yarn lint:json && yarn lint:sass && yarn lint:yml", + "lint:css": "stylelint \"**/*.{css,scss}\"", + "lint": "yarn lint:js && yarn lint:css", "postversion": "git push --tags", - "prepare": "husky install", + "prepare": "husky", "start": "node ./streaming/index.js", "test": "yarn lint && yarn run typecheck && yarn jest", "typecheck": "tsc --noEmit" @@ -49,7 +45,7 @@ "@formatjs/intl-pluralrules": "^5.2.2", "@gamestdio/websocket": "^0.3.2", "@github/webauthn-json": "^2.1.1", - "@rails/ujs": "^7.1.1", + "@rails/ujs": "7.1.3-2", "@reduxjs/toolkit": "^2.0.1", "@svgr/webpack": "^5.5.0", "arrow-key-navigation": "^1.2.0", @@ -89,7 +85,6 @@ "mark-loader": "^0.1.6", "marky": "^1.2.5", "mini-css-extract-plugin": "^1.6.2", - "mkdirp": "^3.0.1", "path-complete-extname": "^1.0.0", "postcss": "^8.4.24", "postcss-loader": "^4.3.0", @@ -118,7 +113,6 @@ "redux-immutable": "^4.0.0", "regenerator-runtime": "^0.14.0", "requestidlecallback": "^0.3.0", - "rimraf": "^5.0.1", "sass": "^1.62.1", "sass-loader": "^10.2.0", "stacktrace-js": "^2.0.2", @@ -175,23 +169,20 @@ "@types/redux-immutable": "^4.0.3", "@types/requestidlecallback": "^0.3.5", "@types/webpack": "^4.41.33", - "@types/yargs": "^17.0.24", - "@typescript-eslint/eslint-plugin": "^6.0.0", - "@typescript-eslint/parser": "^6.17.0", + "@typescript-eslint/eslint-plugin": "^7.0.0", + "@typescript-eslint/parser": "^7.0.0", "babel-jest": "^29.5.0", "eslint": "^8.41.0", - "eslint-config-prettier": "^9.0.0", "eslint-define-config": "^2.0.0", "eslint-import-resolver-typescript": "^3.5.5", "eslint-plugin-formatjs": "^4.10.1", "eslint-plugin-import": "~2.29.0", "eslint-plugin-jsdoc": "^48.0.0", "eslint-plugin-jsx-a11y": "~6.8.0", - "eslint-plugin-prettier": "^5.0.0", "eslint-plugin-promise": "~6.1.1", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", - "husky": "^8.0.3", + "husky": "^9.0.11", "jest": "^29.5.0", "jest-environment-jsdom": "^29.5.0", "lint-staged": "^15.0.0", @@ -200,8 +191,7 @@ "stylelint": "^16.0.2", "stylelint-config-standard-scss": "^13.0.0", "typescript": "^5.0.4", - "webpack-dev-server": "^3.11.3", - "yargs": "^17.7.2" + "webpack-dev-server": "^3.11.3" }, "resolutions": { "kind-of": "^6.0.3", diff --git a/public/embed.js b/public/embed.js index defba403e4..f8e6a22db4 100644 --- a/public/embed.js +++ b/public/embed.js @@ -31,6 +31,8 @@ var iframe = iframes.get(data.id); + if(!iframe) return; + if ('source' in e && iframe.contentWindow !== e.source) { return; } @@ -38,7 +40,7 @@ iframe.height = data.height; }); - [].forEach.call(document.querySelectorAll('iframe.mastodon-embed'), function (iframe) { + document.querySelectorAll('iframe.mastodon-embed').forEach(iframe => { // select unique id for each iframe var id = 0, failCount = 0, idBuffer = new Uint32Array(1); while (id === 0 || iframes.has(id)) { diff --git a/spec/controllers/activitypub/collections_controller_spec.rb b/spec/controllers/activitypub/collections_controller_spec.rb index cf484ff5a4..11ef03c842 100644 --- a/spec/controllers/activitypub/collections_controller_spec.rb +++ b/spec/controllers/activitypub/collections_controller_spec.rb @@ -17,34 +17,27 @@ RSpec.describe ActivityPub::CollectionsController do end describe 'GET #show' do - context 'when id is "featured"' do - context 'without signature' do - subject(:response) { get :show, params: { id: 'featured', account_username: account.username } } + subject(:response) { get :show, params: { id: id, account_username: account.username } } - let(:body) { body_as_json } + context 'when id is "featured"' do + let(:id) { 'featured' } + + context 'without signature' do let(:remote_account) { nil } - it 'returns http success' do + it 'returns http success and correct media type' do expect(response).to have_http_status(200) - end - - it 'returns application/activity+json' do expect(response.media_type).to eq 'application/activity+json' end it_behaves_like 'cacheable response' - it 'returns orderedItems with pinned statuses' do - expect(body[:orderedItems]).to be_an Array - expect(body[:orderedItems].size).to eq 3 - end - - it 'includes URI of private pinned status' do - expect(body[:orderedItems]).to include(ActivityPub::TagManager.instance.uri_for(private_pinned)) - end - - it 'does not include contents of private pinned status' do - expect(response.body).to_not include(private_pinned.text) + it 'returns orderedItems with correct items' do + expect(body_as_json[:orderedItems]) + .to be_an(Array) + .and have_attributes(size: 3) + .and include(ActivityPub::TagManager.instance.uri_for(private_pinned)) + .and not_include(private_pinned.text) end context 'when account is permanently suspended' do @@ -73,33 +66,19 @@ RSpec.describe ActivityPub::CollectionsController do let(:remote_account) { Fabricate(:account, domain: 'example.com') } context 'when getting a featured resource' do - before do - get :show, params: { id: 'featured', account_username: account.username } - end - - it 'returns http success' do + it 'returns http success and correct media type' do expect(response).to have_http_status(200) - end - - it 'returns application/activity+json' do expect(response.media_type).to eq 'application/activity+json' end it_behaves_like 'cacheable response' - it 'returns orderedItems with pinned statuses' do - json = body_as_json - expect(json[:orderedItems]).to be_an Array - expect(json[:orderedItems].size).to eq 3 - end - - it 'includes URI of private pinned status' do - json = body_as_json - expect(json[:orderedItems]).to include(ActivityPub::TagManager.instance.uri_for(private_pinned)) - end - - it 'does not include contents of private pinned status' do - expect(response.body).to_not include(private_pinned.text) + it 'returns orderedItems with expected items' do + expect(body_as_json[:orderedItems]) + .to be_an(Array) + .and have_attributes(size: 3) + .and include(ActivityPub::TagManager.instance.uri_for(private_pinned)) + .and not_include(private_pinned.text) end end @@ -111,50 +90,36 @@ RSpec.describe ActivityPub::CollectionsController do context 'when signed request account is blocked' do before do account.block!(remote_account) - get :show, params: { id: 'featured', account_username: account.username } end - it 'returns http success' do + it 'returns http success and correct media type and cache headers' do expect(response).to have_http_status(200) - end - - it 'returns application/activity+json' do expect(response.media_type).to eq 'application/activity+json' - end - - it 'returns private Cache-Control header' do expect(response.headers['Cache-Control']).to include 'private' end it 'returns empty orderedItems' do - json = body_as_json - expect(json[:orderedItems]).to be_an Array - expect(json[:orderedItems].size).to eq 0 + expect(body_as_json[:orderedItems]) + .to be_an(Array) + .and have_attributes(size: 0) end end context 'when signed request account is domain blocked' do before do account.block_domain!(remote_account.domain) - get :show, params: { id: 'featured', account_username: account.username } end - it 'returns http success' do + it 'returns http success and correct media type and cache headers' do expect(response).to have_http_status(200) - end - - it 'returns application/activity+json' do expect(response.media_type).to eq 'application/activity+json' - end - - it 'returns private Cache-Control header' do expect(response.headers['Cache-Control']).to include 'private' end it 'returns empty orderedItems' do - json = body_as_json - expect(json[:orderedItems]).to be_an Array - expect(json[:orderedItems].size).to eq 0 + expect(body_as_json[:orderedItems]) + .to be_an(Array) + .and have_attributes(size: 0) end end end @@ -162,8 +127,9 @@ RSpec.describe ActivityPub::CollectionsController do end context 'when id is not "featured"' do + let(:id) { 'hoge' } + it 'returns http not found' do - get :show, params: { id: 'hoge', account_username: account.username } expect(response).to have_http_status(404) end end diff --git a/spec/controllers/activitypub/replies_controller_spec.rb b/spec/controllers/activitypub/replies_controller_spec.rb index 6b5a69d42a..db7f60d3f8 100644 --- a/spec/controllers/activitypub/replies_controller_spec.rb +++ b/spec/controllers/activitypub/replies_controller_spec.rb @@ -90,7 +90,7 @@ RSpec.describe ActivityPub::RepliesController do context 'when there are few self-replies' do it 'points next to replies from other people' do expect(page_json).to be_a Hash - expect(Addressable::URI.parse(page_json[:next]).query.split('&')).to include('only_other_accounts=true', 'page=true') + expect(parsed_uri_query_values(page_json[:next])).to include('only_other_accounts=true', 'page=true') end end @@ -101,7 +101,7 @@ RSpec.describe ActivityPub::RepliesController do it 'points next to other self-replies' do expect(page_json).to be_a Hash - expect(Addressable::URI.parse(page_json[:next]).query.split('&')).to include('only_other_accounts=false', 'page=true') + expect(parsed_uri_query_values(page_json[:next])).to include('only_other_accounts=false', 'page=true') end end end @@ -140,7 +140,7 @@ RSpec.describe ActivityPub::RepliesController do it 'points next to other replies' do expect(page_json).to be_a Hash - expect(Addressable::URI.parse(page_json[:next]).query.split('&')).to include('only_other_accounts=true', 'page=true') + expect(parsed_uri_query_values(page_json[:next])).to include('only_other_accounts=true', 'page=true') end end end @@ -196,6 +196,13 @@ RSpec.describe ActivityPub::RepliesController do private + def parsed_uri_query_values(uri) + Addressable::URI + .parse(uri) + .query + .split('&') + end + def ap_public_collection ActivityPub::TagManager::COLLECTIONS[:public] end diff --git a/spec/controllers/admin/accounts_controller_spec.rb b/spec/controllers/admin/accounts_controller_spec.rb index ef3053b6b3..b90bb414b0 100644 --- a/spec/controllers/admin/accounts_controller_spec.rb +++ b/spec/controllers/admin/accounts_controller_spec.rb @@ -9,18 +9,8 @@ RSpec.describe Admin::AccountsController do describe 'GET #index' do let(:current_user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) } - - around do |example| - default_per_page = Account.default_per_page - Account.paginates_per 1 - example.run - Account.paginates_per default_per_page - end - - it 'filters with parameters' do - account_filter = instance_double(AccountFilter, results: Account.all) - allow(AccountFilter).to receive(:new).and_return(account_filter) - params = { + let(:params) do + { origin: 'local', by_domain: 'domain', status: 'active', @@ -29,25 +19,35 @@ RSpec.describe Admin::AccountsController do email: 'local-part@domain', ip: '0.0.0.42', } - - get :index, params: params - - expect(AccountFilter).to have_received(:new).with(hash_including(params)) end - it 'paginates accounts' do + around do |example| + default_per_page = Account.default_per_page + Account.paginates_per 1 + example.run + Account.paginates_per default_per_page + end + + before do Fabricate(:account) - get :index, params: { page: 2 } - - accounts = assigns(:accounts) - expect(accounts.count).to eq 1 - expect(accounts.klass).to be Account + account_filter = instance_double(AccountFilter, results: Account.all) + allow(AccountFilter).to receive(:new).and_return(account_filter) end - it 'returns http success' do - get :index - expect(response).to have_http_status(200) + it 'returns success and paginates and filters with parameters' do + get :index, params: params.merge(page: 2) + + expect(response) + .to have_http_status(200) + expect(assigns(:accounts)) + .to have_attributes( + count: eq(1), + klass: be(Account) + ) + expect(AccountFilter) + .to have_received(:new) + .with(hash_including(params)) end end diff --git a/spec/controllers/admin/disputes/appeals_controller_spec.rb b/spec/controllers/admin/disputes/appeals_controller_spec.rb index f830c3b95c..bf7f9bd704 100644 --- a/spec/controllers/admin/disputes/appeals_controller_spec.rb +++ b/spec/controllers/admin/disputes/appeals_controller_spec.rb @@ -30,42 +30,48 @@ RSpec.describe Admin::Disputes::AppealsController do end describe 'POST #approve' do + subject { post :approve, params: { id: appeal.id } } + let(:current_user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) } - before do - post :approve, params: { id: appeal.id } - end + it 'redirects back to the strike page and notifies target account about approved appeal', :sidekiq_inline do + emails = capture_emails { subject } - it 'unsuspends a suspended account' do - expect(target_account.reload.suspended?).to be false - end + expect(response) + .to redirect_to(disputes_strike_path(appeal.strike)) - it 'redirects back to the strike page' do - expect(response).to redirect_to(disputes_strike_path(appeal.strike)) - end + expect(target_account.reload) + .to_not be_suspended - it 'notifies target account about approved appeal', :sidekiq_inline do - expect(UserMailer.deliveries.size).to eq(1) - expect(UserMailer.deliveries.first.to.first).to eq(target_account.user.email) - expect(UserMailer.deliveries.first.subject).to eq(I18n.t('user_mailer.appeal_approved.subject', date: I18n.l(appeal.created_at))) + expect(emails.size) + .to eq(1) + expect(emails.first) + .to have_attributes( + to: contain_exactly(target_account.user.email), + subject: eq(I18n.t('user_mailer.appeal_approved.subject', date: I18n.l(appeal.created_at))) + ) end end describe 'POST #reject' do + subject { post :reject, params: { id: appeal.id } } + let(:current_user) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) } - before do - post :reject, params: { id: appeal.id } - end + it 'redirects back to the strike page and notifies target account about rejected appeal', :sidekiq_inline do + emails = capture_emails { subject } - it 'redirects back to the strike page' do - expect(response).to redirect_to(disputes_strike_path(appeal.strike)) - end + expect(response) + .to redirect_to(disputes_strike_path(appeal.strike)) - it 'notifies target account about rejected appeal', :sidekiq_inline do - expect(UserMailer.deliveries.size).to eq(1) - expect(UserMailer.deliveries.first.to.first).to eq(target_account.user.email) - expect(UserMailer.deliveries.first.subject).to eq(I18n.t('user_mailer.appeal_rejected.subject', date: I18n.l(appeal.created_at))) + expect(emails.size) + .to eq(1) + + expect(emails.first) + .to have_attributes( + to: contain_exactly(target_account.user.email), + subject: eq(I18n.t('user_mailer.appeal_rejected.subject', date: I18n.l(appeal.created_at))) + ) end end end diff --git a/spec/controllers/admin/invites_controller_spec.rb b/spec/controllers/admin/invites_controller_spec.rb index c8f566f68b..71748cbbec 100644 --- a/spec/controllers/admin/invites_controller_spec.rb +++ b/spec/controllers/admin/invites_controller_spec.rb @@ -44,14 +44,13 @@ describe Admin::InvitesController do end describe 'POST #deactivate_all' do + before { Fabricate(:invite, expires_at: nil) } + it 'expires all invites, then redirects to admin_invites_path' do - invites = Fabricate.times(1, :invite, expires_at: nil) - - post :deactivate_all - - invites.each do |invite| - expect(invite.reload).to be_expired - end + expect { post :deactivate_all } + .to change { Invite.exists?(expires_at: nil) } + .from(true) + .to(false) expect(response).to redirect_to admin_invites_path end diff --git a/spec/controllers/admin/reports_controller_spec.rb b/spec/controllers/admin/reports_controller_spec.rb index 97daaf8da9..02760154fb 100644 --- a/spec/controllers/admin/reports_controller_spec.rb +++ b/spec/controllers/admin/reports_controller_spec.rb @@ -58,6 +58,7 @@ describe Admin::ReportsController do report.reload expect(report.action_taken_by_account).to eq user.account expect(report.action_taken?).to be true + expect(last_action_log.target).to eq(report) end end @@ -70,6 +71,7 @@ describe Admin::ReportsController do report.reload expect(report.action_taken_by_account).to be_nil expect(report.action_taken?).to be false + expect(last_action_log.target).to eq(report) end end @@ -81,6 +83,7 @@ describe Admin::ReportsController do expect(response).to redirect_to(admin_report_path(report)) report.reload expect(report.assigned_account).to eq user.account + expect(last_action_log.target).to eq(report) end end @@ -92,6 +95,13 @@ describe Admin::ReportsController do expect(response).to redirect_to(admin_report_path(report)) report.reload expect(report.assigned_account).to be_nil + expect(last_action_log.target).to eq(report) end end + + private + + def last_action_log + Admin::ActionLog.last + end end diff --git a/spec/controllers/admin/resets_controller_spec.rb b/spec/controllers/admin/resets_controller_spec.rb index e82a3a6afa..10ed2cf969 100644 --- a/spec/controllers/admin/resets_controller_spec.rb +++ b/spec/controllers/admin/resets_controller_spec.rb @@ -5,6 +5,8 @@ require 'rails_helper' describe Admin::ResetsController do render_views + subject { post :create, params: { account_id: account.id } } + let(:account) { Fabricate(:account) } before do @@ -13,11 +15,11 @@ describe Admin::ResetsController do describe 'POST #create', :sidekiq_inline do it 'redirects to admin accounts page' do - expect do - post :create, params: { account_id: account.id } - end.to change(Devise.mailer.deliveries, :size).by(2) + emails = capture_emails { subject } - expect(Devise.mailer.deliveries).to have_attributes( + expect(emails.size) + .to eq(2) + expect(emails).to have_attributes( first: have_attributes( to: include(account.user.email), subject: I18n.t('devise.mailer.password_change.subject') diff --git a/spec/controllers/api/v1/accounts/statuses_controller_spec.rb b/spec/controllers/api/v1/accounts/statuses_controller_spec.rb deleted file mode 100644 index 9bf385c03d..0000000000 --- a/spec/controllers/api/v1/accounts/statuses_controller_spec.rb +++ /dev/null @@ -1,101 +0,0 @@ -# frozen_string_literal: true - -require 'rails_helper' - -describe Api::V1::Accounts::StatusesController do - render_views - - let(:user) { Fabricate(:user) } - let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: 'read:statuses') } - - before do - allow(controller).to receive(:doorkeeper_token) { token } - end - - describe 'GET #index' do - it 'returns expected headers', :aggregate_failures do - Fabricate(:status, account: user.account) - get :index, params: { account_id: user.account.id, limit: 1 } - - expect(response).to have_http_status(200) - expect(response.headers['Link'].links.size).to eq(2) - end - - context 'with only media' do - it 'returns http success' do - get :index, params: { account_id: user.account.id, only_media: true } - - expect(response).to have_http_status(200) - end - end - - context 'with exclude replies' do - let!(:status) { Fabricate(:status, account: user.account) } - let!(:status_self_reply) { Fabricate(:status, account: user.account, thread: status) } - - before do - Fabricate(:status, account: user.account, thread: Fabricate(:status)) # Reply to another user - get :index, params: { account_id: user.account.id, exclude_replies: true } - end - - it 'returns posts along with self replies', :aggregate_failures do - expect(response) - .to have_http_status(200) - expect(body_as_json) - .to have_attributes(size: 2) - .and contain_exactly( - include(id: status.id.to_s), - include(id: status_self_reply.id.to_s) - ) - end - end - - context 'with only own pinned' do - before do - Fabricate(:status_pin, account: user.account, status: Fabricate(:status, account: user.account)) - end - - it 'returns http success' do - get :index, params: { account_id: user.account.id, pinned: true } - - expect(response).to have_http_status(200) - end - end - - context "with someone else's pinned statuses" do - let(:account) { Fabricate(:account, username: 'bob', domain: 'example.com') } - let(:status) { Fabricate(:status, account: account) } - let(:private_status) { Fabricate(:status, account: account, visibility: :private) } - - before do - Fabricate(:status_pin, account: account, status: status) - Fabricate(:status_pin, account: account, status: private_status) - end - - it 'returns http success' do - get :index, params: { account_id: account.id, pinned: true } - expect(response).to have_http_status(200) - end - - context 'when user does not follow account' do - it 'lists the public status only' do - get :index, params: { account_id: account.id, pinned: true } - json = body_as_json - expect(json.map { |item| item[:id].to_i }).to eq [status.id] - end - end - - context 'when user follows account' do - before do - user.account.follow!(account) - end - - it 'lists both the public and the private statuses' do - get :index, params: { account_id: account.id, pinned: true } - json = body_as_json - expect(json.map { |item| item[:id].to_i }).to contain_exactly(status.id, private_status.id) - end - end - end - end -end diff --git a/spec/controllers/auth/registrations_controller_spec.rb b/spec/controllers/auth/registrations_controller_spec.rb index 0b7f02f590..75ab287652 100644 --- a/spec/controllers/auth/registrations_controller_spec.rb +++ b/spec/controllers/auth/registrations_controller_spec.rb @@ -44,27 +44,93 @@ RSpec.describe Auth::RegistrationsController do end end - describe 'GET #update' do - let(:user) { Fabricate(:user) } + describe 'PUT #update' do + let(:current_password) { 'current password' } + let(:user) { Fabricate(:user, password: current_password) } before do request.env['devise.mapping'] = Devise.mappings[:user] sign_in(user, scope: :user) - post :update end it 'returns http success' do + put :update expect(response).to have_http_status(200) end it 'returns private cache control headers' do + put :update expect(response.headers['Cache-Control']).to include('private, no-store') end + it 'can update the user email' do + expect do + put :update, params: { + user: { + email: 'newemail@example.com', + current_password: current_password, + }, + } + expect(response).to redirect_to(edit_user_registration_path) + end.to change { user.reload.unconfirmed_email }.to('newemail@example.com') + end + + it 'requires the current password to update the email' do + expect do + put :update, params: { + user: { + email: 'newemail@example.com', + current_password: 'something', + }, + } + expect(response).to have_http_status(200) + end.to_not(change { user.reload.unconfirmed_email }) + end + + it 'can update the user password' do + expect do + put :update, params: { + user: { + password: 'new password', + password_confirmation: 'new password', + current_password: current_password, + }, + } + expect(response).to redirect_to(edit_user_registration_path) + end.to(change { user.reload.encrypted_password }) + end + + it 'requires the password confirmation' do + expect do + put :update, params: { + user: { + password: 'new password', + password_confirmation: 'something else', + current_password: current_password, + }, + } + expect(response).to have_http_status(200) + end.to_not(change { user.reload.encrypted_password }) + end + + it 'requires the current password to update the password' do + expect do + put :update, params: { + user: { + password: 'new password', + password_confirmation: 'new password', + current_password: 'something', + }, + } + expect(response).to have_http_status(200) + end.to_not(change { user.reload.encrypted_password }) + end + context 'when suspended' do let(:user) { Fabricate(:user, account_attributes: { username: 'test', suspended_at: Time.now.utc }) } it 'returns http forbidden' do + put :update expect(response).to have_http_status(403) end end diff --git a/spec/controllers/auth/sessions_controller_spec.rb b/spec/controllers/auth/sessions_controller_spec.rb index b663f55afa..e78554ec7d 100644 --- a/spec/controllers/auth/sessions_controller_spec.rb +++ b/spec/controllers/auth/sessions_controller_spec.rb @@ -57,11 +57,9 @@ RSpec.describe Auth::SessionsController do post :create, params: { user: { email: 'pam_user1', password: '123456' } } end - it 'redirects to home' do + it 'redirects to home and logs the user in' do expect(response).to redirect_to(root_path) - end - it 'logs the user in' do expect(controller.current_user).to be_instance_of(User) end end @@ -71,11 +69,9 @@ RSpec.describe Auth::SessionsController do post :create, params: { user: { email: 'pam_user1', password: 'WRONGPW' } } end - it 'shows a login error' do + it 'shows a login error and does not log the user in' do expect(flash[:alert]).to match I18n.t('devise.failure.invalid', authentication_keys: I18n.t('activerecord.attributes.user.email')) - end - it "doesn't log the user in" do expect(controller.current_user).to be_nil end end @@ -92,11 +88,9 @@ RSpec.describe Auth::SessionsController do post :create, params: { user: { email: user.email, password: '123456' } } end - it 'redirects to home' do + it 'redirects to home and logs the user in' do expect(response).to redirect_to(root_path) - end - it 'logs the user in' do expect(controller.current_user).to eq user end end @@ -110,16 +104,16 @@ RSpec.describe Auth::SessionsController do post :create, params: { user: { email: user.email, password: user.password } } end - it 'redirects to home' do + it 'redirects to home and logs the user in' do expect(response).to redirect_to(root_path) - end - it 'logs the user in' do expect(controller.current_user).to eq user end end context 'when using a valid password on a previously-used account with a new IP address' do + subject { post :create, params: { user: { email: user.email, password: user.password } } } + let(:previous_ip) { '1.2.3.4' } let(:current_ip) { '4.3.2.1' } @@ -127,21 +121,24 @@ RSpec.describe Auth::SessionsController do Fabricate(:login_activity, user: user, ip: previous_ip) allow(controller.request).to receive(:remote_ip).and_return(current_ip) user.update(current_sign_in_at: 1.month.ago) - post :create, params: { user: { email: user.email, password: user.password } } end - it 'redirects to home' do - expect(response).to redirect_to(root_path) - end + it 'logs the user in and sends suspicious email and redirects home', :sidekiq_inline do + emails = capture_emails { subject } - it 'logs the user in' do - expect(controller.current_user).to eq user - end + expect(response) + .to redirect_to(root_path) - it 'sends a suspicious sign-in mail', :sidekiq_inline do - expect(UserMailer.deliveries.size).to eq(1) - expect(UserMailer.deliveries.first.to.first).to eq(user.email) - expect(UserMailer.deliveries.first.subject).to eq(I18n.t('user_mailer.suspicious_sign_in.subject')) + expect(controller.current_user) + .to eq user + + expect(emails.size) + .to eq(1) + expect(emails.first) + .to have_attributes( + to: contain_exactly(user.email), + subject: eq(I18n.t('user_mailer.suspicious_sign_in.subject')) + ) end end @@ -150,11 +147,9 @@ RSpec.describe Auth::SessionsController do post :create, params: { user: { email: user.email.upcase, password: user.password } } end - it 'redirects to home' do + it 'redirects to home and logs the user in' do expect(response).to redirect_to(root_path) - end - it 'logs the user in' do expect(controller.current_user).to eq user end end @@ -164,11 +159,9 @@ RSpec.describe Auth::SessionsController do post :create, params: { user: { email: user.email, password: 'wrongpw' } } end - it 'shows a login error' do + it 'shows a login error and does not log the user in' do expect(flash[:alert]).to match I18n.t('devise.failure.invalid', authentication_keys: I18n.t('activerecord.attributes.user.email')) - end - it "doesn't log the user in" do expect(controller.current_user).to be_nil end end @@ -270,29 +263,28 @@ RSpec.describe Auth::SessionsController do travel_to '2023-12-20T10:00:00Z' end - it 'does not log the user in' do - Auth::SessionsController::MAX_2FA_ATTEMPTS_PER_HOUR.times do - post :create, params: { user: { otp_attempt: '1234' } }, session: { attempt_user_id: user.id, attempt_user_updated_at: user.updated_at.to_s } - expect(controller.current_user).to be_nil + it 'does not log the user in, sets a flash message, and sends a suspicious sign in email', :sidekiq_inline do + emails = capture_emails do + Auth::SessionsController::MAX_2FA_ATTEMPTS_PER_HOUR.times do + post :create, params: { user: { otp_attempt: '1234' } }, session: { attempt_user_id: user.id, attempt_user_updated_at: user.updated_at.to_s } + expect(controller.current_user).to be_nil + end + post :create, params: { user: { otp_attempt: user.current_otp } }, session: { attempt_user_id: user.id, attempt_user_updated_at: user.updated_at.to_s } end - post :create, params: { user: { otp_attempt: user.current_otp } }, session: { attempt_user_id: user.id, attempt_user_updated_at: user.updated_at.to_s } + expect(controller.current_user) + .to be_nil - expect(controller.current_user).to be_nil - expect(flash[:alert]).to match I18n.t('users.rate_limited') - end + expect(flash[:alert]) + .to match I18n.t('users.rate_limited') - it 'sends a suspicious sign-in mail', :sidekiq_inline do - Auth::SessionsController::MAX_2FA_ATTEMPTS_PER_HOUR.times do - post :create, params: { user: { otp_attempt: '1234' } }, session: { attempt_user_id: user.id, attempt_user_updated_at: user.updated_at.to_s } - expect(controller.current_user).to be_nil - end - - post :create, params: { user: { otp_attempt: user.current_otp } }, session: { attempt_user_id: user.id, attempt_user_updated_at: user.updated_at.to_s } - - expect(UserMailer.deliveries.size).to eq(1) - expect(UserMailer.deliveries.first.to.first).to eq(user.email) - expect(UserMailer.deliveries.first.subject).to eq(I18n.t('user_mailer.failed_2fa.subject')) + expect(emails.size) + .to eq(1) + expect(emails.first) + .to have_attributes( + to: contain_exactly(user.email), + subject: eq(I18n.t('user_mailer.failed_2fa.subject')) + ) end end @@ -301,11 +293,9 @@ RSpec.describe Auth::SessionsController do post :create, params: { user: { otp_attempt: user.current_otp } }, session: { attempt_user_id: user.id, attempt_user_updated_at: user.updated_at.to_s } end - it 'redirects to home' do + it 'redirects to home and logs the user in' do expect(response).to redirect_to(root_path) - end - it 'logs the user in' do expect(controller.current_user).to eq user end end @@ -318,11 +308,9 @@ RSpec.describe Auth::SessionsController do post :create, params: { user: { otp_attempt: user.current_otp } }, session: { attempt_user_id: user.id, attempt_user_updated_at: user.updated_at.to_s } end - it 'shows a login error' do + it 'shows a login error and does not log the user in' do expect(flash[:alert]).to match I18n.t('users.invalid_otp_token') - end - it "doesn't log the user in" do expect(controller.current_user).to be_nil end end @@ -332,11 +320,9 @@ RSpec.describe Auth::SessionsController do post :create, params: { user: { otp_attempt: recovery_codes.first } }, session: { attempt_user_id: user.id, attempt_user_updated_at: user.updated_at.to_s } end - it 'redirects to home' do + it 'redirects to home and logs the user in' do expect(response).to redirect_to(root_path) - end - it 'logs the user in' do expect(controller.current_user).to eq user end end @@ -346,11 +332,9 @@ RSpec.describe Auth::SessionsController do post :create, params: { user: { otp_attempt: 'wrongotp' } }, session: { attempt_user_id: user.id, attempt_user_updated_at: user.updated_at.to_s } end - it 'shows a login error' do + it 'shows a login error and does not log the user in' do expect(flash[:alert]).to match I18n.t('users.invalid_otp_token') - end - it "doesn't log the user in" do expect(controller.current_user).to be_nil end end @@ -417,15 +401,11 @@ RSpec.describe Auth::SessionsController do post :create, params: { user: { credential: fake_credential } }, session: { attempt_user_id: user.id, attempt_user_updated_at: user.updated_at.to_s } end - it 'instructs the browser to redirect to home' do + it 'instructs the browser to redirect to home, logs the user in, and updates the sign count' do expect(body_as_json[:redirect_path]).to eq(root_path) - end - it 'logs the user in' do expect(controller.current_user).to eq user - end - it 'updates the sign count' do expect(webauthn_credential.reload.sign_count).to eq(sign_count) end end @@ -434,15 +414,17 @@ RSpec.describe Auth::SessionsController do end describe 'GET #webauthn_options' do + subject { get :webauthn_options, session: { attempt_user_id: user.id } } + + let!(:user) do + Fabricate(:user, email: 'x@y.com', password: 'abcdefgh', otp_required_for_login: true, otp_secret: User.generate_otp_secret(32)) + end + context 'with WebAuthn and OTP enabled as second factor' do let(:domain) { "#{Rails.configuration.x.use_https ? 'https' : 'http'}://#{Rails.configuration.x.web_domain}" } let(:fake_client) { WebAuthn::FakeClient.new(domain) } - let!(:user) do - Fabricate(:user, email: 'x@y.com', password: 'abcdefgh', otp_required_for_login: true, otp_secret: User.generate_otp_secret(32)) - end - before do user.update(webauthn_id: WebAuthn.generate_user_id) public_key_credential = WebAuthn::Credential.from_create(fake_client.create) @@ -456,9 +438,18 @@ RSpec.describe Auth::SessionsController do end it 'returns http success' do - get :webauthn_options + subject + expect(response).to have_http_status 200 end end + + context 'when WebAuthn not enabled' do + it 'returns http unauthorized' do + subject + + expect(response).to have_http_status 401 + end + end end end diff --git a/spec/controllers/custom_css_controller_spec.rb b/spec/controllers/custom_css_controller_spec.rb index 99d36d21b9..405fa0bcf3 100644 --- a/spec/controllers/custom_css_controller_spec.rb +++ b/spec/controllers/custom_css_controller_spec.rb @@ -14,17 +14,6 @@ describe CustomCssController do expect(response).to have_http_status(200) end - it 'returns public cache control header' do - expect(response.headers['Cache-Control']).to include('public') - end - - it 'does not set cookies' do - expect(response.cookies).to be_empty - expect(response.headers['Set-Cookies']).to be_nil - end - - it 'does not set sessions' do - expect(session).to be_empty - end + it_behaves_like 'cacheable response' end end diff --git a/spec/controllers/disputes/appeals_controller_spec.rb b/spec/controllers/disputes/appeals_controller_spec.rb index da2f86ade5..99d5a8b17f 100644 --- a/spec/controllers/disputes/appeals_controller_spec.rb +++ b/spec/controllers/disputes/appeals_controller_spec.rb @@ -10,19 +10,23 @@ RSpec.describe Disputes::AppealsController do let!(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) } describe '#create' do + subject { post :create, params: params } + context 'with valid params' do let(:current_user) { Fabricate(:user) } let(:strike) { Fabricate(:account_warning, target_account: current_user.account) } + let(:params) { { strike_id: strike.id, appeal: { text: 'Foo' } } } - before do - post :create, params: { strike_id: strike.id, appeal: { text: 'Foo' } } - end + it 'notifies staff about new appeal and redirects back to strike page', :sidekiq_inline do + emails = capture_emails { subject } - it 'notifies staff about new appeal', :sidekiq_inline do - expect(ActionMailer::Base.deliveries.first.to).to eq([admin.email]) - end - - it 'redirects back to the strike page' do + expect(emails.size) + .to eq(1) + expect(emails.first) + .to have_attributes( + to: contain_exactly(admin.email), + subject: eq(I18n.t('admin_mailer.new_appeal.subject', username: current_user.account.acct, instance: Rails.configuration.x.local_domain)) + ) expect(response).to redirect_to(disputes_strike_path(strike.id)) end end @@ -30,16 +34,12 @@ RSpec.describe Disputes::AppealsController do context 'with invalid params' do let(:current_user) { Fabricate(:user) } let(:strike) { Fabricate(:account_warning, target_account: current_user.account) } + let(:params) { { strike_id: strike.id, appeal: { text: '' } } } - before do - post :create, params: { strike_id: strike.id, appeal: { text: '' } } - end + it 'does not send email and renders strike show page', :sidekiq_inline do + emails = capture_emails { subject } - it 'does not send email', :sidekiq_inline do - expect(ActionMailer::Base.deliveries.size).to eq(0) - end - - it 'renders the strike show page' do + expect(emails).to be_empty expect(response).to render_template('disputes/strikes/show') end end diff --git a/spec/controllers/instance_actors_controller_spec.rb b/spec/controllers/instance_actors_controller_spec.rb index 36b9049fbc..70aaff9d65 100644 --- a/spec/controllers/instance_actors_controller_spec.rb +++ b/spec/controllers/instance_actors_controller_spec.rb @@ -12,21 +12,18 @@ RSpec.describe InstanceActorsController do get :show, params: { format: format } end - it 'returns http success with correct media type, headers, and session values' do - expect(response).to have_http_status(200) - - expect(response.media_type).to eq 'application/activity+json' - - expect(response.cookies).to be_empty - expect(response.headers['Set-Cookies']).to be_nil - - expect(session).to be_empty - - expect(response.headers['Cache-Control']).to include 'public' + it 'returns http success with correct media type and body' do + expect(response) + .to have_http_status(200) + .and have_attributes( + media_type: eq('application/activity+json') + ) expect(body_as_json) .to include(:id, :type, :preferredUsername, :inbox, :publicKey, :inbox, :outbox, :url) end + + it_behaves_like 'cacheable response' end before do diff --git a/spec/controllers/manifests_controller_spec.rb b/spec/controllers/manifests_controller_spec.rb index d0699c438b..9279fae024 100644 --- a/spec/controllers/manifests_controller_spec.rb +++ b/spec/controllers/manifests_controller_spec.rb @@ -14,17 +14,6 @@ describe ManifestsController do expect(response).to have_http_status(200) end - it 'returns public cache control header' do - expect(response.headers['Cache-Control']).to include('public') - end - - it 'does not set cookies' do - expect(response.cookies).to be_empty - expect(response.headers['Set-Cookies']).to be_nil - end - - it 'does not set sessions' do - expect(session).to be_empty - end + it_behaves_like 'cacheable response' end end diff --git a/spec/controllers/tags_controller_spec.rb b/spec/controllers/tags_controller_spec.rb index d41e707d43..2bb0c8de3b 100644 --- a/spec/controllers/tags_controller_spec.rb +++ b/spec/controllers/tags_controller_spec.rb @@ -20,13 +20,7 @@ RSpec.describe TagsController do expect(response).to have_http_status(200) end - it 'returns Vary header' do - expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' - end - - it 'returns public Cache-Control header' do - expect(response.headers['Cache-Control']).to include 'public' - end + it_behaves_like 'cacheable response', expects_vary: 'Accept, Accept-Language, Cookie' end context 'when requested as JSON' do @@ -36,13 +30,7 @@ RSpec.describe TagsController do expect(response).to have_http_status(200) end - it 'returns Vary header' do - expect(response.headers['Vary']).to eq 'Accept, Accept-Language, Cookie' - end - - it 'returns public Cache-Control header' do - expect(response.headers['Cache-Control']).to include 'public' - end + it_behaves_like 'cacheable response', expects_vary: 'Accept, Accept-Language, Cookie' end end diff --git a/spec/fabricators/software_update_fabricator.rb b/spec/fabricators/software_update_fabricator.rb index 622fff66e8..f4b607da0a 100644 --- a/spec/fabricators/software_update_fabricator.rb +++ b/spec/fabricators/software_update_fabricator.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true Fabricator(:software_update) do - version '99.99.99' + version { sequence(:version) { |point| "99.99.#{point}" } } urgent false type 'patch' end diff --git a/spec/features/admin/domain_blocks_spec.rb b/spec/features/admin/domain_blocks_spec.rb index 6a1405cdf6..99aa7cf1a7 100644 --- a/spec/features/admin/domain_blocks_spec.rb +++ b/spec/features/admin/domain_blocks_spec.rb @@ -12,9 +12,7 @@ describe 'blocking domains through the moderation interface' do it 'adds a new domain block' do visit new_admin_domain_block_path - fill_in 'domain_block_domain', with: 'example.com' - select I18n.t('admin.domain_blocks.new.severity.silence'), from: 'domain_block_severity' - click_on I18n.t('admin.domain_blocks.new.create') + submit_domain_block('example.com', 'silence') expect(DomainBlock.exists?(domain: 'example.com', severity: 'silence')).to be true expect(DomainBlockWorker).to have_received(:perform_async) @@ -25,9 +23,7 @@ describe 'blocking domains through the moderation interface' do it 'presents a confirmation screen before suspending the domain' do visit new_admin_domain_block_path - fill_in 'domain_block_domain', with: 'example.com' - select I18n.t('admin.domain_blocks.new.severity.suspend'), from: 'domain_block_severity' - click_on I18n.t('admin.domain_blocks.new.create') + submit_domain_block('example.com', 'suspend') # It doesn't immediately block but presents a confirmation screen expect(page).to have_title(I18n.t('admin.domain_blocks.confirm_suspension.title', domain: 'example.com')) @@ -47,9 +43,7 @@ describe 'blocking domains through the moderation interface' do visit new_admin_domain_block_path - fill_in 'domain_block_domain', with: 'example.com' - select I18n.t('admin.domain_blocks.new.severity.suspend'), from: 'domain_block_severity' - click_on I18n.t('admin.domain_blocks.new.create') + submit_domain_block('example.com', 'suspend') # It doesn't immediately block but presents a confirmation screen expect(page).to have_title(I18n.t('admin.domain_blocks.confirm_suspension.title', domain: 'example.com')) @@ -69,9 +63,7 @@ describe 'blocking domains through the moderation interface' do visit new_admin_domain_block_path - fill_in 'domain_block_domain', with: 'subdomain.example.com' - select I18n.t('admin.domain_blocks.new.severity.suspend'), from: 'domain_block_severity' - click_on I18n.t('admin.domain_blocks.new.create') + submit_domain_block('subdomain.example.com', 'suspend') # It doesn't immediately block but presents a confirmation screen expect(page).to have_title(I18n.t('admin.domain_blocks.confirm_suspension.title', domain: 'subdomain.example.com')) @@ -84,8 +76,11 @@ describe 'blocking domains through the moderation interface' do expect(DomainBlockWorker).to have_received(:perform_async) # And leaves the previous block alone - expect(domain_block.reload.severity).to eq 'silence' - expect(domain_block.reload.domain).to eq 'example.com' + expect(domain_block.reload) + .to have_attributes( + severity: eq('silence'), + domain: eq('example.com') + ) end end @@ -109,4 +104,12 @@ describe 'blocking domains through the moderation interface' do expect(domain_block.reload.severity).to eq 'suspend' end end + + private + + def submit_domain_block(domain, severity) + fill_in 'domain_block_domain', with: domain + select I18n.t("admin.domain_blocks.new.severity.#{severity}"), from: 'domain_block_severity' + click_on I18n.t('admin.domain_blocks.new.create') + end end diff --git a/spec/features/captcha_spec.rb b/spec/features/captcha_spec.rb index 15c37eb463..06c823adf2 100644 --- a/spec/features/captcha_spec.rb +++ b/spec/features/captcha_spec.rb @@ -19,12 +19,10 @@ describe 'email confirmation flow when captcha is enabled' do # It presents the user with a captcha form expect(page).to have_title(I18n.t('auth.captcha_confirmation.title')) - # It does not confirm the user just yet - expect(user.reload.confirmed?).to be false - # It redirects to app and confirms user - click_on I18n.t('challenge.confirm') - expect(user.reload.confirmed?).to be true + expect { click_on I18n.t('challenge.confirm') } + .to change { user.reload.confirmed? }.from(false).to(true) + expect(page).to have_current_path(/\A#{client_app.confirmation_redirect_uri}/, url: true) # Browsers will generally reload the original page upon redirection @@ -32,8 +30,9 @@ describe 'email confirmation flow when captcha is enabled' do visit "/auth/confirmation?confirmation_token=#{user.confirmation_token}&redirect_to_app=true" # It presents a page with a link to the app callback - expect(page).to have_content(I18n.t('auth.confirmations.registration_complete', domain: 'cb6e6126.ngrok.io')) - expect(page).to have_link(I18n.t('auth.confirmations.clicking_this_link'), href: client_app.confirmation_redirect_uri) + expect(page) + .to have_content(I18n.t('auth.confirmations.registration_complete', domain: 'cb6e6126.ngrok.io')) + .and have_link(I18n.t('auth.confirmations.clicking_this_link'), href: client_app.confirmation_redirect_uri) end end diff --git a/spec/fixtures/files/text.png b/spec/fixtures/files/text.png new file mode 100644 index 0000000000..7463b54fd5 Binary files /dev/null and b/spec/fixtures/files/text.png differ diff --git a/spec/helpers/json_ld_helper_spec.rb b/spec/helpers/json_ld_helper_spec.rb index 99857278a1..4855085027 100644 --- a/spec/helpers/json_ld_helper_spec.rb +++ b/spec/helpers/json_ld_helper_spec.rb @@ -56,15 +56,15 @@ describe JsonLdHelper do describe '#fetch_resource' do context 'when the second argument is false' do it 'returns resource even if the retrieved ID and the given URI does not match' do - stub_request(:get, 'https://bob.test/').to_return body: '{"id": "https://alice.test/"}' - stub_request(:get, 'https://alice.test/').to_return body: '{"id": "https://alice.test/"}' + stub_request(:get, 'https://bob.test/').to_return(body: '{"id": "https://alice.test/"}', headers: { 'Content-Type': 'application/activity+json' }) + stub_request(:get, 'https://alice.test/').to_return(body: '{"id": "https://alice.test/"}', headers: { 'Content-Type': 'application/activity+json' }) expect(fetch_resource('https://bob.test/', false)).to eq({ 'id' => 'https://alice.test/' }) end it 'returns nil if the object identified by the given URI and the object identified by the retrieved ID does not match' do - stub_request(:get, 'https://mallory.test/').to_return body: '{"id": "https://marvin.test/"}' - stub_request(:get, 'https://marvin.test/').to_return body: '{"id": "https://alice.test/"}' + stub_request(:get, 'https://mallory.test/').to_return(body: '{"id": "https://marvin.test/"}', headers: { 'Content-Type': 'application/activity+json' }) + stub_request(:get, 'https://marvin.test/').to_return(body: '{"id": "https://alice.test/"}', headers: { 'Content-Type': 'application/activity+json' }) expect(fetch_resource('https://mallory.test/', false)).to be_nil end @@ -72,7 +72,7 @@ describe JsonLdHelper do context 'when the second argument is true' do it 'returns nil if the retrieved ID and the given URI does not match' do - stub_request(:get, 'https://mallory.test/').to_return body: '{"id": "https://alice.test/"}' + stub_request(:get, 'https://mallory.test/').to_return(body: '{"id": "https://alice.test/"}', headers: { 'Content-Type': 'application/activity+json' }) expect(fetch_resource('https://mallory.test/', true)).to be_nil end end @@ -80,12 +80,12 @@ describe JsonLdHelper do describe '#fetch_resource_without_id_validation' do it 'returns nil if the status code is not 200' do - stub_request(:get, 'https://host.test/').to_return status: 400, body: '{}' + stub_request(:get, 'https://host.test/').to_return(status: 400, body: '{}', headers: { 'Content-Type': 'application/activity+json' }) expect(fetch_resource_without_id_validation('https://host.test/')).to be_nil end it 'returns hash' do - stub_request(:get, 'https://host.test/').to_return status: 200, body: '{}' + stub_request(:get, 'https://host.test/').to_return(status: 200, body: '{}', headers: { 'Content-Type': 'application/activity+json' }) expect(fetch_resource_without_id_validation('https://host.test/')).to eq({}) end end diff --git a/spec/lib/activitypub/activity/announce_spec.rb b/spec/lib/activitypub/activity/announce_spec.rb index 8ad892975d..b556bfd6c2 100644 --- a/spec/lib/activitypub/activity/announce_spec.rb +++ b/spec/lib/activitypub/activity/announce_spec.rb @@ -35,7 +35,7 @@ RSpec.describe ActivityPub::Activity::Announce do context 'when sender is followed by a local account' do before do Fabricate(:account).follow!(sender) - stub_request(:get, 'https://example.com/actor/hello-world').to_return(body: Oj.dump(unknown_object_json)) + stub_request(:get, 'https://example.com/actor/hello-world').to_return(body: Oj.dump(unknown_object_json), headers: { 'Content-Type': 'application/activity+json' }) subject.perform end @@ -120,7 +120,7 @@ RSpec.describe ActivityPub::Activity::Announce do let(:object_json) { 'https://example.com/actor/hello-world' } before do - stub_request(:get, 'https://example.com/actor/hello-world').to_return(body: Oj.dump(unknown_object_json)) + stub_request(:get, 'https://example.com/actor/hello-world').to_return(body: Oj.dump(unknown_object_json), headers: { 'Content-Type': 'application/activity+json' }) end context 'when the relay is enabled' do diff --git a/spec/lib/activitypub/activity/create_spec.rb b/spec/lib/activitypub/activity/create_spec.rb index e4966cffa3..dec17b916b 100644 --- a/spec/lib/activitypub/activity/create_spec.rb +++ b/spec/lib/activitypub/activity/create_spec.rb @@ -970,12 +970,15 @@ RSpec.describe ActivityPub::Activity::Create do it 'creates an encrypted message' do encrypted_message = target_device.encrypted_messages.reload.first - expect(encrypted_message).to_not be_nil - expect(encrypted_message.from_device_id).to eq '1234' - expect(encrypted_message.from_account).to eq sender - expect(encrypted_message.type).to eq 1 - expect(encrypted_message.body).to eq 'Foo' - expect(encrypted_message.digest).to eq 'Foo123' + expect(encrypted_message) + .to be_present + .and have_attributes( + from_device_id: eq('1234'), + from_account: eq(sender), + type: eq(1), + body: eq('Foo'), + digest: eq('Foo123') + ) end it 'creates a message franking' do diff --git a/spec/lib/activitypub/tag_manager_spec.rb b/spec/lib/activitypub/tag_manager_spec.rb index 55e9b4bb51..05d2609b0d 100644 --- a/spec/lib/activitypub/tag_manager_spec.rb +++ b/spec/lib/activitypub/tag_manager_spec.rb @@ -52,20 +52,27 @@ RSpec.describe ActivityPub::TagManager do expect(subject.to(status)).to include(subject.followers_uri_for(mentioned)) end - it "returns URIs of mentions for direct silenced author's status only if they are followers or requesting to be" do - bob = Fabricate(:account, username: 'bob') - alice = Fabricate(:account, username: 'alice') - foo = Fabricate(:account) - author = Fabricate(:account, username: 'author', silenced: true) - status = Fabricate(:status, visibility: :direct, account: author) - bob.follow!(author) - FollowRequest.create!(account: foo, target_account: author) - status.mentions.create(account: alice) - status.mentions.create(account: bob) - status.mentions.create(account: foo) - expect(subject.to(status)).to include(subject.uri_for(bob)) - expect(subject.to(status)).to include(subject.uri_for(foo)) - expect(subject.to(status)).to_not include(subject.uri_for(alice)) + context 'with followers and requested followers' do + let!(:bob) { Fabricate(:account, username: 'bob') } + let!(:alice) { Fabricate(:account, username: 'alice') } + let!(:foo) { Fabricate(:account) } + let!(:author) { Fabricate(:account, username: 'author', silenced: true) } + let!(:status) { Fabricate(:status, visibility: :direct, account: author) } + + before do + bob.follow!(author) + FollowRequest.create!(account: foo, target_account: author) + status.mentions.create(account: alice) + status.mentions.create(account: bob) + status.mentions.create(account: foo) + end + + it "returns URIs of mentions for direct silenced author's status only if they are followers or requesting to be" do + expect(subject.to(status)) + .to include(subject.uri_for(bob)) + .and include(subject.uri_for(foo)) + .and not_include(subject.uri_for(alice)) + end end end @@ -97,20 +104,27 @@ RSpec.describe ActivityPub::TagManager do expect(subject.cc(status)).to include(subject.uri_for(mentioned)) end - it "returns URIs of mentions for silenced author's non-direct status only if they are followers or requesting to be" do - bob = Fabricate(:account, username: 'bob') - alice = Fabricate(:account, username: 'alice') - foo = Fabricate(:account) - author = Fabricate(:account, username: 'author', silenced: true) - status = Fabricate(:status, visibility: :public, account: author) - bob.follow!(author) - FollowRequest.create!(account: foo, target_account: author) - status.mentions.create(account: alice) - status.mentions.create(account: bob) - status.mentions.create(account: foo) - expect(subject.cc(status)).to include(subject.uri_for(bob)) - expect(subject.cc(status)).to include(subject.uri_for(foo)) - expect(subject.cc(status)).to_not include(subject.uri_for(alice)) + context 'with followers and requested followers' do + let!(:bob) { Fabricate(:account, username: 'bob') } + let!(:alice) { Fabricate(:account, username: 'alice') } + let!(:foo) { Fabricate(:account) } + let!(:author) { Fabricate(:account, username: 'author', silenced: true) } + let!(:status) { Fabricate(:status, visibility: :public, account: author) } + + before do + bob.follow!(author) + FollowRequest.create!(account: foo, target_account: author) + status.mentions.create(account: alice) + status.mentions.create(account: bob) + status.mentions.create(account: foo) + end + + it "returns URIs of mentions for silenced author's non-direct status only if they are followers or requesting to be" do + expect(subject.cc(status)) + .to include(subject.uri_for(bob)) + .and include(subject.uri_for(foo)) + .and not_include(subject.uri_for(alice)) + end end it 'returns poster of reblogged post, if reblog' do diff --git a/spec/lib/request_pool_spec.rb b/spec/lib/request_pool_spec.rb index a31d078327..a82eb5a188 100644 --- a/spec/lib/request_pool_spec.rb +++ b/spec/lib/request_pool_spec.rb @@ -33,18 +33,14 @@ describe RequestPool do subject - threads = Array.new(5) do - Thread.new do - subject.with('http://example.com') do |http_client| - http_client.get('/').flush - # Nudge scheduler to yield and exercise the full pool - sleep(0.01) - end + multi_threaded_execution(5) do + subject.with('http://example.com') do |http_client| + http_client.get('/').flush + # Nudge scheduler to yield and exercise the full pool + sleep(0.01) end end - threads.map(&:join) - expect(subject.size).to be > 1 end diff --git a/spec/lib/signature_parser_spec.rb b/spec/lib/signature_parser_spec.rb new file mode 100644 index 0000000000..08e9bea66c --- /dev/null +++ b/spec/lib/signature_parser_spec.rb @@ -0,0 +1,34 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe SignatureParser do + describe '.parse' do + subject { described_class.parse(header) } + + context 'with Signature headers conforming to draft-cavage-http-signatures-12' do + let(:header) do + # This example signature string deliberately mixes uneven spacing + # and quoting styles to ensure everything is covered + 'keyId = "https://remote.domain/users/bob#main-key,",algorithm= rsa-sha256 , headers="host date digest (request-target)",signature="gmhMjgMROGElJU3fpehV2acD5kMHeELi8EFP2UPHOdQ54H0r55AxIpji+J3lPe+N2qSb/4H1KXIh6f0lRu8TGSsu12OQmg5hiO8VA9flcA/mh9Lpk+qwlQZIPRqKP9xUEfqD+Z7ti5wPzDKrWAUK/7FIqWgcT/mlqB1R1MGkpMFc/q4CIs2OSNiWgA4K+Kp21oQxzC2kUuYob04gAZ7cyE/FTia5t08uv6lVYFdRsn4XNPn1MsHgFBwBMRG79ng3SyhoG4PrqBEi5q2IdLq3zfre/M6He3wlCpyO2VJNdGVoTIzeZ0Zz8jUscPV3XtWUchpGclLGSaKaq/JyNZeiYQ=="' # rubocop:disable Layout/LineLength + end + + it 'correctly parses the header' do + expect(subject).to eq({ + 'keyId' => 'https://remote.domain/users/bob#main-key,', + 'algorithm' => 'rsa-sha256', + 'headers' => 'host date digest (request-target)', + 'signature' => 'gmhMjgMROGElJU3fpehV2acD5kMHeELi8EFP2UPHOdQ54H0r55AxIpji+J3lPe+N2qSb/4H1KXIh6f0lRu8TGSsu12OQmg5hiO8VA9flcA/mh9Lpk+qwlQZIPRqKP9xUEfqD+Z7ti5wPzDKrWAUK/7FIqWgcT/mlqB1R1MGkpMFc/q4CIs2OSNiWgA4K+Kp21oQxzC2kUuYob04gAZ7cyE/FTia5t08uv6lVYFdRsn4XNPn1MsHgFBwBMRG79ng3SyhoG4PrqBEi5q2IdLq3zfre/M6He3wlCpyO2VJNdGVoTIzeZ0Zz8jUscPV3XtWUchpGclLGSaKaq/JyNZeiYQ==', # rubocop:disable Layout/LineLength + }) + end + end + + context 'with a malformed Signature header' do + let(:header) { 'hello this is malformed!' } + + it 'raises an error' do + expect { subject }.to raise_error(SignatureParser::ParsingError) + end + end + end +end diff --git a/spec/models/account_spec.rb b/spec/models/account_spec.rb index 7ef5ca94cc..f6376eb36e 100644 --- a/spec/models/account_spec.rb +++ b/spec/models/account_spec.rb @@ -746,13 +746,13 @@ RSpec.describe Account do end it 'is valid if we are creating an instance actor account with a period' do - account = Fabricate.build(:account, id: -99, actor_type: 'Application', locked: true, username: 'example.com') + account = Fabricate.build(:account, id: described_class::INSTANCE_ACTOR_ID, actor_type: 'Application', locked: true, username: 'example.com') expect(account.valid?).to be true end it 'is valid if we are creating a possibly-conflicting instance actor account' do _account = Fabricate(:account, username: 'examplecom') - instance_account = Fabricate.build(:account, id: -99, actor_type: 'Application', locked: true, username: 'example.com') + instance_account = Fabricate.build(:account, id: described_class::INSTANCE_ACTOR_ID, actor_type: 'Application', locked: true, username: 'example.com') expect(instance_account.valid?).to be true end @@ -1035,19 +1035,10 @@ RSpec.describe Account do it 'increments the count in multi-threaded an environment when account_stat is not yet initialized' do subject - increment_by = 15 - wait_for_start = true - - threads = Array.new(increment_by) do - Thread.new do - true while wait_for_start - described_class.find(subject.id).increment_count!(:followers_count) - end + multi_threaded_execution(15) do + described_class.find(subject.id).increment_count!(:followers_count) end - wait_for_start = false - threads.each(&:join) - expect(subject.reload.followers_count).to eq 15 end end diff --git a/spec/models/account_suggestions/friends_of_friends_source_spec.rb b/spec/models/account_suggestions/friends_of_friends_source_spec.rb new file mode 100644 index 0000000000..56a974add5 --- /dev/null +++ b/spec/models/account_suggestions/friends_of_friends_source_spec.rb @@ -0,0 +1,82 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe AccountSuggestions::FriendsOfFriendsSource do + describe '#get' do + subject { described_class.new } + + let!(:bob) { Fabricate(:account, discoverable: true, hide_collections: false) } + let!(:alice) { Fabricate(:account, discoverable: true, hide_collections: true) } + let!(:eve) { Fabricate(:account, discoverable: true, hide_collections: false) } + let!(:mallory) { Fabricate(:account, discoverable: false, hide_collections: false) } + let!(:eugen) { Fabricate(:account, discoverable: true, hide_collections: false) } + let!(:john) { Fabricate(:account, discoverable: true, hide_collections: false) } + let!(:jerk) { Fabricate(:account, discoverable: true, hide_collections: false) } + let!(:neil) { Fabricate(:account, discoverable: true, hide_collections: false) } + let!(:larry) { Fabricate(:account, discoverable: true, hide_collections: false) } + + context 'with follows and blocks' do + before do + bob.block!(jerk) + FollowRecommendationMute.create!(account: bob, target_account: neil) + + # bob follows eugen, alice and larry + [eugen, alice, larry].each { |account| bob.follow!(account) } + + # alice follows eve and mallory + [john, mallory].each { |account| alice.follow!(account) } + + # eugen follows eve, john, jerk, larry and neil + [eve, mallory, jerk, larry, neil].each { |account| eugen.follow!(account) } + end + + it 'returns eligible accounts', :aggregate_failures do + results = subject.get(bob) + + # eve is returned through eugen + expect(results).to include([eve.id, :friends_of_friends]) + + # john is not reachable because alice hides who she follows + expect(results).to_not include([john.id, :friends_of_friends]) + + # mallory is not discoverable + expect(results).to_not include([mallory.id, :friends_of_friends]) + + # larry is not included because he's followed already + expect(results).to_not include([larry.id, :friends_of_friends]) + + # jerk is blocked + expect(results).to_not include([jerk.id, :friends_of_friends]) + + # the suggestion for neil has already been rejected + expect(results).to_not include([neil.id, :friends_of_friends]) + end + end + + context 'with deterministic order' do + before do + # bob follows eve and mallory + [eve, mallory].each { |account| bob.follow!(account) } + + # eve follows eugen, john, and jerk + [jerk, eugen, john].each { |account| eve.follow!(account) } + + # mallory follows eugen, john, and neil + [neil, eugen, john].each { |account| mallory.follow!(account) } + + john.follow!(eugen) + john.follow!(neil) + end + + it 'returns eligible accounts in the expected order' do + expect(subject.get(bob)).to eq [ + [eugen.id, :friends_of_friends], # followed by 2 friends, 3 followers total + [john.id, :friends_of_friends], # followed by 2 friends, 2 followers total + [neil.id, :friends_of_friends], # followed by 1 friend, 2 followers total + [jerk.id, :friends_of_friends], # followed by 1 friend, 1 follower total + ] + end + end + end +end diff --git a/spec/models/account_suggestions/source_spec.rb b/spec/models/account_suggestions/source_spec.rb index d8227e01bc..1666094082 100644 --- a/spec/models/account_suggestions/source_spec.rb +++ b/spec/models/account_suggestions/source_spec.rb @@ -11,14 +11,16 @@ RSpec.describe AccountSuggestions::Source do end context 'with follows and follow requests' do - let!(:account_domain_blocked_account) { Fabricate(:account, domain: 'blocked.host') } - let!(:account) { Fabricate(:account) } - let!(:blocked_account) { Fabricate(:account) } - let!(:eligible_account) { Fabricate(:account) } - let!(:follow_recommendation_muted_account) { Fabricate(:account) } - let!(:follow_requested_account) { Fabricate(:account) } - let!(:following_account) { Fabricate(:account) } - let!(:moved_account) { Fabricate(:account, moved_to_account: Fabricate(:account)) } + let!(:account_domain_blocked_account) { Fabricate(:account, domain: 'blocked.host', discoverable: true) } + let!(:account) { Fabricate(:account, discoverable: true) } + let!(:blocked_account) { Fabricate(:account, discoverable: true) } + let!(:eligible_account) { Fabricate(:account, discoverable: true) } + let!(:follow_recommendation_muted_account) { Fabricate(:account, discoverable: true) } + let!(:follow_requested_account) { Fabricate(:account, discoverable: true) } + let!(:following_account) { Fabricate(:account, discoverable: true) } + let!(:moved_account) { Fabricate(:account, moved_to_account: Fabricate(:account), discoverable: true) } + let!(:silenced_account) { Fabricate(:account, silenced: true, discoverable: true) } + let!(:undiscoverable_account) { Fabricate(:account, discoverable: false) } before do Fabricate :account_domain_block, account: account, domain: account_domain_blocked_account.domain @@ -40,6 +42,8 @@ RSpec.describe AccountSuggestions::Source do .and not_include(follow_requested_account) .and not_include(following_account) .and not_include(moved_account) + .and not_include(silenced_account) + .and not_include(undiscoverable_account) end end end diff --git a/spec/models/concerns/account/counters_spec.rb b/spec/models/concerns/account/counters_spec.rb index 2e1cd700bc..3c063a2fa2 100644 --- a/spec/models/concerns/account/counters_spec.rb +++ b/spec/models/concerns/account/counters_spec.rb @@ -6,6 +6,8 @@ describe Account::Counters do let!(:account) { Fabricate(:account) } describe '#increment_count!' do + let(:increment_by) { 15 } + it 'increments the count' do expect(account.followers_count).to eq 0 account.increment_count!(:followers_count) @@ -13,24 +15,17 @@ describe Account::Counters do end it 'increments the count in multi-threaded an environment' do - increment_by = 15 - wait_for_start = true - - threads = Array.new(increment_by) do - Thread.new do - true while wait_for_start - account.increment_count!(:statuses_count) - end + multi_threaded_execution(increment_by) do + account.increment_count!(:statuses_count) end - wait_for_start = false - threads.each(&:join) - expect(account.statuses_count).to eq increment_by end end describe '#decrement_count!' do + let(:decrement_by) { 10 } + it 'decrements the count' do account.followers_count = 15 account.save! @@ -40,22 +35,13 @@ describe Account::Counters do end it 'decrements the count in multi-threaded an environment' do - decrement_by = 10 - wait_for_start = true - account.statuses_count = 15 account.save! - threads = Array.new(decrement_by) do - Thread.new do - true while wait_for_start - account.decrement_count!(:statuses_count) - end + multi_threaded_execution(decrement_by) do + account.decrement_count!(:statuses_count) end - wait_for_start = false - threads.each(&:join) - expect(account.statuses_count).to eq 5 end end diff --git a/spec/models/identity_spec.rb b/spec/models/identity_spec.rb index 7022454443..d5a2ffbc86 100644 --- a/spec/models/identity_spec.rb +++ b/spec/models/identity_spec.rb @@ -3,19 +3,19 @@ require 'rails_helper' RSpec.describe Identity do - describe '.find_for_oauth' do + describe '.find_for_omniauth' do let(:auth) { Fabricate(:identity, user: Fabricate(:user)) } it 'calls .find_or_create_by' do allow(described_class).to receive(:find_or_create_by) - described_class.find_for_oauth(auth) + described_class.find_for_omniauth(auth) expect(described_class).to have_received(:find_or_create_by).with(uid: auth.uid, provider: auth.provider) end it 'returns an instance of Identity' do - expect(described_class.find_for_oauth(auth)).to be_instance_of described_class + expect(described_class.find_for_omniauth(auth)).to be_instance_of described_class end end end diff --git a/spec/models/ip_block_spec.rb b/spec/models/ip_block_spec.rb index ed58826672..290b99b288 100644 --- a/spec/models/ip_block_spec.rb +++ b/spec/models/ip_block_spec.rb @@ -3,7 +3,32 @@ require 'rails_helper' describe IpBlock do - describe 'to_log_human_identifier' do + describe 'validations' do + it 'validates ip presence', :aggregate_failures do + ip_block = described_class.new(ip: nil, severity: :no_access) + + expect(ip_block).to_not be_valid + expect(ip_block).to model_have_error_on_field(:ip) + end + + it 'validates severity presence', :aggregate_failures do + ip_block = described_class.new(ip: '127.0.0.1', severity: nil) + + expect(ip_block).to_not be_valid + expect(ip_block).to model_have_error_on_field(:severity) + end + + it 'validates ip uniqueness', :aggregate_failures do + described_class.create!(ip: '127.0.0.1', severity: :no_access) + + ip_block = described_class.new(ip: '127.0.0.1', severity: :no_access) + + expect(ip_block).to_not be_valid + expect(ip_block).to model_have_error_on_field(:ip) + end + end + + describe '#to_log_human_identifier' do let(:ip_block) { described_class.new(ip: '192.168.0.1') } it 'combines the IP and prefix into a string' do @@ -12,4 +37,30 @@ describe IpBlock do expect(result).to eq('192.168.0.1/32') end end + + describe '.blocked?' do + context 'when the IP is blocked' do + it 'returns true' do + described_class.create!(ip: '127.0.0.1', severity: :no_access) + + expect(described_class.blocked?('127.0.0.1')).to be true + end + end + + context 'when the IP is not blocked' do + it 'returns false' do + expect(described_class.blocked?('127.0.0.1')).to be false + end + end + end + + describe 'after_commit' do + it 'resets the cache' do + allow(Rails.cache).to receive(:delete) + + described_class.create!(ip: '127.0.0.1', severity: :no_access) + + expect(Rails.cache).to have_received(:delete).with(described_class::CACHE_KEY) + end + end end diff --git a/spec/models/media_attachment_spec.rb b/spec/models/media_attachment_spec.rb index 89916f9f50..1b9a13c38c 100644 --- a/spec/models/media_attachment_spec.rb +++ b/spec/models/media_attachment_spec.rb @@ -91,20 +91,15 @@ RSpec.describe MediaAttachment, :paperclip_processing do end it 'saves media attachment with correct file metadata' do - expect(media.persisted?).to be true - expect(media.file).to_not be_nil - - # completes processing - expect(media.processing_complete?).to be true - - # sets type - expect(media.type).to eq 'image' - - # sets content type - expect(media.file_content_type).to eq content_type - - # sets file extension - expect(media.file_file_name).to end_with extension + expect(media) + .to be_persisted + .and be_processing_complete + .and have_attributes( + file: be_present, + type: eq('image'), + file_content_type: eq(content_type), + file_file_name: end_with(extension) + ) # Rack::Mime (used by PublicFileServerMiddleware) recognizes file extension expect(Rack::Mime.mime_type(extension, nil)).to eq content_type @@ -112,17 +107,23 @@ RSpec.describe MediaAttachment, :paperclip_processing do it 'saves media attachment with correct size metadata' do # strips original file name - expect(media.file_file_name).to_not start_with '600x400' + expect(media.file_file_name) + .to_not start_with '600x400' - # sets meta for original - expect(media.file.meta['original']['width']).to eq 600 - expect(media.file.meta['original']['height']).to eq 400 - expect(media.file.meta['original']['aspect']).to eq 1.5 - - # sets meta for thumbnail - expect(media.file.meta['small']['width']).to eq 588 - expect(media.file.meta['small']['height']).to eq 392 - expect(media.file.meta['small']['aspect']).to eq 1.5 + # sets meta for original and thumbnail + expect(media.file.meta.deep_symbolize_keys) + .to include( + original: include( + width: eq(600), + height: eq(400), + aspect: eq(1.5) + ), + small: include( + width: eq(588), + height: eq(392), + aspect: eq(1.5) + ) + ) end end diff --git a/spec/models/report_spec.rb b/spec/models/report_spec.rb index c514c63b39..0168268bcb 100644 --- a/spec/models/report_spec.rb +++ b/spec/models/report_spec.rb @@ -133,5 +133,18 @@ describe Report do report = Fabricate.build(:report, account: remote_account, comment: Faker::Lorem.characters(number: 1001)) expect(report.valid?).to be true end + + it 'is invalid if it references invalid rules' do + report = Fabricate.build(:report, category: :violation, rule_ids: [-1]) + expect(report.valid?).to be false + expect(report).to model_have_error_on_field(:rule_ids) + end + + it 'is invalid if it references rules but category is not "violation"' do + rule = Fabricate(:rule) + report = Fabricate.build(:report, category: :spam, rule_ids: rule.id) + expect(report.valid?).to be false + expect(report).to model_have_error_on_field(:rule_ids) + end end end diff --git a/spec/models/tag_feed_spec.rb b/spec/models/tag_feed_spec.rb index 6f5e1eb307..61b8d8d824 100644 --- a/spec/models/tag_feed_spec.rb +++ b/spec/models/tag_feed_spec.rb @@ -2,7 +2,7 @@ require 'rails_helper' -describe TagFeed, type: :service do +describe TagFeed do describe '#get' do let(:account) { Fabricate(:account) } let(:tag_cats) { Fabricate(:tag, name: 'cats') } diff --git a/spec/models/user_role_spec.rb b/spec/models/user_role_spec.rb index d5234ebe8d..96d12263ae 100644 --- a/spec/models/user_role_spec.rb +++ b/spec/models/user_role_spec.rb @@ -139,7 +139,7 @@ RSpec.describe UserRole do end it 'has negative position' do - expect(subject.position).to eq(-1) + expect(subject.position).to eq(described_class::NOBODY_POSITION) end end @@ -159,17 +159,17 @@ RSpec.describe UserRole do end it 'has negative position' do - expect(subject.position).to eq(-1) + expect(subject.position).to eq(described_class::NOBODY_POSITION) end end describe '#everyone?' do - it 'returns true when id is -99' do - subject.id = -99 + it 'returns true when id matches the everyone id' do + subject.id = described_class::EVERYONE_ROLE_ID expect(subject.everyone?).to be true end - it 'returns false when id is not -99' do + it 'returns false when id does not match the everyone id' do subject.id = 123 expect(subject.everyone?).to be false end diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb index 5ac41c0ff1..39986f476c 100644 --- a/spec/models/user_spec.rb +++ b/spec/models/user_spec.rb @@ -420,7 +420,10 @@ RSpec.describe User do let!(:access_token) { Fabricate(:access_token, resource_owner_id: user.id) } let!(:web_push_subscription) { Fabricate(:web_push_subscription, access_token: access_token) } + let(:redis_pipeline_stub) { instance_double(Redis::Namespace, publish: nil) } + before do + allow(redis).to receive(:pipelined).and_yield(redis_pipeline_stub) user.reset_password! end @@ -437,6 +440,10 @@ RSpec.describe User do expect(Doorkeeper::AccessToken.active_for(user).count).to eq 0 end + it 'revokes streaming access for all access tokens' do + expect(redis_pipeline_stub).to have_received(:publish).with("timeline:access_token:#{access_token.id}", Oj.dump(event: :kill)).once + end + it 'removes push subscriptions' do expect(Web::PushSubscription.where(user: user).or(Web::PushSubscription.where(access_token: access_token)).count).to eq 0 expect { web_push_subscription.reload }.to raise_error(ActiveRecord::RecordNotFound) @@ -444,36 +451,35 @@ RSpec.describe User do end describe '#mark_email_as_confirmed!' do - subject(:user) { Fabricate(:user, confirmed_at: confirmed_at) } + subject { user.mark_email_as_confirmed! } - before do - ActionMailer::Base.deliveries.clear - user.mark_email_as_confirmed! - end - - after { ActionMailer::Base.deliveries.clear } + let!(:user) { Fabricate(:user, confirmed_at: confirmed_at) } context 'when user is new' do let(:confirmed_at) { nil } - it 'confirms user' do - expect(user.confirmed_at).to be_present - end + it 'confirms user and delivers welcome email', :sidekiq_inline do + emails = capture_emails { subject } - it 'delivers mails', :sidekiq_inline do - expect(ActionMailer::Base.deliveries.count).to eq 2 + expect(user.confirmed_at).to be_present + expect(emails.size) + .to eq(1) + expect(emails.first) + .to have_attributes( + to: contain_exactly(user.email), + subject: eq(I18n.t('user_mailer.welcome.subject')) + ) end end context 'when user is not new' do let(:confirmed_at) { Time.zone.now } - it 'confirms user' do - expect(user.confirmed_at).to be_present - end + it 'confirms user but does not deliver welcome email' do + emails = capture_emails { subject } - it 'does not deliver mail' do - expect(ActionMailer::Base.deliveries.count).to eq 0 + expect(user.confirmed_at).to be_present + expect(emails).to be_empty end end end diff --git a/spec/rails_helper.rb b/spec/rails_helper.rb index aaf587f49b..3e84d68738 100644 --- a/spec/rails_helper.rb +++ b/spec/rails_helper.rb @@ -82,10 +82,12 @@ RSpec.configure do |config| config.include Devise::Test::ControllerHelpers, type: :view config.include Devise::Test::IntegrationHelpers, type: :feature config.include Devise::Test::IntegrationHelpers, type: :request + config.include ActionMailer::TestHelper config.include Paperclip::Shoulda::Matchers config.include ActiveSupport::Testing::TimeHelpers config.include Chewy::Rspec::Helpers config.include Redisable + config.include ThreadingHelpers config.include SignedRequestHelpers, type: :request config.include CommandLineHelpers, type: :cli @@ -95,8 +97,13 @@ RSpec.configure do |config| self.use_transactional_tests = true end - config.around(:each, :sidekiq_inline) do |example| - Sidekiq::Testing.inline!(&example) + config.around do |example| + if example.metadata[:sidekiq_inline] == true + Sidekiq::Testing.inline! + else + Sidekiq::Testing.fake! + end + example.run end config.before :each, type: :cli do diff --git a/spec/requests/api/v1/accounts/statuses_spec.rb b/spec/requests/api/v1/accounts/statuses_spec.rb new file mode 100644 index 0000000000..371867b215 --- /dev/null +++ b/spec/requests/api/v1/accounts/statuses_spec.rb @@ -0,0 +1,149 @@ +# frozen_string_literal: true + +require 'rails_helper' + +describe 'API V1 Accounts Statuses' do + let(:user) { Fabricate(:user) } + let(:scopes) { 'read:statuses' } + let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } + let(:headers) { { 'Authorization' => "Bearer #{token.token}" } } + + describe 'GET /api/v1/accounts/:account_id/statuses' do + it 'returns expected headers', :aggregate_failures do + Fabricate(:status, account: user.account) + get "/api/v1/accounts/#{user.account.id}/statuses", params: { limit: 1 }, headers: headers + + expect(response).to have_http_status(200) + expect(links_from_header.size) + .to eq(2) + end + + context 'with only media' do + it 'returns http success' do + get "/api/v1/accounts/#{user.account.id}/statuses", params: { only_media: true }, headers: headers + + expect(response).to have_http_status(200) + end + end + + context 'with exclude replies' do + let!(:status) { Fabricate(:status, account: user.account) } + let!(:status_self_reply) { Fabricate(:status, account: user.account, thread: status) } + + before do + Fabricate(:status, account: user.account, thread: Fabricate(:status)) # Reply to another user + get "/api/v1/accounts/#{user.account.id}/statuses", params: { exclude_replies: true }, headers: headers + end + + it 'returns posts along with self replies', :aggregate_failures do + expect(response) + .to have_http_status(200) + expect(body_as_json) + .to have_attributes(size: 2) + .and contain_exactly( + include(id: status.id.to_s), + include(id: status_self_reply.id.to_s) + ) + end + end + + context 'with only own pinned' do + before do + Fabricate(:status_pin, account: user.account, status: Fabricate(:status, account: user.account)) + end + + it 'returns http success and includes a header link' do + get "/api/v1/accounts/#{user.account.id}/statuses", params: { pinned: true }, headers: headers + + expect(response).to have_http_status(200) + expect(links_from_header.size) + .to eq(1) + expect(links_from_header) + .to contain_exactly( + have_attributes( + href: /pinned=true/, + attr_pairs: contain_exactly(['rel', 'prev']) + ) + ) + end + end + + context 'with enough pinned statuses to paginate' do + before do + stub_const 'Api::BaseController::DEFAULT_STATUSES_LIMIT', 1 + 2.times { Fabricate(:status_pin, account: user.account) } + end + + it 'returns http success and header pagination links to prev and next' do + get "/api/v1/accounts/#{user.account.id}/statuses", params: { pinned: true }, headers: headers + + expect(response).to have_http_status(200) + expect(links_from_header.size) + .to eq(2) + expect(links_from_header) + .to contain_exactly( + have_attributes( + href: /pinned=true/, + attr_pairs: contain_exactly(['rel', 'next']) + ), + have_attributes( + href: /pinned=true/, + attr_pairs: contain_exactly(['rel', 'prev']) + ) + ) + end + end + + context "with someone else's pinned statuses" do + let(:account) { Fabricate(:account, username: 'bob', domain: 'example.com') } + let(:status) { Fabricate(:status, account: account) } + let(:private_status) { Fabricate(:status, account: account, visibility: :private) } + + before do + Fabricate(:status_pin, account: account, status: status) + Fabricate(:status_pin, account: account, status: private_status) + end + + it 'returns http success' do + get "/api/v1/accounts/#{account.id}/statuses", params: { pinned: true }, headers: headers + + expect(response).to have_http_status(200) + end + + context 'when user does not follow account' do + it 'lists the public status only' do + get "/api/v1/accounts/#{account.id}/statuses", params: { pinned: true }, headers: headers + + expect(body_as_json) + .to contain_exactly( + a_hash_including(id: status.id.to_s) + ) + end + end + + context 'when user follows account' do + before do + user.account.follow!(account) + end + + it 'lists both the public and the private statuses' do + get "/api/v1/accounts/#{account.id}/statuses", params: { pinned: true }, headers: headers + + expect(body_as_json) + .to contain_exactly( + a_hash_including(id: status.id.to_s), + a_hash_including(id: private_status.id.to_s) + ) + end + end + end + end + + private + + def links_from_header + response + .headers['Link'] + .links + end +end diff --git a/spec/requests/api/v1/admin/domain_blocks_spec.rb b/spec/requests/api/v1/admin/domain_blocks_spec.rb index 1fb6fc8228..47aaf44d80 100644 --- a/spec/requests/api/v1/admin/domain_blocks_spec.rb +++ b/spec/requests/api/v1/admin/domain_blocks_spec.rb @@ -49,6 +49,7 @@ RSpec.describe 'Domain Blocks' do { id: domain_block.id.to_s, domain: domain_block.domain, + digest: domain_block.domain_digest, created_at: domain_block.created_at.strftime('%Y-%m-%dT%H:%M:%S.%LZ'), severity: domain_block.severity.to_s, reject_media: domain_block.reject_media, @@ -97,6 +98,7 @@ RSpec.describe 'Domain Blocks' do { id: domain_block.id.to_s, domain: domain_block.domain, + digest: domain_block.domain_digest, created_at: domain_block.created_at.strftime('%Y-%m-%dT%H:%M:%S.%LZ'), severity: domain_block.severity.to_s, reject_media: domain_block.reject_media, @@ -188,6 +190,7 @@ RSpec.describe 'Domain Blocks' do { id: domain_block.id.to_s, domain: domain_block.domain, + digest: domain_block.domain_digest, severity: 'suspend', } ) diff --git a/spec/requests/api/v1/admin/reports_spec.rb b/spec/requests/api/v1/admin/reports_spec.rb index 5403457db0..4b0b7e1713 100644 --- a/spec/requests/api/v1/admin/reports_spec.rb +++ b/spec/requests/api/v1/admin/reports_spec.rb @@ -151,7 +151,9 @@ RSpec.describe 'Reports' do let(:params) { { category: 'spam' } } it 'updates the report category', :aggregate_failures do - expect { subject }.to change { report.reload.category }.from('other').to('spam') + expect { subject } + .to change { report.reload.category }.from('other').to('spam') + .and create_an_action_log expect(response).to have_http_status(200) @@ -184,7 +186,9 @@ RSpec.describe 'Reports' do it_behaves_like 'forbidden for wrong role', '' it 'marks report as resolved', :aggregate_failures do - expect { subject }.to change { report.reload.unresolved? }.from(true).to(false) + expect { subject } + .to change { report.reload.unresolved? }.from(true).to(false) + .and create_an_action_log expect(response).to have_http_status(200) end end @@ -200,7 +204,9 @@ RSpec.describe 'Reports' do it_behaves_like 'forbidden for wrong role', '' it 'marks report as unresolved', :aggregate_failures do - expect { subject }.to change { report.reload.unresolved? }.from(false).to(true) + expect { subject } + .to change { report.reload.unresolved? }.from(false).to(true) + .and create_an_action_log expect(response).to have_http_status(200) end end @@ -216,7 +222,9 @@ RSpec.describe 'Reports' do it_behaves_like 'forbidden for wrong role', '' it 'assigns report to the requesting user', :aggregate_failures do - expect { subject }.to change { report.reload.assigned_account_id }.from(nil).to(user.account.id) + expect { subject } + .to change { report.reload.assigned_account_id }.from(nil).to(user.account.id) + .and create_an_action_log expect(response).to have_http_status(200) end end @@ -232,8 +240,16 @@ RSpec.describe 'Reports' do it_behaves_like 'forbidden for wrong role', '' it 'unassigns report from assignee', :aggregate_failures do - expect { subject }.to change { report.reload.assigned_account_id }.from(user.account.id).to(nil) + expect { subject } + .to change { report.reload.assigned_account_id }.from(user.account.id).to(nil) + .and create_an_action_log expect(response).to have_http_status(200) end end + + private + + def create_an_action_log + change(Admin::ActionLog, :count).by(1) + end end diff --git a/spec/controllers/api/v1/admin/trends/statuses_controller_spec.rb b/spec/requests/api/v1/admin/trends/statuses_spec.rb similarity index 63% rename from spec/controllers/api/v1/admin/trends/statuses_controller_spec.rb rename to spec/requests/api/v1/admin/trends/statuses_spec.rb index 4d80055ac0..04aa0465f2 100644 --- a/spec/controllers/api/v1/admin/trends/statuses_controller_spec.rb +++ b/spec/requests/api/v1/admin/trends/statuses_spec.rb @@ -2,31 +2,26 @@ require 'rails_helper' -describe Api::V1::Admin::Trends::StatusesController do - render_views - +describe 'API V1 Admin Trends Statuses' do let(:role) { UserRole.find_by(name: 'Admin') } let(:user) { Fabricate(:user, role: role) } let(:scopes) { 'admin:read admin:write' } let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } let(:account) { Fabricate(:account) } let(:status) { Fabricate(:status) } + let(:headers) { { 'Authorization' => "Bearer #{token.token}" } } - before do - allow(controller).to receive(:doorkeeper_token) { token } - end - - describe 'GET #index' do + describe 'GET /api/v1/admin/trends/statuses' do it 'returns http success' do - get :index, params: { account_id: account.id, limit: 2 } + get '/api/v1/admin/trends/statuses', params: { account_id: account.id, limit: 2 }, headers: headers expect(response).to have_http_status(200) end end - describe 'POST #approve' do + describe 'POST /api/v1/admin/trends/statuses/:id/approve' do before do - post :approve, params: { id: status.id } + post "/api/v1/admin/trends/statuses/#{status.id}/approve", headers: headers end it_behaves_like 'forbidden for wrong scope', 'write:statuses' @@ -37,9 +32,9 @@ describe Api::V1::Admin::Trends::StatusesController do end end - describe 'POST #reject' do + describe 'POST /api/v1/admin/trends/statuses/:id/unapprove' do before do - post :reject, params: { id: status.id } + post "/api/v1/admin/trends/statuses/#{status.id}/reject", headers: headers end it_behaves_like 'forbidden for wrong scope', 'write:statuses' diff --git a/spec/controllers/api/v1/admin/trends/tags_controller_spec.rb b/spec/requests/api/v1/admin/trends/tags_spec.rb similarity index 64% rename from spec/controllers/api/v1/admin/trends/tags_controller_spec.rb rename to spec/requests/api/v1/admin/trends/tags_spec.rb index 0b8eb8c3b8..b1437dad8d 100644 --- a/spec/controllers/api/v1/admin/trends/tags_controller_spec.rb +++ b/spec/requests/api/v1/admin/trends/tags_spec.rb @@ -2,31 +2,26 @@ require 'rails_helper' -describe Api::V1::Admin::Trends::TagsController do - render_views - +describe 'API V1 Admin Trends Tags' do let(:role) { UserRole.find_by(name: 'Admin') } let(:user) { Fabricate(:user, role: role) } let(:scopes) { 'admin:read admin:write' } let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } let(:account) { Fabricate(:account) } let(:tag) { Fabricate(:tag) } + let(:headers) { { 'Authorization' => "Bearer #{token.token}" } } - before do - allow(controller).to receive(:doorkeeper_token) { token } - end - - describe 'GET #index' do + describe 'GET /api/v1/admin/trends/tags' do it 'returns http success' do - get :index, params: { account_id: account.id, limit: 2 } + get '/api/v1/admin/trends/tags', params: { account_id: account.id, limit: 2 }, headers: headers expect(response).to have_http_status(200) end end - describe 'POST #approve' do + describe 'POST /api/v1/admin/trends/tags/:id/approve' do before do - post :approve, params: { id: tag.id } + post "/api/v1/admin/trends/tags/#{tag.id}/approve", headers: headers end it_behaves_like 'forbidden for wrong scope', 'write:statuses' @@ -37,9 +32,9 @@ describe Api::V1::Admin::Trends::TagsController do end end - describe 'POST #reject' do + describe 'POST /api/v1/admin/trends/tags/:id/reject' do before do - post :reject, params: { id: tag.id } + post "/api/v1/admin/trends/tags/#{tag.id}/reject", headers: headers end it_behaves_like 'forbidden for wrong scope', 'write:statuses' diff --git a/spec/controllers/api/v1/announcements/reactions_controller_spec.rb b/spec/requests/api/v1/announcements/reactions_spec.rb similarity index 64% rename from spec/controllers/api/v1/announcements/reactions_controller_spec.rb rename to spec/requests/api/v1/announcements/reactions_spec.rb index c1debc33fe..ffacb2b0af 100644 --- a/spec/controllers/api/v1/announcements/reactions_controller_spec.rb +++ b/spec/requests/api/v1/announcements/reactions_spec.rb @@ -2,27 +2,26 @@ require 'rails_helper' -RSpec.describe Api::V1::Announcements::ReactionsController do - render_views - +RSpec.describe 'API V1 Announcements Reactions' do let(:user) { Fabricate(:user) } let(:scopes) { 'write:favourites' } let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } + let(:headers) { { 'Authorization' => "Bearer #{token.token}" } } let!(:announcement) { Fabricate(:announcement) } - describe 'PUT #update' do + describe 'PUT /api/v1/announcements/:announcement_id/reactions/:id' do context 'without token' do it 'returns http unauthorized' do - put :update, params: { announcement_id: announcement.id, id: '😂' } + put "/api/v1/announcements/#{announcement.id}/reactions/#{escaped_emoji}" + expect(response).to have_http_status 401 end end context 'with token' do before do - allow(controller).to receive(:doorkeeper_token) { token } - put :update, params: { announcement_id: announcement.id, id: '😂' } + put "/api/v1/announcements/#{announcement.id}/reactions/#{escaped_emoji}", headers: headers end it 'creates reaction', :aggregate_failures do @@ -32,22 +31,21 @@ RSpec.describe Api::V1::Announcements::ReactionsController do end end - describe 'DELETE #destroy' do + describe 'DELETE /api/v1/announcements/:announcement_id/reactions/:id' do before do announcement.announcement_reactions.create!(account: user.account, name: '😂') end context 'without token' do it 'returns http unauthorized' do - delete :destroy, params: { announcement_id: announcement.id, id: '😂' } + delete "/api/v1/announcements/#{announcement.id}/reactions/#{escaped_emoji}" expect(response).to have_http_status 401 end end context 'with token' do before do - allow(controller).to receive(:doorkeeper_token) { token } - delete :destroy, params: { announcement_id: announcement.id, id: '😂' } + delete "/api/v1/announcements/#{announcement.id}/reactions/#{escaped_emoji}", headers: headers end it 'creates reaction', :aggregate_failures do @@ -56,4 +54,8 @@ RSpec.describe Api::V1::Announcements::ReactionsController do end end end + + def escaped_emoji + CGI.escape('😂') + end end diff --git a/spec/controllers/api/v1/announcements_controller_spec.rb b/spec/requests/api/v1/announcements_spec.rb similarity index 59% rename from spec/controllers/api/v1/announcements_controller_spec.rb rename to spec/requests/api/v1/announcements_spec.rb index 95ce8fd9fc..1624b76012 100644 --- a/spec/controllers/api/v1/announcements_controller_spec.rb +++ b/spec/requests/api/v1/announcements_spec.rb @@ -2,27 +2,26 @@ require 'rails_helper' -RSpec.describe Api::V1::AnnouncementsController do - render_views - - let(:user) { Fabricate(:user) } - let(:scopes) { 'read' } - let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } +RSpec.describe 'API V1 Announcements' do + let(:user) { Fabricate(:user) } + let(:scopes) { 'read' } + let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } + let(:headers) { { 'Authorization' => "Bearer #{token.token}" } } let!(:announcement) { Fabricate(:announcement) } - describe 'GET #index' do + describe 'GET /api/v1/announcements' do context 'without token' do it 'returns http unprocessable entity' do - get :index + get '/api/v1/announcements' + expect(response).to have_http_status 422 end end context 'with token' do before do - allow(controller).to receive(:doorkeeper_token) { token } - get :index + get '/api/v1/announcements', headers: headers end it 'returns http success' do @@ -31,10 +30,11 @@ RSpec.describe Api::V1::AnnouncementsController do end end - describe 'POST #dismiss' do + describe 'POST /api/v1/announcements/:id/dismiss' do context 'without token' do it 'returns http unauthorized' do - post :dismiss, params: { id: announcement.id } + post "/api/v1/announcements/#{announcement.id}/dismiss" + expect(response).to have_http_status 401 end end @@ -43,8 +43,7 @@ RSpec.describe Api::V1::AnnouncementsController do let(:scopes) { 'write:accounts' } before do - allow(controller).to receive(:doorkeeper_token) { token } - post :dismiss, params: { id: announcement.id } + post "/api/v1/announcements/#{announcement.id}/dismiss", headers: headers end it 'dismisses announcement', :aggregate_failures do diff --git a/spec/controllers/api/v1/conversations_controller_spec.rb b/spec/requests/api/v1/conversations_spec.rb similarity index 50% rename from spec/controllers/api/v1/conversations_controller_spec.rb rename to spec/requests/api/v1/conversations_spec.rb index 2734e4a07b..e2327d9a93 100644 --- a/spec/controllers/api/v1/conversations_controller_spec.rb +++ b/spec/requests/api/v1/conversations_spec.rb @@ -2,53 +2,48 @@ require 'rails_helper' -RSpec.describe Api::V1::ConversationsController do - render_views - +RSpec.describe 'API V1 Conversations' do let!(:user) { Fabricate(:user, account_attributes: { username: 'alice' }) } - let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } + let(:scopes) { 'read:statuses' } + let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } + let(:headers) { { 'Authorization' => "Bearer #{token.token}" } } + let(:other) { Fabricate(:user) } - before do - allow(controller).to receive(:doorkeeper_token) { token } - end - - describe 'GET #index', :sidekiq_inline do - let(:scopes) { 'read:statuses' } - + describe 'GET /api/v1/conversations', :sidekiq_inline do before do PostStatusService.new.call(other.account, text: 'Hey @alice', visibility: 'direct') PostStatusService.new.call(user.account, text: 'Hey, nobody here', visibility: 'direct') end it 'returns pagination headers', :aggregate_failures do - get :index, params: { limit: 1 } + get '/api/v1/conversations', params: { limit: 1 }, headers: headers expect(response).to have_http_status(200) expect(response.headers['Link'].links.size).to eq(2) end it 'returns conversations', :aggregate_failures do - get :index - json = body_as_json - expect(json.size).to eq 2 - expect(json[0][:accounts].size).to eq 1 + get '/api/v1/conversations', headers: headers + + expect(body_as_json.size).to eq 2 + expect(body_as_json[0][:accounts].size).to eq 1 end context 'with since_id' do context 'when requesting old posts' do it 'returns conversations' do - get :index, params: { since_id: Mastodon::Snowflake.id_at(1.hour.ago, with_random: false) } - json = body_as_json - expect(json.size).to eq 2 + get '/api/v1/conversations', params: { since_id: Mastodon::Snowflake.id_at(1.hour.ago, with_random: false) }, headers: headers + + expect(body_as_json.size).to eq 2 end end context 'when requesting posts in the future' do it 'returns no conversation' do - get :index, params: { since_id: Mastodon::Snowflake.id_at(1.hour.from_now, with_random: false) } - json = body_as_json - expect(json.size).to eq 0 + get '/api/v1/conversations', params: { since_id: Mastodon::Snowflake.id_at(1.hour.from_now, with_random: false) }, headers: headers + + expect(body_as_json.size).to eq 0 end end end diff --git a/spec/controllers/api/v1/filters_controller_spec.rb b/spec/requests/api/v1/filters_spec.rb similarity index 75% rename from spec/controllers/api/v1/filters_controller_spec.rb rename to spec/requests/api/v1/filters_spec.rb index b0f64ccf41..deb6e74217 100644 --- a/spec/controllers/api/v1/filters_controller_spec.rb +++ b/spec/requests/api/v1/filters_spec.rb @@ -2,23 +2,18 @@ require 'rails_helper' -RSpec.describe Api::V1::FiltersController do - render_views +RSpec.describe 'API V1 Filters' do + let(:user) { Fabricate(:user) } + let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } + let(:headers) { { 'Authorization' => "Bearer #{token.token}" } } - let(:user) { Fabricate(:user) } - let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } - - before do - allow(controller).to receive(:doorkeeper_token) { token } - end - - describe 'GET #index' do + describe 'GET /api/v1/filters' do let(:scopes) { 'read:filters' } let!(:filter) { Fabricate(:custom_filter, account: user.account) } let!(:custom_filter_keyword) { Fabricate(:custom_filter_keyword, custom_filter: filter) } it 'returns http success' do - get :index + get '/api/v1/filters', headers: headers expect(response).to have_http_status(200) expect(body_as_json) .to contain_exactly( @@ -27,13 +22,13 @@ RSpec.describe Api::V1::FiltersController do end end - describe 'POST #create' do + describe 'POST /api/v1/filters' do let(:scopes) { 'write:filters' } let(:irreversible) { true } let(:whole_word) { false } before do - post :create, params: { phrase: 'magic', context: %w(home), irreversible: irreversible, whole_word: whole_word } + post '/api/v1/filters', params: { phrase: 'magic', context: %w(home), irreversible: irreversible, whole_word: whole_word }, headers: headers end it 'creates a filter', :aggregate_failures do @@ -64,24 +59,25 @@ RSpec.describe Api::V1::FiltersController do end end - describe 'GET #show' do + describe 'GET /api/v1/filters/:id' do let(:scopes) { 'read:filters' } let(:filter) { Fabricate(:custom_filter, account: user.account) } let(:keyword) { Fabricate(:custom_filter_keyword, custom_filter: filter) } it 'returns http success' do - get :show, params: { id: keyword.id } + get "/api/v1/filters/#{keyword.id}", headers: headers + expect(response).to have_http_status(200) end end - describe 'PUT #update' do + describe 'PUT /api/v1/filters/:id' do let(:scopes) { 'write:filters' } let(:filter) { Fabricate(:custom_filter, account: user.account) } let(:keyword) { Fabricate(:custom_filter_keyword, custom_filter: filter) } before do - put :update, params: { id: keyword.id, phrase: 'updated' } + put "/api/v1/filters/#{keyword.id}", headers: headers, params: { phrase: 'updated' } end it 'updates the filter', :aggregate_failures do @@ -90,13 +86,13 @@ RSpec.describe Api::V1::FiltersController do end end - describe 'DELETE #destroy' do + describe 'DELETE /api/v1/filters/:id' do let(:scopes) { 'write:filters' } let(:filter) { Fabricate(:custom_filter, account: user.account) } let(:keyword) { Fabricate(:custom_filter_keyword, custom_filter: filter) } before do - delete :destroy, params: { id: keyword.id } + delete "/api/v1/filters/#{keyword.id}", headers: headers end it 'removes the filter', :aggregate_failures do diff --git a/spec/requests/api/v1/markers_spec.rb b/spec/requests/api/v1/markers_spec.rb index a1ca4ba754..b04adf2594 100644 --- a/spec/requests/api/v1/markers_spec.rb +++ b/spec/requests/api/v1/markers_spec.rb @@ -52,5 +52,19 @@ RSpec.describe 'API Markers' do expect(user.markers.first.last_read_id).to eq 70_120 end end + + context 'when database object becomes stale' do + before do + allow(Marker).to receive(:transaction).and_raise(ActiveRecord::StaleObjectError) + post '/api/v1/markers', headers: headers, params: { home: { last_read_id: '69420' } } + end + + it 'returns error json' do + expect(response) + .to have_http_status(409) + expect(body_as_json) + .to include(error: /Conflict during update/) + end + end end end diff --git a/spec/controllers/api/v1/polls/votes_controller_spec.rb b/spec/requests/api/v1/polls/votes_spec.rb similarity index 61% rename from spec/controllers/api/v1/polls/votes_controller_spec.rb rename to spec/requests/api/v1/polls/votes_spec.rb index 5de225a487..e2b22708be 100644 --- a/spec/controllers/api/v1/polls/votes_controller_spec.rb +++ b/spec/requests/api/v1/polls/votes_spec.rb @@ -2,30 +2,32 @@ require 'rails_helper' -RSpec.describe Api::V1::Polls::VotesController do - render_views - +RSpec.describe 'API V1 Polls Votes' do let(:user) { Fabricate(:user) } let(:scopes) { 'write:statuses' } let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } + let(:headers) { { 'Authorization' => "Bearer #{token.token}" } } - before { allow(controller).to receive(:doorkeeper_token) { token } } - - describe 'POST #create' do + describe 'POST /api/v1/polls/:poll_id/votes' do let(:poll) { Fabricate(:poll) } before do - post :create, params: { poll_id: poll.id, choices: %w(1) } + post "/api/v1/polls/#{poll.id}/votes", params: { choices: %w(1) }, headers: headers end it 'creates a vote', :aggregate_failures do expect(response).to have_http_status(200) - vote = poll.votes.where(account: user.account).first expect(vote).to_not be_nil expect(vote.choice).to eq 1 expect(poll.reload.cached_tallies).to eq [0, 1] end + + private + + def vote + poll.votes.where(account: user.account).first + end end end diff --git a/spec/controllers/api/v1/push/subscriptions_controller_spec.rb b/spec/requests/api/v1/push/subscriptions_spec.rb similarity index 67% rename from spec/controllers/api/v1/push/subscriptions_controller_spec.rb rename to spec/requests/api/v1/push/subscriptions_spec.rb index 1681914680..d699fd1e08 100644 --- a/spec/controllers/api/v1/push/subscriptions_controller_spec.rb +++ b/spec/requests/api/v1/push/subscriptions_spec.rb @@ -2,9 +2,7 @@ require 'rails_helper' -describe Api::V1::Push::SubscriptionsController do - render_views - +describe 'API V1 Push Subscriptions' do let(:user) { Fabricate(:user) } let(:create_payload) do { @@ -34,15 +32,13 @@ describe Api::V1::Push::SubscriptionsController do }, }.with_indifferent_access end - let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: 'push') } + let(:scopes) { 'push' } + let(:token) { Fabricate(:accessible_access_token, resource_owner_id: user.id, scopes: scopes) } + let(:headers) { { 'Authorization' => "Bearer #{token.token}" } } - before do - allow(controller).to receive(:doorkeeper_token) { token } - end - - describe 'POST #create' do + describe 'POST /api/v1/push/subscription' do before do - post :create, params: create_payload + post '/api/v1/push/subscription', params: create_payload, headers: headers end it 'saves push subscriptions' do @@ -56,19 +52,23 @@ describe Api::V1::Push::SubscriptionsController do end it 'replaces old subscription on repeat calls' do - post :create, params: create_payload + post '/api/v1/push/subscription', params: create_payload, headers: headers + expect(Web::PushSubscription.where(endpoint: create_payload[:subscription][:endpoint]).count).to eq 1 end it 'returns the expected JSON' do - expect(body_as_json.with_indifferent_access).to include({ endpoint: create_payload[:subscription][:endpoint], alerts: {}, policy: 'all' }) + expect(body_as_json.with_indifferent_access) + .to include( + { endpoint: create_payload[:subscription][:endpoint], alerts: {}, policy: 'all' } + ) end end - describe 'PUT #update' do + describe 'PUT /api/v1/push/subscription' do before do - post :create, params: create_payload - put :update, params: alerts_payload + post '/api/v1/push/subscription', params: create_payload, headers: headers + put '/api/v1/push/subscription', params: alerts_payload, headers: headers end it 'changes alert settings' do @@ -82,14 +82,17 @@ describe Api::V1::Push::SubscriptionsController do end it 'returns the expected JSON' do - expect(body_as_json.with_indifferent_access).to include({ endpoint: create_payload[:subscription][:endpoint], alerts: alerts_payload[:data][:alerts], policy: alerts_payload[:data][:policy] }) + expect(body_as_json.with_indifferent_access) + .to include( + { endpoint: create_payload[:subscription][:endpoint], alerts: alerts_payload[:data][:alerts], policy: alerts_payload[:data][:policy] } + ) end end - describe 'DELETE #destroy' do + describe 'DELETE /api/v1/push/subscription' do before do - post :create, params: create_payload - delete :destroy + post '/api/v1/push/subscription', params: create_payload, headers: headers + delete '/api/v1/push/subscription', headers: headers end it 'removes the subscription' do diff --git a/spec/requests/api/v1/reports_spec.rb b/spec/requests/api/v1/reports_spec.rb index ba3d2b3060..94baf8cb98 100644 --- a/spec/requests/api/v1/reports_spec.rb +++ b/spec/requests/api/v1/reports_spec.rb @@ -35,7 +35,7 @@ RSpec.describe 'Reports' do it 'creates a report', :aggregate_failures do perform_enqueued_jobs do - subject + emails = capture_emails { subject } expect(response).to have_http_status(200) expect(body_as_json).to match( @@ -49,7 +49,13 @@ RSpec.describe 'Reports' do expect(target_account.targeted_reports).to_not be_empty expect(target_account.targeted_reports.first.comment).to eq 'reasons' - expect(ActionMailer::Base.deliveries.first.to).to eq([admin.email]) + expect(emails.size) + .to eq(1) + expect(emails.first) + .to have_attributes( + to: contain_exactly(admin.email), + subject: eq(I18n.t('admin_mailer.new_report.subject', instance: Rails.configuration.x.local_domain, id: target_account.targeted_reports.first.id)) + ) end end diff --git a/spec/requests/api/v1/statuses_spec.rb b/spec/requests/api/v1/statuses_spec.rb index 201674fccd..a3b84afa26 100644 --- a/spec/requests/api/v1/statuses_spec.rb +++ b/spec/requests/api/v1/statuses_spec.rb @@ -167,6 +167,16 @@ describe '/api/v1/statuses' do expect(response.headers['X-RateLimit-Remaining']).to eq '0' end end + + context 'with missing thread' do + let(:params) { { status: 'Hello world', in_reply_to_id: 0 } } + + it 'returns http not found' do + subject + + expect(response).to have_http_status(404) + end + end end describe 'DELETE /api/v1/statuses/:id' do diff --git a/spec/controllers/api/v1/streaming_controller_spec.rb b/spec/requests/api/v1/streaming_spec.rb similarity index 51% rename from spec/controllers/api/v1/streaming_controller_spec.rb rename to spec/requests/api/v1/streaming_spec.rb index 099f68a74e..6b550dfa60 100644 --- a/spec/controllers/api/v1/streaming_controller_spec.rb +++ b/spec/requests/api/v1/streaming_spec.rb @@ -2,7 +2,7 @@ require 'rails_helper' -describe Api::V1::StreamingController do +describe 'API V1 Streaming' do around do |example| before = Rails.configuration.x.streaming_api_base_url Rails.configuration.x.streaming_api_base_url = "wss://#{Rails.configuration.x.web_domain}" @@ -10,14 +10,13 @@ describe Api::V1::StreamingController do Rails.configuration.x.streaming_api_base_url = before end - before do - request.headers.merge! Host: Rails.configuration.x.web_domain - end + let(:headers) { { 'Host' => Rails.configuration.x.web_domain } } context 'with streaming api on same host' do - describe 'GET #index' do + describe 'GET /api/v1/streaming' do it 'raises ActiveRecord::RecordNotFound' do - get :index + get '/api/v1/streaming', headers: headers + expect(response).to have_http_status(404) end end @@ -28,20 +27,33 @@ describe Api::V1::StreamingController do Rails.configuration.x.streaming_api_base_url = "wss://streaming-#{Rails.configuration.x.web_domain}" end - describe 'GET #index' do + describe 'GET /api/v1/streaming' do it 'redirects to streaming host' do - get :index, params: { access_token: 'deadbeef', stream: 'public' } - expect(response).to have_http_status(301) - request_uri = URI.parse(request.url) - redirect_to_uri = URI.parse(response.location) - [:scheme, :path, :query, :fragment].each do |part| - expect(redirect_to_uri.send(part)).to eq(request_uri.send(part)), "redirect target #{part}" - end - expect(redirect_to_uri.host).to eq(streaming_host), 'redirect target host' + get '/api/v1/streaming', headers: headers, params: { access_token: 'deadbeef', stream: 'public' } + + expect(response) + .to have_http_status(301) + + expect(redirect_to_uri) + .to have_attributes( + fragment: request_uri.fragment, + host: eq(streaming_host), + path: request_uri.path, + query: request_uri.query, + scheme: request_uri.scheme + ) end private + def request_uri + URI.parse(request.url) + end + + def redirect_to_uri + URI.parse(response.location) + end + def streaming_host URI.parse(Rails.configuration.x.streaming_api_base_url).host end diff --git a/spec/requests/api/v2/suggestions_spec.rb b/spec/requests/api/v2/suggestions_spec.rb index 5f1c97b8ae..a7d6a0864f 100644 --- a/spec/requests/api/v2/suggestions_spec.rb +++ b/spec/requests/api/v2/suggestions_spec.rb @@ -9,10 +9,28 @@ describe 'Suggestions API' do let(:headers) { { 'Authorization' => "Bearer #{token.token}" } } describe 'GET /api/v2/suggestions' do - it 'returns http success' do + let(:bob) { Fabricate(:account) } + let(:jeff) { Fabricate(:account) } + let(:params) { {} } + + before do + Setting.bootstrap_timeline_accounts = [bob, jeff].map(&:acct).join(',') + end + + it 'returns the expected suggestions' do get '/api/v2/suggestions', headers: headers expect(response).to have_http_status(200) + + expect(body_as_json).to match_array( + [bob, jeff].map do |account| + hash_including({ + source: 'staff', + sources: ['featured'], + account: hash_including({ id: account.id.to_s }), + }) + end + ) end end end diff --git a/spec/requests/cache_spec.rb b/spec/requests/cache_spec.rb index dbba228740..c56eec16c5 100644 --- a/spec/requests/cache_spec.rb +++ b/spec/requests/cache_spec.rb @@ -184,7 +184,7 @@ describe 'Caching behavior' do get '/users/alice' expect(response).to redirect_to('/@alice') - expect(response.headers['Vary']&.split(',')&.map { |x| x.strip.downcase }).to include('accept') + expect(response_vary_headers).to include('accept') end end diff --git a/spec/requests/disabled_oauth_endpoints_spec.rb b/spec/requests/disabled_oauth_endpoints_spec.rb new file mode 100644 index 0000000000..7c2c09f380 --- /dev/null +++ b/spec/requests/disabled_oauth_endpoints_spec.rb @@ -0,0 +1,83 @@ +# frozen_string_literal: true + +require 'rails_helper' + +describe 'Disabled OAuth routes' do + # These routes are disabled via the doorkeeper configuration for + # `admin_authenticator`, as these routes should only be accessible by server + # administrators. For now, these routes are not properly designed and + # integrated into Mastodon, so we're disabling them completely + describe 'GET /oauth/applications' do + it 'returns 403 forbidden' do + get oauth_applications_path + + expect(response).to have_http_status(403) + end + end + + describe 'POST /oauth/applications' do + it 'returns 403 forbidden' do + post oauth_applications_path + + expect(response).to have_http_status(403) + end + end + + describe 'GET /oauth/applications/new' do + it 'returns 403 forbidden' do + get new_oauth_application_path + + expect(response).to have_http_status(403) + end + end + + describe 'GET /oauth/applications/:id' do + let(:application) { Fabricate(:application, scopes: 'read') } + + it 'returns 403 forbidden' do + get oauth_application_path(application) + + expect(response).to have_http_status(403) + end + end + + describe 'PATCH /oauth/applications/:id' do + let(:application) { Fabricate(:application, scopes: 'read') } + + it 'returns 403 forbidden' do + patch oauth_application_path(application) + + expect(response).to have_http_status(403) + end + end + + describe 'PUT /oauth/applications/:id' do + let(:application) { Fabricate(:application, scopes: 'read') } + + it 'returns 403 forbidden' do + put oauth_application_path(application) + + expect(response).to have_http_status(403) + end + end + + describe 'DELETE /oauth/applications/:id' do + let(:application) { Fabricate(:application, scopes: 'read') } + + it 'returns 403 forbidden' do + delete oauth_application_path(application) + + expect(response).to have_http_status(403) + end + end + + describe 'GET /oauth/applications/:id/edit' do + let(:application) { Fabricate(:application, scopes: 'read') } + + it 'returns 403 forbidden' do + get edit_oauth_application_path(application) + + expect(response).to have_http_status(403) + end + end +end diff --git a/spec/requests/omniauth_callbacks_spec.rb b/spec/requests/omniauth_callbacks_spec.rb index 0d37c41140..095535e485 100644 --- a/spec/requests/omniauth_callbacks_spec.rb +++ b/spec/requests/omniauth_callbacks_spec.rb @@ -39,16 +39,35 @@ describe 'OmniAuth callbacks' do Fabricate(:user, email: 'user@host.example') end - it 'matches the existing user, creates an identity, and redirects to root path' do - expect { subject } - .to not_change(User, :count) - .and change(Identity, :count) - .by(1) - .and change(LoginActivity, :count) - .by(1) + context 'when ALLOW_UNSAFE_AUTH_PROVIDER_REATTACH is set to true' do + around do |example| + ClimateControl.modify ALLOW_UNSAFE_AUTH_PROVIDER_REATTACH: 'true' do + example.run + end + end - expect(Identity.find_by(user: User.last).uid).to eq('123') - expect(response).to redirect_to(root_path) + it 'matches the existing user, creates an identity, and redirects to root path' do + expect { subject } + .to not_change(User, :count) + .and change(Identity, :count) + .by(1) + .and change(LoginActivity, :count) + .by(1) + + expect(Identity.find_by(user: User.last).uid).to eq('123') + expect(response).to redirect_to(root_path) + end + end + + context 'when ALLOW_UNSAFE_AUTH_PROVIDER_REATTACH is not set to true' do + it 'does not match the existing user or create an identity, and redirects to login page' do + expect { subject } + .to not_change(User, :count) + .and not_change(Identity, :count) + .and not_change(LoginActivity, :count) + + expect(response).to redirect_to(new_user_session_url) + end end end @@ -96,7 +115,7 @@ describe 'OmniAuth callbacks' do context 'when a user cannot be built' do before do - allow(User).to receive(:find_for_oauth).and_return(User.new) + allow(User).to receive(:find_for_omniauth).and_return(User.new) end it 'redirects to the new user signup page' do diff --git a/spec/serializers/rest/suggestion_serializer_spec.rb b/spec/serializers/rest/suggestion_serializer_spec.rb index 60420d8023..b5efba082d 100644 --- a/spec/serializers/rest/suggestion_serializer_spec.rb +++ b/spec/serializers/rest/suggestion_serializer_spec.rb @@ -7,7 +7,7 @@ describe REST::SuggestionSerializer do let(:record) do AccountSuggestions::Suggestion.new( account: account, - source: 'SuggestionSource' + sources: ['SuggestionSource'] ) end let(:account) { Fabricate(:account) } diff --git a/spec/services/activitypub/fetch_featured_collection_service_spec.rb b/spec/services/activitypub/fetch_featured_collection_service_spec.rb index b9e95b825f..dab204406b 100644 --- a/spec/services/activitypub/fetch_featured_collection_service_spec.rb +++ b/spec/services/activitypub/fetch_featured_collection_service_spec.rb @@ -72,11 +72,11 @@ RSpec.describe ActivityPub::FetchFeaturedCollectionService, type: :service do shared_examples 'sets pinned posts' do before do - stub_request(:get, 'https://example.com/account/pinned/known').to_return(status: 200, body: Oj.dump(status_json_pinned_known)) - stub_request(:get, 'https://example.com/account/pinned/unknown-inlined').to_return(status: 200, body: Oj.dump(status_json_pinned_unknown_inlined)) + stub_request(:get, 'https://example.com/account/pinned/known').to_return(status: 200, body: Oj.dump(status_json_pinned_known), headers: { 'Content-Type': 'application/activity+json' }) + stub_request(:get, 'https://example.com/account/pinned/unknown-inlined').to_return(status: 200, body: Oj.dump(status_json_pinned_unknown_inlined), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/account/pinned/unknown-unreachable').to_return(status: 404) - stub_request(:get, 'https://example.com/account/pinned/unknown-reachable').to_return(status: 200, body: Oj.dump(status_json_pinned_unknown_reachable)) - stub_request(:get, 'https://example.com/account/collections/featured').to_return(status: 200, body: Oj.dump(featured_with_null)) + stub_request(:get, 'https://example.com/account/pinned/unknown-reachable').to_return(status: 200, body: Oj.dump(status_json_pinned_unknown_reachable), headers: { 'Content-Type': 'application/activity+json' }) + stub_request(:get, 'https://example.com/account/collections/featured').to_return(status: 200, body: Oj.dump(featured_with_null), headers: { 'Content-Type': 'application/activity+json' }) subject.call(actor, note: true, hashtag: false) end @@ -94,7 +94,7 @@ RSpec.describe ActivityPub::FetchFeaturedCollectionService, type: :service do describe '#call' do context 'when the endpoint is a Collection' do before do - stub_request(:get, actor.featured_collection_url).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, actor.featured_collection_url).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it_behaves_like 'sets pinned posts' @@ -111,7 +111,7 @@ RSpec.describe ActivityPub::FetchFeaturedCollectionService, type: :service do end before do - stub_request(:get, actor.featured_collection_url).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, actor.featured_collection_url).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it_behaves_like 'sets pinned posts' @@ -120,7 +120,7 @@ RSpec.describe ActivityPub::FetchFeaturedCollectionService, type: :service do let(:items) { 'https://example.com/account/pinned/unknown-reachable' } before do - stub_request(:get, 'https://example.com/account/pinned/unknown-reachable').to_return(status: 200, body: Oj.dump(status_json_pinned_unknown_reachable)) + stub_request(:get, 'https://example.com/account/pinned/unknown-reachable').to_return(status: 200, body: Oj.dump(status_json_pinned_unknown_reachable), headers: { 'Content-Type': 'application/activity+json' }) subject.call(actor, note: true, hashtag: false) end @@ -147,7 +147,7 @@ RSpec.describe ActivityPub::FetchFeaturedCollectionService, type: :service do end before do - stub_request(:get, actor.featured_collection_url).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, actor.featured_collection_url).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it_behaves_like 'sets pinned posts' @@ -156,7 +156,7 @@ RSpec.describe ActivityPub::FetchFeaturedCollectionService, type: :service do let(:items) { 'https://example.com/account/pinned/unknown-reachable' } before do - stub_request(:get, 'https://example.com/account/pinned/unknown-reachable').to_return(status: 200, body: Oj.dump(status_json_pinned_unknown_reachable)) + stub_request(:get, 'https://example.com/account/pinned/unknown-reachable').to_return(status: 200, body: Oj.dump(status_json_pinned_unknown_reachable), headers: { 'Content-Type': 'application/activity+json' }) subject.call(actor, note: true, hashtag: false) end diff --git a/spec/services/activitypub/fetch_featured_tags_collection_service_spec.rb b/spec/services/activitypub/fetch_featured_tags_collection_service_spec.rb index 071e4d92d5..638278a10e 100644 --- a/spec/services/activitypub/fetch_featured_tags_collection_service_spec.rb +++ b/spec/services/activitypub/fetch_featured_tags_collection_service_spec.rb @@ -38,7 +38,7 @@ RSpec.describe ActivityPub::FetchFeaturedTagsCollectionService, type: :service d describe '#call' do context 'when the endpoint is a Collection' do before do - stub_request(:get, collection_url).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, collection_url).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it_behaves_like 'sets featured tags' @@ -46,7 +46,7 @@ RSpec.describe ActivityPub::FetchFeaturedTagsCollectionService, type: :service d context 'when the account already has featured tags' do before do - stub_request(:get, collection_url).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, collection_url).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) actor.featured_tags.create!(name: 'FoO') actor.featured_tags.create!(name: 'baz') @@ -67,7 +67,7 @@ RSpec.describe ActivityPub::FetchFeaturedTagsCollectionService, type: :service d end before do - stub_request(:get, collection_url).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, collection_url).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it_behaves_like 'sets featured tags' @@ -88,7 +88,7 @@ RSpec.describe ActivityPub::FetchFeaturedTagsCollectionService, type: :service d end before do - stub_request(:get, collection_url).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, collection_url).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it_behaves_like 'sets featured tags' diff --git a/spec/services/activitypub/fetch_remote_account_service_spec.rb b/spec/services/activitypub/fetch_remote_account_service_spec.rb index e7f6bb8dd8..799a70d091 100644 --- a/spec/services/activitypub/fetch_remote_account_service_spec.rb +++ b/spec/services/activitypub/fetch_remote_account_service_spec.rb @@ -38,7 +38,7 @@ RSpec.describe ActivityPub::FetchRemoteAccountService, type: :service do before do actor[:inbox] = nil - stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor)) + stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) end @@ -54,7 +54,7 @@ RSpec.describe ActivityPub::FetchRemoteAccountService, type: :service do let!(:webfinger) { { subject: 'acct:alice@example.com', links: [{ rel: 'self', href: 'https://example.com/alice' }] } } before do - stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor)) + stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) end @@ -75,7 +75,7 @@ RSpec.describe ActivityPub::FetchRemoteAccountService, type: :service do let!(:webfinger) { { subject: 'acct:alice@iscool.af', links: [{ rel: 'self', href: 'https://example.com/alice' }] } } before do - stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor)) + stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) stub_request(:get, 'https://iscool.af/.well-known/webfinger?resource=acct:alice@iscool.af').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) end @@ -98,7 +98,7 @@ RSpec.describe ActivityPub::FetchRemoteAccountService, type: :service do let!(:webfinger) { { subject: 'acct:alice@example.com', links: [{ rel: 'self', href: 'https://example.com/bob' }] } } before do - stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor)) + stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) end @@ -114,7 +114,7 @@ RSpec.describe ActivityPub::FetchRemoteAccountService, type: :service do let!(:webfinger) { { subject: 'acct:alice@iscool.af', links: [{ rel: 'self', href: 'https://example.com/bob' }] } } before do - stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor)) + stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) stub_request(:get, 'https://iscool.af/.well-known/webfinger?resource=acct:alice@iscool.af').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) end diff --git a/spec/services/activitypub/fetch_remote_actor_service_spec.rb b/spec/services/activitypub/fetch_remote_actor_service_spec.rb index e622c7d4c3..4ce42ea560 100644 --- a/spec/services/activitypub/fetch_remote_actor_service_spec.rb +++ b/spec/services/activitypub/fetch_remote_actor_service_spec.rb @@ -38,7 +38,7 @@ RSpec.describe ActivityPub::FetchRemoteActorService, type: :service do before do actor[:inbox] = nil - stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor)) + stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) end @@ -54,7 +54,7 @@ RSpec.describe ActivityPub::FetchRemoteActorService, type: :service do let!(:webfinger) { { subject: 'acct:alice@example.com', links: [{ rel: 'self', href: 'https://example.com/alice' }] } } before do - stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor)) + stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) end @@ -75,7 +75,7 @@ RSpec.describe ActivityPub::FetchRemoteActorService, type: :service do let!(:webfinger) { { subject: 'acct:alice@iscool.af', links: [{ rel: 'self', href: 'https://example.com/alice' }] } } before do - stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor)) + stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) stub_request(:get, 'https://iscool.af/.well-known/webfinger?resource=acct:alice@iscool.af').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) end @@ -98,7 +98,7 @@ RSpec.describe ActivityPub::FetchRemoteActorService, type: :service do let!(:webfinger) { { subject: 'acct:alice@example.com', links: [{ rel: 'self', href: 'https://example.com/bob' }] } } before do - stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor)) + stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) end @@ -114,7 +114,7 @@ RSpec.describe ActivityPub::FetchRemoteActorService, type: :service do let!(:webfinger) { { subject: 'acct:alice@iscool.af', links: [{ rel: 'self', href: 'https://example.com/bob' }] } } before do - stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor)) + stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) stub_request(:get, 'https://iscool.af/.well-known/webfinger?resource=acct:alice@iscool.af').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) end diff --git a/spec/services/activitypub/fetch_remote_key_service_spec.rb b/spec/services/activitypub/fetch_remote_key_service_spec.rb index 0b14da4f44..478778cc9f 100644 --- a/spec/services/activitypub/fetch_remote_key_service_spec.rb +++ b/spec/services/activitypub/fetch_remote_key_service_spec.rb @@ -50,7 +50,7 @@ RSpec.describe ActivityPub::FetchRemoteKeyService, type: :service do end before do - stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor)) + stub_request(:get, 'https://example.com/alice').to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) stub_request(:get, 'https://example.com/.well-known/webfinger?resource=acct:alice@example.com').to_return(body: Oj.dump(webfinger), headers: { 'Content-Type': 'application/jrd+json' }) end @@ -59,7 +59,7 @@ RSpec.describe ActivityPub::FetchRemoteKeyService, type: :service do context 'when the key is a sub-object from the actor' do before do - stub_request(:get, public_key_id).to_return(body: Oj.dump(actor)) + stub_request(:get, public_key_id).to_return(body: Oj.dump(actor), headers: { 'Content-Type': 'application/activity+json' }) end it 'returns the expected account' do @@ -71,7 +71,7 @@ RSpec.describe ActivityPub::FetchRemoteKeyService, type: :service do let(:public_key_id) { 'https://example.com/alice-public-key.json' } before do - stub_request(:get, public_key_id).to_return(body: Oj.dump(key_json.merge({ '@context': ['https://www.w3.org/ns/activitystreams', 'https://w3id.org/security/v1'] }))) + stub_request(:get, public_key_id).to_return(body: Oj.dump(key_json.merge({ '@context': ['https://www.w3.org/ns/activitystreams', 'https://w3id.org/security/v1'] })), headers: { 'Content-Type': 'application/activity+json' }) end it 'returns the expected account' do @@ -84,7 +84,7 @@ RSpec.describe ActivityPub::FetchRemoteKeyService, type: :service do let(:actor_public_key) { 'https://example.com/alice-public-key.json' } before do - stub_request(:get, public_key_id).to_return(body: Oj.dump(key_json.merge({ '@context': ['https://www.w3.org/ns/activitystreams', 'https://w3id.org/security/v1'] }))) + stub_request(:get, public_key_id).to_return(body: Oj.dump(key_json.merge({ '@context': ['https://www.w3.org/ns/activitystreams', 'https://w3id.org/security/v1'] })), headers: { 'Content-Type': 'application/activity+json' }) end it 'returns the nil' do diff --git a/spec/services/activitypub/fetch_replies_service_spec.rb b/spec/services/activitypub/fetch_replies_service_spec.rb index a76b996c20..8e1f606e26 100644 --- a/spec/services/activitypub/fetch_replies_service_spec.rb +++ b/spec/services/activitypub/fetch_replies_service_spec.rb @@ -58,7 +58,7 @@ RSpec.describe ActivityPub::FetchRepliesService, type: :service do context 'when passing the URL to the collection' do before do - stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it 'spawns workers for up to 5 replies on the same server' do @@ -93,7 +93,7 @@ RSpec.describe ActivityPub::FetchRepliesService, type: :service do context 'when passing the URL to the collection' do before do - stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it 'spawns workers for up to 5 replies on the same server' do @@ -132,7 +132,7 @@ RSpec.describe ActivityPub::FetchRepliesService, type: :service do context 'when passing the URL to the collection' do before do - stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it 'spawns workers for up to 5 replies on the same server' do diff --git a/spec/services/activitypub/process_account_service_spec.rb b/spec/services/activitypub/process_account_service_spec.rb index 9abe03181e..b13869f357 100644 --- a/spec/services/activitypub/process_account_service_spec.rb +++ b/spec/services/activitypub/process_account_service_spec.rb @@ -5,7 +5,7 @@ require 'rails_helper' RSpec.describe ActivityPub::ProcessAccountService, type: :service do subject { described_class.new } - context 'with property values' do + context 'with property values, an avatar, and a profile header' do let(:payload) do { id: 'https://foo.test', @@ -16,19 +16,50 @@ RSpec.describe ActivityPub::ProcessAccountService, type: :service do { type: 'PropertyValue', name: 'Occupation', value: 'Unit test' }, { type: 'PropertyValue', name: 'non-string', value: %w(foo bar) }, ], + image: { + type: 'Image', + mediaType: 'image/png', + url: 'https://foo.test/image.png', + }, + icon: { + type: 'Image', + url: [ + { + mediaType: 'image/png', + href: 'https://foo.test/icon.png', + }, + ], + }, }.with_indifferent_access end - it 'parses out of attachment' do + before do + stub_request(:get, 'https://foo.test/image.png').to_return(request_fixture('avatar.txt')) + stub_request(:get, 'https://foo.test/icon.png').to_return(request_fixture('avatar.txt')) + end + + it 'parses property values, avatar and profile header as expected' do account = subject.call('alice', 'example.com', payload) - expect(account.fields).to be_a Array - expect(account.fields.size).to eq 2 - expect(account.fields[0]).to be_a Account::Field - expect(account.fields[0].name).to eq 'Pronouns' - expect(account.fields[0].value).to eq 'They/them' - expect(account.fields[1]).to be_a Account::Field - expect(account.fields[1].name).to eq 'Occupation' - expect(account.fields[1].value).to eq 'Unit test' + + expect(account.fields) + .to be_an(Array) + .and have_attributes(size: 2) + expect(account.fields.first) + .to be_an(Account::Field) + .and have_attributes( + name: eq('Pronouns'), + value: eq('They/them') + ) + expect(account.fields.last) + .to be_an(Account::Field) + .and have_attributes( + name: eq('Occupation'), + value: eq('Unit test') + ) + expect(account).to have_attributes( + avatar_remote_url: 'https://foo.test/icon.png', + header_remote_url: 'https://foo.test/image.png' + ) end end diff --git a/spec/services/activitypub/process_status_update_service_spec.rb b/spec/services/activitypub/process_status_update_service_spec.rb index 53cbaf4cc1..67f2f27276 100644 --- a/spec/services/activitypub/process_status_update_service_spec.rb +++ b/spec/services/activitypub/process_status_update_service_spec.rb @@ -218,7 +218,8 @@ RSpec.describe ActivityPub::ProcessStatusUpdateService, type: :service do end it 'does not update the text, spoiler_text or edited_at' do - expect { subject.call(status, json, json) }.to_not(change { s = status.reload; [s.text, s.spoiler_text, s.edited_at] }) + expect { subject.call(status, json, json) } + .to_not(change { status.reload.attributes.slice('text', 'spoiler_text', 'edited_at').values }) end end diff --git a/spec/services/activitypub/synchronize_followers_service_spec.rb b/spec/services/activitypub/synchronize_followers_service_spec.rb index c9a513e24b..f62376ab95 100644 --- a/spec/services/activitypub/synchronize_followers_service_spec.rb +++ b/spec/services/activitypub/synchronize_followers_service_spec.rb @@ -60,7 +60,7 @@ RSpec.describe ActivityPub::SynchronizeFollowersService, type: :service do describe '#call' do context 'when the endpoint is a Collection of actor URIs' do before do - stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it_behaves_like 'synchronizes followers' @@ -77,7 +77,7 @@ RSpec.describe ActivityPub::SynchronizeFollowersService, type: :service do end before do - stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it_behaves_like 'synchronizes followers' @@ -98,7 +98,7 @@ RSpec.describe ActivityPub::SynchronizeFollowersService, type: :service do end before do - stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload)) + stub_request(:get, collection_uri).to_return(status: 200, body: Oj.dump(payload), headers: { 'Content-Type': 'application/activity+json' }) end it_behaves_like 'synchronizes followers' diff --git a/spec/services/after_unallow_domain_service_spec.rb b/spec/services/after_unallow_domain_service_spec.rb new file mode 100644 index 0000000000..717c42b931 --- /dev/null +++ b/spec/services/after_unallow_domain_service_spec.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe AfterUnallowDomainService do + describe '#call' do + context 'with accounts for a domain' do + let!(:account) { Fabricate(:account, domain: 'host.example') } + let!(:test_account) { Fabricate(:account, domain: 'test.example') } + let(:service_double) { instance_double(DeleteAccountService, call: true) } + + before { allow(DeleteAccountService).to receive(:new).and_return(service_double) } + + it 'calls the delete service for accounts from the relevant domain' do + subject.call 'test.example' + + expect(service_double) + .to_not have_received(:call).with(account, reserve_username: false) + expect(service_double) + .to have_received(:call).with(test_account, reserve_username: false) + end + end + end +end diff --git a/spec/services/appeal_service_spec.rb b/spec/services/appeal_service_spec.rb new file mode 100644 index 0000000000..10c0f148dc --- /dev/null +++ b/spec/services/appeal_service_spec.rb @@ -0,0 +1,40 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe AppealService do + describe '#call' do + let!(:admin) { Fabricate(:user, role: UserRole.find_by(name: 'Admin')) } + + context 'with an existing strike' do + let(:strike) { Fabricate(:account_warning) } + let(:text) { 'Appeal text' } + + it 'creates an appeal and notifies staff' do + emails = capture_emails { subject.call(strike, text) } + + expect(Appeal.last) + .to have_attributes( + strike: strike, + text: text, + account: strike.target_account + ) + + expect(emails.size) + .to eq(1) + + expect(emails.first) + .to have_attributes( + to: contain_exactly(admin.email), + subject: eq( + I18n.t( + 'admin_mailer.new_appeal.subject', + username: strike.target_account.acct, + instance: Rails.configuration.x.local_domain + ) + ) + ) + end + end + end +end diff --git a/spec/services/approve_appeal_service_spec.rb b/spec/services/approve_appeal_service_spec.rb new file mode 100644 index 0000000000..5707c5d7f4 --- /dev/null +++ b/spec/services/approve_appeal_service_spec.rb @@ -0,0 +1,30 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe ApproveAppealService do + describe '#call' do + context 'with an existing appeal' do + let(:appeal) { Fabricate(:appeal) } + let(:account) { Fabricate(:account) } + + it 'processes the appeal approval' do + expect { subject.call(appeal, account) } + .to mark_overruled + .and record_approver + end + + def mark_overruled + change(appeal.strike, :overruled_at) + .from(nil) + .to(be > 1.minute.ago) + end + + def record_approver + change(appeal, :approved_by_account) + .from(nil) + .to(account) + end + end + end +end diff --git a/spec/services/create_featured_tag_service_spec.rb b/spec/services/create_featured_tag_service_spec.rb new file mode 100644 index 0000000000..29a7c5b309 --- /dev/null +++ b/spec/services/create_featured_tag_service_spec.rb @@ -0,0 +1,31 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe CreateFeaturedTagService do + describe '#call' do + let(:tag) { 'test' } + + context 'with a local account' do + let(:account) { Fabricate(:account, domain: nil) } + + it 'creates a new featured tag and distributes' do + expect { subject.call(account, tag) } + .to change(FeaturedTag, :count).by(1) + expect(ActivityPub::AccountRawDistributionWorker) + .to have_enqueued_sidekiq_job(anything, account.id) + end + end + + context 'with a remote account' do + let(:account) { Fabricate(:account, domain: 'host.example') } + + it 'creates a new featured tag and does not distributes' do + expect { subject.call(account, tag) } + .to change(FeaturedTag, :count).by(1) + expect(ActivityPub::AccountRawDistributionWorker) + .to_not have_enqueued_sidekiq_job + end + end + end +end diff --git a/spec/services/move_service_spec.rb b/spec/services/move_service_spec.rb new file mode 100644 index 0000000000..e63818f67e --- /dev/null +++ b/spec/services/move_service_spec.rb @@ -0,0 +1,48 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe MoveService do + subject { described_class.new.call(migration) } + + context 'with a valid migration record' do + let(:migration) { Fabricate(:account_migration, account: source_account, target_account: target_account) } + let(:source_account) { Fabricate(:account) } + let(:target_account) { Fabricate(:account, also_known_as: [source_account_uri]) } + + it 'migrates the account to a new account' do + expect { subject } + .to change_source_moved_value + .and process_local_updates + .and distribute_updates + .and distribute_move + end + end + + def source_account_uri + ActivityPub::TagManager + .instance + .uri_for(source_account) + end + + def change_source_moved_value + change(source_account.reload, :moved_to_account) + .from(nil) + .to(target_account) + end + + def process_local_updates + enqueue_sidekiq_job(MoveWorker) + .with(source_account.id, target_account.id) + end + + def distribute_updates + enqueue_sidekiq_job(ActivityPub::UpdateDistributionWorker) + .with(source_account.id) + end + + def distribute_move + enqueue_sidekiq_job(ActivityPub::MoveDistributionWorker) + .with(migration.id) + end +end diff --git a/spec/services/notify_service_spec.rb b/spec/services/notify_service_spec.rb index 38a33c522d..e818fadcbe 100644 --- a/spec/services/notify_service_spec.rb +++ b/spec/services/notify_service_spec.rb @@ -157,8 +157,6 @@ RSpec.describe NotifyService, type: :service do describe 'email' do before do - ActionMailer::Base.deliveries.clear - user.settings.update('notification_emails.follow': enabled) user.save end @@ -167,7 +165,15 @@ RSpec.describe NotifyService, type: :service do let(:enabled) { true } it 'sends email', :sidekiq_inline do - expect { subject }.to change(ActionMailer::Base.deliveries, :count).by(1) + emails = capture_emails { subject } + + expect(emails.size) + .to eq(1) + expect(emails.first) + .to have_attributes( + to: contain_exactly(user.email), + subject: eq(I18n.t('notification_mailer.follow.subject', name: sender.acct)) + ) end end @@ -175,7 +181,9 @@ RSpec.describe NotifyService, type: :service do let(:enabled) { false } it "doesn't send email" do - expect { subject }.to_not change(ActionMailer::Base.deliveries, :count).from(0) + emails = capture_emails { subject } + + expect(emails).to be_empty end end end diff --git a/spec/services/post_status_service_spec.rb b/spec/services/post_status_service_spec.rb index 1e5c420a63..acbebc5056 100644 --- a/spec/services/post_status_service_spec.rb +++ b/spec/services/post_status_service_spec.rb @@ -32,27 +32,27 @@ RSpec.describe PostStatusService, type: :service do let!(:future) { Time.now.utc + 2.hours } let!(:previous_status) { Fabricate(:status, account: account) } - it 'schedules a status' do - status = subject.call(account, text: 'Hi future!', scheduled_at: future) - expect(status).to be_a ScheduledStatus - expect(status.scheduled_at).to eq future - expect(status.params['text']).to eq 'Hi future!' - end - - it 'does not immediately create a status' do + it 'schedules a status for future creation and does not create one immediately' do media = Fabricate(:media_attachment, account: account) status = subject.call(account, text: 'Hi future!', media_ids: [media.id], scheduled_at: future) - expect(status).to be_a ScheduledStatus - expect(status.scheduled_at).to eq future - expect(status.params['text']).to eq 'Hi future!' - expect(status.params['media_ids']).to eq [media.id] + expect(status) + .to be_a(ScheduledStatus) + .and have_attributes( + scheduled_at: eq(future), + params: include( + 'text' => eq('Hi future!'), + 'media_ids' => contain_exactly(media.id) + ) + ) expect(media.reload.status).to be_nil expect(Status.where(text: 'Hi future!')).to_not exist end - it 'does not change statuses count' do - expect { subject.call(account, text: 'Hi future!', scheduled_at: future, thread: previous_status) }.to_not(change { [account.statuses_count, previous_status.replies_count] }) + it 'does not change statuses_count of account or replies_count of thread previous status' do + expect { subject.call(account, text: 'Hi future!', scheduled_at: future, thread: previous_status) } + .to not_change { account.statuses_count } + .and(not_change { previous_status.replies_count }) end end @@ -228,13 +228,7 @@ RSpec.describe PostStatusService, type: :service do subject.call( account, text: 'test status update', - media_ids: [ - Fabricate(:media_attachment, account: account), - Fabricate(:media_attachment, account: account), - Fabricate(:media_attachment, account: account), - Fabricate(:media_attachment, account: account), - Fabricate(:media_attachment, account: account), - ].map(&:id) + media_ids: Array.new(5) { Fabricate(:media_attachment, account: account) }.map(&:id) ) end.to raise_error( Mastodon::ValidationError, diff --git a/spec/services/process_hashtags_service_spec.rb b/spec/services/process_hashtags_service_spec.rb new file mode 100644 index 0000000000..a0d5ef3464 --- /dev/null +++ b/spec/services/process_hashtags_service_spec.rb @@ -0,0 +1,16 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe ProcessHashtagsService do + describe '#call' do + let(:status) { Fabricate(:status, visibility: :public, text: 'With tags #one #two') } + + it 'applies the tags from the status text' do + expect { subject.call(status) } + .to change(Tag, :count).by(2) + expect(status.reload.tags.map(&:name)) + .to contain_exactly('one', 'two') + end + end +end diff --git a/spec/services/remove_domains_from_followers_service_spec.rb b/spec/services/remove_domains_from_followers_service_spec.rb new file mode 100644 index 0000000000..9e9d6cef2d --- /dev/null +++ b/spec/services/remove_domains_from_followers_service_spec.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe RemoveDomainsFromFollowersService do + describe '#call' do + context 'with account followers' do + let(:account) { Fabricate(:account, domain: nil) } + let(:good_domain_account) { Fabricate(:account, domain: 'good.example', protocol: :activitypub) } + let(:bad_domain_account) { Fabricate(:account, domain: 'bad.example', protocol: :activitypub) } + + before do + Fabricate :follow, target_account: account, account: good_domain_account + Fabricate :follow, target_account: account, account: bad_domain_account + end + + it 'removes followers from supplied domains and sends a notification' do + subject.call(account, ['bad.example']) + + expect(account.followers) + .to include(good_domain_account) + .and not_include(bad_domain_account) + expect(ActivityPub::DeliveryWorker) + .to have_enqueued_sidekiq_job(anything, account.id, bad_domain_account.inbox_url) + end + end + end +end diff --git a/spec/services/remove_featured_tag_service_spec.rb b/spec/services/remove_featured_tag_service_spec.rb new file mode 100644 index 0000000000..6cf5388c7f --- /dev/null +++ b/spec/services/remove_featured_tag_service_spec.rb @@ -0,0 +1,37 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe RemoveFeaturedTagService do + describe '#call' do + context 'with a featured tag' do + let(:featured_tag) { Fabricate(:featured_tag) } + + context 'when called by a local account' do + let(:account) { Fabricate(:account, domain: nil) } + + it 'destroys the featured tag and sends a distribution' do + subject.call(account, featured_tag) + + expect { featured_tag.reload } + .to raise_error(ActiveRecord::RecordNotFound) + expect(ActivityPub::AccountRawDistributionWorker) + .to have_enqueued_sidekiq_job(anything, account.id) + end + end + + context 'when called by a non local account' do + let(:account) { Fabricate(:account, domain: 'host.example') } + + it 'destroys the featured tag and does not send a distribution' do + subject.call(account, featured_tag) + + expect { featured_tag.reload } + .to raise_error(ActiveRecord::RecordNotFound) + expect(ActivityPub::AccountRawDistributionWorker) + .to_not have_enqueued_sidekiq_job + end + end + end + end +end diff --git a/spec/services/report_service_spec.rb b/spec/services/report_service_spec.rb index 39e14a6a1c..2caeb189d9 100644 --- a/spec/services/report_service_spec.rb +++ b/spec/services/report_service_spec.rb @@ -158,13 +158,14 @@ RSpec.describe ReportService, type: :service do before do Fabricate(:report, target_account: target_account) - ActionMailer::Base.deliveries.clear source_account.user.settings['notification_emails.report'] = true source_account.user.save end it 'does not send an e-mail' do - expect { subject.call }.to_not change(ActionMailer::Base.deliveries, :count).from(0) + emails = capture_emails { subject.call } + + expect(emails).to be_empty end end end diff --git a/spec/services/resolve_account_service_spec.rb b/spec/services/resolve_account_service_spec.rb index 1c4c3b4016..b82e5b3865 100644 --- a/spec/services/resolve_account_service_spec.rb +++ b/spec/services/resolve_account_service_spec.rb @@ -219,27 +219,19 @@ RSpec.describe ResolveAccountService, type: :service do end it 'processes one remote account at a time using locks' do - wait_for_start = true fail_occurred = false return_values = Concurrent::Array.new - threads = Array.new(5) do - Thread.new do - true while wait_for_start - - begin - return_values << described_class.new.call('foo@ap.example.com') - rescue ActiveRecord::RecordNotUnique - fail_occurred = true - ensure - RedisConfiguration.pool.checkin if Thread.current[:redis] - end + multi_threaded_execution(5) do + begin + return_values << described_class.new.call('foo@ap.example.com') + rescue ActiveRecord::RecordNotUnique + fail_occurred = true + ensure + RedisConfiguration.pool.checkin if Thread.current[:redis] end end - wait_for_start = false - threads.each(&:join) - expect(fail_occurred).to be false expect(return_values).to_not include(nil) end diff --git a/spec/services/unfavourite_service_spec.rb b/spec/services/unfavourite_service_spec.rb new file mode 100644 index 0000000000..a714cc0675 --- /dev/null +++ b/spec/services/unfavourite_service_spec.rb @@ -0,0 +1,36 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe UnfavouriteService do + describe '#call' do + context 'with a favourited status' do + let(:status) { Fabricate(:status, account: account) } + let!(:favourite) { Fabricate(:favourite, status: status) } + + context 'when the status account is local' do + let(:account) { Fabricate(:account, domain: nil) } + + it 'destroys the favourite' do + subject.call(favourite.account, status) + + expect { favourite.reload } + .to raise_error(ActiveRecord::RecordNotFound) + end + end + + context 'when the status account is a remote activitypub account' do + let(:account) { Fabricate(:account, domain: 'host.example', protocol: :activitypub) } + + it 'destroys the favourite and sends a notification' do + subject.call(favourite.account, status) + + expect { favourite.reload } + .to raise_error(ActiveRecord::RecordNotFound) + expect(ActivityPub::DeliveryWorker) + .to have_enqueued_sidekiq_job(anything, favourite.account.id, status.account.inbox_url) + end + end + end + end +end diff --git a/spec/services/unmute_service_spec.rb b/spec/services/unmute_service_spec.rb new file mode 100644 index 0000000000..00135b5ac0 --- /dev/null +++ b/spec/services/unmute_service_spec.rb @@ -0,0 +1,46 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe UnmuteService do + describe '#call' do + let!(:account) { Fabricate(:account) } + let!(:target_account) { Fabricate(:account) } + + context 'when account is muting target account' do + before { Fabricate :mute, account: account, target_account: target_account } + + context 'when account follows target_account' do + before { Fabricate :follow, account: account, target_account: target_account } + + it 'removes the account mute and sets up a merge' do + expect { subject.call(account, target_account) } + .to remove_account_mute + expect(MergeWorker).to have_enqueued_sidekiq_job(target_account.id, account.id) + end + end + + context 'when account does not follow target_account' do + it 'removes the account mute and does not create a merge' do + expect { subject.call(account, target_account) } + .to remove_account_mute + expect(MergeWorker).to_not have_enqueued_sidekiq_job + end + end + + def remove_account_mute + change { account.reload.muting?(target_account) } + .from(true) + .to(false) + end + end + + context 'when account is not muting target account' do + it 'does nothing and returns' do + expect { subject.call(account, target_account) } + .to_not(change { account.reload.muting?(target_account) }) + expect(MergeWorker).to_not have_enqueued_sidekiq_job + end + end + end +end diff --git a/spec/services/verify_link_service_spec.rb b/spec/services/verify_link_service_spec.rb index 415788cb58..2895072420 100644 --- a/spec/services/verify_link_service_spec.rb +++ b/spec/services/verify_link_service_spec.rb @@ -77,27 +77,28 @@ RSpec.describe VerifyLinkService, type: :service do context 'when a document is truncated but the link back is valid' do let(:html) do - " + <<-HTML - + HTML end - it 'marks the field as not verified' do - expect(field.verified?).to be false + it 'marks the field as verified' do + expect(field.verified?).to be true end end - context 'when a link back might be truncated' do + context 'when a link tag might be truncated' do let(:html) do - " + <<-HTML_TRUNCATED - Hello' } + let(:html) do + <<-HTML + Hello + HTML + end it 'does not crash' do # We could probably put more effort into perhaps auto-correcting the diff --git a/spec/services/vote_service_spec.rb b/spec/services/vote_service_spec.rb new file mode 100644 index 0000000000..88207b001c --- /dev/null +++ b/spec/services/vote_service_spec.rb @@ -0,0 +1,40 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe VoteService do + describe '#call' do + subject { described_class.new.call(voter, poll, [0]) } + + context 'with a poll and poll options' do + let(:poll) { Fabricate(:poll, account: account, options: %w(Fun UnFun)) } + let(:fun_vote) { Fabricate(:poll_vote, poll: poll) } + let(:not_fun_vote) { Fabricate(:poll_vote, poll: poll) } + let(:voter) { Fabricate(:account, domain: nil) } + + context 'when the poll was created by a local account' do + let(:account) { Fabricate(:account, domain: nil) } + + it 'stores the votes and distributes the poll' do + expect { subject } + .to change(PollVote, :count).by(1) + + expect(ActivityPub::DistributePollUpdateWorker) + .to have_enqueued_sidekiq_job(poll.status.id) + end + end + + context 'when the poll was created by a remote account' do + let(:account) { Fabricate(:account, domain: 'host.example') } + + it 'stores the votes and processes delivery' do + expect { subject } + .to change(PollVote, :count).by(1) + + expect(ActivityPub::DeliveryWorker) + .to have_enqueued_sidekiq_job(anything, voter.id, poll.account.inbox_url) + end + end + end + end +end diff --git a/spec/services/webhook_service_spec.rb b/spec/services/webhook_service_spec.rb new file mode 100644 index 0000000000..22a60db9f5 --- /dev/null +++ b/spec/services/webhook_service_spec.rb @@ -0,0 +1,30 @@ +# frozen_string_literal: true + +require 'rails_helper' + +RSpec.describe WebhookService do + describe '#call' do + context 'with a relevant event webhook' do + let!(:report) { Fabricate(:report) } + let!(:webhook) { Fabricate(:webhook, events: ['report.created']) } + + it 'finds and delivers webhook payloads' do + expect { subject.call('report.created', report) } + .to enqueue_sidekiq_job(Webhooks::DeliveryWorker) + .with( + webhook.id, + anything + ) + end + end + + context 'without any relevant event webhooks' do + let!(:report) { Fabricate(:report) } + + it 'does not deliver webhook payloads' do + expect { subject.call('report.created', report) } + .to_not enqueue_sidekiq_job(Webhooks::DeliveryWorker) + end + end + end +end diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index dc60976d05..8a01792a19 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -23,6 +23,12 @@ RSpec.configure do |config| config.before :suite do Rails.application.load_seed Chewy.strategy(:bypass) + + # NOTE: we switched registrations mode to closed by default, but the specs + # very heavily rely on having it enabled by default, as it relies on users + # being approved by default except in select cases where explicitly testing + # other registration modes + Setting.registrations_mode = 'open' end config.after :suite do diff --git a/spec/support/examples/cache.rb b/spec/support/examples/cache.rb index afbee66b2d..60e522f426 100644 --- a/spec/support/examples/cache.rb +++ b/spec/support/examples/cache.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true shared_examples 'cacheable response' do |expects_vary: false| - it 'sets correct cache and vary headers and does not set cookies or session' do + it 'sets correct cache and vary headers and does not set cookies or session', :aggregate_failures do expect(response.cookies).to be_empty expect(response.headers['Set-Cookies']).to be_nil diff --git a/spec/support/stories/profile_stories.rb b/spec/support/stories/profile_stories.rb index 74342c337d..f5fc9a441f 100644 --- a/spec/support/stories/profile_stories.rb +++ b/spec/support/stories/profile_stories.rb @@ -21,6 +21,12 @@ module ProfileStories click_on I18n.t('auth.login') end + def as_a_logged_in_admin + # This is a bit awkward, but this avoids code duplication. + as_a_logged_in_user + bob.update!(role: UserRole.find_by!(name: 'Admin')) + end + def with_alice_as_local_user @alice_bio = '@alice and @bob are fictional characters commonly used as' \ 'placeholder names in #cryptology, as well as #science and' \ diff --git a/spec/support/streaming_server_manager.rb b/spec/support/streaming_server_manager.rb index 39657586f2..b702fc77ce 100644 --- a/spec/support/streaming_server_manager.rb +++ b/spec/support/streaming_server_manager.rb @@ -102,6 +102,16 @@ RSpec.configure do |config| self.use_transactional_tests = false DatabaseCleaner.cleaning do + # NOTE: we switched registrations mode to closed by default, but the specs + # very heavily rely on having it enabled by default, as it relies on users + # being approved by default except in select cases where explicitly testing + # other registration modes + # Also needs to be set per-example here because of the database cleaner. + Setting.registrations_mode = 'open' + + # Load seeds so we have the default roles otherwise cleared by `DatabaseCleaner` + Rails.application.load_seed + example.run end diff --git a/spec/support/threading_helpers.rb b/spec/support/threading_helpers.rb new file mode 100644 index 0000000000..edf45822ca --- /dev/null +++ b/spec/support/threading_helpers.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +module ThreadingHelpers + def multi_threaded_execution(thread_count) + wait_for_start = true + + threads = Array.new(thread_count) do + Thread.new do + true while wait_for_start + yield + end + end + + wait_for_start = false + threads.each(&:join) + end +end diff --git a/spec/system/ocr_spec.rb b/spec/system/ocr_spec.rb new file mode 100644 index 0000000000..254efa7137 --- /dev/null +++ b/spec/system/ocr_spec.rb @@ -0,0 +1,33 @@ +# frozen_string_literal: true + +require 'rails_helper' + +describe 'OCR', :paperclip_processing, :sidekiq_inline do + include ProfileStories + + let(:email) { 'test@example.com' } + let(:password) { 'password' } + let(:confirmed_at) { Time.zone.now } + let(:finished_onboarding) { true } + + before do + as_a_logged_in_user + visit root_path + end + + it 'can recognize text in a media attachment' do + expect(page).to have_css('div.app-holder') + + within('.compose-form') do + attach_file('file-upload-input', file_fixture('text.png'), make_visible: true) + + within('.compose-form__upload') do + click_on('Edit') + end + end + + click_on('Detect text from picture') + + expect(page).to have_css('#upload-modal__description', text: /Hello Mastodon\s*/, wait: 10) + end +end diff --git a/spec/system/report_interface_spec.rb b/spec/system/report_interface_spec.rb new file mode 100644 index 0000000000..6eba552559 --- /dev/null +++ b/spec/system/report_interface_spec.rb @@ -0,0 +1,31 @@ +# frozen_string_literal: true + +require 'rails_helper' + +describe 'report interface', :paperclip_processing do + include ProfileStories + + let(:email) { 'admin@example.com' } + let(:password) { 'password' } + let(:confirmed_at) { Time.zone.now } + let(:finished_onboarding) { true } + + let(:reported_account) { Fabricate(:account) } + let(:reported_status) { Fabricate(:status, account: reported_account) } + let(:media_attachment) { Fabricate(:media_attachment, account: reported_account, status: reported_status, file: attachment_fixture('attachment.jpg')) } + let!(:report) { Fabricate(:report, target_account: reported_account, status_ids: [media_attachment.status.id]) } + + before do + as_a_logged_in_admin + visit admin_report_path(report) + end + + it 'displays the report interface, including the javascript bits' do + # The report category selector React component is properly rendered + expect(page).to have_css('.report-reason-selector') + + # The media React component is properly rendered + page.scroll_to(page.find('.batch-table__row')) + expect(page).to have_css('.spoiler-button__overlay__label') + end +end diff --git a/spec/validators/blacklisted_email_validator_spec.rb b/spec/validators/blacklisted_email_validator_spec.rb index 6292f0737e..86760df2e7 100644 --- a/spec/validators/blacklisted_email_validator_spec.rb +++ b/spec/validators/blacklisted_email_validator_spec.rb @@ -4,7 +4,7 @@ require 'rails_helper' RSpec.describe BlacklistedEmailValidator do describe '#validate' do - subject { described_class.new.validate(user); errors } + subject { described_class.new.validate(user) } let(:user) { instance_double(User, email: 'info@mail.com', sign_up_ip: '1.2.3.4', errors: errors) } let(:errors) { instance_double(ActiveModel::Errors, add: nil) } @@ -18,7 +18,8 @@ RSpec.describe BlacklistedEmailValidator do let(:blocked_email) { true } it 'adds error' do - described_class.new.validate(user) + subject + expect(errors).to have_received(:add).with(:email, :blocked).once end end @@ -27,7 +28,8 @@ RSpec.describe BlacklistedEmailValidator do let(:blocked_email) { false } it 'does not add errors' do - described_class.new.validate(user) + subject + expect(errors).to_not have_received(:add) end @@ -39,7 +41,8 @@ RSpec.describe BlacklistedEmailValidator do end it 'adds error' do - described_class.new.validate(user) + subject + expect(errors).to have_received(:add).with(:email, :taken).once end end diff --git a/spec/validators/email_mx_validator_spec.rb b/spec/validators/email_mx_validator_spec.rb index 21b1ad0a11..bc26be8729 100644 --- a/spec/validators/email_mx_validator_spec.rb +++ b/spec/validators/email_mx_validator_spec.rb @@ -5,6 +5,7 @@ require 'rails_helper' describe EmailMxValidator do describe '#validate' do let(:user) { instance_double(User, email: 'foo@example.com', sign_up_ip: '1.2.3.4', errors: instance_double(ActiveModel::Errors, add: nil)) } + let(:resolv_dns_double) { instance_double(Resolv::DNS) } context 'with an e-mail domain that is explicitly allowed' do around do |block| @@ -15,13 +16,7 @@ describe EmailMxValidator do end it 'does not add errors if there are no DNS records' do - resolver = instance_double(Resolv::DNS) - - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::MX).and_return([]) - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::A).and_return([]) - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::AAAA).and_return([]) - allow(resolver).to receive(:timeouts=).and_return(nil) - allow(Resolv::DNS).to receive(:open).and_yield(resolver) + configure_resolver('example.com') subject.validate(user) expect(user.errors).to_not have_received(:add) @@ -29,13 +24,7 @@ describe EmailMxValidator do end it 'adds no error if there are DNS records for the e-mail domain' do - resolver = instance_double(Resolv::DNS) - - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::MX).and_return([]) - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::A).and_return([Resolv::DNS::Resource::IN::A.new('192.0.2.42')]) - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::AAAA).and_return([]) - allow(resolver).to receive(:timeouts=).and_return(nil) - allow(Resolv::DNS).to receive(:open).and_yield(resolver) + configure_resolver('example.com', a: resolv_double_a('192.0.2.42')) subject.validate(user) expect(user.errors).to_not have_received(:add) @@ -58,13 +47,7 @@ describe EmailMxValidator do end it 'adds an error if the email domain name contains empty labels' do - resolver = instance_double(Resolv::DNS) - - allow(resolver).to receive(:getresources).with('example..com', Resolv::DNS::Resource::IN::MX).and_return([]) - allow(resolver).to receive(:getresources).with('example..com', Resolv::DNS::Resource::IN::A).and_return([Resolv::DNS::Resource::IN::A.new('192.0.2.42')]) - allow(resolver).to receive(:getresources).with('example..com', Resolv::DNS::Resource::IN::AAAA).and_return([]) - allow(resolver).to receive(:timeouts=).and_return(nil) - allow(Resolv::DNS).to receive(:open).and_yield(resolver) + configure_resolver('example..com', a: resolv_double_a('192.0.2.42')) user = instance_double(User, email: 'foo@example..com', sign_up_ip: '1.2.3.4', errors: instance_double(ActiveModel::Errors, add: nil)) subject.validate(user) @@ -72,30 +55,15 @@ describe EmailMxValidator do end it 'adds an error if there are no DNS records for the e-mail domain' do - resolver = instance_double(Resolv::DNS) - - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::MX).and_return([]) - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::A).and_return([]) - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::AAAA).and_return([]) - allow(resolver).to receive(:timeouts=).and_return(nil) - allow(Resolv::DNS).to receive(:open).and_yield(resolver) + configure_resolver('example.com') subject.validate(user) expect(user.errors).to have_received(:add) end it 'adds an error if a MX record does not lead to an IP' do - resolver = instance_double(Resolv::DNS) - - allow(resolver).to receive(:getresources) - .with('example.com', Resolv::DNS::Resource::IN::MX) - .and_return([instance_double(Resolv::DNS::Resource::MX, exchange: 'mail.example.com')]) - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::A).and_return([]) - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::AAAA).and_return([]) - allow(resolver).to receive(:getresources).with('mail.example.com', Resolv::DNS::Resource::IN::A).and_return([]) - allow(resolver).to receive(:getresources).with('mail.example.com', Resolv::DNS::Resource::IN::AAAA).and_return([]) - allow(resolver).to receive(:timeouts=).and_return(nil) - allow(Resolv::DNS).to receive(:open).and_yield(resolver) + configure_resolver('example.com', mx: resolv_double_mx('mail.example.com')) + configure_resolver('mail.example.com') subject.validate(user) expect(user.errors).to have_received(:add) @@ -103,20 +71,48 @@ describe EmailMxValidator do it 'adds an error if the MX record is blacklisted' do EmailDomainBlock.create!(domain: 'mail.example.com') - resolver = instance_double(Resolv::DNS) - allow(resolver).to receive(:getresources) - .with('example.com', Resolv::DNS::Resource::IN::MX) - .and_return([instance_double(Resolv::DNS::Resource::MX, exchange: 'mail.example.com')]) - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::A).and_return([]) - allow(resolver).to receive(:getresources).with('example.com', Resolv::DNS::Resource::IN::AAAA).and_return([]) - allow(resolver).to receive(:getresources).with('mail.example.com', Resolv::DNS::Resource::IN::A).and_return([instance_double(Resolv::DNS::Resource::IN::A, address: '2.3.4.5')]) - allow(resolver).to receive(:getresources).with('mail.example.com', Resolv::DNS::Resource::IN::AAAA).and_return([instance_double(Resolv::DNS::Resource::IN::AAAA, address: 'fd00::2')]) - allow(resolver).to receive(:timeouts=).and_return(nil) - allow(Resolv::DNS).to receive(:open).and_yield(resolver) + configure_resolver( + 'example.com', + mx: resolv_double_mx('mail.example.com') + ) + configure_resolver( + 'mail.example.com', + a: instance_double(Resolv::DNS::Resource::IN::A, address: '2.3.4.5'), + aaaa: instance_double(Resolv::DNS::Resource::IN::AAAA, address: 'fd00::2') + ) subject.validate(user) expect(user.errors).to have_received(:add) end end + + def configure_resolver(domain, options = {}) + allow(resolv_dns_double) + .to receive(:getresources) + .with(domain, Resolv::DNS::Resource::IN::MX) + .and_return(Array(options[:mx])) + allow(resolv_dns_double) + .to receive(:getresources) + .with(domain, Resolv::DNS::Resource::IN::A) + .and_return(Array(options[:a])) + allow(resolv_dns_double) + .to receive(:getresources) + .with(domain, Resolv::DNS::Resource::IN::AAAA) + .and_return(Array(options[:aaaa])) + allow(resolv_dns_double) + .to receive(:timeouts=) + .and_return(nil) + allow(Resolv::DNS) + .to receive(:open) + .and_yield(resolv_dns_double) + end + + def resolv_double_mx(domain) + instance_double(Resolv::DNS::Resource::MX, exchange: domain) + end + + def resolv_double_a(domain) + Resolv::DNS::Resource::IN::A.new(domain) + end end diff --git a/spec/workers/activitypub/fetch_replies_worker_spec.rb b/spec/workers/activitypub/fetch_replies_worker_spec.rb index ff4d049a26..2d080e286e 100644 --- a/spec/workers/activitypub/fetch_replies_worker_spec.rb +++ b/spec/workers/activitypub/fetch_replies_worker_spec.rb @@ -21,7 +21,7 @@ describe ActivityPub::FetchRepliesWorker do describe 'perform' do it 'performs a request if the collection URI is from the same host' do - stub_request(:get, 'https://example.com/statuses_replies/1').to_return(status: 200, body: json) + stub_request(:get, 'https://example.com/statuses_replies/1').to_return(status: 200, body: json, headers: { 'Content-Type': 'application/activity+json' }) subject.perform(status.id, 'https://example.com/statuses_replies/1') expect(a_request(:get, 'https://example.com/statuses_replies/1')).to have_been_made.once end diff --git a/spec/workers/backup_worker_spec.rb b/spec/workers/backup_worker_spec.rb index 987cbc7d60..74928c7ca6 100644 --- a/spec/workers/backup_worker_spec.rb +++ b/spec/workers/backup_worker_spec.rb @@ -15,12 +15,17 @@ describe BackupWorker do let!(:other_backup) { Fabricate(:backup, user: backup.user) } it 'sends the backup to the service and removes other backups', :sidekiq_inline do - expect do - worker.perform(backup.id) - end.to change(UserMailer.deliveries, :size).by(1) + emails = capture_emails { worker.perform(backup.id) } expect(service).to have_received(:call).with(backup) expect { other_backup.reload }.to raise_error(ActiveRecord::RecordNotFound) + expect(emails.size) + .to eq(1) + expect(emails.first) + .to have_attributes( + to: contain_exactly(backup.user.email), + subject: I18n.t('user_mailer.backup_ready.subject') + ) end context 'when sidekiq retries are exhausted' do diff --git a/spec/workers/scheduler/auto_close_registrations_scheduler_spec.rb b/spec/workers/scheduler/auto_close_registrations_scheduler_spec.rb new file mode 100644 index 0000000000..c0c50b128d --- /dev/null +++ b/spec/workers/scheduler/auto_close_registrations_scheduler_spec.rb @@ -0,0 +1,60 @@ +# frozen_string_literal: true + +require 'rails_helper' + +describe Scheduler::AutoCloseRegistrationsScheduler do + subject { described_class.new } + + describe '#perform' do + let(:moderator_activity_date) { Time.now.utc } + + before do + Fabricate(:user, role: UserRole.find_by(name: 'Owner'), current_sign_in_at: 10.years.ago) + Fabricate(:user, role: UserRole.find_by(name: 'Moderator'), current_sign_in_at: moderator_activity_date) + end + + context 'when registrations are open' do + before do + Setting.registrations_mode = 'open' + end + + context 'when a moderator has logged in recently' do + let(:moderator_activity_date) { Time.now.utc } + + it 'does not change registrations mode' do + expect { subject.perform }.to_not change(Setting, :registrations_mode) + end + end + + context 'when a moderator has not recently signed in' do + let(:moderator_activity_date) { 1.year.ago } + + it 'changes registrations mode from open to approved' do + expect { subject.perform }.to change(Setting, :registrations_mode).from('open').to('approved') + end + end + end + + context 'when registrations are closed' do + before do + Setting.registrations_mode = 'none' + end + + context 'when a moderator has logged in recently' do + let(:moderator_activity_date) { Time.now.utc } + + it 'does not change registrations mode' do + expect { subject.perform }.to_not change(Setting, :registrations_mode) + end + end + + context 'when a moderator has not recently signed in' do + let(:moderator_activity_date) { 1.year.ago } + + it 'does not change registrations mode' do + expect { subject.perform }.to_not change(Setting, :registrations_mode) + end + end + end + end +end diff --git a/streaming/.eslintrc.js b/streaming/.eslintrc.cjs similarity index 79% rename from streaming/.eslintrc.js rename to streaming/.eslintrc.cjs index 188ebb512d..e25cff7df0 100644 --- a/streaming/.eslintrc.js +++ b/streaming/.eslintrc.cjs @@ -1,4 +1,8 @@ +/* eslint-disable import/no-commonjs */ + // @ts-check + +// @ts-ignore - This needs to be a CJS file (eslint does not yet support ESM configs), and TS is complaining we use require const { defineConfig } = require('eslint-define-config'); module.exports = defineConfig({ @@ -22,22 +26,18 @@ module.exports = defineConfig({ // to maintain. 'no-delete-var': 'off', - // The streaming server is written in commonjs, not ESM for now: - 'import/no-commonjs': 'off', - // This overrides the base configuration for this rule to pick up // dependencies for the streaming server from the correct package.json file. 'import/no-extraneous-dependencies': [ 'error', { - devDependencies: [ - 'streaming/.eslintrc.js', - ], + devDependencies: ['streaming/.eslintrc.cjs'], optionalDependencies: false, peerDependencies: false, includeTypes: true, packageDir: __dirname, }, ], + 'import/extensions': ['error', 'always'], }, }); diff --git a/streaming/errors.js b/streaming/errors.js new file mode 100644 index 0000000000..6c44d2cb8f --- /dev/null +++ b/streaming/errors.js @@ -0,0 +1,46 @@ +// @ts-check + +/** + * Typed as a string because otherwise it's a const string, which means we can't + * override it in let statements. + * @type {string} + */ +export const UNEXPECTED_ERROR_MESSAGE = 'An unexpected error occurred'; + +/** + * Extracts the status and message properties from the error object, if + * available for public use. The `unknown` is for catch statements + * @param {Error | AuthenticationError | RequestError | unknown} err + */ +export function extractStatusAndMessage(err) { + let statusCode = 500; + let errorMessage = UNEXPECTED_ERROR_MESSAGE; + if (err instanceof AuthenticationError || err instanceof RequestError) { + statusCode = err.status; + errorMessage = err.message; + } + + return { statusCode, errorMessage }; +} + +export class RequestError extends Error { + /** + * @param {string} message + */ + constructor(message) { + super(message); + this.name = "RequestError"; + this.status = 400; + } +} + +export class AuthenticationError extends Error { + /** + * @param {string} message + */ + constructor(message) { + super(message); + this.name = "AuthenticationError"; + this.status = 401; + } +} diff --git a/streaming/index.js b/streaming/index.js index 6945a9ae7d..154ecbc02c 100644 --- a/streaming/index.js +++ b/streaming/index.js @@ -1,30 +1,36 @@ // @ts-check -const fs = require('fs'); -const http = require('http'); -const path = require('path'); -const url = require('url'); +import fs from 'node:fs'; +import http from 'node:http'; +import path from 'node:path'; +import url from 'node:url'; -const cors = require('cors'); -const dotenv = require('dotenv'); -const express = require('express'); -const { Redis } = require('ioredis'); -const { JSDOM } = require('jsdom'); -const pg = require('pg'); -const dbUrlToConfig = require('pg-connection-string').parse; -const WebSocket = require('ws'); +import cors from 'cors'; +import dotenv from 'dotenv'; +import express from 'express'; +import { Redis } from 'ioredis'; +import { JSDOM } from 'jsdom'; +import pg from 'pg'; +import pgConnectionString from 'pg-connection-string'; +import WebSocket from 'ws'; -const { logger, httpLogger, initializeLogLevel, attachWebsocketHttpLogger, createWebsocketLogger } = require('./logging'); -const { setupMetrics } = require('./metrics'); -const { isTruthy, normalizeHashtag, firstParam } = require("./utils"); +import { AuthenticationError, RequestError, extractStatusAndMessage as extractErrorStatusAndMessage } from './errors.js'; +import { logger, httpLogger, initializeLogLevel, attachWebsocketHttpLogger, createWebsocketLogger } from './logging.js'; +import { setupMetrics } from './metrics.js'; +import { isTruthy, normalizeHashtag, firstParam } from './utils.js'; const environment = process.env.NODE_ENV || 'development'; // Correctly detect and load .env or .env.production file based on environment: const dotenvFile = environment === 'production' ? '.env.production' : '.env'; +const dotenvFilePath = path.resolve( + url.fileURLToPath( + new URL(path.join('..', dotenvFile), import.meta.url) + ) +); dotenv.config({ - path: path.resolve(__dirname, path.join('..', dotenvFile)) + path: dotenvFilePath }); initializeLogLevel(process.env, environment); @@ -141,7 +147,7 @@ const pgConfigFromEnv = (env) => { let baseConfig = {}; if (env.DATABASE_URL) { - const parsedUrl = dbUrlToConfig(env.DATABASE_URL); + const parsedUrl = pgConnectionString.parse(env.DATABASE_URL); // The result of dbUrlToConfig from pg-connection-string is not type // compatible with pg.PoolConfig, since parts of the connection URL may be @@ -186,7 +192,7 @@ const pgConfigFromEnv = (env) => { if (!baseConfig.password && env.DB_PASS) { baseConfig.password = env.DB_PASS; } - } else if (Object.hasOwnProperty.call(pgConfigs, environment)) { + } else if (Object.hasOwn(pgConfigs, environment)) { baseConfig = pgConfigs[environment]; if (env.DB_SSLMODE) { @@ -324,7 +330,7 @@ const startServer = async () => { // Unfortunately for using the on('upgrade') setup, we need to manually // write a HTTP Response to the Socket to close the connection upgrade // attempt, so the following code is to handle all of that. - const statusCode = err.status ?? 401; + const {statusCode, errorMessage } = extractErrorStatusAndMessage(err); /** @type {Record} */ const headers = { @@ -332,7 +338,7 @@ const startServer = async () => { 'Content-Type': 'text/plain', 'Content-Length': 0, 'X-Request-Id': request.id, - 'X-Error-Message': err.status ? err.toString() : 'An unexpected error occurred' + 'X-Error-Message': errorMessage }; // Ensure the socket is closed once we've finished writing to it: @@ -350,7 +356,7 @@ const startServer = async () => { statusCode, headers } - }, err.toString()); + }, errorMessage); return; } @@ -535,11 +541,7 @@ const startServer = async () => { } if (result.rows.length === 0) { - err = new Error('Invalid access token'); - // @ts-ignore - err.status = 401; - - reject(err); + reject(new AuthenticationError('Invalid access token')); return; } @@ -570,11 +572,7 @@ const startServer = async () => { const accessToken = location.query.access_token || req.headers['sec-websocket-protocol']; if (!authorization && !accessToken) { - const err = new Error('Missing access token'); - // @ts-ignore - err.status = 401; - - reject(err); + reject(new AuthenticationError('Missing access token')); return; } @@ -651,11 +649,7 @@ const startServer = async () => { return; } - const err = new Error('Access token does not cover required scopes'); - // @ts-ignore - err.status = 401; - - reject(err); + reject(new AuthenticationError('Access token does not have the required scopes')); }); /** @@ -731,11 +725,7 @@ const startServer = async () => { // If no channelName can be found for the request, then we should terminate // the connection, as there's nothing to stream back if (!channelName) { - const err = new Error('Unknown channel requested'); - // @ts-ignore - err.status = 400; - - next(err); + next(new RequestError('Unknown channel requested')); return; } @@ -762,10 +752,7 @@ const startServer = async () => { return; } - const hasStatusCode = Object.hasOwnProperty.call(err, 'status'); - // @ts-ignore - const statusCode = hasStatusCode ? err.status : 500; - const errorMessage = hasStatusCode ? err.toString() : 'An unexpected error occurred'; + const {statusCode, errorMessage } = extractErrorStatusAndMessage(err); res.writeHead(statusCode, { 'Content-Type': 'application/json' }); res.end(JSON.stringify({ error: errorMessage })); @@ -925,7 +912,7 @@ const startServer = async () => { // If the payload already contains the `filtered` property, it means // that filtering has been applied on the ruby on rails side, as // such, we don't need to construct or apply the filters in streaming: - if (Object.prototype.hasOwnProperty.call(payload, "filtered")) { + if (Object.hasOwn(payload, "filtered")) { transmit(event, payload); return; } @@ -1140,7 +1127,7 @@ const startServer = async () => { }; /** - * @param {any} res + * @param {http.ServerResponse} res */ const httpNotFound = res => { res.writeHead(404, { 'Content-Type': 'application/json' }); @@ -1155,16 +1142,29 @@ const startServer = async () => { api.use(errorMiddleware); api.get('/api/v1/streaming/*', (req, res) => { - // @ts-ignore - channelNameToIds(req, channelNameFromPath(req), req.query).then(({ channelIds, options }) => { + const channelName = channelNameFromPath(req); + + // FIXME: In theory we'd never actually reach here due to + // authenticationMiddleware catching this case, however, we need to refactor + // how those middlewares work, so I'm adding the extra check in here. + if (!channelName) { + httpNotFound(res); + return; + } + + channelNameToIds(req, channelName, req.query).then(({ channelIds, options }) => { const onSend = streamToHttp(req, res); const onEnd = streamHttpEnd(req, subscriptionHeartbeat(channelIds)); // @ts-ignore streamFrom(channelIds, req, req.log, onSend, onEnd, 'eventsource', options.needsFiltering); }).catch(err => { - res.log.info({ err }, 'Subscription error:', err.toString()); - httpNotFound(res); + const {statusCode, errorMessage } = extractErrorStatusAndMessage(err); + + res.log.info({ err }, 'Eventsource subscription error'); + + res.writeHead(statusCode, { 'Content-Type': 'application/json' }); + res.end(JSON.stringify({ error: errorMessage })); }); }); @@ -1265,8 +1265,8 @@ const startServer = async () => { break; case 'hashtag': - if (!params.tag || params.tag.length === 0) { - reject('No tag for stream provided'); + if (!params.tag) { + reject(new RequestError('Missing tag name parameter')); } else { resolve({ channelIds: [`timeline:hashtag:${normalizeHashtag(params.tag)}`], @@ -1276,8 +1276,8 @@ const startServer = async () => { break; case 'hashtag:local': - if (!params.tag || params.tag.length === 0) { - reject('No tag for stream provided'); + if (!params.tag) { + reject(new RequestError('Missing tag name parameter')); } else { resolve({ channelIds: [`timeline:hashtag:${normalizeHashtag(params.tag)}:local`], @@ -1287,19 +1287,23 @@ const startServer = async () => { break; case 'list': - // @ts-ignore + if (!params.list) { + reject(new RequestError('Missing list name parameter')); + return; + } + authorizeListAccess(params.list, req).then(() => { resolve({ channelIds: [`timeline:list:${params.list}`], options: { needsFiltering: false }, }); }).catch(() => { - reject('Not authorized to stream this list'); + reject(new AuthenticationError('Not authorized to stream this list')); }); break; default: - reject('Unknown stream type'); + reject(new RequestError('Unknown stream type')); } }); @@ -1353,8 +1357,17 @@ const startServer = async () => { stopHeartbeat, }; }).catch(err => { - logger.error({ err }, 'Subscription error'); - websocket.send(JSON.stringify({ error: err.toString() })); + const {statusCode, errorMessage } = extractErrorStatusAndMessage(err); + + logger.error({ err }, 'Websocket subscription error'); + + // If we have a socket that is alive and open still, send the error back to the client: + if (websocket.isAlive && websocket.readyState === websocket.OPEN) { + websocket.send(JSON.stringify({ + error: errorMessage, + status: statusCode + })); + } }); }; @@ -1393,10 +1406,11 @@ const startServer = async () => { channelNameToIds(request, channelName, params).then(({ channelIds }) => { removeSubscription(session, channelIds); }).catch(err => { - logger.error({err}, 'Unsubscribe error'); + logger.error({err}, 'Websocket unsubscribe error'); // If we have a socket that is alive and open still, send the error back to the client: if (websocket.isAlive && websocket.readyState === websocket.OPEN) { + // TODO: Use a better error response here websocket.send(JSON.stringify({ error: "Error unsubscribing from channel" })); } }); @@ -1472,13 +1486,15 @@ const startServer = async () => { // Decrement the metrics for connected clients: connectedClients.labels({ type: 'websocket' }).dec(); - // We need to delete the session object as to ensure it correctly gets + // We need to unassign the session object as to ensure it correctly gets // garbage collected, without doing this we could accidentally hold on to // references to the websocket, the request, and the logger, causing // memory leaks. - // - // @ts-ignore - delete session; + + // This is commented out because `delete` only operated on object properties + // It needs to be replaced by `session = undefined`, but it requires every calls to + // `session` to check for it, thus a significant refactor + // delete session; }); // Note: immediately after the `error` event is emitted, the `close` event diff --git a/streaming/logging.js b/streaming/logging.js index 64ee474875..e1c552c22e 100644 --- a/streaming/logging.js +++ b/streaming/logging.js @@ -1,6 +1,6 @@ -const { pino } = require('pino'); -const { pinoHttp, stdSerializers: pinoHttpSerializers } = require('pino-http'); -const uuid = require('uuid'); +import { pino } from 'pino'; +import { pinoHttp, stdSerializers as pinoHttpSerializers } from 'pino-http'; +import * as uuid from 'uuid'; /** * Generates the Request ID for logging and setting on responses @@ -36,7 +36,7 @@ function sanitizeRequestLog(req) { return log; } -const logger = pino({ +export const logger = pino({ name: "streaming", // Reformat the log level to a string: formatters: { @@ -59,7 +59,7 @@ const logger = pino({ } }); -const httpLogger = pinoHttp({ +export const httpLogger = pinoHttp({ logger, genReqId: generateRequestId, serializers: { @@ -71,7 +71,7 @@ const httpLogger = pinoHttp({ * Attaches a logger to the request object received by http upgrade handlers * @param {http.IncomingMessage} request */ -function attachWebsocketHttpLogger(request) { +export function attachWebsocketHttpLogger(request) { generateRequestId(request); request.log = logger.child({ @@ -84,7 +84,7 @@ function attachWebsocketHttpLogger(request) { * @param {http.IncomingMessage} request * @param {import('./index.js').ResolvedAccount} resolvedAccount */ -function createWebsocketLogger(request, resolvedAccount) { +export function createWebsocketLogger(request, resolvedAccount) { // ensure the request.id is always present. generateRequestId(request); @@ -98,17 +98,12 @@ function createWebsocketLogger(request, resolvedAccount) { }); } -exports.logger = logger; -exports.httpLogger = httpLogger; -exports.attachWebsocketHttpLogger = attachWebsocketHttpLogger; -exports.createWebsocketLogger = createWebsocketLogger; - /** * Initializes the log level based on the environment * @param {Object} env * @param {string} environment */ -exports.initializeLogLevel = function initializeLogLevel(env, environment) { +export function initializeLogLevel(env, environment) { if (env.LOG_LEVEL && Object.keys(logger.levels.values).includes(env.LOG_LEVEL)) { logger.level = env.LOG_LEVEL; } else if (environment === 'development') { @@ -116,4 +111,4 @@ exports.initializeLogLevel = function initializeLogLevel(env, environment) { } else { logger.level = 'info'; } -}; +} diff --git a/streaming/metrics.js b/streaming/metrics.js index d05b4c9b16..a029d778fc 100644 --- a/streaming/metrics.js +++ b/streaming/metrics.js @@ -1,6 +1,6 @@ // @ts-check -const metrics = require('prom-client'); +import metrics from 'prom-client'; /** * @typedef StreamingMetrics @@ -18,7 +18,7 @@ const metrics = require('prom-client'); * @param {import('pg').Pool} pgPool * @returns {StreamingMetrics} */ -function setupMetrics(channels, pgPool) { +export function setupMetrics(channels, pgPool) { // Collect metrics from Node.js metrics.collectDefaultMetrics(); @@ -101,5 +101,3 @@ function setupMetrics(channels, pgPool) { messagesSent, }; } - -exports.setupMetrics = setupMetrics; diff --git a/streaming/package.json b/streaming/package.json index 3f76e25786..6e183a181c 100644 --- a/streaming/package.json +++ b/streaming/package.json @@ -1,12 +1,13 @@ { "name": "@mastodon/streaming", "license": "AGPL-3.0-or-later", - "packageManager": "yarn@4.0.2", + "packageManager": "yarn@4.1.1", "engines": { "node": ">=18" }, "description": "Mastodon's Streaming Server", "private": true, + "type": "module", "repository": { "type": "git", "url": "https://github.com/mastodon/mastodon.git" diff --git a/streaming/tsconfig.json b/streaming/tsconfig.json index a0cf68ef90..37e9a7fee0 100644 --- a/streaming/tsconfig.json +++ b/streaming/tsconfig.json @@ -2,11 +2,11 @@ "extends": "../tsconfig.json", "compilerOptions": { "target": "esnext", - "module": "CommonJS", - "moduleResolution": "node", + "module": "NodeNext", + "moduleResolution": "NodeNext", "noUnusedParameters": false, "tsBuildInfoFile": "../tmp/cache/streaming/tsconfig.tsbuildinfo", - "paths": {}, + "paths": {} }, - "include": ["./*.js", "./.eslintrc.js"], + "include": ["./*.js", "./.eslintrc.cjs"] } diff --git a/streaming/utils.js b/streaming/utils.js index 7b87a1d14c..4610bf660d 100644 --- a/streaming/utils.js +++ b/streaming/utils.js @@ -16,11 +16,9 @@ const FALSE_VALUES = [ * @param {any} value * @returns {boolean} */ -const isTruthy = value => - value && !FALSE_VALUES.includes(value); - -exports.isTruthy = isTruthy; - +export function isTruthy(value) { + return value && !FALSE_VALUES.includes(value); +} /** * See app/lib/ascii_folder.rb for the canon definitions @@ -33,7 +31,7 @@ const EQUIVALENT_ASCII_CHARS = 'AAAAAAaaaaaaAaAaAaCcCcCcCcCcDdDdDdEEEEeeeeEeEeEe * @param {string} str * @returns {string} */ -function foldToASCII(str) { +export function foldToASCII(str) { const regex = new RegExp(NON_ASCII_CHARS.split('').join('|'), 'g'); return str.replace(regex, function(match) { @@ -42,28 +40,22 @@ function foldToASCII(str) { }); } -exports.foldToASCII = foldToASCII; - /** * @param {string} str * @returns {string} */ -function normalizeHashtag(str) { +export function normalizeHashtag(str) { return foldToASCII(str.normalize('NFKC').toLowerCase()).replace(/[^\p{L}\p{N}_\u00b7\u200c]/gu, ''); } -exports.normalizeHashtag = normalizeHashtag; - /** * @param {string|string[]} arrayOrString * @returns {string} */ -function firstParam(arrayOrString) { +export function firstParam(arrayOrString) { if (Array.isArray(arrayOrString)) { return arrayOrString[0]; } else { return arrayOrString; } } - -exports.firstParam = firstParam; diff --git a/tsconfig.json b/tsconfig.json index dc71fc4a9c..a193ea35f2 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -15,12 +15,12 @@ "paths": { "mastodon": ["app/javascript/mastodon"], "mastodon/*": ["app/javascript/mastodon/*"], - "@/*": ["app/javascript/*"], - }, + "@/*": ["app/javascript/*"] + } }, "include": [ "app/javascript/mastodon", "app/javascript/packs", - "app/javascript/types", - ], + "app/javascript/types" + ] } diff --git a/yarn.lock b/yarn.lock index 4d1084c229..75a725c4ee 100644 --- a/yarn.lock +++ b/yarn.lock @@ -8,14 +8,14 @@ __metadata: "@aashutoshrathi/word-wrap@npm:^1.2.3": version: 1.2.6 resolution: "@aashutoshrathi/word-wrap@npm:1.2.6" - checksum: 53c2b231a61a46792b39a0d43bc4f4f776bb4542aa57ee04930676802e5501282c2fc8aac14e4cd1f1120ff8b52616b6ff5ab539ad30aa2277d726444b71619f + checksum: 10c0/53c2b231a61a46792b39a0d43bc4f4f776bb4542aa57ee04930676802e5501282c2fc8aac14e4cd1f1120ff8b52616b6ff5ab539ad30aa2277d726444b71619f languageName: node linkType: hard "@adobe/css-tools@npm:^4.3.2": version: 4.3.2 resolution: "@adobe/css-tools@npm:4.3.2" - checksum: 296a03dd29f227c60500d2da8c7f64991fecf1d8b456ce2b4adb8cec7363d9c08b5b03f1463673fc8cbfe54b538745588e7a13c736d2dd14a80c01a20f127f39 + checksum: 10c0/296a03dd29f227c60500d2da8c7f64991fecf1d8b456ce2b4adb8cec7363d9c08b5b03f1463673fc8cbfe54b538745588e7a13c736d2dd14a80c01a20f127f39 languageName: node linkType: hard @@ -25,7 +25,7 @@ __metadata: dependencies: "@jridgewell/gen-mapping": "npm:^0.3.0" "@jridgewell/trace-mapping": "npm:^0.3.9" - checksum: 92ce5915f8901d8c7cd4f4e6e2fe7b9fd335a29955b400caa52e0e5b12ca3796ada7c2f10e78c9c5b0f9c2539dff0ffea7b19850a56e1487aa083531e1e46d43 + checksum: 10c0/92ce5915f8901d8c7cd4f4e6e2fe7b9fd335a29955b400caa52e0e5b12ca3796ada7c2f10e78c9c5b0f9c2539dff0ffea7b19850a56e1487aa083531e1e46d43 languageName: node linkType: hard @@ -38,7 +38,7 @@ __metadata: leven: "npm:^3.1.0" peerDependencies: ajv: ">=8" - checksum: f89a1e16ecbc2ada91c56d4391c8345471e385f0b9c38d62c3bccac40ec94482cdfa496d4c2fe0af411e9851a9931c0d5042a8040f52213f603ba6b6fd7f949b + checksum: 10c0/f89a1e16ecbc2ada91c56d4391c8345471e385f0b9c38d62c3bccac40ec94482cdfa496d4c2fe0af411e9851a9931c0d5042a8040f52213f603ba6b6fd7f949b languageName: node linkType: hard @@ -48,37 +48,37 @@ __metadata: dependencies: "@babel/highlight": "npm:^7.23.4" chalk: "npm:^2.4.2" - checksum: a10e843595ddd9f97faa99917414813c06214f4d9205294013e20c70fbdf4f943760da37dec1d998bf3e6fc20fa2918a47c0e987a7e458663feb7698063ad7c6 + checksum: 10c0/a10e843595ddd9f97faa99917414813c06214f4d9205294013e20c70fbdf4f943760da37dec1d998bf3e6fc20fa2918a47c0e987a7e458663feb7698063ad7c6 languageName: node linkType: hard -"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.23.3, @babel/compat-data@npm:^7.23.5": +"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.23.5": version: 7.23.5 resolution: "@babel/compat-data@npm:7.23.5" - checksum: 081278ed46131a890ad566a59c61600a5f9557bd8ee5e535890c8548192532ea92590742fd74bd9db83d74c669ef8a04a7e1c85cdea27f960233e3b83c3a957c + checksum: 10c0/081278ed46131a890ad566a59c61600a5f9557bd8ee5e535890c8548192532ea92590742fd74bd9db83d74c669ef8a04a7e1c85cdea27f960233e3b83c3a957c languageName: node linkType: hard "@babel/core@npm:^7.10.4, @babel/core@npm:^7.11.1, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.22.1": - version: 7.23.9 - resolution: "@babel/core@npm:7.23.9" + version: 7.24.0 + resolution: "@babel/core@npm:7.24.0" dependencies: "@ampproject/remapping": "npm:^2.2.0" "@babel/code-frame": "npm:^7.23.5" "@babel/generator": "npm:^7.23.6" "@babel/helper-compilation-targets": "npm:^7.23.6" "@babel/helper-module-transforms": "npm:^7.23.3" - "@babel/helpers": "npm:^7.23.9" - "@babel/parser": "npm:^7.23.9" - "@babel/template": "npm:^7.23.9" - "@babel/traverse": "npm:^7.23.9" - "@babel/types": "npm:^7.23.9" + "@babel/helpers": "npm:^7.24.0" + "@babel/parser": "npm:^7.24.0" + "@babel/template": "npm:^7.24.0" + "@babel/traverse": "npm:^7.24.0" + "@babel/types": "npm:^7.24.0" convert-source-map: "npm:^2.0.0" debug: "npm:^4.1.0" gensync: "npm:^1.0.0-beta.2" json5: "npm:^2.2.3" semver: "npm:^6.3.1" - checksum: 03883300bf1252ab4c9ba5b52f161232dd52873dbe5cde9289bb2bb26e935c42682493acbac9194a59a3b6cbd17f4c4c84030db8d6d482588afe64531532ff9b + checksum: 10c0/bb37cbf0bdfd676b246af0a3d9a7932d10573f2d45114fdda02a71889e35530ce13d8930177e78b065d6734b8d45a4fbf7c77f223b1d44b4a28cfe5fefee93ed languageName: node linkType: hard @@ -90,7 +90,7 @@ __metadata: "@jridgewell/gen-mapping": "npm:^0.3.2" "@jridgewell/trace-mapping": "npm:^0.3.17" jsesc: "npm:^2.5.1" - checksum: 53540e905cd10db05d9aee0a5304e36927f455ce66f95d1253bb8a179f286b88fa7062ea0db354c566fe27f8bb96567566084ffd259f8feaae1de5eccc8afbda + checksum: 10c0/53540e905cd10db05d9aee0a5304e36927f455ce66f95d1253bb8a179f286b88fa7062ea0db354c566fe27f8bb96567566084ffd259f8feaae1de5eccc8afbda languageName: node linkType: hard @@ -99,7 +99,7 @@ __metadata: resolution: "@babel/helper-annotate-as-pure@npm:7.22.5" dependencies: "@babel/types": "npm:^7.22.5" - checksum: 5a80dc364ddda26b334bbbc0f6426cab647381555ef7d0cd32eb284e35b867c012ce6ce7d52a64672ed71383099c99d32765b3d260626527bb0e3470b0f58e45 + checksum: 10c0/5a80dc364ddda26b334bbbc0f6426cab647381555ef7d0cd32eb284e35b867c012ce6ce7d52a64672ed71383099c99d32765b3d260626527bb0e3470b0f58e45 languageName: node linkType: hard @@ -108,7 +108,7 @@ __metadata: resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.22.15" dependencies: "@babel/types": "npm:^7.22.15" - checksum: 2535e3824ca6337f65786bbac98e562f71699f25532cecd196f027d7698b4967a96953d64e36567956658ad1a05ccbdc62d1ba79ee751c79f4f1d2d3ecc2e01c + checksum: 10c0/2535e3824ca6337f65786bbac98e562f71699f25532cecd196f027d7698b4967a96953d64e36567956658ad1a05ccbdc62d1ba79ee751c79f4f1d2d3ecc2e01c languageName: node linkType: hard @@ -118,7 +118,7 @@ __metadata: dependencies: "@babel/helper-annotate-as-pure": "npm:^7.22.5" "@babel/types": "npm:^7.22.10" - checksum: 8e2ad2e17dd779ddccec29f6b1de61df1f199694673bdbbae0474878211139f2e574810726110e4d46c1e9a0221af1f2d38bd0398dd20490eb03a24f790602be + checksum: 10c0/8e2ad2e17dd779ddccec29f6b1de61df1f199694673bdbbae0474878211139f2e574810726110e4d46c1e9a0221af1f2d38bd0398dd20490eb03a24f790602be languageName: node linkType: hard @@ -131,7 +131,7 @@ __metadata: browserslist: "npm:^4.22.2" lru-cache: "npm:^5.1.1" semver: "npm:^6.3.1" - checksum: ba38506d11185f48b79abf439462ece271d3eead1673dd8814519c8c903c708523428806f05f2ec5efd0c56e4e278698fac967e5a4b5ee842c32415da54bc6fa + checksum: 10c0/ba38506d11185f48b79abf439462ece271d3eead1673dd8814519c8c903c708523428806f05f2ec5efd0c56e4e278698fac967e5a4b5ee842c32415da54bc6fa languageName: node linkType: hard @@ -150,7 +150,7 @@ __metadata: semver: "npm:^6.3.1" peerDependencies: "@babel/core": ^7.0.0 - checksum: 2ae5759fe8845fda99b34f2ba6cd0794fc860213d14c93a87aa9180960252bce621157a79c373b7fbb423b25a55fb0e20eae0d5f8e4ad5ef22dc70e7c2af3805 + checksum: 10c0/2ae5759fe8845fda99b34f2ba6cd0794fc860213d14c93a87aa9180960252bce621157a79c373b7fbb423b25a55fb0e20eae0d5f8e4ad5ef22dc70e7c2af3805 languageName: node linkType: hard @@ -163,7 +163,7 @@ __metadata: semver: "npm:^6.3.1" peerDependencies: "@babel/core": ^7.0.0 - checksum: 8eba4c1b7b94a83e7a82df5c3e504584ff0ba6ab8710a67ecc2c434a7fb841a29c2f5c94d2de51f25446119a1df538fa90b37bd570db22ddd5e7147fe98277c6 + checksum: 10c0/8eba4c1b7b94a83e7a82df5c3e504584ff0ba6ab8710a67ecc2c434a7fb841a29c2f5c94d2de51f25446119a1df538fa90b37bd570db22ddd5e7147fe98277c6 languageName: node linkType: hard @@ -178,14 +178,14 @@ __metadata: resolve: "npm:^1.14.2" peerDependencies: "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: 2b053b96a0c604a7e0f5c7d13a8a55f4451d938f7af42bd40f62a87df15e6c87a0b1dbd893a0f0bb51077b54dc3ba00a58b166531a5940ad286ab685dd8979ec + checksum: 10c0/2b053b96a0c604a7e0f5c7d13a8a55f4451d938f7af42bd40f62a87df15e6c87a0b1dbd893a0f0bb51077b54dc3ba00a58b166531a5940ad286ab685dd8979ec languageName: node linkType: hard "@babel/helper-environment-visitor@npm:^7.22.20, @babel/helper-environment-visitor@npm:^7.22.5": version: 7.22.20 resolution: "@babel/helper-environment-visitor@npm:7.22.20" - checksum: e762c2d8f5d423af89bd7ae9abe35bd4836d2eb401af868a63bbb63220c513c783e25ef001019418560b3fdc6d9a6fb67e6c0b650bcdeb3a2ac44b5c3d2bdd94 + checksum: 10c0/e762c2d8f5d423af89bd7ae9abe35bd4836d2eb401af868a63bbb63220c513c783e25ef001019418560b3fdc6d9a6fb67e6c0b650bcdeb3a2ac44b5c3d2bdd94 languageName: node linkType: hard @@ -195,7 +195,7 @@ __metadata: dependencies: "@babel/template": "npm:^7.22.15" "@babel/types": "npm:^7.23.0" - checksum: d771dd1f3222b120518176733c52b7cadac1c256ff49b1889dbbe5e3fed81db855b8cc4e40d949c9d3eae0e795e8229c1c8c24c0e83f27cfa6ee3766696c6428 + checksum: 10c0/d771dd1f3222b120518176733c52b7cadac1c256ff49b1889dbbe5e3fed81db855b8cc4e40d949c9d3eae0e795e8229c1c8c24c0e83f27cfa6ee3766696c6428 languageName: node linkType: hard @@ -204,7 +204,7 @@ __metadata: resolution: "@babel/helper-hoist-variables@npm:7.22.5" dependencies: "@babel/types": "npm:^7.22.5" - checksum: 60a3077f756a1cd9f14eb89f0037f487d81ede2b7cfe652ea6869cd4ec4c782b0fb1de01b8494b9a2d2050e3d154d7d5ad3be24806790acfb8cbe2073bf1e208 + checksum: 10c0/60a3077f756a1cd9f14eb89f0037f487d81ede2b7cfe652ea6869cd4ec4c782b0fb1de01b8494b9a2d2050e3d154d7d5ad3be24806790acfb8cbe2073bf1e208 languageName: node linkType: hard @@ -213,7 +213,7 @@ __metadata: resolution: "@babel/helper-member-expression-to-functions@npm:7.23.0" dependencies: "@babel/types": "npm:^7.23.0" - checksum: b810daddf093ffd0802f1429052349ed9ea08ef7d0c56da34ffbcdecbdafac86f95bdea2fe30e0e0e629febc7dd41b56cb5eacc10d1a44336d37b755dac31fa4 + checksum: 10c0/b810daddf093ffd0802f1429052349ed9ea08ef7d0c56da34ffbcdecbdafac86f95bdea2fe30e0e0e629febc7dd41b56cb5eacc10d1a44336d37b755dac31fa4 languageName: node linkType: hard @@ -222,7 +222,7 @@ __metadata: resolution: "@babel/helper-module-imports@npm:7.22.15" dependencies: "@babel/types": "npm:^7.22.15" - checksum: 4e0d7fc36d02c1b8c8b3006dfbfeedf7a367d3334a04934255de5128115ea0bafdeb3e5736a2559917f0653e4e437400d54542da0468e08d3cbc86d3bbfa8f30 + checksum: 10c0/4e0d7fc36d02c1b8c8b3006dfbfeedf7a367d3334a04934255de5128115ea0bafdeb3e5736a2559917f0653e4e437400d54542da0468e08d3cbc86d3bbfa8f30 languageName: node linkType: hard @@ -237,7 +237,7 @@ __metadata: "@babel/helper-validator-identifier": "npm:^7.22.20" peerDependencies: "@babel/core": ^7.0.0 - checksum: 211e1399d0c4993671e8e5c2b25383f08bee40004ace5404ed4065f0e9258cc85d99c1b82fd456c030ce5cfd4d8f310355b54ef35de9924eabfc3dff1331d946 + checksum: 10c0/211e1399d0c4993671e8e5c2b25383f08bee40004ace5404ed4065f0e9258cc85d99c1b82fd456c030ce5cfd4d8f310355b54ef35de9924eabfc3dff1331d946 languageName: node linkType: hard @@ -246,14 +246,14 @@ __metadata: resolution: "@babel/helper-optimise-call-expression@npm:7.22.5" dependencies: "@babel/types": "npm:^7.22.5" - checksum: 31b41a764fc3c585196cf5b776b70cf4705c132e4ce9723f39871f215f2ddbfb2e28a62f9917610f67c8216c1080482b9b05f65dd195dae2a52cef461f2ac7b8 + checksum: 10c0/31b41a764fc3c585196cf5b776b70cf4705c132e4ce9723f39871f215f2ddbfb2e28a62f9917610f67c8216c1080482b9b05f65dd195dae2a52cef461f2ac7b8 languageName: node linkType: hard -"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": - version: 7.22.5 - resolution: "@babel/helper-plugin-utils@npm:7.22.5" - checksum: d2c4bfe2fa91058bcdee4f4e57a3f4933aed7af843acfd169cd6179fab8d13c1d636474ecabb2af107dc77462c7e893199aa26632bac1c6d7e025a17cbb9d20d +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.24.0, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3": + version: 7.24.0 + resolution: "@babel/helper-plugin-utils@npm:7.24.0" + checksum: 10c0/90f41bd1b4dfe7226b1d33a4bb745844c5c63e400f9e4e8bf9103a7ceddd7d425d65333b564d9daba3cebd105985764d51b4bd4c95822b97c2e3ac1201a8a5da languageName: node linkType: hard @@ -266,7 +266,7 @@ __metadata: "@babel/helper-wrap-function": "npm:^7.22.20" peerDependencies: "@babel/core": ^7.0.0 - checksum: aa93aa74250b636d477e8d863fbe59d4071f8c2654841b7ac608909e480c1cf3ff7d7af5a4038568829ad09d810bb681668cbe497d9c89ba5c352793dc9edf1e + checksum: 10c0/aa93aa74250b636d477e8d863fbe59d4071f8c2654841b7ac608909e480c1cf3ff7d7af5a4038568829ad09d810bb681668cbe497d9c89ba5c352793dc9edf1e languageName: node linkType: hard @@ -279,7 +279,7 @@ __metadata: "@babel/helper-optimise-call-expression": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0 - checksum: 6b0858811ad46873817c90c805015d63300e003c5a85c147a17d9845fa2558a02047c3cc1f07767af59014b2dd0fa75b503e5bc36e917f360e9b67bb6f1e79f4 + checksum: 10c0/6b0858811ad46873817c90c805015d63300e003c5a85c147a17d9845fa2558a02047c3cc1f07767af59014b2dd0fa75b503e5bc36e917f360e9b67bb6f1e79f4 languageName: node linkType: hard @@ -288,7 +288,7 @@ __metadata: resolution: "@babel/helper-simple-access@npm:7.22.5" dependencies: "@babel/types": "npm:^7.22.5" - checksum: f0cf81a30ba3d09a625fd50e5a9069e575c5b6719234e04ee74247057f8104beca89ed03e9217b6e9b0493434cedc18c5ecca4cea6244990836f1f893e140369 + checksum: 10c0/f0cf81a30ba3d09a625fd50e5a9069e575c5b6719234e04ee74247057f8104beca89ed03e9217b6e9b0493434cedc18c5ecca4cea6244990836f1f893e140369 languageName: node linkType: hard @@ -297,7 +297,7 @@ __metadata: resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.22.5" dependencies: "@babel/types": "npm:^7.22.5" - checksum: ab7fa2aa709ab49bb8cd86515a1e715a3108c4bb9a616965ba76b43dc346dee66d1004ccf4d222b596b6224e43e04cbc5c3a34459501b388451f8c589fbc3691 + checksum: 10c0/ab7fa2aa709ab49bb8cd86515a1e715a3108c4bb9a616965ba76b43dc346dee66d1004ccf4d222b596b6224e43e04cbc5c3a34459501b388451f8c589fbc3691 languageName: node linkType: hard @@ -306,28 +306,28 @@ __metadata: resolution: "@babel/helper-split-export-declaration@npm:7.22.6" dependencies: "@babel/types": "npm:^7.22.5" - checksum: d83e4b623eaa9622c267d3c83583b72f3aac567dc393dda18e559d79187961cb29ae9c57b2664137fc3d19508370b12ec6a81d28af73a50e0846819cb21c6e44 + checksum: 10c0/d83e4b623eaa9622c267d3c83583b72f3aac567dc393dda18e559d79187961cb29ae9c57b2664137fc3d19508370b12ec6a81d28af73a50e0846819cb21c6e44 languageName: node linkType: hard "@babel/helper-string-parser@npm:^7.23.4": version: 7.23.4 resolution: "@babel/helper-string-parser@npm:7.23.4" - checksum: f348d5637ad70b6b54b026d6544bd9040f78d24e7ec245a0fc42293968181f6ae9879c22d89744730d246ce8ec53588f716f102addd4df8bbc79b73ea10004ac + checksum: 10c0/f348d5637ad70b6b54b026d6544bd9040f78d24e7ec245a0fc42293968181f6ae9879c22d89744730d246ce8ec53588f716f102addd4df8bbc79b73ea10004ac languageName: node linkType: hard "@babel/helper-validator-identifier@npm:^7.22.20": version: 7.22.20 resolution: "@babel/helper-validator-identifier@npm:7.22.20" - checksum: dcad63db345fb110e032de46c3688384b0008a42a4845180ce7cd62b1a9c0507a1bed727c4d1060ed1a03ae57b4d918570259f81724aaac1a5b776056f37504e + checksum: 10c0/dcad63db345fb110e032de46c3688384b0008a42a4845180ce7cd62b1a9c0507a1bed727c4d1060ed1a03ae57b4d918570259f81724aaac1a5b776056f37504e languageName: node linkType: hard "@babel/helper-validator-option@npm:^7.22.15, @babel/helper-validator-option@npm:^7.23.5": version: 7.23.5 resolution: "@babel/helper-validator-option@npm:7.23.5" - checksum: af45d5c0defb292ba6fd38979e8f13d7da63f9623d8ab9ededc394f67eb45857d2601278d151ae9affb6e03d5d608485806cd45af08b4468a0515cf506510e94 + checksum: 10c0/af45d5c0defb292ba6fd38979e8f13d7da63f9623d8ab9ededc394f67eb45857d2601278d151ae9affb6e03d5d608485806cd45af08b4468a0515cf506510e94 languageName: node linkType: hard @@ -338,18 +338,18 @@ __metadata: "@babel/helper-function-name": "npm:^7.22.5" "@babel/template": "npm:^7.22.15" "@babel/types": "npm:^7.22.19" - checksum: 97b5f42ff4d305318ff2f99a5f59d3e97feff478333b2d893c4f85456d3c66372070f71d7bf9141f598c8cf2741c49a15918193633c427a88d170d98eb8c46eb + checksum: 10c0/97b5f42ff4d305318ff2f99a5f59d3e97feff478333b2d893c4f85456d3c66372070f71d7bf9141f598c8cf2741c49a15918193633c427a88d170d98eb8c46eb languageName: node linkType: hard -"@babel/helpers@npm:^7.23.9": - version: 7.23.9 - resolution: "@babel/helpers@npm:7.23.9" +"@babel/helpers@npm:^7.24.0": + version: 7.24.0 + resolution: "@babel/helpers@npm:7.24.0" dependencies: - "@babel/template": "npm:^7.23.9" - "@babel/traverse": "npm:^7.23.9" - "@babel/types": "npm:^7.23.9" - checksum: f69fd0aca96a6fb8bd6dd044cd8a5c0f1851072d4ce23355345b9493c4032e76d1217f86b70df795e127553cf7f3fcd1587ede9d1b03b95e8b62681ca2165b87 + "@babel/template": "npm:^7.24.0" + "@babel/traverse": "npm:^7.24.0" + "@babel/types": "npm:^7.24.0" + checksum: 10c0/dd27c9f11c1c5244ef312fae37636f2fcc69c541c46508017b846c4cf680af059f1922ce84e3f778f123a70d027ded75c96070ee8e906f3bc52dc26dc43df608 languageName: node linkType: hard @@ -360,16 +360,16 @@ __metadata: "@babel/helper-validator-identifier": "npm:^7.22.20" chalk: "npm:^2.4.2" js-tokens: "npm:^4.0.0" - checksum: fbff9fcb2f5539289c3c097d130e852afd10d89a3a08ac0b5ebebbc055cc84a4bcc3dcfed463d488cde12dd0902ef1858279e31d7349b2e8cee43913744bda33 + checksum: 10c0/fbff9fcb2f5539289c3c097d130e852afd10d89a3a08ac0b5ebebbc055cc84a4bcc3dcfed463d488cde12dd0902ef1858279e31d7349b2e8cee43913744bda33 languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.9": - version: 7.23.9 - resolution: "@babel/parser@npm:7.23.9" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.24.0": + version: 7.24.0 + resolution: "@babel/parser@npm:7.24.0" bin: parser: ./bin/babel-parser.js - checksum: 7df97386431366d4810538db4b9ec538f4377096f720c0591c7587a16f6810e62747e9fbbfa1ff99257fd4330035e4fb1b5b77c7bd3b97ce0d2e3780a6618975 + checksum: 10c0/77593d0b9de9906823c4d653bb6cda1c7593837598516330f655f70cba6224a37def7dbe5b4dad0038482d407d8d209eb8be5f48ca9a13357d769f829c5adb8e languageName: node linkType: hard @@ -380,7 +380,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0 - checksum: 356a4e9fc52d7ca761ce6857fc58e2295c2785d22565760e6a5680be86c6e5883ab86e0ba25ef572882c01713d3a31ae6cfa3e3222cdb95e6026671dab1fa415 + checksum: 10c0/356a4e9fc52d7ca761ce6857fc58e2295c2785d22565760e6a5680be86c6e5883ab86e0ba25ef572882c01713d3a31ae6cfa3e3222cdb95e6026671dab1fa415 languageName: node linkType: hard @@ -393,7 +393,7 @@ __metadata: "@babel/plugin-transform-optional-chaining": "npm:^7.23.3" peerDependencies: "@babel/core": ^7.13.0 - checksum: a8785f099d55ca71ed89815e0f3a636a80c16031f80934cfec17c928d096ee0798964733320c8b145ef36ba429c5e19d5107b06231e0ab6777cfb0f01adfdc23 + checksum: 10c0/a8785f099d55ca71ed89815e0f3a636a80c16031f80934cfec17c928d096ee0798964733320c8b145ef36ba429c5e19d5107b06231e0ab6777cfb0f01adfdc23 languageName: node linkType: hard @@ -405,7 +405,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0 - checksum: 355746e21ad7f43e4f4daef54cfe2ef461ecd19446b2afedd53c39df1bf9aa2eeeeaabee2279b1321de89a97c9360e4f76e9ba950fee50ff1676c25f6929d625 + checksum: 10c0/355746e21ad7f43e4f4daef54cfe2ef461ecd19446b2afedd53c39df1bf9aa2eeeeaabee2279b1321de89a97c9360e4f76e9ba950fee50ff1676c25f6929d625 languageName: node linkType: hard @@ -414,7 +414,7 @@ __metadata: resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: e605e0070da087f6c35579499e65801179a521b6842c15181a1e305c04fded2393f11c1efd09b087be7f8b083d1b75e8f3efcbc1292b4f60d3369e14812cff63 + checksum: 10c0/e605e0070da087f6c35579499e65801179a521b6842c15181a1e305c04fded2393f11c1efd09b087be7f8b083d1b75e8f3efcbc1292b4f60d3369e14812cff63 languageName: node linkType: hard @@ -425,7 +425,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.8.0" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: d13efb282838481348c71073b6be6245b35d4f2f964a8f71e4174f235009f929ef7613df25f8d2338e2d3e44bc4265a9f8638c6aaa136d7a61fe95985f9725c8 + checksum: 10c0/d13efb282838481348c71073b6be6245b35d4f2f964a8f71e4174f235009f929ef7613df25f8d2338e2d3e44bc4265a9f8638c6aaa136d7a61fe95985f9725c8 languageName: node linkType: hard @@ -436,7 +436,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.8.0" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 686891b81af2bc74c39013655da368a480f17dd237bf9fbc32048e5865cb706d5a8f65438030da535b332b1d6b22feba336da8fa931f663b6b34e13147d12dde + checksum: 10c0/686891b81af2bc74c39013655da368a480f17dd237bf9fbc32048e5865cb706d5a8f65438030da535b332b1d6b22feba336da8fa931f663b6b34e13147d12dde languageName: node linkType: hard @@ -447,7 +447,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.12.13" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 95168fa186416195280b1264fb18afcdcdcea780b3515537b766cb90de6ce042d42dd6a204a39002f794ae5845b02afb0fd4861a3308a861204a55e68310a120 + checksum: 10c0/95168fa186416195280b1264fb18afcdcdcea780b3515537b766cb90de6ce042d42dd6a204a39002f794ae5845b02afb0fd4861a3308a861204a55e68310a120 languageName: node linkType: hard @@ -458,7 +458,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.14.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4464bf9115f4a2d02ce1454411baf9cfb665af1da53709c5c56953e5e2913745b0fcce82982a00463d6facbdd93445c691024e310b91431a1e2f024b158f6371 + checksum: 10c0/4464bf9115f4a2d02ce1454411baf9cfb665af1da53709c5c56953e5e2913745b0fcce82982a00463d6facbdd93445c691024e310b91431a1e2f024b158f6371 languageName: node linkType: hard @@ -469,7 +469,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.8.0" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 9c50927bf71adf63f60c75370e2335879402648f468d0172bc912e303c6a3876927d8eb35807331b57f415392732ed05ab9b42c68ac30a936813ab549e0246c5 + checksum: 10c0/9c50927bf71adf63f60c75370e2335879402648f468d0172bc912e303c6a3876927d8eb35807331b57f415392732ed05ab9b42c68ac30a936813ab549e0246c5 languageName: node linkType: hard @@ -480,7 +480,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.8.3" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 5100d658ba563829700cd8d001ddc09f4c0187b1a13de300d729c5b3e87503f75a6d6c99c1794182f7f1a9f546ee009df4f15a0ce36376e206ed0012fa7cdc24 + checksum: 10c0/5100d658ba563829700cd8d001ddc09f4c0187b1a13de300d729c5b3e87503f75a6d6c99c1794182f7f1a9f546ee009df4f15a0ce36376e206ed0012fa7cdc24 languageName: node linkType: hard @@ -491,7 +491,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 7db8b59f75667bada2293353bb66b9d5651a673b22c72f47da9f5c46e719142481601b745f9822212fd7522f92e26e8576af37116f85dae1b5e5967f80d0faab + checksum: 10c0/7db8b59f75667bada2293353bb66b9d5651a673b22c72f47da9f5c46e719142481601b745f9822212fd7522f92e26e8576af37116f85dae1b5e5967f80d0faab languageName: node linkType: hard @@ -502,7 +502,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 99b40d33d79205a8e04bb5dea56fd72906ffc317513b20ca7319e7683e18fce8ea2eea5e9171056f92b979dc0ab1e31b2cb5171177a5ba61e05b54fe7850a606 + checksum: 10c0/99b40d33d79205a8e04bb5dea56fd72906ffc317513b20ca7319e7683e18fce8ea2eea5e9171056f92b979dc0ab1e31b2cb5171177a5ba61e05b54fe7850a606 languageName: node linkType: hard @@ -513,7 +513,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.10.4" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 0b08b5e4c3128523d8e346f8cfc86824f0da2697b1be12d71af50a31aff7a56ceb873ed28779121051475010c28d6146a6bfea8518b150b71eeb4e46190172ee + checksum: 10c0/0b08b5e4c3128523d8e346f8cfc86824f0da2697b1be12d71af50a31aff7a56ceb873ed28779121051475010c28d6146a6bfea8518b150b71eeb4e46190172ee languageName: node linkType: hard @@ -524,7 +524,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.8.0" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: e98f31b2ec406c57757d115aac81d0336e8434101c224edd9a5c93cefa53faf63eacc69f3138960c8b25401315af03df37f68d316c151c4b933136716ed6906e + checksum: 10c0/e98f31b2ec406c57757d115aac81d0336e8434101c224edd9a5c93cefa53faf63eacc69f3138960c8b25401315af03df37f68d316c151c4b933136716ed6906e languageName: node linkType: hard @@ -535,7 +535,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 563bb7599b868773f1c7c1d441ecc9bc53aeb7832775da36752c926fc402a1fa5421505b39e724f71eb217c13e4b93117e081cac39723b0e11dac4c897f33c3e + checksum: 10c0/563bb7599b868773f1c7c1d441ecc9bc53aeb7832775da36752c926fc402a1fa5421505b39e724f71eb217c13e4b93117e081cac39723b0e11dac4c897f33c3e languageName: node linkType: hard @@ -546,7 +546,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.10.4" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 2594cfbe29411ad5bc2ad4058de7b2f6a8c5b86eda525a993959438615479e59c012c14aec979e538d60a584a1a799b60d1b8942c3b18468cb9d99b8fd34cd0b + checksum: 10c0/2594cfbe29411ad5bc2ad4058de7b2f6a8c5b86eda525a993959438615479e59c012c14aec979e538d60a584a1a799b60d1b8942c3b18468cb9d99b8fd34cd0b languageName: node linkType: hard @@ -557,7 +557,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.8.0" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 2024fbb1162899094cfc81152449b12bd0cc7053c6d4bda8ac2852545c87d0a851b1b72ed9560673cbf3ef6248257262c3c04aabf73117215c1b9cc7dd2542ce + checksum: 10c0/2024fbb1162899094cfc81152449b12bd0cc7053c6d4bda8ac2852545c87d0a851b1b72ed9560673cbf3ef6248257262c3c04aabf73117215c1b9cc7dd2542ce languageName: node linkType: hard @@ -568,7 +568,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.10.4" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: c55a82b3113480942c6aa2fcbe976ff9caa74b7b1109ff4369641dfbc88d1da348aceb3c31b6ed311c84d1e7c479440b961906c735d0ab494f688bf2fd5b9bb9 + checksum: 10c0/c55a82b3113480942c6aa2fcbe976ff9caa74b7b1109ff4369641dfbc88d1da348aceb3c31b6ed311c84d1e7c479440b961906c735d0ab494f688bf2fd5b9bb9 languageName: node linkType: hard @@ -579,7 +579,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.8.0" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: ee1eab52ea6437e3101a0a7018b0da698545230015fc8ab129d292980ec6dff94d265e9e90070e8ae5fed42f08f1622c14c94552c77bcac784b37f503a82ff26 + checksum: 10c0/ee1eab52ea6437e3101a0a7018b0da698545230015fc8ab129d292980ec6dff94d265e9e90070e8ae5fed42f08f1622c14c94552c77bcac784b37f503a82ff26 languageName: node linkType: hard @@ -590,7 +590,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.8.0" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 27e2493ab67a8ea6d693af1287f7e9acec206d1213ff107a928e85e173741e1d594196f99fec50e9dde404b09164f39dec5864c767212154ffe1caa6af0bc5af + checksum: 10c0/27e2493ab67a8ea6d693af1287f7e9acec206d1213ff107a928e85e173741e1d594196f99fec50e9dde404b09164f39dec5864c767212154ffe1caa6af0bc5af languageName: node linkType: hard @@ -601,7 +601,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.8.0" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 46edddf2faa6ebf94147b8e8540dfc60a5ab718e2de4d01b2c0bdf250a4d642c2bd47cbcbb739febcb2bf75514dbcefad3c52208787994b8d0f8822490f55e81 + checksum: 10c0/46edddf2faa6ebf94147b8e8540dfc60a5ab718e2de4d01b2c0bdf250a4d642c2bd47cbcbb739febcb2bf75514dbcefad3c52208787994b8d0f8822490f55e81 languageName: node linkType: hard @@ -612,7 +612,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.14.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 69822772561706c87f0a65bc92d0772cea74d6bc0911537904a676d5ff496a6d3ac4e05a166d8125fce4a16605bace141afc3611074e170a994e66e5397787f3 + checksum: 10c0/69822772561706c87f0a65bc92d0772cea74d6bc0911537904a676d5ff496a6d3ac4e05a166d8125fce4a16605bace141afc3611074e170a994e66e5397787f3 languageName: node linkType: hard @@ -623,7 +623,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.14.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 14bf6e65d5bc1231ffa9def5f0ef30b19b51c218fcecaa78cd1bdf7939dfdf23f90336080b7f5196916368e399934ce5d581492d8292b46a2fb569d8b2da106f + checksum: 10c0/14bf6e65d5bc1231ffa9def5f0ef30b19b51c218fcecaa78cd1bdf7939dfdf23f90336080b7f5196916368e399934ce5d581492d8292b46a2fb569d8b2da106f languageName: node linkType: hard @@ -634,7 +634,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4d6e9cdb9d0bfb9bd9b220fc951d937fce2ca69135ec121153572cebe81d86abc9a489208d6b69ee5f10cadcaeffa10d0425340a5029e40e14a6025021b90948 + checksum: 10c0/4d6e9cdb9d0bfb9bd9b220fc951d937fce2ca69135ec121153572cebe81d86abc9a489208d6b69ee5f10cadcaeffa10d0425340a5029e40e14a6025021b90948 languageName: node linkType: hard @@ -646,7 +646,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.18.6" peerDependencies: "@babel/core": ^7.0.0 - checksum: 9144e5b02a211a4fb9a0ce91063f94fbe1004e80bde3485a0910c9f14897cf83fabd8c21267907cff25db8e224858178df0517f14333cfcf3380ad9a4139cb50 + checksum: 10c0/9144e5b02a211a4fb9a0ce91063f94fbe1004e80bde3485a0910c9f14897cf83fabd8c21267907cff25db8e224858178df0517f14333cfcf3380ad9a4139cb50 languageName: node linkType: hard @@ -657,7 +657,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b128315c058f5728d29b0b78723659b11de88247ea4d0388f0b935cddf60a80c40b9067acf45cbbe055bd796928faef152a09d9e4a0695465aca4394d9f109ca + checksum: 10c0/b128315c058f5728d29b0b78723659b11de88247ea4d0388f0b935cddf60a80c40b9067acf45cbbe055bd796928faef152a09d9e4a0695465aca4394d9f109ca languageName: node linkType: hard @@ -671,7 +671,7 @@ __metadata: "@babel/plugin-syntax-async-generators": "npm:^7.8.4" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4ff75f9ce500e1de8c0236fa5122e6475a477d19cb9a4c2ae8651e78e717ebb2e2cecfeca69d420def779deaec78b945843b9ffd15f02ecd7de5072030b4469b + checksum: 10c0/4ff75f9ce500e1de8c0236fa5122e6475a477d19cb9a4c2ae8651e78e717ebb2e2cecfeca69d420def779deaec78b945843b9ffd15f02ecd7de5072030b4469b languageName: node linkType: hard @@ -684,7 +684,7 @@ __metadata: "@babel/helper-remap-async-to-generator": "npm:^7.22.20" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: da3ffd413eef02a8e2cfee3e0bb0d5fc0fcb795c187bc14a5a8e8874cdbdc43bbf00089c587412d7752d97efc5967c3c18ff5398e3017b9a14a06126f017e7e9 + checksum: 10c0/da3ffd413eef02a8e2cfee3e0bb0d5fc0fcb795c187bc14a5a8e8874cdbdc43bbf00089c587412d7752d97efc5967c3c18ff5398e3017b9a14a06126f017e7e9 languageName: node linkType: hard @@ -695,7 +695,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 82c12a11277528184a979163de7189ceb00129f60dd930b0d5313454310bf71205f302fb2bf0430247161c8a22aaa9fb9eec1459f9f7468206422c191978fd59 + checksum: 10c0/82c12a11277528184a979163de7189ceb00129f60dd930b0d5313454310bf71205f302fb2bf0430247161c8a22aaa9fb9eec1459f9f7468206422c191978fd59 languageName: node linkType: hard @@ -706,7 +706,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 83006804dddf980ab1bcd6d67bc381e24b58c776507c34f990468f820d0da71dba3697355ca4856532fa2eeb2a1e3e73c780f03760b5507a511cbedb0308e276 + checksum: 10c0/83006804dddf980ab1bcd6d67bc381e24b58c776507c34f990468f820d0da71dba3697355ca4856532fa2eeb2a1e3e73c780f03760b5507a511cbedb0308e276 languageName: node linkType: hard @@ -718,7 +718,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: bca30d576f539eef216494b56d610f1a64aa9375de4134bc021d9660f1fa735b1d7cc413029f22abc0b7cb737e3a57935c8ae9d8bd1730921ccb1deebce51bfd + checksum: 10c0/bca30d576f539eef216494b56d610f1a64aa9375de4134bc021d9660f1fa735b1d7cc413029f22abc0b7cb737e3a57935c8ae9d8bd1730921ccb1deebce51bfd languageName: node linkType: hard @@ -731,7 +731,7 @@ __metadata: "@babel/plugin-syntax-class-static-block": "npm:^7.14.5" peerDependencies: "@babel/core": ^7.12.0 - checksum: fdca96640ef29d8641a7f8de106f65f18871b38cc01c0f7b696d2b49c76b77816b30a812c08e759d06dd10b4d9b3af6b5e4ac22a2017a88c4077972224b77ab0 + checksum: 10c0/fdca96640ef29d8641a7f8de106f65f18871b38cc01c0f7b696d2b49c76b77816b30a812c08e759d06dd10b4d9b3af6b5e4ac22a2017a88c4077972224b77ab0 languageName: node linkType: hard @@ -749,7 +749,7 @@ __metadata: globals: "npm:^11.1.0" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 227ac5166501e04d9e7fbd5eda6869b084ffa4af6830ac12544ac6ea14953ca00eb1762b0df9349c0f6c8d2a799385910f558066cd0fb85b9ca437b1131a6043 + checksum: 10c0/227ac5166501e04d9e7fbd5eda6869b084ffa4af6830ac12544ac6ea14953ca00eb1762b0df9349c0f6c8d2a799385910f558066cd0fb85b9ca437b1131a6043 languageName: node linkType: hard @@ -761,7 +761,7 @@ __metadata: "@babel/template": "npm:^7.22.15" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 3ca8a006f8e652b58c21ecb84df1d01a73f0a96b1d216fd09a890b235dd90cb966b152b603b88f7e850ae238644b1636ce5c30b7c029c0934b43383932372e4a + checksum: 10c0/3ca8a006f8e652b58c21ecb84df1d01a73f0a96b1d216fd09a890b235dd90cb966b152b603b88f7e850ae238644b1636ce5c30b7c029c0934b43383932372e4a languageName: node linkType: hard @@ -772,7 +772,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 717e9a62c1b0c93c507f87b4eaf839ec08d3c3147f14d74ae240d8749488d9762a8b3950132be620a069bde70f4b3e4ee9867b226c973fcc40f3cdec975cde71 + checksum: 10c0/717e9a62c1b0c93c507f87b4eaf839ec08d3c3147f14d74ae240d8749488d9762a8b3950132be620a069bde70f4b3e4ee9867b226c973fcc40f3cdec975cde71 languageName: node linkType: hard @@ -784,7 +784,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 6c89286d1277c2a63802a453c797c87c1203f89e4c25115f7b6620f5fce15d8c8d37af613222f6aa497aa98773577a6ec8752e79e13d59bc5429270677ea010b + checksum: 10c0/6c89286d1277c2a63802a453c797c87c1203f89e4c25115f7b6620f5fce15d8c8d37af613222f6aa497aa98773577a6ec8752e79e13d59bc5429270677ea010b languageName: node linkType: hard @@ -795,7 +795,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 7e2640e4e6adccd5e7b0615b6e9239d7c98363e21c52086ea13759dfa11cf7159b255fc5331c2de435639ea8eb6acefae115ae0d797a3d19d12587652f8052a5 + checksum: 10c0/7e2640e4e6adccd5e7b0615b6e9239d7c98363e21c52086ea13759dfa11cf7159b255fc5331c2de435639ea8eb6acefae115ae0d797a3d19d12587652f8052a5 languageName: node linkType: hard @@ -807,7 +807,7 @@ __metadata: "@babel/plugin-syntax-dynamic-import": "npm:^7.8.3" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 19ae4a4a2ca86d35224734c41c48b2aa6a13139f3cfa1cbd18c0e65e461de8b65687dec7e52b7a72bb49db04465394c776aa1b13a2af5dc975b2a0cde3dcab67 + checksum: 10c0/19ae4a4a2ca86d35224734c41c48b2aa6a13139f3cfa1cbd18c0e65e461de8b65687dec7e52b7a72bb49db04465394c776aa1b13a2af5dc975b2a0cde3dcab67 languageName: node linkType: hard @@ -819,7 +819,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 5c33ee6a1bdc52fcdf0807f445b27e3fbdce33008531885e65a699762327565fffbcfde8395be7f21bcb22d582e425eddae45650c986462bb84ba68f43687516 + checksum: 10c0/5c33ee6a1bdc52fcdf0807f445b27e3fbdce33008531885e65a699762327565fffbcfde8395be7f21bcb22d582e425eddae45650c986462bb84ba68f43687516 languageName: node linkType: hard @@ -831,7 +831,7 @@ __metadata: "@babel/plugin-syntax-export-namespace-from": "npm:^7.8.3" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 38bf04f851e36240bbe83ace4169da626524f4107bfb91f05b4ad93a5fb6a36d5b3d30b8883c1ba575ccfc1bac7938e90ca2e3cb227f7b3f4a9424beec6fd4a7 + checksum: 10c0/38bf04f851e36240bbe83ace4169da626524f4107bfb91f05b4ad93a5fb6a36d5b3d30b8883c1ba575ccfc1bac7938e90ca2e3cb227f7b3f4a9424beec6fd4a7 languageName: node linkType: hard @@ -843,7 +843,7 @@ __metadata: "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 46681b6ab10f3ca2d961f50d4096b62ab5d551e1adad84e64be1ee23e72eb2f26a1e30e617e853c74f1349fffe4af68d33921a128543b6f24b6d46c09a3e2aec + checksum: 10c0/46681b6ab10f3ca2d961f50d4096b62ab5d551e1adad84e64be1ee23e72eb2f26a1e30e617e853c74f1349fffe4af68d33921a128543b6f24b6d46c09a3e2aec languageName: node linkType: hard @@ -856,7 +856,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 89cb9747802118048115cf92a8f310752f02030549b26f008904990cbdc86c3d4a68e07ca3b5c46de8a46ed4df2cb576ac222c74c56de67253d2a3ddc2956083 + checksum: 10c0/89cb9747802118048115cf92a8f310752f02030549b26f008904990cbdc86c3d4a68e07ca3b5c46de8a46ed4df2cb576ac222c74c56de67253d2a3ddc2956083 languageName: node linkType: hard @@ -868,7 +868,7 @@ __metadata: "@babel/plugin-syntax-json-strings": "npm:^7.8.3" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 39e82223992a9ad857722ae051291935403852ad24b0dd64c645ca1c10517b6bf9822377d88643fed8b3e61a4e3f7e5ae41cf90eb07c40a786505d47d5970e54 + checksum: 10c0/39e82223992a9ad857722ae051291935403852ad24b0dd64c645ca1c10517b6bf9822377d88643fed8b3e61a4e3f7e5ae41cf90eb07c40a786505d47d5970e54 languageName: node linkType: hard @@ -879,7 +879,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 8292106b106201464c2bfdd5c014fe6a9ca1c0256eb0a8031deb20081e21906fe68b156186f77d993c23eeab6d8d6f5f66e8895eec7ed97ce6de5dbcafbcd7f4 + checksum: 10c0/8292106b106201464c2bfdd5c014fe6a9ca1c0256eb0a8031deb20081e21906fe68b156186f77d993c23eeab6d8d6f5f66e8895eec7ed97ce6de5dbcafbcd7f4 languageName: node linkType: hard @@ -891,7 +891,7 @@ __metadata: "@babel/plugin-syntax-logical-assignment-operators": "npm:^7.10.4" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 87b034dd13143904e405887e6125d76c27902563486efc66b7d9a9d8f9406b76c6ac42d7b37224014af5783d7edb465db0cdecd659fa3227baad0b3a6a35deff + checksum: 10c0/87b034dd13143904e405887e6125d76c27902563486efc66b7d9a9d8f9406b76c6ac42d7b37224014af5783d7edb465db0cdecd659fa3227baad0b3a6a35deff languageName: node linkType: hard @@ -902,7 +902,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 687f24f3ec60b627fef6e87b9e2770df77f76727b9d5f54fa4c84a495bb24eb4a20f1a6240fa22d339d45aac5eaeb1b39882e941bfd00cf498f9c53478d1ec88 + checksum: 10c0/687f24f3ec60b627fef6e87b9e2770df77f76727b9d5f54fa4c84a495bb24eb4a20f1a6240fa22d339d45aac5eaeb1b39882e941bfd00cf498f9c53478d1ec88 languageName: node linkType: hard @@ -914,7 +914,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 9f7ec036f7cfc588833a4dd117a44813b64aa4c1fd5bfb6c78f60198c1d290938213090c93a46f97a68a2490fad909e21a82b2472e95da74d108c125df21c8d5 + checksum: 10c0/9f7ec036f7cfc588833a4dd117a44813b64aa4c1fd5bfb6c78f60198c1d290938213090c93a46f97a68a2490fad909e21a82b2472e95da74d108c125df21c8d5 languageName: node linkType: hard @@ -927,7 +927,7 @@ __metadata: "@babel/helper-simple-access": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 5c8840c5c9ecba39367ae17c973ed13dbc43234147b77ae780eec65010e2a9993c5d717721b23e8179f7cf49decdd325c509b241d69cfbf92aa647a1d8d5a37d + checksum: 10c0/5c8840c5c9ecba39367ae17c973ed13dbc43234147b77ae780eec65010e2a9993c5d717721b23e8179f7cf49decdd325c509b241d69cfbf92aa647a1d8d5a37d languageName: node linkType: hard @@ -941,7 +941,7 @@ __metadata: "@babel/helper-validator-identifier": "npm:^7.22.20" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 1926631fe9d87c0c53427a3420ad49da62d53320d0016b6afab64e5417a672aa5bdff3ea1d24746ffa1e43319c28a80f5d8cef0ad214760d399c293b5850500f + checksum: 10c0/1926631fe9d87c0c53427a3420ad49da62d53320d0016b6afab64e5417a672aa5bdff3ea1d24746ffa1e43319c28a80f5d8cef0ad214760d399c293b5850500f languageName: node linkType: hard @@ -953,7 +953,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: f0d2f890a15b4367d0d8f160bed7062bdb145c728c24e9bfbc1211c7925aae5df72a88df3832c92dd2011927edfed4da1b1249e4c78402e893509316c0c2caa6 + checksum: 10c0/f0d2f890a15b4367d0d8f160bed7062bdb145c728c24e9bfbc1211c7925aae5df72a88df3832c92dd2011927edfed4da1b1249e4c78402e893509316c0c2caa6 languageName: node linkType: hard @@ -965,7 +965,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0 - checksum: b0b072bef303670b5a98307bc37d1ac326cb7ad40ea162b89a03c2ffc465451be7ef05be95cb81ed28bfeb29670dc98fe911f793a67bceab18b4cb4c81ef48f3 + checksum: 10c0/b0b072bef303670b5a98307bc37d1ac326cb7ad40ea162b89a03c2ffc465451be7ef05be95cb81ed28bfeb29670dc98fe911f793a67bceab18b4cb4c81ef48f3 languageName: node linkType: hard @@ -976,7 +976,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: f489b9e1f17b42b2ba6312d58351e757cb23a8409f64f2bb6af4c09d015359588a5d68943b20756f141d0931a94431c782f3ed1225228a930a04b07be0c31b04 + checksum: 10c0/f489b9e1f17b42b2ba6312d58351e757cb23a8409f64f2bb6af4c09d015359588a5d68943b20756f141d0931a94431c782f3ed1225228a930a04b07be0c31b04 languageName: node linkType: hard @@ -988,7 +988,7 @@ __metadata: "@babel/plugin-syntax-nullish-coalescing-operator": "npm:^7.8.3" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: bce490d22da5c87ff27fffaff6ad5a4d4979b8d7b72e30857f191e9c1e1824ba73bb8d7081166289369e388f94f0ce5383a593b1fc84d09464a062c75f824b0b + checksum: 10c0/bce490d22da5c87ff27fffaff6ad5a4d4979b8d7b72e30857f191e9c1e1824ba73bb8d7081166289369e388f94f0ce5383a593b1fc84d09464a062c75f824b0b languageName: node linkType: hard @@ -1000,22 +1000,22 @@ __metadata: "@babel/plugin-syntax-numeric-separator": "npm:^7.10.4" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: e34902da4f5588dc4812c92cb1f6a5e3e3647baf7b4623e30942f551bf1297621abec4e322ebfa50b320c987c0f34d9eb4355b3d289961d9035e2126e3119c12 + checksum: 10c0/e34902da4f5588dc4812c92cb1f6a5e3e3647baf7b4623e30942f551bf1297621abec4e322ebfa50b320c987c0f34d9eb4355b3d289961d9035e2126e3119c12 languageName: node linkType: hard -"@babel/plugin-transform-object-rest-spread@npm:^7.23.4": - version: 7.23.4 - resolution: "@babel/plugin-transform-object-rest-spread@npm:7.23.4" +"@babel/plugin-transform-object-rest-spread@npm:^7.24.0": + version: 7.24.0 + resolution: "@babel/plugin-transform-object-rest-spread@npm:7.24.0" dependencies: - "@babel/compat-data": "npm:^7.23.3" - "@babel/helper-compilation-targets": "npm:^7.22.15" - "@babel/helper-plugin-utils": "npm:^7.22.5" + "@babel/compat-data": "npm:^7.23.5" + "@babel/helper-compilation-targets": "npm:^7.23.6" + "@babel/helper-plugin-utils": "npm:^7.24.0" "@babel/plugin-syntax-object-rest-spread": "npm:^7.8.3" "@babel/plugin-transform-parameters": "npm:^7.23.3" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b56017992ffe7fcd1dd9a9da67c39995a141820316266bcf7d77dc912980d228ccbd3f36191d234f5cc389b09157b5d2a955e33e8fb368319534affd1c72b262 + checksum: 10c0/02fe8b99ee6329e68b97b1b1b5410e50c6c20470e73dcd1d287c6ddb5623c654dce82327b2a3f6710ee3b512fe4950e43ab81d0bbc33d771f0cad3bc3cef87c6 languageName: node linkType: hard @@ -1027,7 +1027,7 @@ __metadata: "@babel/helper-replace-supers": "npm:^7.22.20" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: a6856fd8c0afbe5b3318c344d4d201d009f4051e2f6ff6237ff2660593e93c5997a58772b13d639077c3e29ced3440247b29c496cd77b13af1e7559a70009775 + checksum: 10c0/a6856fd8c0afbe5b3318c344d4d201d009f4051e2f6ff6237ff2660593e93c5997a58772b13d639077c3e29ced3440247b29c496cd77b13af1e7559a70009775 languageName: node linkType: hard @@ -1039,7 +1039,7 @@ __metadata: "@babel/plugin-syntax-optional-catch-binding": "npm:^7.8.3" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4ef61812af0e4928485e28301226ce61139a8b8cea9e9a919215ebec4891b9fea2eb7a83dc3090e2679b7d7b2c8653da601fbc297d2addc54a908b315173991e + checksum: 10c0/4ef61812af0e4928485e28301226ce61139a8b8cea9e9a919215ebec4891b9fea2eb7a83dc3090e2679b7d7b2c8653da601fbc297d2addc54a908b315173991e languageName: node linkType: hard @@ -1052,7 +1052,7 @@ __metadata: "@babel/plugin-syntax-optional-chaining": "npm:^7.8.3" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 305b773c29ad61255b0e83ec1e92b2f7af6aa58be4cba1e3852bddaa14f7d2afd7b4438f41c28b179d6faac7eb8d4fb5530a17920294f25d459b8f84406bfbfb + checksum: 10c0/305b773c29ad61255b0e83ec1e92b2f7af6aa58be4cba1e3852bddaa14f7d2afd7b4438f41c28b179d6faac7eb8d4fb5530a17920294f25d459b8f84406bfbfb languageName: node linkType: hard @@ -1063,7 +1063,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: a8d4cbe0f6ba68d158f5b4215c63004fc37a1fdc539036eb388a9792017c8496ea970a1932ccb929308f61e53dc56676ed01d8df6f42bc0a85c7fd5ba82482b7 + checksum: 10c0/a8d4cbe0f6ba68d158f5b4215c63004fc37a1fdc539036eb388a9792017c8496ea970a1932ccb929308f61e53dc56676ed01d8df6f42bc0a85c7fd5ba82482b7 languageName: node linkType: hard @@ -1075,7 +1075,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 745a655edcd111b7f91882b921671ca0613079760d8c9befe336b8a9bc4ce6bb49c0c08941831c950afb1b225b4b2d3eaac8842e732db095b04db38efd8c34f4 + checksum: 10c0/745a655edcd111b7f91882b921671ca0613079760d8c9befe336b8a9bc4ce6bb49c0c08941831c950afb1b225b4b2d3eaac8842e732db095b04db38efd8c34f4 languageName: node linkType: hard @@ -1089,7 +1089,7 @@ __metadata: "@babel/plugin-syntax-private-property-in-object": "npm:^7.14.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 8d31b28f24204b4d13514cd3a8f3033abf575b1a6039759ddd6e1d82dd33ba7281f9bc85c9f38072a665d69bfa26dc40737eefaf9d397b024654a483d2357bf5 + checksum: 10c0/8d31b28f24204b4d13514cd3a8f3033abf575b1a6039759ddd6e1d82dd33ba7281f9bc85c9f38072a665d69bfa26dc40737eefaf9d397b024654a483d2357bf5 languageName: node linkType: hard @@ -1100,7 +1100,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: b2549f23f90cf276c2e3058c2225c3711c2ad1c417e336d3391199445a9776dd791b83be47b2b9a7ae374b40652d74b822387e31fa5267a37bf49c122e1a9747 + checksum: 10c0/b2549f23f90cf276c2e3058c2225c3711c2ad1c417e336d3391199445a9776dd791b83be47b2b9a7ae374b40652d74b822387e31fa5267a37bf49c122e1a9747 languageName: node linkType: hard @@ -1111,7 +1111,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 3a54802058ed3eef9c98efcc9ec4888763dce552f117db9a62fc2cdca30d9de0218cf7722a748d4b715a8bd833b9725d7ee018d01a18209b44434d15f719b173 + checksum: 10c0/3a54802058ed3eef9c98efcc9ec4888763dce552f117db9a62fc2cdca30d9de0218cf7722a748d4b715a8bd833b9725d7ee018d01a18209b44434d15f719b173 languageName: node linkType: hard @@ -1122,7 +1122,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 3aed142af7bd1aed1df2bdad91ed33ba1cdd5c3c67ce6eafba821ff72f129162a197ffb55f1eb1775af276abd5545934489a8257fef6c6665ddf253a4f39a939 + checksum: 10c0/3aed142af7bd1aed1df2bdad91ed33ba1cdd5c3c67ce6eafba821ff72f129162a197ffb55f1eb1775af276abd5545934489a8257fef6c6665ddf253a4f39a939 languageName: node linkType: hard @@ -1134,7 +1134,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 138f7769b30f65d339588155affe677c68fde3cdaa060a2dc73152cc8c941c246d4b2ae73c8f1d9ddf1055e587fcb7379c155d49daec086ed50557f2117c1d50 + checksum: 10c0/138f7769b30f65d339588155affe677c68fde3cdaa060a2dc73152cc8c941c246d4b2ae73c8f1d9ddf1055e587fcb7379c155d49daec086ed50557f2117c1d50 languageName: node linkType: hard @@ -1145,7 +1145,7 @@ __metadata: "@babel/plugin-transform-react-jsx": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4d2e9e68383238feb873f6111df972df4a2ebf6256d6f787a8772241867efa975b3980f7d75ab7d750e7eaad4bd454e8cc6e106301fd7572dd389e553f5f69d2 + checksum: 10c0/4d2e9e68383238feb873f6111df972df4a2ebf6256d6f787a8772241867efa975b3980f7d75ab7d750e7eaad4bd454e8cc6e106301fd7572dd389e553f5f69d2 languageName: node linkType: hard @@ -1160,7 +1160,7 @@ __metadata: "@babel/types": "npm:^7.22.15" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: db37491e3eea5530521e177380312f308f01f806866fa0ce08d48fc5a8c9eaf9a954f778fa1ff477248afb72e916eb66ab3d35254bb6a8979f8b8e74a0fd8873 + checksum: 10c0/db37491e3eea5530521e177380312f308f01f806866fa0ce08d48fc5a8c9eaf9a954f778fa1ff477248afb72e916eb66ab3d35254bb6a8979f8b8e74a0fd8873 languageName: node linkType: hard @@ -1172,7 +1172,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 76287adeab656fb7f39243e5ab6a8c60069cf69fffeebd1566457d56cb2f966366a23bd755d3e369f4d0437459e3b76243df370caa7d7d2287a8560b66c53ca2 + checksum: 10c0/76287adeab656fb7f39243e5ab6a8c60069cf69fffeebd1566457d56cb2f966366a23bd755d3e369f4d0437459e3b76243df370caa7d7d2287a8560b66c53ca2 languageName: node linkType: hard @@ -1184,7 +1184,7 @@ __metadata: regenerator-transform: "npm:^0.15.2" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 3b0e989ae5db78894ee300b24e07fbcec490c39ab48629c519377581cf94e90308f4ddc10a8914edc9f403e2d3ac7a7ae0ae09003629d852da03e2ba846299c6 + checksum: 10c0/3b0e989ae5db78894ee300b24e07fbcec490c39ab48629c519377581cf94e90308f4ddc10a8914edc9f403e2d3ac7a7ae0ae09003629d852da03e2ba846299c6 languageName: node linkType: hard @@ -1195,23 +1195,23 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 4e6d61f6c9757592661cfbd2c39c4f61551557b98cb5f0995ef10f5540f67e18dde8a42b09716d58943b6e4b7ef5c9bcf19902839e7328a4d49149e0fecdbfcd + checksum: 10c0/4e6d61f6c9757592661cfbd2c39c4f61551557b98cb5f0995ef10f5540f67e18dde8a42b09716d58943b6e4b7ef5c9bcf19902839e7328a4d49149e0fecdbfcd languageName: node linkType: hard "@babel/plugin-transform-runtime@npm:^7.22.4": - version: 7.23.9 - resolution: "@babel/plugin-transform-runtime@npm:7.23.9" + version: 7.24.0 + resolution: "@babel/plugin-transform-runtime@npm:7.24.0" dependencies: "@babel/helper-module-imports": "npm:^7.22.15" - "@babel/helper-plugin-utils": "npm:^7.22.5" + "@babel/helper-plugin-utils": "npm:^7.24.0" babel-plugin-polyfill-corejs2: "npm:^0.4.8" babel-plugin-polyfill-corejs3: "npm:^0.9.0" babel-plugin-polyfill-regenerator: "npm:^0.5.5" semver: "npm:^6.3.1" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 3b959c2b88ea0009c288fa190d9f69b0d26cb336b8a7cab54a5e54b844f33cce1996725c15305a40049c8f23ca30082ee27e1f6853ff35fad723543e3d2dba47 + checksum: 10c0/a632e0c6f4b1be21955646ba4f6e4af323daaa6ab68ce39f92f5186d444402e920b33cabd40759c36f72d8c36f256a35ea03060e407ca69bcf373fdcb450aa42 languageName: node linkType: hard @@ -1222,7 +1222,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: c423c66fec0b6503f50561741754c84366ef9e9818442c8881fbaa90cc363fd137084b9431cdc00ed2f1fd8c8a1a5982c4a7e1f2af3769db4caf2ac7ea55d4f0 + checksum: 10c0/c423c66fec0b6503f50561741754c84366ef9e9818442c8881fbaa90cc363fd137084b9431cdc00ed2f1fd8c8a1a5982c4a7e1f2af3769db4caf2ac7ea55d4f0 languageName: node linkType: hard @@ -1234,7 +1234,7 @@ __metadata: "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: a348e4ae47e4ceeceb760506ec7bf835ccc18a2cf70ec74ebfbe41bc172fa2412b05b7d1b86836f8aee375e41a04ff20486074778d0e2d19d668b33dc52e9dbb + checksum: 10c0/a348e4ae47e4ceeceb760506ec7bf835ccc18a2cf70ec74ebfbe41bc172fa2412b05b7d1b86836f8aee375e41a04ff20486074778d0e2d19d668b33dc52e9dbb languageName: node linkType: hard @@ -1245,7 +1245,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: cd15c407906b41e4b924ea151e455c11274dba050771ee7154ad88a1a274140ac5e84efc8d08c4379f2f0cec8a09e4a0a3b2a3a954ba6a67d9fb35df1c714c56 + checksum: 10c0/cd15c407906b41e4b924ea151e455c11274dba050771ee7154ad88a1a274140ac5e84efc8d08c4379f2f0cec8a09e4a0a3b2a3a954ba6a67d9fb35df1c714c56 languageName: node linkType: hard @@ -1256,7 +1256,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 9b5f43788b9ffcb8f2b445a16b1aa40fcf23cb0446a4649445f098ec6b4cb751f243a535da623d59fefe48f4c40552f5621187a61811779076bab26863e3373d + checksum: 10c0/9b5f43788b9ffcb8f2b445a16b1aa40fcf23cb0446a4649445f098ec6b4cb751f243a535da623d59fefe48f4c40552f5621187a61811779076bab26863e3373d languageName: node linkType: hard @@ -1267,7 +1267,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 50e81d84c6059878be2a0e41e0d790cab10882cfb8fa85e8c2665ccb0b3cd7233f49197f17427bc7c1b36c80e07076640ecf1b641888d78b9cb91bc16478d84a + checksum: 10c0/50e81d84c6059878be2a0e41e0d790cab10882cfb8fa85e8c2665ccb0b3cd7233f49197f17427bc7c1b36c80e07076640ecf1b641888d78b9cb91bc16478d84a languageName: node linkType: hard @@ -1281,7 +1281,7 @@ __metadata: "@babel/plugin-syntax-typescript": "npm:^7.23.3" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: a3c738efcf491ceb1eee646f57c44990ee0c80465527b88fcfa0b7602688c4ff8c165a4c5b62caf05d968b095212018fd30a02879c12d37c657081f57b31fb26 + checksum: 10c0/a3c738efcf491ceb1eee646f57c44990ee0c80465527b88fcfa0b7602688c4ff8c165a4c5b62caf05d968b095212018fd30a02879c12d37c657081f57b31fb26 languageName: node linkType: hard @@ -1292,7 +1292,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: f1ed54742dc982666f471df5d087cfda9c6dbf7842bec2d0f7893ed359b142a38c0210358f297ab5c7a3e11ec0dfb0e523de2e2edf48b62f257aaadd5f068866 + checksum: 10c0/f1ed54742dc982666f471df5d087cfda9c6dbf7842bec2d0f7893ed359b142a38c0210358f297ab5c7a3e11ec0dfb0e523de2e2edf48b62f257aaadd5f068866 languageName: node linkType: hard @@ -1304,7 +1304,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: dca5702d43fac70351623a12e4dfa454fd028a67498888522b644fd1a02534fabd440106897e886ebcc6ce6a39c58094ca29953b6f51bc67372aa8845a5ae49f + checksum: 10c0/dca5702d43fac70351623a12e4dfa454fd028a67498888522b644fd1a02534fabd440106897e886ebcc6ce6a39c58094ca29953b6f51bc67372aa8845a5ae49f languageName: node linkType: hard @@ -1316,7 +1316,7 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: df824dcca2f6e731f61d69103e87d5dd974d8a04e46e28684a4ba935ae633d876bded09b8db890fd72d0caf7b9638e2672b753671783613cc78d472951e2df8c + checksum: 10c0/df824dcca2f6e731f61d69103e87d5dd974d8a04e46e28684a4ba935ae633d876bded09b8db890fd72d0caf7b9638e2672b753671783613cc78d472951e2df8c languageName: node linkType: hard @@ -1328,17 +1328,17 @@ __metadata: "@babel/helper-plugin-utils": "npm:^7.22.5" peerDependencies: "@babel/core": ^7.0.0 - checksum: 30fe1d29af8395a867d40a63a250ca89072033d9bc7d4587eeebeaf4ad7f776aab83064321bfdb1d09d7e29a1d392852361f4f60a353f0f4d1a3b435dcbf256b + checksum: 10c0/30fe1d29af8395a867d40a63a250ca89072033d9bc7d4587eeebeaf4ad7f776aab83064321bfdb1d09d7e29a1d392852361f4f60a353f0f4d1a3b435dcbf256b languageName: node linkType: hard "@babel/preset-env@npm:^7.11.0, @babel/preset-env@npm:^7.12.1, @babel/preset-env@npm:^7.22.4": - version: 7.23.9 - resolution: "@babel/preset-env@npm:7.23.9" + version: 7.24.0 + resolution: "@babel/preset-env@npm:7.24.0" dependencies: "@babel/compat-data": "npm:^7.23.5" "@babel/helper-compilation-targets": "npm:^7.23.6" - "@babel/helper-plugin-utils": "npm:^7.22.5" + "@babel/helper-plugin-utils": "npm:^7.24.0" "@babel/helper-validator-option": "npm:^7.23.5" "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "npm:^7.23.3" "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "npm:^7.23.3" @@ -1391,7 +1391,7 @@ __metadata: "@babel/plugin-transform-new-target": "npm:^7.23.3" "@babel/plugin-transform-nullish-coalescing-operator": "npm:^7.23.4" "@babel/plugin-transform-numeric-separator": "npm:^7.23.4" - "@babel/plugin-transform-object-rest-spread": "npm:^7.23.4" + "@babel/plugin-transform-object-rest-spread": "npm:^7.24.0" "@babel/plugin-transform-object-super": "npm:^7.23.3" "@babel/plugin-transform-optional-catch-binding": "npm:^7.23.4" "@babel/plugin-transform-optional-chaining": "npm:^7.23.4" @@ -1418,7 +1418,7 @@ __metadata: semver: "npm:^6.3.1" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 2837a42089180e51bfd6864b6d197e01fc0abec1920422e71c0513c2fc8fb5f3bfe694ed778cc4e45856c546964945bc53bf8105e4b26f3580ce3685fa50cc0f + checksum: 10c0/cb5098bb860aede8418f204d7a693108d7c318edbb227f9842ac6aa71f2154ea1737846994af9bcd0c0b716cd73904f69f09bef635a9679465ec3558144beb4f languageName: node linkType: hard @@ -1431,7 +1431,7 @@ __metadata: esutils: "npm:^2.0.2" peerDependencies: "@babel/core": ^7.0.0-0 || ^8.0.0-0 <8.0.0 - checksum: 9d02f70d7052446c5f3a4fb39e6b632695fb6801e46d31d7f7c5001f7c18d31d1ea8369212331ca7ad4e7877b73231f470b0d559162624128f1b80fe591409e6 + checksum: 10c0/9d02f70d7052446c5f3a4fb39e6b632695fb6801e46d31d7f7c5001f7c18d31d1ea8369212331ca7ad4e7877b73231f470b0d559162624128f1b80fe591409e6 languageName: node linkType: hard @@ -1447,7 +1447,7 @@ __metadata: "@babel/plugin-transform-react-pure-annotations": "npm:^7.23.3" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: cecb2493e09fd4ffa5effcef1d06e968386b1bfe077a99834f7e8ef249208274fca62fe5a6b3986ef1c1c3900b2eb409adb528ae1b73dba31397b16f9262e83c + checksum: 10c0/cecb2493e09fd4ffa5effcef1d06e968386b1bfe077a99834f7e8ef249208274fca62fe5a6b3986ef1c1c3900b2eb409adb528ae1b73dba31397b16f9262e83c languageName: node linkType: hard @@ -1462,14 +1462,14 @@ __metadata: "@babel/plugin-transform-typescript": "npm:^7.23.3" peerDependencies: "@babel/core": ^7.0.0-0 - checksum: e72b654c7f0f08b35d7e1c0e3a59c0c13037f295c425760b8b148aa7dde01e6ddd982efc525710f997a1494fafdd55cb525738c016609e7e4d703d02014152b7 + checksum: 10c0/e72b654c7f0f08b35d7e1c0e3a59c0c13037f295c425760b8b148aa7dde01e6ddd982efc525710f997a1494fafdd55cb525738c016609e7e4d703d02014152b7 languageName: node linkType: hard "@babel/regjsgen@npm:^0.8.0": version: 0.8.0 resolution: "@babel/regjsgen@npm:0.8.0" - checksum: 4f3ddd8c7c96d447e05c8304c1d5ba3a83fcabd8a716bc1091c2f31595cdd43a3a055fff7cb5d3042b8cb7d402d78820fcb4e05d896c605a7d8bcf30f2424c4a + checksum: 10c0/4f3ddd8c7c96d447e05c8304c1d5ba3a83fcabd8a716bc1091c2f31595cdd43a3a055fff7cb5d3042b8cb7d402d78820fcb4e05d896c605a7d8bcf30f2424c4a languageName: node linkType: hard @@ -1478,33 +1478,33 @@ __metadata: resolution: "@babel/runtime@npm:7.0.0" dependencies: regenerator-runtime: "npm:^0.12.0" - checksum: fbbdf86380a1cfa6ce32a743549f4e4c8b8eb06a18be5054441cc0f66e75a747ae43b042d8989f4657027e1be3b9a82069865ccc5080838f004abd1161093742 + checksum: 10c0/fbbdf86380a1cfa6ce32a743549f4e4c8b8eb06a18be5054441cc0f66e75a747ae43b042d8989f4657027e1be3b9a82069865ccc5080838f004abd1161093742 languageName: node linkType: hard "@babel/runtime@npm:^7.0.0, @babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.11.2, @babel/runtime@npm:^7.12.0, @babel/runtime@npm:^7.12.13, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.13.8, @babel/runtime@npm:^7.18.3, @babel/runtime@npm:^7.2.0, @babel/runtime@npm:^7.20.13, @babel/runtime@npm:^7.22.3, @babel/runtime@npm:^7.23.2, @babel/runtime@npm:^7.3.1, @babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.6.3, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.8.7, @babel/runtime@npm:^7.9.2": - version: 7.23.9 - resolution: "@babel/runtime@npm:7.23.9" + version: 7.24.0 + resolution: "@babel/runtime@npm:7.24.0" dependencies: regenerator-runtime: "npm:^0.14.0" - checksum: e71205fdd7082b2656512cc98e647d9ea7e222e4fe5c36e9e5adc026446fcc3ba7b3cdff8b0b694a0b78bb85db83e7b1e3d4c56ef90726682b74f13249cf952d + checksum: 10c0/3495eed727bf4a4f84c35bb51ab53317ae38f4bbc3b1d0a8303751f9dfa0ce6f5fb2afced72b76c3dd0d8bb2ccb84787559a4dee9886291a36b26f02f0f759b4 languageName: node linkType: hard -"@babel/template@npm:^7.22.15, @babel/template@npm:^7.23.9, @babel/template@npm:^7.3.3": - version: 7.23.9 - resolution: "@babel/template@npm:7.23.9" +"@babel/template@npm:^7.22.15, @babel/template@npm:^7.24.0, @babel/template@npm:^7.3.3": + version: 7.24.0 + resolution: "@babel/template@npm:7.24.0" dependencies: "@babel/code-frame": "npm:^7.23.5" - "@babel/parser": "npm:^7.23.9" - "@babel/types": "npm:^7.23.9" - checksum: 0e8b60119433787742bc08ae762bbd8d6755611c4cabbcb7627b292ec901a55af65d93d1c88572326069efb64136ef151ec91ffb74b2df7689bbab237030833a + "@babel/parser": "npm:^7.24.0" + "@babel/types": "npm:^7.24.0" + checksum: 10c0/9d3dd8d22fe1c36bc3bdef6118af1f4b030aaf6d7d2619f5da203efa818a2185d717523486c111de8d99a8649ddf4bbf6b2a7a64962d8411cf6a8fa89f010e54 languageName: node linkType: hard -"@babel/traverse@npm:7, @babel/traverse@npm:^7.23.9": - version: 7.23.9 - resolution: "@babel/traverse@npm:7.23.9" +"@babel/traverse@npm:7, @babel/traverse@npm:^7.24.0": + version: 7.24.0 + resolution: "@babel/traverse@npm:7.24.0" dependencies: "@babel/code-frame": "npm:^7.23.5" "@babel/generator": "npm:^7.23.6" @@ -1512,29 +1512,29 @@ __metadata: "@babel/helper-function-name": "npm:^7.23.0" "@babel/helper-hoist-variables": "npm:^7.22.5" "@babel/helper-split-export-declaration": "npm:^7.22.6" - "@babel/parser": "npm:^7.23.9" - "@babel/types": "npm:^7.23.9" + "@babel/parser": "npm:^7.24.0" + "@babel/types": "npm:^7.24.0" debug: "npm:^4.3.1" globals: "npm:^11.1.0" - checksum: d1615d1d02f04d47111a7ea4446a1a6275668ca39082f31d51f08380de9502e19862be434eaa34b022ce9a17dbb8f9e2b73a746c654d9575f3a680a7ffdf5630 + checksum: 10c0/55ffd2b0ce0fbd0a09051edc4def4fb1e96f35e0b100c0dc2a7429df569971ae312c290e980e423471f350961705698a257c7eea8c8304918024cc26f02468ba languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.0.0-beta.49, @babel/types@npm:^7.12.11, @babel/types@npm:^7.12.6, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.10, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.19, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.23.6, @babel/types@npm:^7.23.9, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": - version: 7.23.9 - resolution: "@babel/types@npm:7.23.9" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.0.0-beta.49, @babel/types@npm:^7.12.11, @babel/types@npm:^7.12.6, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.10, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.19, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.23.6, @babel/types@npm:^7.24.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3": + version: 7.24.0 + resolution: "@babel/types@npm:7.24.0" dependencies: "@babel/helper-string-parser": "npm:^7.23.4" "@babel/helper-validator-identifier": "npm:^7.22.20" to-fast-properties: "npm:^2.0.0" - checksum: edc7bb180ce7e4d2aea10c6972fb10474341ac39ba8fdc4a27ffb328368dfdfbf40fca18e441bbe7c483774500d5c05e222cec276c242e952853dcaf4eb884f7 + checksum: 10c0/777a0bb5dbe038ca4c905fdafb1cdb6bdd10fe9d63ce13eca0bd91909363cbad554a53dc1f902004b78c1dcbc742056f877f2c99eeedff647333b1fadf51235d languageName: node linkType: hard "@bcoe/v8-coverage@npm:^0.2.3": version: 0.2.3 resolution: "@bcoe/v8-coverage@npm:0.2.3" - checksum: 6b80ae4cb3db53f486da2dc63b6e190a74c8c3cca16bb2733f234a0b6a9382b09b146488ae08e2b22cf00f6c83e20f3e040a2f7894f05c045c946d6a090b1d52 + checksum: 10c0/6b80ae4cb3db53f486da2dc63b6e190a74c8c3cca16bb2733f234a0b6a9382b09b146488ae08e2b22cf00f6c83e20f3e040a2f7894f05c045c946d6a090b1d52 languageName: node linkType: hard @@ -1543,14 +1543,14 @@ __metadata: resolution: "@csstools/css-parser-algorithms@npm:2.5.0" peerDependencies: "@csstools/css-tokenizer": ^2.2.3 - checksum: 31b4a523d956e204af9842183678cca5a88ad76551d54dcb6083f8a6f2dfd8fdec6c09bca5410842af54b90997308bebee7593c17dbc1a4e951453b54bd3f024 + checksum: 10c0/31b4a523d956e204af9842183678cca5a88ad76551d54dcb6083f8a6f2dfd8fdec6c09bca5410842af54b90997308bebee7593c17dbc1a4e951453b54bd3f024 languageName: node linkType: hard "@csstools/css-tokenizer@npm:^2.2.3": version: 2.2.3 resolution: "@csstools/css-tokenizer@npm:2.2.3" - checksum: 557266ec52e8b36c19008a5bbd7151effba085cdd6d68270c01afebf914981caac698eda754b2a530a8a9947a3dd70e3f3a39a5e037c4170bb2a055a92754acb + checksum: 10c0/557266ec52e8b36c19008a5bbd7151effba085cdd6d68270c01afebf914981caac698eda754b2a530a8a9947a3dd70e3f3a39a5e037c4170bb2a055a92754acb languageName: node linkType: hard @@ -1560,7 +1560,7 @@ __metadata: peerDependencies: "@csstools/css-parser-algorithms": ^2.5.0 "@csstools/css-tokenizer": ^2.2.3 - checksum: 433aef06b00f1d402fd24074a1919b8e2de94245a3b780da6466c8cc9e0f3cc93d2db930f0fce36c7d6908cd50b626cd61e803d3f62dddad79eeb742858028ef + checksum: 10c0/433aef06b00f1d402fd24074a1919b8e2de94245a3b780da6466c8cc9e0f3cc93d2db930f0fce36c7d6908cd50b626cd61e803d3f62dddad79eeb742858028ef languageName: node linkType: hard @@ -1569,14 +1569,14 @@ __metadata: resolution: "@csstools/selector-specificity@npm:3.0.1" peerDependencies: postcss-selector-parser: ^6.0.13 - checksum: 4280f494726d5e38de74e28dee2ff74ec86244560dff4edeec3ddff3ac73c774c19535bd1bb70cad77949bfb359cf87e977d0ec3264591e3b7260342a20dd84f + checksum: 10c0/4280f494726d5e38de74e28dee2ff74ec86244560dff4edeec3ddff3ac73c774c19535bd1bb70cad77949bfb359cf87e977d0ec3264591e3b7260342a20dd84f languageName: node linkType: hard "@discoveryjs/json-ext@npm:0.5.7": version: 0.5.7 resolution: "@discoveryjs/json-ext@npm:0.5.7" - checksum: e10f1b02b78e4812646ddf289b7d9f2cb567d336c363b266bd50cd223cf3de7c2c74018d91cd2613041568397ef3a4a2b500aba588c6e5bd78c38374ba68f38c + checksum: 10c0/e10f1b02b78e4812646ddf289b7d9f2cb567d336c363b266bd50cd223cf3de7c2c74018d91cd2613041568397ef3a4a2b500aba588c6e5bd78c38374ba68f38c languageName: node linkType: hard @@ -1595,7 +1595,7 @@ __metadata: find-root: "npm:^1.1.0" source-map: "npm:^0.5.7" stylis: "npm:4.2.0" - checksum: 89cbb6ec0e52c8ee9c2a4b9889ccd4fc3a75d28091d835bfac6d7c4565d3338621e23af0a85f3bcd133e1cae795c692e1dadada015784d4b0554aa5bb111df43 + checksum: 10c0/89cbb6ec0e52c8ee9c2a4b9889ccd4fc3a75d28091d835bfac6d7c4565d3338621e23af0a85f3bcd133e1cae795c692e1dadada015784d4b0554aa5bb111df43 languageName: node linkType: hard @@ -1608,21 +1608,21 @@ __metadata: "@emotion/utils": "npm:^1.2.1" "@emotion/weak-memoize": "npm:^0.3.1" stylis: "npm:4.2.0" - checksum: a23ab5ab2fd08e904698106d58ad3536fed51cc1aa0ef228e95bb640eaf11f560dbd91a395477b0d84e1e3c20150263764b4558517cf6576a89d2d6cc5253688 + checksum: 10c0/a23ab5ab2fd08e904698106d58ad3536fed51cc1aa0ef228e95bb640eaf11f560dbd91a395477b0d84e1e3c20150263764b4558517cf6576a89d2d6cc5253688 languageName: node linkType: hard "@emotion/hash@npm:^0.9.1": version: 0.9.1 resolution: "@emotion/hash@npm:0.9.1" - checksum: cdafe5da63fc1137f3db6e232fdcde9188b2b47ee66c56c29137199642a4086f42382d866911cfb4833cae2cc00271ab45cad3946b024f67b527bb7fac7f4c9d + checksum: 10c0/cdafe5da63fc1137f3db6e232fdcde9188b2b47ee66c56c29137199642a4086f42382d866911cfb4833cae2cc00271ab45cad3946b024f67b527bb7fac7f4c9d languageName: node linkType: hard "@emotion/memoize@npm:^0.8.1": version: 0.8.1 resolution: "@emotion/memoize@npm:0.8.1" - checksum: dffed372fc3b9fa2ba411e76af22b6bb686fb0cb07694fdfaa6dd2baeb0d5e4968c1a7caa472bfcf06a5997d5e7c7d16b90e993f9a6ffae79a2c3dbdc76dfe78 + checksum: 10c0/dffed372fc3b9fa2ba411e76af22b6bb686fb0cb07694fdfaa6dd2baeb0d5e4968c1a7caa472bfcf06a5997d5e7c7d16b90e993f9a6ffae79a2c3dbdc76dfe78 languageName: node linkType: hard @@ -1643,7 +1643,7 @@ __metadata: peerDependenciesMeta: "@types/react": optional: true - checksum: 1aea4d735b537fbfbeda828bbf929488a7e1b5b7d131f14aeede8737e92bb3b611e15fec353e97f85aed7a65a1c86a695a04ba6e9be905231beef6bd624cb705 + checksum: 10c0/1aea4d735b537fbfbeda828bbf929488a7e1b5b7d131f14aeede8737e92bb3b611e15fec353e97f85aed7a65a1c86a695a04ba6e9be905231beef6bd624cb705 languageName: node linkType: hard @@ -1656,21 +1656,21 @@ __metadata: "@emotion/unitless": "npm:^0.8.1" "@emotion/utils": "npm:^1.2.1" csstype: "npm:^3.0.2" - checksum: d243e0e5abce8d2183d25a32ec89bf650ee741ebadb29e6405abde05d4e2ed446ba5b3f725a29833ad709d0d08f0a5c8d0532fdcd43f4b23d931d8b6d4f218c1 + checksum: 10c0/d243e0e5abce8d2183d25a32ec89bf650ee741ebadb29e6405abde05d4e2ed446ba5b3f725a29833ad709d0d08f0a5c8d0532fdcd43f4b23d931d8b6d4f218c1 languageName: node linkType: hard "@emotion/sheet@npm:^1.2.2": version: 1.2.2 resolution: "@emotion/sheet@npm:1.2.2" - checksum: 69827a1bfa43d7b188f1d8cea42163143a36312543fdade5257c459a2b3efd7ce386aac84ba152bc2517a4f7e54384c04800b26adb382bb284ac7e4ad40e584b + checksum: 10c0/69827a1bfa43d7b188f1d8cea42163143a36312543fdade5257c459a2b3efd7ce386aac84ba152bc2517a4f7e54384c04800b26adb382bb284ac7e4ad40e584b languageName: node linkType: hard "@emotion/unitless@npm:^0.8.1": version: 0.8.1 resolution: "@emotion/unitless@npm:0.8.1" - checksum: a1ed508628288f40bfe6dd17d431ed899c067a899fa293a13afe3aed1d70fac0412b8a215fafab0b42829360db687fecd763e5f01a64ddc4a4b58ec3112ff548 + checksum: 10c0/a1ed508628288f40bfe6dd17d431ed899c067a899fa293a13afe3aed1d70fac0412b8a215fafab0b42829360db687fecd763e5f01a64ddc4a4b58ec3112ff548 languageName: node linkType: hard @@ -1679,32 +1679,32 @@ __metadata: resolution: "@emotion/use-insertion-effect-with-fallbacks@npm:1.0.1" peerDependencies: react: ">=16.8.0" - checksum: a15b2167940e3a908160687b73fc4fcd81e59ab45136b6967f02c7c419d9a149acd22a416b325c389642d4f1c3d33cf4196cad6b618128b55b7c74f6807a240b + checksum: 10c0/a15b2167940e3a908160687b73fc4fcd81e59ab45136b6967f02c7c419d9a149acd22a416b325c389642d4f1c3d33cf4196cad6b618128b55b7c74f6807a240b languageName: node linkType: hard "@emotion/utils@npm:^1.2.1": version: 1.2.1 resolution: "@emotion/utils@npm:1.2.1" - checksum: db43ca803361740c14dfb1cca1464d10d27f4c8b40d3e8864e6932ccf375d1450778ff4e4eadee03fb97f2aeb18de9fae98294905596a12ff7d4cd1910414d8d + checksum: 10c0/db43ca803361740c14dfb1cca1464d10d27f4c8b40d3e8864e6932ccf375d1450778ff4e4eadee03fb97f2aeb18de9fae98294905596a12ff7d4cd1910414d8d languageName: node linkType: hard "@emotion/weak-memoize@npm:^0.3.1": version: 0.3.1 resolution: "@emotion/weak-memoize@npm:0.3.1" - checksum: ed514b3cb94bbacece4ac2450d98898066c0a0698bdeda256e312405ca53634cb83c75889b25cd8bbbe185c80f4c05a1f0a0091e1875460ba6be61d0334f0b8a + checksum: 10c0/ed514b3cb94bbacece4ac2450d98898066c0a0698bdeda256e312405ca53634cb83c75889b25cd8bbbe185c80f4c05a1f0a0091e1875460ba6be61d0334f0b8a languageName: node linkType: hard -"@es-joy/jsdoccomment@npm:~0.41.0": - version: 0.41.0 - resolution: "@es-joy/jsdoccomment@npm:0.41.0" +"@es-joy/jsdoccomment@npm:~0.42.0": + version: 0.42.0 + resolution: "@es-joy/jsdoccomment@npm:0.42.0" dependencies: comment-parser: "npm:1.4.1" esquery: "npm:^1.5.0" jsdoc-type-pratt-parser: "npm:~4.0.0" - checksum: 1fa27531eba32e4699664da53a0865aeeda1f7e83ac156fe53b7a6b09d2f3816baa94a34845ff019c10289b09572bda5519ec917e3e241088975477fa880f72d + checksum: 10c0/a8122762d2df3c6501a9c459e2822315a23c0078c4aeb0b40fb3c84b99e21a78e85e67f962d6b5dde5eb751792a1c67c6a170b619573db7151098a19950abe35 languageName: node linkType: hard @@ -1715,14 +1715,14 @@ __metadata: eslint-visitor-keys: "npm:^3.3.0" peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - checksum: 7e559c4ce59cd3a06b1b5a517b593912e680a7f981ae7affab0d01d709e99cd5647019be8fafa38c350305bc32f1f7d42c7073edde2ab536c745e365f37b607e + checksum: 10c0/7e559c4ce59cd3a06b1b5a517b593912e680a7f981ae7affab0d01d709e99cd5647019be8fafa38c350305bc32f1f7d42c7073edde2ab536c745e365f37b607e languageName: node linkType: hard "@eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.1": version: 4.10.0 resolution: "@eslint-community/regexpp@npm:4.10.0" - checksum: c5f60ef1f1ea7649fa7af0e80a5a79f64b55a8a8fa5086de4727eb4c86c652aedee407a9c143b8995d2c0b2d75c1222bec9ba5d73dbfc1f314550554f0979ef4 + checksum: 10c0/c5f60ef1f1ea7649fa7af0e80a5a79f64b55a8a8fa5086de4727eb4c86c652aedee407a9c143b8995d2c0b2d75c1222bec9ba5d73dbfc1f314550554f0979ef4 languageName: node linkType: hard @@ -1739,14 +1739,14 @@ __metadata: js-yaml: "npm:^4.1.0" minimatch: "npm:^3.1.2" strip-json-comments: "npm:^3.1.1" - checksum: 32f67052b81768ae876c84569ffd562491ec5a5091b0c1e1ca1e0f3c24fb42f804952fdd0a137873bc64303ba368a71ba079a6f691cee25beee9722d94cc8573 + checksum: 10c0/32f67052b81768ae876c84569ffd562491ec5a5091b0c1e1ca1e0f3c24fb42f804952fdd0a137873bc64303ba368a71ba079a6f691cee25beee9722d94cc8573 languageName: node linkType: hard -"@eslint/js@npm:8.56.0": - version: 8.56.0 - resolution: "@eslint/js@npm:8.56.0" - checksum: 60b3a1cf240e2479cec9742424224465dc50e46d781da1b7f5ef240501b2d1202c225bd456207faac4b34a64f4765833345bc4ddffd00395e1db40fa8c426f5a +"@eslint/js@npm:8.57.0": + version: 8.57.0 + resolution: "@eslint/js@npm:8.57.0" + checksum: 10c0/9a518bb8625ba3350613903a6d8c622352ab0c6557a59fe6ff6178bf882bf57123f9d92aa826ee8ac3ee74b9c6203fe630e9ee00efb03d753962dcf65ee4bd94 languageName: node linkType: hard @@ -1755,7 +1755,7 @@ __metadata: resolution: "@floating-ui/core@npm:1.5.0" dependencies: "@floating-ui/utils": "npm:^0.1.3" - checksum: bca811cefd09c3f56c4cf58c3e94826c1ce4a0b40124e9030ddca2ef1cc68b4ddc5ba5b4d7cc94c9555aea6876d2428a77a2ae261fe5b39c79df247a9518b053 + checksum: 10c0/bca811cefd09c3f56c4cf58c3e94826c1ce4a0b40124e9030ddca2ef1cc68b4ddc5ba5b4d7cc94c9555aea6876d2428a77a2ae261fe5b39c79df247a9518b053 languageName: node linkType: hard @@ -1765,14 +1765,14 @@ __metadata: dependencies: "@floating-ui/core": "npm:^1.4.2" "@floating-ui/utils": "npm:^0.1.3" - checksum: e5f30b911f939e40003851077bba441f269ae689bdc43c674bee43aa98fc6b7a5f59be432d27b7be599b1e4ab7b15c752875ea777a89cff01d157e593b78b25b + checksum: 10c0/e5f30b911f939e40003851077bba441f269ae689bdc43c674bee43aa98fc6b7a5f59be432d27b7be599b1e4ab7b15c752875ea777a89cff01d157e593b78b25b languageName: node linkType: hard "@floating-ui/utils@npm:^0.1.3": version: 0.1.6 resolution: "@floating-ui/utils@npm:0.1.6" - checksum: 0a089db0e0526b89e83cb0a773a903517db5c9067cd473febfd8fa91a3a2ccbc3a835234796c1bb528def21dbb67be50e28d9c473cb58a6d90679d7e549b9c0c + checksum: 10c0/0a089db0e0526b89e83cb0a773a903517db5c9067cd473febfd8fa91a3a2ccbc3a835234796c1bb528def21dbb67be50e28d9c473cb58a6d90679d7e549b9c0c languageName: node linkType: hard @@ -1786,7 +1786,7 @@ __metadata: optional: true bin: formatjs: bin/formatjs - checksum: ee7b0873a734e02721ce1ee107ee60845bb30855f4ca686bfb6c5e9862353249d5d20748b18db93200aabc7a59875ff062f485c64d41cb8e61f1d43e2bb5eceb + checksum: 10c0/ee7b0873a734e02721ce1ee107ee60845bb30855f4ca686bfb6c5e9862353249d5d20748b18db93200aabc7a59875ff062f485c64d41cb8e61f1d43e2bb5eceb languageName: node linkType: hard @@ -1796,7 +1796,7 @@ __metadata: dependencies: "@formatjs/intl-localematcher": "npm:0.5.4" tslib: "npm:^2.4.0" - checksum: 87afb37dd937555e712ca85d5142a9083d617c491d1dddf8d660fdfb6186272d2bc75b78809b076388d26f016200c8bddbce73281fd707eb899da2bf3bc9b7ca + checksum: 10c0/87afb37dd937555e712ca85d5142a9083d617c491d1dddf8d660fdfb6186272d2bc75b78809b076388d26f016200c8bddbce73281fd707eb899da2bf3bc9b7ca languageName: node linkType: hard @@ -1805,7 +1805,7 @@ __metadata: resolution: "@formatjs/fast-memoize@npm:2.2.0" dependencies: tslib: "npm:^2.4.0" - checksum: ae88c5a93b96235aba4bd9b947d0310d2ec013687a99133413361b24122b5cdea8c9bf2e04a4a2a8b61f1f4ee5419ef6416ca4796554226b5050e05a9ce6ef49 + checksum: 10c0/ae88c5a93b96235aba4bd9b947d0310d2ec013687a99133413361b24122b5cdea8c9bf2e04a4a2a8b61f1f4ee5419ef6416ca4796554226b5050e05a9ce6ef49 languageName: node linkType: hard @@ -1816,7 +1816,7 @@ __metadata: "@formatjs/ecma402-abstract": "npm:1.18.2" "@formatjs/icu-skeleton-parser": "npm:1.8.0" tslib: "npm:^2.4.0" - checksum: 9fc72c2075333a969601e2be4260638940b1abefd1a5fc15b93b0b10d2319c9df5778aa51fc2a173ce66ca5e8a47b4b64caca85a32d0eb6095e16e8d65cb4b00 + checksum: 10c0/9fc72c2075333a969601e2be4260638940b1abefd1a5fc15b93b0b10d2319c9df5778aa51fc2a173ce66ca5e8a47b4b64caca85a32d0eb6095e16e8d65cb4b00 languageName: node linkType: hard @@ -1826,7 +1826,7 @@ __metadata: dependencies: "@formatjs/ecma402-abstract": "npm:1.18.2" tslib: "npm:^2.4.0" - checksum: 10956732d70cc67049d216410b5dc3ef048935d1ea2ae76f5755bb9d0243af37ddeabd5d140ddbf5f6c7047068c3d02a05f93c68a89cedfaf7488d5062885ea4 + checksum: 10c0/10956732d70cc67049d216410b5dc3ef048935d1ea2ae76f5755bb9d0243af37ddeabd5d140ddbf5f6c7047068c3d02a05f93c68a89cedfaf7488d5062885ea4 languageName: node linkType: hard @@ -1837,7 +1837,7 @@ __metadata: "@formatjs/ecma402-abstract": "npm:1.18.2" "@formatjs/intl-localematcher": "npm:0.5.4" tslib: "npm:^2.4.0" - checksum: 4ba40057cfafaabf04485137bc96705d5ed7ac48f17ed7dfe8dbd7f71119667b6c0b7fa75469e32b70c9bada2c5d03af37a5261d655a37b81c63ba907edbb2e8 + checksum: 10c0/4ba40057cfafaabf04485137bc96705d5ed7ac48f17ed7dfe8dbd7f71119667b6c0b7fa75469e32b70c9bada2c5d03af37a5261d655a37b81c63ba907edbb2e8 languageName: node linkType: hard @@ -1848,7 +1848,7 @@ __metadata: "@formatjs/ecma402-abstract": "npm:1.18.2" "@formatjs/intl-localematcher": "npm:0.5.4" tslib: "npm:^2.4.0" - checksum: bc9d8cbe42bd9513db0b2b221c0b1a752892005a90fa629b4cf7df1cbd3b96997cddbf420e562ebdfdc691a28d9b759ccae9633d5987aa0bceed5aef77a07ca4 + checksum: 10c0/bc9d8cbe42bd9513db0b2b221c0b1a752892005a90fa629b4cf7df1cbd3b96997cddbf420e562ebdfdc691a28d9b759ccae9633d5987aa0bceed5aef77a07ca4 languageName: node linkType: hard @@ -1857,7 +1857,7 @@ __metadata: resolution: "@formatjs/intl-localematcher@npm:0.5.4" dependencies: tslib: "npm:^2.4.0" - checksum: c9ff5d34ca8b6fe59f8f303a3cc31a92d343e095a6987e273e5cc23f0fe99feb557a392a05da95931c7d24106acb6988e588d00ddd05b0934005aafd7fdbafe6 + checksum: 10c0/c9ff5d34ca8b6fe59f8f303a3cc31a92d343e095a6987e273e5cc23f0fe99feb557a392a05da95931c7d24106acb6988e588d00ddd05b0934005aafd7fdbafe6 languageName: node linkType: hard @@ -1868,7 +1868,7 @@ __metadata: "@formatjs/ecma402-abstract": "npm:1.18.2" "@formatjs/intl-localematcher": "npm:0.5.4" tslib: "npm:^2.4.0" - checksum: 0f4d9f4f272dd962b2f742519045ad43a1b6358755787d3394efcc5884b02184cc8d76fb13d98b1f30c41a813b81f82dd2342e1fb0fbd7b7efa69f5d0d59c4d0 + checksum: 10c0/0f4d9f4f272dd962b2f742519045ad43a1b6358755787d3394efcc5884b02184cc8d76fb13d98b1f30c41a813b81f82dd2342e1fb0fbd7b7efa69f5d0d59c4d0 languageName: node linkType: hard @@ -1888,7 +1888,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 7566038b011116cee7069165a25836b3fb687948e61b041809a9d978ac6c0882ae8d81a624a415cfb8e43852d097cd1cbc3c6707e717928e39b75c252491a712 + checksum: 10c0/7566038b011116cee7069165a25836b3fb687948e61b041809a9d978ac6c0882ae8d81a624a415cfb8e43852d097cd1cbc3c6707e717928e39b75c252491a712 languageName: node linkType: hard @@ -1908,21 +1908,21 @@ __metadata: peerDependenciesMeta: ts-jest: optional: true - checksum: 68f72ee6379b87b7ef6340e118a5370cb2fa18cbbae08f5f3d10893803a52f0533e644002e0b5e9ffeded5b2f0aa9daad6adf8b487b10f5d2b61f9fb3fed0dbd + checksum: 10c0/68f72ee6379b87b7ef6340e118a5370cb2fa18cbbae08f5f3d10893803a52f0533e644002e0b5e9ffeded5b2f0aa9daad6adf8b487b10f5d2b61f9fb3fed0dbd languageName: node linkType: hard "@gamestdio/websocket@npm:^0.3.2": version: 0.3.2 resolution: "@gamestdio/websocket@npm:0.3.2" - checksum: f232411203d649fef1363bb6c83cd250adab8da2f01b568b919dee9751512b63b650d7dcd593da4a60c23f19d005124c159eba78f437a21eb8a1ebf73f63cc19 + checksum: 10c0/f232411203d649fef1363bb6c83cd250adab8da2f01b568b919dee9751512b63b650d7dcd593da4a60c23f19d005124c159eba78f437a21eb8a1ebf73f63cc19 languageName: node linkType: hard "@gar/promisify@npm:^1.0.1": version: 1.1.3 resolution: "@gar/promisify@npm:1.1.3" - checksum: 0b3c9958d3cd17f4add3574975e3115ae05dc7f1298a60810414b16f6f558c137b5fb3cd3905df380bacfd955ec13f67c1e6710cbb5c246a7e8d65a8289b2bff + checksum: 10c0/0b3c9958d3cd17f4add3574975e3115ae05dc7f1298a60810414b16f6f558c137b5fb3cd3905df380bacfd955ec13f67c1e6710cbb5c246a7e8d65a8289b2bff languageName: node linkType: hard @@ -1931,39 +1931,39 @@ __metadata: resolution: "@github/webauthn-json@npm:2.1.1" bin: webauthn-json: dist/bin/main.js - checksum: 4423ddd1e5b74d91ded02ea551923a73c45b1ee2ee4294943aaddfc12e1929405ea1e8b4380456db829fcdc3a4d8a89bf8ee29c6a35be3889dc00236b1c96968 + checksum: 10c0/4423ddd1e5b74d91ded02ea551923a73c45b1ee2ee4294943aaddfc12e1929405ea1e8b4380456db829fcdc3a4d8a89bf8ee29c6a35be3889dc00236b1c96968 languageName: node linkType: hard -"@humanwhocodes/config-array@npm:^0.11.13": - version: 0.11.13 - resolution: "@humanwhocodes/config-array@npm:0.11.13" +"@humanwhocodes/config-array@npm:^0.11.14": + version: 0.11.14 + resolution: "@humanwhocodes/config-array@npm:0.11.14" dependencies: - "@humanwhocodes/object-schema": "npm:^2.0.1" - debug: "npm:^4.1.1" + "@humanwhocodes/object-schema": "npm:^2.0.2" + debug: "npm:^4.3.1" minimatch: "npm:^3.0.5" - checksum: d76ca802d853366094d0e98ff0d0994117fc8eff96649cd357b15e469e428228f597cd2e929d54ab089051684949955f16ee905bb19f7b2f0446fb377157be7a + checksum: 10c0/66f725b4ee5fdd8322c737cb5013e19fac72d4d69c8bf4b7feb192fcb83442b035b92186f8e9497c220e58b2d51a080f28a73f7899bc1ab288c3be172c467541 languageName: node linkType: hard "@humanwhocodes/module-importer@npm:^1.0.1": version: 1.0.1 resolution: "@humanwhocodes/module-importer@npm:1.0.1" - checksum: 909b69c3b86d482c26b3359db16e46a32e0fb30bd306a3c176b8313b9e7313dba0f37f519de6aa8b0a1921349e505f259d19475e123182416a506d7f87e7f529 + checksum: 10c0/909b69c3b86d482c26b3359db16e46a32e0fb30bd306a3c176b8313b9e7313dba0f37f519de6aa8b0a1921349e505f259d19475e123182416a506d7f87e7f529 languageName: node linkType: hard -"@humanwhocodes/object-schema@npm:^2.0.1": - version: 2.0.1 - resolution: "@humanwhocodes/object-schema@npm:2.0.1" - checksum: 9dba24e59fdb4041829d92b693aacb778add3b6f612aaa9c0774f3b650c11a378cc64f042a59da85c11dae33df456580a3c36837b953541aed6ff94294f97fac +"@humanwhocodes/object-schema@npm:^2.0.2": + version: 2.0.2 + resolution: "@humanwhocodes/object-schema@npm:2.0.2" + checksum: 10c0/6fd83dc320231d71c4541d0244051df61f301817e9f9da9fd4cb7e44ec8aacbde5958c1665b0c419401ab935114fdf532a6ad5d4e7294b1af2f347dd91a6983f languageName: node linkType: hard "@ioredis/commands@npm:^1.1.1": version: 1.2.0 resolution: "@ioredis/commands@npm:1.2.0" - checksum: a5d3c29dd84d8a28b7c67a441ac1715cbd7337a7b88649c0f17c345d89aa218578d2b360760017c48149ef8a70f44b051af9ac0921a0622c2b479614c4f65b36 + checksum: 10c0/a5d3c29dd84d8a28b7c67a441ac1715cbd7337a7b88649c0f17c345d89aa218578d2b360760017c48149ef8a70f44b051af9ac0921a0622c2b479614c4f65b36 languageName: node linkType: hard @@ -1977,7 +1977,7 @@ __metadata: strip-ansi-cjs: "npm:strip-ansi@^6.0.1" wrap-ansi: "npm:^8.1.0" wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" - checksum: b1bf42535d49f11dc137f18d5e4e63a28c5569de438a221c369483731e9dac9fb797af554e8bf02b6192d1e5eba6e6402cf93900c3d0ac86391d00d04876789e + checksum: 10c0/b1bf42535d49f11dc137f18d5e4e63a28c5569de438a221c369483731e9dac9fb797af554e8bf02b6192d1e5eba6e6402cf93900c3d0ac86391d00d04876789e languageName: node linkType: hard @@ -1990,14 +1990,14 @@ __metadata: get-package-type: "npm:^0.1.0" js-yaml: "npm:^3.13.1" resolve-from: "npm:^5.0.0" - checksum: dd2a8b094887da5a1a2339543a4933d06db2e63cbbc2e288eb6431bd832065df0c099d091b6a67436e71b7d6bf85f01ce7c15f9253b4cbebcc3b9a496165ba42 + checksum: 10c0/dd2a8b094887da5a1a2339543a4933d06db2e63cbbc2e288eb6431bd832065df0c099d091b6a67436e71b7d6bf85f01ce7c15f9253b4cbebcc3b9a496165ba42 languageName: node linkType: hard "@istanbuljs/schema@npm:^0.1.2": version: 0.1.3 resolution: "@istanbuljs/schema@npm:0.1.3" - checksum: 61c5286771676c9ca3eb2bd8a7310a9c063fb6e0e9712225c8471c582d157392c88f5353581c8c9adbe0dff98892317d2fdfc56c3499aa42e0194405206a963a + checksum: 10c0/61c5286771676c9ca3eb2bd8a7310a9c063fb6e0e9712225c8471c582d157392c88f5353581c8c9adbe0dff98892317d2fdfc56c3499aa42e0194405206a963a languageName: node linkType: hard @@ -2011,7 +2011,7 @@ __metadata: jest-message-util: "npm:^29.7.0" jest-util: "npm:^29.7.0" slash: "npm:^3.0.0" - checksum: 7be408781d0a6f657e969cbec13b540c329671819c2f57acfad0dae9dbfe2c9be859f38fe99b35dba9ff1536937dc6ddc69fdcd2794812fa3c647a1619797f6c + checksum: 10c0/7be408781d0a6f657e969cbec13b540c329671819c2f57acfad0dae9dbfe2c9be859f38fe99b35dba9ff1536937dc6ddc69fdcd2794812fa3c647a1619797f6c languageName: node linkType: hard @@ -2052,7 +2052,7 @@ __metadata: peerDependenciesMeta: node-notifier: optional: true - checksum: 934f7bf73190f029ac0f96662c85cd276ec460d407baf6b0dbaec2872e157db4d55a7ee0b1c43b18874602f662b37cb973dda469a4e6d88b4e4845b521adeeb2 + checksum: 10c0/934f7bf73190f029ac0f96662c85cd276ec460d407baf6b0dbaec2872e157db4d55a7ee0b1c43b18874602f662b37cb973dda469a4e6d88b4e4845b521adeeb2 languageName: node linkType: hard @@ -2064,7 +2064,7 @@ __metadata: "@jest/types": "npm:^29.6.3" "@types/node": "npm:*" jest-mock: "npm:^29.7.0" - checksum: c7b1b40c618f8baf4d00609022d2afa086d9c6acc706f303a70bb4b67275868f620ad2e1a9efc5edd418906157337cce50589a627a6400bbdf117d351b91ef86 + checksum: 10c0/c7b1b40c618f8baf4d00609022d2afa086d9c6acc706f303a70bb4b67275868f620ad2e1a9efc5edd418906157337cce50589a627a6400bbdf117d351b91ef86 languageName: node linkType: hard @@ -2073,7 +2073,7 @@ __metadata: resolution: "@jest/expect-utils@npm:29.7.0" dependencies: jest-get-type: "npm:^29.6.3" - checksum: 60b79d23a5358dc50d9510d726443316253ecda3a7fb8072e1526b3e0d3b14f066ee112db95699b7a43ad3f0b61b750c72e28a5a1cac361d7a2bb34747fa938a + checksum: 10c0/60b79d23a5358dc50d9510d726443316253ecda3a7fb8072e1526b3e0d3b14f066ee112db95699b7a43ad3f0b61b750c72e28a5a1cac361d7a2bb34747fa938a languageName: node linkType: hard @@ -2083,7 +2083,7 @@ __metadata: dependencies: expect: "npm:^29.7.0" jest-snapshot: "npm:^29.7.0" - checksum: b41f193fb697d3ced134349250aed6ccea075e48c4f803159db102b826a4e473397c68c31118259868fd69a5cba70e97e1c26d2c2ff716ca39dc73a2ccec037e + checksum: 10c0/b41f193fb697d3ced134349250aed6ccea075e48c4f803159db102b826a4e473397c68c31118259868fd69a5cba70e97e1c26d2c2ff716ca39dc73a2ccec037e languageName: node linkType: hard @@ -2097,7 +2097,7 @@ __metadata: jest-message-util: "npm:^29.7.0" jest-mock: "npm:^29.7.0" jest-util: "npm:^29.7.0" - checksum: cf0a8bcda801b28dc2e2b2ba36302200ee8104a45ad7a21e6c234148932f826cb3bc57c8df3b7b815aeea0861d7b6ca6f0d4778f93b9219398ef28749e03595c + checksum: 10c0/cf0a8bcda801b28dc2e2b2ba36302200ee8104a45ad7a21e6c234148932f826cb3bc57c8df3b7b815aeea0861d7b6ca6f0d4778f93b9219398ef28749e03595c languageName: node linkType: hard @@ -2109,7 +2109,7 @@ __metadata: "@jest/expect": "npm:^29.7.0" "@jest/types": "npm:^29.6.3" jest-mock: "npm:^29.7.0" - checksum: a385c99396878fe6e4460c43bd7bb0a5cc52befb462cc6e7f2a3810f9e7bcce7cdeb51908fd530391ee452dc856c98baa2c5f5fa8a5b30b071d31ef7f6955cea + checksum: 10c0/a385c99396878fe6e4460c43bd7bb0a5cc52befb462cc6e7f2a3810f9e7bcce7cdeb51908fd530391ee452dc856c98baa2c5f5fa8a5b30b071d31ef7f6955cea languageName: node linkType: hard @@ -2146,7 +2146,7 @@ __metadata: peerDependenciesMeta: node-notifier: optional: true - checksum: a754402a799541c6e5aff2c8160562525e2a47e7d568f01ebfc4da66522de39cbb809bbb0a841c7052e4270d79214e70aec3c169e4eae42a03bc1a8a20cb9fa2 + checksum: 10c0/a754402a799541c6e5aff2c8160562525e2a47e7d568f01ebfc4da66522de39cbb809bbb0a841c7052e4270d79214e70aec3c169e4eae42a03bc1a8a20cb9fa2 languageName: node linkType: hard @@ -2155,7 +2155,7 @@ __metadata: resolution: "@jest/schemas@npm:29.6.3" dependencies: "@sinclair/typebox": "npm:^0.27.8" - checksum: b329e89cd5f20b9278ae1233df74016ebf7b385e0d14b9f4c1ad18d096c4c19d1e687aa113a9c976b16ec07f021ae53dea811fb8c1248a50ac34fbe009fdf6be + checksum: 10c0/b329e89cd5f20b9278ae1233df74016ebf7b385e0d14b9f4c1ad18d096c4c19d1e687aa113a9c976b16ec07f021ae53dea811fb8c1248a50ac34fbe009fdf6be languageName: node linkType: hard @@ -2166,7 +2166,7 @@ __metadata: "@jridgewell/trace-mapping": "npm:^0.3.18" callsites: "npm:^3.0.0" graceful-fs: "npm:^4.2.9" - checksum: a2f177081830a2e8ad3f2e29e20b63bd40bade294880b595acf2fc09ec74b6a9dd98f126a2baa2bf4941acd89b13a4ade5351b3885c224107083a0059b60a219 + checksum: 10c0/a2f177081830a2e8ad3f2e29e20b63bd40bade294880b595acf2fc09ec74b6a9dd98f126a2baa2bf4941acd89b13a4ade5351b3885c224107083a0059b60a219 languageName: node linkType: hard @@ -2178,7 +2178,7 @@ __metadata: "@jest/types": "npm:^29.6.3" "@types/istanbul-lib-coverage": "npm:^2.0.0" collect-v8-coverage: "npm:^1.0.0" - checksum: 7de54090e54a674ca173470b55dc1afdee994f2d70d185c80236003efd3fa2b753fff51ffcdda8e2890244c411fd2267529d42c4a50a8303755041ee493e6a04 + checksum: 10c0/7de54090e54a674ca173470b55dc1afdee994f2d70d185c80236003efd3fa2b753fff51ffcdda8e2890244c411fd2267529d42c4a50a8303755041ee493e6a04 languageName: node linkType: hard @@ -2190,7 +2190,7 @@ __metadata: graceful-fs: "npm:^4.2.9" jest-haste-map: "npm:^29.7.0" slash: "npm:^3.0.0" - checksum: 593a8c4272797bb5628984486080cbf57aed09c7cfdc0a634e8c06c38c6bef329c46c0016e84555ee55d1cd1f381518cf1890990ff845524c1123720c8c1481b + checksum: 10c0/593a8c4272797bb5628984486080cbf57aed09c7cfdc0a634e8c06c38c6bef329c46c0016e84555ee55d1cd1f381518cf1890990ff845524c1123720c8c1481b languageName: node linkType: hard @@ -2213,7 +2213,7 @@ __metadata: pirates: "npm:^4.0.4" slash: "npm:^3.0.0" write-file-atomic: "npm:^4.0.2" - checksum: 7f4a7f73dcf45dfdf280c7aa283cbac7b6e5a904813c3a93ead7e55873761fc20d5c4f0191d2019004fac6f55f061c82eb3249c2901164ad80e362e7a7ede5a6 + checksum: 10c0/7f4a7f73dcf45dfdf280c7aa283cbac7b6e5a904813c3a93ead7e55873761fc20d5c4f0191d2019004fac6f55f061c82eb3249c2901164ad80e362e7a7ede5a6 languageName: node linkType: hard @@ -2227,7 +2227,7 @@ __metadata: "@types/node": "npm:*" "@types/yargs": "npm:^17.0.8" chalk: "npm:^4.0.0" - checksum: ea4e493dd3fb47933b8ccab201ae573dcc451f951dc44ed2a86123cd8541b82aa9d2b1031caf9b1080d6673c517e2dcc25a44b2dc4f3fbc37bfc965d444888c0 + checksum: 10c0/ea4e493dd3fb47933b8ccab201ae573dcc451f951dc44ed2a86123cd8541b82aa9d2b1031caf9b1080d6673c517e2dcc25a44b2dc4f3fbc37bfc965d444888c0 languageName: node linkType: hard @@ -2238,21 +2238,21 @@ __metadata: "@jridgewell/set-array": "npm:^1.0.1" "@jridgewell/sourcemap-codec": "npm:^1.4.10" "@jridgewell/trace-mapping": "npm:^0.3.9" - checksum: 376fc11cf5a967318ba3ddd9d8e91be528eab6af66810a713c49b0c3f8dc67e9949452c51c38ab1b19aa618fb5e8594da5a249977e26b1e7fea1ee5a1fcacc74 + checksum: 10c0/376fc11cf5a967318ba3ddd9d8e91be528eab6af66810a713c49b0c3f8dc67e9949452c51c38ab1b19aa618fb5e8594da5a249977e26b1e7fea1ee5a1fcacc74 languageName: node linkType: hard "@jridgewell/resolve-uri@npm:^3.1.0": version: 3.1.1 resolution: "@jridgewell/resolve-uri@npm:3.1.1" - checksum: 0dbc9e29bc640bbbdc5b9876d2859c69042bfcf1423c1e6421bcca53e826660bff4e41c7d4bcb8dbea696404231a6f902f76ba41835d049e20f2dd6cffb713bf + checksum: 10c0/0dbc9e29bc640bbbdc5b9876d2859c69042bfcf1423c1e6421bcca53e826660bff4e41c7d4bcb8dbea696404231a6f902f76ba41835d049e20f2dd6cffb713bf languageName: node linkType: hard "@jridgewell/set-array@npm:^1.0.1": version: 1.1.2 resolution: "@jridgewell/set-array@npm:1.1.2" - checksum: bc7ab4c4c00470de4e7562ecac3c0c84f53e7ee8a711e546d67c47da7febe7c45cd67d4d84ee3c9b2c05ae8e872656cdded8a707a283d30bd54fbc65aef821ab + checksum: 10c0/bc7ab4c4c00470de4e7562ecac3c0c84f53e7ee8a711e546d67c47da7febe7c45cd67d4d84ee3c9b2c05ae8e872656cdded8a707a283d30bd54fbc65aef821ab languageName: node linkType: hard @@ -2262,14 +2262,14 @@ __metadata: dependencies: "@jridgewell/gen-mapping": "npm:^0.3.0" "@jridgewell/trace-mapping": "npm:^0.3.9" - checksum: b985d9ebd833a21a6e9ace820c8a76f60345a34d9e28d98497c16b6e93ce1f131bff0abd45f8585f14aa382cce678ed680d628c631b40a9616a19cfbc2049b68 + checksum: 10c0/b985d9ebd833a21a6e9ace820c8a76f60345a34d9e28d98497c16b6e93ce1f131bff0abd45f8585f14aa382cce678ed680d628c631b40a9616a19cfbc2049b68 languageName: node linkType: hard "@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.15": version: 1.4.15 resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" - checksum: 0c6b5ae663087558039052a626d2d7ed5208da36cfd707dcc5cea4a07cfc918248403dcb5989a8f7afaf245ce0573b7cc6fd94c4a30453bd10e44d9363940ba5 + checksum: 10c0/0c6b5ae663087558039052a626d2d7ed5208da36cfd707dcc5cea4a07cfc918248403dcb5989a8f7afaf245ce0573b7cc6fd94c4a30453bd10e44d9363940ba5 languageName: node linkType: hard @@ -2279,7 +2279,7 @@ __metadata: dependencies: "@jridgewell/resolve-uri": "npm:^3.1.0" "@jridgewell/sourcemap-codec": "npm:^1.4.14" - checksum: 0ea0b2675cf513ec44dc25605616a3c9b808b9832e74b5b63c44260d66b58558bba65764f81928fc1033ead911f8718dca1134049c3e7a93937faf436671df31 + checksum: 10c0/0ea0b2675cf513ec44dc25605616a3c9b808b9832e74b5b63c44260d66b58558bba65764f81928fc1033ead911f8718dca1134049c3e7a93937faf436671df31 languageName: node linkType: hard @@ -2299,7 +2299,7 @@ __metadata: "@formatjs/intl-pluralrules": "npm:^5.2.2" "@gamestdio/websocket": "npm:^0.3.2" "@github/webauthn-json": "npm:^2.1.1" - "@rails/ujs": "npm:^7.1.1" + "@rails/ujs": "npm:7.1.3-2" "@reduxjs/toolkit": "npm:^2.0.1" "@svgr/webpack": "npm:^5.5.0" "@testing-library/jest-dom": "npm:^6.0.0" @@ -2334,9 +2334,8 @@ __metadata: "@types/redux-immutable": "npm:^4.0.3" "@types/requestidlecallback": "npm:^0.3.5" "@types/webpack": "npm:^4.41.33" - "@types/yargs": "npm:^17.0.24" - "@typescript-eslint/eslint-plugin": "npm:^6.0.0" - "@typescript-eslint/parser": "npm:^6.17.0" + "@typescript-eslint/eslint-plugin": "npm:^7.0.0" + "@typescript-eslint/parser": "npm:^7.0.0" arrow-key-navigation: "npm:^1.2.0" async-mutex: "npm:^0.4.0" autoprefixer: "npm:^10.4.14" @@ -2361,14 +2360,12 @@ __metadata: emoji-mart: "npm:emoji-mart-lazyload@latest" escape-html: "npm:^1.0.3" eslint: "npm:^8.41.0" - eslint-config-prettier: "npm:^9.0.0" eslint-define-config: "npm:^2.0.0" eslint-import-resolver-typescript: "npm:^3.5.5" eslint-plugin-formatjs: "npm:^4.10.1" eslint-plugin-import: "npm:~2.29.0" eslint-plugin-jsdoc: "npm:^48.0.0" eslint-plugin-jsx-a11y: "npm:~6.8.0" - eslint-plugin-prettier: "npm:^5.0.0" eslint-plugin-promise: "npm:~6.1.1" eslint-plugin-react: "npm:^7.33.2" eslint-plugin-react-hooks: "npm:^4.6.0" @@ -2379,7 +2376,7 @@ __metadata: history: "npm:^4.10.1" hoist-non-react-statics: "npm:^3.3.2" http-link-header: "npm:^1.1.1" - husky: "npm:^8.0.3" + husky: "npm:^9.0.11" immutable: "npm:^4.3.0" imports-loader: "npm:^1.2.0" intl-messageformat: "npm:^10.3.5" @@ -2391,7 +2388,6 @@ __metadata: mark-loader: "npm:^0.1.6" marky: "npm:^1.2.5" mini-css-extract-plugin: "npm:^1.6.2" - mkdirp: "npm:^3.0.1" path-complete-extname: "npm:^1.0.0" postcss: "npm:^8.4.24" postcss-loader: "npm:^4.3.0" @@ -2422,7 +2418,6 @@ __metadata: redux-immutable: "npm:^4.0.0" regenerator-runtime: "npm:^0.14.0" requestidlecallback: "npm:^0.3.0" - rimraf: "npm:^5.0.1" sass: "npm:^1.62.1" sass-loader: "npm:^10.2.0" stacktrace-js: "npm:^2.0.2" @@ -2448,7 +2443,6 @@ __metadata: workbox-strategies: "npm:^7.0.0" workbox-webpack-plugin: "npm:^7.0.0" workbox-window: "npm:^7.0.0" - yargs: "npm:^17.7.2" peerDependenciesMeta: react: optional: true @@ -2499,14 +2493,14 @@ __metadata: dependencies: "@nodelib/fs.stat": "npm:2.0.5" run-parallel: "npm:^1.1.9" - checksum: 732c3b6d1b1e967440e65f284bd06e5821fedf10a1bea9ed2bb75956ea1f30e08c44d3def9d6a230666574edbaf136f8cfd319c14fd1f87c66e6a44449afb2eb + checksum: 10c0/732c3b6d1b1e967440e65f284bd06e5821fedf10a1bea9ed2bb75956ea1f30e08c44d3def9d6a230666574edbaf136f8cfd319c14fd1f87c66e6a44449afb2eb languageName: node linkType: hard "@nodelib/fs.stat@npm:2.0.5, @nodelib/fs.stat@npm:^2.0.2": version: 2.0.5 resolution: "@nodelib/fs.stat@npm:2.0.5" - checksum: 88dafe5e3e29a388b07264680dc996c17f4bda48d163a9d4f5c1112979f0ce8ec72aa7116122c350b4e7976bc5566dc3ddb579be1ceaacc727872eb4ed93926d + checksum: 10c0/88dafe5e3e29a388b07264680dc996c17f4bda48d163a9d4f5c1112979f0ce8ec72aa7116122c350b4e7976bc5566dc3ddb579be1ceaacc727872eb4ed93926d languageName: node linkType: hard @@ -2516,7 +2510,7 @@ __metadata: dependencies: "@nodelib/fs.scandir": "npm:2.1.5" fastq: "npm:^1.6.0" - checksum: db9de047c3bb9b51f9335a7bb46f4fcfb6829fb628318c12115fbaf7d369bfce71c15b103d1fc3b464812d936220ee9bc1c8f762d032c9f6be9acc99249095b1 + checksum: 10c0/db9de047c3bb9b51f9335a7bb46f4fcfb6829fb628318c12115fbaf7d369bfce71c15b103d1fc3b464812d936220ee9bc1c8f762d032c9f6be9acc99249095b1 languageName: node linkType: hard @@ -2529,7 +2523,7 @@ __metadata: https-proxy-agent: "npm:^7.0.1" lru-cache: "npm:^10.0.1" socks-proxy-agent: "npm:^8.0.1" - checksum: 7b89590598476dda88e79c473766b67c682aae6e0ab0213491daa6083dcc0c171f86b3868f5506f22c09aa5ea69ad7dfb78f4bf39a8dca375d89a42f408645b3 + checksum: 10c0/7b89590598476dda88e79c473766b67c682aae6e0ab0213491daa6083dcc0c171f86b3868f5506f22c09aa5ea69ad7dfb78f4bf39a8dca375d89a42f408645b3 languageName: node linkType: hard @@ -2539,7 +2533,7 @@ __metadata: dependencies: "@gar/promisify": "npm:^1.0.1" semver: "npm:^7.3.5" - checksum: 4143c317a7542af9054018b71601e3c3392e6704e884561229695f099a71336cbd580df9a9ffb965d0024bf0ed593189ab58900fd1714baef1c9ee59c738c3e2 + checksum: 10c0/4143c317a7542af9054018b71601e3c3392e6704e884561229695f099a71336cbd580df9a9ffb965d0024bf0ed593189ab58900fd1714baef1c9ee59c738c3e2 languageName: node linkType: hard @@ -2548,7 +2542,7 @@ __metadata: resolution: "@npmcli/fs@npm:3.1.0" dependencies: semver: "npm:^7.3.5" - checksum: 162b4a0b8705cd6f5c2470b851d1dc6cd228c86d2170e1769d738c1fbb69a87160901411c3c035331e9e99db72f1f1099a8b734bf1637cc32b9a5be1660e4e1e + checksum: 10c0/162b4a0b8705cd6f5c2470b851d1dc6cd228c86d2170e1769d738c1fbb69a87160901411c3c035331e9e99db72f1f1099a8b734bf1637cc32b9a5be1660e4e1e languageName: node linkType: hard @@ -2558,65 +2552,51 @@ __metadata: dependencies: mkdirp: "npm:^1.0.4" rimraf: "npm:^3.0.2" - checksum: 02e946f3dafcc6743132fe2e0e2b585a96ca7265653a38df5a3e53fcf26c7c7a57fc0f861d7c689a23fdb6d6836c7eea5050c8086abf3c994feb2208d1514ff0 + checksum: 10c0/02e946f3dafcc6743132fe2e0e2b585a96ca7265653a38df5a3e53fcf26c7c7a57fc0f861d7c689a23fdb6d6836c7eea5050c8086abf3c994feb2208d1514ff0 languageName: node linkType: hard "@opentelemetry/api@npm:^1.4.0": version: 1.6.0 resolution: "@opentelemetry/api@npm:1.6.0" - checksum: f419853358fdd7d9bad51dfeea5a676d7894e7983633448d1022b867e979bc28083181e000e477ee53efda97895dd6a357e15392ac39ac8dfdc42dd194e0f17e + checksum: 10c0/f419853358fdd7d9bad51dfeea5a676d7894e7983633448d1022b867e979bc28083181e000e477ee53efda97895dd6a357e15392ac39ac8dfdc42dd194e0f17e languageName: node linkType: hard "@pkgjs/parseargs@npm:^0.11.0": version: 0.11.0 resolution: "@pkgjs/parseargs@npm:0.11.0" - checksum: 5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd - languageName: node - linkType: hard - -"@pkgr/utils@npm:^2.4.2": - version: 2.4.2 - resolution: "@pkgr/utils@npm:2.4.2" - dependencies: - cross-spawn: "npm:^7.0.3" - fast-glob: "npm:^3.3.0" - is-glob: "npm:^4.0.3" - open: "npm:^9.1.0" - picocolors: "npm:^1.0.0" - tslib: "npm:^2.6.0" - checksum: 7c3e68f6405a1d4c51f418d8d580e71d7bade2683d5db07e8413d8e57f7e389047eda44a2341f77a1b3085895fca7676a9d45e8812a58312524f8c4c65d501be + checksum: 10c0/5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd languageName: node linkType: hard "@polka/url@npm:^1.0.0-next.20": version: 1.0.0-next.21 resolution: "@polka/url@npm:1.0.0-next.21" - checksum: 53c1f28683a075aac41f8ce2a54eb952b6bc67a03494b2dca1cb63d833a6da898cea6a92df8e1e6b680db985fb7f9c16e11c20afa6584bcdda68a16fb4c18737 + checksum: 10c0/53c1f28683a075aac41f8ce2a54eb952b6bc67a03494b2dca1cb63d833a6da898cea6a92df8e1e6b680db985fb7f9c16e11c20afa6584bcdda68a16fb4c18737 languageName: node linkType: hard "@popperjs/core@npm:^2.11.6": version: 2.11.8 resolution: "@popperjs/core@npm:2.11.8" - checksum: 4681e682abc006d25eb380d0cf3efc7557043f53b6aea7a5057d0d1e7df849a00e281cd8ea79c902a35a414d7919621fc2ba293ecec05f413598e0b23d5a1e63 + checksum: 10c0/4681e682abc006d25eb380d0cf3efc7557043f53b6aea7a5057d0d1e7df849a00e281cd8ea79c902a35a414d7919621fc2ba293ecec05f413598e0b23d5a1e63 languageName: node linkType: hard -"@rails/ujs@npm:^7.1.1": - version: 7.1.3 - resolution: "@rails/ujs@npm:7.1.3" - checksum: 68112d9add9dbc59b40c2ec1bc095a67445c57d20d0ab7d817ce3de0cd90374e2690af8ad54ce6ecc2d1c748b34c0c44d0fbd2f515ce2c443d7c5d23d00b9ce5 +"@rails/ujs@npm:7.1.3-2": + version: 7.1.3-2 + resolution: "@rails/ujs@npm:7.1.3-2" + checksum: 10c0/8bd5b3a409c62f53790ed7e914f1f48235f461a472da7b4ce1d9ad57356fcdeaa7891c946298f7f620ff0ff7c6d5b995bf44057929c4fce796867a8cf4f27c99 languageName: node linkType: hard "@reduxjs/toolkit@npm:^2.0.1": - version: 2.0.1 - resolution: "@reduxjs/toolkit@npm:2.0.1" + version: 2.2.1 + resolution: "@reduxjs/toolkit@npm:2.2.1" dependencies: immer: "npm:^10.0.3" - redux: "npm:^5.0.0" + redux: "npm:^5.0.1" redux-thunk: "npm:^3.1.0" reselect: "npm:^5.0.1" peerDependencies: @@ -2627,7 +2607,7 @@ __metadata: optional: true react-redux: optional: true - checksum: 161b9b8e11d9688890ab97b604a4c10c0d41b1369425a5fa821586932db4cd5a391d15799732b3612e6120a6336458ff577ff254219315c05ecd68da5d15fd79 + checksum: 10c0/675f816b311d6d703259e00c73977c9c5968e41b039d6d149e34e9084d5e6718aff3b692d2b7697974fb57a056687932117da1dd5202d392811d8d4e91d09322 languageName: node linkType: hard @@ -2638,7 +2618,7 @@ __metadata: dequal: "npm:^2.0.2" peerDependencies: react: ">=16.8.0" - checksum: 2f34918bc3174a399b9d7f0f43abec505a494da33f787e612581a35b71fdc3ca5064772e991ac4a6991db31ce3e1fde0e1facbe24e80489a44e1a09f79d7a619 + checksum: 10c0/2f34918bc3174a399b9d7f0f43abec505a494da33f787e612581a35b71fdc3ca5064772e991ac4a6991db31ce3e1fde0e1facbe24e80489a44e1a09f79d7a619 languageName: node linkType: hard @@ -2655,7 +2635,7 @@ __metadata: peerDependenciesMeta: "@types/babel__core": optional: true - checksum: 2766134dd5567c0d4fd6909d1f511ce9bf3bd9d727e1bc5ffdd6097a3606faca324107ae8e0961839ee4dbb45e5e579ae601efe472fc0a271259aea79920cafa + checksum: 10c0/2766134dd5567c0d4fd6909d1f511ce9bf3bd9d727e1bc5ffdd6097a3606faca324107ae8e0961839ee4dbb45e5e579ae601efe472fc0a271259aea79920cafa languageName: node linkType: hard @@ -2671,7 +2651,7 @@ __metadata: resolve: "npm:^1.19.0" peerDependencies: rollup: ^1.20.0||^2.0.0 - checksum: a8226b01352ee1f7133b1b59b3906267e11c99020a55e3b7a313e03889f790d1cd94e7f7769d3963261e897c3265082533ba595976f8e3f08cf70aa88bf1ddd7 + checksum: 10c0/a8226b01352ee1f7133b1b59b3906267e11c99020a55e3b7a313e03889f790d1cd94e7f7769d3963261e897c3265082533ba595976f8e3f08cf70aa88bf1ddd7 languageName: node linkType: hard @@ -2683,7 +2663,7 @@ __metadata: magic-string: "npm:^0.25.7" peerDependencies: rollup: ^1.20.0 || ^2.0.0 - checksum: ea3d27291c791661638b91809d0247dde1ee71be0b16fa7060078c2700db3669eada2c3978ea979b917b29ebe06f3fddc8797feae554da966264a22142b5771a + checksum: 10c0/ea3d27291c791661638b91809d0247dde1ee71be0b16fa7060078c2700db3669eada2c3978ea979b917b29ebe06f3fddc8797feae554da966264a22142b5771a languageName: node linkType: hard @@ -2696,14 +2676,14 @@ __metadata: picomatch: "npm:^2.2.2" peerDependencies: rollup: ^1.20.0||^2.0.0 - checksum: 7151753160d15ba2b259461a6c25b3932150994ea52dba8fd3144f634c7647c2e56733d986e2c15de67c4d96a9ee7d6278efa6d2e626a7169898fd64adc0f90c + checksum: 10c0/7151753160d15ba2b259461a6c25b3932150994ea52dba8fd3144f634c7647c2e56733d986e2c15de67c4d96a9ee7d6278efa6d2e626a7169898fd64adc0f90c languageName: node linkType: hard "@sinclair/typebox@npm:^0.27.8": version: 0.27.8 resolution: "@sinclair/typebox@npm:0.27.8" - checksum: ef6351ae073c45c2ac89494dbb3e1f87cc60a93ce4cde797b782812b6f97da0d620ae81973f104b43c9b7eaa789ad20ba4f6a1359f1cc62f63729a55a7d22d4e + checksum: 10c0/ef6351ae073c45c2ac89494dbb3e1f87cc60a93ce4cde797b782812b6f97da0d620ae81973f104b43c9b7eaa789ad20ba4f6a1359f1cc62f63729a55a7d22d4e languageName: node linkType: hard @@ -2712,7 +2692,7 @@ __metadata: resolution: "@sinonjs/commons@npm:3.0.0" dependencies: type-detect: "npm:4.0.8" - checksum: 1df9cd257942f4e4960dfb9fd339d9e97b6a3da135f3d5b8646562918e863809cb8e00268535f4f4723535d2097881c8fc03d545c414d8555183376cfc54ee84 + checksum: 10c0/1df9cd257942f4e4960dfb9fd339d9e97b6a3da135f3d5b8646562918e863809cb8e00268535f4f4723535d2097881c8fc03d545c414d8555183376cfc54ee84 languageName: node linkType: hard @@ -2721,7 +2701,7 @@ __metadata: resolution: "@sinonjs/fake-timers@npm:10.3.0" dependencies: "@sinonjs/commons": "npm:^3.0.0" - checksum: 2e2fb6cc57f227912814085b7b01fede050cd4746ea8d49a1e44d5a0e56a804663b0340ae2f11af7559ea9bf4d087a11f2f646197a660ea3cb04e19efc04aa63 + checksum: 10c0/2e2fb6cc57f227912814085b7b01fede050cd4746ea8d49a1e44d5a0e56a804663b0340ae2f11af7559ea9bf4d087a11f2f646197a660ea3cb04e19efc04aa63 languageName: node linkType: hard @@ -2733,63 +2713,63 @@ __metadata: json5: "npm:^2.2.0" magic-string: "npm:^0.25.0" string.prototype.matchall: "npm:^4.0.6" - checksum: 4f36a7488cdae2907053a48231430e8e9aa8f1903a96131bf8325786afba3224011f9120164cae75043558bd051881050b071958388fe477927d340b1cc1a066 + checksum: 10c0/4f36a7488cdae2907053a48231430e8e9aa8f1903a96131bf8325786afba3224011f9120164cae75043558bd051881050b071958388fe477927d340b1cc1a066 languageName: node linkType: hard "@svgr/babel-plugin-add-jsx-attribute@npm:^5.4.0": version: 5.4.0 resolution: "@svgr/babel-plugin-add-jsx-attribute@npm:5.4.0" - checksum: f7f7681f0353a265c85a9fa0a6682c2c39c2eba35d6c855bbf25ea9739b339bf1fdd826b61fb3875642bf607c77bf41e6a66a97a4f07fb6e84bd521a363749e5 + checksum: 10c0/f7f7681f0353a265c85a9fa0a6682c2c39c2eba35d6c855bbf25ea9739b339bf1fdd826b61fb3875642bf607c77bf41e6a66a97a4f07fb6e84bd521a363749e5 languageName: node linkType: hard "@svgr/babel-plugin-remove-jsx-attribute@npm:^5.4.0": version: 5.4.0 resolution: "@svgr/babel-plugin-remove-jsx-attribute@npm:5.4.0" - checksum: 0562c4c1597aecab0248fbd250e45e630de373307468568b7508c78d315a93f29920dffad2f5f54aad8e2aad9da440e16867e54961f3e6402d9855e5fc836948 + checksum: 10c0/0562c4c1597aecab0248fbd250e45e630de373307468568b7508c78d315a93f29920dffad2f5f54aad8e2aad9da440e16867e54961f3e6402d9855e5fc836948 languageName: node linkType: hard "@svgr/babel-plugin-remove-jsx-empty-expression@npm:^5.0.1": version: 5.0.1 resolution: "@svgr/babel-plugin-remove-jsx-empty-expression@npm:5.0.1" - checksum: 80e2d736528ee553f54916acb9a9a0414e4a06730df420fb2a14788446125728abcb5125bfca6b15ce6fd99771397160f02ec95828871777c1a7803fcf258a44 + checksum: 10c0/80e2d736528ee553f54916acb9a9a0414e4a06730df420fb2a14788446125728abcb5125bfca6b15ce6fd99771397160f02ec95828871777c1a7803fcf258a44 languageName: node linkType: hard "@svgr/babel-plugin-replace-jsx-attribute-value@npm:^5.0.1": version: 5.0.1 resolution: "@svgr/babel-plugin-replace-jsx-attribute-value@npm:5.0.1" - checksum: fb9e267ba961a0daf1f37f2954552617e09ad1d8e97f033aefc28d2a7d7824831318a5324e8e873341b53c9bb10a0c266665c7871251fd0dd2a8294fe1546fac + checksum: 10c0/fb9e267ba961a0daf1f37f2954552617e09ad1d8e97f033aefc28d2a7d7824831318a5324e8e873341b53c9bb10a0c266665c7871251fd0dd2a8294fe1546fac languageName: node linkType: hard "@svgr/babel-plugin-svg-dynamic-title@npm:^5.4.0": version: 5.4.0 resolution: "@svgr/babel-plugin-svg-dynamic-title@npm:5.4.0" - checksum: e6d1a1ef2f4b91473152bf5153a6857585857e7f0e7897df2d18e14d567811814a5590c9d10d80cf3f2964a5b7bd93d3e4cbd15c8d006c5dd83d4e6839646636 + checksum: 10c0/e6d1a1ef2f4b91473152bf5153a6857585857e7f0e7897df2d18e14d567811814a5590c9d10d80cf3f2964a5b7bd93d3e4cbd15c8d006c5dd83d4e6839646636 languageName: node linkType: hard "@svgr/babel-plugin-svg-em-dimensions@npm:^5.4.0": version: 5.4.0 resolution: "@svgr/babel-plugin-svg-em-dimensions@npm:5.4.0" - checksum: 1dc247f376ed110d1407b96c1c919c0bfa2907cd02b2eaa98d40209f21f1ff3602a46f0eb0528e514826a843dc411c06ed251cf8c691efbc961f0cbe0aaf860d + checksum: 10c0/1dc247f376ed110d1407b96c1c919c0bfa2907cd02b2eaa98d40209f21f1ff3602a46f0eb0528e514826a843dc411c06ed251cf8c691efbc961f0cbe0aaf860d languageName: node linkType: hard "@svgr/babel-plugin-transform-react-native-svg@npm:^5.4.0": version: 5.4.0 resolution: "@svgr/babel-plugin-transform-react-native-svg@npm:5.4.0" - checksum: 3ad2f074d0e5857d07758492d0c98d1d862f2def9fab48939c69c5a3c4387065d01b0e8ac62c53a402a9ce09ed3de099bdf41cd2a597e7d58ddf47fb3a3b2c3e + checksum: 10c0/3ad2f074d0e5857d07758492d0c98d1d862f2def9fab48939c69c5a3c4387065d01b0e8ac62c53a402a9ce09ed3de099bdf41cd2a597e7d58ddf47fb3a3b2c3e languageName: node linkType: hard "@svgr/babel-plugin-transform-svg-component@npm:^5.5.0": version: 5.5.0 resolution: "@svgr/babel-plugin-transform-svg-component@npm:5.5.0" - checksum: 73bfb09933d4a85a0ee8ec364684a0915a9ce05e668d024c073369cc36d78dcde41ddcdb493dde6440f5ee5649ed75b95ac8add226eaee32b20dc54894ac2974 + checksum: 10c0/73bfb09933d4a85a0ee8ec364684a0915a9ce05e668d024c073369cc36d78dcde41ddcdb493dde6440f5ee5649ed75b95ac8add226eaee32b20dc54894ac2974 languageName: node linkType: hard @@ -2805,7 +2785,7 @@ __metadata: "@svgr/babel-plugin-svg-em-dimensions": "npm:^5.4.0" "@svgr/babel-plugin-transform-react-native-svg": "npm:^5.4.0" "@svgr/babel-plugin-transform-svg-component": "npm:^5.5.0" - checksum: a737592044ee3aea22506fa7178464fc0e1e6e6f3005cbc8db12d6963f18b8a097c97a2d4ede93dd1d3309074f84f47272924614cd74d2c7900c649f0356e349 + checksum: 10c0/a737592044ee3aea22506fa7178464fc0e1e6e6f3005cbc8db12d6963f18b8a097c97a2d4ede93dd1d3309074f84f47272924614cd74d2c7900c649f0356e349 languageName: node linkType: hard @@ -2816,7 +2796,7 @@ __metadata: "@svgr/plugin-jsx": "npm:^5.5.0" camelcase: "npm:^6.2.0" cosmiconfig: "npm:^7.0.0" - checksum: a8f8ac7f829ea92a6d0305c746afb33feba3b1c7000e6f22d83b8bad13fdcd5aacc3ebde60330368830eebf23ff3090ddd3ef959d41a90d694f4b7914aea6686 + checksum: 10c0/a8f8ac7f829ea92a6d0305c746afb33feba3b1c7000e6f22d83b8bad13fdcd5aacc3ebde60330368830eebf23ff3090ddd3ef959d41a90d694f4b7914aea6686 languageName: node linkType: hard @@ -2825,7 +2805,7 @@ __metadata: resolution: "@svgr/hast-util-to-babel-ast@npm:5.5.0" dependencies: "@babel/types": "npm:^7.12.6" - checksum: 1758afd99594b094ec3d0966ba0e81e5ca8acea075801b8a93c5e97269b046eca1fd8dac7c7efbc3b5775e2496adb6880530fd1d6ccaaf8792afd567773a4f64 + checksum: 10c0/1758afd99594b094ec3d0966ba0e81e5ca8acea075801b8a93c5e97269b046eca1fd8dac7c7efbc3b5775e2496adb6880530fd1d6ccaaf8792afd567773a4f64 languageName: node linkType: hard @@ -2837,7 +2817,7 @@ __metadata: "@svgr/babel-preset": "npm:^5.5.0" "@svgr/hast-util-to-babel-ast": "npm:^5.5.0" svg-parser: "npm:^2.0.2" - checksum: 96f84139dae94cdda7e24896ab23e9d41e699fc8ecbbd11e280604eb7a67dfec55f126ec12ea3c622b8df6b0fccce5eb261d96f6ca8c59366d3963f13e411ec6 + checksum: 10c0/96f84139dae94cdda7e24896ab23e9d41e699fc8ecbbd11e280604eb7a67dfec55f126ec12ea3c622b8df6b0fccce5eb261d96f6ca8c59366d3963f13e411ec6 languageName: node linkType: hard @@ -2848,7 +2828,7 @@ __metadata: cosmiconfig: "npm:^7.0.0" deepmerge: "npm:^4.2.2" svgo: "npm:^1.2.2" - checksum: 7494f7417ac339422f4eb2219489badaa51cdd79de2b5b3ff772c602036c5a38faf92fdefaab47414175f7c83406c4db195c35e619aae88d0573d7b199ec4503 + checksum: 10c0/7494f7417ac339422f4eb2219489badaa51cdd79de2b5b3ff772c602036c5a38faf92fdefaab47414175f7c83406c4db195c35e619aae88d0573d7b199ec4503 languageName: node linkType: hard @@ -2864,7 +2844,7 @@ __metadata: "@svgr/plugin-jsx": "npm:^5.5.0" "@svgr/plugin-svgo": "npm:^5.5.0" loader-utils: "npm:^2.0.0" - checksum: 0313712a1892f387d8c425652239dd635269241b18e7e6f9aad6a339cbe887ebec813d146df23407229384ac5e9d6527f3571aa2fc9dcb30e32006c9eb918663 + checksum: 10c0/0313712a1892f387d8c425652239dd635269241b18e7e6f9aad6a339cbe887ebec813d146df23407229384ac5e9d6527f3571aa2fc9dcb30e32006c9eb918663 languageName: node linkType: hard @@ -2880,13 +2860,13 @@ __metadata: dom-accessibility-api: "npm:^0.5.9" lz-string: "npm:^1.5.0" pretty-format: "npm:^27.0.2" - checksum: 25d1deddba014c107fd9703181fbb7063ed376d3ad42d7918ee752e7e677edfb5abaf672b22afc5257ffe760c9c7e5cc981656297c328bc61578d23c6b65b4dc + checksum: 10c0/25d1deddba014c107fd9703181fbb7063ed376d3ad42d7918ee752e7e677edfb5abaf672b22afc5257ffe760c9c7e5cc981656297c328bc61578d23c6b65b4dc languageName: node linkType: hard "@testing-library/jest-dom@npm:^6.0.0": - version: 6.4.0 - resolution: "@testing-library/jest-dom@npm:6.4.0" + version: 6.4.2 + resolution: "@testing-library/jest-dom@npm:6.4.2" dependencies: "@adobe/css-tools": "npm:^4.3.2" "@babel/runtime": "npm:^7.9.2" @@ -2913,13 +2893,13 @@ __metadata: optional: true vitest: optional: true - checksum: 6b7eba9ca388986a721fb12f84adf0f5534bf7ec5851982023a889c4a0afac6e9e91291bdac39e1f59a05adefd7727e30463d98b21c3da32fbfec229ccb11ef1 + checksum: 10c0/e7eba527b34ce30cde94424d2ec685bdfed51daaafb7df9b68b51aec6052e99a50c8bfe654612dacdf857a1eb81d68cf294fc89de558ee3a992bf7a6019fffcc languageName: node linkType: hard "@testing-library/react@npm:^14.0.0": - version: 14.1.2 - resolution: "@testing-library/react@npm:14.1.2" + version: 14.2.1 + resolution: "@testing-library/react@npm:14.2.1" dependencies: "@babel/runtime": "npm:^7.12.5" "@testing-library/dom": "npm:^9.0.0" @@ -2927,28 +2907,28 @@ __metadata: peerDependencies: react: ^18.0.0 react-dom: ^18.0.0 - checksum: b5b0990d3aa0ea8b37c55804e0d5d584fc638a5c7d4df90da9a0fdb00bc981b27b6991468b2dc719982a5d0b0107a41596063ce51ad519eeab47b22bc04d6779 + checksum: 10c0/83b35cf8bf5640f1b63b32223ebc75799dc1a8e034d819120b26838fba0b0ab10bdbe6ad07dd8ae8287365f2b0c52dc9892a6fa11bb24d3e63ad97dfb7f2f296 languageName: node linkType: hard "@tootallnate/once@npm:2": version: 2.0.0 resolution: "@tootallnate/once@npm:2.0.0" - checksum: 073bfa548026b1ebaf1659eb8961e526be22fa77139b10d60e712f46d2f0f05f4e6c8bec62a087d41088ee9e29faa7f54838568e475ab2f776171003c3920858 + checksum: 10c0/073bfa548026b1ebaf1659eb8961e526be22fa77139b10d60e712f46d2f0f05f4e6c8bec62a087d41088ee9e29faa7f54838568e475ab2f776171003c3920858 languageName: node linkType: hard "@trysound/sax@npm:0.2.0": version: 0.2.0 resolution: "@trysound/sax@npm:0.2.0" - checksum: 44907308549ce775a41c38a815f747009ac45929a45d642b836aa6b0a536e4978d30b8d7d680bbd116e9dd73b7dbe2ef0d1369dcfc2d09e83ba381e485ecbe12 + checksum: 10c0/44907308549ce775a41c38a815f747009ac45929a45d642b836aa6b0a536e4978d30b8d7d680bbd116e9dd73b7dbe2ef0d1369dcfc2d09e83ba381e485ecbe12 languageName: node linkType: hard "@types/aria-query@npm:^5.0.1": version: 5.0.1 resolution: "@types/aria-query@npm:5.0.1" - checksum: bc9e40ce37bd3a1654948778c7829bd55aea1bc5f2cd06fcf6cd650b07bb388995799e9aab6e2d93a6cf55dcba3b85c155f7ba93adefcc7c2e152fc6057061b5 + checksum: 10c0/bc9e40ce37bd3a1654948778c7829bd55aea1bc5f2cd06fcf6cd650b07bb388995799e9aab6e2d93a6cf55dcba3b85c155f7ba93adefcc7c2e152fc6057061b5 languageName: node linkType: hard @@ -2961,7 +2941,7 @@ __metadata: "@types/babel__generator": "npm:*" "@types/babel__template": "npm:*" "@types/babel__traverse": "npm:*" - checksum: bdee3bb69951e833a4b811b8ee9356b69a61ed5b7a23e1a081ec9249769117fa83aaaf023bb06562a038eb5845155ff663e2d5c75dd95c1d5ccc91db012868ff + checksum: 10c0/bdee3bb69951e833a4b811b8ee9356b69a61ed5b7a23e1a081ec9249769117fa83aaaf023bb06562a038eb5845155ff663e2d5c75dd95c1d5ccc91db012868ff languageName: node linkType: hard @@ -2970,7 +2950,7 @@ __metadata: resolution: "@types/babel__generator@npm:7.6.6" dependencies: "@babel/types": "npm:^7.0.0" - checksum: 214d8b170e0eb04282d0e9dfda2c27116f64751729479786c2bf1b7ec22a5e9e5bbeb70585f047b0fd580d7d8948dc2108223c5a16e998d9674de0582d4e23d7 + checksum: 10c0/214d8b170e0eb04282d0e9dfda2c27116f64751729479786c2bf1b7ec22a5e9e5bbeb70585f047b0fd580d7d8948dc2108223c5a16e998d9674de0582d4e23d7 languageName: node linkType: hard @@ -2979,7 +2959,7 @@ __metadata: resolution: "@types/babel__helper-plugin-utils@npm:7.10.2" dependencies: "@types/babel__core": "npm:*" - checksum: 1c544e33b30ccfc02254b9fe090c52880c8bb05e5406f525bfdce71ce34e93677276f788b93e9fa5e1a16f6317b97e59a07d8a92bf4726d8f4639a0045ebb590 + checksum: 10c0/1c544e33b30ccfc02254b9fe090c52880c8bb05e5406f525bfdce71ce34e93677276f788b93e9fa5e1a16f6317b97e59a07d8a92bf4726d8f4639a0045ebb590 languageName: node linkType: hard @@ -2989,7 +2969,7 @@ __metadata: dependencies: "@babel/parser": "npm:^7.1.0" "@babel/types": "npm:^7.0.0" - checksum: f989bd918e1ebfcc6e68c72a3818b7518049673c4e7ba31b11c10d5d3064261c534f3d2f3097f82f80d5fc58f56f3633c21ddf0332552a926a488c105d042c45 + checksum: 10c0/f989bd918e1ebfcc6e68c72a3818b7518049673c4e7ba31b11c10d5d3064261c534f3d2f3097f82f80d5fc58f56f3633c21ddf0332552a926a488c105d042c45 languageName: node linkType: hard @@ -2998,7 +2978,7 @@ __metadata: resolution: "@types/babel__traverse@npm:7.20.3" dependencies: "@babel/types": "npm:^7.20.7" - checksum: 295ed9b837e62e17ee43be0df45d90fff5208986bd43af593c9020d152d3b2c55328e038c2f8585926b63cc22f887f28bf3f4c805aa881e2dd0bdd5ead92ece0 + checksum: 10c0/295ed9b837e62e17ee43be0df45d90fff5208986bd43af593c9020d152d3b2c55328e038c2f8585926b63cc22f887f28bf3f4c805aa881e2dd0bdd5ead92ece0 languageName: node linkType: hard @@ -3008,7 +2988,7 @@ __metadata: dependencies: "@types/connect": "npm:*" "@types/node": "npm:*" - checksum: aebeb200f25e8818d8cf39cd0209026750d77c9b85381cdd8deeb50913e4d18a1ebe4b74ca9b0b4d21952511eeaba5e9fbbf739b52731a2061e206ec60d568df + checksum: 10c0/aebeb200f25e8818d8cf39cd0209026750d77c9b85381cdd8deeb50913e4d18a1ebe4b74ca9b0b4d21952511eeaba5e9fbbf739b52731a2061e206ec60d568df languageName: node linkType: hard @@ -3017,7 +2997,7 @@ __metadata: resolution: "@types/connect@npm:3.4.38" dependencies: "@types/node": "npm:*" - checksum: 2e1cdba2c410f25649e77856505cd60223250fa12dff7a503e492208dbfdd25f62859918f28aba95315251fd1f5e1ffbfca1e25e73037189ab85dd3f8d0a148c + checksum: 10c0/2e1cdba2c410f25649e77856505cd60223250fa12dff7a503e492208dbfdd25f62859918f28aba95315251fd1f5e1ffbfca1e25e73037189ab85dd3f8d0a148c languageName: node linkType: hard @@ -3026,7 +3006,7 @@ __metadata: resolution: "@types/cors@npm:2.8.17" dependencies: "@types/node": "npm:*" - checksum: 457364c28c89f3d9ed34800e1de5c6eaaf344d1bb39af122f013322a50bc606eb2aa6f63de4e41a7a08ba7ef454473926c94a830636723da45bf786df032696d + checksum: 10c0/457364c28c89f3d9ed34800e1de5c6eaaf344d1bb39af122f013322a50bc606eb2aa6f63de4e41a7a08ba7ef454473926c94a830636723da45bf786df032696d languageName: node linkType: hard @@ -3035,14 +3015,14 @@ __metadata: resolution: "@types/emoji-mart@npm:3.0.14" dependencies: "@types/react": "npm:*" - checksum: 23ded65fce9b3355fbe903d3971cb67cc827a5d587464bb7e3f349615527ef4a9197b3bb59fa84c4391d1b901e7f200f686a7fc83f649ae2a51a0fb948cbadfb + checksum: 10c0/23ded65fce9b3355fbe903d3971cb67cc827a5d587464bb7e3f349615527ef4a9197b3bb59fa84c4391d1b901e7f200f686a7fc83f649ae2a51a0fb948cbadfb languageName: node linkType: hard "@types/escape-html@npm:^1.0.2": version: 1.0.4 resolution: "@types/escape-html@npm:1.0.4" - checksum: 5cdae9d38e97b1ad61180528ef7ca66bf6be96e875cc560c3e064d6ca75ccf2adaf2fa3b7bdd4f7494013e4357a2fb0bb62f2e59ca53097d5c45c7519d0ce9c3 + checksum: 10c0/5cdae9d38e97b1ad61180528ef7ca66bf6be96e875cc560c3e064d6ca75ccf2adaf2fa3b7bdd4f7494013e4357a2fb0bb62f2e59ca53097d5c45c7519d0ce9c3 languageName: node linkType: hard @@ -3052,21 +3032,21 @@ __metadata: dependencies: "@types/estree": "npm:*" "@types/json-schema": "npm:*" - checksum: fc449107eb186bdc5d30149bbcb4e673af8530afdeacca3b89f14deefcbfc67463157d6a81b42cd9df92ddeafda5351853d13310ff7ac6ab0d9769ac7cc0cc3a + checksum: 10c0/fc449107eb186bdc5d30149bbcb4e673af8530afdeacca3b89f14deefcbfc67463157d6a81b42cd9df92ddeafda5351853d13310ff7ac6ab0d9769ac7cc0cc3a languageName: node linkType: hard "@types/estree@npm:*": version: 1.0.3 resolution: "@types/estree@npm:1.0.3" - checksum: 5171f467fdd77852e28d7eec575222bc6c900e117a44e916a5ff65807ae8e1ed15f57d21e8954d6bd532e37c49a8ecfee730fcb152b7b44234d38681978b2caa + checksum: 10c0/5171f467fdd77852e28d7eec575222bc6c900e117a44e916a5ff65807ae8e1ed15f57d21e8954d6bd532e37c49a8ecfee730fcb152b7b44234d38681978b2caa languageName: node linkType: hard "@types/estree@npm:0.0.39": version: 0.0.39 resolution: "@types/estree@npm:0.0.39" - checksum: f0af6c95ac1988c4827964bd9d3b51d24da442e2188943f6dfcb1e1559103d5d024d564b2e9d3f84c53714a02a0a7435c7441138eb63d9af5de4dfc66cdc0d92 + checksum: 10c0/f0af6c95ac1988c4827964bd9d3b51d24da442e2188943f6dfcb1e1559103d5d024d564b2e9d3f84c53714a02a0a7435c7441138eb63d9af5de4dfc66cdc0d92 languageName: node linkType: hard @@ -3078,7 +3058,7 @@ __metadata: "@types/qs": "npm:*" "@types/range-parser": "npm:*" "@types/send": "npm:*" - checksum: dc166cbf4475c00a81fbcab120bf7477c527184be11ae149df7f26d9c1082114c68f8d387a2926fe80291b06477c8bbd9231ff4f5775de328e887695aefce269 + checksum: 10c0/dc166cbf4475c00a81fbcab120bf7477c527184be11ae149df7f26d9c1082114c68f8d387a2926fe80291b06477c8bbd9231ff4f5775de328e887695aefce269 languageName: node linkType: hard @@ -3090,7 +3070,7 @@ __metadata: "@types/express-serve-static-core": "npm:^4.17.33" "@types/qs": "npm:*" "@types/serve-static": "npm:*" - checksum: 12e562c4571da50c7d239e117e688dc434db1bac8be55613294762f84fd77fbd0658ccd553c7d3ab02408f385bc93980992369dd30e2ecd2c68c358e6af8fabf + checksum: 10c0/12e562c4571da50c7d239e117e688dc434db1bac8be55613294762f84fd77fbd0658ccd553c7d3ab02408f385bc93980992369dd30e2ecd2c68c358e6af8fabf languageName: node linkType: hard @@ -3100,7 +3080,7 @@ __metadata: dependencies: "@types/minimatch": "npm:*" "@types/node": "npm:*" - checksum: a8eb5d5cb5c48fc58c7ca3ff1e1ddf771ee07ca5043da6e4871e6757b4472e2e73b4cfef2644c38983174a4bc728c73f8da02845c28a1212f98cabd293ecae98 + checksum: 10c0/a8eb5d5cb5c48fc58c7ca3ff1e1ddf771ee07ca5043da6e4871e6757b4472e2e73b4cfef2644c38983174a4bc728c73f8da02845c28a1212f98cabd293ecae98 languageName: node linkType: hard @@ -3109,14 +3089,14 @@ __metadata: resolution: "@types/graceful-fs@npm:4.1.6" dependencies: "@types/node": "npm:*" - checksum: b1d32c5ae7bd52cf60e29df20407904c4312a39612e7ec2ee23c1e3731c1cfe31d97c6941bf6cb52f5f929d50d86d92dd506436b63fafa833181d439b628885e + checksum: 10c0/b1d32c5ae7bd52cf60e29df20407904c4312a39612e7ec2ee23c1e3731c1cfe31d97c6941bf6cb52f5f929d50d86d92dd506436b63fafa833181d439b628885e languageName: node linkType: hard "@types/history@npm:^4.7.11": version: 4.7.11 resolution: "@types/history@npm:4.7.11" - checksum: 3facf37c2493d1f92b2e93a22cac7ea70b06351c2ab9aaceaa3c56aa6099fb63516f6c4ec1616deb5c56b4093c026a043ea2d3373e6c0644d55710364d02c934 + checksum: 10c0/3facf37c2493d1f92b2e93a22cac7ea70b06351c2ab9aaceaa3c56aa6099fb63516f6c4ec1616deb5c56b4093c026a043ea2d3373e6c0644d55710364d02c934 languageName: node linkType: hard @@ -3126,14 +3106,14 @@ __metadata: dependencies: "@types/react": "npm:*" hoist-non-react-statics: "npm:^3.3.0" - checksum: 2a3b64bf3d9817d7830afa60ee314493c475fb09570a64e7737084cd482d2177ebdddf888ce837350bac51741278b077683facc9541f052d4bbe8487b4e3e618 + checksum: 10c0/2a3b64bf3d9817d7830afa60ee314493c475fb09570a64e7737084cd482d2177ebdddf888ce837350bac51741278b077683facc9541f052d4bbe8487b4e3e618 languageName: node linkType: hard "@types/http-errors@npm:*": version: 2.0.4 resolution: "@types/http-errors@npm:2.0.4" - checksum: 494670a57ad4062fee6c575047ad5782506dd35a6b9ed3894cea65830a94367bd84ba302eb3dde331871f6d70ca287bfedb1b2cf658e6132cd2cbd427ab56836 + checksum: 10c0/494670a57ad4062fee6c575047ad5782506dd35a6b9ed3894cea65830a94367bd84ba302eb3dde331871f6d70ca287bfedb1b2cf658e6132cd2cbd427ab56836 languageName: node linkType: hard @@ -3142,21 +3122,21 @@ __metadata: resolution: "@types/http-link-header@npm:1.0.5" dependencies: "@types/node": "npm:*" - checksum: adeb13381b38c3625478149820772924c154b4a7250dca62c346810a8378f8968fc7f3a9a4f55ec61de5d06083637540f862c8a920f6a710310c9645d19a077d + checksum: 10c0/adeb13381b38c3625478149820772924c154b4a7250dca62c346810a8378f8968fc7f3a9a4f55ec61de5d06083637540f862c8a920f6a710310c9645d19a077d languageName: node linkType: hard "@types/intl@npm:^1.2.0": version: 1.2.2 resolution: "@types/intl@npm:1.2.2" - checksum: f465c320139c01dfc9ae1382406259fd23f6a455aad31517f61b7fd79bdde493e854d6666c2198ae644d8cf6e147e78831ea810f83a787f65b765bc56834f259 + checksum: 10c0/f465c320139c01dfc9ae1382406259fd23f6a455aad31517f61b7fd79bdde493e854d6666c2198ae644d8cf6e147e78831ea810f83a787f65b765bc56834f259 languageName: node linkType: hard "@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0, @types/istanbul-lib-coverage@npm:^2.0.1": version: 2.0.5 resolution: "@types/istanbul-lib-coverage@npm:2.0.5" - checksum: e15cfc01a7ac60062f771314c959011bae7de7ceaef8e294f13427a11f21741cbfac98ad8cd9ecbf0e3d72ab7ddc327bacb3fab32c6b26ab19dbbbc1a69a9d3b + checksum: 10c0/e15cfc01a7ac60062f771314c959011bae7de7ceaef8e294f13427a11f21741cbfac98ad8cd9ecbf0e3d72ab7ddc327bacb3fab32c6b26ab19dbbbc1a69a9d3b languageName: node linkType: hard @@ -3165,7 +3145,7 @@ __metadata: resolution: "@types/istanbul-lib-report@npm:3.0.2" dependencies: "@types/istanbul-lib-coverage": "npm:*" - checksum: c168e425c95c167d83c7cbd65ff6b620cc53c5ef199a58428758586bbc28faf5c51291667e4455777b47ada12381e53fce7b92e32f431f85d8ac8025074d1908 + checksum: 10c0/c168e425c95c167d83c7cbd65ff6b620cc53c5ef199a58428758586bbc28faf5c51291667e4455777b47ada12381e53fce7b92e32f431f85d8ac8025074d1908 languageName: node linkType: hard @@ -3174,24 +3154,24 @@ __metadata: resolution: "@types/istanbul-reports@npm:3.0.3" dependencies: "@types/istanbul-lib-report": "npm:*" - checksum: dcd8291370d9192aa980bf849309a7ca27e1d030ccc5e7edeef47d6612c2d57d611855543b9ffeb982d162a5ab2a44d8b40baa4dc93c1d7aa6fbcaeb16e69e78 + checksum: 10c0/dcd8291370d9192aa980bf849309a7ca27e1d030ccc5e7edeef47d6612c2d57d611855543b9ffeb982d162a5ab2a44d8b40baa4dc93c1d7aa6fbcaeb16e69e78 languageName: node linkType: hard "@types/jest@npm:^29.5.2": - version: 29.5.11 - resolution: "@types/jest@npm:29.5.11" + version: 29.5.12 + resolution: "@types/jest@npm:29.5.12" dependencies: expect: "npm:^29.0.0" pretty-format: "npm:^29.0.0" - checksum: 524a3394845214581278bf4d75055927261fbeac7e1a89cd621bd0636da37d265fe0a85eac58b5778758faad1cbd7c7c361dfc190c78ebde03a91cce33463261 + checksum: 10c0/25fc8e4c611fa6c4421e631432e9f0a6865a8cb07c9815ec9ac90d630271cad773b2ee5fe08066f7b95bebd18bb967f8ce05d018ee9ab0430f9dfd1d84665b6f languageName: node linkType: hard "@types/js-yaml@npm:^4.0.5": version: 4.0.9 resolution: "@types/js-yaml@npm:4.0.9" - checksum: 24de857aa8d61526bbfbbaa383aa538283ad17363fcd5bb5148e2c7f604547db36646440e739d78241ed008702a8920665d1add5618687b6743858fae00da211 + checksum: 10c0/24de857aa8d61526bbfbbaa383aa538283ad17363fcd5bb5148e2c7f604547db36646440e739d78241ed008702a8920665d1add5618687b6743858fae00da211 languageName: node linkType: hard @@ -3202,56 +3182,56 @@ __metadata: "@types/node": "npm:*" "@types/tough-cookie": "npm:*" parse5: "npm:^7.0.0" - checksum: 3d4b2a3eab145674ee6da482607c5e48977869109f0f62560bf91ae1a792c9e847ac7c6aaf243ed2e97333cb3c51aef314ffa54a19ef174b8f9592dfcb836b25 + checksum: 10c0/3d4b2a3eab145674ee6da482607c5e48977869109f0f62560bf91ae1a792c9e847ac7c6aaf243ed2e97333cb3c51aef314ffa54a19ef174b8f9592dfcb836b25 languageName: node linkType: hard "@types/json-schema@npm:*, @types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8": version: 7.0.14 resolution: "@types/json-schema@npm:7.0.14" - checksum: da68689ccd44cb93ca4c9a4af3b25c6091ecf45fb370d1ed0d0ac5b780e235bf0b9bdc1f7e28f19e6713b22567c3db11fefcbcc6d48ac6b356d035a8f9f4ea30 + checksum: 10c0/da68689ccd44cb93ca4c9a4af3b25c6091ecf45fb370d1ed0d0ac5b780e235bf0b9bdc1f7e28f19e6713b22567c3db11fefcbcc6d48ac6b356d035a8f9f4ea30 languageName: node linkType: hard "@types/json-stable-stringify@npm:^1.0.32": version: 1.0.35 resolution: "@types/json-stable-stringify@npm:1.0.35" - checksum: 67b50a86478f932c932ba21515b80700a8844d55e0656b3abe2c32c41c1c405c70fcd10b30ff8f38d1869871af2deae63ffdea54ce72cc2ee92e94a9d1cf2b6f + checksum: 10c0/67b50a86478f932c932ba21515b80700a8844d55e0656b3abe2c32c41c1c405c70fcd10b30ff8f38d1869871af2deae63ffdea54ce72cc2ee92e94a9d1cf2b6f languageName: node linkType: hard "@types/json5@npm:^0.0.29": version: 0.0.29 resolution: "@types/json5@npm:0.0.29" - checksum: 6bf5337bc447b706bb5b4431d37686aa2ea6d07cfd6f79cc31de80170d6ff9b1c7384a9c0ccbc45b3f512bae9e9f75c2e12109806a15331dc94e8a8db6dbb4ac + checksum: 10c0/6bf5337bc447b706bb5b4431d37686aa2ea6d07cfd6f79cc31de80170d6ff9b1c7384a9c0ccbc45b3f512bae9e9f75c2e12109806a15331dc94e8a8db6dbb4ac languageName: node linkType: hard "@types/lodash@npm:^4.14.195": version: 4.14.202 resolution: "@types/lodash@npm:4.14.202" - checksum: 6064d43c8f454170841bd67c8266cc9069d9e570a72ca63f06bceb484cb4a3ee60c9c1f305c1b9e3a87826049fd41124b8ef265c4dd08b00f6766609c7fe9973 + checksum: 10c0/6064d43c8f454170841bd67c8266cc9069d9e570a72ca63f06bceb484cb4a3ee60c9c1f305c1b9e3a87826049fd41124b8ef265c4dd08b00f6766609c7fe9973 languageName: node linkType: hard "@types/mime@npm:*": version: 3.0.4 resolution: "@types/mime@npm:3.0.4" - checksum: db478bc0f99e40f7b3e01d356a9bdf7817060808a294978111340317bcd80ca35382855578c5b60fbc84ae449674bd9bb38427b18417e1f8f19e4f72f8b242cd + checksum: 10c0/db478bc0f99e40f7b3e01d356a9bdf7817060808a294978111340317bcd80ca35382855578c5b60fbc84ae449674bd9bb38427b18417e1f8f19e4f72f8b242cd languageName: node linkType: hard "@types/mime@npm:^1": version: 1.3.5 resolution: "@types/mime@npm:1.3.5" - checksum: c2ee31cd9b993804df33a694d5aa3fa536511a49f2e06eeab0b484fef59b4483777dbb9e42a4198a0809ffbf698081fdbca1e5c2218b82b91603dfab10a10fbc + checksum: 10c0/c2ee31cd9b993804df33a694d5aa3fa536511a49f2e06eeab0b484fef59b4483777dbb9e42a4198a0809ffbf698081fdbca1e5c2218b82b91603dfab10a10fbc languageName: node linkType: hard "@types/minimatch@npm:*": version: 5.1.2 resolution: "@types/minimatch@npm:5.1.2" - checksum: 83cf1c11748891b714e129de0585af4c55dd4c2cafb1f1d5233d79246e5e1e19d1b5ad9e8db449667b3ffa2b6c80125c429dbee1054e9efb45758dbc4e118562 + checksum: 10c0/83cf1c11748891b714e129de0585af4c55dd4c2cafb1f1d5233d79246e5e1e19d1b5ad9e8db449667b3ffa2b6c80125c429dbee1054e9efb45758dbc4e118562 languageName: node linkType: hard @@ -3260,97 +3240,97 @@ __metadata: resolution: "@types/node@npm:20.8.10" dependencies: undici-types: "npm:~5.26.4" - checksum: caaa3ae9294f1bfdacb029a916c64af63cbcea613a52f53ea86f93c91779859af177b2b68113ef835194519f5e76cadda08559929b68297f1a8a568c207f9f66 + checksum: 10c0/caaa3ae9294f1bfdacb029a916c64af63cbcea613a52f53ea86f93c91779859af177b2b68113ef835194519f5e76cadda08559929b68297f1a8a568c207f9f66 languageName: node linkType: hard "@types/node@npm:14 || 16 || 17": version: 17.0.45 resolution: "@types/node@npm:17.0.45" - checksum: 0db377133d709b33a47892581a21a41cd7958f22723a3cc6c71d55ac018121382de42fbfc7970d5ae3e7819dbe5f40e1c6a5174aedf7e7964e9cb8fa72b580b0 + checksum: 10c0/0db377133d709b33a47892581a21a41cd7958f22723a3cc6c71d55ac018121382de42fbfc7970d5ae3e7819dbe5f40e1c6a5174aedf7e7964e9cb8fa72b580b0 languageName: node linkType: hard "@types/object-assign@npm:^4.0.30": version: 4.0.33 resolution: "@types/object-assign@npm:4.0.33" - checksum: 7fbc399aa1140beff35a152e206bfb336dd880721f4a13cc1ea01d964ab376fa4ca2c19059145cbd777c9d3eaf724008faec8cf3becff97353c69560196af086 + checksum: 10c0/7fbc399aa1140beff35a152e206bfb336dd880721f4a13cc1ea01d964ab376fa4ca2c19059145cbd777c9d3eaf724008faec8cf3becff97353c69560196af086 languageName: node linkType: hard "@types/parse-json@npm:^4.0.0": version: 4.0.1 resolution: "@types/parse-json@npm:4.0.1" - checksum: 6851183c2ffe4aff607f034f6b5325ebc81ff90409132e2d59fe6cae030d7064593e521d75cda017d9f6b696a7e19d26d1703f366b3e7cbfec8c825331c79c31 + checksum: 10c0/6851183c2ffe4aff607f034f6b5325ebc81ff90409132e2d59fe6cae030d7064593e521d75cda017d9f6b696a7e19d26d1703f366b3e7cbfec8c825331c79c31 languageName: node linkType: hard "@types/pg@npm:^8.6.6": - version: 8.10.9 - resolution: "@types/pg@npm:8.10.9" + version: 8.11.2 + resolution: "@types/pg@npm:8.11.2" dependencies: "@types/node": "npm:*" pg-protocol: "npm:*" pg-types: "npm:^4.0.1" - checksum: 6b3bec7230d09da6459636a66dfd6fb538378e466ffff0a0bcd07d67aa4ddce49c73afc7442f53adec92a49dbf9e71d8d847e0075750d7545331735dfd92d22c + checksum: 10c0/6d873af7f71785d5d4db49311c5c73628918b2b1ece83f17073c4470b2fce6bd24a37de23a42ea0221df4e1c7dc43ea035bb9d0b6274f86ec692b21503a9a55c languageName: node linkType: hard "@types/picomatch@npm:^2.3.0": version: 2.3.2 resolution: "@types/picomatch@npm:2.3.2" - checksum: 91445cfc0d07fe2a44c16ee284ab2e2a279da3f6df9c62ad61e7bc50343e47bef541369aff6110c4e51bd8fe501fc9c564deefbb4c03e392254889de6b46f237 + checksum: 10c0/91445cfc0d07fe2a44c16ee284ab2e2a279da3f6df9c62ad61e7bc50343e47bef541369aff6110c4e51bd8fe501fc9c564deefbb4c03e392254889de6b46f237 languageName: node linkType: hard "@types/prop-types@npm:*, @types/prop-types@npm:^15.7.5": version: 15.7.11 resolution: "@types/prop-types@npm:15.7.11" - checksum: e53423cf9d510515ef8b47ff42f4f1b65a7b7b37c8704e2dbfcb9a60defe0c0e1f3cb1acfdeb466bad44ca938d7c79bffdd51b48ffb659df2432169d0b27a132 + checksum: 10c0/e53423cf9d510515ef8b47ff42f4f1b65a7b7b37c8704e2dbfcb9a60defe0c0e1f3cb1acfdeb466bad44ca938d7c79bffdd51b48ffb659df2432169d0b27a132 languageName: node linkType: hard "@types/punycode@npm:^2.1.0": - version: 2.1.3 - resolution: "@types/punycode@npm:2.1.3" - checksum: c4babd33d0ed010017bc2d44a15b322b1e2997b9bb335020c26a58ac855e176d337536fa0ca84aa1b0c6d7008799566d4d5430a083d123ac6bbcc59c451b9cfc + version: 2.1.4 + resolution: "@types/punycode@npm:2.1.4" + checksum: 10c0/0472cc871783a22859ad83fe7cb62d23226ff78694b9807d2a3ec37571d46b05409ca9282c8ccedfb59e58e4a4561b27463623ce95bcfd6bd9c11ac1ef3cd0d1 languageName: node linkType: hard "@types/q@npm:^1.5.1": version: 1.5.7 resolution: "@types/q@npm:1.5.7" - checksum: 70ede8b114077e5f4cdec377c43f8b72306363b2248669c669b4484bdb9c4aaee051ccfcc49d21633486d9747d6b4f443c9ea51e4d0596a1993f86643d0b5530 + checksum: 10c0/70ede8b114077e5f4cdec377c43f8b72306363b2248669c669b4484bdb9c4aaee051ccfcc49d21633486d9747d6b4f443c9ea51e4d0596a1993f86643d0b5530 languageName: node linkType: hard "@types/qs@npm:*": version: 6.9.10 resolution: "@types/qs@npm:6.9.10" - checksum: 6be12e5f062d1b41eb037d59bf9cb65bc9410cedd5e6da832dfd7c8e2b3f4c91e81c9b90b51811140770e5052c6c4e8361181bd9437ddcd4515dc128b7c00353 + checksum: 10c0/6be12e5f062d1b41eb037d59bf9cb65bc9410cedd5e6da832dfd7c8e2b3f4c91e81c9b90b51811140770e5052c6c4e8361181bd9437ddcd4515dc128b7c00353 languageName: node linkType: hard "@types/rails__ujs@npm:^6.0.4": version: 6.0.4 resolution: "@types/rails__ujs@npm:6.0.4" - checksum: 7477cb03a0e1339b9cd5c8ac4a197a153e2ff48742b2f527c5a39dcdf80f01493011e368483290d3717662c63066fada3ab203a335804cbb3573cf575f37007e + checksum: 10c0/7477cb03a0e1339b9cd5c8ac4a197a153e2ff48742b2f527c5a39dcdf80f01493011e368483290d3717662c63066fada3ab203a335804cbb3573cf575f37007e languageName: node linkType: hard "@types/range-parser@npm:*": version: 1.2.7 resolution: "@types/range-parser@npm:1.2.7" - checksum: 361bb3e964ec5133fa40644a0b942279ed5df1949f21321d77de79f48b728d39253e5ce0408c9c17e4e0fd95ca7899da36841686393b9f7a1e209916e9381a3c + checksum: 10c0/361bb3e964ec5133fa40644a0b942279ed5df1949f21321d77de79f48b728d39253e5ce0408c9c17e4e0fd95ca7899da36841686393b9f7a1e209916e9381a3c languageName: node linkType: hard "@types/react-dom@npm:^18.0.0, @types/react-dom@npm:^18.2.4": - version: 18.2.18 - resolution: "@types/react-dom@npm:18.2.18" + version: 18.2.19 + resolution: "@types/react-dom@npm:18.2.19" dependencies: "@types/react": "npm:*" - checksum: 74dba11a1b8156f3a763f3fca1fb4ec1dcd349153279b8bf79210024a69f994bf2cf0728198c047f8130c5318420ea56281b0a4ef84c8ae943cd9a0cac705220 + checksum: 10c0/88d7c6daa4659f661d0c97985d9fca492f24b421a34bb614dcd94c343aed7bea121463149e97fb01ecaa693be17b7d1542cf71ddb1705f3889a81eb2639a88aa languageName: node linkType: hard @@ -3359,7 +3339,7 @@ __metadata: resolution: "@types/react-helmet@npm:6.1.11" dependencies: "@types/react": "npm:*" - checksum: f7b3bb2151d992a108ae46fed876fb9c8119108397d9a01d150c5642782997542c8b3c52e742b56e8689b7dbfa62ca9cfc76aa7e05dec4e60c652f7ef53fa783 + checksum: 10c0/f7b3bb2151d992a108ae46fed876fb9c8119108397d9a01d150c5642782997542c8b3c52e742b56e8689b7dbfa62ca9cfc76aa7e05dec4e60c652f7ef53fa783 languageName: node linkType: hard @@ -3369,7 +3349,7 @@ __metadata: dependencies: "@types/prop-types": "npm:*" immutable: "npm:^3.8.2" - checksum: 4dab74a43a2dde9bea6299a999dd600ae82f00082fe2b8865b11e5154e658f72fbb117132fa3753dd9a280dd8032a2574d8e7c94de5e268afdadd50d720086da + checksum: 10c0/4dab74a43a2dde9bea6299a999dd600ae82f00082fe2b8865b11e5154e658f72fbb117132fa3753dd9a280dd8032a2574d8e7c94de5e268afdadd50d720086da languageName: node linkType: hard @@ -3378,7 +3358,7 @@ __metadata: resolution: "@types/react-motion@npm:0.0.40" dependencies: "@types/react": "npm:*" - checksum: 8a560051be917833fdbe051185b53aeafbe8657968ac8e073ac874b9a55c6f16e3793748b13cfb9bd6d9a3d27aba116d6f8f296ec1950f4175dc94d17c5e8470 + checksum: 10c0/8a560051be917833fdbe051185b53aeafbe8657968ac8e073ac874b9a55c6f16e3793748b13cfb9bd6d9a3d27aba116d6f8f296ec1950f4175dc94d17c5e8470 languageName: node linkType: hard @@ -3387,7 +3367,7 @@ __metadata: resolution: "@types/react-overlays@npm:3.1.0" dependencies: react-overlays: "npm:*" - checksum: 99a4de7c56a286cf72dbf135ad6f9da7c095483987ab548ba7e63d1d885fd54939e78e8bd3dd3cf275a6f4c3d6bdcd00c6923c92cc6c3a4c9bacf5a55550f18b + checksum: 10c0/99a4de7c56a286cf72dbf135ad6f9da7c095483987ab548ba7e63d1d885fd54939e78e8bd3dd3cf275a6f4c3d6bdcd00c6923c92cc6c3a4c9bacf5a55550f18b languageName: node linkType: hard @@ -3398,7 +3378,7 @@ __metadata: "@types/history": "npm:^4.7.11" "@types/react": "npm:*" "@types/react-router": "npm:*" - checksum: a9231a16afb9ed5142678147eafec9d48582809295754fb60946e29fcd3757a4c7a3180fa94b45763e4c7f6e3f02379e2fcb8dd986db479dcab40eff5fc62a91 + checksum: 10c0/a9231a16afb9ed5142678147eafec9d48582809295754fb60946e29fcd3757a4c7a3180fa94b45763e4c7f6e3f02379e2fcb8dd986db479dcab40eff5fc62a91 languageName: node linkType: hard @@ -3408,7 +3388,7 @@ __metadata: dependencies: "@types/history": "npm:^4.7.11" "@types/react": "npm:*" - checksum: 1f7eee61981d2f807fa01a34a0ef98ebc0774023832b6611a69c7f28fdff01de5a38cabf399f32e376bf8099dcb7afaf724775bea9d38870224492bea4cb5737 + checksum: 10c0/1f7eee61981d2f807fa01a34a0ef98ebc0774023832b6611a69c7f28fdff01de5a38cabf399f32e376bf8099dcb7afaf724775bea9d38870224492bea4cb5737 languageName: node linkType: hard @@ -3417,7 +3397,7 @@ __metadata: resolution: "@types/react-select@npm:5.0.1" dependencies: react-select: "npm:*" - checksum: 6ea7f3beaebb38e537e5b742a0d8b49f212bdf1dade9f9ce5e3c91e24aad95284aeda0efc8a235e05a7102748f475c4476fb6830030b5574fdf19c3f1d908027 + checksum: 10c0/6ea7f3beaebb38e537e5b742a0d8b49f212bdf1dade9f9ce5e3c91e24aad95284aeda0efc8a235e05a7102748f475c4476fb6830030b5574fdf19c3f1d908027 languageName: node linkType: hard @@ -3426,7 +3406,7 @@ __metadata: resolution: "@types/react-sparklines@npm:1.7.5" dependencies: "@types/react": "npm:*" - checksum: acb0937ebc06019921ec5254fb125356f206038f5e2f244663eb849c692b6f6413f75ce3ee84be91d8c659ae43c8f743dd5c4397cdea65749cd601a495491242 + checksum: 10c0/acb0937ebc06019921ec5254fb125356f206038f5e2f244663eb849c692b6f6413f75ce3ee84be91d8c659ae43c8f743dd5c4397cdea65749cd601a495491242 languageName: node linkType: hard @@ -3435,7 +3415,7 @@ __metadata: resolution: "@types/react-swipeable-views@npm:0.13.5" dependencies: "@types/react": "npm:*" - checksum: d1dcc78d862f37d30a43d79d915fdb388e05dce0b2ac07462ca4f1b00e0eef37cb41d75997f5685dec79bcce1ffee0dfbc744f20d5266dd3090658def5b4e193 + checksum: 10c0/d1dcc78d862f37d30a43d79d915fdb388e05dce0b2ac07462ca4f1b00e0eef37cb41d75997f5685dec79bcce1ffee0dfbc744f20d5266dd3090658def5b4e193 languageName: node linkType: hard @@ -3444,7 +3424,7 @@ __metadata: resolution: "@types/react-test-renderer@npm:18.0.7" dependencies: "@types/react": "npm:*" - checksum: 45cbe963354acee2ab090979d856763c84f59ef7b63477d1fef5d0fd52760b69aa67bbd205fbd3bd36264620fce72c8e407735a9f2009c40ca50da59b0058c34 + checksum: 10c0/45cbe963354acee2ab090979d856763c84f59ef7b63477d1fef5d0fd52760b69aa67bbd205fbd3bd36264620fce72c8e407735a9f2009c40ca50da59b0058c34 languageName: node linkType: hard @@ -3453,7 +3433,7 @@ __metadata: resolution: "@types/react-textarea-autosize@npm:8.0.0" dependencies: react-textarea-autosize: "npm:*" - checksum: 8d6a40e53aa3452ddda53a2b9eb8668ffdfdabc8133d731a3ea2205309376f66fb7537832170def243520fefec70e02b7f05043cf4fdeac520b5883fbb66dc12 + checksum: 10c0/8d6a40e53aa3452ddda53a2b9eb8668ffdfdabc8133d731a3ea2205309376f66fb7537832170def243520fefec70e02b7f05043cf4fdeac520b5883fbb66dc12 languageName: node linkType: hard @@ -3462,7 +3442,7 @@ __metadata: resolution: "@types/react-toggle@npm:4.0.5" dependencies: "@types/react": "npm:*" - checksum: f557b85c96715b145bcc3beb2903f88ee3a6045ef85da0f80561c7cc2ecdc531e2d4ae121ed8ec3a1761264de25b8410653744093f37abf042201587add7ffa6 + checksum: 10c0/f557b85c96715b145bcc3beb2903f88ee3a6045ef85da0f80561c7cc2ecdc531e2d4ae121ed8ec3a1761264de25b8410653744093f37abf042201587add7ffa6 languageName: node linkType: hard @@ -3471,18 +3451,18 @@ __metadata: resolution: "@types/react-transition-group@npm:4.4.8" dependencies: "@types/react": "npm:*" - checksum: 6ef75e4ad25db1ad3547521aa11afd4ad887bb53cfc68bd83d6f2fd0483540cff5d78d68b663a0674698d7ac1a739d2d9dc91b82d82219d6c92e43e54f9cd69a + checksum: 10c0/6ef75e4ad25db1ad3547521aa11afd4ad887bb53cfc68bd83d6f2fd0483540cff5d78d68b663a0674698d7ac1a739d2d9dc91b82d82219d6c92e43e54f9cd69a languageName: node linkType: hard "@types/react@npm:*, @types/react@npm:16 || 17 || 18, @types/react@npm:>=16.9.11, @types/react@npm:^18.2.7": - version: 18.2.48 - resolution: "@types/react@npm:18.2.48" + version: 18.2.63 + resolution: "@types/react@npm:18.2.63" dependencies: "@types/prop-types": "npm:*" "@types/scheduler": "npm:*" csstype: "npm:^3.0.2" - checksum: 7e89f18ea2928b1638f564b156d692894dcb9352a7e0a807873c97e858abe1f23dbd165a25dd088a991344e973fdeef88ba5724bfb64504b74072cbc9c220c3a + checksum: 10c0/53d86727b966a3ba097553b5ef75a1f2bea78bd8c54ebcf6d00bd338000112b208ab30536c8c0a9f5fc61055cc3fbabbc7a23910c55092341602845de4c13714 languageName: node linkType: hard @@ -3492,14 +3472,14 @@ __metadata: dependencies: immutable: "npm:^4.0.0-rc.1" redux: "npm:^4.0.0" - checksum: 19972c307f2bbd31a201b28844224ce06e34917823cf2ded3c303cffcced273a2107c4186cc37af9db4f948204fc48c461e609b9f3d2719963049dedae3ebf82 + checksum: 10c0/19972c307f2bbd31a201b28844224ce06e34917823cf2ded3c303cffcced273a2107c4186cc37af9db4f948204fc48c461e609b9f3d2719963049dedae3ebf82 languageName: node linkType: hard "@types/requestidlecallback@npm:^0.3.5": version: 0.3.7 resolution: "@types/requestidlecallback@npm:0.3.7" - checksum: aa5d1d981d7ddc98b9212c75c89d2ddb2e521077d6c0c5e285d944a8c6ae8baeec30d4d201aec31716d668d3435f884e80e768e28d929a5b87a55097bc21a5e1 + checksum: 10c0/aa5d1d981d7ddc98b9212c75c89d2ddb2e521077d6c0c5e285d944a8c6ae8baeec30d4d201aec31716d668d3435f884e80e768e28d929a5b87a55097bc21a5e1 languageName: node linkType: hard @@ -3508,21 +3488,21 @@ __metadata: resolution: "@types/resolve@npm:1.17.1" dependencies: "@types/node": "npm:*" - checksum: 6eeb9c27d99bf4b393bf168d43208f63e78cefca5644662a0bdb2bdbf8352386f4f3aca66add138fc41bce5f66fd48a0de430a1473f11b612fbed0375ae78031 + checksum: 10c0/6eeb9c27d99bf4b393bf168d43208f63e78cefca5644662a0bdb2bdbf8352386f4f3aca66add138fc41bce5f66fd48a0de430a1473f11b612fbed0375ae78031 languageName: node linkType: hard "@types/scheduler@npm:*": version: 0.16.5 resolution: "@types/scheduler@npm:0.16.5" - checksum: 625b63cd5dcaf6fb88fe03aa7c797f28cb121f03584126d4811b2d03f39bc3e238ce52cf7685ad8adfe8445d679934e6be47347723a6771ca2058c01f0c33760 + checksum: 10c0/625b63cd5dcaf6fb88fe03aa7c797f28cb121f03584126d4811b2d03f39bc3e238ce52cf7685ad8adfe8445d679934e6be47347723a6771ca2058c01f0c33760 languageName: node linkType: hard "@types/semver@npm:^7.5.0": version: 7.5.4 resolution: "@types/semver@npm:7.5.4" - checksum: dee66a71d9f089c118be74b5937d4fef42864d68d9472a3f4f5399b9e3ad74d56a8e155020c846667b9ecf9de78fdb9ea55a53fff5067af28e06779b282b6c40 + checksum: 10c0/dee66a71d9f089c118be74b5937d4fef42864d68d9472a3f4f5399b9e3ad74d56a8e155020c846667b9ecf9de78fdb9ea55a53fff5067af28e06779b282b6c40 languageName: node linkType: hard @@ -3532,7 +3512,7 @@ __metadata: dependencies: "@types/mime": "npm:^1" "@types/node": "npm:*" - checksum: 7f17fa696cb83be0a104b04b424fdedc7eaba1c9a34b06027239aba513b398a0e2b7279778af521f516a397ced417c96960e5f50fcfce40c4bc4509fb1a5883c + checksum: 10c0/7f17fa696cb83be0a104b04b424fdedc7eaba1c9a34b06027239aba513b398a0e2b7279778af521f516a397ced417c96960e5f50fcfce40c4bc4509fb1a5883c languageName: node linkType: hard @@ -3543,42 +3523,42 @@ __metadata: "@types/http-errors": "npm:*" "@types/mime": "npm:*" "@types/node": "npm:*" - checksum: 811d1a2f7e74a872195e7a013bcd87a2fb1edf07eaedcb9dcfd20c1eb4bc56ad4ea0d52141c13192c91ccda7c8aeb8a530d8a7e60b9c27f5990d7e62e0fecb03 + checksum: 10c0/811d1a2f7e74a872195e7a013bcd87a2fb1edf07eaedcb9dcfd20c1eb4bc56ad4ea0d52141c13192c91ccda7c8aeb8a530d8a7e60b9c27f5990d7e62e0fecb03 languageName: node linkType: hard "@types/source-list-map@npm:*": version: 0.1.4 resolution: "@types/source-list-map@npm:0.1.4" - checksum: d08a191a1fa0549ef2bd0aafdff3973681de323315a011fef907ffdeb0cab534a6aa508b37333278e2a63f290afad6ee3e4e950594fb75b516e5b9b65af338bf + checksum: 10c0/d08a191a1fa0549ef2bd0aafdff3973681de323315a011fef907ffdeb0cab534a6aa508b37333278e2a63f290afad6ee3e4e950594fb75b516e5b9b65af338bf languageName: node linkType: hard "@types/stack-utils@npm:^2.0.0": version: 2.0.2 resolution: "@types/stack-utils@npm:2.0.2" - checksum: c2bf0de59ee0a1e2b2031e8a6225f412976377868c42a66537e284a020e9eb4068ed9b9da69d14c1727ab56e605532e877777c7d1bbfd3e9a42ae17bcef7d213 + checksum: 10c0/c2bf0de59ee0a1e2b2031e8a6225f412976377868c42a66537e284a020e9eb4068ed9b9da69d14c1727ab56e605532e877777c7d1bbfd3e9a42ae17bcef7d213 languageName: node linkType: hard "@types/tapable@npm:^1": version: 1.0.10 resolution: "@types/tapable@npm:1.0.10" - checksum: 414e0e94085f6a280d34eb44f8e2434a4029b8c4eb4903e01dcc58dae7f61fff403ace58dcd54ca543b318a4edb390cd4c3f7ff4504c97ef740fd681497f7b43 + checksum: 10c0/414e0e94085f6a280d34eb44f8e2434a4029b8c4eb4903e01dcc58dae7f61fff403ace58dcd54ca543b318a4edb390cd4c3f7ff4504c97ef740fd681497f7b43 languageName: node linkType: hard "@types/tough-cookie@npm:*": version: 4.0.2 resolution: "@types/tough-cookie@npm:4.0.2" - checksum: 38d01fc79a9a87166253b8c548bb401599424c57a818bea1b47a68be6dcd37fc3bff381f978354e00221f284937d5066bb92d58bf79952f9d21deb934e8ec9a7 + checksum: 10c0/38d01fc79a9a87166253b8c548bb401599424c57a818bea1b47a68be6dcd37fc3bff381f978354e00221f284937d5066bb92d58bf79952f9d21deb934e8ec9a7 languageName: node linkType: hard "@types/trusted-types@npm:^2.0.2": version: 2.0.3 resolution: "@types/trusted-types@npm:2.0.3" - checksum: 25eae736a8a6d24353c3e0108138935250f79d1d239f6fd6f3eb52d88476456ba946f8cb8f3130c6841d40534cafc2dd2326358d86966327c3c4a3d3eecaf585 + checksum: 10c0/25eae736a8a6d24353c3e0108138935250f79d1d239f6fd6f3eb52d88476456ba946f8cb8f3130c6841d40534cafc2dd2326358d86966327c3c4a3d3eecaf585 languageName: node linkType: hard @@ -3587,28 +3567,28 @@ __metadata: resolution: "@types/uglify-js@npm:3.17.3" dependencies: source-map: "npm:^0.6.1" - checksum: 718b7d6170acf2c2bb95e7cc9a1958c319d7d8f46633b3b9123a77bcf4801fd7c5d5719ebdb73e8fe1bfe261748bdd2238e65e2dfefc8f4632fa223542646821 + checksum: 10c0/718b7d6170acf2c2bb95e7cc9a1958c319d7d8f46633b3b9123a77bcf4801fd7c5d5719ebdb73e8fe1bfe261748bdd2238e65e2dfefc8f4632fa223542646821 languageName: node linkType: hard "@types/use-sync-external-store@npm:^0.0.3": version: 0.0.3 resolution: "@types/use-sync-external-store@npm:0.0.3" - checksum: 82824c1051ba40a00e3d47964cdf4546a224e95f172e15a9c62aa3f118acee1c7518b627a34f3aa87298a2039f982e8509f92bfcc18bea7c255c189c293ba547 + checksum: 10c0/82824c1051ba40a00e3d47964cdf4546a224e95f172e15a9c62aa3f118acee1c7518b627a34f3aa87298a2039f982e8509f92bfcc18bea7c255c189c293ba547 languageName: node linkType: hard "@types/uuid@npm:^9.0.0": - version: 9.0.7 - resolution: "@types/uuid@npm:9.0.7" - checksum: b329ebd4f9d1d8e08d4f2cc211be4922d70d1149f73d5772630e4a3acfb5170c6d37b3d7a39a0412f1a56e86e8a844c7f297c798b082f90380608bf766688787 + version: 9.0.8 + resolution: "@types/uuid@npm:9.0.8" + checksum: 10c0/b411b93054cb1d4361919579ef3508a1f12bf15b5fdd97337d3d351bece6c921b52b6daeef89b62340fd73fd60da407878432a1af777f40648cbe53a01723489 languageName: node linkType: hard "@types/warning@npm:^3.0.0": version: 3.0.2 resolution: "@types/warning@npm:3.0.2" - checksum: 84b76cea7b9455bd2a47129f27a5be1cc7a33f54466930abb3c220c93bbeae997c8b08a7b8d6569152a2f8b615b5b865bf4548556c09d2c61ca356a888bc522c + checksum: 10c0/84b76cea7b9455bd2a47129f27a5be1cc7a33f54466930abb3c220c93bbeae997c8b08a7b8d6569152a2f8b615b5b865bf4548556c09d2c61ca356a888bc522c languageName: node linkType: hard @@ -3619,7 +3599,7 @@ __metadata: "@types/node": "npm:*" "@types/source-list-map": "npm:*" source-map: "npm:^0.7.3" - checksum: 4c7a0bfdaa7c8dbed505c1de5bb3cc4a3d7a2f00f982948bc2f1795d46920465d412d62f8fc344a09b78a2c47a2782aad525b651be4018ae40be0f31748dfaf5 + checksum: 10c0/4c7a0bfdaa7c8dbed505c1de5bb3cc4a3d7a2f00f982948bc2f1795d46920465d412d62f8fc344a09b78a2c47a2782aad525b651be4018ae40be0f31748dfaf5 languageName: node linkType: hard @@ -3633,7 +3613,7 @@ __metadata: "@types/webpack-sources": "npm:*" anymatch: "npm:^3.0.0" source-map: "npm:^0.6.0" - checksum: 5a0a7465d45a0e7701a8c863e88c6cba7660b37e4aeab851c71baf505dbab2e178be1cac82488c2e7d0ea11fb703ceddb53476daec3ec9a004e2fc1554233483 + checksum: 10c0/5a0a7465d45a0e7701a8c863e88c6cba7660b37e4aeab851c71baf505dbab2e178be1cac82488c2e7d0ea11fb703ceddb53476daec3ec9a004e2fc1554233483 languageName: node linkType: hard @@ -3642,35 +3622,35 @@ __metadata: resolution: "@types/ws@npm:8.5.10" dependencies: "@types/node": "npm:*" - checksum: e9af279b984c4a04ab53295a40aa95c3e9685f04888df5c6920860d1dd073fcc57c7bd33578a04b285b2c655a0b52258d34bee0a20569dca8defb8393e1e5d29 + checksum: 10c0/e9af279b984c4a04ab53295a40aa95c3e9685f04888df5c6920860d1dd073fcc57c7bd33578a04b285b2c655a0b52258d34bee0a20569dca8defb8393e1e5d29 languageName: node linkType: hard "@types/yargs-parser@npm:*": version: 21.0.2 resolution: "@types/yargs-parser@npm:21.0.2" - checksum: 422b8c59e21d9594e5a94afa45a3692d96c14f8fc7554bb1c1c390276815f09996ce0f8ed11893b6f8b2efc4ced686231dca5be6d76a4c4ceb56534474e95aca + checksum: 10c0/422b8c59e21d9594e5a94afa45a3692d96c14f8fc7554bb1c1c390276815f09996ce0f8ed11893b6f8b2efc4ced686231dca5be6d76a4c4ceb56534474e95aca languageName: node linkType: hard -"@types/yargs@npm:^17.0.24, @types/yargs@npm:^17.0.8": +"@types/yargs@npm:^17.0.8": version: 17.0.32 resolution: "@types/yargs@npm:17.0.32" dependencies: "@types/yargs-parser": "npm:*" - checksum: 2095e8aad8a4e66b86147415364266b8d607a3b95b4239623423efd7e29df93ba81bb862784a6e08664f645cc1981b25fd598f532019174cd3e5e1e689e1cccf + checksum: 10c0/2095e8aad8a4e66b86147415364266b8d607a3b95b4239623423efd7e29df93ba81bb862784a6e08664f645cc1981b25fd598f532019174cd3e5e1e689e1cccf languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:^6.0.0": - version: 6.20.0 - resolution: "@typescript-eslint/eslint-plugin@npm:6.20.0" +"@typescript-eslint/eslint-plugin@npm:^7.0.0": + version: 7.1.1 + resolution: "@typescript-eslint/eslint-plugin@npm:7.1.1" dependencies: "@eslint-community/regexpp": "npm:^4.5.1" - "@typescript-eslint/scope-manager": "npm:6.20.0" - "@typescript-eslint/type-utils": "npm:6.20.0" - "@typescript-eslint/utils": "npm:6.20.0" - "@typescript-eslint/visitor-keys": "npm:6.20.0" + "@typescript-eslint/scope-manager": "npm:7.1.1" + "@typescript-eslint/type-utils": "npm:7.1.1" + "@typescript-eslint/utils": "npm:7.1.1" + "@typescript-eslint/visitor-keys": "npm:7.1.1" debug: "npm:^4.3.4" graphemer: "npm:^1.4.0" ignore: "npm:^5.2.4" @@ -3678,73 +3658,90 @@ __metadata: semver: "npm:^7.5.4" ts-api-utils: "npm:^1.0.1" peerDependencies: - "@typescript-eslint/parser": ^6.0.0 || ^6.0.0-alpha - eslint: ^7.0.0 || ^8.0.0 + "@typescript-eslint/parser": ^7.0.0 + eslint: ^8.56.0 peerDependenciesMeta: typescript: optional: true - checksum: 5020faac39be476de056342f58f2bf68bb788f230e2fa4a2e27ceab8a5187dc450beba7333b0aa741a43aeaff45a117558132953f9390b5eca4c2cc004fde716 + checksum: 10c0/041799604176bbee01f6ff029c5e2fcf1196db2737ba219a20b095f095dc0064ea425d15dd6dc22eaef294daa838209601ec7bc19317258dfa89a13afb8126ba languageName: node linkType: hard -"@typescript-eslint/parser@npm:^6.17.0": - version: 6.20.0 - resolution: "@typescript-eslint/parser@npm:6.20.0" +"@typescript-eslint/parser@npm:^7.0.0": + version: 7.1.1 + resolution: "@typescript-eslint/parser@npm:7.1.1" dependencies: - "@typescript-eslint/scope-manager": "npm:6.20.0" - "@typescript-eslint/types": "npm:6.20.0" - "@typescript-eslint/typescript-estree": "npm:6.20.0" - "@typescript-eslint/visitor-keys": "npm:6.20.0" + "@typescript-eslint/scope-manager": "npm:7.1.1" + "@typescript-eslint/types": "npm:7.1.1" + "@typescript-eslint/typescript-estree": "npm:7.1.1" + "@typescript-eslint/visitor-keys": "npm:7.1.1" debug: "npm:^4.3.4" peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + eslint: ^8.56.0 peerDependenciesMeta: typescript: optional: true - checksum: d84ad5e2282b1096c80dedb903c83ecc31eaf7be1aafcb14c18d9ec2d4a319f2fd1e5a9038b944d9f42c36c1c57add5e4292d4026ca7d3d5441d41286700d402 + checksum: 10c0/84eb44f3767aaa1d7b26176348c89bd6732bc711f7f24186b1354eba95bf9e9c65b5675838772b831391210e525ff1f3bd4b51a3130ec35413aa362920effc57 languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:6.20.0": - version: 6.20.0 - resolution: "@typescript-eslint/scope-manager@npm:6.20.0" +"@typescript-eslint/scope-manager@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/scope-manager@npm:6.21.0" dependencies: - "@typescript-eslint/types": "npm:6.20.0" - "@typescript-eslint/visitor-keys": "npm:6.20.0" - checksum: f6768ed2dcd2d1771d55ed567ff392a6569ffd683a26500067509dd41769f8838c43686460fe7337144f324fd063df33f5d5646d44e5df4998ceffb3ad1fb790 + "@typescript-eslint/types": "npm:6.21.0" + "@typescript-eslint/visitor-keys": "npm:6.21.0" + checksum: 10c0/eaf868938d811cbbea33e97e44ba7050d2b6892202cea6a9622c486b85ab1cf801979edf78036179a8ba4ac26f1dfdf7fcc83a68c1ff66be0b3a8e9a9989b526 languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:6.20.0": - version: 6.20.0 - resolution: "@typescript-eslint/type-utils@npm:6.20.0" +"@typescript-eslint/scope-manager@npm:7.1.1": + version: 7.1.1 + resolution: "@typescript-eslint/scope-manager@npm:7.1.1" dependencies: - "@typescript-eslint/typescript-estree": "npm:6.20.0" - "@typescript-eslint/utils": "npm:6.20.0" + "@typescript-eslint/types": "npm:7.1.1" + "@typescript-eslint/visitor-keys": "npm:7.1.1" + checksum: 10c0/a955c8529f24945d448b95982d06b5f15a74fc5df97307f5821d55e9861d6c26d61cbd118c1ca41634164ed1d4f6c74fcb8388761341c49e6902a6fb72036afc + languageName: node + linkType: hard + +"@typescript-eslint/type-utils@npm:7.1.1": + version: 7.1.1 + resolution: "@typescript-eslint/type-utils@npm:7.1.1" + dependencies: + "@typescript-eslint/typescript-estree": "npm:7.1.1" + "@typescript-eslint/utils": "npm:7.1.1" debug: "npm:^4.3.4" ts-api-utils: "npm:^1.0.1" peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + eslint: ^8.56.0 peerDependenciesMeta: typescript: optional: true - checksum: 8f622fbb14268f1d00b2948f995b570f0ef82be02c12be41d90385290a56ea0dbd34d855d6a5aff100b57f3bdd300ff0c300f16c78f12d6064f7ae6e34fd71bf + checksum: 10c0/6f19dc383718cce42ed7262d134f5f0221bcbf225fea28975cd714c90e57d861608d5187c7ad731f6281813f94b00f22282a99a8a852167366064abc6e256341 languageName: node linkType: hard -"@typescript-eslint/types@npm:6.20.0": - version: 6.20.0 - resolution: "@typescript-eslint/types@npm:6.20.0" - checksum: 37589003b0e06f83c1945e3748e91af85918cfd997766894642a08e6f355f611cfe11df4e7632dda96e3a9b3441406283fe834ab0906cf81ea97fd43ca2aebe3 +"@typescript-eslint/types@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/types@npm:6.21.0" + checksum: 10c0/020631d3223bbcff8a0da3efbdf058220a8f48a3de221563996ad1dcc30d6c08dadc3f7608cc08830d21c0d565efd2db19b557b9528921c78aabb605eef2d74d languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:6.20.0": - version: 6.20.0 - resolution: "@typescript-eslint/typescript-estree@npm:6.20.0" +"@typescript-eslint/types@npm:7.1.1": + version: 7.1.1 + resolution: "@typescript-eslint/types@npm:7.1.1" + checksum: 10c0/2bef95ec0c60e67fada336db3e82fac2be16c21a9e54fc45c7aeda3291abcceefa12aa970025db88bc2b3e113b1e70abd7f89c2a651c16b816dff1a0c46e7907 + languageName: node + linkType: hard + +"@typescript-eslint/typescript-estree@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/typescript-estree@npm:6.21.0" dependencies: - "@typescript-eslint/types": "npm:6.20.0" - "@typescript-eslint/visitor-keys": "npm:6.20.0" + "@typescript-eslint/types": "npm:6.21.0" + "@typescript-eslint/visitor-keys": "npm:6.21.0" debug: "npm:^4.3.4" globby: "npm:^11.1.0" is-glob: "npm:^4.0.3" @@ -3754,41 +3751,87 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 551f13445a303882d9fc0fbe14ef8507eb8414253fd87a5f13d2e324b5280b626421a238b8ec038e628bc80128dc06c057757f668738e82e64d5b39a9083c27d + checksum: 10c0/af1438c60f080045ebb330155a8c9bb90db345d5069cdd5d01b67de502abb7449d6c75500519df829f913a6b3f490ade3e8215279b6bdc63d0fb0ae61034df5f languageName: node linkType: hard -"@typescript-eslint/utils@npm:6.20.0, @typescript-eslint/utils@npm:^6.18.1": - version: 6.20.0 - resolution: "@typescript-eslint/utils@npm:6.20.0" +"@typescript-eslint/typescript-estree@npm:7.1.1": + version: 7.1.1 + resolution: "@typescript-eslint/typescript-estree@npm:7.1.1" + dependencies: + "@typescript-eslint/types": "npm:7.1.1" + "@typescript-eslint/visitor-keys": "npm:7.1.1" + debug: "npm:^4.3.4" + globby: "npm:^11.1.0" + is-glob: "npm:^4.0.3" + minimatch: "npm:9.0.3" + semver: "npm:^7.5.4" + ts-api-utils: "npm:^1.0.1" + peerDependenciesMeta: + typescript: + optional: true + checksum: 10c0/2cec9d21cfe46e523a6d29aff554e5450edf1ee30ce9cf644ee8f1f5e1cfd44b94afb3632db97a949c86c4a392ae80f264d56d8747b2b0fdbe5c54139433366a + languageName: node + linkType: hard + +"@typescript-eslint/utils@npm:7.1.1": + version: 7.1.1 + resolution: "@typescript-eslint/utils@npm:7.1.1" dependencies: "@eslint-community/eslint-utils": "npm:^4.4.0" "@types/json-schema": "npm:^7.0.12" "@types/semver": "npm:^7.5.0" - "@typescript-eslint/scope-manager": "npm:6.20.0" - "@typescript-eslint/types": "npm:6.20.0" - "@typescript-eslint/typescript-estree": "npm:6.20.0" + "@typescript-eslint/scope-manager": "npm:7.1.1" + "@typescript-eslint/types": "npm:7.1.1" + "@typescript-eslint/typescript-estree": "npm:7.1.1" semver: "npm:^7.5.4" peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - checksum: 0a8ede3d80a365b52ae96d88e4a9f6e6abf3569c6b60ff9f42ff900cd843ae7c5493cd95f8f2029d90bb0acbf31030980206af98e581d760d6d41e0f80e9fb86 + eslint: ^8.56.0 + checksum: 10c0/3e70834c5b49e4643ec8da63fa2acaab54283a566af2cedcd4c2f4210833a59bf71c459dde69e738115633c7de9f1339130552ff246e8e1bb4db26910685408b languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:6.20.0": - version: 6.20.0 - resolution: "@typescript-eslint/visitor-keys@npm:6.20.0" +"@typescript-eslint/utils@npm:^6.18.1": + version: 6.21.0 + resolution: "@typescript-eslint/utils@npm:6.21.0" dependencies: - "@typescript-eslint/types": "npm:6.20.0" + "@eslint-community/eslint-utils": "npm:^4.4.0" + "@types/json-schema": "npm:^7.0.12" + "@types/semver": "npm:^7.5.0" + "@typescript-eslint/scope-manager": "npm:6.21.0" + "@typescript-eslint/types": "npm:6.21.0" + "@typescript-eslint/typescript-estree": "npm:6.21.0" + semver: "npm:^7.5.4" + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + checksum: 10c0/ab2df3833b2582d4e5467a484d08942b4f2f7208f8e09d67de510008eb8001a9b7460f2f9ba11c12086fd3cdcac0c626761c7995c2c6b5657d5fa6b82030a32d + languageName: node + linkType: hard + +"@typescript-eslint/visitor-keys@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/visitor-keys@npm:6.21.0" + dependencies: + "@typescript-eslint/types": "npm:6.21.0" eslint-visitor-keys: "npm:^3.4.1" - checksum: 852d938f2e5d57200cf62733b42e73a369f797b097d17e8fd3fffd0f7315c3b9e1863eed60bb8d57d6535a3b7f1980f645f96ec6d513950f182bfa8107b33fab + checksum: 10c0/7395f69739cfa1cb83c1fb2fad30afa2a814756367302fb4facd5893eff66abc807e8d8f63eba94ed3b0fe0c1c996ac9a1680bcbf0f83717acedc3f2bb724fbf + languageName: node + linkType: hard + +"@typescript-eslint/visitor-keys@npm:7.1.1": + version: 7.1.1 + resolution: "@typescript-eslint/visitor-keys@npm:7.1.1" + dependencies: + "@typescript-eslint/types": "npm:7.1.1" + eslint-visitor-keys: "npm:^3.4.1" + checksum: 10c0/1ab19ec966ff0b86317eddcbfcda645856ec01c3b76a451298031f35e4da0a363e4888ce5ae9e2526e874799a502c49922d83d57d21cb6fef7f3912f51e4a271 languageName: node linkType: hard "@ungap/structured-clone@npm:^1.2.0": version: 1.2.0 resolution: "@ungap/structured-clone@npm:1.2.0" - checksum: 8209c937cb39119f44eb63cf90c0b73e7c754209a6411c707be08e50e29ee81356dca1a848a405c8bdeebfe2f5e4f831ad310ae1689eeef65e7445c090c6657d + checksum: 10c0/8209c937cb39119f44eb63cf90c0b73e7c754209a6411c707be08e50e29ee81356dca1a848a405c8bdeebfe2f5e4f831ad310ae1689eeef65e7445c090c6657d languageName: node linkType: hard @@ -3799,28 +3842,28 @@ __metadata: "@webassemblyjs/helper-module-context": "npm:1.9.0" "@webassemblyjs/helper-wasm-bytecode": "npm:1.9.0" "@webassemblyjs/wast-parser": "npm:1.9.0" - checksum: 8246c714346cdcd3ab204a2b09904d9d36c4f7da8f30cc217b0b7272a3ef57a3c21e95d51b26601641133fb66fea5cc46c357cf897808512f13b3d1c2efe88e4 + checksum: 10c0/8246c714346cdcd3ab204a2b09904d9d36c4f7da8f30cc217b0b7272a3ef57a3c21e95d51b26601641133fb66fea5cc46c357cf897808512f13b3d1c2efe88e4 languageName: node linkType: hard "@webassemblyjs/floating-point-hex-parser@npm:1.9.0": version: 1.9.0 resolution: "@webassemblyjs/floating-point-hex-parser@npm:1.9.0" - checksum: 17acfdfe6650691ae8d0279e6ff4fb8b5efce64e12f3fa18c6a7d279968cc72eb21c0db7ebb5be9d627d05fa7014cef087843d999de96c917079f57d7dac8f77 + checksum: 10c0/17acfdfe6650691ae8d0279e6ff4fb8b5efce64e12f3fa18c6a7d279968cc72eb21c0db7ebb5be9d627d05fa7014cef087843d999de96c917079f57d7dac8f77 languageName: node linkType: hard "@webassemblyjs/helper-api-error@npm:1.9.0": version: 1.9.0 resolution: "@webassemblyjs/helper-api-error@npm:1.9.0" - checksum: 892851b25cf4b4b307490328f45858414326dac667ca15244b5e959fa6e22478b29dabeb581d49ef8a2874e291d0417a3a959be70428c39cd40870e73b394dbc + checksum: 10c0/892851b25cf4b4b307490328f45858414326dac667ca15244b5e959fa6e22478b29dabeb581d49ef8a2874e291d0417a3a959be70428c39cd40870e73b394dbc languageName: node linkType: hard "@webassemblyjs/helper-buffer@npm:1.9.0": version: 1.9.0 resolution: "@webassemblyjs/helper-buffer@npm:1.9.0" - checksum: b09a3e27d9127ccaab095bd171336e7675bb5b832e05b701ff174a853b763154a49f5382c4c3f2f1cc746b1cff3f2025452145cf807ddf788133bcccf5920ca8 + checksum: 10c0/b09a3e27d9127ccaab095bd171336e7675bb5b832e05b701ff174a853b763154a49f5382c4c3f2f1cc746b1cff3f2025452145cf807ddf788133bcccf5920ca8 languageName: node linkType: hard @@ -3829,14 +3872,14 @@ __metadata: resolution: "@webassemblyjs/helper-code-frame@npm:1.9.0" dependencies: "@webassemblyjs/wast-printer": "npm:1.9.0" - checksum: 010969a6c8b016680a9b1383ff4b8147c363608dd1e29602154e5460954af4fd48daed518a76b232ca43935d4b6bebf54fba38da56f809e2bd12f063d84013ec + checksum: 10c0/010969a6c8b016680a9b1383ff4b8147c363608dd1e29602154e5460954af4fd48daed518a76b232ca43935d4b6bebf54fba38da56f809e2bd12f063d84013ec languageName: node linkType: hard "@webassemblyjs/helper-fsm@npm:1.9.0": version: 1.9.0 resolution: "@webassemblyjs/helper-fsm@npm:1.9.0" - checksum: ef0c99b58716d757a1a41f99fb46578d3f07d97b60cd51deaeffdf0aad09ec47f5093ee8d098d12324d57f8812609704c377fccfe9a32d02c0a658a4a33dce94 + checksum: 10c0/ef0c99b58716d757a1a41f99fb46578d3f07d97b60cd51deaeffdf0aad09ec47f5093ee8d098d12324d57f8812609704c377fccfe9a32d02c0a658a4a33dce94 languageName: node linkType: hard @@ -3845,14 +3888,14 @@ __metadata: resolution: "@webassemblyjs/helper-module-context@npm:1.9.0" dependencies: "@webassemblyjs/ast": "npm:1.9.0" - checksum: 130a9ac1141770b9f70ad568ec2dc769e92c756f91b06ece9cda2c2a5e80e21ec9c8c2a945a5839bf379e52fa921ae134245a7492e1b9ae0e8c557bb9b4953c3 + checksum: 10c0/130a9ac1141770b9f70ad568ec2dc769e92c756f91b06ece9cda2c2a5e80e21ec9c8c2a945a5839bf379e52fa921ae134245a7492e1b9ae0e8c557bb9b4953c3 languageName: node linkType: hard "@webassemblyjs/helper-wasm-bytecode@npm:1.9.0": version: 1.9.0 resolution: "@webassemblyjs/helper-wasm-bytecode@npm:1.9.0" - checksum: 1741993e1c723f56b619a4981ec975f903886aa3f1f50c7bdb2eaa45ca4ad8d023d6ae7413ef643f060567b1f12a9dcfad6c43688879c46ee4f0b53aa71cd5c9 + checksum: 10c0/1741993e1c723f56b619a4981ec975f903886aa3f1f50c7bdb2eaa45ca4ad8d023d6ae7413ef643f060567b1f12a9dcfad6c43688879c46ee4f0b53aa71cd5c9 languageName: node linkType: hard @@ -3864,7 +3907,7 @@ __metadata: "@webassemblyjs/helper-buffer": "npm:1.9.0" "@webassemblyjs/helper-wasm-bytecode": "npm:1.9.0" "@webassemblyjs/wasm-gen": "npm:1.9.0" - checksum: 2a5baa7749c50a4a428f372ab88b7e52956b48798d44e7291b4aa8558b247337dba791112ce8a4f5b2281e1b9014e6d44d0141476a5fcde6016fac2e009671e8 + checksum: 10c0/2a5baa7749c50a4a428f372ab88b7e52956b48798d44e7291b4aa8558b247337dba791112ce8a4f5b2281e1b9014e6d44d0141476a5fcde6016fac2e009671e8 languageName: node linkType: hard @@ -3873,7 +3916,7 @@ __metadata: resolution: "@webassemblyjs/ieee754@npm:1.9.0" dependencies: "@xtuc/ieee754": "npm:^1.2.0" - checksum: 0eff34ec7048400b30282ab9af6ad19d2852dab2f5ffaec8bdc697b8380bc2c9dbe6cadf65f49e68242c82ee3caa8aa6e46c89dbfdab37615189b4da2eab3819 + checksum: 10c0/0eff34ec7048400b30282ab9af6ad19d2852dab2f5ffaec8bdc697b8380bc2c9dbe6cadf65f49e68242c82ee3caa8aa6e46c89dbfdab37615189b4da2eab3819 languageName: node linkType: hard @@ -3882,14 +3925,14 @@ __metadata: resolution: "@webassemblyjs/leb128@npm:1.9.0" dependencies: "@xtuc/long": "npm:4.2.2" - checksum: 441be8634733b33b710f44d4394552d6290bb1a0a8311b384b1865b58c3549d0ddeaf1c3985bbee024a8df12c597be3580fc1cde2ae003dcbf26762b493a7a2f + checksum: 10c0/441be8634733b33b710f44d4394552d6290bb1a0a8311b384b1865b58c3549d0ddeaf1c3985bbee024a8df12c597be3580fc1cde2ae003dcbf26762b493a7a2f languageName: node linkType: hard "@webassemblyjs/utf8@npm:1.9.0": version: 1.9.0 resolution: "@webassemblyjs/utf8@npm:1.9.0" - checksum: 9566689a1bcf555d6b79d0da79e24ff2be23c0395e5a19ed3c2ceca7831e50b867e0b1c66b3ff1b1d7f297b2d2414314967a884a77634ad0acff8a78489e2b19 + checksum: 10c0/9566689a1bcf555d6b79d0da79e24ff2be23c0395e5a19ed3c2ceca7831e50b867e0b1c66b3ff1b1d7f297b2d2414314967a884a77634ad0acff8a78489e2b19 languageName: node linkType: hard @@ -3905,7 +3948,7 @@ __metadata: "@webassemblyjs/wasm-opt": "npm:1.9.0" "@webassemblyjs/wasm-parser": "npm:1.9.0" "@webassemblyjs/wast-printer": "npm:1.9.0" - checksum: 07f4cb4a73989622c524f9264b6afe664d33354f081499f04db675aed2b79498bd43600c3d7bebcb9f93ccce6a094b3c28f3f7b11ea62e9e82074c2ae68dc058 + checksum: 10c0/07f4cb4a73989622c524f9264b6afe664d33354f081499f04db675aed2b79498bd43600c3d7bebcb9f93ccce6a094b3c28f3f7b11ea62e9e82074c2ae68dc058 languageName: node linkType: hard @@ -3918,7 +3961,7 @@ __metadata: "@webassemblyjs/ieee754": "npm:1.9.0" "@webassemblyjs/leb128": "npm:1.9.0" "@webassemblyjs/utf8": "npm:1.9.0" - checksum: 876826bef91f3af9e48118fb269c348871d5b6f019e071065556da56a3a5818630b00133e07c9dd2cc767e7f2c70934f3ed0060330ce3e37910e9c9df25f1600 + checksum: 10c0/876826bef91f3af9e48118fb269c348871d5b6f019e071065556da56a3a5818630b00133e07c9dd2cc767e7f2c70934f3ed0060330ce3e37910e9c9df25f1600 languageName: node linkType: hard @@ -3930,7 +3973,7 @@ __metadata: "@webassemblyjs/helper-buffer": "npm:1.9.0" "@webassemblyjs/wasm-gen": "npm:1.9.0" "@webassemblyjs/wasm-parser": "npm:1.9.0" - checksum: 3d5558e078b660cd9777950f2df60f005f3cbdbcfa6c8c19dc0cf012f44f5bfa97c991d7ac26b3e78596bad0538e92dd00b5db4b51ebc373da8e329a03639190 + checksum: 10c0/3d5558e078b660cd9777950f2df60f005f3cbdbcfa6c8c19dc0cf012f44f5bfa97c991d7ac26b3e78596bad0538e92dd00b5db4b51ebc373da8e329a03639190 languageName: node linkType: hard @@ -3944,7 +3987,7 @@ __metadata: "@webassemblyjs/ieee754": "npm:1.9.0" "@webassemblyjs/leb128": "npm:1.9.0" "@webassemblyjs/utf8": "npm:1.9.0" - checksum: 1e8615b9f9c3c431c9635c9a9884bca89eff1ab2383ad849341c23e09899454482a8f8813d33bf86ee1b0acc97c7c83926961a9b34d4804fa5d559610ab0a4a2 + checksum: 10c0/1e8615b9f9c3c431c9635c9a9884bca89eff1ab2383ad849341c23e09899454482a8f8813d33bf86ee1b0acc97c7c83926961a9b34d4804fa5d559610ab0a4a2 languageName: node linkType: hard @@ -3958,7 +4001,7 @@ __metadata: "@webassemblyjs/helper-code-frame": "npm:1.9.0" "@webassemblyjs/helper-fsm": "npm:1.9.0" "@xtuc/long": "npm:4.2.2" - checksum: c79952466fdf7816be527b1db102952b777b12318eabb5c40df074cd8361e3a7b0179a985534fa8b5a7b93668b07ba46875ffeb5da03ca5177c80ba960ebdffc + checksum: 10c0/c79952466fdf7816be527b1db102952b777b12318eabb5c40df074cd8361e3a7b0179a985534fa8b5a7b93668b07ba46875ffeb5da03ca5177c80ba960ebdffc languageName: node linkType: hard @@ -3969,35 +4012,35 @@ __metadata: "@webassemblyjs/ast": "npm:1.9.0" "@webassemblyjs/wast-parser": "npm:1.9.0" "@xtuc/long": "npm:4.2.2" - checksum: f3d106aa884cbb7687307db7adeb3b98abff9de81b9ba8c1065267340b5e9de64ffc533044ab916b1f4ce8a67fb03efa54b29b61c8e908abe4c07edf82f614cd + checksum: 10c0/f3d106aa884cbb7687307db7adeb3b98abff9de81b9ba8c1065267340b5e9de64ffc533044ab916b1f4ce8a67fb03efa54b29b61c8e908abe4c07edf82f614cd languageName: node linkType: hard "@xtuc/ieee754@npm:^1.2.0": version: 1.2.0 resolution: "@xtuc/ieee754@npm:1.2.0" - checksum: a8565d29d135039bd99ae4b2220d3e167d22cf53f867e491ed479b3f84f895742d0097f935b19aab90265a23d5d46711e4204f14c479ae3637fbf06c4666882f + checksum: 10c0/a8565d29d135039bd99ae4b2220d3e167d22cf53f867e491ed479b3f84f895742d0097f935b19aab90265a23d5d46711e4204f14c479ae3637fbf06c4666882f languageName: node linkType: hard "@xtuc/long@npm:4.2.2": version: 4.2.2 resolution: "@xtuc/long@npm:4.2.2" - checksum: 8582cbc69c79ad2d31568c412129bf23d2b1210a1dfb60c82d5a1df93334da4ee51f3057051658569e2c196d8dc33bc05ae6b974a711d0d16e801e1d0647ccd1 + checksum: 10c0/8582cbc69c79ad2d31568c412129bf23d2b1210a1dfb60c82d5a1df93334da4ee51f3057051658569e2c196d8dc33bc05ae6b974a711d0d16e801e1d0647ccd1 languageName: node linkType: hard "abab@npm:^2.0.6": version: 2.0.6 resolution: "abab@npm:2.0.6" - checksum: 0b245c3c3ea2598fe0025abf7cc7bb507b06949d51e8edae5d12c1b847a0a0c09639abcb94788332b4e2044ac4491c1e8f571b51c7826fd4b0bda1685ad4a278 + checksum: 10c0/0b245c3c3ea2598fe0025abf7cc7bb507b06949d51e8edae5d12c1b847a0a0c09639abcb94788332b4e2044ac4491c1e8f571b51c7826fd4b0bda1685ad4a278 languageName: node linkType: hard "abbrev@npm:^2.0.0": version: 2.0.0 resolution: "abbrev@npm:2.0.0" - checksum: f742a5a107473946f426c691c08daba61a1d15942616f300b5d32fd735be88fef5cba24201757b6c407fd564555fb48c751cfa33519b2605c8a7aadd22baf372 + checksum: 10c0/f742a5a107473946f426c691c08daba61a1d15942616f300b5d32fd735be88fef5cba24201757b6c407fd564555fb48c751cfa33519b2605c8a7aadd22baf372 languageName: node linkType: hard @@ -4006,7 +4049,7 @@ __metadata: resolution: "abort-controller@npm:3.0.0" dependencies: event-target-shim: "npm:^5.0.0" - checksum: 90ccc50f010250152509a344eb2e71977fbf8db0ab8f1061197e3275ddf6c61a41a6edfd7b9409c664513131dd96e962065415325ef23efa5db931b382d24ca5 + checksum: 10c0/90ccc50f010250152509a344eb2e71977fbf8db0ab8f1061197e3275ddf6c61a41a6edfd7b9409c664513131dd96e962065415325ef23efa5db931b382d24ca5 languageName: node linkType: hard @@ -4016,7 +4059,7 @@ __metadata: dependencies: mime-types: "npm:~2.1.34" negotiator: "npm:0.6.3" - checksum: 3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362 + checksum: 10c0/3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362 languageName: node linkType: hard @@ -4026,7 +4069,7 @@ __metadata: dependencies: acorn: "npm:^8.1.0" acorn-walk: "npm:^8.0.2" - checksum: 7437f58e92d99292dbebd0e79531af27d706c9f272f31c675d793da6c82d897e75302a8744af13c7f7978a8399840f14a353b60cf21014647f71012982456d2b + checksum: 10c0/7437f58e92d99292dbebd0e79531af27d706c9f272f31c675d793da6c82d897e75302a8744af13c7f7978a8399840f14a353b60cf21014647f71012982456d2b languageName: node linkType: hard @@ -4035,14 +4078,14 @@ __metadata: resolution: "acorn-jsx@npm:5.3.2" peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 4c54868fbef3b8d58927d5e33f0a4de35f59012fe7b12cf9dfbb345fb8f46607709e1c4431be869a23fb63c151033d84c4198fa9f79385cec34fcb1dd53974c1 + checksum: 10c0/4c54868fbef3b8d58927d5e33f0a4de35f59012fe7b12cf9dfbb345fb8f46607709e1c4431be869a23fb63c151033d84c4198fa9f79385cec34fcb1dd53974c1 languageName: node linkType: hard "acorn-walk@npm:^8.0.0, acorn-walk@npm:^8.0.2": version: 8.2.0 resolution: "acorn-walk@npm:8.2.0" - checksum: dbe92f5b2452c93e960c5594e666dd1fae141b965ff2cb4a1e1d0381e3e4db4274c5ce4ffa3d681a86ca2a8d4e29d5efc0670a08e23fd2800051ea387df56ca2 + checksum: 10c0/dbe92f5b2452c93e960c5594e666dd1fae141b965ff2cb4a1e1d0381e3e4db4274c5ce4ffa3d681a86ca2a8d4e29d5efc0670a08e23fd2800051ea387df56ca2 languageName: node linkType: hard @@ -4051,7 +4094,7 @@ __metadata: resolution: "acorn@npm:6.4.2" bin: acorn: bin/acorn - checksum: 52a72d5d785fa64a95880f2951021a38954f8f69a4944dfeab6fb1449b0f02293eae109a56d55b58ff31a90a00d16a804658a12db8ef834c20b3d1201fe5ba5b + checksum: 10c0/52a72d5d785fa64a95880f2951021a38954f8f69a4944dfeab6fb1449b0f02293eae109a56d55b58ff31a90a00d16a804658a12db8ef834c20b3d1201fe5ba5b languageName: node linkType: hard @@ -4060,7 +4103,7 @@ __metadata: resolution: "acorn@npm:8.11.2" bin: acorn: bin/acorn - checksum: a3ed76c761b75ec54b1ec3068fb7f113a182e95aea7f322f65098c2958d232e3d211cb6dac35ff9c647024b63714bc528a26d54a925d1fef2c25585b4c8e4017 + checksum: 10c0/a3ed76c761b75ec54b1ec3068fb7f113a182e95aea7f322f65098c2958d232e3d211cb6dac35ff9c647024b63714bc528a26d54a925d1fef2c25585b4c8e4017 languageName: node linkType: hard @@ -4069,7 +4112,7 @@ __metadata: resolution: "agent-base@npm:6.0.2" dependencies: debug: "npm:4" - checksum: dc4f757e40b5f3e3d674bc9beb4f1048f4ee83af189bae39be99f57bf1f48dde166a8b0a5342a84b5944ee8e6ed1e5a9d801858f4ad44764e84957122fe46261 + checksum: 10c0/dc4f757e40b5f3e3d674bc9beb4f1048f4ee83af189bae39be99f57bf1f48dde166a8b0a5342a84b5944ee8e6ed1e5a9d801858f4ad44764e84957122fe46261 languageName: node linkType: hard @@ -4078,7 +4121,7 @@ __metadata: resolution: "agent-base@npm:7.1.0" dependencies: debug: "npm:^4.3.4" - checksum: fc974ab57ffdd8421a2bc339644d312a9cca320c20c3393c9d8b1fd91731b9bbabdb985df5fc860f5b79d81c3e350daa3fcb31c5c07c0bb385aafc817df004ce + checksum: 10c0/fc974ab57ffdd8421a2bc339644d312a9cca320c20c3393c9d8b1fd91731b9bbabdb985df5fc860f5b79d81c3e350daa3fcb31c5c07c0bb385aafc817df004ce languageName: node linkType: hard @@ -4088,7 +4131,7 @@ __metadata: dependencies: clean-stack: "npm:^2.0.0" indent-string: "npm:^4.0.0" - checksum: a42f67faa79e3e6687a4923050e7c9807db3848a037076f791d10e092677d65c1d2d863b7848560699f40fc0502c19f40963fb1cd1fb3d338a7423df8e45e039 + checksum: 10c0/a42f67faa79e3e6687a4923050e7c9807db3848a037076f791d10e092677d65c1d2d863b7848560699f40fc0502c19f40963fb1cd1fb3d338a7423df8e45e039 languageName: node linkType: hard @@ -4097,7 +4140,7 @@ __metadata: resolution: "ajv-errors@npm:1.0.1" peerDependencies: ajv: ">=5.0.0" - checksum: de2d6e8100c8707ea063ee4785d53adf599b457c0d4f72c3592244d67ad16448a6d35f7ce45f12bdd2819939447c876e8ef2f1c0800896d7f2aa25c3838acdf1 + checksum: 10c0/de2d6e8100c8707ea063ee4785d53adf599b457c0d4f72c3592244d67ad16448a6d35f7ce45f12bdd2819939447c876e8ef2f1c0800896d7f2aa25c3838acdf1 languageName: node linkType: hard @@ -4106,7 +4149,7 @@ __metadata: resolution: "ajv-keywords@npm:3.5.2" peerDependencies: ajv: ^6.9.1 - checksum: 0c57a47cbd656e8cdfd99d7c2264de5868918ffa207c8d7a72a7f63379d4333254b2ba03d69e3c035e996a3fd3eb6d5725d7a1597cca10694296e32510546360 + checksum: 10c0/0c57a47cbd656e8cdfd99d7c2264de5868918ffa207c8d7a72a7f63379d4333254b2ba03d69e3c035e996a3fd3eb6d5725d7a1597cca10694296e32510546360 languageName: node linkType: hard @@ -4118,7 +4161,7 @@ __metadata: fast-json-stable-stringify: "npm:^2.0.0" json-schema-traverse: "npm:^0.4.1" uri-js: "npm:^4.2.2" - checksum: 41e23642cbe545889245b9d2a45854ebba51cda6c778ebced9649420d9205f2efb39cb43dbc41e358409223b1ea43303ae4839db682c848b891e4811da1a5a71 + checksum: 10c0/41e23642cbe545889245b9d2a45854ebba51cda6c778ebced9649420d9205f2efb39cb43dbc41e358409223b1ea43303ae4839db682c848b891e4811da1a5a71 languageName: node linkType: hard @@ -4130,14 +4173,14 @@ __metadata: json-schema-traverse: "npm:^1.0.0" require-from-string: "npm:^2.0.2" uri-js: "npm:^4.2.2" - checksum: ac4f72adf727ee425e049bc9d8b31d4a57e1c90da8d28bcd23d60781b12fcd6fc3d68db5df16994c57b78b94eed7988f5a6b482fd376dc5b084125e20a0a622e + checksum: 10c0/ac4f72adf727ee425e049bc9d8b31d4a57e1c90da8d28bcd23d60781b12fcd6fc3d68db5df16994c57b78b94eed7988f5a6b482fd376dc5b084125e20a0a622e languageName: node linkType: hard "ansi-colors@npm:^3.0.0": version: 3.2.4 resolution: "ansi-colors@npm:3.2.4" - checksum: 1785466547bac3b1cb8055325a415c8c946a818669da4fd3d1247cab7617b845b221c2ae04756277074d278b52d90efd67f73d2dd927c7a0d1a10395c1b7665b + checksum: 10c0/1785466547bac3b1cb8055325a415c8c946a818669da4fd3d1247cab7617b845b221c2ae04756277074d278b52d90efd67f73d2dd927c7a0d1a10395c1b7665b languageName: node linkType: hard @@ -4146,7 +4189,7 @@ __metadata: resolution: "ansi-escapes@npm:4.3.2" dependencies: type-fest: "npm:^0.21.3" - checksum: da917be01871525a3dfcf925ae2977bc59e8c513d4423368645634bf5d4ceba5401574eb705c1e92b79f7292af5a656f78c5725a4b0e1cec97c4b413705c1d50 + checksum: 10c0/da917be01871525a3dfcf925ae2977bc59e8c513d4423368645634bf5d4ceba5401574eb705c1e92b79f7292af5a656f78c5725a4b0e1cec97c4b413705c1d50 languageName: node linkType: hard @@ -4155,7 +4198,7 @@ __metadata: resolution: "ansi-escapes@npm:6.2.0" dependencies: type-fest: "npm:^3.0.0" - checksum: 3eec75deedd8b10192c5f98e4cd9715cc3ff268d33fc463c24b7d22446668bfcd4ad1803993ea89c0f51f88b5a3399572bacb7c8cb1a067fc86e189c5f3b0c7e + checksum: 10c0/3eec75deedd8b10192c5f98e4cd9715cc3ff268d33fc463c24b7d22446668bfcd4ad1803993ea89c0f51f88b5a3399572bacb7c8cb1a067fc86e189c5f3b0c7e languageName: node linkType: hard @@ -4164,35 +4207,35 @@ __metadata: resolution: "ansi-html-community@npm:0.0.8" bin: ansi-html: bin/ansi-html - checksum: 45d3a6f0b4f10b04fdd44bef62972e2470bfd917bf00439471fa7473d92d7cbe31369c73db863cc45dda115cb42527f39e232e9256115534b8ee5806b0caeed4 + checksum: 10c0/45d3a6f0b4f10b04fdd44bef62972e2470bfd917bf00439471fa7473d92d7cbe31369c73db863cc45dda115cb42527f39e232e9256115534b8ee5806b0caeed4 languageName: node linkType: hard "ansi-regex@npm:^2.0.0": version: 2.1.1 resolution: "ansi-regex@npm:2.1.1" - checksum: 78cebaf50bce2cb96341a7230adf28d804611da3ce6bf338efa7b72f06cc6ff648e29f80cd95e582617ba58d5fdbec38abfeed3500a98bce8381a9daec7c548b + checksum: 10c0/78cebaf50bce2cb96341a7230adf28d804611da3ce6bf338efa7b72f06cc6ff648e29f80cd95e582617ba58d5fdbec38abfeed3500a98bce8381a9daec7c548b languageName: node linkType: hard "ansi-regex@npm:^4.1.0": version: 4.1.1 resolution: "ansi-regex@npm:4.1.1" - checksum: d36d34234d077e8770169d980fed7b2f3724bfa2a01da150ccd75ef9707c80e883d27cdf7a0eac2f145ac1d10a785a8a855cffd05b85f778629a0db62e7033da + checksum: 10c0/d36d34234d077e8770169d980fed7b2f3724bfa2a01da150ccd75ef9707c80e883d27cdf7a0eac2f145ac1d10a785a8a855cffd05b85f778629a0db62e7033da languageName: node linkType: hard "ansi-regex@npm:^5.0.1": version: 5.0.1 resolution: "ansi-regex@npm:5.0.1" - checksum: 9a64bb8627b434ba9327b60c027742e5d17ac69277960d041898596271d992d4d52ba7267a63ca10232e29f6107fc8a835f6ce8d719b88c5f8493f8254813737 + checksum: 10c0/9a64bb8627b434ba9327b60c027742e5d17ac69277960d041898596271d992d4d52ba7267a63ca10232e29f6107fc8a835f6ce8d719b88c5f8493f8254813737 languageName: node linkType: hard "ansi-regex@npm:^6.0.1": version: 6.0.1 resolution: "ansi-regex@npm:6.0.1" - checksum: cbe16dbd2c6b2735d1df7976a7070dd277326434f0212f43abf6d87674095d247968209babdaad31bb00882fa68807256ba9be340eec2f1004de14ca75f52a08 + checksum: 10c0/cbe16dbd2c6b2735d1df7976a7070dd277326434f0212f43abf6d87674095d247968209babdaad31bb00882fa68807256ba9be340eec2f1004de14ca75f52a08 languageName: node linkType: hard @@ -4201,7 +4244,7 @@ __metadata: resolution: "ansi-styles@npm:3.2.1" dependencies: color-convert: "npm:^1.9.0" - checksum: ece5a8ef069fcc5298f67e3f4771a663129abd174ea2dfa87923a2be2abf6cd367ef72ac87942da00ce85bd1d651d4cd8595aebdb1b385889b89b205860e977b + checksum: 10c0/ece5a8ef069fcc5298f67e3f4771a663129abd174ea2dfa87923a2be2abf6cd367ef72ac87942da00ce85bd1d651d4cd8595aebdb1b385889b89b205860e977b languageName: node linkType: hard @@ -4210,21 +4253,21 @@ __metadata: resolution: "ansi-styles@npm:4.3.0" dependencies: color-convert: "npm:^2.0.1" - checksum: 895a23929da416f2bd3de7e9cb4eabd340949328ab85ddd6e484a637d8f6820d485f53933446f5291c3b760cbc488beb8e88573dd0f9c7daf83dccc8fe81b041 + checksum: 10c0/895a23929da416f2bd3de7e9cb4eabd340949328ab85ddd6e484a637d8f6820d485f53933446f5291c3b760cbc488beb8e88573dd0f9c7daf83dccc8fe81b041 languageName: node linkType: hard "ansi-styles@npm:^5.0.0": version: 5.2.0 resolution: "ansi-styles@npm:5.2.0" - checksum: 9c4ca80eb3c2fb7b33841c210d2f20807f40865d27008d7c3f707b7f95cab7d67462a565e2388ac3285b71cb3d9bb2173de8da37c57692a362885ec34d6e27df + checksum: 10c0/9c4ca80eb3c2fb7b33841c210d2f20807f40865d27008d7c3f707b7f95cab7d67462a565e2388ac3285b71cb3d9bb2173de8da37c57692a362885ec34d6e27df languageName: node linkType: hard "ansi-styles@npm:^6.0.0, ansi-styles@npm:^6.1.0, ansi-styles@npm:^6.2.1": version: 6.2.1 resolution: "ansi-styles@npm:6.2.1" - checksum: 5d1ec38c123984bcedd996eac680d548f31828bd679a66db2bdf11844634dde55fec3efa9c6bb1d89056a5e79c1ac540c4c784d592ea1d25028a92227d2f2d5c + checksum: 10c0/5d1ec38c123984bcedd996eac680d548f31828bd679a66db2bdf11844634dde55fec3efa9c6bb1d89056a5e79c1ac540c4c784d592ea1d25028a92227d2f2d5c languageName: node linkType: hard @@ -4234,7 +4277,7 @@ __metadata: dependencies: micromatch: "npm:^3.1.4" normalize-path: "npm:^2.1.1" - checksum: a0d745e52f0233048724b9c9d7b1d8a650f7a50151a0f1d2cce1857b09fd096052d334f8c570cc88596edef8249ae778f767db94025cd00f81e154a37bb7e34e + checksum: 10c0/a0d745e52f0233048724b9c9d7b1d8a650f7a50151a0f1d2cce1857b09fd096052d334f8c570cc88596edef8249ae778f767db94025cd00f81e154a37bb7e34e languageName: node linkType: hard @@ -4244,14 +4287,14 @@ __metadata: dependencies: normalize-path: "npm:^3.0.0" picomatch: "npm:^2.0.4" - checksum: 57b06ae984bc32a0d22592c87384cd88fe4511b1dd7581497831c56d41939c8a001b28e7b853e1450f2bf61992dfcaa8ae2d0d161a0a90c4fb631ef07098fbac + checksum: 10c0/57b06ae984bc32a0d22592c87384cd88fe4511b1dd7581497831c56d41939c8a001b28e7b853e1450f2bf61992dfcaa8ae2d0d161a0a90c4fb631ef07098fbac languageName: node linkType: hard "are-docs-informative@npm:^0.0.2": version: 0.0.2 resolution: "are-docs-informative@npm:0.0.2" - checksum: f0326981bd699c372d268b526b170a28f2e1aec2cf99d7de0686083528427ecdf6ae41fef5d9988e224a5616298af747ad8a76e7306b0a7c97cc085a99636d60 + checksum: 10c0/f0326981bd699c372d268b526b170a28f2e1aec2cf99d7de0686083528427ecdf6ae41fef5d9988e224a5616298af747ad8a76e7306b0a7c97cc085a99636d60 languageName: node linkType: hard @@ -4260,14 +4303,14 @@ __metadata: resolution: "argparse@npm:1.0.10" dependencies: sprintf-js: "npm:~1.0.2" - checksum: b2972c5c23c63df66bca144dbc65d180efa74f25f8fd9b7d9a0a6c88ae839db32df3d54770dcb6460cf840d232b60695d1a6b1053f599d84e73f7437087712de + checksum: 10c0/b2972c5c23c63df66bca144dbc65d180efa74f25f8fd9b7d9a0a6c88ae839db32df3d54770dcb6460cf840d232b60695d1a6b1053f599d84e73f7437087712de languageName: node linkType: hard "argparse@npm:^2.0.1": version: 2.0.1 resolution: "argparse@npm:2.0.1" - checksum: c5640c2d89045371c7cedd6a70212a04e360fd34d6edeae32f6952c63949e3525ea77dbec0289d8213a99bbaeab5abfa860b5c12cf88a2e6cf8106e90dd27a7e + checksum: 10c0/c5640c2d89045371c7cedd6a70212a04e360fd34d6edeae32f6952c63949e3525ea77dbec0289d8213a99bbaeab5abfa860b5c12cf88a2e6cf8106e90dd27a7e languageName: node linkType: hard @@ -4276,7 +4319,7 @@ __metadata: resolution: "aria-query@npm:5.1.3" dependencies: deep-equal: "npm:^2.0.5" - checksum: edcbc8044c4663d6f88f785e983e6784f98cb62b4ba1e9dd8d61b725d0203e4cfca38d676aee984c31f354103461102a3d583aa4fbe4fd0a89b679744f4e5faf + checksum: 10c0/edcbc8044c4663d6f88f785e983e6784f98cb62b4ba1e9dd8d61b725d0203e4cfca38d676aee984c31f354103461102a3d583aa4fbe4fd0a89b679744f4e5faf languageName: node linkType: hard @@ -4285,52 +4328,52 @@ __metadata: resolution: "aria-query@npm:5.3.0" dependencies: dequal: "npm:^2.0.3" - checksum: 2bff0d4eba5852a9dd578ecf47eaef0e82cc52569b48469b0aac2db5145db0b17b7a58d9e01237706d1e14b7a1b0ac9b78e9c97027ad97679dd8f91b85da1469 + checksum: 10c0/2bff0d4eba5852a9dd578ecf47eaef0e82cc52569b48469b0aac2db5145db0b17b7a58d9e01237706d1e14b7a1b0ac9b78e9c97027ad97679dd8f91b85da1469 languageName: node linkType: hard "arr-diff@npm:^4.0.0": version: 4.0.0 resolution: "arr-diff@npm:4.0.0" - checksum: 67b80067137f70c89953b95f5c6279ad379c3ee39f7143578e13bd51580a40066ee2a55da066e22d498dce10f68c2d70056d7823f972fab99dfbf4c78d0bc0f7 + checksum: 10c0/67b80067137f70c89953b95f5c6279ad379c3ee39f7143578e13bd51580a40066ee2a55da066e22d498dce10f68c2d70056d7823f972fab99dfbf4c78d0bc0f7 languageName: node linkType: hard "arr-flatten@npm:^1.1.0": version: 1.1.0 resolution: "arr-flatten@npm:1.1.0" - checksum: bef53be02ed3bc58f202b3861a5b1eb6e1ae4fecf39c3ad4d15b1e0433f941077d16e019a33312d820844b0661777322acbb7d0c447b04d9bdf7d6f9c532548a + checksum: 10c0/bef53be02ed3bc58f202b3861a5b1eb6e1ae4fecf39c3ad4d15b1e0433f941077d16e019a33312d820844b0661777322acbb7d0c447b04d9bdf7d6f9c532548a languageName: node linkType: hard "arr-union@npm:^3.1.0": version: 3.1.0 resolution: "arr-union@npm:3.1.0" - checksum: 7d5aa05894e54aa93c77c5726c1dd5d8e8d3afe4f77983c0aa8a14a8a5cbe8b18f0cf4ecaa4ac8c908ef5f744d2cbbdaa83fd6e96724d15fea56cfa7f5efdd51 + checksum: 10c0/7d5aa05894e54aa93c77c5726c1dd5d8e8d3afe4f77983c0aa8a14a8a5cbe8b18f0cf4ecaa4ac8c908ef5f744d2cbbdaa83fd6e96724d15fea56cfa7f5efdd51 languageName: node linkType: hard -"array-buffer-byte-length@npm:^1.0.0": - version: 1.0.0 - resolution: "array-buffer-byte-length@npm:1.0.0" +"array-buffer-byte-length@npm:^1.0.0, array-buffer-byte-length@npm:^1.0.1": + version: 1.0.1 + resolution: "array-buffer-byte-length@npm:1.0.1" dependencies: - call-bind: "npm:^1.0.2" - is-array-buffer: "npm:^3.0.1" - checksum: 12f84f6418b57a954caa41654e5e63e019142a4bbb2c6829ba86d1ba65d31ccfaf1461d1743556fd32b091fac34ff44d9dfbdb001402361c45c373b2c86f5c20 + call-bind: "npm:^1.0.5" + is-array-buffer: "npm:^3.0.4" + checksum: 10c0/f5cdf54527cd18a3d2852ddf73df79efec03829e7373a8322ef5df2b4ef546fb365c19c71d6b42d641cb6bfe0f1a2f19bc0ece5b533295f86d7c3d522f228917 languageName: node linkType: hard "array-flatten@npm:1.1.1": version: 1.1.1 resolution: "array-flatten@npm:1.1.1" - checksum: 806966c8abb2f858b08f5324d9d18d7737480610f3bd5d3498aaae6eb5efdc501a884ba019c9b4a8f02ff67002058749d05548fd42fa8643f02c9c7f22198b91 + checksum: 10c0/806966c8abb2f858b08f5324d9d18d7737480610f3bd5d3498aaae6eb5efdc501a884ba019c9b4a8f02ff67002058749d05548fd42fa8643f02c9c7f22198b91 languageName: node linkType: hard "array-flatten@npm:^2.1.0": version: 2.1.2 resolution: "array-flatten@npm:2.1.2" - checksum: bdc1cee68e41bec9cfc1161408734e2269428ef371445606bce4e6241001e138a94b9a617cc9a5b4b7fe6a3a51e3d5a942646975ce82a2e202ccf3e9b478c82f + checksum: 10c0/bdc1cee68e41bec9cfc1161408734e2269428ef371445606bce4e6241001e138a94b9a617cc9a5b4b7fe6a3a51e3d5a942646975ce82a2e202ccf3e9b478c82f languageName: node linkType: hard @@ -4343,7 +4386,7 @@ __metadata: es-abstract: "npm:^1.22.1" get-intrinsic: "npm:^1.2.1" is-string: "npm:^1.0.7" - checksum: 692907bd7f19d06dc58ccb761f34b58f5dc0b437d2b47a8fe42a1501849a5cf5c27aed3d521a9702667827c2c85a7e75df00a402c438094d87fc43f39ebf9b2b + checksum: 10c0/692907bd7f19d06dc58ccb761f34b58f5dc0b437d2b47a8fe42a1501849a5cf5c27aed3d521a9702667827c2c85a7e75df00a402c438094d87fc43f39ebf9b2b languageName: node linkType: hard @@ -4352,28 +4395,41 @@ __metadata: resolution: "array-union@npm:1.0.2" dependencies: array-uniq: "npm:^1.0.1" - checksum: 18686767c0cfdae8dc4acf5ac119b0f0eacad82b7fcc0aa62cc41f93c5ad406d494b6a6e53d85e52e8f0349b67a4fec815feeb537e95c02510d747bc9a4157c7 + checksum: 10c0/18686767c0cfdae8dc4acf5ac119b0f0eacad82b7fcc0aa62cc41f93c5ad406d494b6a6e53d85e52e8f0349b67a4fec815feeb537e95c02510d747bc9a4157c7 languageName: node linkType: hard "array-union@npm:^2.1.0": version: 2.1.0 resolution: "array-union@npm:2.1.0" - checksum: 429897e68110374f39b771ec47a7161fc6a8fc33e196857c0a396dc75df0b5f65e4d046674db764330b6bb66b39ef48dd7c53b6a2ee75cfb0681e0c1a7033962 + checksum: 10c0/429897e68110374f39b771ec47a7161fc6a8fc33e196857c0a396dc75df0b5f65e4d046674db764330b6bb66b39ef48dd7c53b6a2ee75cfb0681e0c1a7033962 languageName: node linkType: hard "array-uniq@npm:^1.0.1": version: 1.0.3 resolution: "array-uniq@npm:1.0.3" - checksum: 3acbaf9e6d5faeb1010e2db04ab171b8d265889e46c61762e502979bdc5e55656013726e9a61507de3c82d329a0dc1e8072630a3454b4f2b881cb19ba7fd8aa6 + checksum: 10c0/3acbaf9e6d5faeb1010e2db04ab171b8d265889e46c61762e502979bdc5e55656013726e9a61507de3c82d329a0dc1e8072630a3454b4f2b881cb19ba7fd8aa6 languageName: node linkType: hard "array-unique@npm:^0.3.2": version: 0.3.2 resolution: "array-unique@npm:0.3.2" - checksum: dbf4462cdba8a4b85577be07705210b3d35be4b765822a3f52962d907186617638ce15e0603a4fefdcf82f4cbbc9d433f8cbbd6855148a68872fa041b6474121 + checksum: 10c0/dbf4462cdba8a4b85577be07705210b3d35be4b765822a3f52962d907186617638ce15e0603a4fefdcf82f4cbbc9d433f8cbbd6855148a68872fa041b6474121 + languageName: node + linkType: hard + +"array.prototype.findlast@npm:^1.2.4": + version: 1.2.4 + resolution: "array.prototype.findlast@npm:1.2.4" + dependencies: + call-bind: "npm:^1.0.5" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.22.3" + es-errors: "npm:^1.3.0" + es-shim-unscopables: "npm:^1.0.2" + checksum: 10c0/4b5145a68ebaa00ef3d61de07c6694cad73d60763079f1e7662b948e5a167b5121b0c1e6feae8df1e42ead07c21699e25242b95cd5c48e094fd530b192aa4150 languageName: node linkType: hard @@ -4386,7 +4442,7 @@ __metadata: es-abstract: "npm:^1.22.1" es-shim-unscopables: "npm:^1.0.0" get-intrinsic: "npm:^1.2.1" - checksum: 2c5c4d3f07512d6729f728f6260a314c00f2eb0a243123092661fa1bc65dce90234c3b483b5f978396eccef6f69c50f0bea248448aaf9cdfcd1cedad6217acbb + checksum: 10c0/2c5c4d3f07512d6729f728f6260a314c00f2eb0a243123092661fa1bc65dce90234c3b483b5f978396eccef6f69c50f0bea248448aaf9cdfcd1cedad6217acbb languageName: node linkType: hard @@ -4398,11 +4454,11 @@ __metadata: define-properties: "npm:^1.2.0" es-abstract: "npm:^1.22.1" es-shim-unscopables: "npm:^1.0.0" - checksum: a578ed836a786efbb6c2db0899ae80781b476200617f65a44846cb1ed8bd8b24c8821b83703375d8af639c689497b7b07277060024b9919db94ac3e10dc8a49b + checksum: 10c0/a578ed836a786efbb6c2db0899ae80781b476200617f65a44846cb1ed8bd8b24c8821b83703375d8af639c689497b7b07277060024b9919db94ac3e10dc8a49b languageName: node linkType: hard -"array.prototype.flatmap@npm:^1.3.1, array.prototype.flatmap@npm:^1.3.2": +"array.prototype.flatmap@npm:^1.3.2": version: 1.3.2 resolution: "array.prototype.flatmap@npm:1.3.2" dependencies: @@ -4410,7 +4466,7 @@ __metadata: define-properties: "npm:^1.2.0" es-abstract: "npm:^1.22.1" es-shim-unscopables: "npm:^1.0.0" - checksum: 67b3f1d602bb73713265145853128b1ad77cc0f9b833c7e1e056b323fbeac41a4ff1c9c99c7b9445903caea924d9ca2450578d9011913191aa88cc3c3a4b54f4 + checksum: 10c0/67b3f1d602bb73713265145853128b1ad77cc0f9b833c7e1e056b323fbeac41a4ff1c9c99c7b9445903caea924d9ca2450578d9011913191aa88cc3c3a4b54f4 languageName: node linkType: hard @@ -4423,42 +4479,55 @@ __metadata: es-abstract: "npm:^1.20.4" es-array-method-boxes-properly: "npm:^1.0.0" is-string: "npm:^1.0.7" - checksum: 0c6c589d22d6cda4a32458c6fd57a41f420a4fa6cd184a3f6fe7b507f457bc4a073aff6accd595bcd6ac29cad856e7ac306549f127acdb098f401eea13c54901 + checksum: 10c0/0c6c589d22d6cda4a32458c6fd57a41f420a4fa6cd184a3f6fe7b507f457bc4a073aff6accd595bcd6ac29cad856e7ac306549f127acdb098f401eea13c54901 languageName: node linkType: hard -"array.prototype.tosorted@npm:^1.1.1": - version: 1.1.1 - resolution: "array.prototype.tosorted@npm:1.1.1" +"array.prototype.toreversed@npm:^1.1.2": + version: 1.1.2 + resolution: "array.prototype.toreversed@npm:1.1.2" dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.1.4" - es-abstract: "npm:^1.20.4" - es-shim-unscopables: "npm:^1.0.0" - get-intrinsic: "npm:^1.1.3" - checksum: fd5f57aca3c7ddcd1bb83965457b625f3a67d8f334f5cbdb8ac8ef33d5b0d38281524114db2936f8c08048115d5158af216c94e6ae1eb966241b9b6f4ab8a7e8 - languageName: node - linkType: hard - -"arraybuffer.prototype.slice@npm:^1.0.2": - version: 1.0.2 - resolution: "arraybuffer.prototype.slice@npm:1.0.2" - dependencies: - array-buffer-byte-length: "npm:^1.0.0" call-bind: "npm:^1.0.2" define-properties: "npm:^1.2.0" es-abstract: "npm:^1.22.1" - get-intrinsic: "npm:^1.2.1" - is-array-buffer: "npm:^3.0.2" + es-shim-unscopables: "npm:^1.0.0" + checksum: 10c0/2b7627ea85eae1e80ecce665a500cc0f3355ac83ee4a1a727562c7c2a1d5f1c0b4dd7b65c468ec6867207e452ba01256910a2c0b41486bfdd11acf875a7a3435 + languageName: node + linkType: hard + +"array.prototype.tosorted@npm:^1.1.3": + version: 1.1.3 + resolution: "array.prototype.tosorted@npm:1.1.3" + dependencies: + call-bind: "npm:^1.0.5" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.22.3" + es-errors: "npm:^1.1.0" + es-shim-unscopables: "npm:^1.0.2" + checksum: 10c0/a27e1ca51168ecacf6042901f5ef021e43c8fa04b6c6b6f2a30bac3645cd2b519cecbe0bc45db1b85b843f64dc3207f0268f700b4b9fbdec076d12d432cf0865 + languageName: node + linkType: hard + +"arraybuffer.prototype.slice@npm:^1.0.3": + version: 1.0.3 + resolution: "arraybuffer.prototype.slice@npm:1.0.3" + dependencies: + array-buffer-byte-length: "npm:^1.0.1" + call-bind: "npm:^1.0.5" + define-properties: "npm:^1.2.1" + es-abstract: "npm:^1.22.3" + es-errors: "npm:^1.2.1" + get-intrinsic: "npm:^1.2.3" + is-array-buffer: "npm:^3.0.4" is-shared-array-buffer: "npm:^1.0.2" - checksum: 96b6e40e439678ffb7fa266398510074d33c3980fbb475490b69980cca60adec3b0777047ef377068a29862157f83edef42efc64ce48ce38977d04d68de5b7fb + checksum: 10c0/d32754045bcb2294ade881d45140a5e52bda2321b9e98fa514797b7f0d252c4c5ab0d1edb34112652c62fa6a9398def568da63a4d7544672229afea283358c36 languageName: node linkType: hard "arrow-key-navigation@npm:^1.2.0": version: 1.2.0 resolution: "arrow-key-navigation@npm:1.2.0" - checksum: 6a6ae0aa65cc1aeb2970fcd0ef855b3a4ba8366e785c20d2228e739c08364a2aac62aac09dc3224066aa9bc5fde1a95e7daf5084775fc71abb724649c54da68b + checksum: 10c0/6a6ae0aa65cc1aeb2970fcd0ef855b3a4ba8366e785c20d2228e739c08364a2aac62aac09dc3224066aa9bc5fde1a95e7daf5084775fc71abb724649c54da68b languageName: node linkType: hard @@ -4470,7 +4539,7 @@ __metadata: inherits: "npm:^2.0.1" minimalistic-assert: "npm:^1.0.0" safer-buffer: "npm:^2.1.0" - checksum: b577232fa6069cc52bb128e564002c62b2b1fe47f7137bdcd709c0b8495aa79cee0f8cc458a831b2d8675900eea0d05781b006be5e1aa4f0ae3577a73ec20324 + checksum: 10c0/b577232fa6069cc52bb128e564002c62b2b1fe47f7137bdcd709c0b8495aa79cee0f8cc458a831b2d8675900eea0d05781b006be5e1aa4f0ae3577a73ec20324 languageName: node linkType: hard @@ -4480,42 +4549,42 @@ __metadata: dependencies: object-assign: "npm:^4.1.1" util: "npm:0.10.3" - checksum: 188da37d63be479a3b14657c01080db90cdf7fa004e346af916cf8beebcaffb11359c596d0c9c3cd8174c9125a6225796ef1ce533487edc97f8ce3b18c1ab590 + checksum: 10c0/188da37d63be479a3b14657c01080db90cdf7fa004e346af916cf8beebcaffb11359c596d0c9c3cd8174c9125a6225796ef1ce533487edc97f8ce3b18c1ab590 languageName: node linkType: hard "assign-symbols@npm:^1.0.0": version: 1.0.0 resolution: "assign-symbols@npm:1.0.0" - checksum: 29a654b8a6da6889a190d0d0efef4b1bfb5948fa06cbc245054aef05139f889f2f7c75b989917e3fde853fc4093b88048e4de8578a73a76f113d41bfd66e5775 + checksum: 10c0/29a654b8a6da6889a190d0d0efef4b1bfb5948fa06cbc245054aef05139f889f2f7c75b989917e3fde853fc4093b88048e4de8578a73a76f113d41bfd66e5775 languageName: node linkType: hard "ast-types-flow@npm:^0.0.8": version: 0.0.8 resolution: "ast-types-flow@npm:0.0.8" - checksum: f2a0ba8055353b743c41431974521e5e852a9824870cd6fce2db0e538ac7bf4da406bbd018d109af29ff3f8f0993f6a730c9eddbd0abd031fbcb29ca75c1014e + checksum: 10c0/f2a0ba8055353b743c41431974521e5e852a9824870cd6fce2db0e538ac7bf4da406bbd018d109af29ff3f8f0993f6a730c9eddbd0abd031fbcb29ca75c1014e languageName: node linkType: hard "astral-regex@npm:^2.0.0": version: 2.0.0 resolution: "astral-regex@npm:2.0.0" - checksum: f63d439cc383db1b9c5c6080d1e240bd14dae745f15d11ec5da863e182bbeca70df6c8191cffef5deba0b566ef98834610a68be79ac6379c95eeb26e1b310e25 + checksum: 10c0/f63d439cc383db1b9c5c6080d1e240bd14dae745f15d11ec5da863e182bbeca70df6c8191cffef5deba0b566ef98834610a68be79ac6379c95eeb26e1b310e25 languageName: node linkType: hard "async-each@npm:^1.0.1": version: 1.0.6 resolution: "async-each@npm:1.0.6" - checksum: d4e45e8f077e20e015952c065ceae75f82b30ee2d4a8e56a5c454ae44331aaa009d8c94fe043ba254c177bffae9f6ebeefebb7daf9f7ce4d27fac0274dc328ae + checksum: 10c0/d4e45e8f077e20e015952c065ceae75f82b30ee2d4a8e56a5c454ae44331aaa009d8c94fe043ba254c177bffae9f6ebeefebb7daf9f7ce4d27fac0274dc328ae languageName: node linkType: hard "async-limiter@npm:~1.0.0": version: 1.0.1 resolution: "async-limiter@npm:1.0.1" - checksum: 0693d378cfe86842a70d4c849595a0bb50dc44c11649640ca982fa90cbfc74e3cc4753b5a0847e51933f2e9c65ce8e05576e75e5e1fd963a086e673735b35969 + checksum: 10c0/0693d378cfe86842a70d4c849595a0bb50dc44c11649640ca982fa90cbfc74e3cc4753b5a0847e51933f2e9c65ce8e05576e75e5e1fd963a086e673735b35969 languageName: node linkType: hard @@ -4524,7 +4593,7 @@ __metadata: resolution: "async-mutex@npm:0.4.1" dependencies: tslib: "npm:^2.4.0" - checksum: 3c412736c0bc4a9a2cfd948276a8caab8686aa615866a5bd20986e616f8945320acb310058a17afa1b31b8de6f634a78b7ec2217a33d7559b38f68bb85a95854 + checksum: 10c0/3c412736c0bc4a9a2cfd948276a8caab8686aa615866a5bd20986e616f8945320acb310058a17afa1b31b8de6f634a78b7ec2217a33d7559b38f68bb85a95854 languageName: node linkType: hard @@ -4533,14 +4602,14 @@ __metadata: resolution: "async@npm:2.6.4" dependencies: lodash: "npm:^4.17.14" - checksum: 0ebb3273ef96513389520adc88e0d3c45e523d03653cc9b66f5c46f4239444294899bfd13d2b569e7dbfde7da2235c35cf5fd3ece9524f935d41bbe4efccdad0 + checksum: 10c0/0ebb3273ef96513389520adc88e0d3c45e523d03653cc9b66f5c46f4239444294899bfd13d2b569e7dbfde7da2235c35cf5fd3ece9524f935d41bbe4efccdad0 languageName: node linkType: hard "async@npm:^3.2.3": version: 3.2.4 resolution: "async@npm:3.2.4" - checksum: b5d02fed64717edf49e35b2b156debd9cf524934ea670108fa5528e7615ed66a5e0bf6c65f832c9483b63aa7f0bffe3e588ebe8d58a539b833798d324516e1c9 + checksum: 10c0/b5d02fed64717edf49e35b2b156debd9cf524934ea670108fa5528e7615ed66a5e0bf6c65f832c9483b63aa7f0bffe3e588ebe8d58a539b833798d324516e1c9 languageName: node linkType: hard @@ -4549,21 +4618,21 @@ __metadata: resolution: "asynciterator.prototype@npm:1.0.0" dependencies: has-symbols: "npm:^1.0.3" - checksum: fb76850e57d931ff59fd16b6cddb79b0d34fe45f400b2c3480d38892e72cd089787401687dbdb7cdb14ece402c275d3e02a648760d1489cd493527129c4c6204 + checksum: 10c0/fb76850e57d931ff59fd16b6cddb79b0d34fe45f400b2c3480d38892e72cd089787401687dbdb7cdb14ece402c275d3e02a648760d1489cd493527129c4c6204 languageName: node linkType: hard "asynckit@npm:^0.4.0": version: 0.4.0 resolution: "asynckit@npm:0.4.0" - checksum: d73e2ddf20c4eb9337e1b3df1a0f6159481050a5de457c55b14ea2e5cb6d90bb69e004c9af54737a5ee0917fcf2c9e25de67777bbe58261847846066ba75bc9d + checksum: 10c0/d73e2ddf20c4eb9337e1b3df1a0f6159481050a5de457c55b14ea2e5cb6d90bb69e004c9af54737a5ee0917fcf2c9e25de67777bbe58261847846066ba75bc9d languageName: node linkType: hard "at-least-node@npm:^1.0.0": version: 1.0.0 resolution: "at-least-node@npm:1.0.0" - checksum: 4c058baf6df1bc5a1697cf182e2029c58cd99975288a13f9e70068ef5d6f4e1f1fd7c4d2c3c4912eae44797d1725be9700995736deca441b39f3e66d8dee97ef + checksum: 10c0/4c058baf6df1bc5a1697cf182e2029c58cd99975288a13f9e70068ef5d6f4e1f1fd7c4d2c3c4912eae44797d1725be9700995736deca441b39f3e66d8dee97ef languageName: node linkType: hard @@ -4572,14 +4641,14 @@ __metadata: resolution: "atob@npm:2.1.2" bin: atob: bin/atob.js - checksum: ada635b519dc0c576bb0b3ca63a73b50eefacf390abb3f062558342a8d68f2db91d0c8db54ce81b0d89de3b0f000de71f3ae7d761fd7d8cc624278fe443d6c7e + checksum: 10c0/ada635b519dc0c576bb0b3ca63a73b50eefacf390abb3f062558342a8d68f2db91d0c8db54ce81b0d89de3b0f000de71f3ae7d761fd7d8cc624278fe443d6c7e languageName: node linkType: hard "atomic-sleep@npm:^1.0.0": version: 1.0.0 resolution: "atomic-sleep@npm:1.0.0" - checksum: e329a6665512736a9bbb073e1761b4ec102f7926cce35037753146a9db9c8104f5044c1662e4a863576ce544fb8be27cd2be6bc8c1a40147d03f31eb1cfb6e8a + checksum: 10c0/e329a6665512736a9bbb073e1761b4ec102f7926cce35037753146a9db9c8104f5044c1662e4a863576ce544fb8be27cd2be6bc8c1a40147d03f31eb1cfb6e8a languageName: node linkType: hard @@ -4597,21 +4666,23 @@ __metadata: postcss: ^8.1.0 bin: autoprefixer: bin/autoprefixer - checksum: 1d21cc8edb7bf993682094ceed03a32c18f5293f071182a64c2c6defb44bbe91d576ad775d2347469a81997b80cea0bbc4ad3eeb5b12710f9feacf2e6c04bb51 + checksum: 10c0/1d21cc8edb7bf993682094ceed03a32c18f5293f071182a64c2c6defb44bbe91d576ad775d2347469a81997b80cea0bbc4ad3eeb5b12710f9feacf2e6c04bb51 languageName: node linkType: hard -"available-typed-arrays@npm:^1.0.5": - version: 1.0.5 - resolution: "available-typed-arrays@npm:1.0.5" - checksum: c4df567ca72d2754a6cbad20088f5f98b1065b3360178169fa9b44ea101af62c0f423fc3854fa820fd6895b6b9171b8386e71558203103ff8fc2ad503fdcc660 +"available-typed-arrays@npm:^1.0.6, available-typed-arrays@npm:^1.0.7": + version: 1.0.7 + resolution: "available-typed-arrays@npm:1.0.7" + dependencies: + possible-typed-array-names: "npm:^1.0.0" + checksum: 10c0/d07226ef4f87daa01bd0fe80f8f310982e345f372926da2e5296aecc25c41cab440916bbaa4c5e1034b453af3392f67df5961124e4b586df1e99793a1374bdb2 languageName: node linkType: hard "axe-core@npm:=4.7.0": version: 4.7.0 resolution: "axe-core@npm:4.7.0" - checksum: 89ac5712b5932ac7d23398b4cb5ba081c394a086e343acc68ba49c83472706e18e0799804e8388c779dcdacc465377deb29f2714241d3fbb389cf3a6b275c9ba + checksum: 10c0/89ac5712b5932ac7d23398b4cb5ba081c394a086e343acc68ba49c83472706e18e0799804e8388c779dcdacc465377deb29f2714241d3fbb389cf3a6b275c9ba languageName: node linkType: hard @@ -4622,7 +4693,7 @@ __metadata: follow-redirects: "npm:^1.15.4" form-data: "npm:^4.0.0" proxy-from-env: "npm:^1.1.0" - checksum: 131bf8e62eee48ca4bd84e6101f211961bf6a21a33b95e5dfb3983d5a2fe50d9fffde0b57668d7ce6f65063d3dc10f2212cbcb554f75cfca99da1c73b210358d + checksum: 10c0/131bf8e62eee48ca4bd84e6101f211961bf6a21a33b95e5dfb3983d5a2fe50d9fffde0b57668d7ce6f65063d3dc10f2212cbcb554f75cfca99da1c73b210358d languageName: node linkType: hard @@ -4631,7 +4702,7 @@ __metadata: resolution: "axobject-query@npm:3.2.1" dependencies: dequal: "npm:^2.0.3" - checksum: f7debc2012e456139b57d888c223f6d3cb4b61eb104164a85e3d346273dd6ef0bc9a04b6660ca9407704a14a8e05fa6b6eb9d55f44f348c7210de7ffb350c3a7 + checksum: 10c0/f7debc2012e456139b57d888c223f6d3cb4b61eb104164a85e3d346273dd6ef0bc9a04b6660ca9407704a14a8e05fa6b6eb9d55f44f348c7210de7ffb350c3a7 languageName: node linkType: hard @@ -4648,7 +4719,7 @@ __metadata: slash: "npm:^3.0.0" peerDependencies: "@babel/core": ^7.8.0 - checksum: 2eda9c1391e51936ca573dd1aedfee07b14c59b33dbe16ef347873ddd777bcf6e2fc739681e9e9661ab54ef84a3109a03725be2ac32cd2124c07ea4401cbe8c1 + checksum: 10c0/2eda9c1391e51936ca573dd1aedfee07b14c59b33dbe16ef347873ddd777bcf6e2fc739681e9e9661ab54ef84a3109a03725be2ac32cd2124c07ea4401cbe8c1 languageName: node linkType: hard @@ -4663,7 +4734,7 @@ __metadata: peerDependencies: "@babel/core": ^7.0.0 webpack: ">=2" - checksum: 7b83bae35a12fbc5cdf250e2d36a288305fe5b6d20ab044ab7c09bbf456c8895b80af7a4f1e8b64b5c07a4fd48d4b5144dab40b4bc72a4fed532dc000362f38f + checksum: 10c0/7b83bae35a12fbc5cdf250e2d36a288305fe5b6d20ab044ab7c09bbf456c8895b80af7a4f1e8b64b5c07a4fd48d4b5144dab40b4bc72a4fed532dc000362f38f languageName: node linkType: hard @@ -4682,7 +4753,7 @@ __metadata: "@types/babel__helper-plugin-utils": "npm:^7.10.0" "@types/babel__traverse": "npm:^7.1.7" tslib: "npm:^2.4.0" - checksum: 1ce0b69478dd3c92126a7e3440f1fad46feebebc9318e8bbb102dea91a60448da4a8511b3c8ffbf2c3675995fca6c8ce7f097c08907455b33a5f9185e39fb94e + checksum: 10c0/1ce0b69478dd3c92126a7e3440f1fad46feebebc9318e8bbb102dea91a60448da4a8511b3c8ffbf2c3675995fca6c8ce7f097c08907455b33a5f9185e39fb94e languageName: node linkType: hard @@ -4695,7 +4766,7 @@ __metadata: "@istanbuljs/schema": "npm:^0.1.2" istanbul-lib-instrument: "npm:^5.0.4" test-exclude: "npm:^6.0.0" - checksum: 1075657feb705e00fd9463b329921856d3775d9867c5054b449317d39153f8fbcebd3e02ebf00432824e647faff3683a9ca0a941325ef1afe9b3c4dd51b24beb + checksum: 10c0/1075657feb705e00fd9463b329921856d3775d9867c5054b449317d39153f8fbcebd3e02ebf00432824e647faff3683a9ca0a941325ef1afe9b3c4dd51b24beb languageName: node linkType: hard @@ -4707,7 +4778,7 @@ __metadata: "@babel/types": "npm:^7.3.3" "@types/babel__core": "npm:^7.1.14" "@types/babel__traverse": "npm:^7.0.6" - checksum: 7e6451caaf7dce33d010b8aafb970e62f1b0c0b57f4978c37b0d457bbcf0874d75a395a102daf0bae0bd14eafb9f6e9a165ee5e899c0a4f1f3bb2e07b304ed2e + checksum: 10c0/7e6451caaf7dce33d010b8aafb970e62f1b0c0b57f4978c37b0d457bbcf0874d75a395a102daf0bae0bd14eafb9f6e9a165ee5e899c0a4f1f3bb2e07b304ed2e languageName: node linkType: hard @@ -4720,7 +4791,7 @@ __metadata: glob: "npm:^7.1.1" lodash: "npm:^4.17.10" require-package-name: "npm:^2.0.1" - checksum: 1a1db624f70c1e9badd3ca112bc6819157e75768aab949c424cfabe562765d7f22cf93e5e088e820d5d5b1da7b2bd9d045cb54a5790616b65da1f84eda2ecc08 + checksum: 10c0/1a1db624f70c1e9badd3ca112bc6819157e75768aab949c424cfabe562765d7f22cf93e5e088e820d5d5b1da7b2bd9d045cb54a5790616b65da1f84eda2ecc08 languageName: node linkType: hard @@ -4733,7 +4804,7 @@ __metadata: glob: "npm:^7.1.1" lodash: "npm:^4.17.10" require-package-name: "npm:^2.0.1" - checksum: 61fe073dcb381141d5cce766582750f487609bea3ad1c6725d736287f2ccd270e14d14190a7bd2700945a39acf8d58fdbee3ab7f80a7eb2a65980cf77185226c + checksum: 10c0/61fe073dcb381141d5cce766582750f487609bea3ad1c6725d736287f2ccd270e14d14190a7bd2700945a39acf8d58fdbee3ab7f80a7eb2a65980cf77185226c languageName: node linkType: hard @@ -4744,7 +4815,7 @@ __metadata: "@babel/runtime": "npm:^7.12.5" cosmiconfig: "npm:^7.0.0" resolve: "npm:^1.19.0" - checksum: c6dfb15de96f67871d95bd2e8c58b0c81edc08b9b087dc16755e7157f357dc1090a8dc60ebab955e92587a9101f02eba07e730adc253a1e4cf593ca3ebd3839c + checksum: 10c0/c6dfb15de96f67871d95bd2e8c58b0c81edc08b9b087dc16755e7157f357dc1090a8dc60ebab955e92587a9101f02eba07e730adc253a1e4cf593ca3ebd3839c languageName: node linkType: hard @@ -4757,7 +4828,7 @@ __metadata: semver: "npm:^6.3.1" peerDependencies: "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: 843e7528de0e03a31a6f3837896a95f75b0b24b0294a077246282372279e974400b0bdd82399e8f9cbfe42c87ed56540fd71c33eafb7c8e8b9adac546ecc5fe5 + checksum: 10c0/843e7528de0e03a31a6f3837896a95f75b0b24b0294a077246282372279e974400b0bdd82399e8f9cbfe42c87ed56540fd71c33eafb7c8e8b9adac546ecc5fe5 languageName: node linkType: hard @@ -4769,7 +4840,7 @@ __metadata: core-js-compat: "npm:^3.34.0" peerDependencies: "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: b857010736c5e42e20b683973dae862448a42082fcc95b3ef188305a6864a4f94b5cbd568e49e4cd7172c6b2eace7bc403c3ba0984fbe5479474ade01126d559 + checksum: 10c0/b857010736c5e42e20b683973dae862448a42082fcc95b3ef188305a6864a4f94b5cbd568e49e4cd7172c6b2eace7bc403c3ba0984fbe5479474ade01126d559 languageName: node linkType: hard @@ -4780,7 +4851,7 @@ __metadata: "@babel/helper-define-polyfill-provider": "npm:^0.5.0" peerDependencies: "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0 - checksum: 2aab692582082d54e0df9f9373dca1b223e65b4e7e96440160f27ed8803d417a1fa08da550f08aa3820d2010329ca91b68e2b6e9bd7aed51c93d46dfe79629bb + checksum: 10c0/2aab692582082d54e0df9f9373dca1b223e65b4e7e96440160f27ed8803d417a1fa08da550f08aa3820d2010329ca91b68e2b6e9bd7aed51c93d46dfe79629bb languageName: node linkType: hard @@ -4792,14 +4863,14 @@ __metadata: "@types/babel__core": "npm:^7.1.12" babel-plugin-macros: "npm:^3.0.1" require-from-string: "npm:^2.0.2" - checksum: d40814ca18f24df818a87e71ad8c1dc559cf69c0e44218bb9f5aef24680431a04e4bad8e96dc2679282b50b16a55c9597e37130d6bd5489b3eddab97d020ae5e + checksum: 10c0/d40814ca18f24df818a87e71ad8c1dc559cf69c0e44218bb9f5aef24680431a04e4bad8e96dc2679282b50b16a55c9597e37130d6bd5489b3eddab97d020ae5e languageName: node linkType: hard "babel-plugin-transform-react-remove-prop-types@npm:^0.4.24": version: 0.4.24 resolution: "babel-plugin-transform-react-remove-prop-types@npm:0.4.24" - checksum: 713441fd9fb663cc95709cb52d9c2c6228ea6d5406092a8a50094c810bcb13c3c347f8fca703d45b20cc401782743a91d7272025950147f9247d53360267f107 + checksum: 10c0/713441fd9fb663cc95709cb52d9c2c6228ea6d5406092a8a50094c810bcb13c3c347f8fca703d45b20cc401782743a91d7272025950147f9247d53360267f107 languageName: node linkType: hard @@ -4821,7 +4892,7 @@ __metadata: "@babel/plugin-syntax-top-level-await": "npm:^7.8.3" peerDependencies: "@babel/core": ^7.0.0 - checksum: 5ba39a3a0e6c37d25e56a4fb843be632dac98d54706d8a0933f9bcb1a07987a96d55c2b5a6c11788a74063fb2534fe68c1f1dbb6c93626850c785e0938495627 + checksum: 10c0/5ba39a3a0e6c37d25e56a4fb843be632dac98d54706d8a0933f9bcb1a07987a96d55c2b5a6c11788a74063fb2534fe68c1f1dbb6c93626850c785e0938495627 languageName: node linkType: hard @@ -4833,28 +4904,28 @@ __metadata: babel-preset-current-node-syntax: "npm:^1.0.0" peerDependencies: "@babel/core": ^7.0.0 - checksum: ec5fd0276b5630b05f0c14bb97cc3815c6b31600c683ebb51372e54dcb776cff790bdeeabd5b8d01ede375a040337ccbf6a3ccd68d3a34219125945e167ad943 + checksum: 10c0/ec5fd0276b5630b05f0c14bb97cc3815c6b31600c683ebb51372e54dcb776cff790bdeeabd5b8d01ede375a040337ccbf6a3ccd68d3a34219125945e167ad943 languageName: node linkType: hard "balanced-match@npm:^1.0.0": version: 1.0.2 resolution: "balanced-match@npm:1.0.2" - checksum: 9308baf0a7e4838a82bbfd11e01b1cb0f0cf2893bc1676c27c2a8c0e70cbae1c59120c3268517a8ae7fb6376b4639ef81ca22582611dbee4ed28df945134aaee + checksum: 10c0/9308baf0a7e4838a82bbfd11e01b1cb0f0cf2893bc1676c27c2a8c0e70cbae1c59120c3268517a8ae7fb6376b4639ef81ca22582611dbee4ed28df945134aaee languageName: node linkType: hard "balanced-match@npm:^2.0.0": version: 2.0.0 resolution: "balanced-match@npm:2.0.0" - checksum: 60a54e0b75a61674e16a7a336b805f06c72d6f8fc457639c24efc512ba2bf9cb5744b9f6f5225afcefb99da39714440c83c737208cc65c5d9ecd1f3093331ca3 + checksum: 10c0/60a54e0b75a61674e16a7a336b805f06c72d6f8fc457639c24efc512ba2bf9cb5744b9f6f5225afcefb99da39714440c83c737208cc65c5d9ecd1f3093331ca3 languageName: node linkType: hard "base64-js@npm:^1.0.2, base64-js@npm:^1.3.1": version: 1.5.1 resolution: "base64-js@npm:1.5.1" - checksum: f23823513b63173a001030fae4f2dabe283b99a9d324ade3ad3d148e218134676f1ee8568c877cd79ec1c53158dcf2d2ba527a97c606618928ba99dd930102bf + checksum: 10c0/f23823513b63173a001030fae4f2dabe283b99a9d324ade3ad3d148e218134676f1ee8568c877cd79ec1c53158dcf2d2ba527a97c606618928ba99dd930102bf languageName: node linkType: hard @@ -4869,42 +4940,35 @@ __metadata: isobject: "npm:^3.0.1" mixin-deep: "npm:^1.2.0" pascalcase: "npm:^0.1.1" - checksum: 30a2c0675eb52136b05ef496feb41574d9f0bb2d6d677761da579c00a841523fccf07f1dbabec2337b5f5750f428683b8ca60d89e56a1052c4ae1c0cd05de64d + checksum: 10c0/30a2c0675eb52136b05ef496feb41574d9f0bb2d6d677761da579c00a841523fccf07f1dbabec2337b5f5750f428683b8ca60d89e56a1052c4ae1c0cd05de64d languageName: node linkType: hard "batch@npm:0.6.1": version: 0.6.1 resolution: "batch@npm:0.6.1" - checksum: 925a13897b4db80d4211082fe287bcf96d297af38e26448c857cee3e095c9792e3b8f26b37d268812e7f38a589f694609de8534a018b1937d7dc9f84e6b387c5 - languageName: node - linkType: hard - -"big-integer@npm:^1.6.44": - version: 1.6.51 - resolution: "big-integer@npm:1.6.51" - checksum: c8139662d57f8833a44802f4b65be911679c569535ea73c5cfd3c1c8994eaead1b84b6f63e1db63833e4d4cacb6b6a9e5522178113dfdc8e4c81ed8436f1e8cc + checksum: 10c0/925a13897b4db80d4211082fe287bcf96d297af38e26448c857cee3e095c9792e3b8f26b37d268812e7f38a589f694609de8534a018b1937d7dc9f84e6b387c5 languageName: node linkType: hard "big.js@npm:^5.2.2": version: 5.2.2 resolution: "big.js@npm:5.2.2" - checksum: 230520f1ff920b2d2ce3e372d77a33faa4fa60d802fe01ca4ffbc321ee06023fe9a741ac02793ee778040a16b7e497f7d60c504d1c402b8fdab6f03bb785a25f + checksum: 10c0/230520f1ff920b2d2ce3e372d77a33faa4fa60d802fe01ca4ffbc321ee06023fe9a741ac02793ee778040a16b7e497f7d60c504d1c402b8fdab6f03bb785a25f languageName: node linkType: hard "binary-extensions@npm:^1.0.0": version: 1.13.1 resolution: "binary-extensions@npm:1.13.1" - checksum: 2d616938ac23d828ec3fbe0dea429b566fd2c137ddc38f166f16561ccd58029deac3fa9fddb489ab13d679c8fb5f1bd0e82824041299e5e39d8dd3cc68fbb9f9 + checksum: 10c0/2d616938ac23d828ec3fbe0dea429b566fd2c137ddc38f166f16561ccd58029deac3fa9fddb489ab13d679c8fb5f1bd0e82824041299e5e39d8dd3cc68fbb9f9 languageName: node linkType: hard "binary-extensions@npm:^2.0.0": version: 2.2.0 resolution: "binary-extensions@npm:2.2.0" - checksum: d73d8b897238a2d3ffa5f59c0241870043aa7471335e89ea5e1ff48edb7c2d0bb471517a3e4c5c3f4c043615caa2717b5f80a5e61e07503d51dc85cb848e665d + checksum: 10c0/d73d8b897238a2d3ffa5f59c0241870043aa7471335e89ea5e1ff48edb7c2d0bb471517a3e4c5c3f4c043615caa2717b5f80a5e61e07503d51dc85cb848e665d languageName: node linkType: hard @@ -4913,58 +4977,58 @@ __metadata: resolution: "bindings@npm:1.5.0" dependencies: file-uri-to-path: "npm:1.0.0" - checksum: 3dab2491b4bb24124252a91e656803eac24292473e56554e35bbfe3cc1875332cfa77600c3bac7564049dc95075bf6fcc63a4609920ff2d64d0fe405fcf0d4ba + checksum: 10c0/3dab2491b4bb24124252a91e656803eac24292473e56554e35bbfe3cc1875332cfa77600c3bac7564049dc95075bf6fcc63a4609920ff2d64d0fe405fcf0d4ba languageName: node linkType: hard "bintrees@npm:1.0.2": version: 1.0.2 resolution: "bintrees@npm:1.0.2" - checksum: 132944b20c93c1a8f97bf8aa25980a76c6eb4291b7f2df2dbcd01cb5b417c287d3ee0847c7260c9f05f3d5a4233aaa03dec95114e97f308abe9cc3f72bed4a44 + checksum: 10c0/132944b20c93c1a8f97bf8aa25980a76c6eb4291b7f2df2dbcd01cb5b417c287d3ee0847c7260c9f05f3d5a4233aaa03dec95114e97f308abe9cc3f72bed4a44 languageName: node linkType: hard "blueimp-load-image@npm:^3.0.0": version: 3.0.0 resolution: "blueimp-load-image@npm:3.0.0" - checksum: e860da4113afd8e58bc026fb17240007e15dc155287a70fb57b3048fc8f0aa5f7dbd052efed8bff19d1208eeab4d058dc6788684a721c50ccd08b68d836a8d18 + checksum: 10c0/e860da4113afd8e58bc026fb17240007e15dc155287a70fb57b3048fc8f0aa5f7dbd052efed8bff19d1208eeab4d058dc6788684a721c50ccd08b68d836a8d18 languageName: node linkType: hard "blurhash@npm:^2.0.5": version: 2.0.5 resolution: "blurhash@npm:2.0.5" - checksum: 75d5f042b5bb8ead977524a985048378a033af866534abbaee73c80030cc9fc34e6c5b7d483c68bbdb600e0ae438f2ea6140b1f46d75fcfa57a902208ae8b85e + checksum: 10c0/75d5f042b5bb8ead977524a985048378a033af866534abbaee73c80030cc9fc34e6c5b7d483c68bbdb600e0ae438f2ea6140b1f46d75fcfa57a902208ae8b85e languageName: node linkType: hard "bmp-js@npm:^0.1.0": version: 0.1.0 resolution: "bmp-js@npm:0.1.0" - checksum: c651bd5936dcf8d67900050fac14dcbe30baf87c3d21c58f4934fcdf46172e152a87d8c0c3ca25caa2b4b2c7780ef3b5fcc6cd20afd8f0351856cadb1bef9694 + checksum: 10c0/c651bd5936dcf8d67900050fac14dcbe30baf87c3d21c58f4934fcdf46172e152a87d8c0c3ca25caa2b4b2c7780ef3b5fcc6cd20afd8f0351856cadb1bef9694 languageName: node linkType: hard "bn.js@npm:^4.0.0, bn.js@npm:^4.1.0, bn.js@npm:^4.11.9": version: 4.12.0 resolution: "bn.js@npm:4.12.0" - checksum: 9736aaa317421b6b3ed038ff3d4491935a01419ac2d83ddcfebc5717385295fcfcf0c57311d90fe49926d0abbd7a9dbefdd8861e6129939177f7e67ebc645b21 + checksum: 10c0/9736aaa317421b6b3ed038ff3d4491935a01419ac2d83ddcfebc5717385295fcfcf0c57311d90fe49926d0abbd7a9dbefdd8861e6129939177f7e67ebc645b21 languageName: node linkType: hard "bn.js@npm:^5.0.0, bn.js@npm:^5.1.1": version: 5.2.1 resolution: "bn.js@npm:5.2.1" - checksum: bed3d8bd34ec89dbcf9f20f88bd7d4a49c160fda3b561c7bb227501f974d3e435a48fb9b61bc3de304acab9215a3bda0803f7017ffb4d0016a0c3a740a283caa + checksum: 10c0/bed3d8bd34ec89dbcf9f20f88bd7d4a49c160fda3b561c7bb227501f974d3e435a48fb9b61bc3de304acab9215a3bda0803f7017ffb4d0016a0c3a740a283caa languageName: node linkType: hard -"body-parser@npm:1.20.1": - version: 1.20.1 - resolution: "body-parser@npm:1.20.1" +"body-parser@npm:1.20.2": + version: 1.20.2 + resolution: "body-parser@npm:1.20.2" dependencies: bytes: "npm:3.1.2" - content-type: "npm:~1.0.4" + content-type: "npm:~1.0.5" debug: "npm:2.6.9" depd: "npm:2.0.0" destroy: "npm:1.2.0" @@ -4972,10 +5036,10 @@ __metadata: iconv-lite: "npm:0.4.24" on-finished: "npm:2.4.1" qs: "npm:6.11.0" - raw-body: "npm:2.5.1" + raw-body: "npm:2.5.2" type-is: "npm:~1.6.18" unpipe: "npm:1.0.0" - checksum: a202d493e2c10a33fb7413dac7d2f713be579c4b88343cd814b6df7a38e5af1901fc31044e04de176db56b16d9772aa25a7723f64478c20f4d91b1ac223bf3b8 + checksum: 10c0/06f1438fff388a2e2354c96aa3ea8147b79bfcb1262dfcc2aae68ec13723d01d5781680657b74e9f83c808266d5baf52804032fbde2b7382b89bd8cdb273ace9 languageName: node linkType: hard @@ -4989,23 +5053,14 @@ __metadata: dns-txt: "npm:^2.0.2" multicast-dns: "npm:^6.0.1" multicast-dns-service-types: "npm:^1.1.0" - checksum: 0be7c4cd96df563571973706226e750f6feeacd81d01c1ade11247eb3a7e14846af49cffe397ab970059b828dd89f694f456e22bca4ca315a7f0326e9303e241 + checksum: 10c0/0be7c4cd96df563571973706226e750f6feeacd81d01c1ade11247eb3a7e14846af49cffe397ab970059b828dd89f694f456e22bca4ca315a7f0326e9303e241 languageName: node linkType: hard "boolbase@npm:^1.0.0, boolbase@npm:~1.0.0": version: 1.0.0 resolution: "boolbase@npm:1.0.0" - checksum: e4b53deb4f2b85c52be0e21a273f2045c7b6a6ea002b0e139c744cb6f95e9ec044439a52883b0d74dedd1ff3da55ed140cfdddfed7fb0cccbed373de5dce1bcf - languageName: node - linkType: hard - -"bplist-parser@npm:^0.2.0": - version: 0.2.0 - resolution: "bplist-parser@npm:0.2.0" - dependencies: - big-integer: "npm:^1.6.44" - checksum: ce79c69e0f6efe506281e7c84e3712f7d12978991675b6e3a58a295b16f13ca81aa9b845c335614a545e0af728c8311b6aa3142af76ba1cb616af9bbac5c4a9f + checksum: 10c0/e4b53deb4f2b85c52be0e21a273f2045c7b6a6ea002b0e139c744cb6f95e9ec044439a52883b0d74dedd1ff3da55ed140cfdddfed7fb0cccbed373de5dce1bcf languageName: node linkType: hard @@ -5015,7 +5070,7 @@ __metadata: dependencies: balanced-match: "npm:^1.0.0" concat-map: "npm:0.0.1" - checksum: 695a56cd058096a7cb71fb09d9d6a7070113c7be516699ed361317aca2ec169f618e28b8af352e02ab4233fb54eb0168460a40dc320bab0034b36ab59aaad668 + checksum: 10c0/695a56cd058096a7cb71fb09d9d6a7070113c7be516699ed361317aca2ec169f618e28b8af352e02ab4233fb54eb0168460a40dc320bab0034b36ab59aaad668 languageName: node linkType: hard @@ -5024,7 +5079,7 @@ __metadata: resolution: "brace-expansion@npm:2.0.1" dependencies: balanced-match: "npm:^1.0.0" - checksum: b358f2fe060e2d7a87aa015979ecea07f3c37d4018f8d6deb5bd4c229ad3a0384fe6029bb76cd8be63c81e516ee52d1a0673edbe2023d53a5191732ae3c3e49f + checksum: 10c0/b358f2fe060e2d7a87aa015979ecea07f3c37d4018f8d6deb5bd4c229ad3a0384fe6029bb76cd8be63c81e516ee52d1a0673edbe2023d53a5191732ae3c3e49f languageName: node linkType: hard @@ -5042,7 +5097,7 @@ __metadata: snapdragon-node: "npm:^2.0.1" split-string: "npm:^3.0.2" to-regex: "npm:^3.0.1" - checksum: 72b27ea3ea2718f061c29e70fd6e17606e37c65f5801abddcf0b0052db1de7d60f3bf92cfc220ab57b44bd0083a5f69f9d03b3461d2816cfe9f9398207acc728 + checksum: 10c0/72b27ea3ea2718f061c29e70fd6e17606e37c65f5801abddcf0b0052db1de7d60f3bf92cfc220ab57b44bd0083a5f69f9d03b3461d2816cfe9f9398207acc728 languageName: node linkType: hard @@ -5051,14 +5106,14 @@ __metadata: resolution: "braces@npm:3.0.2" dependencies: fill-range: "npm:^7.0.1" - checksum: 321b4d675791479293264019156ca322163f02dc06e3c4cab33bb15cd43d80b51efef69b0930cfde3acd63d126ebca24cd0544fa6f261e093a0fb41ab9dda381 + checksum: 10c0/321b4d675791479293264019156ca322163f02dc06e3c4cab33bb15cd43d80b51efef69b0930cfde3acd63d126ebca24cd0544fa6f261e093a0fb41ab9dda381 languageName: node linkType: hard "brorand@npm:^1.0.1, brorand@npm:^1.1.0": version: 1.1.0 resolution: "brorand@npm:1.1.0" - checksum: 6f366d7c4990f82c366e3878492ba9a372a73163c09871e80d82fb4ae0d23f9f8924cb8a662330308206e6b3b76ba1d528b4601c9ef73c2166b440b2ea3b7571 + checksum: 10c0/6f366d7c4990f82c366e3878492ba9a372a73163c09871e80d82fb4ae0d23f9f8924cb8a662330308206e6b3b76ba1d528b4601c9ef73c2166b440b2ea3b7571 languageName: node linkType: hard @@ -5072,7 +5127,7 @@ __metadata: evp_bytestokey: "npm:^1.0.3" inherits: "npm:^2.0.1" safe-buffer: "npm:^5.0.1" - checksum: 967f2ae60d610b7b252a4cbb55a7a3331c78293c94b4dd9c264d384ca93354c089b3af9c0dd023534efdc74ffbc82510f7ad4399cf82bc37bc07052eea485f18 + checksum: 10c0/967f2ae60d610b7b252a4cbb55a7a3331c78293c94b4dd9c264d384ca93354c089b3af9c0dd023534efdc74ffbc82510f7ad4399cf82bc37bc07052eea485f18 languageName: node linkType: hard @@ -5083,7 +5138,7 @@ __metadata: browserify-aes: "npm:^1.0.4" browserify-des: "npm:^1.0.0" evp_bytestokey: "npm:^1.0.0" - checksum: aa256dcb42bc53a67168bbc94ab85d243b0a3b56109dee3b51230b7d010d9b78985ffc1fb36e145c6e4db151f888076c1cfc207baf1525d3e375cbe8187fe27d + checksum: 10c0/aa256dcb42bc53a67168bbc94ab85d243b0a3b56109dee3b51230b7d010d9b78985ffc1fb36e145c6e4db151f888076c1cfc207baf1525d3e375cbe8187fe27d languageName: node linkType: hard @@ -5095,7 +5150,7 @@ __metadata: des.js: "npm:^1.0.0" inherits: "npm:^2.0.1" safe-buffer: "npm:^5.1.2" - checksum: 943eb5d4045eff80a6cde5be4e5fbb1f2d5002126b5a4789c3c1aae3cdddb1eb92b00fb92277f512288e5c6af330730b1dbabcf7ce0923e749e151fcee5a074d + checksum: 10c0/943eb5d4045eff80a6cde5be4e5fbb1f2d5002126b5a4789c3c1aae3cdddb1eb92b00fb92277f512288e5c6af330730b1dbabcf7ce0923e749e151fcee5a074d languageName: node linkType: hard @@ -5105,7 +5160,7 @@ __metadata: dependencies: bn.js: "npm:^5.0.0" randombytes: "npm:^2.0.1" - checksum: fb2b5a8279d8a567a28d8ee03fb62e448428a906bab5c3dc9e9c3253ace551b5ea271db15e566ac78f1b1d71b243559031446604168b9235c351a32cae99d02a + checksum: 10c0/fb2b5a8279d8a567a28d8ee03fb62e448428a906bab5c3dc9e9c3253ace551b5ea271db15e566ac78f1b1d71b243559031446604168b9235c351a32cae99d02a languageName: node linkType: hard @@ -5122,7 +5177,7 @@ __metadata: parse-asn1: "npm:^5.1.5" readable-stream: "npm:^3.6.0" safe-buffer: "npm:^5.2.0" - checksum: 8f00a370e3e97060977dc58e51251d3ca398ee73523994a44430321e8de2c7d85395362d59014b2b07efe4190f369baee2ff28eb8f405ff4660b776651cf052d + checksum: 10c0/8f00a370e3e97060977dc58e51251d3ca398ee73523994a44430321e8de2c7d85395362d59014b2b07efe4190f369baee2ff28eb8f405ff4660b776651cf052d languageName: node linkType: hard @@ -5131,21 +5186,21 @@ __metadata: resolution: "browserify-zlib@npm:0.2.0" dependencies: pako: "npm:~1.0.5" - checksum: 9ab10b6dc732c6c5ec8ebcbe5cb7fe1467f97402c9b2140113f47b5f187b9438f93a8e065d8baf8b929323c18324fbf1105af479ee86d9d36cab7d7ef3424ad9 + checksum: 10c0/9ab10b6dc732c6c5ec8ebcbe5cb7fe1467f97402c9b2140113f47b5f187b9438f93a8e065d8baf8b929323c18324fbf1105af479ee86d9d36cab7d7ef3424ad9 languageName: node linkType: hard -"browserslist@npm:^4.0.0, browserslist@npm:^4.22.2": - version: 4.22.2 - resolution: "browserslist@npm:4.22.2" +"browserslist@npm:^4.0.0, browserslist@npm:^4.22.2, browserslist@npm:^4.23.0": + version: 4.23.0 + resolution: "browserslist@npm:4.23.0" dependencies: - caniuse-lite: "npm:^1.0.30001565" - electron-to-chromium: "npm:^1.4.601" + caniuse-lite: "npm:^1.0.30001587" + electron-to-chromium: "npm:^1.4.668" node-releases: "npm:^2.0.14" update-browserslist-db: "npm:^1.0.13" bin: browserslist: cli.js - checksum: 2a331aab90503130043ca41dd5d281fa1e89d5e076d07a2d75e76bf4d693bd56e73d5abcd8c4f39119da6328d450578c216cf1cd5c99b82d8a90a2ae6271b465 + checksum: 10c0/8e9cc154529062128d02a7af4d8adeead83ca1df8cd9ee65a88e2161039f3d68a4d40fea7353cab6bae4c16182dec2fdd9a1cf7dc2a2935498cee1af0e998943 languageName: node linkType: hard @@ -5154,35 +5209,35 @@ __metadata: resolution: "bser@npm:2.1.1" dependencies: node-int64: "npm:^0.4.0" - checksum: 24d8dfb7b6d457d73f32744e678a60cc553e4ec0e9e1a01cf614b44d85c3c87e188d3cc78ef0442ce5032ee6818de20a0162ba1074725c0d08908f62ea979227 + checksum: 10c0/24d8dfb7b6d457d73f32744e678a60cc553e4ec0e9e1a01cf614b44d85c3c87e188d3cc78ef0442ce5032ee6818de20a0162ba1074725c0d08908f62ea979227 languageName: node linkType: hard "buffer-from@npm:^1.0.0": version: 1.1.2 resolution: "buffer-from@npm:1.1.2" - checksum: 124fff9d66d691a86d3b062eff4663fe437a9d9ee4b47b1b9e97f5a5d14f6d5399345db80f796827be7c95e70a8e765dd404b7c3ff3b3324f98e9b0c8826cc34 + checksum: 10c0/124fff9d66d691a86d3b062eff4663fe437a9d9ee4b47b1b9e97f5a5d14f6d5399345db80f796827be7c95e70a8e765dd404b7c3ff3b3324f98e9b0c8826cc34 languageName: node linkType: hard "buffer-indexof@npm:^1.0.0": version: 1.1.1 resolution: "buffer-indexof@npm:1.1.1" - checksum: 67906b0a9892854e24ac717ef823c3b19790c653a8b1902835bbf3c3c46ea8d99f0680a92f7394fc5acbbecb3385775ccd504ea00587d2d67d8dfaadd460eeae + checksum: 10c0/67906b0a9892854e24ac717ef823c3b19790c653a8b1902835bbf3c3c46ea8d99f0680a92f7394fc5acbbecb3385775ccd504ea00587d2d67d8dfaadd460eeae languageName: node linkType: hard "buffer-writer@npm:2.0.0": version: 2.0.0 resolution: "buffer-writer@npm:2.0.0" - checksum: c91b2ab09a200cf0862237e5a4dbd5077003b42d26d4f0c596ec7149f82ef83e0751d670bcdf379ed988d1a08c0fac7759a8cb928cf1a4710a1988a7618b1190 + checksum: 10c0/c91b2ab09a200cf0862237e5a4dbd5077003b42d26d4f0c596ec7149f82ef83e0751d670bcdf379ed988d1a08c0fac7759a8cb928cf1a4710a1988a7618b1190 languageName: node linkType: hard "buffer-xor@npm:^1.0.3": version: 1.0.3 resolution: "buffer-xor@npm:1.0.3" - checksum: fd269d0e0bf71ecac3146187cfc79edc9dbb054e2ee69b4d97dfb857c6d997c33de391696d04bdd669272751fa48e7872a22f3a6c7b07d6c0bc31dbe02a4075c + checksum: 10c0/fd269d0e0bf71ecac3146187cfc79edc9dbb054e2ee69b4d97dfb857c6d997c33de391696d04bdd669272751fa48e7872a22f3a6c7b07d6c0bc31dbe02a4075c languageName: node linkType: hard @@ -5193,7 +5248,7 @@ __metadata: base64-js: "npm:^1.0.2" ieee754: "npm:^1.1.4" isarray: "npm:^1.0.0" - checksum: dc443d7e7caab23816b58aacdde710b72f525ad6eecd7d738fcaa29f6d6c12e8d9c13fed7219fd502be51ecf0615f5c077d4bdc6f9308dde2e53f8e5393c5b21 + checksum: 10c0/dc443d7e7caab23816b58aacdde710b72f525ad6eecd7d738fcaa29f6d6c12e8d9c13fed7219fd502be51ecf0615f5c077d4bdc6f9308dde2e53f8e5393c5b21 languageName: node linkType: hard @@ -5203,7 +5258,7 @@ __metadata: dependencies: base64-js: "npm:^1.3.1" ieee754: "npm:^1.2.1" - checksum: 2a905fbbcde73cc5d8bd18d1caa23715d5f83a5935867c2329f0ac06104204ba7947be098fe1317fbd8830e26090ff8e764f08cd14fefc977bb248c3487bcbd0 + checksum: 10c0/2a905fbbcde73cc5d8bd18d1caa23715d5f83a5935867c2329f0ac06104204ba7947be098fe1317fbd8830e26090ff8e764f08cd14fefc977bb248c3487bcbd0 languageName: node linkType: hard @@ -5213,44 +5268,35 @@ __metadata: dependencies: node-gyp: "npm:latest" node-gyp-build: "npm:^4.3.0" - checksum: 36cdc5b53a38d9f61f89fdbe62029a2ebcd020599862253fefebe31566155726df9ff961f41b8c97b02b4c12b391ef97faf94e2383392654cf8f0ed68f76e47c + checksum: 10c0/36cdc5b53a38d9f61f89fdbe62029a2ebcd020599862253fefebe31566155726df9ff961f41b8c97b02b4c12b391ef97faf94e2383392654cf8f0ed68f76e47c languageName: node linkType: hard "builtin-modules@npm:^3.1.0, builtin-modules@npm:^3.3.0": version: 3.3.0 resolution: "builtin-modules@npm:3.3.0" - checksum: 2cb3448b4f7306dc853632a4fcddc95e8d4e4b9868c139400027b71938fc6806d4ff44007deffb362ac85724bd40c2c6452fb6a0aa4531650eeddb98d8e5ee8a + checksum: 10c0/2cb3448b4f7306dc853632a4fcddc95e8d4e4b9868c139400027b71938fc6806d4ff44007deffb362ac85724bd40c2c6452fb6a0aa4531650eeddb98d8e5ee8a languageName: node linkType: hard "builtin-status-codes@npm:^3.0.0": version: 3.0.0 resolution: "builtin-status-codes@npm:3.0.0" - checksum: c37bbba11a34c4431e56bd681b175512e99147defbe2358318d8152b3a01df7bf25e0305873947e5b350073d5ef41a364a22b37e48f1fb6d2fe6d5286a0f348c - languageName: node - linkType: hard - -"bundle-name@npm:^3.0.0": - version: 3.0.0 - resolution: "bundle-name@npm:3.0.0" - dependencies: - run-applescript: "npm:^5.0.0" - checksum: 57bc7f8b025d83961b04db2f1eff6a87f2363c2891f3542a4b82471ff8ebb5d484af48e9784fcdb28ef1d48bb01f03d891966dc3ef58758e46ea32d750ce40f8 + checksum: 10c0/c37bbba11a34c4431e56bd681b175512e99147defbe2358318d8152b3a01df7bf25e0305873947e5b350073d5ef41a364a22b37e48f1fb6d2fe6d5286a0f348c languageName: node linkType: hard "bytes@npm:3.0.0": version: 3.0.0 resolution: "bytes@npm:3.0.0" - checksum: 91d42c38601c76460519ffef88371caacaea483a354c8e4b8808e7b027574436a5713337c003ea3de63ee4991c2a9a637884fdfe7f761760d746929d9e8fec60 + checksum: 10c0/91d42c38601c76460519ffef88371caacaea483a354c8e4b8808e7b027574436a5713337c003ea3de63ee4991c2a9a637884fdfe7f761760d746929d9e8fec60 languageName: node linkType: hard "bytes@npm:3.1.2": version: 3.1.2 resolution: "bytes@npm:3.1.2" - checksum: 76d1c43cbd602794ad8ad2ae94095cddeb1de78c5dddaa7005c51af10b0176c69971a6d88e805a90c2b6550d76636e43c40d8427a808b8645ede885de4a0358e + checksum: 10c0/76d1c43cbd602794ad8ad2ae94095cddeb1de78c5dddaa7005c51af10b0176c69971a6d88e805a90c2b6550d76636e43c40d8427a808b8645ede885de4a0358e languageName: node linkType: hard @@ -5276,7 +5322,7 @@ __metadata: ssri: "npm:^8.0.1" tar: "npm:^6.0.2" unique-filename: "npm:^1.1.1" - checksum: 886fcc0acc4f6fd5cd142d373d8276267bc6d655d7c4ce60726fbbec10854de3395ee19bbf9e7e73308cdca9fdad0ad55060ff3bd16c6d4165c5b8d21515e1d8 + checksum: 10c0/886fcc0acc4f6fd5cd142d373d8276267bc6d655d7c4ce60726fbbec10854de3395ee19bbf9e7e73308cdca9fdad0ad55060ff3bd16c6d4165c5b8d21515e1d8 languageName: node linkType: hard @@ -5296,7 +5342,7 @@ __metadata: ssri: "npm:^10.0.0" tar: "npm:^6.1.11" unique-filename: "npm:^3.0.0" - checksum: e359823778d712ad365740cef3f488d4f74c62cc79be5935896d9597a7d81033e50c54c15898fa9cc018620879307ab30d1dddc476ae705bfd5b29c145ae6938 + checksum: 10c0/e359823778d712ad365740cef3f488d4f74c62cc79be5935896d9597a7d81033e50c54c15898fa9cc018620879307ab30d1dddc476ae705bfd5b29c145ae6938 languageName: node linkType: hard @@ -5313,39 +5359,41 @@ __metadata: to-object-path: "npm:^0.3.0" union-value: "npm:^1.0.0" unset-value: "npm:^1.0.0" - checksum: a7142e25c73f767fa520957dcd179b900b86eac63b8cfeaa3b2a35e18c9ca5968aa4e2d2bed7a3e7efd10f13be404344cfab3a4156217e71f9bdb95940bb9c8c + checksum: 10c0/a7142e25c73f767fa520957dcd179b900b86eac63b8cfeaa3b2a35e18c9ca5968aa4e2d2bed7a3e7efd10f13be404344cfab3a4156217e71f9bdb95940bb9c8c languageName: node linkType: hard -"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2, call-bind@npm:^1.0.4, call-bind@npm:^1.0.5": - version: 1.0.5 - resolution: "call-bind@npm:1.0.5" +"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2, call-bind@npm:^1.0.5, call-bind@npm:^1.0.6, call-bind@npm:^1.0.7": + version: 1.0.7 + resolution: "call-bind@npm:1.0.7" dependencies: + es-define-property: "npm:^1.0.0" + es-errors: "npm:^1.3.0" function-bind: "npm:^1.1.2" - get-intrinsic: "npm:^1.2.1" - set-function-length: "npm:^1.1.1" - checksum: a6172c168fd6dacf744fcde745099218056bd755c50415b592655dcd6562157ed29f130f56c3f6db2250f67e4bd62e5c218cdc56d7bfd76e0bda50770fce2d10 + get-intrinsic: "npm:^1.2.4" + set-function-length: "npm:^1.2.1" + checksum: 10c0/a3ded2e423b8e2a265983dba81c27e125b48eefb2655e7dfab6be597088da3d47c47976c24bc51b8fd9af1061f8f87b4ab78a314f3c77784b2ae2ba535ad8b8d languageName: node linkType: hard "callsites@npm:^3.0.0": version: 3.1.0 resolution: "callsites@npm:3.1.0" - checksum: fff92277400eb06c3079f9e74f3af120db9f8ea03bad0e84d9aede54bbe2d44a56cccb5f6cf12211f93f52306df87077ecec5b712794c5a9b5dac6d615a3f301 + checksum: 10c0/fff92277400eb06c3079f9e74f3af120db9f8ea03bad0e84d9aede54bbe2d44a56cccb5f6cf12211f93f52306df87077ecec5b712794c5a9b5dac6d615a3f301 languageName: node linkType: hard "camelcase@npm:^5.0.0, camelcase@npm:^5.3.1": version: 5.3.1 resolution: "camelcase@npm:5.3.1" - checksum: 92ff9b443bfe8abb15f2b1513ca182d16126359ad4f955ebc83dc4ddcc4ef3fdd2c078bc223f2673dc223488e75c99b16cc4d056624374b799e6a1555cf61b23 + checksum: 10c0/92ff9b443bfe8abb15f2b1513ca182d16126359ad4f955ebc83dc4ddcc4ef3fdd2c078bc223f2673dc223488e75c99b16cc4d056624374b799e6a1555cf61b23 languageName: node linkType: hard "camelcase@npm:^6.2.0": version: 6.3.0 resolution: "camelcase@npm:6.3.0" - checksum: 0d701658219bd3116d12da3eab31acddb3f9440790c0792e0d398f0a520a6a4058018e546862b6fba89d7ae990efaeb97da71e1913e9ebf5a8b5621a3d55c710 + checksum: 10c0/0d701658219bd3116d12da3eab31acddb3f9440790c0792e0d398f0a520a6a4058018e546862b6fba89d7ae990efaeb97da71e1913e9ebf5a8b5621a3d55c710 languageName: node linkType: hard @@ -5357,21 +5405,21 @@ __metadata: caniuse-lite: "npm:^1.0.0" lodash.memoize: "npm:^4.1.2" lodash.uniq: "npm:^4.5.0" - checksum: 60f9e85a3331e6d761b1b03eec71ca38ef7d74146bece34694853033292156b815696573ed734b65583acf493e88163618eda915c6c826d46a024c71a9572b4c + checksum: 10c0/60f9e85a3331e6d761b1b03eec71ca38ef7d74146bece34694853033292156b815696573ed734b65583acf493e88163618eda915c6c826d46a024c71a9572b4c languageName: node linkType: hard -"caniuse-lite@npm:^1.0.0, caniuse-lite@npm:^1.0.30001565, caniuse-lite@npm:^1.0.30001578": - version: 1.0.30001578 - resolution: "caniuse-lite@npm:1.0.30001578" - checksum: c3bd9c08a945cee4f0cc284a217ebe9c2613e04d5aef4b48f1871a779b1875c34286469eb8d7d94bd028b5a354613e676ad503b6bf8db20a2f154574bd5fde48 +"caniuse-lite@npm:^1.0.0, caniuse-lite@npm:^1.0.30001578, caniuse-lite@npm:^1.0.30001587": + version: 1.0.30001589 + resolution: "caniuse-lite@npm:1.0.30001589" + checksum: 10c0/20debfb949413f603011bc7dacaf050010778bc4f8632c86fafd1bd0c43180c95ae7c31f6c82348f6309e5e221934e327c3607a216e3f09640284acf78cd6d4d languageName: node linkType: hard "chalk@npm:5.3.0": version: 5.3.0 resolution: "chalk@npm:5.3.0" - checksum: 8297d436b2c0f95801103ff2ef67268d362021b8210daf8ddbe349695333eb3610a71122172ff3b0272f1ef2cf7cc2c41fdaa4715f52e49ffe04c56340feed09 + checksum: 10c0/8297d436b2c0f95801103ff2ef67268d362021b8210daf8ddbe349695333eb3610a71122172ff3b0272f1ef2cf7cc2c41fdaa4715f52e49ffe04c56340feed09 languageName: node linkType: hard @@ -5382,7 +5430,7 @@ __metadata: ansi-styles: "npm:^3.2.1" escape-string-regexp: "npm:^1.0.5" supports-color: "npm:^5.3.0" - checksum: e6543f02ec877732e3a2d1c3c3323ddb4d39fbab687c23f526e25bd4c6a9bf3b83a696e8c769d078e04e5754921648f7821b2a2acfd16c550435fd630026e073 + checksum: 10c0/e6543f02ec877732e3a2d1c3c3323ddb4d39fbab687c23f526e25bd4c6a9bf3b83a696e8c769d078e04e5754921648f7821b2a2acfd16c550435fd630026e073 languageName: node linkType: hard @@ -5392,7 +5440,7 @@ __metadata: dependencies: ansi-styles: "npm:^4.1.0" supports-color: "npm:^7.1.0" - checksum: ee650b0a065b3d7a6fda258e75d3a86fc8e4effa55871da730a9e42ccb035bf5fd203525e5a1ef45ec2582ecc4f65b47eb11357c526b84dd29a14fb162c414d2 + checksum: 10c0/ee650b0a065b3d7a6fda258e75d3a86fc8e4effa55871da730a9e42ccb035bf5fd203525e5a1ef45ec2582ecc4f65b47eb11357c526b84dd29a14fb162c414d2 languageName: node linkType: hard @@ -5402,14 +5450,14 @@ __metadata: dependencies: ansi-styles: "npm:^4.1.0" supports-color: "npm:^7.1.0" - checksum: 4a3fef5cc34975c898ffe77141450f679721df9dde00f6c304353fa9c8b571929123b26a0e4617bde5018977eb655b31970c297b91b63ee83bb82aeb04666880 + checksum: 10c0/4a3fef5cc34975c898ffe77141450f679721df9dde00f6c304353fa9c8b571929123b26a0e4617bde5018977eb655b31970c297b91b63ee83bb82aeb04666880 languageName: node linkType: hard "char-regex@npm:^1.0.2": version: 1.0.2 resolution: "char-regex@npm:1.0.2" - checksum: 57a09a86371331e0be35d9083ba429e86c4f4648ecbe27455dbfb343037c16ee6fdc7f6b61f433a57cc5ded5561d71c56a150e018f40c2ffb7bc93a26dae341e + checksum: 10c0/57a09a86371331e0be35d9083ba429e86c4f4648ecbe27455dbfb343037c16ee6fdc7f6b61f433a57cc5ded5561d71c56a150e018f40c2ffb7bc93a26dae341e languageName: node linkType: hard @@ -5428,7 +5476,7 @@ __metadata: dependenciesMeta: fsevents: optional: true - checksum: 1076953093e0707c882a92c66c0f56ba6187831aa51bb4de878c1fec59ae611a3bf02898f190efec8e77a086b8df61c2b2a3ea324642a0558bdf8ee6c5dc9ca1 + checksum: 10c0/1076953093e0707c882a92c66c0f56ba6187831aa51bb4de878c1fec59ae611a3bf02898f190efec8e77a086b8df61c2b2a3ea324642a0558bdf8ee6c5dc9ca1 languageName: node linkType: hard @@ -5451,28 +5499,28 @@ __metadata: dependenciesMeta: fsevents: optional: true - checksum: 5631cc00080224f9482cf5418dcbea111aec02fa8d81a8cfe37e47b9cf36089e071de52d503647e3a821a01426a40adc926ba899f657af86a51b8f8d4eef12a7 + checksum: 10c0/5631cc00080224f9482cf5418dcbea111aec02fa8d81a8cfe37e47b9cf36089e071de52d503647e3a821a01426a40adc926ba899f657af86a51b8f8d4eef12a7 languageName: node linkType: hard "chownr@npm:^2.0.0": version: 2.0.0 resolution: "chownr@npm:2.0.0" - checksum: 594754e1303672171cc04e50f6c398ae16128eb134a88f801bf5354fd96f205320f23536a045d9abd8b51024a149696e51231565891d4efdab8846021ecf88e6 + checksum: 10c0/594754e1303672171cc04e50f6c398ae16128eb134a88f801bf5354fd96f205320f23536a045d9abd8b51024a149696e51231565891d4efdab8846021ecf88e6 languageName: node linkType: hard "chrome-trace-event@npm:^1.0.2": version: 1.0.3 resolution: "chrome-trace-event@npm:1.0.3" - checksum: 080ce2d20c2b9e0f8461a380e9585686caa768b1c834a464470c9dc74cda07f27611c7b727a2cd768a9cecd033297fdec4ce01f1e58b62227882c1059dec321c + checksum: 10c0/080ce2d20c2b9e0f8461a380e9585686caa768b1c834a464470c9dc74cda07f27611c7b727a2cd768a9cecd033297fdec4ce01f1e58b62227882c1059dec321c languageName: node linkType: hard "ci-info@npm:^3.2.0": version: 3.9.0 resolution: "ci-info@npm:3.9.0" - checksum: 6f0109e36e111684291d46123d491bc4e7b7a1934c3a20dea28cba89f1d4a03acd892f5f6a81ed3855c38647e285a150e3c9ba062e38943bef57fee6c1554c3a + checksum: 10c0/6f0109e36e111684291d46123d491bc4e7b7a1934c3a20dea28cba89f1d4a03acd892f5f6a81ed3855c38647e285a150e3c9ba062e38943bef57fee6c1554c3a languageName: node linkType: hard @@ -5482,7 +5530,7 @@ __metadata: dependencies: inherits: "npm:^2.0.1" safe-buffer: "npm:^5.0.1" - checksum: d8d005f8b64d8a77b3d3ce531301ae7b45902c9cab4ec8b66bdbd2bf2a1d9fceb9a2133c293eb3c060b2d964da0f14c47fb740366081338aa3795dd1faa8984b + checksum: 10c0/d8d005f8b64d8a77b3d3ce531301ae7b45902c9cab4ec8b66bdbd2bf2a1d9fceb9a2133c293eb3c060b2d964da0f14c47fb740366081338aa3795dd1faa8984b languageName: node linkType: hard @@ -5491,14 +5539,14 @@ __metadata: resolution: "circular-dependency-plugin@npm:5.2.2" peerDependencies: webpack: ">=4.0.1" - checksum: a2227a7d76c6110f818d364d280406d9dc79c99f7d18f7c643b0a72a2694399195e68ace32115b2bb2da6e53328fda0cadd4fa9535dd67c884567daa3e5a9560 + checksum: 10c0/a2227a7d76c6110f818d364d280406d9dc79c99f7d18f7c643b0a72a2694399195e68ace32115b2bb2da6e53328fda0cadd4fa9535dd67c884567daa3e5a9560 languageName: node linkType: hard "cjs-module-lexer@npm:^1.0.0": version: 1.2.3 resolution: "cjs-module-lexer@npm:1.2.3" - checksum: 0de9a9c3fad03a46804c0d38e7b712fb282584a9c7ef1ed44cae22fb71d9bb600309d66a9711ac36a596fd03422f5bb03e021e8f369c12a39fa1786ae531baab + checksum: 10c0/0de9a9c3fad03a46804c0d38e7b712fb282584a9c7ef1ed44cae22fb71d9bb600309d66a9711ac36a596fd03422f5bb03e021e8f369c12a39fa1786ae531baab languageName: node linkType: hard @@ -5510,21 +5558,21 @@ __metadata: define-property: "npm:^0.2.5" isobject: "npm:^3.0.0" static-extend: "npm:^0.1.1" - checksum: d44f4afc7a3e48dba4c2d3fada5f781a1adeeff371b875c3b578bc33815c6c29d5d06483c2abfd43a32d35b104b27b67bfa39c2e8a422fa858068bd756cfbd42 + checksum: 10c0/d44f4afc7a3e48dba4c2d3fada5f781a1adeeff371b875c3b578bc33815c6c29d5d06483c2abfd43a32d35b104b27b67bfa39c2e8a422fa858068bd756cfbd42 languageName: node linkType: hard "classnames@npm:^2.2.5, classnames@npm:^2.3.2": version: 2.5.1 resolution: "classnames@npm:2.5.1" - checksum: afff4f77e62cea2d79c39962980bf316bacb0d7c49e13a21adaadb9221e1c6b9d3cdb829d8bb1b23c406f4e740507f37e1dcf506f7e3b7113d17c5bab787aa69 + checksum: 10c0/afff4f77e62cea2d79c39962980bf316bacb0d7c49e13a21adaadb9221e1c6b9d3cdb829d8bb1b23c406f4e740507f37e1dcf506f7e3b7113d17c5bab787aa69 languageName: node linkType: hard "clean-stack@npm:^2.0.0": version: 2.2.0 resolution: "clean-stack@npm:2.2.0" - checksum: 1f90262d5f6230a17e27d0c190b09d47ebe7efdd76a03b5a1127863f7b3c9aec4c3e6c8bb3a7bbf81d553d56a1fd35728f5a8ef4c63f867ac8d690109742a8c1 + checksum: 10c0/1f90262d5f6230a17e27d0c190b09d47ebe7efdd76a03b5a1127863f7b3c9aec4c3e6c8bb3a7bbf81d553d56a1fd35728f5a8ef4c63f867ac8d690109742a8c1 languageName: node linkType: hard @@ -5533,7 +5581,7 @@ __metadata: resolution: "cli-cursor@npm:4.0.0" dependencies: restore-cursor: "npm:^4.0.0" - checksum: e776e8c3c6727300d0539b0d25160b2bb56aed1a63942753ba1826b012f337a6f4b7ace3548402e4f2f13b5e16bfd751be672c44b203205e7eca8be94afec42c + checksum: 10c0/e776e8c3c6727300d0539b0d25160b2bb56aed1a63942753ba1826b012f337a6f4b7ace3548402e4f2f13b5e16bfd751be672c44b203205e7eca8be94afec42c languageName: node linkType: hard @@ -5543,7 +5591,7 @@ __metadata: dependencies: slice-ansi: "npm:^5.0.0" string-width: "npm:^7.0.0" - checksum: d7f0b73e3d9b88cb496e6c086df7410b541b56a43d18ade6a573c9c18bd001b1c3fba1ad578f741a4218fdc794d042385f8ac02c25e1c295a2d8b9f3cb86eb4c + checksum: 10c0/d7f0b73e3d9b88cb496e6c086df7410b541b56a43d18ade6a573c9c18bd001b1c3fba1ad578f741a4218fdc794d042385f8ac02c25e1c295a2d8b9f3cb86eb4c languageName: node linkType: hard @@ -5554,7 +5602,7 @@ __metadata: string-width: "npm:^3.1.0" strip-ansi: "npm:^5.2.0" wrap-ansi: "npm:^5.1.0" - checksum: 76142bf306965850a71efd10c9755bd7f447c7c20dd652e1c1ce27d987f862a3facb3cceb2909cef6f0cb363646ee7a1735e3dfdd49f29ed16d733d33e15e2f8 + checksum: 10c0/76142bf306965850a71efd10c9755bd7f447c7c20dd652e1c1ce27d987f862a3facb3cceb2909cef6f0cb363646ee7a1735e3dfdd49f29ed16d733d33e15e2f8 languageName: node linkType: hard @@ -5565,7 +5613,7 @@ __metadata: string-width: "npm:^4.2.0" strip-ansi: "npm:^6.0.1" wrap-ansi: "npm:^7.0.0" - checksum: 4bda0f09c340cbb6dfdc1ed508b3ca080f12992c18d68c6be4d9cf51756033d5266e61ec57529e610dacbf4da1c634423b0c1b11037709cc6b09045cbd815df5 + checksum: 10c0/4bda0f09c340cbb6dfdc1ed508b3ca080f12992c18d68c6be4d9cf51756033d5266e61ec57529e610dacbf4da1c634423b0c1b11037709cc6b09045cbd815df5 languageName: node linkType: hard @@ -5576,21 +5624,21 @@ __metadata: is-plain-object: "npm:^2.0.4" kind-of: "npm:^6.0.2" shallow-clone: "npm:^3.0.0" - checksum: 637753615aa24adf0f2d505947a1bb75e63964309034a1cf56ba4b1f30af155201edd38d26ffe26911adaae267a3c138b344a4947d39f5fc1b6d6108125aa758 + checksum: 10c0/637753615aa24adf0f2d505947a1bb75e63964309034a1cf56ba4b1f30af155201edd38d26ffe26911adaae267a3c138b344a4947d39f5fc1b6d6108125aa758 languageName: node linkType: hard "cluster-key-slot@npm:^1.1.0": version: 1.1.2 resolution: "cluster-key-slot@npm:1.1.2" - checksum: d7d39ca28a8786e9e801eeb8c770e3c3236a566625d7299a47bb71113fb2298ce1039596acb82590e598c52dbc9b1f088c8f587803e697cb58e1867a95ff94d3 + checksum: 10c0/d7d39ca28a8786e9e801eeb8c770e3c3236a566625d7299a47bb71113fb2298ce1039596acb82590e598c52dbc9b1f088c8f587803e697cb58e1867a95ff94d3 languageName: node linkType: hard "co@npm:^4.6.0": version: 4.6.0 resolution: "co@npm:4.6.0" - checksum: c0e85ea0ca8bf0a50cbdca82efc5af0301240ca88ebe3644a6ffb8ffe911f34d40f8fbcf8f1d52c5ddd66706abd4d3bfcd64259f1e8e2371d4f47573b0dc8c28 + checksum: 10c0/c0e85ea0ca8bf0a50cbdca82efc5af0301240ca88ebe3644a6ffb8ffe911f34d40f8fbcf8f1d52c5ddd66706abd4d3bfcd64259f1e8e2371d4f47573b0dc8c28 languageName: node linkType: hard @@ -5601,21 +5649,21 @@ __metadata: "@types/q": "npm:^1.5.1" chalk: "npm:^2.4.1" q: "npm:^1.1.2" - checksum: 0264392e3b691a8551e619889f3e67558b4f755eeb09d67625032a25c37634731e778fabbd9d14df6477d6ae770e30ea9405d18e515b2ec492b0eb90bb8d7f43 + checksum: 10c0/0264392e3b691a8551e619889f3e67558b4f755eeb09d67625032a25c37634731e778fabbd9d14df6477d6ae770e30ea9405d18e515b2ec492b0eb90bb8d7f43 languageName: node linkType: hard "cocoon-js-vanilla@npm:^1.3.0": - version: 1.3.0 - resolution: "cocoon-js-vanilla@npm:1.3.0" - checksum: 12adec293ba625c608518ef504c24f4b5906873713092e55d28343dd12fbc9ab7940d8c2bbe02a320bd56120d3768ae90a8d8bc5a6a82e604a56c216b66027e1 + version: 1.4.0 + resolution: "cocoon-js-vanilla@npm:1.4.0" + checksum: 10c0/3a3976d325d24518317ca38536ad5f4e570c139b86082dd33c64d38c2a4b2c58fa9cc9aac4624d8fd2f4c9f0eafe681bb8872360010e6b36d9974d8abc57f520 languageName: node linkType: hard "collect-v8-coverage@npm:^1.0.0": version: 1.0.2 resolution: "collect-v8-coverage@npm:1.0.2" - checksum: ed7008e2e8b6852c5483b444a3ae6e976e088d4335a85aa0a9db2861c5f1d31bd2d7ff97a60469b3388deeba661a619753afbe201279fb159b4b9548ab8269a1 + checksum: 10c0/ed7008e2e8b6852c5483b444a3ae6e976e088d4335a85aa0a9db2861c5f1d31bd2d7ff97a60469b3388deeba661a619753afbe201279fb159b4b9548ab8269a1 languageName: node linkType: hard @@ -5625,14 +5673,14 @@ __metadata: dependencies: map-visit: "npm:^1.0.0" object-visit: "npm:^1.0.0" - checksum: add72a8d1c37cb90e53b1aaa2c31bf1989bfb733f0b02ce82c9fa6828c7a14358dba2e4f8e698c02f69e424aeccae1ffb39acdeaf872ade2f41369e84a2fcf8a + checksum: 10c0/add72a8d1c37cb90e53b1aaa2c31bf1989bfb733f0b02ce82c9fa6828c7a14358dba2e4f8e698c02f69e424aeccae1ffb39acdeaf872ade2f41369e84a2fcf8a languageName: node linkType: hard "color-blend@npm:^4.0.0": version: 4.0.0 resolution: "color-blend@npm:4.0.0" - checksum: d046f3b017e7b0e70a130e49f4bfb2867ebf41d7cf1e816bd6cbcf1c492cdbb795b204743ce099ebe3fa17d9b24114555ce174d211c741e06bf7db91a633ab24 + checksum: 10c0/d046f3b017e7b0e70a130e49f4bfb2867ebf41d7cf1e816bd6cbcf1c492cdbb795b204743ce099ebe3fa17d9b24114555ce174d211c741e06bf7db91a633ab24 languageName: node linkType: hard @@ -5641,7 +5689,7 @@ __metadata: resolution: "color-convert@npm:1.9.3" dependencies: color-name: "npm:1.1.3" - checksum: 5ad3c534949a8c68fca8fbc6f09068f435f0ad290ab8b2f76841b9e6af7e0bb57b98cb05b0e19fe33f5d91e5a8611ad457e5f69e0a484caad1f7487fd0e8253c + checksum: 10c0/5ad3c534949a8c68fca8fbc6f09068f435f0ad290ab8b2f76841b9e6af7e0bb57b98cb05b0e19fe33f5d91e5a8611ad457e5f69e0a484caad1f7487fd0e8253c languageName: node linkType: hard @@ -5650,42 +5698,42 @@ __metadata: resolution: "color-convert@npm:2.0.1" dependencies: color-name: "npm:~1.1.4" - checksum: 37e1150172f2e311fe1b2df62c6293a342ee7380da7b9cfdba67ea539909afbd74da27033208d01d6d5cfc65ee7868a22e18d7e7648e004425441c0f8a15a7d7 + checksum: 10c0/37e1150172f2e311fe1b2df62c6293a342ee7380da7b9cfdba67ea539909afbd74da27033208d01d6d5cfc65ee7868a22e18d7e7648e004425441c0f8a15a7d7 languageName: node linkType: hard "color-name@npm:1.1.3": version: 1.1.3 resolution: "color-name@npm:1.1.3" - checksum: 566a3d42cca25b9b3cd5528cd7754b8e89c0eb646b7f214e8e2eaddb69994ac5f0557d9c175eb5d8f0ad73531140d9c47525085ee752a91a2ab15ab459caf6d6 + checksum: 10c0/566a3d42cca25b9b3cd5528cd7754b8e89c0eb646b7f214e8e2eaddb69994ac5f0557d9c175eb5d8f0ad73531140d9c47525085ee752a91a2ab15ab459caf6d6 languageName: node linkType: hard "color-name@npm:~1.1.4": version: 1.1.4 resolution: "color-name@npm:1.1.4" - checksum: a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95 + checksum: 10c0/a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95 languageName: node linkType: hard -"colord@npm:^2.9.1, colord@npm:^2.9.3": +"colord@npm:^2.9.3": version: 2.9.3 resolution: "colord@npm:2.9.3" - checksum: 9699e956894d8996b28c686afe8988720785f476f59335c80ce852ded76ab3ebe252703aec53d9bef54f6219aea6b960fb3d9a8300058a1d0c0d4026460cd110 + checksum: 10c0/9699e956894d8996b28c686afe8988720785f476f59335c80ce852ded76ab3ebe252703aec53d9bef54f6219aea6b960fb3d9a8300058a1d0c0d4026460cd110 languageName: node linkType: hard "colorette@npm:^2.0.20, colorette@npm:^2.0.7": version: 2.0.20 resolution: "colorette@npm:2.0.20" - checksum: e94116ff33b0ff56f3b83b9ace895e5bf87c2a7a47b3401b8c3f3226e050d5ef76cf4072fb3325f9dc24d1698f9b730baf4e05eeaf861d74a1883073f4c98a40 + checksum: 10c0/e94116ff33b0ff56f3b83b9ace895e5bf87c2a7a47b3401b8c3f3226e050d5ef76cf4072fb3325f9dc24d1698f9b730baf4e05eeaf861d74a1883073f4c98a40 languageName: node linkType: hard "colors@npm:^1.4.0": version: 1.4.0 resolution: "colors@npm:1.4.0" - checksum: 9af357c019da3c5a098a301cf64e3799d27549d8f185d86f79af23069e4f4303110d115da98483519331f6fb71c8568d5688fa1c6523600044fd4a54e97c4efb + checksum: 10c0/9af357c019da3c5a098a301cf64e3799d27549d8f185d86f79af23069e4f4303110d115da98483519331f6fb71c8568d5688fa1c6523600044fd4a54e97c4efb languageName: node linkType: hard @@ -5694,56 +5742,56 @@ __metadata: resolution: "combined-stream@npm:1.0.8" dependencies: delayed-stream: "npm:~1.0.0" - checksum: 0dbb829577e1b1e839fa82b40c07ffaf7de8a09b935cadd355a73652ae70a88b4320db322f6634a4ad93424292fa80973ac6480986247f1734a1137debf271d5 + checksum: 10c0/0dbb829577e1b1e839fa82b40c07ffaf7de8a09b935cadd355a73652ae70a88b4320db322f6634a4ad93424292fa80973ac6480986247f1734a1137debf271d5 languageName: node linkType: hard "commander@npm:11.1.0": version: 11.1.0 resolution: "commander@npm:11.1.0" - checksum: 13cc6ac875e48780250f723fb81c1c1178d35c5decb1abb1b628b3177af08a8554e76b2c0f29de72d69eef7c864d12613272a71fabef8047922bc622ab75a179 + checksum: 10c0/13cc6ac875e48780250f723fb81c1c1178d35c5decb1abb1b628b3177af08a8554e76b2c0f29de72d69eef7c864d12613272a71fabef8047922bc622ab75a179 languageName: node linkType: hard "commander@npm:^2.20.0": version: 2.20.3 resolution: "commander@npm:2.20.3" - checksum: 74c781a5248c2402a0a3e966a0a2bba3c054aad144f5c023364be83265e796b20565aa9feff624132ff629aa64e16999fa40a743c10c12f7c61e96a794b99288 + checksum: 10c0/74c781a5248c2402a0a3e966a0a2bba3c054aad144f5c023364be83265e796b20565aa9feff624132ff629aa64e16999fa40a743c10c12f7c61e96a794b99288 languageName: node linkType: hard "commander@npm:^7.2.0": version: 7.2.0 resolution: "commander@npm:7.2.0" - checksum: 8d690ff13b0356df7e0ebbe6c59b4712f754f4b724d4f473d3cc5b3fdcf978e3a5dc3078717858a2ceb50b0f84d0660a7f22a96cdc50fb877d0c9bb31593d23a + checksum: 10c0/8d690ff13b0356df7e0ebbe6c59b4712f754f4b724d4f473d3cc5b3fdcf978e3a5dc3078717858a2ceb50b0f84d0660a7f22a96cdc50fb877d0c9bb31593d23a languageName: node linkType: hard "comment-parser@npm:1.4.1": version: 1.4.1 resolution: "comment-parser@npm:1.4.1" - checksum: d6c4be3f5be058f98b24f2d557f745d8fe1cc9eb75bebbdccabd404a0e1ed41563171b16285f593011f8b6a5ec81f564fb1f2121418ac5cbf0f49255bf0840dd + checksum: 10c0/d6c4be3f5be058f98b24f2d557f745d8fe1cc9eb75bebbdccabd404a0e1ed41563171b16285f593011f8b6a5ec81f564fb1f2121418ac5cbf0f49255bf0840dd languageName: node linkType: hard "common-tags@npm:^1.8.0": version: 1.8.2 resolution: "common-tags@npm:1.8.2" - checksum: 23efe47ff0a1a7c91489271b3a1e1d2a171c12ec7f9b35b29b2fce51270124aff0ec890087e2bc2182c1cb746e232ab7561aaafe05f1e7452aea733d2bfe3f63 + checksum: 10c0/23efe47ff0a1a7c91489271b3a1e1d2a171c12ec7f9b35b29b2fce51270124aff0ec890087e2bc2182c1cb746e232ab7561aaafe05f1e7452aea733d2bfe3f63 languageName: node linkType: hard "commondir@npm:^1.0.1": version: 1.0.1 resolution: "commondir@npm:1.0.1" - checksum: 33a124960e471c25ee19280c9ce31ccc19574b566dc514fe4f4ca4c34fa8b0b57cf437671f5de380e11353ea9426213fca17687dd2ef03134fea2dbc53809fd6 + checksum: 10c0/33a124960e471c25ee19280c9ce31ccc19574b566dc514fe4f4ca4c34fa8b0b57cf437671f5de380e11353ea9426213fca17687dd2ef03134fea2dbc53809fd6 languageName: node linkType: hard "component-emitter@npm:^1.2.1": version: 1.3.0 resolution: "component-emitter@npm:1.3.0" - checksum: 68774a0a3754fb6c0ba53c2e88886dfbd0c773931066abb1d7fd1b0c893b2a838d8f088ab4dca1f18cc1a4fc2e6932019eba3ded2d931b5ba2241ce40e93a24f + checksum: 10c0/68774a0a3754fb6c0ba53c2e88886dfbd0c773931066abb1d7fd1b0c893b2a838d8f088ab4dca1f18cc1a4fc2e6932019eba3ded2d931b5ba2241ce40e93a24f languageName: node linkType: hard @@ -5752,7 +5800,7 @@ __metadata: resolution: "compressible@npm:2.0.18" dependencies: mime-db: "npm:>= 1.43.0 < 2" - checksum: 8a03712bc9f5b9fe530cc5a79e164e665550d5171a64575d7dcf3e0395d7b4afa2d79ab176c61b5b596e28228b350dd07c1a2a6ead12fd81d1b6cd632af2fef7 + checksum: 10c0/8a03712bc9f5b9fe530cc5a79e164e665550d5171a64575d7dcf3e0395d7b4afa2d79ab176c61b5b596e28228b350dd07c1a2a6ead12fd81d1b6cd632af2fef7 languageName: node linkType: hard @@ -5767,7 +5815,7 @@ __metadata: webpack-sources: "npm:^1.4.3" peerDependencies: webpack: ^4.0.0 || ^5.0.0 - checksum: 966b1417bbeaa55af8d4b7911cf4435a187adbaaff34d3e9f2ef2b7ff747877469ff965d5b653a2211eaecfd0ce8b3c834d3a8f5519aa15dd79e68bbfea0b69e + checksum: 10c0/966b1417bbeaa55af8d4b7911cf4435a187adbaaff34d3e9f2ef2b7ff747877469ff965d5b653a2211eaecfd0ce8b3c834d3a8f5519aa15dd79e68bbfea0b69e languageName: node linkType: hard @@ -5782,35 +5830,35 @@ __metadata: on-headers: "npm:~1.0.2" safe-buffer: "npm:5.1.2" vary: "npm:~1.1.2" - checksum: 138db836202a406d8a14156a5564fb1700632a76b6e7d1546939472895a5304f2b23c80d7a22bf44c767e87a26e070dbc342ea63bb45ee9c863354fa5556bbbc + checksum: 10c0/138db836202a406d8a14156a5564fb1700632a76b6e7d1546939472895a5304f2b23c80d7a22bf44c767e87a26e070dbc342ea63bb45ee9c863354fa5556bbbc languageName: node linkType: hard "concat-map@npm:0.0.1": version: 0.0.1 resolution: "concat-map@npm:0.0.1" - checksum: c996b1cfdf95b6c90fee4dae37e332c8b6eb7d106430c17d538034c0ad9a1630cb194d2ab37293b1bdd4d779494beee7786d586a50bd9376fd6f7bcc2bd4c98f + checksum: 10c0/c996b1cfdf95b6c90fee4dae37e332c8b6eb7d106430c17d538034c0ad9a1630cb194d2ab37293b1bdd4d779494beee7786d586a50bd9376fd6f7bcc2bd4c98f languageName: node linkType: hard "connect-history-api-fallback@npm:^1.6.0": version: 1.6.0 resolution: "connect-history-api-fallback@npm:1.6.0" - checksum: 6d59c68070fcb2f6d981992f88d050d7544e8e1af6600c23ad680d955e316216794a742a1669d1f14ed5171fc628b916f8a4e15c5a1e55bffc8ccc60bfeb0b2c + checksum: 10c0/6d59c68070fcb2f6d981992f88d050d7544e8e1af6600c23ad680d955e316216794a742a1669d1f14ed5171fc628b916f8a4e15c5a1e55bffc8ccc60bfeb0b2c languageName: node linkType: hard "console-browserify@npm:^1.1.0": version: 1.2.0 resolution: "console-browserify@npm:1.2.0" - checksum: 89b99a53b7d6cee54e1e64fa6b1f7ac24b844b4019c5d39db298637e55c1f4ffa5c165457ad984864de1379df2c8e1886cbbdac85d9dbb6876a9f26c3106f226 + checksum: 10c0/89b99a53b7d6cee54e1e64fa6b1f7ac24b844b4019c5d39db298637e55c1f4ffa5c165457ad984864de1379df2c8e1886cbbdac85d9dbb6876a9f26c3106f226 languageName: node linkType: hard "constants-browserify@npm:^1.0.0": version: 1.0.0 resolution: "constants-browserify@npm:1.0.0" - checksum: ab49b1d59a433ed77c964d90d19e08b2f77213fb823da4729c0baead55e3c597f8f97ebccfdfc47bd896d43854a117d114c849a6f659d9986420e97da0f83ac5 + checksum: 10c0/ab49b1d59a433ed77c964d90d19e08b2f77213fb823da4729c0baead55e3c597f8f97ebccfdfc47bd896d43854a117d114c849a6f659d9986420e97da0f83ac5 languageName: node linkType: hard @@ -5819,49 +5867,49 @@ __metadata: resolution: "content-disposition@npm:0.5.4" dependencies: safe-buffer: "npm:5.2.1" - checksum: bac0316ebfeacb8f381b38285dc691c9939bf0a78b0b7c2d5758acadad242d04783cee5337ba7d12a565a19075af1b3c11c728e1e4946de73c6ff7ce45f3f1bb + checksum: 10c0/bac0316ebfeacb8f381b38285dc691c9939bf0a78b0b7c2d5758acadad242d04783cee5337ba7d12a565a19075af1b3c11c728e1e4946de73c6ff7ce45f3f1bb languageName: node linkType: hard -"content-type@npm:~1.0.4": +"content-type@npm:~1.0.4, content-type@npm:~1.0.5": version: 1.0.5 resolution: "content-type@npm:1.0.5" - checksum: b76ebed15c000aee4678c3707e0860cb6abd4e680a598c0a26e17f0bfae723ec9cc2802f0ff1bc6e4d80603719010431d2231018373d4dde10f9ccff9dadf5af + checksum: 10c0/b76ebed15c000aee4678c3707e0860cb6abd4e680a598c0a26e17f0bfae723ec9cc2802f0ff1bc6e4d80603719010431d2231018373d4dde10f9ccff9dadf5af languageName: node linkType: hard "convert-source-map@npm:^1.5.0, convert-source-map@npm:^1.6.0": version: 1.9.0 resolution: "convert-source-map@npm:1.9.0" - checksum: 281da55454bf8126cbc6625385928c43479f2060984180c42f3a86c8b8c12720a24eac260624a7d1e090004028d2dee78602330578ceec1a08e27cb8bb0a8a5b + checksum: 10c0/281da55454bf8126cbc6625385928c43479f2060984180c42f3a86c8b8c12720a24eac260624a7d1e090004028d2dee78602330578ceec1a08e27cb8bb0a8a5b languageName: node linkType: hard "convert-source-map@npm:^2.0.0": version: 2.0.0 resolution: "convert-source-map@npm:2.0.0" - checksum: 8f2f7a27a1a011cc6cc88cc4da2d7d0cfa5ee0369508baae3d98c260bb3ac520691464e5bbe4ae7cdf09860c1d69ecc6f70c63c6e7c7f7e3f18ec08484dc7d9b + checksum: 10c0/8f2f7a27a1a011cc6cc88cc4da2d7d0cfa5ee0369508baae3d98c260bb3ac520691464e5bbe4ae7cdf09860c1d69ecc6f70c63c6e7c7f7e3f18ec08484dc7d9b languageName: node linkType: hard "cookie-signature@npm:1.0.6": version: 1.0.6 resolution: "cookie-signature@npm:1.0.6" - checksum: b36fd0d4e3fef8456915fcf7742e58fbfcc12a17a018e0eb9501c9d5ef6893b596466f03b0564b81af29ff2538fd0aa4b9d54fe5ccbfb4c90ea50ad29fe2d221 + checksum: 10c0/b36fd0d4e3fef8456915fcf7742e58fbfcc12a17a018e0eb9501c9d5ef6893b596466f03b0564b81af29ff2538fd0aa4b9d54fe5ccbfb4c90ea50ad29fe2d221 languageName: node linkType: hard "cookie@npm:0.5.0": version: 0.5.0 resolution: "cookie@npm:0.5.0" - checksum: c01ca3ef8d7b8187bae434434582288681273b5a9ed27521d4d7f9f7928fe0c920df0decd9f9d3bbd2d14ac432b8c8cf42b98b3bdd5bfe0e6edddeebebe8b61d + checksum: 10c0/c01ca3ef8d7b8187bae434434582288681273b5a9ed27521d4d7f9f7928fe0c920df0decd9f9d3bbd2d14ac432b8c8cf42b98b3bdd5bfe0e6edddeebebe8b61d languageName: node linkType: hard "copy-descriptor@npm:^0.1.0": version: 0.1.1 resolution: "copy-descriptor@npm:0.1.1" - checksum: 161f6760b7348c941007a83df180588fe2f1283e0867cc027182734e0f26134e6cc02de09aa24a95dc267b2e2025b55659eef76c8019df27bc2d883033690181 + checksum: 10c0/161f6760b7348c941007a83df180588fe2f1283e0867cc027182734e0f26134e6cc02de09aa24a95dc267b2e2025b55659eef76c8019df27bc2d883033690181 languageName: node linkType: hard @@ -5870,28 +5918,28 @@ __metadata: resolution: "core-js-compat@npm:3.35.1" dependencies: browserslist: "npm:^4.22.2" - checksum: c3b872e1f9703aa9554cce816207d85730da4703f1776c540b4da11bbbef6d9a1e6041625b5c1f58d2ada3d05f4a2b92897b7de5315c5ecd5d33d50dec86cca7 + checksum: 10c0/c3b872e1f9703aa9554cce816207d85730da4703f1776c540b4da11bbbef6d9a1e6041625b5c1f58d2ada3d05f4a2b92897b7de5315c5ecd5d33d50dec86cca7 languageName: node linkType: hard "core-js@npm:^2.5.0": version: 2.6.12 resolution: "core-js@npm:2.6.12" - checksum: 00128efe427789120a06b819adc94cc72b96955acb331cb71d09287baf9bd37bebd191d91f1ee4939c893a050307ead4faea08876f09115112612b6a05684b63 + checksum: 10c0/00128efe427789120a06b819adc94cc72b96955acb331cb71d09287baf9bd37bebd191d91f1ee4939c893a050307ead4faea08876f09115112612b6a05684b63 languageName: node linkType: hard "core-js@npm:^3.30.2": - version: 3.35.1 - resolution: "core-js@npm:3.35.1" - checksum: ebc8e22c36d13bcf2140cbc1d8ad65d1b08192bff4c43ade70c72eac103cb4dcfbc521f2b1ad1c74881b0a4353e64986537893ae4f07888e49228340efa13ae6 + version: 3.36.0 + resolution: "core-js@npm:3.36.0" + checksum: 10c0/62dcb41ba79ead581e4c5b2740ae18bfe6ee230e853893736d16edb01b580574d8645ff6c5513d1c75d59620f8451aee45c119d3c4f5ebc66cff5f003a816864 languageName: node linkType: hard "core-util-is@npm:~1.0.0": version: 1.0.3 resolution: "core-util-is@npm:1.0.3" - checksum: 90a0e40abbddfd7618f8ccd63a74d88deea94e77d0e8dbbea059fa7ebebb8fbb4e2909667fe26f3a467073de1a542ebe6ae4c73a73745ac5833786759cd906c9 + checksum: 10c0/90a0e40abbddfd7618f8ccd63a74d88deea94e77d0e8dbbea059fa7ebebb8fbb4e2909667fe26f3a467073de1a542ebe6ae4c73a73745ac5833786759cd906c9 languageName: node linkType: hard @@ -5901,7 +5949,7 @@ __metadata: dependencies: object-assign: "npm:^4" vary: "npm:^1" - checksum: 373702b7999409922da80de4a61938aabba6929aea5b6fd9096fefb9e8342f626c0ebd7507b0e8b0b311380744cc985f27edebc0a26e0ddb784b54e1085de761 + checksum: 10c0/373702b7999409922da80de4a61938aabba6929aea5b6fd9096fefb9e8342f626c0ebd7507b0e8b0b311380744cc985f27edebc0a26e0ddb784b54e1085de761 languageName: node linkType: hard @@ -5914,7 +5962,7 @@ __metadata: parse-json: "npm:^5.0.0" path-type: "npm:^4.0.0" yaml: "npm:^1.10.0" - checksum: b923ff6af581638128e5f074a5450ba12c0300b71302398ea38dbeabd33bbcaa0245ca9adbedfcf284a07da50f99ede5658c80bb3e39e2ce770a99d28a21ef03 + checksum: 10c0/b923ff6af581638128e5f074a5450ba12c0300b71302398ea38dbeabd33bbcaa0245ca9adbedfcf284a07da50f99ede5658c80bb3e39e2ce770a99d28a21ef03 languageName: node linkType: hard @@ -5931,7 +5979,7 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 1c1703be4f02a250b1d6ca3267e408ce16abfe8364193891afc94c2d5c060b69611fdc8d97af74b7e6d5d1aac0ab2fb94d6b079573146bc2d756c2484ce5f0ee + checksum: 10c0/1c1703be4f02a250b1d6ca3267e408ce16abfe8364193891afc94c2d5c060b69611fdc8d97af74b7e6d5d1aac0ab2fb94d6b079573146bc2d756c2484ce5f0ee languageName: node linkType: hard @@ -5941,7 +5989,7 @@ __metadata: dependencies: bn.js: "npm:^4.1.0" elliptic: "npm:^6.5.3" - checksum: 77b11a51360fec9c3bce7a76288fc0deba4b9c838d5fb354b3e40c59194d23d66efe6355fd4b81df7580da0661e1334a235a2a5c040b7569ba97db428d466e7f + checksum: 10c0/77b11a51360fec9c3bce7a76288fc0deba4b9c838d5fb354b3e40c59194d23d66efe6355fd4b81df7580da0661e1334a235a2a5c040b7569ba97db428d466e7f languageName: node linkType: hard @@ -5954,7 +6002,7 @@ __metadata: md5.js: "npm:^1.3.4" ripemd160: "npm:^2.0.1" sha.js: "npm:^2.4.0" - checksum: d402e60e65e70e5083cb57af96d89567954d0669e90550d7cec58b56d49c4b193d35c43cec8338bc72358198b8cbf2f0cac14775b651e99238e1cf411490f915 + checksum: 10c0/d402e60e65e70e5083cb57af96d89567954d0669e90550d7cec58b56d49c4b193d35c43cec8338bc72358198b8cbf2f0cac14775b651e99238e1cf411490f915 languageName: node linkType: hard @@ -5968,7 +6016,7 @@ __metadata: ripemd160: "npm:^2.0.0" safe-buffer: "npm:^5.0.1" sha.js: "npm:^2.4.8" - checksum: 24332bab51011652a9a0a6d160eed1e8caa091b802335324ae056b0dcb5acbc9fcf173cf10d128eba8548c3ce98dfa4eadaa01bd02f44a34414baee26b651835 + checksum: 10c0/24332bab51011652a9a0a6d160eed1e8caa091b802335324ae056b0dcb5acbc9fcf173cf10d128eba8548c3ce98dfa4eadaa01bd02f44a34414baee26b651835 languageName: node linkType: hard @@ -5985,7 +6033,7 @@ __metadata: prompts: "npm:^2.0.1" bin: create-jest: bin/create-jest.js - checksum: e7e54c280692470d3398f62a6238fd396327e01c6a0757002833f06d00afc62dd7bfe04ff2b9cd145264460e6b4d1eb8386f2925b7e567f97939843b7b0e812f + checksum: 10c0/e7e54c280692470d3398f62a6238fd396327e01c6a0757002833f06d00afc62dd7bfe04ff2b9cd145264460e6b4d1eb8386f2925b7e567f97939843b7b0e812f languageName: node linkType: hard @@ -5997,7 +6045,7 @@ __metadata: bin: cross-env: src/bin/cross-env.js cross-env-shell: src/bin/cross-env-shell.js - checksum: f3765c25746c69fcca369655c442c6c886e54ccf3ab8c16847d5ad0e91e2f337d36eedc6599c1227904bf2a228d721e690324446876115bc8e7b32a866735ecf + checksum: 10c0/f3765c25746c69fcca369655c442c6c886e54ccf3ab8c16847d5ad0e91e2f337d36eedc6599c1227904bf2a228d721e690324446876115bc8e7b32a866735ecf languageName: node linkType: hard @@ -6010,7 +6058,7 @@ __metadata: semver: "npm:^5.5.0" shebang-command: "npm:^1.2.0" which: "npm:^1.2.9" - checksum: e05544722e9d7189b4292c66e42b7abeb21db0d07c91b785f4ae5fefceb1f89e626da2703744657b287e86dcd4af57b54567cef75159957ff7a8a761d9055012 + checksum: 10c0/e05544722e9d7189b4292c66e42b7abeb21db0d07c91b785f4ae5fefceb1f89e626da2703744657b287e86dcd4af57b54567cef75159957ff7a8a761d9055012 languageName: node linkType: hard @@ -6021,7 +6069,7 @@ __metadata: path-key: "npm:^3.1.0" shebang-command: "npm:^2.0.0" which: "npm:^2.0.1" - checksum: 5738c312387081c98d69c98e105b6327b069197f864a60593245d64c8089c8a0a744e16349281210d56835bb9274130d825a78b2ad6853ca13cfbeffc0c31750 + checksum: 10c0/5738c312387081c98d69c98e105b6327b069197f864a60593245d64c8089c8a0a744e16349281210d56835bb9274130d825a78b2ad6853ca13cfbeffc0c31750 languageName: node linkType: hard @@ -6040,14 +6088,14 @@ __metadata: public-encrypt: "npm:^4.0.0" randombytes: "npm:^2.0.0" randomfill: "npm:^1.0.3" - checksum: 0c20198886576050a6aa5ba6ae42f2b82778bfba1753d80c5e7a090836890dc372bdc780986b2568b4fb8ed2a91c958e61db1f0b6b1cc96af4bd03ffc298ba92 + checksum: 10c0/0c20198886576050a6aa5ba6ae42f2b82778bfba1753d80c5e7a090836890dc372bdc780986b2568b4fb8ed2a91c958e61db1f0b6b1cc96af4bd03ffc298ba92 languageName: node linkType: hard "crypto-random-string@npm:^2.0.0": version: 2.0.0 resolution: "crypto-random-string@npm:2.0.0" - checksum: 288589b2484fe787f9e146f56c4be90b940018f17af1b152e4dde12309042ff5a2bf69e949aab8b8ac253948381529cc6f3e5a2427b73643a71ff177fa122b37 + checksum: 10c0/288589b2484fe787f9e146f56c4be90b940018f17af1b152e4dde12309042ff5a2bf69e949aab8b8ac253948381529cc6f3e5a2427b73643a71ff177fa122b37 languageName: node linkType: hard @@ -6056,14 +6104,14 @@ __metadata: resolution: "css-declaration-sorter@npm:7.1.1" peerDependencies: postcss: ^8.0.9 - checksum: bea446e441bafde21c3c7b3f7639559311da12eea140db7ee3c61e4f41df455b7b098df107f99bc0cca32a5020841cc94bf8a2d5efb1b383e51f9de478c4816e + checksum: 10c0/bea446e441bafde21c3c7b3f7639559311da12eea140db7ee3c61e4f41df455b7b098df107f99bc0cca32a5020841cc94bf8a2d5efb1b383e51f9de478c4816e languageName: node linkType: hard "css-functions-list@npm:^3.2.1": version: 3.2.1 resolution: "css-functions-list@npm:3.2.1" - checksum: e6e2d9580437ad6df9f2cf18cff3f941691ec5cbbaebd4cb17a5da40d8d5dac50004807ddd05c00a121d2f21a224e2c5d339fe8e13614af21c00181d7d1c22b9 + checksum: 10c0/e6e2d9580437ad6df9f2cf18cff3f941691ec5cbbaebd4cb17a5da40d8d5dac50004807ddd05c00a121d2f21a224e2c5d339fe8e13614af21c00181d7d1c22b9 languageName: node linkType: hard @@ -6083,14 +6131,14 @@ __metadata: semver: "npm:^7.3.5" peerDependencies: webpack: ^4.27.0 || ^5.0.0 - checksum: 02fbdb0dca92e4a4d2aa27b2817ea51d0af3d662d3295c61f2aa37537b29f9a46a9c2e87d8f5e40a1a97159f35d5c7b9a325f27761b59a38c8e15e8ca3988d2b + checksum: 10c0/02fbdb0dca92e4a4d2aa27b2817ea51d0af3d662d3295c61f2aa37537b29f9a46a9c2e87d8f5e40a1a97159f35d5c7b9a325f27761b59a38c8e15e8ca3988d2b languageName: node linkType: hard "css-select-base-adapter@npm:^0.1.1": version: 0.1.1 resolution: "css-select-base-adapter@npm:0.1.1" - checksum: 17f28a0d9e8596c541de250e48958e72a65399c9e15ba5689915d6631a451068187c19d674f08187843a61cb949951cb33c7db82bd7341536769523baed867dc + checksum: 10c0/17f28a0d9e8596c541de250e48958e72a65399c9e15ba5689915d6631a451068187c19d674f08187843a61cb949951cb33c7db82bd7341536769523baed867dc languageName: node linkType: hard @@ -6102,7 +6150,7 @@ __metadata: css-what: "npm:^3.2.1" domutils: "npm:^1.7.0" nth-check: "npm:^1.0.2" - checksum: 47832492c8218ffd92ed18eaa325397bd0bd8e4bcf3bc71767c5e1ed8b4f39b672ba157b0b5e693ef50006017d78c19e46791a75b43bb192c4db3680a331afc7 + checksum: 10c0/47832492c8218ffd92ed18eaa325397bd0bd8e4bcf3bc71767c5e1ed8b4f39b672ba157b0b5e693ef50006017d78c19e46791a75b43bb192c4db3680a331afc7 languageName: node linkType: hard @@ -6115,7 +6163,7 @@ __metadata: domhandler: "npm:^5.0.2" domutils: "npm:^3.0.1" nth-check: "npm:^2.0.1" - checksum: 551c60dba5b54054741032c1793b5734f6ba45e23ae9e82761a3c0ed1acbb8cfedfa443aaba3a3c1a54cac12b456d2012a09d2cd5f0e82e430454c1b9d84d500 + checksum: 10c0/551c60dba5b54054741032c1793b5734f6ba45e23ae9e82761a3c0ed1acbb8cfedfa443aaba3a3c1a54cac12b456d2012a09d2cd5f0e82e430454c1b9d84d500 languageName: node linkType: hard @@ -6125,7 +6173,7 @@ __metadata: dependencies: mdn-data: "npm:2.0.4" source-map: "npm:^0.6.1" - checksum: 8f3c197baea919f4f55d0e84b1665d5e7d5fd74cb192fd0bf951828929b9cd5fd71de074afb685705bf5b40d7b04d4c5a206bfab26954378f04f2f5ce426d2f8 + checksum: 10c0/8f3c197baea919f4f55d0e84b1665d5e7d5fd74cb192fd0bf951828929b9cd5fd71de074afb685705bf5b40d7b04d4c5a206bfab26954378f04f2f5ce426d2f8 languageName: node linkType: hard @@ -6135,7 +6183,7 @@ __metadata: dependencies: mdn-data: "npm:2.0.14" source-map: "npm:^0.6.1" - checksum: 499a507bfa39b8b2128f49736882c0dd636b0cd3370f2c69f4558ec86d269113286b7df469afc955de6a68b0dba00bc533e40022a73698081d600072d5d83c1c + checksum: 10c0/499a507bfa39b8b2128f49736882c0dd636b0cd3370f2c69f4558ec86d269113286b7df469afc955de6a68b0dba00bc533e40022a73698081d600072d5d83c1c languageName: node linkType: hard @@ -6145,7 +6193,7 @@ __metadata: dependencies: mdn-data: "npm:2.0.30" source-map-js: "npm:^1.0.1" - checksum: 6f8c1a11d5e9b14bf02d10717fc0351b66ba12594166f65abfbd8eb8b5b490dd367f5c7721db241a3c792d935fc6751fbc09f7e1598d421477ad9fadc30f4f24 + checksum: 10c0/6f8c1a11d5e9b14bf02d10717fc0351b66ba12594166f65abfbd8eb8b5b490dd367f5c7721db241a3c792d935fc6751fbc09f7e1598d421477ad9fadc30f4f24 languageName: node linkType: hard @@ -6155,28 +6203,28 @@ __metadata: dependencies: mdn-data: "npm:2.0.28" source-map-js: "npm:^1.0.1" - checksum: 47e87b0f02f8ac22f57eceb65c58011dd142d2158128882a0bf963cf2eabb81a4ebbc2e3790c8289be7919fa8b83750c7b69272bd66772c708143b772ba3c186 + checksum: 10c0/47e87b0f02f8ac22f57eceb65c58011dd142d2158128882a0bf963cf2eabb81a4ebbc2e3790c8289be7919fa8b83750c7b69272bd66772c708143b772ba3c186 languageName: node linkType: hard "css-what@npm:^3.2.1": version: 3.4.2 resolution: "css-what@npm:3.4.2" - checksum: 454dca1b9dff8cf740d666d24a6c517562f374fe3a160891ebf8c82a9dd76864757913573c4db30537a959f5f595750420be00552ea6d5a9456ee68acc2349bf + checksum: 10c0/454dca1b9dff8cf740d666d24a6c517562f374fe3a160891ebf8c82a9dd76864757913573c4db30537a959f5f595750420be00552ea6d5a9456ee68acc2349bf languageName: node linkType: hard "css-what@npm:^6.1.0": version: 6.1.0 resolution: "css-what@npm:6.1.0" - checksum: a09f5a6b14ba8dcf57ae9a59474722e80f20406c53a61e9aedb0eedc693b135113ffe2983f4efc4b5065ae639442e9ae88df24941ef159c218b231011d733746 + checksum: 10c0/a09f5a6b14ba8dcf57ae9a59474722e80f20406c53a61e9aedb0eedc693b135113ffe2983f4efc4b5065ae639442e9ae88df24941ef159c218b231011d733746 languageName: node linkType: hard "css.escape@npm:^1.5.1": version: 1.5.1 resolution: "css.escape@npm:1.5.1" - checksum: 5e09035e5bf6c2c422b40c6df2eb1529657a17df37fda5d0433d722609527ab98090baf25b13970ca754079a0f3161dd3dfc0e743563ded8cfa0749d861c1525 + checksum: 10c0/5e09035e5bf6c2c422b40c6df2eb1529657a17df37fda5d0433d722609527ab98090baf25b13970ca754079a0f3161dd3dfc0e743563ded8cfa0749d861c1525 languageName: node linkType: hard @@ -6185,28 +6233,28 @@ __metadata: resolution: "cssesc@npm:3.0.0" bin: cssesc: bin/cssesc - checksum: 6bcfd898662671be15ae7827120472c5667afb3d7429f1f917737f3bf84c4176003228131b643ae74543f17a394446247df090c597bb9a728cce298606ed0aa7 + checksum: 10c0/6bcfd898662671be15ae7827120472c5667afb3d7429f1f917737f3bf84c4176003228131b643ae74543f17a394446247df090c597bb9a728cce298606ed0aa7 languageName: node linkType: hard -"cssnano-preset-default@npm:^6.0.3": - version: 6.0.3 - resolution: "cssnano-preset-default@npm:6.0.3" +"cssnano-preset-default@npm:^6.0.5": + version: 6.0.5 + resolution: "cssnano-preset-default@npm:6.0.5" dependencies: css-declaration-sorter: "npm:^7.1.1" cssnano-utils: "npm:^4.0.1" postcss-calc: "npm:^9.0.1" - postcss-colormin: "npm:^6.0.2" - postcss-convert-values: "npm:^6.0.2" + postcss-colormin: "npm:^6.0.3" + postcss-convert-values: "npm:^6.0.4" postcss-discard-comments: "npm:^6.0.1" - postcss-discard-duplicates: "npm:^6.0.1" - postcss-discard-empty: "npm:^6.0.1" + postcss-discard-duplicates: "npm:^6.0.2" + postcss-discard-empty: "npm:^6.0.2" postcss-discard-overridden: "npm:^6.0.1" - postcss-merge-longhand: "npm:^6.0.2" - postcss-merge-rules: "npm:^6.0.3" - postcss-minify-font-values: "npm:^6.0.1" - postcss-minify-gradients: "npm:^6.0.1" - postcss-minify-params: "npm:^6.0.2" + postcss-merge-longhand: "npm:^6.0.3" + postcss-merge-rules: "npm:^6.0.4" + postcss-minify-font-values: "npm:^6.0.2" + postcss-minify-gradients: "npm:^6.0.2" + postcss-minify-params: "npm:^6.0.3" postcss-minify-selectors: "npm:^6.0.2" postcss-normalize-charset: "npm:^6.0.1" postcss-normalize-display-values: "npm:^6.0.1" @@ -6214,17 +6262,17 @@ __metadata: postcss-normalize-repeat-style: "npm:^6.0.1" postcss-normalize-string: "npm:^6.0.1" postcss-normalize-timing-functions: "npm:^6.0.1" - postcss-normalize-unicode: "npm:^6.0.2" + postcss-normalize-unicode: "npm:^6.0.3" postcss-normalize-url: "npm:^6.0.1" postcss-normalize-whitespace: "npm:^6.0.1" postcss-ordered-values: "npm:^6.0.1" - postcss-reduce-initial: "npm:^6.0.2" + postcss-reduce-initial: "npm:^6.0.3" postcss-reduce-transforms: "npm:^6.0.1" postcss-svgo: "npm:^6.0.2" postcss-unique-selectors: "npm:^6.0.2" peerDependencies: postcss: ^8.4.31 - checksum: d100a1f8ab71adbb6df85e00f4a9e5d04ac06fc50343157eef853aded3f75dd0489dd845a5b2fb43ca701bd88c39c5aa88673f842bc1f94f4318c7b38ced1963 + checksum: 10c0/b51072bf808ad7af0e7d38eb2490fc9dd27bfa95c0de804f7b5f242a283cedd6446ef55936843e4c7c9856540e225e322a794e70b47ae515b894e84b629a58ea languageName: node linkType: hard @@ -6233,19 +6281,19 @@ __metadata: resolution: "cssnano-utils@npm:4.0.1" peerDependencies: postcss: ^8.4.31 - checksum: 20513a393402f283c85c450ece43d1a6a06a9906b524481043ac203a86888a4ca5cbef878c615a58fdd82a9e870ce62c6f3fea9f51814034a084d8980e17cf96 + checksum: 10c0/20513a393402f283c85c450ece43d1a6a06a9906b524481043ac203a86888a4ca5cbef878c615a58fdd82a9e870ce62c6f3fea9f51814034a084d8980e17cf96 languageName: node linkType: hard "cssnano@npm:^6.0.1": - version: 6.0.3 - resolution: "cssnano@npm:6.0.3" + version: 6.0.5 + resolution: "cssnano@npm:6.0.5" dependencies: - cssnano-preset-default: "npm:^6.0.3" - lilconfig: "npm:^3.0.0" + cssnano-preset-default: "npm:^6.0.5" + lilconfig: "npm:^3.1.1" peerDependencies: postcss: ^8.4.31 - checksum: d1669eb987fd96159bae262ef2f76c1a64fffefe8fa593918a6bda377977798b60fb4a6a871a9b9a9deb11258130ee254fdb8c3144769b3060ad9f2a95a4ed0a + checksum: 10c0/f802b563bf4a3a973d91e0327803536d56c4667138587d84f6341f68862d7514bceb2f1258d7bbf66b2fdedf1e9c1b7fd0b4848bb0069296ecbebbdc70f2ccca languageName: node linkType: hard @@ -6254,7 +6302,7 @@ __metadata: resolution: "csso@npm:4.2.0" dependencies: css-tree: "npm:^1.1.2" - checksum: f8c6b1300efaa0f8855a7905ae3794a29c6496e7f16a71dec31eb6ca7cfb1f058a4b03fd39b66c4deac6cb06bf6b4ba86da7b67d7320389cb9994d52b924b903 + checksum: 10c0/f8c6b1300efaa0f8855a7905ae3794a29c6496e7f16a71dec31eb6ca7cfb1f058a4b03fd39b66c4deac6cb06bf6b4ba86da7b67d7320389cb9994d52b924b903 languageName: node linkType: hard @@ -6263,21 +6311,21 @@ __metadata: resolution: "csso@npm:5.0.5" dependencies: css-tree: "npm:~2.2.0" - checksum: ab4beb1e97dd7e207c10e9925405b45f15a6cd1b4880a8686ad573aa6d476aed28b4121a666cffd26c37a26179f7b54741f7c257543003bfb244d06a62ad569b + checksum: 10c0/ab4beb1e97dd7e207c10e9925405b45f15a6cd1b4880a8686ad573aa6d476aed28b4121a666cffd26c37a26179f7b54741f7c257543003bfb244d06a62ad569b languageName: node linkType: hard "cssom@npm:^0.5.0": version: 0.5.0 resolution: "cssom@npm:0.5.0" - checksum: 8c4121c243baf0678c65dcac29b201ff0067dfecf978de9d5c83b2ff127a8fdefd2bfd54577f5ad8c80ed7d2c8b489ae01c82023545d010c4ecb87683fb403dd + checksum: 10c0/8c4121c243baf0678c65dcac29b201ff0067dfecf978de9d5c83b2ff127a8fdefd2bfd54577f5ad8c80ed7d2c8b489ae01c82023545d010c4ecb87683fb403dd languageName: node linkType: hard "cssom@npm:~0.3.6": version: 0.3.8 resolution: "cssom@npm:0.3.8" - checksum: d74017b209440822f9e24d8782d6d2e808a8fdd58fa626a783337222fe1c87a518ba944d4c88499031b4786e68772c99dfae616638d71906fe9f203aeaf14411 + checksum: 10c0/d74017b209440822f9e24d8782d6d2e808a8fdd58fa626a783337222fe1c87a518ba944d4c88499031b4786e68772c99dfae616638d71906fe9f203aeaf14411 languageName: node linkType: hard @@ -6286,7 +6334,7 @@ __metadata: resolution: "cssstyle@npm:2.3.0" dependencies: cssom: "npm:~0.3.6" - checksum: 863400da2a458f73272b9a55ba7ff05de40d850f22eb4f37311abebd7eff801cf1cd2fb04c4c92b8c3daed83fe766e52e4112afb7bc88d86c63a9c2256a7d178 + checksum: 10c0/863400da2a458f73272b9a55ba7ff05de40d850f22eb4f37311abebd7eff801cf1cd2fb04c4c92b8c3daed83fe766e52e4112afb7bc88d86c63a9c2256a7d178 languageName: node linkType: hard @@ -6295,21 +6343,21 @@ __metadata: resolution: "cssstyle@npm:4.0.1" dependencies: rrweb-cssom: "npm:^0.6.0" - checksum: cadf9a8b23e11f4c6d63f21291096a0b0be868bd4ab9c799daa2c5b18330e39e5281605f01da906e901b42f742df0f3b3645af6465e83377ff7d15a88ee432a0 + checksum: 10c0/cadf9a8b23e11f4c6d63f21291096a0b0be868bd4ab9c799daa2c5b18330e39e5281605f01da906e901b42f742df0f3b3645af6465e83377ff7d15a88ee432a0 languageName: node linkType: hard "csstype@npm:^3.0.2": version: 3.1.2 resolution: "csstype@npm:3.1.2" - checksum: 32c038af259897c807ac738d9eab16b3d86747c72b09d5c740978e06f067f9b7b1737e1b75e407c7ab1fe1543dc95f20e202b4786aeb1b8d3bdf5d5ce655e6c6 + checksum: 10c0/32c038af259897c807ac738d9eab16b3d86747c72b09d5c740978e06f067f9b7b1737e1b75e407c7ab1fe1543dc95f20e202b4786aeb1b8d3bdf5d5ce655e6c6 languageName: node linkType: hard "damerau-levenshtein@npm:^1.0.8": version: 1.0.8 resolution: "damerau-levenshtein@npm:1.0.8" - checksum: 4c2647e0f42acaee7d068756c1d396e296c3556f9c8314bac1ac63ffb236217ef0e7e58602b18bb2173deec7ec8e0cac8e27cccf8f5526666b4ff11a13ad54a3 + checksum: 10c0/4c2647e0f42acaee7d068756c1d396e296c3556f9c8314bac1ac63ffb236217ef0e7e58602b18bb2173deec7ec8e0cac8e27cccf8f5526666b4ff11a13ad54a3 languageName: node linkType: hard @@ -6320,7 +6368,7 @@ __metadata: abab: "npm:^2.0.6" whatwg-mimetype: "npm:^3.0.0" whatwg-url: "npm:^11.0.0" - checksum: 051c3aaaf3e961904f136aab095fcf6dff4db23a7fc759dd8ba7b3e6ba03fc07ef608086caad8ab910d864bd3b5e57d0d2f544725653d77c96a2c971567045f4 + checksum: 10c0/051c3aaaf3e961904f136aab095fcf6dff4db23a7fc759dd8ba7b3e6ba03fc07ef608086caad8ab910d864bd3b5e57d0d2f544725653d77c96a2c971567045f4 languageName: node linkType: hard @@ -6330,21 +6378,21 @@ __metadata: dependencies: whatwg-mimetype: "npm:^4.0.0" whatwg-url: "npm:^14.0.0" - checksum: 1b894d7d41c861f3a4ed2ae9b1c3f0909d4575ada02e36d3d3bc584bdd84278e20709070c79c3b3bff7ac98598cb191eb3e86a89a79ea4ee1ef360e1694f92ad + checksum: 10c0/1b894d7d41c861f3a4ed2ae9b1c3f0909d4575ada02e36d3d3bc584bdd84278e20709070c79c3b3bff7ac98598cb191eb3e86a89a79ea4ee1ef360e1694f92ad languageName: node linkType: hard "dateformat@npm:^4.6.3": version: 4.6.3 resolution: "dateformat@npm:4.6.3" - checksum: e2023b905e8cfe2eb8444fb558562b524807a51cdfe712570f360f873271600b5c94aebffaf11efb285e2c072264a7cf243eadb68f3eba0f8cc85fb86cd25df6 + checksum: 10c0/e2023b905e8cfe2eb8444fb558562b524807a51cdfe712570f360f873271600b5c94aebffaf11efb285e2c072264a7cf243eadb68f3eba0f8cc85fb86cd25df6 languageName: node linkType: hard "debounce@npm:^1.2.1": version: 1.2.1 resolution: "debounce@npm:1.2.1" - checksum: 6c9320aa0973fc42050814621a7a8a78146c1975799b5b3cc1becf1f77ba9a5aa583987884230da0842a03f385def452fad5d60db97c3d1c8b824e38a8edf500 + checksum: 10c0/6c9320aa0973fc42050814621a7a8a78146c1975799b5b3cc1becf1f77ba9a5aa583987884230da0842a03f385def452fad5d60db97c3d1c8b824e38a8edf500 languageName: node linkType: hard @@ -6353,7 +6401,7 @@ __metadata: resolution: "debug@npm:2.6.9" dependencies: ms: "npm:2.0.0" - checksum: 121908fb839f7801180b69a7e218a40b5a0b718813b886b7d6bdb82001b931c938e2941d1e4450f33a1b1df1da653f5f7a0440c197f29fbf8a6e9d45ff6ef589 + checksum: 10c0/121908fb839f7801180b69a7e218a40b5a0b718813b886b7d6bdb82001b931c938e2941d1e4450f33a1b1df1da653f5f7a0440c197f29fbf8a6e9d45ff6ef589 languageName: node linkType: hard @@ -6365,7 +6413,7 @@ __metadata: peerDependenciesMeta: supports-color: optional: true - checksum: cedbec45298dd5c501d01b92b119cd3faebe5438c3917ff11ae1bff86a6c722930ac9c8659792824013168ba6db7c4668225d845c633fbdafbbf902a6389f736 + checksum: 10c0/cedbec45298dd5c501d01b92b119cd3faebe5438c3917ff11ae1bff86a6c722930ac9c8659792824013168ba6db7c4668225d845c633fbdafbbf902a6389f736 languageName: node linkType: hard @@ -6374,28 +6422,28 @@ __metadata: resolution: "debug@npm:3.2.7" dependencies: ms: "npm:^2.1.1" - checksum: 37d96ae42cbc71c14844d2ae3ba55adf462ec89fd3a999459dec3833944cd999af6007ff29c780f1c61153bcaaf2c842d1e4ce1ec621e4fc4923244942e4a02a + checksum: 10c0/37d96ae42cbc71c14844d2ae3ba55adf462ec89fd3a999459dec3833944cd999af6007ff29c780f1c61153bcaaf2c842d1e4ce1ec621e4fc4923244942e4a02a languageName: node linkType: hard "decamelize@npm:^1.2.0": version: 1.2.0 resolution: "decamelize@npm:1.2.0" - checksum: 85c39fe8fbf0482d4a1e224ef0119db5c1897f8503bcef8b826adff7a1b11414972f6fef2d7dec2ee0b4be3863cf64ac1439137ae9e6af23a3d8dcbe26a5b4b2 + checksum: 10c0/85c39fe8fbf0482d4a1e224ef0119db5c1897f8503bcef8b826adff7a1b11414972f6fef2d7dec2ee0b4be3863cf64ac1439137ae9e6af23a3d8dcbe26a5b4b2 languageName: node linkType: hard "decimal.js@npm:^10.4.2, decimal.js@npm:^10.4.3": version: 10.4.3 resolution: "decimal.js@npm:10.4.3" - checksum: 6d60206689ff0911f0ce968d40f163304a6c1bc739927758e6efc7921cfa630130388966f16bf6ef6b838cb33679fbe8e7a78a2f3c478afce841fd55ac8fb8ee + checksum: 10c0/6d60206689ff0911f0ce968d40f163304a6c1bc739927758e6efc7921cfa630130388966f16bf6ef6b838cb33679fbe8e7a78a2f3c478afce841fd55ac8fb8ee languageName: node linkType: hard "decode-uri-component@npm:^0.2.0": version: 0.2.2 resolution: "decode-uri-component@npm:0.2.2" - checksum: 1f4fa54eb740414a816b3f6c24818fbfcabd74ac478391e9f4e2282c994127db02010ce804f3d08e38255493cfe68608b3f5c8e09fd6efc4ae46c807691f7a31 + checksum: 10c0/1f4fa54eb740414a816b3f6c24818fbfcabd74ac478391e9f4e2282c994127db02010ce804f3d08e38255493cfe68608b3f5c8e09fd6efc4ae46c807691f7a31 languageName: node linkType: hard @@ -6407,7 +6455,7 @@ __metadata: peerDependenciesMeta: babel-plugin-macros: optional: true - checksum: f8612cd5b00aab58b18bb95572dca08dc2d49720bfa7201a444c3dae430291e8a06d4928614a6ec8764d713927f44bce9c990d3b8238fca2f430990ddc17c070 + checksum: 10c0/f8612cd5b00aab58b18bb95572dca08dc2d49720bfa7201a444c3dae430291e8a06d4928614a6ec8764d713927f44bce9c990d3b8238fca2f430990ddc17c070 languageName: node linkType: hard @@ -6421,7 +6469,7 @@ __metadata: object-is: "npm:^1.0.1" object-keys: "npm:^1.1.1" regexp.prototype.flags: "npm:^1.2.0" - checksum: 473d5dd1d707afd5ad3068864765590591b049d0e0d9a01931599dbbd820e35f09d0a42faa6e4644deb7cf6b7dc90f7bfdf5559f42279d67f714209b62036212 + checksum: 10c0/473d5dd1d707afd5ad3068864765590591b049d0e0d9a01931599dbbd820e35f09d0a42faa6e4644deb7cf6b7dc90f7bfdf5559f42279d67f714209b62036212 languageName: node linkType: hard @@ -6447,43 +6495,21 @@ __metadata: which-boxed-primitive: "npm:^1.0.2" which-collection: "npm:^1.0.1" which-typed-array: "npm:^1.1.9" - checksum: 9e32606f0e24ef4d6b100c68cadae81495c3638944e933afc4b8389b042e95c5fe1381492cf7a6d385bcbae564c9cfb7086f37f277e37521a632b008a6b208dc + checksum: 10c0/9e32606f0e24ef4d6b100c68cadae81495c3638944e933afc4b8389b042e95c5fe1381492cf7a6d385bcbae564c9cfb7086f37f277e37521a632b008a6b208dc languageName: node linkType: hard "deep-is@npm:^0.1.3": version: 0.1.4 resolution: "deep-is@npm:0.1.4" - checksum: 7f0ee496e0dff14a573dc6127f14c95061b448b87b995fc96c017ce0a1e66af1675e73f1d6064407975bc4ea6ab679497a29fff7b5b9c4e99cb10797c1ad0b4c + checksum: 10c0/7f0ee496e0dff14a573dc6127f14c95061b448b87b995fc96c017ce0a1e66af1675e73f1d6064407975bc4ea6ab679497a29fff7b5b9c4e99cb10797c1ad0b4c languageName: node linkType: hard "deepmerge@npm:^4.0, deepmerge@npm:^4.2.2": version: 4.3.1 resolution: "deepmerge@npm:4.3.1" - checksum: e53481aaf1aa2c4082b5342be6b6d8ad9dfe387bc92ce197a66dea08bd4265904a087e75e464f14d1347cf2ac8afe1e4c16b266e0561cc5df29382d3c5f80044 - languageName: node - linkType: hard - -"default-browser-id@npm:^3.0.0": - version: 3.0.0 - resolution: "default-browser-id@npm:3.0.0" - dependencies: - bplist-parser: "npm:^0.2.0" - untildify: "npm:^4.0.0" - checksum: 8db3ab882eb3e1e8b59d84c8641320e6c66d8eeb17eb4bb848b7dd549b1e6fd313988e4a13542e95fbaeff03f6e9dedc5ad191ad4df7996187753eb0d45c00b7 - languageName: node - linkType: hard - -"default-browser@npm:^4.0.0": - version: 4.0.0 - resolution: "default-browser@npm:4.0.0" - dependencies: - bundle-name: "npm:^3.0.0" - default-browser-id: "npm:^3.0.0" - execa: "npm:^7.1.1" - titleize: "npm:^3.0.0" - checksum: 7c8848badc139ecf9d878e562bc4e7ab4301e51ba120b24d8dcb14739c30152115cc612065ac3ab73c02aace4afa29db5a044257b2f0cf234f16e3a58f6c925e + checksum: 10c0/e53481aaf1aa2c4082b5342be6b6d8ad9dfe387bc92ce197a66dea08bd4265904a087e75e464f14d1347cf2ac8afe1e4c16b266e0561cc5df29382d3c5f80044 languageName: node linkType: hard @@ -6493,25 +6519,18 @@ __metadata: dependencies: execa: "npm:^1.0.0" ip-regex: "npm:^2.1.0" - checksum: 2f499b3a9a6c995fd2b4c0d2411256b1899c94e7eacdb895be64e25c301fa8bce8fd3f8152e540669bb178c6a355154c2f86ec23d4ff40ff3b8413d2a59cd86d + checksum: 10c0/2f499b3a9a6c995fd2b4c0d2411256b1899c94e7eacdb895be64e25c301fa8bce8fd3f8152e540669bb178c6a355154c2f86ec23d4ff40ff3b8413d2a59cd86d languageName: node linkType: hard -"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.1": - version: 1.1.1 - resolution: "define-data-property@npm:1.1.1" +"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.2": + version: 1.1.4 + resolution: "define-data-property@npm:1.1.4" dependencies: - get-intrinsic: "npm:^1.2.1" + es-define-property: "npm:^1.0.0" + es-errors: "npm:^1.3.0" gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.0" - checksum: 77ef6e0bceb515e05b5913ab635a84d537cee84f8a7c37c77fdcb31fc5b80f6dbe81b33375e4b67d96aa04e6a0d8d4ea099e431d83f089af8d93adfb584bcb94 - languageName: node - linkType: hard - -"define-lazy-prop@npm:^3.0.0": - version: 3.0.0 - resolution: "define-lazy-prop@npm:3.0.0" - checksum: 5ab0b2bf3fa58b3a443140bbd4cd3db1f91b985cc8a246d330b9ac3fc0b6a325a6d82bddc0b055123d745b3f9931afeea74a5ec545439a1630b9c8512b0eeb49 + checksum: 10c0/dea0606d1483eb9db8d930d4eac62ca0fa16738b0b3e07046cddfacf7d8c868bbe13fa0cb263eb91c7d0d527960dc3f2f2471a69ed7816210307f6744fe62e37 languageName: node linkType: hard @@ -6522,7 +6541,7 @@ __metadata: define-data-property: "npm:^1.0.1" has-property-descriptors: "npm:^1.0.0" object-keys: "npm:^1.1.1" - checksum: 88a152319ffe1396ccc6ded510a3896e77efac7a1bfbaa174a7b00414a1747377e0bb525d303794a47cf30e805c2ec84e575758512c6e44a993076d29fd4e6c3 + checksum: 10c0/88a152319ffe1396ccc6ded510a3896e77efac7a1bfbaa174a7b00414a1747377e0bb525d303794a47cf30e805c2ec84e575758512c6e44a993076d29fd4e6c3 languageName: node linkType: hard @@ -6531,7 +6550,7 @@ __metadata: resolution: "define-property@npm:0.2.5" dependencies: is-descriptor: "npm:^0.1.0" - checksum: 9986915c0893818dedc9ca23eaf41370667762fd83ad8aa4bf026a28563120dbaacebdfbfbf2b18d3b929026b9c6ee972df1dbf22de8fafb5fe6ef18361e4750 + checksum: 10c0/9986915c0893818dedc9ca23eaf41370667762fd83ad8aa4bf026a28563120dbaacebdfbfbf2b18d3b929026b9c6ee972df1dbf22de8fafb5fe6ef18361e4750 languageName: node linkType: hard @@ -6540,7 +6559,7 @@ __metadata: resolution: "define-property@npm:1.0.0" dependencies: is-descriptor: "npm:^1.0.0" - checksum: d7cf09db10d55df305f541694ed51dafc776ad9bb8a24428899c9f2d36b11ab38dce5527a81458d1b5e7c389f8cbe803b4abad6e91a0037a329d153b84fc975e + checksum: 10c0/d7cf09db10d55df305f541694ed51dafc776ad9bb8a24428899c9f2d36b11ab38dce5527a81458d1b5e7c389f8cbe803b4abad6e91a0037a329d153b84fc975e languageName: node linkType: hard @@ -6550,7 +6569,7 @@ __metadata: dependencies: is-descriptor: "npm:^1.0.2" isobject: "npm:^3.0.1" - checksum: f91a08ad008fa764172a2c072adc7312f10217ade89ddaea23018321c6d71b2b68b8c229141ed2064179404e345c537f1a2457c379824813695b51a6ad3e4969 + checksum: 10c0/f91a08ad008fa764172a2c072adc7312f10217ade89ddaea23018321c6d71b2b68b8c229141ed2064179404e345c537f1a2457c379824813695b51a6ad3e4969 languageName: node linkType: hard @@ -6565,42 +6584,42 @@ __metadata: p-map: "npm:^2.0.0" pify: "npm:^4.0.1" rimraf: "npm:^2.6.3" - checksum: ed3233e86e39c0a6a7ea85d8ad0ebc00603078ad408b9c34b4742f707c20028c5731dce2e8aa9a6eb5ae6bee30ccc5405cf7b5d457306520e37c92d0410b6061 + checksum: 10c0/ed3233e86e39c0a6a7ea85d8ad0ebc00603078ad408b9c34b4742f707c20028c5731dce2e8aa9a6eb5ae6bee30ccc5405cf7b5d457306520e37c92d0410b6061 languageName: node linkType: hard "delayed-stream@npm:~1.0.0": version: 1.0.0 resolution: "delayed-stream@npm:1.0.0" - checksum: d758899da03392e6712f042bec80aa293bbe9e9ff1b2634baae6a360113e708b91326594c8a486d475c69d6259afb7efacdc3537bfcda1c6c648e390ce601b19 + checksum: 10c0/d758899da03392e6712f042bec80aa293bbe9e9ff1b2634baae6a360113e708b91326594c8a486d475c69d6259afb7efacdc3537bfcda1c6c648e390ce601b19 languageName: node linkType: hard "denque@npm:^2.1.0": version: 2.1.0 resolution: "denque@npm:2.1.0" - checksum: f9ef81aa0af9c6c614a727cb3bd13c5d7db2af1abf9e6352045b86e85873e629690f6222f4edd49d10e4ccf8f078bbeec0794fafaf61b659c0589d0c511ec363 + checksum: 10c0/f9ef81aa0af9c6c614a727cb3bd13c5d7db2af1abf9e6352045b86e85873e629690f6222f4edd49d10e4ccf8f078bbeec0794fafaf61b659c0589d0c511ec363 languageName: node linkType: hard "depd@npm:2.0.0": version: 2.0.0 resolution: "depd@npm:2.0.0" - checksum: 58bd06ec20e19529b06f7ad07ddab60e504d9e0faca4bd23079fac2d279c3594334d736508dc350e06e510aba5e22e4594483b3a6562ce7c17dd797f4cc4ad2c + checksum: 10c0/58bd06ec20e19529b06f7ad07ddab60e504d9e0faca4bd23079fac2d279c3594334d736508dc350e06e510aba5e22e4594483b3a6562ce7c17dd797f4cc4ad2c languageName: node linkType: hard "depd@npm:~1.1.2": version: 1.1.2 resolution: "depd@npm:1.1.2" - checksum: acb24aaf936ef9a227b6be6d495f0d2eb20108a9a6ad40585c5bda1a897031512fef6484e4fdbb80bd249fdaa82841fa1039f416ece03188e677ba11bcfda249 + checksum: 10c0/acb24aaf936ef9a227b6be6d495f0d2eb20108a9a6ad40585c5bda1a897031512fef6484e4fdbb80bd249fdaa82841fa1039f416ece03188e677ba11bcfda249 languageName: node linkType: hard "dequal@npm:^2.0.2, dequal@npm:^2.0.3": version: 2.0.3 resolution: "dequal@npm:2.0.3" - checksum: f98860cdf58b64991ae10205137c0e97d384c3a4edc7f807603887b7c4b850af1224a33d88012009f150861cbee4fa2d322c4cc04b9313bee312e47f6ecaa888 + checksum: 10c0/f98860cdf58b64991ae10205137c0e97d384c3a4edc7f807603887b7c4b850af1224a33d88012009f150861cbee4fa2d322c4cc04b9313bee312e47f6ecaa888 languageName: node linkType: hard @@ -6610,42 +6629,42 @@ __metadata: dependencies: inherits: "npm:^2.0.1" minimalistic-assert: "npm:^1.0.0" - checksum: 671354943ad67493e49eb4c555480ab153edd7cee3a51c658082fcde539d2690ed2a4a0b5d1f401f9cde822edf3939a6afb2585f32c091f2d3a1b1665cd45236 + checksum: 10c0/671354943ad67493e49eb4c555480ab153edd7cee3a51c658082fcde539d2690ed2a4a0b5d1f401f9cde822edf3939a6afb2585f32c091f2d3a1b1665cd45236 languageName: node linkType: hard "destroy@npm:1.2.0": version: 1.2.0 resolution: "destroy@npm:1.2.0" - checksum: bd7633942f57418f5a3b80d5cb53898127bcf53e24cdf5d5f4396be471417671f0fee48a4ebe9a1e9defbde2a31280011af58a57e090ff822f589b443ed4e643 + checksum: 10c0/bd7633942f57418f5a3b80d5cb53898127bcf53e24cdf5d5f4396be471417671f0fee48a4ebe9a1e9defbde2a31280011af58a57e090ff822f589b443ed4e643 languageName: node linkType: hard "detect-file@npm:^1.0.0": version: 1.0.0 resolution: "detect-file@npm:1.0.0" - checksum: c782a5f992047944c39d337c82f5d1d21d65d1378986d46c354df9d9ec6d5f356bca0182969c11b08b9b8a7af8727b3c2d5a9fad0b022be4a3bf4c216f63ed07 + checksum: 10c0/c782a5f992047944c39d337c82f5d1d21d65d1378986d46c354df9d9ec6d5f356bca0182969c11b08b9b8a7af8727b3c2d5a9fad0b022be4a3bf4c216f63ed07 languageName: node linkType: hard "detect-it@npm:^4.0.1": version: 4.0.1 resolution: "detect-it@npm:4.0.1" - checksum: 9633dcafaa28dfd61b5e8f2925ec5cd09fda19d99ff7ea062e22d7cc8b3a8dfccf5c5118b6e72940f15d8371bd5d696ea66cc0972d1a6cbee918d4b06448c359 + checksum: 10c0/9633dcafaa28dfd61b5e8f2925ec5cd09fda19d99ff7ea062e22d7cc8b3a8dfccf5c5118b6e72940f15d8371bd5d696ea66cc0972d1a6cbee918d4b06448c359 languageName: node linkType: hard "detect-newline@npm:^3.0.0": version: 3.1.0 resolution: "detect-newline@npm:3.1.0" - checksum: c38cfc8eeb9fda09febb44bcd85e467c970d4e3bf526095394e5a4f18bc26dd0cf6b22c69c1fa9969261521c593836db335c2795218f6d781a512aea2fb8209d + checksum: 10c0/c38cfc8eeb9fda09febb44bcd85e467c970d4e3bf526095394e5a4f18bc26dd0cf6b22c69c1fa9969261521c593836db335c2795218f6d781a512aea2fb8209d languageName: node linkType: hard "detect-node@npm:^2.0.4": version: 2.1.0 resolution: "detect-node@npm:2.1.0" - checksum: f039f601790f2e9d4654e499913259a798b1f5246ae24f86ab5e8bd4aaf3bce50484234c494f11fb00aecb0c6e2733aa7b1cf3f530865640b65fbbd65b2c4e09 + checksum: 10c0/f039f601790f2e9d4654e499913259a798b1f5246ae24f86ab5e8bd4aaf3bce50484234c494f11fb00aecb0c6e2733aa7b1cf3f530865640b65fbbd65b2c4e09 languageName: node linkType: hard @@ -6654,14 +6673,14 @@ __metadata: resolution: "detect-passive-events@npm:2.0.3" dependencies: detect-it: "npm:^4.0.1" - checksum: 92a20249ef379f0119a8c76de7cbfc3e50ad95515debae028c27349023af1f29646dc0ba928be4aaff94ec4d5da10c20444b16fc3db407caf68ba200a96e9aea + checksum: 10c0/92a20249ef379f0119a8c76de7cbfc3e50ad95515debae028c27349023af1f29646dc0ba928be4aaff94ec4d5da10c20444b16fc3db407caf68ba200a96e9aea languageName: node linkType: hard "diff-sequences@npm:^29.6.3": version: 29.6.3 resolution: "diff-sequences@npm:29.6.3" - checksum: 32e27ac7dbffdf2fb0eb5a84efd98a9ad084fbabd5ac9abb8757c6770d5320d2acd172830b28c4add29bb873d59420601dfc805ac4064330ce59b1adfd0593b2 + checksum: 10c0/32e27ac7dbffdf2fb0eb5a84efd98a9ad084fbabd5ac9abb8757c6770d5320d2acd172830b28c4add29bb873d59420601dfc805ac4064330ce59b1adfd0593b2 languageName: node linkType: hard @@ -6672,7 +6691,7 @@ __metadata: bn.js: "npm:^4.1.0" miller-rabin: "npm:^4.0.0" randombytes: "npm:^2.0.0" - checksum: ce53ccafa9ca544b7fc29b08a626e23a9b6562efc2a98559a0c97b4718937cebaa9b5d7d0a05032cc9c1435e9b3c1532b9e9bf2e0ede868525922807ad6e1ecf + checksum: 10c0/ce53ccafa9ca544b7fc29b08a626e23a9b6562efc2a98559a0c97b4718937cebaa9b5d7d0a05032cc9c1435e9b3c1532b9e9bf2e0ede868525922807ad6e1ecf languageName: node linkType: hard @@ -6681,14 +6700,14 @@ __metadata: resolution: "dir-glob@npm:3.0.1" dependencies: path-type: "npm:^4.0.0" - checksum: dcac00920a4d503e38bb64001acb19df4efc14536ada475725e12f52c16777afdee4db827f55f13a908ee7efc0cb282e2e3dbaeeb98c0993dd93d1802d3bf00c + checksum: 10c0/dcac00920a4d503e38bb64001acb19df4efc14536ada475725e12f52c16777afdee4db827f55f13a908ee7efc0cb282e2e3dbaeeb98c0993dd93d1802d3bf00c languageName: node linkType: hard "dns-equal@npm:^1.0.0": version: 1.0.0 resolution: "dns-equal@npm:1.0.0" - checksum: da966e5275ac50546e108af6bc29aaae2164d2ae96d60601b333c4a3aff91f50b6ca14929cf91f20a9cad1587b356323e300cea3ff6588a6a816988485f445f1 + checksum: 10c0/da966e5275ac50546e108af6bc29aaae2164d2ae96d60601b333c4a3aff91f50b6ca14929cf91f20a9cad1587b356323e300cea3ff6588a6a816988485f445f1 languageName: node linkType: hard @@ -6698,7 +6717,7 @@ __metadata: dependencies: ip: "npm:^1.1.0" safe-buffer: "npm:^5.0.1" - checksum: ee06478da192f9014ab43c7e9118c77b9e353a8d5c06b0d2cba367b3501dd7453bcfed89354a8890cf740491379dcf4b28153d064d051e55c30cfbdf92b88608 + checksum: 10c0/ee06478da192f9014ab43c7e9118c77b9e353a8d5c06b0d2cba367b3501dd7453bcfed89354a8890cf740491379dcf4b28153d064d051e55c30cfbdf92b88608 languageName: node linkType: hard @@ -6707,7 +6726,7 @@ __metadata: resolution: "dns-txt@npm:2.0.2" dependencies: buffer-indexof: "npm:^1.0.0" - checksum: 71703e65156a2d626216157e6c4fddd844e7e790b6cd3cec830ef8eed80e7ea2697e5f4f2f3eb3aae809be3c91e370cad7a5d91b05ce6b6fcd5e191e7e3d31ca + checksum: 10c0/71703e65156a2d626216157e6c4fddd844e7e790b6cd3cec830ef8eed80e7ea2697e5f4f2f3eb3aae809be3c91e370cad7a5d91b05ce6b6fcd5e191e7e3d31ca languageName: node linkType: hard @@ -6716,7 +6735,7 @@ __metadata: resolution: "doctrine@npm:2.1.0" dependencies: esutils: "npm:^2.0.2" - checksum: b6416aaff1f380bf56c3b552f31fdf7a69b45689368deca72d28636f41c16bb28ec3ebc40ace97db4c1afc0ceeb8120e8492fe0046841c94c2933b2e30a7d5ac + checksum: 10c0/b6416aaff1f380bf56c3b552f31fdf7a69b45689368deca72d28636f41c16bb28ec3ebc40ace97db4c1afc0ceeb8120e8492fe0046841c94c2933b2e30a7d5ac languageName: node linkType: hard @@ -6725,21 +6744,21 @@ __metadata: resolution: "doctrine@npm:3.0.0" dependencies: esutils: "npm:^2.0.2" - checksum: c96bdccabe9d62ab6fea9399fdff04a66e6563c1d6fb3a3a063e8d53c3bb136ba63e84250bbf63d00086a769ad53aef92d2bd483f03f837fc97b71cbee6b2520 + checksum: 10c0/c96bdccabe9d62ab6fea9399fdff04a66e6563c1d6fb3a3a063e8d53c3bb136ba63e84250bbf63d00086a769ad53aef92d2bd483f03f837fc97b71cbee6b2520 languageName: node linkType: hard "dom-accessibility-api@npm:^0.5.9": version: 0.5.16 resolution: "dom-accessibility-api@npm:0.5.16" - checksum: b2c2eda4fae568977cdac27a9f0c001edf4f95a6a6191dfa611e3721db2478d1badc01db5bb4fa8a848aeee13e442a6c2a4386d65ec65a1436f24715a2f8d053 + checksum: 10c0/b2c2eda4fae568977cdac27a9f0c001edf4f95a6a6191dfa611e3721db2478d1badc01db5bb4fa8a848aeee13e442a6c2a4386d65ec65a1436f24715a2f8d053 languageName: node linkType: hard "dom-accessibility-api@npm:^0.6.3": version: 0.6.3 resolution: "dom-accessibility-api@npm:0.6.3" - checksum: 10bee5aa514b2a9a37c87cd81268db607a2e933a050074abc2f6fa3da9080ebed206a320cbc123567f2c3087d22292853bdfdceaffdd4334ffe2af9510b29360 + checksum: 10c0/10bee5aa514b2a9a37c87cd81268db607a2e933a050074abc2f6fa3da9080ebed206a320cbc123567f2c3087d22292853bdfdceaffdd4334ffe2af9510b29360 languageName: node linkType: hard @@ -6748,7 +6767,7 @@ __metadata: resolution: "dom-helpers@npm:3.4.0" dependencies: "@babel/runtime": "npm:^7.1.2" - checksum: 1d2d3e4eadac2c4f4c8c7470a737ab32b7ec28237c4d094ea967ec3184168fd12452196fcc424a5d7860b6176117301aeaecba39467bf1a6e8492a8e5c9639d1 + checksum: 10c0/1d2d3e4eadac2c4f4c8c7470a737ab32b7ec28237c4d094ea967ec3184168fd12452196fcc424a5d7860b6176117301aeaecba39467bf1a6e8492a8e5c9639d1 languageName: node linkType: hard @@ -6758,7 +6777,7 @@ __metadata: dependencies: "@babel/runtime": "npm:^7.8.7" csstype: "npm:^3.0.2" - checksum: f735074d66dd759b36b158fa26e9d00c9388ee0e8c9b16af941c38f014a37fc80782de83afefd621681b19ac0501034b4f1c4a3bff5caa1b8667f0212b5e124c + checksum: 10c0/f735074d66dd759b36b158fa26e9d00c9388ee0e8c9b16af941c38f014a37fc80782de83afefd621681b19ac0501034b4f1c4a3bff5caa1b8667f0212b5e124c languageName: node linkType: hard @@ -6768,7 +6787,7 @@ __metadata: dependencies: domelementtype: "npm:^2.0.1" entities: "npm:^2.0.0" - checksum: 5cb595fb77e1a23eca56742f47631e6f4af66ce1982c7ed28b3d0ef21f1f50304c067adc29d3eaf824c572be022cee88627d0ac9b929408f24e923f3c7bed37b + checksum: 10c0/5cb595fb77e1a23eca56742f47631e6f4af66ce1982c7ed28b3d0ef21f1f50304c067adc29d3eaf824c572be022cee88627d0ac9b929408f24e923f3c7bed37b languageName: node linkType: hard @@ -6779,28 +6798,28 @@ __metadata: domelementtype: "npm:^2.3.0" domhandler: "npm:^5.0.2" entities: "npm:^4.2.0" - checksum: d5ae2b7110ca3746b3643d3ef60ef823f5f078667baf530cec096433f1627ec4b6fa8c072f09d079d7cda915fd2c7bc1b7b935681e9b09e591e1e15f4040b8e2 + checksum: 10c0/d5ae2b7110ca3746b3643d3ef60ef823f5f078667baf530cec096433f1627ec4b6fa8c072f09d079d7cda915fd2c7bc1b7b935681e9b09e591e1e15f4040b8e2 languageName: node linkType: hard "domain-browser@npm:^1.1.1": version: 1.2.0 resolution: "domain-browser@npm:1.2.0" - checksum: a955f482f4b4710fbd77c12a33e77548d63603c30c80f61a80519f27e3db1ba8530b914584cc9e9365d2038753d6b5bd1f4e6c81e432b007b0ec95b8b5e69b1b + checksum: 10c0/a955f482f4b4710fbd77c12a33e77548d63603c30c80f61a80519f27e3db1ba8530b914584cc9e9365d2038753d6b5bd1f4e6c81e432b007b0ec95b8b5e69b1b languageName: node linkType: hard "domelementtype@npm:1": version: 1.3.1 resolution: "domelementtype@npm:1.3.1" - checksum: 6d4f5761060a21eaf3c96545501e9d188745c7e1c31b8d141bf15d8748feeadba868f4ea32877751b8678b286fb1afbe6ae905ca3fb8f0214d8322e482cdbec0 + checksum: 10c0/6d4f5761060a21eaf3c96545501e9d188745c7e1c31b8d141bf15d8748feeadba868f4ea32877751b8678b286fb1afbe6ae905ca3fb8f0214d8322e482cdbec0 languageName: node linkType: hard "domelementtype@npm:^2.0.1, domelementtype@npm:^2.3.0": version: 2.3.0 resolution: "domelementtype@npm:2.3.0" - checksum: 686f5a9ef0fff078c1412c05db73a0dce096190036f33e400a07e2a4518e9f56b1e324f5c576a0a747ef0e75b5d985c040b0d51945ce780c0dd3c625a18cd8c9 + checksum: 10c0/686f5a9ef0fff078c1412c05db73a0dce096190036f33e400a07e2a4518e9f56b1e324f5c576a0a747ef0e75b5d985c040b0d51945ce780c0dd3c625a18cd8c9 languageName: node linkType: hard @@ -6809,7 +6828,7 @@ __metadata: resolution: "domexception@npm:4.0.0" dependencies: webidl-conversions: "npm:^7.0.0" - checksum: 774277cd9d4df033f852196e3c0077a34dbd15a96baa4d166e0e47138a80f4c0bdf0d94e4703e6ff5883cec56bb821a6fff84402d8a498e31de7c87eb932a294 + checksum: 10c0/774277cd9d4df033f852196e3c0077a34dbd15a96baa4d166e0e47138a80f4c0bdf0d94e4703e6ff5883cec56bb821a6fff84402d8a498e31de7c87eb932a294 languageName: node linkType: hard @@ -6818,7 +6837,7 @@ __metadata: resolution: "domhandler@npm:5.0.3" dependencies: domelementtype: "npm:^2.3.0" - checksum: bba1e5932b3e196ad6862286d76adc89a0dbf0c773e5ced1eb01f9af930c50093a084eff14b8de5ea60b895c56a04d5de8bbc4930c5543d029091916770b2d2a + checksum: 10c0/bba1e5932b3e196ad6862286d76adc89a0dbf0c773e5ced1eb01f9af930c50093a084eff14b8de5ea60b895c56a04d5de8bbc4930c5543d029091916770b2d2a languageName: node linkType: hard @@ -6828,7 +6847,7 @@ __metadata: dependencies: dom-serializer: "npm:0" domelementtype: "npm:1" - checksum: 437fcd2d6d6be03f488152e73c6f953e289c58496baa22be9626b2b46f9cfd40486ae77d144487ff6b102929a3231cdb9a8bf8ef485fb7b7c30c985daedc77eb + checksum: 10c0/437fcd2d6d6be03f488152e73c6f953e289c58496baa22be9626b2b46f9cfd40486ae77d144487ff6b102929a3231cdb9a8bf8ef485fb7b7c30c985daedc77eb languageName: node linkType: hard @@ -6839,35 +6858,35 @@ __metadata: dom-serializer: "npm:^2.0.0" domelementtype: "npm:^2.3.0" domhandler: "npm:^5.0.3" - checksum: 342d64cf4d07b8a0573fb51e0a6312a88fb520c7fefd751870bf72fa5fc0f2e0cb9a3958a573610b1d608c6e2a69b8e9b4b40f0bfb8f87a71bce4f180cca1887 + checksum: 10c0/342d64cf4d07b8a0573fb51e0a6312a88fb520c7fefd751870bf72fa5fc0f2e0cb9a3958a573610b1d608c6e2a69b8e9b4b40f0bfb8f87a71bce4f180cca1887 languageName: node linkType: hard "dotenv@npm:^16.0.3": - version: 16.4.1 - resolution: "dotenv@npm:16.4.1" - checksum: ef3d95f48f38146df0881a4b58447ae437d2da3f6d645074b84de4e64ef64ba75fc357c5ed66b3c2b813b5369fdeb6a4777d6ade2d50e54eed6aa06dddc98bc4 + version: 16.4.5 + resolution: "dotenv@npm:16.4.5" + checksum: 10c0/48d92870076832af0418b13acd6e5a5a3e83bb00df690d9812e94b24aff62b88ade955ac99a05501305b8dc8f1b0ee7638b18493deb6fe93d680e5220936292f languageName: node linkType: hard "duplexer@npm:^0.1.2": version: 0.1.2 resolution: "duplexer@npm:0.1.2" - checksum: c57bcd4bdf7e623abab2df43a7b5b23d18152154529d166c1e0da6bee341d84c432d157d7e97b32fecb1bf3a8b8857dd85ed81a915789f550637ed25b8e64fc2 + checksum: 10c0/c57bcd4bdf7e623abab2df43a7b5b23d18152154529d166c1e0da6bee341d84c432d157d7e97b32fecb1bf3a8b8857dd85ed81a915789f550637ed25b8e64fc2 languageName: node linkType: hard "eastasianwidth@npm:^0.2.0": version: 0.2.0 resolution: "eastasianwidth@npm:0.2.0" - checksum: 26f364ebcdb6395f95124fda411f63137a4bfb5d3a06453f7f23dfe52502905bd84e0488172e0f9ec295fdc45f05c23d5d91baf16bd26f0fe9acd777a188dc39 + checksum: 10c0/26f364ebcdb6395f95124fda411f63137a4bfb5d3a06453f7f23dfe52502905bd84e0488172e0f9ec295fdc45f05c23d5d91baf16bd26f0fe9acd777a188dc39 languageName: node linkType: hard "ee-first@npm:1.1.1": version: 1.1.1 resolution: "ee-first@npm:1.1.1" - checksum: b5bb125ee93161bc16bfe6e56c6b04de5ad2aa44234d8f644813cc95d861a6910903132b05093706de2b706599367c4130eb6d170f6b46895686b95f87d017b7 + checksum: 10c0/b5bb125ee93161bc16bfe6e56c6b04de5ad2aa44234d8f644813cc95d861a6910903132b05093706de2b706599367c4130eb6d170f6b46895686b95f87d017b7 languageName: node linkType: hard @@ -6878,14 +6897,14 @@ __metadata: jake: "npm:^10.8.5" bin: ejs: bin/cli.js - checksum: f0e249c79128810f5f6d5cbf347fc906d86bb9384263db0b2a9004aea649f2bc2d112736de5716c509c80afb4721c47281bd5b57c757d3b63f1bf5ac5f885893 + checksum: 10c0/f0e249c79128810f5f6d5cbf347fc906d86bb9384263db0b2a9004aea649f2bc2d112736de5716c509c80afb4721c47281bd5b57c757d3b63f1bf5ac5f885893 languageName: node linkType: hard -"electron-to-chromium@npm:^1.4.601": - version: 1.4.609 - resolution: "electron-to-chromium@npm:1.4.609" - checksum: 9675a79388acbaff5953a4c61589af7da93e0d1f9d6a3b284c7630f10126eb0998557b07448514214d5a3d19025310039b55f405ab701b1253130fc94907f743 +"electron-to-chromium@npm:^1.4.668": + version: 1.4.681 + resolution: "electron-to-chromium@npm:1.4.681" + checksum: 10c0/5b2558dfb8bb82c20fb5fa1d9bbe06a3add47431dc3e1e4815e997be6ad387787047d9e534ed96839a9e7012520a5281c865158b09db41d10c029af003f05f94 languageName: node linkType: hard @@ -6900,14 +6919,14 @@ __metadata: inherits: "npm:^2.0.4" minimalistic-assert: "npm:^1.0.1" minimalistic-crypto-utils: "npm:^1.0.1" - checksum: 5f361270292c3b27cf0843e84526d11dec31652f03c2763c6c2b8178548175ff5eba95341dd62baff92b2265d1af076526915d8af6cc9cb7559c44a62f8ca6e2 + checksum: 10c0/5f361270292c3b27cf0843e84526d11dec31652f03c2763c6c2b8178548175ff5eba95341dd62baff92b2265d1af076526915d8af6cc9cb7559c44a62f8ca6e2 languageName: node linkType: hard "emittery@npm:^0.13.1": version: 0.13.1 resolution: "emittery@npm:0.13.1" - checksum: 1573d0ae29ab34661b6c63251ff8f5facd24ccf6a823f19417ae8ba8c88ea450325788c67f16c99edec8de4b52ce93a10fe441ece389fd156e88ee7dab9bfa35 + checksum: 10c0/1573d0ae29ab34661b6c63251ff8f5facd24ccf6a823f19417ae8ba8c88ea450325788c67f16c99edec8de4b52ce93a10fe441ece389fd156e88ee7dab9bfa35 languageName: node linkType: hard @@ -6920,49 +6939,49 @@ __metadata: prop-types: "npm:^15.6.0" peerDependencies: react: ^0.14.0 || ^15.0.0-0 || ^16.0.0 || ^17.0.0 - checksum: be673a03292d6a79db38fa0f5ad525a82a642ee5211b8ff32630dfce70988627bb9724695c60f11d635a5631a539beabbddd1185f0986f06890f4266e9cedee2 + checksum: 10c0/be673a03292d6a79db38fa0f5ad525a82a642ee5211b8ff32630dfce70988627bb9724695c60f11d635a5631a539beabbddd1185f0986f06890f4266e9cedee2 languageName: node linkType: hard "emoji-regex@npm:10.3.0, emoji-regex@npm:^10.2.1, emoji-regex@npm:^10.3.0": version: 10.3.0 resolution: "emoji-regex@npm:10.3.0" - checksum: b4838e8dcdceb44cf47f59abe352c25ff4fe7857acaf5fb51097c427f6f75b44d052eb907a7a3b86f86bc4eae3a93f5c2b7460abe79c407307e6212d65c91163 + checksum: 10c0/b4838e8dcdceb44cf47f59abe352c25ff4fe7857acaf5fb51097c427f6f75b44d052eb907a7a3b86f86bc4eae3a93f5c2b7460abe79c407307e6212d65c91163 languageName: node linkType: hard "emoji-regex@npm:^7.0.1": version: 7.0.3 resolution: "emoji-regex@npm:7.0.3" - checksum: a8917d695c3a3384e4b7230a6a06fd2de6b3db3709116792e8b7b36ddbb3db4deb28ad3e983e70d4f2a1f9063b5dab9025e4e26e9ca08278da4fbb73e213743f + checksum: 10c0/a8917d695c3a3384e4b7230a6a06fd2de6b3db3709116792e8b7b36ddbb3db4deb28ad3e983e70d4f2a1f9063b5dab9025e4e26e9ca08278da4fbb73e213743f languageName: node linkType: hard "emoji-regex@npm:^8.0.0": version: 8.0.0 resolution: "emoji-regex@npm:8.0.0" - checksum: b6053ad39951c4cf338f9092d7bfba448cdfd46fe6a2a034700b149ac9ffbc137e361cbd3c442297f86bed2e5f7576c1b54cc0a6bf8ef5106cc62f496af35010 + checksum: 10c0/b6053ad39951c4cf338f9092d7bfba448cdfd46fe6a2a034700b149ac9ffbc137e361cbd3c442297f86bed2e5f7576c1b54cc0a6bf8ef5106cc62f496af35010 languageName: node linkType: hard "emoji-regex@npm:^9.2.2": version: 9.2.2 resolution: "emoji-regex@npm:9.2.2" - checksum: af014e759a72064cf66e6e694a7fc6b0ed3d8db680427b021a89727689671cefe9d04151b2cad51dbaf85d5ba790d061cd167f1cf32eb7b281f6368b3c181639 + checksum: 10c0/af014e759a72064cf66e6e694a7fc6b0ed3d8db680427b021a89727689671cefe9d04151b2cad51dbaf85d5ba790d061cd167f1cf32eb7b281f6368b3c181639 languageName: node linkType: hard "emojis-list@npm:^3.0.0": version: 3.0.0 resolution: "emojis-list@npm:3.0.0" - checksum: 7dc4394b7b910444910ad64b812392159a21e1a7ecc637c775a440227dcb4f80eff7fe61f4453a7d7603fa23d23d30cc93fe9e4b5ed985b88d6441cd4a35117b + checksum: 10c0/7dc4394b7b910444910ad64b812392159a21e1a7ecc637c775a440227dcb4f80eff7fe61f4453a7d7603fa23d23d30cc93fe9e4b5ed985b88d6441cd4a35117b languageName: node linkType: hard "encodeurl@npm:~1.0.2": version: 1.0.2 resolution: "encodeurl@npm:1.0.2" - checksum: f6c2387379a9e7c1156c1c3d4f9cb7bb11cf16dd4c1682e1f6746512564b053df5781029b6061296832b59fb22f459dbe250386d217c2f6e203601abb2ee0bec + checksum: 10c0/f6c2387379a9e7c1156c1c3d4f9cb7bb11cf16dd4c1682e1f6746512564b053df5781029b6061296832b59fb22f459dbe250386d217c2f6e203601abb2ee0bec languageName: node linkType: hard @@ -6971,7 +6990,7 @@ __metadata: resolution: "encoding@npm:0.1.13" dependencies: iconv-lite: "npm:^0.6.2" - checksum: 36d938712ff00fe1f4bac88b43bcffb5930c1efa57bbcdca9d67e1d9d6c57cfb1200fb01efe0f3109b2ce99b231f90779532814a81370a1bd3274a0f58585039 + checksum: 10c0/36d938712ff00fe1f4bac88b43bcffb5930c1efa57bbcdca9d67e1d9d6c57cfb1200fb01efe0f3109b2ce99b231f90779532814a81370a1bd3274a0f58585039 languageName: node linkType: hard @@ -6980,7 +6999,7 @@ __metadata: resolution: "end-of-stream@npm:1.4.4" dependencies: once: "npm:^1.4.0" - checksum: 870b423afb2d54bb8d243c63e07c170409d41e20b47eeef0727547aea5740bd6717aca45597a9f2745525667a6b804c1e7bede41f856818faee5806dd9ff3975 + checksum: 10c0/870b423afb2d54bb8d243c63e07c170409d41e20b47eeef0727547aea5740bd6717aca45597a9f2745525667a6b804c1e7bede41f856818faee5806dd9ff3975 languageName: node linkType: hard @@ -6991,7 +7010,7 @@ __metadata: graceful-fs: "npm:^4.1.2" memory-fs: "npm:^0.5.0" tapable: "npm:^1.0.0" - checksum: d95fc630606ea35bed21c4a029bbb1681919571a2d1d2011c7fc42a26a9e48ed3d74a89949ce331e1fd3229850a303e3218b887b92951330f16bdfbb93a10e64 + checksum: 10c0/d95fc630606ea35bed21c4a029bbb1681919571a2d1d2011c7fc42a26a9e48ed3d74a89949ce331e1fd3229850a303e3218b887b92951330f16bdfbb93a10e64 languageName: node linkType: hard @@ -7001,35 +7020,35 @@ __metadata: dependencies: graceful-fs: "npm:^4.2.4" tapable: "npm:^2.2.0" - checksum: 69984a7990913948b4150855aed26a84afb4cb1c5a94fb8e3a65bd00729a73fc2eaff6871fb8e345377f294831afe349615c93560f2f54d61b43cdfdf668f19a + checksum: 10c0/69984a7990913948b4150855aed26a84afb4cb1c5a94fb8e3a65bd00729a73fc2eaff6871fb8e345377f294831afe349615c93560f2f54d61b43cdfdf668f19a languageName: node linkType: hard "entities@npm:^2.0.0": version: 2.2.0 resolution: "entities@npm:2.2.0" - checksum: 7fba6af1f116300d2ba1c5673fc218af1961b20908638391b4e1e6d5850314ee2ac3ec22d741b3a8060479911c99305164aed19b6254bde75e7e6b1b2c3f3aa3 + checksum: 10c0/7fba6af1f116300d2ba1c5673fc218af1961b20908638391b4e1e6d5850314ee2ac3ec22d741b3a8060479911c99305164aed19b6254bde75e7e6b1b2c3f3aa3 languageName: node linkType: hard "entities@npm:^4.2.0, entities@npm:^4.4.0": version: 4.5.0 resolution: "entities@npm:4.5.0" - checksum: 5b039739f7621f5d1ad996715e53d964035f75ad3b9a4d38c6b3804bb226e282ffeae2443624d8fdd9c47d8e926ae9ac009c54671243f0c3294c26af7cc85250 + checksum: 10c0/5b039739f7621f5d1ad996715e53d964035f75ad3b9a4d38c6b3804bb226e282ffeae2443624d8fdd9c47d8e926ae9ac009c54671243f0c3294c26af7cc85250 languageName: node linkType: hard "env-paths@npm:^2.2.0, env-paths@npm:^2.2.1": version: 2.2.1 resolution: "env-paths@npm:2.2.1" - checksum: 285325677bf00e30845e330eec32894f5105529db97496ee3f598478e50f008c5352a41a30e5e72ec9de8a542b5a570b85699cd63bd2bc646dbcb9f311d83bc4 + checksum: 10c0/285325677bf00e30845e330eec32894f5105529db97496ee3f598478e50f008c5352a41a30e5e72ec9de8a542b5a570b85699cd63bd2bc646dbcb9f311d83bc4 languageName: node linkType: hard "err-code@npm:^2.0.2": version: 2.0.3 resolution: "err-code@npm:2.0.3" - checksum: b642f7b4dd4a376e954947550a3065a9ece6733ab8e51ad80db727aaae0817c2e99b02a97a3d6cecc648a97848305e728289cf312d09af395403a90c9d4d8a66 + checksum: 10c0/b642f7b4dd4a376e954947550a3065a9ece6733ab8e51ad80db727aaae0817c2e99b02a97a3d6cecc648a97848305e728289cf312d09af395403a90c9d4d8a66 languageName: node linkType: hard @@ -7040,7 +7059,7 @@ __metadata: prr: "npm:~1.0.1" bin: errno: cli.js - checksum: 83758951967ec57bf00b5f5b7dc797e6d65a6171e57ea57adcf1bd1a0b477fd9b5b35fae5be1ff18f4090ed156bce1db749fe7e317aac19d485a5d150f6a4936 + checksum: 10c0/83758951967ec57bf00b5f5b7dc797e6d65a6171e57ea57adcf1bd1a0b477fd9b5b35fae5be1ff18f4090ed156bce1db749fe7e317aac19d485a5d150f6a4936 languageName: node linkType: hard @@ -7049,7 +7068,7 @@ __metadata: resolution: "error-ex@npm:1.3.2" dependencies: is-arrayish: "npm:^0.2.1" - checksum: ba827f89369b4c93382cfca5a264d059dfefdaa56ecc5e338ffa58a6471f5ed93b71a20add1d52290a4873d92381174382658c885ac1a2305f7baca363ce9cce + checksum: 10c0/ba827f89369b4c93382cfca5a264d059dfefdaa56ecc5e338ffa58a6471f5ed93b71a20add1d52290a4873d92381174382658c885ac1a2305f7baca363ce9cce languageName: node linkType: hard @@ -7058,61 +7077,79 @@ __metadata: resolution: "error-stack-parser@npm:2.1.4" dependencies: stackframe: "npm:^1.3.4" - checksum: 7679b780043c98b01fc546725484e0cfd3071bf5c906bbe358722972f04abf4fc3f0a77988017665bab367f6ef3fc2d0185f7528f45966b83e7c99c02d5509b9 + checksum: 10c0/7679b780043c98b01fc546725484e0cfd3071bf5c906bbe358722972f04abf4fc3f0a77988017665bab367f6ef3fc2d0185f7528f45966b83e7c99c02d5509b9 languageName: node linkType: hard -"es-abstract@npm:^1.17.2, es-abstract@npm:^1.20.4, es-abstract@npm:^1.21.2, es-abstract@npm:^1.22.1": - version: 1.22.3 - resolution: "es-abstract@npm:1.22.3" +"es-abstract@npm:^1.17.2, es-abstract@npm:^1.20.4, es-abstract@npm:^1.21.2, es-abstract@npm:^1.22.1, es-abstract@npm:^1.22.3, es-abstract@npm:^1.22.4": + version: 1.22.5 + resolution: "es-abstract@npm:1.22.5" dependencies: - array-buffer-byte-length: "npm:^1.0.0" - arraybuffer.prototype.slice: "npm:^1.0.2" - available-typed-arrays: "npm:^1.0.5" - call-bind: "npm:^1.0.5" - es-set-tostringtag: "npm:^2.0.1" + array-buffer-byte-length: "npm:^1.0.1" + arraybuffer.prototype.slice: "npm:^1.0.3" + available-typed-arrays: "npm:^1.0.7" + call-bind: "npm:^1.0.7" + es-define-property: "npm:^1.0.0" + es-errors: "npm:^1.3.0" + es-set-tostringtag: "npm:^2.0.3" es-to-primitive: "npm:^1.2.1" function.prototype.name: "npm:^1.1.6" - get-intrinsic: "npm:^1.2.2" - get-symbol-description: "npm:^1.0.0" + get-intrinsic: "npm:^1.2.4" + get-symbol-description: "npm:^1.0.2" globalthis: "npm:^1.0.3" gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.0" - has-proto: "npm:^1.0.1" + has-property-descriptors: "npm:^1.0.2" + has-proto: "npm:^1.0.3" has-symbols: "npm:^1.0.3" - hasown: "npm:^2.0.0" - internal-slot: "npm:^1.0.5" - is-array-buffer: "npm:^3.0.2" + hasown: "npm:^2.0.1" + internal-slot: "npm:^1.0.7" + is-array-buffer: "npm:^3.0.4" is-callable: "npm:^1.2.7" - is-negative-zero: "npm:^2.0.2" + is-negative-zero: "npm:^2.0.3" is-regex: "npm:^1.1.4" - is-shared-array-buffer: "npm:^1.0.2" + is-shared-array-buffer: "npm:^1.0.3" is-string: "npm:^1.0.7" - is-typed-array: "npm:^1.1.12" + is-typed-array: "npm:^1.1.13" is-weakref: "npm:^1.0.2" object-inspect: "npm:^1.13.1" object-keys: "npm:^1.1.1" - object.assign: "npm:^4.1.4" - regexp.prototype.flags: "npm:^1.5.1" - safe-array-concat: "npm:^1.0.1" - safe-regex-test: "npm:^1.0.0" + object.assign: "npm:^4.1.5" + regexp.prototype.flags: "npm:^1.5.2" + safe-array-concat: "npm:^1.1.0" + safe-regex-test: "npm:^1.0.3" string.prototype.trim: "npm:^1.2.8" string.prototype.trimend: "npm:^1.0.7" string.prototype.trimstart: "npm:^1.0.7" - typed-array-buffer: "npm:^1.0.0" - typed-array-byte-length: "npm:^1.0.0" - typed-array-byte-offset: "npm:^1.0.0" - typed-array-length: "npm:^1.0.4" + typed-array-buffer: "npm:^1.0.2" + typed-array-byte-length: "npm:^1.0.1" + typed-array-byte-offset: "npm:^1.0.2" + typed-array-length: "npm:^1.0.5" unbox-primitive: "npm:^1.0.2" - which-typed-array: "npm:^1.1.13" - checksum: da31ec43b1c8eb47ba8a17693cac143682a1078b6c3cd883ce0e2062f135f532e93d873694ef439670e1f6ca03195118f43567ba6f33fb0d6c7daae750090236 + which-typed-array: "npm:^1.1.14" + checksum: 10c0/4bca5a60f0dff6c0a5690d8e51374cfcb8760d5dbbb1069174b4d41461cf4e0c3e0c1993bccbc5aa0799ff078199f1bcde2122b8709e0d17c2beffafff01010a languageName: node linkType: hard "es-array-method-boxes-properly@npm:^1.0.0": version: 1.0.0 resolution: "es-array-method-boxes-properly@npm:1.0.0" - checksum: 4b7617d3fbd460d6f051f684ceca6cf7e88e6724671d9480388d3ecdd72119ddaa46ca31f2c69c5426a82e4b3091c1e81867c71dcdc453565cd90005ff2c382d + checksum: 10c0/4b7617d3fbd460d6f051f684ceca6cf7e88e6724671d9480388d3ecdd72119ddaa46ca31f2c69c5426a82e4b3091c1e81867c71dcdc453565cd90005ff2c382d + languageName: node + linkType: hard + +"es-define-property@npm:^1.0.0": + version: 1.0.0 + resolution: "es-define-property@npm:1.0.0" + dependencies: + get-intrinsic: "npm:^1.2.4" + checksum: 10c0/6bf3191feb7ea2ebda48b577f69bdfac7a2b3c9bcf97307f55fd6ef1bbca0b49f0c219a935aca506c993d8c5d8bddd937766cb760cd5e5a1071351f2df9f9aa4 + languageName: node + linkType: hard + +"es-errors@npm:^1.1.0, es-errors@npm:^1.2.1, es-errors@npm:^1.3.0": + version: 1.3.0 + resolution: "es-errors@npm:1.3.0" + checksum: 10c0/0a61325670072f98d8ae3b914edab3559b6caa980f08054a3b872052640d91da01d38df55df797fcc916389d77fc92b8d5906cf028f4db46d7e3003abecbca85 languageName: node linkType: hard @@ -7129,49 +7166,50 @@ __metadata: is-string: "npm:^1.0.7" isarray: "npm:^2.0.5" stop-iteration-iterator: "npm:^1.0.0" - checksum: ebd11effa79851ea75d7f079405f9d0dc185559fd65d986c6afea59a0ff2d46c2ed8675f19f03dce7429d7f6c14ff9aede8d121fbab78d75cfda6a263030bac0 + checksum: 10c0/ebd11effa79851ea75d7f079405f9d0dc185559fd65d986c6afea59a0ff2d46c2ed8675f19f03dce7429d7f6c14ff9aede8d121fbab78d75cfda6a263030bac0 languageName: node linkType: hard -"es-iterator-helpers@npm:^1.0.12, es-iterator-helpers@npm:^1.0.15": - version: 1.0.15 - resolution: "es-iterator-helpers@npm:1.0.15" +"es-iterator-helpers@npm:^1.0.15, es-iterator-helpers@npm:^1.0.17": + version: 1.0.17 + resolution: "es-iterator-helpers@npm:1.0.17" dependencies: asynciterator.prototype: "npm:^1.0.0" - call-bind: "npm:^1.0.2" + call-bind: "npm:^1.0.7" define-properties: "npm:^1.2.1" - es-abstract: "npm:^1.22.1" - es-set-tostringtag: "npm:^2.0.1" - function-bind: "npm:^1.1.1" - get-intrinsic: "npm:^1.2.1" + es-abstract: "npm:^1.22.4" + es-errors: "npm:^1.3.0" + es-set-tostringtag: "npm:^2.0.2" + function-bind: "npm:^1.1.2" + get-intrinsic: "npm:^1.2.4" globalthis: "npm:^1.0.3" - has-property-descriptors: "npm:^1.0.0" + has-property-descriptors: "npm:^1.0.2" has-proto: "npm:^1.0.1" has-symbols: "npm:^1.0.3" - internal-slot: "npm:^1.0.5" + internal-slot: "npm:^1.0.7" iterator.prototype: "npm:^1.1.2" - safe-array-concat: "npm:^1.0.1" - checksum: b4c83f94bfe624260d5238092de3173989f76f1416b1d02c388aea3b2024174e5f5f0e864057311ac99790b57e836ca3545b6e77256b26066dac944519f5e6d6 + safe-array-concat: "npm:^1.1.0" + checksum: 10c0/d0f281257e7165f068fd4fc3beb63d07ae4f18fbef02a2bbe4a39272b764164c1ce3311ae7c5429ac30003aef290fcdf569050e4a9ba3560e044440f68e9a47c languageName: node linkType: hard -"es-set-tostringtag@npm:^2.0.1": - version: 2.0.1 - resolution: "es-set-tostringtag@npm:2.0.1" +"es-set-tostringtag@npm:^2.0.2, es-set-tostringtag@npm:^2.0.3": + version: 2.0.3 + resolution: "es-set-tostringtag@npm:2.0.3" dependencies: - get-intrinsic: "npm:^1.1.3" - has: "npm:^1.0.3" - has-tostringtag: "npm:^1.0.0" - checksum: 9af096365e3861bb29755cc5f76f15f66a7eab0e83befca396129090c1d9737e54090278b8e5357e97b5f0a5b0459fca07c40c6740884c2659cbf90ef8e508cc + get-intrinsic: "npm:^1.2.4" + has-tostringtag: "npm:^1.0.2" + hasown: "npm:^2.0.1" + checksum: 10c0/f22aff1585eb33569c326323f0b0d175844a1f11618b86e193b386f8be0ea9474cfbe46df39c45d959f7aa8f6c06985dc51dd6bce5401645ec5a74c4ceaa836a languageName: node linkType: hard -"es-shim-unscopables@npm:^1.0.0": - version: 1.0.0 - resolution: "es-shim-unscopables@npm:1.0.0" +"es-shim-unscopables@npm:^1.0.0, es-shim-unscopables@npm:^1.0.2": + version: 1.0.2 + resolution: "es-shim-unscopables@npm:1.0.2" dependencies: - has: "npm:^1.0.3" - checksum: d54a66239fbd19535b3e50333913260394f14d2d7adb136a95396a13ca584bab400cf9cb2ffd9232f3fe2f0362540bd3a708240c493e46e13fe0b90cfcfedc3d + hasown: "npm:^2.0.0" + checksum: 10c0/f495af7b4b7601a4c0cfb893581c352636e5c08654d129590386a33a0432cf13a7bdc7b6493801cadd990d838e2839b9013d1de3b880440cb537825e834fe783 languageName: node linkType: hard @@ -7182,42 +7220,42 @@ __metadata: is-callable: "npm:^1.1.4" is-date-object: "npm:^1.0.1" is-symbol: "npm:^1.0.2" - checksum: 0886572b8dc075cb10e50c0af62a03d03a68e1e69c388bd4f10c0649ee41b1fbb24840a1b7e590b393011b5cdbe0144b776da316762653685432df37d6de60f1 + checksum: 10c0/0886572b8dc075cb10e50c0af62a03d03a68e1e69c388bd4f10c0649ee41b1fbb24840a1b7e590b393011b5cdbe0144b776da316762653685432df37d6de60f1 languageName: node linkType: hard "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" - checksum: afd02e6ca91ffa813e1108b5e7756566173d6bc0d1eb951cb44d6b21702ec17c1cf116cfe75d4a2b02e05acb0b808a7a9387d0d1ca5cf9c04ad03a8445c3e46d + checksum: 10c0/afd02e6ca91ffa813e1108b5e7756566173d6bc0d1eb951cb44d6b21702ec17c1cf116cfe75d4a2b02e05acb0b808a7a9387d0d1ca5cf9c04ad03a8445c3e46d languageName: node linkType: hard "escape-html@npm:^1.0.3, escape-html@npm:~1.0.3": version: 1.0.3 resolution: "escape-html@npm:1.0.3" - checksum: 524c739d776b36c3d29fa08a22e03e8824e3b2fd57500e5e44ecf3cc4707c34c60f9ca0781c0e33d191f2991161504c295e98f68c78fe7baa6e57081ec6ac0a3 + checksum: 10c0/524c739d776b36c3d29fa08a22e03e8824e3b2fd57500e5e44ecf3cc4707c34c60f9ca0781c0e33d191f2991161504c295e98f68c78fe7baa6e57081ec6ac0a3 languageName: node linkType: hard "escape-string-regexp@npm:^1.0.5": version: 1.0.5 resolution: "escape-string-regexp@npm:1.0.5" - checksum: a968ad453dd0c2724e14a4f20e177aaf32bb384ab41b674a8454afe9a41c5e6fe8903323e0a1052f56289d04bd600f81278edf140b0fcc02f5cac98d0f5b5371 + checksum: 10c0/a968ad453dd0c2724e14a4f20e177aaf32bb384ab41b674a8454afe9a41c5e6fe8903323e0a1052f56289d04bd600f81278edf140b0fcc02f5cac98d0f5b5371 languageName: node linkType: hard "escape-string-regexp@npm:^2.0.0": version: 2.0.0 resolution: "escape-string-regexp@npm:2.0.0" - checksum: 2530479fe8db57eace5e8646c9c2a9c80fa279614986d16dcc6bcaceb63ae77f05a851ba6c43756d816c61d7f4534baf56e3c705e3e0d884818a46808811c507 + checksum: 10c0/2530479fe8db57eace5e8646c9c2a9c80fa279614986d16dcc6bcaceb63ae77f05a851ba6c43756d816c61d7f4534baf56e3c705e3e0d884818a46808811c507 languageName: node linkType: hard "escape-string-regexp@npm:^4.0.0": version: 4.0.0 resolution: "escape-string-regexp@npm:4.0.0" - checksum: 9497d4dd307d845bd7f75180d8188bb17ea8c151c1edbf6b6717c100e104d629dc2dfb687686181b0f4b7d732c7dfdc4d5e7a8ff72de1b0ca283a75bbb3a9cd9 + checksum: 10c0/9497d4dd307d845bd7f75180d8188bb17ea8c151c1edbf6b6717c100e104d629dc2dfb687686181b0f4b7d732c7dfdc4d5e7a8ff72de1b0ca283a75bbb3a9cd9 languageName: node linkType: hard @@ -7235,25 +7273,14 @@ __metadata: bin: escodegen: bin/escodegen.js esgenerate: bin/esgenerate.js - checksum: e1450a1f75f67d35c061bf0d60888b15f62ab63aef9df1901cffc81cffbbb9e8b3de237c5502cf8613a017c1df3a3003881307c78835a1ab54d8c8d2206e01d3 - languageName: node - linkType: hard - -"eslint-config-prettier@npm:^9.0.0": - version: 9.1.0 - resolution: "eslint-config-prettier@npm:9.1.0" - peerDependencies: - eslint: ">=7.0.0" - bin: - eslint-config-prettier: bin/cli.js - checksum: 6d332694b36bc9ac6fdb18d3ca2f6ac42afa2ad61f0493e89226950a7091e38981b66bac2b47ba39d15b73fff2cd32c78b850a9cf9eed9ca9a96bfb2f3a2f10d + checksum: 10c0/e1450a1f75f67d35c061bf0d60888b15f62ab63aef9df1901cffc81cffbbb9e8b3de237c5502cf8613a017c1df3a3003881307c78835a1ab54d8c8d2206e01d3 languageName: node linkType: hard "eslint-define-config@npm:^2.0.0": version: 2.1.0 resolution: "eslint-define-config@npm:2.1.0" - checksum: 034bd6bfbfec2db6c720a51815de6b072efeef7afbf99d90c23a1871f9cd741bb77f9d34e0bc2465262298c6110c5c45b704714d8575c6567fd2df963fb792ea + checksum: 10c0/034bd6bfbfec2db6c720a51815de6b072efeef7afbf99d90c23a1871f9cd741bb77f9d34e0bc2465262298c6110c5c45b704714d8575c6567fd2df963fb792ea languageName: node linkType: hard @@ -7264,7 +7291,7 @@ __metadata: debug: "npm:^3.2.7" is-core-module: "npm:^2.13.0" resolve: "npm:^1.22.4" - checksum: 0ea8a24a72328a51fd95aa8f660dcca74c1429806737cf10261ab90cfcaaf62fd1eff664b76a44270868e0a932711a81b250053942595bcd00a93b1c1575dd61 + checksum: 10c0/0ea8a24a72328a51fd95aa8f660dcca74c1429806737cf10261ab90cfcaaf62fd1eff664b76a44270868e0a932711a81b250053942595bcd00a93b1c1575dd61 languageName: node linkType: hard @@ -7282,7 +7309,7 @@ __metadata: peerDependencies: eslint: "*" eslint-plugin-import: "*" - checksum: cb1cb4389916fe78bf8c8567aae2f69243dbfe624bfe21078c56ad46fa1ebf0634fa7239dd3b2055ab5c27359e4b4c28b69b11fcb3a5df8a9e6f7add8e034d86 + checksum: 10c0/cb1cb4389916fe78bf8c8567aae2f69243dbfe624bfe21078c56ad46fa1ebf0634fa7239dd3b2055ab5c27359e4b4c28b69b11fcb3a5df8a9e6f7add8e034d86 languageName: node linkType: hard @@ -7294,7 +7321,7 @@ __metadata: peerDependenciesMeta: eslint: optional: true - checksum: c7a8d1a58d76ec8217a8fea49271ec8132d1b9390965a75f6a4ecbc9e5983d742195b46d2e4378231d2186801439fe1aa5700714b0bfd4eb17aac6e1b65309df + checksum: 10c0/c7a8d1a58d76ec8217a8fea49271ec8132d1b9390965a75f6a4ecbc9e5983d742195b46d2e4378231d2186801439fe1aa5700714b0bfd4eb17aac6e1b65309df languageName: node linkType: hard @@ -7315,7 +7342,7 @@ __metadata: unicode-emoji-utils: "npm:^1.2.0" peerDependencies: eslint: 7 || 8 - checksum: 77cc1a2959903fcb6639d9fec89e7dfc55cf1e4ea58fca7d3bd6d12fa540aa173cbf5f90fc629b6aaf2ea3b8e61ed0a3cfce940fd2bec6f0796353315e2dbeef + checksum: 10c0/77cc1a2959903fcb6639d9fec89e7dfc55cf1e4ea58fca7d3bd6d12fa540aa173cbf5f90fc629b6aaf2ea3b8e61ed0a3cfce940fd2bec6f0796353315e2dbeef languageName: node linkType: hard @@ -7342,26 +7369,26 @@ __metadata: tsconfig-paths: "npm:^3.15.0" peerDependencies: eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - checksum: 5f35dfbf4e8e67f741f396987de9504ad125c49f4144508a93282b4ea0127e052bde65ab6def1f31b6ace6d5d430be698333f75bdd7dca3bc14226c92a083196 + checksum: 10c0/5f35dfbf4e8e67f741f396987de9504ad125c49f4144508a93282b4ea0127e052bde65ab6def1f31b6ace6d5d430be698333f75bdd7dca3bc14226c92a083196 languageName: node linkType: hard "eslint-plugin-jsdoc@npm:^48.0.0": - version: 48.0.4 - resolution: "eslint-plugin-jsdoc@npm:48.0.4" + version: 48.2.0 + resolution: "eslint-plugin-jsdoc@npm:48.2.0" dependencies: - "@es-joy/jsdoccomment": "npm:~0.41.0" + "@es-joy/jsdoccomment": "npm:~0.42.0" are-docs-informative: "npm:^0.0.2" comment-parser: "npm:1.4.1" debug: "npm:^4.3.4" escape-string-regexp: "npm:^4.0.0" esquery: "npm:^1.5.0" is-builtin-module: "npm:^3.2.1" - semver: "npm:^7.5.4" + semver: "npm:^7.6.0" spdx-expression-parse: "npm:^4.0.0" peerDependencies: eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 - checksum: c73063d26ca70d37ea00eea9750d1f889e5bfda64ca46dbfc6bf4842b892551c320368220cb46acc9d3d96a89fd5391486650284b82dc722f700e3b5df5c78db + checksum: 10c0/778f979ca40594269d531767ab29fb2a6c448425f8f732708ac5d3b9c61bbeb8504f1490a1057c7740f3e8f8a75d57ff50c766bc40fb1474f195e6f1aed30814 languageName: node linkType: hard @@ -7387,27 +7414,7 @@ __metadata: object.fromentries: "npm:^2.0.7" peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - checksum: 199b883e526e6f9d7c54cb3f094abc54f11a1ec816db5fb6cae3b938eb0e503acc10ccba91ca7451633a9d0b9abc0ea03601844a8aba5fe88c5e8897c9ac8f49 - languageName: node - linkType: hard - -"eslint-plugin-prettier@npm:^5.0.0": - version: 5.1.3 - resolution: "eslint-plugin-prettier@npm:5.1.3" - dependencies: - prettier-linter-helpers: "npm:^1.0.0" - synckit: "npm:^0.8.6" - peerDependencies: - "@types/eslint": ">=8.0.0" - eslint: ">=8.0.0" - eslint-config-prettier: "*" - prettier: ">=3.0.0" - peerDependenciesMeta: - "@types/eslint": - optional: true - eslint-config-prettier: - optional: true - checksum: f45d5fc1fcfec6b0cf038a7a65ddd10a25df4fe3f9e1f6b7f0d5100e66f046a26a2492e69ee765dddf461b93c114cf2e1eb18d4970aafa6f385448985c136e09 + checksum: 10c0/199b883e526e6f9d7c54cb3f094abc54f11a1ec816db5fb6cae3b938eb0e503acc10ccba91ca7451633a9d0b9abc0ea03601844a8aba5fe88c5e8897c9ac8f49 languageName: node linkType: hard @@ -7416,7 +7423,7 @@ __metadata: resolution: "eslint-plugin-promise@npm:6.1.1" peerDependencies: eslint: ^7.0.0 || ^8.0.0 - checksum: ec705741c110cd1cb4d702776e1c7f7fe60b671b71f706c88054ab443cf2767aae5a663928fb426373ba1095eaeda312a740a4f880546631f0e0727f298b3393 + checksum: 10c0/ec705741c110cd1cb4d702776e1c7f7fe60b671b71f706c88054ab443cf2767aae5a663928fb426373ba1095eaeda312a740a4f880546631f0e0727f298b3393 languageName: node linkType: hard @@ -7425,33 +7432,35 @@ __metadata: resolution: "eslint-plugin-react-hooks@npm:4.6.0" peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - checksum: 58c7e10ea5792c33346fcf5cb4024e14837035ce412ff99c2dcb7c4f903dc9b17939078f80bfef826301ce326582c396c00e8e0ac9d10ac2cde2b42d33763c65 + checksum: 10c0/58c7e10ea5792c33346fcf5cb4024e14837035ce412ff99c2dcb7c4f903dc9b17939078f80bfef826301ce326582c396c00e8e0ac9d10ac2cde2b42d33763c65 languageName: node linkType: hard "eslint-plugin-react@npm:^7.33.2": - version: 7.33.2 - resolution: "eslint-plugin-react@npm:7.33.2" + version: 7.34.0 + resolution: "eslint-plugin-react@npm:7.34.0" dependencies: - array-includes: "npm:^3.1.6" - array.prototype.flatmap: "npm:^1.3.1" - array.prototype.tosorted: "npm:^1.1.1" + array-includes: "npm:^3.1.7" + array.prototype.findlast: "npm:^1.2.4" + array.prototype.flatmap: "npm:^1.3.2" + array.prototype.toreversed: "npm:^1.1.2" + array.prototype.tosorted: "npm:^1.1.3" doctrine: "npm:^2.1.0" - es-iterator-helpers: "npm:^1.0.12" + es-iterator-helpers: "npm:^1.0.17" estraverse: "npm:^5.3.0" jsx-ast-utils: "npm:^2.4.1 || ^3.0.0" minimatch: "npm:^3.1.2" - object.entries: "npm:^1.1.6" - object.fromentries: "npm:^2.0.6" - object.hasown: "npm:^1.1.2" - object.values: "npm:^1.1.6" + object.entries: "npm:^1.1.7" + object.fromentries: "npm:^2.0.7" + object.hasown: "npm:^1.1.3" + object.values: "npm:^1.1.7" prop-types: "npm:^15.8.1" - resolve: "npm:^2.0.0-next.4" + resolve: "npm:^2.0.0-next.5" semver: "npm:^6.3.1" - string.prototype.matchall: "npm:^4.0.8" + string.prototype.matchall: "npm:^4.0.10" peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - checksum: f9b247861024bafc396c4bd3c9ac946604b3b23077251c98f23602aa22027a0c33a69157fd49564e4ff7f17b3678e5dc366a46c7ec42a09454d7cbce786d5001 + checksum: 10c0/9bf0b959373ace66e799adbbfb493a7ceae54751e8f90fcce1da1a2a67b277ee23ba845571eaa4d4f05d96dba4e4977bf938b350f18bad26201fa616ee6aa4b8 languageName: node linkType: hard @@ -7461,7 +7470,7 @@ __metadata: dependencies: esrecurse: "npm:^4.1.0" estraverse: "npm:^4.1.1" - checksum: a2a3fe5845938ce7cfd2e658c309a9bb27a7f9ce94f0cc447ed5f9fa95b16451556d7e1db4c8e5d2aaa02d02850f5346d23091bbe94f7097412ce846504b4dcc + checksum: 10c0/a2a3fe5845938ce7cfd2e658c309a9bb27a7f9ce94f0cc447ed5f9fa95b16451556d7e1db4c8e5d2aaa02d02850f5346d23091bbe94f7097412ce846504b4dcc languageName: node linkType: hard @@ -7471,26 +7480,26 @@ __metadata: dependencies: esrecurse: "npm:^4.3.0" estraverse: "npm:^5.2.0" - checksum: 613c267aea34b5a6d6c00514e8545ef1f1433108097e857225fed40d397dd6b1809dffd11c2fde23b37ca53d7bf935fe04d2a18e6fc932b31837b6ad67e1c116 + checksum: 10c0/613c267aea34b5a6d6c00514e8545ef1f1433108097e857225fed40d397dd6b1809dffd11c2fde23b37ca53d7bf935fe04d2a18e6fc932b31837b6ad67e1c116 languageName: node linkType: hard "eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": version: 3.4.3 resolution: "eslint-visitor-keys@npm:3.4.3" - checksum: 92708e882c0a5ffd88c23c0b404ac1628cf20104a108c745f240a13c332a11aac54f49a22d5762efbffc18ecbc9a580d1b7ad034bf5f3cc3307e5cbff2ec9820 + checksum: 10c0/92708e882c0a5ffd88c23c0b404ac1628cf20104a108c745f240a13c332a11aac54f49a22d5762efbffc18ecbc9a580d1b7ad034bf5f3cc3307e5cbff2ec9820 languageName: node linkType: hard "eslint@npm:^8.41.0": - version: 8.56.0 - resolution: "eslint@npm:8.56.0" + version: 8.57.0 + resolution: "eslint@npm:8.57.0" dependencies: "@eslint-community/eslint-utils": "npm:^4.2.0" "@eslint-community/regexpp": "npm:^4.6.1" "@eslint/eslintrc": "npm:^2.1.4" - "@eslint/js": "npm:8.56.0" - "@humanwhocodes/config-array": "npm:^0.11.13" + "@eslint/js": "npm:8.57.0" + "@humanwhocodes/config-array": "npm:^0.11.14" "@humanwhocodes/module-importer": "npm:^1.0.1" "@nodelib/fs.walk": "npm:^1.2.8" "@ungap/structured-clone": "npm:^1.2.0" @@ -7526,7 +7535,7 @@ __metadata: text-table: "npm:^0.2.0" bin: eslint: bin/eslint.js - checksum: 2be598f7da1339d045ad933ffd3d4742bee610515cd2b0d9a2b8b729395a01d4e913552fff555b559fccaefd89d7b37632825789d1b06470608737ae69ab43fb + checksum: 10c0/00bb96fd2471039a312435a6776fe1fd557c056755eaa2b96093ef3a8508c92c8775d5f754768be6b1dddd09fdd3379ddb231eeb9b6c579ee17ea7d68000a529 languageName: node linkType: hard @@ -7537,7 +7546,7 @@ __metadata: acorn: "npm:^8.9.0" acorn-jsx: "npm:^5.3.2" eslint-visitor-keys: "npm:^3.4.1" - checksum: 1a2e9b4699b715347f62330bcc76aee224390c28bb02b31a3752e9d07549c473f5f986720483c6469cf3cfb3c9d05df612ffc69eb1ee94b54b739e67de9bb460 + checksum: 10c0/1a2e9b4699b715347f62330bcc76aee224390c28bb02b31a3752e9d07549c473f5f986720483c6469cf3cfb3c9d05df612ffc69eb1ee94b54b739e67de9bb460 languageName: node linkType: hard @@ -7547,7 +7556,7 @@ __metadata: bin: esparse: ./bin/esparse.js esvalidate: ./bin/esvalidate.js - checksum: ad4bab9ead0808cf56501750fd9d3fb276f6b105f987707d059005d57e182d18a7c9ec7f3a01794ebddcca676773e42ca48a32d67a250c9d35e009ca613caba3 + checksum: 10c0/ad4bab9ead0808cf56501750fd9d3fb276f6b105f987707d059005d57e182d18a7c9ec7f3a01794ebddcca676773e42ca48a32d67a250c9d35e009ca613caba3 languageName: node linkType: hard @@ -7556,7 +7565,7 @@ __metadata: resolution: "esquery@npm:1.5.0" dependencies: estraverse: "npm:^5.1.0" - checksum: a084bd049d954cc88ac69df30534043fb2aee5555b56246493f42f27d1e168f00d9e5d4192e46f10290d312dc30dc7d58994d61a609c579c1219d636996f9213 + checksum: 10c0/a084bd049d954cc88ac69df30534043fb2aee5555b56246493f42f27d1e168f00d9e5d4192e46f10290d312dc30dc7d58994d61a609c579c1219d636996f9213 languageName: node linkType: hard @@ -7565,77 +7574,77 @@ __metadata: resolution: "esrecurse@npm:4.3.0" dependencies: estraverse: "npm:^5.2.0" - checksum: 81a37116d1408ded88ada45b9fb16dbd26fba3aadc369ce50fcaf82a0bac12772ebd7b24cd7b91fc66786bf2c1ac7b5f196bc990a473efff972f5cb338877cf5 + checksum: 10c0/81a37116d1408ded88ada45b9fb16dbd26fba3aadc369ce50fcaf82a0bac12772ebd7b24cd7b91fc66786bf2c1ac7b5f196bc990a473efff972f5cb338877cf5 languageName: node linkType: hard "estraverse@npm:^4.1.1": version: 4.3.0 resolution: "estraverse@npm:4.3.0" - checksum: 9cb46463ef8a8a4905d3708a652d60122a0c20bb58dec7e0e12ab0e7235123d74214fc0141d743c381813e1b992767e2708194f6f6e0f9fd00c1b4e0887b8b6d + checksum: 10c0/9cb46463ef8a8a4905d3708a652d60122a0c20bb58dec7e0e12ab0e7235123d74214fc0141d743c381813e1b992767e2708194f6f6e0f9fd00c1b4e0887b8b6d languageName: node linkType: hard "estraverse@npm:^5.1.0, estraverse@npm:^5.2.0, estraverse@npm:^5.3.0": version: 5.3.0 resolution: "estraverse@npm:5.3.0" - checksum: 1ff9447b96263dec95d6d67431c5e0771eb9776427421260a3e2f0fdd5d6bd4f8e37a7338f5ad2880c9f143450c9b1e4fc2069060724570a49cf9cf0312bd107 + checksum: 10c0/1ff9447b96263dec95d6d67431c5e0771eb9776427421260a3e2f0fdd5d6bd4f8e37a7338f5ad2880c9f143450c9b1e4fc2069060724570a49cf9cf0312bd107 languageName: node linkType: hard "estree-walker@npm:^1.0.1": version: 1.0.1 resolution: "estree-walker@npm:1.0.1" - checksum: fa9e5f8c1bbe8d01e314c0f03067b64a4f22d4c58410fc5237060d0c15b81e58c23921c41acc60abbdab490f1fdfcbd6408ede2d03ca704454272e0244d61a55 + checksum: 10c0/fa9e5f8c1bbe8d01e314c0f03067b64a4f22d4c58410fc5237060d0c15b81e58c23921c41acc60abbdab490f1fdfcbd6408ede2d03ca704454272e0244d61a55 languageName: node linkType: hard "esutils@npm:^2.0.2": version: 2.0.3 resolution: "esutils@npm:2.0.3" - checksum: 9a2fe69a41bfdade834ba7c42de4723c97ec776e40656919c62cbd13607c45e127a003f05f724a1ea55e5029a4cf2de444b13009f2af71271e42d93a637137c7 + checksum: 10c0/9a2fe69a41bfdade834ba7c42de4723c97ec776e40656919c62cbd13607c45e127a003f05f724a1ea55e5029a4cf2de444b13009f2af71271e42d93a637137c7 languageName: node linkType: hard "etag@npm:~1.8.1": version: 1.8.1 resolution: "etag@npm:1.8.1" - checksum: 12be11ef62fb9817314d790089a0a49fae4e1b50594135dcb8076312b7d7e470884b5100d249b28c18581b7fd52f8b485689ffae22a11ed9ec17377a33a08f84 + checksum: 10c0/12be11ef62fb9817314d790089a0a49fae4e1b50594135dcb8076312b7d7e470884b5100d249b28c18581b7fd52f8b485689ffae22a11ed9ec17377a33a08f84 languageName: node linkType: hard "event-target-shim@npm:^5.0.0": version: 5.0.1 resolution: "event-target-shim@npm:5.0.1" - checksum: 0255d9f936215fd206156fd4caa9e8d35e62075d720dc7d847e89b417e5e62cf1ce6c9b4e0a1633a9256de0efefaf9f8d26924b1f3c8620cffb9db78e7d3076b + checksum: 10c0/0255d9f936215fd206156fd4caa9e8d35e62075d720dc7d847e89b417e5e62cf1ce6c9b4e0a1633a9256de0efefaf9f8d26924b1f3c8620cffb9db78e7d3076b languageName: node linkType: hard "eventemitter3@npm:^4.0.0": version: 4.0.7 resolution: "eventemitter3@npm:4.0.7" - checksum: 5f6d97cbcbac47be798e6355e3a7639a84ee1f7d9b199a07017f1d2f1e2fe236004d14fa5dfaeba661f94ea57805385e326236a6debbc7145c8877fbc0297c6b + checksum: 10c0/5f6d97cbcbac47be798e6355e3a7639a84ee1f7d9b199a07017f1d2f1e2fe236004d14fa5dfaeba661f94ea57805385e326236a6debbc7145c8877fbc0297c6b languageName: node linkType: hard "eventemitter3@npm:^5.0.1": version: 5.0.1 resolution: "eventemitter3@npm:5.0.1" - checksum: 4ba5c00c506e6c786b4d6262cfbce90ddc14c10d4667e5c83ae993c9de88aa856033994dd2b35b83e8dc1170e224e66a319fa80adc4c32adcd2379bbc75da814 + checksum: 10c0/4ba5c00c506e6c786b4d6262cfbce90ddc14c10d4667e5c83ae993c9de88aa856033994dd2b35b83e8dc1170e224e66a319fa80adc4c32adcd2379bbc75da814 languageName: node linkType: hard "events@npm:^3.0.0, events@npm:^3.3.0": version: 3.3.0 resolution: "events@npm:3.3.0" - checksum: d6b6f2adbccbcda74ddbab52ed07db727ef52e31a61ed26db9feb7dc62af7fc8e060defa65e5f8af9449b86b52cc1a1f6a79f2eafcf4e62add2b7a1fa4a432f6 + checksum: 10c0/d6b6f2adbccbcda74ddbab52ed07db727ef52e31a61ed26db9feb7dc62af7fc8e060defa65e5f8af9449b86b52cc1a1f6a79f2eafcf4e62add2b7a1fa4a432f6 languageName: node linkType: hard "eventsource@npm:^2.0.2": version: 2.0.2 resolution: "eventsource@npm:2.0.2" - checksum: 0b8c70b35e45dd20f22ff64b001be9d530e33b92ca8bdbac9e004d0be00d957ab02ef33c917315f59bf2f20b178c56af85c52029bc8e6cc2d61c31d87d943573 + checksum: 10c0/0b8c70b35e45dd20f22ff64b001be9d530e33b92ca8bdbac9e004d0be00d957ab02ef33c917315f59bf2f20b178c56af85c52029bc8e6cc2d61c31d87d943573 languageName: node linkType: hard @@ -7646,7 +7655,7 @@ __metadata: md5.js: "npm:^1.3.4" node-gyp: "npm:latest" safe-buffer: "npm:^5.1.1" - checksum: 77fbe2d94a902a80e9b8f5a73dcd695d9c14899c5e82967a61b1fc6cbbb28c46552d9b127cff47c45fcf684748bdbcfa0a50410349109de87ceb4b199ef6ee99 + checksum: 10c0/77fbe2d94a902a80e9b8f5a73dcd695d9c14899c5e82967a61b1fc6cbbb28c46552d9b127cff47c45fcf684748bdbcfa0a50410349109de87ceb4b199ef6ee99 languageName: node linkType: hard @@ -7663,7 +7672,7 @@ __metadata: onetime: "npm:^6.0.0" signal-exit: "npm:^4.1.0" strip-final-newline: "npm:^3.0.0" - checksum: 2c52d8775f5bf103ce8eec9c7ab3059909ba350a5164744e9947ed14a53f51687c040a250bda833f906d1283aa8803975b84e6c8f7a7c42f99dc8ef80250d1af + checksum: 10c0/2c52d8775f5bf103ce8eec9c7ab3059909ba350a5164744e9947ed14a53f51687c040a250bda833f906d1283aa8803975b84e6c8f7a7c42f99dc8ef80250d1af languageName: node linkType: hard @@ -7678,7 +7687,7 @@ __metadata: p-finally: "npm:^1.0.0" signal-exit: "npm:^3.0.0" strip-eof: "npm:^1.0.0" - checksum: cc71707c9aa4a2552346893ee63198bf70a04b5a1bc4f8a0ef40f1d03c319eae80932c59191f037990d7d102193e83a38ec72115fff814ec2fb3099f3661a590 + checksum: 10c0/cc71707c9aa4a2552346893ee63198bf70a04b5a1bc4f8a0ef40f1d03c319eae80932c59191f037990d7d102193e83a38ec72115fff814ec2fb3099f3661a590 languageName: node linkType: hard @@ -7695,31 +7704,14 @@ __metadata: onetime: "npm:^5.1.2" signal-exit: "npm:^3.0.3" strip-final-newline: "npm:^2.0.0" - checksum: c8e615235e8de4c5addf2fa4c3da3e3aa59ce975a3e83533b4f6a71750fb816a2e79610dc5f1799b6e28976c9ae86747a36a606655bf8cb414a74d8d507b304f - languageName: node - linkType: hard - -"execa@npm:^7.1.1": - version: 7.2.0 - resolution: "execa@npm:7.2.0" - dependencies: - cross-spawn: "npm:^7.0.3" - get-stream: "npm:^6.0.1" - human-signals: "npm:^4.3.0" - is-stream: "npm:^3.0.0" - merge-stream: "npm:^2.0.0" - npm-run-path: "npm:^5.1.0" - onetime: "npm:^6.0.0" - signal-exit: "npm:^3.0.7" - strip-final-newline: "npm:^3.0.0" - checksum: 098cd6a1bc26d509e5402c43f4971736450b84d058391820c6f237aeec6436963e006fd8423c9722f148c53da86aa50045929c7278b5522197dff802d10f9885 + checksum: 10c0/c8e615235e8de4c5addf2fa4c3da3e3aa59ce975a3e83533b4f6a71750fb816a2e79610dc5f1799b6e28976c9ae86747a36a606655bf8cb414a74d8d507b304f languageName: node linkType: hard "exit@npm:^0.1.2": version: 0.1.2 resolution: "exit@npm:0.1.2" - checksum: 71d2ad9b36bc25bb8b104b17e830b40a08989be7f7d100b13269aaae7c3784c3e6e1e88a797e9e87523993a25ba27c8958959a554535370672cfb4d824af8989 + checksum: 10c0/71d2ad9b36bc25bb8b104b17e830b40a08989be7f7d100b13269aaae7c3784c3e6e1e88a797e9e87523993a25ba27c8958959a554535370672cfb4d824af8989 languageName: node linkType: hard @@ -7734,7 +7726,7 @@ __metadata: regex-not: "npm:^1.0.0" snapdragon: "npm:^0.8.1" to-regex: "npm:^3.0.1" - checksum: 3e2fb95d2d7d7231486493fd65db913927b656b6fcdfcce41e139c0991a72204af619ad4acb1be75ed994ca49edb7995ef241dbf8cf44dc3c03d211328428a87 + checksum: 10c0/3e2fb95d2d7d7231486493fd65db913927b656b6fcdfcce41e139c0991a72204af619ad4acb1be75ed994ca49edb7995ef241dbf8cf44dc3c03d211328428a87 languageName: node linkType: hard @@ -7743,7 +7735,7 @@ __metadata: resolution: "expand-tilde@npm:2.0.2" dependencies: homedir-polyfill: "npm:^1.0.1" - checksum: 205a60497422746d1c3acbc1d65bd609b945066f239a2b785e69a7a651ac4cbeb4e08555b1ea0023abbe855e6fcb5bbf27d0b371367fdccd303d4fb2b4d66845 + checksum: 10c0/205a60497422746d1c3acbc1d65bd609b945066f239a2b785e69a7a651ac4cbeb4e08555b1ea0023abbe855e6fcb5bbf27d0b371367fdccd303d4fb2b4d66845 languageName: node linkType: hard @@ -7756,24 +7748,24 @@ __metadata: jest-matcher-utils: "npm:^29.7.0" jest-message-util: "npm:^29.7.0" jest-util: "npm:^29.7.0" - checksum: 2eddeace66e68b8d8ee5f7be57f3014b19770caaf6815c7a08d131821da527fb8c8cb7b3dcd7c883d2d3d8d184206a4268984618032d1e4b16dc8d6596475d41 + checksum: 10c0/2eddeace66e68b8d8ee5f7be57f3014b19770caaf6815c7a08d131821da527fb8c8cb7b3dcd7c883d2d3d8d184206a4268984618032d1e4b16dc8d6596475d41 languageName: node linkType: hard "exponential-backoff@npm:^3.1.1": version: 3.1.1 resolution: "exponential-backoff@npm:3.1.1" - checksum: 160456d2d647e6019640bd07111634d8c353038d9fa40176afb7cd49b0548bdae83b56d05e907c2cce2300b81cae35d800ef92fefb9d0208e190fa3b7d6bb579 + checksum: 10c0/160456d2d647e6019640bd07111634d8c353038d9fa40176afb7cd49b0548bdae83b56d05e907c2cce2300b81cae35d800ef92fefb9d0208e190fa3b7d6bb579 languageName: node linkType: hard "express@npm:^4.17.1, express@npm:^4.18.2": - version: 4.18.2 - resolution: "express@npm:4.18.2" + version: 4.18.3 + resolution: "express@npm:4.18.3" dependencies: accepts: "npm:~1.3.8" array-flatten: "npm:1.1.1" - body-parser: "npm:1.20.1" + body-parser: "npm:1.20.2" content-disposition: "npm:0.5.4" content-type: "npm:~1.0.4" cookie: "npm:0.5.0" @@ -7802,7 +7794,7 @@ __metadata: type-is: "npm:~1.6.18" utils-merge: "npm:1.0.1" vary: "npm:~1.1.2" - checksum: 75af556306b9241bc1d7bdd40c9744b516c38ce50ae3210658efcbf96e3aed4ab83b3432f06215eae5610c123bc4136957dc06e50dfc50b7d4d775af56c4c59c + checksum: 10c0/0b9eeafbac549e3c67d92d083bf1773e358359f41ad142b92121935c6348d29079b75054555b3f62de39263fffc8ba06898b09fdd3e213e28e714c03c5d9f44c languageName: node linkType: hard @@ -7811,7 +7803,7 @@ __metadata: resolution: "extend-shallow@npm:2.0.1" dependencies: is-extendable: "npm:^0.1.0" - checksum: ee1cb0a18c9faddb42d791b2d64867bd6cfd0f3affb711782eb6e894dd193e2934a7f529426aac7c8ddb31ac5d38000a00aa2caf08aa3dfc3e1c8ff6ba340bd9 + checksum: 10c0/ee1cb0a18c9faddb42d791b2d64867bd6cfd0f3affb711782eb6e894dd193e2934a7f529426aac7c8ddb31ac5d38000a00aa2caf08aa3dfc3e1c8ff6ba340bd9 languageName: node linkType: hard @@ -7821,7 +7813,7 @@ __metadata: dependencies: assign-symbols: "npm:^1.0.0" is-extendable: "npm:^1.0.1" - checksum: f39581b8f98e3ad94995e33214fff725b0297cf09f2725b6f624551cfb71e0764accfd0af80becc0182af5014d2a57b31b85ec999f9eb8a6c45af81752feac9a + checksum: 10c0/f39581b8f98e3ad94995e33214fff725b0297cf09f2725b6f624551cfb71e0764accfd0af80becc0182af5014d2a57b31b85ec999f9eb8a6c45af81752feac9a languageName: node linkType: hard @@ -7837,32 +7829,25 @@ __metadata: regex-not: "npm:^1.0.0" snapdragon: "npm:^0.8.1" to-regex: "npm:^3.0.1" - checksum: e1a891342e2010d046143016c6c03d58455c2c96c30bf5570ea07929984ee7d48fad86b363aee08f7a8a638f5c3a66906429b21ecb19bc8e90df56a001cd282c + checksum: 10c0/e1a891342e2010d046143016c6c03d58455c2c96c30bf5570ea07929984ee7d48fad86b363aee08f7a8a638f5c3a66906429b21ecb19bc8e90df56a001cd282c languageName: node linkType: hard "fast-copy@npm:^3.0.0": version: 3.0.1 resolution: "fast-copy@npm:3.0.1" - checksum: a8310dbcc4c94ed001dc3e0bbc3c3f0491bb04e6c17163abe441a54997ba06cdf1eb532c2f05e54777c6f072c84548c23ef0ecd54665cd611be1d42f37eca258 + checksum: 10c0/a8310dbcc4c94ed001dc3e0bbc3c3f0491bb04e6c17163abe441a54997ba06cdf1eb532c2f05e54777c6f072c84548c23ef0ecd54665cd611be1d42f37eca258 languageName: node linkType: hard "fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": version: 3.1.3 resolution: "fast-deep-equal@npm:3.1.3" - checksum: 40dedc862eb8992c54579c66d914635afbec43350afbbe991235fdcb4e3a8d5af1b23ae7e79bef7d4882d0ecee06c3197488026998fb19f72dc95acff1d1b1d0 + checksum: 10c0/40dedc862eb8992c54579c66d914635afbec43350afbbe991235fdcb4e3a8d5af1b23ae7e79bef7d4882d0ecee06c3197488026998fb19f72dc95acff1d1b1d0 languageName: node linkType: hard -"fast-diff@npm:^1.1.2": - version: 1.3.0 - resolution: "fast-diff@npm:1.3.0" - checksum: 5c19af237edb5d5effda008c891a18a585f74bf12953be57923f17a3a4d0979565fc64dbc73b9e20926b9d895f5b690c618cbb969af0cf022e3222471220ad29 - languageName: node - linkType: hard - -"fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.0, fast-glob@npm:^3.3.1, fast-glob@npm:^3.3.2": +"fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.1, fast-glob@npm:^3.3.2": version: 3.3.2 resolution: "fast-glob@npm:3.3.2" dependencies: @@ -7871,42 +7856,42 @@ __metadata: glob-parent: "npm:^5.1.2" merge2: "npm:^1.3.0" micromatch: "npm:^4.0.4" - checksum: 42baad7b9cd40b63e42039132bde27ca2cb3a4950d0a0f9abe4639ea1aa9d3e3b40f98b1fe31cbc0cc17b664c9ea7447d911a152fa34ec5b72977b125a6fc845 + checksum: 10c0/42baad7b9cd40b63e42039132bde27ca2cb3a4950d0a0f9abe4639ea1aa9d3e3b40f98b1fe31cbc0cc17b664c9ea7447d911a152fa34ec5b72977b125a6fc845 languageName: node linkType: hard "fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" - checksum: 7f081eb0b8a64e0057b3bb03f974b3ef00135fbf36c1c710895cd9300f13c94ba809bb3a81cf4e1b03f6e5285610a61abbd7602d0652de423144dfee5a389c9b + checksum: 10c0/7f081eb0b8a64e0057b3bb03f974b3ef00135fbf36c1c710895cd9300f13c94ba809bb3a81cf4e1b03f6e5285610a61abbd7602d0652de423144dfee5a389c9b languageName: node linkType: hard "fast-levenshtein@npm:^2.0.6": version: 2.0.6 resolution: "fast-levenshtein@npm:2.0.6" - checksum: 111972b37338bcb88f7d9e2c5907862c280ebf4234433b95bc611e518d192ccb2d38119c4ac86e26b668d75f7f3894f4ff5c4982899afced7ca78633b08287c4 + checksum: 10c0/111972b37338bcb88f7d9e2c5907862c280ebf4234433b95bc611e518d192ccb2d38119c4ac86e26b668d75f7f3894f4ff5c4982899afced7ca78633b08287c4 languageName: node linkType: hard "fast-redact@npm:^3.1.1": version: 3.3.0 resolution: "fast-redact@npm:3.3.0" - checksum: d81562510681e9ba6404ee5d3838ff5257a44d2f80937f5024c099049ff805437d0fae0124458a7e87535cc9dcf4de305bb075cab8f08d6c720bbc3447861b4e + checksum: 10c0/d81562510681e9ba6404ee5d3838ff5257a44d2f80937f5024c099049ff805437d0fae0124458a7e87535cc9dcf4de305bb075cab8f08d6c720bbc3447861b4e languageName: node linkType: hard "fast-safe-stringify@npm:^2.1.1": version: 2.1.1 resolution: "fast-safe-stringify@npm:2.1.1" - checksum: d90ec1c963394919828872f21edaa3ad6f1dddd288d2bd4e977027afff09f5db40f94e39536d4646f7e01761d704d72d51dce5af1b93717f3489ef808f5f4e4d + checksum: 10c0/d90ec1c963394919828872f21edaa3ad6f1dddd288d2bd4e977027afff09f5db40f94e39536d4646f7e01761d704d72d51dce5af1b93717f3489ef808f5f4e4d languageName: node linkType: hard "fastest-levenshtein@npm:^1.0.16": version: 1.0.16 resolution: "fastest-levenshtein@npm:1.0.16" - checksum: 7e3d8ae812a7f4fdf8cad18e9cde436a39addf266a5986f653ea0d81e0de0900f50c0f27c6d5aff3f686bcb48acbd45be115ae2216f36a6a13a7dbbf5cad878b + checksum: 10c0/7e3d8ae812a7f4fdf8cad18e9cde436a39addf266a5986f653ea0d81e0de0900f50c0f27c6d5aff3f686bcb48acbd45be115ae2216f36a6a13a7dbbf5cad878b languageName: node linkType: hard @@ -7915,7 +7900,7 @@ __metadata: resolution: "fastq@npm:1.15.0" dependencies: reusify: "npm:^1.0.4" - checksum: 5ce4f83afa5f88c9379e67906b4d31bc7694a30826d6cc8d0f0473c966929017fda65c2174b0ec89f064ede6ace6c67f8a4fe04cef42119b6a55b0d465554c24 + checksum: 10c0/5ce4f83afa5f88c9379e67906b4d31bc7694a30826d6cc8d0f0473c966929017fda65c2174b0ec89f064ede6ace6c67f8a4fe04cef42119b6a55b0d465554c24 languageName: node linkType: hard @@ -7924,7 +7909,7 @@ __metadata: resolution: "faye-websocket@npm:0.11.4" dependencies: websocket-driver: "npm:>=0.5.1" - checksum: c6052a0bb322778ce9f89af92890f6f4ce00d5ec92418a35e5f4c6864a4fe736fec0bcebd47eac7c0f0e979b01530746b1c85c83cb04bae789271abf19737420 + checksum: 10c0/c6052a0bb322778ce9f89af92890f6f4ce00d5ec92418a35e5f4c6864a4fe736fec0bcebd47eac7c0f0e979b01530746b1c85c83cb04bae789271abf19737420 languageName: node linkType: hard @@ -7933,7 +7918,7 @@ __metadata: resolution: "fb-watchman@npm:2.0.2" dependencies: bser: "npm:2.1.1" - checksum: feae89ac148adb8f6ae8ccd87632e62b13563e6fb114cacb5265c51f585b17e2e268084519fb2edd133872f1d47a18e6bfd7e5e08625c0d41b93149694187581 + checksum: 10c0/feae89ac148adb8f6ae8ccd87632e62b13563e6fb114cacb5265c51f585b17e2e268084519fb2edd133872f1d47a18e6bfd7e5e08625c0d41b93149694187581 languageName: node linkType: hard @@ -7942,7 +7927,7 @@ __metadata: resolution: "file-entry-cache@npm:6.0.1" dependencies: flat-cache: "npm:^3.0.4" - checksum: 58473e8a82794d01b38e5e435f6feaf648e3f36fdb3a56e98f417f4efae71ad1c0d4ebd8a9a7c50c3ad085820a93fc7494ad721e0e4ebc1da3573f4e1c3c7cdd + checksum: 10c0/58473e8a82794d01b38e5e435f6feaf648e3f36fdb3a56e98f417f4efae71ad1c0d4ebd8a9a7c50c3ad085820a93fc7494ad721e0e4ebc1da3573f4e1c3c7cdd languageName: node linkType: hard @@ -7951,7 +7936,7 @@ __metadata: resolution: "file-entry-cache@npm:8.0.0" dependencies: flat-cache: "npm:^4.0.0" - checksum: 9e2b5938b1cd9b6d7e3612bdc533afd4ac17b2fc646569e9a8abbf2eb48e5eb8e316bc38815a3ef6a1b456f4107f0d0f055a614ca613e75db6bf9ff4d72c1638 + checksum: 10c0/9e2b5938b1cd9b6d7e3612bdc533afd4ac17b2fc646569e9a8abbf2eb48e5eb8e316bc38815a3ef6a1b456f4107f0d0f055a614ca613e75db6bf9ff4d72c1638 languageName: node linkType: hard @@ -7963,21 +7948,21 @@ __metadata: schema-utils: "npm:^3.0.0" peerDependencies: webpack: ^4.0.0 || ^5.0.0 - checksum: e176a57c2037ab0f78e5755dbf293a6b7f0f8392350a120bd03cc2ce2525bea017458ba28fea14ca535ff1848055e86d1a3a216bdb2561ef33395b27260a1dd3 + checksum: 10c0/e176a57c2037ab0f78e5755dbf293a6b7f0f8392350a120bd03cc2ce2525bea017458ba28fea14ca535ff1848055e86d1a3a216bdb2561ef33395b27260a1dd3 languageName: node linkType: hard "file-type@npm:^12.4.1": version: 12.4.2 resolution: "file-type@npm:12.4.2" - checksum: 26a307262a2a0b41ea83136550fbe83d8b502d080778b6577e0336fbfe9e919e1f871a286a6eb59f668425f60ebb19402fcb6c0443af58446d33c63362554e1d + checksum: 10c0/26a307262a2a0b41ea83136550fbe83d8b502d080778b6577e0336fbfe9e919e1f871a286a6eb59f668425f60ebb19402fcb6c0443af58446d33c63362554e1d languageName: node linkType: hard "file-uri-to-path@npm:1.0.0": version: 1.0.0 resolution: "file-uri-to-path@npm:1.0.0" - checksum: 3b545e3a341d322d368e880e1c204ef55f1d45cdea65f7efc6c6ce9e0c4d22d802d5629320eb779d006fe59624ac17b0e848d83cc5af7cd101f206cb704f5519 + checksum: 10c0/3b545e3a341d322d368e880e1c204ef55f1d45cdea65f7efc6c6ce9e0c4d22d802d5629320eb779d006fe59624ac17b0e848d83cc5af7cd101f206cb704f5519 languageName: node linkType: hard @@ -7986,7 +7971,7 @@ __metadata: resolution: "filelist@npm:1.0.4" dependencies: minimatch: "npm:^5.0.1" - checksum: 426b1de3944a3d153b053f1c0ebfd02dccd0308a4f9e832ad220707a6d1f1b3c9784d6cadf6b2f68f09a57565f63ebc7bcdc913ccf8012d834f472c46e596f41 + checksum: 10c0/426b1de3944a3d153b053f1c0ebfd02dccd0308a4f9e832ad220707a6d1f1b3c9784d6cadf6b2f68f09a57565f63ebc7bcdc913ccf8012d834f472c46e596f41 languageName: node linkType: hard @@ -7998,7 +7983,7 @@ __metadata: is-number: "npm:^3.0.0" repeat-string: "npm:^1.6.1" to-regex-range: "npm:^2.1.0" - checksum: ccd57b7c43d7e28a1f8a60adfa3c401629c08e2f121565eece95e2386ebc64dedc7128d8c3448342aabf19db0c55a34f425f148400c7a7be9a606ba48749e089 + checksum: 10c0/ccd57b7c43d7e28a1f8a60adfa3c401629c08e2f121565eece95e2386ebc64dedc7128d8c3448342aabf19db0c55a34f425f148400c7a7be9a606ba48749e089 languageName: node linkType: hard @@ -8007,7 +7992,7 @@ __metadata: resolution: "fill-range@npm:7.0.1" dependencies: to-regex-range: "npm:^5.0.1" - checksum: 7cdad7d426ffbaadf45aeb5d15ec675bbd77f7597ad5399e3d2766987ed20bda24d5fac64b3ee79d93276f5865608bb22344a26b9b1ae6c4d00bd94bf611623f + checksum: 10c0/7cdad7d426ffbaadf45aeb5d15ec675bbd77f7597ad5399e3d2766987ed20bda24d5fac64b3ee79d93276f5865608bb22344a26b9b1ae6c4d00bd94bf611623f languageName: node linkType: hard @@ -8022,7 +8007,7 @@ __metadata: parseurl: "npm:~1.3.3" statuses: "npm:2.0.1" unpipe: "npm:~1.0.0" - checksum: 64b7e5ff2ad1fcb14931cd012651631b721ce657da24aedb5650ddde9378bf8e95daa451da43398123f5de161a81e79ff5affe4f9f2a6d2df4a813d6d3e254b7 + checksum: 10c0/64b7e5ff2ad1fcb14931cd012651631b721ce657da24aedb5650ddde9378bf8e95daa451da43398123f5de161a81e79ff5affe4f9f2a6d2df4a813d6d3e254b7 languageName: node linkType: hard @@ -8033,14 +8018,14 @@ __metadata: commondir: "npm:^1.0.1" make-dir: "npm:^3.0.2" pkg-dir: "npm:^4.1.0" - checksum: 92747cda42bff47a0266b06014610981cfbb71f55d60f2c8216bc3108c83d9745507fb0b14ecf6ab71112bed29cd6fb1a137ee7436179ea36e11287e3159e587 + checksum: 10c0/92747cda42bff47a0266b06014610981cfbb71f55d60f2c8216bc3108c83d9745507fb0b14ecf6ab71112bed29cd6fb1a137ee7436179ea36e11287e3159e587 languageName: node linkType: hard "find-root@npm:^1.1.0": version: 1.1.0 resolution: "find-root@npm:1.1.0" - checksum: 1abc7f3bf2f8d78ff26d9e00ce9d0f7b32e5ff6d1da2857bcdf4746134c422282b091c672cde0572cac3840713487e0a7a636af9aa1b74cb11894b447a521efa + checksum: 10c0/1abc7f3bf2f8d78ff26d9e00ce9d0f7b32e5ff6d1da2857bcdf4746134c422282b091c672cde0572cac3840713487e0a7a636af9aa1b74cb11894b447a521efa languageName: node linkType: hard @@ -8049,7 +8034,7 @@ __metadata: resolution: "find-up@npm:3.0.0" dependencies: locate-path: "npm:^3.0.0" - checksum: 2c2e7d0a26db858e2f624f39038c74739e38306dee42b45f404f770db357947be9d0d587f1cac72d20c114deb38aa57316e879eb0a78b17b46da7dab0a3bd6e3 + checksum: 10c0/2c2e7d0a26db858e2f624f39038c74739e38306dee42b45f404f770db357947be9d0d587f1cac72d20c114deb38aa57316e879eb0a78b17b46da7dab0a3bd6e3 languageName: node linkType: hard @@ -8059,7 +8044,7 @@ __metadata: dependencies: locate-path: "npm:^5.0.0" path-exists: "npm:^4.0.0" - checksum: 0406ee89ebeefa2d507feb07ec366bebd8a6167ae74aa4e34fb4c4abd06cf782a3ce26ae4194d70706f72182841733f00551c209fe575cb00bd92104056e78c1 + checksum: 10c0/0406ee89ebeefa2d507feb07ec366bebd8a6167ae74aa4e34fb4c4abd06cf782a3ce26ae4194d70706f72182841733f00551c209fe575cb00bd92104056e78c1 languageName: node linkType: hard @@ -8069,7 +8054,7 @@ __metadata: dependencies: locate-path: "npm:^6.0.0" path-exists: "npm:^4.0.0" - checksum: 062c5a83a9c02f53cdd6d175a37ecf8f87ea5bbff1fdfb828f04bfa021441bc7583e8ebc0872a4c1baab96221fb8a8a275a19809fb93fbc40bd69ec35634069a + checksum: 10c0/062c5a83a9c02f53cdd6d175a37ecf8f87ea5bbff1fdfb828f04bfa021441bc7583e8ebc0872a4c1baab96221fb8a8a275a19809fb93fbc40bd69ec35634069a languageName: node linkType: hard @@ -8081,7 +8066,7 @@ __metadata: is-glob: "npm:^4.0.0" micromatch: "npm:^3.0.4" resolve-dir: "npm:^1.0.1" - checksum: ff6f37328a7629775db2abf0fcd40e7c117baf37f23006f206c18bcd9ca0ce99d8c24ae86df540370ec76c1080ab59fe82cb71d2c7c1ad819ccccee726af7e92 + checksum: 10c0/ff6f37328a7629775db2abf0fcd40e7c117baf37f23006f206c18bcd9ca0ce99d8c24ae86df540370ec76c1080ab59fe82cb71d2c7c1ad819ccccee726af7e92 languageName: node linkType: hard @@ -8092,7 +8077,7 @@ __metadata: flatted: "npm:^3.2.9" keyv: "npm:^4.5.3" rimraf: "npm:^3.0.2" - checksum: b76f611bd5f5d68f7ae632e3ae503e678d205cf97a17c6ab5b12f6ca61188b5f1f7464503efae6dc18683ed8f0b41460beb48ac4b9ac63fe6201296a91ba2f75 + checksum: 10c0/b76f611bd5f5d68f7ae632e3ae503e678d205cf97a17c6ab5b12f6ca61188b5f1f7464503efae6dc18683ed8f0b41460beb48ac4b9ac63fe6201296a91ba2f75 languageName: node linkType: hard @@ -8103,7 +8088,7 @@ __metadata: flatted: "npm:^3.2.9" keyv: "npm:^4.5.4" rimraf: "npm:^5.0.5" - checksum: 8f99e27bb3de94e91e7b4ca5120488cdc2b7f8cd952a538f1a566101963057eb42ca318e9fac0d36987dcca34316ff04b61c1dc3dcc8084f6f5e801a52a8e547 + checksum: 10c0/8f99e27bb3de94e91e7b4ca5120488cdc2b7f8cd952a538f1a566101963057eb42ca318e9fac0d36987dcca34316ff04b61c1dc3dcc8084f6f5e801a52a8e547 languageName: node linkType: hard @@ -8112,14 +8097,14 @@ __metadata: resolution: "flat@npm:5.0.2" bin: flat: cli.js - checksum: f178b13482f0cd80c7fede05f4d10585b1f2fdebf26e12edc138e32d3150c6ea6482b7f12813a1091143bad52bb6d3596bca51a162257a21163c0ff438baa5fe + checksum: 10c0/f178b13482f0cd80c7fede05f4d10585b1f2fdebf26e12edc138e32d3150c6ea6482b7f12813a1091143bad52bb6d3596bca51a162257a21163c0ff438baa5fe languageName: node linkType: hard "flatted@npm:^3.2.9": version: 3.2.9 resolution: "flatted@npm:3.2.9" - checksum: 5c91c5a0a21bbc0b07b272231e5b4efe6b822bcb4ad317caf6bb06984be4042a9e9045026307da0fdb4583f1f545e317a67ef1231a59e71f7fced3cc429cfc53 + checksum: 10c0/5c91c5a0a21bbc0b07b272231e5b4efe6b822bcb4ad317caf6bb06984be4042a9e9045026307da0fdb4583f1f545e317a67ef1231a59e71f7fced3cc429cfc53 languageName: node linkType: hard @@ -8129,14 +8114,14 @@ __metadata: peerDependenciesMeta: debug: optional: true - checksum: 5f37ed9170c9eb19448c5418fdb0f2b73f644b5364834e70791a76ecc7db215246f9773bbef4852cfae4067764ffc852e047f744b661b0211532155b73556a6a + checksum: 10c0/5f37ed9170c9eb19448c5418fdb0f2b73f644b5364834e70791a76ecc7db215246f9773bbef4852cfae4067764ffc852e047f744b661b0211532155b73556a6a languageName: node linkType: hard "font-awesome@npm:^4.7.0": version: 4.7.0 resolution: "font-awesome@npm:4.7.0" - checksum: 1c456e2939c55192eed67db9c0efb8db3e92fd357ca189ca00030eb44acffa1e9f835288d2204c14b9a9c490a7b14b7090dfaff80ded6b2473f50a923dfb41e7 + checksum: 10c0/1c456e2939c55192eed67db9c0efb8db3e92fd357ca189ca00030eb44acffa1e9f835288d2204c14b9a9c490a7b14b7090dfaff80ded6b2473f50a923dfb41e7 languageName: node linkType: hard @@ -8145,14 +8130,14 @@ __metadata: resolution: "for-each@npm:0.3.3" dependencies: is-callable: "npm:^1.1.3" - checksum: 22330d8a2db728dbf003ec9182c2d421fbcd2969b02b4f97ec288721cda63eb28f2c08585ddccd0f77cb2930af8d958005c9e72f47141dc51816127a118f39aa + checksum: 10c0/22330d8a2db728dbf003ec9182c2d421fbcd2969b02b4f97ec288721cda63eb28f2c08585ddccd0f77cb2930af8d958005c9e72f47141dc51816127a118f39aa languageName: node linkType: hard "for-in@npm:^1.0.2": version: 1.0.2 resolution: "for-in@npm:1.0.2" - checksum: 42bb609d564b1dc340e1996868b67961257fd03a48d7fdafd4f5119530b87f962be6b4d5b7e3a3fc84c9854d149494b1d358e0b0ce9837e64c4c6603a49451d6 + checksum: 10c0/42bb609d564b1dc340e1996868b67961257fd03a48d7fdafd4f5119530b87f962be6b4d5b7e3a3fc84c9854d149494b1d358e0b0ce9837e64c4c6603a49451d6 languageName: node linkType: hard @@ -8162,7 +8147,7 @@ __metadata: dependencies: cross-spawn: "npm:^7.0.0" signal-exit: "npm:^4.0.1" - checksum: 9700a0285628abaeb37007c9a4d92bd49f67210f09067638774338e146c8e9c825c5c877f072b2f75f41dc6a2d0be8664f79ffc03f6576649f54a84fb9b47de0 + checksum: 10c0/9700a0285628abaeb37007c9a4d92bd49f67210f09067638774338e146c8e9c825c5c877f072b2f75f41dc6a2d0be8664f79ffc03f6576649f54a84fb9b47de0 languageName: node linkType: hard @@ -8173,21 +8158,21 @@ __metadata: asynckit: "npm:^0.4.0" combined-stream: "npm:^1.0.8" mime-types: "npm:^2.1.12" - checksum: cb6f3ac49180be03ff07ba3ff125f9eba2ff0b277fb33c7fc47569fc5e616882c5b1c69b9904c4c4187e97dd0419dd03b134174756f296dec62041e6527e2c6e + checksum: 10c0/cb6f3ac49180be03ff07ba3ff125f9eba2ff0b277fb33c7fc47569fc5e616882c5b1c69b9904c4c4187e97dd0419dd03b134174756f296dec62041e6527e2c6e languageName: node linkType: hard "forwarded@npm:0.2.0": version: 0.2.0 resolution: "forwarded@npm:0.2.0" - checksum: 9b67c3fac86acdbc9ae47ba1ddd5f2f81526fa4c8226863ede5600a3f7c7416ef451f6f1e240a3cc32d0fd79fcfe6beb08fd0da454f360032bde70bf80afbb33 + checksum: 10c0/9b67c3fac86acdbc9ae47ba1ddd5f2f81526fa4c8226863ede5600a3f7c7416ef451f6f1e240a3cc32d0fd79fcfe6beb08fd0da454f360032bde70bf80afbb33 languageName: node linkType: hard "fraction.js@npm:^4.3.7": version: 4.3.7 resolution: "fraction.js@npm:4.3.7" - checksum: df291391beea9ab4c263487ffd9d17fed162dbb736982dee1379b2a8cc94e4e24e46ed508c6d278aded9080ba51872f1bc5f3a5fd8d7c74e5f105b508ac28711 + checksum: 10c0/df291391beea9ab4c263487ffd9d17fed162dbb736982dee1379b2a8cc94e4e24e46ed508c6d278aded9080ba51872f1bc5f3a5fd8d7c74e5f105b508ac28711 languageName: node linkType: hard @@ -8196,14 +8181,14 @@ __metadata: resolution: "fragment-cache@npm:0.2.1" dependencies: map-cache: "npm:^0.2.2" - checksum: 5891d1c1d1d5e1a7fb3ccf28515c06731476fa88f7a50f4ede8a0d8d239a338448e7f7cc8b73db48da19c229fa30066104fe6489862065a4f1ed591c42fbeabf + checksum: 10c0/5891d1c1d1d5e1a7fb3ccf28515c06731476fa88f7a50f4ede8a0d8d239a338448e7f7cc8b73db48da19c229fa30066104fe6489862065a4f1ed591c42fbeabf languageName: node linkType: hard "fresh@npm:0.5.2": version: 0.5.2 resolution: "fresh@npm:0.5.2" - checksum: c6d27f3ed86cc5b601404822f31c900dd165ba63fff8152a3ef714e2012e7535027063bc67ded4cb5b3a49fa596495d46cacd9f47d6328459cf570f08b7d9e5a + checksum: 10c0/c6d27f3ed86cc5b601404822f31c900dd165ba63fff8152a3ef714e2012e7535027063bc67ded4cb5b3a49fa596495d46cacd9f47d6328459cf570f08b7d9e5a languageName: node linkType: hard @@ -8215,7 +8200,7 @@ __metadata: graceful-fs: "npm:^4.2.0" jsonfile: "npm:^6.0.1" universalify: "npm:^2.0.0" - checksum: 9b808bd884beff5cb940773018179a6b94a966381d005479f00adda6b44e5e3d4abf765135773d849cc27efe68c349e4a7b86acd7d3306d5932c14f3a4b17a92 + checksum: 10c0/9b808bd884beff5cb940773018179a6b94a966381d005479f00adda6b44e5e3d4abf765135773d849cc27efe68c349e4a7b86acd7d3306d5932c14f3a4b17a92 languageName: node linkType: hard @@ -8224,7 +8209,7 @@ __metadata: resolution: "fs-minipass@npm:2.1.0" dependencies: minipass: "npm:^3.0.0" - checksum: 703d16522b8282d7299337539c3ed6edddd1afe82435e4f5b76e34a79cd74e488a8a0e26a636afc2440e1a23b03878e2122e3a2cfe375a5cf63c37d92b86a004 + checksum: 10c0/703d16522b8282d7299337539c3ed6edddd1afe82435e4f5b76e34a79cd74e488a8a0e26a636afc2440e1a23b03878e2122e3a2cfe375a5cf63c37d92b86a004 languageName: node linkType: hard @@ -8233,14 +8218,14 @@ __metadata: resolution: "fs-minipass@npm:3.0.3" dependencies: minipass: "npm:^7.0.3" - checksum: 63e80da2ff9b621e2cb1596abcb9207f1cf82b968b116ccd7b959e3323144cce7fb141462200971c38bbf2ecca51695069db45265705bed09a7cd93ae5b89f94 + checksum: 10c0/63e80da2ff9b621e2cb1596abcb9207f1cf82b968b116ccd7b959e3323144cce7fb141462200971c38bbf2ecca51695069db45265705bed09a7cd93ae5b89f94 languageName: node linkType: hard "fs.realpath@npm:^1.0.0": version: 1.0.0 resolution: "fs.realpath@npm:1.0.0" - checksum: 444cf1291d997165dfd4c0d58b69f0e4782bfd9149fd72faa4fe299e68e0e93d6db941660b37dd29153bf7186672ececa3b50b7e7249477b03fdf850f287c948 + checksum: 10c0/444cf1291d997165dfd4c0d58b69f0e4782bfd9149fd72faa4fe299e68e0e93d6db941660b37dd29153bf7186672ececa3b50b7e7249477b03fdf850f287c948 languageName: node linkType: hard @@ -8250,7 +8235,7 @@ __metadata: dependencies: bindings: "npm:^1.5.0" nan: "npm:^2.12.1" - checksum: 4427ff08db9ee7327f2c3ad58ec56f9096a917eed861bfffaa2e2be419479cdf37d00750869ab9ecbf5f59f32ad999bd59577d73fc639193e6c0ce52bb253e02 + checksum: 10c0/4427ff08db9ee7327f2c3ad58ec56f9096a917eed861bfffaa2e2be419479cdf37d00750869ab9ecbf5f59f32ad999bd59577d73fc639193e6c0ce52bb253e02 conditions: os=darwin languageName: node linkType: hard @@ -8260,7 +8245,7 @@ __metadata: resolution: "fsevents@npm:2.3.3" dependencies: node-gyp: "npm:latest" - checksum: a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60 + checksum: 10c0/a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60 conditions: os=darwin languageName: node linkType: hard @@ -8284,10 +8269,10 @@ __metadata: languageName: node linkType: hard -"function-bind@npm:^1.1.1, function-bind@npm:^1.1.2": +"function-bind@npm:^1.1.2": version: 1.1.2 resolution: "function-bind@npm:1.1.2" - checksum: d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5 + checksum: 10c0/d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5 languageName: node linkType: hard @@ -8299,68 +8284,69 @@ __metadata: define-properties: "npm:^1.2.0" es-abstract: "npm:^1.22.1" functions-have-names: "npm:^1.2.3" - checksum: 9eae11294905b62cb16874adb4fc687927cda3162285e0ad9612e6a1d04934005d46907362ea9cdb7428edce05a2f2c3dabc3b2d21e9fd343e9bb278230ad94b + checksum: 10c0/9eae11294905b62cb16874adb4fc687927cda3162285e0ad9612e6a1d04934005d46907362ea9cdb7428edce05a2f2c3dabc3b2d21e9fd343e9bb278230ad94b languageName: node linkType: hard "functions-have-names@npm:^1.2.3": version: 1.2.3 resolution: "functions-have-names@npm:1.2.3" - checksum: 33e77fd29bddc2d9bb78ab3eb854c165909201f88c75faa8272e35899e2d35a8a642a15e7420ef945e1f64a9670d6aa3ec744106b2aa42be68ca5114025954ca + checksum: 10c0/33e77fd29bddc2d9bb78ab3eb854c165909201f88c75faa8272e35899e2d35a8a642a15e7420ef945e1f64a9670d6aa3ec744106b2aa42be68ca5114025954ca languageName: node linkType: hard "fuzzysort@npm:^2.0.4": version: 2.0.4 resolution: "fuzzysort@npm:2.0.4" - checksum: 3170d16fccc0f4ac5e31323dbab7d0da7b1a4024878ed4d6b4ec86c0df94e12dc335f8d4181e38d97ca7919ac51bc5de4a9c2ec94914a4e51f9e9c05208c9ea9 + checksum: 10c0/3170d16fccc0f4ac5e31323dbab7d0da7b1a4024878ed4d6b4ec86c0df94e12dc335f8d4181e38d97ca7919ac51bc5de4a9c2ec94914a4e51f9e9c05208c9ea9 languageName: node linkType: hard "gensync@npm:^1.0.0-beta.2": version: 1.0.0-beta.2 resolution: "gensync@npm:1.0.0-beta.2" - checksum: 782aba6cba65b1bb5af3b095d96249d20edbe8df32dbf4696fd49be2583faf676173bf4809386588828e4dd76a3354fcbeb577bab1c833ccd9fc4577f26103f8 + checksum: 10c0/782aba6cba65b1bb5af3b095d96249d20edbe8df32dbf4696fd49be2583faf676173bf4809386588828e4dd76a3354fcbeb577bab1c833ccd9fc4577f26103f8 languageName: node linkType: hard "get-caller-file@npm:^2.0.1, get-caller-file@npm:^2.0.5": version: 2.0.5 resolution: "get-caller-file@npm:2.0.5" - checksum: c6c7b60271931fa752aeb92f2b47e355eac1af3a2673f47c9589e8f8a41adc74d45551c1bc57b5e66a80609f10ffb72b6f575e4370d61cc3f7f3aaff01757cde + checksum: 10c0/c6c7b60271931fa752aeb92f2b47e355eac1af3a2673f47c9589e8f8a41adc74d45551c1bc57b5e66a80609f10ffb72b6f575e4370d61cc3f7f3aaff01757cde languageName: node linkType: hard "get-east-asian-width@npm:^1.0.0": version: 1.2.0 resolution: "get-east-asian-width@npm:1.2.0" - checksum: 914b1e217cf38436c24b4c60b4c45289e39a45bf9e65ef9fd343c2815a1a02b8a0215aeec8bf9c07c516089004b6e3826332481f40a09529fcadbf6e579f286b + checksum: 10c0/914b1e217cf38436c24b4c60b4c45289e39a45bf9e65ef9fd343c2815a1a02b8a0215aeec8bf9c07c516089004b6e3826332481f40a09529fcadbf6e579f286b languageName: node linkType: hard -"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.0, get-intrinsic@npm:^1.2.1, get-intrinsic@npm:^1.2.2": - version: 1.2.2 - resolution: "get-intrinsic@npm:1.2.2" +"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.0, get-intrinsic@npm:^1.2.1, get-intrinsic@npm:^1.2.2, get-intrinsic@npm:^1.2.3, get-intrinsic@npm:^1.2.4": + version: 1.2.4 + resolution: "get-intrinsic@npm:1.2.4" dependencies: + es-errors: "npm:^1.3.0" function-bind: "npm:^1.1.2" has-proto: "npm:^1.0.1" has-symbols: "npm:^1.0.3" hasown: "npm:^2.0.0" - checksum: 4e7fb8adc6172bae7c4fe579569b4d5238b3667c07931cd46b4eee74bbe6ff6b91329bec311a638d8e60f5b51f44fe5445693c6be89ae88d4b5c49f7ff12db0b + checksum: 10c0/0a9b82c16696ed6da5e39b1267104475c47e3a9bdbe8b509dfe1710946e38a87be70d759f4bb3cda042d76a41ef47fe769660f3b7c0d1f68750299344ffb15b7 languageName: node linkType: hard "get-own-enumerable-property-symbols@npm:^3.0.0": version: 3.0.2 resolution: "get-own-enumerable-property-symbols@npm:3.0.2" - checksum: 103999855f3d1718c631472437161d76962cbddcd95cc642a34c07bfb661ed41b6c09a9c669ccdff89ee965beb7126b80eec7b2101e20e31e9cc6c4725305e10 + checksum: 10c0/103999855f3d1718c631472437161d76962cbddcd95cc642a34c07bfb661ed41b6c09a9c669ccdff89ee965beb7126b80eec7b2101e20e31e9cc6c4725305e10 languageName: node linkType: hard "get-package-type@npm:^0.1.0": version: 0.1.0 resolution: "get-package-type@npm:0.1.0" - checksum: e34cdf447fdf1902a1f6d5af737eaadf606d2ee3518287abde8910e04159368c268568174b2e71102b87b26c2020486f126bfca9c4fb1ceb986ff99b52ecd1be + checksum: 10c0/e34cdf447fdf1902a1f6d5af737eaadf606d2ee3518287abde8910e04159368c268568174b2e71102b87b26c2020486f126bfca9c4fb1ceb986ff99b52ecd1be languageName: node linkType: hard @@ -8369,31 +8355,32 @@ __metadata: resolution: "get-stream@npm:4.1.0" dependencies: pump: "npm:^3.0.0" - checksum: 294d876f667694a5ca23f0ca2156de67da950433b6fb53024833733975d32582896dbc7f257842d331809979efccf04d5e0b6b75ad4d45744c45f193fd497539 + checksum: 10c0/294d876f667694a5ca23f0ca2156de67da950433b6fb53024833733975d32582896dbc7f257842d331809979efccf04d5e0b6b75ad4d45744c45f193fd497539 languageName: node linkType: hard -"get-stream@npm:^6.0.0, get-stream@npm:^6.0.1": +"get-stream@npm:^6.0.0": version: 6.0.1 resolution: "get-stream@npm:6.0.1" - checksum: 49825d57d3fd6964228e6200a58169464b8e8970489b3acdc24906c782fb7f01f9f56f8e6653c4a50713771d6658f7cfe051e5eb8c12e334138c9c918b296341 + checksum: 10c0/49825d57d3fd6964228e6200a58169464b8e8970489b3acdc24906c782fb7f01f9f56f8e6653c4a50713771d6658f7cfe051e5eb8c12e334138c9c918b296341 languageName: node linkType: hard "get-stream@npm:^8.0.1": version: 8.0.1 resolution: "get-stream@npm:8.0.1" - checksum: 5c2181e98202b9dae0bb4a849979291043e5892eb40312b47f0c22b9414fc9b28a3b6063d2375705eb24abc41ecf97894d9a51f64ff021511b504477b27b4290 + checksum: 10c0/5c2181e98202b9dae0bb4a849979291043e5892eb40312b47f0c22b9414fc9b28a3b6063d2375705eb24abc41ecf97894d9a51f64ff021511b504477b27b4290 languageName: node linkType: hard -"get-symbol-description@npm:^1.0.0": - version: 1.0.0 - resolution: "get-symbol-description@npm:1.0.0" +"get-symbol-description@npm:^1.0.2": + version: 1.0.2 + resolution: "get-symbol-description@npm:1.0.2" dependencies: - call-bind: "npm:^1.0.2" - get-intrinsic: "npm:^1.1.1" - checksum: 23bc3b44c221cdf7669a88230c62f4b9e30393b61eb21ba4400cb3e346801bd8f95fe4330ee78dbae37aecd874646d53e3e76a17a654d0c84c77f6690526d6bb + call-bind: "npm:^1.0.5" + es-errors: "npm:^1.3.0" + get-intrinsic: "npm:^1.2.4" + checksum: 10c0/867be6d63f5e0eb026cb3b0ef695ec9ecf9310febb041072d2e142f260bd91ced9eeb426b3af98791d1064e324e653424afa6fd1af17dee373bea48ae03162bc languageName: node linkType: hard @@ -8402,14 +8389,14 @@ __metadata: resolution: "get-tsconfig@npm:4.7.2" dependencies: resolve-pkg-maps: "npm:^1.0.0" - checksum: 169b2beababfbb16e8a0ae813ee59d3e14d4960231c816615161ab5be68ec07a394dce59695742ac84295e2efab8d9e89bcf3abaf5e253dfbec3496e01bb9a65 + checksum: 10c0/169b2beababfbb16e8a0ae813ee59d3e14d4960231c816615161ab5be68ec07a394dce59695742ac84295e2efab8d9e89bcf3abaf5e253dfbec3496e01bb9a65 languageName: node linkType: hard "get-value@npm:^2.0.3, get-value@npm:^2.0.6": version: 2.0.6 resolution: "get-value@npm:2.0.6" - checksum: f069c132791b357c8fc4adfe9e2929b0a2c6e95f98ca7bc6fcbc27f8a302e552f86b4ae61ec56d9e9ac2544b93b6a39743d479866a37b43fcc104088ba74f0d9 + checksum: 10c0/f069c132791b357c8fc4adfe9e2929b0a2c6e95f98ca7bc6fcbc27f8a302e552f86b4ae61ec56d9e9ac2544b93b6a39743d479866a37b43fcc104088ba74f0d9 languageName: node linkType: hard @@ -8419,7 +8406,7 @@ __metadata: dependencies: is-glob: "npm:^3.1.0" path-dirname: "npm:^1.0.0" - checksum: bfa89ce5ae1dfea4c2ece7b61d2ea230d87fcbec7472915cfdb3f4caf688a91ecb0dc86ae39b1e17505adce7e64cae3b971d64dc66091f3a0131169fd631b00d + checksum: 10c0/bfa89ce5ae1dfea4c2ece7b61d2ea230d87fcbec7472915cfdb3f4caf688a91ecb0dc86ae39b1e17505adce7e64cae3b971d64dc66091f3a0131169fd631b00d languageName: node linkType: hard @@ -8428,7 +8415,7 @@ __metadata: resolution: "glob-parent@npm:5.1.2" dependencies: is-glob: "npm:^4.0.1" - checksum: cab87638e2112bee3f839ef5f6e0765057163d39c66be8ec1602f3823da4692297ad4e972de876ea17c44d652978638d2fd583c6713d0eb6591706825020c9ee + checksum: 10c0/cab87638e2112bee3f839ef5f6e0765057163d39c66be8ec1602f3823da4692297ad4e972de876ea17c44d652978638d2fd583c6713d0eb6591706825020c9ee languageName: node linkType: hard @@ -8437,7 +8424,7 @@ __metadata: resolution: "glob-parent@npm:6.0.2" dependencies: is-glob: "npm:^4.0.3" - checksum: 317034d88654730230b3f43bb7ad4f7c90257a426e872ea0bf157473ac61c99bf5d205fad8f0185f989be8d2fa6d3c7dce1645d99d545b6ea9089c39f838e7f8 + checksum: 10c0/317034d88654730230b3f43bb7ad4f7c90257a426e872ea0bf157473ac61c99bf5d205fad8f0185f989be8d2fa6d3c7dce1645d99d545b6ea9089c39f838e7f8 languageName: node linkType: hard @@ -8452,7 +8439,7 @@ __metadata: path-scurry: "npm:^1.10.1" bin: glob: dist/esm/bin.mjs - checksum: 13d8a1feb7eac7945f8c8480e11cd4a44b24d26503d99a8d8ac8d5aefbf3e9802a2b6087318a829fad04cb4e829f25c5f4f1110c68966c498720dd261c7e344d + checksum: 10c0/13d8a1feb7eac7945f8c8480e11cd4a44b24d26503d99a8d8ac8d5aefbf3e9802a2b6087318a829fad04cb4e829f25c5f4f1110c68966c498720dd261c7e344d languageName: node linkType: hard @@ -8466,7 +8453,7 @@ __metadata: minimatch: "npm:^3.1.1" once: "npm:^1.3.0" path-is-absolute: "npm:^1.0.0" - checksum: 65676153e2b0c9095100fe7f25a778bf45608eeb32c6048cf307f579649bcc30353277b3b898a3792602c65764e5baa4f643714dfbdfd64ea271d210c7a425fe + checksum: 10c0/65676153e2b0c9095100fe7f25a778bf45608eeb32c6048cf307f579649bcc30353277b3b898a3792602c65764e5baa4f643714dfbdfd64ea271d210c7a425fe languageName: node linkType: hard @@ -8477,7 +8464,7 @@ __metadata: global-prefix: "npm:^1.0.1" is-windows: "npm:^1.0.1" resolve-dir: "npm:^1.0.0" - checksum: 7d91ecf78d4fcbc966b2d89c1400df273afea795bc8cadf39857ee1684e442065621fd79413ff5fcd9e90c6f1b2dc0123e644fa0b7811f987fd54c6b9afad858 + checksum: 10c0/7d91ecf78d4fcbc966b2d89c1400df273afea795bc8cadf39857ee1684e442065621fd79413ff5fcd9e90c6f1b2dc0123e644fa0b7811f987fd54c6b9afad858 languageName: node linkType: hard @@ -8486,7 +8473,7 @@ __metadata: resolution: "global-modules@npm:2.0.0" dependencies: global-prefix: "npm:^3.0.0" - checksum: 43b770fe24aa6028f4b9770ea583a47f39750be15cf6e2578f851e4ccc9e4fa674b8541928c0b09c21461ca0763f0d36e4068cec86c914b07fd6e388e66ba5b9 + checksum: 10c0/43b770fe24aa6028f4b9770ea583a47f39750be15cf6e2578f851e4ccc9e4fa674b8541928c0b09c21461ca0763f0d36e4068cec86c914b07fd6e388e66ba5b9 languageName: node linkType: hard @@ -8499,7 +8486,7 @@ __metadata: ini: "npm:^1.3.4" is-windows: "npm:^1.0.1" which: "npm:^1.2.14" - checksum: d8037e300f1dc04d5d410d16afa662e71bfad22dcceba6c9727bb55cc273b8988ca940b3402f62e5392fd261dd9924a9a73a865ef2000219461f31f3fc86be06 + checksum: 10c0/d8037e300f1dc04d5d410d16afa662e71bfad22dcceba6c9727bb55cc273b8988ca940b3402f62e5392fd261dd9924a9a73a865ef2000219461f31f3fc86be06 languageName: node linkType: hard @@ -8510,14 +8497,14 @@ __metadata: ini: "npm:^1.3.5" kind-of: "npm:^6.0.2" which: "npm:^1.3.1" - checksum: 510f489fb68d1cc7060f276541709a0ee6d41356ef852de48f7906c648ac223082a1cc8fce86725ca6c0e032bcdc1189ae77b4744a624b29c34a9d0ece498269 + checksum: 10c0/510f489fb68d1cc7060f276541709a0ee6d41356ef852de48f7906c648ac223082a1cc8fce86725ca6c0e032bcdc1189ae77b4744a624b29c34a9d0ece498269 languageName: node linkType: hard "globals@npm:^11.1.0": version: 11.12.0 resolution: "globals@npm:11.12.0" - checksum: 758f9f258e7b19226bd8d4af5d3b0dcf7038780fb23d82e6f98932c44e239f884847f1766e8fa9cc5635ccb3204f7fa7314d4408dd4002a5e8ea827b4018f0a1 + checksum: 10c0/758f9f258e7b19226bd8d4af5d3b0dcf7038780fb23d82e6f98932c44e239f884847f1766e8fa9cc5635ccb3204f7fa7314d4408dd4002a5e8ea827b4018f0a1 languageName: node linkType: hard @@ -8526,7 +8513,7 @@ __metadata: resolution: "globals@npm:13.23.0" dependencies: type-fest: "npm:^0.20.2" - checksum: fc05e184b3be59bffa2580f28551a12a758c3a18df4be91444202982c76f13f52821ad54ffaf7d3f2a4d2498fdf54aeaca8d4540fd9e860a9edb09d34ef4c507 + checksum: 10c0/fc05e184b3be59bffa2580f28551a12a758c3a18df4be91444202982c76f13f52821ad54ffaf7d3f2a4d2498fdf54aeaca8d4540fd9e860a9edb09d34ef4c507 languageName: node linkType: hard @@ -8535,7 +8522,7 @@ __metadata: resolution: "globalthis@npm:1.0.3" dependencies: define-properties: "npm:^1.1.3" - checksum: 0db6e9af102a5254630351557ac15e6909bc7459d3e3f6b001e59fe784c96d31108818f032d9095739355a88467459e6488ff16584ee6250cd8c27dec05af4b0 + checksum: 10c0/0db6e9af102a5254630351557ac15e6909bc7459d3e3f6b001e59fe784c96d31108818f032d9095739355a88467459e6488ff16584ee6250cd8c27dec05af4b0 languageName: node linkType: hard @@ -8549,7 +8536,7 @@ __metadata: ignore: "npm:^5.2.0" merge2: "npm:^1.4.1" slash: "npm:^3.0.0" - checksum: b39511b4afe4bd8a7aead3a27c4ade2b9968649abab0a6c28b1a90141b96ca68ca5db1302f7c7bd29eab66bf51e13916b8e0a3d0ac08f75e1e84a39b35691189 + checksum: 10c0/b39511b4afe4bd8a7aead3a27c4ade2b9968649abab0a6c28b1a90141b96ca68ca5db1302f7c7bd29eab66bf51e13916b8e0a3d0ac08f75e1e84a39b35691189 languageName: node linkType: hard @@ -8562,14 +8549,14 @@ __metadata: object-assign: "npm:^4.0.1" pify: "npm:^2.0.0" pinkie-promise: "npm:^2.0.0" - checksum: 656ad1f0d02c6ef378c07589519ed3ec27fe988ea177195c05b8aff280320f3d67b91fa0baa6f7e49288f9bf1f92fc84f783a79ac3ed66278f3fa082e627ed84 + checksum: 10c0/656ad1f0d02c6ef378c07589519ed3ec27fe988ea177195c05b8aff280320f3d67b91fa0baa6f7e49288f9bf1f92fc84f783a79ac3ed66278f3fa082e627ed84 languageName: node linkType: hard "globjoin@npm:^0.1.4": version: 0.1.4 resolution: "globjoin@npm:0.1.4" - checksum: 236e991b48f1a9869fe2aa7bb5141fb1f32973940567a3c012f8ccb58c3c85ab78ce594d374fa819410fff3b48cfd24584d7ef726939f8a3c3772890e62ea16b + checksum: 10c0/236e991b48f1a9869fe2aa7bb5141fb1f32973940567a3c012f8ccb58c3c85ab78ce594d374fa819410fff3b48cfd24584d7ef726939f8a3c3772890e62ea16b languageName: node linkType: hard @@ -8578,21 +8565,21 @@ __metadata: resolution: "gopd@npm:1.0.1" dependencies: get-intrinsic: "npm:^1.1.3" - checksum: 505c05487f7944c552cee72087bf1567debb470d4355b1335f2c262d218ebbff805cd3715448fe29b4b380bae6912561d0467233e4165830efd28da241418c63 + checksum: 10c0/505c05487f7944c552cee72087bf1567debb470d4355b1335f2c262d218ebbff805cd3715448fe29b4b380bae6912561d0467233e4165830efd28da241418c63 languageName: node linkType: hard "graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": version: 4.2.11 resolution: "graceful-fs@npm:4.2.11" - checksum: 386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2 + checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2 languageName: node linkType: hard "graphemer@npm:^1.4.0": version: 1.4.0 resolution: "graphemer@npm:1.4.0" - checksum: e951259d8cd2e0d196c72ec711add7115d42eb9a8146c8eeda5b8d3ac91e5dd816b9cd68920726d9fd4490368e7ed86e9c423f40db87e2d8dfafa00fa17c3a31 + checksum: 10c0/e951259d8cd2e0d196c72ec711add7115d42eb9a8146c8eeda5b8d3ac91e5dd816b9cd68920726d9fd4490368e7ed86e9c423f40db87e2d8dfafa00fa17c3a31 languageName: node linkType: hard @@ -8601,67 +8588,67 @@ __metadata: resolution: "gzip-size@npm:6.0.0" dependencies: duplexer: "npm:^0.1.2" - checksum: 4ccb924626c82125897a997d1c84f2377846a6ef57fbee38f7c0e6b41387fba4d00422274440747b58008b5d60114bac2349c2908e9aba55188345281af40a3f + checksum: 10c0/4ccb924626c82125897a997d1c84f2377846a6ef57fbee38f7c0e6b41387fba4d00422274440747b58008b5d60114bac2349c2908e9aba55188345281af40a3f languageName: node linkType: hard "handle-thing@npm:^2.0.0": version: 2.0.1 resolution: "handle-thing@npm:2.0.1" - checksum: 7ae34ba286a3434f1993ebd1cc9c9e6b6d8ea672182db28b1afc0a7119229552fa7031e3e5f3cd32a76430ece4e94b7da6f12af2eb39d6239a7693e4bd63a998 + checksum: 10c0/7ae34ba286a3434f1993ebd1cc9c9e6b6d8ea672182db28b1afc0a7119229552fa7031e3e5f3cd32a76430ece4e94b7da6f12af2eb39d6239a7693e4bd63a998 languageName: node linkType: hard "has-bigints@npm:^1.0.1, has-bigints@npm:^1.0.2": version: 1.0.2 resolution: "has-bigints@npm:1.0.2" - checksum: 724eb1485bfa3cdff6f18d95130aa190561f00b3fcf9f19dc640baf8176b5917c143b81ec2123f8cddb6c05164a198c94b13e1377c497705ccc8e1a80306e83b + checksum: 10c0/724eb1485bfa3cdff6f18d95130aa190561f00b3fcf9f19dc640baf8176b5917c143b81ec2123f8cddb6c05164a198c94b13e1377c497705ccc8e1a80306e83b languageName: node linkType: hard "has-flag@npm:^3.0.0": version: 3.0.0 resolution: "has-flag@npm:3.0.0" - checksum: 1c6c83b14b8b1b3c25b0727b8ba3e3b647f99e9e6e13eb7322107261de07a4c1be56fc0d45678fc376e09772a3a1642ccdaf8fc69bdf123b6c086598397ce473 + checksum: 10c0/1c6c83b14b8b1b3c25b0727b8ba3e3b647f99e9e6e13eb7322107261de07a4c1be56fc0d45678fc376e09772a3a1642ccdaf8fc69bdf123b6c086598397ce473 languageName: node linkType: hard "has-flag@npm:^4.0.0": version: 4.0.0 resolution: "has-flag@npm:4.0.0" - checksum: 2e789c61b7888d66993e14e8331449e525ef42aac53c627cc53d1c3334e768bcb6abdc4f5f0de1478a25beec6f0bd62c7549058b7ac53e924040d4f301f02fd1 + checksum: 10c0/2e789c61b7888d66993e14e8331449e525ef42aac53c627cc53d1c3334e768bcb6abdc4f5f0de1478a25beec6f0bd62c7549058b7ac53e924040d4f301f02fd1 languageName: node linkType: hard -"has-property-descriptors@npm:^1.0.0": - version: 1.0.0 - resolution: "has-property-descriptors@npm:1.0.0" +"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.1, has-property-descriptors@npm:^1.0.2": + version: 1.0.2 + resolution: "has-property-descriptors@npm:1.0.2" dependencies: - get-intrinsic: "npm:^1.1.1" - checksum: d4ca882b6960d6257bd28baa3ddfa21f068d260411004a093b30ca357c740e11e985771c85216a6d1eef4161e862657f48c4758ec8ab515223b3895200ad164b + es-define-property: "npm:^1.0.0" + checksum: 10c0/253c1f59e80bb476cf0dde8ff5284505d90c3bdb762983c3514d36414290475fe3fd6f574929d84de2a8eec00d35cf07cb6776205ff32efd7c50719125f00236 languageName: node linkType: hard -"has-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "has-proto@npm:1.0.1" - checksum: c8a8fe411f810b23a564bd5546a8f3f0fff6f1b692740eb7a2fdc9df716ef870040806891e2f23ff4653f1083e3895bf12088703dd1a0eac3d9202d3a4768cd0 +"has-proto@npm:^1.0.1, has-proto@npm:^1.0.3": + version: 1.0.3 + resolution: "has-proto@npm:1.0.3" + checksum: 10c0/35a6989f81e9f8022c2f4027f8b48a552de714938765d019dbea6bb547bd49ce5010a3c7c32ec6ddac6e48fc546166a3583b128f5a7add8b058a6d8b4afec205 languageName: node linkType: hard "has-symbols@npm:^1.0.1, has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": version: 1.0.3 resolution: "has-symbols@npm:1.0.3" - checksum: e6922b4345a3f37069cdfe8600febbca791c94988c01af3394d86ca3360b4b93928bbf395859158f88099cb10b19d98e3bbab7c9ff2c1bd09cf665ee90afa2c3 + checksum: 10c0/e6922b4345a3f37069cdfe8600febbca791c94988c01af3394d86ca3360b4b93928bbf395859158f88099cb10b19d98e3bbab7c9ff2c1bd09cf665ee90afa2c3 languageName: node linkType: hard -"has-tostringtag@npm:^1.0.0": - version: 1.0.0 - resolution: "has-tostringtag@npm:1.0.0" +"has-tostringtag@npm:^1.0.0, has-tostringtag@npm:^1.0.1, has-tostringtag@npm:^1.0.2": + version: 1.0.2 + resolution: "has-tostringtag@npm:1.0.2" dependencies: - has-symbols: "npm:^1.0.2" - checksum: 1cdba76b7d13f65198a92b8ca1560ba40edfa09e85d182bf436d928f3588a9ebd260451d569f0ed1b849c4bf54f49c862aa0d0a77f9552b1855bb6deb526c011 + has-symbols: "npm:^1.0.3" + checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c languageName: node linkType: hard @@ -8672,7 +8659,7 @@ __metadata: get-value: "npm:^2.0.3" has-values: "npm:^0.1.4" isobject: "npm:^2.0.0" - checksum: 7a7c2e9d07bc9742c81806150adb154d149bc6155267248c459cd1ce2a64b0759980d26213260e4b7599c8a3754551179f155ded88d0533a0d2bc7bc29028432 + checksum: 10c0/7a7c2e9d07bc9742c81806150adb154d149bc6155267248c459cd1ce2a64b0759980d26213260e4b7599c8a3754551179f155ded88d0533a0d2bc7bc29028432 languageName: node linkType: hard @@ -8683,14 +8670,14 @@ __metadata: get-value: "npm:^2.0.6" has-values: "npm:^1.0.0" isobject: "npm:^3.0.0" - checksum: 17cdccaf50f8aac80a109dba2e2ee5e800aec9a9d382ef9deab66c56b34269e4c9ac720276d5ffa722764304a1180ae436df077da0dd05548cfae0209708ba4d + checksum: 10c0/17cdccaf50f8aac80a109dba2e2ee5e800aec9a9d382ef9deab66c56b34269e4c9ac720276d5ffa722764304a1180ae436df077da0dd05548cfae0209708ba4d languageName: node linkType: hard "has-values@npm:^0.1.4": version: 0.1.4 resolution: "has-values@npm:0.1.4" - checksum: a8f00ad862c20289798c35243d5bd0b0a97dd44b668c2204afe082e0265f2d0bf3b89fc8cc0ef01a52b49f10aa35cf85c336ee3a5f1cac96ed490f5e901cdbf2 + checksum: 10c0/a8f00ad862c20289798c35243d5bd0b0a97dd44b668c2204afe082e0265f2d0bf3b89fc8cc0ef01a52b49f10aa35cf85c336ee3a5f1cac96ed490f5e901cdbf2 languageName: node linkType: hard @@ -8700,14 +8687,7 @@ __metadata: dependencies: is-number: "npm:^3.0.0" kind-of: "npm:^4.0.0" - checksum: a6f2a1cc6b2e43eacc68e62e71ad6890def7f4b13d2ef06b4ad3ee156c23e470e6df144b9b467701908e17633411f1075fdff0cab45fb66c5e0584d89b25f35e - languageName: node - linkType: hard - -"has@npm:^1.0.3": - version: 1.0.4 - resolution: "has@npm:1.0.4" - checksum: 82c1220573dc1f0a014a5d6189ae52a1f820f99dfdc00323c3a725b5002dcb7f04e44f460fea7af068474b2dd7c88cbe1846925c84017be9e31e1708936d305b + checksum: 10c0/a6f2a1cc6b2e43eacc68e62e71ad6890def7f4b13d2ef06b4ad3ee156c23e470e6df144b9b467701908e17633411f1075fdff0cab45fb66c5e0584d89b25f35e languageName: node linkType: hard @@ -8718,7 +8698,7 @@ __metadata: inherits: "npm:^2.0.4" readable-stream: "npm:^3.6.0" safe-buffer: "npm:^5.2.0" - checksum: 663eabcf4173326fbb65a1918a509045590a26cc7e0964b754eef248d281305c6ec9f6b31cb508d02ffca383ab50028180ce5aefe013e942b44a903ac8dc80d0 + checksum: 10c0/663eabcf4173326fbb65a1918a509045590a26cc7e0964b754eef248d281305c6ec9f6b31cb508d02ffca383ab50028180ce5aefe013e942b44a903ac8dc80d0 languageName: node linkType: hard @@ -8728,23 +8708,23 @@ __metadata: dependencies: inherits: "npm:^2.0.3" minimalistic-assert: "npm:^1.0.1" - checksum: 41ada59494eac5332cfc1ce6b7ebdd7b88a3864a6d6b08a3ea8ef261332ed60f37f10877e0c825aaa4bddebf164fbffa618286aeeec5296675e2671cbfa746c4 + checksum: 10c0/41ada59494eac5332cfc1ce6b7ebdd7b88a3864a6d6b08a3ea8ef261332ed60f37f10877e0c825aaa4bddebf164fbffa618286aeeec5296675e2671cbfa746c4 languageName: node linkType: hard -"hasown@npm:^2.0.0": - version: 2.0.0 - resolution: "hasown@npm:2.0.0" +"hasown@npm:^2.0.0, hasown@npm:^2.0.1": + version: 2.0.1 + resolution: "hasown@npm:2.0.1" dependencies: function-bind: "npm:^1.1.2" - checksum: 5d415b114f410661208c95e7ab4879f1cc2765b8daceff4dc8718317d1cb7b9ffa7c5d1eafd9a4389c9aab7445d6ea88e05f3096cb1e529618b55304956b87fc + checksum: 10c0/9e27e70e8e4204f4124c8f99950d1ba2b1f5174864fd39ff26da190f9ea6488c1b3927dcc64981c26d1f637a971783c9489d62c829d393ea509e6f1ba20370bb languageName: node linkType: hard "help-me@npm:^5.0.0": version: 5.0.0 resolution: "help-me@npm:5.0.0" - checksum: 054c0e2e9ae2231c85ab5e04f75109b9d068ffcc54e58fb22079822a5ace8ff3d02c66fd45379c902ad5ab825e5d2e1451fcc2f7eab1eb49e7d488133ba4cacb + checksum: 10c0/054c0e2e9ae2231c85ab5e04f75109b9d068ffcc54e58fb22079822a5ace8ff3d02c66fd45379c902ad5ab825e5d2e1451fcc2f7eab1eb49e7d488133ba4cacb languageName: node linkType: hard @@ -8758,7 +8738,7 @@ __metadata: tiny-invariant: "npm:^1.0.2" tiny-warning: "npm:^1.0.0" value-equal: "npm:^1.0.1" - checksum: 35377694e4f10f2cf056a9cb1a8ee083e04e4b4717a63baeee4afd565658a62c7e73700bf9e82aa53dbe1ec94e0a25a83c080d63bad8ee6b274a98d2fbc5ed4c + checksum: 10c0/35377694e4f10f2cf056a9cb1a8ee083e04e4b4717a63baeee4afd565658a62c7e73700bf9e82aa53dbe1ec94e0a25a83c080d63bad8ee6b274a98d2fbc5ed4c languageName: node linkType: hard @@ -8769,7 +8749,7 @@ __metadata: hash.js: "npm:^1.0.3" minimalistic-assert: "npm:^1.0.0" minimalistic-crypto-utils: "npm:^1.0.1" - checksum: f3d9ba31b40257a573f162176ac5930109816036c59a09f901eb2ffd7e5e705c6832bedfff507957125f2086a0ab8f853c0df225642a88bf1fcaea945f20600d + checksum: 10c0/f3d9ba31b40257a573f162176ac5930109816036c59a09f901eb2ffd7e5e705c6832bedfff507957125f2086a0ab8f853c0df225642a88bf1fcaea945f20600d languageName: node linkType: hard @@ -8778,7 +8758,7 @@ __metadata: resolution: "hoist-non-react-statics@npm:3.3.2" dependencies: react-is: "npm:^16.7.0" - checksum: fe0889169e845d738b59b64badf5e55fa3cf20454f9203d1eb088df322d49d4318df774828e789898dcb280e8a5521bb59b3203385662ca5e9218a6ca5820e74 + checksum: 10c0/fe0889169e845d738b59b64badf5e55fa3cf20454f9203d1eb088df322d49d4318df774828e789898dcb280e8a5521bb59b3203385662ca5e9218a6ca5820e74 languageName: node linkType: hard @@ -8787,7 +8767,7 @@ __metadata: resolution: "homedir-polyfill@npm:1.0.3" dependencies: parse-passwd: "npm:^1.0.0" - checksum: 3c099844f94b8b438f124bd5698bdcfef32b2d455115fb8050d7148e7f7b95fc89ba9922586c491f0e1cdebf437b1053c84ecddb8d596e109e9ac69c5b4a9e27 + checksum: 10c0/3c099844f94b8b438f124bd5698bdcfef32b2d455115fb8050d7148e7f7b95fc89ba9922586c491f0e1cdebf437b1053c84ecddb8d596e109e9ac69c5b4a9e27 languageName: node linkType: hard @@ -8799,7 +8779,7 @@ __metadata: obuf: "npm:^1.0.0" readable-stream: "npm:^2.0.1" wbuf: "npm:^1.1.0" - checksum: 55b9e824430bab82a19d079cb6e33042d7d0640325678c9917fcc020c61d8a08ca671b6c942c7f0aae9bb6e4b67ffb50734a72f9e21d66407c3138c1983b70f0 + checksum: 10c0/55b9e824430bab82a19d079cb6e33042d7d0640325678c9917fcc020c61d8a08ca671b6c942c7f0aae9bb6e4b67ffb50734a72f9e21d66407c3138c1983b70f0 languageName: node linkType: hard @@ -8808,7 +8788,7 @@ __metadata: resolution: "html-encoding-sniffer@npm:3.0.0" dependencies: whatwg-encoding: "npm:^2.0.0" - checksum: b17b3b0fb5d061d8eb15121c3b0b536376c3e295ecaf09ba48dd69c6b6c957839db124fe1e2b3f11329753a4ee01aa7dedf63b7677999e86da17fbbdd82c5386 + checksum: 10c0/b17b3b0fb5d061d8eb15121c3b0b536376c3e295ecaf09ba48dd69c6b6c957839db124fe1e2b3f11329753a4ee01aa7dedf63b7677999e86da17fbbdd82c5386 languageName: node linkType: hard @@ -8817,42 +8797,42 @@ __metadata: resolution: "html-encoding-sniffer@npm:4.0.0" dependencies: whatwg-encoding: "npm:^3.1.1" - checksum: 523398055dc61ac9b34718a719cb4aa691e4166f29187e211e1607de63dc25ac7af52ca7c9aead0c4b3c0415ffecb17326396e1202e2e86ff4bca4c0ee4c6140 + checksum: 10c0/523398055dc61ac9b34718a719cb4aa691e4166f29187e211e1607de63dc25ac7af52ca7c9aead0c4b3c0415ffecb17326396e1202e2e86ff4bca4c0ee4c6140 languageName: node linkType: hard "html-entities@npm:^1.3.1": version: 1.4.0 resolution: "html-entities@npm:1.4.0" - checksum: eb2de616fb5948e681157805687672ea90e67c8a4f21a3215888ab422a984cab61fec96860708dca3bde0ae52577515683c8e28157ac8637220bb6a57a031b85 + checksum: 10c0/eb2de616fb5948e681157805687672ea90e67c8a4f21a3215888ab422a984cab61fec96860708dca3bde0ae52577515683c8e28157ac8637220bb6a57a031b85 languageName: node linkType: hard "html-escaper@npm:^2.0.0, html-escaper@npm:^2.0.2": version: 2.0.2 resolution: "html-escaper@npm:2.0.2" - checksum: 208e8a12de1a6569edbb14544f4567e6ce8ecc30b9394fcaa4e7bb1e60c12a7c9a1ed27e31290817157e8626f3a4f29e76c8747030822eb84a6abb15c255f0a0 + checksum: 10c0/208e8a12de1a6569edbb14544f4567e6ce8ecc30b9394fcaa4e7bb1e60c12a7c9a1ed27e31290817157e8626f3a4f29e76c8747030822eb84a6abb15c255f0a0 languageName: node linkType: hard "html-tags@npm:^3.3.1": version: 3.3.1 resolution: "html-tags@npm:3.3.1" - checksum: 680165e12baa51bad7397452d247dbcc5a5c29dac0e6754b1187eee3bf26f514bc1907a431dd2f7eb56207611ae595ee76a0acc8eaa0d931e72c791dd6463d79 + checksum: 10c0/680165e12baa51bad7397452d247dbcc5a5c29dac0e6754b1187eee3bf26f514bc1907a431dd2f7eb56207611ae595ee76a0acc8eaa0d931e72c791dd6463d79 languageName: node linkType: hard "http-cache-semantics@npm:^4.1.1": version: 4.1.1 resolution: "http-cache-semantics@npm:4.1.1" - checksum: ce1319b8a382eb3cbb4a37c19f6bfe14e5bb5be3d09079e885e8c513ab2d3cd9214902f8a31c9dc4e37022633ceabfc2d697405deeaf1b8f3552bb4ed996fdfc + checksum: 10c0/ce1319b8a382eb3cbb4a37c19f6bfe14e5bb5be3d09079e885e8c513ab2d3cd9214902f8a31c9dc4e37022633ceabfc2d697405deeaf1b8f3552bb4ed996fdfc languageName: node linkType: hard "http-deceiver@npm:^1.2.7": version: 1.2.7 resolution: "http-deceiver@npm:1.2.7" - checksum: 8bb9b716f5fc55f54a451da7f49b9c695c3e45498a789634daec26b61e4add7c85613a4a9e53726c39d09de7a163891ecd6eb5809adb64500a840fd86fe81d03 + checksum: 10c0/8bb9b716f5fc55f54a451da7f49b9c695c3e45498a789634daec26b61e4add7c85613a4a9e53726c39d09de7a163891ecd6eb5809adb64500a840fd86fe81d03 languageName: node linkType: hard @@ -8865,7 +8845,7 @@ __metadata: setprototypeof: "npm:1.2.0" statuses: "npm:2.0.1" toidentifier: "npm:1.0.1" - checksum: fc6f2715fe188d091274b5ffc8b3657bd85c63e969daa68ccb77afb05b071a4b62841acb7a21e417b5539014dff2ebf9550f0b14a9ff126f2734a7c1387f8e19 + checksum: 10c0/fc6f2715fe188d091274b5ffc8b3657bd85c63e969daa68ccb77afb05b071a4b62841acb7a21e417b5539014dff2ebf9550f0b14a9ff126f2734a7c1387f8e19 languageName: node linkType: hard @@ -8877,21 +8857,21 @@ __metadata: inherits: "npm:2.0.3" setprototypeof: "npm:1.1.0" statuses: "npm:>= 1.4.0 < 2" - checksum: 17ec4046ee974477778bfdd525936c254b872054703ec2caa4d6f099566b8adade636ae6aeeacb39302c5cd6e28fb407ebd937f500f5010d0b6850750414ff78 + checksum: 10c0/17ec4046ee974477778bfdd525936c254b872054703ec2caa4d6f099566b8adade636ae6aeeacb39302c5cd6e28fb407ebd937f500f5010d0b6850750414ff78 languageName: node linkType: hard "http-link-header@npm:^1.1.1": - version: 1.1.1 - resolution: "http-link-header@npm:1.1.1" - checksum: a97b679e01e9f0860c823917c2c6637e3f0c06aa6cc0de4da98e1a433690e19b21323595889aa9347618134600bc7e2b0ff3cbeea7e4cea2f8cdae65dd9cc7f1 + version: 1.1.2 + resolution: "http-link-header@npm:1.1.2" + checksum: 10c0/d4ae44b912dd1f5a37c11438878b51635a7a8f9228bf004b2ecf9e1d23a9d912942b02e5f41695bbe9fa93ab380bdd10c58db717c3531c705116e61014aba3f0 languageName: node linkType: hard "http-parser-js@npm:>=0.5.1": version: 0.5.8 resolution: "http-parser-js@npm:0.5.8" - checksum: 4ed89f812c44f84c4ae5d43dd3a0c47942b875b63be0ed2ccecbe6b0018af867d806495fc6e12474aff868721163699c49246585bddea4f0ecc6d2b02e19faf1 + checksum: 10c0/4ed89f812c44f84c4ae5d43dd3a0c47942b875b63be0ed2ccecbe6b0018af867d806495fc6e12474aff868721163699c49246585bddea4f0ecc6d2b02e19faf1 languageName: node linkType: hard @@ -8902,7 +8882,7 @@ __metadata: "@tootallnate/once": "npm:2" agent-base: "npm:6" debug: "npm:4" - checksum: 32a05e413430b2c1e542e5c74b38a9f14865301dd69dff2e53ddb684989440e3d2ce0c4b64d25eb63cf6283e6265ff979a61cf93e3ca3d23047ddfdc8df34a32 + checksum: 10c0/32a05e413430b2c1e542e5c74b38a9f14865301dd69dff2e53ddb684989440e3d2ce0c4b64d25eb63cf6283e6265ff979a61cf93e3ca3d23047ddfdc8df34a32 languageName: node linkType: hard @@ -8912,7 +8892,7 @@ __metadata: dependencies: agent-base: "npm:^7.1.0" debug: "npm:^4.3.4" - checksum: a11574ff39436cee3c7bc67f259444097b09474605846ddd8edf0bf4ad8644be8533db1aa463426e376865047d05dc22755e638632819317c0c2f1b2196657c8 + checksum: 10c0/a11574ff39436cee3c7bc67f259444097b09474605846ddd8edf0bf4ad8644be8533db1aa463426e376865047d05dc22755e638632819317c0c2f1b2196657c8 languageName: node linkType: hard @@ -8924,7 +8904,7 @@ __metadata: is-glob: "npm:^4.0.0" lodash: "npm:^4.17.11" micromatch: "npm:^3.1.10" - checksum: b0c466dd54fac365e93f43138cba256063040557ae24fc92944b06fac35e879b882085e36fe276e48f5a27848b1600cd3ae59a845cb18714f5c0f205523783b1 + checksum: 10c0/b0c466dd54fac365e93f43138cba256063040557ae24fc92944b06fac35e879b882085e36fe276e48f5a27848b1600cd3ae59a845cb18714f5c0f205523783b1 languageName: node linkType: hard @@ -8935,14 +8915,14 @@ __metadata: eventemitter3: "npm:^4.0.0" follow-redirects: "npm:^1.0.0" requires-port: "npm:^1.0.0" - checksum: 148dfa700a03fb421e383aaaf88ac1d94521dfc34072f6c59770528c65250983c2e4ec996f2f03aa9f3fe46cd1270a593126068319311e3e8d9e610a37533e94 + checksum: 10c0/148dfa700a03fb421e383aaaf88ac1d94521dfc34072f6c59770528c65250983c2e4ec996f2f03aa9f3fe46cd1270a593126068319311e3e8d9e610a37533e94 languageName: node linkType: hard "https-browserify@npm:^1.0.0": version: 1.0.0 resolution: "https-browserify@npm:1.0.0" - checksum: e17b6943bc24ea9b9a7da5714645d808670af75a425f29baffc3284962626efdc1eb3aa9bbffaa6e64028a6ad98af5b09fabcb454a8f918fb686abfdc9e9b8ae + checksum: 10c0/e17b6943bc24ea9b9a7da5714645d808670af75a425f29baffc3284962626efdc1eb3aa9bbffaa6e64028a6ad98af5b09fabcb454a8f918fb686abfdc9e9b8ae languageName: node linkType: hard @@ -8952,7 +8932,7 @@ __metadata: dependencies: agent-base: "npm:6" debug: "npm:4" - checksum: 6dd639f03434003577c62b27cafdb864784ef19b2de430d8ae2a1d45e31c4fd60719e5637b44db1a88a046934307da7089e03d6089ec3ddacc1189d8de8897d1 + checksum: 10c0/6dd639f03434003577c62b27cafdb864784ef19b2de430d8ae2a1d45e31c4fd60719e5637b44db1a88a046934307da7089e03d6089ec3ddacc1189d8de8897d1 languageName: node linkType: hard @@ -8962,37 +8942,30 @@ __metadata: dependencies: agent-base: "npm:^7.0.2" debug: "npm:4" - checksum: 7735eb90073db087e7e79312e3d97c8c04baf7ea7ca7b013382b6a45abbaa61b281041a98f4e13c8c80d88f843785bcc84ba189165b4b4087b1e3496ba656d77 + checksum: 10c0/7735eb90073db087e7e79312e3d97c8c04baf7ea7ca7b013382b6a45abbaa61b281041a98f4e13c8c80d88f843785bcc84ba189165b4b4087b1e3496ba656d77 languageName: node linkType: hard "human-signals@npm:^2.1.0": version: 2.1.0 resolution: "human-signals@npm:2.1.0" - checksum: 695edb3edfcfe9c8b52a76926cd31b36978782062c0ed9b1192b36bebc75c4c87c82e178dfcb0ed0fc27ca59d434198aac0bd0be18f5781ded775604db22304a - languageName: node - linkType: hard - -"human-signals@npm:^4.3.0": - version: 4.3.1 - resolution: "human-signals@npm:4.3.1" - checksum: 40498b33fe139f5cc4ef5d2f95eb1803d6318ac1b1c63eaf14eeed5484d26332c828de4a5a05676b6c83d7b9e57727c59addb4b1dea19cb8d71e83689e5b336c + checksum: 10c0/695edb3edfcfe9c8b52a76926cd31b36978782062c0ed9b1192b36bebc75c4c87c82e178dfcb0ed0fc27ca59d434198aac0bd0be18f5781ded775604db22304a languageName: node linkType: hard "human-signals@npm:^5.0.0": version: 5.0.0 resolution: "human-signals@npm:5.0.0" - checksum: 5a9359073fe17a8b58e5a085e9a39a950366d9f00217c4ff5878bd312e09d80f460536ea6a3f260b5943a01fe55c158d1cea3fc7bee3d0520aeef04f6d915c82 + checksum: 10c0/5a9359073fe17a8b58e5a085e9a39a950366d9f00217c4ff5878bd312e09d80f460536ea6a3f260b5943a01fe55c158d1cea3fc7bee3d0520aeef04f6d915c82 languageName: node linkType: hard -"husky@npm:^8.0.3": - version: 8.0.3 - resolution: "husky@npm:8.0.3" +"husky@npm:^9.0.11": + version: 9.0.11 + resolution: "husky@npm:9.0.11" bin: - husky: lib/bin.js - checksum: 6722591771c657b91a1abb082e07f6547eca79144d678e586828ae806499d90dce2a6aee08b66183fd8b085f19d20e0990a2ad396961746b4c8bd5bdb619d668 + husky: bin.mjs + checksum: 10c0/2c787dcf74a837fc9a4fea7da907509d4bd9a289f4ea10ecc9d86279e4d4542b0f5f6443a619bccae19e265f2677172cc2b86aae5c932a35a330cc227d914605 languageName: node linkType: hard @@ -9001,7 +8974,7 @@ __metadata: resolution: "iconv-lite@npm:0.4.24" dependencies: safer-buffer: "npm:>= 2.1.2 < 3" - checksum: c6886a24cc00f2a059767440ec1bc00d334a89f250db8e0f7feb4961c8727118457e27c495ba94d082e51d3baca378726cd110aaf7ded8b9bbfd6a44760cf1d4 + checksum: 10c0/c6886a24cc00f2a059767440ec1bc00d334a89f250db8e0f7feb4961c8727118457e27c495ba94d082e51d3baca378726cd110aaf7ded8b9bbfd6a44760cf1d4 languageName: node linkType: hard @@ -9010,7 +8983,7 @@ __metadata: resolution: "iconv-lite@npm:0.6.3" dependencies: safer-buffer: "npm:>= 2.1.2 < 3.0.0" - checksum: 98102bc66b33fcf5ac044099d1257ba0b7ad5e3ccd3221f34dd508ab4070edff183276221684e1e0555b145fce0850c9f7d2b60a9fcac50fbb4ea0d6e845a3b1 + checksum: 10c0/98102bc66b33fcf5ac044099d1257ba0b7ad5e3ccd3221f34dd508ab4070edff183276221684e1e0555b145fce0850c9f7d2b60a9fcac50fbb4ea0d6e845a3b1 languageName: node linkType: hard @@ -9019,56 +8992,56 @@ __metadata: resolution: "icss-utils@npm:5.1.0" peerDependencies: postcss: ^8.1.0 - checksum: 39c92936fabd23169c8611d2b5cc39e39d10b19b0d223352f20a7579f75b39d5f786114a6b8fc62bee8c5fed59ba9e0d38f7219a4db383e324fb3061664b043d + checksum: 10c0/39c92936fabd23169c8611d2b5cc39e39d10b19b0d223352f20a7579f75b39d5f786114a6b8fc62bee8c5fed59ba9e0d38f7219a4db383e324fb3061664b043d languageName: node linkType: hard "idb-keyval@npm:^3.2.0": version: 3.2.0 resolution: "idb-keyval@npm:3.2.0" - checksum: 9b1f65d5f08630ef444a89334370c394175b1543f157621b36a3bc5e5208946f3f0ab5d5e24c74e81f2ef54b55b742b4e5b439c561f62695ffb69a06b0bce8e1 + checksum: 10c0/9b1f65d5f08630ef444a89334370c394175b1543f157621b36a3bc5e5208946f3f0ab5d5e24c74e81f2ef54b55b742b4e5b439c561f62695ffb69a06b0bce8e1 languageName: node linkType: hard "idb@npm:^7.0.1": version: 7.1.1 resolution: "idb@npm:7.1.1" - checksum: 72418e4397638797ee2089f97b45fc29f937b830bc0eb4126f4a9889ecf10320ceacf3a177fe5d7ffaf6b4fe38b20bbd210151549bfdc881db8081eed41c870d + checksum: 10c0/72418e4397638797ee2089f97b45fc29f937b830bc0eb4126f4a9889ecf10320ceacf3a177fe5d7ffaf6b4fe38b20bbd210151549bfdc881db8081eed41c870d languageName: node linkType: hard "ieee754@npm:^1.1.4, ieee754@npm:^1.2.1": version: 1.2.1 resolution: "ieee754@npm:1.2.1" - checksum: b0782ef5e0935b9f12883a2e2aa37baa75da6e66ce6515c168697b42160807d9330de9a32ec1ed73149aea02e0d822e572bca6f1e22bdcbd2149e13b050b17bb + checksum: 10c0/b0782ef5e0935b9f12883a2e2aa37baa75da6e66ce6515c168697b42160807d9330de9a32ec1ed73149aea02e0d822e572bca6f1e22bdcbd2149e13b050b17bb languageName: node linkType: hard "ignore@npm:^5.2.0, ignore@npm:^5.2.4, ignore@npm:^5.3.0": version: 5.3.0 resolution: "ignore@npm:5.3.0" - checksum: dc06bea5c23aae65d0725a957a0638b57e235ae4568dda51ca142053ed2c352de7e3bc93a69b2b32ac31966a1952e9a93c5ef2e2ab7c6b06aef9808f6b55b571 + checksum: 10c0/dc06bea5c23aae65d0725a957a0638b57e235ae4568dda51ca142053ed2c352de7e3bc93a69b2b32ac31966a1952e9a93c5ef2e2ab7c6b06aef9808f6b55b571 languageName: node linkType: hard "immer@npm:^10.0.3": version: 10.0.3 resolution: "immer@npm:10.0.3" - checksum: 282a4f8479a40f7d12b2b3243c095e3e892bf99058e2ffcdd6b8e9fd143e6a90f2717ab9b6c8b97c927ffb8054465c8f647056f41660dbfd672e240cf1063503 + checksum: 10c0/282a4f8479a40f7d12b2b3243c095e3e892bf99058e2ffcdd6b8e9fd143e6a90f2717ab9b6c8b97c927ffb8054465c8f647056f41660dbfd672e240cf1063503 languageName: node linkType: hard "immutable@npm:^3.8.2": version: 3.8.2 resolution: "immutable@npm:3.8.2" - checksum: fb6a2999ad3bda9e51741721e42547076dd492635ee4df9241224055fe953ec843583a700088cc4915f23dc326e5084f4e17f1bbd7388c3e872ef5a242e0ac5e + checksum: 10c0/fb6a2999ad3bda9e51741721e42547076dd492635ee4df9241224055fe953ec843583a700088cc4915f23dc326e5084f4e17f1bbd7388c3e872ef5a242e0ac5e languageName: node linkType: hard "immutable@npm:^4.0.0, immutable@npm:^4.0.0-rc.1, immutable@npm:^4.3.0": version: 4.3.5 resolution: "immutable@npm:4.3.5" - checksum: 63d2d7908241a955d18c7822fd2215b6e89ff5a1a33cc72cd475b013cbbdef7a705aa5170a51ce9f84a57f62fdddfaa34e7b5a14b33d8a43c65cc6a881d6e894 + checksum: 10c0/63d2d7908241a955d18c7822fd2215b6e89ff5a1a33cc72cd475b013cbbdef7a705aa5170a51ce9f84a57f62fdddfaa34e7b5a14b33d8a43c65cc6a881d6e894 languageName: node linkType: hard @@ -9078,7 +9051,7 @@ __metadata: dependencies: parent-module: "npm:^1.0.0" resolve-from: "npm:^4.0.0" - checksum: 7f882953aa6b740d1f0e384d0547158bc86efbf2eea0f1483b8900a6f65c5a5123c2cf09b0d542cc419d0b98a759ecaeb394237e97ea427f2da221dc3cd80cc3 + checksum: 10c0/7f882953aa6b740d1f0e384d0547158bc86efbf2eea0f1483b8900a6f65c5a5123c2cf09b0d542cc419d0b98a759ecaeb394237e97ea427f2da221dc3cd80cc3 languageName: node linkType: hard @@ -9090,7 +9063,7 @@ __metadata: resolve-cwd: "npm:^2.0.0" bin: import-local-fixture: fixtures/cli.js - checksum: 68f2d9203d3760a836db97e917ea1793e865e0c5dd3749380ccaf52be907553febb0828f14c3169e66ba1a458d931b3cc5597cc9b623c7f79b395b0c3892601e + checksum: 10c0/68f2d9203d3760a836db97e917ea1793e865e0c5dd3749380ccaf52be907553febb0828f14c3169e66ba1a458d931b3cc5597cc9b623c7f79b395b0c3892601e languageName: node linkType: hard @@ -9102,7 +9075,7 @@ __metadata: resolve-cwd: "npm:^3.0.0" bin: import-local-fixture: fixtures/cli.js - checksum: c67ecea72f775fe8684ca3d057e54bdb2ae28c14bf261d2607c269c18ea0da7b730924c06262eca9aed4b8ab31e31d65bc60b50e7296c85908a56e2f7d41ecd2 + checksum: 10c0/c67ecea72f775fe8684ca3d057e54bdb2ae28c14bf261d2607c269c18ea0da7b730924c06262eca9aed4b8ab31e31d65bc60b50e7296c85908a56e2f7d41ecd2 languageName: node linkType: hard @@ -9116,28 +9089,28 @@ __metadata: strip-comments: "npm:^2.0.1" peerDependencies: webpack: ^4.0.0 || ^5.0.0 - checksum: b77a0016808ebe6e5eec083a3afb94879b03653922dd4bc2b9c9aae13093e804d4089f7da171d1395f78d357de581ca3a4aea9100293dcbe02cf6c1e861085bf + checksum: 10c0/b77a0016808ebe6e5eec083a3afb94879b03653922dd4bc2b9c9aae13093e804d4089f7da171d1395f78d357de581ca3a4aea9100293dcbe02cf6c1e861085bf languageName: node linkType: hard "imurmurhash@npm:^0.1.4": version: 0.1.4 resolution: "imurmurhash@npm:0.1.4" - checksum: 8b51313850dd33605c6c9d3fd9638b714f4c4c40250cff658209f30d40da60f78992fb2df5dabee4acf589a6a82bbc79ad5486550754bd9ec4e3fc0d4a57d6a6 + checksum: 10c0/8b51313850dd33605c6c9d3fd9638b714f4c4c40250cff658209f30d40da60f78992fb2df5dabee4acf589a6a82bbc79ad5486550754bd9ec4e3fc0d4a57d6a6 languageName: node linkType: hard "indent-string@npm:^4.0.0": version: 4.0.0 resolution: "indent-string@npm:4.0.0" - checksum: 1e1904ddb0cb3d6cce7cd09e27a90184908b7a5d5c21b92e232c93579d314f0b83c246ffb035493d0504b1e9147ba2c9b21df0030f48673fba0496ecd698161f + checksum: 10c0/1e1904ddb0cb3d6cce7cd09e27a90184908b7a5d5c21b92e232c93579d314f0b83c246ffb035493d0504b1e9147ba2c9b21df0030f48673fba0496ecd698161f languageName: node linkType: hard "infer-owner@npm:^1.0.4": version: 1.0.4 resolution: "infer-owner@npm:1.0.4" - checksum: a7b241e3149c26e37474e3435779487f42f36883711f198c45794703c7556bc38af224088bd4d1a221a45b8208ae2c2bcf86200383621434d0c099304481c5b9 + checksum: 10c0/a7b241e3149c26e37474e3435779487f42f36883711f198c45794703c7556bc38af224088bd4d1a221a45b8208ae2c2bcf86200383621434d0c099304481c5b9 languageName: node linkType: hard @@ -9147,35 +9120,35 @@ __metadata: dependencies: once: "npm:^1.3.0" wrappy: "npm:1" - checksum: 7faca22584600a9dc5b9fca2cd5feb7135ac8c935449837b315676b4c90aa4f391ec4f42240178244b5a34e8bede1948627fda392ca3191522fc46b34e985ab2 + checksum: 10c0/7faca22584600a9dc5b9fca2cd5feb7135ac8c935449837b315676b4c90aa4f391ec4f42240178244b5a34e8bede1948627fda392ca3191522fc46b34e985ab2 languageName: node linkType: hard "inherits@npm:2, inherits@npm:2.0.4, inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.1, inherits@npm:~2.0.3": version: 2.0.4 resolution: "inherits@npm:2.0.4" - checksum: 4e531f648b29039fb7426fb94075e6545faa1eb9fe83c29f0b6d9e7263aceb4289d2d4557db0d428188eeb449cc7c5e77b0a0b2c4e248ff2a65933a0dee49ef2 + checksum: 10c0/4e531f648b29039fb7426fb94075e6545faa1eb9fe83c29f0b6d9e7263aceb4289d2d4557db0d428188eeb449cc7c5e77b0a0b2c4e248ff2a65933a0dee49ef2 languageName: node linkType: hard "inherits@npm:2.0.1": version: 2.0.1 resolution: "inherits@npm:2.0.1" - checksum: bfc7b37c21a2cddb272adc65b053b1716612d408bb2c9a4e5c32679dc2b08032aadd67880c405be3dff060a62e45b353fc3d9fa79a3067ad7a3deb6a283cc5c6 + checksum: 10c0/bfc7b37c21a2cddb272adc65b053b1716612d408bb2c9a4e5c32679dc2b08032aadd67880c405be3dff060a62e45b353fc3d9fa79a3067ad7a3deb6a283cc5c6 languageName: node linkType: hard "inherits@npm:2.0.3": version: 2.0.3 resolution: "inherits@npm:2.0.3" - checksum: 6e56402373149ea076a434072671f9982f5fad030c7662be0332122fe6c0fa490acb3cc1010d90b6eff8d640b1167d77674add52dfd1bb85d545cf29e80e73e7 + checksum: 10c0/6e56402373149ea076a434072671f9982f5fad030c7662be0332122fe6c0fa490acb3cc1010d90b6eff8d640b1167d77674add52dfd1bb85d545cf29e80e73e7 languageName: node linkType: hard "ini@npm:^1.3.4, ini@npm:^1.3.5": version: 1.3.8 resolution: "ini@npm:1.3.8" - checksum: ec93838d2328b619532e4f1ff05df7909760b6f66d9c9e2ded11e5c1897d6f2f9980c54dd638f88654b00919ce31e827040631eab0a3969e4d1abefa0719516a + checksum: 10c0/ec93838d2328b619532e4f1ff05df7909760b6f66d9c9e2ded11e5c1897d6f2f9980c54dd638f88654b00919ce31e827040631eab0a3969e4d1abefa0719516a languageName: node linkType: hard @@ -9185,32 +9158,32 @@ __metadata: dependencies: default-gateway: "npm:^4.2.0" ipaddr.js: "npm:^1.9.0" - checksum: c0ad0b95981c8f21a2d4f115212af38c894a6a6d0a2a3cac4d73d1b5beb214fdfce7b5e66f087e8d575977d4df630886914412d1bc9c2678e5870210154ad65b + checksum: 10c0/c0ad0b95981c8f21a2d4f115212af38c894a6a6d0a2a3cac4d73d1b5beb214fdfce7b5e66f087e8d575977d4df630886914412d1bc9c2678e5870210154ad65b languageName: node linkType: hard -"internal-slot@npm:^1.0.3, internal-slot@npm:^1.0.4, internal-slot@npm:^1.0.5": - version: 1.0.5 - resolution: "internal-slot@npm:1.0.5" +"internal-slot@npm:^1.0.4, internal-slot@npm:^1.0.5, internal-slot@npm:^1.0.7": + version: 1.0.7 + resolution: "internal-slot@npm:1.0.7" dependencies: - get-intrinsic: "npm:^1.2.0" - has: "npm:^1.0.3" + es-errors: "npm:^1.3.0" + hasown: "npm:^2.0.0" side-channel: "npm:^1.0.4" - checksum: 66d8a66b4b5310c042e8ad00ce895dc55cb25165a3a7da0d7862ca18d69d3b1ba86511b4bf3baf4273d744d3f6e9154574af45189ef11135a444945309e39e4a + checksum: 10c0/f8b294a4e6ea3855fc59551bbf35f2b832cf01fd5e6e2a97f5c201a071cc09b49048f856e484b67a6c721da5e55736c5b6ddafaf19e2dbeb4a3ff1821680de6c languageName: node linkType: hard "interpret@npm:^1.4.0": version: 1.4.0 resolution: "interpret@npm:1.4.0" - checksum: 08c5ad30032edeec638485bc3f6db7d0094d9b3e85e0f950866600af3c52e9fd69715416d29564731c479d9f4d43ff3e4d302a178196bdc0e6837ec147640450 + checksum: 10c0/08c5ad30032edeec638485bc3f6db7d0094d9b3e85e0f950866600af3c52e9fd69715416d29564731c479d9f4d43ff3e4d302a178196bdc0e6837ec147640450 languageName: node linkType: hard "intersection-observer@npm:^0.12.0": version: 0.12.2 resolution: "intersection-observer@npm:0.12.2" - checksum: 9591f46b2b742f5801ed69dbc8860f487771b4af8361e7a5dcb28a377beff2ba56336a2b090af261825430d225dae9417121496d2e6925e000e4a469958843ff + checksum: 10c0/9591f46b2b742f5801ed69dbc8860f487771b4af8361e7a5dcb28a377beff2ba56336a2b090af261825430d225dae9417121496d2e6925e000e4a469958843ff languageName: node linkType: hard @@ -9222,7 +9195,7 @@ __metadata: "@formatjs/fast-memoize": "npm:2.2.0" "@formatjs/icu-messageformat-parser": "npm:2.7.6" tslib: "npm:^2.4.0" - checksum: 423f1c879ce2d0e7b9e0b4c1787a81ead7fe4d1734e0366a20fef56b06c09146e7ca3618e2e78b4f8b8f2b59cafe6237ceed21530fe0c16cfb47d915fc80222d + checksum: 10c0/423f1c879ce2d0e7b9e0b4c1787a81ead7fe4d1734e0366a20fef56b06c09146e7ca3618e2e78b4f8b8f2b59cafe6237ceed21530fe0c16cfb47d915fc80222d languageName: node linkType: hard @@ -9231,7 +9204,7 @@ __metadata: resolution: "invariant@npm:2.2.4" dependencies: loose-envify: "npm:^1.0.0" - checksum: 5af133a917c0bcf65e84e7f23e779e7abc1cd49cb7fdc62d00d1de74b0d8c1b5ee74ac7766099fb3be1b05b26dfc67bab76a17030d2fe7ea2eef867434362dfc + checksum: 10c0/5af133a917c0bcf65e84e7f23e779e7abc1cd49cb7fdc62d00d1de74b0d8c1b5ee74ac7766099fb3be1b05b26dfc67bab76a17030d2fe7ea2eef867434362dfc languageName: node linkType: hard @@ -9248,42 +9221,42 @@ __metadata: redis-errors: "npm:^1.2.0" redis-parser: "npm:^3.0.0" standard-as-callback: "npm:^2.1.0" - checksum: 0dd2b5b8004e891f5b62edf18ac223194f1f5204698ec827c903e789ea05b0b36f73395491749ec63c66470485bdfb228ccdf1714fbf631a0f78f33211f2c883 + checksum: 10c0/0dd2b5b8004e891f5b62edf18ac223194f1f5204698ec827c903e789ea05b0b36f73395491749ec63c66470485bdfb228ccdf1714fbf631a0f78f33211f2c883 languageName: node linkType: hard "ip-regex@npm:^2.1.0": version: 2.1.0 resolution: "ip-regex@npm:2.1.0" - checksum: 3ce2d8307fa0373ca357eba7504e66e73b8121805fd9eba6a343aeb077c64c30659fa876b11ac7a75635b7529d2ce87723f208a5b9d51571513b5c68c0cc1541 + checksum: 10c0/3ce2d8307fa0373ca357eba7504e66e73b8121805fd9eba6a343aeb077c64c30659fa876b11ac7a75635b7529d2ce87723f208a5b9d51571513b5c68c0cc1541 languageName: node linkType: hard "ip@npm:^1.1.0, ip@npm:^1.1.5": version: 1.1.8 resolution: "ip@npm:1.1.8" - checksum: ab32a5ecfa678d4c158c1381c4c6744fce89a1d793e1b6635ba79d0753c069030b672d765887b6fff55670c711dfa47475895e5d6013efbbcf04687c51cb8db9 + checksum: 10c0/ab32a5ecfa678d4c158c1381c4c6744fce89a1d793e1b6635ba79d0753c069030b672d765887b6fff55670c711dfa47475895e5d6013efbbcf04687c51cb8db9 languageName: node linkType: hard "ip@npm:^2.0.0": version: 2.0.0 resolution: "ip@npm:2.0.0" - checksum: 8d186cc5585f57372847ae29b6eba258c68862055e18a75cc4933327232cb5c107f89800ce29715d542eef2c254fbb68b382e780a7414f9ee7caf60b7a473958 + checksum: 10c0/8d186cc5585f57372847ae29b6eba258c68862055e18a75cc4933327232cb5c107f89800ce29715d542eef2c254fbb68b382e780a7414f9ee7caf60b7a473958 languageName: node linkType: hard "ipaddr.js@npm:1.9.1, ipaddr.js@npm:^1.9.0": version: 1.9.1 resolution: "ipaddr.js@npm:1.9.1" - checksum: 0486e775047971d3fdb5fb4f063829bac45af299ae0b82dcf3afa2145338e08290563a2a70f34b732d795ecc8311902e541a8530eeb30d75860a78ff4e94ce2a + checksum: 10c0/0486e775047971d3fdb5fb4f063829bac45af299ae0b82dcf3afa2145338e08290563a2a70f34b732d795ecc8311902e541a8530eeb30d75860a78ff4e94ce2a languageName: node linkType: hard "is-absolute-url@npm:^3.0.3": version: 3.0.3 resolution: "is-absolute-url@npm:3.0.3" - checksum: 04c415974c32e73a83d3a21a9bea18fc4e2c14fbe6bbd64832cf1e67a75ade2af0e900f552f0b8a447f1305f5ffc9d143ccd8d005dbe715d198c359d342b86f0 + checksum: 10c0/04c415974c32e73a83d3a21a9bea18fc4e2c14fbe6bbd64832cf1e67a75ade2af0e900f552f0b8a447f1305f5ffc9d143ccd8d005dbe715d198c359d342b86f0 languageName: node linkType: hard @@ -9292,7 +9265,7 @@ __metadata: resolution: "is-accessor-descriptor@npm:0.1.6" dependencies: kind-of: "npm:^3.0.2" - checksum: f2c314b314ec6e8a6e559351bff3c7ee9aed7a5e9c6f61dd8cb9e1382c8bfe33dca3f0e0af13daf9ded9e6e66390ff23b4acfb615d7a249009a51506a7b0f151 + checksum: 10c0/f2c314b314ec6e8a6e559351bff3c7ee9aed7a5e9c6f61dd8cb9e1382c8bfe33dca3f0e0af13daf9ded9e6e66390ff23b4acfb615d7a249009a51506a7b0f151 languageName: node linkType: hard @@ -9301,7 +9274,7 @@ __metadata: resolution: "is-accessor-descriptor@npm:1.0.0" dependencies: kind-of: "npm:^6.0.0" - checksum: d68edafd8ef133e9003837f3c80f4e5b82b12ab5456c772d1796857671ae83e3a426ed225a28a7e35bceabbce68c1f1ffdabf47e6d53f5a4d6c4558776ad3c20 + checksum: 10c0/d68edafd8ef133e9003837f3c80f4e5b82b12ab5456c772d1796857671ae83e3a426ed225a28a7e35bceabbce68c1f1ffdabf47e6d53f5a4d6c4558776ad3c20 languageName: node linkType: hard @@ -9311,25 +9284,24 @@ __metadata: dependencies: call-bind: "npm:^1.0.2" has-tostringtag: "npm:^1.0.0" - checksum: 5ff1f341ee4475350adfc14b2328b38962564b7c2076be2f5bac7bd9b61779efba99b9f844a7b82ba7654adccf8e8eb19d1bb0cc6d1c1a085e498f6793d4328f + checksum: 10c0/5ff1f341ee4475350adfc14b2328b38962564b7c2076be2f5bac7bd9b61779efba99b9f844a7b82ba7654adccf8e8eb19d1bb0cc6d1c1a085e498f6793d4328f languageName: node linkType: hard -"is-array-buffer@npm:^3.0.1, is-array-buffer@npm:^3.0.2": - version: 3.0.2 - resolution: "is-array-buffer@npm:3.0.2" +"is-array-buffer@npm:^3.0.2, is-array-buffer@npm:^3.0.4": + version: 3.0.4 + resolution: "is-array-buffer@npm:3.0.4" dependencies: call-bind: "npm:^1.0.2" - get-intrinsic: "npm:^1.2.0" - is-typed-array: "npm:^1.1.10" - checksum: 40ed13a5f5746ac3ae2f2e463687d9b5a3f5fd0086f970fb4898f0253c2a5ec2e3caea2d664dd8f54761b1c1948609702416921a22faebe160c7640a9217c80e + get-intrinsic: "npm:^1.2.1" + checksum: 10c0/42a49d006cc6130bc5424eae113e948c146f31f9d24460fc0958f855d9d810e6fd2e4519bf19aab75179af9c298ea6092459d8cafdec523cd19e529b26eab860 languageName: node linkType: hard "is-arrayish@npm:^0.2.1": version: 0.2.1 resolution: "is-arrayish@npm:0.2.1" - checksum: e7fb686a739068bb70f860b39b67afc62acc62e36bb61c5f965768abce1873b379c563e61dd2adad96ebb7edf6651111b385e490cf508378959b0ed4cac4e729 + checksum: 10c0/e7fb686a739068bb70f860b39b67afc62acc62e36bb61c5f965768abce1873b379c563e61dd2adad96ebb7edf6651111b385e490cf508378959b0ed4cac4e729 languageName: node linkType: hard @@ -9338,7 +9310,7 @@ __metadata: resolution: "is-async-function@npm:2.0.0" dependencies: has-tostringtag: "npm:^1.0.0" - checksum: 787bc931576aad525d751fc5ce211960fe91e49ac84a5c22d6ae0bc9541945fbc3f686dc590c3175722ce4f6d7b798a93f6f8ff4847fdb2199aea6f4baf5d668 + checksum: 10c0/787bc931576aad525d751fc5ce211960fe91e49ac84a5c22d6ae0bc9541945fbc3f686dc590c3175722ce4f6d7b798a93f6f8ff4847fdb2199aea6f4baf5d668 languageName: node linkType: hard @@ -9347,7 +9319,7 @@ __metadata: resolution: "is-bigint@npm:1.0.4" dependencies: has-bigints: "npm:^1.0.1" - checksum: eb9c88e418a0d195ca545aff2b715c9903d9b0a5033bc5922fec600eb0c3d7b1ee7f882dbf2e0d5a6e694e42391be3683e4368737bd3c4a77f8ac293e7773696 + checksum: 10c0/eb9c88e418a0d195ca545aff2b715c9903d9b0a5033bc5922fec600eb0c3d7b1ee7f882dbf2e0d5a6e694e42391be3683e4368737bd3c4a77f8ac293e7773696 languageName: node linkType: hard @@ -9356,7 +9328,7 @@ __metadata: resolution: "is-binary-path@npm:1.0.1" dependencies: binary-extensions: "npm:^1.0.0" - checksum: 16e456fa3782eaf3d8e28d382b750507e3d54ff6694df8a1b2c6498da321e2ead311de9c42e653d8fb3213de72bac204b5f97e4a110cda8a72f17b1c1b4eb643 + checksum: 10c0/16e456fa3782eaf3d8e28d382b750507e3d54ff6694df8a1b2c6498da321e2ead311de9c42e653d8fb3213de72bac204b5f97e4a110cda8a72f17b1c1b4eb643 languageName: node linkType: hard @@ -9365,7 +9337,7 @@ __metadata: resolution: "is-binary-path@npm:2.1.0" dependencies: binary-extensions: "npm:^2.0.0" - checksum: a16eaee59ae2b315ba36fad5c5dcaf8e49c3e27318f8ab8fa3cdb8772bf559c8d1ba750a589c2ccb096113bb64497084361a25960899cb6172a6925ab6123d38 + checksum: 10c0/a16eaee59ae2b315ba36fad5c5dcaf8e49c3e27318f8ab8fa3cdb8772bf559c8d1ba750a589c2ccb096113bb64497084361a25960899cb6172a6925ab6123d38 languageName: node linkType: hard @@ -9375,7 +9347,7 @@ __metadata: dependencies: call-bind: "npm:^1.0.2" has-tostringtag: "npm:^1.0.0" - checksum: 6090587f8a8a8534c0f816da868bc94f32810f08807aa72fa7e79f7e11c466d281486ffe7a788178809c2aa71fe3e700b167fe80dd96dad68026bfff8ebf39f7 + checksum: 10c0/6090587f8a8a8534c0f816da868bc94f32810f08807aa72fa7e79f7e11c466d281486ffe7a788178809c2aa71fe3e700b167fe80dd96dad68026bfff8ebf39f7 languageName: node linkType: hard @@ -9384,23 +9356,23 @@ __metadata: resolution: "is-builtin-module@npm:3.2.1" dependencies: builtin-modules: "npm:^3.3.0" - checksum: 5a66937a03f3b18803381518f0ef679752ac18cdb7dd53b5e23ee8df8d440558737bd8dcc04d2aae555909d2ecb4a81b5c0d334d119402584b61e6a003e31af1 + checksum: 10c0/5a66937a03f3b18803381518f0ef679752ac18cdb7dd53b5e23ee8df8d440558737bd8dcc04d2aae555909d2ecb4a81b5c0d334d119402584b61e6a003e31af1 languageName: node linkType: hard "is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.7": version: 1.2.7 resolution: "is-callable@npm:1.2.7" - checksum: ceebaeb9d92e8adee604076971dd6000d38d6afc40bb843ea8e45c5579b57671c3f3b50d7f04869618242c6cee08d1b67806a8cb8edaaaf7c0748b3720d6066f + checksum: 10c0/ceebaeb9d92e8adee604076971dd6000d38d6afc40bb843ea8e45c5579b57671c3f3b50d7f04869618242c6cee08d1b67806a8cb8edaaaf7c0748b3720d6066f languageName: node linkType: hard -"is-core-module@npm:^2.11.0, is-core-module@npm:^2.13.0, is-core-module@npm:^2.13.1, is-core-module@npm:^2.9.0": +"is-core-module@npm:^2.11.0, is-core-module@npm:^2.13.0, is-core-module@npm:^2.13.1": version: 2.13.1 resolution: "is-core-module@npm:2.13.1" dependencies: hasown: "npm:^2.0.0" - checksum: 2cba9903aaa52718f11c4896dabc189bab980870aae86a62dc0d5cedb546896770ee946fb14c84b7adf0735f5eaea4277243f1b95f5cefa90054f92fbcac2518 + checksum: 10c0/2cba9903aaa52718f11c4896dabc189bab980870aae86a62dc0d5cedb546896770ee946fb14c84b7adf0735f5eaea4277243f1b95f5cefa90054f92fbcac2518 languageName: node linkType: hard @@ -9409,7 +9381,7 @@ __metadata: resolution: "is-data-descriptor@npm:0.1.4" dependencies: kind-of: "npm:^3.0.2" - checksum: 32fda7e966b2c1f093230d5ef2aad1bb86e43e7280da50961e38ec31dbd8a50570a2911fd45277d321074a0762adc98e8462bb62820462594128857225e90d21 + checksum: 10c0/32fda7e966b2c1f093230d5ef2aad1bb86e43e7280da50961e38ec31dbd8a50570a2911fd45277d321074a0762adc98e8462bb62820462594128857225e90d21 languageName: node linkType: hard @@ -9418,7 +9390,7 @@ __metadata: resolution: "is-data-descriptor@npm:1.0.0" dependencies: kind-of: "npm:^6.0.0" - checksum: bed31385d7d1a0dbb2ab3077faf2188acf42609192dca4e320ed7b3dc14a9d70c00658956cdaa2c0402be136c6b56e183973ad81b730fd90ab427fb6fd3608be + checksum: 10c0/bed31385d7d1a0dbb2ab3077faf2188acf42609192dca4e320ed7b3dc14a9d70c00658956cdaa2c0402be136c6b56e183973ad81b730fd90ab427fb6fd3608be languageName: node linkType: hard @@ -9427,7 +9399,7 @@ __metadata: resolution: "is-date-object@npm:1.0.5" dependencies: has-tostringtag: "npm:^1.0.0" - checksum: eed21e5dcc619c48ccef804dfc83a739dbb2abee6ca202838ee1bd5f760fe8d8a93444f0d49012ad19bb7c006186e2884a1b92f6e1c056da7fd23d0a9ad5992e + checksum: 10c0/eed21e5dcc619c48ccef804dfc83a739dbb2abee6ca202838ee1bd5f760fe8d8a93444f0d49012ad19bb7c006186e2884a1b92f6e1c056da7fd23d0a9ad5992e languageName: node linkType: hard @@ -9438,7 +9410,7 @@ __metadata: is-accessor-descriptor: "npm:^0.1.6" is-data-descriptor: "npm:^0.1.4" kind-of: "npm:^5.0.0" - checksum: 6b8f5617b764ef8c6be3d54830184357e6cdedd8e0eddf1b97d0658616ac170bfdbc7c1ad00e0aa9f5b767acdb9d6c63d4df936501784b34936bd0f9acf3b665 + checksum: 10c0/6b8f5617b764ef8c6be3d54830184357e6cdedd8e0eddf1b97d0658616ac170bfdbc7c1ad00e0aa9f5b767acdb9d6c63d4df936501784b34936bd0f9acf3b665 languageName: node linkType: hard @@ -9449,39 +9421,21 @@ __metadata: is-accessor-descriptor: "npm:^1.0.0" is-data-descriptor: "npm:^1.0.0" kind-of: "npm:^6.0.2" - checksum: a05169c7a87feb88fc155e3ada469090cfabb5a548a3f794358b511cc47a0871b8b95e7345be4925a22ef3df585c3923b31943b3ad6255ce563a9d97f2e221e0 - languageName: node - linkType: hard - -"is-docker@npm:^2.0.0": - version: 2.2.1 - resolution: "is-docker@npm:2.2.1" - bin: - is-docker: cli.js - checksum: e828365958d155f90c409cdbe958f64051d99e8aedc2c8c4cd7c89dcf35329daed42f7b99346f7828df013e27deb8f721cf9408ba878c76eb9e8290235fbcdcc - languageName: node - linkType: hard - -"is-docker@npm:^3.0.0": - version: 3.0.0 - resolution: "is-docker@npm:3.0.0" - bin: - is-docker: cli.js - checksum: d2c4f8e6d3e34df75a5defd44991b6068afad4835bb783b902fa12d13ebdb8f41b2a199dcb0b5ed2cb78bfee9e4c0bbdb69c2d9646f4106464674d3e697a5856 + checksum: 10c0/a05169c7a87feb88fc155e3ada469090cfabb5a548a3f794358b511cc47a0871b8b95e7345be4925a22ef3df585c3923b31943b3ad6255ce563a9d97f2e221e0 languageName: node linkType: hard "is-electron@npm:^2.2.0": version: 2.2.2 resolution: "is-electron@npm:2.2.2" - checksum: 327bb373f7be01b16cdff3998b5ddaa87d28f576092affaa7fe0659571b3306fdd458afbf0683a66841e7999af13f46ad0e1b51647b469526cd05a4dd736438a + checksum: 10c0/327bb373f7be01b16cdff3998b5ddaa87d28f576092affaa7fe0659571b3306fdd458afbf0683a66841e7999af13f46ad0e1b51647b469526cd05a4dd736438a languageName: node linkType: hard "is-extendable@npm:^0.1.0, is-extendable@npm:^0.1.1": version: 0.1.1 resolution: "is-extendable@npm:0.1.1" - checksum: dd5ca3994a28e1740d1e25192e66eed128e0b2ff161a7ea348e87ae4f616554b486854de423877a2a2c171d5f7cd6e8093b91f54533bc88a59ee1c9838c43879 + checksum: 10c0/dd5ca3994a28e1740d1e25192e66eed128e0b2ff161a7ea348e87ae4f616554b486854de423877a2a2c171d5f7cd6e8093b91f54533bc88a59ee1c9838c43879 languageName: node linkType: hard @@ -9490,14 +9444,14 @@ __metadata: resolution: "is-extendable@npm:1.0.1" dependencies: is-plain-object: "npm:^2.0.4" - checksum: 1d6678a5be1563db6ecb121331c819c38059703f0179f52aa80c242c223ee9c6b66470286636c0e63d7163e4d905c0a7d82a096e0b5eaeabb51b9f8d0af0d73f + checksum: 10c0/1d6678a5be1563db6ecb121331c819c38059703f0179f52aa80c242c223ee9c6b66470286636c0e63d7163e4d905c0a7d82a096e0b5eaeabb51b9f8d0af0d73f languageName: node linkType: hard "is-extglob@npm:^2.1.0, is-extglob@npm:^2.1.1": version: 2.1.1 resolution: "is-extglob@npm:2.1.1" - checksum: 5487da35691fbc339700bbb2730430b07777a3c21b9ebaecb3072512dfd7b4ba78ac2381a87e8d78d20ea08affb3f1971b4af629173a6bf435ff8a4c47747912 + checksum: 10c0/5487da35691fbc339700bbb2730430b07777a3c21b9ebaecb3072512dfd7b4ba78ac2381a87e8d78d20ea08affb3f1971b4af629173a6bf435ff8a4c47747912 languageName: node linkType: hard @@ -9506,28 +9460,28 @@ __metadata: resolution: "is-finalizationregistry@npm:1.0.2" dependencies: call-bind: "npm:^1.0.2" - checksum: 81caecc984d27b1a35c68741156fc651fb1fa5e3e6710d21410abc527eb226d400c0943a167922b2e920f6b3e58b0dede9aa795882b038b85f50b3a4b877db86 + checksum: 10c0/81caecc984d27b1a35c68741156fc651fb1fa5e3e6710d21410abc527eb226d400c0943a167922b2e920f6b3e58b0dede9aa795882b038b85f50b3a4b877db86 languageName: node linkType: hard "is-fullwidth-code-point@npm:^2.0.0": version: 2.0.0 resolution: "is-fullwidth-code-point@npm:2.0.0" - checksum: e58f3e4a601fc0500d8b2677e26e9fe0cd450980e66adb29d85b6addf7969731e38f8e43ed2ec868a09c101a55ac3d8b78902209269f38c5286bc98f5bc1b4d9 + checksum: 10c0/e58f3e4a601fc0500d8b2677e26e9fe0cd450980e66adb29d85b6addf7969731e38f8e43ed2ec868a09c101a55ac3d8b78902209269f38c5286bc98f5bc1b4d9 languageName: node linkType: hard "is-fullwidth-code-point@npm:^3.0.0": version: 3.0.0 resolution: "is-fullwidth-code-point@npm:3.0.0" - checksum: bb11d825e049f38e04c06373a8d72782eee0205bda9d908cc550ccb3c59b99d750ff9537982e01733c1c94a58e35400661f57042158ff5e8f3e90cf936daf0fc + checksum: 10c0/bb11d825e049f38e04c06373a8d72782eee0205bda9d908cc550ccb3c59b99d750ff9537982e01733c1c94a58e35400661f57042158ff5e8f3e90cf936daf0fc languageName: node linkType: hard "is-fullwidth-code-point@npm:^4.0.0": version: 4.0.0 resolution: "is-fullwidth-code-point@npm:4.0.0" - checksum: df2a717e813567db0f659c306d61f2f804d480752526886954a2a3e2246c7745fd07a52b5fecf2b68caf0a6c79dcdace6166fdf29cc76ed9975cc334f0a018b8 + checksum: 10c0/df2a717e813567db0f659c306d61f2f804d480752526886954a2a3e2246c7745fd07a52b5fecf2b68caf0a6c79dcdace6166fdf29cc76ed9975cc334f0a018b8 languageName: node linkType: hard @@ -9536,14 +9490,14 @@ __metadata: resolution: "is-fullwidth-code-point@npm:5.0.0" dependencies: get-east-asian-width: "npm:^1.0.0" - checksum: cd591b27d43d76b05fa65ed03eddce57a16e1eca0b7797ff7255de97019bcaf0219acfc0c4f7af13319e13541f2a53c0ace476f442b13267b9a6a7568f2b65c8 + checksum: 10c0/cd591b27d43d76b05fa65ed03eddce57a16e1eca0b7797ff7255de97019bcaf0219acfc0c4f7af13319e13541f2a53c0ace476f442b13267b9a6a7568f2b65c8 languageName: node linkType: hard "is-generator-fn@npm:^2.0.0": version: 2.1.0 resolution: "is-generator-fn@npm:2.1.0" - checksum: 2957cab387997a466cd0bf5c1b6047bd21ecb32bdcfd8996b15747aa01002c1c88731802f1b3d34ac99f4f6874b626418bd118658cf39380fe5fff32a3af9c4d + checksum: 10c0/2957cab387997a466cd0bf5c1b6047bd21ecb32bdcfd8996b15747aa01002c1c88731802f1b3d34ac99f4f6874b626418bd118658cf39380fe5fff32a3af9c4d languageName: node linkType: hard @@ -9552,7 +9506,7 @@ __metadata: resolution: "is-generator-function@npm:1.0.10" dependencies: has-tostringtag: "npm:^1.0.0" - checksum: df03514df01a6098945b5a0cfa1abff715807c8e72f57c49a0686ad54b3b74d394e2d8714e6f709a71eb00c9630d48e73ca1796c1ccc84ac95092c1fecc0d98b + checksum: 10c0/df03514df01a6098945b5a0cfa1abff715807c8e72f57c49a0686ad54b3b74d394e2d8714e6f709a71eb00c9630d48e73ca1796c1ccc84ac95092c1fecc0d98b languageName: node linkType: hard @@ -9561,7 +9515,7 @@ __metadata: resolution: "is-glob@npm:3.1.0" dependencies: is-extglob: "npm:^2.1.0" - checksum: ba816a35dcf5285de924a8a4654df7b183a86381d73ea3bbf3df3cc61b3ba61fdddf90ee205709a2235b210ee600ee86e5e8600093cf291a662607fd032e2ff4 + checksum: 10c0/ba816a35dcf5285de924a8a4654df7b183a86381d73ea3bbf3df3cc61b3ba61fdddf90ee205709a2235b210ee600ee86e5e8600093cf291a662607fd032e2ff4 languageName: node linkType: hard @@ -9570,46 +9524,35 @@ __metadata: resolution: "is-glob@npm:4.0.3" dependencies: is-extglob: "npm:^2.1.1" - checksum: 17fb4014e22be3bbecea9b2e3a76e9e34ff645466be702f1693e8f1ee1adac84710d0be0bd9f967d6354036fd51ab7c2741d954d6e91dae6bb69714de92c197a - languageName: node - linkType: hard - -"is-inside-container@npm:^1.0.0": - version: 1.0.0 - resolution: "is-inside-container@npm:1.0.0" - dependencies: - is-docker: "npm:^3.0.0" - bin: - is-inside-container: cli.js - checksum: a8efb0e84f6197e6ff5c64c52890fa9acb49b7b74fed4da7c95383965da6f0fa592b4dbd5e38a79f87fc108196937acdbcd758fcefc9b140e479b39ce1fcd1cd + checksum: 10c0/17fb4014e22be3bbecea9b2e3a76e9e34ff645466be702f1693e8f1ee1adac84710d0be0bd9f967d6354036fd51ab7c2741d954d6e91dae6bb69714de92c197a languageName: node linkType: hard "is-lambda@npm:^1.0.1": version: 1.0.1 resolution: "is-lambda@npm:1.0.1" - checksum: 85fee098ae62ba6f1e24cf22678805473c7afd0fb3978a3aa260e354cb7bcb3a5806cf0a98403188465efedec41ab4348e8e4e79305d409601323855b3839d4d + checksum: 10c0/85fee098ae62ba6f1e24cf22678805473c7afd0fb3978a3aa260e354cb7bcb3a5806cf0a98403188465efedec41ab4348e8e4e79305d409601323855b3839d4d languageName: node linkType: hard "is-map@npm:^2.0.1, is-map@npm:^2.0.2": version: 2.0.2 resolution: "is-map@npm:2.0.2" - checksum: 119ff9137a37fd131a72fab3f4ab8c9d6a24b0a1ee26b4eff14dc625900d8675a97785eea5f4174265e2006ed076cc24e89f6e57ebd080a48338d914ec9168a5 + checksum: 10c0/119ff9137a37fd131a72fab3f4ab8c9d6a24b0a1ee26b4eff14dc625900d8675a97785eea5f4174265e2006ed076cc24e89f6e57ebd080a48338d914ec9168a5 languageName: node linkType: hard "is-module@npm:^1.0.0": version: 1.0.0 resolution: "is-module@npm:1.0.0" - checksum: 795a3914bcae7c26a1c23a1e5574c42eac13429625045737bf3e324ce865c0601d61aee7a5afbca1bee8cb300c7d9647e7dc98860c9bdbc3b7fdc51d8ac0bffc + checksum: 10c0/795a3914bcae7c26a1c23a1e5574c42eac13429625045737bf3e324ce865c0601d61aee7a5afbca1bee8cb300c7d9647e7dc98860c9bdbc3b7fdc51d8ac0bffc languageName: node linkType: hard -"is-negative-zero@npm:^2.0.2": - version: 2.0.2 - resolution: "is-negative-zero@npm:2.0.2" - checksum: eda024c158f70f2017f3415e471b818d314da5ef5be68f801b16314d4a4b6304a74cbed778acf9e2f955bb9c1c5f2935c1be0c7c99e1ad12286f45366217b6a3 +"is-negative-zero@npm:^2.0.3": + version: 2.0.3 + resolution: "is-negative-zero@npm:2.0.3" + checksum: 10c0/bcdcf6b8b9714063ffcfa9929c575ac69bfdabb8f4574ff557dfc086df2836cf07e3906f5bbc4f2a5c12f8f3ba56af640c843cdfc74da8caed86c7c7d66fd08e languageName: node linkType: hard @@ -9618,7 +9561,7 @@ __metadata: resolution: "is-number-object@npm:1.0.7" dependencies: has-tostringtag: "npm:^1.0.0" - checksum: aad266da1e530f1804a2b7bd2e874b4869f71c98590b3964f9d06cc9869b18f8d1f4778f838ecd2a11011bce20aeecb53cb269ba916209b79c24580416b74b1b + checksum: 10c0/aad266da1e530f1804a2b7bd2e874b4869f71c98590b3964f9d06cc9869b18f8d1f4778f838ecd2a11011bce20aeecb53cb269ba916209b79c24580416b74b1b languageName: node linkType: hard @@ -9627,28 +9570,28 @@ __metadata: resolution: "is-number@npm:3.0.0" dependencies: kind-of: "npm:^3.0.2" - checksum: e639c54640b7f029623df24d3d103901e322c0c25ea5bde97cd723c2d0d4c05857a8364ab5c58d963089dbed6bf1d0ffe975cb6aef917e2ad0ccbca653d31b4f + checksum: 10c0/e639c54640b7f029623df24d3d103901e322c0c25ea5bde97cd723c2d0d4c05857a8364ab5c58d963089dbed6bf1d0ffe975cb6aef917e2ad0ccbca653d31b4f languageName: node linkType: hard "is-number@npm:^7.0.0": version: 7.0.0 resolution: "is-number@npm:7.0.0" - checksum: b4686d0d3053146095ccd45346461bc8e53b80aeb7671cc52a4de02dbbf7dc0d1d2a986e2fe4ae206984b4d34ef37e8b795ebc4f4295c978373e6575e295d811 + checksum: 10c0/b4686d0d3053146095ccd45346461bc8e53b80aeb7671cc52a4de02dbbf7dc0d1d2a986e2fe4ae206984b4d34ef37e8b795ebc4f4295c978373e6575e295d811 languageName: node linkType: hard "is-obj@npm:^1.0.1": version: 1.0.1 resolution: "is-obj@npm:1.0.1" - checksum: 5003acba0af7aa47dfe0760e545a89bbac89af37c12092c3efadc755372cdaec034f130e7a3653a59eb3c1843cfc72ca71eaf1a6c3bafe5a0bab3611a47f9945 + checksum: 10c0/5003acba0af7aa47dfe0760e545a89bbac89af37c12092c3efadc755372cdaec034f130e7a3653a59eb3c1843cfc72ca71eaf1a6c3bafe5a0bab3611a47f9945 languageName: node linkType: hard "is-path-cwd@npm:^2.0.0": version: 2.2.0 resolution: "is-path-cwd@npm:2.2.0" - checksum: afce71533a427a759cd0329301c18950333d7589533c2c90205bd3fdcf7b91eb92d1940493190567a433134d2128ec9325de2fd281e05be1920fbee9edd22e0a + checksum: 10c0/afce71533a427a759cd0329301c18950333d7589533c2c90205bd3fdcf7b91eb92d1940493190567a433134d2128ec9325de2fd281e05be1920fbee9edd22e0a languageName: node linkType: hard @@ -9657,7 +9600,7 @@ __metadata: resolution: "is-path-in-cwd@npm:2.1.0" dependencies: is-path-inside: "npm:^2.1.0" - checksum: 674a4282fb3732cf4b4e9ea31e06380d8b074fb8106c4c1742a9f0f3d5650bf059b2c45e5c4cfa7abe847ca88474de63abec323a7fe1eb14f8ec4de2fa951d3a + checksum: 10c0/674a4282fb3732cf4b4e9ea31e06380d8b074fb8106c4c1742a9f0f3d5650bf059b2c45e5c4cfa7abe847ca88474de63abec323a7fe1eb14f8ec4de2fa951d3a languageName: node linkType: hard @@ -9666,14 +9609,14 @@ __metadata: resolution: "is-path-inside@npm:2.1.0" dependencies: path-is-inside: "npm:^1.0.2" - checksum: 50272b9aa301964c0bc4032d5c968e63c516d15bd7800cd06845df97bee637451fcd92a8001b37e309563eff2dffae5fa6d635a0c1d162dc257489c86b1fda51 + checksum: 10c0/50272b9aa301964c0bc4032d5c968e63c516d15bd7800cd06845df97bee637451fcd92a8001b37e309563eff2dffae5fa6d635a0c1d162dc257489c86b1fda51 languageName: node linkType: hard "is-path-inside@npm:^3.0.3": version: 3.0.3 resolution: "is-path-inside@npm:3.0.3" - checksum: cf7d4ac35fb96bab6a1d2c3598fe5ebb29aafb52c0aaa482b5a3ed9d8ba3edc11631e3ec2637660c44b3ce0e61a08d54946e8af30dec0b60a7c27296c68ffd05 + checksum: 10c0/cf7d4ac35fb96bab6a1d2c3598fe5ebb29aafb52c0aaa482b5a3ed9d8ba3edc11631e3ec2637660c44b3ce0e61a08d54946e8af30dec0b60a7c27296c68ffd05 languageName: node linkType: hard @@ -9682,21 +9625,21 @@ __metadata: resolution: "is-plain-object@npm:2.0.4" dependencies: isobject: "npm:^3.0.1" - checksum: f050fdd5203d9c81e8c4df1b3ff461c4bc64e8b5ca383bcdde46131361d0a678e80bcf00b5257646f6c636197629644d53bd8e2375aea633de09a82d57e942f4 + checksum: 10c0/f050fdd5203d9c81e8c4df1b3ff461c4bc64e8b5ca383bcdde46131361d0a678e80bcf00b5257646f6c636197629644d53bd8e2375aea633de09a82d57e942f4 languageName: node linkType: hard "is-plain-object@npm:^5.0.0": version: 5.0.0 resolution: "is-plain-object@npm:5.0.0" - checksum: 893e42bad832aae3511c71fd61c0bf61aa3a6d853061c62a307261842727d0d25f761ce9379f7ba7226d6179db2a3157efa918e7fe26360f3bf0842d9f28942c + checksum: 10c0/893e42bad832aae3511c71fd61c0bf61aa3a6d853061c62a307261842727d0d25f761ce9379f7ba7226d6179db2a3157efa918e7fe26360f3bf0842d9f28942c languageName: node linkType: hard "is-potential-custom-element-name@npm:^1.0.1": version: 1.0.1 resolution: "is-potential-custom-element-name@npm:1.0.1" - checksum: b73e2f22bc863b0939941d369486d308b43d7aef1f9439705e3582bfccaa4516406865e32c968a35f97a99396dac84e2624e67b0a16b0a15086a785e16ce7db9 + checksum: 10c0/b73e2f22bc863b0939941d369486d308b43d7aef1f9439705e3582bfccaa4516406865e32c968a35f97a99396dac84e2624e67b0a16b0a15086a785e16ce7db9 languageName: node linkType: hard @@ -9706,51 +9649,51 @@ __metadata: dependencies: call-bind: "npm:^1.0.2" has-tostringtag: "npm:^1.0.0" - checksum: bb72aae604a69eafd4a82a93002058c416ace8cde95873589a97fc5dac96a6c6c78a9977d487b7b95426a8f5073969124dd228f043f9f604f041f32fcc465fc1 + checksum: 10c0/bb72aae604a69eafd4a82a93002058c416ace8cde95873589a97fc5dac96a6c6c78a9977d487b7b95426a8f5073969124dd228f043f9f604f041f32fcc465fc1 languageName: node linkType: hard "is-regexp@npm:^1.0.0": version: 1.0.0 resolution: "is-regexp@npm:1.0.0" - checksum: 34cacda1901e00f6e44879378f1d2fa96320ea956c1bec27713130aaf1d44f6e7bd963eed28945bfe37e600cb27df1cf5207302680dad8bdd27b9baff8ecf611 + checksum: 10c0/34cacda1901e00f6e44879378f1d2fa96320ea956c1bec27713130aaf1d44f6e7bd963eed28945bfe37e600cb27df1cf5207302680dad8bdd27b9baff8ecf611 languageName: node linkType: hard "is-set@npm:^2.0.1, is-set@npm:^2.0.2": version: 2.0.2 resolution: "is-set@npm:2.0.2" - checksum: 5f8bd1880df8c0004ce694e315e6e1e47a3452014be792880bb274a3b2cdb952fdb60789636ca6e084c7947ca8b7ae03ccaf54c93a7fcfed228af810559e5432 + checksum: 10c0/5f8bd1880df8c0004ce694e315e6e1e47a3452014be792880bb274a3b2cdb952fdb60789636ca6e084c7947ca8b7ae03ccaf54c93a7fcfed228af810559e5432 languageName: node linkType: hard -"is-shared-array-buffer@npm:^1.0.2": - version: 1.0.2 - resolution: "is-shared-array-buffer@npm:1.0.2" +"is-shared-array-buffer@npm:^1.0.2, is-shared-array-buffer@npm:^1.0.3": + version: 1.0.3 + resolution: "is-shared-array-buffer@npm:1.0.3" dependencies: - call-bind: "npm:^1.0.2" - checksum: cfeee6f171f1b13e6cbc6f3b6cc44e192b93df39f3fcb31aa66ffb1d2df3b91e05664311659f9701baba62f5e98c83b0673c628e7adc30f55071c4874fcdccec + call-bind: "npm:^1.0.7" + checksum: 10c0/adc11ab0acbc934a7b9e5e9d6c588d4ec6682f6fea8cda5180721704fa32927582ede5b123349e32517fdadd07958973d24716c80e7ab198970c47acc09e59c7 languageName: node linkType: hard "is-stream@npm:^1.1.0": version: 1.1.0 resolution: "is-stream@npm:1.1.0" - checksum: b8ae7971e78d2e8488d15f804229c6eed7ed36a28f8807a1815938771f4adff0e705218b7dab968270433f67103e4fef98062a0beea55d64835f705ee72c7002 + checksum: 10c0/b8ae7971e78d2e8488d15f804229c6eed7ed36a28f8807a1815938771f4adff0e705218b7dab968270433f67103e4fef98062a0beea55d64835f705ee72c7002 languageName: node linkType: hard "is-stream@npm:^2.0.0": version: 2.0.1 resolution: "is-stream@npm:2.0.1" - checksum: 7c284241313fc6efc329b8d7f08e16c0efeb6baab1b4cd0ba579eb78e5af1aa5da11e68559896a2067cd6c526bd29241dda4eb1225e627d5aa1a89a76d4635a5 + checksum: 10c0/7c284241313fc6efc329b8d7f08e16c0efeb6baab1b4cd0ba579eb78e5af1aa5da11e68559896a2067cd6c526bd29241dda4eb1225e627d5aa1a89a76d4635a5 languageName: node linkType: hard "is-stream@npm:^3.0.0": version: 3.0.0 resolution: "is-stream@npm:3.0.0" - checksum: eb2f7127af02ee9aa2a0237b730e47ac2de0d4e76a4a905a50a11557f2339df5765eaea4ceb8029f1efa978586abe776908720bfcb1900c20c6ec5145f6f29d8 + checksum: 10c0/eb2f7127af02ee9aa2a0237b730e47ac2de0d4e76a4a905a50a11557f2339df5765eaea4ceb8029f1efa978586abe776908720bfcb1900c20c6ec5145f6f29d8 languageName: node linkType: hard @@ -9759,7 +9702,7 @@ __metadata: resolution: "is-string@npm:1.0.7" dependencies: has-tostringtag: "npm:^1.0.0" - checksum: 905f805cbc6eedfa678aaa103ab7f626aac9ebbdc8737abb5243acaa61d9820f8edc5819106b8fcd1839e33db21de9f0116ae20de380c8382d16dc2a601921f6 + checksum: 10c0/905f805cbc6eedfa678aaa103ab7f626aac9ebbdc8737abb5243acaa61d9820f8edc5819106b8fcd1839e33db21de9f0116ae20de380c8382d16dc2a601921f6 languageName: node linkType: hard @@ -9768,30 +9711,30 @@ __metadata: resolution: "is-symbol@npm:1.0.4" dependencies: has-symbols: "npm:^1.0.2" - checksum: 9381dd015f7c8906154dbcbf93fad769de16b4b961edc94f88d26eb8c555935caa23af88bda0c93a18e65560f6d7cca0fd5a3f8a8e1df6f1abbb9bead4502ef7 + checksum: 10c0/9381dd015f7c8906154dbcbf93fad769de16b4b961edc94f88d26eb8c555935caa23af88bda0c93a18e65560f6d7cca0fd5a3f8a8e1df6f1abbb9bead4502ef7 languageName: node linkType: hard -"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.12, is-typed-array@npm:^1.1.9": - version: 1.1.12 - resolution: "is-typed-array@npm:1.1.12" +"is-typed-array@npm:^1.1.13": + version: 1.1.13 + resolution: "is-typed-array@npm:1.1.13" dependencies: - which-typed-array: "npm:^1.1.11" - checksum: 9863e9cc7223c6fc1c462a2c3898a7beff6b41b1ee0fabb03b7d278ae7de670b5bcbc8627db56bb66ed60902fa37d53fe5cce0fd2f7d73ac64fe5da6f409b6ae + which-typed-array: "npm:^1.1.14" + checksum: 10c0/fa5cb97d4a80e52c2cc8ed3778e39f175a1a2ae4ddf3adae3187d69586a1fd57cfa0b095db31f66aa90331e9e3da79184cea9c6abdcd1abc722dc3c3edd51cca languageName: node linkType: hard "is-url@npm:^1.2.4": version: 1.2.4 resolution: "is-url@npm:1.2.4" - checksum: 0157a79874f8f95fdd63540e3f38c8583c2ef572661cd0693cda80ae3e42dfe8e9a4a972ec1b827f861d9a9acf75b37f7d58a37f94a8a053259642912c252bc3 + checksum: 10c0/0157a79874f8f95fdd63540e3f38c8583c2ef572661cd0693cda80ae3e42dfe8e9a4a972ec1b827f861d9a9acf75b37f7d58a37f94a8a053259642912c252bc3 languageName: node linkType: hard "is-weakmap@npm:^2.0.1": version: 2.0.1 resolution: "is-weakmap@npm:2.0.1" - checksum: 9c9fec9efa7bf5030a4a927f33fff2a6976b93646259f92b517d3646c073cc5b98283a162ce75c412b060a46de07032444b530f0a4c9b6e012ef8f1741c3a987 + checksum: 10c0/9c9fec9efa7bf5030a4a927f33fff2a6976b93646259f92b517d3646c073cc5b98283a162ce75c412b060a46de07032444b530f0a4c9b6e012ef8f1741c3a987 languageName: node linkType: hard @@ -9800,7 +9743,7 @@ __metadata: resolution: "is-weakref@npm:1.0.2" dependencies: call-bind: "npm:^1.0.2" - checksum: 1545c5d172cb690c392f2136c23eec07d8d78a7f57d0e41f10078aa4f5daf5d7f57b6513a67514ab4f073275ad00c9822fc8935e00229d0a2089e1c02685d4b1 + checksum: 10c0/1545c5d172cb690c392f2136c23eec07d8d78a7f57d0e41f10078aa4f5daf5d7f57b6513a67514ab4f073275ad00c9822fc8935e00229d0a2089e1c02685d4b1 languageName: node linkType: hard @@ -9810,65 +9753,56 @@ __metadata: dependencies: call-bind: "npm:^1.0.2" get-intrinsic: "npm:^1.1.1" - checksum: ef5136bd446ae4603229b897f73efd0720c6ab3ec6cc05c8d5c4b51aa9f95164713c4cad0a22ff1fedf04865ff86cae4648bc1d5eead4b6388e1150525af1cc1 + checksum: 10c0/ef5136bd446ae4603229b897f73efd0720c6ab3ec6cc05c8d5c4b51aa9f95164713c4cad0a22ff1fedf04865ff86cae4648bc1d5eead4b6388e1150525af1cc1 languageName: node linkType: hard "is-windows@npm:^1.0.1, is-windows@npm:^1.0.2": version: 1.0.2 resolution: "is-windows@npm:1.0.2" - checksum: b32f418ab3385604a66f1b7a3ce39d25e8881dee0bd30816dc8344ef6ff9df473a732bcc1ec4e84fe99b2f229ae474f7133e8e93f9241686cfcf7eebe53ba7a5 + checksum: 10c0/b32f418ab3385604a66f1b7a3ce39d25e8881dee0bd30816dc8344ef6ff9df473a732bcc1ec4e84fe99b2f229ae474f7133e8e93f9241686cfcf7eebe53ba7a5 languageName: node linkType: hard "is-wsl@npm:^1.1.0": version: 1.1.0 resolution: "is-wsl@npm:1.1.0" - checksum: 7ad0012f21092d6f586c7faad84755a8ef0da9b9ec295e4dc82313cce4e1a93a3da3c217265016461f9b141503fe55fa6eb1fd5457d3f05e8d1bdbb48e50c13a - languageName: node - linkType: hard - -"is-wsl@npm:^2.2.0": - version: 2.2.0 - resolution: "is-wsl@npm:2.2.0" - dependencies: - is-docker: "npm:^2.0.0" - checksum: a6fa2d370d21be487c0165c7a440d567274fbba1a817f2f0bfa41cc5e3af25041d84267baa22df66696956038a43973e72fca117918c91431920bdef490fa25e + checksum: 10c0/7ad0012f21092d6f586c7faad84755a8ef0da9b9ec295e4dc82313cce4e1a93a3da3c217265016461f9b141503fe55fa6eb1fd5457d3f05e8d1bdbb48e50c13a languageName: node linkType: hard "isarray@npm:0.0.1": version: 0.0.1 resolution: "isarray@npm:0.0.1" - checksum: ed1e62da617f71fe348907c71743b5ed550448b455f8d269f89a7c7ddb8ae6e962de3dab6a74a237b06f5eb7f6ece7a45ada8ce96d87fe972926530f91ae3311 + checksum: 10c0/ed1e62da617f71fe348907c71743b5ed550448b455f8d269f89a7c7ddb8ae6e962de3dab6a74a237b06f5eb7f6ece7a45ada8ce96d87fe972926530f91ae3311 languageName: node linkType: hard "isarray@npm:1.0.0, isarray@npm:^1.0.0, isarray@npm:~1.0.0": version: 1.0.0 resolution: "isarray@npm:1.0.0" - checksum: 18b5be6669be53425f0b84098732670ed4e727e3af33bc7f948aac01782110eb9a18b3b329c5323bcdd3acdaae547ee077d3951317e7f133bff7105264b3003d + checksum: 10c0/18b5be6669be53425f0b84098732670ed4e727e3af33bc7f948aac01782110eb9a18b3b329c5323bcdd3acdaae547ee077d3951317e7f133bff7105264b3003d languageName: node linkType: hard "isarray@npm:^2.0.5": version: 2.0.5 resolution: "isarray@npm:2.0.5" - checksum: 4199f14a7a13da2177c66c31080008b7124331956f47bca57dd0b6ea9f11687aa25e565a2c7a2b519bc86988d10398e3049a1f5df13c9f6b7664154690ae79fd + checksum: 10c0/4199f14a7a13da2177c66c31080008b7124331956f47bca57dd0b6ea9f11687aa25e565a2c7a2b519bc86988d10398e3049a1f5df13c9f6b7664154690ae79fd languageName: node linkType: hard "isexe@npm:^2.0.0": version: 2.0.0 resolution: "isexe@npm:2.0.0" - checksum: 228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d + checksum: 10c0/228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d languageName: node linkType: hard "isexe@npm:^3.1.1": version: 3.1.1 resolution: "isexe@npm:3.1.1" - checksum: 9ec257654093443eb0a528a9c8cbba9c0ca7616ccb40abd6dde7202734d96bb86e4ac0d764f0f8cd965856aacbff2f4ce23e730dc19dfb41e3b0d865ca6fdcc7 + checksum: 10c0/9ec257654093443eb0a528a9c8cbba9c0ca7616ccb40abd6dde7202734d96bb86e4ac0d764f0f8cd965856aacbff2f4ce23e730dc19dfb41e3b0d865ca6fdcc7 languageName: node linkType: hard @@ -9877,21 +9811,21 @@ __metadata: resolution: "isobject@npm:2.1.0" dependencies: isarray: "npm:1.0.0" - checksum: c4cafec73b3b2ee11be75dff8dafd283b5728235ac099b07d7873d5182553a707768e208327bbc12931b9422d8822280bf88d894a0024ff5857b3efefb480e7b + checksum: 10c0/c4cafec73b3b2ee11be75dff8dafd283b5728235ac099b07d7873d5182553a707768e208327bbc12931b9422d8822280bf88d894a0024ff5857b3efefb480e7b languageName: node linkType: hard "isobject@npm:^3.0.0, isobject@npm:^3.0.1": version: 3.0.1 resolution: "isobject@npm:3.0.1" - checksum: 03344f5064a82f099a0cd1a8a407f4c0d20b7b8485e8e816c39f249e9416b06c322e8dec5b842b6bb8a06de0af9cb48e7bc1b5352f0fadc2f0abac033db3d4db + checksum: 10c0/03344f5064a82f099a0cd1a8a407f4c0d20b7b8485e8e816c39f249e9416b06c322e8dec5b842b6bb8a06de0af9cb48e7bc1b5352f0fadc2f0abac033db3d4db languageName: node linkType: hard "istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": version: 3.2.0 resolution: "istanbul-lib-coverage@npm:3.2.0" - checksum: 10ecb00a50cac2f506af8231ce523ffa1ac1310db0435c8ffaabb50c1d72539906583aa13c84f8835dc103998b9989edc3c1de989d2e2a96a91a9ba44e5db6b9 + checksum: 10c0/10ecb00a50cac2f506af8231ce523ffa1ac1310db0435c8ffaabb50c1d72539906583aa13c84f8835dc103998b9989edc3c1de989d2e2a96a91a9ba44e5db6b9 languageName: node linkType: hard @@ -9904,7 +9838,7 @@ __metadata: "@istanbuljs/schema": "npm:^0.1.2" istanbul-lib-coverage: "npm:^3.2.0" semver: "npm:^6.3.0" - checksum: 8a1bdf3e377dcc0d33ec32fe2b6ecacdb1e4358fd0eb923d4326bb11c67622c0ceb99600a680f3dad5d29c66fc1991306081e339b4d43d0b8a2ab2e1d910a6ee + checksum: 10c0/8a1bdf3e377dcc0d33ec32fe2b6ecacdb1e4358fd0eb923d4326bb11c67622c0ceb99600a680f3dad5d29c66fc1991306081e339b4d43d0b8a2ab2e1d910a6ee languageName: node linkType: hard @@ -9917,7 +9851,7 @@ __metadata: "@istanbuljs/schema": "npm:^0.1.2" istanbul-lib-coverage: "npm:^3.2.0" semver: "npm:^7.5.4" - checksum: 313d61aca3f82a04ad9377841d05061d603ea3d4a4dd281fdda2479ec4ddbc86dc1792c73651f21c93480570d1ecadc5f63011e2df86f30ee662b62c0c00e3d8 + checksum: 10c0/313d61aca3f82a04ad9377841d05061d603ea3d4a4dd281fdda2479ec4ddbc86dc1792c73651f21c93480570d1ecadc5f63011e2df86f30ee662b62c0c00e3d8 languageName: node linkType: hard @@ -9928,7 +9862,7 @@ __metadata: istanbul-lib-coverage: "npm:^3.0.0" make-dir: "npm:^4.0.0" supports-color: "npm:^7.1.0" - checksum: 84323afb14392de8b6a5714bd7e9af845cfbd56cfe71ed276cda2f5f1201aea673c7111901227ee33e68e4364e288d73861eb2ed48f6679d1e69a43b6d9b3ba7 + checksum: 10c0/84323afb14392de8b6a5714bd7e9af845cfbd56cfe71ed276cda2f5f1201aea673c7111901227ee33e68e4364e288d73861eb2ed48f6679d1e69a43b6d9b3ba7 languageName: node linkType: hard @@ -9939,7 +9873,7 @@ __metadata: debug: "npm:^4.1.1" istanbul-lib-coverage: "npm:^3.0.0" source-map: "npm:^0.6.1" - checksum: 19e4cc405016f2c906dff271a76715b3e881fa9faeb3f09a86cb99b8512b3a5ed19cadfe0b54c17ca0e54c1142c9c6de9330d65506e35873994e06634eebeb66 + checksum: 10c0/19e4cc405016f2c906dff271a76715b3e881fa9faeb3f09a86cb99b8512b3a5ed19cadfe0b54c17ca0e54c1142c9c6de9330d65506e35873994e06634eebeb66 languageName: node linkType: hard @@ -9949,7 +9883,7 @@ __metadata: dependencies: html-escaper: "npm:^2.0.0" istanbul-lib-report: "npm:^3.0.0" - checksum: ec3f1bdbc51b3e0b325a5b9f4ad31a247697f31001df4e81075f7980413f14da1b5adfec574fd156efd3b0464023f61320f6718efc66ee72b32d89611cef99dd + checksum: 10c0/ec3f1bdbc51b3e0b325a5b9f4ad31a247697f31001df4e81075f7980413f14da1b5adfec574fd156efd3b0464023f61320f6718efc66ee72b32d89611cef99dd languageName: node linkType: hard @@ -9962,7 +9896,7 @@ __metadata: has-symbols: "npm:^1.0.3" reflect.getprototypeof: "npm:^1.0.4" set-function-name: "npm:^2.0.1" - checksum: a32151326095e916f306990d909f6bbf23e3221999a18ba686419535dcd1749b10ded505e89334b77dc4c7a58a8508978f0eb16c2c8573e6d412eb7eb894ea79 + checksum: 10c0/a32151326095e916f306990d909f6bbf23e3221999a18ba686419535dcd1749b10ded505e89334b77dc4c7a58a8508978f0eb16c2c8573e6d412eb7eb894ea79 languageName: node linkType: hard @@ -9975,7 +9909,7 @@ __metadata: dependenciesMeta: "@pkgjs/parseargs": optional: true - checksum: f01d8f972d894cd7638bc338e9ef5ddb86f7b208ce177a36d718eac96ec86638a6efa17d0221b10073e64b45edc2ce15340db9380b1f5d5c5d000cbc517dc111 + checksum: 10c0/f01d8f972d894cd7638bc338e9ef5ddb86f7b208ce177a36d718eac96ec86638a6efa17d0221b10073e64b45edc2ce15340db9380b1f5d5c5d000cbc517dc111 languageName: node linkType: hard @@ -9989,7 +9923,7 @@ __metadata: minimatch: "npm:^3.1.2" bin: jake: bin/cli.js - checksum: 89326d01a8bc110d02d973729a66394c79a34b34461116f5c530a2a2dbc30265683fe6737928f75df9178e9d369ff1442f5753fb983d525e740eefdadc56a103 + checksum: 10c0/89326d01a8bc110d02d973729a66394c79a34b34461116f5c530a2a2dbc30265683fe6737928f75df9178e9d369ff1442f5753fb983d525e740eefdadc56a103 languageName: node linkType: hard @@ -10000,7 +9934,7 @@ __metadata: execa: "npm:^5.0.0" jest-util: "npm:^29.7.0" p-limit: "npm:^3.1.0" - checksum: e071384d9e2f6bb462231ac53f29bff86f0e12394c1b49ccafbad225ce2ab7da226279a8a94f421949920bef9be7ef574fd86aee22e8adfa149be73554ab828b + checksum: 10c0/e071384d9e2f6bb462231ac53f29bff86f0e12394c1b49ccafbad225ce2ab7da226279a8a94f421949920bef9be7ef574fd86aee22e8adfa149be73554ab828b languageName: node linkType: hard @@ -10028,7 +9962,7 @@ __metadata: pure-rand: "npm:^6.0.0" slash: "npm:^3.0.0" stack-utils: "npm:^2.0.3" - checksum: 8d15344cf7a9f14e926f0deed64ed190c7a4fa1ed1acfcd81e4cc094d3cc5bf7902ebb7b874edc98ada4185688f90c91e1747e0dfd7ac12463b097968ae74b5e + checksum: 10c0/8d15344cf7a9f14e926f0deed64ed190c7a4fa1ed1acfcd81e4cc094d3cc5bf7902ebb7b874edc98ada4185688f90c91e1747e0dfd7ac12463b097968ae74b5e languageName: node linkType: hard @@ -10054,7 +9988,7 @@ __metadata: optional: true bin: jest: bin/jest.js - checksum: a658fd55050d4075d65c1066364595962ead7661711495cfa1dfeecf3d6d0a8ffec532f3dbd8afbb3e172dd5fd2fb2e813c5e10256e7cf2fea766314942fb43a + checksum: 10c0/a658fd55050d4075d65c1066364595962ead7661711495cfa1dfeecf3d6d0a8ffec532f3dbd8afbb3e172dd5fd2fb2e813c5e10256e7cf2fea766314942fb43a languageName: node linkType: hard @@ -10092,7 +10026,7 @@ __metadata: optional: true ts-node: optional: true - checksum: bab23c2eda1fff06e0d104b00d6adfb1d1aabb7128441899c9bff2247bd26710b050a5364281ce8d52b46b499153bf7e3ee88b19831a8f3451f1477a0246a0f1 + checksum: 10c0/bab23c2eda1fff06e0d104b00d6adfb1d1aabb7128441899c9bff2247bd26710b050a5364281ce8d52b46b499153bf7e3ee88b19831a8f3451f1477a0246a0f1 languageName: node linkType: hard @@ -10104,7 +10038,7 @@ __metadata: diff-sequences: "npm:^29.6.3" jest-get-type: "npm:^29.6.3" pretty-format: "npm:^29.7.0" - checksum: 89a4a7f182590f56f526443dde69acefb1f2f0c9e59253c61d319569856c4931eae66b8a3790c443f529267a0ddba5ba80431c585deed81827032b2b2a1fc999 + checksum: 10c0/89a4a7f182590f56f526443dde69acefb1f2f0c9e59253c61d319569856c4931eae66b8a3790c443f529267a0ddba5ba80431c585deed81827032b2b2a1fc999 languageName: node linkType: hard @@ -10113,7 +10047,7 @@ __metadata: resolution: "jest-docblock@npm:29.7.0" dependencies: detect-newline: "npm:^3.0.0" - checksum: d932a8272345cf6b6142bb70a2bb63e0856cc0093f082821577ea5bdf4643916a98744dfc992189d2b1417c38a11fa42466f6111526bc1fb81366f56410f3be9 + checksum: 10c0/d932a8272345cf6b6142bb70a2bb63e0856cc0093f082821577ea5bdf4643916a98744dfc992189d2b1417c38a11fa42466f6111526bc1fb81366f56410f3be9 languageName: node linkType: hard @@ -10126,7 +10060,7 @@ __metadata: jest-get-type: "npm:^29.6.3" jest-util: "npm:^29.7.0" pretty-format: "npm:^29.7.0" - checksum: f7f9a90ebee80cc688e825feceb2613627826ac41ea76a366fa58e669c3b2403d364c7c0a74d862d469b103c843154f8456d3b1c02b487509a12afa8b59edbb4 + checksum: 10c0/f7f9a90ebee80cc688e825feceb2613627826ac41ea76a366fa58e669c3b2403d364c7c0a74d862d469b103c843154f8456d3b1c02b487509a12afa8b59edbb4 languageName: node linkType: hard @@ -10147,7 +10081,7 @@ __metadata: peerDependenciesMeta: canvas: optional: true - checksum: 139b94e2c8ec1bb5a46ce17df5211da65ce867354b3fd4e00fa6a0d1da95902df4cf7881273fc6ea937e5c325d39d6773f0d41b6c469363334de9d489d2c321f + checksum: 10c0/139b94e2c8ec1bb5a46ce17df5211da65ce867354b3fd4e00fa6a0d1da95902df4cf7881273fc6ea937e5c325d39d6773f0d41b6c469363334de9d489d2c321f languageName: node linkType: hard @@ -10161,14 +10095,14 @@ __metadata: "@types/node": "npm:*" jest-mock: "npm:^29.7.0" jest-util: "npm:^29.7.0" - checksum: 61f04fec077f8b1b5c1a633e3612fc0c9aa79a0ab7b05600683428f1e01a4d35346c474bde6f439f9fcc1a4aa9a2861ff852d079a43ab64b02105d1004b2592b + checksum: 10c0/61f04fec077f8b1b5c1a633e3612fc0c9aa79a0ab7b05600683428f1e01a4d35346c474bde6f439f9fcc1a4aa9a2861ff852d079a43ab64b02105d1004b2592b languageName: node linkType: hard "jest-get-type@npm:^29.6.3": version: 29.6.3 resolution: "jest-get-type@npm:29.6.3" - checksum: 552e7a97a983d3c2d4e412a44eb7de0430ff773dd99f7500962c268d6dfbfa431d7d08f919c9d960530e5f7f78eb47f267ad9b318265e5092b3ff9ede0db7c2b + checksum: 10c0/552e7a97a983d3c2d4e412a44eb7de0430ff773dd99f7500962c268d6dfbfa431d7d08f919c9d960530e5f7f78eb47f267ad9b318265e5092b3ff9ede0db7c2b languageName: node linkType: hard @@ -10191,7 +10125,7 @@ __metadata: dependenciesMeta: fsevents: optional: true - checksum: 2683a8f29793c75a4728787662972fedd9267704c8f7ef9d84f2beed9a977f1cf5e998c07b6f36ba5603f53cb010c911fe8cd0ac9886e073fe28ca66beefd30c + checksum: 10c0/2683a8f29793c75a4728787662972fedd9267704c8f7ef9d84f2beed9a977f1cf5e998c07b6f36ba5603f53cb010c911fe8cd0ac9886e073fe28ca66beefd30c languageName: node linkType: hard @@ -10201,7 +10135,7 @@ __metadata: dependencies: jest-get-type: "npm:^29.6.3" pretty-format: "npm:^29.7.0" - checksum: 71bb9f77fc489acb842a5c7be030f2b9acb18574dc9fb98b3100fc57d422b1abc55f08040884bd6e6dbf455047a62f7eaff12aa4058f7cbdc11558718ca6a395 + checksum: 10c0/71bb9f77fc489acb842a5c7be030f2b9acb18574dc9fb98b3100fc57d422b1abc55f08040884bd6e6dbf455047a62f7eaff12aa4058f7cbdc11558718ca6a395 languageName: node linkType: hard @@ -10213,7 +10147,7 @@ __metadata: jest-diff: "npm:^29.7.0" jest-get-type: "npm:^29.6.3" pretty-format: "npm:^29.7.0" - checksum: 0d0e70b28fa5c7d4dce701dc1f46ae0922102aadc24ed45d594dd9b7ae0a8a6ef8b216718d1ab79e451291217e05d4d49a82666e1a3cc2b428b75cd9c933244e + checksum: 10c0/0d0e70b28fa5c7d4dce701dc1f46ae0922102aadc24ed45d594dd9b7ae0a8a6ef8b216718d1ab79e451291217e05d4d49a82666e1a3cc2b428b75cd9c933244e languageName: node linkType: hard @@ -10230,7 +10164,7 @@ __metadata: pretty-format: "npm:^29.7.0" slash: "npm:^3.0.0" stack-utils: "npm:^2.0.3" - checksum: 850ae35477f59f3e6f27efac5215f706296e2104af39232bb14e5403e067992afb5c015e87a9243ec4d9df38525ef1ca663af9f2f4766aa116f127247008bd22 + checksum: 10c0/850ae35477f59f3e6f27efac5215f706296e2104af39232bb14e5403e067992afb5c015e87a9243ec4d9df38525ef1ca663af9f2f4766aa116f127247008bd22 languageName: node linkType: hard @@ -10241,7 +10175,7 @@ __metadata: "@jest/types": "npm:^29.6.3" "@types/node": "npm:*" jest-util: "npm:^29.7.0" - checksum: 7b9f8349ee87695a309fe15c46a74ab04c853369e5c40952d68061d9dc3159a0f0ed73e215f81b07ee97a9faaf10aebe5877a9d6255068a0977eae6a9ff1d5ac + checksum: 10c0/7b9f8349ee87695a309fe15c46a74ab04c853369e5c40952d68061d9dc3159a0f0ed73e215f81b07ee97a9faaf10aebe5877a9d6255068a0977eae6a9ff1d5ac languageName: node linkType: hard @@ -10253,14 +10187,14 @@ __metadata: peerDependenciesMeta: jest-resolve: optional: true - checksum: 86eec0c78449a2de733a6d3e316d49461af6a858070e113c97f75fb742a48c2396ea94150cbca44159ffd4a959f743a47a8b37a792ef6fdad2cf0a5cba973fac + checksum: 10c0/86eec0c78449a2de733a6d3e316d49461af6a858070e113c97f75fb742a48c2396ea94150cbca44159ffd4a959f743a47a8b37a792ef6fdad2cf0a5cba973fac languageName: node linkType: hard "jest-regex-util@npm:^29.6.3": version: 29.6.3 resolution: "jest-regex-util@npm:29.6.3" - checksum: 4e33fb16c4f42111159cafe26397118dcfc4cf08bc178a67149fb05f45546a91928b820894572679d62559839d0992e21080a1527faad65daaae8743a5705a3b + checksum: 10c0/4e33fb16c4f42111159cafe26397118dcfc4cf08bc178a67149fb05f45546a91928b820894572679d62559839d0992e21080a1527faad65daaae8743a5705a3b languageName: node linkType: hard @@ -10270,7 +10204,7 @@ __metadata: dependencies: jest-regex-util: "npm:^29.6.3" jest-snapshot: "npm:^29.7.0" - checksum: b6e9ad8ae5b6049474118ea6441dfddd385b6d1fc471db0136f7c8fbcfe97137a9665e4f837a9f49f15a29a1deb95a14439b7aec812f3f99d08f228464930f0d + checksum: 10c0/b6e9ad8ae5b6049474118ea6441dfddd385b6d1fc471db0136f7c8fbcfe97137a9665e4f837a9f49f15a29a1deb95a14439b7aec812f3f99d08f228464930f0d languageName: node linkType: hard @@ -10287,7 +10221,7 @@ __metadata: resolve: "npm:^1.20.0" resolve.exports: "npm:^2.0.0" slash: "npm:^3.0.0" - checksum: 59da5c9c5b50563e959a45e09e2eace783d7f9ac0b5dcc6375dea4c0db938d2ebda97124c8161310082760e8ebbeff9f6b177c15ca2f57fb424f637a5d2adb47 + checksum: 10c0/59da5c9c5b50563e959a45e09e2eace783d7f9ac0b5dcc6375dea4c0db938d2ebda97124c8161310082760e8ebbeff9f6b177c15ca2f57fb424f637a5d2adb47 languageName: node linkType: hard @@ -10316,7 +10250,7 @@ __metadata: jest-worker: "npm:^29.7.0" p-limit: "npm:^3.1.0" source-map-support: "npm:0.5.13" - checksum: 2194b4531068d939f14c8d3274fe5938b77fa73126aedf9c09ec9dec57d13f22c72a3b5af01ac04f5c1cf2e28d0ac0b4a54212a61b05f10b5d6b47f2a1097bb4 + checksum: 10c0/2194b4531068d939f14c8d3274fe5938b77fa73126aedf9c09ec9dec57d13f22c72a3b5af01ac04f5c1cf2e28d0ac0b4a54212a61b05f10b5d6b47f2a1097bb4 languageName: node linkType: hard @@ -10346,7 +10280,7 @@ __metadata: jest-util: "npm:^29.7.0" slash: "npm:^3.0.0" strip-bom: "npm:^4.0.0" - checksum: 7cd89a1deda0bda7d0941835434e44f9d6b7bd50b5c5d9b0fc9a6c990b2d4d2cab59685ab3cb2850ed4cc37059f6de903af5a50565d7f7f1192a77d3fd6dd2a6 + checksum: 10c0/7cd89a1deda0bda7d0941835434e44f9d6b7bd50b5c5d9b0fc9a6c990b2d4d2cab59685ab3cb2850ed4cc37059f6de903af5a50565d7f7f1192a77d3fd6dd2a6 languageName: node linkType: hard @@ -10374,7 +10308,7 @@ __metadata: natural-compare: "npm:^1.4.0" pretty-format: "npm:^29.7.0" semver: "npm:^7.5.3" - checksum: 6e9003c94ec58172b4a62864a91c0146513207bedf4e0a06e1e2ac70a4484088a2683e3a0538d8ea913bcfd53dc54a9b98a98cdfa562e7fe1d1339aeae1da570 + checksum: 10c0/6e9003c94ec58172b4a62864a91c0146513207bedf4e0a06e1e2ac70a4484088a2683e3a0538d8ea913bcfd53dc54a9b98a98cdfa562e7fe1d1339aeae1da570 languageName: node linkType: hard @@ -10388,7 +10322,7 @@ __metadata: ci-info: "npm:^3.2.0" graceful-fs: "npm:^4.2.9" picomatch: "npm:^2.2.3" - checksum: bc55a8f49fdbb8f51baf31d2a4f312fb66c9db1483b82f602c9c990e659cdd7ec529c8e916d5a89452ecbcfae4949b21b40a7a59d4ffc0cd813a973ab08c8150 + checksum: 10c0/bc55a8f49fdbb8f51baf31d2a4f312fb66c9db1483b82f602c9c990e659cdd7ec529c8e916d5a89452ecbcfae4949b21b40a7a59d4ffc0cd813a973ab08c8150 languageName: node linkType: hard @@ -10402,7 +10336,7 @@ __metadata: jest-get-type: "npm:^29.6.3" leven: "npm:^3.1.0" pretty-format: "npm:^29.7.0" - checksum: a20b930480c1ed68778c739f4739dce39423131bc070cd2505ddede762a5570a256212e9c2401b7ae9ba4d7b7c0803f03c5b8f1561c62348213aba18d9dbece2 + checksum: 10c0/a20b930480c1ed68778c739f4739dce39423131bc070cd2505ddede762a5570a256212e9c2401b7ae9ba4d7b7c0803f03c5b8f1561c62348213aba18d9dbece2 languageName: node linkType: hard @@ -10418,7 +10352,7 @@ __metadata: emittery: "npm:^0.13.1" jest-util: "npm:^29.7.0" string-length: "npm:^4.0.1" - checksum: ec6c75030562fc8f8c727cb8f3b94e75d831fc718785abfc196e1f2a2ebc9a2e38744a15147170039628a853d77a3b695561ce850375ede3a4ee6037a2574567 + checksum: 10c0/ec6c75030562fc8f8c727cb8f3b94e75d831fc718785abfc196e1f2a2ebc9a2e38744a15147170039628a853d77a3b695561ce850375ede3a4ee6037a2574567 languageName: node linkType: hard @@ -10429,7 +10363,7 @@ __metadata: "@types/node": "npm:*" merge-stream: "npm:^2.0.0" supports-color: "npm:^7.0.0" - checksum: 07e4dba650381604cda253ab6d5837fe0279c8d68c25884995b45bfe149a7a1e1b5a97f304b4518f257dac2a9ddc1808d57d650649c3ab855e9e60cf824d2970 + checksum: 10c0/07e4dba650381604cda253ab6d5837fe0279c8d68c25884995b45bfe149a7a1e1b5a97f304b4518f257dac2a9ddc1808d57d650649c3ab855e9e60cf824d2970 languageName: node linkType: hard @@ -10441,7 +10375,7 @@ __metadata: jest-util: "npm:^29.7.0" merge-stream: "npm:^2.0.0" supports-color: "npm:^8.0.0" - checksum: 5570a3a005b16f46c131968b8a5b56d291f9bbb85ff4217e31c80bd8a02e7de799e59a54b95ca28d5c302f248b54cbffde2d177c2f0f52ffcee7504c6eabf660 + checksum: 10c0/5570a3a005b16f46c131968b8a5b56d291f9bbb85ff4217e31c80bd8a02e7de799e59a54b95ca28d5c302f248b54cbffde2d177c2f0f52ffcee7504c6eabf660 languageName: node linkType: hard @@ -10460,14 +10394,14 @@ __metadata: optional: true bin: jest: bin/jest.js - checksum: f40eb8171cf147c617cc6ada49d062fbb03b4da666cb8d39cdbfb739a7d75eea4c3ca150fb072d0d273dce0c753db4d0467d54906ad0293f59c54f9db4a09d8b + checksum: 10c0/f40eb8171cf147c617cc6ada49d062fbb03b4da666cb8d39cdbfb739a7d75eea4c3ca150fb072d0d273dce0c753db4d0467d54906ad0293f59c54f9db4a09d8b languageName: node linkType: hard "joycon@npm:^3.1.1": version: 3.1.1 resolution: "joycon@npm:3.1.1" - checksum: 131fb1e98c9065d067fd49b6e685487ac4ad4d254191d7aa2c9e3b90f4e9ca70430c43cad001602bdbdabcf58717d3b5c5b7461c1bd8e39478c8de706b3fe6ae + checksum: 10c0/131fb1e98c9065d067fd49b6e685487ac4ad4d254191d7aa2c9e3b90f4e9ca70430c43cad001602bdbdabcf58717d3b5c5b7461c1bd8e39478c8de706b3fe6ae languageName: node linkType: hard @@ -10482,21 +10416,21 @@ __metadata: yargs-parser: "npm:^20.2.1" bin: jpeg-autorotate: src/cli.js - checksum: 75328e15b7abcaf8b36c980495cb0b37ffabeb8921e8576312deac8139a9e8a66f85d9196f314120e4633c76623d1b595e65ca7a87b679511ffb804f880a1644 + checksum: 10c0/75328e15b7abcaf8b36c980495cb0b37ffabeb8921e8576312deac8139a9e8a66f85d9196f314120e4633c76623d1b595e65ca7a87b679511ffb804f880a1644 languageName: node linkType: hard "jpeg-js@npm:^0.4.2": version: 0.4.4 resolution: "jpeg-js@npm:0.4.4" - checksum: 4d0d5097f8e55d8bbce6f1dc32ffaf3f43f321f6222e4e6490734fdc6d005322e3bd6fb992c2df7f5b587343b1441a1c333281dc3285bc9116e369fd2a2b43a7 + checksum: 10c0/4d0d5097f8e55d8bbce6f1dc32ffaf3f43f321f6222e4e6490734fdc6d005322e3bd6fb992c2df7f5b587343b1441a1c333281dc3285bc9116e369fd2a2b43a7 languageName: node linkType: hard "js-tokens@npm:^3.0.0 || ^4.0.0, js-tokens@npm:^4.0.0": version: 4.0.0 resolution: "js-tokens@npm:4.0.0" - checksum: e248708d377aa058eacf2037b07ded847790e6de892bbad3dac0abba2e759cb9f121b00099a65195616badcb6eca8d14d975cb3e89eb1cfda644756402c8aeed + checksum: 10c0/e248708d377aa058eacf2037b07ded847790e6de892bbad3dac0abba2e759cb9f121b00099a65195616badcb6eca8d14d975cb3e89eb1cfda644756402c8aeed languageName: node linkType: hard @@ -10508,7 +10442,7 @@ __metadata: esprima: "npm:^4.0.0" bin: js-yaml: bin/js-yaml.js - checksum: 6746baaaeac312c4db8e75fa22331d9a04cccb7792d126ed8ce6a0bbcfef0cedaddd0c5098fade53db067c09fe00aa1c957674b4765610a8b06a5a189e46433b + checksum: 10c0/6746baaaeac312c4db8e75fa22331d9a04cccb7792d126ed8ce6a0bbcfef0cedaddd0c5098fade53db067c09fe00aa1c957674b4765610a8b06a5a189e46433b languageName: node linkType: hard @@ -10519,14 +10453,14 @@ __metadata: argparse: "npm:^2.0.1" bin: js-yaml: bin/js-yaml.js - checksum: 184a24b4eaacfce40ad9074c64fd42ac83cf74d8c8cd137718d456ced75051229e5061b8633c3366b8aada17945a7a356b337828c19da92b51ae62126575018f + checksum: 10c0/184a24b4eaacfce40ad9074c64fd42ac83cf74d8c8cd137718d456ced75051229e5061b8633c3366b8aada17945a7a356b337828c19da92b51ae62126575018f languageName: node linkType: hard "jsdoc-type-pratt-parser@npm:~4.0.0": version: 4.0.0 resolution: "jsdoc-type-pratt-parser@npm:4.0.0" - checksum: b23ef7bbbe2f56d72630d1c5a233dc9fecaff399063d373c57bef136908c1b05e723dac107177303c03ccf8d75aa51507510b282aa567600477479c5ea0c36d1 + checksum: 10c0/b23ef7bbbe2f56d72630d1c5a233dc9fecaff399063d373c57bef136908c1b05e723dac107177303c03ccf8d75aa51507510b282aa567600477479c5ea0c36d1 languageName: node linkType: hard @@ -10565,7 +10499,7 @@ __metadata: peerDependenciesMeta: canvas: optional: true - checksum: b109073bb826a966db7828f46cb1d7371abecd30f182b143c52be5fe1ed84513bbbe995eb3d157241681fcd18331381e61e3dc004d4949f3a63bca02f6214902 + checksum: 10c0/b109073bb826a966db7828f46cb1d7371abecd30f182b143c52be5fe1ed84513bbbe995eb3d157241681fcd18331381e61e3dc004d4949f3a63bca02f6214902 languageName: node linkType: hard @@ -10599,7 +10533,7 @@ __metadata: peerDependenciesMeta: canvas: optional: true - checksum: 7b35043d7af39ad6dcaef0fa5679d8c8a94c6c9b6cc4a79222b7c9987d57ab7150c50856684ae56b473ab28c7d82aec0fb7ca19dcbd4c3f46683c807d717a3af + checksum: 10c0/7b35043d7af39ad6dcaef0fa5679d8c8a94c6c9b6cc4a79222b7c9987d57ab7150c50856684ae56b473ab28c7d82aec0fb7ca19dcbd4c3f46683c807d717a3af languageName: node linkType: hard @@ -10608,7 +10542,7 @@ __metadata: resolution: "jsesc@npm:2.5.2" bin: jsesc: bin/jsesc - checksum: dbf59312e0ebf2b4405ef413ec2b25abb5f8f4d9bc5fb8d9f90381622ebca5f2af6a6aa9a8578f65903f9e33990a6dc798edd0ce5586894bf0e9e31803a1de88 + checksum: 10c0/dbf59312e0ebf2b4405ef413ec2b25abb5f8f4d9bc5fb8d9f90381622ebca5f2af6a6aa9a8578f65903f9e33990a6dc798edd0ce5586894bf0e9e31803a1de88 languageName: node linkType: hard @@ -10617,56 +10551,56 @@ __metadata: resolution: "jsesc@npm:0.5.0" bin: jsesc: bin/jsesc - checksum: f93792440ae1d80f091b65f8ceddf8e55c4bb7f1a09dee5dcbdb0db5612c55c0f6045625aa6b7e8edb2e0a4feabd80ee48616dbe2d37055573a84db3d24f96d9 + checksum: 10c0/f93792440ae1d80f091b65f8ceddf8e55c4bb7f1a09dee5dcbdb0db5612c55c0f6045625aa6b7e8edb2e0a4feabd80ee48616dbe2d37055573a84db3d24f96d9 languageName: node linkType: hard "json-buffer@npm:3.0.1": version: 3.0.1 resolution: "json-buffer@npm:3.0.1" - checksum: 0d1c91569d9588e7eef2b49b59851f297f3ab93c7b35c7c221e288099322be6b562767d11e4821da500f3219542b9afd2e54c5dc573107c1126ed1080f8e96d7 + checksum: 10c0/0d1c91569d9588e7eef2b49b59851f297f3ab93c7b35c7c221e288099322be6b562767d11e4821da500f3219542b9afd2e54c5dc573107c1126ed1080f8e96d7 languageName: node linkType: hard "json-parse-better-errors@npm:^1.0.2": version: 1.0.2 resolution: "json-parse-better-errors@npm:1.0.2" - checksum: 2f1287a7c833e397c9ddd361a78638e828fc523038bb3441fd4fc144cfd2c6cd4963ffb9e207e648cf7b692600f1e1e524e965c32df5152120910e4903a47dcb + checksum: 10c0/2f1287a7c833e397c9ddd361a78638e828fc523038bb3441fd4fc144cfd2c6cd4963ffb9e207e648cf7b692600f1e1e524e965c32df5152120910e4903a47dcb languageName: node linkType: hard "json-parse-even-better-errors@npm:^2.3.0": version: 2.3.1 resolution: "json-parse-even-better-errors@npm:2.3.1" - checksum: 140932564c8f0b88455432e0f33c4cb4086b8868e37524e07e723f4eaedb9425bdc2bafd71bd1d9765bd15fd1e2d126972bc83990f55c467168c228c24d665f3 + checksum: 10c0/140932564c8f0b88455432e0f33c4cb4086b8868e37524e07e723f4eaedb9425bdc2bafd71bd1d9765bd15fd1e2d126972bc83990f55c467168c228c24d665f3 languageName: node linkType: hard "json-schema-traverse@npm:^0.4.1": version: 0.4.1 resolution: "json-schema-traverse@npm:0.4.1" - checksum: 108fa90d4cc6f08243aedc6da16c408daf81793bf903e9fd5ab21983cda433d5d2da49e40711da016289465ec2e62e0324dcdfbc06275a607fe3233fde4942ce + checksum: 10c0/108fa90d4cc6f08243aedc6da16c408daf81793bf903e9fd5ab21983cda433d5d2da49e40711da016289465ec2e62e0324dcdfbc06275a607fe3233fde4942ce languageName: node linkType: hard "json-schema-traverse@npm:^1.0.0": version: 1.0.0 resolution: "json-schema-traverse@npm:1.0.0" - checksum: 71e30015d7f3d6dc1c316d6298047c8ef98a06d31ad064919976583eb61e1018a60a0067338f0f79cabc00d84af3fcc489bd48ce8a46ea165d9541ba17fb30c6 + checksum: 10c0/71e30015d7f3d6dc1c316d6298047c8ef98a06d31ad064919976583eb61e1018a60a0067338f0f79cabc00d84af3fcc489bd48ce8a46ea165d9541ba17fb30c6 languageName: node linkType: hard "json-schema@npm:^0.4.0": version: 0.4.0 resolution: "json-schema@npm:0.4.0" - checksum: d4a637ec1d83544857c1c163232f3da46912e971d5bf054ba44fdb88f07d8d359a462b4aec46f2745efbc57053365608d88bc1d7b1729f7b4fc3369765639ed3 + checksum: 10c0/d4a637ec1d83544857c1c163232f3da46912e971d5bf054ba44fdb88f07d8d359a462b4aec46f2745efbc57053365608d88bc1d7b1729f7b4fc3369765639ed3 languageName: node linkType: hard "json-stable-stringify-without-jsonify@npm:^1.0.1": version: 1.0.1 resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" - checksum: cb168b61fd4de83e58d09aaa6425ef71001bae30d260e2c57e7d09a5fd82223e2f22a042dedaab8db23b7d9ae46854b08bb1f91675a8be11c5cffebef5fb66a5 + checksum: 10c0/cb168b61fd4de83e58d09aaa6425ef71001bae30d260e2c57e7d09a5fd82223e2f22a042dedaab8db23b7d9ae46854b08bb1f91675a8be11c5cffebef5fb66a5 languageName: node linkType: hard @@ -10675,7 +10609,7 @@ __metadata: resolution: "json-stable-stringify@npm:1.0.2" dependencies: jsonify: "npm:^0.0.1" - checksum: 502d021c3c59c09587faa40d7693d77c00460fd6c68bae95d6e35804909ec8c4aec71b136d3a09df61a7ebf803eb6e820f23ede76b77e74b8b02c76afb2ada8c + checksum: 10c0/502d021c3c59c09587faa40d7693d77c00460fd6c68bae95d6e35804909ec8c4aec71b136d3a09df61a7ebf803eb6e820f23ede76b77e74b8b02c76afb2ada8c languageName: node linkType: hard @@ -10686,7 +10620,7 @@ __metadata: minimist: "npm:^1.2.0" bin: json5: lib/cli.js - checksum: 9ee316bf21f000b00752e6c2a3b79ecf5324515a5c60ee88983a1910a45426b643a4f3461657586e8aeca87aaf96f0a519b0516d2ae527a6c3e7eed80f68717f + checksum: 10c0/9ee316bf21f000b00752e6c2a3b79ecf5324515a5c60ee88983a1910a45426b643a4f3461657586e8aeca87aaf96f0a519b0516d2ae527a6c3e7eed80f68717f languageName: node linkType: hard @@ -10695,7 +10629,7 @@ __metadata: resolution: "json5@npm:2.2.3" bin: json5: lib/cli.js - checksum: 5a04eed94810fa55c5ea138b2f7a5c12b97c3750bc63d11e511dcecbfef758003861522a070c2272764ee0f4e3e323862f386945aeb5b85b87ee43f084ba586c + checksum: 10c0/5a04eed94810fa55c5ea138b2f7a5c12b97c3750bc63d11e511dcecbfef758003861522a070c2272764ee0f4e3e323862f386945aeb5b85b87ee43f084ba586c languageName: node linkType: hard @@ -10708,21 +10642,21 @@ __metadata: dependenciesMeta: graceful-fs: optional: true - checksum: 4f95b5e8a5622b1e9e8f33c96b7ef3158122f595998114d1e7f03985649ea99cb3cd99ce1ed1831ae94c8c8543ab45ebd044207612f31a56fd08462140e46865 + checksum: 10c0/4f95b5e8a5622b1e9e8f33c96b7ef3158122f595998114d1e7f03985649ea99cb3cd99ce1ed1831ae94c8c8543ab45ebd044207612f31a56fd08462140e46865 languageName: node linkType: hard "jsonify@npm:^0.0.1": version: 0.0.1 resolution: "jsonify@npm:0.0.1" - checksum: 7f5499cdd59a0967ed35bda48b7cec43d850bbc8fb955cdd3a1717bb0efadbe300724d5646de765bb7a99fc1c3ab06eb80d93503c6faaf99b4ff50a3326692f6 + checksum: 10c0/7f5499cdd59a0967ed35bda48b7cec43d850bbc8fb955cdd3a1717bb0efadbe300724d5646de765bb7a99fc1c3ab06eb80d93503c6faaf99b4ff50a3326692f6 languageName: node linkType: hard "jsonpointer@npm:^5.0.0": version: 5.0.1 resolution: "jsonpointer@npm:5.0.1" - checksum: 89929e58b400fcb96928c0504fcf4fc3f919d81e9543ceb055df125538470ee25290bb4984251e172e6ef8fcc55761eb998c118da763a82051ad89d4cb073fe7 + checksum: 10c0/89929e58b400fcb96928c0504fcf4fc3f919d81e9543ceb055df125538470ee25290bb4984251e172e6ef8fcc55761eb998c118da763a82051ad89d4cb073fe7 languageName: node linkType: hard @@ -10734,14 +10668,14 @@ __metadata: array.prototype.flat: "npm:^1.3.1" object.assign: "npm:^4.1.4" object.values: "npm:^1.1.6" - checksum: a32679e9cb55469cb6d8bbc863f7d631b2c98b7fc7bf172629261751a6e7bc8da6ae374ddb74d5fbd8b06cf0eb4572287b259813d92b36e384024ed35e4c13e1 + checksum: 10c0/a32679e9cb55469cb6d8bbc863f7d631b2c98b7fc7bf172629261751a6e7bc8da6ae374ddb74d5fbd8b06cf0eb4572287b259813d92b36e384024ed35e4c13e1 languageName: node linkType: hard "keycode@npm:^2.1.7": version: 2.2.1 resolution: "keycode@npm:2.2.1" - checksum: e38ecbdc62f57e18ef9f7ad88aefded84e05b89115a40eea3081a7002d7c055765ddb5f5c3e2dd36ac2b2ab3901053c8286c9db082fd807b3abeb7e44034d96a + checksum: 10c0/e38ecbdc62f57e18ef9f7ad88aefded84e05b89115a40eea3081a7002d7c055765ddb5f5c3e2dd36ac2b2ab3901053c8286c9db082fd807b3abeb7e44034d96a languageName: node linkType: hard @@ -10750,49 +10684,49 @@ __metadata: resolution: "keyv@npm:4.5.4" dependencies: json-buffer: "npm:3.0.1" - checksum: aa52f3c5e18e16bb6324876bb8b59dd02acf782a4b789c7b2ae21107fab95fab3890ed448d4f8dba80ce05391eeac4bfabb4f02a20221342982f806fa2cf271e + checksum: 10c0/aa52f3c5e18e16bb6324876bb8b59dd02acf782a4b789c7b2ae21107fab95fab3890ed448d4f8dba80ce05391eeac4bfabb4f02a20221342982f806fa2cf271e languageName: node linkType: hard "killable@npm:^1.0.1": version: 1.0.1 resolution: "killable@npm:1.0.1" - checksum: 1de0ffe2dd603920685d1b2027136051f095ab42be03e354a43713664e99617cf32cbdb61fc03742c329386d7cf9450edbf4593e50daeaae381e20627b477cd6 + checksum: 10c0/1de0ffe2dd603920685d1b2027136051f095ab42be03e354a43713664e99617cf32cbdb61fc03742c329386d7cf9450edbf4593e50daeaae381e20627b477cd6 languageName: node linkType: hard "kind-of@npm:^6.0.3": version: 6.0.3 resolution: "kind-of@npm:6.0.3" - checksum: 61cdff9623dabf3568b6445e93e31376bee1cdb93f8ba7033d86022c2a9b1791a1d9510e026e6465ebd701a6dd2f7b0808483ad8838341ac52f003f512e0b4c4 + checksum: 10c0/61cdff9623dabf3568b6445e93e31376bee1cdb93f8ba7033d86022c2a9b1791a1d9510e026e6465ebd701a6dd2f7b0808483ad8838341ac52f003f512e0b4c4 languageName: node linkType: hard "kleur@npm:^3.0.3": version: 3.0.3 resolution: "kleur@npm:3.0.3" - checksum: cd3a0b8878e7d6d3799e54340efe3591ca787d9f95f109f28129bdd2915e37807bf8918bb295ab86afb8c82196beec5a1adcaf29042ce3f2bd932b038fe3aa4b + checksum: 10c0/cd3a0b8878e7d6d3799e54340efe3591ca787d9f95f109f28129bdd2915e37807bf8918bb295ab86afb8c82196beec5a1adcaf29042ce3f2bd932b038fe3aa4b languageName: node linkType: hard "klona@npm:^2.0.4": version: 2.0.6 resolution: "klona@npm:2.0.6" - checksum: 94eed2c6c2ce99f409df9186a96340558897b3e62a85afdc1ee39103954d2ebe1c1c4e9fe2b0952771771fa96d70055ede8b27962a7021406374fdb695fd4d01 + checksum: 10c0/94eed2c6c2ce99f409df9186a96340558897b3e62a85afdc1ee39103954d2ebe1c1c4e9fe2b0952771771fa96d70055ede8b27962a7021406374fdb695fd4d01 languageName: node linkType: hard "known-css-properties@npm:^0.29.0": version: 0.29.0 resolution: "known-css-properties@npm:0.29.0" - checksum: f66e9992097b8f54e97dbe729943d4a11b8d3ba15f68dbb3deb8bb0122cb89c22c90c9221ecb1e3f2e236838fe3c0faae319b43908c81b6e254ac43cafde2906 + checksum: 10c0/f66e9992097b8f54e97dbe729943d4a11b8d3ba15f68dbb3deb8bb0122cb89c22c90c9221ecb1e3f2e236838fe3c0faae319b43908c81b6e254ac43cafde2906 languageName: node linkType: hard "language-subtag-registry@npm:^0.3.20": version: 0.3.22 resolution: "language-subtag-registry@npm:0.3.22" - checksum: d1e09971260a7cd3b9fdeb190d33af0b6e99c8697013537d9aaa15f7856d9d83aee128ba8078e219df0a7cf4b8dd18d1a0c188f6543b500d92a2689d2d114b70 + checksum: 10c0/d1e09971260a7cd3b9fdeb190d33af0b6e99c8697013537d9aaa15f7856d9d83aee128ba8078e219df0a7cf4b8dd18d1a0c188f6543b500d92a2689d2d114b70 languageName: node linkType: hard @@ -10801,14 +10735,14 @@ __metadata: resolution: "language-tags@npm:1.0.9" dependencies: language-subtag-registry: "npm:^0.3.20" - checksum: 9ab911213c4bd8bd583c850201c17794e52cb0660d1ab6e32558aadc8324abebf6844e46f92b80a5d600d0fbba7eface2c207bfaf270a1c7fd539e4c3a880bff + checksum: 10c0/9ab911213c4bd8bd583c850201c17794e52cb0660d1ab6e32558aadc8324abebf6844e46f92b80a5d600d0fbba7eface2c207bfaf270a1c7fd539e4c3a880bff languageName: node linkType: hard "leven@npm:^3.1.0": version: 3.1.0 resolution: "leven@npm:3.1.0" - checksum: cd778ba3fbab0f4d0500b7e87d1f6e1f041507c56fdcd47e8256a3012c98aaee371d4c15e0a76e0386107af2d42e2b7466160a2d80688aaa03e66e49949f42df + checksum: 10c0/cd778ba3fbab0f4d0500b7e87d1f6e1f041507c56fdcd47e8256a3012c98aaee371d4c15e0a76e0386107af2d42e2b7466160a2d80688aaa03e66e49949f42df languageName: node linkType: hard @@ -10818,47 +10752,54 @@ __metadata: dependencies: prelude-ls: "npm:^1.2.1" type-check: "npm:~0.4.0" - checksum: effb03cad7c89dfa5bd4f6989364bfc79994c2042ec5966cb9b95990e2edee5cd8969ddf42616a0373ac49fac1403437deaf6e9050fbbaa3546093a59b9ac94e + checksum: 10c0/effb03cad7c89dfa5bd4f6989364bfc79994c2042ec5966cb9b95990e2edee5cd8969ddf42616a0373ac49fac1403437deaf6e9050fbbaa3546093a59b9ac94e languageName: node linkType: hard -"lilconfig@npm:3.0.0, lilconfig@npm:^3.0.0": +"lilconfig@npm:3.0.0": version: 3.0.0 resolution: "lilconfig@npm:3.0.0" - checksum: 7f5ee7a658dc016cacf146815e8d88b06f06f4402823b8b0934e305a57a197f55ccc9c5cd4fb5ea1b2b821c8ccaf2d54abd59602a4931af06eabda332388d3e6 + checksum: 10c0/7f5ee7a658dc016cacf146815e8d88b06f06f4402823b8b0934e305a57a197f55ccc9c5cd4fb5ea1b2b821c8ccaf2d54abd59602a4931af06eabda332388d3e6 + languageName: node + linkType: hard + +"lilconfig@npm:^3.1.1": + version: 3.1.1 + resolution: "lilconfig@npm:3.1.1" + checksum: 10c0/311b559794546894e3fe176663427326026c1c644145be9e8041c58e268aa9328799b8dfe7e4dd8c6a4ae305feae95a1c9e007db3569f35b42b6e1bc8274754c languageName: node linkType: hard "lines-and-columns@npm:^1.1.6": version: 1.2.4 resolution: "lines-and-columns@npm:1.2.4" - checksum: 3da6ee62d4cd9f03f5dc90b4df2540fb85b352081bee77fe4bbcd12c9000ead7f35e0a38b8d09a9bb99b13223446dd8689ff3c4959807620726d788701a83d2d + checksum: 10c0/3da6ee62d4cd9f03f5dc90b4df2540fb85b352081bee77fe4bbcd12c9000ead7f35e0a38b8d09a9bb99b13223446dd8689ff3c4959807620726d788701a83d2d languageName: node linkType: hard "lint-staged@npm:^15.0.0": - version: 15.2.0 - resolution: "lint-staged@npm:15.2.0" + version: 15.2.2 + resolution: "lint-staged@npm:15.2.2" dependencies: chalk: "npm:5.3.0" commander: "npm:11.1.0" debug: "npm:4.3.4" execa: "npm:8.0.1" lilconfig: "npm:3.0.0" - listr2: "npm:8.0.0" + listr2: "npm:8.0.1" micromatch: "npm:4.0.5" pidtree: "npm:0.6.0" string-argv: "npm:0.3.2" yaml: "npm:2.3.4" bin: lint-staged: bin/lint-staged.js - checksum: 4a1ff25dd06dbd4346fd244c9a0ebb936532ba18c0caedeb895c2e232f3c6c5fd08f6667624716660bc29e3e0f9f0440a9175114394616e991ebd5fab4b1f092 + checksum: 10c0/a1ba6c7ee53e30a0f6ea9a351d95d3d0d2be916a41b561e22907e9ea513eb18cb3dbe65bff3ec13fad15777999efe56b2e2a95427e31d12a9b7e7948c3630ee2 languageName: node linkType: hard -"listr2@npm:8.0.0": - version: 8.0.0 - resolution: "listr2@npm:8.0.0" +"listr2@npm:8.0.1": + version: 8.0.1 + resolution: "listr2@npm:8.0.1" dependencies: cli-truncate: "npm:^4.0.0" colorette: "npm:^2.0.20" @@ -10866,14 +10807,14 @@ __metadata: log-update: "npm:^6.0.0" rfdc: "npm:^1.3.0" wrap-ansi: "npm:^9.0.0" - checksum: 6e356df9127c68b69186c927c993645223557e941a76b0bb210e35786aedc53f577df437251db804606ff37ac509c5d945289a84b3daee7fadf2e3dcb889ecc9 + checksum: 10c0/b565d6ceb3a4c2dbe0c1735c0fd907afd0d6f89de21aced8e05187b2d88ca2f8f9ebc5d743885396a00f05f13146f6be744d098a56ce0402cf1cd131485a7ff1 languageName: node linkType: hard "loader-runner@npm:^2.4.0": version: 2.4.0 resolution: "loader-runner@npm:2.4.0" - checksum: 1f723bd8318453c2d073d7befbf891ba6d2a02f22622688bf7d22e7ba527a0f9476c7fdfedc6bfa2b55c0389d9f406f3a5239ed1b33c9088d77cfed085086a1e + checksum: 10c0/1f723bd8318453c2d073d7befbf891ba6d2a02f22622688bf7d22e7ba527a0f9476c7fdfedc6bfa2b55c0389d9f406f3a5239ed1b33c9088d77cfed085086a1e languageName: node linkType: hard @@ -10884,7 +10825,7 @@ __metadata: big.js: "npm:^5.2.2" emojis-list: "npm:^3.0.0" json5: "npm:^1.0.1" - checksum: 2b726088b5526f7605615e3e28043ae9bbd2453f4a85898e1151f3c39dbf7a2b65d09f3996bc588d92ac7e717ded529d3e1ea3ea42c433393be84a58234a2f53 + checksum: 10c0/2b726088b5526f7605615e3e28043ae9bbd2453f4a85898e1151f3c39dbf7a2b65d09f3996bc588d92ac7e717ded529d3e1ea3ea42c433393be84a58234a2f53 languageName: node linkType: hard @@ -10895,7 +10836,7 @@ __metadata: big.js: "npm:^5.2.2" emojis-list: "npm:^3.0.0" json5: "npm:^2.1.2" - checksum: d5654a77f9d339ec2a03d88221a5a695f337bf71eb8dea031b3223420bb818964ba8ed0069145c19b095f6c8b8fd386e602a3fc7ca987042bd8bb1dcc90d7100 + checksum: 10c0/d5654a77f9d339ec2a03d88221a5a695f337bf71eb8dea031b3223420bb818964ba8ed0069145c19b095f6c8b8fd386e602a3fc7ca987042bd8bb1dcc90d7100 languageName: node linkType: hard @@ -10905,7 +10846,7 @@ __metadata: dependencies: p-locate: "npm:^3.0.0" path-exists: "npm:^3.0.0" - checksum: 3db394b7829a7fe2f4fbdd25d3c4689b85f003c318c5da4052c7e56eed697da8f1bce5294f685c69ff76e32cba7a33629d94396976f6d05fb7f4c755c5e2ae8b + checksum: 10c0/3db394b7829a7fe2f4fbdd25d3c4689b85f003c318c5da4052c7e56eed697da8f1bce5294f685c69ff76e32cba7a33629d94396976f6d05fb7f4c755c5e2ae8b languageName: node linkType: hard @@ -10914,7 +10855,7 @@ __metadata: resolution: "locate-path@npm:5.0.0" dependencies: p-locate: "npm:^4.1.0" - checksum: 33a1c5247e87e022f9713e6213a744557a3e9ec32c5d0b5efb10aa3a38177615bf90221a5592674857039c1a0fd2063b82f285702d37b792d973e9e72ace6c59 + checksum: 10c0/33a1c5247e87e022f9713e6213a744557a3e9ec32c5d0b5efb10aa3a38177615bf90221a5592674857039c1a0fd2063b82f285702d37b792d973e9e72ace6c59 languageName: node linkType: hard @@ -10923,7 +10864,7 @@ __metadata: resolution: "locate-path@npm:6.0.0" dependencies: p-locate: "npm:^5.0.0" - checksum: d3972ab70dfe58ce620e64265f90162d247e87159b6126b01314dd67be43d50e96a50b517bce2d9452a79409c7614054c277b5232377de50416564a77ac7aad3 + checksum: 10c0/d3972ab70dfe58ce620e64265f90162d247e87159b6126b01314dd67be43d50e96a50b517bce2d9452a79409c7614054c277b5232377de50416564a77ac7aad3 languageName: node linkType: hard @@ -10932,105 +10873,105 @@ __metadata: resolution: "lockfile@npm:1.0.4" dependencies: signal-exit: "npm:^3.0.2" - checksum: 80b7777ceb43105d9e588733c3efc2514653a5e3a0dae3e61347a1f5381da34dcaa2caaa60c39ed5d4ad31c1735a4831e5639a0ba1c508bfea8dbc9c89777b37 + checksum: 10c0/80b7777ceb43105d9e588733c3efc2514653a5e3a0dae3e61347a1f5381da34dcaa2caaa60c39ed5d4ad31c1735a4831e5639a0ba1c508bfea8dbc9c89777b37 languageName: node linkType: hard "lodash.debounce@npm:^4.0.8": version: 4.0.8 resolution: "lodash.debounce@npm:4.0.8" - checksum: 762998a63e095412b6099b8290903e0a8ddcb353ac6e2e0f2d7e7d03abd4275fe3c689d88960eb90b0dde4f177554d51a690f22a343932ecbc50a5d111849987 + checksum: 10c0/762998a63e095412b6099b8290903e0a8ddcb353ac6e2e0f2d7e7d03abd4275fe3c689d88960eb90b0dde4f177554d51a690f22a343932ecbc50a5d111849987 languageName: node linkType: hard "lodash.defaults@npm:^4.2.0": version: 4.2.0 resolution: "lodash.defaults@npm:4.2.0" - checksum: d5b77aeb702caa69b17be1358faece33a84497bcca814897383c58b28a2f8dfc381b1d9edbec239f8b425126a3bbe4916223da2a576bb0411c2cefd67df80707 + checksum: 10c0/d5b77aeb702caa69b17be1358faece33a84497bcca814897383c58b28a2f8dfc381b1d9edbec239f8b425126a3bbe4916223da2a576bb0411c2cefd67df80707 languageName: node linkType: hard "lodash.get@npm:^4.0": version: 4.4.2 resolution: "lodash.get@npm:4.4.2" - checksum: 48f40d471a1654397ed41685495acb31498d5ed696185ac8973daef424a749ca0c7871bf7b665d5c14f5cc479394479e0307e781f61d5573831769593411be6e + checksum: 10c0/48f40d471a1654397ed41685495acb31498d5ed696185ac8973daef424a749ca0c7871bf7b665d5c14f5cc479394479e0307e781f61d5573831769593411be6e languageName: node linkType: hard "lodash.has@npm:^4.0": version: 4.5.2 resolution: "lodash.has@npm:4.5.2" - checksum: 3ffa9e549f321996a5fdf6204494c035ff550b2df703f936a448c553131bbb55492b4e7995bb13500648b50b268ed8afc974a7a0c0a43744d28d61cc95cb1ffe + checksum: 10c0/3ffa9e549f321996a5fdf6204494c035ff550b2df703f936a448c553131bbb55492b4e7995bb13500648b50b268ed8afc974a7a0c0a43744d28d61cc95cb1ffe languageName: node linkType: hard "lodash.isarguments@npm:^3.1.0": version: 3.1.0 resolution: "lodash.isarguments@npm:3.1.0" - checksum: 5e8f95ba10975900a3920fb039a3f89a5a79359a1b5565e4e5b4310ed6ebe64011e31d402e34f577eca983a1fc01ff86c926e3cbe602e1ddfc858fdd353e62d8 + checksum: 10c0/5e8f95ba10975900a3920fb039a3f89a5a79359a1b5565e4e5b4310ed6ebe64011e31d402e34f577eca983a1fc01ff86c926e3cbe602e1ddfc858fdd353e62d8 languageName: node linkType: hard "lodash.isboolean@npm:^3.0.3": version: 3.0.3 resolution: "lodash.isboolean@npm:3.0.3" - checksum: 0aac604c1ef7e72f9a6b798e5b676606042401dd58e49f051df3cc1e3adb497b3d7695635a5cbec4ae5f66456b951fdabe7d6b387055f13267cde521f10ec7f7 + checksum: 10c0/0aac604c1ef7e72f9a6b798e5b676606042401dd58e49f051df3cc1e3adb497b3d7695635a5cbec4ae5f66456b951fdabe7d6b387055f13267cde521f10ec7f7 languageName: node linkType: hard "lodash.isequal@npm:^4.5.0": version: 4.5.0 resolution: "lodash.isequal@npm:4.5.0" - checksum: dfdb2356db19631a4b445d5f37868a095e2402292d59539a987f134a8778c62a2810c2452d11ae9e6dcac71fc9de40a6fedcb20e2952a15b431ad8b29e50e28f + checksum: 10c0/dfdb2356db19631a4b445d5f37868a095e2402292d59539a987f134a8778c62a2810c2452d11ae9e6dcac71fc9de40a6fedcb20e2952a15b431ad8b29e50e28f languageName: node linkType: hard "lodash.isobject@npm:^3.0.2": version: 3.0.2 resolution: "lodash.isobject@npm:3.0.2" - checksum: da4c8480d98b16835b59380b2fbd43c54081acd9466febb788ba77c434384349e0bec162d1c4e89f613f21687b2b6d8384d8a112b80da00c78d28d9915a5cdde + checksum: 10c0/da4c8480d98b16835b59380b2fbd43c54081acd9466febb788ba77c434384349e0bec162d1c4e89f613f21687b2b6d8384d8a112b80da00c78d28d9915a5cdde languageName: node linkType: hard "lodash.memoize@npm:^4.1.2": version: 4.1.2 resolution: "lodash.memoize@npm:4.1.2" - checksum: c8713e51eccc650422716a14cece1809cfe34bc5ab5e242b7f8b4e2241c2483697b971a604252807689b9dd69bfe3a98852e19a5b89d506b000b4187a1285df8 + checksum: 10c0/c8713e51eccc650422716a14cece1809cfe34bc5ab5e242b7f8b4e2241c2483697b971a604252807689b9dd69bfe3a98852e19a5b89d506b000b4187a1285df8 languageName: node linkType: hard "lodash.merge@npm:^4.6.2": version: 4.6.2 resolution: "lodash.merge@npm:4.6.2" - checksum: 402fa16a1edd7538de5b5903a90228aa48eb5533986ba7fa26606a49db2572bf414ff73a2c9f5d5fd36b31c46a5d5c7e1527749c07cbcf965ccff5fbdf32c506 + checksum: 10c0/402fa16a1edd7538de5b5903a90228aa48eb5533986ba7fa26606a49db2572bf414ff73a2c9f5d5fd36b31c46a5d5c7e1527749c07cbcf965ccff5fbdf32c506 languageName: node linkType: hard "lodash.sortby@npm:^4.7.0": version: 4.7.0 resolution: "lodash.sortby@npm:4.7.0" - checksum: fc48fb54ff7669f33bb32997cab9460757ee99fafaf72400b261c3e10fde21538e47d8cfcbe6a25a31bcb5b7b727c27d52626386fc2de24eb059a6d64a89cdf5 + checksum: 10c0/fc48fb54ff7669f33bb32997cab9460757ee99fafaf72400b261c3e10fde21538e47d8cfcbe6a25a31bcb5b7b727c27d52626386fc2de24eb059a6d64a89cdf5 languageName: node linkType: hard "lodash.truncate@npm:^4.4.2": version: 4.4.2 resolution: "lodash.truncate@npm:4.4.2" - checksum: 4e870d54e8a6c86c8687e057cec4069d2e941446ccab7f40b4d9555fa5872d917d0b6aa73bece7765500a3123f1723bcdba9ae881b679ef120bba9e1a0b0ed70 + checksum: 10c0/4e870d54e8a6c86c8687e057cec4069d2e941446ccab7f40b4d9555fa5872d917d0b6aa73bece7765500a3123f1723bcdba9ae881b679ef120bba9e1a0b0ed70 languageName: node linkType: hard "lodash.uniq@npm:^4.5.0": version: 4.5.0 resolution: "lodash.uniq@npm:4.5.0" - checksum: 262d400bb0952f112162a320cc4a75dea4f66078b9e7e3075ffbc9c6aa30b3e9df3cf20e7da7d566105e1ccf7804e4fbd7d804eee0b53de05d83f16ffbf41c5e + checksum: 10c0/262d400bb0952f112162a320cc4a75dea4f66078b9e7e3075ffbc9c6aa30b3e9df3cf20e7da7d566105e1ccf7804e4fbd7d804eee0b53de05d83f16ffbf41c5e languageName: node linkType: hard "lodash@npm:^4.17.10, lodash@npm:^4.17.11, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.20, lodash@npm:^4.17.21": version: 4.17.21 resolution: "lodash@npm:4.17.21" - checksum: d8cbea072bb08655bb4c989da418994b073a608dffa608b09ac04b43a791b12aeae7cd7ad919aa4c925f33b48490b5cfe6c1f71d827956071dae2e7bb3a6b74c + checksum: 10c0/d8cbea072bb08655bb4c989da418994b073a608dffa608b09ac04b43a791b12aeae7cd7ad919aa4c925f33b48490b5cfe6c1f71d827956071dae2e7bb3a6b74c languageName: node linkType: hard @@ -11043,14 +10984,14 @@ __metadata: slice-ansi: "npm:^7.0.0" strip-ansi: "npm:^7.1.0" wrap-ansi: "npm:^9.0.0" - checksum: e0b3c3401ef49ce3eb17e2f83d644765e4f7988498fc1344eaa4f31ab30e510dcc469a7fb64dc01bd1c8d9237d917598fa677a9818705fb3774c10f6e9d4b27c + checksum: 10c0/e0b3c3401ef49ce3eb17e2f83d644765e4f7988498fc1344eaa4f31ab30e510dcc469a7fb64dc01bd1c8d9237d917598fa677a9818705fb3774c10f6e9d4b27c languageName: node linkType: hard "loglevel@npm:^1.6.8": version: 1.8.1 resolution: "loglevel@npm:1.8.1" - checksum: 21069436c97448a1801b154a77d19ada212225c513d94f0471bfe299c981ffd4dc0d21e6211f9250bd6209ba9837bfe0d40d9295c673d73e3c543ec6b1c5d9ef + checksum: 10c0/21069436c97448a1801b154a77d19ada212225c513d94f0471bfe299c981ffd4dc0d21e6211f9250bd6209ba9837bfe0d40d9295c673d73e3c543ec6b1c5d9ef languageName: node linkType: hard @@ -11061,14 +11002,14 @@ __metadata: js-tokens: "npm:^3.0.0 || ^4.0.0" bin: loose-envify: cli.js - checksum: 655d110220983c1a4b9c0c679a2e8016d4b67f6e9c7b5435ff5979ecdb20d0813f4dec0a08674fcbdd4846a3f07edbb50a36811fd37930b94aaa0d9daceb017e + checksum: 10c0/655d110220983c1a4b9c0c679a2e8016d4b67f6e9c7b5435ff5979ecdb20d0813f4dec0a08674fcbdd4846a3f07edbb50a36811fd37930b94aaa0d9daceb017e languageName: node linkType: hard "lru-cache@npm:^10.0.1, lru-cache@npm:^9.1.1 || ^10.0.0": version: 10.0.1 resolution: "lru-cache@npm:10.0.1" - checksum: 982dabfb227b9a2daf56d712ae0e72e01115a28c0a2068cd71277bca04568f3417bbf741c6c7941abc5c620fd8059e34f15607f90ebccbfa0a17533322d27a8e + checksum: 10c0/982dabfb227b9a2daf56d712ae0e72e01115a28c0a2068cd71277bca04568f3417bbf741c6c7941abc5c620fd8059e34f15607f90ebccbfa0a17533322d27a8e languageName: node linkType: hard @@ -11077,7 +11018,7 @@ __metadata: resolution: "lru-cache@npm:5.1.1" dependencies: yallist: "npm:^3.0.2" - checksum: 89b2ef2ef45f543011e38737b8a8622a2f8998cddf0e5437174ef8f1f70a8b9d14a918ab3e232cb3ba343b7abddffa667f0b59075b2b80e6b4d63c3de6127482 + checksum: 10c0/89b2ef2ef45f543011e38737b8a8622a2f8998cddf0e5437174ef8f1f70a8b9d14a918ab3e232cb3ba343b7abddffa667f0b59075b2b80e6b4d63c3de6127482 languageName: node linkType: hard @@ -11086,7 +11027,7 @@ __metadata: resolution: "lru-cache@npm:6.0.0" dependencies: yallist: "npm:^4.0.0" - checksum: cb53e582785c48187d7a188d3379c181b5ca2a9c78d2bce3e7dee36f32761d1c42983da3fe12b55cb74e1779fa94cdc2e5367c028a9b35317184ede0c07a30a9 + checksum: 10c0/cb53e582785c48187d7a188d3379c181b5ca2a9c78d2bce3e7dee36f32761d1c42983da3fe12b55cb74e1779fa94cdc2e5367c028a9b35317184ede0c07a30a9 languageName: node linkType: hard @@ -11095,7 +11036,7 @@ __metadata: resolution: "lz-string@npm:1.5.0" bin: lz-string: bin/bin.js - checksum: 36128e4de34791838abe979b19927c26e67201ca5acf00880377af7d765b38d1c60847e01c5ec61b1a260c48029084ab3893a3925fd6e48a04011364b089991b + checksum: 10c0/36128e4de34791838abe979b19927c26e67201ca5acf00880377af7d765b38d1c60847e01c5ec61b1a260c48029084ab3893a3925fd6e48a04011364b089991b languageName: node linkType: hard @@ -11104,7 +11045,7 @@ __metadata: resolution: "magic-string@npm:0.25.9" dependencies: sourcemap-codec: "npm:^1.4.8" - checksum: 37f5e01a7e8b19a072091f0b45ff127cda676232d373ce2c551a162dd4053c575ec048b9cbb4587a1f03adb6c5d0fd0dd49e8ab070cd2c83a4992b2182d9cb56 + checksum: 10c0/37f5e01a7e8b19a072091f0b45ff127cda676232d373ce2c551a162dd4053c575ec048b9cbb4587a1f03adb6c5d0fd0dd49e8ab070cd2c83a4992b2182d9cb56 languageName: node linkType: hard @@ -11113,7 +11054,7 @@ __metadata: resolution: "magic-string@npm:0.30.5" dependencies: "@jridgewell/sourcemap-codec": "npm:^1.4.15" - checksum: 38ac220ca7539e96da7ea2f38d85796bdf5c69b6bcae728c4bc2565084e6dc326b9174ee9770bea345cf6c9b3a24041b767167874fab5beca874d2356a9d1520 + checksum: 10c0/38ac220ca7539e96da7ea2f38d85796bdf5c69b6bcae728c4bc2565084e6dc326b9174ee9770bea345cf6c9b3a24041b767167874fab5beca874d2356a9d1520 languageName: node linkType: hard @@ -11122,7 +11063,7 @@ __metadata: resolution: "make-dir@npm:3.1.0" dependencies: semver: "npm:^6.0.0" - checksum: 56aaafefc49c2dfef02c5c95f9b196c4eb6988040cf2c712185c7fe5c99b4091591a7fc4d4eafaaefa70ff763a26f6ab8c3ff60b9e75ea19876f49b18667ecaa + checksum: 10c0/56aaafefc49c2dfef02c5c95f9b196c4eb6988040cf2c712185c7fe5c99b4091591a7fc4d4eafaaefa70ff763a26f6ab8c3ff60b9e75ea19876f49b18667ecaa languageName: node linkType: hard @@ -11131,7 +11072,7 @@ __metadata: resolution: "make-dir@npm:4.0.0" dependencies: semver: "npm:^7.5.3" - checksum: 69b98a6c0b8e5c4fe9acb61608a9fbcfca1756d910f51e5dbe7a9e5cfb74fca9b8a0c8a0ffdf1294a740826c1ab4871d5bf3f62f72a3049e5eac6541ddffed68 + checksum: 10c0/69b98a6c0b8e5c4fe9acb61608a9fbcfca1756d910f51e5dbe7a9e5cfb74fca9b8a0c8a0ffdf1294a740826c1ab4871d5bf3f62f72a3049e5eac6541ddffed68 languageName: node linkType: hard @@ -11150,7 +11091,7 @@ __metadata: negotiator: "npm:^0.6.3" promise-retry: "npm:^2.0.1" ssri: "npm:^10.0.0" - checksum: 43b9f6dcbc6fe8b8604cb6396957c3698857a15ba4dbc38284f7f0e61f248300585ef1eb8cc62df54e9c724af977e45b5cdfd88320ef7f53e45070ed3488da55 + checksum: 10c0/43b9f6dcbc6fe8b8604cb6396957c3698857a15ba4dbc38284f7f0e61f248300585ef1eb8cc62df54e9c724af977e45b5cdfd88320ef7f53e45070ed3488da55 languageName: node linkType: hard @@ -11159,14 +11100,14 @@ __metadata: resolution: "makeerror@npm:1.0.12" dependencies: tmpl: "npm:1.0.5" - checksum: b0e6e599780ce6bab49cc413eba822f7d1f0dfebd1c103eaa3785c59e43e22c59018323cf9e1708f0ef5329e94a745d163fcbb6bff8e4c6742f9be9e86f3500c + checksum: 10c0/b0e6e599780ce6bab49cc413eba822f7d1f0dfebd1c103eaa3785c59e43e22c59018323cf9e1708f0ef5329e94a745d163fcbb6bff8e4c6742f9be9e86f3500c languageName: node linkType: hard "map-cache@npm:^0.2.2": version: 0.2.2 resolution: "map-cache@npm:0.2.2" - checksum: 05e3eb005c1b80b9f949ca007687640e8c5d0fc88dc45c3c3ab4902a3bec79d66a58f3e3b04d6985d90cd267c629c7b46c977e9c34433e8c11ecfcbb9f0fa290 + checksum: 10c0/05e3eb005c1b80b9f949ca007687640e8c5d0fc88dc45c3c3ab4902a3bec79d66a58f3e3b04d6985d90cd267c629c7b46c977e9c34433e8c11ecfcbb9f0fa290 languageName: node linkType: hard @@ -11175,28 +11116,28 @@ __metadata: resolution: "map-visit@npm:1.0.0" dependencies: object-visit: "npm:^1.0.0" - checksum: fb3475e5311939a6147e339999113db607adc11c7c3cd3103e5e9dbf502898416ecba6b1c7c649c6d4d12941de00cee58b939756bdf20a9efe7d4fa5a5738b73 + checksum: 10c0/fb3475e5311939a6147e339999113db607adc11c7c3cd3103e5e9dbf502898416ecba6b1c7c649c6d4d12941de00cee58b939756bdf20a9efe7d4fa5a5738b73 languageName: node linkType: hard "mark-loader@npm:^0.1.6": version: 0.1.6 resolution: "mark-loader@npm:0.1.6" - checksum: 873d75bc87179f95b1059c0f00ecea7419b83a3b42a95a951f9e8157f0d2b3a6ce8313c8a0d7e68dbe534fe668d307c218c69b465cebb1a49e3fde5375d30d15 + checksum: 10c0/873d75bc87179f95b1059c0f00ecea7419b83a3b42a95a951f9e8157f0d2b3a6ce8313c8a0d7e68dbe534fe668d307c218c69b465cebb1a49e3fde5375d30d15 languageName: node linkType: hard "marky@npm:^1.2.5": version: 1.2.5 resolution: "marky@npm:1.2.5" - checksum: ca8a011f287dab1ac3291df720fc32b366c4cd767347b63722966650405ce71ec6566f71d1e22e1768bf6461a7fd689b9038e7df0fcfb62eacf3a5a6dcac249e + checksum: 10c0/ca8a011f287dab1ac3291df720fc32b366c4cd767347b63722966650405ce71ec6566f71d1e22e1768bf6461a7fd689b9038e7df0fcfb62eacf3a5a6dcac249e languageName: node linkType: hard "mathml-tag-names@npm:^2.1.3": version: 2.1.3 resolution: "mathml-tag-names@npm:2.1.3" - checksum: e2b094658a2618433efd2678a5a3e551645e09ba17c7c777783cd8dfa0178b0195fda0a5c46a6be5e778923662cf8dde891c894c869ff14fbb4ea3208c31bc4d + checksum: 10c0/e2b094658a2618433efd2678a5a3e551645e09ba17c7c777783cd8dfa0178b0195fda0a5c46a6be5e778923662cf8dde891c894c869ff14fbb4ea3208c31bc4d languageName: node linkType: hard @@ -11207,49 +11148,49 @@ __metadata: hash-base: "npm:^3.0.0" inherits: "npm:^2.0.1" safe-buffer: "npm:^5.1.2" - checksum: b7bd75077f419c8e013fc4d4dada48be71882e37d69a44af65a2f2804b91e253441eb43a0614423a1c91bb830b8140b0dc906bc797245e2e275759584f4efcc5 + checksum: 10c0/b7bd75077f419c8e013fc4d4dada48be71882e37d69a44af65a2f2804b91e253441eb43a0614423a1c91bb830b8140b0dc906bc797245e2e275759584f4efcc5 languageName: node linkType: hard "mdn-data@npm:2.0.14": version: 2.0.14 resolution: "mdn-data@npm:2.0.14" - checksum: 67241f8708c1e665a061d2b042d2d243366e93e5bf1f917693007f6d55111588b952dcbfd3ea9c2d0969fb754aad81b30fdcfdcc24546495fc3b24336b28d4bd + checksum: 10c0/67241f8708c1e665a061d2b042d2d243366e93e5bf1f917693007f6d55111588b952dcbfd3ea9c2d0969fb754aad81b30fdcfdcc24546495fc3b24336b28d4bd languageName: node linkType: hard "mdn-data@npm:2.0.28": version: 2.0.28 resolution: "mdn-data@npm:2.0.28" - checksum: 20000932bc4cd1cde9cba4e23f08cc4f816398af4c15ec81040ed25421d6bf07b5cf6b17095972577fb498988f40f4cb589e3169b9357bb436a12d8e07e5ea7b + checksum: 10c0/20000932bc4cd1cde9cba4e23f08cc4f816398af4c15ec81040ed25421d6bf07b5cf6b17095972577fb498988f40f4cb589e3169b9357bb436a12d8e07e5ea7b languageName: node linkType: hard "mdn-data@npm:2.0.30": version: 2.0.30 resolution: "mdn-data@npm:2.0.30" - checksum: a2c472ea16cee3911ae742593715aa4c634eb3d4b9f1e6ada0902aa90df13dcbb7285d19435f3ff213ebaa3b2e0c0265c1eb0e3fb278fda7f8919f046a410cd9 + checksum: 10c0/a2c472ea16cee3911ae742593715aa4c634eb3d4b9f1e6ada0902aa90df13dcbb7285d19435f3ff213ebaa3b2e0c0265c1eb0e3fb278fda7f8919f046a410cd9 languageName: node linkType: hard "mdn-data@npm:2.0.4": version: 2.0.4 resolution: "mdn-data@npm:2.0.4" - checksum: a935c4530b938407481f7d0ccb82119ae618d9c673d2ee78bb10dcba8bd0ccbe2e2c7fe850ddc60b67e08f4c9d97f50b900993f6c2f2926e64a52ed6baa00b3a + checksum: 10c0/a935c4530b938407481f7d0ccb82119ae618d9c673d2ee78bb10dcba8bd0ccbe2e2c7fe850ddc60b67e08f4c9d97f50b900993f6c2f2926e64a52ed6baa00b3a languageName: node linkType: hard "media-typer@npm:0.3.0": version: 0.3.0 resolution: "media-typer@npm:0.3.0" - checksum: d160f31246907e79fed398470285f21bafb45a62869dc469b1c8877f3f064f5eabc4bcc122f9479b8b605bc5c76187d7871cf84c4ee3ecd3e487da1993279928 + checksum: 10c0/d160f31246907e79fed398470285f21bafb45a62869dc469b1c8877f3f064f5eabc4bcc122f9479b8b605bc5c76187d7871cf84c4ee3ecd3e487da1993279928 languageName: node linkType: hard "memoize-one@npm:^6.0.0": version: 6.0.0 resolution: "memoize-one@npm:6.0.0" - checksum: 45c88e064fd715166619af72e8cf8a7a17224d6edf61f7a8633d740ed8c8c0558a4373876c9b8ffc5518c2b65a960266adf403cc215cb1e90f7e262b58991f54 + checksum: 10c0/45c88e064fd715166619af72e8cf8a7a17224d6edf61f7a8633d740ed8c8c0558a4373876c9b8ffc5518c2b65a960266adf403cc215cb1e90f7e262b58991f54 languageName: node linkType: hard @@ -11259,7 +11200,7 @@ __metadata: dependencies: errno: "npm:^0.1.3" readable-stream: "npm:^2.0.1" - checksum: f114c44ad8285103cb0e71420cf5bb628d3eb6cbd918197f5951590ff56ba2072f4a97924949c170320cdf180d2da4e8d16a0edd92ba0ca2d2de51dc932841e2 + checksum: 10c0/f114c44ad8285103cb0e71420cf5bb628d3eb6cbd918197f5951590ff56ba2072f4a97924949c170320cdf180d2da4e8d16a0edd92ba0ca2d2de51dc932841e2 languageName: node linkType: hard @@ -11269,42 +11210,42 @@ __metadata: dependencies: errno: "npm:^0.1.3" readable-stream: "npm:^2.0.1" - checksum: 2737a27b14a9e8b8cd757be2ad99e8cc504b78a78aba9d6aa18ff1ef528e2223a433413d2df6ab5332997a5a8ccf075e6c6e90e31ab732a55455ca620e4a720b + checksum: 10c0/2737a27b14a9e8b8cd757be2ad99e8cc504b78a78aba9d6aa18ff1ef528e2223a433413d2df6ab5332997a5a8ccf075e6c6e90e31ab732a55455ca620e4a720b languageName: node linkType: hard "meow@npm:^13.1.0": version: 13.1.0 resolution: "meow@npm:13.1.0" - checksum: 2dac9dbf99a17ce29618fe5919072a9b28e2aedb9547f9b1f15d046d5501dd6c14fe1f35f7a5665d0ee7111c98c4d359fcf3f985463ec5896dd50177363f442d + checksum: 10c0/2dac9dbf99a17ce29618fe5919072a9b28e2aedb9547f9b1f15d046d5501dd6c14fe1f35f7a5665d0ee7111c98c4d359fcf3f985463ec5896dd50177363f442d languageName: node linkType: hard "merge-descriptors@npm:1.0.1": version: 1.0.1 resolution: "merge-descriptors@npm:1.0.1" - checksum: b67d07bd44cfc45cebdec349bb6e1f7b077ee2fd5beb15d1f7af073849208cb6f144fe403e29a36571baf3f4e86469ac39acf13c318381e958e186b2766f54ec + checksum: 10c0/b67d07bd44cfc45cebdec349bb6e1f7b077ee2fd5beb15d1f7af073849208cb6f144fe403e29a36571baf3f4e86469ac39acf13c318381e958e186b2766f54ec languageName: node linkType: hard "merge-stream@npm:^2.0.0": version: 2.0.0 resolution: "merge-stream@npm:2.0.0" - checksum: 867fdbb30a6d58b011449b8885601ec1690c3e41c759ecd5a9d609094f7aed0096c37823ff4a7190ef0b8f22cc86beb7049196ff68c016e3b3c671d0dac91ce5 + checksum: 10c0/867fdbb30a6d58b011449b8885601ec1690c3e41c759ecd5a9d609094f7aed0096c37823ff4a7190ef0b8f22cc86beb7049196ff68c016e3b3c671d0dac91ce5 languageName: node linkType: hard "merge2@npm:^1.3.0, merge2@npm:^1.4.1": version: 1.4.1 resolution: "merge2@npm:1.4.1" - checksum: 254a8a4605b58f450308fc474c82ac9a094848081bf4c06778200207820e5193726dc563a0d2c16468810516a5c97d9d3ea0ca6585d23c58ccfff2403e8dbbeb + checksum: 10c0/254a8a4605b58f450308fc474c82ac9a094848081bf4c06778200207820e5193726dc563a0d2c16468810516a5c97d9d3ea0ca6585d23c58ccfff2403e8dbbeb languageName: node linkType: hard "methods@npm:~1.1.2": version: 1.1.2 resolution: "methods@npm:1.1.2" - checksum: bdf7cc72ff0a33e3eede03708c08983c4d7a173f91348b4b1e4f47d4cdbf734433ad971e7d1e8c77247d9e5cd8adb81ea4c67b0a2db526b758b2233d7814b8b2 + checksum: 10c0/bdf7cc72ff0a33e3eede03708c08983c4d7a173f91348b4b1e4f47d4cdbf734433ad971e7d1e8c77247d9e5cd8adb81ea4c67b0a2db526b758b2233d7814b8b2 languageName: node linkType: hard @@ -11314,7 +11255,7 @@ __metadata: dependencies: braces: "npm:^3.0.2" picomatch: "npm:^2.3.1" - checksum: 3d6505b20f9fa804af5d8c596cb1c5e475b9b0cd05f652c5b56141cf941bd72adaeb7a436fda344235cef93a7f29b7472efc779fcdb83b478eab0867b95cdeff + checksum: 10c0/3d6505b20f9fa804af5d8c596cb1c5e475b9b0cd05f652c5b56141cf941bd72adaeb7a436fda344235cef93a7f29b7472efc779fcdb83b478eab0867b95cdeff languageName: node linkType: hard @@ -11335,7 +11276,7 @@ __metadata: regex-not: "npm:^1.0.0" snapdragon: "npm:^0.8.1" to-regex: "npm:^3.0.2" - checksum: 531a32e7ac92bef60657820202be71b63d0f945c08a69cc4c239c0b19372b751483d464a850a2e3a5ff6cc9060641e43d44c303af104c1a27493d137d8af017f + checksum: 10c0/531a32e7ac92bef60657820202be71b63d0f945c08a69cc4c239c0b19372b751483d464a850a2e3a5ff6cc9060641e43d44c303af104c1a27493d137d8af017f languageName: node linkType: hard @@ -11347,14 +11288,14 @@ __metadata: brorand: "npm:^1.0.1" bin: miller-rabin: bin/miller-rabin - checksum: 26b2b96f6e49dbcff7faebb78708ed2f5f9ae27ac8cbbf1d7c08f83cf39bed3d418c0c11034dce997da70d135cc0ff6f3a4c15dc452f8e114c11986388a64346 + checksum: 10c0/26b2b96f6e49dbcff7faebb78708ed2f5f9ae27ac8cbbf1d7c08f83cf39bed3d418c0c11034dce997da70d135cc0ff6f3a4c15dc452f8e114c11986388a64346 languageName: node linkType: hard "mime-db@npm:1.52.0, mime-db@npm:>= 1.43.0 < 2": version: 1.52.0 resolution: "mime-db@npm:1.52.0" - checksum: 0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa + checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa languageName: node linkType: hard @@ -11363,7 +11304,7 @@ __metadata: resolution: "mime-types@npm:2.1.35" dependencies: mime-db: "npm:1.52.0" - checksum: 82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2 + checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2 languageName: node linkType: hard @@ -11372,7 +11313,7 @@ __metadata: resolution: "mime@npm:1.6.0" bin: mime: cli.js - checksum: b92cd0adc44888c7135a185bfd0dddc42c32606401c72896a842ae15da71eb88858f17669af41e498b463cd7eb998f7b48939a25b08374c7924a9c8a6f8a81b0 + checksum: 10c0/b92cd0adc44888c7135a185bfd0dddc42c32606401c72896a842ae15da71eb88858f17669af41e498b463cd7eb998f7b48939a25b08374c7924a9c8a6f8a81b0 languageName: node linkType: hard @@ -11381,28 +11322,28 @@ __metadata: resolution: "mime@npm:2.6.0" bin: mime: cli.js - checksum: a7f2589900d9c16e3bdf7672d16a6274df903da958c1643c9c45771f0478f3846dcb1097f31eb9178452570271361e2149310931ec705c037210fc69639c8e6c + checksum: 10c0/a7f2589900d9c16e3bdf7672d16a6274df903da958c1643c9c45771f0478f3846dcb1097f31eb9178452570271361e2149310931ec705c037210fc69639c8e6c languageName: node linkType: hard "mimic-fn@npm:^2.1.0": version: 2.1.0 resolution: "mimic-fn@npm:2.1.0" - checksum: b26f5479d7ec6cc2bce275a08f146cf78f5e7b661b18114e2506dd91ec7ec47e7a25bf4360e5438094db0560bcc868079fb3b1fb3892b833c1ecbf63f80c95a4 + checksum: 10c0/b26f5479d7ec6cc2bce275a08f146cf78f5e7b661b18114e2506dd91ec7ec47e7a25bf4360e5438094db0560bcc868079fb3b1fb3892b833c1ecbf63f80c95a4 languageName: node linkType: hard "mimic-fn@npm:^4.0.0": version: 4.0.0 resolution: "mimic-fn@npm:4.0.0" - checksum: de9cc32be9996fd941e512248338e43407f63f6d497abe8441fa33447d922e927de54d4cc3c1a3c6d652857acd770389d5a3823f311a744132760ce2be15ccbf + checksum: 10c0/de9cc32be9996fd941e512248338e43407f63f6d497abe8441fa33447d922e927de54d4cc3c1a3c6d652857acd770389d5a3823f311a744132760ce2be15ccbf languageName: node linkType: hard "min-indent@npm:^1.0.0": version: 1.0.1 resolution: "min-indent@npm:1.0.1" - checksum: 7e207bd5c20401b292de291f02913230cb1163abca162044f7db1d951fa245b174dc00869d40dd9a9f32a885ad6a5f3e767ee104cf278f399cb4e92d3f582d5c + checksum: 10c0/7e207bd5c20401b292de291f02913230cb1163abca162044f7db1d951fa245b174dc00869d40dd9a9f32a885ad6a5f3e767ee104cf278f399cb4e92d3f582d5c languageName: node linkType: hard @@ -11415,21 +11356,21 @@ __metadata: webpack-sources: "npm:^1.1.0" peerDependencies: webpack: ^4.4.0 || ^5.0.0 - checksum: 138c008f8a510012266d2834227e75181feeffd09e89e9cde0a63f17be3d64ea3ddbba01036aac9c8a969462c0142285659a20c294e8d01ba948aa1124affdc2 + checksum: 10c0/138c008f8a510012266d2834227e75181feeffd09e89e9cde0a63f17be3d64ea3ddbba01036aac9c8a969462c0142285659a20c294e8d01ba948aa1124affdc2 languageName: node linkType: hard "minimalistic-assert@npm:^1.0.0, minimalistic-assert@npm:^1.0.1": version: 1.0.1 resolution: "minimalistic-assert@npm:1.0.1" - checksum: 96730e5601cd31457f81a296f521eb56036e6f69133c0b18c13fe941109d53ad23a4204d946a0d638d7f3099482a0cec8c9bb6d642604612ce43ee536be3dddd + checksum: 10c0/96730e5601cd31457f81a296f521eb56036e6f69133c0b18c13fe941109d53ad23a4204d946a0d638d7f3099482a0cec8c9bb6d642604612ce43ee536be3dddd languageName: node linkType: hard "minimalistic-crypto-utils@npm:^1.0.1": version: 1.0.1 resolution: "minimalistic-crypto-utils@npm:1.0.1" - checksum: 790ecec8c5c73973a4fbf2c663d911033e8494d5fb0960a4500634766ab05d6107d20af896ca2132e7031741f19888154d44b2408ada0852446705441383e9f8 + checksum: 10c0/790ecec8c5c73973a4fbf2c663d911033e8494d5fb0960a4500634766ab05d6107d20af896ca2132e7031741f19888154d44b2408ada0852446705441383e9f8 languageName: node linkType: hard @@ -11438,7 +11379,7 @@ __metadata: resolution: "minimatch@npm:9.0.3" dependencies: brace-expansion: "npm:^2.0.1" - checksum: 85f407dcd38ac3e180f425e86553911d101455ca3ad5544d6a7cec16286657e4f8a9aa6695803025c55e31e35a91a2252b5dc8e7d527211278b8b65b4dbd5eac + checksum: 10c0/85f407dcd38ac3e180f425e86553911d101455ca3ad5544d6a7cec16286657e4f8a9aa6695803025c55e31e35a91a2252b5dc8e7d527211278b8b65b4dbd5eac languageName: node linkType: hard @@ -11447,7 +11388,7 @@ __metadata: resolution: "minimatch@npm:3.1.2" dependencies: brace-expansion: "npm:^1.1.7" - checksum: 0262810a8fc2e72cca45d6fd86bd349eee435eb95ac6aa45c9ea2180e7ee875ef44c32b55b5973ceabe95ea12682f6e3725cbb63d7a2d1da3ae1163c8b210311 + checksum: 10c0/0262810a8fc2e72cca45d6fd86bd349eee435eb95ac6aa45c9ea2180e7ee875ef44c32b55b5973ceabe95ea12682f6e3725cbb63d7a2d1da3ae1163c8b210311 languageName: node linkType: hard @@ -11456,14 +11397,14 @@ __metadata: resolution: "minimatch@npm:5.1.6" dependencies: brace-expansion: "npm:^2.0.1" - checksum: 3defdfd230914f22a8da203747c42ee3c405c39d4d37ffda284dac5e45b7e1f6c49aa8be606509002898e73091ff2a3bbfc59c2c6c71d4660609f63aa92f98e3 + checksum: 10c0/3defdfd230914f22a8da203747c42ee3c405c39d4d37ffda284dac5e45b7e1f6c49aa8be606509002898e73091ff2a3bbfc59c2c6c71d4660609f63aa92f98e3 languageName: node linkType: hard "minimist@npm:^1.2.0, minimist@npm:^1.2.6": version: 1.2.8 resolution: "minimist@npm:1.2.8" - checksum: 19d3fcdca050087b84c2029841a093691a91259a47def2f18222f41e7645a0b7c44ef4b40e88a1e58a40c84d2ef0ee6047c55594d298146d0eb3f6b737c20ce6 + checksum: 10c0/19d3fcdca050087b84c2029841a093691a91259a47def2f18222f41e7645a0b7c44ef4b40e88a1e58a40c84d2ef0ee6047c55594d298146d0eb3f6b737c20ce6 languageName: node linkType: hard @@ -11472,7 +11413,7 @@ __metadata: resolution: "minipass-collect@npm:1.0.2" dependencies: minipass: "npm:^3.0.0" - checksum: 8f82bd1f3095b24f53a991b04b67f4c710c894e518b813f0864a31de5570441a509be1ca17e0bb92b047591a8fdbeb886f502764fefb00d2f144f4011791e898 + checksum: 10c0/8f82bd1f3095b24f53a991b04b67f4c710c894e518b813f0864a31de5570441a509be1ca17e0bb92b047591a8fdbeb886f502764fefb00d2f144f4011791e898 languageName: node linkType: hard @@ -11487,7 +11428,7 @@ __metadata: dependenciesMeta: encoding: optional: true - checksum: 1b63c1f3313e88eeac4689f1b71c9f086598db9a189400e3ee960c32ed89e06737fa23976c9305c2d57464fb3fcdc12749d3378805c9d6176f5569b0d0ee8a75 + checksum: 10c0/1b63c1f3313e88eeac4689f1b71c9f086598db9a189400e3ee960c32ed89e06737fa23976c9305c2d57464fb3fcdc12749d3378805c9d6176f5569b0d0ee8a75 languageName: node linkType: hard @@ -11496,7 +11437,7 @@ __metadata: resolution: "minipass-flush@npm:1.0.5" dependencies: minipass: "npm:^3.0.0" - checksum: 2a51b63feb799d2bb34669205eee7c0eaf9dce01883261a5b77410c9408aa447e478efd191b4de6fc1101e796ff5892f8443ef20d9544385819093dbb32d36bd + checksum: 10c0/2a51b63feb799d2bb34669205eee7c0eaf9dce01883261a5b77410c9408aa447e478efd191b4de6fc1101e796ff5892f8443ef20d9544385819093dbb32d36bd languageName: node linkType: hard @@ -11505,7 +11446,7 @@ __metadata: resolution: "minipass-pipeline@npm:1.2.4" dependencies: minipass: "npm:^3.0.0" - checksum: cbda57cea20b140b797505dc2cac71581a70b3247b84480c1fed5ca5ba46c25ecc25f68bfc9e6dcb1a6e9017dab5c7ada5eab73ad4f0a49d84e35093e0c643f2 + checksum: 10c0/cbda57cea20b140b797505dc2cac71581a70b3247b84480c1fed5ca5ba46c25ecc25f68bfc9e6dcb1a6e9017dab5c7ada5eab73ad4f0a49d84e35093e0c643f2 languageName: node linkType: hard @@ -11514,7 +11455,7 @@ __metadata: resolution: "minipass-sized@npm:1.0.3" dependencies: minipass: "npm:^3.0.0" - checksum: 298f124753efdc745cfe0f2bdfdd81ba25b9f4e753ca4a2066eb17c821f25d48acea607dfc997633ee5bf7b6dfffb4eee4f2051eb168663f0b99fad2fa4829cb + checksum: 10c0/298f124753efdc745cfe0f2bdfdd81ba25b9f4e753ca4a2066eb17c821f25d48acea607dfc997633ee5bf7b6dfffb4eee4f2051eb168663f0b99fad2fa4829cb languageName: node linkType: hard @@ -11523,21 +11464,21 @@ __metadata: resolution: "minipass@npm:3.3.6" dependencies: yallist: "npm:^4.0.0" - checksum: a114746943afa1dbbca8249e706d1d38b85ed1298b530f5808ce51f8e9e941962e2a5ad2e00eae7dd21d8a4aae6586a66d4216d1a259385e9d0358f0c1eba16c + checksum: 10c0/a114746943afa1dbbca8249e706d1d38b85ed1298b530f5808ce51f8e9e941962e2a5ad2e00eae7dd21d8a4aae6586a66d4216d1a259385e9d0358f0c1eba16c languageName: node linkType: hard "minipass@npm:^5.0.0": version: 5.0.0 resolution: "minipass@npm:5.0.0" - checksum: a91d8043f691796a8ac88df039da19933ef0f633e3d7f0d35dcd5373af49131cf2399bfc355f41515dc495e3990369c3858cd319e5c2722b4753c90bf3152462 + checksum: 10c0/a91d8043f691796a8ac88df039da19933ef0f633e3d7f0d35dcd5373af49131cf2399bfc355f41515dc495e3990369c3858cd319e5c2722b4753c90bf3152462 languageName: node linkType: hard "minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3": version: 7.0.4 resolution: "minipass@npm:7.0.4" - checksum: 6c7370a6dfd257bf18222da581ba89a5eaedca10e158781232a8b5542a90547540b4b9b7e7f490e4cda43acfbd12e086f0453728ecf8c19e0ef6921bc5958ac5 + checksum: 10c0/6c7370a6dfd257bf18222da581ba89a5eaedca10e158781232a8b5542a90547540b4b9b7e7f490e4cda43acfbd12e086f0453728ecf8c19e0ef6921bc5958ac5 languageName: node linkType: hard @@ -11547,7 +11488,7 @@ __metadata: dependencies: minipass: "npm:^3.0.0" yallist: "npm:^4.0.0" - checksum: 64fae024e1a7d0346a1102bb670085b17b7f95bf6cfdf5b128772ec8faf9ea211464ea4add406a3a6384a7d87a0cd1a96263692134323477b4fb43659a6cab78 + checksum: 10c0/64fae024e1a7d0346a1102bb670085b17b7f95bf6cfdf5b128772ec8faf9ea211464ea4add406a3a6384a7d87a0cd1a96263692134323477b4fb43659a6cab78 languageName: node linkType: hard @@ -11557,7 +11498,7 @@ __metadata: dependencies: for-in: "npm:^1.0.2" is-extendable: "npm:^1.0.1" - checksum: cb39ffb73c377222391af788b4c83d1a6cecb2d9fceb7015384f8deb46e151a9b030c21ef59a79cb524d4557e3f74c7248ab948a62a6e7e296b42644863d183b + checksum: 10c0/cb39ffb73c377222391af788b4c83d1a6cecb2d9fceb7015384f8deb46e151a9b030c21ef59a79cb524d4557e3f74c7248ab948a62a6e7e296b42644863d183b languageName: node linkType: hard @@ -11568,7 +11509,7 @@ __metadata: minimist: "npm:^1.2.6" bin: mkdirp: bin/cmd.js - checksum: e2e2be789218807b58abced04e7b49851d9e46e88a2f9539242cc8a92c9b5c3a0b9bab360bd3014e02a140fc4fbc58e31176c408b493f8a2a6f4986bd7527b01 + checksum: 10c0/e2e2be789218807b58abced04e7b49851d9e46e88a2f9539242cc8a92c9b5c3a0b9bab360bd3014e02a140fc4fbc58e31176c408b493f8a2a6f4986bd7527b01 languageName: node linkType: hard @@ -11577,58 +11518,49 @@ __metadata: resolution: "mkdirp@npm:1.0.4" bin: mkdirp: bin/cmd.js - checksum: 46ea0f3ffa8bc6a5bc0c7081ffc3907777f0ed6516888d40a518c5111f8366d97d2678911ad1a6882bf592fa9de6c784fea32e1687bb94e1f4944170af48a5cf - languageName: node - linkType: hard - -"mkdirp@npm:^3.0.1": - version: 3.0.1 - resolution: "mkdirp@npm:3.0.1" - bin: - mkdirp: dist/cjs/src/bin.js - checksum: 9f2b975e9246351f5e3a40dcfac99fcd0baa31fbfab615fe059fb11e51f10e4803c63de1f384c54d656e4db31d000e4767e9ef076a22e12a641357602e31d57d + checksum: 10c0/46ea0f3ffa8bc6a5bc0c7081ffc3907777f0ed6516888d40a518c5111f8366d97d2678911ad1a6882bf592fa9de6c784fea32e1687bb94e1f4944170af48a5cf languageName: node linkType: hard "mousetrap@npm:^1.5.2": version: 1.6.5 resolution: "mousetrap@npm:1.6.5" - checksum: 5c361bdbbff3966fd58d70f39b9fe1f8e32c78f3ce65989d83af7aad32a3a95313ce835a8dd8a55cb5de9eeb7c1f0c2b9048631a3073b5606241589e8fc0ba53 + checksum: 10c0/5c361bdbbff3966fd58d70f39b9fe1f8e32c78f3ce65989d83af7aad32a3a95313ce835a8dd8a55cb5de9eeb7c1f0c2b9048631a3073b5606241589e8fc0ba53 languageName: node linkType: hard "mrmime@npm:^1.0.0": version: 1.0.1 resolution: "mrmime@npm:1.0.1" - checksum: ab071441da76fd23b3b0d1823d77aacf8679d379a4a94cacd83e487d3d906763b277f3203a594c613602e31ab5209c26a8119b0477c4541ef8555b293a9db6d3 + checksum: 10c0/ab071441da76fd23b3b0d1823d77aacf8679d379a4a94cacd83e487d3d906763b277f3203a594c613602e31ab5209c26a8119b0477c4541ef8555b293a9db6d3 languageName: node linkType: hard "ms@npm:2.0.0": version: 2.0.0 resolution: "ms@npm:2.0.0" - checksum: f8fda810b39fd7255bbdc451c46286e549794fcc700dc9cd1d25658bbc4dc2563a5de6fe7c60f798a16a60c6ceb53f033cb353f493f0cf63e5199b702943159d + checksum: 10c0/f8fda810b39fd7255bbdc451c46286e549794fcc700dc9cd1d25658bbc4dc2563a5de6fe7c60f798a16a60c6ceb53f033cb353f493f0cf63e5199b702943159d languageName: node linkType: hard "ms@npm:2.1.2": version: 2.1.2 resolution: "ms@npm:2.1.2" - checksum: a437714e2f90dbf881b5191d35a6db792efbca5badf112f87b9e1c712aace4b4b9b742dd6537f3edf90fd6f684de897cec230abde57e87883766712ddda297cc + checksum: 10c0/a437714e2f90dbf881b5191d35a6db792efbca5badf112f87b9e1c712aace4b4b9b742dd6537f3edf90fd6f684de897cec230abde57e87883766712ddda297cc languageName: node linkType: hard "ms@npm:2.1.3, ms@npm:^2.1.1": version: 2.1.3 resolution: "ms@npm:2.1.3" - checksum: d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48 + checksum: 10c0/d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48 languageName: node linkType: hard "multicast-dns-service-types@npm:^1.1.0": version: 1.1.0 resolution: "multicast-dns-service-types@npm:1.1.0" - checksum: 25abc0e9ee509f38d874e22b03d563b16009d3976760d29bed25bf70ea992cfe30b0403743f49342279c67178a03311d31ecc1ec54bf79af2e6fe55f11af2660 + checksum: 10c0/25abc0e9ee509f38d874e22b03d563b16009d3976760d29bed25bf70ea992cfe30b0403743f49342279c67178a03311d31ecc1ec54bf79af2e6fe55f11af2660 languageName: node linkType: hard @@ -11640,7 +11572,7 @@ __metadata: thunky: "npm:^1.0.2" bin: multicast-dns: cli.js - checksum: 972fc50869e922d80d66eeb91ad39fd2e107241e0c791fc914e76578e4f7f3dfe3bf007020dd4d7ed4d0ffd69d9aa2238a9f8bbb4d160bd6eb3f35dde0c2c513 + checksum: 10c0/972fc50869e922d80d66eeb91ad39fd2e107241e0c791fc914e76578e4f7f3dfe3bf007020dd4d7ed4d0ffd69d9aa2238a9f8bbb4d160bd6eb3f35dde0c2c513 languageName: node linkType: hard @@ -11649,7 +11581,7 @@ __metadata: resolution: "nan@npm:2.17.0" dependencies: node-gyp: "npm:latest" - checksum: 4a231a62dba025f4c4fa814c1e6ffeb450c5cd0852b780f19fe4ea22b86ba0f1f394406dfd628c67fb7f0987e982fa230da1fbd3632258f927b8defd7046c1ad + checksum: 10c0/4a231a62dba025f4c4fa814c1e6ffeb450c5cd0852b780f19fe4ea22b86ba0f1f394406dfd628c67fb7f0987e982fa230da1fbd3632258f927b8defd7046c1ad languageName: node linkType: hard @@ -11658,7 +11590,7 @@ __metadata: resolution: "nanoid@npm:3.3.7" bin: nanoid: bin/nanoid.cjs - checksum: e3fb661aa083454f40500473bb69eedb85dc160e763150b9a2c567c7e9ff560ce028a9f833123b618a6ea742e311138b591910e795614a629029e86e180660f3 + checksum: 10c0/e3fb661aa083454f40500473bb69eedb85dc160e763150b9a2c567c7e9ff560ce028a9f833123b618a6ea742e311138b591910e795614a629029e86e180660f3 languageName: node linkType: hard @@ -11677,35 +11609,35 @@ __metadata: regex-not: "npm:^1.0.0" snapdragon: "npm:^0.8.1" to-regex: "npm:^3.0.1" - checksum: 0f5cefa755ca2e20c86332821995effb24acb79551ddaf51c1b9112628cad234a0d8fd9ac6aa56ad1f8bfad6ff6ae86e851acb960943249d9fa44b091479953a + checksum: 10c0/0f5cefa755ca2e20c86332821995effb24acb79551ddaf51c1b9112628cad234a0d8fd9ac6aa56ad1f8bfad6ff6ae86e851acb960943249d9fa44b091479953a languageName: node linkType: hard "natural-compare@npm:^1.4.0": version: 1.4.0 resolution: "natural-compare@npm:1.4.0" - checksum: f5f9a7974bfb28a91afafa254b197f0f22c684d4a1731763dda960d2c8e375b36c7d690e0d9dc8fba774c537af14a7e979129bca23d88d052fbeb9466955e447 + checksum: 10c0/f5f9a7974bfb28a91afafa254b197f0f22c684d4a1731763dda960d2c8e375b36c7d690e0d9dc8fba774c537af14a7e979129bca23d88d052fbeb9466955e447 languageName: node linkType: hard "negotiator@npm:0.6.3, negotiator@npm:^0.6.3": version: 0.6.3 resolution: "negotiator@npm:0.6.3" - checksum: 3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2 + checksum: 10c0/3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2 languageName: node linkType: hard "neo-async@npm:^2.5.0, neo-async@npm:^2.6.1, neo-async@npm:^2.6.2": version: 2.6.2 resolution: "neo-async@npm:2.6.2" - checksum: c2f5a604a54a8ec5438a342e1f356dff4bc33ccccdb6dc668d94fe8e5eccfc9d2c2eea6064b0967a767ba63b33763f51ccf2cd2441b461a7322656c1f06b3f5d + checksum: 10c0/c2f5a604a54a8ec5438a342e1f356dff4bc33ccccdb6dc668d94fe8e5eccfc9d2c2eea6064b0967a767ba63b33763f51ccf2cd2441b461a7322656c1f06b3f5d languageName: node linkType: hard "nice-try@npm:^1.0.4": version: 1.0.5 resolution: "nice-try@npm:1.0.5" - checksum: 95568c1b73e1d0d4069a3e3061a2102d854513d37bcfda73300015b7ba4868d3b27c198d1dbbd8ebdef4112fc2ed9e895d4a0f2e1cce0bd334f2a1346dc9205f + checksum: 10c0/95568c1b73e1d0d4069a3e3061a2102d854513d37bcfda73300015b7ba4868d3b27c198d1dbbd8ebdef4112fc2ed9e895d4a0f2e1cce0bd334f2a1346dc9205f languageName: node linkType: hard @@ -11719,14 +11651,14 @@ __metadata: peerDependenciesMeta: encoding: optional: true - checksum: 3ec847ca43f678d07b80abfd85bdf06523c2554ee9a494c992c5fc61f5d9cde9f9f16aa33ff09a62f19eee9d54813b8850d7f054cdfee8b2daf789c57f8eeaea + checksum: 10c0/3ec847ca43f678d07b80abfd85bdf06523c2554ee9a494c992c5fc61f5d9cde9f9f16aa33ff09a62f19eee9d54813b8850d7f054cdfee8b2daf789c57f8eeaea languageName: node linkType: hard "node-forge@npm:^0.10.0": version: 0.10.0 resolution: "node-forge@npm:0.10.0" - checksum: 9cbf9ac8fc3889a5a46b0248f7238ee4014770bf31d22e04c0c7f04ed91c8be4584c5f534cdf6037e99f236c636c925cba960501ed2b850e077512e152760663 + checksum: 10c0/9cbf9ac8fc3889a5a46b0248f7238ee4014770bf31d22e04c0c7f04ed91c8be4584c5f534cdf6037e99f236c636c925cba960501ed2b850e077512e152760663 languageName: node linkType: hard @@ -11737,7 +11669,7 @@ __metadata: node-gyp-build: bin.js node-gyp-build-optional: optional.js node-gyp-build-test: build-test.js - checksum: bd7738c96608c1fa056344623b93d4bbdc63fec05862061e5489284639e3a53daa407b9158c45bfc2e33d0b419851ed5c1f03f4c9ba34726361e2a7b765c0ddc + checksum: 10c0/bd7738c96608c1fa056344623b93d4bbdc63fec05862061e5489284639e3a53daa407b9158c45bfc2e33d0b419851ed5c1f03f4c9ba34726361e2a7b765c0ddc languageName: node linkType: hard @@ -11757,14 +11689,14 @@ __metadata: which: "npm:^4.0.0" bin: node-gyp: bin/node-gyp.js - checksum: abddfff7d873312e4ed4a5fb75ce893a5c4fb69e7fcb1dfa71c28a6b92a7f1ef6b62790dffb39181b5a82728ba8f2f32d229cf8cbe66769fe02cea7db4a555aa + checksum: 10c0/abddfff7d873312e4ed4a5fb75ce893a5c4fb69e7fcb1dfa71c28a6b92a7f1ef6b62790dffb39181b5a82728ba8f2f32d229cf8cbe66769fe02cea7db4a555aa languageName: node linkType: hard "node-int64@npm:^0.4.0": version: 0.4.0 resolution: "node-int64@npm:0.4.0" - checksum: a6a4d8369e2f2720e9c645255ffde909c0fbd41c92ea92a5607fc17055955daac99c1ff589d421eee12a0d24e99f7bfc2aabfeb1a4c14742f6c099a51863f31a + checksum: 10c0/a6a4d8369e2f2720e9c645255ffde909c0fbd41c92ea92a5607fc17055955daac99c1ff589d421eee12a0d24e99f7bfc2aabfeb1a4c14742f6c099a51863f31a languageName: node linkType: hard @@ -11795,14 +11727,14 @@ __metadata: url: "npm:^0.11.0" util: "npm:^0.11.0" vm-browserify: "npm:^1.0.1" - checksum: 0e05321a6396408903ed642231d2bca7dd96492d074c7af161ba06a63c95378bd3de50b4105eccbbc02d93ba3da69f0ff5e624bc2a8c92ca462ceb6a403e7986 + checksum: 10c0/0e05321a6396408903ed642231d2bca7dd96492d074c7af161ba06a63c95378bd3de50b4105eccbbc02d93ba3da69f0ff5e624bc2a8c92ca462ceb6a403e7986 languageName: node linkType: hard "node-releases@npm:^2.0.14": version: 2.0.14 resolution: "node-releases@npm:2.0.14" - checksum: 199fc93773ae70ec9969bc6d5ac5b2bbd6eb986ed1907d751f411fef3ede0e4bfdb45ceb43711f8078bea237b6036db8b1bf208f6ff2b70c7d615afd157f3ab9 + checksum: 10c0/199fc93773ae70ec9969bc6d5ac5b2bbd6eb986ed1907d751f411fef3ede0e4bfdb45ceb43711f8078bea237b6036db8b1bf208f6ff2b70c7d615afd157f3ab9 languageName: node linkType: hard @@ -11813,7 +11745,7 @@ __metadata: abbrev: "npm:^2.0.0" bin: nopt: bin/nopt.js - checksum: 9bd7198df6f16eb29ff16892c77bcf7f0cc41f9fb5c26280ac0def2cf8cf319f3b821b3af83eba0e74c85807cc430a16efe0db58fe6ae1f41e69519f585b6aff + checksum: 10c0/9bd7198df6f16eb29ff16892c77bcf7f0cc41f9fb5c26280ac0def2cf8cf319f3b821b3af83eba0e74c85807cc430a16efe0db58fe6ae1f41e69519f585b6aff languageName: node linkType: hard @@ -11822,21 +11754,21 @@ __metadata: resolution: "normalize-path@npm:2.1.1" dependencies: remove-trailing-separator: "npm:^1.0.1" - checksum: db814326ff88057437233361b4c7e9cac7b54815b051b57f2d341ce89b1d8ec8cbd43e7fa95d7652b3b69ea8fcc294b89b8530d556a84d1bdace94229e1e9a8b + checksum: 10c0/db814326ff88057437233361b4c7e9cac7b54815b051b57f2d341ce89b1d8ec8cbd43e7fa95d7652b3b69ea8fcc294b89b8530d556a84d1bdace94229e1e9a8b languageName: node linkType: hard "normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": version: 3.0.0 resolution: "normalize-path@npm:3.0.0" - checksum: e008c8142bcc335b5e38cf0d63cfd39d6cf2d97480af9abdbe9a439221fd4d749763bab492a8ee708ce7a194bb00c9da6d0a115018672310850489137b3da046 + checksum: 10c0/e008c8142bcc335b5e38cf0d63cfd39d6cf2d97480af9abdbe9a439221fd4d749763bab492a8ee708ce7a194bb00c9da6d0a115018672310850489137b3da046 languageName: node linkType: hard "normalize-range@npm:^0.1.2": version: 0.1.2 resolution: "normalize-range@npm:0.1.2" - checksum: bf39b73a63e0a42ad1a48c2bd1bda5a07ede64a7e2567307a407674e595bcff0fa0d57e8e5f1e7fa5e91000797c7615e13613227aaaa4d6d6e87f5bd5cc95de6 + checksum: 10c0/bf39b73a63e0a42ad1a48c2bd1bda5a07ede64a7e2567307a407674e595bcff0fa0d57e8e5f1e7fa5e91000797c7615e13613227aaaa4d6d6e87f5bd5cc95de6 languageName: node linkType: hard @@ -11845,7 +11777,7 @@ __metadata: resolution: "npm-run-path@npm:2.0.2" dependencies: path-key: "npm:^2.0.0" - checksum: 95549a477886f48346568c97b08c4fda9cdbf7ce8a4fbc2213f36896d0d19249e32d68d7451bdcbca8041b5fba04a6b2c4a618beaf19849505c05b700740f1de + checksum: 10c0/95549a477886f48346568c97b08c4fda9cdbf7ce8a4fbc2213f36896d0d19249e32d68d7451bdcbca8041b5fba04a6b2c4a618beaf19849505c05b700740f1de languageName: node linkType: hard @@ -11854,7 +11786,7 @@ __metadata: resolution: "npm-run-path@npm:4.0.1" dependencies: path-key: "npm:^3.0.0" - checksum: 6f9353a95288f8455cf64cbeb707b28826a7f29690244c1e4bb61ec573256e021b6ad6651b394eb1ccfd00d6ec50147253aba2c5fe58a57ceb111fad62c519ac + checksum: 10c0/6f9353a95288f8455cf64cbeb707b28826a7f29690244c1e4bb61ec573256e021b6ad6651b394eb1ccfd00d6ec50147253aba2c5fe58a57ceb111fad62c519ac languageName: node linkType: hard @@ -11863,7 +11795,7 @@ __metadata: resolution: "npm-run-path@npm:5.1.0" dependencies: path-key: "npm:^4.0.0" - checksum: ff6d77514489f47fa1c3b1311d09cd4b6d09a874cc1866260f9dea12cbaabda0436ed7f8c2ee44d147bf99a3af29307c6f63b0f83d242b0b6b0ab25dff2629e3 + checksum: 10c0/ff6d77514489f47fa1c3b1311d09cd4b6d09a874cc1866260f9dea12cbaabda0436ed7f8c2ee44d147bf99a3af29307c6f63b0f83d242b0b6b0ab25dff2629e3 languageName: node linkType: hard @@ -11872,7 +11804,7 @@ __metadata: resolution: "nth-check@npm:1.0.2" dependencies: boolbase: "npm:~1.0.0" - checksum: 1a67ce53a99e276eea672f892d712b29f3e6802bbbef7285ffab72ecea4f972e8244defac1ebded0daffabf459def31355bb9c64e5657ac2ab032c13f185d0fd + checksum: 10c0/1a67ce53a99e276eea672f892d712b29f3e6802bbbef7285ffab72ecea4f972e8244defac1ebded0daffabf459def31355bb9c64e5657ac2ab032c13f185d0fd languageName: node linkType: hard @@ -11881,21 +11813,21 @@ __metadata: resolution: "nth-check@npm:2.1.1" dependencies: boolbase: "npm:^1.0.0" - checksum: 5fee7ff309727763689cfad844d979aedd2204a817fbaaf0e1603794a7c20db28548d7b024692f953557df6ce4a0ee4ae46cd8ebd9b36cfb300b9226b567c479 + checksum: 10c0/5fee7ff309727763689cfad844d979aedd2204a817fbaaf0e1603794a7c20db28548d7b024692f953557df6ce4a0ee4ae46cd8ebd9b36cfb300b9226b567c479 languageName: node linkType: hard "nwsapi@npm:^2.2.2, nwsapi@npm:^2.2.7": version: 2.2.7 resolution: "nwsapi@npm:2.2.7" - checksum: 44be198adae99208487a1c886c0a3712264f7bbafa44368ad96c003512fed2753d4e22890ca1e6edb2690c3456a169f2a3c33bfacde1905cf3bf01c7722464db + checksum: 10c0/44be198adae99208487a1c886c0a3712264f7bbafa44368ad96c003512fed2753d4e22890ca1e6edb2690c3456a169f2a3c33bfacde1905cf3bf01c7722464db languageName: node linkType: hard "object-assign@npm:^4, object-assign@npm:^4.0.1, object-assign@npm:^4.1.1": version: 4.1.1 resolution: "object-assign@npm:4.1.1" - checksum: 1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414 + checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414 languageName: node linkType: hard @@ -11906,14 +11838,14 @@ __metadata: copy-descriptor: "npm:^0.1.0" define-property: "npm:^0.2.5" kind-of: "npm:^3.0.3" - checksum: 79314b05e9d626159a04f1d913f4c4aba9eae8848511cf5f4c8e3b04bb3cc313b65f60357f86462c959a14c2d58380fedf89b6b32ecec237c452a5ef3900a293 + checksum: 10c0/79314b05e9d626159a04f1d913f4c4aba9eae8848511cf5f4c8e3b04bb3cc313b65f60357f86462c959a14c2d58380fedf89b6b32ecec237c452a5ef3900a293 languageName: node linkType: hard "object-inspect@npm:^1.13.1, object-inspect@npm:^1.9.0": version: 1.13.1 resolution: "object-inspect@npm:1.13.1" - checksum: fad603f408e345c82e946abdf4bfd774260a5ed3e5997a0b057c44153ac32c7271ff19e3a5ae39c858da683ba045ccac2f65245c12763ce4e8594f818f4a648d + checksum: 10c0/fad603f408e345c82e946abdf4bfd774260a5ed3e5997a0b057c44153ac32c7271ff19e3a5ae39c858da683ba045ccac2f65245c12763ce4e8594f818f4a648d languageName: node linkType: hard @@ -11923,14 +11855,14 @@ __metadata: dependencies: call-bind: "npm:^1.0.2" define-properties: "npm:^1.1.3" - checksum: 8c263fb03fc28f1ffb54b44b9147235c5e233dc1ca23768e7d2569740b5d860154d7cc29a30220fe28ed6d8008e2422aefdebfe987c103e1c5d190cf02d9d886 + checksum: 10c0/8c263fb03fc28f1ffb54b44b9147235c5e233dc1ca23768e7d2569740b5d860154d7cc29a30220fe28ed6d8008e2422aefdebfe987c103e1c5d190cf02d9d886 languageName: node linkType: hard "object-keys@npm:^1.1.1": version: 1.1.1 resolution: "object-keys@npm:1.1.1" - checksum: b11f7ccdbc6d406d1f186cdadb9d54738e347b2692a14439ca5ac70c225fa6db46db809711b78589866d47b25fc3e8dee0b4c722ac751e11180f9380e3d8601d + checksum: 10c0/b11f7ccdbc6d406d1f186cdadb9d54738e347b2692a14439ca5ac70c225fa6db46db809711b78589866d47b25fc3e8dee0b4c722ac751e11180f9380e3d8601d languageName: node linkType: hard @@ -11939,41 +11871,41 @@ __metadata: resolution: "object-visit@npm:1.0.1" dependencies: isobject: "npm:^3.0.0" - checksum: 086b475bda24abd2318d2b187c3e928959b89f5cb5883d6fe5a42d03719b61fc18e765f658de9ac8730e67ba9ff26d61e73d991215948ff9ecefe771e0071029 + checksum: 10c0/086b475bda24abd2318d2b187c3e928959b89f5cb5883d6fe5a42d03719b61fc18e765f658de9ac8730e67ba9ff26d61e73d991215948ff9ecefe771e0071029 languageName: node linkType: hard -"object.assign@npm:^4.1.4": - version: 4.1.4 - resolution: "object.assign@npm:4.1.4" +"object.assign@npm:^4.1.4, object.assign@npm:^4.1.5": + version: 4.1.5 + resolution: "object.assign@npm:4.1.5" dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.1.4" + call-bind: "npm:^1.0.5" + define-properties: "npm:^1.2.1" has-symbols: "npm:^1.0.3" object-keys: "npm:^1.1.1" - checksum: 2f286118c023e557757620e647b02e7c88d3d417e0c568fca0820de8ec9cca68928304854d5b03e99763eddad6e78a6716e2930f7e6372e4b9b843f3fd3056f3 + checksum: 10c0/60108e1fa2706f22554a4648299b0955236c62b3685c52abf4988d14fffb0e7731e00aa8c6448397e3eb63d087dcc124a9f21e1980f36d0b2667f3c18bacd469 languageName: node linkType: hard -"object.entries@npm:^1.1.6, object.entries@npm:^1.1.7": +"object.entries@npm:^1.1.7": version: 1.1.7 resolution: "object.entries@npm:1.1.7" dependencies: call-bind: "npm:^1.0.2" define-properties: "npm:^1.2.0" es-abstract: "npm:^1.22.1" - checksum: 3ad1899cc7bf14546bf28f4a9b363ae8690b90948fcfbcac4c808395435d760f26193d9cae95337ce0e3c1e5c1f4fa45f7b46b31b68d389e9e117fce38775d86 + checksum: 10c0/3ad1899cc7bf14546bf28f4a9b363ae8690b90948fcfbcac4c808395435d760f26193d9cae95337ce0e3c1e5c1f4fa45f7b46b31b68d389e9e117fce38775d86 languageName: node linkType: hard -"object.fromentries@npm:^2.0.6, object.fromentries@npm:^2.0.7": +"object.fromentries@npm:^2.0.7": version: 2.0.7 resolution: "object.fromentries@npm:2.0.7" dependencies: call-bind: "npm:^1.0.2" define-properties: "npm:^1.2.0" es-abstract: "npm:^1.22.1" - checksum: 071745c21f6fc9e6c914691f2532c1fb60ad967e5ddc52801d09958b5de926566299d07ae14466452a7efd29015f9145d6c09c573d93a0dc6f1683ee0ec2b93b + checksum: 10c0/071745c21f6fc9e6c914691f2532c1fb60ad967e5ddc52801d09958b5de926566299d07ae14466452a7efd29015f9145d6c09c573d93a0dc6f1683ee0ec2b93b languageName: node linkType: hard @@ -11986,7 +11918,7 @@ __metadata: define-properties: "npm:^1.2.0" es-abstract: "npm:^1.21.2" safe-array-concat: "npm:^1.0.0" - checksum: 9c401557a1cd47d873810b8df61dba350bc39848753180a2c7bdc8b9a67907b7c12e5aa9318fde7fe68d3b62c88b9cbd729b3cc8bbdf02655619b9d2a99b5c2a + checksum: 10c0/9c401557a1cd47d873810b8df61dba350bc39848753180a2c7bdc8b9a67907b7c12e5aa9318fde7fe68d3b62c88b9cbd729b3cc8bbdf02655619b9d2a99b5c2a languageName: node linkType: hard @@ -11998,17 +11930,17 @@ __metadata: define-properties: "npm:^1.2.0" es-abstract: "npm:^1.22.1" get-intrinsic: "npm:^1.2.1" - checksum: 61e41fbf08cc04ed860363db9629eedeaa590fce243c0960e948fd7b11f78a9d4350065c339936d118a2dd8775d7259e26207340cc8ce688bec66cb615fec6fe + checksum: 10c0/61e41fbf08cc04ed860363db9629eedeaa590fce243c0960e948fd7b11f78a9d4350065c339936d118a2dd8775d7259e26207340cc8ce688bec66cb615fec6fe languageName: node linkType: hard -"object.hasown@npm:^1.1.2": - version: 1.1.2 - resolution: "object.hasown@npm:1.1.2" +"object.hasown@npm:^1.1.3": + version: 1.1.3 + resolution: "object.hasown@npm:1.1.3" dependencies: - define-properties: "npm:^1.1.4" - es-abstract: "npm:^1.20.4" - checksum: 419fc1c74a2aea7ebb4d49b79d5b1599a010b26c18eae35bd061ccdd013ccb749c499d8dd6ee21a91e6d7264ccc592573d0f13562970f76e25fc844d8c1b02ce + define-properties: "npm:^1.2.0" + es-abstract: "npm:^1.22.1" + checksum: 10c0/8a41ba4fb1208a85c2275e9b5098071beacc24345b9a71ab98ef0a1c61b34dc74c6b460ff1e1884c33843d8f2553df64a10eec2b74b3ed009e3b2710c826bd2c languageName: node linkType: hard @@ -12017,7 +11949,7 @@ __metadata: resolution: "object.pick@npm:1.3.0" dependencies: isobject: "npm:^3.0.1" - checksum: cd316ec986e49895a28f2df9182de9cdeee57cd2a952c122aacc86344c28624fe002d9affc4f48b5014ec7c033da9942b08821ddb44db8c5bac5b3ec54bdc31e + checksum: 10c0/cd316ec986e49895a28f2df9182de9cdeee57cd2a952c122aacc86344c28624fe002d9affc4f48b5014ec7c033da9942b08821ddb44db8c5bac5b3ec54bdc31e languageName: node linkType: hard @@ -12028,21 +11960,21 @@ __metadata: call-bind: "npm:^1.0.2" define-properties: "npm:^1.2.0" es-abstract: "npm:^1.22.1" - checksum: e869d6a37fb7afdd0054dea49036d6ccebb84854a8848a093bbd1bc516f53e690bba88f0bc3e83fdfa74c601469ee6989c9b13359cda9604144c6e732fad3b6b + checksum: 10c0/e869d6a37fb7afdd0054dea49036d6ccebb84854a8848a093bbd1bc516f53e690bba88f0bc3e83fdfa74c601469ee6989c9b13359cda9604144c6e732fad3b6b languageName: node linkType: hard "obuf@npm:^1.0.0, obuf@npm:^1.1.2, obuf@npm:~1.1.2": version: 1.1.2 resolution: "obuf@npm:1.1.2" - checksum: 520aaac7ea701618eacf000fc96ae458e20e13b0569845800fc582f81b386731ab22d55354b4915d58171db00e79cfcd09c1638c02f89577ef092b38c65b7d81 + checksum: 10c0/520aaac7ea701618eacf000fc96ae458e20e13b0569845800fc582f81b386731ab22d55354b4915d58171db00e79cfcd09c1638c02f89577ef092b38c65b7d81 languageName: node linkType: hard "on-exit-leak-free@npm:^2.1.0": version: 2.1.2 resolution: "on-exit-leak-free@npm:2.1.2" - checksum: faea2e1c9d696ecee919026c32be8d6a633a7ac1240b3b87e944a380e8a11dc9c95c4a1f8fb0568de7ab8db3823e790f12bda45296b1d111e341aad3922a0570 + checksum: 10c0/faea2e1c9d696ecee919026c32be8d6a633a7ac1240b3b87e944a380e8a11dc9c95c4a1f8fb0568de7ab8db3823e790f12bda45296b1d111e341aad3922a0570 languageName: node linkType: hard @@ -12051,14 +11983,14 @@ __metadata: resolution: "on-finished@npm:2.4.1" dependencies: ee-first: "npm:1.1.1" - checksum: 46fb11b9063782f2d9968863d9cbba33d77aa13c17f895f56129c274318b86500b22af3a160fe9995aa41317efcd22941b6eba747f718ced08d9a73afdb087b4 + checksum: 10c0/46fb11b9063782f2d9968863d9cbba33d77aa13c17f895f56129c274318b86500b22af3a160fe9995aa41317efcd22941b6eba747f718ced08d9a73afdb087b4 languageName: node linkType: hard "on-headers@npm:~1.0.2": version: 1.0.2 resolution: "on-headers@npm:1.0.2" - checksum: f649e65c197bf31505a4c0444875db0258e198292f34b884d73c2f751e91792ef96bb5cf89aa0f4fecc2e4dc662461dda606b1274b0e564f539cae5d2f5fc32f + checksum: 10c0/f649e65c197bf31505a4c0444875db0258e198292f34b884d73c2f751e91792ef96bb5cf89aa0f4fecc2e4dc662461dda606b1274b0e564f539cae5d2f5fc32f languageName: node linkType: hard @@ -12067,7 +11999,7 @@ __metadata: resolution: "once@npm:1.4.0" dependencies: wrappy: "npm:1" - checksum: 5d48aca287dfefabd756621c5dfce5c91a549a93e9fdb7b8246bc4c4790aa2ec17b34a260530474635147aeb631a2dcc8b32c613df0675f96041cbb8244517d0 + checksum: 10c0/5d48aca287dfefabd756621c5dfce5c91a549a93e9fdb7b8246bc4c4790aa2ec17b34a260530474635147aeb631a2dcc8b32c613df0675f96041cbb8244517d0 languageName: node linkType: hard @@ -12076,7 +12008,7 @@ __metadata: resolution: "onetime@npm:5.1.2" dependencies: mimic-fn: "npm:^2.1.0" - checksum: ffcef6fbb2692c3c40749f31ea2e22677a876daea92959b8a80b521d95cca7a668c884d8b2045d1d8ee7d56796aa405c405462af112a1477594cc63531baeb8f + checksum: 10c0/ffcef6fbb2692c3c40749f31ea2e22677a876daea92959b8a80b521d95cca7a668c884d8b2045d1d8ee7d56796aa405c405462af112a1477594cc63531baeb8f languageName: node linkType: hard @@ -12085,19 +12017,7 @@ __metadata: resolution: "onetime@npm:6.0.0" dependencies: mimic-fn: "npm:^4.0.0" - checksum: 4eef7c6abfef697dd4479345a4100c382d73c149d2d56170a54a07418c50816937ad09500e1ed1e79d235989d073a9bade8557122aee24f0576ecde0f392bb6c - languageName: node - linkType: hard - -"open@npm:^9.1.0": - version: 9.1.0 - resolution: "open@npm:9.1.0" - dependencies: - default-browser: "npm:^4.0.0" - define-lazy-prop: "npm:^3.0.0" - is-inside-container: "npm:^1.0.0" - is-wsl: "npm:^2.2.0" - checksum: 8073ec0dd8994a7a7d9bac208bd17d093993a65ce10f2eb9b62b6d3a91c9366ae903938a237c275493c130171d339f6dcbdd2a2de7e32953452c0867b97825af + checksum: 10c0/4eef7c6abfef697dd4479345a4100c382d73c149d2d56170a54a07418c50816937ad09500e1ed1e79d235989d073a9bade8557122aee24f0576ecde0f392bb6c languageName: node linkType: hard @@ -12106,7 +12026,7 @@ __metadata: resolution: "opencollective-postinstall@npm:2.0.3" bin: opencollective-postinstall: index.js - checksum: 8a0104a218bc1afaae943f0af378461eeb2836f9848bad872bbd067ec5d1d9791636f307454ab77d0746f10341366f295384656a340ebdb87a2585058e8567e5 + checksum: 10c0/8a0104a218bc1afaae943f0af378461eeb2836f9848bad872bbd067ec5d1d9791636f307454ab77d0746f10341366f295384656a340ebdb87a2585058e8567e5 languageName: node linkType: hard @@ -12115,7 +12035,7 @@ __metadata: resolution: "opener@npm:1.5.2" bin: opener: bin/opener-bin.js - checksum: dd56256ab0cf796585617bc28e06e058adf09211781e70b264c76a1dbe16e90f868c974e5bf5309c93469157c7d14b89c35dc53fe7293b0e40b4d2f92073bc79 + checksum: 10c0/dd56256ab0cf796585617bc28e06e058adf09211781e70b264c76a1dbe16e90f868c974e5bf5309c93469157c7d14b89c35dc53fe7293b0e40b4d2f92073bc79 languageName: node linkType: hard @@ -12124,7 +12044,7 @@ __metadata: resolution: "opn@npm:5.5.0" dependencies: is-wsl: "npm:^1.1.0" - checksum: 03f78b1ab464fd0d97543e2a90e47ca872e2324696bc13f741467693060fe058e87e38e9cfc9f3b568e60dfb31579fbe664d8e806b2f219262c423da953bba4c + checksum: 10c0/03f78b1ab464fd0d97543e2a90e47ca872e2324696bc13f741467693060fe058e87e38e9cfc9f3b568e60dfb31579fbe664d8e806b2f219262c423da953bba4c languageName: node linkType: hard @@ -12138,21 +12058,21 @@ __metadata: levn: "npm:^0.4.1" prelude-ls: "npm:^1.2.1" type-check: "npm:^0.4.0" - checksum: 66fba794d425b5be51353035cf3167ce6cfa049059cbb93229b819167687e0f48d2bc4603fcb21b091c99acb516aae1083624675b15c4765b2e4693a085e959c + checksum: 10c0/66fba794d425b5be51353035cf3167ce6cfa049059cbb93229b819167687e0f48d2bc4603fcb21b091c99acb516aae1083624675b15c4765b2e4693a085e959c languageName: node linkType: hard "os-browserify@npm:^0.3.0": version: 0.3.0 resolution: "os-browserify@npm:0.3.0" - checksum: 6ff32cb1efe2bc6930ad0fd4c50e30c38010aee909eba8d65be60af55efd6cbb48f0287e3649b4e3f3a63dce5a667b23c187c4293a75e557f0d5489d735bcf52 + checksum: 10c0/6ff32cb1efe2bc6930ad0fd4c50e30c38010aee909eba8d65be60af55efd6cbb48f0287e3649b4e3f3a63dce5a667b23c187c4293a75e557f0d5489d735bcf52 languageName: node linkType: hard "p-finally@npm:^1.0.0": version: 1.0.0 resolution: "p-finally@npm:1.0.0" - checksum: 6b8552339a71fe7bd424d01d8451eea92d379a711fc62f6b2fe64cad8a472c7259a236c9a22b4733abca0b5666ad503cb497792a0478c5af31ded793d00937e7 + checksum: 10c0/6b8552339a71fe7bd424d01d8451eea92d379a711fc62f6b2fe64cad8a472c7259a236c9a22b4733abca0b5666ad503cb497792a0478c5af31ded793d00937e7 languageName: node linkType: hard @@ -12161,7 +12081,7 @@ __metadata: resolution: "p-limit@npm:2.3.0" dependencies: p-try: "npm:^2.0.0" - checksum: 8da01ac53efe6a627080fafc127c873da40c18d87b3f5d5492d465bb85ec7207e153948df6b9cbaeb130be70152f874229b8242ee2be84c0794082510af97f12 + checksum: 10c0/8da01ac53efe6a627080fafc127c873da40c18d87b3f5d5492d465bb85ec7207e153948df6b9cbaeb130be70152f874229b8242ee2be84c0794082510af97f12 languageName: node linkType: hard @@ -12170,7 +12090,7 @@ __metadata: resolution: "p-limit@npm:3.1.0" dependencies: yocto-queue: "npm:^0.1.0" - checksum: 9db675949dbdc9c3763c89e748d0ef8bdad0afbb24d49ceaf4c46c02c77d30db4e0652ed36d0a0a7a95154335fab810d95c86153105bb73b3a90448e2bb14e1a + checksum: 10c0/9db675949dbdc9c3763c89e748d0ef8bdad0afbb24d49ceaf4c46c02c77d30db4e0652ed36d0a0a7a95154335fab810d95c86153105bb73b3a90448e2bb14e1a languageName: node linkType: hard @@ -12179,7 +12099,7 @@ __metadata: resolution: "p-locate@npm:3.0.0" dependencies: p-limit: "npm:^2.0.0" - checksum: 7b7f06f718f19e989ce6280ed4396fb3c34dabdee0df948376483032f9d5ec22fdf7077ec942143a75827bb85b11da72016497fc10dac1106c837ed593969ee8 + checksum: 10c0/7b7f06f718f19e989ce6280ed4396fb3c34dabdee0df948376483032f9d5ec22fdf7077ec942143a75827bb85b11da72016497fc10dac1106c837ed593969ee8 languageName: node linkType: hard @@ -12188,7 +12108,7 @@ __metadata: resolution: "p-locate@npm:4.1.0" dependencies: p-limit: "npm:^2.2.0" - checksum: 1b476ad69ad7f6059744f343b26d51ce091508935c1dbb80c4e0a2f397ffce0ca3a1f9f5cd3c7ce19d7929a09719d5c65fe70d8ee289c3f267cd36f2881813e9 + checksum: 10c0/1b476ad69ad7f6059744f343b26d51ce091508935c1dbb80c4e0a2f397ffce0ca3a1f9f5cd3c7ce19d7929a09719d5c65fe70d8ee289c3f267cd36f2881813e9 languageName: node linkType: hard @@ -12197,14 +12117,14 @@ __metadata: resolution: "p-locate@npm:5.0.0" dependencies: p-limit: "npm:^3.0.2" - checksum: 2290d627ab7903b8b70d11d384fee714b797f6040d9278932754a6860845c4d3190603a0772a663c8cb5a7b21d1b16acb3a6487ebcafa9773094edc3dfe6009a + checksum: 10c0/2290d627ab7903b8b70d11d384fee714b797f6040d9278932754a6860845c4d3190603a0772a663c8cb5a7b21d1b16acb3a6487ebcafa9773094edc3dfe6009a languageName: node linkType: hard "p-map@npm:^2.0.0": version: 2.1.0 resolution: "p-map@npm:2.1.0" - checksum: 735dae87badd4737a2dd582b6d8f93e49a1b79eabbc9815a4d63a528d5e3523e978e127a21d784cccb637010e32103a40d2aaa3ab23ae60250b1a820ca752043 + checksum: 10c0/735dae87badd4737a2dd582b6d8f93e49a1b79eabbc9815a4d63a528d5e3523e978e127a21d784cccb637010e32103a40d2aaa3ab23ae60250b1a820ca752043 languageName: node linkType: hard @@ -12213,7 +12133,7 @@ __metadata: resolution: "p-map@npm:4.0.0" dependencies: aggregate-error: "npm:^3.0.0" - checksum: 592c05bd6262c466ce269ff172bb8de7c6975afca9b50c975135b974e9bdaafbfe80e61aaaf5be6d1200ba08b30ead04b88cfa7e25ff1e3b93ab28c9f62a2c75 + checksum: 10c0/592c05bd6262c466ce269ff172bb8de7c6975afca9b50c975135b974e9bdaafbfe80e61aaaf5be6d1200ba08b30ead04b88cfa7e25ff1e3b93ab28c9f62a2c75 languageName: node linkType: hard @@ -12222,28 +12142,28 @@ __metadata: resolution: "p-retry@npm:3.0.1" dependencies: retry: "npm:^0.12.0" - checksum: 4fbec30cb0d8d10c5d9d1787a2d2c2b5ee60ddfa1897e86ec4e556ca1dff0901859872d7a7ecc33dd94af6e1c3a92ed79cc828161bbd221a2a1e464971c51b1b + checksum: 10c0/4fbec30cb0d8d10c5d9d1787a2d2c2b5ee60ddfa1897e86ec4e556ca1dff0901859872d7a7ecc33dd94af6e1c3a92ed79cc828161bbd221a2a1e464971c51b1b languageName: node linkType: hard "p-try@npm:^2.0.0": version: 2.2.0 resolution: "p-try@npm:2.2.0" - checksum: c36c19907734c904b16994e6535b02c36c2224d433e01a2f1ab777237f4d86e6289fd5fd464850491e940379d4606ed850c03e0f9ab600b0ebddb511312e177f + checksum: 10c0/c36c19907734c904b16994e6535b02c36c2224d433e01a2f1ab777237f4d86e6289fd5fd464850491e940379d4606ed850c03e0f9ab600b0ebddb511312e177f languageName: node linkType: hard "packet-reader@npm:1.0.0": version: 1.0.0 resolution: "packet-reader@npm:1.0.0" - checksum: c86c3321bb07e0f03cc2db59f7701184e0bbfcb914f1fdc963993b03262486deb402292adcef39b64e3530ea66b3b2e2163d6da7b3792a730bdd1c6df3175aaa + checksum: 10c0/c86c3321bb07e0f03cc2db59f7701184e0bbfcb914f1fdc963993b03262486deb402292adcef39b64e3530ea66b3b2e2163d6da7b3792a730bdd1c6df3175aaa languageName: node linkType: hard "pako@npm:~1.0.5": version: 1.0.11 resolution: "pako@npm:1.0.11" - checksum: 86dd99d8b34c3930345b8bbeb5e1cd8a05f608eeb40967b293f72fe469d0e9c88b783a8777e4cc7dc7c91ce54c5e93d88ff4b4f060e6ff18408fd21030d9ffbe + checksum: 10c0/86dd99d8b34c3930345b8bbeb5e1cd8a05f608eeb40967b293f72fe469d0e9c88b783a8777e4cc7dc7c91ce54c5e93d88ff4b4f060e6ff18408fd21030d9ffbe languageName: node linkType: hard @@ -12252,7 +12172,7 @@ __metadata: resolution: "parent-module@npm:1.0.1" dependencies: callsites: "npm:^3.0.0" - checksum: c63d6e80000d4babd11978e0d3fee386ca7752a02b035fd2435960ffaa7219dc42146f07069fb65e6e8bf1caef89daf9af7535a39bddf354d78bf50d8294f556 + checksum: 10c0/c63d6e80000d4babd11978e0d3fee386ca7752a02b035fd2435960ffaa7219dc42146f07069fb65e6e8bf1caef89daf9af7535a39bddf354d78bf50d8294f556 languageName: node linkType: hard @@ -12265,7 +12185,7 @@ __metadata: evp_bytestokey: "npm:^1.0.0" pbkdf2: "npm:^3.0.3" safe-buffer: "npm:^5.1.1" - checksum: 4ed1d9b9e120c5484d29d67bb90171aac0b73422bc016d6294160aea983275c28a27ab85d862059a36a86a97dd31b7ddd97486802ca9fac67115fe3409e9dcbd + checksum: 10c0/4ed1d9b9e120c5484d29d67bb90171aac0b73422bc016d6294160aea983275c28a27ab85d862059a36a86a97dd31b7ddd97486802ca9fac67115fe3409e9dcbd languageName: node linkType: hard @@ -12277,14 +12197,14 @@ __metadata: error-ex: "npm:^1.3.1" json-parse-even-better-errors: "npm:^2.3.0" lines-and-columns: "npm:^1.1.6" - checksum: 77947f2253005be7a12d858aedbafa09c9ae39eb4863adf330f7b416ca4f4a08132e453e08de2db46459256fb66afaac5ee758b44fe6541b7cdaf9d252e59585 + checksum: 10c0/77947f2253005be7a12d858aedbafa09c9ae39eb4863adf330f7b416ca4f4a08132e453e08de2db46459256fb66afaac5ee758b44fe6541b7cdaf9d252e59585 languageName: node linkType: hard "parse-passwd@npm:^1.0.0": version: 1.0.0 resolution: "parse-passwd@npm:1.0.0" - checksum: 1c05c05f95f184ab9ca604841d78e4fe3294d46b8e3641d305dcc28e930da0e14e602dbda9f3811cd48df5b0e2e27dbef7357bf0d7c40e41b18c11c3a8b8d17b + checksum: 10c0/1c05c05f95f184ab9ca604841d78e4fe3294d46b8e3641d305dcc28e930da0e14e602dbda9f3811cd48df5b0e2e27dbef7357bf0d7c40e41b18c11c3a8b8d17b languageName: node linkType: hard @@ -12293,98 +12213,98 @@ __metadata: resolution: "parse5@npm:7.1.2" dependencies: entities: "npm:^4.4.0" - checksum: 297d7af8224f4b5cb7f6617ecdae98eeaed7f8cbd78956c42785e230505d5a4f07cef352af10d3006fa5c1544b76b57784d3a22d861ae071bbc460c649482bf4 + checksum: 10c0/297d7af8224f4b5cb7f6617ecdae98eeaed7f8cbd78956c42785e230505d5a4f07cef352af10d3006fa5c1544b76b57784d3a22d861ae071bbc460c649482bf4 languageName: node linkType: hard "parseurl@npm:~1.3.2, parseurl@npm:~1.3.3": version: 1.3.3 resolution: "parseurl@npm:1.3.3" - checksum: 90dd4760d6f6174adb9f20cf0965ae12e23879b5f5464f38e92fce8073354341e4b3b76fa3d878351efe7d01e617121955284cfd002ab087fba1a0726ec0b4f5 + checksum: 10c0/90dd4760d6f6174adb9f20cf0965ae12e23879b5f5464f38e92fce8073354341e4b3b76fa3d878351efe7d01e617121955284cfd002ab087fba1a0726ec0b4f5 languageName: node linkType: hard "pascalcase@npm:^0.1.1": version: 0.1.1 resolution: "pascalcase@npm:0.1.1" - checksum: 48dfe90618e33810bf58211d8f39ad2c0262f19ad6354da1ba563935b5f429f36409a1fb9187c220328f7a4dc5969917f8e3e01ee089b5f1627b02aefe39567b + checksum: 10c0/48dfe90618e33810bf58211d8f39ad2c0262f19ad6354da1ba563935b5f429f36409a1fb9187c220328f7a4dc5969917f8e3e01ee089b5f1627b02aefe39567b languageName: node linkType: hard "path-browserify@npm:0.0.1": version: 0.0.1 resolution: "path-browserify@npm:0.0.1" - checksum: 3d59710cddeea06509d91935196185900f3d9d29376dff68ff0e146fbd41d0fb304e983d0158f30cabe4dd2ffcc6a7d3d977631994ee984c88e66aed50a1ccd3 + checksum: 10c0/3d59710cddeea06509d91935196185900f3d9d29376dff68ff0e146fbd41d0fb304e983d0158f30cabe4dd2ffcc6a7d3d977631994ee984c88e66aed50a1ccd3 languageName: node linkType: hard "path-complete-extname@npm:^1.0.0": version: 1.0.0 resolution: "path-complete-extname@npm:1.0.0" - checksum: 06139eff7acc24a5ca1521d61571fe2a52e9a69a1a417dd6ad28f0a6fb046f623ff2480a1ef2de623d1e051b5dc988b610f263ebbb6352e0c53b3e24d706cc18 + checksum: 10c0/06139eff7acc24a5ca1521d61571fe2a52e9a69a1a417dd6ad28f0a6fb046f623ff2480a1ef2de623d1e051b5dc988b610f263ebbb6352e0c53b3e24d706cc18 languageName: node linkType: hard "path-dirname@npm:^1.0.0": version: 1.0.2 resolution: "path-dirname@npm:1.0.2" - checksum: 71e59be2bada7c91f62b976245fd421b7cb01fde3207fe53a82d8880621ad04fd8b434e628c9cf4e796259fc168a107d77cd56837725267c5b2c58cefe2c4e1b + checksum: 10c0/71e59be2bada7c91f62b976245fd421b7cb01fde3207fe53a82d8880621ad04fd8b434e628c9cf4e796259fc168a107d77cd56837725267c5b2c58cefe2c4e1b languageName: node linkType: hard "path-exists@npm:^3.0.0": version: 3.0.0 resolution: "path-exists@npm:3.0.0" - checksum: 17d6a5664bc0a11d48e2b2127d28a0e58822c6740bde30403f08013da599182289c56518bec89407e3f31d3c2b6b296a4220bc3f867f0911fee6952208b04167 + checksum: 10c0/17d6a5664bc0a11d48e2b2127d28a0e58822c6740bde30403f08013da599182289c56518bec89407e3f31d3c2b6b296a4220bc3f867f0911fee6952208b04167 languageName: node linkType: hard "path-exists@npm:^4.0.0": version: 4.0.0 resolution: "path-exists@npm:4.0.0" - checksum: 8c0bd3f5238188197dc78dced15207a4716c51cc4e3624c44fc97acf69558f5ebb9a2afff486fe1b4ee148e0c133e96c5e11a9aa5c48a3006e3467da070e5e1b + checksum: 10c0/8c0bd3f5238188197dc78dced15207a4716c51cc4e3624c44fc97acf69558f5ebb9a2afff486fe1b4ee148e0c133e96c5e11a9aa5c48a3006e3467da070e5e1b languageName: node linkType: hard "path-is-absolute@npm:^1.0.0": version: 1.0.1 resolution: "path-is-absolute@npm:1.0.1" - checksum: 127da03c82172a2a50099cddbf02510c1791fc2cc5f7713ddb613a56838db1e8168b121a920079d052e0936c23005562059756d653b7c544c53185efe53be078 + checksum: 10c0/127da03c82172a2a50099cddbf02510c1791fc2cc5f7713ddb613a56838db1e8168b121a920079d052e0936c23005562059756d653b7c544c53185efe53be078 languageName: node linkType: hard "path-is-inside@npm:^1.0.2": version: 1.0.2 resolution: "path-is-inside@npm:1.0.2" - checksum: 7fdd4b41672c70461cce734fc222b33e7b447fa489c7c4377c95e7e6852d83d69741f307d88ec0cc3b385b41cb4accc6efac3c7c511cd18512e95424f5fa980c + checksum: 10c0/7fdd4b41672c70461cce734fc222b33e7b447fa489c7c4377c95e7e6852d83d69741f307d88ec0cc3b385b41cb4accc6efac3c7c511cd18512e95424f5fa980c languageName: node linkType: hard "path-key@npm:^2.0.0, path-key@npm:^2.0.1": version: 2.0.1 resolution: "path-key@npm:2.0.1" - checksum: dd2044f029a8e58ac31d2bf34c34b93c3095c1481942960e84dd2faa95bbb71b9b762a106aead0646695330936414b31ca0bd862bf488a937ad17c8c5d73b32b + checksum: 10c0/dd2044f029a8e58ac31d2bf34c34b93c3095c1481942960e84dd2faa95bbb71b9b762a106aead0646695330936414b31ca0bd862bf488a937ad17c8c5d73b32b languageName: node linkType: hard "path-key@npm:^3.0.0, path-key@npm:^3.1.0": version: 3.1.1 resolution: "path-key@npm:3.1.1" - checksum: 748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c + checksum: 10c0/748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c languageName: node linkType: hard "path-key@npm:^4.0.0": version: 4.0.0 resolution: "path-key@npm:4.0.0" - checksum: 794efeef32863a65ac312f3c0b0a99f921f3e827ff63afa5cb09a377e202c262b671f7b3832a4e64731003fa94af0263713962d317b9887bd1e0c48a342efba3 + checksum: 10c0/794efeef32863a65ac312f3c0b0a99f921f3e827ff63afa5cb09a377e202c262b671f7b3832a4e64731003fa94af0263713962d317b9887bd1e0c48a342efba3 languageName: node linkType: hard "path-parse@npm:^1.0.7": version: 1.0.7 resolution: "path-parse@npm:1.0.7" - checksum: 11ce261f9d294cc7a58d6a574b7f1b935842355ec66fba3c3fd79e0f036462eaf07d0aa95bb74ff432f9afef97ce1926c720988c6a7451d8a584930ae7de86e1 + checksum: 10c0/11ce261f9d294cc7a58d6a574b7f1b935842355ec66fba3c3fd79e0f036462eaf07d0aa95bb74ff432f9afef97ce1926c720988c6a7451d8a584930ae7de86e1 languageName: node linkType: hard @@ -12394,14 +12314,14 @@ __metadata: dependencies: lru-cache: "npm:^9.1.1 || ^10.0.0" minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" - checksum: e5dc78a7348d25eec61ab166317e9e9c7b46818aa2c2b9006c507a6ff48c672d011292d9662527213e558f5652ce0afcc788663a061d8b59ab495681840c0c1e + checksum: 10c0/e5dc78a7348d25eec61ab166317e9e9c7b46818aa2c2b9006c507a6ff48c672d011292d9662527213e558f5652ce0afcc788663a061d8b59ab495681840c0c1e languageName: node linkType: hard "path-to-regexp@npm:0.1.7": version: 0.1.7 resolution: "path-to-regexp@npm:0.1.7" - checksum: 50a1ddb1af41a9e68bd67ca8e331a705899d16fb720a1ea3a41e310480948387daf603abb14d7b0826c58f10146d49050a1291ba6a82b78a382d1c02c0b8f905 + checksum: 10c0/50a1ddb1af41a9e68bd67ca8e331a705899d16fb720a1ea3a41e310480948387daf603abb14d7b0826c58f10146d49050a1291ba6a82b78a382d1c02c0b8f905 languageName: node linkType: hard @@ -12410,14 +12330,14 @@ __metadata: resolution: "path-to-regexp@npm:1.8.0" dependencies: isarray: "npm:0.0.1" - checksum: 7b25d6f27a8de03f49406d16195450f5ced694398adea1510b0f949d9660600d1769c5c6c83668583b7e6b503f3caf1ede8ffc08135dbe3e982f034f356fbb5c + checksum: 10c0/7b25d6f27a8de03f49406d16195450f5ced694398adea1510b0f949d9660600d1769c5c6c83668583b7e6b503f3caf1ede8ffc08135dbe3e982f034f356fbb5c languageName: node linkType: hard "path-type@npm:^4.0.0": version: 4.0.0 resolution: "path-type@npm:4.0.0" - checksum: 666f6973f332f27581371efaf303fd6c272cc43c2057b37aa99e3643158c7e4b2626549555d88626e99ea9e046f82f32e41bbde5f1508547e9a11b149b52387c + checksum: 10c0/666f6973f332f27581371efaf303fd6c272cc43c2057b37aa99e3643158c7e4b2626549555d88626e99ea9e046f82f32e41bbde5f1508547e9a11b149b52387c languageName: node linkType: hard @@ -12430,49 +12350,49 @@ __metadata: ripemd160: "npm:^2.0.1" safe-buffer: "npm:^5.0.1" sha.js: "npm:^2.4.8" - checksum: 5a30374e87d33fa080a92734d778cf172542cc7e41b96198c4c88763997b62d7850de3fbda5c3111ddf79805ee7c1da7046881c90ac4920b5e324204518b05fd + checksum: 10c0/5a30374e87d33fa080a92734d778cf172542cc7e41b96198c4c88763997b62d7850de3fbda5c3111ddf79805ee7c1da7046881c90ac4920b5e324204518b05fd languageName: node linkType: hard "performance-now@npm:^0.2.0": version: 0.2.0 resolution: "performance-now@npm:0.2.0" - checksum: d7f3824e443491208f7124b45d3280dbff889f8f048c3aee507109c24644d51a226eb07fd7ac51dd0eef144639590c57410c2d167bd4fdf0c5caa0101a449c3d + checksum: 10c0/d7f3824e443491208f7124b45d3280dbff889f8f048c3aee507109c24644d51a226eb07fd7ac51dd0eef144639590c57410c2d167bd4fdf0c5caa0101a449c3d languageName: node linkType: hard "performance-now@npm:^2.1.0": version: 2.1.0 resolution: "performance-now@npm:2.1.0" - checksum: 22c54de06f269e29f640e0e075207af57de5052a3d15e360c09b9a8663f393f6f45902006c1e71aa8a5a1cdfb1a47fe268826f8496d6425c362f00f5bc3e85d9 + checksum: 10c0/22c54de06f269e29f640e0e075207af57de5052a3d15e360c09b9a8663f393f6f45902006c1e71aa8a5a1cdfb1a47fe268826f8496d6425c362f00f5bc3e85d9 languageName: node linkType: hard "pg-cloudflare@npm:^1.1.1": version: 1.1.1 resolution: "pg-cloudflare@npm:1.1.1" - checksum: a68b957f755be6af813d68ccaf4c906a000fd2ecb362cd281220052cc9e2f6c26da3b88792742387008c30b3bf0d2fa3a0eff04aeb8af4414023c99ae78e07bd + checksum: 10c0/a68b957f755be6af813d68ccaf4c906a000fd2ecb362cd281220052cc9e2f6c26da3b88792742387008c30b3bf0d2fa3a0eff04aeb8af4414023c99ae78e07bd languageName: node linkType: hard "pg-connection-string@npm:^2.6.0, pg-connection-string@npm:^2.6.2": version: 2.6.2 resolution: "pg-connection-string@npm:2.6.2" - checksum: e8fdea74fcc8bdc3d7c5c6eadd9425fdba7e67fb7fe836f9c0cecad94c8984e435256657d1d8ce0483d1fedef667e7a57e32449a63cb805cb0289fc34b62da35 + checksum: 10c0/e8fdea74fcc8bdc3d7c5c6eadd9425fdba7e67fb7fe836f9c0cecad94c8984e435256657d1d8ce0483d1fedef667e7a57e32449a63cb805cb0289fc34b62da35 languageName: node linkType: hard "pg-int8@npm:1.0.1": version: 1.0.1 resolution: "pg-int8@npm:1.0.1" - checksum: be6a02d851fc2a4ae3e9de81710d861de3ba35ac927268973eb3cb618873a05b9424656df464dd43bd7dc3fc5295c3f5b3c8349494f87c7af50ec59ef14e0b98 + checksum: 10c0/be6a02d851fc2a4ae3e9de81710d861de3ba35ac927268973eb3cb618873a05b9424656df464dd43bd7dc3fc5295c3f5b3c8349494f87c7af50ec59ef14e0b98 languageName: node linkType: hard "pg-numeric@npm:1.0.2": version: 1.0.2 resolution: "pg-numeric@npm:1.0.2" - checksum: 43dd9884e7b52c79ddc28d2d282d7475fce8bba13452d33c04ceb2e0a65f561edf6699694e8e1c832ff9093770496363183c950dd29608e1bdd98f344b25bca9 + checksum: 10c0/43dd9884e7b52c79ddc28d2d282d7475fce8bba13452d33c04ceb2e0a65f561edf6699694e8e1c832ff9093770496363183c950dd29608e1bdd98f344b25bca9 languageName: node linkType: hard @@ -12481,14 +12401,14 @@ __metadata: resolution: "pg-pool@npm:3.6.1" peerDependencies: pg: ">=8.0" - checksum: 47837c4e4c2b9e195cec01bd58b6e276acc915537191707ad4d6ed975fd9bc03c73f63cb7fde4cb0e08ed059e35faf60fbd03744dee3af71d4b4631ab40eeb7f + checksum: 10c0/47837c4e4c2b9e195cec01bd58b6e276acc915537191707ad4d6ed975fd9bc03c73f63cb7fde4cb0e08ed059e35faf60fbd03744dee3af71d4b4631ab40eeb7f languageName: node linkType: hard "pg-protocol@npm:*, pg-protocol@npm:^1.6.0": version: 1.6.0 resolution: "pg-protocol@npm:1.6.0" - checksum: 318a4d1e9cebd3927b10a8bc412f5017117a1f9a5fafb628d75847da7d1ab81c33250de58596bd0990029e14e92a995a851286d60fc236692299faf509572213 + checksum: 10c0/318a4d1e9cebd3927b10a8bc412f5017117a1f9a5fafb628d75847da7d1ab81c33250de58596bd0990029e14e92a995a851286d60fc236692299faf509572213 languageName: node linkType: hard @@ -12501,7 +12421,7 @@ __metadata: postgres-bytea: "npm:~1.0.0" postgres-date: "npm:~1.0.4" postgres-interval: "npm:^1.1.0" - checksum: ab3f8069a323f601cd2d2279ca8c425447dab3f9b61d933b0601d7ffc00d6200df25e26a4290b2b0783b59278198f7dd2ed03e94c4875797919605116a577c65 + checksum: 10c0/ab3f8069a323f601cd2d2279ca8c425447dab3f9b61d933b0601d7ffc00d6200df25e26a4290b2b0783b59278198f7dd2ed03e94c4875797919605116a577c65 languageName: node linkType: hard @@ -12516,7 +12436,7 @@ __metadata: postgres-date: "npm:~2.0.1" postgres-interval: "npm:^3.0.0" postgres-range: "npm:^1.1.1" - checksum: e2126b2775554ae8bacb3b104814487c2af2caff44cc52bee786b3887c65fe4c1fe031237e51e30ffed1cbb13b71776bd60cc1e65ac800c9946df4030849a074 + checksum: 10c0/e2126b2775554ae8bacb3b104814487c2af2caff44cc52bee786b3887c65fe4c1fe031237e51e30ffed1cbb13b71776bd60cc1e65ac800c9946df4030849a074 languageName: node linkType: hard @@ -12540,7 +12460,7 @@ __metadata: peerDependenciesMeta: pg-native: optional: true - checksum: 07e6967fc8bd5d72bab9be6620626e8e3ab59128ebf56bf0de83d67f10801a19221d88b3317e90b93339ba48d0498b39967b782ae39686aabda6bc647bceb438 + checksum: 10c0/07e6967fc8bd5d72bab9be6620626e8e3ab59128ebf56bf0de83d67f10801a19221d88b3317e90b93339ba48d0498b39967b782ae39686aabda6bc647bceb438 languageName: node linkType: hard @@ -12549,21 +12469,21 @@ __metadata: resolution: "pgpass@npm:1.0.5" dependencies: split2: "npm:^4.1.0" - checksum: 5ea6c9b2de04c33abb08d33a2dded303c4a3c7162a9264519cbe85c0a9857d712463140ba42fad0c7cd4b21f644dd870b45bb2e02fcbe505b4de0744fd802c1d + checksum: 10c0/5ea6c9b2de04c33abb08d33a2dded303c4a3c7162a9264519cbe85c0a9857d712463140ba42fad0c7cd4b21f644dd870b45bb2e02fcbe505b4de0744fd802c1d languageName: node linkType: hard "picocolors@npm:^1.0.0": version: 1.0.0 resolution: "picocolors@npm:1.0.0" - checksum: 20a5b249e331c14479d94ec6817a182fd7a5680debae82705747b2db7ec50009a5f6648d0621c561b0572703f84dbef0858abcbd5856d3c5511426afcb1961f7 + checksum: 10c0/20a5b249e331c14479d94ec6817a182fd7a5680debae82705747b2db7ec50009a5f6648d0621c561b0572703f84dbef0858abcbd5856d3c5511426afcb1961f7 languageName: node linkType: hard "picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.2, picomatch@npm:^2.2.3, picomatch@npm:^2.3.1": version: 2.3.1 resolution: "picomatch@npm:2.3.1" - checksum: 26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be + checksum: 10c0/26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be languageName: node linkType: hard @@ -12572,28 +12492,28 @@ __metadata: resolution: "pidtree@npm:0.6.0" bin: pidtree: bin/pidtree.js - checksum: 0829ec4e9209e230f74ebf4265f5ccc9ebfb488334b525cb13f86ff801dca44b362c41252cd43ae4d7653a10a5c6ab3be39d2c79064d6895e0d78dc50a5ed6e9 + checksum: 10c0/0829ec4e9209e230f74ebf4265f5ccc9ebfb488334b525cb13f86ff801dca44b362c41252cd43ae4d7653a10a5c6ab3be39d2c79064d6895e0d78dc50a5ed6e9 languageName: node linkType: hard "piexifjs@npm:^1.0.6": version: 1.0.6 resolution: "piexifjs@npm:1.0.6" - checksum: 69a10fe09c08f1e67e653844ac79e720324a7fa34689b020359d60d98b3a601c070e1759df8f2d97d022298bd2f5b79eed4c92de86c5f215300c8a63adf947b1 + checksum: 10c0/69a10fe09c08f1e67e653844ac79e720324a7fa34689b020359d60d98b3a601c070e1759df8f2d97d022298bd2f5b79eed4c92de86c5f215300c8a63adf947b1 languageName: node linkType: hard "pify@npm:^2.0.0": version: 2.3.0 resolution: "pify@npm:2.3.0" - checksum: 551ff8ab830b1052633f59cb8adc9ae8407a436e06b4a9718bcb27dc5844b83d535c3a8512b388b6062af65a98c49bdc0dd523d8b2617b188f7c8fee457158dc + checksum: 10c0/551ff8ab830b1052633f59cb8adc9ae8407a436e06b4a9718bcb27dc5844b83d535c3a8512b388b6062af65a98c49bdc0dd523d8b2617b188f7c8fee457158dc languageName: node linkType: hard "pify@npm:^4.0.1": version: 4.0.1 resolution: "pify@npm:4.0.1" - checksum: 6f9d404b0d47a965437403c9b90eca8bb2536407f03de165940e62e72c8c8b75adda5516c6b9b23675a5877cc0bcac6bdfb0ef0e39414cd2476d5495da40e7cf + checksum: 10c0/6f9d404b0d47a965437403c9b90eca8bb2536407f03de165940e62e72c8c8b75adda5516c6b9b23675a5877cc0bcac6bdfb0ef0e39414cd2476d5495da40e7cf languageName: node linkType: hard @@ -12602,14 +12522,14 @@ __metadata: resolution: "pinkie-promise@npm:2.0.1" dependencies: pinkie: "npm:^2.0.0" - checksum: 11b5e5ce2b090c573f8fad7b517cbca1bb9a247587306f05ae71aef6f9b2cd2b923c304aa9663c2409cfde27b367286179f1379bc4ec18a3fbf2bb0d473b160a + checksum: 10c0/11b5e5ce2b090c573f8fad7b517cbca1bb9a247587306f05ae71aef6f9b2cd2b923c304aa9663c2409cfde27b367286179f1379bc4ec18a3fbf2bb0d473b160a languageName: node linkType: hard "pinkie@npm:^2.0.0": version: 2.0.4 resolution: "pinkie@npm:2.0.4" - checksum: 25228b08b5597da42dc384221aa0ce56ee0fbf32965db12ba838e2a9ca0193c2f0609c45551ee077ccd2060bf109137fdb185b00c6d7e0ed7e35006d20fdcbc6 + checksum: 10c0/25228b08b5597da42dc384221aa0ce56ee0fbf32965db12ba838e2a9ca0193c2f0609c45551ee077ccd2060bf109137fdb185b00c6d7e0ed7e35006d20fdcbc6 languageName: node linkType: hard @@ -12619,7 +12539,7 @@ __metadata: dependencies: readable-stream: "npm:^4.0.0" split2: "npm:^4.0.0" - checksum: 6e9b9d5a2c0a37f91ecaf224d335daae1ae682b1c79a05b06ef9e0f0a5d289f8e597992217efc857796dae6f1067e9b4882f95c6228ff433ddc153532cae8aca + checksum: 10c0/6e9b9d5a2c0a37f91ecaf224d335daae1ae682b1c79a05b06ef9e0f0a5d289f8e597992217efc857796dae6f1067e9b4882f95c6228ff433ddc153532cae8aca languageName: node linkType: hard @@ -12631,7 +12551,7 @@ __metadata: pino: "npm:^8.17.1" pino-std-serializers: "npm:^6.2.2" process-warning: "npm:^3.0.0" - checksum: 05496cb76cc9908658e50c4620fbdf7b0b5d99fb529493d601c3e4635b0bf7ce12b8a8eed7b5b520089f643b099233d61dd71f7cdfad8b66e59b9b81d79b6512 + checksum: 10c0/05496cb76cc9908658e50c4620fbdf7b0b5d99fb529493d601c3e4635b0bf7ce12b8a8eed7b5b520089f643b099233d61dd71f7cdfad8b66e59b9b81d79b6512 languageName: node linkType: hard @@ -12655,20 +12575,20 @@ __metadata: strip-json-comments: "npm:^3.1.1" bin: pino-pretty: bin.js - checksum: 6964fba5acc7a9f112e4c6738d602e123daf16cb5f6ddc56ab4b6bb05059f28876d51da8f72358cf1172e95fa12496b70465431a0836df693c462986d050686b + checksum: 10c0/6964fba5acc7a9f112e4c6738d602e123daf16cb5f6ddc56ab4b6bb05059f28876d51da8f72358cf1172e95fa12496b70465431a0836df693c462986d050686b languageName: node linkType: hard "pino-std-serializers@npm:^6.0.0, pino-std-serializers@npm:^6.2.2": version: 6.2.2 resolution: "pino-std-serializers@npm:6.2.2" - checksum: 8f1c7f0f0d8f91e6c6b5b2a6bfb48f06441abeb85f1c2288319f736f9c6d814fbeebe928d2314efc2ba6018fa7db9357a105eca9fc99fc1f28945a8a8b28d3d5 + checksum: 10c0/8f1c7f0f0d8f91e6c6b5b2a6bfb48f06441abeb85f1c2288319f736f9c6d814fbeebe928d2314efc2ba6018fa7db9357a105eca9fc99fc1f28945a8a8b28d3d5 languageName: node linkType: hard "pino@npm:^8.17.1, pino@npm:^8.17.2": - version: 8.17.2 - resolution: "pino@npm:8.17.2" + version: 8.19.0 + resolution: "pino@npm:8.19.0" dependencies: atomic-sleep: "npm:^1.0.0" fast-redact: "npm:^3.1.1" @@ -12683,14 +12603,14 @@ __metadata: thread-stream: "npm:^2.0.0" bin: pino: bin.js - checksum: 9e55af6cd9d1833a4dbe64924fc73163295acd3c988a9c7db88926669f2574ab7ec607e8487b6dd71dbdad2d7c1c1aac439f37e59233f37220b1a9d88fa2ce01 + checksum: 10c0/53e6e9db91e451163e93294b0a7c5c8135742d58909dfc4a6fa1afc155b2b0dc44448ec3d057e08351951f9a3ea67e6ea8e72e952b64a1d889f4d5376cbd1a5d languageName: node linkType: hard "pirates@npm:^4.0.4": version: 4.0.6 resolution: "pirates@npm:4.0.6" - checksum: 00d5fa51f8dded94d7429700fb91a0c1ead00ae2c7fd27089f0c5b63e6eca36197fe46384631872690a66f390c5e27198e99006ab77ae472692ab9c2ca903f36 + checksum: 10c0/00d5fa51f8dded94d7429700fb91a0c1ead00ae2c7fd27089f0c5b63e6eca36197fe46384631872690a66f390c5e27198e99006ab77ae472692ab9c2ca903f36 languageName: node linkType: hard @@ -12699,7 +12619,7 @@ __metadata: resolution: "pkg-dir@npm:3.0.0" dependencies: find-up: "npm:^3.0.0" - checksum: 902a3d0c1f8ac43b1795fa1ba6ffeb37dfd53c91469e969790f6ed5e29ff2bdc50b63ba6115dc056d2efb4a040aa2446d512b3804bdafdf302f734fb3ec21847 + checksum: 10c0/902a3d0c1f8ac43b1795fa1ba6ffeb37dfd53c91469e969790f6ed5e29ff2bdc50b63ba6115dc056d2efb4a040aa2446d512b3804bdafdf302f734fb3ec21847 languageName: node linkType: hard @@ -12708,7 +12628,7 @@ __metadata: resolution: "pkg-dir@npm:4.2.0" dependencies: find-up: "npm:^4.0.0" - checksum: c56bda7769e04907a88423feb320babaed0711af8c436ce3e56763ab1021ba107c7b0cafb11cde7529f669cfc22bffcaebffb573645cbd63842ea9fb17cd7728 + checksum: 10c0/c56bda7769e04907a88423feb320babaed0711af8c436ce3e56763ab1021ba107c7b0cafb11cde7529f669cfc22bffcaebffb573645cbd63842ea9fb17cd7728 languageName: node linkType: hard @@ -12719,14 +12639,21 @@ __metadata: async: "npm:^2.6.4" debug: "npm:^3.2.7" mkdirp: "npm:^0.5.6" - checksum: cef8b567b78aabccc59fe8e103bac8b394bb45a6a69be626608f099f454124c775aaf47b274c006332c07ab3f501cde55e49aaeb9d49d78d90362d776a565cbf + checksum: 10c0/cef8b567b78aabccc59fe8e103bac8b394bb45a6a69be626608f099f454124c775aaf47b274c006332c07ab3f501cde55e49aaeb9d49d78d90362d776a565cbf languageName: node linkType: hard "posix-character-classes@npm:^0.1.0": version: 0.1.1 resolution: "posix-character-classes@npm:0.1.1" - checksum: cce88011548a973b4af58361cd8f5f7b5a6faff8eef0901565802f067bcabf82597e920d4c97c22068464be3cbc6447af589f6cc8a7d813ea7165be60a0395bc + checksum: 10c0/cce88011548a973b4af58361cd8f5f7b5a6faff8eef0901565802f067bcabf82597e920d4c97c22068464be3cbc6447af589f6cc8a7d813ea7165be60a0395bc + languageName: node + linkType: hard + +"possible-typed-array-names@npm:^1.0.0": + version: 1.0.0 + resolution: "possible-typed-array-names@npm:1.0.0" + checksum: 10c0/d9aa22d31f4f7680e20269db76791b41c3a32c01a373e25f8a4813b4d45f7456bfc2b6d68f752dc4aab0e0bb0721cb3d76fb678c9101cb7a16316664bc2c73fd languageName: node linkType: hard @@ -12738,33 +12665,33 @@ __metadata: postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.2.2 - checksum: e0df07337162dbcaac5d6e030c7fd289e21da8766a9daca5d6b2b3c8094bb524ae5d74c70048ea7fe5fe4960ce048c60ac97922d917c3bbff34f58e9d2b0eb0e + checksum: 10c0/e0df07337162dbcaac5d6e030c7fd289e21da8766a9daca5d6b2b3c8094bb524ae5d74c70048ea7fe5fe4960ce048c60ac97922d917c3bbff34f58e9d2b0eb0e languageName: node linkType: hard -"postcss-colormin@npm:^6.0.2": - version: 6.0.2 - resolution: "postcss-colormin@npm:6.0.2" +"postcss-colormin@npm:^6.0.3": + version: 6.0.3 + resolution: "postcss-colormin@npm:6.0.3" dependencies: - browserslist: "npm:^4.22.2" + browserslist: "npm:^4.23.0" caniuse-api: "npm:^3.0.0" - colord: "npm:^2.9.1" + colord: "npm:^2.9.3" postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: 229681f9b89ba0909b4c69563837b0c32cc3d1c17ed1b00c33d4abfb0a0ef455124968e4885b5f92c64482e92074cd1958018ec111ed5d118f1e24baeda19c14 + checksum: 10c0/beddf9fd1bda3f456e1235829297341de34ca40f9a2e16f23930e13d9df6b6186ca3717817da0adab266bf5e8fcde7bd056ab54187f959eb53d2bfbde7f441e6 languageName: node linkType: hard -"postcss-convert-values@npm:^6.0.2": - version: 6.0.2 - resolution: "postcss-convert-values@npm:6.0.2" +"postcss-convert-values@npm:^6.0.4": + version: 6.0.4 + resolution: "postcss-convert-values@npm:6.0.4" dependencies: - browserslist: "npm:^4.22.2" + browserslist: "npm:^4.23.0" postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: 882d0b7839ef07ac8ffbf9cb48db0f610939a3496bd0321c7f23096ead676f13e09ab3d9c20ff3dbe2c887e855826051ca7dffeaffce5068cfdc9aaa573a3842 + checksum: 10c0/c267ae8f2dbfc7fff5e46cd984bb6191405fe76f1eee04fd10a69fe10065ad7c3b62fa36e4bef3fa3a730284cd7295cb66968afb6cdaad0571a57cfcb25248fc languageName: node linkType: hard @@ -12773,25 +12700,25 @@ __metadata: resolution: "postcss-discard-comments@npm:6.0.1" peerDependencies: postcss: ^8.4.31 - checksum: 5e9128ffb8c005081bb0521f5a23cf090e8513d928ed39935504ffde2e335a62a7e1a749c5c7bc2d03f06a8667900d19dd7eed19dfa4273043b5fd760476260d + checksum: 10c0/5e9128ffb8c005081bb0521f5a23cf090e8513d928ed39935504ffde2e335a62a7e1a749c5c7bc2d03f06a8667900d19dd7eed19dfa4273043b5fd760476260d languageName: node linkType: hard -"postcss-discard-duplicates@npm:^6.0.1": - version: 6.0.1 - resolution: "postcss-discard-duplicates@npm:6.0.1" +"postcss-discard-duplicates@npm:^6.0.2": + version: 6.0.2 + resolution: "postcss-discard-duplicates@npm:6.0.2" peerDependencies: postcss: ^8.4.31 - checksum: b9ea10a3c7528bb1630613c11756f809a95da634822d943fa91b28f2a37787e7cdb9ff96deed9776e2c3753d35e42c8afd5074b630930df7b5150573d4beda23 + checksum: 10c0/316b8263c3a06d3303288d99e093ed2922757222fe5ea457b70d8d3fccadf0a1a452a6cc3b8296e749e70b0a231b68a742f9e01c606baa7fe3e14327bae3094b languageName: node linkType: hard -"postcss-discard-empty@npm:^6.0.1": - version: 6.0.1 - resolution: "postcss-discard-empty@npm:6.0.1" +"postcss-discard-empty@npm:^6.0.2": + version: 6.0.2 + resolution: "postcss-discard-empty@npm:6.0.2" peerDependencies: postcss: ^8.4.31 - checksum: 6b95e588a3e8fb262e56bd313060daf29d7c9d44184bb6c4c5858ae81d6cd2907b15b3e3023b6621d50a67cfc10e6077920ff1e908892b207dee29477376498f + checksum: 10c0/abae41eecf93ed7b2b34bb77d319d70093e663ee4b23dc0b1e0007044bbf4315d980539bb67466a8ed24a475afdd52bd465f92433466cf3bf2057591c7124ab1 languageName: node linkType: hard @@ -12800,7 +12727,7 @@ __metadata: resolution: "postcss-discard-overridden@npm:6.0.1" peerDependencies: postcss: ^8.4.31 - checksum: 22f9d56e53b90bc0f8e6d1c24d6da6c7c1a9d757644a128a7a4263a5479aaa8eca4ce3bfe9db10358051635ed40e8778a68c3f1831b7163eae10ced001db4a87 + checksum: 10c0/22f9d56e53b90bc0f8e6d1c24d6da6c7c1a9d757644a128a7a4263a5479aaa8eca4ce3bfe9db10358051635ed40e8778a68c3f1831b7163eae10ced001db4a87 languageName: node linkType: hard @@ -12816,77 +12743,77 @@ __metadata: peerDependencies: postcss: ^7.0.0 || ^8.0.1 webpack: ^4.0.0 || ^5.0.0 - checksum: 3405584e571ec4d66d7c2b665a2a4823eaa7208433fd40eb6b669ac441f23398bc81fc18fe631c7d7805a303ad31f284a5066c4097dd082c1faba7edf13db8aa + checksum: 10c0/3405584e571ec4d66d7c2b665a2a4823eaa7208433fd40eb6b669ac441f23398bc81fc18fe631c7d7805a303ad31f284a5066c4097dd082c1faba7edf13db8aa languageName: node linkType: hard "postcss-media-query-parser@npm:^0.2.3": version: 0.2.3 resolution: "postcss-media-query-parser@npm:0.2.3" - checksum: 252c8cf24f0e9018516b0d70b7b3d6f5b52e81c4bab2164b49a4e4c1b87bb11f5dbe708c0076990665cb24c70d5fd2f3aee9c922b0f67c7c619e051801484688 + checksum: 10c0/252c8cf24f0e9018516b0d70b7b3d6f5b52e81c4bab2164b49a4e4c1b87bb11f5dbe708c0076990665cb24c70d5fd2f3aee9c922b0f67c7c619e051801484688 languageName: node linkType: hard -"postcss-merge-longhand@npm:^6.0.2": - version: 6.0.2 - resolution: "postcss-merge-longhand@npm:6.0.2" +"postcss-merge-longhand@npm:^6.0.3": + version: 6.0.3 + resolution: "postcss-merge-longhand@npm:6.0.3" dependencies: postcss-value-parser: "npm:^4.2.0" - stylehacks: "npm:^6.0.2" + stylehacks: "npm:^6.0.3" peerDependencies: postcss: ^8.4.31 - checksum: 2b3fae51bffc5962258d638bc7f415237593b515f369233e023f0eae5b13116297463c04b8c47a7b7af51cba5faaa7f517b653f6123e51935d670d4d4de5a26d + checksum: 10c0/a71758832e198af58a3d1c5013731c8dcd646611bd6ce099a5cbcef4dc2fd7c574e2f28f80bfe67887b046abfacca94bbeb2982bef3b087e9b52bd4acd3d8a38 languageName: node linkType: hard -"postcss-merge-rules@npm:^6.0.3": - version: 6.0.3 - resolution: "postcss-merge-rules@npm:6.0.3" +"postcss-merge-rules@npm:^6.0.4": + version: 6.0.4 + resolution: "postcss-merge-rules@npm:6.0.4" dependencies: - browserslist: "npm:^4.22.2" + browserslist: "npm:^4.23.0" caniuse-api: "npm:^3.0.0" cssnano-utils: "npm:^4.0.1" postcss-selector-parser: "npm:^6.0.15" peerDependencies: postcss: ^8.4.31 - checksum: c8355db11aa60bedcb1e6535fcd70f6ecec2dadd5c2975d3accf0eedbc92af782ac1f5e91a53866816ce332e4cbf1b94749a9425067935be066bc0c974e30fee + checksum: 10c0/57a16817c099dfc644bf2619831208bafcfd91225cccc8f6d2913241fe4a7225b3dc565bc92402902b4271771ad5d56358afd8eb7f709827a6576177e0bf9433 languageName: node linkType: hard -"postcss-minify-font-values@npm:^6.0.1": - version: 6.0.1 - resolution: "postcss-minify-font-values@npm:6.0.1" - dependencies: - postcss-value-parser: "npm:^4.2.0" - peerDependencies: - postcss: ^8.4.31 - checksum: 15af236245a6d27f1c83c943ef90d144ca043894bbd86f134506a984811a936a06824739984824965c7c3fd5a0ff4ed299f26a33f3b628662aa4fb40d7536fd0 - languageName: node - linkType: hard - -"postcss-minify-gradients@npm:^6.0.1": - version: 6.0.1 - resolution: "postcss-minify-gradients@npm:6.0.1" - dependencies: - colord: "npm:^2.9.1" - cssnano-utils: "npm:^4.0.1" - postcss-value-parser: "npm:^4.2.0" - peerDependencies: - postcss: ^8.4.31 - checksum: e700c3f6dc425072ff739fb18bb71c970599e0d909b326f4a5c84e91cf24c4f1ee78e4d161bd4cdf6e25b7d78f1ad082bb885afdd2a150f9b281520fc6359d5c - languageName: node - linkType: hard - -"postcss-minify-params@npm:^6.0.2": +"postcss-minify-font-values@npm:^6.0.2": version: 6.0.2 - resolution: "postcss-minify-params@npm:6.0.2" + resolution: "postcss-minify-font-values@npm:6.0.2" dependencies: - browserslist: "npm:^4.22.2" + postcss-value-parser: "npm:^4.2.0" + peerDependencies: + postcss: ^8.4.31 + checksum: 10c0/6a9407441531efd83683d529c9632c5c4ac7d971716dffa708b3775f36382ca9a960372793c4f9df68aaae513213a53400860d9a6bd233da6f68f8fc985efe72 + languageName: node + linkType: hard + +"postcss-minify-gradients@npm:^6.0.2": + version: 6.0.2 + resolution: "postcss-minify-gradients@npm:6.0.2" + dependencies: + colord: "npm:^2.9.3" cssnano-utils: "npm:^4.0.1" postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: 6638460d2be4a2eca8adee8409b70d6c6a19aff8cf93fda1b45c9da627b258b6baaa6acb48f51d26cd287704a235f9c9ae2e4744335b1fd47e163177c33896df + checksum: 10c0/7a72edf3fe0028010d85af77d8c6bfa6147785bc9b3758efb0d09b51a8254ce3f8bc3f67220af6f204bb175e95b9e8355baf29b9c32b1df590506bca835b02f4 + languageName: node + linkType: hard + +"postcss-minify-params@npm:^6.0.3": + version: 6.0.3 + resolution: "postcss-minify-params@npm:6.0.3" + dependencies: + browserslist: "npm:^4.23.0" + cssnano-utils: "npm:^4.0.1" + postcss-value-parser: "npm:^4.2.0" + peerDependencies: + postcss: ^8.4.31 + checksum: 10c0/65a8bc0f75e7dc8a292797209ec0b1adef52923daf181ad34a7e83cbc974e2192e0e35ce0f35dbcb0177828991f92da8e239564f56588482d99c04a3e0755266 languageName: node linkType: hard @@ -12897,7 +12824,7 @@ __metadata: postcss-selector-parser: "npm:^6.0.15" peerDependencies: postcss: ^8.4.31 - checksum: 5437b586c1237fc442e7e6078d4f23c987efc456366368b07a0da67332b04bd55821cedf0441e73e1209689f63139e272d930508e2963ba6e27c46561a661128 + checksum: 10c0/5437b586c1237fc442e7e6078d4f23c987efc456366368b07a0da67332b04bd55821cedf0441e73e1209689f63139e272d930508e2963ba6e27c46561a661128 languageName: node linkType: hard @@ -12906,7 +12833,7 @@ __metadata: resolution: "postcss-modules-extract-imports@npm:3.0.0" peerDependencies: postcss: ^8.1.0 - checksum: f8879d66d8162fb7a3fcd916d37574006c584ea509107b1cfb798a5e090175ef9470f601e46f0a305070d8ff2500e07489a5c1ac381c29a1dc1120e827ca7943 + checksum: 10c0/f8879d66d8162fb7a3fcd916d37574006c584ea509107b1cfb798a5e090175ef9470f601e46f0a305070d8ff2500e07489a5c1ac381c29a1dc1120e827ca7943 languageName: node linkType: hard @@ -12919,7 +12846,7 @@ __metadata: postcss-value-parser: "npm:^4.1.0" peerDependencies: postcss: ^8.1.0 - checksum: be49b86efbfb921f42287e227584aac91af9826fc1083db04958ae283dfe215ca539421bfba71f9da0f0b10651f28e95a64b5faca7166f578a1933b8646051f7 + checksum: 10c0/be49b86efbfb921f42287e227584aac91af9826fc1083db04958ae283dfe215ca539421bfba71f9da0f0b10651f28e95a64b5faca7166f578a1933b8646051f7 languageName: node linkType: hard @@ -12930,7 +12857,7 @@ __metadata: postcss-selector-parser: "npm:^6.0.4" peerDependencies: postcss: ^8.1.0 - checksum: 60af503910363689568c2c3701cb019a61b58b3d739391145185eec211bea5d50ccb6ecbe6955b39d856088072fd50ea002e40a52b50e33b181ff5c41da0308a + checksum: 10c0/60af503910363689568c2c3701cb019a61b58b3d739391145185eec211bea5d50ccb6ecbe6955b39d856088072fd50ea002e40a52b50e33b181ff5c41da0308a languageName: node linkType: hard @@ -12941,7 +12868,7 @@ __metadata: icss-utils: "npm:^5.0.0" peerDependencies: postcss: ^8.1.0 - checksum: dd18d7631b5619fb9921b198c86847a2a075f32e0c162e0428d2647685e318c487a2566cc8cc669fc2077ef38115cde7a068e321f46fb38be3ad49646b639dbc + checksum: 10c0/dd18d7631b5619fb9921b198c86847a2a075f32e0c162e0428d2647685e318c487a2566cc8cc669fc2077ef38115cde7a068e321f46fb38be3ad49646b639dbc languageName: node linkType: hard @@ -12950,7 +12877,7 @@ __metadata: resolution: "postcss-normalize-charset@npm:6.0.1" peerDependencies: postcss: ^8.4.31 - checksum: 8c09eedaf8813123875c65ab35120f14a87d6b9e8d6805fa808e3a714a8f868d15123f34f61e2240d89225f2f5c2bdabbcdf6385ce86b2487370d8994a65a857 + checksum: 10c0/8c09eedaf8813123875c65ab35120f14a87d6b9e8d6805fa808e3a714a8f868d15123f34f61e2240d89225f2f5c2bdabbcdf6385ce86b2487370d8994a65a857 languageName: node linkType: hard @@ -12961,7 +12888,7 @@ __metadata: postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: d08a92c653fb4f2506e029ceb8e3fdae9bc937fb1a7e80ecde759d02f6d15f69211af384d89d8582b160fd129abd9c77c8c64d75379417098ee5a2ba779e33d3 + checksum: 10c0/d08a92c653fb4f2506e029ceb8e3fdae9bc937fb1a7e80ecde759d02f6d15f69211af384d89d8582b160fd129abd9c77c8c64d75379417098ee5a2ba779e33d3 languageName: node linkType: hard @@ -12972,7 +12899,7 @@ __metadata: postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: bb0267b13c92791543f5e9f94b119a0540e08aa46f600acd73a692cd38d07d2d2fddb11148a81adb58e3f65671eebb05ea38d2ded48f3202b2582f1199aa848e + checksum: 10c0/bb0267b13c92791543f5e9f94b119a0540e08aa46f600acd73a692cd38d07d2d2fddb11148a81adb58e3f65671eebb05ea38d2ded48f3202b2582f1199aa848e languageName: node linkType: hard @@ -12983,7 +12910,7 @@ __metadata: postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: f6e943dbbf9341dd6ce2c9fc6820e8ae2a838d1db84f58f75b1e5c1b8b9d6895d17fb30b320e2189b8747f844713ec687540b5b1d52ccd6c9108d6d35328c659 + checksum: 10c0/f6e943dbbf9341dd6ce2c9fc6820e8ae2a838d1db84f58f75b1e5c1b8b9d6895d17fb30b320e2189b8747f844713ec687540b5b1d52ccd6c9108d6d35328c659 languageName: node linkType: hard @@ -12994,7 +12921,7 @@ __metadata: postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: afcdd69522fc3ebafc349c2ef4b62f1e734ade9b6148fd20f2b841477808ac6cf6e5bfbb533c492fdc6bb2184b84be8ebb800a6ae174c4313f87fb0695088cc0 + checksum: 10c0/afcdd69522fc3ebafc349c2ef4b62f1e734ade9b6148fd20f2b841477808ac6cf6e5bfbb533c492fdc6bb2184b84be8ebb800a6ae174c4313f87fb0695088cc0 languageName: node linkType: hard @@ -13005,19 +12932,19 @@ __metadata: postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: c1c81d0dcb2f74fbd69cc45b0b6bd6cde390a0c9df602aabbf3eb2149a49da48e808837e811d22a525ffb036e158e63b4b2cf12c94cf28f2c2f6af858876134e + checksum: 10c0/c1c81d0dcb2f74fbd69cc45b0b6bd6cde390a0c9df602aabbf3eb2149a49da48e808837e811d22a525ffb036e158e63b4b2cf12c94cf28f2c2f6af858876134e languageName: node linkType: hard -"postcss-normalize-unicode@npm:^6.0.2": - version: 6.0.2 - resolution: "postcss-normalize-unicode@npm:6.0.2" +"postcss-normalize-unicode@npm:^6.0.3": + version: 6.0.3 + resolution: "postcss-normalize-unicode@npm:6.0.3" dependencies: - browserslist: "npm:^4.22.2" + browserslist: "npm:^4.23.0" postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: ea696194f65ad31de2a9c022f1946a07c298f04070706d88a20061845e1e052e645c74b5bc785595814db87d14e435f85e968a44855dedc207d8c0b5d43b1aee + checksum: 10c0/9a79ff4fcdfc876e12fa595271f2fca655a5022fd63a202387fa9be1f6705a6e34395d555de8878ffed8b0305281ff452e26045bdc710e161f4103380b1d05d8 languageName: node linkType: hard @@ -13028,7 +12955,7 @@ __metadata: postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: 4e3e713a95e01f263feccd041b2b10016a0a09e494c81567f012d1326d9b2d57dc4a68956a820313630370c0ef591bdbb37cc96ed259022559623be179aad436 + checksum: 10c0/4e3e713a95e01f263feccd041b2b10016a0a09e494c81567f012d1326d9b2d57dc4a68956a820313630370c0ef591bdbb37cc96ed259022559623be179aad436 languageName: node linkType: hard @@ -13039,7 +12966,7 @@ __metadata: postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: 259c0b7653f033ed14303602a30e458c37dc63ee55f47226b6379a6ea553ca7c9b971d49715b8f3f36a3a06927f6f87d7997c027ad4664af3bca37a5fe30352e + checksum: 10c0/259c0b7653f033ed14303602a30e458c37dc63ee55f47226b6379a6ea553ca7c9b971d49715b8f3f36a3a06927f6f87d7997c027ad4664af3bca37a5fe30352e languageName: node linkType: hard @@ -13051,19 +12978,19 @@ __metadata: postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: 2e71f035c90b26d7a8d31e1b716f977532367f75bc76de3318b6ba7b2e1ec43c011cc09e741f59f7d93dff427b7d90a35db0b460d2f171a6f0c6e8c938ef30ad + checksum: 10c0/2e71f035c90b26d7a8d31e1b716f977532367f75bc76de3318b6ba7b2e1ec43c011cc09e741f59f7d93dff427b7d90a35db0b460d2f171a6f0c6e8c938ef30ad languageName: node linkType: hard -"postcss-reduce-initial@npm:^6.0.2": - version: 6.0.2 - resolution: "postcss-reduce-initial@npm:6.0.2" +"postcss-reduce-initial@npm:^6.0.3": + version: 6.0.3 + resolution: "postcss-reduce-initial@npm:6.0.3" dependencies: - browserslist: "npm:^4.22.2" + browserslist: "npm:^4.23.0" caniuse-api: "npm:^3.0.0" peerDependencies: postcss: ^8.4.31 - checksum: d35ad6f9725cdceb390a97a461e8594df7fbed4c55497c90d07c42f8343bf80139e720eaebc580bf480bf10e92959490aa308af66d8802ba71c327bdf08c93a1 + checksum: 10c0/824813d56f1f0d502b35781de5dd3caa5af71c9652710c95266ef8602a36cd9ea757033fb7206562d0a03e21f7a4198c09538dbf8c7548d014631a64bdcbb406 languageName: node linkType: hard @@ -13074,14 +13001,14 @@ __metadata: postcss-value-parser: "npm:^4.2.0" peerDependencies: postcss: ^8.4.31 - checksum: de7631302311071d86622166539162e69df506785e3674afab0602c86ed9aa67799e44405b40327f0011d58089d2dc4e2ae481b21812177818e28f9272d350a5 + checksum: 10c0/de7631302311071d86622166539162e69df506785e3674afab0602c86ed9aa67799e44405b40327f0011d58089d2dc4e2ae481b21812177818e28f9272d350a5 languageName: node linkType: hard "postcss-resolve-nested-selector@npm:^0.1.1": version: 0.1.1 resolution: "postcss-resolve-nested-selector@npm:0.1.1" - checksum: e86412064c5d805fbee20f4e851395304102addd7d583b6a991adaa5616e8d5f45549864eb6292d4cf15075cd261c289f069acdf6a2556689fc44fe72bcb306e + checksum: 10c0/e86412064c5d805fbee20f4e851395304102addd7d583b6a991adaa5616e8d5f45549864eb6292d4cf15075cd261c289f069acdf6a2556689fc44fe72bcb306e languageName: node linkType: hard @@ -13090,7 +13017,7 @@ __metadata: resolution: "postcss-safe-parser@npm:7.0.0" peerDependencies: postcss: ^8.4.31 - checksum: 4217afd8ce2809e959dc365e4675f499303cc6b91f94db06c8164422822db2d3b3124df701ee2234db4127ad05619b016bfb9c2bccae9bf9cf898a396f1632c9 + checksum: 10c0/4217afd8ce2809e959dc365e4675f499303cc6b91f94db06c8164422822db2d3b3124df701ee2234db4127ad05619b016bfb9c2bccae9bf9cf898a396f1632c9 languageName: node linkType: hard @@ -13099,7 +13026,7 @@ __metadata: resolution: "postcss-scss@npm:4.0.9" peerDependencies: postcss: ^8.4.29 - checksum: f917ecfd4b9113a6648e966a41f027ff7e14238393914978d44596e227a50f084667dc8818742348dc7d8b20130b30d4259aca1d4db86754a9c141202ae03714 + checksum: 10c0/f917ecfd4b9113a6648e966a41f027ff7e14238393914978d44596e227a50f084667dc8818742348dc7d8b20130b30d4259aca1d4db86754a9c141202ae03714 languageName: node linkType: hard @@ -13109,7 +13036,7 @@ __metadata: dependencies: cssesc: "npm:^3.0.0" util-deprecate: "npm:^1.0.2" - checksum: 48b425d6cef497bcf6b7d136f6fd95cfca43026955e07ec9290d3c15457de3a862dbf251dd36f42c07a0d5b5ab6f31e41acefeff02528995a989b955505e440b + checksum: 10c0/48b425d6cef497bcf6b7d136f6fd95cfca43026955e07ec9290d3c15457de3a862dbf251dd36f42c07a0d5b5ab6f31e41acefeff02528995a989b955505e440b languageName: node linkType: hard @@ -13121,7 +13048,7 @@ __metadata: svgo: "npm:^3.2.0" peerDependencies: postcss: ^8.4.31 - checksum: db607404d09af256c7957a0ace822d651a00a52a1796da603f93ba3f0a095ac7595e1f624b9dc53f362ab10e382845d7873f485980f9c92fcb86256833f5e835 + checksum: 10c0/db607404d09af256c7957a0ace822d651a00a52a1796da603f93ba3f0a095ac7595e1f624b9dc53f362ab10e382845d7873f485980f9c92fcb86256833f5e835 languageName: node linkType: hard @@ -13132,46 +13059,46 @@ __metadata: postcss-selector-parser: "npm:^6.0.15" peerDependencies: postcss: ^8.4.31 - checksum: a0fe112d1094f90e1bfcfd2174a74b2fd0630a24449e9942923d02956c7d64ea4add5adede53d9efb3f6d40cd388ac150d032a115f6a46b73d5f3d3d26fa1bb7 + checksum: 10c0/a0fe112d1094f90e1bfcfd2174a74b2fd0630a24449e9942923d02956c7d64ea4add5adede53d9efb3f6d40cd388ac150d032a115f6a46b73d5f3d3d26fa1bb7 languageName: node linkType: hard "postcss-value-parser@npm:^4.1.0, postcss-value-parser@npm:^4.2.0": version: 4.2.0 resolution: "postcss-value-parser@npm:4.2.0" - checksum: f4142a4f56565f77c1831168e04e3effd9ffcc5aebaf0f538eee4b2d465adfd4b85a44257bb48418202a63806a7da7fe9f56c330aebb3cac898e46b4cbf49161 + checksum: 10c0/f4142a4f56565f77c1831168e04e3effd9ffcc5aebaf0f538eee4b2d465adfd4b85a44257bb48418202a63806a7da7fe9f56c330aebb3cac898e46b4cbf49161 languageName: node linkType: hard "postcss@npm:^8.2.15, postcss@npm:^8.4.24, postcss@npm:^8.4.33": - version: 8.4.33 - resolution: "postcss@npm:8.4.33" + version: 8.4.35 + resolution: "postcss@npm:8.4.35" dependencies: nanoid: "npm:^3.3.7" picocolors: "npm:^1.0.0" source-map-js: "npm:^1.0.2" - checksum: 16eda83458fcd8a91bece287b5920c7f57164c3ea293e6c80d0ea71ce7843007bcd8592260a5160b9a7f02693e6ac93e2495b02d8c7596d3f3f72c1447e3ba79 + checksum: 10c0/e8dd04e48001eb5857abc9475365bf08f4e508ddf9bc0b8525449a95d190f10d025acebc5b56ac2e94b3c7146790e4ae78989bb9633cb7ee20d1cc9b7dc909b2 languageName: node linkType: hard "postgres-array@npm:~2.0.0": version: 2.0.0 resolution: "postgres-array@npm:2.0.0" - checksum: cbd56207e4141d7fbf08c86f2aebf21fa7064943d3f808ec85f442ff94b48d891e7a144cc02665fb2de5dbcb9b8e3183a2ac749959e794b4a4cfd379d7a21d08 + checksum: 10c0/cbd56207e4141d7fbf08c86f2aebf21fa7064943d3f808ec85f442ff94b48d891e7a144cc02665fb2de5dbcb9b8e3183a2ac749959e794b4a4cfd379d7a21d08 languageName: node linkType: hard "postgres-array@npm:~3.0.1": version: 3.0.2 resolution: "postgres-array@npm:3.0.2" - checksum: 644aa071f67a66a59f641f8e623887d2b915bc102a32643e2aa8b54c11acd343c5ad97831ea444dd37bd4b921ba35add4aa2cb0c6b76700a8252c2324aeba5b4 + checksum: 10c0/644aa071f67a66a59f641f8e623887d2b915bc102a32643e2aa8b54c11acd343c5ad97831ea444dd37bd4b921ba35add4aa2cb0c6b76700a8252c2324aeba5b4 languageName: node linkType: hard "postgres-bytea@npm:~1.0.0": version: 1.0.0 resolution: "postgres-bytea@npm:1.0.0" - checksum: febf2364b8a8953695cac159eeb94542ead5886792a9627b97e33f6b5bb6e263bc0706ab47ec221516e79fbd6b2452d668841830fb3b49ec6c0fc29be61892ce + checksum: 10c0/febf2364b8a8953695cac159eeb94542ead5886792a9627b97e33f6b5bb6e263bc0706ab47ec221516e79fbd6b2452d668841830fb3b49ec6c0fc29be61892ce languageName: node linkType: hard @@ -13180,21 +13107,21 @@ __metadata: resolution: "postgres-bytea@npm:3.0.0" dependencies: obuf: "npm:~1.1.2" - checksum: 41c79cc48aa730c5ba3eda6ab989a940034f07a1f57b8f2777dce56f1b8cca16c5870582932b5b10cc605048aef9b6157e06253c871b4717cafc6d00f55376aa + checksum: 10c0/41c79cc48aa730c5ba3eda6ab989a940034f07a1f57b8f2777dce56f1b8cca16c5870582932b5b10cc605048aef9b6157e06253c871b4717cafc6d00f55376aa languageName: node linkType: hard "postgres-date@npm:~1.0.4": version: 1.0.7 resolution: "postgres-date@npm:1.0.7" - checksum: 0ff91fccc64003e10b767fcfeefb5eaffbc522c93aa65d5051c49b3c4ce6cb93ab091a7d22877a90ad60b8874202c6f1d0f935f38a7235ed3b258efd54b97ca9 + checksum: 10c0/0ff91fccc64003e10b767fcfeefb5eaffbc522c93aa65d5051c49b3c4ce6cb93ab091a7d22877a90ad60b8874202c6f1d0f935f38a7235ed3b258efd54b97ca9 languageName: node linkType: hard "postgres-date@npm:~2.0.1": version: 2.0.1 resolution: "postgres-date@npm:2.0.1" - checksum: 2d3698958f858b7d1df0a3929fb8750ccb43fa2c8ee9fec7a021e7926291f6c85ddd9d94d87cd6529d70bd2444f3e14fb5bb323af19ceaa733542cc05c5c653a + checksum: 10c0/2d3698958f858b7d1df0a3929fb8750ccb43fa2c8ee9fec7a021e7926291f6c85ddd9d94d87cd6529d70bd2444f3e14fb5bb323af19ceaa733542cc05c5c653a languageName: node linkType: hard @@ -13203,53 +13130,44 @@ __metadata: resolution: "postgres-interval@npm:1.2.0" dependencies: xtend: "npm:^4.0.0" - checksum: c1734c3cb79e7f22579af0b268a463b1fa1d084e742a02a7a290c4f041e349456f3bee3b4ee0bb3f226828597f7b76deb615c1b857db9a742c45520100456272 + checksum: 10c0/c1734c3cb79e7f22579af0b268a463b1fa1d084e742a02a7a290c4f041e349456f3bee3b4ee0bb3f226828597f7b76deb615c1b857db9a742c45520100456272 languageName: node linkType: hard "postgres-interval@npm:^3.0.0": version: 3.0.0 resolution: "postgres-interval@npm:3.0.0" - checksum: 8b570b30ea37c685e26d136d34460f246f98935a1533defc4b53bb05ee23ae3dc7475b718ec7ea607a57894d8c6b4f1adf67ca9cc83a75bdacffd427d5c68de8 + checksum: 10c0/8b570b30ea37c685e26d136d34460f246f98935a1533defc4b53bb05ee23ae3dc7475b718ec7ea607a57894d8c6b4f1adf67ca9cc83a75bdacffd427d5c68de8 languageName: node linkType: hard "postgres-range@npm:^1.1.1": version: 1.1.3 resolution: "postgres-range@npm:1.1.3" - checksum: f46bc379a198a9e3282a222c8e432d77494854bd4fa0706dff01641846db0bf4f09a9723e7fbb202da34ec3b2d88fc50e26e4bbeded7df19646e3acd6a7465ce + checksum: 10c0/f46bc379a198a9e3282a222c8e432d77494854bd4fa0706dff01641846db0bf4f09a9723e7fbb202da34ec3b2d88fc50e26e4bbeded7df19646e3acd6a7465ce languageName: node linkType: hard "prelude-ls@npm:^1.2.1": version: 1.2.1 resolution: "prelude-ls@npm:1.2.1" - checksum: b00d617431e7886c520a6f498a2e14c75ec58f6d93ba48c3b639cf241b54232d90daa05d83a9e9b9fef6baa63cb7e1e4602c2372fea5bc169668401eb127d0cd - languageName: node - linkType: hard - -"prettier-linter-helpers@npm:^1.0.0": - version: 1.0.0 - resolution: "prettier-linter-helpers@npm:1.0.0" - dependencies: - fast-diff: "npm:^1.1.2" - checksum: 81e0027d731b7b3697ccd2129470ed9913ecb111e4ec175a12f0fcfab0096516373bf0af2fef132af50cafb0a905b74ff57996d615f59512bb9ac7378fcc64ab + checksum: 10c0/b00d617431e7886c520a6f498a2e14c75ec58f6d93ba48c3b639cf241b54232d90daa05d83a9e9b9fef6baa63cb7e1e4602c2372fea5bc169668401eb127d0cd languageName: node linkType: hard "prettier@npm:^3.0.0": - version: 3.2.4 - resolution: "prettier@npm:3.2.4" + version: 3.2.5 + resolution: "prettier@npm:3.2.5" bin: prettier: bin/prettier.cjs - checksum: 88dfeb78ac6096522c9a5b81f1413d875f568420d9bb6a5e5103527912519b993f2bcdcac311fcff5718d5869671d44e4f85827d3626f3a6ce32b9abc65d88e0 + checksum: 10c0/ea327f37a7d46f2324a34ad35292af2ad4c4c3c3355da07313339d7e554320f66f65f91e856add8530157a733c6c4a897dc41b577056be5c24c40f739f5ee8c6 languageName: node linkType: hard "pretty-bytes@npm:^5.3.0, pretty-bytes@npm:^5.4.1": version: 5.6.0 resolution: "pretty-bytes@npm:5.6.0" - checksum: f69f494dcc1adda98dbe0e4a36d301e8be8ff99bfde7a637b2ee2820e7cb583b0fc0f3a63b0e3752c01501185a5cf38602c7be60da41bdf84ef5b70e89c370f3 + checksum: 10c0/f69f494dcc1adda98dbe0e4a36d301e8be8ff99bfde7a637b2ee2820e7cb583b0fc0f3a63b0e3752c01501185a5cf38602c7be60da41bdf84ef5b70e89c370f3 languageName: node linkType: hard @@ -13260,7 +13178,7 @@ __metadata: ansi-regex: "npm:^5.0.1" ansi-styles: "npm:^5.0.0" react-is: "npm:^17.0.1" - checksum: 0cbda1031aa30c659e10921fa94e0dd3f903ecbbbe7184a729ad66f2b6e7f17891e8c7d7654c458fa4ccb1a411ffb695b4f17bbcd3fe075fabe181027c4040ed + checksum: 10c0/0cbda1031aa30c659e10921fa94e0dd3f903ecbbbe7184a729ad66f2b6e7f17891e8c7d7654c458fa4ccb1a411ffb695b4f17bbcd3fe075fabe181027c4040ed languageName: node linkType: hard @@ -13271,35 +13189,35 @@ __metadata: "@jest/schemas": "npm:^29.6.3" ansi-styles: "npm:^5.0.0" react-is: "npm:^18.0.0" - checksum: edc5ff89f51916f036c62ed433506b55446ff739358de77207e63e88a28ca2894caac6e73dcb68166a606e51c8087d32d400473e6a9fdd2dbe743f46c9c0276f + checksum: 10c0/edc5ff89f51916f036c62ed433506b55446ff739358de77207e63e88a28ca2894caac6e73dcb68166a606e51c8087d32d400473e6a9fdd2dbe743f46c9c0276f languageName: node linkType: hard "proc-log@npm:^3.0.0": version: 3.0.0 resolution: "proc-log@npm:3.0.0" - checksum: f66430e4ff947dbb996058f6fd22de2c66612ae1a89b097744e17fb18a4e8e7a86db99eda52ccf15e53f00b63f4ec0b0911581ff2aac0355b625c8eac509b0dc + checksum: 10c0/f66430e4ff947dbb996058f6fd22de2c66612ae1a89b097744e17fb18a4e8e7a86db99eda52ccf15e53f00b63f4ec0b0911581ff2aac0355b625c8eac509b0dc languageName: node linkType: hard "process-nextick-args@npm:~2.0.0": version: 2.0.1 resolution: "process-nextick-args@npm:2.0.1" - checksum: bec089239487833d46b59d80327a1605e1c5287eaad770a291add7f45fda1bb5e28b38e0e061add0a1d0ee0984788ce74fa394d345eed1c420cacf392c554367 + checksum: 10c0/bec089239487833d46b59d80327a1605e1c5287eaad770a291add7f45fda1bb5e28b38e0e061add0a1d0ee0984788ce74fa394d345eed1c420cacf392c554367 languageName: node linkType: hard "process-warning@npm:^3.0.0": version: 3.0.0 resolution: "process-warning@npm:3.0.0" - checksum: 60f3c8ddee586f0706c1e6cb5aa9c86df05774b9330d792d7c8851cf0031afd759d665404d07037e0b4901b55c44a423f07bdc465c63de07d8d23196bb403622 + checksum: 10c0/60f3c8ddee586f0706c1e6cb5aa9c86df05774b9330d792d7c8851cf0031afd759d665404d07037e0b4901b55c44a423f07bdc465c63de07d8d23196bb403622 languageName: node linkType: hard "process@npm:^0.11.10": version: 0.11.10 resolution: "process@npm:0.11.10" - checksum: 40c3ce4b7e6d4b8c3355479df77aeed46f81b279818ccdc500124e6a5ab882c0cc81ff7ea16384873a95a74c4570b01b120f287abbdd4c877931460eca6084b3 + checksum: 10c0/40c3ce4b7e6d4b8c3355479df77aeed46f81b279818ccdc500124e6a5ab882c0cc81ff7ea16384873a95a74c4570b01b120f287abbdd4c877931460eca6084b3 languageName: node linkType: hard @@ -13309,14 +13227,14 @@ __metadata: dependencies: "@opentelemetry/api": "npm:^1.4.0" tdigest: "npm:^0.1.1" - checksum: c10781adbf49225298e44da5396a51a0bd4d0cddc3c7e237ba50e888e12ead26a8f98261f362a442f1bbcdaddd6e7302d5675b37beac67ea9b6f82e4d39fb3cc + checksum: 10c0/c10781adbf49225298e44da5396a51a0bd4d0cddc3c7e237ba50e888e12ead26a8f98261f362a442f1bbcdaddd6e7302d5675b37beac67ea9b6f82e4d39fb3cc languageName: node linkType: hard "promise-inflight@npm:^1.0.1": version: 1.0.1 resolution: "promise-inflight@npm:1.0.1" - checksum: d179d148d98fbff3d815752fa9a08a87d3190551d1420f17c4467f628214db12235ae068d98cd001f024453676d8985af8f28f002345646c4ece4600a79620bc + checksum: 10c0/d179d148d98fbff3d815752fa9a08a87d3190551d1420f17c4467f628214db12235ae068d98cd001f024453676d8985af8f28f002345646c4ece4600a79620bc languageName: node linkType: hard @@ -13326,7 +13244,7 @@ __metadata: dependencies: err-code: "npm:^2.0.2" retry: "npm:^0.12.0" - checksum: 9c7045a1a2928094b5b9b15336dcd2a7b1c052f674550df63cc3f36cd44028e5080448175b6f6ca32b642de81150f5e7b1a98b728f15cb069f2dd60ac2616b96 + checksum: 10c0/9c7045a1a2928094b5b9b15336dcd2a7b1c052f674550df63cc3f36cd44028e5080448175b6f6ca32b642de81150f5e7b1a98b728f15cb069f2dd60ac2616b96 languageName: node linkType: hard @@ -13336,7 +13254,7 @@ __metadata: dependencies: kleur: "npm:^3.0.3" sisteransi: "npm:^1.0.5" - checksum: 16f1ac2977b19fe2cf53f8411cc98db7a3c8b115c479b2ca5c82b5527cd937aa405fa04f9a5960abeb9daef53191b53b4d13e35c1f5d50e8718c76917c5f1ea4 + checksum: 10c0/16f1ac2977b19fe2cf53f8411cc98db7a3c8b115c479b2ca5c82b5527cd937aa405fa04f9a5960abeb9daef53191b53b4d13e35c1f5d50e8718c76917c5f1ea4 languageName: node linkType: hard @@ -13347,7 +13265,7 @@ __metadata: loose-envify: "npm:^1.4.0" object-assign: "npm:^4.1.1" react-is: "npm:^16.13.1" - checksum: 59ece7ca2fb9838031d73a48d4becb9a7cc1ed10e610517c7d8f19a1e02fa47f7c27d557d8a5702bec3cfeccddc853579832b43f449e54635803f277b1c78077 + checksum: 10c0/59ece7ca2fb9838031d73a48d4becb9a7cc1ed10e610517c7d8f19a1e02fa47f7c27d557d8a5702bec3cfeccddc853579832b43f449e54635803f277b1c78077 languageName: node linkType: hard @@ -13357,28 +13275,28 @@ __metadata: dependencies: forwarded: "npm:0.2.0" ipaddr.js: "npm:1.9.1" - checksum: c3eed999781a35f7fd935f398b6d8920b6fb00bbc14287bc6de78128ccc1a02c89b95b56742bf7cf0362cc333c61d138532049c7dedc7a328ef13343eff81210 + checksum: 10c0/c3eed999781a35f7fd935f398b6d8920b6fb00bbc14287bc6de78128ccc1a02c89b95b56742bf7cf0362cc333c61d138532049c7dedc7a328ef13343eff81210 languageName: node linkType: hard "proxy-from-env@npm:^1.1.0": version: 1.1.0 resolution: "proxy-from-env@npm:1.1.0" - checksum: fe7dd8b1bdbbbea18d1459107729c3e4a2243ca870d26d34c2c1bcd3e4425b7bcc5112362df2d93cc7fb9746f6142b5e272fd1cc5c86ddf8580175186f6ad42b + checksum: 10c0/fe7dd8b1bdbbbea18d1459107729c3e4a2243ca870d26d34c2c1bcd3e4425b7bcc5112362df2d93cc7fb9746f6142b5e272fd1cc5c86ddf8580175186f6ad42b languageName: node linkType: hard "prr@npm:~1.0.1": version: 1.0.1 resolution: "prr@npm:1.0.1" - checksum: 5b9272c602e4f4472a215e58daff88f802923b84bc39c8860376bb1c0e42aaf18c25d69ad974bd06ec6db6f544b783edecd5502cd3d184748d99080d68e4be5f + checksum: 10c0/5b9272c602e4f4472a215e58daff88f802923b84bc39c8860376bb1c0e42aaf18c25d69ad974bd06ec6db6f544b783edecd5502cd3d184748d99080d68e4be5f languageName: node linkType: hard "psl@npm:^1.1.33": version: 1.9.0 resolution: "psl@npm:1.9.0" - checksum: 6a3f805fdab9442f44de4ba23880c4eba26b20c8e8e0830eff1cb31007f6825dace61d17203c58bfe36946842140c97a1ba7f67bc63ca2d88a7ee052b65d97ab + checksum: 10c0/6a3f805fdab9442f44de4ba23880c4eba26b20c8e8e0830eff1cb31007f6825dace61d17203c58bfe36946842140c97a1ba7f67bc63ca2d88a7ee052b65d97ab languageName: node linkType: hard @@ -13392,7 +13310,7 @@ __metadata: parse-asn1: "npm:^5.0.0" randombytes: "npm:^2.0.1" safe-buffer: "npm:^5.1.2" - checksum: 6c2cc19fbb554449e47f2175065d6b32f828f9b3badbee4c76585ac28ae8641aafb9bb107afc430c33c5edd6b05dbe318df4f7d6d7712b1093407b11c4280700 + checksum: 10c0/6c2cc19fbb554449e47f2175065d6b32f828f9b3badbee4c76585ac28ae8641aafb9bb107afc430c33c5edd6b05dbe318df4f7d6d7712b1093407b11c4280700 languageName: node linkType: hard @@ -13402,35 +13320,35 @@ __metadata: dependencies: end-of-stream: "npm:^1.1.0" once: "npm:^1.3.1" - checksum: bbdeda4f747cdf47db97428f3a135728669e56a0ae5f354a9ac5b74556556f5446a46f720a8f14ca2ece5be9b4d5d23c346db02b555f46739934cc6c093a5478 + checksum: 10c0/bbdeda4f747cdf47db97428f3a135728669e56a0ae5f354a9ac5b74556556f5446a46f720a8f14ca2ece5be9b4d5d23c346db02b555f46739934cc6c093a5478 languageName: node linkType: hard "punycode@npm:1.4.1, punycode@npm:^1.2.4, punycode@npm:^1.4.1": version: 1.4.1 resolution: "punycode@npm:1.4.1" - checksum: 354b743320518aef36f77013be6e15da4db24c2b4f62c5f1eb0529a6ed02fbaf1cb52925785f6ab85a962f2b590d9cd5ad730b70da72b5f180e2556b8bd3ca08 + checksum: 10c0/354b743320518aef36f77013be6e15da4db24c2b4f62c5f1eb0529a6ed02fbaf1cb52925785f6ab85a962f2b590d9cd5ad730b70da72b5f180e2556b8bd3ca08 languageName: node linkType: hard "punycode@npm:^2.1.0, punycode@npm:^2.1.1, punycode@npm:^2.3.0, punycode@npm:^2.3.1": version: 2.3.1 resolution: "punycode@npm:2.3.1" - checksum: 14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9 + checksum: 10c0/14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9 languageName: node linkType: hard "pure-rand@npm:^6.0.0": version: 6.0.2 resolution: "pure-rand@npm:6.0.2" - checksum: 0556bee2e16a8d081a2b7630d9cb4e5dafd4e6bd6e4c61de1cf1ef5974f127847523e3d0e62884f6f5d64b66a5e93b05bd8f37ed009f3a4fe5089899e05914aa + checksum: 10c0/0556bee2e16a8d081a2b7630d9cb4e5dafd4e6bd6e4c61de1cf1ef5974f127847523e3d0e62884f6f5d64b66a5e93b05bd8f37ed009f3a4fe5089899e05914aa languageName: node linkType: hard "q@npm:^1.1.2": version: 1.5.1 resolution: "q@npm:1.5.1" - checksum: 7855fbdba126cb7e92ef3a16b47ba998c0786ec7fface236e3eb0135b65df36429d91a86b1fff3ab0927b4ac4ee88a2c44527c7c3b8e2a37efbec9fe34803df4 + checksum: 10c0/7855fbdba126cb7e92ef3a16b47ba998c0786ec7fface236e3eb0135b65df36429d91a86b1fff3ab0927b4ac4ee88a2c44527c7c3b8e2a37efbec9fe34803df4 languageName: node linkType: hard @@ -13439,7 +13357,7 @@ __metadata: resolution: "qs@npm:6.11.0" dependencies: side-channel: "npm:^1.0.4" - checksum: 4e4875e4d7c7c31c233d07a448e7e4650f456178b9dd3766b7cfa13158fdb24ecb8c4f059fa91e820dc6ab9f2d243721d071c9c0378892dcdad86e9e9a27c68f + checksum: 10c0/4e4875e4d7c7c31c233d07a448e7e4650f456178b9dd3766b7cfa13158fdb24ecb8c4f059fa91e820dc6ab9f2d243721d071c9c0378892dcdad86e9e9a27c68f languageName: node linkType: hard @@ -13448,35 +13366,35 @@ __metadata: resolution: "qs@npm:6.11.2" dependencies: side-channel: "npm:^1.0.4" - checksum: 4f95d4ff18ed480befcafa3390022817ffd3087fc65f146cceb40fc5edb9fa96cb31f648cae2fa96ca23818f0798bd63ad4ca369a0e22702fcd41379b3ab6571 + checksum: 10c0/4f95d4ff18ed480befcafa3390022817ffd3087fc65f146cceb40fc5edb9fa96cb31f648cae2fa96ca23818f0798bd63ad4ca369a0e22702fcd41379b3ab6571 languageName: node linkType: hard "querystring-es3@npm:^0.2.0": version: 0.2.1 resolution: "querystring-es3@npm:0.2.1" - checksum: 476938c1adb45c141f024fccd2ffd919a3746e79ed444d00e670aad68532977b793889648980e7ca7ff5ffc7bfece623118d0fbadcaf217495eeb7059ae51580 + checksum: 10c0/476938c1adb45c141f024fccd2ffd919a3746e79ed444d00e670aad68532977b793889648980e7ca7ff5ffc7bfece623118d0fbadcaf217495eeb7059ae51580 languageName: node linkType: hard "querystringify@npm:^2.1.1": version: 2.2.0 resolution: "querystringify@npm:2.2.0" - checksum: 3258bc3dbdf322ff2663619afe5947c7926a6ef5fb78ad7d384602974c467fadfc8272af44f5eb8cddd0d011aae8fabf3a929a8eee4b86edcc0a21e6bd10f9aa + checksum: 10c0/3258bc3dbdf322ff2663619afe5947c7926a6ef5fb78ad7d384602974c467fadfc8272af44f5eb8cddd0d011aae8fabf3a929a8eee4b86edcc0a21e6bd10f9aa languageName: node linkType: hard "queue-microtask@npm:^1.2.2": version: 1.2.3 resolution: "queue-microtask@npm:1.2.3" - checksum: 900a93d3cdae3acd7d16f642c29a642aea32c2026446151f0778c62ac089d4b8e6c986811076e1ae180a694cedf077d453a11b58ff0a865629a4f82ab558e102 + checksum: 10c0/900a93d3cdae3acd7d16f642c29a642aea32c2026446151f0778c62ac089d4b8e6c986811076e1ae180a694cedf077d453a11b58ff0a865629a4f82ab558e102 languageName: node linkType: hard "quick-format-unescaped@npm:^4.0.3": version: 4.0.4 resolution: "quick-format-unescaped@npm:4.0.4" - checksum: fe5acc6f775b172ca5b4373df26f7e4fd347975578199e7d74b2ae4077f0af05baa27d231de1e80e8f72d88275ccc6028568a7a8c9ee5e7368ace0e18eff93a4 + checksum: 10c0/fe5acc6f775b172ca5b4373df26f7e4fd347975578199e7d74b2ae4077f0af05baa27d231de1e80e8f72d88275ccc6028568a7a8c9ee5e7368ace0e18eff93a4 languageName: node linkType: hard @@ -13485,7 +13403,7 @@ __metadata: resolution: "raf@npm:3.4.1" dependencies: performance-now: "npm:^2.1.0" - checksum: 337f0853c9e6a77647b0f499beedafea5d6facfb9f2d488a624f88b03df2be72b8a0e7f9118a3ff811377d534912039a3311815700d2b6d2313f82f736f9eb6e + checksum: 10c0/337f0853c9e6a77647b0f499beedafea5d6facfb9f2d488a624f88b03df2be72b8a0e7f9118a3ff811377d534912039a3311815700d2b6d2313f82f736f9eb6e languageName: node linkType: hard @@ -13494,7 +13412,7 @@ __metadata: resolution: "randombytes@npm:2.1.0" dependencies: safe-buffer: "npm:^5.1.0" - checksum: 50395efda7a8c94f5dffab564f9ff89736064d32addf0cc7e8bf5e4166f09f8ded7a0849ca6c2d2a59478f7d90f78f20d8048bca3cdf8be09d8e8a10790388f3 + checksum: 10c0/50395efda7a8c94f5dffab564f9ff89736064d32addf0cc7e8bf5e4166f09f8ded7a0849ca6c2d2a59478f7d90f78f20d8048bca3cdf8be09d8e8a10790388f3 languageName: node linkType: hard @@ -13504,26 +13422,26 @@ __metadata: dependencies: randombytes: "npm:^2.0.5" safe-buffer: "npm:^5.1.0" - checksum: 11aeed35515872e8f8a2edec306734e6b74c39c46653607f03c68385ab8030e2adcc4215f76b5e4598e028c4750d820afd5c65202527d831d2a5f207fe2bc87c + checksum: 10c0/11aeed35515872e8f8a2edec306734e6b74c39c46653607f03c68385ab8030e2adcc4215f76b5e4598e028c4750d820afd5c65202527d831d2a5f207fe2bc87c languageName: node linkType: hard "range-parser@npm:^1.2.1, range-parser@npm:~1.2.1": version: 1.2.1 resolution: "range-parser@npm:1.2.1" - checksum: 96c032ac2475c8027b7a4e9fe22dc0dfe0f6d90b85e496e0f016fbdb99d6d066de0112e680805075bd989905e2123b3b3d002765149294dce0c1f7f01fcc2ea0 + checksum: 10c0/96c032ac2475c8027b7a4e9fe22dc0dfe0f6d90b85e496e0f016fbdb99d6d066de0112e680805075bd989905e2123b3b3d002765149294dce0c1f7f01fcc2ea0 languageName: node linkType: hard -"raw-body@npm:2.5.1": - version: 2.5.1 - resolution: "raw-body@npm:2.5.1" +"raw-body@npm:2.5.2": + version: 2.5.2 + resolution: "raw-body@npm:2.5.2" dependencies: bytes: "npm:3.1.2" http-errors: "npm:2.0.0" iconv-lite: "npm:0.4.24" unpipe: "npm:1.0.0" - checksum: 5dad5a3a64a023b894ad7ab4e5c7c1ce34d3497fc7138d02f8c88a3781e68d8a55aa7d4fd3a458616fa8647cc228be314a1c03fb430a07521de78b32c4dd09d2 + checksum: 10c0/b201c4b66049369a60e766318caff5cb3cc5a900efd89bdac431463822d976ad0670912c931fdbdcf5543207daf6f6833bca57aa116e1661d2ea91e12ca692c4 languageName: node linkType: hard @@ -13535,7 +13453,7 @@ __metadata: scheduler: "npm:^0.23.0" peerDependencies: react: ^18.2.0 - checksum: 66dfc5f93e13d0674e78ef41f92ed21dfb80f9c4ac4ac25a4b51046d41d4d2186abc915b897f69d3d0ebbffe6184e7c5876f2af26bfa956f179225d921be713a + checksum: 10c0/66dfc5f93e13d0674e78ef41f92ed21dfb80f9c4ac4ac25a4b51046d41d4d2186abc915b897f69d3d0ebbffe6184e7c5876f2af26bfa956f179225d921be713a languageName: node linkType: hard @@ -13548,14 +13466,14 @@ __metadata: warning: "npm:^4.0.1" peerDependencies: react: ^16.3.0 - checksum: 07ca093d74b7963cb6048953517f881a0fdee9b485d31dabd49814cda51543eee20e714dd423e25946984b0ac26dbcb80aaf1211b0170e9b0cfa92fa85b0984e + checksum: 10c0/07ca093d74b7963cb6048953517f881a0fdee9b485d31dabd49814cda51543eee20e714dd423e25946984b0ac26dbcb80aaf1211b0170e9b0cfa92fa85b0984e languageName: node linkType: hard "react-fast-compare@npm:^3.1.1": version: 3.2.2 resolution: "react-fast-compare@npm:3.2.2" - checksum: 0bbd2f3eb41ab2ff7380daaa55105db698d965c396df73e6874831dbafec8c4b5b08ba36ff09df01526caa3c61595247e3269558c284e37646241cba2b90a367 + checksum: 10c0/0bbd2f3eb41ab2ff7380daaa55105db698d965c396df73e6874831dbafec8c4b5b08ba36ff09df01526caa3c61595247e3269558c284e37646241cba2b90a367 languageName: node linkType: hard @@ -13569,7 +13487,7 @@ __metadata: react-side-effect: "npm:^2.1.0" peerDependencies: react: ">=16.3.0" - checksum: 1d2831d9c3b4f5c91f020076aeb6502437a4788077d0c438421e466eb9633d5dc2aacedf7b779a970b807d61cf87793c5ff76ee3190a185d71c90b5cfb367e96 + checksum: 10c0/1d2831d9c3b4f5c91f020076aeb6502437a4788077d0c438421e466eb9633d5dc2aacedf7b779a970b807d61cf87793c5ff76ee3190a185d71c90b5cfb367e96 languageName: node linkType: hard @@ -13585,7 +13503,7 @@ __metadata: peerDependencies: react: ">= 0.14.0" react-dom: ">= 0.14.0" - checksum: 6bd566ea97e00058749d43d768ee843e5132f988571536e090b564d5dbaa71093695255514fc5b9fcf9fbd03fcb0603f6e135dcab6dcaaffe43dedbfe742a163 + checksum: 10c0/6bd566ea97e00058749d43d768ee843e5132f988571536e090b564d5dbaa71093695255514fc5b9fcf9fbd03fcb0603f6e135dcab6dcaaffe43dedbfe742a163 languageName: node linkType: hard @@ -13596,7 +13514,7 @@ __metadata: invariant: "npm:^2.2.2" peerDependencies: immutable: ">=3.6.2" - checksum: 4f3e147303be418d157a00246c9988068df0d21cb92e40f9d78a09538da71b967f5ddbd7f7facf54f05b5ddb011cc717afa82c8c490b0188bf90a6251acc9fb9 + checksum: 10c0/4f3e147303be418d157a00246c9988068df0d21cb92e40f9d78a09538da71b967f5ddbd7f7facf54f05b5ddb011cc717afa82c8c490b0188bf90a6251acc9fb9 languageName: node linkType: hard @@ -13607,7 +13525,7 @@ __metadata: immutable: ">= 2 || >= 4.0.0-rc" react: ">= 16.6" react-dom: ">= 16.6" - checksum: d13dc10069bd13059ab91741169c6adaa2a44efb425fc3cf7506925f8cfcde40ef8c7d88f0ac5977a9b1eb5b6456f7fe530a1c670df727424dd72a1642163675 + checksum: 10c0/d13dc10069bd13059ab91741169c6adaa2a44efb425fc3cf7506925f8cfcde40ef8c7d88f0ac5977a9b1eb5b6456f7fe530a1c670df727424dd72a1642163675 languageName: node linkType: hard @@ -13631,35 +13549,35 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 78288a0fded816735812dca6dcfee3eaa8bb3af7e963ba47639b51cc700a102a526859ff647ca79a5ebcdc69d6d78da90daeeed15cc0b819c7a20a74b2e1469c + checksum: 10c0/78288a0fded816735812dca6dcfee3eaa8bb3af7e963ba47639b51cc700a102a526859ff647ca79a5ebcdc69d6d78da90daeeed15cc0b819c7a20a74b2e1469c languageName: node linkType: hard "react-is@npm:^16.12.0 || ^17.0.0 || ^18.0.0, react-is@npm:^18.0.0, react-is@npm:^18.2.0": version: 18.2.0 resolution: "react-is@npm:18.2.0" - checksum: 6eb5e4b28028c23e2bfcf73371e72cd4162e4ac7ab445ddae2afe24e347a37d6dc22fae6e1748632cd43c6d4f9b8f86dcf26bf9275e1874f436d129952528ae0 + checksum: 10c0/6eb5e4b28028c23e2bfcf73371e72cd4162e4ac7ab445ddae2afe24e347a37d6dc22fae6e1748632cd43c6d4f9b8f86dcf26bf9275e1874f436d129952528ae0 languageName: node linkType: hard "react-is@npm:^16.13.1, react-is@npm:^16.6.0, react-is@npm:^16.7.0": version: 16.13.1 resolution: "react-is@npm:16.13.1" - checksum: 33977da7a5f1a287936a0c85639fec6ca74f4f15ef1e59a6bc20338fc73dc69555381e211f7a3529b8150a1f71e4225525b41b60b52965bda53ce7d47377ada1 + checksum: 10c0/33977da7a5f1a287936a0c85639fec6ca74f4f15ef1e59a6bc20338fc73dc69555381e211f7a3529b8150a1f71e4225525b41b60b52965bda53ce7d47377ada1 languageName: node linkType: hard "react-is@npm:^17.0.1": version: 17.0.2 resolution: "react-is@npm:17.0.2" - checksum: 2bdb6b93fbb1820b024b496042cce405c57e2f85e777c9aabd55f9b26d145408f9f74f5934676ffdc46f3dcff656d78413a6e43968e7b3f92eea35b3052e9053 + checksum: 10c0/2bdb6b93fbb1820b024b496042cce405c57e2f85e777c9aabd55f9b26d145408f9f74f5934676ffdc46f3dcff656d78413a6e43968e7b3f92eea35b3052e9053 languageName: node linkType: hard "react-lifecycles-compat@npm:^3.0.4": version: 3.0.4 resolution: "react-lifecycles-compat@npm:3.0.4" - checksum: 1d0df3c85af79df720524780f00c064d53a9dd1899d785eddb7264b378026979acbddb58a4b7e06e7d0d12aa1494fd5754562ee55d32907b15601068dae82c27 + checksum: 10c0/1d0df3c85af79df720524780f00c064d53a9dd1899d785eddb7264b378026979acbddb58a4b7e06e7d0d12aa1494fd5754562ee55d32907b15601068dae82c27 languageName: node linkType: hard @@ -13672,7 +13590,7 @@ __metadata: raf: "npm:^3.1.0" peerDependencies: react: ^0.14.9 || ^15.3.0 || ^16.0.0 - checksum: 4ea6f1cc7079f0161fd786cc755133a822d87d9c0510369b8fb348d9ad602111efa2e3496dbcc390c967229e39e3eb5f6dd5dd6d3d124289443de31d6035a6c8 + checksum: 10c0/4ea6f1cc7079f0161fd786cc755133a822d87d9c0510369b8fb348d9ad602111efa2e3496dbcc390c967229e39e3eb5f6dd5dd6d3d124289443de31d6035a6c8 languageName: node linkType: hard @@ -13683,7 +13601,7 @@ __metadata: prop-types: "npm:^15.6.2" peerDependencies: react: ^0.14.0 || ^15.0.0 || ^16.0.0 - checksum: 14ffb71a5b18301830699b814d1de2421f4f43f31df5b95efd95cd47548a0d7597ec58abc16a12191958cad398495eba9274193af3294863e2864d32ea79f2c6 + checksum: 10c0/14ffb71a5b18301830699b814d1de2421f4f43f31df5b95efd95cd47548a0d7597ec58abc16a12191958cad398495eba9274193af3294863e2864d32ea79f2c6 languageName: node linkType: hard @@ -13702,7 +13620,7 @@ __metadata: peerDependencies: react: ">=16.3.0" react-dom: ">=16.3.0" - checksum: 61836490040cfcdebc792b6eddcfac47b7b7e159f99304165371e9eb389a6875f20ddba3433421413ccfb918e8da6042ab2829f9b1f6f5dd9f8476aa16ddcfbe + checksum: 10c0/61836490040cfcdebc792b6eddcfac47b7b7e159f99304165371e9eb389a6875f20ddba3433421413ccfb918e8da6042ab2829f9b1f6f5dd9f8476aa16ddcfbe languageName: node linkType: hard @@ -13717,7 +13635,7 @@ __metadata: react-dom: ^0.14.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 react-redux: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 redux: ^3.0.0 || ^4.0.0 || ^5.0.0 - checksum: 797c1abf8bcc947feb127380e6d363db264c12bc94e578d635f86f1d806b0ec714dc3723e54c884937448b17f9042cfc995fe7a1deaf558efc01681e43e4669c + checksum: 10c0/797c1abf8bcc947feb127380e6d363db264c12bc94e578d635f86f1d806b0ec714dc3723e54c884937448b17f9042cfc995fe7a1deaf558efc01681e43e4669c languageName: node linkType: hard @@ -13739,7 +13657,7 @@ __metadata: optional: true redux: optional: true - checksum: 53161b5dc4d109020fbc42d26906ace92fed9ba1d7ab6274af60e9c0684583d20d1c8ec6d58601ac7b833c6468a652bbf3d4a102149d1793cb8a28b05b042f73 + checksum: 10c0/53161b5dc4d109020fbc42d26906ace92fed9ba1d7ab6274af60e9c0684583d20d1c8ec6d58601ac7b833c6468a652bbf3d4a102149d1793cb8a28b05b042f73 languageName: node linkType: hard @@ -13756,7 +13674,7 @@ __metadata: tiny-warning: "npm:^1.0.0" peerDependencies: react: ">=15" - checksum: f04f727e2ed2e9d1d3830af02cc61690ff67b1524c0d18690582bfba0f4d14142ccc88fb6da6befad644fddf086f5ae4c2eb7048c67da8a0b0929c19426421b0 + checksum: 10c0/f04f727e2ed2e9d1d3830af02cc61690ff67b1524c0d18690582bfba0f4d14142ccc88fb6da6befad644fddf086f5ae4c2eb7048c67da8a0b0929c19426421b0 languageName: node linkType: hard @@ -13771,7 +13689,7 @@ __metadata: react: ^15.0.0 || ^16.0.0 react-dom: ^15.0.0 || ^16.0.0 react-router-dom: ^4.0 - checksum: ad195b7359fd3146530cf299ec437f0a619c577b2cacfb2c76a156d3cd9d5d3e97af56e17c300c37ca8c485041e93124fe63f0c86db6aea468caf838281e62cb + checksum: 10c0/ad195b7359fd3146530cf299ec437f0a619c577b2cacfb2c76a156d3cd9d5d3e97af56e17c300c37ca8c485041e93124fe63f0c86db6aea468caf838281e62cb languageName: node linkType: hard @@ -13790,7 +13708,7 @@ __metadata: tiny-warning: "npm:^1.0.0" peerDependencies: react: ">=15" - checksum: e15c00dfef199249b4c6e6d98e5e76cc352ce66f3270f13df37cc069ddf7c05e43281e8c308fc407e4435d72924373baef1d2890e0f6b0b1eb423cf47315a053 + checksum: 10c0/e15c00dfef199249b4c6e6d98e5e76cc352ce66f3270f13df37cc069ddf7c05e43281e8c308fc407e4435d72924373baef1d2890e0f6b0b1eb423cf47315a053 languageName: node linkType: hard @@ -13810,7 +13728,7 @@ __metadata: peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 - checksum: b4b98aaf117ee5cc4642871b7bd51fd0e2697988d0b880f30b21e933ca90258959147117d8aada36713b622e0e4cb06bd18ec02069f3f108896e0d31e69e3c16 + checksum: 10c0/b4b98aaf117ee5cc4642871b7bd51fd0e2697988d0b880f30b21e933ca90258959147117d8aada36713b622e0e4cb06bd18ec02069f3f108896e0d31e69e3c16 languageName: node linkType: hard @@ -13822,7 +13740,7 @@ __metadata: react-is: "npm:^16.12.0 || ^17.0.0 || ^18.0.0" peerDependencies: react: ^16.0.0 || ^17.0.0 || ^18.0.0 - checksum: c194d741792e86043a4ae272f7353c1cb9412bc649945c4220c6a101a6ea5410cceb3d65d5a4d750f11a24f7426e8eec7977e8a4e3ad5d3ee235ca2b18166fa8 + checksum: 10c0/c194d741792e86043a4ae272f7353c1cb9412bc649945c4220c6a101a6ea5410cceb3d65d5a4d750f11a24f7426e8eec7977e8a4e3ad5d3ee235ca2b18166fa8 languageName: node linkType: hard @@ -13831,7 +13749,7 @@ __metadata: resolution: "react-side-effect@npm:2.1.2" peerDependencies: react: ^16.3.0 || ^17.0.0 || ^18.0.0 - checksum: 5d934cae438f701ce646f566750ae6a445e99185ce1a026108f9db728147f7962a22ecf8db79ff26089953a3799b3607766904f4f10194ce42bcd5a1aa0215e8 + checksum: 10c0/5d934cae438f701ce646f566750ae6a445e99185ce1a026108f9db728147f7962a22ecf8db79ff26089953a3799b3607766904f4f10194ce42bcd5a1aa0215e8 languageName: node linkType: hard @@ -13843,7 +13761,7 @@ __metadata: peerDependencies: react: "*" react-dom: "*" - checksum: 06545f917abfd2a24168cc717f396b4451185275db66118d39026f4a189e6376ad73dbc89492c612a87262561783e038a19f9f3f36fb60b14ba53e29a2b29b35 + checksum: 10c0/06545f917abfd2a24168cc717f396b4451185275db66118d39026f4a189e6376ad73dbc89492c612a87262561783e038a19f9f3f36fb60b14ba53e29a2b29b35 languageName: node linkType: hard @@ -13853,7 +13771,7 @@ __metadata: dependencies: "@babel/runtime": "npm:7.0.0" warning: "npm:^4.0.1" - checksum: ca015701587ca9cf5329088809ad5897b0344c1cd377f8f0d21277128c95019dd67aefa64d19b40bc1c171a375c003dbe3343111d9ce12b7327d72e9e98dce7e + checksum: 10c0/ca015701587ca9cf5329088809ad5897b0344c1cd377f8f0d21277128c95019dd67aefa64d19b40bc1c171a375c003dbe3343111d9ce12b7327d72e9e98dce7e languageName: node linkType: hard @@ -13867,7 +13785,7 @@ __metadata: react-event-listener: "npm:^0.6.0" react-swipeable-views-core: "npm:^0.14.0" shallow-equal: "npm:^1.2.1" - checksum: acc1b1d7f0bc81485e44aa2a465adc13cd89865add87bf32b88dc0986f1556c8b227b79763a7c0b197bf6eeacc333451c7b8ab5c40517809d1a913f7b9742588 + checksum: 10c0/acc1b1d7f0bc81485e44aa2a465adc13cd89865add87bf32b88dc0986f1556c8b227b79763a7c0b197bf6eeacc333451c7b8ab5c40517809d1a913f7b9742588 languageName: node linkType: hard @@ -13882,7 +13800,7 @@ __metadata: warning: "npm:^4.0.1" peerDependencies: react: ^15.3.0 || ^16.0.0 || ^17.0.0 - checksum: 032e7a1ff49e6e57eb755e133968eb207a4acc67c68ed8d0b09b4fe0826b290344454da5d420f17d8f4c049d900f3c12594ba5b97a79f20ef3b30bc62e866aa1 + checksum: 10c0/032e7a1ff49e6e57eb755e133968eb207a4acc67c68ed8d0b09b4fe0826b290344454da5d420f17d8f4c049d900f3c12594ba5b97a79f20ef3b30bc62e866aa1 languageName: node linkType: hard @@ -13895,7 +13813,7 @@ __metadata: scheduler: "npm:^0.23.0" peerDependencies: react: ^18.2.0 - checksum: 53dfada1da1e8dd0498a5601e9eea3dc6ca23c6c2694d1cab9712faea869c11e4ce1c9a618d674cb668a668b41fb6bcf9a7b0a078cd853b1922f002fa22f42c8 + checksum: 10c0/53dfada1da1e8dd0498a5601e9eea3dc6ca23c6c2694d1cab9712faea869c11e4ce1c9a618d674cb668a668b41fb6bcf9a7b0a078cd853b1922f002fa22f42c8 languageName: node linkType: hard @@ -13908,7 +13826,7 @@ __metadata: use-latest: "npm:^1.2.1" peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 - checksum: 33d38a6d96cf584842695b50c341980944ece23a42155bf0bd1958f02396adb185c7720b88678dc677817fe111783059c0ebcdf7761644006892583b10e258ee + checksum: 10c0/33d38a6d96cf584842695b50c341980944ece23a42155bf0bd1958f02396adb185c7720b88678dc677817fe111783059c0ebcdf7761644006892583b10e258ee languageName: node linkType: hard @@ -13921,7 +13839,7 @@ __metadata: prop-types: ">= 15.3.0 < 19" react: ">= 15.3.0 < 19" react-dom: ">= 15.3.0 < 19" - checksum: afae643981d6fb922d66830ec0e9c793e729d7a55e3974edf212965acc8dc51f0d098ae6e409461d3ff2f87fe027dc3556a1a746f8472ed3a79c8878bf338fee + checksum: 10c0/afae643981d6fb922d66830ec0e9c793e729d7a55e3974edf212965acc8dc51f0d098ae6e409461d3ff2f87fe027dc3556a1a746f8472ed3a79c8878bf338fee languageName: node linkType: hard @@ -13936,7 +13854,7 @@ __metadata: peerDependencies: react: ">=16.6.0" react-dom: ">=16.6.0" - checksum: 2ba754ba748faefa15f87c96dfa700d5525054a0141de8c75763aae6734af0740e77e11261a1e8f4ffc08fd9ab78510122e05c21c2d79066c38bb6861a886c82 + checksum: 10c0/2ba754ba748faefa15f87c96dfa700d5525054a0141de8c75763aae6734af0740e77e11261a1e8f4ffc08fd9ab78510122e05c21c2d79066c38bb6861a886c82 languageName: node linkType: hard @@ -13945,7 +13863,7 @@ __metadata: resolution: "react@npm:18.2.0" dependencies: loose-envify: "npm:^1.1.0" - checksum: b562d9b569b0cb315e44b48099f7712283d93df36b19a39a67c254c6686479d3980b7f013dc931f4a5a3ae7645eae6386b4aa5eea933baa54ecd0f9acb0902b8 + checksum: 10c0/b562d9b569b0cb315e44b48099f7712283d93df36b19a39a67c254c6686479d3980b7f013dc931f4a5a3ae7645eae6386b4aa5eea933baa54ecd0f9acb0902b8 languageName: node linkType: hard @@ -13960,7 +13878,7 @@ __metadata: safe-buffer: "npm:~5.1.1" string_decoder: "npm:~1.1.1" util-deprecate: "npm:~1.0.1" - checksum: 7efdb01f3853bc35ac62ea25493567bf588773213f5f4a79f9c365e1ad13bab845ac0dae7bc946270dc40c3929483228415e92a3fc600cc7e4548992f41ee3fa + checksum: 10c0/7efdb01f3853bc35ac62ea25493567bf588773213f5f4a79f9c365e1ad13bab845ac0dae7bc946270dc40c3929483228415e92a3fc600cc7e4548992f41ee3fa languageName: node linkType: hard @@ -13971,7 +13889,7 @@ __metadata: inherits: "npm:^2.0.3" string_decoder: "npm:^1.1.1" util-deprecate: "npm:^1.0.1" - checksum: e37be5c79c376fdd088a45fa31ea2e423e5d48854be7a22a58869b4e84d25047b193f6acb54f1012331e1bcd667ffb569c01b99d36b0bd59658fb33f513511b7 + checksum: 10c0/e37be5c79c376fdd088a45fa31ea2e423e5d48854be7a22a58869b4e84d25047b193f6acb54f1012331e1bcd667ffb569c01b99d36b0bd59658fb33f513511b7 languageName: node linkType: hard @@ -13984,7 +13902,7 @@ __metadata: events: "npm:^3.3.0" process: "npm:^0.11.10" string_decoder: "npm:^1.3.0" - checksum: cf7cc8daa2b57872d120945a20a1458c13dcb6c6f352505421115827b18ac4df0e483ac1fe195cb1f5cd226e1073fc55b92b569269d8299e8530840bcdbba40c + checksum: 10c0/cf7cc8daa2b57872d120945a20a1458c13dcb6c6f352505421115827b18ac4df0e483ac1fe195cb1f5cd226e1073fc55b92b569269d8299e8530840bcdbba40c languageName: node linkType: hard @@ -13995,7 +13913,7 @@ __metadata: graceful-fs: "npm:^4.1.11" micromatch: "npm:^3.1.10" readable-stream: "npm:^2.0.2" - checksum: 770d177372ff2212d382d425d55ca48301fcbf3231ab3827257bbcca7ff44fb51fe4af6acc2dda8512dc7f29da390e9fbea5b2b3fc724b86e85cc828395b7797 + checksum: 10c0/770d177372ff2212d382d425d55ca48301fcbf3231ab3827257bbcca7ff44fb51fe4af6acc2dda8512dc7f29da390e9fbea5b2b3fc724b86e85cc828395b7797 languageName: node linkType: hard @@ -14004,14 +13922,14 @@ __metadata: resolution: "readdirp@npm:3.6.0" dependencies: picomatch: "npm:^2.2.1" - checksum: 6fa848cf63d1b82ab4e985f4cf72bd55b7dcfd8e0a376905804e48c3634b7e749170940ba77b32804d5fe93b3cc521aa95a8d7e7d725f830da6d93f3669ce66b + checksum: 10c0/6fa848cf63d1b82ab4e985f4cf72bd55b7dcfd8e0a376905804e48c3634b7e749170940ba77b32804d5fe93b3cc521aa95a8d7e7d725f830da6d93f3669ce66b languageName: node linkType: hard "real-require@npm:^0.2.0": version: 0.2.0 resolution: "real-require@npm:0.2.0" - checksum: 23eea5623642f0477412ef8b91acd3969015a1501ed34992ada0e3af521d3c865bb2fe4cdbfec5fe4b505f6d1ef6a03e5c3652520837a8c3b53decff7e74b6a0 + checksum: 10c0/23eea5623642f0477412ef8b91acd3969015a1501ed34992ada0e3af521d3c865bb2fe4cdbfec5fe4b505f6d1ef6a03e5c3652520837a8c3b53decff7e74b6a0 languageName: node linkType: hard @@ -14021,14 +13939,14 @@ __metadata: dependencies: indent-string: "npm:^4.0.0" strip-indent: "npm:^3.0.0" - checksum: d64a6b5c0b50eb3ddce3ab770f866658a2b9998c678f797919ceb1b586bab9259b311407280bd80b804e2a7c7539b19238ae6a2a20c843f1a7fcff21d48c2eae + checksum: 10c0/d64a6b5c0b50eb3ddce3ab770f866658a2b9998c678f797919ceb1b586bab9259b311407280bd80b804e2a7c7539b19238ae6a2a20c843f1a7fcff21d48c2eae languageName: node linkType: hard "redis-errors@npm:^1.0.0, redis-errors@npm:^1.2.0": version: 1.2.0 resolution: "redis-errors@npm:1.2.0" - checksum: 5b316736e9f532d91a35bff631335137a4f974927bb2fb42bf8c2f18879173a211787db8ac4c3fde8f75ed6233eb0888e55d52510b5620e30d69d7d719c8b8a7 + checksum: 10c0/5b316736e9f532d91a35bff631335137a4f974927bb2fb42bf8c2f18879173a211787db8ac4c3fde8f75ed6233eb0888e55d52510b5620e30d69d7d719c8b8a7 languageName: node linkType: hard @@ -14037,7 +13955,7 @@ __metadata: resolution: "redis-parser@npm:3.0.0" dependencies: redis-errors: "npm:^1.0.0" - checksum: ee16ac4c7b2a60b1f42a2cdaee22b005bd4453eb2d0588b8a4939718997ae269da717434da5d570fe0b05030466eeb3f902a58cf2e8e1ca058bf6c9c596f632f + checksum: 10c0/ee16ac4c7b2a60b1f42a2cdaee22b005bd4453eb2d0588b8a4939718997ae269da717434da5d570fe0b05030466eeb3f902a58cf2e8e1ca058bf6c9c596f632f languageName: node linkType: hard @@ -14046,7 +13964,7 @@ __metadata: resolution: "redux-immutable@npm:4.0.0" peerDependencies: immutable: ^3.8.1 || ^4.0.0-rc.1 - checksum: c706c9f72a1fbce92d54ab9117ab641b6d7ee69f2860ec6de827dbed5bed918d4677a0895e6564bb59011202bb5e639cf69f4e2d2d14086053b32e5c4e35f512 + checksum: 10c0/c706c9f72a1fbce92d54ab9117ab641b6d7ee69f2860ec6de827dbed5bed918d4677a0895e6564bb59011202bb5e639cf69f4e2d2d14086053b32e5c4e35f512 languageName: node linkType: hard @@ -14055,7 +13973,7 @@ __metadata: resolution: "redux-thunk@npm:3.1.0" peerDependencies: redux: ^5.0.0 - checksum: 21557f6a30e1b2e3e470933247e51749be7f1d5a9620069a3125778675ce4d178d84bdee3e2a0903427a5c429e3aeec6d4df57897faf93eb83455bc1ef7b66fd + checksum: 10c0/21557f6a30e1b2e3e470933247e51749be7f1d5a9620069a3125778675ce4d178d84bdee3e2a0903427a5c429e3aeec6d4df57897faf93eb83455bc1ef7b66fd languageName: node linkType: hard @@ -14064,14 +13982,14 @@ __metadata: resolution: "redux@npm:4.2.1" dependencies: "@babel/runtime": "npm:^7.9.2" - checksum: 136d98b3d5dbed1cd6279c8c18a6a74c416db98b8a432a46836bdd668475de6279a2d4fd9d1363f63904e00f0678a8a3e7fa532c897163340baf1e71bb42c742 + checksum: 10c0/136d98b3d5dbed1cd6279c8c18a6a74c416db98b8a432a46836bdd668475de6279a2d4fd9d1363f63904e00f0678a8a3e7fa532c897163340baf1e71bb42c742 languageName: node linkType: hard -"redux@npm:^5.0.0": +"redux@npm:^5.0.1": version: 5.0.1 resolution: "redux@npm:5.0.1" - checksum: b10c28357194f38e7d53b760ed5e64faa317cc63de1fb95bc5d9e127fab956392344368c357b8e7a9bedb0c35b111e7efa522210cfdc3b3c75e5074718e9069c + checksum: 10c0/b10c28357194f38e7d53b760ed5e64faa317cc63de1fb95bc5d9e127fab956392344368c357b8e7a9bedb0c35b111e7efa522210cfdc3b3c75e5074718e9069c languageName: node linkType: hard @@ -14085,7 +14003,7 @@ __metadata: get-intrinsic: "npm:^1.2.1" globalthis: "npm:^1.0.3" which-builtin-type: "npm:^1.1.3" - checksum: 02104cdd22658b637efe6b1df73658edab539268347327c8250a72d0cb273dcdf280c284e2d94155d22601d022d16be1a816a8616d679e447cbcbde9860d15cb + checksum: 10c0/02104cdd22658b637efe6b1df73658edab539268347327c8250a72d0cb273dcdf280c284e2d94155d22601d022d16be1a816a8616d679e447cbcbde9860d15cb languageName: node linkType: hard @@ -14094,35 +14012,35 @@ __metadata: resolution: "regenerate-unicode-properties@npm:10.1.1" dependencies: regenerate: "npm:^1.4.2" - checksum: 89adb5ee5ba081380c78f9057c02e156a8181969f6fcca72451efc45612e0c3df767b4333f8d8479c274d9c6fe52ec4854f0d8a22ef95dccbe87da8e5f2ac77d + checksum: 10c0/89adb5ee5ba081380c78f9057c02e156a8181969f6fcca72451efc45612e0c3df767b4333f8d8479c274d9c6fe52ec4854f0d8a22ef95dccbe87da8e5f2ac77d languageName: node linkType: hard "regenerate@npm:^1.4.2": version: 1.4.2 resolution: "regenerate@npm:1.4.2" - checksum: f73c9eba5d398c818edc71d1c6979eaa05af7a808682749dd079f8df2a6d91a9b913db216c2c9b03e0a8ba2bba8701244a93f45211afbff691c32c7b275db1b8 + checksum: 10c0/f73c9eba5d398c818edc71d1c6979eaa05af7a808682749dd079f8df2a6d91a9b913db216c2c9b03e0a8ba2bba8701244a93f45211afbff691c32c7b275db1b8 languageName: node linkType: hard "regenerator-runtime@npm:^0.12.0": version: 0.12.1 resolution: "regenerator-runtime@npm:0.12.1" - checksum: dbefbb38f5d6d55261aec1182d7c97ac93f2eec6ef9c756d9656eb5152f5cb3f8d873df020ddb4a3a8126c2ac1a3c2e534413cffe18d8f89b1c2a480a0a38601 + checksum: 10c0/dbefbb38f5d6d55261aec1182d7c97ac93f2eec6ef9c756d9656eb5152f5cb3f8d873df020ddb4a3a8126c2ac1a3c2e534413cffe18d8f89b1c2a480a0a38601 languageName: node linkType: hard "regenerator-runtime@npm:^0.13.3": version: 0.13.11 resolution: "regenerator-runtime@npm:0.13.11" - checksum: 12b069dc774001fbb0014f6a28f11c09ebfe3c0d984d88c9bced77fdb6fedbacbca434d24da9ae9371bfbf23f754869307fb51a4c98a8b8b18e5ef748677ca24 + checksum: 10c0/12b069dc774001fbb0014f6a28f11c09ebfe3c0d984d88c9bced77fdb6fedbacbca434d24da9ae9371bfbf23f754869307fb51a4c98a8b8b18e5ef748677ca24 languageName: node linkType: hard "regenerator-runtime@npm:^0.14.0": version: 0.14.1 resolution: "regenerator-runtime@npm:0.14.1" - checksum: 1b16eb2c4bceb1665c89de70dcb64126a22bc8eb958feef3cd68fe11ac6d2a4899b5cd1b80b0774c7c03591dc57d16631a7f69d2daa2ec98100e2f29f7ec4cc4 + checksum: 10c0/1b16eb2c4bceb1665c89de70dcb64126a22bc8eb958feef3cd68fe11ac6d2a4899b5cd1b80b0774c7c03591dc57d16631a7f69d2daa2ec98100e2f29f7ec4cc4 languageName: node linkType: hard @@ -14131,7 +14049,7 @@ __metadata: resolution: "regenerator-transform@npm:0.15.2" dependencies: "@babel/runtime": "npm:^7.8.4" - checksum: 7cfe6931ec793269701994a93bab89c0cc95379191fad866270a7fea2adfec67ea62bb5b374db77058b60ba4509319d9b608664d0d288bd9989ca8dbd08fae90 + checksum: 10c0/7cfe6931ec793269701994a93bab89c0cc95379191fad866270a7fea2adfec67ea62bb5b374db77058b60ba4509319d9b608664d0d288bd9989ca8dbd08fae90 languageName: node linkType: hard @@ -14141,18 +14059,19 @@ __metadata: dependencies: extend-shallow: "npm:^3.0.2" safe-regex: "npm:^1.1.0" - checksum: a0f8d6045f63b22e9759db10e248369c443b41cedd7dba0922d002b66c2734bc2aef0d98c4d45772d1f756245f4c5203856b88b9624bba2a58708858a8d485d6 + checksum: 10c0/a0f8d6045f63b22e9759db10e248369c443b41cedd7dba0922d002b66c2734bc2aef0d98c4d45772d1f756245f4c5203856b88b9624bba2a58708858a8d485d6 languageName: node linkType: hard -"regexp.prototype.flags@npm:^1.2.0, regexp.prototype.flags@npm:^1.4.3, regexp.prototype.flags@npm:^1.5.0, regexp.prototype.flags@npm:^1.5.1": - version: 1.5.1 - resolution: "regexp.prototype.flags@npm:1.5.1" +"regexp.prototype.flags@npm:^1.2.0, regexp.prototype.flags@npm:^1.5.0, regexp.prototype.flags@npm:^1.5.2": + version: 1.5.2 + resolution: "regexp.prototype.flags@npm:1.5.2" dependencies: - call-bind: "npm:^1.0.2" - define-properties: "npm:^1.2.0" - set-function-name: "npm:^2.0.0" - checksum: 1de7d214c0a726c7c874a7023e47b0e27b9f7fdb64175bfe1861189de1704aaeca05c3d26c35aa375432289b99946f3cf86651a92a8f7601b90d8c226a23bcd8 + call-bind: "npm:^1.0.6" + define-properties: "npm:^1.2.1" + es-errors: "npm:^1.3.0" + set-function-name: "npm:^2.0.1" + checksum: 10c0/0f3fc4f580d9c349f8b560b012725eb9c002f36daa0041b3fbf6f4238cb05932191a4d7d5db3b5e2caa336d5150ad0402ed2be81f711f9308fe7e1a9bf9bd552 languageName: node linkType: hard @@ -14166,7 +14085,7 @@ __metadata: regjsparser: "npm:^0.9.1" unicode-match-property-ecmascript: "npm:^2.0.0" unicode-match-property-value-ecmascript: "npm:^2.1.0" - checksum: 7945d5ab10c8bbed3ca383d4274687ea825aee4ab93a9c51c6e31e1365edd5ea807f6908f800ba017b66c462944ba68011164e7055207747ab651f8111ef3770 + checksum: 10c0/7945d5ab10c8bbed3ca383d4274687ea825aee4ab93a9c51c6e31e1365edd5ea807f6908f800ba017b66c462944ba68011164e7055207747ab651f8111ef3770 languageName: node linkType: hard @@ -14177,77 +14096,77 @@ __metadata: jsesc: "npm:~0.5.0" bin: regjsparser: bin/parser - checksum: fe44fcf19a99fe4f92809b0b6179530e5ef313ff7f87df143b08ce9a2eb3c4b6189b43735d645be6e8f4033bfb015ed1ca54f0583bc7561bed53fd379feb8225 + checksum: 10c0/fe44fcf19a99fe4f92809b0b6179530e5ef313ff7f87df143b08ce9a2eb3c4b6189b43735d645be6e8f4033bfb015ed1ca54f0583bc7561bed53fd379feb8225 languageName: node linkType: hard "remove-trailing-separator@npm:^1.0.1": version: 1.1.0 resolution: "remove-trailing-separator@npm:1.1.0" - checksum: 3568f9f8f5af3737b4aee9e6e1e8ec4be65a92da9cb27f989e0893714d50aa95ed2ff02d40d1fa35e1b1a234dc9c2437050ef356704a3999feaca6667d9e9bfc + checksum: 10c0/3568f9f8f5af3737b4aee9e6e1e8ec4be65a92da9cb27f989e0893714d50aa95ed2ff02d40d1fa35e1b1a234dc9c2437050ef356704a3999feaca6667d9e9bfc languageName: node linkType: hard "repeat-element@npm:^1.1.2": version: 1.1.4 resolution: "repeat-element@npm:1.1.4" - checksum: 81aa8d82bc845780803ef52df3533fa399974b99df571d0bb86e91f0ffca9ee4b9c4e8e5e72af087938cc28d2aef93d106a6d01da685d72ce96455b90a9f9f69 + checksum: 10c0/81aa8d82bc845780803ef52df3533fa399974b99df571d0bb86e91f0ffca9ee4b9c4e8e5e72af087938cc28d2aef93d106a6d01da685d72ce96455b90a9f9f69 languageName: node linkType: hard "repeat-string@npm:^1.6.1": version: 1.6.1 resolution: "repeat-string@npm:1.6.1" - checksum: 87fa21bfdb2fbdedc44b9a5b118b7c1239bdd2c2c1e42742ef9119b7d412a5137a1d23f1a83dc6bb686f4f27429ac6f542e3d923090b44181bafa41e8ac0174d + checksum: 10c0/87fa21bfdb2fbdedc44b9a5b118b7c1239bdd2c2c1e42742ef9119b7d412a5137a1d23f1a83dc6bb686f4f27429ac6f542e3d923090b44181bafa41e8ac0174d languageName: node linkType: hard "requestidlecallback@npm:^0.3.0": version: 0.3.0 resolution: "requestidlecallback@npm:0.3.0" - checksum: 68a2ff3154788643ccf96436cfaf8ad5bbe2f4d3f4b4d7858ec74681bf7d6a487d17df6a238130ff1e73d0a4a85bdc44b5f945eb79ef7d5552e23fc6288e795f + checksum: 10c0/68a2ff3154788643ccf96436cfaf8ad5bbe2f4d3f4b4d7858ec74681bf7d6a487d17df6a238130ff1e73d0a4a85bdc44b5f945eb79ef7d5552e23fc6288e795f languageName: node linkType: hard "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" - checksum: 83aa76a7bc1531f68d92c75a2ca2f54f1b01463cb566cf3fbc787d0de8be30c9dbc211d1d46be3497dac5785fe296f2dd11d531945ac29730643357978966e99 + checksum: 10c0/83aa76a7bc1531f68d92c75a2ca2f54f1b01463cb566cf3fbc787d0de8be30c9dbc211d1d46be3497dac5785fe296f2dd11d531945ac29730643357978966e99 languageName: node linkType: hard "require-from-string@npm:^2.0.2": version: 2.0.2 resolution: "require-from-string@npm:2.0.2" - checksum: aaa267e0c5b022fc5fd4eef49d8285086b15f2a1c54b28240fdf03599cbd9c26049fee3eab894f2e1f6ca65e513b030a7c264201e3f005601e80c49fb2937ce2 + checksum: 10c0/aaa267e0c5b022fc5fd4eef49d8285086b15f2a1c54b28240fdf03599cbd9c26049fee3eab894f2e1f6ca65e513b030a7c264201e3f005601e80c49fb2937ce2 languageName: node linkType: hard "require-main-filename@npm:^2.0.0": version: 2.0.0 resolution: "require-main-filename@npm:2.0.0" - checksum: db91467d9ead311b4111cbd73a4e67fa7820daed2989a32f7023785a2659008c6d119752d9c4ac011ae07e537eb86523adff99804c5fdb39cd3a017f9b401bb6 + checksum: 10c0/db91467d9ead311b4111cbd73a4e67fa7820daed2989a32f7023785a2659008c6d119752d9c4ac011ae07e537eb86523adff99804c5fdb39cd3a017f9b401bb6 languageName: node linkType: hard "require-package-name@npm:^2.0.1": version: 2.0.1 resolution: "require-package-name@npm:2.0.1" - checksum: 2da87caecdd2157489deaf8add246696dc9cbcebd89ef49b062ad1183594b979f96f8194d4b0f5447a92ad72d39b9fae2df38ec5b9ecef9c7c0157af38eeecbc + checksum: 10c0/2da87caecdd2157489deaf8add246696dc9cbcebd89ef49b062ad1183594b979f96f8194d4b0f5447a92ad72d39b9fae2df38ec5b9ecef9c7c0157af38eeecbc languageName: node linkType: hard "requires-port@npm:^1.0.0": version: 1.0.0 resolution: "requires-port@npm:1.0.0" - checksum: b2bfdd09db16c082c4326e573a82c0771daaf7b53b9ce8ad60ea46aa6e30aaf475fe9b164800b89f93b748d2c234d8abff945d2551ba47bf5698e04cd7713267 + checksum: 10c0/b2bfdd09db16c082c4326e573a82c0771daaf7b53b9ce8ad60ea46aa6e30aaf475fe9b164800b89f93b748d2c234d8abff945d2551ba47bf5698e04cd7713267 languageName: node linkType: hard "reselect@npm:^5.0.1": version: 5.0.1 resolution: "reselect@npm:5.0.1" - checksum: 0724b4555cd6411849de334a75177780f127af849eb71c4b709966d07ade8090d125c0c926dc6cf936866d23ebadda6aad1da93cd8340525323b889f25d56d51 + checksum: 10c0/0724b4555cd6411849de334a75177780f127af849eb71c4b709966d07ade8090d125c0c926dc6cf936866d23ebadda6aad1da93cd8340525323b889f25d56d51 languageName: node linkType: hard @@ -14256,7 +14175,7 @@ __metadata: resolution: "resolve-cwd@npm:2.0.0" dependencies: resolve-from: "npm:^3.0.0" - checksum: 10c3a7ffeb55af51206f5ca8696ed833376179399336ce8e9df8f76c044c13bccd0e9a3148708daf272193179a581ddb076e203eaa71efa0ad341b243174ca12 + checksum: 10c0/10c3a7ffeb55af51206f5ca8696ed833376179399336ce8e9df8f76c044c13bccd0e9a3148708daf272193179a581ddb076e203eaa71efa0ad341b243174ca12 languageName: node linkType: hard @@ -14265,7 +14184,7 @@ __metadata: resolution: "resolve-cwd@npm:3.0.0" dependencies: resolve-from: "npm:^5.0.0" - checksum: e608a3ebd15356264653c32d7ecbc8fd702f94c6703ea4ac2fb81d9c359180cba0ae2e6b71faa446631ed6145454d5a56b227efc33a2d40638ac13f8beb20ee4 + checksum: 10c0/e608a3ebd15356264653c32d7ecbc8fd702f94c6703ea4ac2fb81d9c359180cba0ae2e6b71faa446631ed6145454d5a56b227efc33a2d40638ac13f8beb20ee4 languageName: node linkType: hard @@ -14275,56 +14194,56 @@ __metadata: dependencies: expand-tilde: "npm:^2.0.0" global-modules: "npm:^1.0.0" - checksum: 8197ed13e4a51d9cd786ef6a09fc83450db016abe7ef3311ca39389b3e508d77c26fe0cf0483a9b407b8caa2764bb5ccc52cf6a017ded91492a416475a56066f + checksum: 10c0/8197ed13e4a51d9cd786ef6a09fc83450db016abe7ef3311ca39389b3e508d77c26fe0cf0483a9b407b8caa2764bb5ccc52cf6a017ded91492a416475a56066f languageName: node linkType: hard "resolve-from@npm:^3.0.0": version: 3.0.0 resolution: "resolve-from@npm:3.0.0" - checksum: 24affcf8e81f4c62f0dcabc774afe0e19c1f38e34e43daac0ddb409d79435fc3037f612b0cc129178b8c220442c3babd673e88e870d27215c99454566e770ebc + checksum: 10c0/24affcf8e81f4c62f0dcabc774afe0e19c1f38e34e43daac0ddb409d79435fc3037f612b0cc129178b8c220442c3babd673e88e870d27215c99454566e770ebc languageName: node linkType: hard "resolve-from@npm:^4.0.0": version: 4.0.0 resolution: "resolve-from@npm:4.0.0" - checksum: 8408eec31a3112ef96e3746c37be7d64020cda07c03a920f5024e77290a218ea758b26ca9529fd7b1ad283947f34b2291c1c0f6aa0ed34acfdda9c6014c8d190 + checksum: 10c0/8408eec31a3112ef96e3746c37be7d64020cda07c03a920f5024e77290a218ea758b26ca9529fd7b1ad283947f34b2291c1c0f6aa0ed34acfdda9c6014c8d190 languageName: node linkType: hard "resolve-from@npm:^5.0.0": version: 5.0.0 resolution: "resolve-from@npm:5.0.0" - checksum: b21cb7f1fb746de8107b9febab60095187781137fd803e6a59a76d421444b1531b641bba5857f5dc011974d8a5c635d61cec49e6bd3b7fc20e01f0fafc4efbf2 + checksum: 10c0/b21cb7f1fb746de8107b9febab60095187781137fd803e6a59a76d421444b1531b641bba5857f5dc011974d8a5c635d61cec49e6bd3b7fc20e01f0fafc4efbf2 languageName: node linkType: hard "resolve-pathname@npm:^3.0.0": version: 3.0.0 resolution: "resolve-pathname@npm:3.0.0" - checksum: c6ec49b670dc35b9a303c47fa83ba9348a71e92d64a4c4bb85e1b659a29b407aa1ac1cb14a9b5b502982132ca77482bd80534bca147439d66880d35a137fe723 + checksum: 10c0/c6ec49b670dc35b9a303c47fa83ba9348a71e92d64a4c4bb85e1b659a29b407aa1ac1cb14a9b5b502982132ca77482bd80534bca147439d66880d35a137fe723 languageName: node linkType: hard "resolve-pkg-maps@npm:^1.0.0": version: 1.0.0 resolution: "resolve-pkg-maps@npm:1.0.0" - checksum: fb8f7bbe2ca281a73b7ef423a1cbc786fb244bd7a95cbe5c3fba25b27d327150beca8ba02f622baea65919a57e061eb5005204daa5f93ed590d9b77463a567ab + checksum: 10c0/fb8f7bbe2ca281a73b7ef423a1cbc786fb244bd7a95cbe5c3fba25b27d327150beca8ba02f622baea65919a57e061eb5005204daa5f93ed590d9b77463a567ab languageName: node linkType: hard "resolve-url@npm:^0.2.1": version: 0.2.1 resolution: "resolve-url@npm:0.2.1" - checksum: c285182cfcddea13a12af92129ce0569be27fb0074ffaefbd3ba3da2eac2acecdfc996d435c4982a9fa2b4708640e52837c9153a5ab9255886a00b0b9e8d2a54 + checksum: 10c0/c285182cfcddea13a12af92129ce0569be27fb0074ffaefbd3ba3da2eac2acecdfc996d435c4982a9fa2b4708640e52837c9153a5ab9255886a00b0b9e8d2a54 languageName: node linkType: hard "resolve.exports@npm:^2.0.0": version: 2.0.2 resolution: "resolve.exports@npm:2.0.2" - checksum: cc4cffdc25447cf34730f388dca5021156ba9302a3bad3d7f168e790dc74b2827dff603f1bc6ad3d299bac269828dca96dd77e036dc9fba6a2a1807c47ab5c98 + checksum: 10c0/cc4cffdc25447cf34730f388dca5021156ba9302a3bad3d7f168e790dc74b2827dff603f1bc6ad3d299bac269828dca96dd77e036dc9fba6a2a1807c47ab5c98 languageName: node linkType: hard @@ -14337,20 +14256,20 @@ __metadata: supports-preserve-symlinks-flag: "npm:^1.0.0" bin: resolve: bin/resolve - checksum: 07e179f4375e1fd072cfb72ad66d78547f86e6196c4014b31cb0b8bb1db5f7ca871f922d08da0fbc05b94e9fd42206f819648fa3b5b873ebbc8e1dc68fec433a + checksum: 10c0/07e179f4375e1fd072cfb72ad66d78547f86e6196c4014b31cb0b8bb1db5f7ca871f922d08da0fbc05b94e9fd42206f819648fa3b5b873ebbc8e1dc68fec433a languageName: node linkType: hard -"resolve@npm:^2.0.0-next.4": - version: 2.0.0-next.4 - resolution: "resolve@npm:2.0.0-next.4" +"resolve@npm:^2.0.0-next.5": + version: 2.0.0-next.5 + resolution: "resolve@npm:2.0.0-next.5" dependencies: - is-core-module: "npm:^2.9.0" + is-core-module: "npm:^2.13.0" path-parse: "npm:^1.0.7" supports-preserve-symlinks-flag: "npm:^1.0.0" bin: resolve: bin/resolve - checksum: 1de92669e7c46cfe125294c66d5405e13288bb87b97e9bdab71693ceebbcc0255c789bde30e2834265257d330d8ff57414d7d88e3097d8f69951f3ce978bf045 + checksum: 10c0/a6c33555e3482ea2ec4c6e3d3bf0d78128abf69dca99ae468e64f1e30acaa318fd267fb66c8836b04d558d3e2d6ed875fe388067e7d8e0de647d3c21af21c43a languageName: node linkType: hard @@ -14363,20 +14282,20 @@ __metadata: supports-preserve-symlinks-flag: "npm:^1.0.0" bin: resolve: bin/resolve - checksum: 0446f024439cd2e50c6c8fa8ba77eaa8370b4180f401a96abf3d1ebc770ac51c1955e12764cde449fde3fff480a61f84388e3505ecdbab778f4bef5f8212c729 + checksum: 10c0/0446f024439cd2e50c6c8fa8ba77eaa8370b4180f401a96abf3d1ebc770ac51c1955e12764cde449fde3fff480a61f84388e3505ecdbab778f4bef5f8212c729 languageName: node linkType: hard -"resolve@patch:resolve@npm%3A^2.0.0-next.4#optional!builtin": - version: 2.0.0-next.4 - resolution: "resolve@patch:resolve@npm%3A2.0.0-next.4#optional!builtin::version=2.0.0-next.4&hash=c3c19d" +"resolve@patch:resolve@npm%3A^2.0.0-next.5#optional!builtin": + version: 2.0.0-next.5 + resolution: "resolve@patch:resolve@npm%3A2.0.0-next.5#optional!builtin::version=2.0.0-next.5&hash=c3c19d" dependencies: - is-core-module: "npm:^2.9.0" + is-core-module: "npm:^2.13.0" path-parse: "npm:^1.0.7" supports-preserve-symlinks-flag: "npm:^1.0.0" bin: resolve: bin/resolve - checksum: ed2bb51d616b9cd30fe85cf49f7a2240094d9fa01a221d361918462be81f683d1855b7f192391d2ab5325245b42464ca59690db5bd5dad0a326fc0de5974dd10 + checksum: 10c0/78ad6edb8309a2bfb720c2c1898f7907a37f858866ce11a5974643af1203a6a6e05b2fa9c53d8064a673a447b83d42569260c306d43628bff5bb101969708355 languageName: node linkType: hard @@ -14386,35 +14305,35 @@ __metadata: dependencies: onetime: "npm:^5.1.0" signal-exit: "npm:^3.0.2" - checksum: 6f7da8c5e422ac26aa38354870b1afac09963572cf2879443540449068cb43476e9cbccf6f8de3e0171e0d6f7f533c2bc1a0a008003c9a525bbc098e89041318 + checksum: 10c0/6f7da8c5e422ac26aa38354870b1afac09963572cf2879443540449068cb43476e9cbccf6f8de3e0171e0d6f7f533c2bc1a0a008003c9a525bbc098e89041318 languageName: node linkType: hard "ret@npm:~0.1.10": version: 0.1.15 resolution: "ret@npm:0.1.15" - checksum: 01f77cad0f7ea4f955852c03d66982609893edc1240c0c964b4c9251d0f9fb6705150634060d169939b096d3b77f4c84d6b6098a5b5d340160898c8581f1f63f + checksum: 10c0/01f77cad0f7ea4f955852c03d66982609893edc1240c0c964b4c9251d0f9fb6705150634060d169939b096d3b77f4c84d6b6098a5b5d340160898c8581f1f63f languageName: node linkType: hard "retry@npm:^0.12.0": version: 0.12.0 resolution: "retry@npm:0.12.0" - checksum: 59933e8501727ba13ad73ef4a04d5280b3717fd650408460c987392efe9d7be2040778ed8ebe933c5cbd63da3dcc37919c141ef8af0a54a6e4fca5a2af177bfe + checksum: 10c0/59933e8501727ba13ad73ef4a04d5280b3717fd650408460c987392efe9d7be2040778ed8ebe933c5cbd63da3dcc37919c141ef8af0a54a6e4fca5a2af177bfe languageName: node linkType: hard "reusify@npm:^1.0.4": version: 1.0.4 resolution: "reusify@npm:1.0.4" - checksum: c19ef26e4e188f408922c46f7ff480d38e8dfc55d448310dfb518736b23ed2c4f547fb64a6ed5bdba92cd7e7ddc889d36ff78f794816d5e71498d645ef476107 + checksum: 10c0/c19ef26e4e188f408922c46f7ff480d38e8dfc55d448310dfb518736b23ed2c4f547fb64a6ed5bdba92cd7e7ddc889d36ff78f794816d5e71498d645ef476107 languageName: node linkType: hard "rfdc@npm:^1.3.0": version: 1.3.0 resolution: "rfdc@npm:1.3.0" - checksum: a17fd7b81f42c7ae4cb932abd7b2f677b04cc462a03619fb46945ae1ccae17c3bc87c020ffdde1751cbfa8549860a2883486fdcabc9b9de3f3108af32b69a667 + checksum: 10c0/a17fd7b81f42c7ae4cb932abd7b2f677b04cc462a03619fb46945ae1ccae17c3bc87c020ffdde1751cbfa8549860a2883486fdcabc9b9de3f3108af32b69a667 languageName: node linkType: hard @@ -14425,7 +14344,7 @@ __metadata: glob: "npm:^7.1.3" bin: rimraf: ./bin.js - checksum: 4eef73d406c6940927479a3a9dee551e14a54faf54b31ef861250ac815172bade86cc6f7d64a4dc5e98b65e4b18a2e1c9ff3b68d296be0c748413f092bb0dd40 + checksum: 10c0/4eef73d406c6940927479a3a9dee551e14a54faf54b31ef861250ac815172bade86cc6f7d64a4dc5e98b65e4b18a2e1c9ff3b68d296be0c748413f092bb0dd40 languageName: node linkType: hard @@ -14436,18 +14355,18 @@ __metadata: glob: "npm:^7.1.3" bin: rimraf: bin.js - checksum: 9cb7757acb489bd83757ba1a274ab545eafd75598a9d817e0c3f8b164238dd90eba50d6b848bd4dcc5f3040912e882dc7ba71653e35af660d77b25c381d402e8 + checksum: 10c0/9cb7757acb489bd83757ba1a274ab545eafd75598a9d817e0c3f8b164238dd90eba50d6b848bd4dcc5f3040912e882dc7ba71653e35af660d77b25c381d402e8 languageName: node linkType: hard -"rimraf@npm:^5.0.1, rimraf@npm:^5.0.5": +"rimraf@npm:^5.0.5": version: 5.0.5 resolution: "rimraf@npm:5.0.5" dependencies: glob: "npm:^10.3.7" bin: rimraf: dist/esm/bin.mjs - checksum: d50dbe724f33835decd88395b25ed35995077c60a50ae78ded06e0185418914e555817aad1b4243edbff2254548c2f6ad6f70cc850040bebb4da9e8cc016f586 + checksum: 10c0/d50dbe724f33835decd88395b25ed35995077c60a50ae78ded06e0185418914e555817aad1b4243edbff2254548c2f6ad6f70cc850040bebb4da9e8cc016f586 languageName: node linkType: hard @@ -14457,7 +14376,7 @@ __metadata: dependencies: hash-base: "npm:^3.0.0" inherits: "npm:^2.0.1" - checksum: f6f0df78817e78287c766687aed4d5accbebc308a8e7e673fb085b9977473c1f139f0c5335d353f172a915bb288098430755d2ad3c4f30612f4dd0c901cd2c3a + checksum: 10c0/f6f0df78817e78287c766687aed4d5accbebc308a8e7e673fb085b9977473c1f139f0c5335d353f172a915bb288098430755d2ad3c4f30612f4dd0c901cd2c3a languageName: node linkType: hard @@ -14471,7 +14390,7 @@ __metadata: terser: "npm:^5.0.0" peerDependencies: rollup: ^2.0.0 - checksum: f79b851c6f7b06555d3a8ce7a4e32abd2b7cb8318e89fb8db73e662fa6e3af1a59920e881d111efc65a7437fd9582b61b1f4859b6fd839ba948616829d92432d + checksum: 10c0/f79b851c6f7b06555d3a8ce7a4e32abd2b7cb8318e89fb8db73e662fa6e3af1a59920e881d111efc65a7437fd9582b61b1f4859b6fd839ba948616829d92432d languageName: node linkType: hard @@ -14485,23 +14404,14 @@ __metadata: optional: true bin: rollup: dist/bin/rollup - checksum: 421418687f5dcd7324f4387f203c6bfc7118b7ace789e30f5da022471c43e037a76f5fd93837052754eeeae798a4fb266ac05ccee1e594406d912a59af98dde9 + checksum: 10c0/421418687f5dcd7324f4387f203c6bfc7118b7ace789e30f5da022471c43e037a76f5fd93837052754eeeae798a4fb266ac05ccee1e594406d912a59af98dde9 languageName: node linkType: hard "rrweb-cssom@npm:^0.6.0": version: 0.6.0 resolution: "rrweb-cssom@npm:0.6.0" - checksum: 3d9d90d53c2349ea9c8509c2690df5a4ef930c9cf8242aeb9425d4046f09d712bb01047e00da0e1c1dab5db35740b3d78fd45c3e7272f75d3724a563f27c30a3 - languageName: node - linkType: hard - -"run-applescript@npm:^5.0.0": - version: 5.0.0 - resolution: "run-applescript@npm:5.0.0" - dependencies: - execa: "npm:^5.0.0" - checksum: f9977db5770929f3f0db434b8e6aa266498c70dec913c84320c0a06add510cf44e3a048c44da088abee312006f9cbf572fd065cdc8f15d7682afda8755f4114c + checksum: 10c0/3d9d90d53c2349ea9c8509c2690df5a4ef930c9cf8242aeb9425d4046f09d712bb01047e00da0e1c1dab5db35740b3d78fd45c3e7272f75d3724a563f27c30a3 languageName: node linkType: hard @@ -14510,44 +14420,44 @@ __metadata: resolution: "run-parallel@npm:1.2.0" dependencies: queue-microtask: "npm:^1.2.2" - checksum: 200b5ab25b5b8b7113f9901bfe3afc347e19bb7475b267d55ad0eb86a62a46d77510cb0f232507c9e5d497ebda569a08a9867d0d14f57a82ad5564d991588b39 + checksum: 10c0/200b5ab25b5b8b7113f9901bfe3afc347e19bb7475b267d55ad0eb86a62a46d77510cb0f232507c9e5d497ebda569a08a9867d0d14f57a82ad5564d991588b39 languageName: node linkType: hard -"safe-array-concat@npm:^1.0.0, safe-array-concat@npm:^1.0.1": - version: 1.0.1 - resolution: "safe-array-concat@npm:1.0.1" +"safe-array-concat@npm:^1.0.0, safe-array-concat@npm:^1.1.0": + version: 1.1.0 + resolution: "safe-array-concat@npm:1.1.0" dependencies: - call-bind: "npm:^1.0.2" - get-intrinsic: "npm:^1.2.1" + call-bind: "npm:^1.0.5" + get-intrinsic: "npm:^1.2.2" has-symbols: "npm:^1.0.3" isarray: "npm:^2.0.5" - checksum: 4b15ce5fce5ce4d7e744a63592cded88d2f27806ed229eadb2e42629cbcd40e770f7478608e75f455e7fe341acd8c0a01bdcd7146b10645ea7411c5e3c1d1dd8 + checksum: 10c0/833d3d950fc7507a60075f9bfaf41ec6dac7c50c7a9d62b1e6b071ecc162185881f92e594ff95c1a18301c881352dd6fd236d56999d5819559db7b92da9c28af languageName: node linkType: hard "safe-buffer@npm:5.1.2, safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": version: 5.1.2 resolution: "safe-buffer@npm:5.1.2" - checksum: 780ba6b5d99cc9a40f7b951d47152297d0e260f0df01472a1b99d4889679a4b94a13d644f7dbc4f022572f09ae9005fa2fbb93bbbd83643316f365a3e9a45b21 + checksum: 10c0/780ba6b5d99cc9a40f7b951d47152297d0e260f0df01472a1b99d4889679a4b94a13d644f7dbc4f022572f09ae9005fa2fbb93bbbd83643316f365a3e9a45b21 languageName: node linkType: hard "safe-buffer@npm:5.2.1, safe-buffer@npm:>=5.1.0, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:^5.2.0, safe-buffer@npm:~5.2.0": version: 5.2.1 resolution: "safe-buffer@npm:5.2.1" - checksum: 6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3 + checksum: 10c0/6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3 languageName: node linkType: hard -"safe-regex-test@npm:^1.0.0": - version: 1.0.0 - resolution: "safe-regex-test@npm:1.0.0" +"safe-regex-test@npm:^1.0.3": + version: 1.0.3 + resolution: "safe-regex-test@npm:1.0.3" dependencies: - call-bind: "npm:^1.0.2" - get-intrinsic: "npm:^1.1.3" + call-bind: "npm:^1.0.6" + es-errors: "npm:^1.3.0" is-regex: "npm:^1.1.4" - checksum: 14a81a7e683f97b2d6e9c8be61fddcf8ed7a02f4e64a825515f96bb1738eb007145359313741d2704d28b55b703a0f6300c749dde7c1dbc13952a2b85048ede2 + checksum: 10c0/900bf7c98dc58f08d8523b7012b468e4eb757afa624f198902c0643d7008ba777b0bdc35810ba0b758671ce887617295fb742b3f3968991b178ceca54cb07603 languageName: node linkType: hard @@ -14556,21 +14466,21 @@ __metadata: resolution: "safe-regex@npm:1.1.0" dependencies: ret: "npm:~0.1.10" - checksum: 547d58aa5184cbef368fd5ed5f28d20f911614748c5da6b35f53fd6626396707587251e6e3d1e3010fd3ff1212e413841b8825eaa5f317017ca62a30899af31a + checksum: 10c0/547d58aa5184cbef368fd5ed5f28d20f911614748c5da6b35f53fd6626396707587251e6e3d1e3010fd3ff1212e413841b8825eaa5f317017ca62a30899af31a languageName: node linkType: hard "safe-stable-stringify@npm:^2.3.1": version: 2.4.3 resolution: "safe-stable-stringify@npm:2.4.3" - checksum: 81dede06b8f2ae794efd868b1e281e3c9000e57b39801c6c162267eb9efda17bd7a9eafa7379e1f1cacd528d4ced7c80d7460ad26f62ada7c9e01dec61b2e768 + checksum: 10c0/81dede06b8f2ae794efd868b1e281e3c9000e57b39801c6c162267eb9efda17bd7a9eafa7379e1f1cacd528d4ced7c80d7460ad26f62ada7c9e01dec61b2e768 languageName: node linkType: hard "safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.1.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" - checksum: 7e3c8b2e88a1841c9671094bbaeebd94448111dd90a81a1f606f3f67708a6ec57763b3b47f06da09fc6054193e0e6709e77325415dc8422b04497a8070fa02d4 + checksum: 10c0/7e3c8b2e88a1841c9671094bbaeebd94448111dd90a81a1f606f3f67708a6ec57763b3b47f06da09fc6054193e0e6709e77325415dc8422b04497a8070fa02d4 languageName: node linkType: hard @@ -14595,27 +14505,27 @@ __metadata: optional: true sass: optional: true - checksum: 5ba4a83459fbb50e21d4f4b1b59baf1ddf8dd404099b6d1f2ec887c6903659e505879915030dd9efb1c6dd5fde2d515a19f418487b73d1cc59f6aad60c79bcf5 + checksum: 10c0/5ba4a83459fbb50e21d4f4b1b59baf1ddf8dd404099b6d1f2ec887c6903659e505879915030dd9efb1c6dd5fde2d515a19f418487b73d1cc59f6aad60c79bcf5 languageName: node linkType: hard "sass@npm:^1.62.1": - version: 1.70.0 - resolution: "sass@npm:1.70.0" + version: 1.71.1 + resolution: "sass@npm:1.71.1" dependencies: chokidar: "npm:>=3.0.0 <4.0.0" immutable: "npm:^4.0.0" source-map-js: "npm:>=0.6.2 <2.0.0" bin: sass: sass.js - checksum: 7c309ee1c096d591746d122da9f1ebd65b4c4b3a60c2cc0ec720fd98fe1205fa8b44c9f563d113b9fdfeb25af1e32ec9b3e048bd4b8e05d267f020953bd7baf0 + checksum: 10c0/59d79a6e106747746792b0c71908ae0aecdaf9b794d5724ee64e5249412f0d8ebe7ee2bf12946618848f14f949c4f6b530d82da3e62ab31c71198c6f73002130 languageName: node linkType: hard "sax@npm:~1.2.4": version: 1.2.4 resolution: "sax@npm:1.2.4" - checksum: 6e9b05ff443ee5e5096ce92d31c0740a20d33002fad714ebcb8fc7a664d9ee159103ebe8f7aef0a1f7c5ecacdd01f177f510dff95611c589399baf76437d3fe3 + checksum: 10c0/6e9b05ff443ee5e5096ce92d31c0740a20d33002fad714ebcb8fc7a664d9ee159103ebe8f7aef0a1f7c5ecacdd01f177f510dff95611c589399baf76437d3fe3 languageName: node linkType: hard @@ -14624,7 +14534,7 @@ __metadata: resolution: "saxes@npm:6.0.0" dependencies: xmlchars: "npm:^2.2.0" - checksum: 3847b839f060ef3476eb8623d099aa502ad658f5c40fd60c105ebce86d244389b0d76fcae30f4d0c728d7705ceb2f7e9b34bb54717b6a7dbedaf5dad2d9a4b74 + checksum: 10c0/3847b839f060ef3476eb8623d099aa502ad658f5c40fd60c105ebce86d244389b0d76fcae30f4d0c728d7705ceb2f7e9b34bb54717b6a7dbedaf5dad2d9a4b74 languageName: node linkType: hard @@ -14633,7 +14543,7 @@ __metadata: resolution: "scheduler@npm:0.23.0" dependencies: loose-envify: "npm:^1.1.0" - checksum: b777f7ca0115e6d93e126ac490dbd82642d14983b3079f58f35519d992fa46260be7d6e6cede433a92db70306310c6f5f06e144f0e40c484199e09c1f7be53dd + checksum: 10c0/b777f7ca0115e6d93e126ac490dbd82642d14983b3079f58f35519d992fa46260be7d6e6cede433a92db70306310c6f5f06e144f0e40c484199e09c1f7be53dd languageName: node linkType: hard @@ -14644,7 +14554,7 @@ __metadata: ajv: "npm:^6.1.0" ajv-errors: "npm:^1.0.0" ajv-keywords: "npm:^3.1.0" - checksum: 670e22d7f0ff0b6f4514a4d6fb27c359101b44b7dbfd9563af201af72eb4a9ff06144020cab5f85b16e88821fd09b97cbdae6c893721c6528c8cb704124e6a2f + checksum: 10c0/670e22d7f0ff0b6f4514a4d6fb27c359101b44b7dbfd9563af201af72eb4a9ff06144020cab5f85b16e88821fd09b97cbdae6c893721c6528c8cb704124e6a2f languageName: node linkType: hard @@ -14655,7 +14565,7 @@ __metadata: "@types/json-schema": "npm:^7.0.5" ajv: "npm:^6.12.4" ajv-keywords: "npm:^3.5.2" - checksum: f484f34464edd8758712d5d3ba25a306e367dac988aecaf4ce112e99baae73f33a807b5cf869240bb6648c80720b36af2d7d72be3a27faa49a2d4fc63fa3f85f + checksum: 10c0/f484f34464edd8758712d5d3ba25a306e367dac988aecaf4ce112e99baae73f33a807b5cf869240bb6648c80720b36af2d7d72be3a27faa49a2d4fc63fa3f85f languageName: node linkType: hard @@ -14666,7 +14576,7 @@ __metadata: "@types/json-schema": "npm:^7.0.8" ajv: "npm:^6.12.5" ajv-keywords: "npm:^3.5.2" - checksum: fafdbde91ad8aa1316bc543d4b61e65ea86970aebbfb750bfb6d8a6c287a23e415e0e926c2498696b242f63af1aab8e585252637fabe811fd37b604351da6500 + checksum: 10c0/fafdbde91ad8aa1316bc543d4b61e65ea86970aebbfb750bfb6d8a6c287a23e415e0e926c2498696b242f63af1aab8e585252637fabe811fd37b604351da6500 languageName: node linkType: hard @@ -14676,21 +14586,21 @@ __metadata: dependencies: dom-helpers: "npm:^3.4.0" invariant: "npm:^2.2.4" - checksum: 4f438c48b93a1dcc2ab51a18670fac6f5ce41885291d8aa13251b4a187be9d0c6dd518ee974eb52ac9bbe227b9811c2615ecca73192a1a190b78dfdadb9c2cf2 + checksum: 10c0/4f438c48b93a1dcc2ab51a18670fac6f5ce41885291d8aa13251b4a187be9d0c6dd518ee974eb52ac9bbe227b9811c2615ecca73192a1a190b78dfdadb9c2cf2 languageName: node linkType: hard "secure-json-parse@npm:^2.4.0": version: 2.7.0 resolution: "secure-json-parse@npm:2.7.0" - checksum: f57eb6a44a38a3eeaf3548228585d769d788f59007454214fab9ed7f01fbf2e0f1929111da6db28cf0bcc1a2e89db5219a59e83eeaec3a54e413a0197ce879e4 + checksum: 10c0/f57eb6a44a38a3eeaf3548228585d769d788f59007454214fab9ed7f01fbf2e0f1929111da6db28cf0bcc1a2e89db5219a59e83eeaec3a54e413a0197ce879e4 languageName: node linkType: hard "select-hose@npm:^2.0.0": version: 2.0.0 resolution: "select-hose@npm:2.0.0" - checksum: 01cc52edd29feddaf379efb4328aededa633f0ac43c64b11a8abd075ff34f05b0d280882c4fbcbdf1a0658202c9cd2ea8d5985174dcf9a2dac7e3a4996fa9b67 + checksum: 10c0/01cc52edd29feddaf379efb4328aededa633f0ac43c64b11a8abd075ff34f05b0d280882c4fbcbdf1a0658202c9cd2ea8d5985174dcf9a2dac7e3a4996fa9b67 languageName: node linkType: hard @@ -14699,7 +14609,7 @@ __metadata: resolution: "selfsigned@npm:1.10.14" dependencies: node-forge: "npm:^0.10.0" - checksum: cb7c92e28a3e8a34e91a3b20b9dd7d237a1bffccd9890c434f74eef65ae8bfffe7c1ab3379faac017b957ea44522923e06e2b41e0858c643edb01137a507cd16 + checksum: 10c0/cb7c92e28a3e8a34e91a3b20b9dd7d237a1bffccd9890c434f74eef65ae8bfffe7c1ab3379faac017b957ea44522923e06e2b41e0858c643edb01137a507cd16 languageName: node linkType: hard @@ -14708,7 +14618,7 @@ __metadata: resolution: "semver@npm:5.7.1" bin: semver: ./bin/semver - checksum: d4884f2aeca28bff35d0bd40ff0a9b2dfc4b36a883bf0ea5dc15d10d9a01bdc9041035b05f825d4b5ac8a56e490703dbf0d986d054de82cc5e9bad3f02ca6e00 + checksum: 10c0/d4884f2aeca28bff35d0bd40ff0a9b2dfc4b36a883bf0ea5dc15d10d9a01bdc9041035b05f825d4b5ac8a56e490703dbf0d986d054de82cc5e9bad3f02ca6e00 languageName: node linkType: hard @@ -14717,18 +14627,18 @@ __metadata: resolution: "semver@npm:6.3.1" bin: semver: bin/semver.js - checksum: e3d79b609071caa78bcb6ce2ad81c7966a46a7431d9d58b8800cfa9cb6a63699b3899a0e4bcce36167a284578212d9ae6942b6929ba4aa5015c079a67751d42d + checksum: 10c0/e3d79b609071caa78bcb6ce2ad81c7966a46a7431d9d58b8800cfa9cb6a63699b3899a0e4bcce36167a284578212d9ae6942b6929ba4aa5015c079a67751d42d languageName: node linkType: hard -"semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.5.3, semver@npm:^7.5.4": - version: 7.5.4 - resolution: "semver@npm:7.5.4" +"semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.6.0": + version: 7.6.0 + resolution: "semver@npm:7.6.0" dependencies: lru-cache: "npm:^6.0.0" bin: semver: bin/semver.js - checksum: 5160b06975a38b11c1ab55950cb5b8a23db78df88275d3d8a42ccf1f29e55112ac995b3a26a522c36e3b5f76b0445f1eef70d696b8c7862a2b4303d7b0e7609e + checksum: 10c0/fbfe717094ace0aa8d6332d7ef5ce727259815bd8d8815700853f4faf23aacbd7192522f0dc5af6df52ef4fa85a355ebd2f5d39f554bd028200d6cf481ab9b53 languageName: node linkType: hard @@ -14749,7 +14659,7 @@ __metadata: on-finished: "npm:2.4.1" range-parser: "npm:~1.2.1" statuses: "npm:2.0.1" - checksum: 0eb134d6a51fc13bbcb976a1f4214ea1e33f242fae046efc311e80aff66c7a43603e26a79d9d06670283a13000e51be6e0a2cb80ff0942eaf9f1cd30b7ae736a + checksum: 10c0/0eb134d6a51fc13bbcb976a1f4214ea1e33f242fae046efc311e80aff66c7a43603e26a79d9d06670283a13000e51be6e0a2cb80ff0942eaf9f1cd30b7ae736a languageName: node linkType: hard @@ -14758,7 +14668,7 @@ __metadata: resolution: "serialize-javascript@npm:4.0.0" dependencies: randombytes: "npm:^2.1.0" - checksum: 510dfe7f0311c0b2f7ab06311afa1668ba2969ab2f1faaac0a4924ede76b7f22ba85cfdeaa0052ec5a047bca42c8cd8ac8df8f0efe52f9bd290b3a39ae69fe9d + checksum: 10c0/510dfe7f0311c0b2f7ab06311afa1668ba2969ab2f1faaac0a4924ede76b7f22ba85cfdeaa0052ec5a047bca42c8cd8ac8df8f0efe52f9bd290b3a39ae69fe9d languageName: node linkType: hard @@ -14767,7 +14677,7 @@ __metadata: resolution: "serialize-javascript@npm:5.0.1" dependencies: randombytes: "npm:^2.1.0" - checksum: 646bd92a8298d764d38316f3006bce0b0def6d0e254791396ac34403847654d9346b0b6ed7865efd799d93d4c47d900e08a8fa7a6f7f8d2dbaebab5444c3b431 + checksum: 10c0/646bd92a8298d764d38316f3006bce0b0def6d0e254791396ac34403847654d9346b0b6ed7865efd799d93d4c47d900e08a8fa7a6f7f8d2dbaebab5444c3b431 languageName: node linkType: hard @@ -14782,7 +14692,7 @@ __metadata: http-errors: "npm:~1.6.2" mime-types: "npm:~2.1.17" parseurl: "npm:~1.3.2" - checksum: a666471a24196f74371edf2c3c7bcdd82adbac52f600804508754b5296c3567588bf694258b19e0cb23a567acfa20d9721bfdaed3286007b81f9741ada8a3a9c + checksum: 10c0/a666471a24196f74371edf2c3c7bcdd82adbac52f600804508754b5296c3567588bf694258b19e0cb23a567acfa20d9721bfdaed3286007b81f9741ada8a3a9c languageName: node linkType: hard @@ -14794,26 +14704,28 @@ __metadata: escape-html: "npm:~1.0.3" parseurl: "npm:~1.3.3" send: "npm:0.18.0" - checksum: fa9f0e21a540a28f301258dfe1e57bb4f81cd460d28f0e973860477dd4acef946a1f41748b5bd41c73b621bea2029569c935faa38578fd34cd42a9b4947088ba + checksum: 10c0/fa9f0e21a540a28f301258dfe1e57bb4f81cd460d28f0e973860477dd4acef946a1f41748b5bd41c73b621bea2029569c935faa38578fd34cd42a9b4947088ba languageName: node linkType: hard "set-blocking@npm:^2.0.0": version: 2.0.0 resolution: "set-blocking@npm:2.0.0" - checksum: 9f8c1b2d800800d0b589de1477c753492de5c1548d4ade52f57f1d1f5e04af5481554d75ce5e5c43d4004b80a3eb714398d6907027dc0534177b7539119f4454 + checksum: 10c0/9f8c1b2d800800d0b589de1477c753492de5c1548d4ade52f57f1d1f5e04af5481554d75ce5e5c43d4004b80a3eb714398d6907027dc0534177b7539119f4454 languageName: node linkType: hard -"set-function-length@npm:^1.1.1": - version: 1.1.1 - resolution: "set-function-length@npm:1.1.1" +"set-function-length@npm:^1.2.1": + version: 1.2.1 + resolution: "set-function-length@npm:1.2.1" dependencies: - define-data-property: "npm:^1.1.1" - get-intrinsic: "npm:^1.2.1" + define-data-property: "npm:^1.1.2" + es-errors: "npm:^1.3.0" + function-bind: "npm:^1.1.2" + get-intrinsic: "npm:^1.2.3" gopd: "npm:^1.0.1" - has-property-descriptors: "npm:^1.0.0" - checksum: a29e255c116c29e3323b851c4f46c58c91be9bb8b065f191e2ea1807cb2c839df56e3175732a498e0c6d54626ba6b6fef896bf699feb7ab70c42dc47eb247c95 + has-property-descriptors: "npm:^1.0.1" + checksum: 10c0/1927e296599f2c04d210c1911f1600430a5e49e04a6d8bb03dca5487b95a574da9968813a2ced9a774bd3e188d4a6208352c8f64b8d4674cdb021dca21e190ca languageName: node linkType: hard @@ -14824,7 +14736,7 @@ __metadata: define-data-property: "npm:^1.0.1" functions-have-names: "npm:^1.2.3" has-property-descriptors: "npm:^1.0.0" - checksum: 6be7d3e15be47f4db8a5a563a35c60b5e7c4af91cc900e8972ffad33d3aaa227900faa55f60121cdb04b85866a734bb7fe4cd91f654c632861cc86121a48312a + checksum: 10c0/6be7d3e15be47f4db8a5a563a35c60b5e7c4af91cc900e8972ffad33d3aaa227900faa55f60121cdb04b85866a734bb7fe4cd91f654c632861cc86121a48312a languageName: node linkType: hard @@ -14836,28 +14748,28 @@ __metadata: is-extendable: "npm:^0.1.1" is-plain-object: "npm:^2.0.3" split-string: "npm:^3.0.1" - checksum: 4c40573c4f6540456e4b38b95f570272c4cfbe1d12890ad4057886da8535047cd772dfadf5b58e2e87aa244dfb4c57e3586f6716b976fc47c5144b6b09e1811b + checksum: 10c0/4c40573c4f6540456e4b38b95f570272c4cfbe1d12890ad4057886da8535047cd772dfadf5b58e2e87aa244dfb4c57e3586f6716b976fc47c5144b6b09e1811b languageName: node linkType: hard "setimmediate@npm:^1.0.4": version: 1.0.5 resolution: "setimmediate@npm:1.0.5" - checksum: 5bae81bfdbfbd0ce992893286d49c9693c82b1bcc00dcaaf3a09c8f428fdeacf4190c013598b81875dfac2b08a572422db7df779a99332d0fce186d15a3e4d49 + checksum: 10c0/5bae81bfdbfbd0ce992893286d49c9693c82b1bcc00dcaaf3a09c8f428fdeacf4190c013598b81875dfac2b08a572422db7df779a99332d0fce186d15a3e4d49 languageName: node linkType: hard "setprototypeof@npm:1.1.0": version: 1.1.0 resolution: "setprototypeof@npm:1.1.0" - checksum: a77b20876689c6a89c3b42f0c3596a9cae02f90fc902570cbd97198e9e8240382086c9303ad043e88cee10f61eae19f1004e51d885395a1e9bf49f9ebed12872 + checksum: 10c0/a77b20876689c6a89c3b42f0c3596a9cae02f90fc902570cbd97198e9e8240382086c9303ad043e88cee10f61eae19f1004e51d885395a1e9bf49f9ebed12872 languageName: node linkType: hard "setprototypeof@npm:1.2.0": version: 1.2.0 resolution: "setprototypeof@npm:1.2.0" - checksum: 68733173026766fa0d9ecaeb07f0483f4c2dc70ca376b3b7c40b7cda909f94b0918f6c5ad5ce27a9160bdfb475efaa9d5e705a11d8eaae18f9835d20976028bc + checksum: 10c0/68733173026766fa0d9ecaeb07f0483f4c2dc70ca376b3b7c40b7cda909f94b0918f6c5ad5ce27a9160bdfb475efaa9d5e705a11d8eaae18f9835d20976028bc languageName: node linkType: hard @@ -14869,7 +14781,7 @@ __metadata: safe-buffer: "npm:^5.0.1" bin: sha.js: ./bin.js - checksum: b7a371bca8821c9cc98a0aeff67444a03d48d745cb103f17228b96793f455f0eb0a691941b89ea1e60f6359207e36081d9be193252b0f128e0daf9cfea2815a5 + checksum: 10c0/b7a371bca8821c9cc98a0aeff67444a03d48d745cb103f17228b96793f455f0eb0a691941b89ea1e60f6359207e36081d9be193252b0f128e0daf9cfea2815a5 languageName: node linkType: hard @@ -14878,14 +14790,14 @@ __metadata: resolution: "shallow-clone@npm:3.0.1" dependencies: kind-of: "npm:^6.0.2" - checksum: 7bab09613a1b9f480c85a9823aebec533015579fa055ba6634aa56ba1f984380670eaf33b8217502931872aa1401c9fcadaa15f9f604d631536df475b05bcf1e + checksum: 10c0/7bab09613a1b9f480c85a9823aebec533015579fa055ba6634aa56ba1f984380670eaf33b8217502931872aa1401c9fcadaa15f9f604d631536df475b05bcf1e languageName: node linkType: hard "shallow-equal@npm:^1.2.1": version: 1.2.1 resolution: "shallow-equal@npm:1.2.1" - checksum: 51e03abadd97c9ebe590547d92db9148446962a3f23a3a0fb1ba2fccab80af881eef0ff1f8ccefd3f066c0bc5a4c8ca53706194813b95c8835fa66448a843a26 + checksum: 10c0/51e03abadd97c9ebe590547d92db9148446962a3f23a3a0fb1ba2fccab80af881eef0ff1f8ccefd3f066c0bc5a4c8ca53706194813b95c8835fa66448a843a26 languageName: node linkType: hard @@ -14894,7 +14806,7 @@ __metadata: resolution: "shebang-command@npm:1.2.0" dependencies: shebang-regex: "npm:^1.0.0" - checksum: 7b20dbf04112c456b7fc258622dafd566553184ac9b6938dd30b943b065b21dabd3776460df534cc02480db5e1b6aec44700d985153a3da46e7db7f9bd21326d + checksum: 10c0/7b20dbf04112c456b7fc258622dafd566553184ac9b6938dd30b943b065b21dabd3776460df534cc02480db5e1b6aec44700d985153a3da46e7db7f9bd21326d languageName: node linkType: hard @@ -14903,21 +14815,21 @@ __metadata: resolution: "shebang-command@npm:2.0.0" dependencies: shebang-regex: "npm:^3.0.0" - checksum: a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e + checksum: 10c0/a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e languageName: node linkType: hard "shebang-regex@npm:^1.0.0": version: 1.0.0 resolution: "shebang-regex@npm:1.0.0" - checksum: 9abc45dee35f554ae9453098a13fdc2f1730e525a5eb33c51f096cc31f6f10a4b38074c1ebf354ae7bffa7229506083844008dfc3bb7818228568c0b2dc1fff2 + checksum: 10c0/9abc45dee35f554ae9453098a13fdc2f1730e525a5eb33c51f096cc31f6f10a4b38074c1ebf354ae7bffa7229506083844008dfc3bb7818228568c0b2dc1fff2 languageName: node linkType: hard "shebang-regex@npm:^3.0.0": version: 3.0.0 resolution: "shebang-regex@npm:3.0.0" - checksum: 1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690 + checksum: 10c0/1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690 languageName: node linkType: hard @@ -14928,21 +14840,21 @@ __metadata: call-bind: "npm:^1.0.0" get-intrinsic: "npm:^1.0.2" object-inspect: "npm:^1.9.0" - checksum: 054a5d23ee35054b2c4609b9fd2a0587760737782b5d765a9c7852264710cc39c6dcb56a9bbd6c12cd84071648aea3edb2359d2f6e560677eedadce511ac1da5 + checksum: 10c0/054a5d23ee35054b2c4609b9fd2a0587760737782b5d765a9c7852264710cc39c6dcb56a9bbd6c12cd84071648aea3edb2359d2f6e560677eedadce511ac1da5 languageName: node linkType: hard "signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" - checksum: 25d272fa73e146048565e08f3309d5b942c1979a6f4a58a8c59d5fa299728e9c2fcd1a759ec870863b1fd38653670240cd420dad2ad9330c71f36608a6a1c912 + checksum: 10c0/25d272fa73e146048565e08f3309d5b942c1979a6f4a58a8c59d5fa299728e9c2fcd1a759ec870863b1fd38653670240cd420dad2ad9330c71f36608a6a1c912 languageName: node linkType: hard "signal-exit@npm:^4.0.1, signal-exit@npm:^4.1.0": version: 4.1.0 resolution: "signal-exit@npm:4.1.0" - checksum: 41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83 + checksum: 10c0/41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83 languageName: node linkType: hard @@ -14953,21 +14865,21 @@ __metadata: "@polka/url": "npm:^1.0.0-next.20" mrmime: "npm:^1.0.0" totalist: "npm:^3.0.0" - checksum: 333bd665ee5ac3805047ea47757e04e2b18ca562749b9a07f5bbbee6dabd99ff00011604689b1ada3d22e46a4198c61e05e2d1abd5454d94da483ce3a3813205 + checksum: 10c0/333bd665ee5ac3805047ea47757e04e2b18ca562749b9a07f5bbbee6dabd99ff00011604689b1ada3d22e46a4198c61e05e2d1abd5454d94da483ce3a3813205 languageName: node linkType: hard "sisteransi@npm:^1.0.5": version: 1.0.5 resolution: "sisteransi@npm:1.0.5" - checksum: 230ac975cca485b7f6fe2b96a711aa62a6a26ead3e6fb8ba17c5a00d61b8bed0d7adc21f5626b70d7c33c62ff4e63933017a6462942c719d1980bb0b1207ad46 + checksum: 10c0/230ac975cca485b7f6fe2b96a711aa62a6a26ead3e6fb8ba17c5a00d61b8bed0d7adc21f5626b70d7c33c62ff4e63933017a6462942c719d1980bb0b1207ad46 languageName: node linkType: hard "slash@npm:^3.0.0": version: 3.0.0 resolution: "slash@npm:3.0.0" - checksum: e18488c6a42bdfd4ac5be85b2ced3ccd0224773baae6ad42cfbb9ec74fc07f9fa8396bd35ee638084ead7a2a0818eb5e7151111544d4731ce843019dab4be47b + checksum: 10c0/e18488c6a42bdfd4ac5be85b2ced3ccd0224773baae6ad42cfbb9ec74fc07f9fa8396bd35ee638084ead7a2a0818eb5e7151111544d4731ce843019dab4be47b languageName: node linkType: hard @@ -14978,7 +14890,7 @@ __metadata: ansi-styles: "npm:^4.0.0" astral-regex: "npm:^2.0.0" is-fullwidth-code-point: "npm:^3.0.0" - checksum: 6c25678db1270d4793e0327620f1e0f9f5bea4630123f51e9e399191bc52c87d6e6de53ed33538609e5eacbd1fab769fae00f3705d08d029f02102a540648918 + checksum: 10c0/6c25678db1270d4793e0327620f1e0f9f5bea4630123f51e9e399191bc52c87d6e6de53ed33538609e5eacbd1fab769fae00f3705d08d029f02102a540648918 languageName: node linkType: hard @@ -14988,7 +14900,7 @@ __metadata: dependencies: ansi-styles: "npm:^6.0.0" is-fullwidth-code-point: "npm:^4.0.0" - checksum: 2d4d40b2a9d5cf4e8caae3f698fe24ae31a4d778701724f578e984dcb485ec8c49f0c04dab59c401821e80fcdfe89cace9c66693b0244e40ec485d72e543914f + checksum: 10c0/2d4d40b2a9d5cf4e8caae3f698fe24ae31a4d778701724f578e984dcb485ec8c49f0c04dab59c401821e80fcdfe89cace9c66693b0244e40ec485d72e543914f languageName: node linkType: hard @@ -14998,14 +14910,14 @@ __metadata: dependencies: ansi-styles: "npm:^6.2.1" is-fullwidth-code-point: "npm:^5.0.0" - checksum: 631c971d4abf56cf880f034d43fcc44ff883624867bf11ecbd538c47343911d734a4656d7bc02362b40b89d765652a7f935595441e519b59e2ad3f4d5d6fe7ca + checksum: 10c0/631c971d4abf56cf880f034d43fcc44ff883624867bf11ecbd538c47343911d734a4656d7bc02362b40b89d765652a7f935595441e519b59e2ad3f4d5d6fe7ca languageName: node linkType: hard "smart-buffer@npm:^4.2.0": version: 4.2.0 resolution: "smart-buffer@npm:4.2.0" - checksum: a16775323e1404dd43fabafe7460be13a471e021637bc7889468eb45ce6a6b207261f454e4e530a19500cc962c4cc5348583520843b363f4193cee5c00e1e539 + checksum: 10c0/a16775323e1404dd43fabafe7460be13a471e021637bc7889468eb45ce6a6b207261f454e4e530a19500cc962c4cc5348583520843b363f4193cee5c00e1e539 languageName: node linkType: hard @@ -15016,7 +14928,7 @@ __metadata: define-property: "npm:^1.0.0" isobject: "npm:^3.0.0" snapdragon-util: "npm:^3.0.1" - checksum: 7616e6a1ca054afe3ad8defda17ebe4c73b0800d2e0efd635c44ee1b286f8ac7900517314b5330862ce99b28cd2782348ee78bae573ff0f55832ad81d9657f3f + checksum: 10c0/7616e6a1ca054afe3ad8defda17ebe4c73b0800d2e0efd635c44ee1b286f8ac7900517314b5330862ce99b28cd2782348ee78bae573ff0f55832ad81d9657f3f languageName: node linkType: hard @@ -15025,7 +14937,7 @@ __metadata: resolution: "snapdragon-util@npm:3.0.1" dependencies: kind-of: "npm:^3.2.0" - checksum: 4441856d343399ba7f37f79681949d51b922e290fcc07e7bc94655a50f584befa4fb08f40c3471cd160e004660161964d8ff140cba49baa59aa6caba774240e3 + checksum: 10c0/4441856d343399ba7f37f79681949d51b922e290fcc07e7bc94655a50f584befa4fb08f40c3471cd160e004660161964d8ff140cba49baa59aa6caba774240e3 languageName: node linkType: hard @@ -15041,7 +14953,7 @@ __metadata: source-map: "npm:^0.5.6" source-map-resolve: "npm:^0.5.0" use: "npm:^3.1.0" - checksum: dfdac1f73d47152d72fc07f4322da09bbddfa31c1c9c3ae7346f252f778c45afa5b03e90813332f02f04f6de8003b34a168c456f8bb719024d092f932520ffca + checksum: 10c0/dfdac1f73d47152d72fc07f4322da09bbddfa31c1c9c3ae7346f252f778c45afa5b03e90813332f02f04f6de8003b34a168c456f8bb719024d092f932520ffca languageName: node linkType: hard @@ -15054,7 +14966,7 @@ __metadata: faye-websocket: "npm:^0.11.4" inherits: "npm:^2.0.4" url-parse: "npm:^1.5.10" - checksum: c1b55470aac0a31b0fc87806535b0e5cf5d6289584bcd03ffa9f50328a74a40098be63292d6862bd6f483ac9ef487ad60a8a5082feb1f9d0caee5bad6e50f3a9 + checksum: 10c0/c1b55470aac0a31b0fc87806535b0e5cf5d6289584bcd03ffa9f50328a74a40098be63292d6862bd6f483ac9ef487ad60a8a5082feb1f9d0caee5bad6e50f3a9 languageName: node linkType: hard @@ -15065,7 +14977,7 @@ __metadata: faye-websocket: "npm:^0.11.3" uuid: "npm:^8.3.2" websocket-driver: "npm:^0.7.4" - checksum: aa102c7d921bf430215754511c81ea7248f2dcdf268fbdb18e4d8183493a86b8793b164c636c52f474a886f747447c962741df2373888823271efdb9d2594f33 + checksum: 10c0/aa102c7d921bf430215754511c81ea7248f2dcdf268fbdb18e4d8183493a86b8793b164c636c52f474a886f747447c962741df2373888823271efdb9d2594f33 languageName: node linkType: hard @@ -15076,7 +14988,7 @@ __metadata: agent-base: "npm:^7.0.2" debug: "npm:^4.3.4" socks: "npm:^2.7.1" - checksum: a842402fc9b8848a31367f2811ca3cd14c4106588b39a0901cd7a69029998adfc6456b0203617c18ed090542ad0c24ee4e9d4c75a0c4b75071e214227c177eb7 + checksum: 10c0/a842402fc9b8848a31367f2811ca3cd14c4106588b39a0901cd7a69029998adfc6456b0203617c18ed090542ad0c24ee4e9d4c75a0c4b75071e214227c177eb7 languageName: node linkType: hard @@ -15086,7 +14998,7 @@ __metadata: dependencies: ip: "npm:^2.0.0" smart-buffer: "npm:^4.2.0" - checksum: 43f69dbc9f34fc8220bc51c6eea1c39715ab3cfdb115d6e3285f6c7d1a603c5c75655668a5bbc11e3c7e2c99d60321fb8d7ab6f38cda6a215fadd0d6d0b52130 + checksum: 10c0/43f69dbc9f34fc8220bc51c6eea1c39715ab3cfdb115d6e3285f6c7d1a603c5c75655668a5bbc11e3c7e2c99d60321fb8d7ab6f38cda6a215fadd0d6d0b52130 languageName: node linkType: hard @@ -15095,21 +15007,21 @@ __metadata: resolution: "sonic-boom@npm:3.7.0" dependencies: atomic-sleep: "npm:^1.0.0" - checksum: 57a3d560efb77f4576db111168ee2649c99e7869fda6ce0ec2a4e5458832d290ba58d74b073ddb5827d9a30f96d23cff79157993d919e1a6d5f28d8b6391c7f0 + checksum: 10c0/57a3d560efb77f4576db111168ee2649c99e7869fda6ce0ec2a4e5458832d290ba58d74b073ddb5827d9a30f96d23cff79157993d919e1a6d5f28d8b6391c7f0 languageName: node linkType: hard "source-list-map@npm:^2.0.0": version: 2.0.1 resolution: "source-list-map@npm:2.0.1" - checksum: 2e5e421b185dcd857f46c3c70e2e711a65d717b78c5f795e2e248c9d67757882ea989b80ebc08cf164eeeda5f4be8aa95d3b990225070b2daaaf3257c5958149 + checksum: 10c0/2e5e421b185dcd857f46c3c70e2e711a65d717b78c5f795e2e248c9d67757882ea989b80ebc08cf164eeeda5f4be8aa95d3b990225070b2daaaf3257c5958149 languageName: node linkType: hard "source-map-js@npm:>=0.6.2 <2.0.0, source-map-js@npm:^1.0.1, source-map-js@npm:^1.0.2": version: 1.0.2 resolution: "source-map-js@npm:1.0.2" - checksum: 32f2dfd1e9b7168f9a9715eb1b4e21905850f3b50cf02cf476e47e4eebe8e6b762b63a64357896aa29b37e24922b4282df0f492e0d2ace572b43d15525976ff8 + checksum: 10c0/32f2dfd1e9b7168f9a9715eb1b4e21905850f3b50cf02cf476e47e4eebe8e6b762b63a64357896aa29b37e24922b4282df0f492e0d2ace572b43d15525976ff8 languageName: node linkType: hard @@ -15122,7 +15034,7 @@ __metadata: resolve-url: "npm:^0.2.1" source-map-url: "npm:^0.4.0" urix: "npm:^0.1.0" - checksum: 410acbe93882e058858d4c1297be61da3e1533f95f25b95903edddc1fb719654e705663644677542d1fb78a66390238fad1a57115fc958a0724cf9bb509caf57 + checksum: 10c0/410acbe93882e058858d4c1297be61da3e1533f95f25b95903edddc1fb719654e705663644677542d1fb78a66390238fad1a57115fc958a0724cf9bb509caf57 languageName: node linkType: hard @@ -15132,7 +15044,7 @@ __metadata: dependencies: buffer-from: "npm:^1.0.0" source-map: "npm:^0.6.0" - checksum: 137539f8c453fa0f496ea42049ab5da4569f96781f6ac8e5bfda26937be9494f4e8891f523c5f98f0e85f71b35d74127a00c46f83f6a4f54672b58d53202565e + checksum: 10c0/137539f8c453fa0f496ea42049ab5da4569f96781f6ac8e5bfda26937be9494f4e8891f523c5f98f0e85f71b35d74127a00c46f83f6a4f54672b58d53202565e languageName: node linkType: hard @@ -15142,42 +15054,42 @@ __metadata: dependencies: buffer-from: "npm:^1.0.0" source-map: "npm:^0.6.0" - checksum: 9ee09942f415e0f721d6daad3917ec1516af746a8120bba7bb56278707a37f1eb8642bde456e98454b8a885023af81a16e646869975f06afc1a711fb90484e7d + checksum: 10c0/9ee09942f415e0f721d6daad3917ec1516af746a8120bba7bb56278707a37f1eb8642bde456e98454b8a885023af81a16e646869975f06afc1a711fb90484e7d languageName: node linkType: hard "source-map-url@npm:^0.4.0": version: 0.4.1 resolution: "source-map-url@npm:0.4.1" - checksum: f8af0678500d536c7f643e32094d6718a4070ab4ca2d2326532512cfbe2d5d25a45849b4b385879326f2d7523bb3b686d0360dd347a3cda09fd89a5c28d4bc58 + checksum: 10c0/f8af0678500d536c7f643e32094d6718a4070ab4ca2d2326532512cfbe2d5d25a45849b4b385879326f2d7523bb3b686d0360dd347a3cda09fd89a5c28d4bc58 languageName: node linkType: hard "source-map@npm:0.5.6": version: 0.5.6 resolution: "source-map@npm:0.5.6" - checksum: beb2c5974bb58954d75e86249953d47ae16f7df1a8531abb9fcae0cd262d9fa09c2db3a134e20e99358b1adba42b6b054a32c8e16b571b3efcf6af644c329f0d + checksum: 10c0/beb2c5974bb58954d75e86249953d47ae16f7df1a8531abb9fcae0cd262d9fa09c2db3a134e20e99358b1adba42b6b054a32c8e16b571b3efcf6af644c329f0d languageName: node linkType: hard "source-map@npm:^0.5.6, source-map@npm:^0.5.7": version: 0.5.7 resolution: "source-map@npm:0.5.7" - checksum: 904e767bb9c494929be013017380cbba013637da1b28e5943b566031e29df04fba57edf3f093e0914be094648b577372bd8ad247fa98cfba9c600794cd16b599 + checksum: 10c0/904e767bb9c494929be013017380cbba013637da1b28e5943b566031e29df04fba57edf3f093e0914be094648b577372bd8ad247fa98cfba9c600794cd16b599 languageName: node linkType: hard "source-map@npm:^0.6.0, source-map@npm:^0.6.1, source-map@npm:~0.6.1": version: 0.6.1 resolution: "source-map@npm:0.6.1" - checksum: ab55398007c5e5532957cb0beee2368529618ac0ab372d789806f5718123cc4367d57de3904b4e6a4170eb5a0b0f41373066d02ca0735a0c4d75c7d328d3e011 + checksum: 10c0/ab55398007c5e5532957cb0beee2368529618ac0ab372d789806f5718123cc4367d57de3904b4e6a4170eb5a0b0f41373066d02ca0735a0c4d75c7d328d3e011 languageName: node linkType: hard "source-map@npm:^0.7.3": version: 0.7.4 resolution: "source-map@npm:0.7.4" - checksum: dc0cf3768fe23c345ea8760487f8c97ef6fca8a73c83cd7c9bf2fde8bc2c34adb9c0824d6feb14bc4f9e37fb522e18af621543f1289038a66ac7586da29aa7dc + checksum: 10c0/dc0cf3768fe23c345ea8760487f8c97ef6fca8a73c83cd7c9bf2fde8bc2c34adb9c0824d6feb14bc4f9e37fb522e18af621543f1289038a66ac7586da29aa7dc languageName: node linkType: hard @@ -15186,21 +15098,21 @@ __metadata: resolution: "source-map@npm:0.8.0-beta.0" dependencies: whatwg-url: "npm:^7.0.0" - checksum: fb4d9bde9a9fdb2c29b10e5eae6c71d10e09ef467e1afb75fdec2eb7e11fa5b343a2af553f74f18b695dbc0b81f9da2e9fa3d7a317d5985e9939499ec6087835 + checksum: 10c0/fb4d9bde9a9fdb2c29b10e5eae6c71d10e09ef467e1afb75fdec2eb7e11fa5b343a2af553f74f18b695dbc0b81f9da2e9fa3d7a317d5985e9939499ec6087835 languageName: node linkType: hard "sourcemap-codec@npm:^1.4.8": version: 1.4.8 resolution: "sourcemap-codec@npm:1.4.8" - checksum: f099279fdaae070ff156df7414bbe39aad69cdd615454947ed3e19136bfdfcb4544952685ee73f56e17038f4578091e12b17b283ed8ac013882916594d95b9e6 + checksum: 10c0/f099279fdaae070ff156df7414bbe39aad69cdd615454947ed3e19136bfdfcb4544952685ee73f56e17038f4578091e12b17b283ed8ac013882916594d95b9e6 languageName: node linkType: hard "spdx-exceptions@npm:^2.1.0": version: 2.3.0 resolution: "spdx-exceptions@npm:2.3.0" - checksum: 83089e77d2a91cb6805a5c910a2bedb9e50799da091f532c2ba4150efdef6e53f121523d3e2dc2573a340dc0189e648b03157097f65465b3a0c06da1f18d7e8a + checksum: 10c0/83089e77d2a91cb6805a5c910a2bedb9e50799da091f532c2ba4150efdef6e53f121523d3e2dc2573a340dc0189e648b03157097f65465b3a0c06da1f18d7e8a languageName: node linkType: hard @@ -15210,14 +15122,14 @@ __metadata: dependencies: spdx-exceptions: "npm:^2.1.0" spdx-license-ids: "npm:^3.0.0" - checksum: 965c487e77f4fb173f1c471f3eef4eb44b9f0321adc7f93d95e7620da31faa67d29356eb02523cd7df8a7fc1ec8238773cdbf9e45bd050329d2b26492771b736 + checksum: 10c0/965c487e77f4fb173f1c471f3eef4eb44b9f0321adc7f93d95e7620da31faa67d29356eb02523cd7df8a7fc1ec8238773cdbf9e45bd050329d2b26492771b736 languageName: node linkType: hard "spdx-license-ids@npm:^3.0.0": version: 3.0.15 resolution: "spdx-license-ids@npm:3.0.15" - checksum: 1d44fa43d2024d4533816ceffac983149f9c76214698033496e13f6224d7fe6e61649a2bb9eb6c88b5f7f71bc19cc5f0aed3dba75b430e27c06e0f71cc251959 + checksum: 10c0/1d44fa43d2024d4533816ceffac983149f9c76214698033496e13f6224d7fe6e61649a2bb9eb6c88b5f7f71bc19cc5f0aed3dba75b430e27c06e0f71cc251959 languageName: node linkType: hard @@ -15231,7 +15143,7 @@ __metadata: obuf: "npm:^1.1.2" readable-stream: "npm:^3.0.6" wbuf: "npm:^1.7.3" - checksum: eaf7440fa90724fffc813c386d4a8a7427d967d6e46d7c51d8f8a533d1a6911b9823ea9218703debbae755337e85f110185d7a00ae22ec5c847077b908ce71bb + checksum: 10c0/eaf7440fa90724fffc813c386d4a8a7427d967d6e46d7c51d8f8a533d1a6911b9823ea9218703debbae755337e85f110185d7a00ae22ec5c847077b908ce71bb languageName: node linkType: hard @@ -15244,7 +15156,7 @@ __metadata: http-deceiver: "npm:^1.2.7" select-hose: "npm:^2.0.0" spdy-transport: "npm:^3.0.0" - checksum: 983509c0be9d06fd00bb9dff713c5b5d35d3ffd720db869acdd5ad7aa6fc0e02c2318b58f75328957d8ff772acdf1f7d19382b6047df342044ff3e2d6805ccdf + checksum: 10c0/983509c0be9d06fd00bb9dff713c5b5d35d3ffd720db869acdd5ad7aa6fc0e02c2318b58f75328957d8ff772acdf1f7d19382b6047df342044ff3e2d6805ccdf languageName: node linkType: hard @@ -15253,21 +15165,21 @@ __metadata: resolution: "split-string@npm:3.1.0" dependencies: extend-shallow: "npm:^3.0.0" - checksum: 72d7cd625445c7af215130e1e2bc183013bb9dd48a074eda1d35741e2b0dcb355e6df5b5558a62543a24dcec37dd1d6eb7a6228ff510d3c9de0f3dc1d1da8a70 + checksum: 10c0/72d7cd625445c7af215130e1e2bc183013bb9dd48a074eda1d35741e2b0dcb355e6df5b5558a62543a24dcec37dd1d6eb7a6228ff510d3c9de0f3dc1d1da8a70 languageName: node linkType: hard "split2@npm:^4.0.0, split2@npm:^4.1.0": version: 4.2.0 resolution: "split2@npm:4.2.0" - checksum: b292beb8ce9215f8c642bb68be6249c5a4c7f332fc8ecadae7be5cbdf1ea95addc95f0459ef2e7ad9d45fd1064698a097e4eb211c83e772b49bc0ee423e91534 + checksum: 10c0/b292beb8ce9215f8c642bb68be6249c5a4c7f332fc8ecadae7be5cbdf1ea95addc95f0459ef2e7ad9d45fd1064698a097e4eb211c83e772b49bc0ee423e91534 languageName: node linkType: hard "sprintf-js@npm:~1.0.2": version: 1.0.3 resolution: "sprintf-js@npm:1.0.3" - checksum: ecadcfe4c771890140da5023d43e190b7566d9cf8b2d238600f31bec0fc653f328da4450eb04bd59a431771a8e9cc0e118f0aa3974b683a4981b4e07abc2a5bb + checksum: 10c0/ecadcfe4c771890140da5023d43e190b7566d9cf8b2d238600f31bec0fc653f328da4450eb04bd59a431771a8e9cc0e118f0aa3974b683a4981b4e07abc2a5bb languageName: node linkType: hard @@ -15276,7 +15188,7 @@ __metadata: resolution: "ssri@npm:10.0.5" dependencies: minipass: "npm:^7.0.3" - checksum: b091f2ae92474183c7ac5ed3f9811457e1df23df7a7e70c9476eaa9a0c4a0c8fc190fb45acefbf023ca9ee864dd6754237a697dc52a0fb182afe65d8e77443d8 + checksum: 10c0/b091f2ae92474183c7ac5ed3f9811457e1df23df7a7e70c9476eaa9a0c4a0c8fc190fb45acefbf023ca9ee864dd6754237a697dc52a0fb182afe65d8e77443d8 languageName: node linkType: hard @@ -15285,14 +15197,14 @@ __metadata: resolution: "ssri@npm:8.0.1" dependencies: minipass: "npm:^3.1.1" - checksum: 5cfae216ae02dcd154d1bbed2d0a60038a4b3a2fcaac3c7e47401ff4e058e551ee74cfdba618871bf168cd583db7b8324f94af6747d4303b73cd4c3f6dc5c9c2 + checksum: 10c0/5cfae216ae02dcd154d1bbed2d0a60038a4b3a2fcaac3c7e47401ff4e058e551ee74cfdba618871bf168cd583db7b8324f94af6747d4303b73cd4c3f6dc5c9c2 languageName: node linkType: hard "stable@npm:^0.1.8": version: 0.1.8 resolution: "stable@npm:0.1.8" - checksum: df74b5883075076e78f8e365e4068ecd977af6c09da510cfc3148a303d4b87bc9aa8f7c48feb67ed4ef970b6140bd9eabba2129e28024aa88df5ea0114cba39d + checksum: 10c0/df74b5883075076e78f8e365e4068ecd977af6c09da510cfc3148a303d4b87bc9aa8f7c48feb67ed4ef970b6140bd9eabba2129e28024aa88df5ea0114cba39d languageName: node linkType: hard @@ -15301,7 +15213,7 @@ __metadata: resolution: "stack-generator@npm:2.0.10" dependencies: stackframe: "npm:^1.3.4" - checksum: c3f6f6c580488e65c0fee806a57f6ae4b79e6435f144be471c1f20328a8d9d8492d4f3beed31840f6dae03e2633325e2764fd3aca5c3126a0639e7c9ddfa45ce + checksum: 10c0/c3f6f6c580488e65c0fee806a57f6ae4b79e6435f144be471c1f20328a8d9d8492d4f3beed31840f6dae03e2633325e2764fd3aca5c3126a0639e7c9ddfa45ce languageName: node linkType: hard @@ -15310,14 +15222,14 @@ __metadata: resolution: "stack-utils@npm:2.0.6" dependencies: escape-string-regexp: "npm:^2.0.0" - checksum: 651c9f87667e077584bbe848acaecc6049bc71979f1e9a46c7b920cad4431c388df0f51b8ad7cfd6eed3db97a2878d0fc8b3122979439ea8bac29c61c95eec8a + checksum: 10c0/651c9f87667e077584bbe848acaecc6049bc71979f1e9a46c7b920cad4431c388df0f51b8ad7cfd6eed3db97a2878d0fc8b3122979439ea8bac29c61c95eec8a languageName: node linkType: hard "stackframe@npm:^1.3.4": version: 1.3.4 resolution: "stackframe@npm:1.3.4" - checksum: 18410f7a1e0c5d211a4effa83bdbf24adbe8faa8c34db52e1cd3e89837518c592be60b60d8b7270ac53eeeb8b807cd11b399a41667f6c9abb41059c3ccc8a989 + checksum: 10c0/18410f7a1e0c5d211a4effa83bdbf24adbe8faa8c34db52e1cd3e89837518c592be60b60d8b7270ac53eeeb8b807cd11b399a41667f6c9abb41059c3ccc8a989 languageName: node linkType: hard @@ -15327,7 +15239,7 @@ __metadata: dependencies: source-map: "npm:0.5.6" stackframe: "npm:^1.3.4" - checksum: 0dcc1aa46e364a2b4d1eabce4777fecf337576a11ee3cfc92f07b9ec79ccb76810752431eeb9771289d250d0bb58dbe19a178b96bf7b2e9f773334d03aa96bb9 + checksum: 10c0/0dcc1aa46e364a2b4d1eabce4777fecf337576a11ee3cfc92f07b9ec79ccb76810752431eeb9771289d250d0bb58dbe19a178b96bf7b2e9f773334d03aa96bb9 languageName: node linkType: hard @@ -15338,14 +15250,14 @@ __metadata: error-stack-parser: "npm:^2.0.6" stack-generator: "npm:^2.0.5" stacktrace-gps: "npm:^3.0.4" - checksum: 9a10c222524ca03690bcb27437b39039885223e39320367f2be36e6f750c2d198ae99189869a22c255bf60072631eb609d47e8e33661e95133686904e01121ec + checksum: 10c0/9a10c222524ca03690bcb27437b39039885223e39320367f2be36e6f750c2d198ae99189869a22c255bf60072631eb609d47e8e33661e95133686904e01121ec languageName: node linkType: hard "standard-as-callback@npm:^2.1.0": version: 2.1.0 resolution: "standard-as-callback@npm:2.1.0" - checksum: 012677236e3d3fdc5689d29e64ea8a599331c4babe86956bf92fc5e127d53f85411c5536ee0079c52c43beb0026b5ce7aa1d834dd35dd026e82a15d1bcaead1f + checksum: 10c0/012677236e3d3fdc5689d29e64ea8a599331c4babe86956bf92fc5e127d53f85411c5536ee0079c52c43beb0026b5ce7aa1d834dd35dd026e82a15d1bcaead1f languageName: node linkType: hard @@ -15355,21 +15267,21 @@ __metadata: dependencies: define-property: "npm:^0.2.5" object-copy: "npm:^0.1.0" - checksum: 284f5865a9e19d079f1badbcd70d5f9f82e7a08393f818a220839cd5f71729e89105e1c95322bd28e833161d484cee671380ca443869ae89578eef2bf55c0653 + checksum: 10c0/284f5865a9e19d079f1badbcd70d5f9f82e7a08393f818a220839cd5f71729e89105e1c95322bd28e833161d484cee671380ca443869ae89578eef2bf55c0653 languageName: node linkType: hard "statuses@npm:2.0.1": version: 2.0.1 resolution: "statuses@npm:2.0.1" - checksum: 34378b207a1620a24804ce8b5d230fea0c279f00b18a7209646d5d47e419d1cc23e7cbf33a25a1e51ac38973dc2ac2e1e9c647a8e481ef365f77668d72becfd0 + checksum: 10c0/34378b207a1620a24804ce8b5d230fea0c279f00b18a7209646d5d47e419d1cc23e7cbf33a25a1e51ac38973dc2ac2e1e9c647a8e481ef365f77668d72becfd0 languageName: node linkType: hard "statuses@npm:>= 1.4.0 < 2": version: 1.5.0 resolution: "statuses@npm:1.5.0" - checksum: e433900956357b3efd79b1c547da4d291799ac836960c016d10a98f6a810b1b5c0dcc13b5a7aa609a58239b5190e1ea176ad9221c2157d2fd1c747393e6b2940 + checksum: 10c0/e433900956357b3efd79b1c547da4d291799ac836960c016d10a98f6a810b1b5c0dcc13b5a7aa609a58239b5190e1ea176ad9221c2157d2fd1c747393e6b2940 languageName: node linkType: hard @@ -15378,7 +15290,7 @@ __metadata: resolution: "stop-iteration-iterator@npm:1.0.0" dependencies: internal-slot: "npm:^1.0.4" - checksum: c4158d6188aac510d9e92925b58709207bd94699e9c31186a040c80932a687f84a51356b5895e6dc72710aad83addb9411c22171832c9ae0e6e11b7d61b0dfb9 + checksum: 10c0/c4158d6188aac510d9e92925b58709207bd94699e9c31186a040c80932a687f84a51356b5895e6dc72710aad83addb9411c22171832c9ae0e6e11b7d61b0dfb9 languageName: node linkType: hard @@ -15388,7 +15300,7 @@ __metadata: dependencies: inherits: "npm:~2.0.1" readable-stream: "npm:^2.0.2" - checksum: 485562bd5d962d633ae178449029c6fa2611052e356bdb5668f768544aa4daa94c4f9a97de718f3f30ad98f3cb98a5f396252bb3855aff153c138f79c0e8f6ac + checksum: 10c0/485562bd5d962d633ae178449029c6fa2611052e356bdb5668f768544aa4daa94c4f9a97de718f3f30ad98f3cb98a5f396252bb3855aff153c138f79c0e8f6ac languageName: node linkType: hard @@ -15401,14 +15313,14 @@ __metadata: readable-stream: "npm:^2.3.6" to-arraybuffer: "npm:^1.0.0" xtend: "npm:^4.0.0" - checksum: fbe7d327a29216bbabe88d3819bb8f7a502f11eeacf3212579e5af1f76fa7283f6ffa66134ab7d80928070051f571d1029e85f65ce3369fffd4c4df3669446c4 + checksum: 10c0/fbe7d327a29216bbabe88d3819bb8f7a502f11eeacf3212579e5af1f76fa7283f6ffa66134ab7d80928070051f571d1029e85f65ce3369fffd4c4df3669446c4 languageName: node linkType: hard "string-argv@npm:0.3.2": version: 0.3.2 resolution: "string-argv@npm:0.3.2" - checksum: 75c02a83759ad1722e040b86823909d9a2fc75d15dd71ec4b537c3560746e33b5f5a07f7332d1e3f88319909f82190843aa2f0a0d8c8d591ec08e93d5b8dec82 + checksum: 10c0/75c02a83759ad1722e040b86823909d9a2fc75d15dd71ec4b537c3560746e33b5f5a07f7332d1e3f88319909f82190843aa2f0a0d8c8d591ec08e93d5b8dec82 languageName: node linkType: hard @@ -15418,7 +15330,7 @@ __metadata: dependencies: char-regex: "npm:^1.0.2" strip-ansi: "npm:^6.0.0" - checksum: 1cd77409c3d7db7bc59406f6bcc9ef0783671dcbabb23597a1177c166906ef2ee7c8290f78cae73a8aec858768f189d2cb417797df5e15ec4eb5e16b3346340c + checksum: 10c0/1cd77409c3d7db7bc59406f6bcc9ef0783671dcbabb23597a1177c166906ef2ee7c8290f78cae73a8aec858768f189d2cb417797df5e15ec4eb5e16b3346340c languageName: node linkType: hard @@ -15429,7 +15341,7 @@ __metadata: emoji-regex: "npm:^8.0.0" is-fullwidth-code-point: "npm:^3.0.0" strip-ansi: "npm:^6.0.1" - checksum: 1e525e92e5eae0afd7454086eed9c818ee84374bb80328fc41217ae72ff5f065ef1c9d7f72da41de40c75fa8bb3dee63d92373fd492c84260a552c636392a47b + checksum: 10c0/1e525e92e5eae0afd7454086eed9c818ee84374bb80328fc41217ae72ff5f065ef1c9d7f72da41de40c75fa8bb3dee63d92373fd492c84260a552c636392a47b languageName: node linkType: hard @@ -15440,7 +15352,7 @@ __metadata: emoji-regex: "npm:^7.0.1" is-fullwidth-code-point: "npm:^2.0.0" strip-ansi: "npm:^5.1.0" - checksum: 85fa0d4f106e7999bb68c1c640c76fa69fb8c069dab75b009e29c123914e2d3b532e6cfa4b9d1bd913176fc83dedd7a2d7bf40d21a81a8a1978432cedfb65b91 + checksum: 10c0/85fa0d4f106e7999bb68c1c640c76fa69fb8c069dab75b009e29c123914e2d3b532e6cfa4b9d1bd913176fc83dedd7a2d7bf40d21a81a8a1978432cedfb65b91 languageName: node linkType: hard @@ -15451,7 +15363,7 @@ __metadata: eastasianwidth: "npm:^0.2.0" emoji-regex: "npm:^9.2.2" strip-ansi: "npm:^7.0.1" - checksum: ab9c4264443d35b8b923cbdd513a089a60de339216d3b0ed3be3ba57d6880e1a192b70ae17225f764d7adbf5994e9bb8df253a944736c15a0240eff553c678ca + checksum: 10c0/ab9c4264443d35b8b923cbdd513a089a60de339216d3b0ed3be3ba57d6880e1a192b70ae17225f764d7adbf5994e9bb8df253a944736c15a0240eff553c678ca languageName: node linkType: hard @@ -15462,23 +15374,24 @@ __metadata: emoji-regex: "npm:^10.3.0" get-east-asian-width: "npm:^1.0.0" strip-ansi: "npm:^7.1.0" - checksum: 8ffaeeccf4a56ccce5b6235d0b99ee3a581e3e3e5d453708efe7aa8e264fa3a858b4fe2244310cb71c6a20d8c05921cedc8b2ccd88cbaad9f5c92051ff68edc6 + checksum: 10c0/8ffaeeccf4a56ccce5b6235d0b99ee3a581e3e3e5d453708efe7aa8e264fa3a858b4fe2244310cb71c6a20d8c05921cedc8b2ccd88cbaad9f5c92051ff68edc6 languageName: node linkType: hard -"string.prototype.matchall@npm:^4.0.6, string.prototype.matchall@npm:^4.0.8": - version: 4.0.8 - resolution: "string.prototype.matchall@npm:4.0.8" +"string.prototype.matchall@npm:^4.0.10, string.prototype.matchall@npm:^4.0.6": + version: 4.0.10 + resolution: "string.prototype.matchall@npm:4.0.10" dependencies: call-bind: "npm:^1.0.2" - define-properties: "npm:^1.1.4" - es-abstract: "npm:^1.20.4" - get-intrinsic: "npm:^1.1.3" + define-properties: "npm:^1.2.0" + es-abstract: "npm:^1.22.1" + get-intrinsic: "npm:^1.2.1" has-symbols: "npm:^1.0.3" - internal-slot: "npm:^1.0.3" - regexp.prototype.flags: "npm:^1.4.3" + internal-slot: "npm:^1.0.5" + regexp.prototype.flags: "npm:^1.5.0" + set-function-name: "npm:^2.0.0" side-channel: "npm:^1.0.4" - checksum: 644523d05c1ee93bab7474e999a5734ee5f6ad2d7ad24ed6ea8706c270dc92b352bde0f2a5420bfbeed54e28cb6a770c3800e1988a5267a70fd5e677c7750abc + checksum: 10c0/cd7495fb0de16d43efeee3887b98701941f3817bd5f09351ad1825b023d307720c86394d56d56380563d97767ab25bf5448db239fcecbb85c28e2180f23e324a languageName: node linkType: hard @@ -15489,7 +15402,7 @@ __metadata: call-bind: "npm:^1.0.2" define-properties: "npm:^1.2.0" es-abstract: "npm:^1.22.1" - checksum: 4f76c583908bcde9a71208ddff38f67f24c9ec8093631601666a0df8b52fad44dad2368c78895ce83eb2ae8e7068294cc96a02fc971ab234e4d5c9bb61ea4e34 + checksum: 10c0/4f76c583908bcde9a71208ddff38f67f24c9ec8093631601666a0df8b52fad44dad2368c78895ce83eb2ae8e7068294cc96a02fc971ab234e4d5c9bb61ea4e34 languageName: node linkType: hard @@ -15500,7 +15413,7 @@ __metadata: call-bind: "npm:^1.0.2" define-properties: "npm:^1.2.0" es-abstract: "npm:^1.22.1" - checksum: 53c24911c7c4d8d65f5ef5322de23a3d5b6b4db73273e05871d5ab4571ae5638f38f7f19d71d09116578fb060e5a145cc6a208af2d248c8baf7a34f44d32ce57 + checksum: 10c0/53c24911c7c4d8d65f5ef5322de23a3d5b6b4db73273e05871d5ab4571ae5638f38f7f19d71d09116578fb060e5a145cc6a208af2d248c8baf7a34f44d32ce57 languageName: node linkType: hard @@ -15511,7 +15424,7 @@ __metadata: call-bind: "npm:^1.0.2" define-properties: "npm:^1.2.0" es-abstract: "npm:^1.22.1" - checksum: 0bcf391b41ea16d4fda9c9953d0a7075171fe090d33b4cf64849af94944c50862995672ac03e0c5dba2940a213ad7f53515a668dac859ce22a0276289ae5cf4f + checksum: 10c0/0bcf391b41ea16d4fda9c9953d0a7075171fe090d33b4cf64849af94944c50862995672ac03e0c5dba2940a213ad7f53515a668dac859ce22a0276289ae5cf4f languageName: node linkType: hard @@ -15520,7 +15433,7 @@ __metadata: resolution: "string_decoder@npm:1.3.0" dependencies: safe-buffer: "npm:~5.2.0" - checksum: 810614ddb030e271cd591935dcd5956b2410dd079d64ff92a1844d6b7588bf992b3e1b69b0f4d34a3e06e0bd73046ac646b5264c1987b20d0601f81ef35d731d + checksum: 10c0/810614ddb030e271cd591935dcd5956b2410dd079d64ff92a1844d6b7588bf992b3e1b69b0f4d34a3e06e0bd73046ac646b5264c1987b20d0601f81ef35d731d languageName: node linkType: hard @@ -15529,7 +15442,7 @@ __metadata: resolution: "string_decoder@npm:1.1.1" dependencies: safe-buffer: "npm:~5.1.0" - checksum: b4f89f3a92fd101b5653ca3c99550e07bdf9e13b35037e9e2a1c7b47cec4e55e06ff3fc468e314a0b5e80bfbaf65c1ca5a84978764884ae9413bec1fc6ca924e + checksum: 10c0/b4f89f3a92fd101b5653ca3c99550e07bdf9e13b35037e9e2a1c7b47cec4e55e06ff3fc468e314a0b5e80bfbaf65c1ca5a84978764884ae9413bec1fc6ca924e languageName: node linkType: hard @@ -15540,7 +15453,7 @@ __metadata: get-own-enumerable-property-symbols: "npm:^3.0.0" is-obj: "npm:^1.0.1" is-regexp: "npm:^1.0.0" - checksum: ba8078f84128979ee24b3de9a083489cbd3c62cb8572a061b47d4d82601a8ae4b4d86fa8c54dd955593da56bb7c16a6de51c27221fdc6b7139bb4f29d815f35b + checksum: 10c0/ba8078f84128979ee24b3de9a083489cbd3c62cb8572a061b47d4d82601a8ae4b4d86fa8c54dd955593da56bb7c16a6de51c27221fdc6b7139bb4f29d815f35b languageName: node linkType: hard @@ -15549,7 +15462,7 @@ __metadata: resolution: "stringz@npm:2.1.0" dependencies: char-regex: "npm:^1.0.2" - checksum: bc4ff36d98469f07cd7d2221067d9480b3460c3b1266585a1dccae0aee75cd3ae1fe72f23816af017585965791e410b19d8f73a75ad7189f2e836c9ee48c49f9 + checksum: 10c0/bc4ff36d98469f07cd7d2221067d9480b3460c3b1266585a1dccae0aee75cd3ae1fe72f23816af017585965791e410b19d8f73a75ad7189f2e836c9ee48c49f9 languageName: node linkType: hard @@ -15558,7 +15471,7 @@ __metadata: resolution: "strip-ansi@npm:6.0.1" dependencies: ansi-regex: "npm:^5.0.1" - checksum: 1ae5f212a126fe5b167707f716942490e3933085a5ff6c008ab97ab2f272c8025d3aa218b7bd6ab25729ca20cc81cddb252102f8751e13482a5199e873680952 + checksum: 10c0/1ae5f212a126fe5b167707f716942490e3933085a5ff6c008ab97ab2f272c8025d3aa218b7bd6ab25729ca20cc81cddb252102f8751e13482a5199e873680952 languageName: node linkType: hard @@ -15567,7 +15480,7 @@ __metadata: resolution: "strip-ansi@npm:3.0.1" dependencies: ansi-regex: "npm:^2.0.0" - checksum: f6e7fbe8e700105dccf7102eae20e4f03477537c74b286fd22cfc970f139002ed6f0d9c10d0e21aa9ed9245e0fa3c9275930e8795c5b947da136e4ecb644a70f + checksum: 10c0/f6e7fbe8e700105dccf7102eae20e4f03477537c74b286fd22cfc970f139002ed6f0d9c10d0e21aa9ed9245e0fa3c9275930e8795c5b947da136e4ecb644a70f languageName: node linkType: hard @@ -15576,7 +15489,7 @@ __metadata: resolution: "strip-ansi@npm:5.2.0" dependencies: ansi-regex: "npm:^4.1.0" - checksum: de4658c8a097ce3b15955bc6008f67c0790f85748bdc025b7bc8c52c7aee94bc4f9e50624516150ed173c3db72d851826cd57e7a85fe4e4bb6dbbebd5d297fdf + checksum: 10c0/de4658c8a097ce3b15955bc6008f67c0790f85748bdc025b7bc8c52c7aee94bc4f9e50624516150ed173c3db72d851826cd57e7a85fe4e4bb6dbbebd5d297fdf languageName: node linkType: hard @@ -15585,49 +15498,49 @@ __metadata: resolution: "strip-ansi@npm:7.1.0" dependencies: ansi-regex: "npm:^6.0.1" - checksum: a198c3762e8832505328cbf9e8c8381de14a4fa50a4f9b2160138158ea88c0f5549fb50cb13c651c3088f47e63a108b34622ec18c0499b6c8c3a5ddf6b305ac4 + checksum: 10c0/a198c3762e8832505328cbf9e8c8381de14a4fa50a4f9b2160138158ea88c0f5549fb50cb13c651c3088f47e63a108b34622ec18c0499b6c8c3a5ddf6b305ac4 languageName: node linkType: hard "strip-bom@npm:^3.0.0": version: 3.0.0 resolution: "strip-bom@npm:3.0.0" - checksum: 51201f50e021ef16672593d7434ca239441b7b760e905d9f33df6e4f3954ff54ec0e0a06f100d028af0982d6f25c35cd5cda2ce34eaebccd0250b8befb90d8f1 + checksum: 10c0/51201f50e021ef16672593d7434ca239441b7b760e905d9f33df6e4f3954ff54ec0e0a06f100d028af0982d6f25c35cd5cda2ce34eaebccd0250b8befb90d8f1 languageName: node linkType: hard "strip-bom@npm:^4.0.0": version: 4.0.0 resolution: "strip-bom@npm:4.0.0" - checksum: 26abad1172d6bc48985ab9a5f96c21e440f6e7e476686de49be813b5a59b3566dccb5c525b831ec54fe348283b47f3ffb8e080bc3f965fde12e84df23f6bb7ef + checksum: 10c0/26abad1172d6bc48985ab9a5f96c21e440f6e7e476686de49be813b5a59b3566dccb5c525b831ec54fe348283b47f3ffb8e080bc3f965fde12e84df23f6bb7ef languageName: node linkType: hard "strip-comments@npm:^2.0.1": version: 2.0.1 resolution: "strip-comments@npm:2.0.1" - checksum: 984321b1ec47a531bdcfddd87f217590934e2d2f142198a080ec88588280239a5b58a81ca780730679b6195e52afef83673c6d6466c07c2277f71f44d7d9553d + checksum: 10c0/984321b1ec47a531bdcfddd87f217590934e2d2f142198a080ec88588280239a5b58a81ca780730679b6195e52afef83673c6d6466c07c2277f71f44d7d9553d languageName: node linkType: hard "strip-eof@npm:^1.0.0": version: 1.0.0 resolution: "strip-eof@npm:1.0.0" - checksum: f336beed8622f7c1dd02f2cbd8422da9208fae81daf184f73656332899978919d5c0ca84dc6cfc49ad1fc4dd7badcde5412a063cf4e0d7f8ed95a13a63f68f45 + checksum: 10c0/f336beed8622f7c1dd02f2cbd8422da9208fae81daf184f73656332899978919d5c0ca84dc6cfc49ad1fc4dd7badcde5412a063cf4e0d7f8ed95a13a63f68f45 languageName: node linkType: hard "strip-final-newline@npm:^2.0.0": version: 2.0.0 resolution: "strip-final-newline@npm:2.0.0" - checksum: bddf8ccd47acd85c0e09ad7375409d81653f645fda13227a9d459642277c253d877b68f2e5e4d819fe75733b0e626bac7e954c04f3236f6d196f79c94fa4a96f + checksum: 10c0/bddf8ccd47acd85c0e09ad7375409d81653f645fda13227a9d459642277c253d877b68f2e5e4d819fe75733b0e626bac7e954c04f3236f6d196f79c94fa4a96f languageName: node linkType: hard "strip-final-newline@npm:^3.0.0": version: 3.0.0 resolution: "strip-final-newline@npm:3.0.0" - checksum: a771a17901427bac6293fd416db7577e2bc1c34a19d38351e9d5478c3c415f523f391003b42ed475f27e33a78233035df183525395f731d3bfb8cdcbd4da08ce + checksum: 10c0/a771a17901427bac6293fd416db7577e2bc1c34a19d38351e9d5478c3c415f523f391003b42ed475f27e33a78233035df183525395f731d3bfb8cdcbd4da08ce languageName: node linkType: hard @@ -15636,26 +15549,26 @@ __metadata: resolution: "strip-indent@npm:3.0.0" dependencies: min-indent: "npm:^1.0.0" - checksum: ae0deaf41c8d1001c5d4fbe16cb553865c1863da4fae036683b474fa926af9fc121e155cb3fc57a68262b2ae7d5b8420aa752c97a6428c315d00efe2a3875679 + checksum: 10c0/ae0deaf41c8d1001c5d4fbe16cb553865c1863da4fae036683b474fa926af9fc121e155cb3fc57a68262b2ae7d5b8420aa752c97a6428c315d00efe2a3875679 languageName: node linkType: hard "strip-json-comments@npm:^3.1.1": version: 3.1.1 resolution: "strip-json-comments@npm:3.1.1" - checksum: 9681a6257b925a7fa0f285851c0e613cc934a50661fa7bb41ca9cbbff89686bb4a0ee366e6ecedc4daafd01e83eee0720111ab294366fe7c185e935475ebcecd + checksum: 10c0/9681a6257b925a7fa0f285851c0e613cc934a50661fa7bb41ca9cbbff89686bb4a0ee366e6ecedc4daafd01e83eee0720111ab294366fe7c185e935475ebcecd languageName: node linkType: hard -"stylehacks@npm:^6.0.2": - version: 6.0.2 - resolution: "stylehacks@npm:6.0.2" +"stylehacks@npm:^6.0.3": + version: 6.0.3 + resolution: "stylehacks@npm:6.0.3" dependencies: - browserslist: "npm:^4.22.2" + browserslist: "npm:^4.23.0" postcss-selector-parser: "npm:^6.0.15" peerDependencies: postcss: ^8.4.31 - checksum: 658cac8b28edcb94d1db67808ab3aaa511cb1b9293594fc95607ee42ac4f57e742d9a1fa3ff5d5849db692971dc2a310e9ac1ed0bd4ea4bc48c80f5a6ef823fc + checksum: 10c0/780c147a695d77794f60e993824f3c67f1cde04905163e5a1b50ba8a1715ddda789cfdf86d46711713afe4a38252d5e3f6d79b103dc29d3b6f3749c24749de1d languageName: node linkType: hard @@ -15672,7 +15585,7 @@ __metadata: peerDependenciesMeta: postcss: optional: true - checksum: 9ddc92e7a5fa131b41cee1ab1f69251934ca35c0e2803dc613329cdead7b8b27d8457048a63db29f61a1442e7cdef14207f88a3abce00ec53fdefe0d604f7de3 + checksum: 10c0/9ddc92e7a5fa131b41cee1ab1f69251934ca35c0e2803dc613329cdead7b8b27d8457048a63db29f61a1442e7cdef14207f88a3abce00ec53fdefe0d604f7de3 languageName: node linkType: hard @@ -15681,7 +15594,7 @@ __metadata: resolution: "stylelint-config-recommended@npm:14.0.0" peerDependencies: stylelint: ^16.0.0 - checksum: 4ad15c36e8c03291aa7bbe4b672ebfb0f46ab698e7580a0da8d29644046d102d7f31dbf00a2a6eab94b565c390c6fb0d5d528737b83ac3acf6dc2ef085a90b11 + checksum: 10c0/4ad15c36e8c03291aa7bbe4b672ebfb0f46ab698e7580a0da8d29644046d102d7f31dbf00a2a6eab94b565c390c6fb0d5d528737b83ac3acf6dc2ef085a90b11 languageName: node linkType: hard @@ -15697,7 +15610,7 @@ __metadata: peerDependenciesMeta: postcss: optional: true - checksum: 4abf317676184f4aaace6ce72b9fc9e2dffe051d43dd5637afc5803b062ea381e2807ae983c045dff22e96af58388a8b1fe9a8bdda9f97bc3660280cf24fb4d3 + checksum: 10c0/4abf317676184f4aaace6ce72b9fc9e2dffe051d43dd5637afc5803b062ea381e2807ae983c045dff22e96af58388a8b1fe9a8bdda9f97bc3660280cf24fb4d3 languageName: node linkType: hard @@ -15708,7 +15621,7 @@ __metadata: stylelint-config-recommended: "npm:^14.0.0" peerDependencies: stylelint: ^16.1.0 - checksum: 1fc9adddfc5cf0a1d7a443182a0731712a3950ace72a24081b4ede2b0bb6fc1eebd003c009f1d8d06c3a64ba9b31b0ed12512db2f91c8fa549238d8341580e4b + checksum: 10c0/1fc9adddfc5cf0a1d7a443182a0731712a3950ace72a24081b4ede2b0bb6fc1eebd003c009f1d8d06c3a64ba9b31b0ed12512db2f91c8fa549238d8341580e4b languageName: node linkType: hard @@ -15723,13 +15636,13 @@ __metadata: postcss-value-parser: "npm:^4.2.0" peerDependencies: stylelint: ^16.0.2 - checksum: f5e971d19ef6879ae5c18cb8fba8033fe7928f241178e6afd80357cc080d2feddfd6f7fe564aaa696008aa10345df5885d9a4471c926b3e266088e015927782e + checksum: 10c0/f5e971d19ef6879ae5c18cb8fba8033fe7928f241178e6afd80357cc080d2feddfd6f7fe564aaa696008aa10345df5885d9a4471c926b3e266088e015927782e languageName: node linkType: hard "stylelint@npm:^16.0.2": - version: 16.2.0 - resolution: "stylelint@npm:16.2.0" + version: 16.2.1 + resolution: "stylelint@npm:16.2.1" dependencies: "@csstools/css-parser-algorithms": "npm:^2.5.0" "@csstools/css-tokenizer": "npm:^2.2.3" @@ -15771,21 +15684,21 @@ __metadata: write-file-atomic: "npm:^5.0.1" bin: stylelint: bin/stylelint.mjs - checksum: 6fdf0451833c11b18c9aa502f687febd6881a912ac94f39d509b894b0f74ccb636f3dac2991c69cc82dc6190731cc2fa48e307fed477d2a0fce57067cd22b572 + checksum: 10c0/eeaba06885e542c832e5cffc07b2d0dabdc5a72e6ad4d6cb3d01dcc260c29a712b0b935cbd40e059abd68a100e0563fbc617fc4c9bef3b14ecaf6eea651d9d9d languageName: node linkType: hard "stylis@npm:4.2.0": version: 4.2.0 resolution: "stylis@npm:4.2.0" - checksum: a7128ad5a8ed72652c6eba46bed4f416521bc9745a460ef5741edc725252cebf36ee45e33a8615a7057403c93df0866ab9ee955960792db210bb80abd5ac6543 + checksum: 10c0/a7128ad5a8ed72652c6eba46bed4f416521bc9745a460ef5741edc725252cebf36ee45e33a8615a7057403c93df0866ab9ee955960792db210bb80abd5ac6543 languageName: node linkType: hard "substring-trie@npm:^1.0.2": version: 1.0.2 resolution: "substring-trie@npm:1.0.2" - checksum: ee1a65a6282f57fc4a97ded6dd057ffc597516ea7a4b0ae7374c0c0313ca4d9f3cb0652ae0294ca52232f2d5dedf13c27e9e442666d8ad51bcf91877cd18c092 + checksum: 10c0/ee1a65a6282f57fc4a97ded6dd057ffc597516ea7a4b0ae7374c0c0313ca4d9f3cb0652ae0294ca52232f2d5dedf13c27e9e442666d8ad51bcf91877cd18c092 languageName: node linkType: hard @@ -15794,7 +15707,7 @@ __metadata: resolution: "supports-color@npm:5.5.0" dependencies: has-flag: "npm:^3.0.0" - checksum: 6ae5ff319bfbb021f8a86da8ea1f8db52fac8bd4d499492e30ec17095b58af11f0c55f8577390a749b1c4dde691b6a0315dab78f5f54c9b3d83f8fb5905c1c05 + checksum: 10c0/6ae5ff319bfbb021f8a86da8ea1f8db52fac8bd4d499492e30ec17095b58af11f0c55f8577390a749b1c4dde691b6a0315dab78f5f54c9b3d83f8fb5905c1c05 languageName: node linkType: hard @@ -15803,7 +15716,7 @@ __metadata: resolution: "supports-color@npm:6.1.0" dependencies: has-flag: "npm:^3.0.0" - checksum: ebf2befe41b55932c6d77192b91775f1403c389440ce2dab6f72663cf32ee87a1d9dea3512131a18e45ccac91424a8873b266142828489d0206d65ee93d224b6 + checksum: 10c0/ebf2befe41b55932c6d77192b91775f1403c389440ce2dab6f72663cf32ee87a1d9dea3512131a18e45ccac91424a8873b266142828489d0206d65ee93d224b6 languageName: node linkType: hard @@ -15812,7 +15725,7 @@ __metadata: resolution: "supports-color@npm:7.2.0" dependencies: has-flag: "npm:^4.0.0" - checksum: afb4c88521b8b136b5f5f95160c98dee7243dc79d5432db7efc27efb219385bbc7d9427398e43dd6cc730a0f87d5085ce1652af7efbe391327bc0a7d0f7fc124 + checksum: 10c0/afb4c88521b8b136b5f5f95160c98dee7243dc79d5432db7efc27efb219385bbc7d9427398e43dd6cc730a0f87d5085ce1652af7efbe391327bc0a7d0f7fc124 languageName: node linkType: hard @@ -15821,7 +15734,7 @@ __metadata: resolution: "supports-color@npm:8.1.1" dependencies: has-flag: "npm:^4.0.0" - checksum: ea1d3c275dd604c974670f63943ed9bd83623edc102430c05adb8efc56ba492746b6e95386e7831b872ec3807fd89dd8eb43f735195f37b5ec343e4234cc7e89 + checksum: 10c0/ea1d3c275dd604c974670f63943ed9bd83623edc102430c05adb8efc56ba492746b6e95386e7831b872ec3807fd89dd8eb43f735195f37b5ec343e4234cc7e89 languageName: node linkType: hard @@ -15831,28 +15744,28 @@ __metadata: dependencies: has-flag: "npm:^4.0.0" supports-color: "npm:^7.0.0" - checksum: 36aaa55e67645dded8e0f846fd81d7dd05ce82ea81e62347f58d86213577eb627b2b45298656ce7a70e7155e39f071d0d3f83be91e112aed801ebaa8db1ef1d0 + checksum: 10c0/36aaa55e67645dded8e0f846fd81d7dd05ce82ea81e62347f58d86213577eb627b2b45298656ce7a70e7155e39f071d0d3f83be91e112aed801ebaa8db1ef1d0 languageName: node linkType: hard "supports-preserve-symlinks-flag@npm:^1.0.0": version: 1.0.0 resolution: "supports-preserve-symlinks-flag@npm:1.0.0" - checksum: 6c4032340701a9950865f7ae8ef38578d8d7053f5e10518076e6554a9381fa91bd9c6850193695c141f32b21f979c985db07265a758867bac95de05f7d8aeb39 + checksum: 10c0/6c4032340701a9950865f7ae8ef38578d8d7053f5e10518076e6554a9381fa91bd9c6850193695c141f32b21f979c985db07265a758867bac95de05f7d8aeb39 languageName: node linkType: hard "svg-parser@npm:^2.0.2": version: 2.0.4 resolution: "svg-parser@npm:2.0.4" - checksum: 02f6cb155dd7b63ebc2f44f36365bc294543bebb81b614b7628f1af3c54ab64f7e1cec20f06e252bf95bdde78441ae295a412c68ad1678f16a6907d924512b7a + checksum: 10c0/02f6cb155dd7b63ebc2f44f36365bc294543bebb81b614b7628f1af3c54ab64f7e1cec20f06e252bf95bdde78441ae295a412c68ad1678f16a6907d924512b7a languageName: node linkType: hard "svg-tags@npm:^1.0.0": version: 1.0.0 resolution: "svg-tags@npm:1.0.0" - checksum: 5867e29e8f431bf7aecf5a244d1af5725f80a1086187dbc78f26d8433b5e96b8fe9361aeb10d1699ff483b9afec785a10916b9312fe9d734d1a7afd48226c954 + checksum: 10c0/5867e29e8f431bf7aecf5a244d1af5725f80a1086187dbc78f26d8433b5e96b8fe9361aeb10d1699ff483b9afec785a10916b9312fe9d734d1a7afd48226c954 languageName: node linkType: hard @@ -15875,7 +15788,7 @@ __metadata: util.promisify: "npm:~1.0.0" bin: svgo: ./bin/svgo - checksum: 261a82b08acf63accd7a54b47b4ffcd2fc7e7d7f8efef3cbc61184583b24b4c5434656004c30190302821af0f6d7b047eac730b0dcdab5d179e6a74383ccc776 + checksum: 10c0/261a82b08acf63accd7a54b47b4ffcd2fc7e7d7f8efef3cbc61184583b24b4c5434656004c30190302821af0f6d7b047eac730b0dcdab5d179e6a74383ccc776 languageName: node linkType: hard @@ -15892,24 +15805,14 @@ __metadata: picocolors: "npm:^1.0.0" bin: svgo: ./bin/svgo - checksum: 28fa9061ccbcf2e3616d48d1feb613aaa05f8f290a329beb0e585914f1864385152934a7d4d683a4609fafbae3d51666633437c359c5c5ef74fb58ad09092a7c + checksum: 10c0/28fa9061ccbcf2e3616d48d1feb613aaa05f8f290a329beb0e585914f1864385152934a7d4d683a4609fafbae3d51666633437c359c5c5ef74fb58ad09092a7c languageName: node linkType: hard "symbol-tree@npm:^3.2.4": version: 3.2.4 resolution: "symbol-tree@npm:3.2.4" - checksum: dfbe201ae09ac6053d163578778c53aa860a784147ecf95705de0cd23f42c851e1be7889241495e95c37cabb058edb1052f141387bef68f705afc8f9dd358509 - languageName: node - linkType: hard - -"synckit@npm:^0.8.6": - version: 0.8.6 - resolution: "synckit@npm:0.8.6" - dependencies: - "@pkgr/utils": "npm:^2.4.2" - tslib: "npm:^2.6.2" - checksum: 200528062e3915a0190a4c6b1e01436fcfdf812e2e8d977746746f3998bb4182d758af760e51b06a64f8323e705735aff7b4b3efc4a0ab5f75eaccc044a8cfcc + checksum: 10c0/dfbe201ae09ac6053d163578778c53aa860a784147ecf95705de0cd23f42c851e1be7889241495e95c37cabb058edb1052f141387bef68f705afc8f9dd358509 languageName: node linkType: hard @@ -15922,21 +15825,21 @@ __metadata: slice-ansi: "npm:^4.0.0" string-width: "npm:^4.2.3" strip-ansi: "npm:^6.0.1" - checksum: 591ed84b2438b01c9bc02248e2238e21e8bfb73654bc5acca0d469053eb39be3db2f57d600dcf08ac983b6f50f80842c44612c03877567c2afee3aec4a033e5f + checksum: 10c0/591ed84b2438b01c9bc02248e2238e21e8bfb73654bc5acca0d469053eb39be3db2f57d600dcf08ac983b6f50f80842c44612c03877567c2afee3aec4a033e5f languageName: node linkType: hard "tapable@npm:^1.0, tapable@npm:^1.0.0, tapable@npm:^1.1.3": version: 1.1.3 resolution: "tapable@npm:1.1.3" - checksum: c9f0265e55e45821ec672b9b9ee8a35d95bf3ea6b352199f8606a2799018e89cfe4433c554d424b31fc67c4be26b05d4f36dc3c607def416fdb2514cd63dba50 + checksum: 10c0/c9f0265e55e45821ec672b9b9ee8a35d95bf3ea6b352199f8606a2799018e89cfe4433c554d424b31fc67c4be26b05d4f36dc3c607def416fdb2514cd63dba50 languageName: node linkType: hard "tapable@npm:^2.2.0": version: 2.2.1 resolution: "tapable@npm:2.2.1" - checksum: bc40e6efe1e554d075469cedaba69a30eeb373552aaf41caeaaa45bf56ffacc2674261b106245bd566b35d8f3329b52d838e851ee0a852120acae26e622925c9 + checksum: 10c0/bc40e6efe1e554d075469cedaba69a30eeb373552aaf41caeaaa45bf56ffacc2674261b106245bd566b35d8f3329b52d838e851ee0a852120acae26e622925c9 languageName: node linkType: hard @@ -15950,7 +15853,7 @@ __metadata: minizlib: "npm:^2.1.1" mkdirp: "npm:^1.0.3" yallist: "npm:^4.0.0" - checksum: 02ca064a1a6b4521fef88c07d389ac0936730091f8c02d30ea60d472e0378768e870769ab9e986d87807bfee5654359cf29ff4372746cc65e30cbddc352660d8 + checksum: 10c0/02ca064a1a6b4521fef88c07d389ac0936730091f8c02d30ea60d472e0378768e870769ab9e986d87807bfee5654359cf29ff4372746cc65e30cbddc352660d8 languageName: node linkType: hard @@ -15959,14 +15862,14 @@ __metadata: resolution: "tdigest@npm:0.1.2" dependencies: bintrees: "npm:1.0.2" - checksum: 10187b8144b112fcdfd3a5e4e9068efa42c990b1e30cd0d4f35ee8f58f16d1b41bc587e668fa7a6f6ca31308961cbd06cd5d4a4ae1dc388335902ae04f7d57df + checksum: 10c0/10187b8144b112fcdfd3a5e4e9068efa42c990b1e30cd0d4f35ee8f58f16d1b41bc587e668fa7a6f6ca31308961cbd06cd5d4a4ae1dc388335902ae04f7d57df languageName: node linkType: hard "temp-dir@npm:^2.0.0": version: 2.0.0 resolution: "temp-dir@npm:2.0.0" - checksum: b1df969e3f3f7903f3426861887ed76ba3b495f63f6d0c8e1ce22588679d9384d336df6064210fda14e640ed422e2a17d5c40d901f60e161c99482d723f4d309 + checksum: 10c0/b1df969e3f3f7903f3426861887ed76ba3b495f63f6d0c8e1ce22588679d9384d336df6064210fda14e640ed422e2a17d5c40d901f60e161c99482d723f4d309 languageName: node linkType: hard @@ -15978,7 +15881,7 @@ __metadata: temp-dir: "npm:^2.0.0" type-fest: "npm:^0.16.0" unique-string: "npm:^2.0.0" - checksum: ca0882276732d1313b85006b0427620cb4a8d7a57738a2311a72befae60ed152be7d5b41b951dcb447a01a35404bed76f33eb4e37c55263cd7f807eee1187f8f + checksum: 10c0/ca0882276732d1313b85006b0427620cb4a8d7a57738a2311a72befae60ed152be7d5b41b951dcb447a01a35404bed76f33eb4e37c55263cd7f807eee1187f8f languageName: node linkType: hard @@ -15997,7 +15900,7 @@ __metadata: webpack-sources: "npm:^1.4.3" peerDependencies: webpack: ^4.0.0 || ^5.0.0 - checksum: 52bd036b72b596b162e65dce314f1ee7ba1e82b97200d919b61ad50592dc72608b5fe50d7e3f6c0934e42183dfc746b98b922c9e1d00d75253933f799687fa4b + checksum: 10c0/52bd036b72b596b162e65dce314f1ee7ba1e82b97200d919b61ad50592dc72608b5fe50d7e3f6c0934e42183dfc746b98b922c9e1d00d75253933f799687fa4b languageName: node linkType: hard @@ -16011,14 +15914,14 @@ __metadata: source-map-support: "npm:~0.5.20" bin: terser: bin/terser - checksum: 39c6687609f5b9061f2fb82bee02d2f9d7756fcb5bd50c67da1482f52cf5977e03e0c5df5cb4ce17e549428024c8859075137c461ec4a9ae8cf91a505759255a + checksum: 10c0/39c6687609f5b9061f2fb82bee02d2f9d7756fcb5bd50c67da1482f52cf5977e03e0c5df5cb4ce17e549428024c8859075137c461ec4a9ae8cf91a505759255a languageName: node linkType: hard "tesseract.js-core@npm:^2.2.0": version: 2.2.0 resolution: "tesseract.js-core@npm:2.2.0" - checksum: 9ef569529f1ee96f8bf18388ef086d4940d3f02d28b4252df133a9bd36f6a9d140085e77a12ff1963cf9b4cd85bd1c644b61eca266ecfc51bb83adb30a1f11e3 + checksum: 10c0/9ef569529f1ee96f8bf18388ef086d4940d3f02d28b4252df133a9bd36f6a9d140085e77a12ff1963cf9b4cd85bd1c644b61eca266ecfc51bb83adb30a1f11e3 languageName: node linkType: hard @@ -16039,7 +15942,7 @@ __metadata: resolve-url: "npm:^0.2.1" tesseract.js-core: "npm:^2.2.0" zlibjs: "npm:^0.3.1" - checksum: b3aaee9189f3bc7f4217b83e110d0dd4d9afcafc3045b842f72b7ca9beb00bec732bc6b4b00eca14167c16b014c437fcf83dd272a640c9c8b5e1e9b55ea00ff5 + checksum: 10c0/b3aaee9189f3bc7f4217b83e110d0dd4d9afcafc3045b842f72b7ca9beb00bec732bc6b4b00eca14167c16b014c437fcf83dd272a640c9c8b5e1e9b55ea00ff5 languageName: node linkType: hard @@ -16050,14 +15953,14 @@ __metadata: "@istanbuljs/schema": "npm:^0.1.2" glob: "npm:^7.1.4" minimatch: "npm:^3.0.4" - checksum: 019d33d81adff3f9f1bfcff18125fb2d3c65564f437d9be539270ee74b994986abb8260c7c2ce90e8f30162178b09dbbce33c6389273afac4f36069c48521f57 + checksum: 10c0/019d33d81adff3f9f1bfcff18125fb2d3c65564f437d9be539270ee74b994986abb8260c7c2ce90e8f30162178b09dbbce33c6389273afac4f36069c48521f57 languageName: node linkType: hard "text-table@npm:^0.2.0": version: 0.2.0 resolution: "text-table@npm:0.2.0" - checksum: 02805740c12851ea5982686810702e2f14369a5f4c5c40a836821e3eefc65ffeec3131ba324692a37608294b0fd8c1e55a2dd571ffed4909822787668ddbee5c + checksum: 10c0/02805740c12851ea5982686810702e2f14369a5f4c5c40a836821e3eefc65ffeec3131ba324692a37608294b0fd8c1e55a2dd571ffed4909822787668ddbee5c languageName: node linkType: hard @@ -16066,14 +15969,14 @@ __metadata: resolution: "thread-stream@npm:2.4.1" dependencies: real-require: "npm:^0.2.0" - checksum: ce29265810b9550ce896726301ff006ebfe96b90292728f07cfa4c379740585583046e2a8018afc53aca66b18fed12b33a84f3883e7ebc317185f6682898b8f8 + checksum: 10c0/ce29265810b9550ce896726301ff006ebfe96b90292728f07cfa4c379740585583046e2a8018afc53aca66b18fed12b33a84f3883e7ebc317185f6682898b8f8 languageName: node linkType: hard "thunky@npm:^1.0.2": version: 1.1.0 resolution: "thunky@npm:1.1.0" - checksum: 369764f39de1ce1de2ba2fa922db4a3f92e9c7f33bcc9a713241bc1f4a5238b484c17e0d36d1d533c625efb00e9e82c3e45f80b47586945557b45abb890156d2 + checksum: 10c0/369764f39de1ce1de2ba2fa922db4a3f92e9c7f33bcc9a713241bc1f4a5238b484c17e0d36d1d533c625efb00e9e82c3e45f80b47586945557b45abb890156d2 languageName: node linkType: hard @@ -16082,56 +15985,49 @@ __metadata: resolution: "timers-browserify@npm:2.0.12" dependencies: setimmediate: "npm:^1.0.4" - checksum: 98e84db1a685bc8827c117a8bc62aac811ad56a995d07938fc7ed8cdc5bf3777bfe2d4e5da868847194e771aac3749a20f6cdd22091300fe889a76fe214a4641 + checksum: 10c0/98e84db1a685bc8827c117a8bc62aac811ad56a995d07938fc7ed8cdc5bf3777bfe2d4e5da868847194e771aac3749a20f6cdd22091300fe889a76fe214a4641 languageName: node linkType: hard "tiny-invariant@npm:^1.0.2": version: 1.3.1 resolution: "tiny-invariant@npm:1.3.1" - checksum: 5b87c1d52847d9452b60d0dcb77011b459044e0361ca8253bfe7b43d6288106e12af926adb709a6fc28900e3864349b91dad9a4ac93c39aa15f360b26c2ff4db + checksum: 10c0/5b87c1d52847d9452b60d0dcb77011b459044e0361ca8253bfe7b43d6288106e12af926adb709a6fc28900e3864349b91dad9a4ac93c39aa15f360b26c2ff4db languageName: node linkType: hard "tiny-queue@npm:^0.2.1": version: 0.2.1 resolution: "tiny-queue@npm:0.2.1" - checksum: 710c658bf84f5e1fe72f2a2d6fbc8e6d078ede1d367968b7d16ca01639ab34aeae9d200b8228c78fe2346bcb16e1654bd013f501e9f7dea687488479438dc0d1 + checksum: 10c0/710c658bf84f5e1fe72f2a2d6fbc8e6d078ede1d367968b7d16ca01639ab34aeae9d200b8228c78fe2346bcb16e1654bd013f501e9f7dea687488479438dc0d1 languageName: node linkType: hard "tiny-warning@npm:^1.0.0": version: 1.0.3 resolution: "tiny-warning@npm:1.0.3" - checksum: ef8531f581b30342f29670cb41ca248001c6fd7975ce22122bd59b8d62b4fc84ad4207ee7faa95cde982fa3357cd8f4be650142abc22805538c3b1392d7084fa - languageName: node - linkType: hard - -"titleize@npm:^3.0.0": - version: 3.0.0 - resolution: "titleize@npm:3.0.0" - checksum: 5ae6084ba299b5782f95e3fe85ea9f0fa4d74b8ae722b6b3208157e975589fbb27733aeba4e5080fa9314a856044ef52caa61b87caea4b1baade951a55c06336 + checksum: 10c0/ef8531f581b30342f29670cb41ca248001c6fd7975ce22122bd59b8d62b4fc84ad4207ee7faa95cde982fa3357cd8f4be650142abc22805538c3b1392d7084fa languageName: node linkType: hard "tmpl@npm:1.0.5": version: 1.0.5 resolution: "tmpl@npm:1.0.5" - checksum: f935537799c2d1922cb5d6d3805f594388f75338fe7a4a9dac41504dd539704ca4db45b883b52e7b0aa5b2fd5ddadb1452bf95cd23a69da2f793a843f9451cc9 + checksum: 10c0/f935537799c2d1922cb5d6d3805f594388f75338fe7a4a9dac41504dd539704ca4db45b883b52e7b0aa5b2fd5ddadb1452bf95cd23a69da2f793a843f9451cc9 languageName: node linkType: hard "to-arraybuffer@npm:^1.0.0": version: 1.0.1 resolution: "to-arraybuffer@npm:1.0.1" - checksum: 2460bd95524f4845a751e4f8bf9937f9f3dcd1651f104e1512868782f858f8302c1cf25bbc30794bc1b3ff65c4e135158377302f2abaff43a2d8e3c38dfe098c + checksum: 10c0/2460bd95524f4845a751e4f8bf9937f9f3dcd1651f104e1512868782f858f8302c1cf25bbc30794bc1b3ff65c4e135158377302f2abaff43a2d8e3c38dfe098c languageName: node linkType: hard "to-fast-properties@npm:^2.0.0": version: 2.0.0 resolution: "to-fast-properties@npm:2.0.0" - checksum: b214d21dbfb4bce3452b6244b336806ffea9c05297148d32ebb428d5c43ce7545bdfc65a1ceb58c9ef4376a65c0cb2854d645f33961658b3e3b4f84910ddcdd7 + checksum: 10c0/b214d21dbfb4bce3452b6244b336806ffea9c05297148d32ebb428d5c43ce7545bdfc65a1ceb58c9ef4376a65c0cb2854d645f33961658b3e3b4f84910ddcdd7 languageName: node linkType: hard @@ -16140,7 +16036,7 @@ __metadata: resolution: "to-object-path@npm:0.3.0" dependencies: kind-of: "npm:^3.0.2" - checksum: 731832a977614c03a770363ad2bd9e9c82f233261861724a8e612bb90c705b94b1a290a19f52958e8e179180bb9b71121ed65e245691a421467726f06d1d7fc3 + checksum: 10c0/731832a977614c03a770363ad2bd9e9c82f233261861724a8e612bb90c705b94b1a290a19f52958e8e179180bb9b71121ed65e245691a421467726f06d1d7fc3 languageName: node linkType: hard @@ -16150,7 +16046,7 @@ __metadata: dependencies: is-number: "npm:^3.0.0" repeat-string: "npm:^1.6.1" - checksum: 440d82dbfe0b2e24f36dd8a9467240406ad1499fc8b2b0f547372c22ed1d092ace2a3eb522bb09bfd9c2f39bf1ca42eb78035cf6d2b8c9f5c78da3abc96cd949 + checksum: 10c0/440d82dbfe0b2e24f36dd8a9467240406ad1499fc8b2b0f547372c22ed1d092ace2a3eb522bb09bfd9c2f39bf1ca42eb78035cf6d2b8c9f5c78da3abc96cd949 languageName: node linkType: hard @@ -16159,7 +16055,7 @@ __metadata: resolution: "to-regex-range@npm:5.0.1" dependencies: is-number: "npm:^7.0.0" - checksum: 487988b0a19c654ff3e1961b87f471702e708fa8a8dd02a298ef16da7206692e8552a0250e8b3e8759270f62e9d8314616f6da274734d3b558b1fc7b7724e892 + checksum: 10c0/487988b0a19c654ff3e1961b87f471702e708fa8a8dd02a298ef16da7206692e8552a0250e8b3e8759270f62e9d8314616f6da274734d3b558b1fc7b7724e892 languageName: node linkType: hard @@ -16171,21 +16067,21 @@ __metadata: extend-shallow: "npm:^3.0.2" regex-not: "npm:^1.0.2" safe-regex: "npm:^1.1.0" - checksum: 99d0b8ef397b3f7abed4bac757b0f0bb9f52bfd39167eb7105b144becfaa9a03756892352d01ac6a911f0c1ceef9f81db68c46899521a3eed054082042796120 + checksum: 10c0/99d0b8ef397b3f7abed4bac757b0f0bb9f52bfd39167eb7105b144becfaa9a03756892352d01ac6a911f0c1ceef9f81db68c46899521a3eed054082042796120 languageName: node linkType: hard "toidentifier@npm:1.0.1": version: 1.0.1 resolution: "toidentifier@npm:1.0.1" - checksum: 93937279934bd66cc3270016dd8d0afec14fb7c94a05c72dc57321f8bd1fa97e5bea6d1f7c89e728d077ca31ea125b78320a616a6c6cd0e6b9cb94cb864381c1 + checksum: 10c0/93937279934bd66cc3270016dd8d0afec14fb7c94a05c72dc57321f8bd1fa97e5bea6d1f7c89e728d077ca31ea125b78320a616a6c6cd0e6b9cb94cb864381c1 languageName: node linkType: hard "totalist@npm:^3.0.0": version: 3.0.1 resolution: "totalist@npm:3.0.1" - checksum: 4bb1fadb69c3edbef91c73ebef9d25b33bbf69afe1e37ce544d5f7d13854cda15e47132f3e0dc4cafe300ddb8578c77c50a65004d8b6e97e77934a69aa924863 + checksum: 10c0/4bb1fadb69c3edbef91c73ebef9d25b33bbf69afe1e37ce544d5f7d13854cda15e47132f3e0dc4cafe300ddb8578c77c50a65004d8b6e97e77934a69aa924863 languageName: node linkType: hard @@ -16197,7 +16093,7 @@ __metadata: punycode: "npm:^2.1.1" universalify: "npm:^0.2.0" url-parse: "npm:^1.5.3" - checksum: 4fc0433a0cba370d57c4b240f30440c848906dee3180bb6e85033143c2726d322e7e4614abb51d42d111ebec119c4876ed8d7247d4113563033eebbc1739c831 + checksum: 10c0/4fc0433a0cba370d57c4b240f30440c848906dee3180bb6e85033143c2726d322e7e4614abb51d42d111ebec119c4876ed8d7247d4113563033eebbc1739c831 languageName: node linkType: hard @@ -16206,7 +16102,7 @@ __metadata: resolution: "tr46@npm:1.0.1" dependencies: punycode: "npm:^2.1.0" - checksum: 41525c2ccce86e3ef30af6fa5e1464e6d8bb4286a58ea8db09228f598889581ef62347153f6636cd41553dc41685bdfad0a9d032ef58df9fbb0792b3447d0f04 + checksum: 10c0/41525c2ccce86e3ef30af6fa5e1464e6d8bb4286a58ea8db09228f598889581ef62347153f6636cd41553dc41685bdfad0a9d032ef58df9fbb0792b3447d0f04 languageName: node linkType: hard @@ -16215,7 +16111,7 @@ __metadata: resolution: "tr46@npm:3.0.0" dependencies: punycode: "npm:^2.1.1" - checksum: cdc47cad3a9d0b6cb293e39ccb1066695ae6fdd39b9e4f351b010835a1f8b4f3a6dc3a55e896b421371187f22b48d7dac1b693de4f6551bdef7b6ab6735dfe3b + checksum: 10c0/cdc47cad3a9d0b6cb293e39ccb1066695ae6fdd39b9e4f351b010835a1f8b4f3a6dc3a55e896b421371187f22b48d7dac1b693de4f6551bdef7b6ab6735dfe3b languageName: node linkType: hard @@ -16224,14 +16120,14 @@ __metadata: resolution: "tr46@npm:5.0.0" dependencies: punycode: "npm:^2.3.1" - checksum: 1521b6e7bbc8adc825c4561480f9fe48eb2276c81335eed9fa610aa4c44a48a3221f78b10e5f18b875769eb3413e30efbf209ed556a17a42aa8d690df44b7bee + checksum: 10c0/1521b6e7bbc8adc825c4561480f9fe48eb2276c81335eed9fa610aa4c44a48a3221f78b10e5f18b875769eb3413e30efbf209ed556a17a42aa8d690df44b7bee languageName: node linkType: hard "tr46@npm:~0.0.3": version: 0.0.3 resolution: "tr46@npm:0.0.3" - checksum: 047cb209a6b60c742f05c9d3ace8fa510bff609995c129a37ace03476a9b12db4dbf975e74600830ef0796e18882b2381fb5fb1f6b4f96b832c374de3ab91a11 + checksum: 10c0/047cb209a6b60c742f05c9d3ace8fa510bff609995c129a37ace03476a9b12db4dbf975e74600830ef0796e18882b2381fb5fb1f6b4f96b832c374de3ab91a11 languageName: node linkType: hard @@ -16240,7 +16136,7 @@ __metadata: resolution: "ts-api-utils@npm:1.0.3" peerDependencies: typescript: ">=4.2.0" - checksum: 9408338819c3aca2a709f0bc54e3f874227901506cacb1163612a6c8a43df224174feb965a5eafdae16f66fc68fd7bfee8d3275d0fa73fbb8699e03ed26520c9 + checksum: 10c0/9408338819c3aca2a709f0bc54e3f874227901506cacb1163612a6c8a43df224174feb965a5eafdae16f66fc68fd7bfee8d3275d0fa73fbb8699e03ed26520c9 languageName: node linkType: hard @@ -16252,28 +16148,28 @@ __metadata: json5: "npm:^1.0.2" minimist: "npm:^1.2.6" strip-bom: "npm:^3.0.0" - checksum: 5b4f301a2b7a3766a986baf8fc0e177eb80bdba6e396792ff92dc23b5bca8bb279fc96517dcaaef63a3b49bebc6c4c833653ec58155780bc906bdbcf7dda0ef5 + checksum: 10c0/5b4f301a2b7a3766a986baf8fc0e177eb80bdba6e396792ff92dc23b5bca8bb279fc96517dcaaef63a3b49bebc6c4c833653ec58155780bc906bdbcf7dda0ef5 languageName: node linkType: hard -"tslib@npm:2.6.2, tslib@npm:^2.4.0, tslib@npm:^2.6.0, tslib@npm:^2.6.2": +"tslib@npm:2.6.2, tslib@npm:^2.4.0": version: 2.6.2 resolution: "tslib@npm:2.6.2" - checksum: e03a8a4271152c8b26604ed45535954c0a45296e32445b4b87f8a5abdb2421f40b59b4ca437c4346af0f28179780d604094eb64546bee2019d903d01c6c19bdb + checksum: 10c0/e03a8a4271152c8b26604ed45535954c0a45296e32445b4b87f8a5abdb2421f40b59b4ca437c4346af0f28179780d604094eb64546bee2019d903d01c6c19bdb languageName: node linkType: hard "tty-browserify@npm:0.0.0": version: 0.0.0 resolution: "tty-browserify@npm:0.0.0" - checksum: c0c68206565f1372e924d5cdeeff1a0d9cc729833f1da98c03d78be8f939e5f61a107bd0ab77d1ef6a47d62bb0e48b1081fbea273acf404959e22fd3891439c5 + checksum: 10c0/c0c68206565f1372e924d5cdeeff1a0d9cc729833f1da98c03d78be8f939e5f61a107bd0ab77d1ef6a47d62bb0e48b1081fbea273acf404959e22fd3891439c5 languageName: node linkType: hard "twemoji-parser@npm:^11.0.2": version: 11.0.2 resolution: "twemoji-parser@npm:11.0.2" - checksum: b06116434ef19dcf34fcc44129482dcf561a4f78fd6525aba55329b5a50b525c68125f95d040e9274cd9a1f3e8315b8e6842bb735c68069530a9cb28422130d6 + checksum: 10c0/b06116434ef19dcf34fcc44129482dcf561a4f78fd6525aba55329b5a50b525c68125f95d040e9274cd9a1f3e8315b8e6842bb735c68069530a9cb28422130d6 languageName: node linkType: hard @@ -16285,7 +16181,7 @@ __metadata: core-js: "npm:^2.5.0" punycode: "npm:1.4.1" twemoji-parser: "npm:^11.0.2" - checksum: 34f2b42df7a0cde707ae3d9138b0232eabced946ab9f825b2500fbcc0c8be8a494fdf98ab5f4c44d7c652843c0c3846ab0aba952c7e3ca90aad69edb06dccdf5 + checksum: 10c0/34f2b42df7a0cde707ae3d9138b0232eabced946ab9f825b2500fbcc0c8be8a494fdf98ab5f4c44d7c652843c0c3846ab0aba952c7e3ca90aad69edb06dccdf5 languageName: node linkType: hard @@ -16294,42 +16190,42 @@ __metadata: resolution: "type-check@npm:0.4.0" dependencies: prelude-ls: "npm:^1.2.1" - checksum: 7b3fd0ed43891e2080bf0c5c504b418fbb3e5c7b9708d3d015037ba2e6323a28152ec163bcb65212741fa5d2022e3075ac3c76440dbd344c9035f818e8ecee58 + checksum: 10c0/7b3fd0ed43891e2080bf0c5c504b418fbb3e5c7b9708d3d015037ba2e6323a28152ec163bcb65212741fa5d2022e3075ac3c76440dbd344c9035f818e8ecee58 languageName: node linkType: hard "type-detect@npm:4.0.8": version: 4.0.8 resolution: "type-detect@npm:4.0.8" - checksum: 8fb9a51d3f365a7de84ab7f73b653534b61b622aa6800aecdb0f1095a4a646d3f5eb295322127b6573db7982afcd40ab492d038cf825a42093a58b1e1353e0bd + checksum: 10c0/8fb9a51d3f365a7de84ab7f73b653534b61b622aa6800aecdb0f1095a4a646d3f5eb295322127b6573db7982afcd40ab492d038cf825a42093a58b1e1353e0bd languageName: node linkType: hard "type-fest@npm:^0.16.0": version: 0.16.0 resolution: "type-fest@npm:0.16.0" - checksum: 6b4d846534e7bcb49a6160b068ffaed2b62570d989d909ac3f29df5ef1e993859f890a4242eebe023c9e923f96adbcb3b3e88a198c35a1ee9a731e147a6839c3 + checksum: 10c0/6b4d846534e7bcb49a6160b068ffaed2b62570d989d909ac3f29df5ef1e993859f890a4242eebe023c9e923f96adbcb3b3e88a198c35a1ee9a731e147a6839c3 languageName: node linkType: hard "type-fest@npm:^0.20.2": version: 0.20.2 resolution: "type-fest@npm:0.20.2" - checksum: dea9df45ea1f0aaa4e2d3bed3f9a0bfe9e5b2592bddb92eb1bf06e50bcf98dbb78189668cd8bc31a0511d3fc25539b4cd5c704497e53e93e2d40ca764b10bfc3 + checksum: 10c0/dea9df45ea1f0aaa4e2d3bed3f9a0bfe9e5b2592bddb92eb1bf06e50bcf98dbb78189668cd8bc31a0511d3fc25539b4cd5c704497e53e93e2d40ca764b10bfc3 languageName: node linkType: hard "type-fest@npm:^0.21.3": version: 0.21.3 resolution: "type-fest@npm:0.21.3" - checksum: 902bd57bfa30d51d4779b641c2bc403cdf1371fb9c91d3c058b0133694fcfdb817aef07a47f40faf79039eecbaa39ee9d3c532deff244f3a19ce68cea71a61e8 + checksum: 10c0/902bd57bfa30d51d4779b641c2bc403cdf1371fb9c91d3c058b0133694fcfdb817aef07a47f40faf79039eecbaa39ee9d3c532deff244f3a19ce68cea71a61e8 languageName: node linkType: hard "type-fest@npm:^3.0.0": version: 3.13.1 resolution: "type-fest@npm:3.13.1" - checksum: 547d22186f73a8c04590b70dcf63baff390078c75ea8acd366bbd510fd0646e348bd1970e47ecf795b7cff0b41d26e9c475c1fedd6ef5c45c82075fbf916b629 + checksum: 10c0/547d22186f73a8c04590b70dcf63baff390078c75ea8acd366bbd510fd0646e348bd1970e47ecf795b7cff0b41d26e9c475c1fedd6ef5c45c82075fbf916b629 languageName: node linkType: hard @@ -16339,54 +16235,59 @@ __metadata: dependencies: media-typer: "npm:0.3.0" mime-types: "npm:~2.1.24" - checksum: a23daeb538591b7efbd61ecf06b6feb2501b683ffdc9a19c74ef5baba362b4347e42f1b4ed81f5882a8c96a3bfff7f93ce3ffaf0cbbc879b532b04c97a55db9d + checksum: 10c0/a23daeb538591b7efbd61ecf06b6feb2501b683ffdc9a19c74ef5baba362b4347e42f1b4ed81f5882a8c96a3bfff7f93ce3ffaf0cbbc879b532b04c97a55db9d languageName: node linkType: hard -"typed-array-buffer@npm:^1.0.0": - version: 1.0.0 - resolution: "typed-array-buffer@npm:1.0.0" +"typed-array-buffer@npm:^1.0.2": + version: 1.0.2 + resolution: "typed-array-buffer@npm:1.0.2" dependencies: - call-bind: "npm:^1.0.2" - get-intrinsic: "npm:^1.2.1" - is-typed-array: "npm:^1.1.10" - checksum: ebad66cdf00c96b1395dffc7873169cf09801fca5954507a484f41f253feb1388d815db297b0b3bb8ce7421eac6f7ff45e2ec68450a3d68408aa4ae02fcf3a6c + call-bind: "npm:^1.0.7" + es-errors: "npm:^1.3.0" + is-typed-array: "npm:^1.1.13" + checksum: 10c0/9e043eb38e1b4df4ddf9dde1aa64919ae8bb909571c1cc4490ba777d55d23a0c74c7d73afcdd29ec98616d91bb3ae0f705fad4421ea147e1daf9528200b562da languageName: node linkType: hard -"typed-array-byte-length@npm:^1.0.0": - version: 1.0.0 - resolution: "typed-array-byte-length@npm:1.0.0" +"typed-array-byte-length@npm:^1.0.1": + version: 1.0.1 + resolution: "typed-array-byte-length@npm:1.0.1" dependencies: - call-bind: "npm:^1.0.2" + call-bind: "npm:^1.0.7" for-each: "npm:^0.3.3" - has-proto: "npm:^1.0.1" - is-typed-array: "npm:^1.1.10" - checksum: 6696435d53ce0e704ff6760c57ccc35138aec5f87859e03eb2a3246336d546feae367952dbc918116f3f0dffbe669734e3cbd8960283c2fa79aac925db50d888 + gopd: "npm:^1.0.1" + has-proto: "npm:^1.0.3" + is-typed-array: "npm:^1.1.13" + checksum: 10c0/fcebeffb2436c9f355e91bd19e2368273b88c11d1acc0948a2a306792f1ab672bce4cfe524ab9f51a0505c9d7cd1c98eff4235c4f6bfef6a198f6cfc4ff3d4f3 languageName: node linkType: hard -"typed-array-byte-offset@npm:^1.0.0": - version: 1.0.0 - resolution: "typed-array-byte-offset@npm:1.0.0" +"typed-array-byte-offset@npm:^1.0.2": + version: 1.0.2 + resolution: "typed-array-byte-offset@npm:1.0.2" dependencies: - available-typed-arrays: "npm:^1.0.5" - call-bind: "npm:^1.0.2" + available-typed-arrays: "npm:^1.0.7" + call-bind: "npm:^1.0.7" for-each: "npm:^0.3.3" - has-proto: "npm:^1.0.1" - is-typed-array: "npm:^1.1.10" - checksum: 4036ce007ae9752931bed3dd61e0d6de2a3e5f6a5a85a05f3adb35388d2c0728f9b1a1e638d75579f168e49c289bfb5417f00e96d4ab081f38b647fc854ff7a5 + gopd: "npm:^1.0.1" + has-proto: "npm:^1.0.3" + is-typed-array: "npm:^1.1.13" + checksum: 10c0/d2628bc739732072e39269389a758025f75339de2ed40c4f91357023c5512d237f255b633e3106c461ced41907c1bf9a533c7e8578066b0163690ca8bc61b22f languageName: node linkType: hard -"typed-array-length@npm:^1.0.4": - version: 1.0.4 - resolution: "typed-array-length@npm:1.0.4" +"typed-array-length@npm:^1.0.5": + version: 1.0.5 + resolution: "typed-array-length@npm:1.0.5" dependencies: - call-bind: "npm:^1.0.2" + call-bind: "npm:^1.0.7" for-each: "npm:^0.3.3" - is-typed-array: "npm:^1.1.9" - checksum: c5163c0103d07fefc8a2ad0fc151f9ca9a1f6422098c00f695d55f9896e4d63614cd62cf8d8a031c6cee5f418e8980a533796597174da4edff075b3d275a7e23 + gopd: "npm:^1.0.1" + has-proto: "npm:^1.0.3" + is-typed-array: "npm:^1.1.13" + possible-typed-array-names: "npm:^1.0.0" + checksum: 10c0/5cc0f79196e70a92f8f40846cfa62b3de6be51e83f73655e137116cf65e3c29a288502b18cc8faf33c943c2470a4569009e1d6da338441649a2db2f135761ad5 languageName: node linkType: hard @@ -16396,7 +16297,7 @@ __metadata: bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: e33cef99d82573624fc0f854a2980322714986bc35b9cb4d1ce736ed182aeab78e2cb32b385efa493b2a976ef52c53e20d6c6918312353a91850e2b76f1ea44f + checksum: 10c0/e33cef99d82573624fc0f854a2980322714986bc35b9cb4d1ce736ed182aeab78e2cb32b385efa493b2a976ef52c53e20d6c6918312353a91850e2b76f1ea44f languageName: node linkType: hard @@ -16406,7 +16307,7 @@ __metadata: bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 1d0a5f4ce496c42caa9a30e659c467c5686eae15d54b027ee7866744952547f1be1262f2d40de911618c242b510029d51d43ff605dba8fb740ec85ca2d3f9500 + checksum: 10c0/1d0a5f4ce496c42caa9a30e659c467c5686eae15d54b027ee7866744952547f1be1262f2d40de911618c242b510029d51d43ff605dba8fb740ec85ca2d3f9500 languageName: node linkType: hard @@ -16418,7 +16319,7 @@ __metadata: has-bigints: "npm:^1.0.2" has-symbols: "npm:^1.0.3" which-boxed-primitive: "npm:^1.0.2" - checksum: 81ca2e81134167cc8f75fa79fbcc8a94379d6c61de67090986a2273850989dd3bae8440c163121b77434b68263e34787a675cbdcb34bb2f764c6b9c843a11b66 + checksum: 10c0/81ca2e81134167cc8f75fa79fbcc8a94379d6c61de67090986a2273850989dd3bae8440c163121b77434b68263e34787a675cbdcb34bb2f764c6b9c843a11b66 languageName: node linkType: hard @@ -16432,21 +16333,21 @@ __metadata: react-lifecycles-compat: "npm:^3.0.4" peerDependencies: react: ">=15.0.0" - checksum: 81473e892027a99f1ead6b9afd16db65097651cd36c4b6db710728f206f1fc4b82ba9170ecb4a1127a23857e01ba51c0194d0a7cfeecfea61ba9418e0276cb56 + checksum: 10c0/81473e892027a99f1ead6b9afd16db65097651cd36c4b6db710728f206f1fc4b82ba9170ecb4a1127a23857e01ba51c0194d0a7cfeecfea61ba9418e0276cb56 languageName: node linkType: hard "undici-types@npm:~5.26.4": version: 5.26.5 resolution: "undici-types@npm:5.26.5" - checksum: bb673d7876c2d411b6eb6c560e0c571eef4a01c1c19925175d16e3a30c4c428181fb8d7ae802a261f283e4166a0ac435e2f505743aa9e45d893f9a3df017b501 + checksum: 10c0/bb673d7876c2d411b6eb6c560e0c571eef4a01c1c19925175d16e3a30c4c428181fb8d7ae802a261f283e4166a0ac435e2f505743aa9e45d893f9a3df017b501 languageName: node linkType: hard "unicode-canonical-property-names-ecmascript@npm:^2.0.0": version: 2.0.0 resolution: "unicode-canonical-property-names-ecmascript@npm:2.0.0" - checksum: 0fe812641bcfa3ae433025178a64afb5d9afebc21a922dafa7cba971deebb5e4a37350423890750132a85c936c290fb988146d0b1bd86838ad4897f4fc5bd0de + checksum: 10c0/0fe812641bcfa3ae433025178a64afb5d9afebc21a922dafa7cba971deebb5e4a37350423890750132a85c936c290fb988146d0b1bd86838ad4897f4fc5bd0de languageName: node linkType: hard @@ -16455,7 +16356,7 @@ __metadata: resolution: "unicode-emoji-utils@npm:1.2.0" dependencies: emoji-regex: "npm:10.3.0" - checksum: 224413cab5f915abbbbf3e6061878f3c1b67acf7c6ab1d4bf283f13d290677633d614a7fd58b7af8cec54dc3a4e4f51c01f4797caa23c7c83cdaa759fe6de9ce + checksum: 10c0/224413cab5f915abbbbf3e6061878f3c1b67acf7c6ab1d4bf283f13d290677633d614a7fd58b7af8cec54dc3a4e4f51c01f4797caa23c7c83cdaa759fe6de9ce languageName: node linkType: hard @@ -16465,21 +16366,21 @@ __metadata: dependencies: unicode-canonical-property-names-ecmascript: "npm:^2.0.0" unicode-property-aliases-ecmascript: "npm:^2.0.0" - checksum: 4d05252cecaf5c8e36d78dc5332e03b334c6242faf7cf16b3658525441386c0a03b5f603d42cbec0f09bb63b9fd25c9b3b09667aee75463cac3efadae2cd17ec + checksum: 10c0/4d05252cecaf5c8e36d78dc5332e03b334c6242faf7cf16b3658525441386c0a03b5f603d42cbec0f09bb63b9fd25c9b3b09667aee75463cac3efadae2cd17ec languageName: node linkType: hard "unicode-match-property-value-ecmascript@npm:^2.1.0": version: 2.1.0 resolution: "unicode-match-property-value-ecmascript@npm:2.1.0" - checksum: f5b9499b9e0ffdc6027b744d528f17ec27dd7c15da03254ed06851feec47e0531f20d410910c8a49af4a6a190f4978413794c8d75ce112950b56d583b5d5c7f2 + checksum: 10c0/f5b9499b9e0ffdc6027b744d528f17ec27dd7c15da03254ed06851feec47e0531f20d410910c8a49af4a6a190f4978413794c8d75ce112950b56d583b5d5c7f2 languageName: node linkType: hard "unicode-property-aliases-ecmascript@npm:^2.0.0": version: 2.1.0 resolution: "unicode-property-aliases-ecmascript@npm:2.1.0" - checksum: 50ded3f8c963c7785e48c510a3b7c6bc4e08a579551489aa0349680a35b1ceceec122e33b2b6c1b579d0be2250f34bb163ac35f5f8695fe10bbc67fb757f0af8 + checksum: 10c0/50ded3f8c963c7785e48c510a3b7c6bc4e08a579551489aa0349680a35b1ceceec122e33b2b6c1b579d0be2250f34bb163ac35f5f8695fe10bbc67fb757f0af8 languageName: node linkType: hard @@ -16491,7 +16392,7 @@ __metadata: get-value: "npm:^2.0.6" is-extendable: "npm:^0.1.1" set-value: "npm:^2.0.1" - checksum: 8758d880cb9545f62ce9cfb9b791b2b7a206e0ff5cc4b9d7cd6581da2c6839837fbb45e639cf1fd8eef3cae08c0201b614b7c06dd9f5f70d9dbe7c5fe2fbf592 + checksum: 10c0/8758d880cb9545f62ce9cfb9b791b2b7a206e0ff5cc4b9d7cd6581da2c6839837fbb45e639cf1fd8eef3cae08c0201b614b7c06dd9f5f70d9dbe7c5fe2fbf592 languageName: node linkType: hard @@ -16500,7 +16401,7 @@ __metadata: resolution: "unique-filename@npm:1.1.1" dependencies: unique-slug: "npm:^2.0.0" - checksum: d005bdfaae6894da8407c4de2b52f38b3c58ec86e79fc2ee19939da3085374413b073478ec54e721dc8e32b102cf9e50d0481b8331abdc62202e774b789ea874 + checksum: 10c0/d005bdfaae6894da8407c4de2b52f38b3c58ec86e79fc2ee19939da3085374413b073478ec54e721dc8e32b102cf9e50d0481b8331abdc62202e774b789ea874 languageName: node linkType: hard @@ -16509,7 +16410,7 @@ __metadata: resolution: "unique-filename@npm:3.0.0" dependencies: unique-slug: "npm:^4.0.0" - checksum: 6363e40b2fa758eb5ec5e21b3c7fb83e5da8dcfbd866cc0c199d5534c42f03b9ea9ab069769cc388e1d7ab93b4eeef28ef506ab5f18d910ef29617715101884f + checksum: 10c0/6363e40b2fa758eb5ec5e21b3c7fb83e5da8dcfbd866cc0c199d5534c42f03b9ea9ab069769cc388e1d7ab93b4eeef28ef506ab5f18d910ef29617715101884f languageName: node linkType: hard @@ -16518,7 +16419,7 @@ __metadata: resolution: "unique-slug@npm:2.0.2" dependencies: imurmurhash: "npm:^0.1.4" - checksum: 9eabc51680cf0b8b197811a48857e41f1364b25362300c1ff636c0eca5ec543a92a38786f59cf0697e62c6f814b11ecbe64e8093db71246468a1f03b80c83970 + checksum: 10c0/9eabc51680cf0b8b197811a48857e41f1364b25362300c1ff636c0eca5ec543a92a38786f59cf0697e62c6f814b11ecbe64e8093db71246468a1f03b80c83970 languageName: node linkType: hard @@ -16527,7 +16428,7 @@ __metadata: resolution: "unique-slug@npm:4.0.0" dependencies: imurmurhash: "npm:^0.1.4" - checksum: cb811d9d54eb5821b81b18205750be84cb015c20a4a44280794e915f5a0a70223ce39066781a354e872df3572e8155c228f43ff0cce94c7cbf4da2cc7cbdd635 + checksum: 10c0/cb811d9d54eb5821b81b18205750be84cb015c20a4a44280794e915f5a0a70223ce39066781a354e872df3572e8155c228f43ff0cce94c7cbf4da2cc7cbdd635 languageName: node linkType: hard @@ -16536,35 +16437,35 @@ __metadata: resolution: "unique-string@npm:2.0.0" dependencies: crypto-random-string: "npm:^2.0.0" - checksum: 11820db0a4ba069d174bedfa96c588fc2c96b083066fafa186851e563951d0de78181ac79c744c1ed28b51f9d82ac5b8196ff3e4560d0178046ef455d8c2244b + checksum: 10c0/11820db0a4ba069d174bedfa96c588fc2c96b083066fafa186851e563951d0de78181ac79c744c1ed28b51f9d82ac5b8196ff3e4560d0178046ef455d8c2244b languageName: node linkType: hard "universalify@npm:^0.2.0": version: 0.2.0 resolution: "universalify@npm:0.2.0" - checksum: cedbe4d4ca3967edf24c0800cfc161c5a15e240dac28e3ce575c689abc11f2c81ccc6532c8752af3b40f9120fb5e454abecd359e164f4f6aa44c29cd37e194fe + checksum: 10c0/cedbe4d4ca3967edf24c0800cfc161c5a15e240dac28e3ce575c689abc11f2c81ccc6532c8752af3b40f9120fb5e454abecd359e164f4f6aa44c29cd37e194fe languageName: node linkType: hard "universalify@npm:^2.0.0": version: 2.0.0 resolution: "universalify@npm:2.0.0" - checksum: 07092b9f46df61b823d8ab5e57f0ee5120c178b39609a95e4a15a98c42f6b0b8e834e66fbb47ff92831786193be42f1fd36347169b88ce8639d0f9670af24a71 + checksum: 10c0/07092b9f46df61b823d8ab5e57f0ee5120c178b39609a95e4a15a98c42f6b0b8e834e66fbb47ff92831786193be42f1fd36347169b88ce8639d0f9670af24a71 languageName: node linkType: hard "unpipe@npm:1.0.0, unpipe@npm:~1.0.0": version: 1.0.0 resolution: "unpipe@npm:1.0.0" - checksum: 193400255bd48968e5c5383730344fbb4fa114cdedfab26e329e50dd2d81b134244bb8a72c6ac1b10ab0281a58b363d06405632c9d49ca9dfd5e90cbd7d0f32c + checksum: 10c0/193400255bd48968e5c5383730344fbb4fa114cdedfab26e329e50dd2d81b134244bb8a72c6ac1b10ab0281a58b363d06405632c9d49ca9dfd5e90cbd7d0f32c languageName: node linkType: hard "unquote@npm:~1.1.1": version: 1.1.1 resolution: "unquote@npm:1.1.1" - checksum: de59fb48cbaadc636002c6563dcb6b1bce95c91ebecb92addbc9bb47982cb03e7d8a8371c9617267b9e5746bbcb4403394139bc1310106b9ac4c26790ed57859 + checksum: 10c0/de59fb48cbaadc636002c6563dcb6b1bce95c91ebecb92addbc9bb47982cb03e7d8a8371c9617267b9e5746bbcb4403394139bc1310106b9ac4c26790ed57859 languageName: node linkType: hard @@ -16574,21 +16475,14 @@ __metadata: dependencies: has-value: "npm:^0.3.1" isobject: "npm:^3.0.0" - checksum: 68a796dde4a373afdbf017de64f08490a3573ebee549136da0b3a2245299e7f65f647ef70dc13c4ac7f47b12fba4de1646fa0967a365638578fedce02b9c0b1f - languageName: node - linkType: hard - -"untildify@npm:^4.0.0": - version: 4.0.0 - resolution: "untildify@npm:4.0.0" - checksum: d758e624c707d49f76f7511d75d09a8eda7f2020d231ec52b67ff4896bcf7013be3f9522d8375f57e586e9a2e827f5641c7e06ee46ab9c435fc2b2b2e9de517a + checksum: 10c0/68a796dde4a373afdbf017de64f08490a3573ebee549136da0b3a2245299e7f65f647ef70dc13c4ac7f47b12fba4de1646fa0967a365638578fedce02b9c0b1f languageName: node linkType: hard "upath@npm:^1.1.1, upath@npm:^1.2.0": version: 1.2.0 resolution: "upath@npm:1.2.0" - checksum: 3746f24099bf69dbf8234cecb671e1016e1f6b26bd306de4ff8966fb0bc463fa1014ffc48646b375de1ab573660e3a0256f6f2a87218b2dfa1779a84ef6992fa + checksum: 10c0/3746f24099bf69dbf8234cecb671e1016e1f6b26bd306de4ff8966fb0bc463fa1014ffc48646b375de1ab573660e3a0256f6f2a87218b2dfa1779a84ef6992fa languageName: node linkType: hard @@ -16602,7 +16496,7 @@ __metadata: browserslist: ">= 4.21.0" bin: update-browserslist-db: cli.js - checksum: e52b8b521c78ce1e0c775f356cd16a9c22c70d25f3e01180839c407a5dc787fb05a13f67560cbaf316770d26fa99f78f1acd711b1b54a4f35d4820d4ea7136e6 + checksum: 10c0/e52b8b521c78ce1e0c775f356cd16a9c22c70d25f3e01180839c407a5dc787fb05a13f67560cbaf316770d26fa99f78f1acd711b1b54a4f35d4820d4ea7136e6 languageName: node linkType: hard @@ -16611,14 +16505,14 @@ __metadata: resolution: "uri-js@npm:4.4.1" dependencies: punycode: "npm:^2.1.0" - checksum: 4ef57b45aa820d7ac6496e9208559986c665e49447cb072744c13b66925a362d96dd5a46c4530a6b8e203e5db5fe849369444440cb22ecfc26c679359e5dfa3c + checksum: 10c0/4ef57b45aa820d7ac6496e9208559986c665e49447cb072744c13b66925a362d96dd5a46c4530a6b8e203e5db5fe849369444440cb22ecfc26c679359e5dfa3c languageName: node linkType: hard "urix@npm:^0.1.0": version: 0.1.0 resolution: "urix@npm:0.1.0" - checksum: 264f1b29360c33c0aec5fb9819d7e28f15d1a3b83175d2bcc9131efe8583f459f07364957ae3527f1478659ec5b2d0f1ad401dfb625f73e4d424b3ae35fc5fc0 + checksum: 10c0/264f1b29360c33c0aec5fb9819d7e28f15d1a3b83175d2bcc9131efe8583f459f07364957ae3527f1478659ec5b2d0f1ad401dfb625f73e4d424b3ae35fc5fc0 languageName: node linkType: hard @@ -16628,7 +16522,7 @@ __metadata: dependencies: querystringify: "npm:^2.1.1" requires-port: "npm:^1.0.0" - checksum: bd5aa9389f896974beb851c112f63b466505a04b4807cea2e5a3b7092f6fbb75316f0491ea84e44f66fed55f1b440df5195d7e3a8203f64fcefa19d182f5be87 + checksum: 10c0/bd5aa9389f896974beb851c112f63b466505a04b4807cea2e5a3b7092f6fbb75316f0491ea84e44f66fed55f1b440df5195d7e3a8203f64fcefa19d182f5be87 languageName: node linkType: hard @@ -16638,7 +16532,7 @@ __metadata: dependencies: punycode: "npm:^1.4.1" qs: "npm:^6.11.0" - checksum: 9e18c57b854d6a8e0288c4ddf21f9e30273a0ef2efb28a7e3e3d6eac392637dbdecce0d8f616586d58ff43154997150ecc2c9873e6c845d1e742e24c940b6e12 + checksum: 10c0/9e18c57b854d6a8e0288c4ddf21f9e30273a0ef2efb28a7e3e3d6eac392637dbdecce0d8f616586d58ff43154997150ecc2c9873e6c845d1e742e24c940b6e12 languageName: node linkType: hard @@ -16647,7 +16541,7 @@ __metadata: resolution: "use-composed-ref@npm:1.3.0" peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 - checksum: e64ce52f4b18c020407636784192726807404a2552609acf7497b66a2b7070674fb5d2b950d426c4aa85f353e2bbecb02ebf9c5b865cd06797938c70bcbf5d26 + checksum: 10c0/e64ce52f4b18c020407636784192726807404a2552609acf7497b66a2b7070674fb5d2b950d426c4aa85f353e2bbecb02ebf9c5b865cd06797938c70bcbf5d26 languageName: node linkType: hard @@ -16659,7 +16553,7 @@ __metadata: peerDependenciesMeta: "@types/react": optional: true - checksum: d8deea8b85e55ac6daba237a889630bfdbf0ebf60e9e22b6a78a78c26fabe6025e04ada7abef1e444e6786227d921e648b2707db8b3564daf757264a148a6e23 + checksum: 10c0/d8deea8b85e55ac6daba237a889630bfdbf0ebf60e9e22b6a78a78c26fabe6025e04ada7abef1e444e6786227d921e648b2707db8b3564daf757264a148a6e23 languageName: node linkType: hard @@ -16673,7 +16567,7 @@ __metadata: peerDependenciesMeta: "@types/react": optional: true - checksum: 1958886fc35262d973f5cd4ce16acd6ce3a66707a72761c93abd1b5ae64e1a11efa83f68e6c8c9bf1647628037980ce59df64cba50adb36bd4071851e70527d2 + checksum: 10c0/1958886fc35262d973f5cd4ce16acd6ce3a66707a72761c93abd1b5ae64e1a11efa83f68e6c8c9bf1647628037980ce59df64cba50adb36bd4071851e70527d2 languageName: node linkType: hard @@ -16682,14 +16576,14 @@ __metadata: resolution: "use-sync-external-store@npm:1.2.0" peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 - checksum: ac4814e5592524f242921157e791b022efe36e451fe0d4fd4d204322d5433a4fc300d63b0ade5185f8e0735ded044c70bcf6d2352db0f74d097a238cebd2da02 + checksum: 10c0/ac4814e5592524f242921157e791b022efe36e451fe0d4fd4d204322d5433a4fc300d63b0ade5185f8e0735ded044c70bcf6d2352db0f74d097a238cebd2da02 languageName: node linkType: hard "use@npm:^3.1.0": version: 3.1.1 resolution: "use@npm:3.1.1" - checksum: 75b48673ab80d5139c76922630d5a8a44e72ed58dbaf54dee1b88352d10e1c1c1fc332066c782d8ae9a56503b85d3dc67ff6d2ffbd9821120466d1280ebb6d6e + checksum: 10c0/75b48673ab80d5139c76922630d5a8a44e72ed58dbaf54dee1b88352d10e1c1c1fc332066c782d8ae9a56503b85d3dc67ff6d2ffbd9821120466d1280ebb6d6e languageName: node linkType: hard @@ -16699,14 +16593,14 @@ __metadata: dependencies: node-gyp: "npm:latest" node-gyp-build: "npm:^4.3.0" - checksum: 2ca08b07f4070540b33ff15f3f0632fa30baaee8a766fff993be47b4829b4fb30fd36fdf1270336324d03f65e0936c4608ee719d862230d75311751dcfe27a83 + checksum: 10c0/2ca08b07f4070540b33ff15f3f0632fa30baaee8a766fff993be47b4829b4fb30fd36fdf1270336324d03f65e0936c4608ee719d862230d75311751dcfe27a83 languageName: node linkType: hard "util-deprecate@npm:^1.0.1, util-deprecate@npm:^1.0.2, util-deprecate@npm:~1.0.1": version: 1.0.2 resolution: "util-deprecate@npm:1.0.2" - checksum: 41a5bdd214df2f6c3ecf8622745e4a366c4adced864bc3c833739791aeeeb1838119af7daed4ba36428114b5c67dcda034a79c882e97e43c03e66a4dd7389942 + checksum: 10c0/41a5bdd214df2f6c3ecf8622745e4a366c4adced864bc3c833739791aeeeb1838119af7daed4ba36428114b5c67dcda034a79c882e97e43c03e66a4dd7389942 languageName: node linkType: hard @@ -16718,7 +16612,7 @@ __metadata: es-abstract: "npm:^1.17.2" has-symbols: "npm:^1.0.1" object.getownpropertydescriptors: "npm:^2.1.0" - checksum: d72b7c1344816bc9c8713efbf5cb23b536730a8fb7df9ae50654d9efa4d24241fc5ecc69a7dc63b9a2f98cabc9635c303923671933f8c6f41fa7d64fe2188e27 + checksum: 10c0/d72b7c1344816bc9c8713efbf5cb23b536730a8fb7df9ae50654d9efa4d24241fc5ecc69a7dc63b9a2f98cabc9635c303923671933f8c6f41fa7d64fe2188e27 languageName: node linkType: hard @@ -16727,7 +16621,7 @@ __metadata: resolution: "util@npm:0.10.3" dependencies: inherits: "npm:2.0.1" - checksum: 88bb58fec3b1f5f43dea27795f61f24b3b505bbba6f3ad6e91b32db0cd0928b2acb54ebe21603a75743c6e21a52f954cd2ffb6cddafed5a01169dd1287db3ff3 + checksum: 10c0/88bb58fec3b1f5f43dea27795f61f24b3b505bbba6f3ad6e91b32db0cd0928b2acb54ebe21603a75743c6e21a52f954cd2ffb6cddafed5a01169dd1287db3ff3 languageName: node linkType: hard @@ -16736,14 +16630,14 @@ __metadata: resolution: "util@npm:0.11.1" dependencies: inherits: "npm:2.0.3" - checksum: 8e9d1a85e661c8a8d9883d821aedbff3f8d9c3accd85357020905386ada5653b20389fc3591901e2a0bde64f8dc86b28c3f990114aa5a38eaaf30b455fa3cdf6 + checksum: 10c0/8e9d1a85e661c8a8d9883d821aedbff3f8d9c3accd85357020905386ada5653b20389fc3591901e2a0bde64f8dc86b28c3f990114aa5a38eaaf30b455fa3cdf6 languageName: node linkType: hard "utils-merge@npm:1.0.1": version: 1.0.1 resolution: "utils-merge@npm:1.0.1" - checksum: 02ba649de1b7ca8854bfe20a82f1dfbdda3fb57a22ab4a8972a63a34553cf7aa51bc9081cf7e001b035b88186d23689d69e71b510e610a09a4c66f68aa95b672 + checksum: 10c0/02ba649de1b7ca8854bfe20a82f1dfbdda3fb57a22ab4a8972a63a34553cf7aa51bc9081cf7e001b035b88186d23689d69e71b510e610a09a4c66f68aa95b672 languageName: node linkType: hard @@ -16752,7 +16646,7 @@ __metadata: resolution: "uuid@npm:3.4.0" bin: uuid: ./bin/uuid - checksum: 1c13950df865c4f506ebfe0a24023571fa80edf2e62364297a537c80af09c618299797bbf2dbac6b1f8ae5ad182ba474b89db61e0e85839683991f7e08795347 + checksum: 10c0/1c13950df865c4f506ebfe0a24023571fa80edf2e62364297a537c80af09c618299797bbf2dbac6b1f8ae5ad182ba474b89db61e0e85839683991f7e08795347 languageName: node linkType: hard @@ -16761,7 +16655,7 @@ __metadata: resolution: "uuid@npm:8.3.2" bin: uuid: dist/bin/uuid - checksum: bcbb807a917d374a49f475fae2e87fdca7da5e5530820ef53f65ba1d12131bd81a92ecf259cc7ce317cbe0f289e7d79fdfebcef9bfa3087c8c8a2fa304c9be54 + checksum: 10c0/bcbb807a917d374a49f475fae2e87fdca7da5e5530820ef53f65ba1d12131bd81a92ecf259cc7ce317cbe0f289e7d79fdfebcef9bfa3087c8c8a2fa304c9be54 languageName: node linkType: hard @@ -16770,14 +16664,14 @@ __metadata: resolution: "uuid@npm:9.0.1" bin: uuid: dist/bin/uuid - checksum: 1607dd32ac7fc22f2d8f77051e6a64845c9bce5cd3dd8aa0070c074ec73e666a1f63c7b4e0f4bf2bc8b9d59dc85a15e17807446d9d2b17c8485fbc2147b27f9b + checksum: 10c0/1607dd32ac7fc22f2d8f77051e6a64845c9bce5cd3dd8aa0070c074ec73e666a1f63c7b4e0f4bf2bc8b9d59dc85a15e17807446d9d2b17c8485fbc2147b27f9b languageName: node linkType: hard "v8-compile-cache@npm:^2.1.1": version: 2.3.0 resolution: "v8-compile-cache@npm:2.3.0" - checksum: b2d866febf943fbbf0b5e8d43ae9a9b0dacd11dd76e6a9c8e8032268f0136f081e894a2723774ae2d86befa994be4d4046b0717d82df4f3a10e067994ad5c688 + checksum: 10c0/b2d866febf943fbbf0b5e8d43ae9a9b0dacd11dd76e6a9c8e8032268f0136f081e894a2723774ae2d86befa994be4d4046b0717d82df4f3a10e067994ad5c688 languageName: node linkType: hard @@ -16788,28 +16682,28 @@ __metadata: "@jridgewell/trace-mapping": "npm:^0.3.12" "@types/istanbul-lib-coverage": "npm:^2.0.1" convert-source-map: "npm:^1.6.0" - checksum: 657ef7c52a514c1a0769663f96dd6f2cd11d2d3f6c8272d1035f4a543dca0b52c84b005beb7f0ca215eb98425c8bc4aa92a62826b1fc76abc1f7228d33ccbc60 + checksum: 10c0/657ef7c52a514c1a0769663f96dd6f2cd11d2d3f6c8272d1035f4a543dca0b52c84b005beb7f0ca215eb98425c8bc4aa92a62826b1fc76abc1f7228d33ccbc60 languageName: node linkType: hard "value-equal@npm:^1.0.1": version: 1.0.1 resolution: "value-equal@npm:1.0.1" - checksum: 79068098355483ef29f4d3753999ad880875b87625d7e9055cad9346ea4b7662aad3a66f87976801b0dd7a6f828ba973d28b1669ebcd37eaf88cc5f687c1a691 + checksum: 10c0/79068098355483ef29f4d3753999ad880875b87625d7e9055cad9346ea4b7662aad3a66f87976801b0dd7a6f828ba973d28b1669ebcd37eaf88cc5f687c1a691 languageName: node linkType: hard "vary@npm:^1, vary@npm:~1.1.2": version: 1.1.2 resolution: "vary@npm:1.1.2" - checksum: f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f + checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f languageName: node linkType: hard "vm-browserify@npm:^1.0.1": version: 1.1.2 resolution: "vm-browserify@npm:1.1.2" - checksum: 0cc1af6e0d880deb58bc974921320c187f9e0a94f25570fca6b1bd64e798ce454ab87dfd797551b1b0cc1849307421aae0193cedf5f06bdb5680476780ee344b + checksum: 10c0/0cc1af6e0d880deb58bc974921320c187f9e0a94f25570fca6b1bd64e798ce454ab87dfd797551b1b0cc1849307421aae0193cedf5f06bdb5680476780ee344b languageName: node linkType: hard @@ -16818,7 +16712,7 @@ __metadata: resolution: "w3c-xmlserializer@npm:4.0.0" dependencies: xml-name-validator: "npm:^4.0.0" - checksum: 02cc66d6efc590bd630086cd88252444120f5feec5c4043932b0d0f74f8b060512f79dc77eb093a7ad04b4f02f39da79ce4af47ceb600f2bf9eacdc83204b1a8 + checksum: 10c0/02cc66d6efc590bd630086cd88252444120f5feec5c4043932b0d0f74f8b060512f79dc77eb093a7ad04b4f02f39da79ce4af47ceb600f2bf9eacdc83204b1a8 languageName: node linkType: hard @@ -16827,7 +16721,7 @@ __metadata: resolution: "w3c-xmlserializer@npm:5.0.0" dependencies: xml-name-validator: "npm:^5.0.0" - checksum: 8712774c1aeb62dec22928bf1cdfd11426c2c9383a1a63f2bcae18db87ca574165a0fbe96b312b73652149167ac6c7f4cf5409f2eb101d9c805efe0e4bae798b + checksum: 10c0/8712774c1aeb62dec22928bf1cdfd11426c2c9383a1a63f2bcae18db87ca574165a0fbe96b312b73652149167ac6c7f4cf5409f2eb101d9c805efe0e4bae798b languageName: node linkType: hard @@ -16836,7 +16730,7 @@ __metadata: resolution: "walker@npm:1.0.8" dependencies: makeerror: "npm:1.0.12" - checksum: a17e037bccd3ca8a25a80cb850903facdfed0de4864bd8728f1782370715d679fa72e0a0f5da7c1c1379365159901e5935f35be531229da53bbfc0efdabdb48e + checksum: 10c0/a17e037bccd3ca8a25a80cb850903facdfed0de4864bd8728f1782370715d679fa72e0a0f5da7c1c1379365159901e5935f35be531229da53bbfc0efdabdb48e languageName: node linkType: hard @@ -16845,7 +16739,7 @@ __metadata: resolution: "warning@npm:3.0.0" dependencies: loose-envify: "npm:^1.0.0" - checksum: 6a2a56ab3139d3927193d926a027e74e1449fa47cc692feea95f8a81a4bb5b7f10c312def94cce03f3b58cb26ba3247858e75d17d596451d2c483a62e8204705 + checksum: 10c0/6a2a56ab3139d3927193d926a027e74e1449fa47cc692feea95f8a81a4bb5b7f10c312def94cce03f3b58cb26ba3247858e75d17d596451d2c483a62e8204705 languageName: node linkType: hard @@ -16854,7 +16748,7 @@ __metadata: resolution: "warning@npm:4.0.3" dependencies: loose-envify: "npm:^1.0.0" - checksum: aebab445129f3e104c271f1637fa38e55eb25f968593e3825bd2f7a12bd58dc3738bb70dc8ec85826621d80b4acfed5a29ebc9da17397c6125864d72301b937e + checksum: 10c0/aebab445129f3e104c271f1637fa38e55eb25f968593e3825bd2f7a12bd58dc3738bb70dc8ec85826621d80b4acfed5a29ebc9da17397c6125864d72301b937e languageName: node linkType: hard @@ -16863,7 +16757,7 @@ __metadata: resolution: "watchpack-chokidar2@npm:2.0.1" dependencies: chokidar: "npm:^2.1.8" - checksum: 9b8d880ae2543dd4f26a69f6b7f881119494f6b772b7431027a06a5cf963e0ebc1cac91a3ef479365c358b693c65fa80a1f8297427fa11fd4c080c3d6408c372 + checksum: 10c0/9b8d880ae2543dd4f26a69f6b7f881119494f6b772b7431027a06a5cf963e0ebc1cac91a3ef479365c358b693c65fa80a1f8297427fa11fd4c080c3d6408c372 languageName: node linkType: hard @@ -16880,7 +16774,7 @@ __metadata: optional: true watchpack-chokidar2: optional: true - checksum: 53e3b112064f5de9edbb2a14973fb3901d9697b24cc70f8531a143eaace2353a273ca25c0ba21def8d3803cfedb8f6861ca1e49e9782257e40d5b5f8f5365c86 + checksum: 10c0/53e3b112064f5de9edbb2a14973fb3901d9697b24cc70f8531a143eaace2353a273ca25c0ba21def8d3803cfedb8f6861ca1e49e9782257e40d5b5f8f5365c86 languageName: node linkType: hard @@ -16889,28 +16783,28 @@ __metadata: resolution: "wbuf@npm:1.7.3" dependencies: minimalistic-assert: "npm:^1.0.0" - checksum: 56edcc5ef2b3d30913ba8f1f5cccc364d180670b24d5f3f8849c1e6fb514e5c7e3a87548ae61227a82859eba6269c11393ae24ce12a2ea1ecb9b465718ddced7 + checksum: 10c0/56edcc5ef2b3d30913ba8f1f5cccc364d180670b24d5f3f8849c1e6fb514e5c7e3a87548ae61227a82859eba6269c11393ae24ce12a2ea1ecb9b465718ddced7 languageName: node linkType: hard "webidl-conversions@npm:^3.0.0": version: 3.0.1 resolution: "webidl-conversions@npm:3.0.1" - checksum: 5612d5f3e54760a797052eb4927f0ddc01383550f542ccd33d5238cfd65aeed392a45ad38364970d0a0f4fea32e1f4d231b3d8dac4a3bdd385e5cf802ae097db + checksum: 10c0/5612d5f3e54760a797052eb4927f0ddc01383550f542ccd33d5238cfd65aeed392a45ad38364970d0a0f4fea32e1f4d231b3d8dac4a3bdd385e5cf802ae097db languageName: node linkType: hard "webidl-conversions@npm:^4.0.2": version: 4.0.2 resolution: "webidl-conversions@npm:4.0.2" - checksum: def5c5ac3479286dffcb604547628b2e6b46c5c5b8a8cfaa8c71dc3bafc85859bde5fbe89467ff861f571ab38987cf6ab3d6e7c80b39b999e50e803c12f3164f + checksum: 10c0/def5c5ac3479286dffcb604547628b2e6b46c5c5b8a8cfaa8c71dc3bafc85859bde5fbe89467ff861f571ab38987cf6ab3d6e7c80b39b999e50e803c12f3164f languageName: node linkType: hard "webidl-conversions@npm:^7.0.0": version: 7.0.0 resolution: "webidl-conversions@npm:7.0.0" - checksum: 228d8cb6d270c23b0720cb2d95c579202db3aaf8f633b4e9dd94ec2000a04e7e6e43b76a94509cdb30479bd00ae253ab2371a2da9f81446cc313f89a4213a2c4 + checksum: 10c0/228d8cb6d270c23b0720cb2d95c579202db3aaf8f633b4e9dd94ec2000a04e7e6e43b76a94509cdb30479bd00ae253ab2371a2da9f81446cc313f89a4213a2c4 languageName: node linkType: hard @@ -16929,7 +16823,7 @@ __metadata: webpack-sources: "npm:^1.0" peerDependencies: webpack: ^4.40.0 - checksum: 718493ccf05b48e95fdef2abc2b9770d88abcc161b3e683fd7004493038947dac3a91cad7632bca4199ee5832e425fee6d49c8d0b72339ccf0c7ee3b9f9bf1dc + checksum: 10c0/718493ccf05b48e95fdef2abc2b9770d88abcc161b3e683fd7004493038947dac3a91cad7632bca4199ee5832e425fee6d49c8d0b72339ccf0c7ee3b9f9bf1dc languageName: node linkType: hard @@ -16952,7 +16846,7 @@ __metadata: ws: "npm:^7.3.1" bin: webpack-bundle-analyzer: lib/bin/analyzer.js - checksum: 6a94c8f6aa03296fb2eb00d6ad3b27bd5c551590fd253772bc61debf3177414d42701014079d4f85c74ba1ca685ae9f0cb4063812b58c21f294d108e9908e5cd + checksum: 10c0/6a94c8f6aa03296fb2eb00d6ad3b27bd5c551590fd253772bc61debf3177414d42701014079d4f85c74ba1ca685ae9f0cb4063812b58c21f294d108e9908e5cd languageName: node linkType: hard @@ -16975,7 +16869,7 @@ __metadata: webpack: 4.x.x bin: webpack-cli: bin/cli.js - checksum: d0bb486651af5c438983d82904f6d4d187dfa83d480b493cd0b231d653d2a40aaf48c6bae3620f5d8ad520c08870b8553363e7579cfd7c8c2f7b3a279c454698 + checksum: 10c0/d0bb486651af5c438983d82904f6d4d187dfa83d480b493cd0b231d653d2a40aaf48c6bae3620f5d8ad520c08870b8553363e7579cfd7c8c2f7b3a279c454698 languageName: node linkType: hard @@ -16990,7 +16884,7 @@ __metadata: webpack-log: "npm:^2.0.0" peerDependencies: webpack: ^4.0.0 || ^5.0.0 - checksum: f9bd8318c6f356d006dc99e3e46ef8870d67640e43f26cfcd2bb36c9e7eaf64015513f43498e92b532896f7fbd8f32c0710d4489fc81d7a45ea328d7e4cf3085 + checksum: 10c0/f9bd8318c6f356d006dc99e3e46ef8870d67640e43f26cfcd2bb36c9e7eaf64015513f43498e92b532896f7fbd8f32c0710d4489fc81d7a45ea328d7e4cf3085 languageName: node linkType: hard @@ -17038,7 +16932,7 @@ __metadata: optional: true bin: webpack-dev-server: bin/webpack-dev-server.js - checksum: 90fe960dc28cc75b501b1fa4ad3eba358a98dbb929658725e74db12326afaf165b6bd54f0cad0381b9771f6c47c92dba573d615b491ceeec4875ffe49143a38a + checksum: 10c0/90fe960dc28cc75b501b1fa4ad3eba358a98dbb929658725e74db12326afaf165b6bd54f0cad0381b9771f6c47c92dba573d615b491ceeec4875ffe49143a38a languageName: node linkType: hard @@ -17048,7 +16942,7 @@ __metadata: dependencies: ansi-colors: "npm:^3.0.0" uuid: "npm:^3.3.2" - checksum: 515b800433da1c0b5722317baaeb05fc185da5a1fde5e39d25bed0b05c13ee3a544aa13844db8590696274a3c5dc04fd5abdd39f38f8c46a4084b74ff0dc9c60 + checksum: 10c0/515b800433da1c0b5722317baaeb05fc185da5a1fde5e39d25bed0b05c13ee3a544aa13844db8590696274a3c5dc04fd5abdd39f38f8c46a4084b74ff0dc9c60 languageName: node linkType: hard @@ -17059,7 +16953,7 @@ __metadata: clone-deep: "npm:^4.0.1" flat: "npm:^5.0.2" wildcard: "npm:^2.0.0" - checksum: b607c84cabaf74689f965420051a55a08722d897bdd6c29cb0b2263b451c090f962d41ecf8c9bf56b0ab3de56e65476ace0a8ecda4f4a4663684243d90e0512b + checksum: 10c0/b607c84cabaf74689f965420051a55a08722d897bdd6c29cb0b2263b451c090f962d41ecf8c9bf56b0ab3de56e65476ace0a8ecda4f4a4663684243d90e0512b languageName: node linkType: hard @@ -17069,7 +16963,7 @@ __metadata: dependencies: source-list-map: "npm:^2.0.0" source-map: "npm:~0.6.1" - checksum: 78dafb3e1e297d3f4eb6204311e8c64d28cd028f82887ba33aaf03fffc82482d8e1fdf6de25a60f4dde621d3565f4c3b1bfb350f09add8f4e54e00279ff3db5e + checksum: 10c0/78dafb3e1e297d3f4eb6204311e8c64d28cd028f82887ba33aaf03fffc82482d8e1fdf6de25a60f4dde621d3565f4c3b1bfb350f09add8f4e54e00279ff3db5e languageName: node linkType: hard @@ -17107,7 +17001,7 @@ __metadata: optional: true bin: webpack: bin/webpack.js - checksum: bc90202110a341359c11ead60ea09bd5cfa51e2c93004d7e40b7c2f76208cc6717e39c9d9544825cc44958046ada762c78a8cf9848619ea450315bce98228701 + checksum: 10c0/bc90202110a341359c11ead60ea09bd5cfa51e2c93004d7e40b7c2f76208cc6717e39c9d9544825cc44958046ada762c78a8cf9848619ea450315bce98228701 languageName: node linkType: hard @@ -17118,14 +17012,14 @@ __metadata: http-parser-js: "npm:>=0.5.1" safe-buffer: "npm:>=5.1.0" websocket-extensions: "npm:>=0.1.1" - checksum: 5f09547912b27bdc57bac17b7b6527d8993aa4ac8a2d10588bb74aebaf785fdcf64fea034aae0c359b7adff2044dd66f3d03866e4685571f81b13e548f9021f1 + checksum: 10c0/5f09547912b27bdc57bac17b7b6527d8993aa4ac8a2d10588bb74aebaf785fdcf64fea034aae0c359b7adff2044dd66f3d03866e4685571f81b13e548f9021f1 languageName: node linkType: hard "websocket-extensions@npm:>=0.1.1": version: 0.1.4 resolution: "websocket-extensions@npm:0.1.4" - checksum: bbc8c233388a0eb8a40786ee2e30d35935cacbfe26ab188b3e020987e85d519c2009fe07cfc37b7f718b85afdba7e54654c9153e6697301f72561bfe429177e0 + checksum: 10c0/bbc8c233388a0eb8a40786ee2e30d35935cacbfe26ab188b3e020987e85d519c2009fe07cfc37b7f718b85afdba7e54654c9153e6697301f72561bfe429177e0 languageName: node linkType: hard @@ -17134,7 +17028,7 @@ __metadata: resolution: "whatwg-encoding@npm:2.0.0" dependencies: iconv-lite: "npm:0.6.3" - checksum: 91b90a49f312dc751496fd23a7e68981e62f33afe938b97281ad766235c4872fc4e66319f925c5e9001502b3040dd25a33b02a9c693b73a4cbbfdc4ad10c3e3e + checksum: 10c0/91b90a49f312dc751496fd23a7e68981e62f33afe938b97281ad766235c4872fc4e66319f925c5e9001502b3040dd25a33b02a9c693b73a4cbbfdc4ad10c3e3e languageName: node linkType: hard @@ -17143,21 +17037,21 @@ __metadata: resolution: "whatwg-encoding@npm:3.1.1" dependencies: iconv-lite: "npm:0.6.3" - checksum: 273b5f441c2f7fda3368a496c3009edbaa5e43b71b09728f90425e7f487e5cef9eb2b846a31bd760dd8077739c26faf6b5ca43a5f24033172b003b72cf61a93e + checksum: 10c0/273b5f441c2f7fda3368a496c3009edbaa5e43b71b09728f90425e7f487e5cef9eb2b846a31bd760dd8077739c26faf6b5ca43a5f24033172b003b72cf61a93e languageName: node linkType: hard "whatwg-mimetype@npm:^3.0.0": version: 3.0.0 resolution: "whatwg-mimetype@npm:3.0.0" - checksum: 323895a1cda29a5fb0b9ca82831d2c316309fede0365047c4c323073e3239067a304a09a1f4b123b9532641ab604203f33a1403b5ca6a62ef405bcd7a204080f + checksum: 10c0/323895a1cda29a5fb0b9ca82831d2c316309fede0365047c4c323073e3239067a304a09a1f4b123b9532641ab604203f33a1403b5ca6a62ef405bcd7a204080f languageName: node linkType: hard "whatwg-mimetype@npm:^4.0.0": version: 4.0.0 resolution: "whatwg-mimetype@npm:4.0.0" - checksum: a773cdc8126b514d790bdae7052e8bf242970cebd84af62fb2f35a33411e78e981f6c0ab9ed1fe6ec5071b09d5340ac9178e05b52d35a9c4bcf558ba1b1551df + checksum: 10c0/a773cdc8126b514d790bdae7052e8bf242970cebd84af62fb2f35a33411e78e981f6c0ab9ed1fe6ec5071b09d5340ac9178e05b52d35a9c4bcf558ba1b1551df languageName: node linkType: hard @@ -17167,7 +17061,7 @@ __metadata: dependencies: tr46: "npm:^3.0.0" webidl-conversions: "npm:^7.0.0" - checksum: f7ec264976d7c725e0696fcaf9ebe056e14422eacbf92fdbb4462034609cba7d0c85ffa1aab05e9309d42969bcf04632ba5ed3f3882c516d7b093053315bf4c1 + checksum: 10c0/f7ec264976d7c725e0696fcaf9ebe056e14422eacbf92fdbb4462034609cba7d0c85ffa1aab05e9309d42969bcf04632ba5ed3f3882c516d7b093053315bf4c1 languageName: node linkType: hard @@ -17177,7 +17071,7 @@ __metadata: dependencies: tr46: "npm:^5.0.0" webidl-conversions: "npm:^7.0.0" - checksum: ac32e9ba9d08744605519bbe9e1371174d36229689ecc099157b6ba102d4251a95e81d81f3d80271eb8da182eccfa65653f07f0ab43ea66a6934e643fd091ba9 + checksum: 10c0/ac32e9ba9d08744605519bbe9e1371174d36229689ecc099157b6ba102d4251a95e81d81f3d80271eb8da182eccfa65653f07f0ab43ea66a6934e643fd091ba9 languageName: node linkType: hard @@ -17187,7 +17081,7 @@ __metadata: dependencies: tr46: "npm:~0.0.3" webidl-conversions: "npm:^3.0.0" - checksum: 1588bed84d10b72d5eec1d0faa0722ba1962f1821e7539c535558fb5398d223b0c50d8acab950b8c488b4ba69043fd833cc2697056b167d8ad46fac3995a55d5 + checksum: 10c0/1588bed84d10b72d5eec1d0faa0722ba1962f1821e7539c535558fb5398d223b0c50d8acab950b8c488b4ba69043fd833cc2697056b167d8ad46fac3995a55d5 languageName: node linkType: hard @@ -17198,7 +17092,7 @@ __metadata: lodash.sortby: "npm:^4.7.0" tr46: "npm:^1.0.1" webidl-conversions: "npm:^4.0.2" - checksum: 2785fe4647690e5a0225a79509ba5e21fdf4a71f9de3eabdba1192483fe006fc79961198e0b99f82751557309f17fc5a07d4d83c251aa5b2f85ba71e674cbee9 + checksum: 10c0/2785fe4647690e5a0225a79509ba5e21fdf4a71f9de3eabdba1192483fe006fc79961198e0b99f82751557309f17fc5a07d4d83c251aa5b2f85ba71e674cbee9 languageName: node linkType: hard @@ -17211,7 +17105,7 @@ __metadata: is-number-object: "npm:^1.0.4" is-string: "npm:^1.0.5" is-symbol: "npm:^1.0.3" - checksum: 0a62a03c00c91dd4fb1035b2f0733c341d805753b027eebd3a304b9cb70e8ce33e25317add2fe9b5fea6f53a175c0633ae701ff812e604410ddd049777cd435e + checksum: 10c0/0a62a03c00c91dd4fb1035b2f0733c341d805753b027eebd3a304b9cb70e8ce33e25317add2fe9b5fea6f53a175c0633ae701ff812e604410ddd049777cd435e languageName: node linkType: hard @@ -17231,7 +17125,7 @@ __metadata: which-boxed-primitive: "npm:^1.0.2" which-collection: "npm:^1.0.1" which-typed-array: "npm:^1.1.9" - checksum: 2b7b234df3443b52f4fbd2b65b731804de8d30bcc4210ec84107ef377a81923cea7f2763b7fb78b394175cea59118bf3c41b9ffd2d643cb1d748ef93b33b6bd4 + checksum: 10c0/2b7b234df3443b52f4fbd2b65b731804de8d30bcc4210ec84107ef377a81923cea7f2763b7fb78b394175cea59118bf3c41b9ffd2d643cb1d748ef93b33b6bd4 languageName: node linkType: hard @@ -17243,27 +17137,27 @@ __metadata: is-set: "npm:^2.0.1" is-weakmap: "npm:^2.0.1" is-weakset: "npm:^2.0.1" - checksum: 249f913e1758ed2f06f00706007d87dc22090a80591a56917376e70ecf8fc9ab6c41d98e1c87208bb9648676f65d4b09c0e4d23c56c7afb0f0a73a27d701df5d + checksum: 10c0/249f913e1758ed2f06f00706007d87dc22090a80591a56917376e70ecf8fc9ab6c41d98e1c87208bb9648676f65d4b09c0e4d23c56c7afb0f0a73a27d701df5d languageName: node linkType: hard "which-module@npm:^2.0.0": version: 2.0.1 resolution: "which-module@npm:2.0.1" - checksum: 087038e7992649eaffa6c7a4f3158d5b53b14cf5b6c1f0e043dccfacb1ba179d12f17545d5b85ebd94a42ce280a6fe65d0cbcab70f4fc6daad1dfae85e0e6a3e + checksum: 10c0/087038e7992649eaffa6c7a4f3158d5b53b14cf5b6c1f0e043dccfacb1ba179d12f17545d5b85ebd94a42ce280a6fe65d0cbcab70f4fc6daad1dfae85e0e6a3e languageName: node linkType: hard -"which-typed-array@npm:^1.1.11, which-typed-array@npm:^1.1.13, which-typed-array@npm:^1.1.9": - version: 1.1.13 - resolution: "which-typed-array@npm:1.1.13" +"which-typed-array@npm:^1.1.14, which-typed-array@npm:^1.1.9": + version: 1.1.14 + resolution: "which-typed-array@npm:1.1.14" dependencies: - available-typed-arrays: "npm:^1.0.5" - call-bind: "npm:^1.0.4" + available-typed-arrays: "npm:^1.0.6" + call-bind: "npm:^1.0.5" for-each: "npm:^0.3.3" gopd: "npm:^1.0.1" - has-tostringtag: "npm:^1.0.0" - checksum: 9f5f1c42918df3d5b91c4315ed0051d5d874370998bf095c9ae0df374f0881f85094e3c384b8fb08ab7b4d4f54ba81c0aff75da6226e7c0589b83dfbec1cd4c9 + has-tostringtag: "npm:^1.0.1" + checksum: 10c0/0960f1e77807058819451b98c51d4cd72031593e8de990b24bd3fc22e176f5eee22921d68d852297c786aec117689f0423ed20aa4fde7ce2704d680677891f56 languageName: node linkType: hard @@ -17274,7 +17168,7 @@ __metadata: isexe: "npm:^2.0.0" bin: which: ./bin/which - checksum: e945a8b6bbf6821aaaef7f6e0c309d4b615ef35699576d5489b4261da9539f70393c6b2ce700ee4321c18f914ebe5644bc4631b15466ffbaad37d83151f6af59 + checksum: 10c0/e945a8b6bbf6821aaaef7f6e0c309d4b615ef35699576d5489b4261da9539f70393c6b2ce700ee4321c18f914ebe5644bc4631b15466ffbaad37d83151f6af59 languageName: node linkType: hard @@ -17285,7 +17179,7 @@ __metadata: isexe: "npm:^2.0.0" bin: node-which: ./bin/node-which - checksum: 66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f + checksum: 10c0/66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f languageName: node linkType: hard @@ -17296,21 +17190,21 @@ __metadata: isexe: "npm:^3.1.1" bin: node-which: bin/which.js - checksum: 449fa5c44ed120ccecfe18c433296a4978a7583bf2391c50abce13f76878d2476defde04d0f79db8165bdf432853c1f8389d0485ca6e8ebce3bbcded513d5e6a + checksum: 10c0/449fa5c44ed120ccecfe18c433296a4978a7583bf2391c50abce13f76878d2476defde04d0f79db8165bdf432853c1f8389d0485ca6e8ebce3bbcded513d5e6a languageName: node linkType: hard "wicg-inert@npm:^3.1.2": version: 3.1.2 resolution: "wicg-inert@npm:3.1.2" - checksum: 5b20eaedcb30f1093fb6afd0480a059e40814da56c6052469c6fe95dd2d288b89c55ed1bdbfae4db70fd5ec8148dda8dd3b671a27a26870c8f77626b13cedd1b + checksum: 10c0/5b20eaedcb30f1093fb6afd0480a059e40814da56c6052469c6fe95dd2d288b89c55ed1bdbfae4db70fd5ec8148dda8dd3b671a27a26870c8f77626b13cedd1b languageName: node linkType: hard "wildcard@npm:^2.0.0": version: 2.0.1 resolution: "wildcard@npm:2.0.1" - checksum: 08f70cd97dd9a20aea280847a1fe8148e17cae7d231640e41eb26d2388697cbe65b67fd9e68715251c39b080c5ae4f76d71a9a69fa101d897273efdfb1b58bf7 + checksum: 10c0/08f70cd97dd9a20aea280847a1fe8148e17cae7d231640e41eb26d2388697cbe65b67fd9e68715251c39b080c5ae4f76d71a9a69fa101d897273efdfb1b58bf7 languageName: node linkType: hard @@ -17320,7 +17214,7 @@ __metadata: dependencies: idb: "npm:^7.0.1" workbox-core: "npm:7.0.0" - checksum: 91eb064c608cfb4cf7aa4f062215d8217a99b93d67c4ae571e5abdda1b020c5ab45c7bddab99cb77d334aae8d259f0fe91b7c42ee6e7ad10db32b4a971991489 + checksum: 10c0/91eb064c608cfb4cf7aa4f062215d8217a99b93d67c4ae571e5abdda1b020c5ab45c7bddab99cb77d334aae8d259f0fe91b7c42ee6e7ad10db32b4a971991489 languageName: node linkType: hard @@ -17329,7 +17223,7 @@ __metadata: resolution: "workbox-broadcast-update@npm:7.0.0" dependencies: workbox-core: "npm:7.0.0" - checksum: 3c3a6e1e72c19d2971d187297b99b242f304b1ec442f6f1ec84ea9c6e125dc01cd626d51e6ecf1c8d89226e6a286dccaa9f950bd5ef6183518af10ba0f4f524e + checksum: 10c0/3c3a6e1e72c19d2971d187297b99b242f304b1ec442f6f1ec84ea9c6e125dc01cd626d51e6ecf1c8d89226e6a286dccaa9f950bd5ef6183518af10ba0f4f524e languageName: node linkType: hard @@ -17374,7 +17268,7 @@ __metadata: workbox-streams: "npm:7.0.0" workbox-sw: "npm:7.0.0" workbox-window: "npm:7.0.0" - checksum: a090aeee836f59d42ca9eda8b82aa5a0ee8f4ce3f3095b6fcbe157a9a154c492e4ba86b5c4d6aa50ef7c37ea1c38c965442b56d1404911fd0351d0fc9a859a3c + checksum: 10c0/a090aeee836f59d42ca9eda8b82aa5a0ee8f4ce3f3095b6fcbe157a9a154c492e4ba86b5c4d6aa50ef7c37ea1c38c965442b56d1404911fd0351d0fc9a859a3c languageName: node linkType: hard @@ -17383,14 +17277,14 @@ __metadata: resolution: "workbox-cacheable-response@npm:7.0.0" dependencies: workbox-core: "npm:7.0.0" - checksum: ddf123b3461070e215af51d88c672f3302b540b93ecf61ad5f3853f0a997194973eedb2c9ed21e849b7419f68804ef8a8d876dced3836a7eb2c697099e3d408f + checksum: 10c0/ddf123b3461070e215af51d88c672f3302b540b93ecf61ad5f3853f0a997194973eedb2c9ed21e849b7419f68804ef8a8d876dced3836a7eb2c697099e3d408f languageName: node linkType: hard "workbox-core@npm:7.0.0": version: 7.0.0 resolution: "workbox-core@npm:7.0.0" - checksum: aaaf7b66978456bf5d6a90b1068b5acd82bf451f4a23c5a416201524b50ea4e0bc62a01365499bc088b4c18cddc513fdebbe8b048ab15aff960fe7cbbf55d5bd + checksum: 10c0/aaaf7b66978456bf5d6a90b1068b5acd82bf451f4a23c5a416201524b50ea4e0bc62a01365499bc088b4c18cddc513fdebbe8b048ab15aff960fe7cbbf55d5bd languageName: node linkType: hard @@ -17400,7 +17294,7 @@ __metadata: dependencies: idb: "npm:^7.0.1" workbox-core: "npm:7.0.0" - checksum: 990a6c2c9b177d796c012b0112913621e41b283e2736d83acb58cb9645591ddc7a6aef585145c5686f9b071d73ce12b4b1887765754624322545b0f4125d649f + checksum: 10c0/990a6c2c9b177d796c012b0112913621e41b283e2736d83acb58cb9645591ddc7a6aef585145c5686f9b071d73ce12b4b1887765754624322545b0f4125d649f languageName: node linkType: hard @@ -17412,7 +17306,7 @@ __metadata: workbox-core: "npm:7.0.0" workbox-routing: "npm:7.0.0" workbox-strategies: "npm:7.0.0" - checksum: 7656ab4bff15fbcbc7f546d86628ccbc74736a99139ec70a166c465fc4ff59656aecd44cc0aef45b4690fd88a4980d6c9f27ce8c6606fd12d026162259a8069d + checksum: 10c0/7656ab4bff15fbcbc7f546d86628ccbc74736a99139ec70a166c465fc4ff59656aecd44cc0aef45b4690fd88a4980d6c9f27ce8c6606fd12d026162259a8069d languageName: node linkType: hard @@ -17421,7 +17315,7 @@ __metadata: resolution: "workbox-navigation-preload@npm:7.0.0" dependencies: workbox-core: "npm:7.0.0" - checksum: f29ac8364c7f7f392daa1f886134adc780057199b218ab6c6eef298841b8825d6cbc4bc88e655299929bdf14c700edfb9f217ca5c0b46094627247528f655011 + checksum: 10c0/f29ac8364c7f7f392daa1f886134adc780057199b218ab6c6eef298841b8825d6cbc4bc88e655299929bdf14c700edfb9f217ca5c0b46094627247528f655011 languageName: node linkType: hard @@ -17432,7 +17326,7 @@ __metadata: workbox-core: "npm:7.0.0" workbox-routing: "npm:7.0.0" workbox-strategies: "npm:7.0.0" - checksum: 1b47cb151bb6ec7442b2dc8981203feff22527a4383510f2399730338b620ef0d03076bd3dbc1eb9a05272d5d6f4803fb4262f320bf5645f0818981e91077f39 + checksum: 10c0/1b47cb151bb6ec7442b2dc8981203feff22527a4383510f2399730338b620ef0d03076bd3dbc1eb9a05272d5d6f4803fb4262f320bf5645f0818981e91077f39 languageName: node linkType: hard @@ -17441,7 +17335,7 @@ __metadata: resolution: "workbox-range-requests@npm:7.0.0" dependencies: workbox-core: "npm:7.0.0" - checksum: 909f0ed7a176e5dc55692792825e67b577dacf1015a3f3775389fcec34ff5b3441b15595109455fe226f0bc4dce4789a7c86e5e9c5963c13b4d6482f6d01d44f + checksum: 10c0/909f0ed7a176e5dc55692792825e67b577dacf1015a3f3775389fcec34ff5b3441b15595109455fe226f0bc4dce4789a7c86e5e9c5963c13b4d6482f6d01d44f languageName: node linkType: hard @@ -17455,7 +17349,7 @@ __metadata: workbox-precaching: "npm:7.0.0" workbox-routing: "npm:7.0.0" workbox-strategies: "npm:7.0.0" - checksum: c024141f24b0778355bdfbfe2b4a24a3f74e279f6f7541635758533e79318e15986f9f556a899c97717a9c25a1738d9e112d17dd36aa19cebf901462ebeeb8e4 + checksum: 10c0/c024141f24b0778355bdfbfe2b4a24a3f74e279f6f7541635758533e79318e15986f9f556a899c97717a9c25a1738d9e112d17dd36aa19cebf901462ebeeb8e4 languageName: node linkType: hard @@ -17464,7 +17358,7 @@ __metadata: resolution: "workbox-routing@npm:7.0.0" dependencies: workbox-core: "npm:7.0.0" - checksum: 74ad651a0643506cfd3ca51eee754f5fe34e3f1460e6b772ed213e0422028cf002d70f91da32d13261bc5ee2160527ffb5436ac209fdbe8d0e7071784aa65190 + checksum: 10c0/74ad651a0643506cfd3ca51eee754f5fe34e3f1460e6b772ed213e0422028cf002d70f91da32d13261bc5ee2160527ffb5436ac209fdbe8d0e7071784aa65190 languageName: node linkType: hard @@ -17473,7 +17367,7 @@ __metadata: resolution: "workbox-strategies@npm:7.0.0" dependencies: workbox-core: "npm:7.0.0" - checksum: 4fe122b80e547b347bedf187aeb2c2eb34efc3fbde2733b7709530cccb6b6e03b29adcbccecf301e4fcaad0d5cd4a74e1e704f769d949c32439dca358130a613 + checksum: 10c0/4fe122b80e547b347bedf187aeb2c2eb34efc3fbde2733b7709530cccb6b6e03b29adcbccecf301e4fcaad0d5cd4a74e1e704f769d949c32439dca358130a613 languageName: node linkType: hard @@ -17483,14 +17377,14 @@ __metadata: dependencies: workbox-core: "npm:7.0.0" workbox-routing: "npm:7.0.0" - checksum: 9a1a9b8200f5b315523ac49c61a9b88791009377bbdedd44cf19c4b2258e710bd2fbc6f74ef53b72db7849da7ce9965ced5983f167785ccfc7efa1df761e3371 + checksum: 10c0/9a1a9b8200f5b315523ac49c61a9b88791009377bbdedd44cf19c4b2258e710bd2fbc6f74ef53b72db7849da7ce9965ced5983f167785ccfc7efa1df761e3371 languageName: node linkType: hard "workbox-sw@npm:7.0.0": version: 7.0.0 resolution: "workbox-sw@npm:7.0.0" - checksum: 06d9713398ca92d8b2cad70a7d302825ec7650e05e2e0c8e68f453442fdf9a9227350c856484f7b649df6cb429cc03a103f8ecd9596e83bfa52e845bf25ffbcd + checksum: 10c0/06d9713398ca92d8b2cad70a7d302825ec7650e05e2e0c8e68f453442fdf9a9227350c856484f7b649df6cb429cc03a103f8ecd9596e83bfa52e845bf25ffbcd languageName: node linkType: hard @@ -17505,7 +17399,7 @@ __metadata: workbox-build: "npm:7.0.0" peerDependencies: webpack: ^4.4.0 || ^5.9.0 - checksum: 3d585842bb6f801db5571e4d3e5c1d7c141f91d9ba2ed0c36b617d86a00b37bdefc055e6cc981c557f21f878ff4a9cf8b82e4b0b31084ddf4d9d149673ce8882 + checksum: 10c0/3d585842bb6f801db5571e4d3e5c1d7c141f91d9ba2ed0c36b617d86a00b37bdefc055e6cc981c557f21f878ff4a9cf8b82e4b0b31084ddf4d9d149673ce8882 languageName: node linkType: hard @@ -17515,7 +17409,7 @@ __metadata: dependencies: "@types/trusted-types": "npm:^2.0.2" workbox-core: "npm:7.0.0" - checksum: 8070fb80734a8543248ed6e3b186b8d3ee64419400a6d6d75f78809c44bf16321c5d9739bdf60ee62f631461ebb67a8a7dd78192504678d00bf2a9d3683f1324 + checksum: 10c0/8070fb80734a8543248ed6e3b186b8d3ee64419400a6d6d75f78809c44bf16321c5d9739bdf60ee62f631461ebb67a8a7dd78192504678d00bf2a9d3683f1324 languageName: node linkType: hard @@ -17526,7 +17420,7 @@ __metadata: ansi-styles: "npm:^4.0.0" string-width: "npm:^4.1.0" strip-ansi: "npm:^6.0.0" - checksum: d15fc12c11e4cbc4044a552129ebc75ee3f57aa9c1958373a4db0292d72282f54373b536103987a4a7594db1ef6a4f10acf92978f79b98c49306a4b58c77d4da + checksum: 10c0/d15fc12c11e4cbc4044a552129ebc75ee3f57aa9c1958373a4db0292d72282f54373b536103987a4a7594db1ef6a4f10acf92978f79b98c49306a4b58c77d4da languageName: node linkType: hard @@ -17537,7 +17431,7 @@ __metadata: ansi-styles: "npm:^3.2.0" string-width: "npm:^3.0.0" strip-ansi: "npm:^5.0.0" - checksum: fcd0b39b7453df512f2fe8c714a1c1b147fe3e6a4b5a2e4de6cadc3af47212f335eceaffe588e98322d6345e72672137e2c0b834d8a662e73a32296c1c8216bb + checksum: 10c0/fcd0b39b7453df512f2fe8c714a1c1b147fe3e6a4b5a2e4de6cadc3af47212f335eceaffe588e98322d6345e72672137e2c0b834d8a662e73a32296c1c8216bb languageName: node linkType: hard @@ -17548,7 +17442,7 @@ __metadata: ansi-styles: "npm:^6.1.0" string-width: "npm:^5.0.1" strip-ansi: "npm:^7.0.1" - checksum: 138ff58a41d2f877eae87e3282c0630fc2789012fc1af4d6bd626eeb9a2f9a65ca92005e6e69a75c7b85a68479fe7443c7dbe1eb8fbaa681a4491364b7c55c60 + checksum: 10c0/138ff58a41d2f877eae87e3282c0630fc2789012fc1af4d6bd626eeb9a2f9a65ca92005e6e69a75c7b85a68479fe7443c7dbe1eb8fbaa681a4491364b7c55c60 languageName: node linkType: hard @@ -17559,14 +17453,14 @@ __metadata: ansi-styles: "npm:^6.2.1" string-width: "npm:^7.0.0" strip-ansi: "npm:^7.1.0" - checksum: a139b818da9573677548dd463bd626a5a5286271211eb6e4e82f34a4f643191d74e6d4a9bb0a3c26ec90e6f904f679e0569674ac099ea12378a8b98e20706066 + checksum: 10c0/a139b818da9573677548dd463bd626a5a5286271211eb6e4e82f34a4f643191d74e6d4a9bb0a3c26ec90e6f904f679e0569674ac099ea12378a8b98e20706066 languageName: node linkType: hard "wrappy@npm:1": version: 1.0.2 resolution: "wrappy@npm:1.0.2" - checksum: 56fece1a4018c6a6c8e28fbc88c87e0fbf4ea8fd64fc6c63b18f4acc4bd13e0ad2515189786dd2c30d3eec9663d70f4ecf699330002f8ccb547e4a18231fc9f0 + checksum: 10c0/56fece1a4018c6a6c8e28fbc88c87e0fbf4ea8fd64fc6c63b18f4acc4bd13e0ad2515189786dd2c30d3eec9663d70f4ecf699330002f8ccb547e4a18231fc9f0 languageName: node linkType: hard @@ -17576,7 +17470,7 @@ __metadata: dependencies: imurmurhash: "npm:^0.1.4" signal-exit: "npm:^3.0.7" - checksum: a2c282c95ef5d8e1c27b335ae897b5eca00e85590d92a3fd69a437919b7b93ff36a69ea04145da55829d2164e724bc62202cdb5f4b208b425aba0807889375c7 + checksum: 10c0/a2c282c95ef5d8e1c27b335ae897b5eca00e85590d92a3fd69a437919b7b93ff36a69ea04145da55829d2164e724bc62202cdb5f4b208b425aba0807889375c7 languageName: node linkType: hard @@ -17586,7 +17480,7 @@ __metadata: dependencies: imurmurhash: "npm:^0.1.4" signal-exit: "npm:^4.0.1" - checksum: e8c850a8e3e74eeadadb8ad23c9d9d63e4e792bd10f4836ed74189ef6e996763959f1249c5650e232f3c77c11169d239cbfc8342fc70f3fe401407d23810505d + checksum: 10c0/e8c850a8e3e74eeadadb8ad23c9d9d63e4e792bd10f4836ed74189ef6e996763959f1249c5650e232f3c77c11169d239cbfc8342fc70f3fe401407d23810505d languageName: node linkType: hard @@ -17595,7 +17489,7 @@ __metadata: resolution: "ws@npm:6.2.2" dependencies: async-limiter: "npm:~1.0.0" - checksum: d628a1e95668a296644b4f51ce5debb43d9f1d89ebb2e32fef205a685b9439378eb824d60ce3a40bbc3bad0e887d84a56b343f2076f48d74f17c4c0800c42967 + checksum: 10c0/d628a1e95668a296644b4f51ce5debb43d9f1d89ebb2e32fef205a685b9439378eb824d60ce3a40bbc3bad0e887d84a56b343f2076f48d74f17c4c0800c42967 languageName: node linkType: hard @@ -17610,7 +17504,7 @@ __metadata: optional: true utf-8-validate: optional: true - checksum: aec4ef4eb65821a7dde7b44790f8699cfafb7978c9b080f6d7a98a7f8fc0ce674c027073a78574c94786ba7112cc90fa2cc94fc224ceba4d4b1030cff9662494 + checksum: 10c0/aec4ef4eb65821a7dde7b44790f8699cfafb7978c9b080f6d7a98a7f8fc0ce674c027073a78574c94786ba7112cc90fa2cc94fc224ceba4d4b1030cff9662494 languageName: node linkType: hard @@ -17625,77 +17519,77 @@ __metadata: optional: true utf-8-validate: optional: true - checksum: a7783bb421c648b1e622b423409cb2a58ac5839521d2f689e84bc9dc41d59379c692dd405b15a997ea1d4c0c2e5314ad707332d0c558f15232d2bc07c0b4618a + checksum: 10c0/a7783bb421c648b1e622b423409cb2a58ac5839521d2f689e84bc9dc41d59379c692dd405b15a997ea1d4c0c2e5314ad707332d0c558f15232d2bc07c0b4618a languageName: node linkType: hard "xml-name-validator@npm:^4.0.0": version: 4.0.0 resolution: "xml-name-validator@npm:4.0.0" - checksum: c1bfa219d64e56fee265b2bd31b2fcecefc063ee802da1e73bad1f21d7afd89b943c9e2c97af2942f60b1ad46f915a4c81e00039c7d398b53cf410e29d3c30bd + checksum: 10c0/c1bfa219d64e56fee265b2bd31b2fcecefc063ee802da1e73bad1f21d7afd89b943c9e2c97af2942f60b1ad46f915a4c81e00039c7d398b53cf410e29d3c30bd languageName: node linkType: hard "xml-name-validator@npm:^5.0.0": version: 5.0.0 resolution: "xml-name-validator@npm:5.0.0" - checksum: 3fcf44e7b73fb18be917fdd4ccffff3639373c7cb83f8fc35df6001fecba7942f1dbead29d91ebb8315e2f2ff786b508f0c9dc0215b6353f9983c6b7d62cb1f5 + checksum: 10c0/3fcf44e7b73fb18be917fdd4ccffff3639373c7cb83f8fc35df6001fecba7942f1dbead29d91ebb8315e2f2ff786b508f0c9dc0215b6353f9983c6b7d62cb1f5 languageName: node linkType: hard "xmlchars@npm:^2.2.0": version: 2.2.0 resolution: "xmlchars@npm:2.2.0" - checksum: b64b535861a6f310c5d9bfa10834cf49127c71922c297da9d4d1b45eeaae40bf9b4363275876088fbe2667e5db028d2cd4f8ee72eed9bede840a67d57dab7593 + checksum: 10c0/b64b535861a6f310c5d9bfa10834cf49127c71922c297da9d4d1b45eeaae40bf9b4363275876088fbe2667e5db028d2cd4f8ee72eed9bede840a67d57dab7593 languageName: node linkType: hard "xtend@npm:^4.0.0": version: 4.0.2 resolution: "xtend@npm:4.0.2" - checksum: 366ae4783eec6100f8a02dff02ac907bf29f9a00b82ac0264b4d8b832ead18306797e283cf19de776538babfdcb2101375ec5646b59f08c52128ac4ab812ed0e + checksum: 10c0/366ae4783eec6100f8a02dff02ac907bf29f9a00b82ac0264b4d8b832ead18306797e283cf19de776538babfdcb2101375ec5646b59f08c52128ac4ab812ed0e languageName: node linkType: hard "y18n@npm:^4.0.0": version: 4.0.3 resolution: "y18n@npm:4.0.3" - checksum: 308a2efd7cc296ab2c0f3b9284fd4827be01cfeb647b3ba18230e3a416eb1bc887ac050de9f8c4fd9e7856b2e8246e05d190b53c96c5ad8d8cb56dffb6f81024 + checksum: 10c0/308a2efd7cc296ab2c0f3b9284fd4827be01cfeb647b3ba18230e3a416eb1bc887ac050de9f8c4fd9e7856b2e8246e05d190b53c96c5ad8d8cb56dffb6f81024 languageName: node linkType: hard "y18n@npm:^5.0.5": version: 5.0.8 resolution: "y18n@npm:5.0.8" - checksum: 4df2842c36e468590c3691c894bc9cdbac41f520566e76e24f59401ba7d8b4811eb1e34524d57e54bc6d864bcb66baab7ffd9ca42bf1eda596618f9162b91249 + checksum: 10c0/4df2842c36e468590c3691c894bc9cdbac41f520566e76e24f59401ba7d8b4811eb1e34524d57e54bc6d864bcb66baab7ffd9ca42bf1eda596618f9162b91249 languageName: node linkType: hard "yallist@npm:^3.0.2": version: 3.1.1 resolution: "yallist@npm:3.1.1" - checksum: c66a5c46bc89af1625476f7f0f2ec3653c1a1791d2f9407cfb4c2ba812a1e1c9941416d71ba9719876530e3340a99925f697142989371b72d93b9ee628afd8c1 + checksum: 10c0/c66a5c46bc89af1625476f7f0f2ec3653c1a1791d2f9407cfb4c2ba812a1e1c9941416d71ba9719876530e3340a99925f697142989371b72d93b9ee628afd8c1 languageName: node linkType: hard "yallist@npm:^4.0.0": version: 4.0.0 resolution: "yallist@npm:4.0.0" - checksum: 2286b5e8dbfe22204ab66e2ef5cc9bbb1e55dfc873bbe0d568aa943eb255d131890dfd5bf243637273d31119b870f49c18fcde2c6ffbb7a7a092b870dc90625a + checksum: 10c0/2286b5e8dbfe22204ab66e2ef5cc9bbb1e55dfc873bbe0d568aa943eb255d131890dfd5bf243637273d31119b870f49c18fcde2c6ffbb7a7a092b870dc90625a languageName: node linkType: hard "yaml@npm:2.3.4": version: 2.3.4 resolution: "yaml@npm:2.3.4" - checksum: cf03b68f8fef5e8516b0f0b54edaf2459f1648317fc6210391cf606d247e678b449382f4bd01f77392538429e306c7cba8ff46ff6b37cac4de9a76aff33bd9e1 + checksum: 10c0/cf03b68f8fef5e8516b0f0b54edaf2459f1648317fc6210391cf606d247e678b449382f4bd01f77392538429e306c7cba8ff46ff6b37cac4de9a76aff33bd9e1 languageName: node linkType: hard "yaml@npm:^1.10.0": version: 1.10.2 resolution: "yaml@npm:1.10.2" - checksum: 5c28b9eb7adc46544f28d9a8d20c5b3cb1215a886609a2fd41f51628d8aaa5878ccd628b755dbcd29f6bb4921bd04ffbc6dcc370689bb96e594e2f9813d2605f + checksum: 10c0/5c28b9eb7adc46544f28d9a8d20c5b3cb1215a886609a2fd41f51628d8aaa5878ccd628b755dbcd29f6bb4921bd04ffbc6dcc370689bb96e594e2f9813d2605f languageName: node linkType: hard @@ -17705,21 +17599,21 @@ __metadata: dependencies: camelcase: "npm:^5.0.0" decamelize: "npm:^1.2.0" - checksum: aeded49d2285c5e284e48b7c69eab4a6cf1c94decfdba073125cc4054ff49da7128a3c7c840edb6b497a075e455be304e89ba4b9228be35f1ed22f4a7bba62cc + checksum: 10c0/aeded49d2285c5e284e48b7c69eab4a6cf1c94decfdba073125cc4054ff49da7128a3c7c840edb6b497a075e455be304e89ba4b9228be35f1ed22f4a7bba62cc languageName: node linkType: hard "yargs-parser@npm:^20.2.1": version: 20.2.9 resolution: "yargs-parser@npm:20.2.9" - checksum: 0685a8e58bbfb57fab6aefe03c6da904a59769bd803a722bb098bd5b0f29d274a1357762c7258fb487512811b8063fb5d2824a3415a0a4540598335b3b086c72 + checksum: 10c0/0685a8e58bbfb57fab6aefe03c6da904a59769bd803a722bb098bd5b0f29d274a1357762c7258fb487512811b8063fb5d2824a3415a0a4540598335b3b086c72 languageName: node linkType: hard "yargs-parser@npm:^21.1.1": version: 21.1.1 resolution: "yargs-parser@npm:21.1.1" - checksum: f84b5e48169479d2f402239c59f084cfd1c3acc197a05c59b98bab067452e6b3ea46d4dd8ba2985ba7b3d32a343d77df0debd6b343e5dae3da2aab2cdf5886b2 + checksum: 10c0/f84b5e48169479d2f402239c59f084cfd1c3acc197a05c59b98bab067452e6b3ea46d4dd8ba2985ba7b3d32a343d77df0debd6b343e5dae3da2aab2cdf5886b2 languageName: node linkType: hard @@ -17737,11 +17631,11 @@ __metadata: which-module: "npm:^2.0.0" y18n: "npm:^4.0.0" yargs-parser: "npm:^13.1.2" - checksum: 6612f9f0ffeee07fff4c85f153d10eba4072bf5c11e1acba96153169f9d771409dfb63253dbb0841ace719264b663cd7b18c75c0eba91af7740e76094239d386 + checksum: 10c0/6612f9f0ffeee07fff4c85f153d10eba4072bf5c11e1acba96153169f9d771409dfb63253dbb0841ace719264b663cd7b18c75c0eba91af7740e76094239d386 languageName: node linkType: hard -"yargs@npm:^17.3.1, yargs@npm:^17.7.2": +"yargs@npm:^17.3.1": version: 17.7.2 resolution: "yargs@npm:17.7.2" dependencies: @@ -17752,20 +17646,20 @@ __metadata: string-width: "npm:^4.2.3" y18n: "npm:^5.0.5" yargs-parser: "npm:^21.1.1" - checksum: ccd7e723e61ad5965fffbb791366db689572b80cca80e0f96aad968dfff4156cd7cd1ad18607afe1046d8241e6fb2d6c08bf7fa7bfb5eaec818735d8feac8f05 + checksum: 10c0/ccd7e723e61ad5965fffbb791366db689572b80cca80e0f96aad968dfff4156cd7cd1ad18607afe1046d8241e6fb2d6c08bf7fa7bfb5eaec818735d8feac8f05 languageName: node linkType: hard "yocto-queue@npm:^0.1.0": version: 0.1.0 resolution: "yocto-queue@npm:0.1.0" - checksum: dceb44c28578b31641e13695d200d34ec4ab3966a5729814d5445b194933c096b7ced71494ce53a0e8820685d1d010df8b2422e5bf2cdea7e469d97ffbea306f + checksum: 10c0/dceb44c28578b31641e13695d200d34ec4ab3966a5729814d5445b194933c096b7ced71494ce53a0e8820685d1d010df8b2422e5bf2cdea7e469d97ffbea306f languageName: node linkType: hard "zlibjs@npm:^0.3.1": version: 0.3.1 resolution: "zlibjs@npm:0.3.1" - checksum: 2d110bfcb0f8b8dbf225423f6556da9c5bca95c8b849c1218983676158a24b5cd0350357e0c4d504e27f8c7e18d471d9712576f35114a81a51bcf83453f02beb + checksum: 10c0/2d110bfcb0f8b8dbf225423f6556da9c5bca95c8b849c1218983676158a24b5cd0350357e0c4d504e27f8c7e18d471d9712576f35114a81a51bcf83453f02beb languageName: node linkType: hard