diff --git a/.detoxrc.js b/.detoxrc.js deleted file mode 100644 index 9066204308..0000000000 --- a/.detoxrc.js +++ /dev/null @@ -1,86 +0,0 @@ -/** @type {Detox.DetoxConfig} */ -module.exports = { - testRunner: { - args: { - $0: 'jest', - config: '__e2e__/jest.config.js', - }, - jest: { - setupTimeout: 120000, - }, - }, - apps: { - 'ios.debug': { - type: 'ios.app', - binaryPath: 'ios/build/Build/Products/Debug-iphonesimulator/bluesky.app', - build: - 'xcodebuild -workspace ios/Bluesky.xcworkspace -scheme Bluesky -configuration Debug -sdk iphonesimulator -derivedDataPath ios/build', - }, - 'ios.release': { - type: 'ios.app', - binaryPath: - 'ios/build/Build/Products/Release-iphonesimulator/bluesky.app', - build: - 'xcodebuild -workspace ios/Bluesky.xcworkspace -scheme Bluesky -configuration Release -sdk iphonesimulator -derivedDataPath ios/build', - }, - 'android.debug': { - type: 'android.apk', - binaryPath: 'android/app/build/outputs/apk/debug/app-debug.apk', - build: - 'cd android ; ./gradlew assembleDebug assembleAndroidTest -DtestBuildType=debug ; cd -', - reversePorts: [8081], - }, - 'android.release': { - type: 'android.apk', - binaryPath: 'android/app/build/outputs/apk/release/app-release.apk', - build: - 'cd android ; ./gradlew assembleRelease assembleAndroidTest -DtestBuildType=release ; cd -', - }, - }, - devices: { - simulator: { - type: 'ios.simulator', - device: { - type: 'iPhone 15 Pro', - }, - }, - attached: { - type: 'android.attached', - device: { - adbName: '.*', - }, - }, - emulator: { - type: 'android.emulator', - device: { - avdName: 'Pixel_3a_API_30_x86', - }, - }, - }, - configurations: { - 'ios.sim.debug': { - device: 'simulator', - app: 'ios.debug', - }, - 'ios.sim.release': { - device: 'simulator', - app: 'ios.release', - }, - 'android.att.debug': { - device: 'attached', - app: 'android.debug', - }, - 'android.att.release': { - device: 'attached', - app: 'android.release', - }, - 'android.emu.debug': { - device: 'emulator', - app: 'android.debug', - }, - 'android.emu.release': { - device: 'emulator', - app: 'android.release', - }, - }, -} diff --git a/.eslintrc.js b/.eslintrc.js index 29136d5dd0..541b3d6153 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -9,11 +9,11 @@ module.exports = { parser: '@typescript-eslint/parser', plugins: [ '@typescript-eslint', - 'detox', 'react', 'lingui', 'simple-import-sort', 'bsky-internal', + 'eslint-plugin-react-compiler', ], rules: { // Temporary until https://github.com/facebook/react-native/pull/43756 gets into a release. @@ -68,6 +68,8 @@ module.exports = { }, ], 'simple-import-sort/exports': 'warn', + // TODO: Reenable when we figure out why it gets stuck on CI. + // 'react-compiler/react-compiler': 'error', }, ignorePatterns: [ '**/__mocks__/*.ts', diff --git a/.github/workflows/build-and-push-bskyweb-aws.yaml b/.github/workflows/build-and-push-bskyweb-aws.yaml index c445ca2d52..6eb9485b14 100644 --- a/.github/workflows/build-and-push-bskyweb-aws.yaml +++ b/.github/workflows/build-and-push-bskyweb-aws.yaml @@ -43,6 +43,10 @@ jobs: tags: | type=sha,enable=true,priority=100,prefix=,suffix=,format=long + - name: Set outputs + id: vars + run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT + - name: Build and push Docker image id: build-and-push uses: docker/build-push-action@v4 @@ -54,6 +58,5 @@ jobs: labels: ${{ steps.meta.outputs.labels }} cache-from: type=gha cache-to: type=gha,mode=max - env: - EXPO_PUBLIC_BUNDLE_IDENTIFIER: $(git rev-parse --short HEAD) - EXPO_PUBLIC_BUNDLE_DATE: $(date -u +"%y%m%d%H") + build-args: | + EXPO_PUBLIC_BUNDLE_IDENTIFIER=${{ steps.vars.outputs.sha_short }} diff --git a/.github/workflows/build-submit-android.yml b/.github/workflows/build-submit-android.yml index e6ce20b86d..c487c2ab8a 100644 --- a/.github/workflows/build-submit-android.yml +++ b/.github/workflows/build-submit-android.yml @@ -119,3 +119,15 @@ jobs: env: SLACK_WEBHOOK_URL: ${{ secrets.SLACK_CLIENT_ALERT_WEBHOOK }} SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK + + - name: ⬇️ Restore Cache + id: get-base-commit + uses: actions/cache@v4 + if: ${{ inputs.profile == 'testflight' }} + with: + path: most-recent-testflight-commit.txt + key: most-recent-testflight-commit + + - name: ✏️ Write commit hash to cache + if: ${{ inputs.profile == 'testflight' }} + run: echo ${{ github.sha }} > most-recent-testflight-commit.txt diff --git a/.github/workflows/build-submit-ios.yml b/.github/workflows/build-submit-ios.yml index bfd0670956..c1693b814d 100644 --- a/.github/workflows/build-submit-ios.yml +++ b/.github/workflows/build-submit-ios.yml @@ -47,6 +47,10 @@ jobs: - name: ⚙️ Install dependencies run: yarn install + - uses: maxim-lobanov/setup-xcode@v1 + with: + xcode-version: '15.3' + - name: ☕️ Setup Cocoapods uses: maxim-lobanov/setup-cocoapods@v1 with: @@ -76,3 +80,15 @@ jobs: - name: 🚀 Deploy run: eas submit -p ios --non-interactive --path build.ipa + + - name: ⬇️ Restore Cache + id: get-base-commit + uses: actions/cache@v4 + if: ${{ inputs.profile == 'testflight' }} + with: + path: most-recent-testflight-commit.txt + key: most-recent-testflight-commit + + - name: ✏️ Write commit hash to cache + if: ${{ inputs.profile == 'testflight' }} + run: echo ${{ github.sha }} > most-recent-testflight-commit.txt diff --git a/.github/workflows/bundle-deploy-eas-update.yml b/.github/workflows/bundle-deploy-eas-update.yml index 3d49404677..a684f525fd 100644 --- a/.github/workflows/bundle-deploy-eas-update.yml +++ b/.github/workflows/bundle-deploy-eas-update.yml @@ -26,7 +26,7 @@ jobs: group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }}-deploy cancel-in-progress: true outputs: - fingerprint-is-different: ${{ steps.fingerprint-debug.outputs.fingerprint-is-different }} + changes-detected: ${{ steps.fingerprint.outputs.includes-changes }} steps: - name: Check for EXPO_TOKEN @@ -49,69 +49,22 @@ jobs: with: fetch-depth: 0 - - name: ⬇️ Get last successful deployment commit from the cache - id: get-base-commit - uses: actions/cache@v4 - with: - path: last-successful-commit-hash.txt - key: last-successful-deployment-commit-${{ github.ref_name }}-${{ github.sha }} - restore-keys: | - last-successful-deployment-commit-${{ github.ref_name }}- - - - name: Add the last successful deployment commit to the output - id: last-successful-commit - run: echo base-commit=$(cat last-successful-commit-hash.txt) >> "$GITHUB_OUTPUT" - - name: ⬇️ Fetch commits from base branch if: ${{ github.ref != 'refs/heads/main' }} run: git fetch origin main:main --depth 100 - # This should get the current production release's commit's hash to see if the update is compatible - - name: 🕵️ Get the base commit - id: base-commit - run: | - if ${{ inputs.channel == 'production' }}; then - echo base-commit=$(git show-ref -s ${{ inputs.runtimeVersion }}) >> "$GITHUB_OUTPUT" - else - echo base-commit=${{ steps.last-successful-commit.base-commit }} >> "$GITHUB_OUTPUT" - fi - - - name: ✓ Make sure we found a base commit - run: | - if [ -z "${{ steps.base-commit.outputs.base-commit }}" && ${{ inputs.channel == 'production' }} ]; then - echo "Could not find a base commit for this release. Exiting." - exit 1 - fi - - name: 🔧 Setup Node uses: actions/setup-node@v4 with: node-version-file: .nvmrc cache: yarn - - name: ⚙️ Install Dependencies - run: yarn install - - # Run the fingerprint - - name: 📷 Check fingerprint + - name: 📷 Check fingerprint and install dependencies id: fingerprint - uses: expo/expo-github-action/fingerprint@main + uses: bluesky-social/github-actions/fingerprint-native@main with: - previous-git-commit: ${{ steps.base-commit.outputs.base-commit }} - - - name: 👀 Debug fingerprint - id: fingerprint-debug - run: | - echo "previousGitCommit=${{ steps.fingerprint.outputs.previous-git-commit }} currentGitCommit=${{ steps.fingerprint.outputs.current-git-commit }}" - echo "isPreviousFingerprintEmpty=${{ steps.fingerprint.outputs.previous-fingerprint == '' }}" - - fingerprintDiff='$(echo "${{ steps.fingerprint.outputs.fingerprint-diff }}")' - - if [[ $fingerprintDiff =~ "bareRncliAutolinking" || $fingerprintDiff =~ "expoAutolinkingAndroid" || $fingerprintDiff =~ "expoAutolinkingIos" ]]; then - echo fingerprint-is-different="true" >> "$GITHUB_OUTPUT" - else - echo fingerprint-is-different="false" >> "$GITHUB_OUTPUT" - fi + profile: ${{ inputs.channel || 'testflight' }} + previous-commit-tag: ${{ inputs.runtimeVersion }} - name: Lint check run: yarn lint @@ -127,22 +80,22 @@ jobs: - name: 🔨 Setup EAS uses: expo/expo-github-action@v8 - if: ${{ steps.fingerprint-debug.outputs.fingerprint-is-different == 'false'}} + if: ${{ !steps.fingerprint.outputs.includes-changes }} with: expo-version: latest eas-version: latest token: ${{ secrets.EXPO_TOKEN }} - name: ⛏️ Setup Expo - if: ${{ steps.fingerprint-debug.outputs.fingerprint-is-different == 'false'}} + if: ${{ !steps.fingerprint.outputs.includes-changes }} run: yarn global add eas-cli-local-build-plugin - name: 🪛 Setup jq - if: ${{ steps.fingerprint-debug.outputs.fingerprint-is-different == 'false'}} + if: ${{ !steps.fingerprint.outputs.includes-changes }} uses: dcarbone/install-jq-action@v2 - name: ✏️ Write environment variables - if: ${{ steps.fingerprint-debug.outputs.fingerprint-is-different == 'false'}} + if: ${{ !steps.fingerprint.outputs.includes-changes }} run: | export json='${{ secrets.GOOGLE_SERVICES_TOKEN }}' echo "${{ secrets.ENV_TOKEN }}" > .env @@ -151,19 +104,28 @@ jobs: echo "$json" > google-services.json - name: 🏗️ Create Bundle - if: ${{ steps.fingerprint-debug.outputs.fingerprint-is-different == 'false'}} + if: ${{ !steps.fingerprint.outputs.includes-changes }} run: EXPO_PUBLIC_ENV="${{ inputs.channel || 'testflight' }}" yarn export - name: 📦 Package Bundle and 🚀 Deploy - if: ${{ steps.fingerprint-debug.outputs.fingerprint-is-different == 'false'}} + if: ${{ !steps.fingerprint.outputs.includes-changes }} run: yarn use-build-number bash scripts/bundleUpdate.sh env: DENIS_API_KEY: ${{ secrets.DENIS_API_KEY }} RUNTIME_VERSION: ${{ inputs.runtimeVersion }} CHANNEL_NAME: ${{ inputs.channel || 'testflight' }} - - name: Save successful deployment commit hash - run: echo ${{ steps.fingerprint.outputs.current-git-commit }} > last-successful-commit-hash.txt + - name: ⬇️ Restore Cache + id: get-base-commit + uses: actions/cache@v4 + if: ${{ !steps.fingerprint.outputs.includes-changes }} + with: + path: most-recent-testflight-commit.txt + key: most-recent-testflight-commit + + - name: ✏️ Write commit hash to cache + if: ${{ !steps.fingerprint.outputs.includes-changes }} + run: echo ${{ github.sha }} > most-recent-testflight-commit.txt # GitHub actions are horrible so let's just copy paste this in buildIfNecessaryIOS: @@ -171,11 +133,11 @@ jobs: runs-on: macos-14 concurrency: group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }}-build-ios - cancel-in-progress: false + cancel-in-progress: true needs: [bundleDeploy] # Gotta check if its NOT '[]' because any md5 hash in the outputs is detected as a possible secret and won't be # available here - if: ${{ inputs.channel != 'production' && needs.bundleDeploy.outputs.fingerprint-is-different == 'true' }} + if: ${{ inputs.channel != 'production' && needs.bundleDeploy.outputs.changes-detected }} steps: - name: Check for EXPO_TOKEN run: > @@ -208,6 +170,10 @@ jobs: - name: ⚙️ Install dependencies run: yarn install + - uses: maxim-lobanov/setup-xcode@v1 + with: + xcode-version: '15.3' + - name: ☕️ Setup Cocoapods uses: maxim-lobanov/setup-cocoapods@v1 with: @@ -238,6 +204,18 @@ jobs: - name: 🚀 Deploy run: eas submit -p ios --non-interactive --path build.ipa + - name: ⬇️ Restore Cache + id: get-base-commit + uses: actions/cache@v4 + if: ${{ inputs.channel == 'testflight' }} + with: + path: most-recent-testflight-commit.txt + key: most-recent-testflight-commit + + - name: ✏️ Write commit hash to cache + if: ${{ inputs.channel == 'testflight' }} + run: echo ${{ github.sha }} > most-recent-testflight-commit.txt + buildIfNecessaryAndroid: name: Build and Submit Android runs-on: ubuntu-latest @@ -247,7 +225,7 @@ jobs: needs: [ bundleDeploy ] # Gotta check if its NOT '[]' because any md5 hash in the outputs is detected as a possible secret and won't be # available here - if: ${{ inputs.channel != 'production' && needs.bundleDeploy.outputs.fingerprint-is-different == 'true' }} + if: ${{ inputs.channel != 'production' && needs.bundleDeploy.outputs.changes-detected }} steps: - name: Check for EXPO_TOKEN @@ -325,3 +303,15 @@ jobs: env: SLACK_WEBHOOK_URL: ${{ secrets.SLACK_CLIENT_ALERT_WEBHOOK }} SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK + + - name: ⬇️ Restore Cache + id: get-base-commit + uses: actions/cache@v4 + if: ${{ inputs.channel != 'testflight' && inputs.channel != 'production' }} + with: + path: most-recent-testflight-commit.txt + key: most-recent-testflight-commit + + - name: ✏️ Write commit hash to cache + if: ${{ inputs.channel != 'testflight' && inputs.channel != 'production' }} + run: echo ${{ github.sha }} > most-recent-testflight-commit.txt diff --git a/.github/workflows/pull-request-commit.yml b/.github/workflows/pull-request-commit.yml index 6c796fd7c4..53e3cc9983 100644 --- a/.github/workflows/pull-request-commit.yml +++ b/.github/workflows/pull-request-commit.yml @@ -1,7 +1,7 @@ # Credit for fingerprint action https://github.com/expo/expo # https://github.com/expo/expo/blob/main/.github/workflows/pr-labeler.yml --- -name: PR labeler +name: PR Tests on: push: @@ -21,7 +21,7 @@ permissions: jobs: webpack-analyzer: runs-on: ubuntu-22.04 - if: ${{ github.event.pull_request.head.repo.full_name == github.repository }} + if: ${{ github.event.pull_request.head.repo.full_name == github.repository && github.event_name == 'pull_request'}} steps: - name: ⬇️ Checkout uses: actions/checkout@v4 @@ -94,10 +94,9 @@ jobs: | ${{ steps.get-diff.outputs.base_file_string }} | ${{ steps.get-diff.outputs.pr_file_string }} | ${{ steps.get-diff.outputs.diff_file_string }} (${{ steps.get-diff.outputs.percent }}%) | --- - test-suite-fingerprint: + fingerprint-native: runs-on: ubuntu-22.04 - if: ${{ github.event.pull_request.head.repo.full_name == github.repository || github.event_name == 'push' }} - concurrency: fingerprint-${{ github.event_name != 'pull_request' && 'main' || github.run_id }} + if: ${{ github.event.pull_request.head.repo.full_name == github.repository && github.event_name == 'pull_request'}} steps: - name: ⬇️ Checkout uses: actions/checkout@v4 @@ -114,35 +113,23 @@ jobs: node-version-file: .nvmrc cache: yarn - - name: ⚙️ Install Dependencies - run: yarn install - - - name: Get the base commit - id: base-commit - run: echo base-commit=$(git log -n 1 main --pretty=format:'%H') >> "$GITHUB_OUTPUT" - - - name: 📷 Check fingerprint + - name: 📷 Check fingerprint and install dependencies id: fingerprint - uses: expo/expo-github-action/fingerprint@main + uses: bluesky-social/github-actions/fingerprint-native@main with: - previous-git-commit: ${{ steps.base-commit.outputs.base-commit }} - - - name: 👀 Debug fingerprint - run: | - echo "previousGitCommit=${{ steps.fingerprint.outputs.previous-git-commit }} currentGitCommit=${{ steps.fingerprint.outputs.current-git-commit }}" - echo "isPreviousFingerprintEmpty=${{ steps.fingerprint.outputs.previous-fingerprint == '' }}" + profile: pull-request - name: 💬 Drop a comment uses: marocchino/sticky-pull-request-comment@v2 - if: ${{ github.event_name == 'pull_request' && steps.fingerprint.outputs.fingerprint-diff != '[]' }} + if: ${{ steps.fingerprint.outputs.includes-changes }} with: header: fingerprint-diff message: | - The Pull Request introduced fingerprint changes against the base commit: ${{ steps.fingerprint.outputs.previous-git-commit }} + The Pull Request introduced fingerprint changes against the base commit:
Fingerprint diff ```json - ${{ steps.fingerprint.outputs.fingerprint-diff }} + ${{ steps.fingerprint.outputs.diff }} ```
@@ -152,7 +139,7 @@ jobs: - name: 💬 Delete comment uses: marocchino/sticky-pull-request-comment@v2 - if: ${{ github.event_name == 'pull_request' && steps.fingerprint.outputs.fingerprint-diff == '[]' }} + if: ${{ !steps.fingerprint.outputs.includes-changes }} with: header: fingerprint-diff delete: true diff --git a/.prettierignore b/.prettierignore index abc221def2..641a1b8bfc 100644 --- a/.prettierignore +++ b/.prettierignore @@ -12,3 +12,4 @@ android ios src/locale/locales +lib/react-compiler-runtime diff --git a/Dockerfile b/Dockerfile index 568cbf7b41..74106fd7f6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,6 +15,10 @@ ENV GOARCH="amd64" ENV CGO_ENABLED=1 ENV GOEXPERIMENT="loopvar" +# Expo +ARG EXPO_PUBLIC_BUNDLE_IDENTIFIER +ENV EXPO_PUBLIC_BUNDLE_IDENTIFIER ${EXPO_PUBLIC_BUNDLE_IDENTIFIER:-dev} + COPY . . # @@ -29,10 +33,13 @@ RUN mkdir --parents $NVM_DIR && \ RUN \. "$NVM_DIR/nvm.sh" && \ nvm install $NODE_VERSION && \ nvm use $NODE_VERSION && \ + echo "Using bundle identifier: $EXPO_PUBLIC_BUNDLE_IDENTIFIER" && \ + echo "EXPO_PUBLIC_BUNDLE_IDENTIFIER=$EXPO_PUBLIC_BUNDLE_IDENTIFIER" >> .env && \ + echo "EXPO_PUBLIC_BUNDLE_DATE=$(date -u +"%y%m%d%H")" >> .env && \ npm install --global yarn && \ yarn && \ yarn intl:build && \ - yarn build-web + EXPO_PUBLIC_BUNDLE_IDENTIFIER=$EXPO_PUBLIC_BUNDLE_IDENTIFIER EXPO_PUBLIC_BUNDLE_DATE=$() yarn build-web # DEBUG RUN find ./bskyweb/static && find ./web-build/static diff --git a/__e2e__/config.yml b/__e2e__/config.yml new file mode 100644 index 0000000000..b36b0ef601 --- /dev/null +++ b/__e2e__/config.yml @@ -0,0 +1,2 @@ +flows: + - "flows/*" \ No newline at end of file diff --git a/__e2e__/flows/composer-self-label.yml b/__e2e__/flows/composer-self-label.yml new file mode 100644 index 0000000000..cc38b1d995 --- /dev/null +++ b/__e2e__/flows/composer-self-label.yml @@ -0,0 +1,30 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: ?users +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" + +# Post an image with the porn label +- tapOn: + id: "composeFAB" +- inputText: "Post with an image" +- tapOn: + id: "openGalleryBtn" +- tapOn: + id: "labelsBtn" +- tapOn: + label: "Tap on porn" + point: 78%,67% +- tapOn: + label: "Tap on confirm" + point: 51%,92% +- tapOn: + id: "composerPublishBtn" +- tapOn: + id: "e2eRefreshHome" +- assertVisible: "Adult Content" \ No newline at end of file diff --git a/__e2e__/flows/composer.yml b/__e2e__/flows/composer.yml new file mode 100644 index 0000000000..f6d760ea5f --- /dev/null +++ b/__e2e__/flows/composer.yml @@ -0,0 +1,87 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: ?users +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" +- tapOn: + id: "composeFAB" +- inputText: "Post text only" +- tapOn: + id: "composerPublishBtn" +- assertVisible: + id: "composeFAB" +- tapOn: + id: "composeFAB" +- inputText: "Post with an image" +- tapOn: + id: "openGalleryBtn" +- tapOn: + id: "composerPublishBtn" +- assertVisible: + id: "composeFAB" +- tapOn: + id: "composeFAB" +- inputText: "Post with a https://example.com link card" +- tapOn: + id: "composerPublishBtn" +- assertVisible: + id: "composeFAB" +- tapOn: + id: "e2eRefreshHome" +- tapOn: + id: "replyBtn" +- inputText: "Reply text only" +- tapOn: + id: "composerPublishBtn" +- assertVisible: + id: "composeFAB" +- tapOn: + id: "replyBtn" +- inputText: "Reply with an image" +- tapOn: + id: "openGalleryBtn" +- tapOn: + id: "composerPublishBtn" +- assertVisible: + id: "composeFAB" +- tapOn: + id: "replyBtn" +- inputText: "Reply with a https://example.com link card" +- tapOn: + id: "composerPublishBtn" +- assertVisible: + id: "composeFAB" +- tapOn: + id: "repostBtn" +- tapOn: + id: "quoteBtn" +- inputText: "QP text only" +- tapOn: + id: "composerPublishBtn" +- assertVisible: + id: "composeFAB" +- tapOn: + id: "repostBtn" +- tapOn: + id: "quoteBtn" +- inputText: "QP with an image" +- tapOn: + id: "openGalleryBtn" +- tapOn: + id: "composerPublishBtn" +- assertVisible: + id: "composeFAB" +- tapOn: + id: "repostBtn" +- tapOn: + id: "quoteBtn" +- inputText: "QP with a https://example.com link card" +- tapOn: + id: "composerPublishBtn" +- assertVisible: + id: "composeFAB" diff --git a/__e2e__/flows/create-account.yml b/__e2e__/flows/create-account.yml new file mode 100644 index 0000000000..99ac1371a5 --- /dev/null +++ b/__e2e__/flows/create-account.yml @@ -0,0 +1,37 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "" +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eOpenLoggedOutView" +- tapOn: + id: "createAccountButton" +- tapOn: + id: "selectServiceButton" +- tapOn: + id: "customSelectBtn" +- tapOn: + id: "customServerTextInput" +- inputText: "http://localhost:3000" +- pressKey: Enter +- tapOn: + id: "doneBtn" +- tapOn: + id: "emailInput" +- inputText: "example@test.com" +- tapOn: + id: "passwordInput" +- inputText: "hunter2" +- pressKey: Enter +- tapOn: + id: "nextBtn" +- tapOn: + id: "handleInput" +- inputText: "e2e-test" +- tapOn: + id: "nextBtn" + diff --git a/__e2e__/flows/curate-lists.yml b/__e2e__/flows/curate-lists.yml new file mode 100644 index 0000000000..fb53e4171d --- /dev/null +++ b/__e2e__/flows/curate-lists.yml @@ -0,0 +1,208 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "?users&follows&posts" +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" + +- tapOn: + label: "Create a curate list" + id: "e2eGotoLists" +- tapOn: + id: "newUserListBtn" +- assertVisible: + id: "createOrEditListModal" +- tapOn: + id: "editNameInput" +- inputText: "Good Ppl" +- tapOn: + id: "editDescriptionInput" +- inputText: "They good" +- tapOn: "Save" +- tapOn: "Save" +- assertNotVisible: + id: "createOrEditListModal" +- tapOn: "About" +- assertVisible: "Good Ppl" +- assertVisible: "They good" + +- tapOn: + label: "Edit display name and description via the edit curatelist modal" + point: "90%,9%" +- tapOn: "Edit list details" +- assertVisible: + id: "createOrEditListModal" +- tapOn: + id: "editNameInput" +- eraseText +- inputText: "Bad Ppl" +- hideKeyboard +- tapOn: + id: "editDescriptionInput" +- eraseText +- inputText: "They bad" +- tapOn: "Save" +- tapOn: "Save" +- assertNotVisible: + id: "createOrEditListModal" +- assertVisible: Bad Ppl +- assertVisible: They bad + +- tapOn: + label: "Remove description via the edit curatelist modal" + point: "90%,9%" +- tapOn: "Edit list details" +- assertVisible: + id: "createOrEditListModal" +- tapOn: + id: "editDescriptionInput" +- eraseText +- tapOn: "Save" +- tapOn: "Save" +- assertNotVisible: + id: "createOrEditListModal" +- assertNotVisible: + id: "listDescription" + +- tapOn: + label: "Delete the curatelist" + point: "90%,9%" +- tapOn: "Delete List" +- tapOn: + id: "confirmBtn" +- assertVisible: + id: "listsEmpty" + +- tapOn: + label: "Create a new curatelist" + id: "e2eGotoLists" +- tapOn: + id: "newUserListBtn" +- assertVisible: + id: "createOrEditListModal" +- tapOn: + id: "editNameInput" +- inputText: "Good Ppl" +- tapOn: + id: "editDescriptionInput" +- inputText: "They good" +- tapOn: "Save" +- tapOn: "Save" +- assertNotVisible: + id: "createOrEditListModal" +- tapOn: "About" +- assertVisible: "Good Ppl" +- assertVisible: "They good" +- tapOn: "About" + +- tapOn: + label: "Adds users on curatelists from the list" + id: "addUserBtn" +- assertVisible: + id: "listAddUserModal" +- tapOn: + id: "searchInput" +- inputText: "b" +- pressKey: Enter +- tapOn: + id: "user-bob.test-addBtn" +- tapOn: + id: "doneBtn" +- assertNotVisible: + id: "listAddUserModal" +- assertVisible: + id: "user-bob.test" + +- tapOn: "Posts" +- assertVisible: + label: "Shows posts by the users in the list" + id: "feedItem-by-bob.test" + +- tapOn: + label: "Pins the list" + id: "pinBtn" +- tapOn: + id: "e2eGotoHome" +- tapOn: "Good Ppl" +- assertVisible: + id: "feedItem-by-bob.test" +- tapOn: + id: "e2eGotoFeeds" +- tapOn: + id: "saved-feed-Good Ppl" +- assertVisible: + id: "feedItem-by-bob.test" +- tapOn: + id: "unpinBtn" +- tapOn: + id: "bottomBarHomeBtn" +- assertNotVisible: + id: "homeScreenFeedTabs-Good Ppl" +- tapOn: + id: "e2eGotoLists" +- tapOn: + id: "list-Good Ppl" + +- tapOn: "About" +- assertVisible: + label: "Removes users on curatelists from the list" + id: "user-bob.test" +- tapOn: + point: "90%,43%" +- assertVisible: + id: "userAddRemoveListsModal" +- tapOn: + id: "user-bob.test-addBtn" +- tapOn: + id: "doneBtn" +- assertNotVisible: + id: "userAddRemoveListsModal" + +- tapOn: + label: "Shows the curatelist on my profile" + id: "bottomBarProfileBtn" +- swipe: + from: + id: "profilePager-selector" + direction: LEFT +- tapOn: + id: "profilePager-selector-5" +- tapOn: + id: "list-Good Ppl" + +- tapOn: + label: "Adds and removes users on curatelists from the profile" + id: "bottomBarSearchBtn" +- tapOn: + id: "searchTextInput" +- inputText: "bob" +- tapOn: + id: "searchAutoCompleteResult-bob.test" +- assertVisible: + id: "profileView" +- tapOn: + id: "profileHeaderDropdownBtn" +- tapOn: "Add to Lists" +- assertVisible: + id: "userAddRemoveListsModal" +- tapOn: + id: "user-bob.test-addBtn" +- tapOn: + id: "doneBtn" +- assertNotVisible: + id: "userAddRemoveListsModal" +- tapOn: + id: "profileHeaderDropdownBtn" +- tapOn: "Add to Lists" +- assertVisible: + id: "userAddRemoveListsModal" +- tapOn: + id: "user-bob.test-addBtn" +- tapOn: + id: "doneBtn" +- assertNotVisible: + id: "userAddRemoveListsModal" diff --git a/__e2e__/flows/feed-reorder.yml b/__e2e__/flows/feed-reorder.yml new file mode 100644 index 0000000000..4b96a201ce --- /dev/null +++ b/__e2e__/flows/feed-reorder.yml @@ -0,0 +1,82 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: ?users&follows&posts&feeds +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" + +# Pin alice's feed +- tapOn: + id: "bottomBarProfileBtn" +- swipe: + from: + id: "profilePager-selector" + direction: LEFT +- tapOn: + id: "profilePager-selector-4" +- tapOn: + id: "feed-alice-favs" +- tapOn: "Pin to Home" +- tapOn: + id: "bottomBarHomeBtn" +- assertNotVisible: "Feeds ✨" +- assertVisible: + id: "homeScreenFeedTabs-selector-0" + text: "Following" +- assertVisible: + id: "homeScreenFeedTabs-selector-1" + text: "alice-favs" + +# Set alice-favs first +- tapOn: + id: "viewHeaderDrawerBtn" +- tapOn: + id: "menuItemButton-Feeds" +- tapOn: "Edit Saved Feeds" +- tapOn: + label: "Tap on down arrow" + point: "79%,23%" +- tapOn: + id: "bottomBarHomeBtn" +- assertVisible: + id: "homeScreenFeedTabs-selector-0" + text: "alice-favs" +- assertVisible: + id: "homeScreenFeedTabs-selector-1" + text: "Following" + +# Set following first +- tapOn: + id: "viewHeaderDrawerBtn" +- tapOn: + id: "menuItemButton-Feeds" +- tapOn: + label: "Tap on down arrow" + point: "79%,23%" +- tapOn: + id: "bottomBarHomeBtn" +- assertVisible: + id: "homeScreenFeedTabs-selector-0" + text: "Following" +- assertVisible: + id: "homeScreenFeedTabs-selector-1" + text: "alice-favs" + +# Remove following +- tapOn: + id: "viewHeaderDrawerBtn" +- tapOn: + id: "menuItemButton-Feeds" +- tapOn: + label: "Tap on unpin" + point: "91%,23%" +- tapOn: + id: "bottomBarHomeBtn" +- assertVisible: + id: "homeScreenFeedTabs-selector-0" + text: "alice-favs" +- assertNotVisible: "Following" diff --git a/__e2e__/flows/home-screen.yml b/__e2e__/flows/home-screen.yml new file mode 100644 index 0000000000..69a1fe37f4 --- /dev/null +++ b/__e2e__/flows/home-screen.yml @@ -0,0 +1,63 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: ?users&follows&posts&feeds +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" + +- tapOn: + label: "Can go to feeds page using feeds button in tab bar" + text: "Feeds ✨" +- assertVisible: "Discover New Feeds" + +- tapOn: + label: "Feeds button disappears after pinning a feed" + id: "bottomBarProfileBtn" +- swipe: + from: + id: "profilePager-selector" + direction: LEFT +- tapOn: + id: "profilePager-selector-4" +- tapOn: + id: "feed-alice-favs" +- tapOn: "Pin to Home" +- tapOn: + id: "bottomBarHomeBtn" +- assertNotVisible: "Feeds ✨" + +- tapOn: + label: "Can like posts" + id: "likeBtn" +- assertVisible: + id: "likeCount" + text: "1" +- tapOn: + id: "likeBtn" +- assertNotVisible: + id: "likeCount" + +- tapOn: + label: "Can repost posts" + id: "repostBtn" +- tapOn: "Repost" +- assertVisible: + id: "repostCount" + text: "1" +- tapOn: + id: "repostBtn" +- tapOn: "Undo repost" +- assertNotVisible: + id: "repostCount" + +- tapOn: + label: "Can delete posts" + id: "postDropdownBtn" + childOf: + id: "feedItem-by-alice.test" +- tapOn: "Delete post" +- tapOn: "Delete" diff --git a/__e2e__/flows/login.yml b/__e2e__/flows/login.yml new file mode 100644 index 0000000000..f1001f78da --- /dev/null +++ b/__e2e__/flows/login.yml @@ -0,0 +1,26 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "?users" +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eOpenLoggedOutView" +- tapOn: "Sign in" +- tapOn: + id: "selectServiceButton" +- tapOn: "Custom" +- tapOn: + id: "customServerTextInput" +- inputText: "http://localhost:3000" +- tapOn: "Done" +- tapOn: + id: "loginUsernameInput" +- inputText: "Alice" +- tapOn: + id: "loginPasswordInput" +- inputText: "hunter2" +- pressKey: Enter +- assertVisible: "Following" \ No newline at end of file diff --git a/__e2e__/flows/mod-lists.yml b/__e2e__/flows/mod-lists.yml new file mode 100644 index 0000000000..75ee100a83 --- /dev/null +++ b/__e2e__/flows/mod-lists.yml @@ -0,0 +1,45 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "?users&follows&labels" +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" + +# create a modlist +- tapOn: + id: "e2eGotoModeration" +- tapOn: + id: "moderationlistsBtn" +- tapOn: "New" +- tapOn: + id: "editNameInput" +- inputText: "Muted Users" +- tapOn: + id: "editDescriptionInput" +- inputText: "Shhh" +- tapOn: "Save" +- tapOn: "Save" + +# view modlist +- assertVisible: "Muted Users" +- assertVisible: "Shhh" + +# toggle mute subscription +- tapOn: + point: "70%,9%" +- tapOn: "Mute accounts" +- tapOn: "Mute list" +- tapOn: "Unmute" + +# toggle block subscription +- tapOn: + point: "70%,9%" +- tapOn: "Block accounts" +- tapOn: "Block list" +- tapOn: "Unblock" + + # the rest of the behaviors are tested in curate-lists.yml \ No newline at end of file diff --git a/__e2e__/flows/onboarding-avatar-creator.yml b/__e2e__/flows/onboarding-avatar-creator.yml new file mode 100644 index 0000000000..3a20053ba5 --- /dev/null +++ b/__e2e__/flows/onboarding-avatar-creator.yml @@ -0,0 +1,32 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "?users" +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" +- tapOn: + id: "e2eStartOnboarding" +- tapOn: "Open avatar creator" +- tapOn: "Select the zap emoji as your avatar" +- tapOn: + label: "Tap on yellow" + point: "23%,79%" +- tapOn: "Done" +- waitForAnimationToEnd +- tapOn: "Select an avatar" +- tapOn: "Select the atom emoji as your avatar" +- tapOn: "Done" +- waitForAnimationToEnd +- tapOn: "Continue to next step" +- assertVisible: "What are your interests?" +- tapOn: + label: "Tap on continue" + point: "50%,92%" +- assertVisible: "You're ready to go!" +- tapOn: + label: "Tap on Lets go" + point: "50%,92%" \ No newline at end of file diff --git a/__e2e__/flows/onboarding-old.yml b/__e2e__/flows/onboarding-old.yml new file mode 100644 index 0000000000..dae24bb1c4 --- /dev/null +++ b/__e2e__/flows/onboarding-old.yml @@ -0,0 +1,31 @@ +# Remove this test when the old onboarding is deprecated +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "?users" +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" +- tapOn: + id: "e2eStartLongboarding" +- tapOn: "Continue to next step" +- tapOn: "Continue to the next step without following any accounts" +- tapOn: Show replies in Following feed +- tapOn: Show quote-posts in Following feed +- tapOn: Show re-posts in Following feed +- tapOn: Show replies in Following feed +- waitForAnimationToEnd +- tapOn: Continue to next step +- waitForAnimationToEnd +- tapOn: "Continue to the next step" +- waitForAnimationToEnd +- tapOn: Continue to next step +- waitForAnimationToEnd +- tapOn: Continue to next step +- waitForAnimationToEnd +- tapOn: "Complete onboarding and start using your account" +- waitForAnimationToEnd +- assertVisible: Following \ No newline at end of file diff --git a/__e2e__/flows/onboarding.yml b/__e2e__/flows/onboarding.yml new file mode 100644 index 0000000000..68d9897885 --- /dev/null +++ b/__e2e__/flows/onboarding.yml @@ -0,0 +1,28 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "?users" +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" +- tapOn: + id: "e2eStartOnboarding" +- tapOn: "Select an avatar" +- waitForAnimationToEnd +- tapOn: + point: "16%,22%" +- waitForAnimationToEnd +- tapOn: "Choose" +- waitForAnimationToEnd +- tapOn: "Continue to next step" +- assertVisible: "What are your interests?" +- tapOn: + label: "Tap on continue" + point: "50%,92%" +- assertVisible: "You're ready to go!" +- tapOn: + label: "Tap on Lets go" + point: "50%,92%" \ No newline at end of file diff --git a/__e2e__/flows/profile-screen-edit.yml b/__e2e__/flows/profile-screen-edit.yml new file mode 100644 index 0000000000..640f53882b --- /dev/null +++ b/__e2e__/flows/profile-screen-edit.yml @@ -0,0 +1,125 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "?users&posts&feeds" +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" + + +# Navigate to my profile +- tapOn: + id: "bottomBarProfileBtn" + +# Can see feeds +- swipe: + from: + id: "profilePager-selector" + direction: LEFT +- tapOn: + id: "profilePager-selector-4" +- assertVisible: + id: "feed-alice-favs" +- swipe: + from: + id: "profilePager-selector" + direction: RIGHT +- tapOn: + id: "profilePager-selector-0" + +# Open and close edit profile modal +- tapOn: + id: "profileHeaderEditProfileButton" +- assertVisible: + id: "editProfileModal" +- tapOn: + id: "editProfileCancelBtn" +- assertNotVisible: + id: "editProfileModal" + +# Edit display name and description via the edit profile modal +- tapOn: + id: "profileHeaderEditProfileButton" +- assertVisible: + id: "editProfileModal" +- tapOn: + id: "editProfileDisplayNameInput" +- eraseText +- inputText: "Alicia" +- tapOn: + id: "editProfileDescriptionInput" +- eraseText +- inputText: "One cool hacker" +- tapOn: "Description" +- tapOn: + id: "editProfileSaveBtn" +- assertNotVisible: + id: "editProfileModal" +- assertVisible: "Alicia" +- assertVisible: "One cool hacker" + +# Remove display name and description via the edit profile modal +- tapOn: + id: "profileHeaderEditProfileButton" +- assertVisible: + id: "editProfileModal" +- tapOn: + id: "editProfileDisplayNameInput" +- eraseText +- tapOn: + id: "editProfileDescriptionInput" +- eraseText +- tapOn: "Description" +- tapOn: + id: "editProfileSaveBtn" +- assertNotVisible: + id: "editProfileModal" +- assertVisible: "alice.test" +- assertNotVisible: "One cool hacker" + +# Set avi and banner via the edit profile modal +- assertVisible: + id: "userBannerFallback" +- tapOn: + id: "profileHeaderEditProfileButton" +- assertVisible: + id: "editProfileModal" +- tapOn: + id: "changeBannerBtn" +- tapOn: "Upload from Library" +- waitForAnimationToEnd +- tapOn: "Choose" +- waitForAnimationToEnd +- tapOn: + id: "changeAvatarBtn" +- tapOn: "Upload from Library" +- waitForAnimationToEnd +- tapOn: "Choose" +- waitForAnimationToEnd +- tapOn: + id: "editProfileSaveBtn" +- assertNotVisible: + id: "editProfileModal" +- assertVisible: + id: "userBannerImage" + +# # Remove avi and banner via the edit profile modal +- tapOn: + id: "profileHeaderEditProfileButton" +- assertVisible: + id: "editProfileModal" +- tapOn: + id: "changeBannerBtn" +- tapOn: "Remove Banner" +- tapOn: + id: "changeAvatarBtn" +- tapOn: "Remove Avatar" +- tapOn: + id: "editProfileSaveBtn" +- assertNotVisible: + id: "editProfileModal" +- assertVisible: + id: "userBannerFallback" diff --git a/__e2e__/flows/profile-screen.yml b/__e2e__/flows/profile-screen.yml new file mode 100644 index 0000000000..7d2d43deea --- /dev/null +++ b/__e2e__/flows/profile-screen.yml @@ -0,0 +1,37 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "?users&posts&feeds" +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" + +# Navigate to another user profile +- tapOn: + id: "bottomBarSearchBtn" +- tapOn: + id: "searchTextInput" +- inputText: "b" +- tapOn: + id: "searchAutoCompleteResult-bob.test" +- assertVisible: + id: "profileView" + +# Can follow/unfollow another user +- tapOn: + id: "followBtn" +- tapOn: + id: "unfollowBtn" + +# Can mute/unmute another user +- tapOn: + id: "profileHeaderDropdownBtn" +- tapOn: "Mute Account" +- assertVisible: "Account Muted" +- tapOn: + id: "profileHeaderDropdownBtn" +- tapOn: "Unmute Account" +- assertNotVisible: "Account Muted" \ No newline at end of file diff --git a/__e2e__/flows/search-screen.yml b/__e2e__/flows/search-screen.yml new file mode 100644 index 0000000000..0d31d03fb9 --- /dev/null +++ b/__e2e__/flows/search-screen.yml @@ -0,0 +1,22 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "?users" +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" + +# Navigate to another user profile via autocomplete +- tapOn: + id: "bottomBarSearchBtn" +- tapOn: + id: "searchTextInput" +- inputText: "b" +- tapOn: + id: "searchAutoCompleteResult-bob.test" +- assertVisible: + id: "profileView" + diff --git a/__e2e__/flows/thread-muting.yml b/__e2e__/flows/thread-muting.yml new file mode 100644 index 0000000000..316389a79f --- /dev/null +++ b/__e2e__/flows/thread-muting.yml @@ -0,0 +1,82 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "?users&follows" +- runFlow: + file: ../setupApp.yml + + +# Login, create a thread, and log out +- tapOn: + id: "e2eSignInAlice" +- tapOn: + id: "composeFAB" +- inputText: "Test thread" +- tapOn: + id: "composerPublishBtn" + +# Login, reply to the thread, and log out +- tapOn: + id: "e2eSignInBob" +- tapOn: + id: "replyBtn" +- inputText: "Reply 1" +- tapOn: + id: "composerPublishBtn" + +# Login, confirm notification exists, mute thread, and log out +- tapOn: + id: "e2eSignInAlice" +- tapOn: + id: "bottomBarNotificationsBtn" +- assertVisible: + id: "feedItem-by-bob.test" +- tapOn: + id: "feedItem-by-bob.test" +- tapOn: + id: "postDropdownBtn" + childOf: + id: "postThreadItem-by-bob.test" +- tapOn: "Mute thread" + +# Login, reply to the thread twice, and log out +- tapOn: + id: "e2eSignInBob" +- tapOn: + id: "bottomBarProfileBtn" +- tapOn: + id: "profilePager-selector-1" +- tapOn: + id: "replyBtn" +- inputText: "Reply 2" +- tapOn: + id: "composerPublishBtn" +- tapOn: + id: "replyBtn" +- inputText: "Reply 3" +- tapOn: + id: "composerPublishBtn" + + +# Login, confirm notifications dont exist, unmute the thread, confirm notifications exist +- tapOn: + id: "e2eSignInAlice" +- tapOn: + id: "bottomBarNotificationsBtn" +- assertNotVisible: + id: "feedItem-by-bob.test" +- tapOn: + id: "bottomBarHomeBtn" +- tapOn: + id: "postDropdownBtn" +- tapOn: "Unmute thread" +- tapOn: + id: "bottomBarNotificationsBtn" +- swipe: + from: + id: "notifsFeed" + direction: DOWN +- assertVisible: + id: "feedItem-by-bob.test" diff --git a/__e2e__/flows/thread-screen.yml b/__e2e__/flows/thread-screen.yml new file mode 100644 index 0000000000..22f71345db --- /dev/null +++ b/__e2e__/flows/thread-screen.yml @@ -0,0 +1,84 @@ +appId: xyz.blueskyweb.app +--- +- runScript: + file: ../setupServer.js + env: + SERVER_PATH: "?users&follows&thread" +- runFlow: + file: ../setupApp.yml +- tapOn: + id: "e2eSignInAlice" + + +# Navigate to thread +- tapOn: "Thread root" +- assertVisible: "Thread reply" + +# Can like the root post +- tapOn: + id: "likeBtn" + childOf: + id: "postThreadItem-by-bob.test" +- assertVisible: + id: "likeCount-expanded" +- tapOn: + id: "likeBtn" + childOf: + id: "postThreadItem-by-bob.test" +- assertNotVisible: + id: "likeCount-expanded" + +# Can like a reply post +- tapOn: + id: "likeBtn" + childOf: + id: "postThreadItem-by-carla.test" +- assertVisible: + id: "likeCount" + childOf: + id: "postThreadItem-by-carla.test" +- tapOn: + id: "likeBtn" + childOf: + id: "postThreadItem-by-carla.test" +- assertNotVisible: + id: "likeCount" + childOf: + id: "postThreadItem-by-carla.test" + +# Can repost the root post +- tapOn: + id: "repostBtn" + childOf: + id: "postThreadItem-by-bob.test" +- tapOn: "Repost" +- assertVisible: + id: "repostCount-expanded" +- tapOn: + id: "repostBtn" + childOf: + id: "postThreadItem-by-bob.test" +- tapOn: "Undo repost" +- assertNotVisible: + id: "repostCount-expanded" + + +# Can repost a reply post +- tapOn: + id: "repostBtn" + childOf: + id: "postThreadItem-by-carla.test" +- tapOn: "Repost" +- assertVisible: + id: "repostCount" + childOf: + id: "postThreadItem-by-carla.test" +- tapOn: + id: "repostBtn" + childOf: + id: "postThreadItem-by-carla.test" +- tapOn: "Undo repost" +- assertNotVisible: + id: "repostCount" + childOf: + id: "postThreadItem-by-carla.test" diff --git a/__e2e__/jest.config.js b/__e2e__/jest.config.js deleted file mode 100644 index 80c2ad5b3a..0000000000 --- a/__e2e__/jest.config.js +++ /dev/null @@ -1,12 +0,0 @@ -/** @type {import('@jest/types').Config.InitialOptions} */ -module.exports = { - rootDir: '..', - testMatch: ['/__e2e__/**/*.test.ts'], - testTimeout: 120000, - maxWorkers: 1, - globalSetup: 'detox/runners/jest/globalSetup', - globalTeardown: 'detox/runners/jest/globalTeardown', - reporters: ['detox/runners/jest/reporter'], - testEnvironment: 'detox/runners/jest/testEnvironment', - verbose: true, -} diff --git a/__e2e__/maestro/scroll.yaml b/__e2e__/perf-test.yml similarity index 100% rename from __e2e__/maestro/scroll.yaml rename to __e2e__/perf-test.yml index 2d32793eb0..7a7b7a18c9 100644 --- a/__e2e__/maestro/scroll.yaml +++ b/__e2e__/perf-test.yml @@ -1,3 +1,4 @@ + # flow.yaml appId: xyz.blueskyweb.app @@ -74,4 +75,3 @@ appId: xyz.blueskyweb.app - "scroll" - "scroll" - "scroll" - diff --git a/__e2e__/setupApp.yml b/__e2e__/setupApp.yml new file mode 100644 index 0000000000..8c3ffd2d3b --- /dev/null +++ b/__e2e__/setupApp.yml @@ -0,0 +1,11 @@ +appId: xyz.blueskyweb.app +--- +- launchApp: + appId: "xyz.blueskyweb.app" + clearState: true +- waitForAnimationToEnd +- tapOn: "http://localhost:8081" +- waitForAnimationToEnd +- swipe: + from: "Bluesky" + direction: DOWN diff --git a/__e2e__/setupServer.js b/__e2e__/setupServer.js new file mode 100644 index 0000000000..7b1fb95745 --- /dev/null +++ b/__e2e__/setupServer.js @@ -0,0 +1,5 @@ +// eslint-disable-next-line +http.post('http://localhost:1986/' + SERVER_PATH, { + headers: {'Content-Type': 'text/plain'}, + body: '', +}) diff --git a/__e2e__/tests/composer.test.ts b/__e2e__/tests/composer.test.ts deleted file mode 100644 index 06781410f6..0000000000 --- a/__e2e__/tests/composer.test.ts +++ /dev/null @@ -1,109 +0,0 @@ -/* eslint-env detox/detox */ - -import {beforeAll, describe, it} from '@jest/globals' -import {expect} from 'detox' - -import {createServer, loginAsAlice, openApp, sleep} from '../util' - -describe('Composer', () => { - beforeAll(async () => { - await createServer('?users') - await openApp({ - permissions: {notifications: 'YES', medialibrary: 'YES', photos: 'YES'}, - }) - }) - - it('Login', async () => { - await loginAsAlice() - await element(by.id('homeScreenFeedTabs-Following')).tap() - }) - - it('Post text only', async () => { - await element(by.id('composeFAB')).tap() - await device.takeScreenshot('1- opened composer') - await element(by.id('composerTextInput')).typeText('Post text only') - await device.takeScreenshot('2- entered text') - await element(by.id('composerPublishBtn')).tap() - await device.takeScreenshot('3- opened general section') - await expect(element(by.id('composeFAB'))).toBeVisible() - }) - - it('Post with an image', async () => { - await element(by.id('composeFAB')).tap() - await element(by.id('composerTextInput')).typeText('Post with an image') - await element(by.id('openGalleryBtn')).tap() - await sleep(1e3) - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - }) - - it('Post with a link card', async () => { - await element(by.id('composeFAB')).tap() - await element(by.id('composerTextInput')).typeText( - 'Post with a https://example.com link card', - ) - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - }) - - it('Reply text only', async () => { - await element(by.id('e2eRefreshHome')).tap() - - const post = by.id('feedItem-by-alice.test') - await element(by.id('replyBtn').withAncestor(post)).atIndex(0).tap() - await element(by.id('composerTextInput')).typeText('Reply text only') - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - }) - - it('Reply with an image', async () => { - const post = by.id('feedItem-by-alice.test') - await element(by.id('replyBtn').withAncestor(post)).atIndex(0).tap() - await element(by.id('composerTextInput')).typeText('Reply with an image') - await element(by.id('openGalleryBtn')).tap() - await sleep(1e3) - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - }) - - it('Reply with a link card', async () => { - const post = by.id('feedItem-by-alice.test') - await element(by.id('replyBtn').withAncestor(post)).atIndex(0).tap() - await element(by.id('composerTextInput')).typeText( - 'Reply with a https://example.com link card', - ) - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - }) - - it('QP text only', async () => { - const post = by.id('feedItem-by-alice.test') - await element(by.id('repostBtn').withAncestor(post)).atIndex(0).tap() - await element(by.id('quoteBtn').withAncestor(by.id('repostModal'))).tap() - await element(by.id('composerTextInput')).typeText('QP text only') - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - }) - - it('QP with an image', async () => { - const post = by.id('feedItem-by-alice.test') - await element(by.id('repostBtn').withAncestor(post)).atIndex(0).tap() - await element(by.id('quoteBtn').withAncestor(by.id('repostModal'))).tap() - await element(by.id('composerTextInput')).typeText('QP with an image') - await element(by.id('openGalleryBtn')).tap() - await sleep(1e3) - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - }) - - it('QP with a link card', async () => { - const post = by.id('feedItem-by-alice.test') - await element(by.id('repostBtn').withAncestor(post)).atIndex(0).tap() - await element(by.id('quoteBtn').withAncestor(by.id('repostModal'))).tap() - await element(by.id('composerTextInput')).typeText( - 'QP with a https://example.com link card', - ) - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - }) -}) diff --git a/__e2e__/tests/create-account.test.ts b/__e2e__/tests/create-account.test.ts deleted file mode 100644 index 9c56c914ea..0000000000 --- a/__e2e__/tests/create-account.test.ts +++ /dev/null @@ -1,39 +0,0 @@ -/* eslint-env detox/detox */ - -import {describe, beforeAll, it} from '@jest/globals' -import {expect} from 'detox' -import {openApp, createServer} from '../util' - -describe('Create account', () => { - let service: string - beforeAll(async () => { - service = await createServer('') - await openApp({permissions: {notifications: 'YES'}}) - }) - - it('I can create a new account', async () => { - await element(by.id('e2eOpenLoggedOutView')).tap() - - await element(by.id('createAccountButton')).tap() - await device.takeScreenshot('1- opened create account screen') - await element(by.id('selectServiceButton')).tap() - await device.takeScreenshot('2- selected other server') - await element(by.id('customSelectBtn')).tap() - await element(by.id('customServerTextInput')).typeText(service) - await element(by.id('customServerTextInput')).tapReturnKey() - await element(by.id('doneBtn')).tap() - await device.takeScreenshot('3- input test server URL') - await element(by.id('emailInput')).typeText('example@test.com') - await element(by.id('passwordInput')).typeText('hunter2') - await device.takeScreenshot('4- entered account details') - - await element(by.id('nextBtn')).tap() - - await element(by.id('handleInput')).typeText('e2e-test') - await device.takeScreenshot('5- entered handle') - - await element(by.id('nextBtn')).tap() - - await expect(element(by.id('onboardingInterests'))).toBeVisible() - }) -}) diff --git a/__e2e__/tests/curate-lists.test.ts b/__e2e__/tests/curate-lists.test.ts deleted file mode 100644 index 635357b8d2..0000000000 --- a/__e2e__/tests/curate-lists.test.ts +++ /dev/null @@ -1,213 +0,0 @@ -/* eslint-env detox/detox */ - -import {beforeAll, describe, it} from '@jest/globals' -import {expect} from 'detox' - -import {createServer, loginAsAlice, loginAsBob, openApp, sleep} from '../util' - -describe('Curate lists', () => { - beforeAll(async () => { - await createServer('?users&follows&posts') - await openApp({ - permissions: {notifications: 'YES', medialibrary: 'YES', photos: 'YES'}, - }) - }) - - it('Login and create a curatelists', async () => { - await loginAsAlice() - await element(by.id('e2eGotoLists')).tap() - await element(by.id('newUserListBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).toBeVisible() - await element(by.id('editNameInput')).typeText('Good Ppl') - await element(by.id('editDescriptionInput')).typeText('They good') - await element(by.id('saveBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).not.toBeVisible() - await element(by.text('About')).tap() - await expect(element(by.id('headerTitle'))).toHaveText('Good Ppl') - await expect(element(by.id('listDescription'))).toHaveText('They good') - }) - - it('Edit display name and description via the edit curatelist modal', async () => { - await element(by.id('headerDropdownBtn')).tap() - await element(by.text('Edit list details')).tap() - await expect(element(by.id('createOrEditListModal'))).toBeVisible() - await element(by.id('editNameInput')).clearText() - await element(by.id('editNameInput')).typeText('Bad Ppl') - await element(by.id('editDescriptionInput')).clearText() - await element(by.id('editDescriptionInput')).typeText('They bad') - await element(by.id('saveBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).not.toBeVisible() - await expect(element(by.id('headerTitle'))).toHaveText('Bad Ppl') - await expect(element(by.id('listDescription'))).toHaveText('They bad') - // have to wait for the toast to clear - await waitFor(element(by.id('headerDropdownBtn'))) - .toBeVisible() - .withTimeout(5000) - }) - - it('Remove description via the edit curatelist modal', async () => { - await element(by.id('headerDropdownBtn')).tap() - await element(by.text('Edit list details')).tap() - await expect(element(by.id('createOrEditListModal'))).toBeVisible() - await element(by.id('editDescriptionInput')).clearText() - await element(by.id('saveBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).not.toBeVisible() - await expect(element(by.id('listDescription'))).not.toBeVisible() - // have to wait for the toast to clear - await waitFor(element(by.id('headerDropdownBtn'))) - .toBeVisible() - .withTimeout(5000) - }) - - it('Set avi via the edit curatelist modal', async () => { - await expect(element(by.id('userAvatarFallback'))).toExist() - await element(by.id('headerDropdownBtn')).tap() - await element(by.text('Edit list details')).tap() - await expect(element(by.id('createOrEditListModal'))).toBeVisible() - await element(by.id('changeAvatarBtn')).tap() - await element(by.text('Upload from Library')).tap() - await sleep(3e3) - await element(by.id('saveBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).not.toBeVisible() - await expect(element(by.id('userAvatarImage'))).toExist() - // have to wait for the toast to clear - await waitFor(element(by.id('headerDropdownBtn'))) - .toBeVisible() - .withTimeout(5000) - }) - - it('Remove avi via the edit curatelist modal', async () => { - await expect(element(by.id('userAvatarImage'))).toExist() - await element(by.id('headerDropdownBtn')).tap() - await element(by.text('Edit list details')).tap() - await expect(element(by.id('createOrEditListModal'))).toBeVisible() - await element(by.id('changeAvatarBtn')).tap() - await element(by.text('Remove Avatar')).tap() - await element(by.id('saveBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).not.toBeVisible() - await expect(element(by.id('userAvatarFallback'))).toExist() - // have to wait for the toast to clear - await waitFor(element(by.id('headerDropdownBtn'))) - .toBeVisible() - .withTimeout(5000) - }) - - it('Delete the curatelist', async () => { - await element(by.id('headerDropdownBtn')).tap() - await element(by.text('Delete List')).tap() - await element(by.id('confirmBtn')).tap() - await expect(element(by.id('listsEmpty'))).toBeVisible() - }) - - it('Create a new curatelist', async () => { - await element(by.id('e2eGotoLists')).tap() - await element(by.id('newUserListBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).toBeVisible() - await element(by.id('editNameInput')).typeText('Good Ppl') - await element(by.id('editDescriptionInput')).typeText('They good') - await element(by.id('saveBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).not.toBeVisible() - await element(by.text('About')).tap() - await expect(element(by.id('headerTitle'))).toHaveText('Good Ppl') - await expect(element(by.id('listDescription'))).toHaveText('They good') - }) - - it('Adds users on curatelists from the list', async () => { - await element(by.text('About')).tap() - await element(by.id('addUserBtn')).tap() - await expect(element(by.id('listAddUserModal'))).toBeVisible() - await element(by.id('searchInput')).typeText('b') - await waitFor(element(by.id('user-bob.test-addBtn'))) - .toBeVisible() - .withTimeout(5000) - await element(by.id('user-bob.test-addBtn')).tap() - await element(by.id('doneBtn')).tap() - await expect(element(by.id('listAddUserModal'))).not.toBeVisible() - await expect(element(by.id('user-bob.test'))).toBeVisible() - }) - - it('Shows posts by the users in the list', async () => { - await element(by.text('Posts')).tap() - await expect(element(by.id('feedItem-by-bob.test'))).toBeVisible() - }) - - it('Pins the list', async () => { - await expect(element(by.id('pinBtn'))).toBeVisible() - await element(by.id('pinBtn')).tap() - await element(by.id('e2eGotoHome')).tap() - await element(by.id('homeScreenFeedTabs-Good Ppl')).tap() - await expect(element(by.id('feedItem-by-bob.test'))).toBeVisible() - - await element(by.id('bottomBarFeedsBtn')).tap() - await element(by.id('saved-feed-Good Ppl')).tap() - await expect(element(by.id('feedItem-by-bob.test'))).toBeVisible() - - await element(by.id('unpinBtn')).tap() - await element(by.id('bottomBarHomeBtn')).tap() - await expect( - element(by.id('homeScreenFeedTabs-Good Ppl')), - ).not.toBeVisible() - - await element(by.id('e2eGotoLists')).tap() - await element(by.id('list-Good Ppl')).tap() - }) - - it('Removes users on curatelists from the list', async () => { - await element(by.text('About')).tap() - await expect(element(by.id('user-bob.test'))).toBeVisible() - await element(by.id('user-bob.test-editBtn')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).toBeVisible() - await element(by.id('user-bob.test-addBtn')).tap() - await element(by.id('doneBtn')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).not.toBeVisible() - }) - - it('Shows the curatelist on my profile', async () => { - await element(by.id('bottomBarProfileBtn')).tap() - await element(by.id('profilePager-selector')).swipe('left') - await element(by.id('profilePager-selector-5')).tap() - await element(by.id('list-Good Ppl')).tap() - }) - - it('Adds and removes users on curatelists from the profile', async () => { - await element(by.id('bottomBarSearchBtn')).tap() - await element(by.id('searchTextInput')).typeText('bob') - await element(by.id('searchAutoCompleteResult-bob.test')).tap() - await expect(element(by.id('profileView'))).toBeVisible() - - await element(by.id('profileHeaderDropdownBtn')).tap() - await element(by.text('Add to Lists')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).toBeVisible() - await element(by.id('user-bob.test-addBtn')).tap() - await element(by.id('doneBtn')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).not.toBeVisible() - - await element(by.id('profileHeaderDropdownBtn')).tap() - await element(by.text('Add to Lists')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).toBeVisible() - await element(by.id('user-bob.test-addBtn')).tap() - await element(by.id('doneBtn')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).not.toBeVisible() - }) - - it('Can report a user list', async () => { - await element(by.id('e2eGotoSettings')).tap() - await element(by.id('signOutBtn')).tap() - await loginAsBob() - await element(by.id('bottomBarSearchBtn')).tap() - await element(by.id('searchTextInput')).typeText('alice') - await element(by.id('searchAutoCompleteResult-alice.test')).tap() - await element(by.id('profilePager-selector')).swipe('left') - await element(by.id('profilePager-selector-3')).tap() - await element(by.id('list-Good Ppl')).tap() - await element(by.id('headerDropdownBtn')).tap() - await element(by.text('Report List')).tap() - await expect(element(by.id('reportModal'))).toBeVisible() - await expect(element(by.text('Report List'))).toBeVisible() - await element( - by.id('reportReasonRadios-com.atproto.moderation.defs#reasonRude'), - ).tap() - await element(by.id('sendReportBtn')).tap() - await expect(element(by.id('reportModal'))).not.toBeVisible() - }) -}) diff --git a/__e2e__/tests/home-screen.test.ts b/__e2e__/tests/home-screen.test.ts deleted file mode 100644 index b594c46978..0000000000 --- a/__e2e__/tests/home-screen.test.ts +++ /dev/null @@ -1,110 +0,0 @@ -/* eslint-env detox/detox */ - -import {beforeAll, describe, it} from '@jest/globals' -import {expect} from 'detox' - -import {createServer, loginAsAlice, openApp} from '../util' - -describe('Home screen', () => { - beforeAll(async () => { - await createServer('?users&follows&posts&feeds') - await openApp({permissions: {notifications: 'YES'}}) - }) - - it('Login', async () => { - await loginAsAlice() - await element(by.id('homeScreenFeedTabs-Following')).tap() - }) - - it('Can go to feeds page using feeds button in tab bar', async () => { - await element(by.id('homeScreenFeedTabs-Feeds ✨')).tap() - await expect(element(by.text('Discover New Feeds'))).toBeVisible() - }) - - it('Feeds button disappears after pinning a feed', async () => { - await element(by.id('bottomBarProfileBtn')).tap() - await element(by.id('profilePager-selector')).swipe('left') - await element(by.id('profilePager-selector-4')).tap() - await element(by.id('feed-alice-favs')).tap() - await element(by.id('pinBtn')).tap() - await element(by.id('bottomBarHomeBtn')).tap() - await expect( - element(by.id('homeScreenFeedTabs-Feeds ✨')), - ).not.toBeVisible() - }) - - it('Can like posts', async () => { - const carlaPosts = by.id('feedItem-by-carla.test') - await expect( - element(by.id('likeCount').withAncestor(carlaPosts)).atIndex(0), - ).not.toExist() - await element(by.id('likeBtn').withAncestor(carlaPosts)).atIndex(0).tap() - await expect( - element(by.id('likeCount').withAncestor(carlaPosts)).atIndex(0), - ).toHaveText('1') - await element(by.id('likeBtn').withAncestor(carlaPosts)).atIndex(0).tap() - await expect( - element(by.id('likeCount').withAncestor(carlaPosts)).atIndex(0), - ).not.toExist() - }) - - it('Can repost posts', async () => { - const carlaPosts = by.id('feedItem-by-carla.test') - await expect( - element(by.id('repostCount').withAncestor(carlaPosts)).atIndex(0), - ).not.toExist() - await element(by.id('repostBtn').withAncestor(carlaPosts)).atIndex(0).tap() - await expect(element(by.id('repostModal'))).toBeVisible() - await element(by.id('repostBtn').withAncestor(by.id('repostModal'))).tap() - await expect(element(by.id('repostModal'))).not.toBeVisible() - await expect( - element(by.id('repostCount').withAncestor(carlaPosts)).atIndex(0), - ).toHaveText('1') - await element(by.id('repostBtn').withAncestor(carlaPosts)).atIndex(0).tap() - await expect(element(by.id('repostModal'))).toBeVisible() - await element(by.id('repostBtn').withAncestor(by.id('repostModal'))).tap() - await expect(element(by.id('repostModal'))).not.toBeVisible() - await expect( - element(by.id('repostCount').withAncestor(carlaPosts)).atIndex(0), - ).not.toExist() - }) - - // TODO skipping because the test env PDS isnt setup correctly to handle the report -prf - // it('Can report posts', async () => { - // const carlaPosts = by.id('feedItem-by-carla.test') - // await element(by.id('postDropdownBtn').withAncestor(carlaPosts)) - // .atIndex(0) - // .tap() - // await element(by.text('Report post')).tap() - // await element(by.id('com.atproto.moderation.defs#reasonSpam')).tap() - // await element(by.id('sendReportBtn')).tap() - // }) - - it('Can swipe between feeds', async () => { - await element(by.id('homeScreen')).swipe('left', 'fast', 0.75) - await expect(element(by.id('customFeedPage'))).toBeVisible() - await element(by.id('homeScreen')).swipe('right', 'fast', 0.75) - await expect(element(by.id('followingFeedPage'))).toBeVisible() - }) - - it('Can tap between feeds', async () => { - await element(by.id('homeScreenFeedTabs-alice-favs')).tap() - await expect(element(by.id('customFeedPage'))).toBeVisible() - await element(by.id('homeScreenFeedTabs-Following')).tap() - await expect(element(by.id('followingFeedPage'))).toBeVisible() - }) - - it('Can delete posts', async () => { - const alicePosts = by.id('feedItem-by-alice.test') - await expect(element(alicePosts.withDescendant(by.text('Post')))).toExist() - await element(by.id('postDropdownBtn').withAncestor(alicePosts)) - .atIndex(0) - .tap() - await element(by.text('Delete post')).tap() - await expect(element(by.id('confirmModal'))).toBeVisible() - await element(by.id('confirmBtn')).tap() - await expect( - element(alicePosts.withDescendant(by.text('Post'))), - ).not.toExist() - }) -}) diff --git a/__e2e__/tests/invite-codes.test.skip.ts b/__e2e__/tests/invite-codes.test.skip.ts deleted file mode 100644 index 9f00f05255..0000000000 --- a/__e2e__/tests/invite-codes.test.skip.ts +++ /dev/null @@ -1,47 +0,0 @@ -/* eslint-env detox/detox */ - -import {beforeAll, describe, it} from '@jest/globals' -import {expect} from 'detox' - -import {createServer, loginAsAlice, openApp} from '../util' - -describe('invite-codes', () => { - let service: string - let inviteCode = '' - beforeAll(async () => { - service = await createServer('?users&invite') - await openApp({permissions: {notifications: 'YES'}}) - }) - - it('I can fetch invite codes', async () => { - await loginAsAlice() - await element(by.id('e2eOpenInviteCodesModal')).tap() - await expect(element(by.id('inviteCodesModal'))).toBeVisible() - const attrs = await element(by.id('inviteCode-0-code')).getAttributes() - inviteCode = attrs.text - await element(by.id('closeBtn')).tap() - await element(by.id('e2eSignOut')).tap() - }) - - it('I can create a new account with the invite code', async () => { - await element(by.id('e2eOpenLoggedOutView')).tap() - await element(by.id('createAccountButton')).tap() - await device.takeScreenshot('1- opened create account screen') - await element(by.id('selectServiceButton')).tap() - await device.takeScreenshot('2- selected other server') - await element(by.id('customSelectBtn')).tap() - await element(by.id('customServerTextInput')).typeText(service) - await element(by.id('customServerTextInput')).tapReturnKey() - await element(by.id('doneBtn')).tap() - await device.takeScreenshot('3- input test server URL') - await element(by.id('inviteCodeInput')).typeText(inviteCode) - await element(by.id('emailInput')).typeText('example@test.com') - await element(by.id('passwordInput')).typeText('hunter2') - await device.takeScreenshot('4- entered account details') - await element(by.id('nextBtn')).tap() - await element(by.id('handleInput')).typeText('e2e-test') - await device.takeScreenshot('4- entered handle') - await element(by.id('nextBtn')).tap() - await expect(element(by.id('onboardingInterests'))).toBeVisible() - }) -}) diff --git a/__e2e__/tests/login.test.ts b/__e2e__/tests/login.test.ts deleted file mode 100644 index b4cedef6c4..0000000000 --- a/__e2e__/tests/login.test.ts +++ /dev/null @@ -1,23 +0,0 @@ -/* eslint-env detox/detox */ - -import {describe, beforeAll, it} from '@jest/globals' -import {expect} from 'detox' -import {openApp, login, createServer} from '../util' - -describe('Login', () => { - let service: string - beforeAll(async () => { - service = await createServer('?users') - await openApp({permissions: {notifications: 'YES'}}) - }) - - it('As Alice, I can login', async () => { - await element(by.id('e2eOpenLoggedOutView')).tap() - - await expect(element(by.id('signInButton'))).toBeVisible() - await login(service, 'alice', 'hunter2', { - takeScreenshots: true, - }) - await device.takeScreenshot('5- opened home screen') - }) -}) diff --git a/__e2e__/tests/merge-feed.test.skip.ts b/__e2e__/tests/merge-feed.test.skip.ts deleted file mode 100644 index 4a8b3cbcef..0000000000 --- a/__e2e__/tests/merge-feed.test.skip.ts +++ /dev/null @@ -1,163 +0,0 @@ -/* eslint-env detox/detox */ - -import {describe, beforeAll, it} from '@jest/globals' -import {expect} from 'detox' -import {openApp, loginAsAlice, createServer} from '../util' - -describe('Mergefeed', () => { - beforeAll(async () => { - await createServer('?mergefeed') - await openApp({permissions: {notifications: 'YES'}}) - }) - - it('Login', async () => { - await element(by.id('e2eOpenLoggedOutView')).tap() - await loginAsAlice() - await element(by.id('e2eToggleMergefeed')).tap() - await element(by.id('bottomBarFeedsBtn')).tap() - await element(by.id('feed-alice-favs-toggleSave')).tap() - await element(by.id('e2eGotoHome')).tap() - }) - - it('Sees the expected mix of posts with default filters', async () => { - await element(by.id('followingFeedPage-feed-flatlist')).swipe( - 'down', - 'slow', - 1, - 0.5, - 0.5, - ) - // followed users - await expect( - element( - by.id('postText').withAncestor(by.id('feedItem-by-carla.test')), - ).atIndex(0), - ).toHaveText('Post 9') - await expect( - element( - by.id('postText').withAncestor(by.id('feedItem-by-bob.test')), - ).atIndex(0), - ).toHaveText('Post 9') - await element(by.id('followingFeedPage-feed-flatlist')).swipe( - 'up', - 'fast', - 1, - 0.5, - 0.5, - ) - // feed users - await expect( - element( - by.id('postText').withAncestor(by.id('feedItem-by-dan.test')), - ).atIndex(0), - ).toHaveText('Post 0') - }) - - it('Sees the expected mix of posts with replies disabled', async () => { - await element(by.id('followingFeedPage-feed-flatlist')).swipe( - 'down', - 'fast', - 1, - 0.5, - 0.5, - ) - await element(by.id('followingFeedPage-feed-flatlist')).swipe( - 'down', - 'fast', - 1, - 0.5, - 0.5, - ) - await element(by.id('viewHeaderHomeFeedPrefsBtn')).tap() - await element(by.id('toggleRepliesBtn')).tap() - await element(by.id('confirmBtn')).tap() - await element(by.id('followingFeedPage-feed-flatlist')).swipe( - 'down', - 'slow', - 1, - 0.5, - 0.5, - ) - - // followed users - await expect( - element( - by.id('postText').withAncestor(by.id('feedItem-by-carla.test')), - ).atIndex(0), - ).toHaveText('Post 9') - await expect( - element( - by.id('postText').withAncestor(by.id('feedItem-by-bob.test')), - ).atIndex(0), - ).toHaveText('Post 9') - await element(by.id('followingFeedPage-feed-flatlist')).swipe( - 'up', - 'fast', - 1, - 0.5, - 0.5, - ) - - // feed users - await expect( - element( - by.id('postText').withAncestor(by.id('feedItem-by-dan.test')), - ).atIndex(0), - ).toHaveText('Post 0') - }) - - it('Sees the expected mix of posts with no follows', async () => { - await element(by.id('followingFeedPage-feed-flatlist')).swipe( - 'down', - 'fast', - 1, - 0.5, - 0.5, - ) - - await element(by.id('bottomBarSearchBtn')).tap() - await element(by.id('searchTextInput')).typeText('bob') - await element(by.id('searchAutoCompleteResult-bob.test')).tap() - await expect(element(by.id('profileView'))).toBeVisible() - await element(by.id('unfollowBtn')).tap() - await element(by.id('profileHeaderBackBtn')).tap() - - // have to wait for the toast to clear - await waitFor(element(by.id('searchTextInputClearBtn'))) - .toBeVisible() - .withTimeout(5000) - await element(by.id('searchTextInputClearBtn')).tap() - await element(by.id('searchTextInput')).typeText('carla') - await element(by.id('searchAutoCompleteResult-carla.test')).tap() - await expect(element(by.id('profileView'))).toBeVisible() - await element(by.id('unfollowBtn')).tap() - await element(by.id('profileHeaderBackBtn')).tap() - - await element(by.id('bottomBarHomeBtn')).tap() - await element(by.id('followingFeedPage-feed-flatlist')).swipe( - 'down', - 'slow', - 1, - 0.5, - 0.5, - ) - await element(by.id('followingFeedPage-feed-flatlist')).swipe( - 'down', - 'slow', - 1, - 0.5, - 0.5, - ) - - // followed users NOT present - await expect(element(by.id('feedItem-by-carla.test'))).not.toExist() - await expect(element(by.id('feedItem-by-bob.test'))).not.toExist() - - // feed users - await expect( - element( - by.id('postText').withAncestor(by.id('feedItem-by-dan.test')), - ).atIndex(0), - ).toHaveText('Post 0') - }) -}) diff --git a/__e2e__/tests/mod-lists.test.ts b/__e2e__/tests/mod-lists.test.ts deleted file mode 100644 index c3d4149e09..0000000000 --- a/__e2e__/tests/mod-lists.test.ts +++ /dev/null @@ -1,189 +0,0 @@ -/* eslint-env detox/detox */ - -import {describe, beforeAll, it} from '@jest/globals' -import {expect} from 'detox' -import {openApp, loginAsAlice, loginAsBob, createServer} from '../util' - -describe('Mod lists', () => { - beforeAll(async () => { - await createServer('?users&follows&labels') - await openApp({ - permissions: {notifications: 'YES', medialibrary: 'YES', photos: 'YES'}, - }) - }) - - it('Login and view my modlists', async () => { - await loginAsAlice() - await element(by.id('e2eGotoModeration')).tap() - await element(by.id('moderationlistsBtn')).tap() - await expect(element(by.id('list-Muted Users'))).toBeVisible() - await element(by.id('list-Muted Users')).tap() - await expect( - element(by.id('user-muted-by-list-account.test')), - ).toBeVisible() - }) - - it('Toggle mute subscription', async () => { - await element(by.id('unmuteBtn')).tap() - await element(by.id('subscribeBtn')).tap() - await element(by.text('Mute accounts')).tap() - await element(by.id('confirmBtn')).tap() - }) - - it('Edit display name and description via the edit modlist modal', async () => { - await element(by.id('headerDropdownBtn')).tap() - await element(by.text('Edit list details')).tap() - await expect(element(by.id('createOrEditListModal'))).toBeVisible() - await element(by.id('editNameInput')).clearText() - await element(by.id('editNameInput')).typeText('Bad Ppl') - await element(by.id('editDescriptionInput')).clearText() - await element(by.id('editDescriptionInput')).typeText('They bad') - await element(by.id('saveBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).not.toBeVisible() - await expect(element(by.id('headerTitle'))).toHaveText('Bad Ppl') - await expect(element(by.id('listDescription'))).toHaveText('They bad') - // have to wait for the toast to clear - await waitFor(element(by.id('headerDropdownBtn'))) - .toBeVisible() - .withTimeout(5000) - }) - - it('Remove description via the edit modlist modal', async () => { - await element(by.id('headerDropdownBtn')).tap() - await element(by.text('Edit list details')).tap() - await expect(element(by.id('createOrEditListModal'))).toBeVisible() - await element(by.id('editDescriptionInput')).clearText() - await element(by.id('saveBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).not.toBeVisible() - await expect(element(by.id('listDescription'))).not.toBeVisible() - // have to wait for the toast to clear - await waitFor(element(by.id('headerDropdownBtn'))) - .toBeVisible() - .withTimeout(5000) - }) - - // DISABLED e2e environment is real finicky about avatar uploads -prf - // it('Set avi via the edit modlist modal', async () => { - // await expect(element(by.id('userAvatarFallback'))).toExist() - // await element(by.id('headerDropdownBtn')).tap() - // await element(by.text('Edit list details')).tap() - // await expect(element(by.id('createOrEditListModal'))).toBeVisible() - // await element(by.id('changeAvatarBtn')).tap() - // await element(by.text('Library')).tap() - // await sleep(3e3) - // await element(by.id('saveBtn')).tap() - // await expect(element(by.id('createOrEditListModal'))).not.toBeVisible() - // await expect(element(by.id('userAvatarImage'))).toExist() - // // have to wait for the toast to clear - // await waitFor(element(by.id('headerDropdownBtn'))) - // .toBeVisible() - // .withTimeout(5000) - // }) - - // it('Remove avi via the edit modlist modal', async () => { - // await expect(element(by.id('userAvatarImage'))).toExist() - // await element(by.id('headerDropdownBtn')).tap() - // await element(by.text('Edit list details')).tap() - // await expect(element(by.id('createOrEditListModal'))).toBeVisible() - // await element(by.id('changeAvatarBtn')).tap() - // await element(by.text('Remove')).tap() - // await element(by.id('saveBtn')).tap() - // await expect(element(by.id('createOrEditListModal'))).not.toBeVisible() - // await expect(element(by.id('userAvatarFallback'))).toExist() - // // have to wait for the toast to clear - // await waitFor(element(by.id('headerDropdownBtn'))) - // .toBeVisible() - // .withTimeout(5000) - // }) - - it('Delete the modlist', async () => { - await element(by.id('headerDropdownBtn')).tap() - await element(by.text('Delete List')).tap() - await element(by.id('confirmBtn')).tap() - await expect(element(by.id('listsEmpty'))).toBeVisible() - }) - - it('Create a new modlist', async () => { - await element(by.id('newModListBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).toBeVisible() - await element(by.id('editNameInput')).typeText('Bad Ppl') - await element(by.id('editDescriptionInput')).typeText('They bad') - await element(by.id('saveBtn')).tap() - await expect(element(by.id('createOrEditListModal'))).not.toBeVisible() - await expect(element(by.id('headerTitle'))).toHaveText('Bad Ppl') - await expect(element(by.id('listDescription'))).toHaveText('They bad') - }) - - it('Adds and removes users on modlists from the list', async () => { - await element(by.id('addUserBtn')).tap() - await expect(element(by.id('listAddUserModal'))).toBeVisible() - await waitFor(element(by.id('user-warn-posts.test-addBtn'))) - .toBeVisible() - .withTimeout(5000) - await element(by.id('user-warn-posts.test-addBtn')).tap() - await element(by.id('doneBtn')).tap() - await expect(element(by.id('listAddUserModal'))).not.toBeVisible() - await element(by.id('listItems-flatlist')).swipe( - 'down', - 'slow', - 1, - 0.5, - 0.5, - ) - await expect(element(by.id('user-warn-posts.test'))).toBeVisible() - await element(by.id('user-warn-posts.test-editBtn')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).toBeVisible() - await element(by.id('user-warn-posts.test-addBtn')).tap() - await element(by.id('doneBtn')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).not.toBeVisible() - }) - - it('Shows the modlist on my profile', async () => { - await element(by.id('bottomBarProfileBtn')).tap() - await element(by.id('profilePager-selector')).swipe('left') - await element(by.id('profilePager-selector-5')).tap() - await element(by.id('list-Bad Ppl')).tap() - }) - - it('Adds and removes users on modlists from the profile', async () => { - await element(by.id('bottomBarSearchBtn')).tap() - await element(by.id('searchTextInput')).typeText('bob') - await element(by.id('searchAutoCompleteResult-bob.test')).tap() - await expect(element(by.id('profileView'))).toBeVisible() - - await element(by.id('profileHeaderDropdownBtn')).tap() - await element(by.text('Add to Lists')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).toBeVisible() - await element(by.id('user-bob.test-addBtn')).tap() - await element(by.id('doneBtn')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).not.toBeVisible() - - await element(by.id('profileHeaderDropdownBtn')).tap() - await element(by.text('Add to Lists')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).toBeVisible() - await element(by.id('user-bob.test-addBtn')).tap() - await element(by.id('doneBtn')).tap() - await expect(element(by.id('userAddRemoveListsModal'))).not.toBeVisible() - }) - - it('Can report a mute list', async () => { - await element(by.id('e2eGotoSettings')).tap() - await element(by.id('signOutBtn')).tap() - await loginAsBob() - await element(by.id('bottomBarSearchBtn')).tap() - await element(by.id('searchTextInput')).typeText('alice') - await element(by.id('searchAutoCompleteResult-alice.test')).tap() - await element(by.id('profilePager-selector')).swipe('left') - await element(by.id('profilePager-selector-3')).tap() - await element(by.id('list-Bad Ppl')).tap() - await element(by.id('headerDropdownBtn')).tap() - await element(by.text('Report List')).tap() - await expect(element(by.id('reportModal'))).toBeVisible() - await expect(element(by.text('Report List'))).toBeVisible() - await element( - by.id('reportReasonRadios-com.atproto.moderation.defs#reasonRude'), - ).tap() - await element(by.id('sendReportBtn')).tap() - await expect(element(by.id('reportModal'))).not.toBeVisible() - }) -}) diff --git a/__e2e__/tests/profile-screen.test.ts b/__e2e__/tests/profile-screen.test.ts deleted file mode 100644 index 7c3207ec83..0000000000 --- a/__e2e__/tests/profile-screen.test.ts +++ /dev/null @@ -1,196 +0,0 @@ -/* eslint-env detox/detox */ - -import {beforeAll, describe, it} from '@jest/globals' -import {expect} from 'detox' - -import {createServer, loginAsAlice, openApp, sleep} from '../util' - -describe('Profile screen', () => { - beforeAll(async () => { - await createServer('?users&posts&feeds') - await openApp({ - permissions: {notifications: 'YES', medialibrary: 'YES', photos: 'YES'}, - }) - }) - - it('Login and navigate to my profile', async () => { - await loginAsAlice() - await element(by.id('bottomBarProfileBtn')).tap() - }) - - it('Can see feeds', async () => { - await element(by.id('profilePager-selector')).swipe('left') - await element(by.id('profilePager-selector-4')).tap() - await expect(element(by.id('feed-alice-favs'))).toBeVisible() - await element(by.id('profilePager-selector')).swipe('right') - await element(by.id('profilePager-selector-0')).tap() - }) - - it('Open and close edit profile modal', async () => { - await element(by.id('profileHeaderEditProfileButton')).tap() - await expect(element(by.id('editProfileModal'))).toBeVisible() - await element(by.id('editProfileCancelBtn')).tap() - await expect(element(by.id('editProfileModal'))).not.toBeVisible() - }) - - it('Edit display name and description via the edit profile modal', async () => { - await element(by.id('profileHeaderEditProfileButton')).tap() - await expect(element(by.id('editProfileModal'))).toBeVisible() - await element(by.id('editProfileDisplayNameInput')).clearText() - await element(by.id('editProfileDisplayNameInput')).typeText('Alicia') - await element(by.id('editProfileDescriptionInput')).clearText() - await element(by.id('editProfileDescriptionInput')).typeText( - 'One cool hacker', - ) - await element(by.id('editProfileSaveBtn')).tap() - await expect(element(by.id('editProfileModal'))).not.toBeVisible() - await expect(element(by.id('profileHeaderDisplayName'))).toHaveText( - 'Alicia', - ) - await expect(element(by.id('profileHeaderDescription'))).toHaveText( - 'One cool hacker', - ) - }) - - it('Remove display name and description via the edit profile modal', async () => { - await element(by.id('profileHeaderEditProfileButton')).tap() - await expect(element(by.id('editProfileModal'))).toBeVisible() - await element(by.id('editProfileDisplayNameInput')).clearText() - await element(by.id('editProfileDescriptionInput')).clearText() - await element(by.id('editProfileSaveBtn')).tap() - await expect(element(by.id('editProfileModal'))).not.toBeVisible() - await expect(element(by.id('profileHeaderDisplayName'))).toHaveText( - 'alice.test', - ) - await expect(element(by.id('profileHeaderDescription'))).not.toExist() - }) - - it('Set avi and banner via the edit profile modal', async () => { - await expect(element(by.id('userBannerFallback'))).toExist() - await expect(element(by.id('userAvatarFallback'))).toExist() - await element(by.id('profileHeaderEditProfileButton')).tap() - await expect(element(by.id('editProfileModal'))).toBeVisible() - await element(by.id('changeBannerBtn')).tap() - await element(by.text('Upload from Library')).tap() - await sleep(3e3) - await element(by.id('changeAvatarBtn')).tap() - await element(by.text('Upload from Library')).tap() - await sleep(3e3) - await element(by.id('editProfileSaveBtn')).tap() - await expect(element(by.id('editProfileModal'))).not.toBeVisible() - await expect(element(by.id('userBannerImage'))).toExist() - await expect(element(by.id('userAvatarImage'))).toExist() - }) - - it('Remove avi and banner via the edit profile modal', async () => { - await expect(element(by.id('userBannerImage'))).toExist() - await expect(element(by.id('userAvatarImage'))).toExist() - await element(by.id('profileHeaderEditProfileButton')).tap() - await expect(element(by.id('editProfileModal'))).toBeVisible() - await element(by.id('changeBannerBtn')).tap() - await element(by.text('Remove Banner')).tap() - await element(by.id('changeAvatarBtn')).tap() - await element(by.text('Remove Avatar')).tap() - await element(by.id('editProfileSaveBtn')).tap() - await expect(element(by.id('editProfileModal'))).not.toBeVisible() - await expect(element(by.id('userBannerFallback'))).toExist() - await expect(element(by.id('userAvatarFallback'))).toExist() - }) - - it('Navigate to another user profile', async () => { - await element(by.id('bottomBarSearchBtn')).tap() - // have to wait for the toast to clear - await waitFor(element(by.id('searchTextInput'))) - .toBeVisible() - .withTimeout(5000) - await element(by.id('searchTextInput')).typeText('bob') - await element(by.id('searchAutoCompleteResult-bob.test')).tap() - await expect(element(by.id('profileView'))).toBeVisible() - }) - - it('Can follow/unfollow another user', async () => { - await element(by.id('followBtn')).tap() - await expect(element(by.id('unfollowBtn'))).toBeVisible() - await element(by.id('unfollowBtn')).tap() - await expect(element(by.id('followBtn'))).toBeVisible() - }) - - it('Can mute/unmute another user', async () => { - await expect(element(by.id('profileHeaderAlert'))).not.toExist() - await element(by.id('profileHeaderDropdownBtn')).tap() - await element(by.text('Mute Account')).tap() - await expect(element(by.id('profileHeaderAlert'))).toBeVisible() - await element(by.id('profileHeaderDropdownBtn')).tap() - await element(by.text('Unmute Account')).tap() - await expect(element(by.id('profileHeaderAlert'))).not.toExist() - }) - - // TODO skipping because the test env PDS isnt setup correctly to handle the report -prf - // it('Can report another user', async () => { - // await element(by.id('profileHeaderDropdownBtn')).tap() - // await element(by.text('Report Account')).tap() - // await expect(element(by.id('reportModal'))).toBeVisible() - // await element( - // by.id('reportReasonRadios-com.atproto.moderation.defs#reasonSpam'), - // ).tap() - // await element(by.id('sendReportBtn')).tap() - // await expect(element(by.id('reportModal'))).not.toBeVisible() - // }) - - it('Can like posts', async () => { - await element(by.id('postsFeed-flatlist')).swipe( - 'down', - 'slow', - 1, - 0.5, - 0.5, - ) - - const posts = by.id('feedItem-by-bob.test') - await expect( - element(by.id('likeCount').withAncestor(posts)).atIndex(0), - ).not.toExist() - await element(by.id('likeBtn').withAncestor(posts)).atIndex(0).tap() - await expect( - element(by.id('likeCount').withAncestor(posts)).atIndex(0), - ).toHaveText('1') - await element(by.id('likeBtn').withAncestor(posts)).atIndex(0).tap() - await expect( - element(by.id('likeCount').withAncestor(posts)).atIndex(0), - ).not.toExist() - }) - - it('Can repost posts', async () => { - const posts = by.id('feedItem-by-bob.test') - await expect( - element(by.id('repostCount').withAncestor(posts)).atIndex(0), - ).not.toExist() - await element(by.id('repostBtn').withAncestor(posts)).atIndex(0).tap() - await expect(element(by.id('repostModal'))).toBeVisible() - await element(by.id('repostBtn').withAncestor(by.id('repostModal'))).tap() - await expect(element(by.id('repostModal'))).not.toBeVisible() - await expect( - element(by.id('repostCount').withAncestor(posts)).atIndex(0), - ).toHaveText('1') - await element(by.id('repostBtn').withAncestor(posts)).atIndex(0).tap() - await expect(element(by.id('repostModal'))).toBeVisible() - await element(by.id('repostBtn').withAncestor(by.id('repostModal'))).tap() - await expect(element(by.id('repostModal'))).not.toBeVisible() - await expect( - element(by.id('repostCount').withAncestor(posts)).atIndex(0), - ).not.toExist() - }) - - // TODO skipping because the test env PDS isnt setup correctly to handle the report -prf - // it('Can report posts', async () => { - // const posts = by.id('feedItem-by-bob.test') - // await element(by.id('postDropdownBtn').withAncestor(posts)).atIndex(0).tap() - // await element(by.text('Report post')).tap() - // await expect(element(by.id('reportModal'))).toBeVisible() - // await element( - // by.id('reportReasonRadios-com.atproto.moderation.defs#reasonSpam'), - // ).tap() - // await element(by.id('sendReportBtn')).tap() - // await expect(element(by.id('reportModal'))).not.toBeVisible() - // }) -}) diff --git a/__e2e__/tests/search-screen.test.ts b/__e2e__/tests/search-screen.test.ts deleted file mode 100644 index 1dbb3cbfaa..0000000000 --- a/__e2e__/tests/search-screen.test.ts +++ /dev/null @@ -1,25 +0,0 @@ -/* eslint-env detox/detox */ - -import {describe, beforeAll, it} from '@jest/globals' -import {expect} from 'detox' -import {openApp, loginAsAlice, createServer} from '../util' - -describe('Search screen', () => { - beforeAll(async () => { - await createServer('?users') - await openApp({ - permissions: {notifications: 'YES', medialibrary: 'YES', photos: 'YES'}, - }) - }) - - it('Login', async () => { - await loginAsAlice() - }) - - it('Navigate to another user profile via autocomplete', async () => { - await element(by.id('bottomBarSearchBtn')).tap() - await element(by.id('searchTextInput')).typeText('bob') - await element(by.id('searchAutoCompleteResult-bob.test')).tap() - await expect(element(by.id('profileView'))).toBeVisible() - }) -}) diff --git a/__e2e__/tests/self-labeling.test.ts b/__e2e__/tests/self-labeling.test.ts deleted file mode 100644 index bba8ed484c..0000000000 --- a/__e2e__/tests/self-labeling.test.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* eslint-env detox/detox */ - -import {describe, beforeAll, it} from '@jest/globals' -import {expect} from 'detox' -import {openApp, loginAsAlice, createServer, sleep} from '../util' - -describe('Self-labeling', () => { - beforeAll(async () => { - await createServer('?users') - await openApp({ - permissions: {notifications: 'YES', medialibrary: 'YES', photos: 'YES'}, - }) - }) - - it('Login', async () => { - await loginAsAlice() - await element(by.id('homeScreenFeedTabs-Following')).tap() - }) - - it('Post an image with the porn label', async () => { - await element(by.id('composeFAB')).tap() - await element(by.id('composerTextInput')).typeText('Post with an image') - await element(by.id('openGalleryBtn')).tap() - await sleep(3e3) - await element(by.id('labelsBtn')).tap() - await element(by.id('pornLabelBtn')).tap() - await element(by.id('confirmBtn')).tap() - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - const posts = by.id('feedItem-by-alice.test') - await element(by.id('e2eRefreshHome')).tap() - await expect( - element(by.id('contentHider-embed').withAncestor(posts)).atIndex(0), - ).toExist() - }) -}) diff --git a/__e2e__/tests/shell.test.skip.ts b/__e2e__/tests/shell.test.skip.ts deleted file mode 100644 index 69619dd81b..0000000000 --- a/__e2e__/tests/shell.test.skip.ts +++ /dev/null @@ -1,33 +0,0 @@ -/* eslint-env detox/detox */ - -import {openApp, loginAsAlice, createServer} from '../util' - -describe('Shell', () => { - beforeAll(async () => { - await createServer('?users') - await openApp({permissions: {notifications: 'YES'}}) - }) - - it('Login', async () => { - await loginAsAlice() - await element(by.id('homeScreenFeedTabs-Following')).tap() - }) - - it('Can swipe the shelf open', async () => { - await element(by.id('homeScreen')).swipe('right', 'fast', 0.75) - await expect(element(by.id('drawer'))).toBeVisible() - await element(by.id('drawer')).swipe('left', 'fast', 0.75) - await expect(element(by.id('drawer'))).not.toBeVisible() - }) - - it('Can open the shelf by pressing the header avi', async () => { - await element(by.id('viewHeaderDrawerBtn')).tap() - await expect(element(by.id('drawer'))).toBeVisible() - }) - - it('Can navigate using the shelf', async () => { - await element(by.id('menuItemButton-Notifications')).tap() - await expect(element(by.id('drawer'))).not.toBeVisible() - await expect(element(by.id('notificationsScreen'))).toBeVisible() - }) -}) diff --git a/__e2e__/tests/thread-muting.test.ts b/__e2e__/tests/thread-muting.test.ts deleted file mode 100644 index ae62f93dcf..0000000000 --- a/__e2e__/tests/thread-muting.test.ts +++ /dev/null @@ -1,103 +0,0 @@ -/* eslint-env detox/detox */ - -import {describe, beforeAll, it} from '@jest/globals' -import {expect} from 'detox' -import {openApp, loginAsAlice, loginAsBob, createServer} from '../util' - -describe('Thread muting', () => { - beforeAll(async () => { - await createServer('?users&follows') - await openApp({permissions: {notifications: 'YES'}}) - }) - - it('Login, create a thread, and log out', async () => { - await loginAsAlice() - await element(by.id('homeScreenFeedTabs-Following')).tap() - await element(by.id('composeFAB')).tap() - await element(by.id('composerTextInput')).typeText('Test thread') - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - }) - - it('Login, reply to the thread, and log out', async () => { - await loginAsBob() - await element(by.id('homeScreenFeedTabs-Following')).tap() - const alicePosts = by.id('feedItem-by-alice.test') - await element(by.id('replyBtn').withAncestor(alicePosts)).atIndex(0).tap() - await element(by.id('composerTextInput')).typeText('Reply 1') - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - }) - - it('Login, confirm notification exists, mute thread, and log out', async () => { - await loginAsAlice() - await element(by.id('bottomBarNotificationsBtn')).tap() - const bobNotifs = by.id('feedItem-by-bob.test') - await expect( - element(by.id('postText').withAncestor(bobNotifs)).atIndex(0), - ).toHaveText('Reply 1') - await element(by.id('postDropdownBtn').withAncestor(bobNotifs)) - .atIndex(0) - .tap() - await element(by.text('Mute thread')).tap() - // have to wait for the toast to clear - await waitFor(element(by.id('viewHeaderDrawerBtn'))) - .toBeVisible() - .withTimeout(5000) - }) - - it('Login, reply to the thread twice, and log out', async () => { - await loginAsBob() - - await element(by.id('bottomBarProfileBtn')).tap() - await element(by.id('profilePager-selector-1')).tap() - const bobPosts = by.id('feedItem-by-bob.test') - await element(by.id('replyBtn').withAncestor(bobPosts)).atIndex(0).tap() - await element(by.id('composerTextInput')).typeText('Reply 2') - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - - const alicePosts = by.id('feedItem-by-alice.test') - await element(by.id('replyBtn').withAncestor(alicePosts)).atIndex(0).tap() - await element(by.id('composerTextInput')).typeText('Reply 3') - await element(by.id('composerPublishBtn')).tap() - await expect(element(by.id('composeFAB'))).toBeVisible() - - await element(by.id('bottomBarHomeBtn')).tap() - }) - - it('Login, confirm notifications dont exist, unmute the thread, confirm notifications exist', async () => { - await loginAsAlice() - - await element(by.id('bottomBarNotificationsBtn')).tap() - const bobNotifs = by.id('feedItem-by-bob.test') - await expect( - element(by.id('postText').withAncestor(bobNotifs)).atIndex(0), - ).not.toExist() - - await element(by.id('bottomBarHomeBtn')).tap() - const alicePosts = by.id('feedItem-by-alice.test') - await element(by.id('postDropdownBtn').withAncestor(alicePosts)) - .atIndex(0) - .tap() - await element(by.text('Unmute thread')).tap() - - // TODO - // the swipe down to trigger PTR isnt working and I dont want to block on this - // -prf - // await element(by.id('bottomBarNotificationsBtn')).tap() - // await element(by.id('notifsFeed')).swipe('down', 'fast') - // await waitFor(element(by.id('postText').withAncestor(bobNotifs))) - // .toBeVisible() - // .withTimeout(5000) - // await expect( - // element(by.id('postText').withAncestor(bobNotifs)).atIndex(0), - // ).toHaveText('Reply 2') - // await expect( - // element(by.id('postText').withAncestor(bobNotifs)).atIndex(1), - // ).toHaveText('Reply 3') - // await expect( - // element(by.id('postText').withAncestor(bobNotifs)).atIndex(2), - // ).toHaveText('Reply 1') - }) -}) diff --git a/__e2e__/tests/thread-screen.test.ts b/__e2e__/tests/thread-screen.test.ts deleted file mode 100644 index b99da11a67..0000000000 --- a/__e2e__/tests/thread-screen.test.ts +++ /dev/null @@ -1,131 +0,0 @@ -/* eslint-env detox/detox */ - -import {beforeAll, describe, it} from '@jest/globals' -import {expect} from 'detox' - -import {createServer, loginAsAlice, openApp} from '../util' - -describe('Thread screen', () => { - beforeAll(async () => { - await createServer('?users&follows&thread') - await openApp({permissions: {notifications: 'YES'}}) - }) - - it('Login & navigate to thread', async () => { - await loginAsAlice() - await element(by.id('homeScreenFeedTabs-Following')).tap() - await element(by.id('feedItem-by-bob.test')).atIndex(0).tap() - await expect( - element( - by - .id('postThreadItem-by-bob.test') - .withDescendant(by.text('Thread root')), - ), - ).toBeVisible() - await expect( - element( - by - .id('postThreadItem-by-carla.test') - .withDescendant(by.text('Thread reply')), - ), - ).toBeVisible() - }) - - it('Can like the root post', async () => { - const post = by.id('postThreadItem-by-bob.test') - await expect( - element(by.id('likeCount-expanded').withAncestor(post)).atIndex(0), - ).not.toExist() - await element(by.id('likeBtn').withAncestor(post)).atIndex(0).tap() - await expect( - element(by.id('likeCount-expanded').withAncestor(post)).atIndex(0), - ).toHaveText('1 like') - await element(by.id('likeBtn').withAncestor(post)).atIndex(0).tap() - await expect( - element(by.id('likeCount-expanded').withAncestor(post)).atIndex(0), - ).not.toExist() - }) - - it('Can like a reply post', async () => { - const post = by.id('postThreadItem-by-carla.test') - await expect( - element(by.id('likeCount').withAncestor(post)).atIndex(0), - ).not.toExist() - await element(by.id('likeBtn').withAncestor(post)).atIndex(0).tap() - await expect( - element(by.id('likeCount').withAncestor(post)).atIndex(0), - ).toHaveText('1') - await element(by.id('likeBtn').withAncestor(post)).atIndex(0).tap() - await expect( - element(by.id('likeCount').withAncestor(post)).atIndex(0), - ).not.toExist() - }) - - it('Can repost the root post', async () => { - const post = by.id('postThreadItem-by-bob.test') - await expect( - element(by.id('repostCount-expanded').withAncestor(post)).atIndex(0), - ).not.toExist() - await element(by.id('repostBtn').withAncestor(post)).atIndex(0).tap() - await expect(element(by.id('repostModal'))).toBeVisible() - await element(by.id('repostBtn').withAncestor(by.id('repostModal'))).tap() - await expect(element(by.id('repostModal'))).not.toBeVisible() - await expect( - element(by.id('repostCount-expanded').withAncestor(post)).atIndex(0), - ).toHaveText('1 repost') - await element(by.id('repostBtn').withAncestor(post)).atIndex(0).tap() - await expect(element(by.id('repostModal'))).toBeVisible() - await element(by.id('repostBtn').withAncestor(by.id('repostModal'))).tap() - await expect(element(by.id('repostModal'))).not.toBeVisible() - await expect( - element(by.id('repostCount-expanded').withAncestor(post)).atIndex(0), - ).not.toExist() - }) - - it('Can repost a reply post', async () => { - const post = by.id('postThreadItem-by-carla.test') - await expect( - element(by.id('repostCount').withAncestor(post)).atIndex(0), - ).not.toExist() - await element(by.id('repostBtn').withAncestor(post)).atIndex(0).tap() - await expect(element(by.id('repostModal'))).toBeVisible() - await element(by.id('repostBtn').withAncestor(by.id('repostModal'))).tap() - await expect(element(by.id('repostModal'))).not.toBeVisible() - await expect( - element(by.id('repostCount').withAncestor(post)).atIndex(0), - ).toHaveText('1') - await element(by.id('repostBtn').withAncestor(post)).atIndex(0).tap() - await expect(element(by.id('repostModal'))).toBeVisible() - await element(by.id('repostBtn').withAncestor(by.id('repostModal'))).tap() - await expect(element(by.id('repostModal'))).not.toBeVisible() - await expect( - element(by.id('repostCount').withAncestor(post)).atIndex(0), - ).not.toExist() - }) - - // TODO skipping because the test env PDS isnt setup correctly to handle the report -prf - // it('Can report the root post', async () => { - // const post = by.id('postThreadItem-by-bob.test') - // await element(by.id('postDropdownBtn').withAncestor(post)).atIndex(0).tap() - // await element(by.text('Report post')).tap() - // await expect(element(by.id('reportModal'))).toBeVisible() - // await element( - // by.id('reportReasonRadios-com.atproto.moderation.defs#reasonSpam'), - // ).tap() - // await element(by.id('sendReportBtn')).tap() - // await expect(element(by.id('reportModal'))).not.toBeVisible() - // }) - - // TODO skipping because the test env PDS isnt setup correctly to handle the report -prf - // it('Can report a reply post', async () => { - // const post = by.id('postThreadItem-by-carla.test') - // await element(by.id('postDropdownBtn').withAncestor(post)).atIndex(0).tap() - // await element(by.text('Report post')).tap() - // await expect(element(by.id('reportModal'))).toBeVisible() - // await element( - // by.id('reportReasonRadios-com.atproto.moderation.defs#reasonSpam'), - // ).tap() - // await element(by.id('sendReportBtn')).tap() - // await expect(element(by.id('reportModal'))).not.toBeVisible() - // }) -}) diff --git a/__e2e__/util.ts b/__e2e__/util.ts deleted file mode 100644 index 70fbdb6010..0000000000 --- a/__e2e__/util.ts +++ /dev/null @@ -1,141 +0,0 @@ -import {execSync} from 'child_process' -import {resolveConfig} from 'detox/internals' -import http from 'http' - -const platform = device.getPlatform() - -export async function openApp(opts: any) { - opts = opts || {} - const config = await resolveConfig() - - if (device.getPlatform() === 'ios') { - // disable password autofill - execSync( - `plutil -replace restrictedBool.allowPasswordAutoFill.value -bool NO ~/Library/Developer/CoreSimulator/Devices/${device.id}/data/Containers/Shared/SystemGroup/systemgroup.com.apple.configurationprofiles/Library/ConfigurationProfiles/UserSettings.plist`, - ) - execSync( - `plutil -replace restrictedBool.allowPasswordAutoFill.value -bool NO ~/Library/Developer/CoreSimulator/Devices/${device.id}/data/Library/UserConfigurationProfiles/EffectiveUserSettings.plist`, - ) - execSync( - `plutil -replace restrictedBool.allowPasswordAutoFill.value -bool NO ~/Library/Developer/CoreSimulator/Devices/${device.id}/data/Library/UserConfigurationProfiles/PublicInfo/PublicEffectiveUserSettings.plist`, - ) - } - if (config.configurationName.split('.').includes('debug')) { - return await openAppForDebugBuild(platform, opts) - } else { - return await device.launchApp({ - ...opts, - newInstance: true, - }) - } -} - -export async function isVisible(id: string) { - try { - await expect(element(by.id(id))).toBeVisible() - return true - } catch (e) { - return false - } -} - -export async function login( - service: string, - username: string, - password: string, - {takeScreenshots} = {takeScreenshots: false}, -) { - await element(by.id('signInButton')).tap() - if (takeScreenshots) { - await device.takeScreenshot('1- opened sign-in screen') - } - if (await isVisible('chooseAccountForm')) { - await element(by.id('chooseNewAccountBtn')).tap() - } - await element(by.id('selectServiceButton')).tap() - if (takeScreenshots) { - await device.takeScreenshot('2- opened service selector') - } - await element(by.id('customSelectBtn')).tap() - await element(by.id('customServerTextInput')).typeText(service) - await element(by.id('customServerTextInput')).tapReturnKey() - await element(by.id('doneBtn')).tap() - if (takeScreenshots) { - await device.takeScreenshot('3- input custom service') - } - await element(by.id('loginUsernameInput')).typeText(username) - await element(by.id('loginPasswordInput')).typeText(password) - if (takeScreenshots) { - await device.takeScreenshot('4- entered username and password') - } - await element(by.id('loginNextButton')).tap() -} - -export async function loginAsAlice() { - await element(by.id('e2eSignInAlice')).tap() -} - -export async function loginAsBob() { - await element(by.id('e2eSignInBob')).tap() -} - -async function openAppForDebugBuild(platform: string, opts: any) { - const deepLinkUrl = // Local testing with packager - /*process.env.EXPO_USE_UPDATES - ? // Testing latest published EAS update for the test_debug channel - getDeepLinkUrl(getLatestUpdateUrl()) - : */ getDeepLinkUrl(getDevLauncherPackagerUrl(platform)) - - if (platform === 'ios') { - await device.launchApp({ - ...opts, - newInstance: true, - }) - sleep(3000) - await device.openURL({ - url: deepLinkUrl, - }) - } else { - await device.launchApp({ - ...opts, - newInstance: true, - url: deepLinkUrl, - }) - } - - await sleep(3000) -} - -export async function createServer(path = ''): Promise { - return new Promise(function (resolve, reject) { - var req = http.request( - { - method: 'POST', - host: 'localhost', - port: 1986, - path: `/${path}`, - }, - function (res) { - const body: Buffer[] = [] - res.on('data', chunk => body.push(chunk)) - res.on('end', function () { - try { - resolve(Buffer.concat(body).toString()) - } catch (e) { - reject(e) - } - }) - }, - ) - req.on('error', reject) - req.end() - }) -} - -const getDeepLinkUrl = (url: string) => - `expo+bluesky://expo-development-client/?url=${encodeURIComponent(url)}` - -const getDevLauncherPackagerUrl = (platform: string) => - `http://localhost:8081/index.bundle?platform=${platform}&dev=true&minify=false&disableOnboarding=1` - -export const sleep = (t: number) => new Promise(res => setTimeout(res, t)) diff --git a/__tests__/lib/string.test.ts b/__tests__/lib/string.test.ts index 33da5a1c81..78478a26d4 100644 --- a/__tests__/lib/string.test.ts +++ b/__tests__/lib/string.test.ts @@ -142,7 +142,12 @@ describe('makeRecordUri', () => { }) }) -describe('ago', () => { +// FIXME: Reenable after fixing non-deterministic test. +describe.skip('ago', () => { + const oneYearDate = new Date( + new Date().setMonth(new Date().getMonth() - 11), + ).setDate(new Date().getDate() - 28) + const inputs = [ 1671461038, '04 Dec 1995 00:12:00 GMT', @@ -151,7 +156,32 @@ describe('ago', () => { new Date().setMinutes(new Date().getMinutes() - 10), new Date().setHours(new Date().getHours() - 1), new Date().setDate(new Date().getDate() - 1), + new Date().setDate(new Date().getDate() - 20), + new Date().setDate(new Date().getDate() - 25), + new Date().setDate(new Date().getDate() - 28), + new Date().setDate(new Date().getDate() - 29), + new Date().setDate(new Date().getDate() - 30), new Date().setMonth(new Date().getMonth() - 1), + new Date(new Date().setMonth(new Date().getMonth() - 1)).setDate( + new Date().getDate() - 20, + ), + new Date(new Date().setMonth(new Date().getMonth() - 1)).setDate( + new Date().getDate() - 25, + ), + new Date(new Date().setMonth(new Date().getMonth() - 1)).setDate( + new Date().getDate() - 28, + ), + new Date(new Date().setMonth(new Date().getMonth() - 1)).setDate( + new Date().getDate() - 29, + ), + new Date().setMonth(new Date().getMonth() - 11), + new Date(new Date().setMonth(new Date().getMonth() - 11)).setDate( + new Date().getDate() - 20, + ), + new Date(new Date().setMonth(new Date().getMonth() - 11)).setDate( + new Date().getDate() - 25, + ), + oneYearDate, ] const outputs = [ new Date(1671461038).toLocaleDateString(), @@ -161,7 +191,20 @@ describe('ago', () => { '10m', '1h', '1d', + '20d', + '25d', + '28d', + '29d', '1mo', + '1mo', + '1mo', + '1mo', + '2mo', + '2mo', + '11mo', + '11mo', + '11mo', + new Date(oneYearDate).toLocaleDateString(), ] it('correctly calculates how much time passed, in a string', () => { diff --git a/app.config.js b/app.config.js index 66a453039a..0c3588c67f 100644 --- a/app.config.js +++ b/app.config.js @@ -110,7 +110,7 @@ module.exports = function (config) { { NSPrivacyAccessedAPIType: 'NSPrivacyAccessedAPICategoryUserDefaults', - NSPrivacyAccessedAPITypeReasons: ['CA92.1'], + NSPrivacyAccessedAPITypeReasons: ['CA92.1', '1C8F.1'], }, ], }, @@ -175,7 +175,6 @@ module.exports = function (config) { checkAutomatically: 'NEVER', channel: UPDATES_CHANNEL, }, - assetBundlePatterns: ['**/*'], plugins: [ 'expo-localization', Boolean(process.env.SENTRY_AUTH_TOKEN) && 'sentry-expo', @@ -183,7 +182,7 @@ module.exports = function (config) { 'expo-build-properties', { ios: { - deploymentTarget: '13.4', + deploymentTarget: '14.0', newArchEnabled: false, }, android: { @@ -200,14 +199,17 @@ module.exports = function (config) { { icon: './assets/icon-android-notification.png', color: '#1185fe', + sounds: PLATFORM === 'ios' ? ['assets/dm.aiff'] : ['assets/dm.mp3'], }, ], './plugins/withAndroidManifestPlugin.js', './plugins/withAndroidManifestFCMIconPlugin.js', + './plugins/withAndroidManifestLaunchModePlugin.js', './plugins/withAndroidStylesWindowBackgroundPlugin.js', './plugins/withAndroidStylesAccentColorPlugin.js', './plugins/withAndroidSplashScreenStatusBarTranslucentPlugin.js', './plugins/shareExtension/withShareExtensions.js', + './plugins/notificationsExtension/withNotificationsExtension.js', ].filter(Boolean), extra: { eas: { @@ -224,6 +226,15 @@ module.exports = function (config) { ], }, }, + { + targetName: 'BlueskyNSE', + bundleIdentifier: 'xyz.blueskyweb.app.BlueskyNSE', + entitlements: { + 'com.apple.security.application-groups': [ + 'group.app.bsky', + ], + }, + }, ], }, }, diff --git a/assets/dm.aiff b/assets/dm.aiff new file mode 100644 index 0000000000..364b814b7f Binary files /dev/null and b/assets/dm.aiff differ diff --git a/assets/dm.mp3 b/assets/dm.mp3 new file mode 100644 index 0000000000..acb5728ee7 Binary files /dev/null and b/assets/dm.mp3 differ diff --git a/assets/icons/bell2_filled_corner0_rounded.svg b/assets/icons/bell2_filled_corner0_rounded.svg new file mode 100644 index 0000000000..9c66129b11 --- /dev/null +++ b/assets/icons/bell2_filled_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/bell2_stroke2_corner0_rounded.svg b/assets/icons/bell2_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..577bc5eaa1 --- /dev/null +++ b/assets/icons/bell2_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/bellOff_filled_corner0_rounded.svg b/assets/icons/bellOff_filled_corner0_rounded.svg new file mode 100644 index 0000000000..4c6997a709 --- /dev/null +++ b/assets/icons/bellOff_filled_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/bellOff_stroke2_corner0_rounded.svg b/assets/icons/bellOff_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..0ed4910d4b --- /dev/null +++ b/assets/icons/bellOff_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/bell_filled_corner0_rounded.svg b/assets/icons/bell_filled_corner0_rounded.svg new file mode 100644 index 0000000000..3f21b7e9bd --- /dev/null +++ b/assets/icons/bell_filled_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/bell_stroke2_corner0_rounded.svg b/assets/icons/bell_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..a31f1bd152 --- /dev/null +++ b/assets/icons/bell_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/bulletList_filled_corner0_rounded.svg b/assets/icons/bulletList_filled_corner0_rounded.svg new file mode 100644 index 0000000000..b70d589952 --- /dev/null +++ b/assets/icons/bulletList_filled_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/bulletList_stroke2_corner0_rounded.svg b/assets/icons/bulletList_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..4f7911bada --- /dev/null +++ b/assets/icons/bulletList_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/closeQuote_filled_stroke2_corner0_rounded.svg b/assets/icons/closeQuote_filled_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..41e75887c0 --- /dev/null +++ b/assets/icons/closeQuote_filled_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/closeQuote_stroke2_corner0_rounded.svg b/assets/icons/closeQuote_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..3c76c73920 --- /dev/null +++ b/assets/icons/closeQuote_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/icons/closeQuote_stroke2_corner1_rounded.svg b/assets/icons/closeQuote_stroke2_corner1_rounded.svg new file mode 100644 index 0000000000..b27eb94f23 --- /dev/null +++ b/assets/icons/closeQuote_stroke2_corner1_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/earth_stroke2_corner0_rounded.svg b/assets/icons/earth_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..02d2fe0b0e --- /dev/null +++ b/assets/icons/earth_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/icons/editBig_stroke2_corner0_rounded.svg b/assets/icons/editBig_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..16ca3d4c85 --- /dev/null +++ b/assets/icons/editBig_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/hashtag_filled_corner0_rounded.svg b/assets/icons/hashtag_filled_corner0_rounded.svg new file mode 100644 index 0000000000..5512179dce --- /dev/null +++ b/assets/icons/hashtag_filled_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/homeOpen_filled_corner0_rounded.svg b/assets/icons/homeOpen_filled_corner0_rounded.svg new file mode 100644 index 0000000000..e3ab6e2039 --- /dev/null +++ b/assets/icons/homeOpen_filled_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/homeOpen_stroke2_corner0_rounded.svg b/assets/icons/homeOpen_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..698f5d5db7 --- /dev/null +++ b/assets/icons/homeOpen_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/image_stroke2_corner0_rounded.svg b/assets/icons/image_stroke2_corner0_rounded.svg index 389020b0d1..3363e186db 100644 --- a/assets/icons/image_stroke2_corner0_rounded.svg +++ b/assets/icons/image_stroke2_corner0_rounded.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/assets/icons/magnifyingGlass_filled_corner0_rounded.svg b/assets/icons/magnifyingGlass_filled_corner0_rounded.svg new file mode 100644 index 0000000000..b0c9ddefac --- /dev/null +++ b/assets/icons/magnifyingGlass_filled_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/message_stroke2_corner0_rounded.svg b/assets/icons/message_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..2cbaa3e628 --- /dev/null +++ b/assets/icons/message_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/message_stroke2_corner0_rounded_filled.svg b/assets/icons/message_stroke2_corner0_rounded_filled.svg new file mode 100644 index 0000000000..0de0246727 --- /dev/null +++ b/assets/icons/message_stroke2_corner0_rounded_filled.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/openQuote_filled_stroke2_corner0_rounded.svg b/assets/icons/openQuote_filled_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..e8141a1128 --- /dev/null +++ b/assets/icons/openQuote_filled_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/openQuote_stroke2_corner0_rounded.svg b/assets/icons/openQuote_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..eee6344cee --- /dev/null +++ b/assets/icons/openQuote_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/personPlus_filled_stroke2_corner0_rounded.svg b/assets/icons/personPlus_filled_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..d46976d84b --- /dev/null +++ b/assets/icons/personPlus_filled_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/personPlus_stroke2_corner0_rounded.svg b/assets/icons/personPlus_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..118268bf97 --- /dev/null +++ b/assets/icons/personPlus_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/repost_stroke2_corner0_rounded.svg b/assets/icons/repost_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..a3cff9c62d --- /dev/null +++ b/assets/icons/repost_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/repost_stroke2_corner3_rounded.svg b/assets/icons/repost_stroke2_corner3_rounded.svg new file mode 100644 index 0000000000..8aa7f727bd --- /dev/null +++ b/assets/icons/repost_stroke2_corner3_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/settingsGear2_filled_corner0_rounded.svg b/assets/icons/settingsGear2_filled_corner0_rounded.svg new file mode 100644 index 0000000000..dfc89ff507 --- /dev/null +++ b/assets/icons/settingsGear2_filled_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/userCircle_filled_corner0_rounded.svg b/assets/icons/userCircle_filled_corner0_rounded.svg new file mode 100644 index 0000000000..67bb6eac77 --- /dev/null +++ b/assets/icons/userCircle_filled_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/userCircle_stroke2_corner0_rounded.svg b/assets/icons/userCircle_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..ffad04f2b7 --- /dev/null +++ b/assets/icons/userCircle_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/babel.config.js b/babel.config.js index 43b2c7bce3..c976d04b67 100644 --- a/babel.config.js +++ b/babel.config.js @@ -8,9 +8,6 @@ module.exports = function (api) { { lazyImports: true, native: { - // We should be able to remove this after upgrading Expo - // to a version that includes https://github.com/expo/expo/pull/24672. - unstable_transformProfile: 'hermes-stable', // Disable ESM -> CJS compilation because Metro takes care of it. // However, we need it in Jest tests since those run without Metro. disableImportExportTransform: !isTestEnv, @@ -19,6 +16,13 @@ module.exports = function (api) { ], ], plugins: [ + 'macros', + [ + 'babel-plugin-react-compiler', + { + runtimeModule: 'react-compiler-runtime', + }, + ], [ 'module:react-native-dotenv', { @@ -46,7 +50,6 @@ module.exports = function (api) { }, }, ], - 'macros', 'react-native-reanimated/plugin', // NOTE: this plugin MUST be last ], env: { diff --git a/bskyembed/.eslintrc b/bskyembed/.eslintrc index 339900dd09..e6e575a11c 100644 --- a/bskyembed/.eslintrc +++ b/bskyembed/.eslintrc @@ -15,6 +15,6 @@ "parserOptions": { "sourceType": "module", "ecmaVersion": "latest", - "project": "./tsconfig.json" + "project": "./bskyembed/tsconfig.json" } } \ No newline at end of file diff --git a/bskyembed/src/components/embed.tsx b/bskyembed/src/components/embed.tsx index 4457defce4..1dadfee38e 100644 --- a/bskyembed/src/components/embed.tsx +++ b/bskyembed/src/components/embed.tsx @@ -193,7 +193,7 @@ export function Embed({ function Info({children}: {children: ComponentChildren}) { return (
- +

{children}

) @@ -293,7 +293,8 @@ function ExternalEmbed({ return ( + className="w-full rounded-lg overflow-hidden border flex flex-col items-stretch" + disableTracking> {content.external.thumb && ( ) { const searchParam = new URLSearchParams(window.location.search) const ref_url = searchParam.get('ref_url') @@ -19,9 +21,9 @@ export function Link({ return ( evt.stopPropagation()} diff --git a/bskyembed/src/components/post.tsx b/bskyembed/src/components/post.tsx index 3f2c745bdd..d23c84cbfb 100644 --- a/bskyembed/src/components/post.tsx +++ b/bskyembed/src/components/post.tsx @@ -1,4 +1,9 @@ -import {AppBskyFeedDefs, AppBskyFeedPost, RichText} from '@atproto/api' +import { + AppBskyFeedDefs, + AppBskyFeedPost, + AppBskyRichtextFacet, + RichText, +} from '@atproto/api' import {h} from 'preact' import replyIcon from '../../assets/bubble_filled_stroke2_corner2_rounded.svg' @@ -56,7 +61,7 @@ export function Post({thread}: Props) { - + @@ -71,7 +76,7 @@ export function Post({thread}: Props) {
{!!post.likeCount && (
- +

{post.likeCount}

@@ -79,14 +84,14 @@ export function Post({thread}: Props) { )} {!!post.repostCount && (
- +

{post.repostCount}

)}
- +

Reply

@@ -118,16 +123,23 @@ function PostContent({record}: {record: AppBskyFeedPost.Record | null}) { let counter = 0 for (const segment of rt.segments()) { - if (segment.isLink() && segment.link) { + if ( + segment.link && + AppBskyRichtextFacet.validateLink(segment.link).success + ) { richText.push( + className="text-blue-400 hover:underline" + disableTracking={!segment.link.uri.startsWith('https://bsky.app')}> {segment.text} , ) - } else if (segment.isMention() && segment.mention) { + } else if ( + segment.mention && + AppBskyRichtextFacet.validateMention(segment.mention).success + ) { richText.push( , ) - } else if (segment.isTag() && segment.tag) { + } else if ( + segment.tag && + AppBskyRichtextFacet.validateTag(segment.tag).success + ) { richText.push( - +

Embed a Bluesky Post

@@ -125,7 +125,7 @@ function LandingPage() { placeholder={DEFAULT_POST} /> - + {loading ? ( diff --git a/bskyembed/src/screens/post.tsx b/bskyembed/src/screens/post.tsx index 365227cd47..337bf01007 100644 --- a/bskyembed/src/screens/post.tsx +++ b/bskyembed/src/screens/post.tsx @@ -52,7 +52,7 @@ function PwiOptOut({thread}: {thread: AppBskyFeedDefs.ThreadViewPost}) { - +

@@ -75,7 +75,7 @@ function ErrorMessage() { - +

Post not found, it may have been deleted. diff --git a/docs/build.md b/docs/build.md index deab91a5ba..dc710686e7 100644 --- a/docs/build.md +++ b/docs/build.md @@ -4,7 +4,10 @@ - Set up your environment [using the expo instructions](https://docs.expo.dev/guides/local-app-development/). - make sure that the JAVA_HOME points to the zulu-17 directory in your `.zshrc` or `.bashrc` file: `export JAVA_HOME=/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home`. DO NOT use another JDK or you will encounter build errors. -- If you're running macOS, make sure you are running the correct versions of Ruby and Cocoapods: +- If you're running macOS, make sure you are running the correct versions of Ruby and Cocoapods:- + - If you are using Apple Silicon and this is the first time you are building for RN 0.74+, you may need to run: + - `arch -arm64 brew install llvm` + - `sudo gem install ffi` - Check if you've installed Cocoapods through `homebrew`. If you have, remove it: - `brew info cocoapods` - If output says `Installed`: @@ -16,10 +19,6 @@ - Add `eval "$(rbenv init - zsh)"` to your `~/.zshrc` - From inside the project directory: - `bundler install` (this will install Cocoapods) -- Setup your environment [for e2e testing using detox](https://wix.github.io/Detox/docs/introduction/getting-started): - - `yarn global add detox-cli` - - `brew tap wix/brew` - - `brew install applesimutils` - After initial setup: - Copy `google-services.json.example` to `google-services.json` or provide your own `google-services.json`. (A real firebase project is NOT required) - `npx expo prebuild` -> you will also need to run this anytime `app.json` or native `package.json` deps change @@ -120,10 +119,7 @@ To open the [Developer Menu](https://docs.expo.dev/debugging/tools/#developer-me ### Running E2E Tests -- Make sure you've set your environment following the above -- Make sure Metro and the dev server are running -- Run `yarn e2e` -- Find the artifacts in the `artifact` folder +See [testing.md](./testing.md). ### Polyfills diff --git a/docs/deploy-ota.md b/docs/deploy-ota.md new file mode 100644 index 0000000000..e92aebd39c --- /dev/null +++ b/docs/deploy-ota.md @@ -0,0 +1,81 @@ +# OTA Deployments + +## Overview + +![OTA Deployment](./img/ota-flow.png) + +## Internal Deployments + +Internal OTA deployments should be performed automatically upon all merges into main. In cases where the fingerprint +diff results in incompatible native changes, a new client build will automatically be ran and deployed to TestFlight +(iOS) or delivered in Slack (Android). + +## Production Deployments + +### Prerequisites + +- Remove any internal client from your device and download the client from the App Store/Google Play. This will help for +testing as well as retrieving the build number. +- You should have signed in to EAS locally through npx eas login. You will need to modify the build number in a +subsequent step. +- Identify the build number of the production app you want to deploy an update for. iOS and Android build numbers are +divergent, so you will need to find both + + ![app-build-number](./img/app-build-number.png) + +- Ensure that the commit the initial client was cut from is properly tagged in git. The tag should be in the format of 1.X.0 + - Note: If the commit is not properly tagged, then the OTA deployment will simply fail since the GitHub Action will + not be able to find a commit to fingerprint and diff against. + +### Preparation + +- Create a new branch from the git tag that the initial release was cut from if no OTA deployment has been made yet for this +client. Name this branch `1.X.0-ota-1` +- If a deployment has been made previously for this release, increment the branch name, i.e. `1.x.0-ota-2` +- If necessary, cherry-pick the commit(s) that you wish to deploy +- Ensure that the package.json’s version field is set to the appropriate value. As long as used the correct git tag +to create your branch from, this should be properly set. + +### Deployment + +- Update the build number through EAS + - Note: This isn’t strictly necessary, but having a step that takes you off of GitHub and into the terminal provides + a little “friction” to avoid fat fingering a release. Since there are legitimate reasons to just “click and deploy” + for internal builds, I felt it useful to make sure it doesn’t accidentally become a prod deployment. + - Set the build number to the appropriate build number found in the prerequisite steps. Again, this should be the + build number for the current production release you want to deploy for. + - `npx eas build:version:set -p ios` + - `npx eas build:version:set -p android` +- Run the deployment + - Navigate to https://github.com/bluesky-social/social-app/actions/workflows/bundle-deploy-eas-update.yml + - Select the “Run Workflow” dropdown + + ![run-workflow](./img/run-workflow.png) + + - Select the branch for the deployment you are releasing. + + ![branch-selection](./img/branch-selection.png) + + - Double check the branch selection. + - Select the production channel + - Enter the version for the client you are releasing to, i.e. 1.80.0 + - Note: If you do enter an incorrect version here, the deployment will either: + - Fail because the action cannot find a commit with your misentered version + - Succeed - but with no users receiving the update. This is because the version you entered will not properly + correlate to a _build number_ as well, so no clients in the wild will be able to receive the update. + + ![other-ota-options](./img/other-ota-options.png) + + - Triple check the branch selection. + - You selected the correct branch + - You selected the "Production" channel + - You entered the correct version in the format of `1.X.0`. + - Press “Run Workflow” + +In about five minutes, the new deployment should be available for download. To test: + +- Remove the internal build of the app from your device +- Download the app from the App Store/Google Play +- Launch the app once and wait approximately 15 seconds +- Relaunch the app +- Check the Settings page and scroll to the bottom. The commit hash should now be the latest commit on your deployed branch. diff --git a/docs/img/app-build-number.png b/docs/img/app-build-number.png new file mode 100644 index 0000000000..449309bd33 Binary files /dev/null and b/docs/img/app-build-number.png differ diff --git a/docs/img/branch-selection.png b/docs/img/branch-selection.png new file mode 100644 index 0000000000..650583687c Binary files /dev/null and b/docs/img/branch-selection.png differ diff --git a/docs/img/ota-flow.png b/docs/img/ota-flow.png new file mode 100644 index 0000000000..f7b72b35df Binary files /dev/null and b/docs/img/ota-flow.png differ diff --git a/docs/img/other-ota-options.png b/docs/img/other-ota-options.png new file mode 100644 index 0000000000..8715c65c1f Binary files /dev/null and b/docs/img/other-ota-options.png differ diff --git a/docs/img/run-workflow.png b/docs/img/run-workflow.png new file mode 100644 index 0000000000..f0aa2fcb1f Binary files /dev/null and b/docs/img/run-workflow.png differ diff --git a/docs/testing.md b/docs/testing.md index e9b9445e04..ae0a424fbd 100644 --- a/docs/testing.md +++ b/docs/testing.md @@ -3,13 +3,19 @@ Make sure you've copied `.env.example` to `.env.test` and provided any required values. -### Using Maestro E2E tests +## Using Maestro + 1. Install Maestro by following [these instructions](https://maestro.mobile.dev/getting-started/installing-maestro). This will help us run the E2E tests. -2. You can write Maestro tests in `__e2e__/maestro` directory by creating a new `.yaml` file or by modifying an existing one. -3. You can also use [Maestro Studio](https://maestro.mobile.dev/getting-started/maestro-studio) which automatically generates commands by recording your actions on the app. Therefore, you can create realistic tests without having to manually write any code. Use the `maestro studio` command to start recording your actions. +2. You can write Maestro tests in `/.maestro/flows/` directory by creating a new `.yml` file or by modifying an existing one. +3. You can also use [Maestro Studio](https://maestro.mobile.dev/getting-started/maestro-studio) which automatically generates commands by recording your actions on the app. Therefore, you can create realistic tests without having to manually write any code. Use the `maestro studio` command to start recording your actions. +### Running Maestro tests -### Using Flashlight for Performance Testing +- In one tab, run `yarn e2e:mock-server` +- In a second tab, run `yarn e2e:metro` +- In a third tab, run `yarn e2e:run` + +## Using Flashlight for Performance Testing 1. Make sure Maestro is installed (optional: only for automated testing) by following the instructions above 2. Install Flashlight by following [these instructions](https://docs.flashlight.dev/) 3. The simplest way to get started is by running `yarn perf:measure` which will run a live preview of the performance test results. You can [see a demo here](https://github.com/bamlab/flashlight/assets/4534323/4038a342-f145-4c3b-8cde-17949bf52612) diff --git a/jest/jestSetup.js b/jest/jestSetup.js index e690e813a9..a6b7c24f69 100644 --- a/jest/jestSetup.js +++ b/jest/jestSetup.js @@ -1,10 +1,10 @@ /* global jest */ -import {configure} from '@testing-library/react-native' import 'react-native-gesture-handler/jestSetup' - // IMPORTANT: this is what's used in the native runtime import 'react-native-url-polyfill/auto' +import {configure} from '@testing-library/react-native' + configure({asyncUtilTimeout: 20000}) jest.mock('@react-native-async-storage/async-storage', () => @@ -90,3 +90,8 @@ jest.mock('sentry-expo', () => ({ })) jest.mock('crypto', () => ({})) + +jest.mock('expo-application', () => ({ + nativeApplicationVersion: '1.0.0', + nativeBuildVersion: '1', +})) diff --git a/jest/test-pds.ts b/jest/test-pds.ts index 1c52d944c6..2fe623ca98 100644 --- a/jest/test-pds.ts +++ b/jest/test-pds.ts @@ -114,8 +114,7 @@ export async function createServer( pdsUrl, mocker: new Mocker(testNet, pdsUrl, pic), async close() { - await testNet.pds.server.destroy() - await testNet.plc.server.destroy() + await testNet.close() }, } } diff --git a/lib/react-compiler-runtime/index.js b/lib/react-compiler-runtime/index.js new file mode 100644 index 0000000000..44f80e0c98 --- /dev/null +++ b/lib/react-compiler-runtime/index.js @@ -0,0 +1,21 @@ +const React = require('react') +const $empty = Symbol.for('react.memo_cache_sentinel') +/** + * DANGER: this hook is NEVER meant to be called directly! + * + * Note that this is a temporary userspace implementation of this function + * from React 19. It is not as efficient and may invalidate more frequently + * than the official API. Please upgrade to React 19 as soon as you can. + **/ +export function c(size) { + // eslint-disable-next-line react-hooks/rules-of-hooks + return React.useState(() => { + const $ = new Array(size) + for (let ii = 0; ii < size; ii++) { + $[ii] = $empty + } + // @ts-ignore + $[$empty] = true + return $ + })[0] +} diff --git a/lib/react-compiler-runtime/package.json b/lib/react-compiler-runtime/package.json new file mode 100644 index 0000000000..cb8f78bd55 --- /dev/null +++ b/lib/react-compiler-runtime/package.json @@ -0,0 +1,9 @@ +{ + "name": "react-compiler-runtime", + "version": "0.0.1", + "license": "MIT", + "main": "index.js", + "peerDependencies": { + "react": "^18.2.0" + } +} \ No newline at end of file diff --git a/modules/BlueskyNSE/BlueskyNSE.entitlements b/modules/BlueskyNSE/BlueskyNSE.entitlements new file mode 100644 index 0000000000..4954bdb33a --- /dev/null +++ b/modules/BlueskyNSE/BlueskyNSE.entitlements @@ -0,0 +1,10 @@ + + + + + com.apple.security.application-groups + + group.app.bsky + + + \ No newline at end of file diff --git a/modules/BlueskyNSE/Info.plist b/modules/BlueskyNSE/Info.plist new file mode 100644 index 0000000000..c2dd7eda69 --- /dev/null +++ b/modules/BlueskyNSE/Info.plist @@ -0,0 +1,29 @@ + + + + + NSExtension + + NSExtensionPointIdentifier + com.apple.usernotifications.service + NSExtensionPrincipalClass + $(PRODUCT_MODULE_NAME).NotificationService + + MainAppScheme + bluesky + CFBundleName + $(PRODUCT_NAME) + CFBundleDisplayName + Bluesky Notifications + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + $(MARKETING_VERSION) + + \ No newline at end of file diff --git a/modules/BlueskyNSE/NotificationService.swift b/modules/BlueskyNSE/NotificationService.swift new file mode 100644 index 0000000000..e6aca99c1c --- /dev/null +++ b/modules/BlueskyNSE/NotificationService.swift @@ -0,0 +1,50 @@ +import UserNotifications + +let APP_GROUP = "group.app.bsky" + +class NotificationService: UNNotificationServiceExtension { + var prefs = UserDefaults(suiteName: APP_GROUP) + + override func didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void) { + guard let bestAttempt = createCopy(request.content), + let reason = request.content.userInfo["reason"] as? String + else { + contentHandler(request.content) + return + } + + if reason == "chat-message" { + mutateWithChatMessage(bestAttempt) + } else { + mutateWithBadge(bestAttempt) + } + + contentHandler(bestAttempt) + } + + override func serviceExtensionTimeWillExpire() { + // If for some reason the alloted time expires, we don't actually want to display a notification + } + + func createCopy(_ content: UNNotificationContent) -> UNMutableNotificationContent? { + return content.mutableCopy() as? UNMutableNotificationContent + } + + func mutateWithBadge(_ content: UNMutableNotificationContent) { + content.badge = 1 + } + + func mutateWithChatMessage(_ content: UNMutableNotificationContent) { + if self.prefs?.bool(forKey: "playSoundChat") == true { + mutateWithDmSound(content) + } + } + + func mutateWithDefaultSound(_ content: UNMutableNotificationContent) { + content.sound = UNNotificationSound.default + } + + func mutateWithDmSound(_ content: UNMutableNotificationContent) { + content.sound = UNNotificationSound(named: UNNotificationSoundName(rawValue: "dm.aiff")) + } +} diff --git a/modules/Share-with-Bluesky/Info.plist b/modules/Share-with-Bluesky/Info.plist index 90fe923455..421abb3c41 100644 --- a/modules/Share-with-Bluesky/Info.plist +++ b/modules/Share-with-Bluesky/Info.plist @@ -38,4 +38,4 @@ CFBundleShortVersionString $(MARKETING_VERSION) - + \ No newline at end of file diff --git a/modules/Share-with-Bluesky/Share-with-Bluesky.entitlements b/modules/Share-with-Bluesky/Share-with-Bluesky.entitlements index d2253d31f8..4954bdb33a 100644 --- a/modules/Share-with-Bluesky/Share-with-Bluesky.entitlements +++ b/modules/Share-with-Bluesky/Share-with-Bluesky.entitlements @@ -7,4 +7,4 @@ group.app.bsky - + \ No newline at end of file diff --git a/modules/expo-background-notification-handler/android/build.gradle b/modules/expo-background-notification-handler/android/build.gradle new file mode 100644 index 0000000000..e18eee9343 --- /dev/null +++ b/modules/expo-background-notification-handler/android/build.gradle @@ -0,0 +1,93 @@ +apply plugin: 'com.android.library' +apply plugin: 'kotlin-android' +apply plugin: 'maven-publish' + +group = 'expo.modules.backgroundnotificationhandler' +version = '0.5.0' + +buildscript { + def expoModulesCorePlugin = new File(project(":expo-modules-core").projectDir.absolutePath, "ExpoModulesCorePlugin.gradle") + if (expoModulesCorePlugin.exists()) { + apply from: expoModulesCorePlugin + applyKotlinExpoModulesCorePlugin() + } + + // Simple helper that allows the root project to override versions declared by this library. + ext.safeExtGet = { prop, fallback -> + rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback + } + + // Ensures backward compatibility + ext.getKotlinVersion = { + if (ext.has("kotlinVersion")) { + ext.kotlinVersion() + } else { + ext.safeExtGet("kotlinVersion", "1.8.10") + } + } + + repositories { + mavenCentral() + } + + dependencies { + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${getKotlinVersion()}") + } +} + +afterEvaluate { + publishing { + publications { + release(MavenPublication) { + from components.release + } + } + repositories { + maven { + url = mavenLocal().url + } + } + } +} + +android { + compileSdkVersion safeExtGet("compileSdkVersion", 33) + + def agpVersion = com.android.Version.ANDROID_GRADLE_PLUGIN_VERSION + if (agpVersion.tokenize('.')[0].toInteger() < 8) { + compileOptions { + sourceCompatibility JavaVersion.VERSION_11 + targetCompatibility JavaVersion.VERSION_11 + } + + kotlinOptions { + jvmTarget = JavaVersion.VERSION_11.majorVersion + } + } + + namespace "expo.modules.backgroundnotificationhandler" + defaultConfig { + minSdkVersion safeExtGet("minSdkVersion", 21) + targetSdkVersion safeExtGet("targetSdkVersion", 34) + versionCode 1 + versionName "0.5.0" + } + lintOptions { + abortOnError false + } + publishing { + singleVariant("release") { + withSourcesJar() + } + } +} + +repositories { + mavenCentral() +} + +dependencies { + implementation project(':expo-modules-core') + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:${getKotlinVersion()}" + implementation 'com.google.firebase:firebase-messaging-ktx:24.0.0' +} diff --git a/modules/expo-background-notification-handler/android/src/main/AndroidManifest.xml b/modules/expo-background-notification-handler/android/src/main/AndroidManifest.xml new file mode 100644 index 0000000000..bdae66c8f5 --- /dev/null +++ b/modules/expo-background-notification-handler/android/src/main/AndroidManifest.xml @@ -0,0 +1,2 @@ + + diff --git a/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/BackgroundNotificationHandler.kt b/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/BackgroundNotificationHandler.kt new file mode 100644 index 0000000000..0a8737b88f --- /dev/null +++ b/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/BackgroundNotificationHandler.kt @@ -0,0 +1,42 @@ +package expo.modules.backgroundnotificationhandler + +import android.content.Context +import com.google.firebase.messaging.RemoteMessage + +class BackgroundNotificationHandler( + private val context: Context, + private val notifInterface: BackgroundNotificationHandlerInterface +) { + fun handleMessage(remoteMessage: RemoteMessage) { + if (ExpoBackgroundNotificationHandlerModule.isForegrounded) { + // We'll let expo-notifications handle the notification if the app is foregrounded + return + } + + if (remoteMessage.data["reason"] == "chat-message") { + mutateWithChatMessage(remoteMessage) + } + + notifInterface.showMessage(remoteMessage) + } + + private fun mutateWithChatMessage(remoteMessage: RemoteMessage) { + if (NotificationPrefs(context).getBoolean("playSoundChat")) { + // If oreo or higher + if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) { + remoteMessage.data["channelId"] = "chat-messages" + } else { + remoteMessage.data["sound"] = "dm.mp3" + } + } else { + if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) { + remoteMessage.data["channelId"] = "chat-messages-muted" + } else { + remoteMessage.data["sound"] = null + } + } + + // TODO - Remove this once we have more backend capability + remoteMessage.data["badge"] = null + } +} diff --git a/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/BackgroundNotificationHandlerInterface.kt b/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/BackgroundNotificationHandlerInterface.kt new file mode 100644 index 0000000000..41fb65eb68 --- /dev/null +++ b/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/BackgroundNotificationHandlerInterface.kt @@ -0,0 +1,7 @@ +package expo.modules.backgroundnotificationhandler + +import com.google.firebase.messaging.RemoteMessage + +interface BackgroundNotificationHandlerInterface { + fun showMessage(remoteMessage: RemoteMessage) +} diff --git a/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/ExpoBackgroundNotificationHandlerModule.kt b/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/ExpoBackgroundNotificationHandlerModule.kt new file mode 100644 index 0000000000..083ff1223c --- /dev/null +++ b/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/ExpoBackgroundNotificationHandlerModule.kt @@ -0,0 +1,70 @@ +package expo.modules.backgroundnotificationhandler + +import expo.modules.kotlin.modules.Module +import expo.modules.kotlin.modules.ModuleDefinition + +class ExpoBackgroundNotificationHandlerModule : Module() { + companion object { + var isForegrounded = false + } + + override fun definition() = ModuleDefinition { + Name("ExpoBackgroundNotificationHandler") + + OnCreate { + NotificationPrefs(appContext.reactContext).initialize() + } + + OnActivityEntersForeground { + isForegrounded = true + } + + OnActivityEntersBackground { + isForegrounded = false + } + + AsyncFunction("getAllPrefsAsync") { + return@AsyncFunction NotificationPrefs(appContext.reactContext).getAllPrefs() + } + + AsyncFunction("getBoolAsync") { forKey: String -> + return@AsyncFunction NotificationPrefs(appContext.reactContext).getBoolean(forKey) + } + + AsyncFunction("getStringAsync") { forKey: String -> + return@AsyncFunction NotificationPrefs(appContext.reactContext).getString(forKey) + } + + AsyncFunction("getStringArrayAsync") { forKey: String -> + return@AsyncFunction NotificationPrefs(appContext.reactContext).getStringArray(forKey) + } + + AsyncFunction("setBoolAsync") { forKey: String, value: Boolean -> + NotificationPrefs(appContext.reactContext).setBoolean(forKey, value) + } + + AsyncFunction("setStringAsync") { forKey: String, value: String -> + NotificationPrefs(appContext.reactContext).setString(forKey, value) + } + + AsyncFunction("setStringArrayAsync") { forKey: String, value: Array -> + NotificationPrefs(appContext.reactContext).setStringArray(forKey, value) + } + + AsyncFunction("addToStringArrayAsync") { forKey: String, string: String -> + NotificationPrefs(appContext.reactContext).addToStringArray(forKey, string) + } + + AsyncFunction("removeFromStringArrayAsync") { forKey: String, string: String -> + NotificationPrefs(appContext.reactContext).removeFromStringArray(forKey, string) + } + + AsyncFunction("addManyToStringArrayAsync") { forKey: String, strings: Array -> + NotificationPrefs(appContext.reactContext).addManyToStringArray(forKey, strings) + } + + AsyncFunction("removeManyFromStringArrayAsync") { forKey: String, strings: Array -> + NotificationPrefs(appContext.reactContext).removeManyFromStringArray(forKey, strings) + } + } +} diff --git a/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/NotificationPrefs.kt b/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/NotificationPrefs.kt new file mode 100644 index 0000000000..17ef9205ef --- /dev/null +++ b/modules/expo-background-notification-handler/android/src/main/java/expo/modules/backgroundnotificationhandler/NotificationPrefs.kt @@ -0,0 +1,134 @@ +package expo.modules.backgroundnotificationhandler + +import android.content.Context + +val DEFAULTS = mapOf( + "playSoundChat" to true, + "playSoundFollow" to false, + "playSoundLike" to false, + "playSoundMention" to false, + "playSoundQuote" to false, + "playSoundReply" to false, + "playSoundRepost" to false, + "mutedThreads" to mapOf>() +) + +class NotificationPrefs (private val context: Context?) { + private val prefs = context?.getSharedPreferences("xyz.blueskyweb.app", Context.MODE_PRIVATE) + ?: throw Error("Context is null") + + fun initialize() { + prefs + .edit() + .apply { + DEFAULTS.forEach { (key, value) -> + if (prefs.contains(key)) { + return@forEach + } + + when (value) { + is Boolean -> { + putBoolean(key, value) + } + is String -> { + putString(key, value) + } + is Array<*> -> { + putStringSet(key, value.map { it.toString() }.toSet()) + } + is Map<*, *> -> { + putStringSet(key, value.map { it.toString() }.toSet()) + } + } + } + } + .apply() + } + + fun getAllPrefs(): MutableMap { + return prefs.all + } + + fun getBoolean(key: String): Boolean { + return prefs.getBoolean(key, false) + } + + fun getString(key: String): String? { + return prefs.getString(key, null) + } + + fun getStringArray(key: String): Array? { + return prefs.getStringSet(key, null)?.toTypedArray() + } + + fun setBoolean(key: String, value: Boolean) { + prefs + .edit() + .apply { + putBoolean(key, value) + } + .apply() + } + + fun setString(key: String, value: String) { + prefs + .edit() + .apply { + putString(key, value) + } + .apply() + } + + fun setStringArray(key: String, value: Array) { + prefs + .edit() + .apply { + putStringSet(key, value.toSet()) + } + .apply() + } + + fun addToStringArray(key: String, string: String) { + prefs + .edit() + .apply { + val set = prefs.getStringSet(key, null)?.toMutableSet() ?: mutableSetOf() + set.add(string) + putStringSet(key, set) + } + .apply() + } + + fun removeFromStringArray(key: String, string: String) { + prefs + .edit() + .apply { + val set = prefs.getStringSet(key, null)?.toMutableSet() ?: mutableSetOf() + set.remove(string) + putStringSet(key, set) + } + .apply() + } + + fun addManyToStringArray(key: String, strings: Array) { + prefs + .edit() + .apply { + val set = prefs.getStringSet(key, null)?.toMutableSet() ?: mutableSetOf() + set.addAll(strings.toSet()) + putStringSet(key, set) + } + .apply() + } + + fun removeManyFromStringArray(key: String, strings: Array) { + prefs + .edit() + .apply { + val set = prefs.getStringSet(key, null)?.toMutableSet() ?: mutableSetOf() + set.removeAll(strings.toSet()) + putStringSet(key, set) + } + .apply() + } +} \ No newline at end of file diff --git a/modules/expo-background-notification-handler/expo-module.config.json b/modules/expo-background-notification-handler/expo-module.config.json new file mode 100644 index 0000000000..9e5c9d5509 --- /dev/null +++ b/modules/expo-background-notification-handler/expo-module.config.json @@ -0,0 +1,9 @@ +{ + "platforms": ["ios", "android"], + "ios": { + "modules": ["ExpoBackgroundNotificationHandlerModule"] + }, + "android": { + "modules": ["expo.modules.backgroundnotificationhandler.ExpoBackgroundNotificationHandlerModule"] + } +} diff --git a/modules/expo-background-notification-handler/index.ts b/modules/expo-background-notification-handler/index.ts new file mode 100644 index 0000000000..680c6c13f5 --- /dev/null +++ b/modules/expo-background-notification-handler/index.ts @@ -0,0 +1,2 @@ +import {BackgroundNotificationHandler} from './src/ExpoBackgroundNotificationHandlerModule' +export default BackgroundNotificationHandler diff --git a/modules/expo-background-notification-handler/ios/ExpoBackgroundNotificationHandler.podspec b/modules/expo-background-notification-handler/ios/ExpoBackgroundNotificationHandler.podspec new file mode 100644 index 0000000000..363c7b5e62 --- /dev/null +++ b/modules/expo-background-notification-handler/ios/ExpoBackgroundNotificationHandler.podspec @@ -0,0 +1,21 @@ +Pod::Spec.new do |s| + s.name = 'ExpoBackgroundNotificationHandler' + s.version = '1.0.0' + s.summary = 'Interface for BlueskyNSE preferences' + s.description = 'Interface for BlueskyNSE preferenes' + s.author = '' + s.homepage = 'https://github.com/bluesky-social/social-app' + s.platforms = { :ios => '13.4', :tvos => '13.4' } + s.source = { git: '' } + s.static_framework = true + + s.dependency 'ExpoModulesCore' + + # Swift/Objective-C compatibility + s.pod_target_xcconfig = { + 'DEFINES_MODULE' => 'YES', + 'SWIFT_COMPILATION_MODE' => 'wholemodule' + } + + s.source_files = "**/*.{h,m,mm,swift,hpp,cpp}" +end diff --git a/modules/expo-background-notification-handler/ios/ExpoBackgroundNotificationHandlerModule.swift b/modules/expo-background-notification-handler/ios/ExpoBackgroundNotificationHandlerModule.swift new file mode 100644 index 0000000000..08972a04c5 --- /dev/null +++ b/modules/expo-background-notification-handler/ios/ExpoBackgroundNotificationHandlerModule.swift @@ -0,0 +1,116 @@ +import ExpoModulesCore + +let APP_GROUP = "group.app.bsky" + +let DEFAULTS: [String:Any] = [ + "playSoundChat" : true, + "playSoundFollow": false, + "playSoundLike": false, + "playSoundMention": false, + "playSoundQuote": false, + "playSoundReply": false, + "playSoundRepost": false, + "mutedThreads": [:] as! [String:[String]] +] + +/* + * The purpose of this module is to store values that are needed by the notification service + * extension. Since we would rather get and store values such as age or user mute state + * while the app is foregrounded, we should use this module liberally. We should aim to keep + * background fetches to a minimum (two or three times per hour) while the app is backgrounded + * or killed + */ +public class ExpoBackgroundNotificationHandlerModule: Module { + let userDefaults = UserDefaults(suiteName: APP_GROUP) + + public func definition() -> ModuleDefinition { + Name("ExpoBackgroundNotificationHandler") + + OnCreate { + DEFAULTS.forEach { p in + if userDefaults?.value(forKey: p.key) == nil { + userDefaults?.setValue(p.value, forKey: p.key) + } + } + } + + AsyncFunction("getAllPrefsAsync") { () -> [String:Any]? in + var keys: [String] = [] + DEFAULTS.forEach { p in + keys.append(p.key) + } + return userDefaults?.dictionaryWithValues(forKeys: keys) + } + + AsyncFunction("getBoolAsync") { (forKey: String) -> Bool in + if let pref = userDefaults?.bool(forKey: forKey) { + return pref + } + return false + } + + AsyncFunction("getStringAsync") { (forKey: String) -> String? in + if let pref = userDefaults?.string(forKey: forKey) { + return pref + } + return nil + } + + AsyncFunction("getStringArrayAsync") { (forKey: String) -> [String]? in + if let pref = userDefaults?.stringArray(forKey: forKey) { + return pref + } + return nil + } + + AsyncFunction("setBoolAsync") { (forKey: String, value: Bool) -> Void in + userDefaults?.setValue(value, forKey: forKey) + } + + AsyncFunction("setStringAsync") { (forKey: String, value: String) -> Void in + userDefaults?.setValue(value, forKey: forKey) + } + + AsyncFunction("setStringArrayAsync") { (forKey: String, value: [String]) -> Void in + userDefaults?.setValue(value, forKey: forKey) + } + + AsyncFunction("addToStringArrayAsync") { (forKey: String, string: String) in + if var curr = userDefaults?.stringArray(forKey: forKey), + !curr.contains(string) + { + curr.append(string) + userDefaults?.setValue(curr, forKey: forKey) + } + } + + AsyncFunction("removeFromStringArrayAsync") { (forKey: String, string: String) in + if var curr = userDefaults?.stringArray(forKey: forKey) { + curr.removeAll { s in + return s == string + } + userDefaults?.setValue(curr, forKey: forKey) + } + } + + AsyncFunction("addManyToStringArrayAsync") { (forKey: String, strings: [String]) in + if var curr = userDefaults?.stringArray(forKey: forKey) { + strings.forEach { s in + if !curr.contains(s) { + curr.append(s) + } + } + userDefaults?.setValue(curr, forKey: forKey) + } + } + + AsyncFunction("removeManyFromStringArrayAsync") { (forKey: String, strings: [String]) in + if var curr = userDefaults?.stringArray(forKey: forKey) { + strings.forEach { s in + curr.removeAll(where: { $0 == s }) + } + userDefaults?.setValue(curr, forKey: forKey) + } + } + } +} diff --git a/modules/expo-background-notification-handler/src/BackgroundNotificationHandlerProvider.tsx b/modules/expo-background-notification-handler/src/BackgroundNotificationHandlerProvider.tsx new file mode 100644 index 0000000000..6ecdd1d476 --- /dev/null +++ b/modules/expo-background-notification-handler/src/BackgroundNotificationHandlerProvider.tsx @@ -0,0 +1,70 @@ +import React from 'react' + +import {BackgroundNotificationHandlerPreferences} from './ExpoBackgroundNotificationHandler.types' +import {BackgroundNotificationHandler} from './ExpoBackgroundNotificationHandlerModule' + +interface BackgroundNotificationPreferencesContext { + preferences: BackgroundNotificationHandlerPreferences + setPref: ( + key: Key, + value: BackgroundNotificationHandlerPreferences[Key], + ) => void +} + +const Context = React.createContext( + {} as BackgroundNotificationPreferencesContext, +) +export const useBackgroundNotificationPreferences = () => + React.useContext(Context) + +export function BackgroundNotificationPreferencesProvider({ + children, +}: { + children: React.ReactNode +}) { + const [preferences, setPreferences] = + React.useState({ + playSoundChat: true, + }) + + React.useEffect(() => { + ;(async () => { + const prefs = await BackgroundNotificationHandler.getAllPrefsAsync() + setPreferences(prefs) + })() + }, []) + + const value = React.useMemo( + () => ({ + preferences, + setPref: async < + Key extends keyof BackgroundNotificationHandlerPreferences, + >( + k: Key, + v: BackgroundNotificationHandlerPreferences[Key], + ) => { + switch (typeof v) { + case 'boolean': { + await BackgroundNotificationHandler.setBoolAsync(k, v) + break + } + case 'string': { + await BackgroundNotificationHandler.setStringAsync(k, v) + break + } + default: { + throw new Error(`Invalid type for value: ${typeof v}`) + } + } + + setPreferences(prev => ({ + ...prev, + [k]: v, + })) + }, + }), + [preferences], + ) + + return {children} +} diff --git a/modules/expo-background-notification-handler/src/ExpoBackgroundNotificationHandler.types.ts b/modules/expo-background-notification-handler/src/ExpoBackgroundNotificationHandler.types.ts new file mode 100644 index 0000000000..5fbd302da9 --- /dev/null +++ b/modules/expo-background-notification-handler/src/ExpoBackgroundNotificationHandler.types.ts @@ -0,0 +1,40 @@ +export type ExpoBackgroundNotificationHandlerModule = { + getAllPrefsAsync: () => Promise + getBoolAsync: (forKey: string) => Promise + getStringAsync: (forKey: string) => Promise + getStringArrayAsync: (forKey: string) => Promise + setBoolAsync: ( + forKey: keyof BackgroundNotificationHandlerPreferences, + value: boolean, + ) => Promise + setStringAsync: ( + forKey: keyof BackgroundNotificationHandlerPreferences, + value: string, + ) => Promise + setStringArrayAsync: ( + forKey: keyof BackgroundNotificationHandlerPreferences, + value: string[], + ) => Promise + addToStringArrayAsync: ( + forKey: keyof BackgroundNotificationHandlerPreferences, + value: string, + ) => Promise + removeFromStringArrayAsync: ( + forKey: keyof BackgroundNotificationHandlerPreferences, + value: string, + ) => Promise + addManyToStringArrayAsync: ( + forKey: keyof BackgroundNotificationHandlerPreferences, + value: string[], + ) => Promise + removeManyFromStringArrayAsync: ( + forKey: keyof BackgroundNotificationHandlerPreferences, + value: string[], + ) => Promise +} + +// TODO there are more preferences in the native code, however they have not been added here yet. +// Don't add them until the native logic also handles the notifications for those preference types. +export type BackgroundNotificationHandlerPreferences = { + playSoundChat: boolean +} diff --git a/modules/expo-background-notification-handler/src/ExpoBackgroundNotificationHandlerModule.ts b/modules/expo-background-notification-handler/src/ExpoBackgroundNotificationHandlerModule.ts new file mode 100644 index 0000000000..d6517893ad --- /dev/null +++ b/modules/expo-background-notification-handler/src/ExpoBackgroundNotificationHandlerModule.ts @@ -0,0 +1,8 @@ +import {requireNativeModule} from 'expo-modules-core' + +import {ExpoBackgroundNotificationHandlerModule} from './ExpoBackgroundNotificationHandler.types' + +export const BackgroundNotificationHandler = + requireNativeModule( + 'ExpoBackgroundNotificationHandler', + ) diff --git a/modules/expo-background-notification-handler/src/ExpoBackgroundNotificationHandlerModule.web.ts b/modules/expo-background-notification-handler/src/ExpoBackgroundNotificationHandlerModule.web.ts new file mode 100644 index 0000000000..29e27fd0fa --- /dev/null +++ b/modules/expo-background-notification-handler/src/ExpoBackgroundNotificationHandlerModule.web.ts @@ -0,0 +1,27 @@ +import { + BackgroundNotificationHandlerPreferences, + ExpoBackgroundNotificationHandlerModule, +} from './ExpoBackgroundNotificationHandler.types' + +// Stub for web +export const BackgroundNotificationHandler = { + getAllPrefsAsync: async () => { + return {} as BackgroundNotificationHandlerPreferences + }, + getBoolAsync: async (_: string) => { + return false + }, + getStringAsync: async (_: string) => { + return '' + }, + getStringArrayAsync: async (_: string) => { + return [] + }, + setBoolAsync: async (_: string, __: boolean) => {}, + setStringAsync: async (_: string, __: string) => {}, + setStringArrayAsync: async (_: string, __: string[]) => {}, + addToStringArrayAsync: async (_: string, __: string) => {}, + removeFromStringArrayAsync: async (_: string, __: string) => {}, + addManyToStringArrayAsync: async (_: string, __: string[]) => {}, + removeManyFromStringArrayAsync: async (_: string, __: string[]) => {}, +} as ExpoBackgroundNotificationHandlerModule diff --git a/modules/expo-bluesky-gif-view/ios/ExpoBlueskyGifView.podspec b/modules/expo-bluesky-gif-view/ios/ExpoBlueskyGifView.podspec index ddd0877b24..352812640b 100644 --- a/modules/expo-bluesky-gif-view/ios/ExpoBlueskyGifView.podspec +++ b/modules/expo-bluesky-gif-view/ios/ExpoBlueskyGifView.podspec @@ -10,8 +10,8 @@ Pod::Spec.new do |s| s.static_framework = true s.dependency 'ExpoModulesCore' - s.dependency 'SDWebImage', '~> 5.17.0' - s.dependency 'SDWebImageWebPCoder', '~> 0.13.0' + s.dependency 'SDWebImage', '~> 5.19.1' + s.dependency 'SDWebImageWebPCoder', '~> 0.14.6' # Swift/Objective-C compatibility s.pod_target_xcconfig = { diff --git a/modules/expo-bluesky-translate/expo-module.config.json b/modules/expo-bluesky-translate/expo-module.config.json new file mode 100644 index 0000000000..28c5dd878d --- /dev/null +++ b/modules/expo-bluesky-translate/expo-module.config.json @@ -0,0 +1,6 @@ +{ + "platforms": ["ios"], + "ios": { + "modules": ["ExpoBlueskyTranslateModule"] + } +} diff --git a/modules/expo-bluesky-translate/index.ts b/modules/expo-bluesky-translate/index.ts new file mode 100644 index 0000000000..f3e1d3b113 --- /dev/null +++ b/modules/expo-bluesky-translate/index.ts @@ -0,0 +1,6 @@ +export { + isAvailable, + isLanguageSupported, + NativeTranslationModule, + NativeTranslationView, +} from './src/ExpoBlueskyTranslateView' diff --git a/modules/expo-bluesky-translate/ios/Common/UIHostingControllerCompat.swift b/modules/expo-bluesky-translate/ios/Common/UIHostingControllerCompat.swift new file mode 100644 index 0000000000..c8ca3e0273 --- /dev/null +++ b/modules/expo-bluesky-translate/ios/Common/UIHostingControllerCompat.swift @@ -0,0 +1,20 @@ +import ExpoModulesCore +import SwiftUI + +// Thanks to Andrew Levy for this code snippet +// https://github.com/andrew-levy/swiftui-react-native/blob/d3fbb2abf07601ff0d4b83055e7717bb980910d6/ios/Common/ExpoView%2BUIHostingController.swift + +extension ExpoView { + func setupHostingController(_ hostingController: UIHostingController) { + hostingController.view.translatesAutoresizingMaskIntoConstraints = false + hostingController.view.backgroundColor = .clear + + addSubview(hostingController.view) + NSLayoutConstraint.activate([ + hostingController.view.topAnchor.constraint(equalTo: self.topAnchor), + hostingController.view.bottomAnchor.constraint(equalTo: self.bottomAnchor), + hostingController.view.leftAnchor.constraint(equalTo: self.leftAnchor), + hostingController.view.rightAnchor.constraint(equalTo: self.rightAnchor), + ]) + } +} diff --git a/modules/expo-bluesky-translate/ios/ExpoBlueskyTranslate.podspec b/modules/expo-bluesky-translate/ios/ExpoBlueskyTranslate.podspec new file mode 100644 index 0000000000..45f86a6056 --- /dev/null +++ b/modules/expo-bluesky-translate/ios/ExpoBlueskyTranslate.podspec @@ -0,0 +1,21 @@ +Pod::Spec.new do |s| + s.name = 'ExpoBlueskyTranslate' + s.version = '1.0.0' + s.summary = 'Uses SwiftUI translation to translate text.' + s.description = 'Uses SwiftUI translation to translate text.' + s.author = '' + s.homepage = 'https://docs.expo.dev/modules/' + s.platforms = { :ios => '13.4' } + s.source = { git: '' } + s.static_framework = true + + s.dependency 'ExpoModulesCore' + + # Swift/Objective-C compatibility + s.pod_target_xcconfig = { + 'DEFINES_MODULE' => 'YES', + 'SWIFT_COMPILATION_MODE' => 'wholemodule' + } + + s.source_files = "**/*.{h,m,mm,swift,hpp,cpp}" +end diff --git a/modules/expo-bluesky-translate/ios/ExpoBlueskyTranslateModule.swift b/modules/expo-bluesky-translate/ios/ExpoBlueskyTranslateModule.swift new file mode 100644 index 0000000000..afa8137229 --- /dev/null +++ b/modules/expo-bluesky-translate/ios/ExpoBlueskyTranslateModule.swift @@ -0,0 +1,18 @@ +import ExpoModulesCore +import Foundation +import SwiftUI + +public class ExpoBlueskyTranslateModule: Module { + public func definition() -> ModuleDefinition { + Name("ExpoBlueskyTranslate") + + AsyncFunction("presentAsync") { (text: String) in + DispatchQueue.main.async { [weak state = TranslateViewState.shared] in + state?.isPresented = true + state?.text = text + } + } + + View(ExpoBlueskyTranslateView.self) {} + } +} diff --git a/modules/expo-bluesky-translate/ios/ExpoBlueskyTranslateView.swift b/modules/expo-bluesky-translate/ios/ExpoBlueskyTranslateView.swift new file mode 100644 index 0000000000..ca6e3be69c --- /dev/null +++ b/modules/expo-bluesky-translate/ios/ExpoBlueskyTranslateView.swift @@ -0,0 +1,22 @@ +import ExpoModulesCore +import Foundation +import SwiftUI + +class TranslateViewState: ObservableObject { + static var shared = TranslateViewState() + + @Published var isPresented = false + @Published var text = "" +} + +class ExpoBlueskyTranslateView: ExpoView { + required init(appContext: AppContext? = nil) { + if #available(iOS 14.0, *) { + let hostingController = UIHostingController(rootView: TranslateView()) + super.init(appContext: appContext) + setupHostingController(hostingController) + } else { + super.init(appContext: appContext) + } + } +} diff --git a/modules/expo-bluesky-translate/ios/TranslateView.swift b/modules/expo-bluesky-translate/ios/TranslateView.swift new file mode 100644 index 0000000000..e2886dc844 --- /dev/null +++ b/modules/expo-bluesky-translate/ios/TranslateView.swift @@ -0,0 +1,31 @@ +import SwiftUI +// conditionally import the Translation module +#if canImport(Translation) +import Translation +#endif + +struct TranslateView: View { + @ObservedObject var state = TranslateViewState.shared + + var body: some View { + if #available(iOS 17.4, *) { + VStack { + UIViewRepresentableWrapper(view: UIView(frame: .zero)) + } + .translationPresentation( + isPresented: $state.isPresented, + text: state.text + ) + } + } +} + +struct UIViewRepresentableWrapper: UIViewRepresentable { + let view: UIView + + func makeUIView(context: Context) -> UIView { + return view + } + + func updateUIView(_ uiView: UIView, context: Context) {} +} diff --git a/modules/expo-bluesky-translate/src/ExpoBlueskyTranslate.types.ts b/modules/expo-bluesky-translate/src/ExpoBlueskyTranslate.types.ts new file mode 100644 index 0000000000..a01d4d479d --- /dev/null +++ b/modules/expo-bluesky-translate/src/ExpoBlueskyTranslate.types.ts @@ -0,0 +1,3 @@ +export type ExpoBlueskyTranslateModule = { + presentAsync: (text: string) => Promise +} diff --git a/modules/expo-bluesky-translate/src/ExpoBlueskyTranslateView.ios.tsx b/modules/expo-bluesky-translate/src/ExpoBlueskyTranslateView.ios.tsx new file mode 100644 index 0000000000..290fabd30d --- /dev/null +++ b/modules/expo-bluesky-translate/src/ExpoBlueskyTranslateView.ios.tsx @@ -0,0 +1,51 @@ +import React from 'react' +import {Platform} from 'react-native' +import {requireNativeModule, requireNativeViewManager} from 'expo-modules-core' + +import {ExpoBlueskyTranslateModule} from './ExpoBlueskyTranslate.types' + +export const NativeTranslationModule = + requireNativeModule('ExpoBlueskyTranslate') + +const NativeView: React.ComponentType = requireNativeViewManager( + 'ExpoBlueskyTranslate', +) + +export function NativeTranslationView() { + return +} + +// can be something like "17.5.1", so just take the first two parts +const version = String(Platform.Version).split('.').slice(0, 2).join('.') + +export const isAvailable = Number(version) >= 17.4 + +// https://en.wikipedia.org/wiki/Translate_(Apple)#Languages +const SUPPORTED_LANGUAGES = [ + 'ar', + 'zh', + 'zh', + 'nl', + 'en', + 'en', + 'fr', + 'de', + 'id', + 'it', + 'ja', + 'ko', + 'pl', + 'pt', + 'ru', + 'es', + 'th', + 'tr', + 'uk', + 'vi', +] + +export function isLanguageSupported(lang?: string) { + // If the language is not provided, we assume it is supported + if (!lang) return true + return SUPPORTED_LANGUAGES.includes(lang) +} diff --git a/modules/expo-bluesky-translate/src/ExpoBlueskyTranslateView.tsx b/modules/expo-bluesky-translate/src/ExpoBlueskyTranslateView.tsx new file mode 100644 index 0000000000..16ff9d6004 --- /dev/null +++ b/modules/expo-bluesky-translate/src/ExpoBlueskyTranslateView.tsx @@ -0,0 +1,13 @@ +export const NativeTranslationModule = { + presentAsync: async (_: string) => {}, +} + +export function NativeTranslationView() { + return null +} + +export const isAvailable = false + +export function isLanguageSupported(_lang?: string) { + return false +} diff --git a/modules/expo-scroll-forwarder/src/ExpoScrollForwarderView.ios.tsx b/modules/expo-scroll-forwarder/src/ExpoScrollForwarderView.ios.tsx index 6364d332c5..21a2b9fb26 100644 --- a/modules/expo-scroll-forwarder/src/ExpoScrollForwarderView.ios.tsx +++ b/modules/expo-scroll-forwarder/src/ExpoScrollForwarderView.ios.tsx @@ -1,5 +1,5 @@ -import {requireNativeViewManager} from 'expo-modules-core' import * as React from 'react' +import {requireNativeViewManager} from 'expo-modules-core' import {ExpoScrollForwarderViewProps} from './ExpoScrollForwarder.types' diff --git a/modules/expo-scroll-forwarder/src/ExpoScrollForwarderView.tsx b/modules/expo-scroll-forwarder/src/ExpoScrollForwarderView.tsx index 93e69333fd..0f5d01c130 100644 --- a/modules/expo-scroll-forwarder/src/ExpoScrollForwarderView.tsx +++ b/modules/expo-scroll-forwarder/src/ExpoScrollForwarderView.tsx @@ -1,5 +1,7 @@ import React from 'react' + import {ExpoScrollForwarderViewProps} from './ExpoScrollForwarder.types' + export function ExpoScrollForwarderView({ children, }: React.PropsWithChildren) { diff --git a/package.json b/package.json index 26d6b061b1..c107ea56e4 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "bsky.app", - "version": "1.81.0", + "version": "1.85.0", "private": true, "engines": { "node": ">=18" @@ -31,11 +31,10 @@ "lint": "eslint --cache --ext .js,.jsx,.ts,.tsx src", "typecheck": "tsc --project ./tsconfig.check.json", "e2e:mock-server": "./jest/dev-infra/with-test-redis-and-db.sh ts-node --project tsconfig.e2e.json __e2e__/mock-server.ts", - "e2e:metro": "NODE_ENV=test RN_SRC_EXT=e2e.ts,e2e.tsx expo run:ios", - "e2e:build": "NODE_ENV=test detox build -c ios.sim.debug", - "e2e:run": "NODE_ENV=test detox test --configuration ios.sim.debug --take-screenshots all", + "e2e:metro": "EXPO_PUBLIC_ENV=e2e NODE_ENV=test RN_SRC_EXT=e2e.ts,e2e.tsx expo run:ios", + "e2e:run": "maestro test __e2e__", "perf:test": "NODE_ENV=test maestro test", - "perf:test:run": "NODE_ENV=test maestro test __e2e__/maestro/scroll.yaml", + "perf:test:run": "NODE_ENV=test maestro test __e2e__/perf-test.yml", "perf:test:measure": "NODE_ENV=test flashlight test --bundleId xyz.blueskyweb.app --testCommand \"yarn perf:test\" --duration 150000 --resultsFilePath .perf/results.json", "perf:test:results": "NODE_ENV=test flashlight report .perf/results.json", "perf:measure": "NODE_ENV=test flashlight measure", @@ -50,8 +49,7 @@ "open-analyzer": "EXPO_PUBLIC_OPEN_ANALYZER=1 yarn build-web" }, "dependencies": { - "@atproto-labs/api": "^0.12.8-clipclops.0", - "@atproto/api": "^0.12.5", + "@atproto/api": "^0.12.14", "@bam.tech/react-native-image-resizer": "^3.0.4", "@braintree/sanitize-url": "^6.0.2", "@discord/bottom-sheet": "bluesky-social/react-native-bottom-sheet", @@ -65,19 +63,19 @@ "@fortawesome/fontawesome-svg-core": "^6.1.1", "@fortawesome/free-regular-svg-icons": "^6.1.1", "@fortawesome/free-solid-svg-icons": "^6.1.1", - "@fortawesome/react-native-fontawesome": "^0.3.0", + "@fortawesome/react-native-fontawesome": "^0.3.2", "@lingui/react": "^4.5.0", - "@mattermost/react-native-paste-input": "^0.6.4", + "@mattermost/react-native-paste-input": "^0.7.1", "@miblanchard/react-native-slider": "^2.3.1", "@radix-ui/react-dropdown-menu": "^2.0.6", "@react-native-async-storage/async-storage": "1.23.1", "@react-native-masked-view/masked-view": "0.3.0", - "@react-native-menu/menu": "^0.8.0", + "@react-native-menu/menu": "^1.1.0", "@react-native-picker/picker": "2.6.1", - "@react-navigation/bottom-tabs": "^6.5.7", - "@react-navigation/drawer": "^6.6.2", - "@react-navigation/native": "^6.1.6", - "@react-navigation/native-stack": "^6.9.12", + "@react-navigation/bottom-tabs": "^6.5.20", + "@react-navigation/drawer": "^6.6.15", + "@react-navigation/native": "^6.1.17", + "@react-navigation/native-stack": "^6.9.26", "@segment/analytics-next": "^1.51.3", "@segment/analytics-react": "^1.0.0-rc1", "@segment/analytics-react-native": "^2.10.1", @@ -109,35 +107,36 @@ "base64-js": "^1.5.1", "bcp-47-match": "^2.0.3", "date-fns": "^2.30.0", + "deprecated-react-native-prop-types": "^5.0.0", "email-validator": "^2.0.4", "emoji-mart": "^5.5.2", "eventemitter3": "^5.0.1", - "expo": "^50.0.17", - "expo-application": "^5.8.3", - "expo-build-properties": "^0.11.1", - "expo-camera": "~14.0.4", - "expo-clipboard": "^5.0.1", - "expo-constants": "~15.4.5", - "expo-dev-client": "~3.3.8", - "expo-device": "~5.9.3", - "expo-file-system": "^16.0.9", - "expo-haptics": "^12.8.1", - "expo-image": "~1.10.6", - "expo-image-manipulator": "^11.8.0", - "expo-image-picker": "~14.7.1", - "expo-linear-gradient": "^12.7.2", - "expo-linking": "^6.2.2", - "expo-localization": "~14.8.3", - "expo-media-library": "~15.9.1", - "expo-navigation-bar": "~2.8.1", - "expo-notifications": "~0.27.6", - "expo-sharing": "^11.10.0", - "expo-splash-screen": "~0.26.4", - "expo-status-bar": "~1.11.1", - "expo-system-ui": "~2.9.3", - "expo-task-manager": "~11.7.2", - "expo-updates": "~0.24.10", - "expo-web-browser": "~12.8.2", + "expo": "^51.0.8", + "expo-application": "^5.9.1", + "expo-build-properties": "^0.12.1", + "expo-camera": "~15.0.9", + "expo-clipboard": "^6.0.3", + "expo-constants": "~16.0.1", + "expo-dev-client": "^4.0.14", + "expo-device": "~6.0.2", + "expo-file-system": "^17.0.1", + "expo-haptics": "^13.0.1", + "expo-image": "~1.12.9", + "expo-image-manipulator": "^12.0.5", + "expo-image-picker": "~15.0.5", + "expo-linear-gradient": "^13.0.2", + "expo-linking": "^6.3.1", + "expo-localization": "~15.0.3", + "expo-media-library": "~16.0.3", + "expo-navigation-bar": "~3.0.4", + "expo-notifications": "~0.28.3", + "expo-sharing": "^12.0.1", + "expo-splash-screen": "~0.27.4", + "expo-status-bar": "~1.12.1", + "expo-system-ui": "~3.0.4", + "expo-task-manager": "~11.8.1", + "expo-updates": "~0.25.14", + "expo-web-browser": "~13.0.3", "fast-text-encoding": "^1.0.6", "history": "^5.3.0", "js-sha256": "^0.9.0", @@ -163,31 +162,33 @@ "psl": "^1.9.0", "react": "18.2.0", "react-avatar-editor": "^13.0.0", + "react-compiler-runtime": "file:./lib/react-compiler-runtime", "react-dom": "^18.2.0", "react-keyed-flatten-children": "^3.0.0", - "react-native": "0.73.2", - "react-native-date-picker": "^4.4.0", + "react-native": "0.74.1", + "react-native-date-picker": "^4.4.2", "react-native-drawer-layout": "^4.0.0-alpha.3", "react-native-fs": "^2.20.0", - "react-native-gesture-handler": "~2.14.0", + "react-native-gesture-handler": "~2.16.2", "react-native-get-random-values": "~1.11.0", - "react-native-image-crop-picker": "^0.38.1", + "react-native-image-crop-picker": "0.40.3", "react-native-ios-context-menu": "^1.15.3", - "react-native-keyboard-controller": "^1.11.7", + "react-native-keyboard-controller": "^1.12.1", "react-native-pager-view": "6.2.3", - "react-native-picker-select": "^8.1.0", + "react-native-picker-select": "^9.1.3", "react-native-progress": "bluesky-social/react-native-progress", - "react-native-reanimated": "^3.6.0", + "react-native-reanimated": "^3.11.0", "react-native-root-siblings": "^4.1.1", - "react-native-safe-area-context": "4.8.2", - "react-native-screens": "~3.29.0", - "react-native-svg": "14.1.0", - "react-native-uitextview": "^1.1.6", + "react-native-safe-area-context": "4.10.1", + "react-native-screens": "~3.31.1", + "react-native-svg": "^15.3.0", + "react-native-uitextview": "^1.1.7", "react-native-url-polyfill": "^1.3.0", - "react-native-uuid": "^2.0.1", - "react-native-web": "~0.19.6", + "react-native-uuid": "^2.0.2", + "react-native-view-shot": "^3.8.0", + "react-native-web": "~0.19.11", "react-native-web-webview": "^1.0.2", - "react-native-webview": "13.6.4", + "react-native-webview": "13.10.2", "react-responsive": "^9.0.2", "react-textarea-autosize": "^8.5.3", "rn-fetch-blob": "^0.12.0", @@ -210,7 +211,7 @@ "@lingui/macro": "^4.5.0", "@pmmmwh/react-refresh-webpack-plugin": "^0.5.11", "@react-native-community/eslint-config": "^3.0.0", - "@react-native/typescript-config": "^0.74.0", + "@react-native/typescript-config": "^0.74.1", "@testing-library/jest-native": "^5.4.1", "@testing-library/react-native": "^11.5.2", "@tsconfig/react-native": "^2.0.3", @@ -236,15 +237,15 @@ "babel-loader": "^9.1.2", "babel-plugin-macros": "^3.1.0", "babel-plugin-module-resolver": "^5.0.0", + "babel-plugin-react-compiler": "^0.0.0-experimental-592953e-20240517", "babel-plugin-react-native-web": "^0.18.12", "babel-preset-expo": "^10.0.0", - "detox": "^20.14.8", "eslint": "^8.19.0", "eslint-plugin-bsky-internal": "link:./eslint", - "eslint-plugin-detox": "^1.0.0", "eslint-plugin-ft-flow": "^2.0.3", "eslint-plugin-lingui": "^0.2.0", "eslint-plugin-react": "^7.33.2", + "eslint-plugin-react-compiler": "^0.0.0-experimental-c8b3f72-20240517", "eslint-plugin-react-native-a11y": "^3.3.0", "eslint-plugin-simple-import-sort": "^12.0.0", "html-webpack-plugin": "^5.5.0", @@ -254,7 +255,7 @@ "jest-expo": "^50.0.1", "jest-junit": "^15.0.0", "lint-staged": "^13.2.3", - "metro-react-native-babel-preset": "^0.73.7", + "metro-react-native-babel-preset": "^0.74.1", "prettier": "^2.8.3", "react-native-dotenv": "^3.3.1", "react-refresh": "^0.14.0", @@ -270,7 +271,8 @@ }, "resolutions": { "@types/react": "^18", - "**/zeed-dom": "0.10.9" + "**/zeed-dom": "0.10.9", + "@react-native/babel-preset": "0.74.1" }, "jest": { "preset": "jest-expo/ios", diff --git a/patches/@mattermost+react-native-paste-input+0.6.4.patch b/patches/@mattermost+react-native-paste-input+0.6.4.patch deleted file mode 100644 index 08413846ff..0000000000 --- a/patches/@mattermost+react-native-paste-input+0.6.4.patch +++ /dev/null @@ -1,3612 +0,0 @@ -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/AndroidManifest.xml b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/AndroidManifest.xml -new file mode 100644 -index 0000000..0249d77 ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/AndroidManifest.xml -@@ -0,0 +1,9 @@ -+ -+ -+ -+ -+ -+ -\ No newline at end of file -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/output-metadata.json b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/output-metadata.json -new file mode 100644 -index 0000000..2aeca5f ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/aapt_friendly_merged_manifests/debug/aapt/output-metadata.json -@@ -0,0 +1,18 @@ -+{ -+ "version": 3, -+ "artifactType": { -+ "type": "AAPT_FRIENDLY_MERGED_MANIFESTS", -+ "kind": "Directory" -+ }, -+ "applicationId": "com.mattermost.pasteinput", -+ "variantName": "debug", -+ "elements": [ -+ { -+ "type": "SINGLE", -+ "filters": [], -+ "attributes": [], -+ "outputFile": "AndroidManifest.xml" -+ } -+ ], -+ "elementType": "File" -+} -\ No newline at end of file -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/aar_metadata/debug/aar-metadata.properties b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/aar_metadata/debug/aar-metadata.properties -new file mode 100644 -index 0000000..8c9c699 ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/aar_metadata/debug/aar-metadata.properties -@@ -0,0 +1,4 @@ -+aarFormatVersion=1.0 -+aarMetadataVersion=1.0 -+minCompileSdk=1 -+minAndroidGradlePluginVersion=1.0.0 -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/compile_r_class_jar/debug/R.jar b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/compile_r_class_jar/debug/R.jar -new file mode 100644 -index 0000000..e69de29 -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/compile_symbol_list/debug/R.txt b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/compile_symbol_list/debug/R.txt -new file mode 100644 -index 0000000..7c9d30e ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/compile_symbol_list/debug/R.txt -@@ -0,0 +1,1953 @@ -+int anim abc_fade_in 0x0 -+int anim abc_fade_out 0x0 -+int anim abc_grow_fade_in_from_bottom 0x0 -+int anim abc_popup_enter 0x0 -+int anim abc_popup_exit 0x0 -+int anim abc_shrink_fade_out_from_bottom 0x0 -+int anim abc_slide_in_bottom 0x0 -+int anim abc_slide_in_top 0x0 -+int anim abc_slide_out_bottom 0x0 -+int anim abc_slide_out_top 0x0 -+int anim abc_tooltip_enter 0x0 -+int anim abc_tooltip_exit 0x0 -+int anim btn_checkbox_to_checked_box_inner_merged_animation 0x0 -+int anim btn_checkbox_to_checked_box_outer_merged_animation 0x0 -+int anim btn_checkbox_to_checked_icon_null_animation 0x0 -+int anim btn_checkbox_to_unchecked_box_inner_merged_animation 0x0 -+int anim btn_checkbox_to_unchecked_check_path_merged_animation 0x0 -+int anim btn_checkbox_to_unchecked_icon_null_animation 0x0 -+int anim btn_radio_to_off_mtrl_dot_group_animation 0x0 -+int anim btn_radio_to_off_mtrl_ring_outer_animation 0x0 -+int anim btn_radio_to_off_mtrl_ring_outer_path_animation 0x0 -+int anim btn_radio_to_on_mtrl_dot_group_animation 0x0 -+int anim btn_radio_to_on_mtrl_ring_outer_animation 0x0 -+int anim btn_radio_to_on_mtrl_ring_outer_path_animation 0x0 -+int anim catalyst_fade_in 0x0 -+int anim catalyst_fade_out 0x0 -+int anim catalyst_push_up_in 0x0 -+int anim catalyst_push_up_out 0x0 -+int anim catalyst_slide_down 0x0 -+int anim catalyst_slide_up 0x0 -+int anim fragment_fast_out_extra_slow_in 0x0 -+int animator fragment_close_enter 0x0 -+int animator fragment_close_exit 0x0 -+int animator fragment_fade_enter 0x0 -+int animator fragment_fade_exit 0x0 -+int animator fragment_open_enter 0x0 -+int animator fragment_open_exit 0x0 -+int attr actionBarDivider 0x0 -+int attr actionBarItemBackground 0x0 -+int attr actionBarPopupTheme 0x0 -+int attr actionBarSize 0x0 -+int attr actionBarSplitStyle 0x0 -+int attr actionBarStyle 0x0 -+int attr actionBarTabBarStyle 0x0 -+int attr actionBarTabStyle 0x0 -+int attr actionBarTabTextStyle 0x0 -+int attr actionBarTheme 0x0 -+int attr actionBarWidgetTheme 0x0 -+int attr actionButtonStyle 0x0 -+int attr actionDropDownStyle 0x0 -+int attr actionLayout 0x0 -+int attr actionMenuTextAppearance 0x0 -+int attr actionMenuTextColor 0x0 -+int attr actionModeBackground 0x0 -+int attr actionModeCloseButtonStyle 0x0 -+int attr actionModeCloseContentDescription 0x0 -+int attr actionModeCloseDrawable 0x0 -+int attr actionModeCopyDrawable 0x0 -+int attr actionModeCutDrawable 0x0 -+int attr actionModeFindDrawable 0x0 -+int attr actionModePasteDrawable 0x0 -+int attr actionModePopupWindowStyle 0x0 -+int attr actionModeSelectAllDrawable 0x0 -+int attr actionModeShareDrawable 0x0 -+int attr actionModeSplitBackground 0x0 -+int attr actionModeStyle 0x0 -+int attr actionModeTheme 0x0 -+int attr actionModeWebSearchDrawable 0x0 -+int attr actionOverflowButtonStyle 0x0 -+int attr actionOverflowMenuStyle 0x0 -+int attr actionProviderClass 0x0 -+int attr actionViewClass 0x0 -+int attr activityChooserViewStyle 0x0 -+int attr actualImageResource 0x0 -+int attr actualImageScaleType 0x0 -+int attr actualImageUri 0x0 -+int attr alertDialogButtonGroupStyle 0x0 -+int attr alertDialogCenterButtons 0x0 -+int attr alertDialogStyle 0x0 -+int attr alertDialogTheme 0x0 -+int attr allowStacking 0x0 -+int attr alpha 0x0 -+int attr alphabeticModifiers 0x0 -+int attr arrowHeadLength 0x0 -+int attr arrowShaftLength 0x0 -+int attr autoCompleteTextViewStyle 0x0 -+int attr autoSizeMaxTextSize 0x0 -+int attr autoSizeMinTextSize 0x0 -+int attr autoSizePresetSizes 0x0 -+int attr autoSizeStepGranularity 0x0 -+int attr autoSizeTextType 0x0 -+int attr autofillInlineSuggestionChip 0x0 -+int attr autofillInlineSuggestionEndIconStyle 0x0 -+int attr autofillInlineSuggestionStartIconStyle 0x0 -+int attr autofillInlineSuggestionSubtitle 0x0 -+int attr autofillInlineSuggestionTitle 0x0 -+int attr background 0x0 -+int attr backgroundImage 0x0 -+int attr backgroundSplit 0x0 -+int attr backgroundStacked 0x0 -+int attr backgroundTint 0x0 -+int attr backgroundTintMode 0x0 -+int attr barLength 0x0 -+int attr borderlessButtonStyle 0x0 -+int attr buttonBarButtonStyle 0x0 -+int attr buttonBarNegativeButtonStyle 0x0 -+int attr buttonBarNeutralButtonStyle 0x0 -+int attr buttonBarPositiveButtonStyle 0x0 -+int attr buttonBarStyle 0x0 -+int attr buttonCompat 0x0 -+int attr buttonGravity 0x0 -+int attr buttonIconDimen 0x0 -+int attr buttonPanelSideLayout 0x0 -+int attr buttonStyle 0x0 -+int attr buttonStyleSmall 0x0 -+int attr buttonTint 0x0 -+int attr buttonTintMode 0x0 -+int attr checkMarkCompat 0x0 -+int attr checkMarkTint 0x0 -+int attr checkMarkTintMode 0x0 -+int attr checkboxStyle 0x0 -+int attr checkedTextViewStyle 0x0 -+int attr closeIcon 0x0 -+int attr closeItemLayout 0x0 -+int attr collapseContentDescription 0x0 -+int attr collapseIcon 0x0 -+int attr color 0x0 -+int attr colorAccent 0x0 -+int attr colorBackgroundFloating 0x0 -+int attr colorButtonNormal 0x0 -+int attr colorControlActivated 0x0 -+int attr colorControlHighlight 0x0 -+int attr colorControlNormal 0x0 -+int attr colorError 0x0 -+int attr colorPrimary 0x0 -+int attr colorPrimaryDark 0x0 -+int attr colorSwitchThumbNormal 0x0 -+int attr commitIcon 0x0 -+int attr contentDescription 0x0 -+int attr contentInsetEnd 0x0 -+int attr contentInsetEndWithActions 0x0 -+int attr contentInsetLeft 0x0 -+int attr contentInsetRight 0x0 -+int attr contentInsetStart 0x0 -+int attr contentInsetStartWithNavigation 0x0 -+int attr controlBackground 0x0 -+int attr customNavigationLayout 0x0 -+int attr defaultQueryHint 0x0 -+int attr dialogCornerRadius 0x0 -+int attr dialogPreferredPadding 0x0 -+int attr dialogTheme 0x0 -+int attr displayOptions 0x0 -+int attr divider 0x0 -+int attr dividerHorizontal 0x0 -+int attr dividerPadding 0x0 -+int attr dividerVertical 0x0 -+int attr drawableBottomCompat 0x0 -+int attr drawableEndCompat 0x0 -+int attr drawableLeftCompat 0x0 -+int attr drawableRightCompat 0x0 -+int attr drawableSize 0x0 -+int attr drawableStartCompat 0x0 -+int attr drawableTint 0x0 -+int attr drawableTintMode 0x0 -+int attr drawableTopCompat 0x0 -+int attr drawerArrowStyle 0x0 -+int attr dropDownListViewStyle 0x0 -+int attr dropdownListPreferredItemHeight 0x0 -+int attr editTextBackground 0x0 -+int attr editTextColor 0x0 -+int attr editTextStyle 0x0 -+int attr elevation 0x0 -+int attr emojiCompatEnabled 0x0 -+int attr expandActivityOverflowButtonDrawable 0x0 -+int attr fadeDuration 0x0 -+int attr failureImage 0x0 -+int attr failureImageScaleType 0x0 -+int attr firstBaselineToTopHeight 0x0 -+int attr font 0x0 -+int attr fontFamily 0x0 -+int attr fontProviderAuthority 0x0 -+int attr fontProviderCerts 0x0 -+int attr fontProviderFetchStrategy 0x0 -+int attr fontProviderFetchTimeout 0x0 -+int attr fontProviderPackage 0x0 -+int attr fontProviderQuery 0x0 -+int attr fontProviderSystemFontFamily 0x0 -+int attr fontStyle 0x0 -+int attr fontVariationSettings 0x0 -+int attr fontWeight 0x0 -+int attr gapBetweenBars 0x0 -+int attr goIcon 0x0 -+int attr height 0x0 -+int attr hideOnContentScroll 0x0 -+int attr homeAsUpIndicator 0x0 -+int attr homeLayout 0x0 -+int attr icon 0x0 -+int attr iconTint 0x0 -+int attr iconTintMode 0x0 -+int attr iconifiedByDefault 0x0 -+int attr imageButtonStyle 0x0 -+int attr indeterminateProgressStyle 0x0 -+int attr initialActivityCount 0x0 -+int attr isAutofillInlineSuggestionTheme 0x0 -+int attr isLightTheme 0x0 -+int attr itemPadding 0x0 -+int attr lStar 0x0 -+int attr lastBaselineToBottomHeight 0x0 -+int attr layout 0x0 -+int attr lineHeight 0x0 -+int attr listChoiceBackgroundIndicator 0x0 -+int attr listChoiceIndicatorMultipleAnimated 0x0 -+int attr listChoiceIndicatorSingleAnimated 0x0 -+int attr listDividerAlertDialog 0x0 -+int attr listItemLayout 0x0 -+int attr listLayout 0x0 -+int attr listMenuViewStyle 0x0 -+int attr listPopupWindowStyle 0x0 -+int attr listPreferredItemHeight 0x0 -+int attr listPreferredItemHeightLarge 0x0 -+int attr listPreferredItemHeightSmall 0x0 -+int attr listPreferredItemPaddingEnd 0x0 -+int attr listPreferredItemPaddingLeft 0x0 -+int attr listPreferredItemPaddingRight 0x0 -+int attr listPreferredItemPaddingStart 0x0 -+int attr logo 0x0 -+int attr logoDescription 0x0 -+int attr maxButtonHeight 0x0 -+int attr measureWithLargestChild 0x0 -+int attr menu 0x0 -+int attr multiChoiceItemLayout 0x0 -+int attr navigationContentDescription 0x0 -+int attr navigationIcon 0x0 -+int attr navigationMode 0x0 -+int attr nestedScrollViewStyle 0x0 -+int attr numericModifiers 0x0 -+int attr overlapAnchor 0x0 -+int attr overlayImage 0x0 -+int attr paddingBottomNoButtons 0x0 -+int attr paddingEnd 0x0 -+int attr paddingStart 0x0 -+int attr paddingTopNoTitle 0x0 -+int attr panelBackground 0x0 -+int attr panelMenuListTheme 0x0 -+int attr panelMenuListWidth 0x0 -+int attr placeholderImage 0x0 -+int attr placeholderImageScaleType 0x0 -+int attr popupMenuStyle 0x0 -+int attr popupTheme 0x0 -+int attr popupWindowStyle 0x0 -+int attr preserveIconSpacing 0x0 -+int attr pressedStateOverlayImage 0x0 -+int attr progressBarAutoRotateInterval 0x0 -+int attr progressBarImage 0x0 -+int attr progressBarImageScaleType 0x0 -+int attr progressBarPadding 0x0 -+int attr progressBarStyle 0x0 -+int attr queryBackground 0x0 -+int attr queryHint 0x0 -+int attr queryPatterns 0x0 -+int attr radioButtonStyle 0x0 -+int attr ratingBarStyle 0x0 -+int attr ratingBarStyleIndicator 0x0 -+int attr ratingBarStyleSmall 0x0 -+int attr retryImage 0x0 -+int attr retryImageScaleType 0x0 -+int attr roundAsCircle 0x0 -+int attr roundBottomEnd 0x0 -+int attr roundBottomLeft 0x0 -+int attr roundBottomRight 0x0 -+int attr roundBottomStart 0x0 -+int attr roundTopEnd 0x0 -+int attr roundTopLeft 0x0 -+int attr roundTopRight 0x0 -+int attr roundTopStart 0x0 -+int attr roundWithOverlayColor 0x0 -+int attr roundedCornerRadius 0x0 -+int attr roundingBorderColor 0x0 -+int attr roundingBorderPadding 0x0 -+int attr roundingBorderWidth 0x0 -+int attr searchHintIcon 0x0 -+int attr searchIcon 0x0 -+int attr searchViewStyle 0x0 -+int attr seekBarStyle 0x0 -+int attr selectableItemBackground 0x0 -+int attr selectableItemBackgroundBorderless 0x0 -+int attr shortcutMatchRequired 0x0 -+int attr showAsAction 0x0 -+int attr showDividers 0x0 -+int attr showText 0x0 -+int attr showTitle 0x0 -+int attr singleChoiceItemLayout 0x0 -+int attr spinBars 0x0 -+int attr spinnerDropDownItemStyle 0x0 -+int attr spinnerStyle 0x0 -+int attr splitTrack 0x0 -+int attr srcCompat 0x0 -+int attr state_above_anchor 0x0 -+int attr subMenuArrow 0x0 -+int attr submitBackground 0x0 -+int attr subtitle 0x0 -+int attr subtitleTextAppearance 0x0 -+int attr subtitleTextColor 0x0 -+int attr subtitleTextStyle 0x0 -+int attr suggestionRowLayout 0x0 -+int attr switchMinWidth 0x0 -+int attr switchPadding 0x0 -+int attr switchStyle 0x0 -+int attr switchTextAppearance 0x0 -+int attr textAllCaps 0x0 -+int attr textAppearanceLargePopupMenu 0x0 -+int attr textAppearanceListItem 0x0 -+int attr textAppearanceListItemSecondary 0x0 -+int attr textAppearanceListItemSmall 0x0 -+int attr textAppearancePopupMenuHeader 0x0 -+int attr textAppearanceSearchResultSubtitle 0x0 -+int attr textAppearanceSearchResultTitle 0x0 -+int attr textAppearanceSmallPopupMenu 0x0 -+int attr textColorAlertDialogListItem 0x0 -+int attr textColorSearchUrl 0x0 -+int attr textLocale 0x0 -+int attr theme 0x0 -+int attr thickness 0x0 -+int attr thumbTextPadding 0x0 -+int attr thumbTint 0x0 -+int attr thumbTintMode 0x0 -+int attr tickMark 0x0 -+int attr tickMarkTint 0x0 -+int attr tickMarkTintMode 0x0 -+int attr tint 0x0 -+int attr tintMode 0x0 -+int attr title 0x0 -+int attr titleMargin 0x0 -+int attr titleMarginBottom 0x0 -+int attr titleMarginEnd 0x0 -+int attr titleMarginStart 0x0 -+int attr titleMarginTop 0x0 -+int attr titleMargins 0x0 -+int attr titleTextAppearance 0x0 -+int attr titleTextColor 0x0 -+int attr titleTextStyle 0x0 -+int attr toolbarNavigationButtonStyle 0x0 -+int attr toolbarStyle 0x0 -+int attr tooltipForegroundColor 0x0 -+int attr tooltipFrameBackground 0x0 -+int attr tooltipText 0x0 -+int attr track 0x0 -+int attr trackTint 0x0 -+int attr trackTintMode 0x0 -+int attr ttcIndex 0x0 -+int attr viewAspectRatio 0x0 -+int attr viewInflaterClass 0x0 -+int attr voiceIcon 0x0 -+int attr windowActionBar 0x0 -+int attr windowActionBarOverlay 0x0 -+int attr windowActionModeOverlay 0x0 -+int attr windowFixedHeightMajor 0x0 -+int attr windowFixedHeightMinor 0x0 -+int attr windowFixedWidthMajor 0x0 -+int attr windowFixedWidthMinor 0x0 -+int attr windowMinWidthMajor 0x0 -+int attr windowMinWidthMinor 0x0 -+int attr windowNoTitle 0x0 -+int bool abc_action_bar_embed_tabs 0x0 -+int bool abc_config_actionMenuItemAllCaps 0x0 -+int color abc_background_cache_hint_selector_material_dark 0x0 -+int color abc_background_cache_hint_selector_material_light 0x0 -+int color abc_btn_colored_borderless_text_material 0x0 -+int color abc_btn_colored_text_material 0x0 -+int color abc_color_highlight_material 0x0 -+int color abc_decor_view_status_guard 0x0 -+int color abc_decor_view_status_guard_light 0x0 -+int color abc_hint_foreground_material_dark 0x0 -+int color abc_hint_foreground_material_light 0x0 -+int color abc_primary_text_disable_only_material_dark 0x0 -+int color abc_primary_text_disable_only_material_light 0x0 -+int color abc_primary_text_material_dark 0x0 -+int color abc_primary_text_material_light 0x0 -+int color abc_search_url_text 0x0 -+int color abc_search_url_text_normal 0x0 -+int color abc_search_url_text_pressed 0x0 -+int color abc_search_url_text_selected 0x0 -+int color abc_secondary_text_material_dark 0x0 -+int color abc_secondary_text_material_light 0x0 -+int color abc_tint_btn_checkable 0x0 -+int color abc_tint_default 0x0 -+int color abc_tint_edittext 0x0 -+int color abc_tint_seek_thumb 0x0 -+int color abc_tint_spinner 0x0 -+int color abc_tint_switch_track 0x0 -+int color accent_material_dark 0x0 -+int color accent_material_light 0x0 -+int color androidx_core_ripple_material_light 0x0 -+int color androidx_core_secondary_text_default_material_light 0x0 -+int color background_floating_material_dark 0x0 -+int color background_floating_material_light 0x0 -+int color background_material_dark 0x0 -+int color background_material_light 0x0 -+int color bright_foreground_disabled_material_dark 0x0 -+int color bright_foreground_disabled_material_light 0x0 -+int color bright_foreground_inverse_material_dark 0x0 -+int color bright_foreground_inverse_material_light 0x0 -+int color bright_foreground_material_dark 0x0 -+int color bright_foreground_material_light 0x0 -+int color button_material_dark 0x0 -+int color button_material_light 0x0 -+int color catalyst_logbox_background 0x0 -+int color catalyst_redbox_background 0x0 -+int color dim_foreground_disabled_material_dark 0x0 -+int color dim_foreground_disabled_material_light 0x0 -+int color dim_foreground_material_dark 0x0 -+int color dim_foreground_material_light 0x0 -+int color error_color_material_dark 0x0 -+int color error_color_material_light 0x0 -+int color foreground_material_dark 0x0 -+int color foreground_material_light 0x0 -+int color highlighted_text_material_dark 0x0 -+int color highlighted_text_material_light 0x0 -+int color material_blue_grey_800 0x0 -+int color material_blue_grey_900 0x0 -+int color material_blue_grey_950 0x0 -+int color material_deep_teal_200 0x0 -+int color material_deep_teal_500 0x0 -+int color material_grey_100 0x0 -+int color material_grey_300 0x0 -+int color material_grey_50 0x0 -+int color material_grey_600 0x0 -+int color material_grey_800 0x0 -+int color material_grey_850 0x0 -+int color material_grey_900 0x0 -+int color notification_action_color_filter 0x0 -+int color notification_icon_bg_color 0x0 -+int color primary_dark_material_dark 0x0 -+int color primary_dark_material_light 0x0 -+int color primary_material_dark 0x0 -+int color primary_material_light 0x0 -+int color primary_text_default_material_dark 0x0 -+int color primary_text_default_material_light 0x0 -+int color primary_text_disabled_material_dark 0x0 -+int color primary_text_disabled_material_light 0x0 -+int color ripple_material_dark 0x0 -+int color ripple_material_light 0x0 -+int color secondary_text_default_material_dark 0x0 -+int color secondary_text_default_material_light 0x0 -+int color secondary_text_disabled_material_dark 0x0 -+int color secondary_text_disabled_material_light 0x0 -+int color switch_thumb_disabled_material_dark 0x0 -+int color switch_thumb_disabled_material_light 0x0 -+int color switch_thumb_material_dark 0x0 -+int color switch_thumb_material_light 0x0 -+int color switch_thumb_normal_material_dark 0x0 -+int color switch_thumb_normal_material_light 0x0 -+int color tooltip_background_dark 0x0 -+int color tooltip_background_light 0x0 -+int dimen abc_action_bar_content_inset_material 0x0 -+int dimen abc_action_bar_content_inset_with_nav 0x0 -+int dimen abc_action_bar_default_height_material 0x0 -+int dimen abc_action_bar_default_padding_end_material 0x0 -+int dimen abc_action_bar_default_padding_start_material 0x0 -+int dimen abc_action_bar_elevation_material 0x0 -+int dimen abc_action_bar_icon_vertical_padding_material 0x0 -+int dimen abc_action_bar_overflow_padding_end_material 0x0 -+int dimen abc_action_bar_overflow_padding_start_material 0x0 -+int dimen abc_action_bar_stacked_max_height 0x0 -+int dimen abc_action_bar_stacked_tab_max_width 0x0 -+int dimen abc_action_bar_subtitle_bottom_margin_material 0x0 -+int dimen abc_action_bar_subtitle_top_margin_material 0x0 -+int dimen abc_action_button_min_height_material 0x0 -+int dimen abc_action_button_min_width_material 0x0 -+int dimen abc_action_button_min_width_overflow_material 0x0 -+int dimen abc_alert_dialog_button_bar_height 0x0 -+int dimen abc_alert_dialog_button_dimen 0x0 -+int dimen abc_button_inset_horizontal_material 0x0 -+int dimen abc_button_inset_vertical_material 0x0 -+int dimen abc_button_padding_horizontal_material 0x0 -+int dimen abc_button_padding_vertical_material 0x0 -+int dimen abc_cascading_menus_min_smallest_width 0x0 -+int dimen abc_config_prefDialogWidth 0x0 -+int dimen abc_control_corner_material 0x0 -+int dimen abc_control_inset_material 0x0 -+int dimen abc_control_padding_material 0x0 -+int dimen abc_dialog_corner_radius_material 0x0 -+int dimen abc_dialog_fixed_height_major 0x0 -+int dimen abc_dialog_fixed_height_minor 0x0 -+int dimen abc_dialog_fixed_width_major 0x0 -+int dimen abc_dialog_fixed_width_minor 0x0 -+int dimen abc_dialog_list_padding_bottom_no_buttons 0x0 -+int dimen abc_dialog_list_padding_top_no_title 0x0 -+int dimen abc_dialog_min_width_major 0x0 -+int dimen abc_dialog_min_width_minor 0x0 -+int dimen abc_dialog_padding_material 0x0 -+int dimen abc_dialog_padding_top_material 0x0 -+int dimen abc_dialog_title_divider_material 0x0 -+int dimen abc_disabled_alpha_material_dark 0x0 -+int dimen abc_disabled_alpha_material_light 0x0 -+int dimen abc_dropdownitem_icon_width 0x0 -+int dimen abc_dropdownitem_text_padding_left 0x0 -+int dimen abc_dropdownitem_text_padding_right 0x0 -+int dimen abc_edit_text_inset_bottom_material 0x0 -+int dimen abc_edit_text_inset_horizontal_material 0x0 -+int dimen abc_edit_text_inset_top_material 0x0 -+int dimen abc_floating_window_z 0x0 -+int dimen abc_list_item_height_large_material 0x0 -+int dimen abc_list_item_height_material 0x0 -+int dimen abc_list_item_height_small_material 0x0 -+int dimen abc_list_item_padding_horizontal_material 0x0 -+int dimen abc_panel_menu_list_width 0x0 -+int dimen abc_progress_bar_height_material 0x0 -+int dimen abc_search_view_preferred_height 0x0 -+int dimen abc_search_view_preferred_width 0x0 -+int dimen abc_seekbar_track_background_height_material 0x0 -+int dimen abc_seekbar_track_progress_height_material 0x0 -+int dimen abc_select_dialog_padding_start_material 0x0 -+int dimen abc_star_big 0x0 -+int dimen abc_star_medium 0x0 -+int dimen abc_star_small 0x0 -+int dimen abc_switch_padding 0x0 -+int dimen abc_text_size_body_1_material 0x0 -+int dimen abc_text_size_body_2_material 0x0 -+int dimen abc_text_size_button_material 0x0 -+int dimen abc_text_size_caption_material 0x0 -+int dimen abc_text_size_display_1_material 0x0 -+int dimen abc_text_size_display_2_material 0x0 -+int dimen abc_text_size_display_3_material 0x0 -+int dimen abc_text_size_display_4_material 0x0 -+int dimen abc_text_size_headline_material 0x0 -+int dimen abc_text_size_large_material 0x0 -+int dimen abc_text_size_medium_material 0x0 -+int dimen abc_text_size_menu_header_material 0x0 -+int dimen abc_text_size_menu_material 0x0 -+int dimen abc_text_size_small_material 0x0 -+int dimen abc_text_size_subhead_material 0x0 -+int dimen abc_text_size_subtitle_material_toolbar 0x0 -+int dimen abc_text_size_title_material 0x0 -+int dimen abc_text_size_title_material_toolbar 0x0 -+int dimen autofill_inline_suggestion_icon_size 0x0 -+int dimen compat_button_inset_horizontal_material 0x0 -+int dimen compat_button_inset_vertical_material 0x0 -+int dimen compat_button_padding_horizontal_material 0x0 -+int dimen compat_button_padding_vertical_material 0x0 -+int dimen compat_control_corner_material 0x0 -+int dimen compat_notification_large_icon_max_height 0x0 -+int dimen compat_notification_large_icon_max_width 0x0 -+int dimen disabled_alpha_material_dark 0x0 -+int dimen disabled_alpha_material_light 0x0 -+int dimen highlight_alpha_material_colored 0x0 -+int dimen highlight_alpha_material_dark 0x0 -+int dimen highlight_alpha_material_light 0x0 -+int dimen hint_alpha_material_dark 0x0 -+int dimen hint_alpha_material_light 0x0 -+int dimen hint_pressed_alpha_material_dark 0x0 -+int dimen hint_pressed_alpha_material_light 0x0 -+int dimen notification_action_icon_size 0x0 -+int dimen notification_action_text_size 0x0 -+int dimen notification_big_circle_margin 0x0 -+int dimen notification_content_margin_start 0x0 -+int dimen notification_large_icon_height 0x0 -+int dimen notification_large_icon_width 0x0 -+int dimen notification_main_column_padding_top 0x0 -+int dimen notification_media_narrow_margin 0x0 -+int dimen notification_right_icon_size 0x0 -+int dimen notification_right_side_padding_top 0x0 -+int dimen notification_small_icon_background_padding 0x0 -+int dimen notification_small_icon_size_as_large 0x0 -+int dimen notification_subtext_size 0x0 -+int dimen notification_top_pad 0x0 -+int dimen notification_top_pad_large_text 0x0 -+int dimen tooltip_corner_radius 0x0 -+int dimen tooltip_horizontal_padding 0x0 -+int dimen tooltip_margin 0x0 -+int dimen tooltip_precise_anchor_extra_offset 0x0 -+int dimen tooltip_precise_anchor_threshold 0x0 -+int dimen tooltip_vertical_padding 0x0 -+int dimen tooltip_y_offset_non_touch 0x0 -+int dimen tooltip_y_offset_touch 0x0 -+int drawable abc_ab_share_pack_mtrl_alpha 0x0 -+int drawable abc_action_bar_item_background_material 0x0 -+int drawable abc_btn_borderless_material 0x0 -+int drawable abc_btn_check_material 0x0 -+int drawable abc_btn_check_material_anim 0x0 -+int drawable abc_btn_check_to_on_mtrl_000 0x0 -+int drawable abc_btn_check_to_on_mtrl_015 0x0 -+int drawable abc_btn_colored_material 0x0 -+int drawable abc_btn_default_mtrl_shape 0x0 -+int drawable abc_btn_radio_material 0x0 -+int drawable abc_btn_radio_material_anim 0x0 -+int drawable abc_btn_radio_to_on_mtrl_000 0x0 -+int drawable abc_btn_radio_to_on_mtrl_015 0x0 -+int drawable abc_btn_switch_to_on_mtrl_00001 0x0 -+int drawable abc_btn_switch_to_on_mtrl_00012 0x0 -+int drawable abc_cab_background_internal_bg 0x0 -+int drawable abc_cab_background_top_material 0x0 -+int drawable abc_cab_background_top_mtrl_alpha 0x0 -+int drawable abc_control_background_material 0x0 -+int drawable abc_dialog_material_background 0x0 -+int drawable abc_edit_text_material 0x0 -+int drawable abc_ic_ab_back_material 0x0 -+int drawable abc_ic_arrow_drop_right_black_24dp 0x0 -+int drawable abc_ic_clear_material 0x0 -+int drawable abc_ic_commit_search_api_mtrl_alpha 0x0 -+int drawable abc_ic_go_search_api_material 0x0 -+int drawable abc_ic_menu_copy_mtrl_am_alpha 0x0 -+int drawable abc_ic_menu_cut_mtrl_alpha 0x0 -+int drawable abc_ic_menu_overflow_material 0x0 -+int drawable abc_ic_menu_paste_mtrl_am_alpha 0x0 -+int drawable abc_ic_menu_selectall_mtrl_alpha 0x0 -+int drawable abc_ic_menu_share_mtrl_alpha 0x0 -+int drawable abc_ic_search_api_material 0x0 -+int drawable abc_ic_voice_search_api_material 0x0 -+int drawable abc_item_background_holo_dark 0x0 -+int drawable abc_item_background_holo_light 0x0 -+int drawable abc_list_divider_material 0x0 -+int drawable abc_list_divider_mtrl_alpha 0x0 -+int drawable abc_list_focused_holo 0x0 -+int drawable abc_list_longpressed_holo 0x0 -+int drawable abc_list_pressed_holo_dark 0x0 -+int drawable abc_list_pressed_holo_light 0x0 -+int drawable abc_list_selector_background_transition_holo_dark 0x0 -+int drawable abc_list_selector_background_transition_holo_light 0x0 -+int drawable abc_list_selector_disabled_holo_dark 0x0 -+int drawable abc_list_selector_disabled_holo_light 0x0 -+int drawable abc_list_selector_holo_dark 0x0 -+int drawable abc_list_selector_holo_light 0x0 -+int drawable abc_menu_hardkey_panel_mtrl_mult 0x0 -+int drawable abc_popup_background_mtrl_mult 0x0 -+int drawable abc_ratingbar_indicator_material 0x0 -+int drawable abc_ratingbar_material 0x0 -+int drawable abc_ratingbar_small_material 0x0 -+int drawable abc_scrubber_control_off_mtrl_alpha 0x0 -+int drawable abc_scrubber_control_to_pressed_mtrl_000 0x0 -+int drawable abc_scrubber_control_to_pressed_mtrl_005 0x0 -+int drawable abc_scrubber_primary_mtrl_alpha 0x0 -+int drawable abc_scrubber_track_mtrl_alpha 0x0 -+int drawable abc_seekbar_thumb_material 0x0 -+int drawable abc_seekbar_tick_mark_material 0x0 -+int drawable abc_seekbar_track_material 0x0 -+int drawable abc_spinner_mtrl_am_alpha 0x0 -+int drawable abc_spinner_textfield_background_material 0x0 -+int drawable abc_star_black_48dp 0x0 -+int drawable abc_star_half_black_48dp 0x0 -+int drawable abc_switch_thumb_material 0x0 -+int drawable abc_switch_track_mtrl_alpha 0x0 -+int drawable abc_tab_indicator_material 0x0 -+int drawable abc_tab_indicator_mtrl_alpha 0x0 -+int drawable abc_text_cursor_material 0x0 -+int drawable abc_text_select_handle_left_mtrl 0x0 -+int drawable abc_text_select_handle_middle_mtrl 0x0 -+int drawable abc_text_select_handle_right_mtrl 0x0 -+int drawable abc_textfield_activated_mtrl_alpha 0x0 -+int drawable abc_textfield_default_mtrl_alpha 0x0 -+int drawable abc_textfield_search_activated_mtrl_alpha 0x0 -+int drawable abc_textfield_search_default_mtrl_alpha 0x0 -+int drawable abc_textfield_search_material 0x0 -+int drawable abc_vector_test 0x0 -+int drawable autofill_inline_suggestion_chip_background 0x0 -+int drawable btn_checkbox_checked_mtrl 0x0 -+int drawable btn_checkbox_checked_to_unchecked_mtrl_animation 0x0 -+int drawable btn_checkbox_unchecked_mtrl 0x0 -+int drawable btn_checkbox_unchecked_to_checked_mtrl_animation 0x0 -+int drawable btn_radio_off_mtrl 0x0 -+int drawable btn_radio_off_to_on_mtrl_animation 0x0 -+int drawable btn_radio_on_mtrl 0x0 -+int drawable btn_radio_on_to_off_mtrl_animation 0x0 -+int drawable notification_action_background 0x0 -+int drawable notification_bg 0x0 -+int drawable notification_bg_low 0x0 -+int drawable notification_bg_low_normal 0x0 -+int drawable notification_bg_low_pressed 0x0 -+int drawable notification_bg_normal 0x0 -+int drawable notification_bg_normal_pressed 0x0 -+int drawable notification_icon_background 0x0 -+int drawable notification_template_icon_bg 0x0 -+int drawable notification_template_icon_low_bg 0x0 -+int drawable notification_tile_bg 0x0 -+int drawable notify_panel_notification_icon_bg 0x0 -+int drawable redbox_top_border_background 0x0 -+int drawable test_level_drawable 0x0 -+int drawable tooltip_frame_dark 0x0 -+int drawable tooltip_frame_light 0x0 -+int id accessibility_action_clickable_span 0x0 -+int id accessibility_actions 0x0 -+int id accessibility_collection 0x0 -+int id accessibility_collection_item 0x0 -+int id accessibility_custom_action_0 0x0 -+int id accessibility_custom_action_1 0x0 -+int id accessibility_custom_action_10 0x0 -+int id accessibility_custom_action_11 0x0 -+int id accessibility_custom_action_12 0x0 -+int id accessibility_custom_action_13 0x0 -+int id accessibility_custom_action_14 0x0 -+int id accessibility_custom_action_15 0x0 -+int id accessibility_custom_action_16 0x0 -+int id accessibility_custom_action_17 0x0 -+int id accessibility_custom_action_18 0x0 -+int id accessibility_custom_action_19 0x0 -+int id accessibility_custom_action_2 0x0 -+int id accessibility_custom_action_20 0x0 -+int id accessibility_custom_action_21 0x0 -+int id accessibility_custom_action_22 0x0 -+int id accessibility_custom_action_23 0x0 -+int id accessibility_custom_action_24 0x0 -+int id accessibility_custom_action_25 0x0 -+int id accessibility_custom_action_26 0x0 -+int id accessibility_custom_action_27 0x0 -+int id accessibility_custom_action_28 0x0 -+int id accessibility_custom_action_29 0x0 -+int id accessibility_custom_action_3 0x0 -+int id accessibility_custom_action_30 0x0 -+int id accessibility_custom_action_31 0x0 -+int id accessibility_custom_action_4 0x0 -+int id accessibility_custom_action_5 0x0 -+int id accessibility_custom_action_6 0x0 -+int id accessibility_custom_action_7 0x0 -+int id accessibility_custom_action_8 0x0 -+int id accessibility_custom_action_9 0x0 -+int id accessibility_hint 0x0 -+int id accessibility_label 0x0 -+int id accessibility_links 0x0 -+int id accessibility_role 0x0 -+int id accessibility_state 0x0 -+int id accessibility_value 0x0 -+int id action_bar 0x0 -+int id action_bar_activity_content 0x0 -+int id action_bar_container 0x0 -+int id action_bar_root 0x0 -+int id action_bar_spinner 0x0 -+int id action_bar_subtitle 0x0 -+int id action_bar_title 0x0 -+int id action_container 0x0 -+int id action_context_bar 0x0 -+int id action_divider 0x0 -+int id action_image 0x0 -+int id action_menu_divider 0x0 -+int id action_menu_presenter 0x0 -+int id action_mode_bar 0x0 -+int id action_mode_bar_stub 0x0 -+int id action_mode_close_button 0x0 -+int id action_text 0x0 -+int id actions 0x0 -+int id activity_chooser_view_content 0x0 -+int id add 0x0 -+int id alertTitle 0x0 -+int id async 0x0 -+int id autofill_inline_suggestion_end_icon 0x0 -+int id autofill_inline_suggestion_start_icon 0x0 -+int id autofill_inline_suggestion_subtitle 0x0 -+int id autofill_inline_suggestion_title 0x0 -+int id blocking 0x0 -+int id buttonPanel 0x0 -+int id catalyst_redbox_title 0x0 -+int id center 0x0 -+int id centerCrop 0x0 -+int id centerInside 0x0 -+int id checkbox 0x0 -+int id checked 0x0 -+int id chronometer 0x0 -+int id content 0x0 -+int id contentPanel 0x0 -+int id custom 0x0 -+int id customPanel 0x0 -+int id decor_content_parent 0x0 -+int id default_activity_button 0x0 -+int id dialog_button 0x0 -+int id edit_query 0x0 -+int id expand_activities_button 0x0 -+int id expanded_menu 0x0 -+int id fitBottomStart 0x0 -+int id fitCenter 0x0 -+int id fitEnd 0x0 -+int id fitStart 0x0 -+int id fitXY 0x0 -+int id focusCrop 0x0 -+int id forever 0x0 -+int id fps_text 0x0 -+int id fragment_container_view_tag 0x0 -+int id group_divider 0x0 -+int id home 0x0 -+int id icon 0x0 -+int id icon_group 0x0 -+int id image 0x0 -+int id info 0x0 -+int id italic 0x0 -+int id item1 0x0 -+int id item2 0x0 -+int id item3 0x0 -+int id item4 0x0 -+int id labelled_by 0x0 -+int id line1 0x0 -+int id line3 0x0 -+int id listMode 0x0 -+int id list_item 0x0 -+int id message 0x0 -+int id multiply 0x0 -+int id none 0x0 -+int id normal 0x0 -+int id notification_background 0x0 -+int id notification_main_column 0x0 -+int id notification_main_column_container 0x0 -+int id off 0x0 -+int id on 0x0 -+int id parentPanel 0x0 -+int id pointer_events 0x0 -+int id progress_circular 0x0 -+int id progress_horizontal 0x0 -+int id radio 0x0 -+int id react_test_id 0x0 -+int id right_icon 0x0 -+int id right_side 0x0 -+int id rn_frame_file 0x0 -+int id rn_frame_method 0x0 -+int id rn_redbox_dismiss_button 0x0 -+int id rn_redbox_line_separator 0x0 -+int id rn_redbox_loading_indicator 0x0 -+int id rn_redbox_reload_button 0x0 -+int id rn_redbox_report_button 0x0 -+int id rn_redbox_report_label 0x0 -+int id rn_redbox_stack 0x0 -+int id screen 0x0 -+int id scrollIndicatorDown 0x0 -+int id scrollIndicatorUp 0x0 -+int id scrollView 0x0 -+int id search_badge 0x0 -+int id search_bar 0x0 -+int id search_button 0x0 -+int id search_close_btn 0x0 -+int id search_edit_frame 0x0 -+int id search_go_btn 0x0 -+int id search_mag_icon 0x0 -+int id search_plate 0x0 -+int id search_src_text 0x0 -+int id search_voice_btn 0x0 -+int id select_dialog_listview 0x0 -+int id shortcut 0x0 -+int id spacer 0x0 -+int id special_effects_controller_view_tag 0x0 -+int id split_action_bar 0x0 -+int id src_atop 0x0 -+int id src_in 0x0 -+int id src_over 0x0 -+int id submenuarrow 0x0 -+int id submit_area 0x0 -+int id tabMode 0x0 -+int id tag_accessibility_actions 0x0 -+int id tag_accessibility_clickable_spans 0x0 -+int id tag_accessibility_heading 0x0 -+int id tag_accessibility_pane_title 0x0 -+int id tag_on_apply_window_listener 0x0 -+int id tag_on_receive_content_listener 0x0 -+int id tag_on_receive_content_mime_types 0x0 -+int id tag_screen_reader_focusable 0x0 -+int id tag_state_description 0x0 -+int id tag_transition_group 0x0 -+int id tag_unhandled_key_event_manager 0x0 -+int id tag_unhandled_key_listeners 0x0 -+int id tag_window_insets_animation_callback 0x0 -+int id text 0x0 -+int id text2 0x0 -+int id textSpacerNoButtons 0x0 -+int id textSpacerNoTitle 0x0 -+int id time 0x0 -+int id title 0x0 -+int id titleDividerNoCustom 0x0 -+int id title_template 0x0 -+int id topPanel 0x0 -+int id unchecked 0x0 -+int id uniform 0x0 -+int id up 0x0 -+int id view_tag_instance_handle 0x0 -+int id view_tag_native_id 0x0 -+int id view_tree_lifecycle_owner 0x0 -+int id view_tree_saved_state_registry_owner 0x0 -+int id view_tree_view_model_store_owner 0x0 -+int id visible_removing_fragment_view_tag 0x0 -+int id wrap_content 0x0 -+int integer abc_config_activityDefaultDur 0x0 -+int integer abc_config_activityShortDur 0x0 -+int integer cancel_button_image_alpha 0x0 -+int integer config_tooltipAnimTime 0x0 -+int integer react_native_dev_server_port 0x0 -+int integer react_native_inspector_proxy_port 0x0 -+int integer status_bar_notification_info_maxnum 0x0 -+int interpolator btn_checkbox_checked_mtrl_animation_interpolator_0 0x0 -+int interpolator btn_checkbox_checked_mtrl_animation_interpolator_1 0x0 -+int interpolator btn_checkbox_unchecked_mtrl_animation_interpolator_0 0x0 -+int interpolator btn_checkbox_unchecked_mtrl_animation_interpolator_1 0x0 -+int interpolator btn_radio_to_off_mtrl_animation_interpolator_0 0x0 -+int interpolator btn_radio_to_on_mtrl_animation_interpolator_0 0x0 -+int interpolator fast_out_slow_in 0x0 -+int layout abc_action_bar_title_item 0x0 -+int layout abc_action_bar_up_container 0x0 -+int layout abc_action_menu_item_layout 0x0 -+int layout abc_action_menu_layout 0x0 -+int layout abc_action_mode_bar 0x0 -+int layout abc_action_mode_close_item_material 0x0 -+int layout abc_activity_chooser_view 0x0 -+int layout abc_activity_chooser_view_list_item 0x0 -+int layout abc_alert_dialog_button_bar_material 0x0 -+int layout abc_alert_dialog_material 0x0 -+int layout abc_alert_dialog_title_material 0x0 -+int layout abc_cascading_menu_item_layout 0x0 -+int layout abc_dialog_title_material 0x0 -+int layout abc_expanded_menu_layout 0x0 -+int layout abc_list_menu_item_checkbox 0x0 -+int layout abc_list_menu_item_icon 0x0 -+int layout abc_list_menu_item_layout 0x0 -+int layout abc_list_menu_item_radio 0x0 -+int layout abc_popup_menu_header_item_layout 0x0 -+int layout abc_popup_menu_item_layout 0x0 -+int layout abc_screen_content_include 0x0 -+int layout abc_screen_simple 0x0 -+int layout abc_screen_simple_overlay_action_mode 0x0 -+int layout abc_screen_toolbar 0x0 -+int layout abc_search_dropdown_item_icons_2line 0x0 -+int layout abc_search_view 0x0 -+int layout abc_select_dialog_material 0x0 -+int layout abc_tooltip 0x0 -+int layout autofill_inline_suggestion 0x0 -+int layout custom_dialog 0x0 -+int layout dev_loading_view 0x0 -+int layout fps_view 0x0 -+int layout notification_action 0x0 -+int layout notification_action_tombstone 0x0 -+int layout notification_template_custom_big 0x0 -+int layout notification_template_icon_group 0x0 -+int layout notification_template_part_chronometer 0x0 -+int layout notification_template_part_time 0x0 -+int layout redbox_item_frame 0x0 -+int layout redbox_item_title 0x0 -+int layout redbox_view 0x0 -+int layout select_dialog_item_material 0x0 -+int layout select_dialog_multichoice_material 0x0 -+int layout select_dialog_singlechoice_material 0x0 -+int layout support_simple_spinner_dropdown_item 0x0 -+int menu example_menu 0x0 -+int menu example_menu2 0x0 -+int string abc_action_bar_home_description 0x0 -+int string abc_action_bar_up_description 0x0 -+int string abc_action_menu_overflow_description 0x0 -+int string abc_action_mode_done 0x0 -+int string abc_activity_chooser_view_see_all 0x0 -+int string abc_activitychooserview_choose_application 0x0 -+int string abc_capital_off 0x0 -+int string abc_capital_on 0x0 -+int string abc_menu_alt_shortcut_label 0x0 -+int string abc_menu_ctrl_shortcut_label 0x0 -+int string abc_menu_delete_shortcut_label 0x0 -+int string abc_menu_enter_shortcut_label 0x0 -+int string abc_menu_function_shortcut_label 0x0 -+int string abc_menu_meta_shortcut_label 0x0 -+int string abc_menu_shift_shortcut_label 0x0 -+int string abc_menu_space_shortcut_label 0x0 -+int string abc_menu_sym_shortcut_label 0x0 -+int string abc_prepend_shortcut_label 0x0 -+int string abc_search_hint 0x0 -+int string abc_searchview_description_clear 0x0 -+int string abc_searchview_description_query 0x0 -+int string abc_searchview_description_search 0x0 -+int string abc_searchview_description_submit 0x0 -+int string abc_searchview_description_voice 0x0 -+int string abc_shareactionprovider_share_with 0x0 -+int string abc_shareactionprovider_share_with_application 0x0 -+int string abc_toolbar_collapse_description 0x0 -+int string alert_description 0x0 -+int string catalyst_change_bundle_location 0x0 -+int string catalyst_copy_button 0x0 -+int string catalyst_debug 0x0 -+int string catalyst_debug_chrome 0x0 -+int string catalyst_debug_chrome_stop 0x0 -+int string catalyst_debug_connecting 0x0 -+int string catalyst_debug_error 0x0 -+int string catalyst_debug_open 0x0 -+int string catalyst_debug_stop 0x0 -+int string catalyst_devtools_open 0x0 -+int string catalyst_dismiss_button 0x0 -+int string catalyst_heap_capture 0x0 -+int string catalyst_hot_reloading 0x0 -+int string catalyst_hot_reloading_auto_disable 0x0 -+int string catalyst_hot_reloading_auto_enable 0x0 -+int string catalyst_hot_reloading_stop 0x0 -+int string catalyst_inspector 0x0 -+int string catalyst_inspector_stop 0x0 -+int string catalyst_loading_from_url 0x0 -+int string catalyst_open_flipper_error 0x0 -+int string catalyst_perf_monitor 0x0 -+int string catalyst_perf_monitor_stop 0x0 -+int string catalyst_reload 0x0 -+int string catalyst_reload_button 0x0 -+int string catalyst_reload_error 0x0 -+int string catalyst_report_button 0x0 -+int string catalyst_sample_profiler_disable 0x0 -+int string catalyst_sample_profiler_enable 0x0 -+int string catalyst_settings 0x0 -+int string catalyst_settings_title 0x0 -+int string combobox_description 0x0 -+int string header_description 0x0 -+int string image_description 0x0 -+int string imagebutton_description 0x0 -+int string link_description 0x0 -+int string menu_description 0x0 -+int string menubar_description 0x0 -+int string menuitem_description 0x0 -+int string progressbar_description 0x0 -+int string radiogroup_description 0x0 -+int string rn_tab_description 0x0 -+int string scrollbar_description 0x0 -+int string search_menu_title 0x0 -+int string spinbutton_description 0x0 -+int string state_busy_description 0x0 -+int string state_collapsed_description 0x0 -+int string state_expanded_description 0x0 -+int string state_mixed_description 0x0 -+int string state_off_description 0x0 -+int string state_on_description 0x0 -+int string state_unselected_description 0x0 -+int string status_bar_notification_info_overflow 0x0 -+int string summary_description 0x0 -+int string tablist_description 0x0 -+int string timer_description 0x0 -+int string toolbar_description 0x0 -+int style AlertDialog_AppCompat 0x0 -+int style AlertDialog_AppCompat_Light 0x0 -+int style Animation_AppCompat_Dialog 0x0 -+int style Animation_AppCompat_DropDownUp 0x0 -+int style Animation_AppCompat_Tooltip 0x0 -+int style Animation_Catalyst_LogBox 0x0 -+int style Animation_Catalyst_RedBox 0x0 -+int style Base_AlertDialog_AppCompat 0x0 -+int style Base_AlertDialog_AppCompat_Light 0x0 -+int style Base_Animation_AppCompat_Dialog 0x0 -+int style Base_Animation_AppCompat_DropDownUp 0x0 -+int style Base_Animation_AppCompat_Tooltip 0x0 -+int style Base_DialogWindowTitleBackground_AppCompat 0x0 -+int style Base_DialogWindowTitle_AppCompat 0x0 -+int style Base_TextAppearance_AppCompat 0x0 -+int style Base_TextAppearance_AppCompat_Body1 0x0 -+int style Base_TextAppearance_AppCompat_Body2 0x0 -+int style Base_TextAppearance_AppCompat_Button 0x0 -+int style Base_TextAppearance_AppCompat_Caption 0x0 -+int style Base_TextAppearance_AppCompat_Display1 0x0 -+int style Base_TextAppearance_AppCompat_Display2 0x0 -+int style Base_TextAppearance_AppCompat_Display3 0x0 -+int style Base_TextAppearance_AppCompat_Display4 0x0 -+int style Base_TextAppearance_AppCompat_Headline 0x0 -+int style Base_TextAppearance_AppCompat_Inverse 0x0 -+int style Base_TextAppearance_AppCompat_Large 0x0 -+int style Base_TextAppearance_AppCompat_Large_Inverse 0x0 -+int style Base_TextAppearance_AppCompat_Light_Widget_PopupMenu_Large 0x0 -+int style Base_TextAppearance_AppCompat_Light_Widget_PopupMenu_Small 0x0 -+int style Base_TextAppearance_AppCompat_Medium 0x0 -+int style Base_TextAppearance_AppCompat_Medium_Inverse 0x0 -+int style Base_TextAppearance_AppCompat_Menu 0x0 -+int style Base_TextAppearance_AppCompat_SearchResult 0x0 -+int style Base_TextAppearance_AppCompat_SearchResult_Subtitle 0x0 -+int style Base_TextAppearance_AppCompat_SearchResult_Title 0x0 -+int style Base_TextAppearance_AppCompat_Small 0x0 -+int style Base_TextAppearance_AppCompat_Small_Inverse 0x0 -+int style Base_TextAppearance_AppCompat_Subhead 0x0 -+int style Base_TextAppearance_AppCompat_Subhead_Inverse 0x0 -+int style Base_TextAppearance_AppCompat_Title 0x0 -+int style Base_TextAppearance_AppCompat_Title_Inverse 0x0 -+int style Base_TextAppearance_AppCompat_Tooltip 0x0 -+int style Base_TextAppearance_AppCompat_Widget_ActionBar_Menu 0x0 -+int style Base_TextAppearance_AppCompat_Widget_ActionBar_Subtitle 0x0 -+int style Base_TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse 0x0 -+int style Base_TextAppearance_AppCompat_Widget_ActionBar_Title 0x0 -+int style Base_TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse 0x0 -+int style Base_TextAppearance_AppCompat_Widget_ActionMode_Subtitle 0x0 -+int style Base_TextAppearance_AppCompat_Widget_ActionMode_Title 0x0 -+int style Base_TextAppearance_AppCompat_Widget_Button 0x0 -+int style Base_TextAppearance_AppCompat_Widget_Button_Borderless_Colored 0x0 -+int style Base_TextAppearance_AppCompat_Widget_Button_Colored 0x0 -+int style Base_TextAppearance_AppCompat_Widget_Button_Inverse 0x0 -+int style Base_TextAppearance_AppCompat_Widget_DropDownItem 0x0 -+int style Base_TextAppearance_AppCompat_Widget_PopupMenu_Header 0x0 -+int style Base_TextAppearance_AppCompat_Widget_PopupMenu_Large 0x0 -+int style Base_TextAppearance_AppCompat_Widget_PopupMenu_Small 0x0 -+int style Base_TextAppearance_AppCompat_Widget_Switch 0x0 -+int style Base_TextAppearance_AppCompat_Widget_TextView_SpinnerItem 0x0 -+int style Base_TextAppearance_Widget_AppCompat_ExpandedMenu_Item 0x0 -+int style Base_TextAppearance_Widget_AppCompat_Toolbar_Subtitle 0x0 -+int style Base_TextAppearance_Widget_AppCompat_Toolbar_Title 0x0 -+int style Base_ThemeOverlay_AppCompat 0x0 -+int style Base_ThemeOverlay_AppCompat_ActionBar 0x0 -+int style Base_ThemeOverlay_AppCompat_Dark 0x0 -+int style Base_ThemeOverlay_AppCompat_Dark_ActionBar 0x0 -+int style Base_ThemeOverlay_AppCompat_Dialog 0x0 -+int style Base_ThemeOverlay_AppCompat_Dialog_Alert 0x0 -+int style Base_ThemeOverlay_AppCompat_Light 0x0 -+int style Base_Theme_AppCompat 0x0 -+int style Base_Theme_AppCompat_CompactMenu 0x0 -+int style Base_Theme_AppCompat_Dialog 0x0 -+int style Base_Theme_AppCompat_DialogWhenLarge 0x0 -+int style Base_Theme_AppCompat_Dialog_Alert 0x0 -+int style Base_Theme_AppCompat_Dialog_FixedSize 0x0 -+int style Base_Theme_AppCompat_Dialog_MinWidth 0x0 -+int style Base_Theme_AppCompat_Light 0x0 -+int style Base_Theme_AppCompat_Light_DarkActionBar 0x0 -+int style Base_Theme_AppCompat_Light_Dialog 0x0 -+int style Base_Theme_AppCompat_Light_DialogWhenLarge 0x0 -+int style Base_Theme_AppCompat_Light_Dialog_Alert 0x0 -+int style Base_Theme_AppCompat_Light_Dialog_FixedSize 0x0 -+int style Base_Theme_AppCompat_Light_Dialog_MinWidth 0x0 -+int style Base_V21_ThemeOverlay_AppCompat_Dialog 0x0 -+int style Base_V21_Theme_AppCompat 0x0 -+int style Base_V21_Theme_AppCompat_Dialog 0x0 -+int style Base_V21_Theme_AppCompat_Light 0x0 -+int style Base_V21_Theme_AppCompat_Light_Dialog 0x0 -+int style Base_V22_Theme_AppCompat 0x0 -+int style Base_V22_Theme_AppCompat_Light 0x0 -+int style Base_V23_Theme_AppCompat 0x0 -+int style Base_V23_Theme_AppCompat_Light 0x0 -+int style Base_V26_Theme_AppCompat 0x0 -+int style Base_V26_Theme_AppCompat_Light 0x0 -+int style Base_V26_Widget_AppCompat_Toolbar 0x0 -+int style Base_V28_Theme_AppCompat 0x0 -+int style Base_V28_Theme_AppCompat_Light 0x0 -+int style Base_V7_ThemeOverlay_AppCompat_Dialog 0x0 -+int style Base_V7_Theme_AppCompat 0x0 -+int style Base_V7_Theme_AppCompat_Dialog 0x0 -+int style Base_V7_Theme_AppCompat_Light 0x0 -+int style Base_V7_Theme_AppCompat_Light_Dialog 0x0 -+int style Base_V7_Widget_AppCompat_AutoCompleteTextView 0x0 -+int style Base_V7_Widget_AppCompat_EditText 0x0 -+int style Base_V7_Widget_AppCompat_Toolbar 0x0 -+int style Base_Widget_AppCompat_ActionBar 0x0 -+int style Base_Widget_AppCompat_ActionBar_Solid 0x0 -+int style Base_Widget_AppCompat_ActionBar_TabBar 0x0 -+int style Base_Widget_AppCompat_ActionBar_TabText 0x0 -+int style Base_Widget_AppCompat_ActionBar_TabView 0x0 -+int style Base_Widget_AppCompat_ActionButton 0x0 -+int style Base_Widget_AppCompat_ActionButton_CloseMode 0x0 -+int style Base_Widget_AppCompat_ActionButton_Overflow 0x0 -+int style Base_Widget_AppCompat_ActionMode 0x0 -+int style Base_Widget_AppCompat_ActivityChooserView 0x0 -+int style Base_Widget_AppCompat_AutoCompleteTextView 0x0 -+int style Base_Widget_AppCompat_Button 0x0 -+int style Base_Widget_AppCompat_ButtonBar 0x0 -+int style Base_Widget_AppCompat_ButtonBar_AlertDialog 0x0 -+int style Base_Widget_AppCompat_Button_Borderless 0x0 -+int style Base_Widget_AppCompat_Button_Borderless_Colored 0x0 -+int style Base_Widget_AppCompat_Button_ButtonBar_AlertDialog 0x0 -+int style Base_Widget_AppCompat_Button_Colored 0x0 -+int style Base_Widget_AppCompat_Button_Small 0x0 -+int style Base_Widget_AppCompat_CompoundButton_CheckBox 0x0 -+int style Base_Widget_AppCompat_CompoundButton_RadioButton 0x0 -+int style Base_Widget_AppCompat_CompoundButton_Switch 0x0 -+int style Base_Widget_AppCompat_DrawerArrowToggle 0x0 -+int style Base_Widget_AppCompat_DrawerArrowToggle_Common 0x0 -+int style Base_Widget_AppCompat_DropDownItem_Spinner 0x0 -+int style Base_Widget_AppCompat_EditText 0x0 -+int style Base_Widget_AppCompat_ImageButton 0x0 -+int style Base_Widget_AppCompat_Light_ActionBar 0x0 -+int style Base_Widget_AppCompat_Light_ActionBar_Solid 0x0 -+int style Base_Widget_AppCompat_Light_ActionBar_TabBar 0x0 -+int style Base_Widget_AppCompat_Light_ActionBar_TabText 0x0 -+int style Base_Widget_AppCompat_Light_ActionBar_TabText_Inverse 0x0 -+int style Base_Widget_AppCompat_Light_ActionBar_TabView 0x0 -+int style Base_Widget_AppCompat_Light_PopupMenu 0x0 -+int style Base_Widget_AppCompat_Light_PopupMenu_Overflow 0x0 -+int style Base_Widget_AppCompat_ListMenuView 0x0 -+int style Base_Widget_AppCompat_ListPopupWindow 0x0 -+int style Base_Widget_AppCompat_ListView 0x0 -+int style Base_Widget_AppCompat_ListView_DropDown 0x0 -+int style Base_Widget_AppCompat_ListView_Menu 0x0 -+int style Base_Widget_AppCompat_PopupMenu 0x0 -+int style Base_Widget_AppCompat_PopupMenu_Overflow 0x0 -+int style Base_Widget_AppCompat_PopupWindow 0x0 -+int style Base_Widget_AppCompat_ProgressBar 0x0 -+int style Base_Widget_AppCompat_ProgressBar_Horizontal 0x0 -+int style Base_Widget_AppCompat_RatingBar 0x0 -+int style Base_Widget_AppCompat_RatingBar_Indicator 0x0 -+int style Base_Widget_AppCompat_RatingBar_Small 0x0 -+int style Base_Widget_AppCompat_SearchView 0x0 -+int style Base_Widget_AppCompat_SearchView_ActionBar 0x0 -+int style Base_Widget_AppCompat_SeekBar 0x0 -+int style Base_Widget_AppCompat_SeekBar_Discrete 0x0 -+int style Base_Widget_AppCompat_Spinner 0x0 -+int style Base_Widget_AppCompat_Spinner_Underlined 0x0 -+int style Base_Widget_AppCompat_TextView 0x0 -+int style Base_Widget_AppCompat_TextView_SpinnerItem 0x0 -+int style Base_Widget_AppCompat_Toolbar 0x0 -+int style Base_Widget_AppCompat_Toolbar_Button_Navigation 0x0 -+int style CalendarDatePickerDialog 0x0 -+int style CalendarDatePickerStyle 0x0 -+int style DialogAnimationFade 0x0 -+int style DialogAnimationSlide 0x0 -+int style Platform_AppCompat 0x0 -+int style Platform_AppCompat_Light 0x0 -+int style Platform_ThemeOverlay_AppCompat 0x0 -+int style Platform_ThemeOverlay_AppCompat_Dark 0x0 -+int style Platform_ThemeOverlay_AppCompat_Light 0x0 -+int style Platform_V21_AppCompat 0x0 -+int style Platform_V21_AppCompat_Light 0x0 -+int style Platform_V25_AppCompat 0x0 -+int style Platform_V25_AppCompat_Light 0x0 -+int style Platform_Widget_AppCompat_Spinner 0x0 -+int style RtlOverlay_DialogWindowTitle_AppCompat 0x0 -+int style RtlOverlay_Widget_AppCompat_ActionBar_TitleItem 0x0 -+int style RtlOverlay_Widget_AppCompat_DialogTitle_Icon 0x0 -+int style RtlOverlay_Widget_AppCompat_PopupMenuItem 0x0 -+int style RtlOverlay_Widget_AppCompat_PopupMenuItem_InternalGroup 0x0 -+int style RtlOverlay_Widget_AppCompat_PopupMenuItem_Shortcut 0x0 -+int style RtlOverlay_Widget_AppCompat_PopupMenuItem_SubmenuArrow 0x0 -+int style RtlOverlay_Widget_AppCompat_PopupMenuItem_Text 0x0 -+int style RtlOverlay_Widget_AppCompat_PopupMenuItem_Title 0x0 -+int style RtlOverlay_Widget_AppCompat_SearchView_MagIcon 0x0 -+int style RtlOverlay_Widget_AppCompat_Search_DropDown 0x0 -+int style RtlOverlay_Widget_AppCompat_Search_DropDown_Icon1 0x0 -+int style RtlOverlay_Widget_AppCompat_Search_DropDown_Icon2 0x0 -+int style RtlOverlay_Widget_AppCompat_Search_DropDown_Query 0x0 -+int style RtlOverlay_Widget_AppCompat_Search_DropDown_Text 0x0 -+int style RtlUnderlay_Widget_AppCompat_ActionButton 0x0 -+int style RtlUnderlay_Widget_AppCompat_ActionButton_Overflow 0x0 -+int style SpinnerDatePickerDialog 0x0 -+int style SpinnerDatePickerStyle 0x0 -+int style TextAppearance_AppCompat 0x0 -+int style TextAppearance_AppCompat_Body1 0x0 -+int style TextAppearance_AppCompat_Body2 0x0 -+int style TextAppearance_AppCompat_Button 0x0 -+int style TextAppearance_AppCompat_Caption 0x0 -+int style TextAppearance_AppCompat_Display1 0x0 -+int style TextAppearance_AppCompat_Display2 0x0 -+int style TextAppearance_AppCompat_Display3 0x0 -+int style TextAppearance_AppCompat_Display4 0x0 -+int style TextAppearance_AppCompat_Headline 0x0 -+int style TextAppearance_AppCompat_Inverse 0x0 -+int style TextAppearance_AppCompat_Large 0x0 -+int style TextAppearance_AppCompat_Large_Inverse 0x0 -+int style TextAppearance_AppCompat_Light_SearchResult_Subtitle 0x0 -+int style TextAppearance_AppCompat_Light_SearchResult_Title 0x0 -+int style TextAppearance_AppCompat_Light_Widget_PopupMenu_Large 0x0 -+int style TextAppearance_AppCompat_Light_Widget_PopupMenu_Small 0x0 -+int style TextAppearance_AppCompat_Medium 0x0 -+int style TextAppearance_AppCompat_Medium_Inverse 0x0 -+int style TextAppearance_AppCompat_Menu 0x0 -+int style TextAppearance_AppCompat_SearchResult_Subtitle 0x0 -+int style TextAppearance_AppCompat_SearchResult_Title 0x0 -+int style TextAppearance_AppCompat_Small 0x0 -+int style TextAppearance_AppCompat_Small_Inverse 0x0 -+int style TextAppearance_AppCompat_Subhead 0x0 -+int style TextAppearance_AppCompat_Subhead_Inverse 0x0 -+int style TextAppearance_AppCompat_Title 0x0 -+int style TextAppearance_AppCompat_Title_Inverse 0x0 -+int style TextAppearance_AppCompat_Tooltip 0x0 -+int style TextAppearance_AppCompat_Widget_ActionBar_Menu 0x0 -+int style TextAppearance_AppCompat_Widget_ActionBar_Subtitle 0x0 -+int style TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse 0x0 -+int style TextAppearance_AppCompat_Widget_ActionBar_Title 0x0 -+int style TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse 0x0 -+int style TextAppearance_AppCompat_Widget_ActionMode_Subtitle 0x0 -+int style TextAppearance_AppCompat_Widget_ActionMode_Subtitle_Inverse 0x0 -+int style TextAppearance_AppCompat_Widget_ActionMode_Title 0x0 -+int style TextAppearance_AppCompat_Widget_ActionMode_Title_Inverse 0x0 -+int style TextAppearance_AppCompat_Widget_Button 0x0 -+int style TextAppearance_AppCompat_Widget_Button_Borderless_Colored 0x0 -+int style TextAppearance_AppCompat_Widget_Button_Colored 0x0 -+int style TextAppearance_AppCompat_Widget_Button_Inverse 0x0 -+int style TextAppearance_AppCompat_Widget_DropDownItem 0x0 -+int style TextAppearance_AppCompat_Widget_PopupMenu_Header 0x0 -+int style TextAppearance_AppCompat_Widget_PopupMenu_Large 0x0 -+int style TextAppearance_AppCompat_Widget_PopupMenu_Small 0x0 -+int style TextAppearance_AppCompat_Widget_Switch 0x0 -+int style TextAppearance_AppCompat_Widget_TextView_SpinnerItem 0x0 -+int style TextAppearance_Compat_Notification 0x0 -+int style TextAppearance_Compat_Notification_Info 0x0 -+int style TextAppearance_Compat_Notification_Line2 0x0 -+int style TextAppearance_Compat_Notification_Time 0x0 -+int style TextAppearance_Compat_Notification_Title 0x0 -+int style TextAppearance_Widget_AppCompat_ExpandedMenu_Item 0x0 -+int style TextAppearance_Widget_AppCompat_Toolbar_Subtitle 0x0 -+int style TextAppearance_Widget_AppCompat_Toolbar_Title 0x0 -+int style Theme 0x0 -+int style ThemeOverlay_AppCompat 0x0 -+int style ThemeOverlay_AppCompat_ActionBar 0x0 -+int style ThemeOverlay_AppCompat_Dark 0x0 -+int style ThemeOverlay_AppCompat_Dark_ActionBar 0x0 -+int style ThemeOverlay_AppCompat_DayNight 0x0 -+int style ThemeOverlay_AppCompat_DayNight_ActionBar 0x0 -+int style ThemeOverlay_AppCompat_Dialog 0x0 -+int style ThemeOverlay_AppCompat_Dialog_Alert 0x0 -+int style ThemeOverlay_AppCompat_Light 0x0 -+int style Theme_AppCompat 0x0 -+int style Theme_AppCompat_CompactMenu 0x0 -+int style Theme_AppCompat_DayNight 0x0 -+int style Theme_AppCompat_DayNight_DarkActionBar 0x0 -+int style Theme_AppCompat_DayNight_Dialog 0x0 -+int style Theme_AppCompat_DayNight_DialogWhenLarge 0x0 -+int style Theme_AppCompat_DayNight_Dialog_Alert 0x0 -+int style Theme_AppCompat_DayNight_Dialog_MinWidth 0x0 -+int style Theme_AppCompat_DayNight_NoActionBar 0x0 -+int style Theme_AppCompat_Dialog 0x0 -+int style Theme_AppCompat_DialogWhenLarge 0x0 -+int style Theme_AppCompat_Dialog_Alert 0x0 -+int style Theme_AppCompat_Dialog_MinWidth 0x0 -+int style Theme_AppCompat_Empty 0x0 -+int style Theme_AppCompat_Light 0x0 -+int style Theme_AppCompat_Light_DarkActionBar 0x0 -+int style Theme_AppCompat_Light_Dialog 0x0 -+int style Theme_AppCompat_Light_DialogWhenLarge 0x0 -+int style Theme_AppCompat_Light_Dialog_Alert 0x0 -+int style Theme_AppCompat_Light_Dialog_MinWidth 0x0 -+int style Theme_AppCompat_Light_NoActionBar 0x0 -+int style Theme_AppCompat_NoActionBar 0x0 -+int style Theme_AutofillInlineSuggestion 0x0 -+int style Theme_Catalyst 0x0 -+int style Theme_Catalyst_LogBox 0x0 -+int style Theme_Catalyst_RedBox 0x0 -+int style Theme_FullScreenDialog 0x0 -+int style Theme_FullScreenDialogAnimatedFade 0x0 -+int style Theme_FullScreenDialogAnimatedSlide 0x0 -+int style Theme_ReactNative_AppCompat_Light 0x0 -+int style Theme_ReactNative_AppCompat_Light_NoActionBar_FullScreen 0x0 -+int style Widget_AppCompat_ActionBar 0x0 -+int style Widget_AppCompat_ActionBar_Solid 0x0 -+int style Widget_AppCompat_ActionBar_TabBar 0x0 -+int style Widget_AppCompat_ActionBar_TabText 0x0 -+int style Widget_AppCompat_ActionBar_TabView 0x0 -+int style Widget_AppCompat_ActionButton 0x0 -+int style Widget_AppCompat_ActionButton_CloseMode 0x0 -+int style Widget_AppCompat_ActionButton_Overflow 0x0 -+int style Widget_AppCompat_ActionMode 0x0 -+int style Widget_AppCompat_ActivityChooserView 0x0 -+int style Widget_AppCompat_AutoCompleteTextView 0x0 -+int style Widget_AppCompat_Button 0x0 -+int style Widget_AppCompat_ButtonBar 0x0 -+int style Widget_AppCompat_ButtonBar_AlertDialog 0x0 -+int style Widget_AppCompat_Button_Borderless 0x0 -+int style Widget_AppCompat_Button_Borderless_Colored 0x0 -+int style Widget_AppCompat_Button_ButtonBar_AlertDialog 0x0 -+int style Widget_AppCompat_Button_Colored 0x0 -+int style Widget_AppCompat_Button_Small 0x0 -+int style Widget_AppCompat_CompoundButton_CheckBox 0x0 -+int style Widget_AppCompat_CompoundButton_RadioButton 0x0 -+int style Widget_AppCompat_CompoundButton_Switch 0x0 -+int style Widget_AppCompat_DrawerArrowToggle 0x0 -+int style Widget_AppCompat_DropDownItem_Spinner 0x0 -+int style Widget_AppCompat_EditText 0x0 -+int style Widget_AppCompat_ImageButton 0x0 -+int style Widget_AppCompat_Light_ActionBar 0x0 -+int style Widget_AppCompat_Light_ActionBar_Solid 0x0 -+int style Widget_AppCompat_Light_ActionBar_Solid_Inverse 0x0 -+int style Widget_AppCompat_Light_ActionBar_TabBar 0x0 -+int style Widget_AppCompat_Light_ActionBar_TabBar_Inverse 0x0 -+int style Widget_AppCompat_Light_ActionBar_TabText 0x0 -+int style Widget_AppCompat_Light_ActionBar_TabText_Inverse 0x0 -+int style Widget_AppCompat_Light_ActionBar_TabView 0x0 -+int style Widget_AppCompat_Light_ActionBar_TabView_Inverse 0x0 -+int style Widget_AppCompat_Light_ActionButton 0x0 -+int style Widget_AppCompat_Light_ActionButton_CloseMode 0x0 -+int style Widget_AppCompat_Light_ActionButton_Overflow 0x0 -+int style Widget_AppCompat_Light_ActionMode_Inverse 0x0 -+int style Widget_AppCompat_Light_ActivityChooserView 0x0 -+int style Widget_AppCompat_Light_AutoCompleteTextView 0x0 -+int style Widget_AppCompat_Light_DropDownItem_Spinner 0x0 -+int style Widget_AppCompat_Light_ListPopupWindow 0x0 -+int style Widget_AppCompat_Light_ListView_DropDown 0x0 -+int style Widget_AppCompat_Light_PopupMenu 0x0 -+int style Widget_AppCompat_Light_PopupMenu_Overflow 0x0 -+int style Widget_AppCompat_Light_SearchView 0x0 -+int style Widget_AppCompat_Light_Spinner_DropDown_ActionBar 0x0 -+int style Widget_AppCompat_ListMenuView 0x0 -+int style Widget_AppCompat_ListPopupWindow 0x0 -+int style Widget_AppCompat_ListView 0x0 -+int style Widget_AppCompat_ListView_DropDown 0x0 -+int style Widget_AppCompat_ListView_Menu 0x0 -+int style Widget_AppCompat_PopupMenu 0x0 -+int style Widget_AppCompat_PopupMenu_Overflow 0x0 -+int style Widget_AppCompat_PopupWindow 0x0 -+int style Widget_AppCompat_ProgressBar 0x0 -+int style Widget_AppCompat_ProgressBar_Horizontal 0x0 -+int style Widget_AppCompat_RatingBar 0x0 -+int style Widget_AppCompat_RatingBar_Indicator 0x0 -+int style Widget_AppCompat_RatingBar_Small 0x0 -+int style Widget_AppCompat_SearchView 0x0 -+int style Widget_AppCompat_SearchView_ActionBar 0x0 -+int style Widget_AppCompat_SeekBar 0x0 -+int style Widget_AppCompat_SeekBar_Discrete 0x0 -+int style Widget_AppCompat_Spinner 0x0 -+int style Widget_AppCompat_Spinner_DropDown 0x0 -+int style Widget_AppCompat_Spinner_DropDown_ActionBar 0x0 -+int style Widget_AppCompat_Spinner_Underlined 0x0 -+int style Widget_AppCompat_TextView 0x0 -+int style Widget_AppCompat_TextView_SpinnerItem 0x0 -+int style Widget_AppCompat_Toolbar 0x0 -+int style Widget_AppCompat_Toolbar_Button_Navigation 0x0 -+int style Widget_Autofill 0x0 -+int style Widget_Autofill_InlineSuggestionChip 0x0 -+int style Widget_Autofill_InlineSuggestionEndIconStyle 0x0 -+int style Widget_Autofill_InlineSuggestionStartIconStyle 0x0 -+int style Widget_Autofill_InlineSuggestionSubtitle 0x0 -+int style Widget_Autofill_InlineSuggestionTitle 0x0 -+int style Widget_Compat_NotificationActionContainer 0x0 -+int style Widget_Compat_NotificationActionText 0x0 -+int style redboxButton 0x0 -+int[] styleable ActionBar { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable ActionBar_background 0 -+int styleable ActionBar_backgroundSplit 1 -+int styleable ActionBar_backgroundStacked 2 -+int styleable ActionBar_contentInsetEnd 3 -+int styleable ActionBar_contentInsetEndWithActions 4 -+int styleable ActionBar_contentInsetLeft 5 -+int styleable ActionBar_contentInsetRight 6 -+int styleable ActionBar_contentInsetStart 7 -+int styleable ActionBar_contentInsetStartWithNavigation 8 -+int styleable ActionBar_customNavigationLayout 9 -+int styleable ActionBar_displayOptions 10 -+int styleable ActionBar_divider 11 -+int styleable ActionBar_elevation 12 -+int styleable ActionBar_height 13 -+int styleable ActionBar_hideOnContentScroll 14 -+int styleable ActionBar_homeAsUpIndicator 15 -+int styleable ActionBar_homeLayout 16 -+int styleable ActionBar_icon 17 -+int styleable ActionBar_indeterminateProgressStyle 18 -+int styleable ActionBar_itemPadding 19 -+int styleable ActionBar_logo 20 -+int styleable ActionBar_navigationMode 21 -+int styleable ActionBar_popupTheme 22 -+int styleable ActionBar_progressBarPadding 23 -+int styleable ActionBar_progressBarStyle 24 -+int styleable ActionBar_subtitle 25 -+int styleable ActionBar_subtitleTextStyle 26 -+int styleable ActionBar_title 27 -+int styleable ActionBar_titleTextStyle 28 -+int[] styleable ActionBarLayout { 0x10100b3 } -+int styleable ActionBarLayout_android_layout_gravity 0 -+int[] styleable ActionMenuItemView { 0x101013f } -+int styleable ActionMenuItemView_android_minWidth 0 -+int[] styleable ActionMenuView { } -+int[] styleable ActionMode { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable ActionMode_background 0 -+int styleable ActionMode_backgroundSplit 1 -+int styleable ActionMode_closeItemLayout 2 -+int styleable ActionMode_height 3 -+int styleable ActionMode_subtitleTextStyle 4 -+int styleable ActionMode_titleTextStyle 5 -+int[] styleable ActivityChooserView { 0x0, 0x0 } -+int styleable ActivityChooserView_expandActivityOverflowButtonDrawable 0 -+int styleable ActivityChooserView_initialActivityCount 1 -+int[] styleable AlertDialog { 0x10100f2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable AlertDialog_android_layout 0 -+int styleable AlertDialog_buttonIconDimen 1 -+int styleable AlertDialog_buttonPanelSideLayout 2 -+int styleable AlertDialog_listItemLayout 3 -+int styleable AlertDialog_listLayout 4 -+int styleable AlertDialog_multiChoiceItemLayout 5 -+int styleable AlertDialog_showTitle 6 -+int styleable AlertDialog_singleChoiceItemLayout 7 -+int[] styleable AnimatedStateListDrawableCompat { 0x1010196, 0x101011c, 0x101030c, 0x101030d, 0x1010195, 0x1010194 } -+int styleable AnimatedStateListDrawableCompat_android_constantSize 0 -+int styleable AnimatedStateListDrawableCompat_android_dither 1 -+int styleable AnimatedStateListDrawableCompat_android_enterFadeDuration 2 -+int styleable AnimatedStateListDrawableCompat_android_exitFadeDuration 3 -+int styleable AnimatedStateListDrawableCompat_android_variablePadding 4 -+int styleable AnimatedStateListDrawableCompat_android_visible 5 -+int[] styleable AnimatedStateListDrawableItem { 0x1010199, 0x10100d0 } -+int styleable AnimatedStateListDrawableItem_android_drawable 0 -+int styleable AnimatedStateListDrawableItem_android_id 1 -+int[] styleable AnimatedStateListDrawableTransition { 0x1010199, 0x101044a, 0x101044b, 0x1010449 } -+int styleable AnimatedStateListDrawableTransition_android_drawable 0 -+int styleable AnimatedStateListDrawableTransition_android_fromId 1 -+int styleable AnimatedStateListDrawableTransition_android_reversible 2 -+int styleable AnimatedStateListDrawableTransition_android_toId 3 -+int[] styleable AppCompatEmojiHelper { } -+int[] styleable AppCompatImageView { 0x1010119, 0x0, 0x0, 0x0 } -+int styleable AppCompatImageView_android_src 0 -+int styleable AppCompatImageView_srcCompat 1 -+int styleable AppCompatImageView_tint 2 -+int styleable AppCompatImageView_tintMode 3 -+int[] styleable AppCompatSeekBar { 0x1010142, 0x0, 0x0, 0x0 } -+int styleable AppCompatSeekBar_android_thumb 0 -+int styleable AppCompatSeekBar_tickMark 1 -+int styleable AppCompatSeekBar_tickMarkTint 2 -+int styleable AppCompatSeekBar_tickMarkTintMode 3 -+int[] styleable AppCompatTextHelper { 0x101016e, 0x1010393, 0x101016f, 0x1010170, 0x1010392, 0x101016d, 0x1010034 } -+int styleable AppCompatTextHelper_android_drawableBottom 0 -+int styleable AppCompatTextHelper_android_drawableEnd 1 -+int styleable AppCompatTextHelper_android_drawableLeft 2 -+int styleable AppCompatTextHelper_android_drawableRight 3 -+int styleable AppCompatTextHelper_android_drawableStart 4 -+int styleable AppCompatTextHelper_android_drawableTop 5 -+int styleable AppCompatTextHelper_android_textAppearance 6 -+int[] styleable AppCompatTextView { 0x1010034, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable AppCompatTextView_android_textAppearance 0 -+int styleable AppCompatTextView_autoSizeMaxTextSize 1 -+int styleable AppCompatTextView_autoSizeMinTextSize 2 -+int styleable AppCompatTextView_autoSizePresetSizes 3 -+int styleable AppCompatTextView_autoSizeStepGranularity 4 -+int styleable AppCompatTextView_autoSizeTextType 5 -+int styleable AppCompatTextView_drawableBottomCompat 6 -+int styleable AppCompatTextView_drawableEndCompat 7 -+int styleable AppCompatTextView_drawableLeftCompat 8 -+int styleable AppCompatTextView_drawableRightCompat 9 -+int styleable AppCompatTextView_drawableStartCompat 10 -+int styleable AppCompatTextView_drawableTint 11 -+int styleable AppCompatTextView_drawableTintMode 12 -+int styleable AppCompatTextView_drawableTopCompat 13 -+int styleable AppCompatTextView_emojiCompatEnabled 14 -+int styleable AppCompatTextView_firstBaselineToTopHeight 15 -+int styleable AppCompatTextView_fontFamily 16 -+int styleable AppCompatTextView_fontVariationSettings 17 -+int styleable AppCompatTextView_lastBaselineToBottomHeight 18 -+int styleable AppCompatTextView_lineHeight 19 -+int styleable AppCompatTextView_textAllCaps 20 -+int styleable AppCompatTextView_textLocale 21 -+int[] styleable AppCompatTheme { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x10100ae, 0x1010057, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable AppCompatTheme_actionBarDivider 0 -+int styleable AppCompatTheme_actionBarItemBackground 1 -+int styleable AppCompatTheme_actionBarPopupTheme 2 -+int styleable AppCompatTheme_actionBarSize 3 -+int styleable AppCompatTheme_actionBarSplitStyle 4 -+int styleable AppCompatTheme_actionBarStyle 5 -+int styleable AppCompatTheme_actionBarTabBarStyle 6 -+int styleable AppCompatTheme_actionBarTabStyle 7 -+int styleable AppCompatTheme_actionBarTabTextStyle 8 -+int styleable AppCompatTheme_actionBarTheme 9 -+int styleable AppCompatTheme_actionBarWidgetTheme 10 -+int styleable AppCompatTheme_actionButtonStyle 11 -+int styleable AppCompatTheme_actionDropDownStyle 12 -+int styleable AppCompatTheme_actionMenuTextAppearance 13 -+int styleable AppCompatTheme_actionMenuTextColor 14 -+int styleable AppCompatTheme_actionModeBackground 15 -+int styleable AppCompatTheme_actionModeCloseButtonStyle 16 -+int styleable AppCompatTheme_actionModeCloseContentDescription 17 -+int styleable AppCompatTheme_actionModeCloseDrawable 18 -+int styleable AppCompatTheme_actionModeCopyDrawable 19 -+int styleable AppCompatTheme_actionModeCutDrawable 20 -+int styleable AppCompatTheme_actionModeFindDrawable 21 -+int styleable AppCompatTheme_actionModePasteDrawable 22 -+int styleable AppCompatTheme_actionModePopupWindowStyle 23 -+int styleable AppCompatTheme_actionModeSelectAllDrawable 24 -+int styleable AppCompatTheme_actionModeShareDrawable 25 -+int styleable AppCompatTheme_actionModeSplitBackground 26 -+int styleable AppCompatTheme_actionModeStyle 27 -+int styleable AppCompatTheme_actionModeTheme 28 -+int styleable AppCompatTheme_actionModeWebSearchDrawable 29 -+int styleable AppCompatTheme_actionOverflowButtonStyle 30 -+int styleable AppCompatTheme_actionOverflowMenuStyle 31 -+int styleable AppCompatTheme_activityChooserViewStyle 32 -+int styleable AppCompatTheme_alertDialogButtonGroupStyle 33 -+int styleable AppCompatTheme_alertDialogCenterButtons 34 -+int styleable AppCompatTheme_alertDialogStyle 35 -+int styleable AppCompatTheme_alertDialogTheme 36 -+int styleable AppCompatTheme_android_windowAnimationStyle 37 -+int styleable AppCompatTheme_android_windowIsFloating 38 -+int styleable AppCompatTheme_autoCompleteTextViewStyle 39 -+int styleable AppCompatTheme_borderlessButtonStyle 40 -+int styleable AppCompatTheme_buttonBarButtonStyle 41 -+int styleable AppCompatTheme_buttonBarNegativeButtonStyle 42 -+int styleable AppCompatTheme_buttonBarNeutralButtonStyle 43 -+int styleable AppCompatTheme_buttonBarPositiveButtonStyle 44 -+int styleable AppCompatTheme_buttonBarStyle 45 -+int styleable AppCompatTheme_buttonStyle 46 -+int styleable AppCompatTheme_buttonStyleSmall 47 -+int styleable AppCompatTheme_checkboxStyle 48 -+int styleable AppCompatTheme_checkedTextViewStyle 49 -+int styleable AppCompatTheme_colorAccent 50 -+int styleable AppCompatTheme_colorBackgroundFloating 51 -+int styleable AppCompatTheme_colorButtonNormal 52 -+int styleable AppCompatTheme_colorControlActivated 53 -+int styleable AppCompatTheme_colorControlHighlight 54 -+int styleable AppCompatTheme_colorControlNormal 55 -+int styleable AppCompatTheme_colorError 56 -+int styleable AppCompatTheme_colorPrimary 57 -+int styleable AppCompatTheme_colorPrimaryDark 58 -+int styleable AppCompatTheme_colorSwitchThumbNormal 59 -+int styleable AppCompatTheme_controlBackground 60 -+int styleable AppCompatTheme_dialogCornerRadius 61 -+int styleable AppCompatTheme_dialogPreferredPadding 62 -+int styleable AppCompatTheme_dialogTheme 63 -+int styleable AppCompatTheme_dividerHorizontal 64 -+int styleable AppCompatTheme_dividerVertical 65 -+int styleable AppCompatTheme_dropDownListViewStyle 66 -+int styleable AppCompatTheme_dropdownListPreferredItemHeight 67 -+int styleable AppCompatTheme_editTextBackground 68 -+int styleable AppCompatTheme_editTextColor 69 -+int styleable AppCompatTheme_editTextStyle 70 -+int styleable AppCompatTheme_homeAsUpIndicator 71 -+int styleable AppCompatTheme_imageButtonStyle 72 -+int styleable AppCompatTheme_listChoiceBackgroundIndicator 73 -+int styleable AppCompatTheme_listChoiceIndicatorMultipleAnimated 74 -+int styleable AppCompatTheme_listChoiceIndicatorSingleAnimated 75 -+int styleable AppCompatTheme_listDividerAlertDialog 76 -+int styleable AppCompatTheme_listMenuViewStyle 77 -+int styleable AppCompatTheme_listPopupWindowStyle 78 -+int styleable AppCompatTheme_listPreferredItemHeight 79 -+int styleable AppCompatTheme_listPreferredItemHeightLarge 80 -+int styleable AppCompatTheme_listPreferredItemHeightSmall 81 -+int styleable AppCompatTheme_listPreferredItemPaddingEnd 82 -+int styleable AppCompatTheme_listPreferredItemPaddingLeft 83 -+int styleable AppCompatTheme_listPreferredItemPaddingRight 84 -+int styleable AppCompatTheme_listPreferredItemPaddingStart 85 -+int styleable AppCompatTheme_panelBackground 86 -+int styleable AppCompatTheme_panelMenuListTheme 87 -+int styleable AppCompatTheme_panelMenuListWidth 88 -+int styleable AppCompatTheme_popupMenuStyle 89 -+int styleable AppCompatTheme_popupWindowStyle 90 -+int styleable AppCompatTheme_radioButtonStyle 91 -+int styleable AppCompatTheme_ratingBarStyle 92 -+int styleable AppCompatTheme_ratingBarStyleIndicator 93 -+int styleable AppCompatTheme_ratingBarStyleSmall 94 -+int styleable AppCompatTheme_searchViewStyle 95 -+int styleable AppCompatTheme_seekBarStyle 96 -+int styleable AppCompatTheme_selectableItemBackground 97 -+int styleable AppCompatTheme_selectableItemBackgroundBorderless 98 -+int styleable AppCompatTheme_spinnerDropDownItemStyle 99 -+int styleable AppCompatTheme_spinnerStyle 100 -+int styleable AppCompatTheme_switchStyle 101 -+int styleable AppCompatTheme_textAppearanceLargePopupMenu 102 -+int styleable AppCompatTheme_textAppearanceListItem 103 -+int styleable AppCompatTheme_textAppearanceListItemSecondary 104 -+int styleable AppCompatTheme_textAppearanceListItemSmall 105 -+int styleable AppCompatTheme_textAppearancePopupMenuHeader 106 -+int styleable AppCompatTheme_textAppearanceSearchResultSubtitle 107 -+int styleable AppCompatTheme_textAppearanceSearchResultTitle 108 -+int styleable AppCompatTheme_textAppearanceSmallPopupMenu 109 -+int styleable AppCompatTheme_textColorAlertDialogListItem 110 -+int styleable AppCompatTheme_textColorSearchUrl 111 -+int styleable AppCompatTheme_toolbarNavigationButtonStyle 112 -+int styleable AppCompatTheme_toolbarStyle 113 -+int styleable AppCompatTheme_tooltipForegroundColor 114 -+int styleable AppCompatTheme_tooltipFrameBackground 115 -+int styleable AppCompatTheme_viewInflaterClass 116 -+int styleable AppCompatTheme_windowActionBar 117 -+int styleable AppCompatTheme_windowActionBarOverlay 118 -+int styleable AppCompatTheme_windowActionModeOverlay 119 -+int styleable AppCompatTheme_windowFixedHeightMajor 120 -+int styleable AppCompatTheme_windowFixedHeightMinor 121 -+int styleable AppCompatTheme_windowFixedWidthMajor 122 -+int styleable AppCompatTheme_windowFixedWidthMinor 123 -+int styleable AppCompatTheme_windowMinWidthMajor 124 -+int styleable AppCompatTheme_windowMinWidthMinor 125 -+int styleable AppCompatTheme_windowNoTitle 126 -+int[] styleable Autofill_InlineSuggestion { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable Autofill_InlineSuggestion_autofillInlineSuggestionChip 0 -+int styleable Autofill_InlineSuggestion_autofillInlineSuggestionEndIconStyle 1 -+int styleable Autofill_InlineSuggestion_autofillInlineSuggestionStartIconStyle 2 -+int styleable Autofill_InlineSuggestion_autofillInlineSuggestionSubtitle 3 -+int styleable Autofill_InlineSuggestion_autofillInlineSuggestionTitle 4 -+int styleable Autofill_InlineSuggestion_isAutofillInlineSuggestionTheme 5 -+int[] styleable ButtonBarLayout { 0x0 } -+int styleable ButtonBarLayout_allowStacking 0 -+int[] styleable Capability { 0x0, 0x0 } -+int styleable Capability_queryPatterns 0 -+int styleable Capability_shortcutMatchRequired 1 -+int[] styleable CheckedTextView { 0x1010108, 0x0, 0x0, 0x0 } -+int styleable CheckedTextView_android_checkMark 0 -+int styleable CheckedTextView_checkMarkCompat 1 -+int styleable CheckedTextView_checkMarkTint 2 -+int styleable CheckedTextView_checkMarkTintMode 3 -+int[] styleable ColorStateListItem { 0x0, 0x101031f, 0x10101a5, 0x1010647, 0x0 } -+int styleable ColorStateListItem_alpha 0 -+int styleable ColorStateListItem_android_alpha 1 -+int styleable ColorStateListItem_android_color 2 -+int styleable ColorStateListItem_android_lStar 3 -+int styleable ColorStateListItem_lStar 4 -+int[] styleable CompoundButton { 0x1010107, 0x0, 0x0, 0x0 } -+int styleable CompoundButton_android_button 0 -+int styleable CompoundButton_buttonCompat 1 -+int styleable CompoundButton_buttonTint 2 -+int styleable CompoundButton_buttonTintMode 3 -+int[] styleable DrawerArrowToggle { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable DrawerArrowToggle_arrowHeadLength 0 -+int styleable DrawerArrowToggle_arrowShaftLength 1 -+int styleable DrawerArrowToggle_barLength 2 -+int styleable DrawerArrowToggle_color 3 -+int styleable DrawerArrowToggle_drawableSize 4 -+int styleable DrawerArrowToggle_gapBetweenBars 5 -+int styleable DrawerArrowToggle_spinBars 6 -+int styleable DrawerArrowToggle_thickness 7 -+int[] styleable FontFamily { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable FontFamily_fontProviderAuthority 0 -+int styleable FontFamily_fontProviderCerts 1 -+int styleable FontFamily_fontProviderFetchStrategy 2 -+int styleable FontFamily_fontProviderFetchTimeout 3 -+int styleable FontFamily_fontProviderPackage 4 -+int styleable FontFamily_fontProviderQuery 5 -+int styleable FontFamily_fontProviderSystemFontFamily 6 -+int[] styleable FontFamilyFont { 0x1010532, 0x101053f, 0x1010570, 0x1010533, 0x101056f, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable FontFamilyFont_android_font 0 -+int styleable FontFamilyFont_android_fontStyle 1 -+int styleable FontFamilyFont_android_fontVariationSettings 2 -+int styleable FontFamilyFont_android_fontWeight 3 -+int styleable FontFamilyFont_android_ttcIndex 4 -+int styleable FontFamilyFont_font 5 -+int styleable FontFamilyFont_fontStyle 6 -+int styleable FontFamilyFont_fontVariationSettings 7 -+int styleable FontFamilyFont_fontWeight 8 -+int styleable FontFamilyFont_ttcIndex 9 -+int[] styleable Fragment { 0x10100d0, 0x1010003, 0x10100d1 } -+int styleable Fragment_android_id 0 -+int styleable Fragment_android_name 1 -+int styleable Fragment_android_tag 2 -+int[] styleable FragmentContainerView { 0x1010003, 0x10100d1 } -+int styleable FragmentContainerView_android_name 0 -+int styleable FragmentContainerView_android_tag 1 -+int[] styleable GenericDraweeHierarchy { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable GenericDraweeHierarchy_actualImageScaleType 0 -+int styleable GenericDraweeHierarchy_backgroundImage 1 -+int styleable GenericDraweeHierarchy_fadeDuration 2 -+int styleable GenericDraweeHierarchy_failureImage 3 -+int styleable GenericDraweeHierarchy_failureImageScaleType 4 -+int styleable GenericDraweeHierarchy_overlayImage 5 -+int styleable GenericDraweeHierarchy_placeholderImage 6 -+int styleable GenericDraweeHierarchy_placeholderImageScaleType 7 -+int styleable GenericDraweeHierarchy_pressedStateOverlayImage 8 -+int styleable GenericDraweeHierarchy_progressBarAutoRotateInterval 9 -+int styleable GenericDraweeHierarchy_progressBarImage 10 -+int styleable GenericDraweeHierarchy_progressBarImageScaleType 11 -+int styleable GenericDraweeHierarchy_retryImage 12 -+int styleable GenericDraweeHierarchy_retryImageScaleType 13 -+int styleable GenericDraweeHierarchy_roundAsCircle 14 -+int styleable GenericDraweeHierarchy_roundBottomEnd 15 -+int styleable GenericDraweeHierarchy_roundBottomLeft 16 -+int styleable GenericDraweeHierarchy_roundBottomRight 17 -+int styleable GenericDraweeHierarchy_roundBottomStart 18 -+int styleable GenericDraweeHierarchy_roundTopEnd 19 -+int styleable GenericDraweeHierarchy_roundTopLeft 20 -+int styleable GenericDraweeHierarchy_roundTopRight 21 -+int styleable GenericDraweeHierarchy_roundTopStart 22 -+int styleable GenericDraweeHierarchy_roundWithOverlayColor 23 -+int styleable GenericDraweeHierarchy_roundedCornerRadius 24 -+int styleable GenericDraweeHierarchy_roundingBorderColor 25 -+int styleable GenericDraweeHierarchy_roundingBorderPadding 26 -+int styleable GenericDraweeHierarchy_roundingBorderWidth 27 -+int styleable GenericDraweeHierarchy_viewAspectRatio 28 -+int[] styleable GradientColor { 0x101020b, 0x10101a2, 0x10101a3, 0x101019e, 0x1010512, 0x1010513, 0x10101a4, 0x101019d, 0x1010510, 0x1010511, 0x1010201, 0x10101a1 } -+int styleable GradientColor_android_centerColor 0 -+int styleable GradientColor_android_centerX 1 -+int styleable GradientColor_android_centerY 2 -+int styleable GradientColor_android_endColor 3 -+int styleable GradientColor_android_endX 4 -+int styleable GradientColor_android_endY 5 -+int styleable GradientColor_android_gradientRadius 6 -+int styleable GradientColor_android_startColor 7 -+int styleable GradientColor_android_startX 8 -+int styleable GradientColor_android_startY 9 -+int styleable GradientColor_android_tileMode 10 -+int styleable GradientColor_android_type 11 -+int[] styleable GradientColorItem { 0x10101a5, 0x1010514 } -+int styleable GradientColorItem_android_color 0 -+int styleable GradientColorItem_android_offset 1 -+int[] styleable LinearLayoutCompat { 0x1010126, 0x1010127, 0x10100af, 0x10100c4, 0x1010128, 0x0, 0x0, 0x0, 0x0 } -+int styleable LinearLayoutCompat_android_baselineAligned 0 -+int styleable LinearLayoutCompat_android_baselineAlignedChildIndex 1 -+int styleable LinearLayoutCompat_android_gravity 2 -+int styleable LinearLayoutCompat_android_orientation 3 -+int styleable LinearLayoutCompat_android_weightSum 4 -+int styleable LinearLayoutCompat_divider 5 -+int styleable LinearLayoutCompat_dividerPadding 6 -+int styleable LinearLayoutCompat_measureWithLargestChild 7 -+int styleable LinearLayoutCompat_showDividers 8 -+int[] styleable LinearLayoutCompat_Layout { 0x10100b3, 0x10100f5, 0x1010181, 0x10100f4 } -+int styleable LinearLayoutCompat_Layout_android_layout_gravity 0 -+int styleable LinearLayoutCompat_Layout_android_layout_height 1 -+int styleable LinearLayoutCompat_Layout_android_layout_weight 2 -+int styleable LinearLayoutCompat_Layout_android_layout_width 3 -+int[] styleable ListPopupWindow { 0x10102ac, 0x10102ad } -+int styleable ListPopupWindow_android_dropDownHorizontalOffset 0 -+int styleable ListPopupWindow_android_dropDownVerticalOffset 1 -+int[] styleable MenuGroup { 0x10101e0, 0x101000e, 0x10100d0, 0x10101de, 0x10101df, 0x1010194 } -+int styleable MenuGroup_android_checkableBehavior 0 -+int styleable MenuGroup_android_enabled 1 -+int styleable MenuGroup_android_id 2 -+int styleable MenuGroup_android_menuCategory 3 -+int styleable MenuGroup_android_orderInCategory 4 -+int styleable MenuGroup_android_visible 5 -+int[] styleable MenuItem { 0x0, 0x0, 0x0, 0x0, 0x10101e3, 0x10101e5, 0x1010106, 0x101000e, 0x1010002, 0x10100d0, 0x10101de, 0x10101e4, 0x101026f, 0x10101df, 0x10101e1, 0x10101e2, 0x1010194, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable MenuItem_actionLayout 0 -+int styleable MenuItem_actionProviderClass 1 -+int styleable MenuItem_actionViewClass 2 -+int styleable MenuItem_alphabeticModifiers 3 -+int styleable MenuItem_android_alphabeticShortcut 4 -+int styleable MenuItem_android_checkable 5 -+int styleable MenuItem_android_checked 6 -+int styleable MenuItem_android_enabled 7 -+int styleable MenuItem_android_icon 8 -+int styleable MenuItem_android_id 9 -+int styleable MenuItem_android_menuCategory 10 -+int styleable MenuItem_android_numericShortcut 11 -+int styleable MenuItem_android_onClick 12 -+int styleable MenuItem_android_orderInCategory 13 -+int styleable MenuItem_android_title 14 -+int styleable MenuItem_android_titleCondensed 15 -+int styleable MenuItem_android_visible 16 -+int styleable MenuItem_contentDescription 17 -+int styleable MenuItem_iconTint 18 -+int styleable MenuItem_iconTintMode 19 -+int styleable MenuItem_numericModifiers 20 -+int styleable MenuItem_showAsAction 21 -+int styleable MenuItem_tooltipText 22 -+int[] styleable MenuView { 0x101012f, 0x101012d, 0x1010130, 0x1010131, 0x101012c, 0x101012e, 0x10100ae, 0x0, 0x0 } -+int styleable MenuView_android_headerBackground 0 -+int styleable MenuView_android_horizontalDivider 1 -+int styleable MenuView_android_itemBackground 2 -+int styleable MenuView_android_itemIconDisabledAlpha 3 -+int styleable MenuView_android_itemTextAppearance 4 -+int styleable MenuView_android_verticalDivider 5 -+int styleable MenuView_android_windowAnimationStyle 6 -+int styleable MenuView_preserveIconSpacing 7 -+int styleable MenuView_subMenuArrow 8 -+int[] styleable PopupWindow { 0x10102c9, 0x1010176, 0x0 } -+int styleable PopupWindow_android_popupAnimationStyle 0 -+int styleable PopupWindow_android_popupBackground 1 -+int styleable PopupWindow_overlapAnchor 2 -+int[] styleable PopupWindowBackgroundState { 0x0 } -+int styleable PopupWindowBackgroundState_state_above_anchor 0 -+int[] styleable RecycleListView { 0x0, 0x0 } -+int styleable RecycleListView_paddingBottomNoButtons 0 -+int styleable RecycleListView_paddingTopNoTitle 1 -+int[] styleable SearchView { 0x10100da, 0x1010264, 0x1010220, 0x101011f, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable SearchView_android_focusable 0 -+int styleable SearchView_android_imeOptions 1 -+int styleable SearchView_android_inputType 2 -+int styleable SearchView_android_maxWidth 3 -+int styleable SearchView_closeIcon 4 -+int styleable SearchView_commitIcon 5 -+int styleable SearchView_defaultQueryHint 6 -+int styleable SearchView_goIcon 7 -+int styleable SearchView_iconifiedByDefault 8 -+int styleable SearchView_layout 9 -+int styleable SearchView_queryBackground 10 -+int styleable SearchView_queryHint 11 -+int styleable SearchView_searchHintIcon 12 -+int styleable SearchView_searchIcon 13 -+int styleable SearchView_submitBackground 14 -+int styleable SearchView_suggestionRowLayout 15 -+int styleable SearchView_voiceIcon 16 -+int[] styleable SimpleDraweeView { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable SimpleDraweeView_actualImageResource 0 -+int styleable SimpleDraweeView_actualImageScaleType 1 -+int styleable SimpleDraweeView_actualImageUri 2 -+int styleable SimpleDraweeView_backgroundImage 3 -+int styleable SimpleDraweeView_fadeDuration 4 -+int styleable SimpleDraweeView_failureImage 5 -+int styleable SimpleDraweeView_failureImageScaleType 6 -+int styleable SimpleDraweeView_overlayImage 7 -+int styleable SimpleDraweeView_placeholderImage 8 -+int styleable SimpleDraweeView_placeholderImageScaleType 9 -+int styleable SimpleDraweeView_pressedStateOverlayImage 10 -+int styleable SimpleDraweeView_progressBarAutoRotateInterval 11 -+int styleable SimpleDraweeView_progressBarImage 12 -+int styleable SimpleDraweeView_progressBarImageScaleType 13 -+int styleable SimpleDraweeView_retryImage 14 -+int styleable SimpleDraweeView_retryImageScaleType 15 -+int styleable SimpleDraweeView_roundAsCircle 16 -+int styleable SimpleDraweeView_roundBottomEnd 17 -+int styleable SimpleDraweeView_roundBottomLeft 18 -+int styleable SimpleDraweeView_roundBottomRight 19 -+int styleable SimpleDraweeView_roundBottomStart 20 -+int styleable SimpleDraweeView_roundTopEnd 21 -+int styleable SimpleDraweeView_roundTopLeft 22 -+int styleable SimpleDraweeView_roundTopRight 23 -+int styleable SimpleDraweeView_roundTopStart 24 -+int styleable SimpleDraweeView_roundWithOverlayColor 25 -+int styleable SimpleDraweeView_roundedCornerRadius 26 -+int styleable SimpleDraweeView_roundingBorderColor 27 -+int styleable SimpleDraweeView_roundingBorderPadding 28 -+int styleable SimpleDraweeView_roundingBorderWidth 29 -+int styleable SimpleDraweeView_viewAspectRatio 30 -+int[] styleable Spinner { 0x1010262, 0x10100b2, 0x1010176, 0x101017b, 0x0 } -+int styleable Spinner_android_dropDownWidth 0 -+int styleable Spinner_android_entries 1 -+int styleable Spinner_android_popupBackground 2 -+int styleable Spinner_android_prompt 3 -+int styleable Spinner_popupTheme 4 -+int[] styleable StateListDrawable { 0x1010196, 0x101011c, 0x101030c, 0x101030d, 0x1010195, 0x1010194 } -+int styleable StateListDrawable_android_constantSize 0 -+int styleable StateListDrawable_android_dither 1 -+int styleable StateListDrawable_android_enterFadeDuration 2 -+int styleable StateListDrawable_android_exitFadeDuration 3 -+int styleable StateListDrawable_android_variablePadding 4 -+int styleable StateListDrawable_android_visible 5 -+int[] styleable StateListDrawableItem { 0x1010199 } -+int styleable StateListDrawableItem_android_drawable 0 -+int[] styleable SwitchCompat { 0x1010125, 0x1010124, 0x1010142, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable SwitchCompat_android_textOff 0 -+int styleable SwitchCompat_android_textOn 1 -+int styleable SwitchCompat_android_thumb 2 -+int styleable SwitchCompat_showText 3 -+int styleable SwitchCompat_splitTrack 4 -+int styleable SwitchCompat_switchMinWidth 5 -+int styleable SwitchCompat_switchPadding 6 -+int styleable SwitchCompat_switchTextAppearance 7 -+int styleable SwitchCompat_thumbTextPadding 8 -+int styleable SwitchCompat_thumbTint 9 -+int styleable SwitchCompat_thumbTintMode 10 -+int styleable SwitchCompat_track 11 -+int styleable SwitchCompat_trackTint 12 -+int styleable SwitchCompat_trackTintMode 13 -+int[] styleable TextAppearance { 0x10103ac, 0x1010161, 0x1010162, 0x1010163, 0x1010164, 0x1010098, 0x101009a, 0x101009b, 0x1010585, 0x1010095, 0x1010097, 0x1010096, 0x0, 0x0, 0x0, 0x0 } -+int styleable TextAppearance_android_fontFamily 0 -+int styleable TextAppearance_android_shadowColor 1 -+int styleable TextAppearance_android_shadowDx 2 -+int styleable TextAppearance_android_shadowDy 3 -+int styleable TextAppearance_android_shadowRadius 4 -+int styleable TextAppearance_android_textColor 5 -+int styleable TextAppearance_android_textColorHint 6 -+int styleable TextAppearance_android_textColorLink 7 -+int styleable TextAppearance_android_textFontWeight 8 -+int styleable TextAppearance_android_textSize 9 -+int styleable TextAppearance_android_textStyle 10 -+int styleable TextAppearance_android_typeface 11 -+int styleable TextAppearance_fontFamily 12 -+int styleable TextAppearance_fontVariationSettings 13 -+int styleable TextAppearance_textAllCaps 14 -+int styleable TextAppearance_textLocale 15 -+int[] styleable Toolbar { 0x10100af, 0x1010140, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } -+int styleable Toolbar_android_gravity 0 -+int styleable Toolbar_android_minHeight 1 -+int styleable Toolbar_buttonGravity 2 -+int styleable Toolbar_collapseContentDescription 3 -+int styleable Toolbar_collapseIcon 4 -+int styleable Toolbar_contentInsetEnd 5 -+int styleable Toolbar_contentInsetEndWithActions 6 -+int styleable Toolbar_contentInsetLeft 7 -+int styleable Toolbar_contentInsetRight 8 -+int styleable Toolbar_contentInsetStart 9 -+int styleable Toolbar_contentInsetStartWithNavigation 10 -+int styleable Toolbar_logo 11 -+int styleable Toolbar_logoDescription 12 -+int styleable Toolbar_maxButtonHeight 13 -+int styleable Toolbar_menu 14 -+int styleable Toolbar_navigationContentDescription 15 -+int styleable Toolbar_navigationIcon 16 -+int styleable Toolbar_popupTheme 17 -+int styleable Toolbar_subtitle 18 -+int styleable Toolbar_subtitleTextAppearance 19 -+int styleable Toolbar_subtitleTextColor 20 -+int styleable Toolbar_title 21 -+int styleable Toolbar_titleMargin 22 -+int styleable Toolbar_titleMarginBottom 23 -+int styleable Toolbar_titleMarginEnd 24 -+int styleable Toolbar_titleMarginStart 25 -+int styleable Toolbar_titleMarginTop 26 -+int styleable Toolbar_titleMargins 27 -+int styleable Toolbar_titleTextAppearance 28 -+int styleable Toolbar_titleTextColor 29 -+int[] styleable View { 0x10100da, 0x1010000, 0x0, 0x0, 0x0 } -+int styleable View_android_focusable 0 -+int styleable View_android_theme 1 -+int styleable View_paddingEnd 2 -+int styleable View_paddingStart 3 -+int styleable View_theme 4 -+int[] styleable ViewBackgroundHelper { 0x10100d4, 0x0, 0x0 } -+int styleable ViewBackgroundHelper_android_background 0 -+int styleable ViewBackgroundHelper_backgroundTint 1 -+int styleable ViewBackgroundHelper_backgroundTintMode 2 -+int[] styleable ViewStubCompat { 0x10100d0, 0x10100f3, 0x10100f2 } -+int styleable ViewStubCompat_android_id 0 -+int styleable ViewStubCompat_android_inflatedId 1 -+int styleable ViewStubCompat_android_layout 2 -+int xml rn_dev_preferences 0x0 -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties -new file mode 100644 -index 0000000..47e2add ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties -@@ -0,0 +1 @@ -+#Sun Apr 02 19:35:28 CDT 2023 -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml -new file mode 100644 -index 0000000..b5f25a5 ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml -@@ -0,0 +1,2 @@ -+ -+ -\ No newline at end of file -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/local_only_symbol_list/debug/R-def.txt b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/local_only_symbol_list/debug/R-def.txt -new file mode 100644 -index 0000000..78ac5b8 ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/local_only_symbol_list/debug/R-def.txt -@@ -0,0 +1,2 @@ -+R_DEF: Internal format may change without notice -+local -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt -new file mode 100644 -index 0000000..127829f ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/manifest_merge_blame_file/debug/manifest-merger-blame-debug-report.txt -@@ -0,0 +1,11 @@ -+1 -+2 -+4 -+5 /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+7 android:targetSdkVersion="33" /> -+7-->/Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+8 -+9 -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/merged_manifest/debug/AndroidManifest.xml b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/merged_manifest/debug/AndroidManifest.xml -new file mode 100644 -index 0000000..0249d77 ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/merged_manifest/debug/AndroidManifest.xml -@@ -0,0 +1,9 @@ -+ -+ -+ -+ -+ -+ -\ No newline at end of file -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/navigation_json/debug/navigation.json b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/navigation_json/debug/navigation.json -new file mode 100644 -index 0000000..0637a08 ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/navigation_json/debug/navigation.json -@@ -0,0 +1 @@ -+[] -\ No newline at end of file -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/packaged_manifests/debug/output-metadata.json b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/packaged_manifests/debug/output-metadata.json -new file mode 100644 -index 0000000..3640409 ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/packaged_manifests/debug/output-metadata.json -@@ -0,0 +1,18 @@ -+{ -+ "version": 3, -+ "artifactType": { -+ "type": "PACKAGED_MANIFESTS", -+ "kind": "Directory" -+ }, -+ "applicationId": "com.mattermost.pasteinput", -+ "variantName": "debug", -+ "elements": [ -+ { -+ "type": "SINGLE", -+ "filters": [], -+ "attributes": [], -+ "outputFile": "../../merged_manifest/debug/AndroidManifest.xml" -+ } -+ ], -+ "elementType": "File" -+} -\ No newline at end of file -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/symbol_list_with_package_name/debug/package-aware-r.txt b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/symbol_list_with_package_name/debug/package-aware-r.txt -new file mode 100644 -index 0000000..7009825 ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/intermediates/symbol_list_with_package_name/debug/package-aware-r.txt -@@ -0,0 +1,1446 @@ -+com.mattermost.pasteinput -+anim abc_fade_in -+anim abc_fade_out -+anim abc_grow_fade_in_from_bottom -+anim abc_popup_enter -+anim abc_popup_exit -+anim abc_shrink_fade_out_from_bottom -+anim abc_slide_in_bottom -+anim abc_slide_in_top -+anim abc_slide_out_bottom -+anim abc_slide_out_top -+anim abc_tooltip_enter -+anim abc_tooltip_exit -+anim btn_checkbox_to_checked_box_inner_merged_animation -+anim btn_checkbox_to_checked_box_outer_merged_animation -+anim btn_checkbox_to_checked_icon_null_animation -+anim btn_checkbox_to_unchecked_box_inner_merged_animation -+anim btn_checkbox_to_unchecked_check_path_merged_animation -+anim btn_checkbox_to_unchecked_icon_null_animation -+anim btn_radio_to_off_mtrl_dot_group_animation -+anim btn_radio_to_off_mtrl_ring_outer_animation -+anim btn_radio_to_off_mtrl_ring_outer_path_animation -+anim btn_radio_to_on_mtrl_dot_group_animation -+anim btn_radio_to_on_mtrl_ring_outer_animation -+anim btn_radio_to_on_mtrl_ring_outer_path_animation -+anim catalyst_fade_in -+anim catalyst_fade_out -+anim catalyst_push_up_in -+anim catalyst_push_up_out -+anim catalyst_slide_down -+anim catalyst_slide_up -+anim fragment_fast_out_extra_slow_in -+animator fragment_close_enter -+animator fragment_close_exit -+animator fragment_fade_enter -+animator fragment_fade_exit -+animator fragment_open_enter -+animator fragment_open_exit -+attr actionBarDivider -+attr actionBarItemBackground -+attr actionBarPopupTheme -+attr actionBarSize -+attr actionBarSplitStyle -+attr actionBarStyle -+attr actionBarTabBarStyle -+attr actionBarTabStyle -+attr actionBarTabTextStyle -+attr actionBarTheme -+attr actionBarWidgetTheme -+attr actionButtonStyle -+attr actionDropDownStyle -+attr actionLayout -+attr actionMenuTextAppearance -+attr actionMenuTextColor -+attr actionModeBackground -+attr actionModeCloseButtonStyle -+attr actionModeCloseContentDescription -+attr actionModeCloseDrawable -+attr actionModeCopyDrawable -+attr actionModeCutDrawable -+attr actionModeFindDrawable -+attr actionModePasteDrawable -+attr actionModePopupWindowStyle -+attr actionModeSelectAllDrawable -+attr actionModeShareDrawable -+attr actionModeSplitBackground -+attr actionModeStyle -+attr actionModeTheme -+attr actionModeWebSearchDrawable -+attr actionOverflowButtonStyle -+attr actionOverflowMenuStyle -+attr actionProviderClass -+attr actionViewClass -+attr activityChooserViewStyle -+attr actualImageResource -+attr actualImageScaleType -+attr actualImageUri -+attr alertDialogButtonGroupStyle -+attr alertDialogCenterButtons -+attr alertDialogStyle -+attr alertDialogTheme -+attr allowStacking -+attr alpha -+attr alphabeticModifiers -+attr arrowHeadLength -+attr arrowShaftLength -+attr autoCompleteTextViewStyle -+attr autoSizeMaxTextSize -+attr autoSizeMinTextSize -+attr autoSizePresetSizes -+attr autoSizeStepGranularity -+attr autoSizeTextType -+attr autofillInlineSuggestionChip -+attr autofillInlineSuggestionEndIconStyle -+attr autofillInlineSuggestionStartIconStyle -+attr autofillInlineSuggestionSubtitle -+attr autofillInlineSuggestionTitle -+attr background -+attr backgroundImage -+attr backgroundSplit -+attr backgroundStacked -+attr backgroundTint -+attr backgroundTintMode -+attr barLength -+attr borderlessButtonStyle -+attr buttonBarButtonStyle -+attr buttonBarNegativeButtonStyle -+attr buttonBarNeutralButtonStyle -+attr buttonBarPositiveButtonStyle -+attr buttonBarStyle -+attr buttonCompat -+attr buttonGravity -+attr buttonIconDimen -+attr buttonPanelSideLayout -+attr buttonStyle -+attr buttonStyleSmall -+attr buttonTint -+attr buttonTintMode -+attr checkMarkCompat -+attr checkMarkTint -+attr checkMarkTintMode -+attr checkboxStyle -+attr checkedTextViewStyle -+attr closeIcon -+attr closeItemLayout -+attr collapseContentDescription -+attr collapseIcon -+attr color -+attr colorAccent -+attr colorBackgroundFloating -+attr colorButtonNormal -+attr colorControlActivated -+attr colorControlHighlight -+attr colorControlNormal -+attr colorError -+attr colorPrimary -+attr colorPrimaryDark -+attr colorSwitchThumbNormal -+attr commitIcon -+attr contentDescription -+attr contentInsetEnd -+attr contentInsetEndWithActions -+attr contentInsetLeft -+attr contentInsetRight -+attr contentInsetStart -+attr contentInsetStartWithNavigation -+attr controlBackground -+attr customNavigationLayout -+attr defaultQueryHint -+attr dialogCornerRadius -+attr dialogPreferredPadding -+attr dialogTheme -+attr displayOptions -+attr divider -+attr dividerHorizontal -+attr dividerPadding -+attr dividerVertical -+attr drawableBottomCompat -+attr drawableEndCompat -+attr drawableLeftCompat -+attr drawableRightCompat -+attr drawableSize -+attr drawableStartCompat -+attr drawableTint -+attr drawableTintMode -+attr drawableTopCompat -+attr drawerArrowStyle -+attr dropDownListViewStyle -+attr dropdownListPreferredItemHeight -+attr editTextBackground -+attr editTextColor -+attr editTextStyle -+attr elevation -+attr emojiCompatEnabled -+attr expandActivityOverflowButtonDrawable -+attr fadeDuration -+attr failureImage -+attr failureImageScaleType -+attr firstBaselineToTopHeight -+attr font -+attr fontFamily -+attr fontProviderAuthority -+attr fontProviderCerts -+attr fontProviderFetchStrategy -+attr fontProviderFetchTimeout -+attr fontProviderPackage -+attr fontProviderQuery -+attr fontProviderSystemFontFamily -+attr fontStyle -+attr fontVariationSettings -+attr fontWeight -+attr gapBetweenBars -+attr goIcon -+attr height -+attr hideOnContentScroll -+attr homeAsUpIndicator -+attr homeLayout -+attr icon -+attr iconTint -+attr iconTintMode -+attr iconifiedByDefault -+attr imageButtonStyle -+attr indeterminateProgressStyle -+attr initialActivityCount -+attr isAutofillInlineSuggestionTheme -+attr isLightTheme -+attr itemPadding -+attr lStar -+attr lastBaselineToBottomHeight -+attr layout -+attr lineHeight -+attr listChoiceBackgroundIndicator -+attr listChoiceIndicatorMultipleAnimated -+attr listChoiceIndicatorSingleAnimated -+attr listDividerAlertDialog -+attr listItemLayout -+attr listLayout -+attr listMenuViewStyle -+attr listPopupWindowStyle -+attr listPreferredItemHeight -+attr listPreferredItemHeightLarge -+attr listPreferredItemHeightSmall -+attr listPreferredItemPaddingEnd -+attr listPreferredItemPaddingLeft -+attr listPreferredItemPaddingRight -+attr listPreferredItemPaddingStart -+attr logo -+attr logoDescription -+attr maxButtonHeight -+attr measureWithLargestChild -+attr menu -+attr multiChoiceItemLayout -+attr navigationContentDescription -+attr navigationIcon -+attr navigationMode -+attr nestedScrollViewStyle -+attr numericModifiers -+attr overlapAnchor -+attr overlayImage -+attr paddingBottomNoButtons -+attr paddingEnd -+attr paddingStart -+attr paddingTopNoTitle -+attr panelBackground -+attr panelMenuListTheme -+attr panelMenuListWidth -+attr placeholderImage -+attr placeholderImageScaleType -+attr popupMenuStyle -+attr popupTheme -+attr popupWindowStyle -+attr preserveIconSpacing -+attr pressedStateOverlayImage -+attr progressBarAutoRotateInterval -+attr progressBarImage -+attr progressBarImageScaleType -+attr progressBarPadding -+attr progressBarStyle -+attr queryBackground -+attr queryHint -+attr queryPatterns -+attr radioButtonStyle -+attr ratingBarStyle -+attr ratingBarStyleIndicator -+attr ratingBarStyleSmall -+attr retryImage -+attr retryImageScaleType -+attr roundAsCircle -+attr roundBottomEnd -+attr roundBottomLeft -+attr roundBottomRight -+attr roundBottomStart -+attr roundTopEnd -+attr roundTopLeft -+attr roundTopRight -+attr roundTopStart -+attr roundWithOverlayColor -+attr roundedCornerRadius -+attr roundingBorderColor -+attr roundingBorderPadding -+attr roundingBorderWidth -+attr searchHintIcon -+attr searchIcon -+attr searchViewStyle -+attr seekBarStyle -+attr selectableItemBackground -+attr selectableItemBackgroundBorderless -+attr shortcutMatchRequired -+attr showAsAction -+attr showDividers -+attr showText -+attr showTitle -+attr singleChoiceItemLayout -+attr spinBars -+attr spinnerDropDownItemStyle -+attr spinnerStyle -+attr splitTrack -+attr srcCompat -+attr state_above_anchor -+attr subMenuArrow -+attr submitBackground -+attr subtitle -+attr subtitleTextAppearance -+attr subtitleTextColor -+attr subtitleTextStyle -+attr suggestionRowLayout -+attr switchMinWidth -+attr switchPadding -+attr switchStyle -+attr switchTextAppearance -+attr textAllCaps -+attr textAppearanceLargePopupMenu -+attr textAppearanceListItem -+attr textAppearanceListItemSecondary -+attr textAppearanceListItemSmall -+attr textAppearancePopupMenuHeader -+attr textAppearanceSearchResultSubtitle -+attr textAppearanceSearchResultTitle -+attr textAppearanceSmallPopupMenu -+attr textColorAlertDialogListItem -+attr textColorSearchUrl -+attr textLocale -+attr theme -+attr thickness -+attr thumbTextPadding -+attr thumbTint -+attr thumbTintMode -+attr tickMark -+attr tickMarkTint -+attr tickMarkTintMode -+attr tint -+attr tintMode -+attr title -+attr titleMargin -+attr titleMarginBottom -+attr titleMarginEnd -+attr titleMarginStart -+attr titleMarginTop -+attr titleMargins -+attr titleTextAppearance -+attr titleTextColor -+attr titleTextStyle -+attr toolbarNavigationButtonStyle -+attr toolbarStyle -+attr tooltipForegroundColor -+attr tooltipFrameBackground -+attr tooltipText -+attr track -+attr trackTint -+attr trackTintMode -+attr ttcIndex -+attr viewAspectRatio -+attr viewInflaterClass -+attr voiceIcon -+attr windowActionBar -+attr windowActionBarOverlay -+attr windowActionModeOverlay -+attr windowFixedHeightMajor -+attr windowFixedHeightMinor -+attr windowFixedWidthMajor -+attr windowFixedWidthMinor -+attr windowMinWidthMajor -+attr windowMinWidthMinor -+attr windowNoTitle -+bool abc_action_bar_embed_tabs -+bool abc_config_actionMenuItemAllCaps -+color abc_background_cache_hint_selector_material_dark -+color abc_background_cache_hint_selector_material_light -+color abc_btn_colored_borderless_text_material -+color abc_btn_colored_text_material -+color abc_color_highlight_material -+color abc_decor_view_status_guard -+color abc_decor_view_status_guard_light -+color abc_hint_foreground_material_dark -+color abc_hint_foreground_material_light -+color abc_primary_text_disable_only_material_dark -+color abc_primary_text_disable_only_material_light -+color abc_primary_text_material_dark -+color abc_primary_text_material_light -+color abc_search_url_text -+color abc_search_url_text_normal -+color abc_search_url_text_pressed -+color abc_search_url_text_selected -+color abc_secondary_text_material_dark -+color abc_secondary_text_material_light -+color abc_tint_btn_checkable -+color abc_tint_default -+color abc_tint_edittext -+color abc_tint_seek_thumb -+color abc_tint_spinner -+color abc_tint_switch_track -+color accent_material_dark -+color accent_material_light -+color androidx_core_ripple_material_light -+color androidx_core_secondary_text_default_material_light -+color background_floating_material_dark -+color background_floating_material_light -+color background_material_dark -+color background_material_light -+color bright_foreground_disabled_material_dark -+color bright_foreground_disabled_material_light -+color bright_foreground_inverse_material_dark -+color bright_foreground_inverse_material_light -+color bright_foreground_material_dark -+color bright_foreground_material_light -+color button_material_dark -+color button_material_light -+color catalyst_logbox_background -+color catalyst_redbox_background -+color dim_foreground_disabled_material_dark -+color dim_foreground_disabled_material_light -+color dim_foreground_material_dark -+color dim_foreground_material_light -+color error_color_material_dark -+color error_color_material_light -+color foreground_material_dark -+color foreground_material_light -+color highlighted_text_material_dark -+color highlighted_text_material_light -+color material_blue_grey_800 -+color material_blue_grey_900 -+color material_blue_grey_950 -+color material_deep_teal_200 -+color material_deep_teal_500 -+color material_grey_100 -+color material_grey_300 -+color material_grey_50 -+color material_grey_600 -+color material_grey_800 -+color material_grey_850 -+color material_grey_900 -+color notification_action_color_filter -+color notification_icon_bg_color -+color primary_dark_material_dark -+color primary_dark_material_light -+color primary_material_dark -+color primary_material_light -+color primary_text_default_material_dark -+color primary_text_default_material_light -+color primary_text_disabled_material_dark -+color primary_text_disabled_material_light -+color ripple_material_dark -+color ripple_material_light -+color secondary_text_default_material_dark -+color secondary_text_default_material_light -+color secondary_text_disabled_material_dark -+color secondary_text_disabled_material_light -+color switch_thumb_disabled_material_dark -+color switch_thumb_disabled_material_light -+color switch_thumb_material_dark -+color switch_thumb_material_light -+color switch_thumb_normal_material_dark -+color switch_thumb_normal_material_light -+color tooltip_background_dark -+color tooltip_background_light -+dimen abc_action_bar_content_inset_material -+dimen abc_action_bar_content_inset_with_nav -+dimen abc_action_bar_default_height_material -+dimen abc_action_bar_default_padding_end_material -+dimen abc_action_bar_default_padding_start_material -+dimen abc_action_bar_elevation_material -+dimen abc_action_bar_icon_vertical_padding_material -+dimen abc_action_bar_overflow_padding_end_material -+dimen abc_action_bar_overflow_padding_start_material -+dimen abc_action_bar_stacked_max_height -+dimen abc_action_bar_stacked_tab_max_width -+dimen abc_action_bar_subtitle_bottom_margin_material -+dimen abc_action_bar_subtitle_top_margin_material -+dimen abc_action_button_min_height_material -+dimen abc_action_button_min_width_material -+dimen abc_action_button_min_width_overflow_material -+dimen abc_alert_dialog_button_bar_height -+dimen abc_alert_dialog_button_dimen -+dimen abc_button_inset_horizontal_material -+dimen abc_button_inset_vertical_material -+dimen abc_button_padding_horizontal_material -+dimen abc_button_padding_vertical_material -+dimen abc_cascading_menus_min_smallest_width -+dimen abc_config_prefDialogWidth -+dimen abc_control_corner_material -+dimen abc_control_inset_material -+dimen abc_control_padding_material -+dimen abc_dialog_corner_radius_material -+dimen abc_dialog_fixed_height_major -+dimen abc_dialog_fixed_height_minor -+dimen abc_dialog_fixed_width_major -+dimen abc_dialog_fixed_width_minor -+dimen abc_dialog_list_padding_bottom_no_buttons -+dimen abc_dialog_list_padding_top_no_title -+dimen abc_dialog_min_width_major -+dimen abc_dialog_min_width_minor -+dimen abc_dialog_padding_material -+dimen abc_dialog_padding_top_material -+dimen abc_dialog_title_divider_material -+dimen abc_disabled_alpha_material_dark -+dimen abc_disabled_alpha_material_light -+dimen abc_dropdownitem_icon_width -+dimen abc_dropdownitem_text_padding_left -+dimen abc_dropdownitem_text_padding_right -+dimen abc_edit_text_inset_bottom_material -+dimen abc_edit_text_inset_horizontal_material -+dimen abc_edit_text_inset_top_material -+dimen abc_floating_window_z -+dimen abc_list_item_height_large_material -+dimen abc_list_item_height_material -+dimen abc_list_item_height_small_material -+dimen abc_list_item_padding_horizontal_material -+dimen abc_panel_menu_list_width -+dimen abc_progress_bar_height_material -+dimen abc_search_view_preferred_height -+dimen abc_search_view_preferred_width -+dimen abc_seekbar_track_background_height_material -+dimen abc_seekbar_track_progress_height_material -+dimen abc_select_dialog_padding_start_material -+dimen abc_star_big -+dimen abc_star_medium -+dimen abc_star_small -+dimen abc_switch_padding -+dimen abc_text_size_body_1_material -+dimen abc_text_size_body_2_material -+dimen abc_text_size_button_material -+dimen abc_text_size_caption_material -+dimen abc_text_size_display_1_material -+dimen abc_text_size_display_2_material -+dimen abc_text_size_display_3_material -+dimen abc_text_size_display_4_material -+dimen abc_text_size_headline_material -+dimen abc_text_size_large_material -+dimen abc_text_size_medium_material -+dimen abc_text_size_menu_header_material -+dimen abc_text_size_menu_material -+dimen abc_text_size_small_material -+dimen abc_text_size_subhead_material -+dimen abc_text_size_subtitle_material_toolbar -+dimen abc_text_size_title_material -+dimen abc_text_size_title_material_toolbar -+dimen autofill_inline_suggestion_icon_size -+dimen compat_button_inset_horizontal_material -+dimen compat_button_inset_vertical_material -+dimen compat_button_padding_horizontal_material -+dimen compat_button_padding_vertical_material -+dimen compat_control_corner_material -+dimen compat_notification_large_icon_max_height -+dimen compat_notification_large_icon_max_width -+dimen disabled_alpha_material_dark -+dimen disabled_alpha_material_light -+dimen highlight_alpha_material_colored -+dimen highlight_alpha_material_dark -+dimen highlight_alpha_material_light -+dimen hint_alpha_material_dark -+dimen hint_alpha_material_light -+dimen hint_pressed_alpha_material_dark -+dimen hint_pressed_alpha_material_light -+dimen notification_action_icon_size -+dimen notification_action_text_size -+dimen notification_big_circle_margin -+dimen notification_content_margin_start -+dimen notification_large_icon_height -+dimen notification_large_icon_width -+dimen notification_main_column_padding_top -+dimen notification_media_narrow_margin -+dimen notification_right_icon_size -+dimen notification_right_side_padding_top -+dimen notification_small_icon_background_padding -+dimen notification_small_icon_size_as_large -+dimen notification_subtext_size -+dimen notification_top_pad -+dimen notification_top_pad_large_text -+dimen tooltip_corner_radius -+dimen tooltip_horizontal_padding -+dimen tooltip_margin -+dimen tooltip_precise_anchor_extra_offset -+dimen tooltip_precise_anchor_threshold -+dimen tooltip_vertical_padding -+dimen tooltip_y_offset_non_touch -+dimen tooltip_y_offset_touch -+drawable abc_ab_share_pack_mtrl_alpha -+drawable abc_action_bar_item_background_material -+drawable abc_btn_borderless_material -+drawable abc_btn_check_material -+drawable abc_btn_check_material_anim -+drawable abc_btn_check_to_on_mtrl_000 -+drawable abc_btn_check_to_on_mtrl_015 -+drawable abc_btn_colored_material -+drawable abc_btn_default_mtrl_shape -+drawable abc_btn_radio_material -+drawable abc_btn_radio_material_anim -+drawable abc_btn_radio_to_on_mtrl_000 -+drawable abc_btn_radio_to_on_mtrl_015 -+drawable abc_btn_switch_to_on_mtrl_00001 -+drawable abc_btn_switch_to_on_mtrl_00012 -+drawable abc_cab_background_internal_bg -+drawable abc_cab_background_top_material -+drawable abc_cab_background_top_mtrl_alpha -+drawable abc_control_background_material -+drawable abc_dialog_material_background -+drawable abc_edit_text_material -+drawable abc_ic_ab_back_material -+drawable abc_ic_arrow_drop_right_black_24dp -+drawable abc_ic_clear_material -+drawable abc_ic_commit_search_api_mtrl_alpha -+drawable abc_ic_go_search_api_material -+drawable abc_ic_menu_copy_mtrl_am_alpha -+drawable abc_ic_menu_cut_mtrl_alpha -+drawable abc_ic_menu_overflow_material -+drawable abc_ic_menu_paste_mtrl_am_alpha -+drawable abc_ic_menu_selectall_mtrl_alpha -+drawable abc_ic_menu_share_mtrl_alpha -+drawable abc_ic_search_api_material -+drawable abc_ic_voice_search_api_material -+drawable abc_item_background_holo_dark -+drawable abc_item_background_holo_light -+drawable abc_list_divider_material -+drawable abc_list_divider_mtrl_alpha -+drawable abc_list_focused_holo -+drawable abc_list_longpressed_holo -+drawable abc_list_pressed_holo_dark -+drawable abc_list_pressed_holo_light -+drawable abc_list_selector_background_transition_holo_dark -+drawable abc_list_selector_background_transition_holo_light -+drawable abc_list_selector_disabled_holo_dark -+drawable abc_list_selector_disabled_holo_light -+drawable abc_list_selector_holo_dark -+drawable abc_list_selector_holo_light -+drawable abc_menu_hardkey_panel_mtrl_mult -+drawable abc_popup_background_mtrl_mult -+drawable abc_ratingbar_indicator_material -+drawable abc_ratingbar_material -+drawable abc_ratingbar_small_material -+drawable abc_scrubber_control_off_mtrl_alpha -+drawable abc_scrubber_control_to_pressed_mtrl_000 -+drawable abc_scrubber_control_to_pressed_mtrl_005 -+drawable abc_scrubber_primary_mtrl_alpha -+drawable abc_scrubber_track_mtrl_alpha -+drawable abc_seekbar_thumb_material -+drawable abc_seekbar_tick_mark_material -+drawable abc_seekbar_track_material -+drawable abc_spinner_mtrl_am_alpha -+drawable abc_spinner_textfield_background_material -+drawable abc_star_black_48dp -+drawable abc_star_half_black_48dp -+drawable abc_switch_thumb_material -+drawable abc_switch_track_mtrl_alpha -+drawable abc_tab_indicator_material -+drawable abc_tab_indicator_mtrl_alpha -+drawable abc_text_cursor_material -+drawable abc_text_select_handle_left_mtrl -+drawable abc_text_select_handle_middle_mtrl -+drawable abc_text_select_handle_right_mtrl -+drawable abc_textfield_activated_mtrl_alpha -+drawable abc_textfield_default_mtrl_alpha -+drawable abc_textfield_search_activated_mtrl_alpha -+drawable abc_textfield_search_default_mtrl_alpha -+drawable abc_textfield_search_material -+drawable abc_vector_test -+drawable autofill_inline_suggestion_chip_background -+drawable btn_checkbox_checked_mtrl -+drawable btn_checkbox_checked_to_unchecked_mtrl_animation -+drawable btn_checkbox_unchecked_mtrl -+drawable btn_checkbox_unchecked_to_checked_mtrl_animation -+drawable btn_radio_off_mtrl -+drawable btn_radio_off_to_on_mtrl_animation -+drawable btn_radio_on_mtrl -+drawable btn_radio_on_to_off_mtrl_animation -+drawable notification_action_background -+drawable notification_bg -+drawable notification_bg_low -+drawable notification_bg_low_normal -+drawable notification_bg_low_pressed -+drawable notification_bg_normal -+drawable notification_bg_normal_pressed -+drawable notification_icon_background -+drawable notification_template_icon_bg -+drawable notification_template_icon_low_bg -+drawable notification_tile_bg -+drawable notify_panel_notification_icon_bg -+drawable redbox_top_border_background -+drawable test_level_drawable -+drawable tooltip_frame_dark -+drawable tooltip_frame_light -+id accessibility_action_clickable_span -+id accessibility_actions -+id accessibility_collection -+id accessibility_collection_item -+id accessibility_custom_action_0 -+id accessibility_custom_action_1 -+id accessibility_custom_action_10 -+id accessibility_custom_action_11 -+id accessibility_custom_action_12 -+id accessibility_custom_action_13 -+id accessibility_custom_action_14 -+id accessibility_custom_action_15 -+id accessibility_custom_action_16 -+id accessibility_custom_action_17 -+id accessibility_custom_action_18 -+id accessibility_custom_action_19 -+id accessibility_custom_action_2 -+id accessibility_custom_action_20 -+id accessibility_custom_action_21 -+id accessibility_custom_action_22 -+id accessibility_custom_action_23 -+id accessibility_custom_action_24 -+id accessibility_custom_action_25 -+id accessibility_custom_action_26 -+id accessibility_custom_action_27 -+id accessibility_custom_action_28 -+id accessibility_custom_action_29 -+id accessibility_custom_action_3 -+id accessibility_custom_action_30 -+id accessibility_custom_action_31 -+id accessibility_custom_action_4 -+id accessibility_custom_action_5 -+id accessibility_custom_action_6 -+id accessibility_custom_action_7 -+id accessibility_custom_action_8 -+id accessibility_custom_action_9 -+id accessibility_hint -+id accessibility_label -+id accessibility_links -+id accessibility_role -+id accessibility_state -+id accessibility_value -+id action_bar -+id action_bar_activity_content -+id action_bar_container -+id action_bar_root -+id action_bar_spinner -+id action_bar_subtitle -+id action_bar_title -+id action_container -+id action_context_bar -+id action_divider -+id action_image -+id action_menu_divider -+id action_menu_presenter -+id action_mode_bar -+id action_mode_bar_stub -+id action_mode_close_button -+id action_text -+id actions -+id activity_chooser_view_content -+id add -+id alertTitle -+id async -+id autofill_inline_suggestion_end_icon -+id autofill_inline_suggestion_start_icon -+id autofill_inline_suggestion_subtitle -+id autofill_inline_suggestion_title -+id blocking -+id buttonPanel -+id catalyst_redbox_title -+id center -+id centerCrop -+id centerInside -+id checkbox -+id checked -+id chronometer -+id content -+id contentPanel -+id custom -+id customPanel -+id decor_content_parent -+id default_activity_button -+id dialog_button -+id edit_query -+id expand_activities_button -+id expanded_menu -+id fitBottomStart -+id fitCenter -+id fitEnd -+id fitStart -+id fitXY -+id focusCrop -+id forever -+id fps_text -+id fragment_container_view_tag -+id group_divider -+id home -+id icon -+id icon_group -+id image -+id info -+id italic -+id item1 -+id item2 -+id item3 -+id item4 -+id labelled_by -+id line1 -+id line3 -+id listMode -+id list_item -+id message -+id multiply -+id none -+id normal -+id notification_background -+id notification_main_column -+id notification_main_column_container -+id off -+id on -+id parentPanel -+id pointer_events -+id progress_circular -+id progress_horizontal -+id radio -+id react_test_id -+id right_icon -+id right_side -+id rn_frame_file -+id rn_frame_method -+id rn_redbox_dismiss_button -+id rn_redbox_line_separator -+id rn_redbox_loading_indicator -+id rn_redbox_reload_button -+id rn_redbox_report_button -+id rn_redbox_report_label -+id rn_redbox_stack -+id screen -+id scrollIndicatorDown -+id scrollIndicatorUp -+id scrollView -+id search_badge -+id search_bar -+id search_button -+id search_close_btn -+id search_edit_frame -+id search_go_btn -+id search_mag_icon -+id search_plate -+id search_src_text -+id search_voice_btn -+id select_dialog_listview -+id shortcut -+id spacer -+id special_effects_controller_view_tag -+id split_action_bar -+id src_atop -+id src_in -+id src_over -+id submenuarrow -+id submit_area -+id tabMode -+id tag_accessibility_actions -+id tag_accessibility_clickable_spans -+id tag_accessibility_heading -+id tag_accessibility_pane_title -+id tag_on_apply_window_listener -+id tag_on_receive_content_listener -+id tag_on_receive_content_mime_types -+id tag_screen_reader_focusable -+id tag_state_description -+id tag_transition_group -+id tag_unhandled_key_event_manager -+id tag_unhandled_key_listeners -+id tag_window_insets_animation_callback -+id text -+id text2 -+id textSpacerNoButtons -+id textSpacerNoTitle -+id time -+id title -+id titleDividerNoCustom -+id title_template -+id topPanel -+id unchecked -+id uniform -+id up -+id view_tag_instance_handle -+id view_tag_native_id -+id view_tree_lifecycle_owner -+id view_tree_saved_state_registry_owner -+id view_tree_view_model_store_owner -+id visible_removing_fragment_view_tag -+id wrap_content -+integer abc_config_activityDefaultDur -+integer abc_config_activityShortDur -+integer cancel_button_image_alpha -+integer config_tooltipAnimTime -+integer react_native_dev_server_port -+integer react_native_inspector_proxy_port -+integer status_bar_notification_info_maxnum -+interpolator btn_checkbox_checked_mtrl_animation_interpolator_0 -+interpolator btn_checkbox_checked_mtrl_animation_interpolator_1 -+interpolator btn_checkbox_unchecked_mtrl_animation_interpolator_0 -+interpolator btn_checkbox_unchecked_mtrl_animation_interpolator_1 -+interpolator btn_radio_to_off_mtrl_animation_interpolator_0 -+interpolator btn_radio_to_on_mtrl_animation_interpolator_0 -+interpolator fast_out_slow_in -+layout abc_action_bar_title_item -+layout abc_action_bar_up_container -+layout abc_action_menu_item_layout -+layout abc_action_menu_layout -+layout abc_action_mode_bar -+layout abc_action_mode_close_item_material -+layout abc_activity_chooser_view -+layout abc_activity_chooser_view_list_item -+layout abc_alert_dialog_button_bar_material -+layout abc_alert_dialog_material -+layout abc_alert_dialog_title_material -+layout abc_cascading_menu_item_layout -+layout abc_dialog_title_material -+layout abc_expanded_menu_layout -+layout abc_list_menu_item_checkbox -+layout abc_list_menu_item_icon -+layout abc_list_menu_item_layout -+layout abc_list_menu_item_radio -+layout abc_popup_menu_header_item_layout -+layout abc_popup_menu_item_layout -+layout abc_screen_content_include -+layout abc_screen_simple -+layout abc_screen_simple_overlay_action_mode -+layout abc_screen_toolbar -+layout abc_search_dropdown_item_icons_2line -+layout abc_search_view -+layout abc_select_dialog_material -+layout abc_tooltip -+layout autofill_inline_suggestion -+layout custom_dialog -+layout dev_loading_view -+layout fps_view -+layout notification_action -+layout notification_action_tombstone -+layout notification_template_custom_big -+layout notification_template_icon_group -+layout notification_template_part_chronometer -+layout notification_template_part_time -+layout redbox_item_frame -+layout redbox_item_title -+layout redbox_view -+layout select_dialog_item_material -+layout select_dialog_multichoice_material -+layout select_dialog_singlechoice_material -+layout support_simple_spinner_dropdown_item -+menu example_menu -+menu example_menu2 -+string abc_action_bar_home_description -+string abc_action_bar_up_description -+string abc_action_menu_overflow_description -+string abc_action_mode_done -+string abc_activity_chooser_view_see_all -+string abc_activitychooserview_choose_application -+string abc_capital_off -+string abc_capital_on -+string abc_menu_alt_shortcut_label -+string abc_menu_ctrl_shortcut_label -+string abc_menu_delete_shortcut_label -+string abc_menu_enter_shortcut_label -+string abc_menu_function_shortcut_label -+string abc_menu_meta_shortcut_label -+string abc_menu_shift_shortcut_label -+string abc_menu_space_shortcut_label -+string abc_menu_sym_shortcut_label -+string abc_prepend_shortcut_label -+string abc_search_hint -+string abc_searchview_description_clear -+string abc_searchview_description_query -+string abc_searchview_description_search -+string abc_searchview_description_submit -+string abc_searchview_description_voice -+string abc_shareactionprovider_share_with -+string abc_shareactionprovider_share_with_application -+string abc_toolbar_collapse_description -+string alert_description -+string catalyst_change_bundle_location -+string catalyst_copy_button -+string catalyst_debug -+string catalyst_debug_chrome -+string catalyst_debug_chrome_stop -+string catalyst_debug_connecting -+string catalyst_debug_error -+string catalyst_debug_open -+string catalyst_debug_stop -+string catalyst_devtools_open -+string catalyst_dismiss_button -+string catalyst_heap_capture -+string catalyst_hot_reloading -+string catalyst_hot_reloading_auto_disable -+string catalyst_hot_reloading_auto_enable -+string catalyst_hot_reloading_stop -+string catalyst_inspector -+string catalyst_inspector_stop -+string catalyst_loading_from_url -+string catalyst_open_flipper_error -+string catalyst_perf_monitor -+string catalyst_perf_monitor_stop -+string catalyst_reload -+string catalyst_reload_button -+string catalyst_reload_error -+string catalyst_report_button -+string catalyst_sample_profiler_disable -+string catalyst_sample_profiler_enable -+string catalyst_settings -+string catalyst_settings_title -+string combobox_description -+string header_description -+string image_description -+string imagebutton_description -+string link_description -+string menu_description -+string menubar_description -+string menuitem_description -+string progressbar_description -+string radiogroup_description -+string rn_tab_description -+string scrollbar_description -+string search_menu_title -+string spinbutton_description -+string state_busy_description -+string state_collapsed_description -+string state_expanded_description -+string state_mixed_description -+string state_off_description -+string state_on_description -+string state_unselected_description -+string status_bar_notification_info_overflow -+string summary_description -+string tablist_description -+string timer_description -+string toolbar_description -+style AlertDialog_AppCompat -+style AlertDialog_AppCompat_Light -+style Animation_AppCompat_Dialog -+style Animation_AppCompat_DropDownUp -+style Animation_AppCompat_Tooltip -+style Animation_Catalyst_LogBox -+style Animation_Catalyst_RedBox -+style Base_AlertDialog_AppCompat -+style Base_AlertDialog_AppCompat_Light -+style Base_Animation_AppCompat_Dialog -+style Base_Animation_AppCompat_DropDownUp -+style Base_Animation_AppCompat_Tooltip -+style Base_DialogWindowTitleBackground_AppCompat -+style Base_DialogWindowTitle_AppCompat -+style Base_TextAppearance_AppCompat -+style Base_TextAppearance_AppCompat_Body1 -+style Base_TextAppearance_AppCompat_Body2 -+style Base_TextAppearance_AppCompat_Button -+style Base_TextAppearance_AppCompat_Caption -+style Base_TextAppearance_AppCompat_Display1 -+style Base_TextAppearance_AppCompat_Display2 -+style Base_TextAppearance_AppCompat_Display3 -+style Base_TextAppearance_AppCompat_Display4 -+style Base_TextAppearance_AppCompat_Headline -+style Base_TextAppearance_AppCompat_Inverse -+style Base_TextAppearance_AppCompat_Large -+style Base_TextAppearance_AppCompat_Large_Inverse -+style Base_TextAppearance_AppCompat_Light_Widget_PopupMenu_Large -+style Base_TextAppearance_AppCompat_Light_Widget_PopupMenu_Small -+style Base_TextAppearance_AppCompat_Medium -+style Base_TextAppearance_AppCompat_Medium_Inverse -+style Base_TextAppearance_AppCompat_Menu -+style Base_TextAppearance_AppCompat_SearchResult -+style Base_TextAppearance_AppCompat_SearchResult_Subtitle -+style Base_TextAppearance_AppCompat_SearchResult_Title -+style Base_TextAppearance_AppCompat_Small -+style Base_TextAppearance_AppCompat_Small_Inverse -+style Base_TextAppearance_AppCompat_Subhead -+style Base_TextAppearance_AppCompat_Subhead_Inverse -+style Base_TextAppearance_AppCompat_Title -+style Base_TextAppearance_AppCompat_Title_Inverse -+style Base_TextAppearance_AppCompat_Tooltip -+style Base_TextAppearance_AppCompat_Widget_ActionBar_Menu -+style Base_TextAppearance_AppCompat_Widget_ActionBar_Subtitle -+style Base_TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse -+style Base_TextAppearance_AppCompat_Widget_ActionBar_Title -+style Base_TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse -+style Base_TextAppearance_AppCompat_Widget_ActionMode_Subtitle -+style Base_TextAppearance_AppCompat_Widget_ActionMode_Title -+style Base_TextAppearance_AppCompat_Widget_Button -+style Base_TextAppearance_AppCompat_Widget_Button_Borderless_Colored -+style Base_TextAppearance_AppCompat_Widget_Button_Colored -+style Base_TextAppearance_AppCompat_Widget_Button_Inverse -+style Base_TextAppearance_AppCompat_Widget_DropDownItem -+style Base_TextAppearance_AppCompat_Widget_PopupMenu_Header -+style Base_TextAppearance_AppCompat_Widget_PopupMenu_Large -+style Base_TextAppearance_AppCompat_Widget_PopupMenu_Small -+style Base_TextAppearance_AppCompat_Widget_Switch -+style Base_TextAppearance_AppCompat_Widget_TextView_SpinnerItem -+style Base_TextAppearance_Widget_AppCompat_ExpandedMenu_Item -+style Base_TextAppearance_Widget_AppCompat_Toolbar_Subtitle -+style Base_TextAppearance_Widget_AppCompat_Toolbar_Title -+style Base_ThemeOverlay_AppCompat -+style Base_ThemeOverlay_AppCompat_ActionBar -+style Base_ThemeOverlay_AppCompat_Dark -+style Base_ThemeOverlay_AppCompat_Dark_ActionBar -+style Base_ThemeOverlay_AppCompat_Dialog -+style Base_ThemeOverlay_AppCompat_Dialog_Alert -+style Base_ThemeOverlay_AppCompat_Light -+style Base_Theme_AppCompat -+style Base_Theme_AppCompat_CompactMenu -+style Base_Theme_AppCompat_Dialog -+style Base_Theme_AppCompat_DialogWhenLarge -+style Base_Theme_AppCompat_Dialog_Alert -+style Base_Theme_AppCompat_Dialog_FixedSize -+style Base_Theme_AppCompat_Dialog_MinWidth -+style Base_Theme_AppCompat_Light -+style Base_Theme_AppCompat_Light_DarkActionBar -+style Base_Theme_AppCompat_Light_Dialog -+style Base_Theme_AppCompat_Light_DialogWhenLarge -+style Base_Theme_AppCompat_Light_Dialog_Alert -+style Base_Theme_AppCompat_Light_Dialog_FixedSize -+style Base_Theme_AppCompat_Light_Dialog_MinWidth -+style Base_V21_ThemeOverlay_AppCompat_Dialog -+style Base_V21_Theme_AppCompat -+style Base_V21_Theme_AppCompat_Dialog -+style Base_V21_Theme_AppCompat_Light -+style Base_V21_Theme_AppCompat_Light_Dialog -+style Base_V22_Theme_AppCompat -+style Base_V22_Theme_AppCompat_Light -+style Base_V23_Theme_AppCompat -+style Base_V23_Theme_AppCompat_Light -+style Base_V26_Theme_AppCompat -+style Base_V26_Theme_AppCompat_Light -+style Base_V26_Widget_AppCompat_Toolbar -+style Base_V28_Theme_AppCompat -+style Base_V28_Theme_AppCompat_Light -+style Base_V7_ThemeOverlay_AppCompat_Dialog -+style Base_V7_Theme_AppCompat -+style Base_V7_Theme_AppCompat_Dialog -+style Base_V7_Theme_AppCompat_Light -+style Base_V7_Theme_AppCompat_Light_Dialog -+style Base_V7_Widget_AppCompat_AutoCompleteTextView -+style Base_V7_Widget_AppCompat_EditText -+style Base_V7_Widget_AppCompat_Toolbar -+style Base_Widget_AppCompat_ActionBar -+style Base_Widget_AppCompat_ActionBar_Solid -+style Base_Widget_AppCompat_ActionBar_TabBar -+style Base_Widget_AppCompat_ActionBar_TabText -+style Base_Widget_AppCompat_ActionBar_TabView -+style Base_Widget_AppCompat_ActionButton -+style Base_Widget_AppCompat_ActionButton_CloseMode -+style Base_Widget_AppCompat_ActionButton_Overflow -+style Base_Widget_AppCompat_ActionMode -+style Base_Widget_AppCompat_ActivityChooserView -+style Base_Widget_AppCompat_AutoCompleteTextView -+style Base_Widget_AppCompat_Button -+style Base_Widget_AppCompat_ButtonBar -+style Base_Widget_AppCompat_ButtonBar_AlertDialog -+style Base_Widget_AppCompat_Button_Borderless -+style Base_Widget_AppCompat_Button_Borderless_Colored -+style Base_Widget_AppCompat_Button_ButtonBar_AlertDialog -+style Base_Widget_AppCompat_Button_Colored -+style Base_Widget_AppCompat_Button_Small -+style Base_Widget_AppCompat_CompoundButton_CheckBox -+style Base_Widget_AppCompat_CompoundButton_RadioButton -+style Base_Widget_AppCompat_CompoundButton_Switch -+style Base_Widget_AppCompat_DrawerArrowToggle -+style Base_Widget_AppCompat_DrawerArrowToggle_Common -+style Base_Widget_AppCompat_DropDownItem_Spinner -+style Base_Widget_AppCompat_EditText -+style Base_Widget_AppCompat_ImageButton -+style Base_Widget_AppCompat_Light_ActionBar -+style Base_Widget_AppCompat_Light_ActionBar_Solid -+style Base_Widget_AppCompat_Light_ActionBar_TabBar -+style Base_Widget_AppCompat_Light_ActionBar_TabText -+style Base_Widget_AppCompat_Light_ActionBar_TabText_Inverse -+style Base_Widget_AppCompat_Light_ActionBar_TabView -+style Base_Widget_AppCompat_Light_PopupMenu -+style Base_Widget_AppCompat_Light_PopupMenu_Overflow -+style Base_Widget_AppCompat_ListMenuView -+style Base_Widget_AppCompat_ListPopupWindow -+style Base_Widget_AppCompat_ListView -+style Base_Widget_AppCompat_ListView_DropDown -+style Base_Widget_AppCompat_ListView_Menu -+style Base_Widget_AppCompat_PopupMenu -+style Base_Widget_AppCompat_PopupMenu_Overflow -+style Base_Widget_AppCompat_PopupWindow -+style Base_Widget_AppCompat_ProgressBar -+style Base_Widget_AppCompat_ProgressBar_Horizontal -+style Base_Widget_AppCompat_RatingBar -+style Base_Widget_AppCompat_RatingBar_Indicator -+style Base_Widget_AppCompat_RatingBar_Small -+style Base_Widget_AppCompat_SearchView -+style Base_Widget_AppCompat_SearchView_ActionBar -+style Base_Widget_AppCompat_SeekBar -+style Base_Widget_AppCompat_SeekBar_Discrete -+style Base_Widget_AppCompat_Spinner -+style Base_Widget_AppCompat_Spinner_Underlined -+style Base_Widget_AppCompat_TextView -+style Base_Widget_AppCompat_TextView_SpinnerItem -+style Base_Widget_AppCompat_Toolbar -+style Base_Widget_AppCompat_Toolbar_Button_Navigation -+style CalendarDatePickerDialog -+style CalendarDatePickerStyle -+style DialogAnimationFade -+style DialogAnimationSlide -+style Platform_AppCompat -+style Platform_AppCompat_Light -+style Platform_ThemeOverlay_AppCompat -+style Platform_ThemeOverlay_AppCompat_Dark -+style Platform_ThemeOverlay_AppCompat_Light -+style Platform_V21_AppCompat -+style Platform_V21_AppCompat_Light -+style Platform_V25_AppCompat -+style Platform_V25_AppCompat_Light -+style Platform_Widget_AppCompat_Spinner -+style RtlOverlay_DialogWindowTitle_AppCompat -+style RtlOverlay_Widget_AppCompat_ActionBar_TitleItem -+style RtlOverlay_Widget_AppCompat_DialogTitle_Icon -+style RtlOverlay_Widget_AppCompat_PopupMenuItem -+style RtlOverlay_Widget_AppCompat_PopupMenuItem_InternalGroup -+style RtlOverlay_Widget_AppCompat_PopupMenuItem_Shortcut -+style RtlOverlay_Widget_AppCompat_PopupMenuItem_SubmenuArrow -+style RtlOverlay_Widget_AppCompat_PopupMenuItem_Text -+style RtlOverlay_Widget_AppCompat_PopupMenuItem_Title -+style RtlOverlay_Widget_AppCompat_SearchView_MagIcon -+style RtlOverlay_Widget_AppCompat_Search_DropDown -+style RtlOverlay_Widget_AppCompat_Search_DropDown_Icon1 -+style RtlOverlay_Widget_AppCompat_Search_DropDown_Icon2 -+style RtlOverlay_Widget_AppCompat_Search_DropDown_Query -+style RtlOverlay_Widget_AppCompat_Search_DropDown_Text -+style RtlUnderlay_Widget_AppCompat_ActionButton -+style RtlUnderlay_Widget_AppCompat_ActionButton_Overflow -+style SpinnerDatePickerDialog -+style SpinnerDatePickerStyle -+style TextAppearance_AppCompat -+style TextAppearance_AppCompat_Body1 -+style TextAppearance_AppCompat_Body2 -+style TextAppearance_AppCompat_Button -+style TextAppearance_AppCompat_Caption -+style TextAppearance_AppCompat_Display1 -+style TextAppearance_AppCompat_Display2 -+style TextAppearance_AppCompat_Display3 -+style TextAppearance_AppCompat_Display4 -+style TextAppearance_AppCompat_Headline -+style TextAppearance_AppCompat_Inverse -+style TextAppearance_AppCompat_Large -+style TextAppearance_AppCompat_Large_Inverse -+style TextAppearance_AppCompat_Light_SearchResult_Subtitle -+style TextAppearance_AppCompat_Light_SearchResult_Title -+style TextAppearance_AppCompat_Light_Widget_PopupMenu_Large -+style TextAppearance_AppCompat_Light_Widget_PopupMenu_Small -+style TextAppearance_AppCompat_Medium -+style TextAppearance_AppCompat_Medium_Inverse -+style TextAppearance_AppCompat_Menu -+style TextAppearance_AppCompat_SearchResult_Subtitle -+style TextAppearance_AppCompat_SearchResult_Title -+style TextAppearance_AppCompat_Small -+style TextAppearance_AppCompat_Small_Inverse -+style TextAppearance_AppCompat_Subhead -+style TextAppearance_AppCompat_Subhead_Inverse -+style TextAppearance_AppCompat_Title -+style TextAppearance_AppCompat_Title_Inverse -+style TextAppearance_AppCompat_Tooltip -+style TextAppearance_AppCompat_Widget_ActionBar_Menu -+style TextAppearance_AppCompat_Widget_ActionBar_Subtitle -+style TextAppearance_AppCompat_Widget_ActionBar_Subtitle_Inverse -+style TextAppearance_AppCompat_Widget_ActionBar_Title -+style TextAppearance_AppCompat_Widget_ActionBar_Title_Inverse -+style TextAppearance_AppCompat_Widget_ActionMode_Subtitle -+style TextAppearance_AppCompat_Widget_ActionMode_Subtitle_Inverse -+style TextAppearance_AppCompat_Widget_ActionMode_Title -+style TextAppearance_AppCompat_Widget_ActionMode_Title_Inverse -+style TextAppearance_AppCompat_Widget_Button -+style TextAppearance_AppCompat_Widget_Button_Borderless_Colored -+style TextAppearance_AppCompat_Widget_Button_Colored -+style TextAppearance_AppCompat_Widget_Button_Inverse -+style TextAppearance_AppCompat_Widget_DropDownItem -+style TextAppearance_AppCompat_Widget_PopupMenu_Header -+style TextAppearance_AppCompat_Widget_PopupMenu_Large -+style TextAppearance_AppCompat_Widget_PopupMenu_Small -+style TextAppearance_AppCompat_Widget_Switch -+style TextAppearance_AppCompat_Widget_TextView_SpinnerItem -+style TextAppearance_Compat_Notification -+style TextAppearance_Compat_Notification_Info -+style TextAppearance_Compat_Notification_Line2 -+style TextAppearance_Compat_Notification_Time -+style TextAppearance_Compat_Notification_Title -+style TextAppearance_Widget_AppCompat_ExpandedMenu_Item -+style TextAppearance_Widget_AppCompat_Toolbar_Subtitle -+style TextAppearance_Widget_AppCompat_Toolbar_Title -+style Theme -+style ThemeOverlay_AppCompat -+style ThemeOverlay_AppCompat_ActionBar -+style ThemeOverlay_AppCompat_Dark -+style ThemeOverlay_AppCompat_Dark_ActionBar -+style ThemeOverlay_AppCompat_DayNight -+style ThemeOverlay_AppCompat_DayNight_ActionBar -+style ThemeOverlay_AppCompat_Dialog -+style ThemeOverlay_AppCompat_Dialog_Alert -+style ThemeOverlay_AppCompat_Light -+style Theme_AppCompat -+style Theme_AppCompat_CompactMenu -+style Theme_AppCompat_DayNight -+style Theme_AppCompat_DayNight_DarkActionBar -+style Theme_AppCompat_DayNight_Dialog -+style Theme_AppCompat_DayNight_DialogWhenLarge -+style Theme_AppCompat_DayNight_Dialog_Alert -+style Theme_AppCompat_DayNight_Dialog_MinWidth -+style Theme_AppCompat_DayNight_NoActionBar -+style Theme_AppCompat_Dialog -+style Theme_AppCompat_DialogWhenLarge -+style Theme_AppCompat_Dialog_Alert -+style Theme_AppCompat_Dialog_MinWidth -+style Theme_AppCompat_Empty -+style Theme_AppCompat_Light -+style Theme_AppCompat_Light_DarkActionBar -+style Theme_AppCompat_Light_Dialog -+style Theme_AppCompat_Light_DialogWhenLarge -+style Theme_AppCompat_Light_Dialog_Alert -+style Theme_AppCompat_Light_Dialog_MinWidth -+style Theme_AppCompat_Light_NoActionBar -+style Theme_AppCompat_NoActionBar -+style Theme_AutofillInlineSuggestion -+style Theme_Catalyst -+style Theme_Catalyst_LogBox -+style Theme_Catalyst_RedBox -+style Theme_FullScreenDialog -+style Theme_FullScreenDialogAnimatedFade -+style Theme_FullScreenDialogAnimatedSlide -+style Theme_ReactNative_AppCompat_Light -+style Theme_ReactNative_AppCompat_Light_NoActionBar_FullScreen -+style Widget_AppCompat_ActionBar -+style Widget_AppCompat_ActionBar_Solid -+style Widget_AppCompat_ActionBar_TabBar -+style Widget_AppCompat_ActionBar_TabText -+style Widget_AppCompat_ActionBar_TabView -+style Widget_AppCompat_ActionButton -+style Widget_AppCompat_ActionButton_CloseMode -+style Widget_AppCompat_ActionButton_Overflow -+style Widget_AppCompat_ActionMode -+style Widget_AppCompat_ActivityChooserView -+style Widget_AppCompat_AutoCompleteTextView -+style Widget_AppCompat_Button -+style Widget_AppCompat_ButtonBar -+style Widget_AppCompat_ButtonBar_AlertDialog -+style Widget_AppCompat_Button_Borderless -+style Widget_AppCompat_Button_Borderless_Colored -+style Widget_AppCompat_Button_ButtonBar_AlertDialog -+style Widget_AppCompat_Button_Colored -+style Widget_AppCompat_Button_Small -+style Widget_AppCompat_CompoundButton_CheckBox -+style Widget_AppCompat_CompoundButton_RadioButton -+style Widget_AppCompat_CompoundButton_Switch -+style Widget_AppCompat_DrawerArrowToggle -+style Widget_AppCompat_DropDownItem_Spinner -+style Widget_AppCompat_EditText -+style Widget_AppCompat_ImageButton -+style Widget_AppCompat_Light_ActionBar -+style Widget_AppCompat_Light_ActionBar_Solid -+style Widget_AppCompat_Light_ActionBar_Solid_Inverse -+style Widget_AppCompat_Light_ActionBar_TabBar -+style Widget_AppCompat_Light_ActionBar_TabBar_Inverse -+style Widget_AppCompat_Light_ActionBar_TabText -+style Widget_AppCompat_Light_ActionBar_TabText_Inverse -+style Widget_AppCompat_Light_ActionBar_TabView -+style Widget_AppCompat_Light_ActionBar_TabView_Inverse -+style Widget_AppCompat_Light_ActionButton -+style Widget_AppCompat_Light_ActionButton_CloseMode -+style Widget_AppCompat_Light_ActionButton_Overflow -+style Widget_AppCompat_Light_ActionMode_Inverse -+style Widget_AppCompat_Light_ActivityChooserView -+style Widget_AppCompat_Light_AutoCompleteTextView -+style Widget_AppCompat_Light_DropDownItem_Spinner -+style Widget_AppCompat_Light_ListPopupWindow -+style Widget_AppCompat_Light_ListView_DropDown -+style Widget_AppCompat_Light_PopupMenu -+style Widget_AppCompat_Light_PopupMenu_Overflow -+style Widget_AppCompat_Light_SearchView -+style Widget_AppCompat_Light_Spinner_DropDown_ActionBar -+style Widget_AppCompat_ListMenuView -+style Widget_AppCompat_ListPopupWindow -+style Widget_AppCompat_ListView -+style Widget_AppCompat_ListView_DropDown -+style Widget_AppCompat_ListView_Menu -+style Widget_AppCompat_PopupMenu -+style Widget_AppCompat_PopupMenu_Overflow -+style Widget_AppCompat_PopupWindow -+style Widget_AppCompat_ProgressBar -+style Widget_AppCompat_ProgressBar_Horizontal -+style Widget_AppCompat_RatingBar -+style Widget_AppCompat_RatingBar_Indicator -+style Widget_AppCompat_RatingBar_Small -+style Widget_AppCompat_SearchView -+style Widget_AppCompat_SearchView_ActionBar -+style Widget_AppCompat_SeekBar -+style Widget_AppCompat_SeekBar_Discrete -+style Widget_AppCompat_Spinner -+style Widget_AppCompat_Spinner_DropDown -+style Widget_AppCompat_Spinner_DropDown_ActionBar -+style Widget_AppCompat_Spinner_Underlined -+style Widget_AppCompat_TextView -+style Widget_AppCompat_TextView_SpinnerItem -+style Widget_AppCompat_Toolbar -+style Widget_AppCompat_Toolbar_Button_Navigation -+style Widget_Autofill -+style Widget_Autofill_InlineSuggestionChip -+style Widget_Autofill_InlineSuggestionEndIconStyle -+style Widget_Autofill_InlineSuggestionStartIconStyle -+style Widget_Autofill_InlineSuggestionSubtitle -+style Widget_Autofill_InlineSuggestionTitle -+style Widget_Compat_NotificationActionContainer -+style Widget_Compat_NotificationActionText -+style redboxButton -+styleable ActionBar background backgroundSplit backgroundStacked contentInsetEnd contentInsetEndWithActions contentInsetLeft contentInsetRight contentInsetStart contentInsetStartWithNavigation customNavigationLayout displayOptions divider elevation height hideOnContentScroll homeAsUpIndicator homeLayout icon indeterminateProgressStyle itemPadding logo navigationMode popupTheme progressBarPadding progressBarStyle subtitle subtitleTextStyle title titleTextStyle -+styleable ActionBarLayout android_layout_gravity -+styleable ActionMenuItemView android_minWidth -+styleable ActionMenuView -+styleable ActionMode background backgroundSplit closeItemLayout height subtitleTextStyle titleTextStyle -+styleable ActivityChooserView expandActivityOverflowButtonDrawable initialActivityCount -+styleable AlertDialog android_layout buttonIconDimen buttonPanelSideLayout listItemLayout listLayout multiChoiceItemLayout showTitle singleChoiceItemLayout -+styleable AnimatedStateListDrawableCompat android_constantSize android_dither android_enterFadeDuration android_exitFadeDuration android_variablePadding android_visible -+styleable AnimatedStateListDrawableItem android_drawable android_id -+styleable AnimatedStateListDrawableTransition android_drawable android_fromId android_reversible android_toId -+styleable AppCompatEmojiHelper -+styleable AppCompatImageView android_src srcCompat tint tintMode -+styleable AppCompatSeekBar android_thumb tickMark tickMarkTint tickMarkTintMode -+styleable AppCompatTextHelper android_drawableBottom android_drawableEnd android_drawableLeft android_drawableRight android_drawableStart android_drawableTop android_textAppearance -+styleable AppCompatTextView android_textAppearance autoSizeMaxTextSize autoSizeMinTextSize autoSizePresetSizes autoSizeStepGranularity autoSizeTextType drawableBottomCompat drawableEndCompat drawableLeftCompat drawableRightCompat drawableStartCompat drawableTint drawableTintMode drawableTopCompat emojiCompatEnabled firstBaselineToTopHeight fontFamily fontVariationSettings lastBaselineToBottomHeight lineHeight textAllCaps textLocale -+styleable AppCompatTheme actionBarDivider actionBarItemBackground actionBarPopupTheme actionBarSize actionBarSplitStyle actionBarStyle actionBarTabBarStyle actionBarTabStyle actionBarTabTextStyle actionBarTheme actionBarWidgetTheme actionButtonStyle actionDropDownStyle actionMenuTextAppearance actionMenuTextColor actionModeBackground actionModeCloseButtonStyle actionModeCloseContentDescription actionModeCloseDrawable actionModeCopyDrawable actionModeCutDrawable actionModeFindDrawable actionModePasteDrawable actionModePopupWindowStyle actionModeSelectAllDrawable actionModeShareDrawable actionModeSplitBackground actionModeStyle actionModeTheme actionModeWebSearchDrawable actionOverflowButtonStyle actionOverflowMenuStyle activityChooserViewStyle alertDialogButtonGroupStyle alertDialogCenterButtons alertDialogStyle alertDialogTheme android_windowAnimationStyle android_windowIsFloating autoCompleteTextViewStyle borderlessButtonStyle buttonBarButtonStyle buttonBarNegativeButtonStyle buttonBarNeutralButtonStyle buttonBarPositiveButtonStyle buttonBarStyle buttonStyle buttonStyleSmall checkboxStyle checkedTextViewStyle colorAccent colorBackgroundFloating colorButtonNormal colorControlActivated colorControlHighlight colorControlNormal colorError colorPrimary colorPrimaryDark colorSwitchThumbNormal controlBackground dialogCornerRadius dialogPreferredPadding dialogTheme dividerHorizontal dividerVertical dropDownListViewStyle dropdownListPreferredItemHeight editTextBackground editTextColor editTextStyle homeAsUpIndicator imageButtonStyle listChoiceBackgroundIndicator listChoiceIndicatorMultipleAnimated listChoiceIndicatorSingleAnimated listDividerAlertDialog listMenuViewStyle listPopupWindowStyle listPreferredItemHeight listPreferredItemHeightLarge listPreferredItemHeightSmall listPreferredItemPaddingEnd listPreferredItemPaddingLeft listPreferredItemPaddingRight listPreferredItemPaddingStart panelBackground panelMenuListTheme panelMenuListWidth popupMenuStyle popupWindowStyle radioButtonStyle ratingBarStyle ratingBarStyleIndicator ratingBarStyleSmall searchViewStyle seekBarStyle selectableItemBackground selectableItemBackgroundBorderless spinnerDropDownItemStyle spinnerStyle switchStyle textAppearanceLargePopupMenu textAppearanceListItem textAppearanceListItemSecondary textAppearanceListItemSmall textAppearancePopupMenuHeader textAppearanceSearchResultSubtitle textAppearanceSearchResultTitle textAppearanceSmallPopupMenu textColorAlertDialogListItem textColorSearchUrl toolbarNavigationButtonStyle toolbarStyle tooltipForegroundColor tooltipFrameBackground viewInflaterClass windowActionBar windowActionBarOverlay windowActionModeOverlay windowFixedHeightMajor windowFixedHeightMinor windowFixedWidthMajor windowFixedWidthMinor windowMinWidthMajor windowMinWidthMinor windowNoTitle -+styleable Autofill_InlineSuggestion autofillInlineSuggestionChip autofillInlineSuggestionEndIconStyle autofillInlineSuggestionStartIconStyle autofillInlineSuggestionSubtitle autofillInlineSuggestionTitle isAutofillInlineSuggestionTheme -+styleable ButtonBarLayout allowStacking -+styleable Capability queryPatterns shortcutMatchRequired -+styleable CheckedTextView android_checkMark checkMarkCompat checkMarkTint checkMarkTintMode -+styleable ColorStateListItem alpha android_alpha android_color android_lStar lStar -+styleable CompoundButton android_button buttonCompat buttonTint buttonTintMode -+styleable DrawerArrowToggle arrowHeadLength arrowShaftLength barLength color drawableSize gapBetweenBars spinBars thickness -+styleable FontFamily fontProviderAuthority fontProviderCerts fontProviderFetchStrategy fontProviderFetchTimeout fontProviderPackage fontProviderQuery fontProviderSystemFontFamily -+styleable FontFamilyFont android_font android_fontStyle android_fontVariationSettings android_fontWeight android_ttcIndex font fontStyle fontVariationSettings fontWeight ttcIndex -+styleable Fragment android_id android_name android_tag -+styleable FragmentContainerView android_name android_tag -+styleable GenericDraweeHierarchy actualImageScaleType backgroundImage fadeDuration failureImage failureImageScaleType overlayImage placeholderImage placeholderImageScaleType pressedStateOverlayImage progressBarAutoRotateInterval progressBarImage progressBarImageScaleType retryImage retryImageScaleType roundAsCircle roundBottomEnd roundBottomLeft roundBottomRight roundBottomStart roundTopEnd roundTopLeft roundTopRight roundTopStart roundWithOverlayColor roundedCornerRadius roundingBorderColor roundingBorderPadding roundingBorderWidth viewAspectRatio -+styleable GradientColor android_centerColor android_centerX android_centerY android_endColor android_endX android_endY android_gradientRadius android_startColor android_startX android_startY android_tileMode android_type -+styleable GradientColorItem android_color android_offset -+styleable LinearLayoutCompat android_baselineAligned android_baselineAlignedChildIndex android_gravity android_orientation android_weightSum divider dividerPadding measureWithLargestChild showDividers -+styleable LinearLayoutCompat_Layout android_layout_gravity android_layout_height android_layout_weight android_layout_width -+styleable ListPopupWindow android_dropDownHorizontalOffset android_dropDownVerticalOffset -+styleable MenuGroup android_checkableBehavior android_enabled android_id android_menuCategory android_orderInCategory android_visible -+styleable MenuItem actionLayout actionProviderClass actionViewClass alphabeticModifiers android_alphabeticShortcut android_checkable android_checked android_enabled android_icon android_id android_menuCategory android_numericShortcut android_onClick android_orderInCategory android_title android_titleCondensed android_visible contentDescription iconTint iconTintMode numericModifiers showAsAction tooltipText -+styleable MenuView android_headerBackground android_horizontalDivider android_itemBackground android_itemIconDisabledAlpha android_itemTextAppearance android_verticalDivider android_windowAnimationStyle preserveIconSpacing subMenuArrow -+styleable PopupWindow android_popupAnimationStyle android_popupBackground overlapAnchor -+styleable PopupWindowBackgroundState state_above_anchor -+styleable RecycleListView paddingBottomNoButtons paddingTopNoTitle -+styleable SearchView android_focusable android_imeOptions android_inputType android_maxWidth closeIcon commitIcon defaultQueryHint goIcon iconifiedByDefault layout queryBackground queryHint searchHintIcon searchIcon submitBackground suggestionRowLayout voiceIcon -+styleable SimpleDraweeView actualImageResource actualImageScaleType actualImageUri backgroundImage fadeDuration failureImage failureImageScaleType overlayImage placeholderImage placeholderImageScaleType pressedStateOverlayImage progressBarAutoRotateInterval progressBarImage progressBarImageScaleType retryImage retryImageScaleType roundAsCircle roundBottomEnd roundBottomLeft roundBottomRight roundBottomStart roundTopEnd roundTopLeft roundTopRight roundTopStart roundWithOverlayColor roundedCornerRadius roundingBorderColor roundingBorderPadding roundingBorderWidth viewAspectRatio -+styleable Spinner android_dropDownWidth android_entries android_popupBackground android_prompt popupTheme -+styleable StateListDrawable android_constantSize android_dither android_enterFadeDuration android_exitFadeDuration android_variablePadding android_visible -+styleable StateListDrawableItem android_drawable -+styleable SwitchCompat android_textOff android_textOn android_thumb showText splitTrack switchMinWidth switchPadding switchTextAppearance thumbTextPadding thumbTint thumbTintMode track trackTint trackTintMode -+styleable TextAppearance android_fontFamily android_shadowColor android_shadowDx android_shadowDy android_shadowRadius android_textColor android_textColorHint android_textColorLink android_textFontWeight android_textSize android_textStyle android_typeface fontFamily fontVariationSettings textAllCaps textLocale -+styleable Toolbar android_gravity android_minHeight buttonGravity collapseContentDescription collapseIcon contentInsetEnd contentInsetEndWithActions contentInsetLeft contentInsetRight contentInsetStart contentInsetStartWithNavigation logo logoDescription maxButtonHeight menu navigationContentDescription navigationIcon popupTheme subtitle subtitleTextAppearance subtitleTextColor title titleMargin titleMarginBottom titleMarginEnd titleMarginStart titleMarginTop titleMargins titleTextAppearance titleTextColor -+styleable View android_focusable android_theme paddingEnd paddingStart theme -+styleable ViewBackgroundHelper android_background backgroundTint backgroundTintMode -+styleable ViewStubCompat android_id android_inflatedId android_layout -+xml rn_dev_preferences -diff --git a/node_modules/@mattermost/react-native-paste-input/android/build/outputs/logs/manifest-merger-debug-report.txt b/node_modules/@mattermost/react-native-paste-input/android/build/outputs/logs/manifest-merger-debug-report.txt -new file mode 100644 -index 0000000..f153aa0 ---- /dev/null -+++ b/node_modules/@mattermost/react-native-paste-input/android/build/outputs/logs/manifest-merger-debug-report.txt -@@ -0,0 +1,25 @@ -+-- Merging decision tree log --- -+manifest -+ADDED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml:1:1-4:12 -+INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml:1:1-4:12 -+INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml:1:1-4:12 -+ package -+ ADDED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml:2:11-46 -+ INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+ INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+ xmlns:android -+ ADDED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml:1:11-69 -+uses-sdk -+INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml reason: use-sdk injection requested -+INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+ android:targetSdkVersion -+ INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+ ADDED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+ INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+ android:minSdkVersion -+ INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+ ADDED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -+ INJECTED from /Users/john/projects/professional/bluesky/social-app/node_modules/@mattermost/react-native-paste-input/android/src/main/AndroidManifest.xml -diff --git a/node_modules/@mattermost/react-native-paste-input/android/gradle.properties b/node_modules/@mattermost/react-native-paste-input/android/gradle.properties -index 19b61ff..04a9951 100644 ---- a/node_modules/@mattermost/react-native-paste-input/android/gradle.properties -+++ b/node_modules/@mattermost/react-native-paste-input/android/gradle.properties -@@ -1,4 +1,4 @@ --PasteInput_kotlinVersion=1.3.50 -+PasteInput_kotlinVersion=1.5.20 - PasteInput_compileSdkVersion=30 - PasteInput_buildToolsVersion=30.0.2 - PasteInput_targetSdkVersion=30 -diff --git a/node_modules/@mattermost/react-native-paste-input/ios/PasteInputView.m b/node_modules/@mattermost/react-native-paste-input/ios/PasteInputView.m -index e916023..0564d97 100644 ---- a/node_modules/@mattermost/react-native-paste-input/ios/PasteInputView.m -+++ b/node_modules/@mattermost/react-native-paste-input/ios/PasteInputView.m -@@ -22,6 +22,11 @@ - (instancetype)initWithBridge:(RCTBridge *)bridge - _backedTextInputView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; - _backedTextInputView.textInputDelegate = self; - -+ // Disable inline predictions to prevent jank in the composer -+ if (@available(iOS 17.0, *)) { -+ _backedTextInputView.inlinePredictionType = UITextInlinePredictionTypeNo; -+ } -+ - [self addSubview:_backedTextInputView]; - } - diff --git a/patches/@mattermost+react-native-paste-input+0.7.1.patch b/patches/@mattermost+react-native-paste-input+0.7.1.patch new file mode 100644 index 0000000000..dbf55b0959 --- /dev/null +++ b/patches/@mattermost+react-native-paste-input+0.7.1.patch @@ -0,0 +1,16 @@ +diff --git a/node_modules/@mattermost/react-native-paste-input/ios/PasteInputView.m b/node_modules/@mattermost/react-native-paste-input/ios/PasteInputView.m +index e916023..0564d97 100644 +--- a/node_modules/@mattermost/react-native-paste-input/ios/PasteInputView.m ++++ b/node_modules/@mattermost/react-native-paste-input/ios/PasteInputView.m +@@ -22,6 +22,11 @@ - (instancetype)initWithBridge:(RCTBridge *)bridge + _backedTextInputView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; + _backedTextInputView.textInputDelegate = self; + ++ // Disable inline predictions to prevent jank in the composer ++ if (@available(iOS 17.0, *)) { ++ _backedTextInputView.inlinePredictionType = UITextInlinePredictionTypeNo; ++ } ++ + [self addSubview:_backedTextInputView]; + } + diff --git a/patches/@react-navigation+native+6.1.7.patch b/patches/@react-navigation+native+6.1.7.patch deleted file mode 100644 index b604e2c1aa..0000000000 --- a/patches/@react-navigation+native+6.1.7.patch +++ /dev/null @@ -1,56 +0,0 @@ -diff --git a/node_modules/@react-navigation/native/lib/commonjs/useLinking.js b/node_modules/@react-navigation/native/lib/commonjs/useLinking.js -index ef4f368..2b0da35 100644 ---- a/node_modules/@react-navigation/native/lib/commonjs/useLinking.js -+++ b/node_modules/@react-navigation/native/lib/commonjs/useLinking.js -@@ -273,8 +273,12 @@ function useLinking(ref, _ref) { - }); - const currentIndex = history.index; - try { -- if (nextIndex !== -1 && nextIndex < currentIndex) { -- // An existing entry for this path exists and it's less than current index, go back to that -+ if ( -+ nextIndex !== -1 && -+ nextIndex < currentIndex && -+ // We should only go back if the entry exists and it's less than current index -+ history.get(nextIndex - currentIndex) -+ ) { // An existing entry for this path exists and it's less than current index, go back to that - await history.go(nextIndex - currentIndex); - } else { - // We couldn't find an existing entry to go back to, so we'll go back by the delta -diff --git a/node_modules/@react-navigation/native/lib/module/useLinking.js b/node_modules/@react-navigation/native/lib/module/useLinking.js -index 62a3b43..11a5a28 100644 ---- a/node_modules/@react-navigation/native/lib/module/useLinking.js -+++ b/node_modules/@react-navigation/native/lib/module/useLinking.js -@@ -264,8 +264,12 @@ export default function useLinking(ref, _ref) { - }); - const currentIndex = history.index; - try { -- if (nextIndex !== -1 && nextIndex < currentIndex) { -- // An existing entry for this path exists and it's less than current index, go back to that -+ if ( -+ nextIndex !== -1 && -+ nextIndex < currentIndex && -+ // We should only go back if the entry exists and it's less than current index -+ history.get(nextIndex - currentIndex) -+ ) { // An existing entry for this path exists and it's less than current index, go back to that - await history.go(nextIndex - currentIndex); - } else { - // We couldn't find an existing entry to go back to, so we'll go back by the delta -diff --git a/node_modules/@react-navigation/native/src/useLinking.tsx b/node_modules/@react-navigation/native/src/useLinking.tsx -index 3db40b7..9ba4ecd 100644 ---- a/node_modules/@react-navigation/native/src/useLinking.tsx -+++ b/node_modules/@react-navigation/native/src/useLinking.tsx -@@ -381,7 +381,12 @@ export default function useLinking( - const currentIndex = history.index; - - try { -- if (nextIndex !== -1 && nextIndex < currentIndex) { -+ if ( -+ nextIndex !== -1 && -+ nextIndex < currentIndex && -+ // We should only go back if the entry exists and it's less than current index -+ history.get(nextIndex - currentIndex) -+ ) { - // An existing entry for this path exists and it's less than current index, go back to that - await history.go(nextIndex - currentIndex); - } else { diff --git a/patches/@react-navigation+native+6.1.7.patch.md b/patches/@react-navigation+native+6.1.7.patch.md deleted file mode 100644 index 60b0d4e140..0000000000 --- a/patches/@react-navigation+native+6.1.7.patch.md +++ /dev/null @@ -1,5 +0,0 @@ -# React Navigation history bug patch - -This patches react-navigation to fix the issues in https://github.com/bluesky-social/social-app/issues/710. - -This is based on the PR found at https://github.com/react-navigation/react-navigation/pull/11833 diff --git a/patches/expo-image-picker+14.7.1.patch b/patches/expo-image-picker+14.7.1.patch deleted file mode 100644 index 046eb4f4f3..0000000000 --- a/patches/expo-image-picker+14.7.1.patch +++ /dev/null @@ -1,112 +0,0 @@ -diff --git a/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/ImagePickerModule.kt b/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/ImagePickerModule.kt -index 3f50f8c..ee47fa1 100644 ---- a/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/ImagePickerModule.kt -+++ b/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/ImagePickerModule.kt -@@ -33,7 +33,9 @@ import kotlin.coroutines.resumeWithException - // TODO(@bbarthec): rename to ExpoImagePicker - private const val moduleName = "ExponentImagePicker" - -+ - class ImagePickerModule : Module() { -+ private var isPickerOpen = false - - override fun definition() = ModuleDefinition { - Name(moduleName) -@@ -129,6 +131,11 @@ class ImagePickerModule : Module() { - options: ImagePickerOptions - ): Any { - return try { -+ if(isPickerOpen) { -+ return ImagePickerResponse(canceled = true) -+ } -+ -+ isPickerOpen = true - var result = launchPicker(pickerLauncher) - if ( - !options.allowsMultipleSelection && -@@ -143,6 +150,8 @@ class ImagePickerModule : Module() { - mediaHandler.readExtras(result.data, options) - } catch (cause: OperationCanceledException) { - return ImagePickerResponse(canceled = true) -+ } finally { -+ isPickerOpen = false - } - } - -diff --git a/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/contracts/ImageLibraryContract.kt b/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/contracts/ImageLibraryContract.kt -index ff15c91..9763012 100644 ---- a/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/contracts/ImageLibraryContract.kt -+++ b/node_modules/expo-image-picker/android/src/main/java/expo/modules/imagepicker/contracts/ImageLibraryContract.kt -@@ -5,12 +5,7 @@ import android.content.ContentResolver - import android.content.Context - import android.content.Intent - import android.net.Uri --import androidx.activity.result.PickVisualMediaRequest --import androidx.activity.result.contract.ActivityResultContracts.PickVisualMedia --import androidx.activity.result.contract.ActivityResultContracts.PickMultipleVisualMedia - import expo.modules.imagepicker.ImagePickerOptions --import expo.modules.imagepicker.MediaTypes --import expo.modules.imagepicker.UNLIMITED_SELECTION - import expo.modules.imagepicker.getAllDataUris - import expo.modules.imagepicker.toMediaType - import expo.modules.kotlin.activityresult.AppContextActivityResultContract -@@ -26,51 +21,26 @@ import java.io.Serializable - * @see [androidx.activity.result.contract.ActivityResultContracts.GetMultipleContents] - */ - internal class ImageLibraryContract( -- private val appContextProvider: AppContextProvider -+ private val appContextProvider: AppContextProvider, - ) : AppContextActivityResultContract { - private val contentResolver: ContentResolver - get() = appContextProvider.appContext.reactContext?.contentResolver - ?: throw Exceptions.ReactContextLost() - - override fun createIntent(context: Context, input: ImageLibraryContractOptions): Intent { -- val request = PickVisualMediaRequest.Builder() -- .setMediaType( -- when (input.options.mediaTypes) { -- MediaTypes.VIDEOS -> { -- PickVisualMedia.VideoOnly -- } -- -- MediaTypes.IMAGES -> { -- PickVisualMedia.ImageOnly -- } -- -- else -> { -- PickVisualMedia.ImageAndVideo -- } -- } -- ) -- .build() -+ val intent = Intent(Intent.ACTION_GET_CONTENT) -+ .addCategory(Intent.CATEGORY_OPENABLE) -+ .setType("image/*") - - if (input.options.allowsMultipleSelection) { -- val selectionLimit = input.options.selectionLimit -- -- if (selectionLimit == 1) { -- // If multiple selection is allowed but the limit is 1, we should ignore -- // the multiple selection flag and just treat it as a single selection. -- return PickVisualMedia().createIntent(context, request) -+ if(input.options.selectionLimit == 1) { -+ return intent - } - -- if (selectionLimit > 1) { -- return PickMultipleVisualMedia(selectionLimit).createIntent(context, request) -- } -- -- // If the selection limit is 0, it is the same as unlimited selection. -- if (selectionLimit == UNLIMITED_SELECTION) { -- return PickMultipleVisualMedia().createIntent(context, request) -- } -+ intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true) - } - -- return PickVisualMedia().createIntent(context, request) -+ return intent - } - - override fun parseResult(input: ImageLibraryContractOptions, resultCode: Int, intent: Intent?) = diff --git a/patches/expo-image-picker+14.7.1.patch.md b/patches/expo-image-picker+14.7.1.patch.md deleted file mode 100644 index 47c0daed5d..0000000000 --- a/patches/expo-image-picker+14.7.1.patch.md +++ /dev/null @@ -1,3 +0,0 @@ -added by https://github.com/bluesky-social/social-app/pull/2384#pullrequestreview-1800985521 - -hackfixes the image picker on android so that the user can select from their typical image sources \ No newline at end of file diff --git a/patches/expo-notifications+0.28.3.patch b/patches/expo-notifications+0.28.3.patch new file mode 100644 index 0000000000..3a9985c7b0 --- /dev/null +++ b/patches/expo-notifications+0.28.3.patch @@ -0,0 +1,191 @@ +diff --git a/node_modules/expo-notifications/android/build.gradle b/node_modules/expo-notifications/android/build.gradle +index d233e1f..cc2f856 100644 +--- a/node_modules/expo-notifications/android/build.gradle ++++ b/node_modules/expo-notifications/android/build.gradle +@@ -32,6 +32,7 @@ dependencies { + api 'com.google.firebase:firebase-messaging:22.0.0' + + api 'me.leolin:ShortcutBadger:1.1.22@aar' ++ implementation project(':expo-background-notification-handler') + + if (project.findProject(':expo-modules-test-core')) { + testImplementation project(':expo-modules-test-core') +diff --git a/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/JSONNotificationContentBuilder.java b/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/JSONNotificationContentBuilder.java +index 0af7fe0..8f2c8d8 100644 +--- a/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/JSONNotificationContentBuilder.java ++++ b/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/JSONNotificationContentBuilder.java +@@ -14,6 +14,7 @@ import expo.modules.notifications.notifications.enums.NotificationPriority; + import expo.modules.notifications.notifications.model.NotificationContent; + + public class JSONNotificationContentBuilder extends NotificationContent.Builder { ++ private static final String CHANNEL_ID_KEY = "channelId"; + private static final String TITLE_KEY = "title"; + private static final String TEXT_KEY = "message"; + private static final String SUBTITLE_KEY = "subtitle"; +@@ -36,6 +37,7 @@ public class JSONNotificationContentBuilder extends NotificationContent.Builder + + public NotificationContent.Builder setPayload(JSONObject payload) { + this.setTitle(getTitle(payload)) ++ .setChannelId(getChannelId(payload)) + .setSubtitle(getSubtitle(payload)) + .setText(getText(payload)) + .setBody(getBody(payload)) +@@ -60,6 +62,14 @@ public class JSONNotificationContentBuilder extends NotificationContent.Builder + return this; + } + ++ protected String getChannelId(JSONObject payload) { ++ try { ++ return payload.getString(CHANNEL_ID_KEY); ++ } catch (JSONException e) { ++ return null; ++ } ++ } ++ + protected String getTitle(JSONObject payload) { + try { + return payload.getString(TITLE_KEY); +diff --git a/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/model/NotificationContent.java b/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/model/NotificationContent.java +index f1fed19..80afe9e 100644 +--- a/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/model/NotificationContent.java ++++ b/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/model/NotificationContent.java +@@ -20,6 +20,7 @@ import expo.modules.notifications.notifications.enums.NotificationPriority; + * should be created using {@link NotificationContent.Builder}. + */ + public class NotificationContent implements Parcelable, Serializable { ++ private String mChannelId; + private String mTitle; + private String mText; + private String mSubtitle; +@@ -50,6 +51,11 @@ public class NotificationContent implements Parcelable, Serializable { + } + }; + ++ @Nullable ++ public String getChannelId() { ++ return mTitle; ++ } ++ + @Nullable + public String getTitle() { + return mTitle; +@@ -121,6 +127,7 @@ public class NotificationContent implements Parcelable, Serializable { + } + + protected NotificationContent(Parcel in) { ++ mChannelId = in.readString(); + mTitle = in.readString(); + mText = in.readString(); + mSubtitle = in.readString(); +@@ -146,6 +153,7 @@ public class NotificationContent implements Parcelable, Serializable { + + @Override + public void writeToParcel(Parcel dest, int flags) { ++ dest.writeString(mChannelId); + dest.writeString(mTitle); + dest.writeString(mText); + dest.writeString(mSubtitle); +@@ -166,6 +174,7 @@ public class NotificationContent implements Parcelable, Serializable { + private static final long serialVersionUID = 397666843266836802L; + + private void writeObject(java.io.ObjectOutputStream out) throws IOException { ++ out.writeObject(mChannelId); + out.writeObject(mTitle); + out.writeObject(mText); + out.writeObject(mSubtitle); +@@ -190,6 +199,7 @@ public class NotificationContent implements Parcelable, Serializable { + } + + private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException { ++ mChannelId = (String) in.readObject(); + mTitle = (String) in.readObject(); + mText = (String) in.readObject(); + mSubtitle = (String) in.readObject(); +@@ -240,6 +250,7 @@ public class NotificationContent implements Parcelable, Serializable { + } + + public static class Builder { ++ private String mChannelId; + private String mTitle; + private String mText; + private String mSubtitle; +@@ -260,6 +271,11 @@ public class NotificationContent implements Parcelable, Serializable { + useDefaultVibrationPattern(); + } + ++ public Builder setChannelId(String channelId) { ++ mChannelId = channelId; ++ return this; ++ } ++ + public Builder setTitle(String title) { + mTitle = title; + return this; +@@ -336,6 +352,7 @@ public class NotificationContent implements Parcelable, Serializable { + + public NotificationContent build() { + NotificationContent content = new NotificationContent(); ++ content.mChannelId = mChannelId; + content.mTitle = mTitle; + content.mSubtitle = mSubtitle; + content.mText = mText; +diff --git a/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/presentation/builders/ExpoNotificationBuilder.java b/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/presentation/builders/ExpoNotificationBuilder.java +index 6bd9928..ee93d70 100644 +--- a/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/presentation/builders/ExpoNotificationBuilder.java ++++ b/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/notifications/presentation/builders/ExpoNotificationBuilder.java +@@ -48,6 +48,10 @@ public class ExpoNotificationBuilder extends ChannelAwareNotificationBuilder { + + NotificationContent content = getNotificationContent(); + ++ if (content.getChannelId() != null) { ++ builder.setChannelId(content.getChannelId()); ++ } ++ + builder.setAutoCancel(content.isAutoDismiss()); + builder.setOngoing(content.isSticky()); + +diff --git a/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/service/delegates/FirebaseMessagingDelegate.kt b/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/service/delegates/FirebaseMessagingDelegate.kt +index 55b3a8d..1b99d5b 100644 +--- a/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/service/delegates/FirebaseMessagingDelegate.kt ++++ b/node_modules/expo-notifications/android/src/main/java/expo/modules/notifications/service/delegates/FirebaseMessagingDelegate.kt +@@ -12,11 +12,14 @@ import expo.modules.notifications.notifications.model.triggers.FirebaseNotificat + import expo.modules.notifications.service.NotificationsService + import expo.modules.notifications.service.interfaces.FirebaseMessagingDelegate + import expo.modules.notifications.tokens.interfaces.FirebaseTokenListener ++import expo.modules.backgroundnotificationhandler.BackgroundNotificationHandler ++import expo.modules.backgroundnotificationhandler.BackgroundNotificationHandlerInterface ++import expo.modules.backgroundnotificationhandler.ExpoBackgroundNotificationHandlerModule + import org.json.JSONObject + import java.lang.ref.WeakReference + import java.util.* + +-open class FirebaseMessagingDelegate(protected val context: Context) : FirebaseMessagingDelegate { ++open class FirebaseMessagingDelegate(protected val context: Context) : FirebaseMessagingDelegate, BackgroundNotificationHandlerInterface { + companion object { + // Unfortunately we cannot save state between instances of a service other way + // than by static properties. Fortunately, using weak references we can +@@ -89,12 +92,21 @@ open class FirebaseMessagingDelegate(protected val context: Context) : FirebaseM + fun getBackgroundTasks() = sBackgroundTaskConsumerReferences.values.mapNotNull { it.get() } + + override fun onMessageReceived(remoteMessage: RemoteMessage) { +- NotificationsService.receive(context, createNotification(remoteMessage)) +- getBackgroundTasks().forEach { +- it.scheduleJob(RemoteMessageSerializer.toBundle(remoteMessage)) ++ if (!ExpoBackgroundNotificationHandlerModule.isForegrounded) { ++ BackgroundNotificationHandler(context, this).handleMessage(remoteMessage) ++ return ++ } else { ++ showMessage(remoteMessage) ++ getBackgroundTasks().forEach { ++ it.scheduleJob(RemoteMessageSerializer.toBundle(remoteMessage)) ++ } + } + } + ++ override fun showMessage(remoteMessage: RemoteMessage) { ++ NotificationsService.receive(context, createNotification(remoteMessage)) ++ } ++ + protected fun createNotification(remoteMessage: RemoteMessage): Notification { + val identifier = getNotificationIdentifier(remoteMessage) + val payload = JSONObject(remoteMessage.data as Map<*, *>) diff --git a/patches/expo-notifications-0.28.3.patch.md b/patches/expo-notifications-0.28.3.patch.md new file mode 100644 index 0000000000..59b2598f3b --- /dev/null +++ b/patches/expo-notifications-0.28.3.patch.md @@ -0,0 +1,9 @@ +## LOAD BEARING PATCH, DO NOT REMOVE + +## Expo-Notifications Patch + +This patch supports the Android background notification handling module. Incoming messages +in `onMessageReceived` are sent to the module for handling. + +It also allows us to set the Android notification channel ID from the notification `data`, rather +than the `notification` object in the payload. diff --git a/patches/expo-updates+0.24.7.patch b/patches/expo-updates+0.25.11.patch similarity index 60% rename from patches/expo-updates+0.24.7.patch rename to patches/expo-updates+0.25.11.patch index 603ae32ef8..5f9eceef48 100644 --- a/patches/expo-updates+0.24.7.patch +++ b/patches/expo-updates+0.25.11.patch @@ -1,11 +1,11 @@ -diff --git a/node_modules/expo-updates/ios/EXUpdates/Update/NewUpdate.swift b/node_modules/expo-updates/ios/EXUpdates/Update/NewUpdate.swift -index 189a5f5..8d5b8e6 100644 ---- a/node_modules/expo-updates/ios/EXUpdates/Update/NewUpdate.swift -+++ b/node_modules/expo-updates/ios/EXUpdates/Update/NewUpdate.swift -@@ -68,13 +68,20 @@ public final class NewUpdate: Update { - processedAssets.append(asset) +diff --git a/node_modules/expo-updates/ios/EXUpdates/Update/ExpoUpdatesUpdate.swift b/node_modules/expo-updates/ios/EXUpdates/Update/ExpoUpdatesUpdate.swift +index b85291e..07a5d3c 100644 +--- a/node_modules/expo-updates/ios/EXUpdates/Update/ExpoUpdatesUpdate.swift ++++ b/node_modules/expo-updates/ios/EXUpdates/Update/ExpoUpdatesUpdate.swift +@@ -78,13 +78,20 @@ public final class ExpoUpdatesUpdate: Update { + status = UpdateStatus.StatusPending } - + + // Instead of relying on various hacks to get the correct format for the specific + // platform on the backend, we can just add this little patch.. + let dateFormatter = DateFormatter() @@ -23,4 +23,4 @@ index 189a5f5..8d5b8e6 100644 + commitTime: date, runtimeVersion: runtimeVersion, keep: true, - status: UpdateStatus.StatusPending, + status: status, diff --git a/patches/expo-updates+0.24.7.patch.md b/patches/expo-updates+0.25.11.patch.md similarity index 96% rename from patches/expo-updates+0.24.7.patch.md rename to patches/expo-updates+0.25.11.patch.md index 8a8848127e..6d5d7093df 100644 --- a/patches/expo-updates+0.24.7.patch.md +++ b/patches/expo-updates+0.25.11.patch.md @@ -4,4 +4,4 @@ This is a small patch to convert timestamp formats that are returned from the ba backend to return the correct format for a specific format (the format required on Android is not the same as on iOS) we can just add this conversion in. -Don't remove unless we make changes on the backend to support both platforms. \ No newline at end of file +Don't remove unless we make changes on the backend to support both platforms. diff --git a/patches/react-native+0.73.2.patch b/patches/react-native+0.74.1.patch similarity index 100% rename from patches/react-native+0.73.2.patch rename to patches/react-native+0.74.1.patch diff --git a/patches/react-native+0.73.2.patch.md b/patches/react-native+0.74.1.patch.md similarity index 100% rename from patches/react-native+0.73.2.patch.md rename to patches/react-native+0.74.1.patch.md diff --git a/patches/react-native-reanimated+3.11.0.patch b/patches/react-native-reanimated+3.11.0.patch new file mode 100644 index 0000000000..9147cf08ef --- /dev/null +++ b/patches/react-native-reanimated+3.11.0.patch @@ -0,0 +1,237 @@ +diff --git a/node_modules/react-native-reanimated/src/createAnimatedComponent/commonTypes.ts b/node_modules/react-native-reanimated/src/createAnimatedComponent/commonTypes.ts +index 92ebe62..5f8207e 100644 +--- a/node_modules/react-native-reanimated/src/createAnimatedComponent/commonTypes.ts ++++ b/node_modules/react-native-reanimated/src/createAnimatedComponent/commonTypes.ts +@@ -96,7 +96,8 @@ export interface AnimatedComponentRef extends Component { + export interface IAnimatedComponentInternal { + _styles: StyleProps[] | null; + _animatedProps?: Partial>; +- _viewTag: number; ++ _componentViewTag: number; ++ _eventViewTag: number; + _isFirstRender: boolean; + jestAnimatedStyle: { value: StyleProps }; + _component: AnimatedComponentRef | HTMLElement | null; +diff --git a/node_modules/react-native-reanimated/src/createAnimatedComponent/createAnimatedComponent.tsx b/node_modules/react-native-reanimated/src/createAnimatedComponent/createAnimatedComponent.tsx +index 88b3fdf..2488ebc 100644 +--- a/node_modules/react-native-reanimated/src/createAnimatedComponent/createAnimatedComponent.tsx ++++ b/node_modules/react-native-reanimated/src/createAnimatedComponent/createAnimatedComponent.tsx +@@ -122,7 +122,8 @@ export function createAnimatedComponent( + { + _styles: StyleProps[] | null = null; + _animatedProps?: Partial>; +- _viewTag = -1; ++ _componentViewTag = -1; ++ _eventViewTag = -1; + _isFirstRender = true; + jestAnimatedStyle: { value: StyleProps } = { value: {} }; + _component: AnimatedComponentRef | HTMLElement | null = null; +@@ -143,7 +144,8 @@ export function createAnimatedComponent( + } + + componentDidMount() { +- this._viewTag = this._getViewInfo().viewTag as number; ++ this._setComponentViewTag(); ++ this._setEventViewTag(); + this._attachNativeEvents(); + this._jsPropsUpdater.addOnJSPropsChangeListener(this); + this._attachAnimatedStyles(); +@@ -185,7 +187,10 @@ export function createAnimatedComponent( + if (this.props.sharedTransitionTag) { + this._configureSharedTransition(true); + } +- this._sharedElementTransition?.unregisterTransition(this._viewTag, true); ++ this._sharedElementTransition?.unregisterTransition( ++ this._componentViewTag, ++ true ++ ); + + const exiting = this.props.exiting; + if ( +@@ -209,7 +214,7 @@ export function createAnimatedComponent( + : getReduceMotionFromConfig(); + if (!reduceMotionInExiting) { + updateLayoutAnimations( +- this._viewTag, ++ this._componentViewTag, + LayoutAnimationType.EXITING, + maybeBuild( + exiting, +@@ -221,12 +226,22 @@ export function createAnimatedComponent( + } + } + +- _getEventViewRef() { +- // Make sure to get the scrollable node for components that implement +- // `ScrollResponder.Mixin`. +- return (this._component as AnimatedComponentRef)?.getScrollableNode +- ? (this._component as AnimatedComponentRef).getScrollableNode?.() +- : this._component; ++ _setComponentViewTag() { ++ this._componentViewTag = this._getViewInfo().viewTag as number; ++ } ++ ++ _setEventViewTag() { ++ // Setting the tag for registering events - since the event emitting view can be nested inside the main component ++ const componentAnimatedRef = this._component as AnimatedComponentRef; ++ if (componentAnimatedRef.getScrollableNode) { ++ const scrollableNode = componentAnimatedRef.getScrollableNode(); ++ this._eventViewTag = findNodeHandle(scrollableNode) ?? -1; ++ } else { ++ this._eventViewTag = ++ findNodeHandle( ++ options?.setNativeProps ? this : componentAnimatedRef ++ ) ?? -1; ++ } + } + + _attachNativeEvents() { +@@ -236,7 +251,7 @@ export function createAnimatedComponent( + has('workletEventHandler', prop) && + prop.workletEventHandler instanceof WorkletEventHandler + ) { +- prop.workletEventHandler.registerForEvents(this._viewTag, key); ++ prop.workletEventHandler.registerForEvents(this._eventViewTag, key); + } + } + } +@@ -248,7 +263,7 @@ export function createAnimatedComponent( + has('workletEventHandler', prop) && + prop.workletEventHandler instanceof WorkletEventHandler + ) { +- prop.workletEventHandler.unregisterFromEvents(this._viewTag); ++ prop.workletEventHandler.unregisterFromEvents(this._eventViewTag); + } + } + } +@@ -258,15 +273,17 @@ export function createAnimatedComponent( + for (const style of this._styles) { + style.viewsRef.remove(this); + } +- } else if (this._viewTag !== -1 && this._styles !== null) { ++ } else if (this._componentViewTag !== -1 && this._styles !== null) { + for (const style of this._styles) { +- style.viewDescriptors.remove(this._viewTag); ++ style.viewDescriptors.remove(this._componentViewTag); + } + if (this.props.animatedProps?.viewDescriptors) { +- this.props.animatedProps.viewDescriptors.remove(this._viewTag); ++ this.props.animatedProps.viewDescriptors.remove( ++ this._componentViewTag ++ ); + } + if (isFabric()) { +- removeFromPropsRegistry(this._viewTag); ++ removeFromPropsRegistry(this._componentViewTag); + } + } + } +@@ -283,15 +300,19 @@ export function createAnimatedComponent( + const newProp = this.props[key]; + if (!newProp) { + // Prop got deleted +- prevProp.workletEventHandler.unregisterFromEvents(this._viewTag); ++ prevProp.workletEventHandler.unregisterFromEvents( ++ this._eventViewTag ++ ); + } else if ( + has('workletEventHandler', newProp) && + newProp.workletEventHandler instanceof WorkletEventHandler && + newProp.workletEventHandler !== prevProp.workletEventHandler + ) { + // Prop got changed +- prevProp.workletEventHandler.unregisterFromEvents(this._viewTag); +- newProp.workletEventHandler.registerForEvents(this._viewTag); ++ prevProp.workletEventHandler.unregisterFromEvents( ++ this._eventViewTag ++ ); ++ newProp.workletEventHandler.registerForEvents(this._eventViewTag); + } + } + } +@@ -304,7 +325,7 @@ export function createAnimatedComponent( + !prevProps[key] + ) { + // Prop got added +- newProp.workletEventHandler.registerForEvents(this._viewTag); ++ newProp.workletEventHandler.registerForEvents(this._eventViewTag); + } + } + } +@@ -381,7 +402,7 @@ export function createAnimatedComponent( + adaptViewConfig(viewConfig); + } + +- this._viewTag = viewTag as number; ++ this._componentViewTag = viewTag as number; + + // remove old styles + if (prevStyles) { +@@ -487,7 +508,11 @@ export function createAnimatedComponent( + AnimatedComponent.displayName + ) + : undefined; +- updateLayoutAnimations(this._viewTag, LayoutAnimationType.LAYOUT, layout); ++ updateLayoutAnimations( ++ this._componentViewTag, ++ LayoutAnimationType.LAYOUT, ++ layout ++ ); + } + + _configureSharedTransition(isUnmounting = false) { +@@ -497,7 +522,7 @@ export function createAnimatedComponent( + const { sharedTransitionTag } = this.props; + if (!sharedTransitionTag) { + this._sharedElementTransition?.unregisterTransition( +- this._viewTag, ++ this._componentViewTag, + isUnmounting + ); + this._sharedElementTransition = null; +@@ -508,7 +533,7 @@ export function createAnimatedComponent( + this._sharedElementTransition ?? + new SharedTransition(); + sharedElementTransition.registerTransition( +- this._viewTag, ++ this._componentViewTag, + sharedTransitionTag, + isUnmounting + ); +@@ -527,7 +552,7 @@ export function createAnimatedComponent( + ? (ref as HTMLElement) + : findNodeHandle(ref as Component); + +- this._viewTag = tag as number; ++ this._componentViewTag = tag as number; + + const { layout, entering, exiting, sharedTransitionTag } = this.props; + if ( +diff --git a/node_modules/react-native-reanimated/lib/module/reanimated2/index.js b/node_modules/react-native-reanimated/lib/module/reanimated2/index.js +index ac9be5d..86d4605 100644 +--- a/node_modules/react-native-reanimated/lib/module/reanimated2/index.js ++++ b/node_modules/react-native-reanimated/lib/module/reanimated2/index.js +@@ -47,4 +47,5 @@ export { LayoutAnimationConfig } from './component/LayoutAnimationConfig'; + export { PerformanceMonitor } from './component/PerformanceMonitor'; + export { startMapper, stopMapper } from './mappers'; + export { startScreenTransition, finishScreenTransition, ScreenTransition } from './screenTransition'; ++export { isReducedMotion } from './PlatformChecker'; + //# sourceMappingURL=index.js.map +diff --git a/node_modules/react-native-reanimated/lib/typescript/reanimated2/index.d.ts b/node_modules/react-native-reanimated/lib/typescript/reanimated2/index.d.ts +index f01dc57..161ef22 100644 +--- a/node_modules/react-native-reanimated/lib/typescript/reanimated2/index.d.ts ++++ b/node_modules/react-native-reanimated/lib/typescript/reanimated2/index.d.ts +@@ -36,3 +36,4 @@ export type { FlatListPropsWithLayout } from './component/FlatList'; + export { startMapper, stopMapper } from './mappers'; + export { startScreenTransition, finishScreenTransition, ScreenTransition, } from './screenTransition'; + export type { AnimatedScreenTransition, GoBackGesture, ScreenTransitionConfig, } from './screenTransition'; ++export { isReducedMotion } from './PlatformChecker'; +diff --git a/node_modules/react-native-reanimated/src/reanimated2/index.ts b/node_modules/react-native-reanimated/src/reanimated2/index.ts +index 5885fa1..a3c693f 100644 +--- a/node_modules/react-native-reanimated/src/reanimated2/index.ts ++++ b/node_modules/react-native-reanimated/src/reanimated2/index.ts +@@ -284,3 +284,4 @@ export type { + GoBackGesture, + ScreenTransitionConfig, + } from './screenTransition'; ++export { isReducedMotion } from './PlatformChecker'; diff --git a/plugins/notificationsExtension/README.md b/plugins/notificationsExtension/README.md new file mode 100644 index 0000000000..31b8bfe7d6 --- /dev/null +++ b/plugins/notificationsExtension/README.md @@ -0,0 +1,17 @@ +# Notifications extension plugin for Expo + +This plugin handles moving the necessary files into their respective iOS directories + +## Steps + +### ios + +1. Update entitlements +2. Set the app group to group. +3. Add the extension plist +4. Add the view controller +5. Update the xcode project's build phases + +## Credits + +Adapted from https://github.com/andrew-levy/react-native-safari-extension and https://github.com/timedtext/expo-config-plugin-ios-share-extension/blob/master/src/withShareExtensionXcodeTarget.ts diff --git a/plugins/notificationsExtension/withAppEntitlements.js b/plugins/notificationsExtension/withAppEntitlements.js new file mode 100644 index 0000000000..4ce81ea611 --- /dev/null +++ b/plugins/notificationsExtension/withAppEntitlements.js @@ -0,0 +1,13 @@ +const {withEntitlementsPlist} = require('@expo/config-plugins') + +const withAppEntitlements = config => { + // eslint-disable-next-line no-shadow + return withEntitlementsPlist(config, async config => { + config.modResults['com.apple.security.application-groups'] = [ + `group.app.bsky`, + ] + return config + }) +} + +module.exports = {withAppEntitlements} diff --git a/plugins/notificationsExtension/withExtensionEntitlements.js b/plugins/notificationsExtension/withExtensionEntitlements.js new file mode 100644 index 0000000000..0cc1c4ca8c --- /dev/null +++ b/plugins/notificationsExtension/withExtensionEntitlements.js @@ -0,0 +1,31 @@ +const {withInfoPlist} = require('@expo/config-plugins') +const plist = require('@expo/plist') +const path = require('path') +const fs = require('fs') + +const withExtensionEntitlements = (config, {extensionName}) => { + // eslint-disable-next-line no-shadow + return withInfoPlist(config, config => { + const extensionEntitlementsPath = path.join( + config.modRequest.platformProjectRoot, + extensionName, + `${extensionName}.entitlements`, + ) + + const notificationsExtensionEntitlements = { + 'com.apple.security.application-groups': [`group.app.bsky`], + } + + fs.mkdirSync(path.dirname(extensionEntitlementsPath), { + recursive: true, + }) + fs.writeFileSync( + extensionEntitlementsPath, + plist.default.build(notificationsExtensionEntitlements), + ) + + return config + }) +} + +module.exports = {withExtensionEntitlements} diff --git a/plugins/notificationsExtension/withExtensionInfoPlist.js b/plugins/notificationsExtension/withExtensionInfoPlist.js new file mode 100644 index 0000000000..b0c6cfa89a --- /dev/null +++ b/plugins/notificationsExtension/withExtensionInfoPlist.js @@ -0,0 +1,39 @@ +const {withInfoPlist} = require('@expo/config-plugins') +const plist = require('@expo/plist') +const path = require('path') +const fs = require('fs') + +const withExtensionInfoPlist = (config, {extensionName}) => { + // eslint-disable-next-line no-shadow + return withInfoPlist(config, config => { + const plistPath = path.join( + config.modRequest.projectRoot, + 'modules', + extensionName, + 'Info.plist', + ) + const targetPath = path.join( + config.modRequest.platformProjectRoot, + extensionName, + 'Info.plist', + ) + + const extPlist = plist.default.parse(fs.readFileSync(plistPath).toString()) + + extPlist.MainAppScheme = config.scheme + extPlist.CFBundleName = '$(PRODUCT_NAME)' + extPlist.CFBundleDisplayName = 'Bluesky Notifications' + extPlist.CFBundleIdentifier = '$(PRODUCT_BUNDLE_IDENTIFIER)' + extPlist.CFBundleVersion = '$(CURRENT_PROJECT_VERSION)' + extPlist.CFBundleExecutable = '$(EXECUTABLE_NAME)' + extPlist.CFBundlePackageType = '$(PRODUCT_BUNDLE_PACKAGE_TYPE)' + extPlist.CFBundleShortVersionString = '$(MARKETING_VERSION)' + + fs.mkdirSync(path.dirname(targetPath), {recursive: true}) + fs.writeFileSync(targetPath, plist.default.build(extPlist)) + + return config + }) +} + +module.exports = {withExtensionInfoPlist} diff --git a/plugins/notificationsExtension/withExtensionViewController.js b/plugins/notificationsExtension/withExtensionViewController.js new file mode 100644 index 0000000000..cd29bea7da --- /dev/null +++ b/plugins/notificationsExtension/withExtensionViewController.js @@ -0,0 +1,31 @@ +const {withXcodeProject} = require('@expo/config-plugins') +const path = require('path') +const fs = require('fs') + +const withExtensionViewController = ( + config, + {controllerName, extensionName}, +) => { + // eslint-disable-next-line no-shadow + return withXcodeProject(config, config => { + const controllerPath = path.join( + config.modRequest.projectRoot, + 'modules', + extensionName, + `${controllerName}.swift`, + ) + + const targetPath = path.join( + config.modRequest.platformProjectRoot, + extensionName, + `${controllerName}.swift`, + ) + + fs.mkdirSync(path.dirname(targetPath), {recursive: true}) + fs.copyFileSync(controllerPath, targetPath) + + return config + }) +} + +module.exports = {withExtensionViewController} diff --git a/plugins/notificationsExtension/withNotificationsExtension.js b/plugins/notificationsExtension/withNotificationsExtension.js new file mode 100644 index 0000000000..6a00cfd231 --- /dev/null +++ b/plugins/notificationsExtension/withNotificationsExtension.js @@ -0,0 +1,55 @@ +const {withPlugins} = require('@expo/config-plugins') +const {withAppEntitlements} = require('./withAppEntitlements') +const {withXcodeTarget} = require('./withXcodeTarget') +const {withExtensionEntitlements} = require('./withExtensionEntitlements') +const {withExtensionInfoPlist} = require('./withExtensionInfoPlist') +const {withExtensionViewController} = require('./withExtensionViewController') +const {withSounds} = require('./withSounds') + +const EXTENSION_NAME = 'BlueskyNSE' +const EXTENSION_CONTROLLER_NAME = 'NotificationService' + +const withNotificationsExtension = config => { + const soundFiles = ['dm.aiff'] + + return withPlugins(config, [ + // IOS + withAppEntitlements, + [ + withExtensionEntitlements, + { + extensionName: EXTENSION_NAME, + }, + ], + [ + withExtensionInfoPlist, + { + extensionName: EXTENSION_NAME, + }, + ], + [ + withExtensionViewController, + { + extensionName: EXTENSION_NAME, + controllerName: EXTENSION_CONTROLLER_NAME, + }, + ], + [ + withSounds, + { + extensionName: EXTENSION_NAME, + soundFiles, + }, + ], + [ + withXcodeTarget, + { + extensionName: EXTENSION_NAME, + controllerName: EXTENSION_CONTROLLER_NAME, + soundFiles, + }, + ], + ]) +} + +module.exports = withNotificationsExtension diff --git a/plugins/notificationsExtension/withSounds.js b/plugins/notificationsExtension/withSounds.js new file mode 100644 index 0000000000..652afd5458 --- /dev/null +++ b/plugins/notificationsExtension/withSounds.js @@ -0,0 +1,27 @@ +const {withXcodeProject} = require('@expo/config-plugins') +const path = require('path') +const fs = require('fs') + +const withSounds = (config, {extensionName, soundFiles}) => { + // eslint-disable-next-line no-shadow + return withXcodeProject(config, config => { + for (const file of soundFiles) { + const soundPath = path.join(config.modRequest.projectRoot, 'assets', file) + + const targetPath = path.join( + config.modRequest.platformProjectRoot, + extensionName, + file, + ) + + if (!fs.existsSync(path.dirname(targetPath))) { + fs.mkdirSync(path.dirname(targetPath), {recursive: true}) + } + fs.copyFileSync(soundPath, targetPath) + } + + return config + }) +} + +module.exports = {withSounds} diff --git a/plugins/notificationsExtension/withXcodeTarget.js b/plugins/notificationsExtension/withXcodeTarget.js new file mode 100644 index 0000000000..e9c7dae39a --- /dev/null +++ b/plugins/notificationsExtension/withXcodeTarget.js @@ -0,0 +1,76 @@ +const {withXcodeProject, IOSConfig} = require('@expo/config-plugins') +const path = require('path') +const PBXFile = require('xcode/lib/pbxFile') + +const withXcodeTarget = ( + config, + {extensionName, controllerName, soundFiles}, +) => { + // eslint-disable-next-line no-shadow + return withXcodeProject(config, config => { + let pbxProject = config.modResults + + const target = pbxProject.addTarget( + extensionName, + 'app_extension', + extensionName, + ) + pbxProject.addBuildPhase([], 'PBXSourcesBuildPhase', 'Sources', target.uuid) + pbxProject.addBuildPhase( + [], + 'PBXResourcesBuildPhase', + 'Resources', + target.uuid, + ) + const pbxGroupKey = pbxProject.pbxCreateGroup(extensionName, extensionName) + pbxProject.addFile(`${extensionName}/Info.plist`, pbxGroupKey) + pbxProject.addSourceFile( + `${extensionName}/${controllerName}.swift`, + {target: target.uuid}, + pbxGroupKey, + ) + + for (const file of soundFiles) { + pbxProject.addSourceFile( + `${extensionName}/${file}`, + {target: target.uuid}, + pbxGroupKey, + ) + } + + var configurations = pbxProject.pbxXCBuildConfigurationSection() + for (var key in configurations) { + if (typeof configurations[key].buildSettings !== 'undefined') { + var buildSettingsObj = configurations[key].buildSettings + if ( + typeof buildSettingsObj.PRODUCT_NAME !== 'undefined' && + buildSettingsObj.PRODUCT_NAME === `"${extensionName}"` + ) { + buildSettingsObj.CLANG_ENABLE_MODULES = 'YES' + buildSettingsObj.INFOPLIST_FILE = `"${extensionName}/Info.plist"` + buildSettingsObj.CODE_SIGN_ENTITLEMENTS = `"${extensionName}/${extensionName}.entitlements"` + buildSettingsObj.CODE_SIGN_STYLE = 'Automatic' + buildSettingsObj.CURRENT_PROJECT_VERSION = `"${config.ios?.buildNumber}"` + buildSettingsObj.GENERATE_INFOPLIST_FILE = 'YES' + buildSettingsObj.MARKETING_VERSION = `"${config.version}"` + buildSettingsObj.PRODUCT_BUNDLE_IDENTIFIER = `"${config.ios?.bundleIdentifier}.${extensionName}"` + buildSettingsObj.SWIFT_EMIT_LOC_STRINGS = 'YES' + buildSettingsObj.SWIFT_VERSION = '5.0' + buildSettingsObj.TARGETED_DEVICE_FAMILY = `"1,2"` + buildSettingsObj.DEVELOPMENT_TEAM = 'B3LX46C5HS' + } + } + } + + pbxProject.addTargetAttribute( + 'DevelopmentTeam', + 'B3LX46C5HS', + extensionName, + ) + pbxProject.addTargetAttribute('DevelopmentTeam', 'B3LX46C5HS') + + return config + }) +} + +module.exports = {withXcodeTarget} diff --git a/plugins/withAndroidManifestLaunchModePlugin.js b/plugins/withAndroidManifestLaunchModePlugin.js new file mode 100644 index 0000000000..45ab9aeb76 --- /dev/null +++ b/plugins/withAndroidManifestLaunchModePlugin.js @@ -0,0 +1,17 @@ +const {withAndroidManifest} = require('expo/config-plugins') + +module.exports = function withAndroidManifestLaunchModePlugin(appConfig) { + return withAndroidManifest(appConfig, function (decoratedAppConfig) { + try { + const mainApplication = + decoratedAppConfig.modResults.manifest.application[0] + const mainActivity = mainApplication.activity.find( + elem => elem.$['android:name'] === '.MainActivity', + ) + mainActivity.$['android:launchMode'] = 'singleTop' + } catch (e) { + console.error(`withAndroidManifestLaunchModePlugin failed`, e) + } + return decoratedAppConfig + }) +} diff --git a/scripts/updateExtensions.sh b/scripts/updateExtensions.sh index f4e462b744..f3e972aa7b 100755 --- a/scripts/updateExtensions.sh +++ b/scripts/updateExtensions.sh @@ -1,5 +1,6 @@ #!/bin/bash IOS_SHARE_EXTENSION_DIRECTORY="./ios/Share-with-Bluesky" +IOS_NOTIFICATION_EXTENSION_DIRECTORY="./ios/BlueskyNSE" MODULES_DIRECTORY="./modules" if [ ! -d $IOS_SHARE_EXTENSION_DIRECTORY ]; then @@ -8,3 +9,10 @@ if [ ! -d $IOS_SHARE_EXTENSION_DIRECTORY ]; then else cp -R $IOS_SHARE_EXTENSION_DIRECTORY $MODULES_DIRECTORY fi + +if [ ! -d $IOS_NOTIFICATION_EXTENSION_DIRECTORY ]; then + echo "$IOS_NOTIFICATION_EXTENSION_DIRECTORY not found inside of your iOS project." + exit 1 +else + cp -R $IOS_NOTIFICATION_EXTENSION_DIRECTORY $MODULES_DIRECTORY +fi diff --git a/src/App.native.tsx b/src/App.native.tsx index 9356be7a74..b359ad911d 100644 --- a/src/App.native.tsx +++ b/src/App.native.tsx @@ -4,6 +4,7 @@ import 'view/icons' import React, {useEffect, useState} from 'react' import {GestureHandlerRootView} from 'react-native-gesture-handler' +import {KeyboardProvider} from 'react-native-keyboard-controller' import {RootSiblingParent} from 'react-native-root-siblings' import { initialWindowMetrics, @@ -47,6 +48,7 @@ import {ThemeProvider as Alf} from '#/alf' import {useColorModeTheme} from '#/alf/util/useColorModeTheme' import {Provider as PortalProvider} from '#/components/Portal' import {Splash} from '#/Splash' +import {BackgroundNotificationPreferencesProvider} from '../modules/expo-background-notification-handler/src/BackgroundNotificationHandlerProvider' import I18nProvider from './locale/i18nProvider' import {listenSessionDropped} from './state/events' @@ -102,10 +104,12 @@ function InnerApp() { - - - - + + + + + + @@ -139,27 +143,29 @@ function App() { * that is set up in the InnerApp component above. */ return ( - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + ) } diff --git a/src/App.web.tsx b/src/App.web.tsx index 40ceb69420..5c4dc4e637 100644 --- a/src/App.web.tsx +++ b/src/App.web.tsx @@ -2,6 +2,7 @@ import 'lib/sentry' // must be near top import 'view/icons' import React, {useEffect, useState} from 'react' +import {KeyboardProvider} from 'react-native-keyboard-controller' import {RootSiblingParent} from 'react-native-root-siblings' import {SafeAreaProvider} from 'react-native-safe-area-context' import {msg} from '@lingui/macro' @@ -39,6 +40,7 @@ import {Shell} from 'view/shell/index' import {ThemeProvider as Alf} from '#/alf' import {useColorModeTheme} from '#/alf/util/useColorModeTheme' import {Provider as PortalProvider} from '#/components/Portal' +import {BackgroundNotificationPreferencesProvider} from '../modules/expo-background-notification-handler/src/BackgroundNotificationHandlerProvider' import I18nProvider from './locale/i18nProvider' import {listenSessionDropped} from './state/events' @@ -77,37 +79,41 @@ function InnerApp() { if (!isReady) return null return ( - - - - - - - - {/* LabelDefsProvider MUST come before ModerationOptsProvider */} - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + {/* LabelDefsProvider MUST come before ModerationOptsProvider */} + + + + + + + + + + + + + + + + + + + + + + + + ) } diff --git a/src/Navigation.tsx b/src/Navigation.tsx index c7ad40ed84..18801bf645 100644 --- a/src/Navigation.tsx +++ b/src/Navigation.tsx @@ -304,7 +304,7 @@ function commonScreens(Stack: typeof HomeTab, unreadCountLabel?: string) { MessagesSettingsScreen} - options={{title: title(msg`Messaging settings`), requireAuth: true}} + options={{title: title(msg`Chat settings`), requireAuth: true}} /> ) @@ -353,11 +353,11 @@ function HomeTabNavigator() { return ( HomeScreen} /> @@ -371,11 +371,11 @@ function SearchTabNavigator() { return ( SearchScreen} /> @@ -389,11 +389,11 @@ function FeedsTabNavigator() { return ( FeedsScreen} /> @@ -407,11 +407,11 @@ function NotificationsTabNavigator() { return ( MessagesScreen} - options={{requireAuth: true}} + options={({route}) => ({ + requireAuth: true, + animationTypeForReplace: route.params?.animation ?? 'push', + })} /> {commonScreens(MessagesTab as typeof HomeTab)} @@ -485,10 +488,11 @@ const FlatNavigator = () => { ) { linking={LINKING} theme={theme} onStateChange={() => { - logEvent('router:navigate', { + logEvent('router:navigate:sampled', { from: prevLoggedRouteName.current, }) prevLoggedRouteName.current = getCurrentRouteName() @@ -617,7 +621,7 @@ function RoutesContainer({children}: React.PropsWithChildren<{}>) { attachRouteToLogEvents(getCurrentRouteName) logModuleInitTime() onReady() - logEvent('router:navigate', {}) + logEvent('router:navigate:sampled', {}) }}> {children} diff --git a/src/alf/atoms.ts b/src/alf/atoms.ts index 45ab72ca61..1ccb0460c4 100644 --- a/src/alf/atoms.ts +++ b/src/alf/atoms.ts @@ -1,7 +1,8 @@ -import {Platform} from 'react-native' +import {Platform, StyleSheet} from 'react-native' import * as tokens from '#/alf/tokens' import {native, web} from '#/alf/util/platform' +import hairlineWidth = StyleSheet.hairlineWidth export const atoms = { /* @@ -55,6 +56,13 @@ export const atoms = { height: '100vh', }), + /* + * Theme-independent bg colors + */ + bg_transparent: { + backgroundColor: 'transparent', + }, + /* * Border radius */ @@ -270,19 +278,19 @@ export const atoms = { borderWidth: 0, }, border: { - borderWidth: 1, + borderWidth: hairlineWidth, }, border_t: { - borderTopWidth: 1, + borderTopWidth: hairlineWidth, }, border_b: { - borderBottomWidth: 1, + borderBottomWidth: hairlineWidth, }, border_l: { - borderLeftWidth: 1, + borderLeftWidth: hairlineWidth, }, border_r: { - borderRightWidth: 1, + borderRightWidth: hairlineWidth, }, /* @@ -840,4 +848,31 @@ export const atoms = { mr_auto: { marginRight: 'auto', }, + /* + * Pointer events & user select + */ + pointer_events_none: { + pointerEvents: 'none', + }, + pointer_events_auto: { + pointerEvents: 'auto', + }, + user_select_none: { + userSelect: 'none', + }, + user_select_text: { + userSelect: 'text', + }, + user_select_all: { + userSelect: 'all', + }, + /* + * Text decoration + */ + underline: { + textDecorationLine: 'underline', + }, + strike_through: { + textDecorationLine: 'line-through', + }, } as const diff --git a/src/alf/index.tsx b/src/alf/index.tsx index f0a0ede7a3..75ea28eb0b 100644 --- a/src/alf/index.tsx +++ b/src/alf/index.tsx @@ -1,12 +1,14 @@ import React from 'react' import {Dimensions} from 'react-native' + import * as themes from '#/alf/themes' -export * from '#/alf/types' -export * as tokens from '#/alf/tokens' export {atoms} from '#/alf/atoms' -export * from '#/alf/util/platform' +export * as tokens from '#/alf/tokens' +export * from '#/alf/types' export * from '#/alf/util/flatten' +export * from '#/alf/util/platform' +export * from '#/alf/util/themeSelector' type BreakpointName = keyof typeof breakpoints diff --git a/src/alf/themes.ts b/src/alf/themes.ts index 0c95a459ed..acfd269f8c 100644 --- a/src/alf/themes.ts +++ b/src/alf/themes.ts @@ -1,11 +1,11 @@ +import {atoms} from '#/alf/atoms' import * as tokens from '#/alf/tokens' import type {Mutable} from '#/alf/types' -import {atoms} from '#/alf/atoms' import {BLUE_HUE, GREEN_HUE, RED_HUE} from '#/alf/util/colorGeneration' export type ThemeName = 'light' | 'dim' | 'dark' export type ReadonlyTheme = typeof light -export type Theme = Mutable +export type Theme = Mutable & {name: ThemeName} export type ReadonlyPalette = typeof lightPalette export type Palette = Mutable @@ -193,7 +193,7 @@ export const dimPalette: Palette = { } as const export const light = { - name: 'light', + name: 'light' as ThemeName, palette: lightPalette, atoms: { text: { @@ -278,7 +278,7 @@ export const light = { } export const dark: Theme = { - name: 'dark', + name: 'dark' as ThemeName, palette: darkPalette, atoms: { text: { @@ -367,7 +367,7 @@ export const dark: Theme = { export const dim: Theme = { ...dark, - name: 'dim', + name: 'dim' as ThemeName, palette: dimPalette, atoms: { ...dark.atoms, diff --git a/src/alf/util/themeSelector.ts b/src/alf/util/themeSelector.ts new file mode 100644 index 0000000000..f484bc5267 --- /dev/null +++ b/src/alf/util/themeSelector.ts @@ -0,0 +1,14 @@ +import {ThemeName} from '#/alf/themes' + +export function select(name: ThemeName, options: Record) { + switch (name) { + case 'light': + return options.light + case 'dark': + return options.dark || options.dim + case 'dim': + return options.dim || options.dark + default: + throw new Error(`select(theme, options) received unknown theme ${name}`) + } +} diff --git a/src/alf/util/useColorModeTheme.ts b/src/alf/util/useColorModeTheme.ts index 4f8921bf9b..ce15587478 100644 --- a/src/alf/util/useColorModeTheme.ts +++ b/src/alf/util/useColorModeTheme.ts @@ -1,25 +1,27 @@ import React from 'react' import {ColorSchemeName, useColorScheme} from 'react-native' - -import {useThemePrefs} from 'state/shell' -import {isWeb} from 'platform/detection' -import {ThemeName, light, dark, dim} from '#/alf/themes' import * as SystemUI from 'expo-system-ui' +import {isWeb} from 'platform/detection' +import {useThemePrefs} from 'state/shell' +import {dark, dim, light, ThemeName} from '#/alf/themes' + export function useColorModeTheme(): ThemeName { + const theme = useThemeName() + + React.useLayoutEffect(() => { + updateDocument(theme) + SystemUI.setBackgroundColorAsync(getBackgroundColor(theme)) + }, [theme]) + + return theme +} + +export function useThemeName(): ThemeName { const colorScheme = useColorScheme() const {colorMode, darkTheme} = useThemePrefs() - React.useLayoutEffect(() => { - const theme = getThemeName(colorScheme, colorMode, darkTheme) - updateDocument(theme) - SystemUI.setBackgroundColorAsync(getBackgroundColor(theme)) - }, [colorMode, colorScheme, darkTheme]) - - return React.useMemo( - () => getThemeName(colorScheme, colorMode, darkTheme), - [colorScheme, colorMode, darkTheme], - ) + return getThemeName(colorScheme, colorMode, darkTheme) } function getThemeName( @@ -53,7 +55,7 @@ function updateDocument(theme: ThemeName) { } } -function getBackgroundColor(theme: ThemeName): string { +export function getBackgroundColor(theme: ThemeName): string { switch (theme) { case 'light': return light.atoms.bg.backgroundColor diff --git a/src/components/AccountList.tsx b/src/components/AccountList.tsx index 7d696801ed..883c06c144 100644 --- a/src/components/AccountList.tsx +++ b/src/components/AccountList.tsx @@ -37,7 +37,7 @@ export function AccountList({ style={[ a.rounded_md, a.overflow_hidden, - a.border, + {borderWidth: 1}, t.atoms.border_contrast_low, ]}> {accounts.map(account => ( @@ -48,7 +48,7 @@ export function AccountList({ isCurrentAccount={account.did === currentAccount?.did} isPendingAccount={account.did === pendingDid} /> - + ))}

+ ) } diff --git a/src/components/ProfileHoverCard/types.ts b/src/components/ProfileHoverCard/types.ts index a62279c96c..2fa0643838 100644 --- a/src/components/ProfileHoverCard/types.ts +++ b/src/components/ProfileHoverCard/types.ts @@ -4,4 +4,5 @@ export type ProfileHoverCardProps = { children: React.ReactElement did: string inline?: boolean + disable?: boolean } diff --git a/src/components/Prompt.tsx b/src/components/Prompt.tsx index 92e848e8eb..d05cab5ab6 100644 --- a/src/components/Prompt.tsx +++ b/src/components/Prompt.tsx @@ -172,6 +172,7 @@ export function Basic({ confirmButtonCta, onConfirm, confirmButtonColor, + showCancel = true, }: React.PropsWithChildren<{ control: Dialog.DialogOuterProps['control'] title: string @@ -187,6 +188,7 @@ export function Basic({ */ onConfirm: () => void confirmButtonColor?: ButtonColor + showCancel?: boolean }>) { return ( @@ -199,7 +201,7 @@ export function Basic({ color={confirmButtonColor} testID="confirmBtn" /> - + {showCancel && } ) diff --git a/src/components/ReportDialog/SelectReportOptionView.tsx b/src/components/ReportDialog/SelectReportOptionView.tsx index 8219b20951..4413cbe890 100644 --- a/src/components/ReportDialog/SelectReportOptionView.tsx +++ b/src/components/ReportDialog/SelectReportOptionView.tsx @@ -27,7 +27,8 @@ import {ReportDialogProps} from './types' export function SelectReportOptionView({ ...props -}: ReportDialogProps & { +}: { + params: ReportDialogProps['params'] labelers: AppBskyLabelerDefs.LabelerViewDetailed[] onSelectReportOption: (reportOption: ReportOption) => void goBack: () => void @@ -54,6 +55,9 @@ export function SelectReportOptionView({ } else if (props.params.type === 'feedgen') { title = _(msg`Report this feed`) description = _(msg`Why should this feed be reviewed?`) + } else if (props.params.type === 'convoMessage') { + title = _(msg`Report this message`) + description = _(msg`Why should this message be reviewed?`) } return { diff --git a/src/components/ReportDialog/SubmitView.tsx b/src/components/ReportDialog/SubmitView.tsx index 40d655aa90..74ecf92e41 100644 --- a/src/components/ReportDialog/SubmitView.tsx +++ b/src/components/ReportDialog/SubmitView.tsx @@ -15,6 +15,7 @@ import * as Dialog from '#/components/Dialog' import * as Toggle from '#/components/forms/Toggle' import {Check_Stroke2_Corner0_Rounded as Check} from '#/components/icons/Check' import {ChevronLeft_Stroke2_Corner0_Rounded as ChevronLeft} from '#/components/icons/Chevron' +import {KeyboardPadding} from '#/components/KeyboardPadding' import {Loader} from '#/components/Loader' import {Text} from '#/components/Typography' import {ReportDialogProps} from './types' @@ -35,7 +36,7 @@ export function SubmitView({ }) { const t = useTheme() const {_} = useLingui() - const {getAgent} = useAgent() + const agent = useAgent() const [details, setDetails] = React.useState('') const [submitting, setSubmitting] = React.useState(false) const [selectedServices, setSelectedServices] = React.useState([ @@ -61,7 +62,7 @@ export function SubmitView({ } const results = await Promise.all( selectedServices.map(did => - getAgent() + agent .withProxy('atproto_labeler', did) .createModerationReport(report) .then( @@ -91,7 +92,7 @@ export function SubmitView({ selectedServices, onSubmitComplete, setError, - getAgent, + agent, ]) return ( @@ -221,6 +222,7 @@ export function SubmitView({ {submitting && } + ) } diff --git a/src/components/ReportDialog/types.ts b/src/components/ReportDialog/types.ts index 0c8a1e0778..ceabe0b901 100644 --- a/src/components/ReportDialog/types.ts +++ b/src/components/ReportDialog/types.ts @@ -12,4 +12,5 @@ export type ReportDialogProps = { type: 'account' did: string } + | {type: 'convoMessage'} } diff --git a/src/components/RichText.tsx b/src/components/RichText.tsx index 0d49e7130d..9ba44eabe4 100644 --- a/src/components/RichText.tsx +++ b/src/components/RichText.tsx @@ -1,4 +1,5 @@ import React from 'react' +import {TextStyle} from 'react-native' import {AppBskyRichtextFacet, RichText as RichTextAPI} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' @@ -26,6 +27,8 @@ export function RichText({ enableTags = false, authorHandle, onLinkPress, + interactiveStyle, + emojiMultiplier = 1.85, }: TextStyleProp & Pick & { value: RichTextAPI | string @@ -35,28 +38,35 @@ export function RichText({ enableTags?: boolean authorHandle?: string onLinkPress?: LinkProps['onPress'] + interactiveStyle?: TextStyle + emojiMultiplier?: number }) { const richText = React.useMemo( () => value instanceof RichTextAPI ? value : new RichTextAPI({text: value}), [value], ) - const styles = [a.leading_snug, flatten(style)] + + const flattenedStyle = flatten(style) + const plainStyles = [a.leading_snug, flattenedStyle] + const interactiveStyles = [ + a.leading_snug, + a.pointer_events_auto, + flatten(interactiveStyle), + flattenedStyle, + ] const {text, facets} = richText if (!facets?.length) { - if (text.length <= 5 && /^\p{Extended_Pictographic}+$/u.test(text)) { + if (isOnlyEmoji(text)) { + const fontSize = + (flattenedStyle.fontSize ?? a.text_sm.fontSize) * emojiMultiplier return ( {text} @@ -67,7 +77,7 @@ export function RichText({ @@ -93,7 +103,7 @@ export function RichText({ @@ -110,7 +120,7 @@ export function RichText({ selectable={selectable} key={key} to={link.uri} - style={[...styles, {pointerEvents: 'auto'}]} + style={interactiveStyles} // @ts-ignore TODO dataSet={WORD_WRAP} shareOnLongPress @@ -130,7 +140,7 @@ export function RichText({ key={key} text={segment.text} tag={tag.tag} - style={styles} + style={interactiveStyles} selectable={selectable} authorHandle={authorHandle} />, @@ -145,7 +155,7 @@ export function RichText({ @@ -219,19 +229,16 @@ function RichTextTag({ onFocus={onFocus} onBlur={onBlur} style={[ - style, - { - pointerEvents: 'auto', - color: t.palette.primary_500, - }, web({ cursor: 'pointer', }), + {color: t.palette.primary_500}, (hovered || focused || pressed) && { ...web({outline: 0}), textDecorationLine: 'underline', textDecorationColor: t.palette.primary_500, }, + style, ]}> {text} @@ -239,3 +246,10 @@ function RichTextTag({ ) } + +export function isOnlyEmoji(text: string) { + return ( + text.length <= 15 && + /^[\p{Emoji_Presentation}\p{Extended_Pictographic}]+$/u.test(text) + ) +} diff --git a/src/components/dialogs/GifSelect.tsx b/src/components/dialogs/GifSelect.tsx index 57389ba2b7..4a3ce42aa9 100644 --- a/src/components/dialogs/GifSelect.tsx +++ b/src/components/dialogs/GifSelect.tsx @@ -197,6 +197,7 @@ function GifList({ onGoBack={onGoBack} emptyType="results" sideBorders={false} + topBorder={false} errorTitle={_(msg`Failed to load GIFs`)} errorMessage={_(msg`There was an issue connecting to Tenor.`)} emptyMessage={ diff --git a/src/components/dialogs/MutedWords.tsx b/src/components/dialogs/MutedWords.tsx index 534263422d..dea819412c 100644 --- a/src/components/dialogs/MutedWords.tsx +++ b/src/components/dialogs/MutedWords.tsx @@ -28,6 +28,7 @@ import {Hashtag_Stroke2_Corner0_Rounded as Hashtag} from '#/components/icons/Has import {PageText_Stroke2_Corner0_Rounded as PageText} from '#/components/icons/PageText' import {PlusLarge_Stroke2_Corner0_Rounded as Plus} from '#/components/icons/Plus' import {TimesLarge_Stroke2_Corner0_Rounded as X} from '#/components/icons/Times' +import {KeyboardPadding} from '#/components/KeyboardPadding' import {Loader} from '#/components/Loader' import * as Prompt from '#/components/Prompt' import {Text} from '#/components/Typography' @@ -256,6 +257,7 @@ function MutedWordsInner() { + ) } diff --git a/src/components/dms/ActionsWrapper.tsx b/src/components/dms/ActionsWrapper.tsx index 315f459de9..1bb57ff90b 100644 --- a/src/components/dms/ActionsWrapper.tsx +++ b/src/components/dms/ActionsWrapper.tsx @@ -1,5 +1,6 @@ import React from 'react' -import {Keyboard, Pressable, View} from 'react-native' +import {Keyboard} from 'react-native' +import {Gesture, GestureDetector} from 'react-native-gesture-handler' import Animated, { cancelAnimation, runOnJS, @@ -7,7 +8,9 @@ import Animated, { useSharedValue, withTiming, } from 'react-native-reanimated' -import {ChatBskyConvoDefs} from '@atproto-labs/api' +import {ChatBskyConvoDefs} from '@atproto/api' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' import {HITSLOP_10} from 'lib/constants' import {useHaptics} from 'lib/haptics' @@ -15,8 +18,6 @@ import {atoms as a} from '#/alf' import {MessageMenu} from '#/components/dms/MessageMenu' import {useMenuControl} from '#/components/Menu' -const AnimatedPressable = Animated.createAnimatedComponent(Pressable) - export function ActionsWrapper({ message, isFromSelf, @@ -26,60 +27,69 @@ export function ActionsWrapper({ isFromSelf: boolean children: React.ReactNode }) { + const {_} = useLingui() const playHaptic = useHaptics() const menuControl = useMenuControl() const scale = useSharedValue(1) - const animationDidComplete = useSharedValue(false) const animatedStyle = useAnimatedStyle(() => ({ transform: [{scale: scale.value}], })) - // Reanimated's `runOnJS` doesn't like refs, so we can't use `runOnJS(menuControl.open)()`. Instead, we'll use this - // function const open = React.useCallback(() => { + playHaptic() Keyboard.dismiss() menuControl.open() - }, [menuControl]) + }, [menuControl, playHaptic]) const shrink = React.useCallback(() => { 'worklet' cancelAnimation(scale) - scale.value = withTiming(1, {duration: 200}, () => { - animationDidComplete.value = false - }) - }, [animationDidComplete, scale]) + scale.value = withTiming(1, {duration: 200}) + }, [scale]) - const grow = React.useCallback(() => { - 'worklet' - scale.value = withTiming(1.05, {duration: 450}, finished => { - if (!finished) return - animationDidComplete.value = true - runOnJS(playHaptic)() - runOnJS(open)() + const doubleTapGesture = Gesture.Tap() + .numberOfTaps(2) + .hitSlop(HITSLOP_10) + .onEnd(open) - shrink() + const pressAndHoldGesture = Gesture.LongPress() + .onStart(() => { + scale.value = withTiming(1.05, {duration: 200}, finished => { + if (!finished) return + runOnJS(open)() + shrink() + }) }) - }, [scale, animationDidComplete, playHaptic, shrink, open]) + .onTouchesUp(shrink) + .onTouchesMove(shrink) + .cancelsTouchesInView(false) + .runOnJS(true) + + const composedGestures = Gesture.Exclusive( + doubleTapGesture, + pressAndHoldGesture, + ) return ( - - + + {children} - - - + + + ) } diff --git a/src/components/dms/ActionsWrapper.web.tsx b/src/components/dms/ActionsWrapper.web.tsx index 5cb30d3da6..29cc89dd18 100644 --- a/src/components/dms/ActionsWrapper.web.tsx +++ b/src/components/dms/ActionsWrapper.web.tsx @@ -1,6 +1,6 @@ import React from 'react' import {StyleSheet, View} from 'react-native' -import {ChatBskyConvoDefs} from '@atproto-labs/api' +import {ChatBskyConvoDefs} from '@atproto/api' import {atoms as a} from '#/alf' import {MessageMenu} from '#/components/dms/MessageMenu' @@ -62,7 +62,7 @@ export function ActionsWrapper({ )} {children} diff --git a/src/components/dms/BlockedByListDialog.tsx b/src/components/dms/BlockedByListDialog.tsx new file mode 100644 index 0000000000..a277016053 --- /dev/null +++ b/src/components/dms/BlockedByListDialog.tsx @@ -0,0 +1,62 @@ +import React from 'react' +import {View} from 'react-native' +import {ModerationCause} from '@atproto/api' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {listUriToHref} from 'lib/strings/url-helpers' +import {atoms as a, useTheme} from '#/alf' +import * as Dialog from '#/components/Dialog' +import {DialogControlProps} from '#/components/Dialog' +import {InlineLinkText} from '#/components/Link' +import * as Prompt from '#/components/Prompt' +import {Text} from '#/components/Typography' + +export function BlockedByListDialog({ + control, + listBlocks, +}: { + control: DialogControlProps + listBlocks: ModerationCause[] +}) { + const {_} = useLingui() + const t = useTheme() + + return ( + + {_(msg`User blocked by list`)} + + + + {_( + msg`This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user.`, + )}{' '} + + + + {_(msg`Lists blocking this user:`)}{' '} + {listBlocks.map((block, i) => + block.source.type === 'list' ? ( + + {i === 0 ? null : ', '} + + {block.source.list.name} + + + ) : null, + )} + + + + + {}} /> + + + + + ) +} diff --git a/src/components/dms/ChatEmptyPill.tsx b/src/components/dms/ChatEmptyPill.tsx new file mode 100644 index 0000000000..4633832fc3 --- /dev/null +++ b/src/components/dms/ChatEmptyPill.tsx @@ -0,0 +1,98 @@ +import React from 'react' +import {Pressable, View} from 'react-native' +import Animated, { + runOnJS, + useAnimatedStyle, + useSharedValue, + withTiming, +} from 'react-native-reanimated' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {ScaleAndFadeIn} from 'lib/custom-animations/ScaleAndFade' +import {ShrinkAndPop} from 'lib/custom-animations/ShrinkAndPop' +import {useHaptics} from 'lib/haptics' +import {isWeb} from 'platform/detection' +import {atoms as a, useTheme} from '#/alf' +import {Text} from '#/components/Typography' + +const AnimatedPressable = Animated.createAnimatedComponent(Pressable) + +let lastIndex = 0 + +export function ChatEmptyPill() { + const t = useTheme() + const {_} = useLingui() + const playHaptic = useHaptics() + const [promptIndex, setPromptIndex] = React.useState(lastIndex) + + const scale = useSharedValue(1) + + const prompts = React.useMemo(() => { + return [ + _(msg`Say hello!`), + _(msg`Share your favorite feed!`), + _(msg`Tell a joke!`), + _(msg`Share a fun fact!`), + _(msg`Share a cool story!`), + _(msg`Send a neat website!`), + _(msg`Clip 🐴 clop 🐴`), + ] + }, [_]) + + const onPressIn = React.useCallback(() => { + if (isWeb) return + scale.value = withTiming(1.075, {duration: 100}) + }, [scale]) + + const onPressOut = React.useCallback(() => { + if (isWeb) return + scale.value = withTiming(1, {duration: 100}) + }, [scale]) + + const onPress = React.useCallback(() => { + runOnJS(playHaptic)() + let randomPromptIndex = Math.floor(Math.random() * prompts.length) + while (randomPromptIndex === lastIndex) { + randomPromptIndex = Math.floor(Math.random() * prompts.length) + } + setPromptIndex(randomPromptIndex) + lastIndex = randomPromptIndex + }, [playHaptic, prompts.length]) + + const animatedStyle = useAnimatedStyle(() => ({ + transform: [{scale: scale.value}], + })) + + return ( + + + + {prompts[promptIndex]} + + + + ) +} diff --git a/src/components/dms/ConvoMenu.tsx b/src/components/dms/ConvoMenu.tsx index cac4eb4d9d..3f680120b8 100644 --- a/src/components/dms/ConvoMenu.tsx +++ b/src/components/dms/ConvoMenu.tsx @@ -1,97 +1,114 @@ import React, {useCallback} from 'react' import {Keyboard, Pressable, View} from 'react-native' -import {AppBskyActorDefs} from '@atproto/api' -import {ChatBskyConvoDefs} from '@atproto-labs/api' +import { + AppBskyActorDefs, + ChatBskyConvoDefs, + ModerationCause, +} from '@atproto/api' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' import {useNavigation} from '@react-navigation/native' import {NavigationProp} from '#/lib/routes/types' -import {useMarkAsReadMutation} from '#/state/queries/messages/conversation' -import {useLeaveConvo} from '#/state/queries/messages/leave-conversation' +import {Shadow} from '#/state/cache/types' import { - useMuteConvo, - useUnmuteConvo, -} from '#/state/queries/messages/mute-conversation' + useConvoQuery, + useMarkAsReadMutation, +} from '#/state/queries/messages/conversation' +import {useMuteConvo} from '#/state/queries/messages/mute-conversation' +import {useProfileBlockMutationQueue} from '#/state/queries/profile' import * as Toast from '#/view/com/util/Toast' -import {atoms as a, useTheme} from '#/alf' +import {atoms as a, useTheme, ViewStyleProp} from '#/alf' +import {BlockedByListDialog} from '#/components/dms/BlockedByListDialog' +import {LeaveConvoPrompt} from '#/components/dms/LeaveConvoPrompt' +import {ReportConversationPrompt} from '#/components/dms/ReportConversationPrompt' import {ArrowBoxLeft_Stroke2_Corner0_Rounded as ArrowBoxLeft} from '#/components/icons/ArrowBoxLeft' import {DotGrid_Stroke2_Corner0_Rounded as DotsHorizontal} from '#/components/icons/DotGrid' import {Flag_Stroke2_Corner0_Rounded as Flag} from '#/components/icons/Flag' import {Mute_Stroke2_Corner0_Rounded as Mute} from '#/components/icons/Mute' -import {Person_Stroke2_Corner0_Rounded as Person} from '#/components/icons/Person' -import {PersonCheck_Stroke2_Corner0_Rounded as PersonCheck} from '#/components/icons/PersonCheck' -import {PersonX_Stroke2_Corner0_Rounded as PersonX} from '#/components/icons/PersonX' +import { + Person_Stroke2_Corner0_Rounded as Person, + PersonCheck_Stroke2_Corner0_Rounded as PersonCheck, + PersonX_Stroke2_Corner0_Rounded as PersonX, +} from '#/components/icons/Person' import {SpeakerVolumeFull_Stroke2_Corner0_Rounded as Unmute} from '#/components/icons/Speaker' import * as Menu from '#/components/Menu' import * as Prompt from '#/components/Prompt' import {Bubble_Stroke2_Corner2_Rounded as Bubble} from '../icons/Bubble' let ConvoMenu = ({ - convo, + convo: initialConvo, profile, - onUpdateConvo, control, currentScreen, showMarkAsRead, hideTrigger, - triggerOpacity, + blockInfo, + style, }: { convo: ChatBskyConvoDefs.ConvoView - profile: AppBskyActorDefs.ProfileViewBasic - onUpdateConvo?: (convo: ChatBskyConvoDefs.ConvoView) => void + profile: Shadow control?: Menu.MenuControlProps currentScreen: 'list' | 'conversation' showMarkAsRead?: boolean hideTrigger?: boolean - triggerOpacity?: number + blockInfo: { + listBlocks: ModerationCause[] + userBlock?: ModerationCause + } + style?: ViewStyleProp['style'] }): React.ReactNode => { const navigation = useNavigation() const {_} = useLingui() const t = useTheme() const leaveConvoControl = Prompt.usePromptControl() + const reportControl = Prompt.usePromptControl() + const blockedByListControl = Prompt.usePromptControl() const {mutate: markAsRead} = useMarkAsReadMutation() + const {listBlocks, userBlock} = blockInfo + const isBlocking = userBlock || !!listBlocks.length + const isDeletedAccount = profile.handle === 'missing.invalid' + + const {data: convo} = useConvoQuery(initialConvo) + const onNavigateToProfile = useCallback(() => { navigation.navigate('Profile', {name: profile.did}) }, [navigation, profile.did]) - const {mutate: muteConvo} = useMuteConvo(convo.id, { + const {mutate: muteConvo} = useMuteConvo(convo?.id, { onSuccess: data => { - onUpdateConvo?.(data.convo) - Toast.show(_(msg`Chat muted`)) + if (data.convo.muted) { + Toast.show(_(msg`Chat muted`)) + } else { + Toast.show(_(msg`Chat unmuted`)) + } }, onError: () => { Toast.show(_(msg`Could not mute chat`)) }, }) - const {mutate: unmuteConvo} = useUnmuteConvo(convo.id, { - onSuccess: data => { - onUpdateConvo?.(data.convo) - Toast.show(_(msg`Chat unmuted`)) - }, - onError: () => { - Toast.show(_(msg`Could not unmute chat`)) - }, - }) + const [queueBlock, queueUnblock] = useProfileBlockMutationQueue(profile) - const {mutate: leaveConvo} = useLeaveConvo(convo.id, { - onSuccess: () => { - if (currentScreen === 'conversation') { - navigation.replace('Messages') - } - }, - onError: () => { - Toast.show(_(msg`Could not leave chat`)) - }, - }) + const toggleBlock = React.useCallback(() => { + if (listBlocks.length) { + blockedByListControl.open() + return + } + + if (userBlock) { + queueUnblock() + } else { + queueBlock() + } + }, [userBlock, listBlocks, blockedByListControl, queueBlock, queueUnblock]) return ( <> {!hideTrigger && ( - + {({props, state}) => ( )} - - - {showMarkAsRead && ( - - markAsRead({ - convoId: convo.id, - }) - }> - - Mark as read - - - - )} - - - Go to profile - - - - (convo?.muted ? unmuteConvo() : muteConvo())}> - - {convo?.muted ? ( - Unmute notifications - ) : ( - Mute notifications - )} - - - - - - {/* TODO(samuel): implement these */} - - {}} - disabled> - - Block account - - - - {}} - disabled> - - Report account - - - - - - + + {isDeletedAccount ? ( + @@ -185,19 +142,90 @@ let ConvoMenu = ({ - - + + ) : ( + + + {showMarkAsRead && ( + + markAsRead({ + convoId: convo?.id, + }) + }> + + Mark as read + + + + )} + + + Go to profile + + + + muteConvo({mute: !convo?.muted})}> + + {convo?.muted ? ( + Unmute conversation + ) : ( + Mute conversation + )} + + + + + + + + + {isBlocking ? _(msg`Unblock account`) : _(msg`Block account`)} + + + + + + Report conversation + + + + + + + + + Leave conversation + + + + + + )} - leaveConvo()} + convoId={convo.id} + currentScreen={currentScreen} + /> + + ) diff --git a/src/components/dms/LeaveConvoPrompt.tsx b/src/components/dms/LeaveConvoPrompt.tsx new file mode 100644 index 0000000000..1c42dbca04 --- /dev/null +++ b/src/components/dms/LeaveConvoPrompt.tsx @@ -0,0 +1,55 @@ +import React from 'react' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' +import {useNavigation} from '@react-navigation/native' + +import {NavigationProp} from 'lib/routes/types' +import {isNative} from 'platform/detection' +import {useLeaveConvo} from 'state/queries/messages/leave-conversation' +import * as Toast from 'view/com/util/Toast' +import {DialogOuterProps} from '#/components/Dialog' +import * as Prompt from '#/components/Prompt' + +export function LeaveConvoPrompt({ + control, + convoId, + currentScreen, +}: { + control: DialogOuterProps['control'] + convoId: string + currentScreen: 'list' | 'conversation' +}) { + const {_} = useLingui() + const navigation = useNavigation() + + const {mutate: leaveConvo} = useLeaveConvo(convoId, { + onSuccess: () => { + if (currentScreen === 'conversation') { + navigation.replace( + 'Messages', + isNative + ? { + animation: 'pop', + } + : {}, + ) + } + }, + onError: () => { + Toast.show(_(msg`Could not leave chat`)) + }, + }) + + return ( + + ) +} diff --git a/src/components/dms/MessageItem.tsx b/src/components/dms/MessageItem.tsx index f8f5197ca4..61358c9893 100644 --- a/src/components/dms/MessageItem.tsx +++ b/src/components/dms/MessageItem.tsx @@ -1,39 +1,49 @@ import React, {useCallback, useMemo, useRef} from 'react' -import {LayoutAnimation, StyleProp, TextStyle, View} from 'react-native' -import {ChatBskyConvoDefs} from '@atproto-labs/api' +import { + GestureResponderEvent, + LayoutAnimation, + StyleProp, + TextStyle, + View, +} from 'react-native' +import { + AppBskyEmbedRecord, + ChatBskyConvoDefs, + RichText as RichTextAPI, +} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {ConvoItem} from '#/state/messages/convo/types' import {useSession} from '#/state/session' import {TimeElapsed} from 'view/com/util/TimeElapsed' import {atoms as a, useTheme} from '#/alf' import {ActionsWrapper} from '#/components/dms/ActionsWrapper' +import {InlineLinkText} from '#/components/Link' import {Text} from '#/components/Typography' +import {isOnlyEmoji, RichText} from '../RichText' +import {MessageItemEmbed} from './MessageItemEmbed' -export let MessageItem = ({ +let MessageItem = ({ item, - next, - pending, }: { - item: ChatBskyConvoDefs.MessageView - next: - | ChatBskyConvoDefs.MessageView - | ChatBskyConvoDefs.DeletedMessageView - | null - pending?: boolean + item: ConvoItem & {type: 'message' | 'pending-message'} }): React.ReactNode => { const t = useTheme() const {currentAccount} = useSession() - const isFromSelf = item.sender?.did === currentAccount?.did + const {message, nextMessage} = item + const isPending = item.type === 'pending-message' + + const isFromSelf = message.sender?.did === currentAccount?.did const isNextFromSelf = - ChatBskyConvoDefs.isMessageView(next) && - next.sender?.did === currentAccount?.did + ChatBskyConvoDefs.isMessageView(nextMessage) && + nextMessage.sender?.did === currentAccount?.did const isLastInGroup = useMemo(() => { - // TODO this means it's a placeholder. Let's figure out the right way to do this though! - if (item.id.length > 13) { + // if this message is pending, it means the next message is pending too + if (isPending && nextMessage) { return false } @@ -43,9 +53,9 @@ export let MessageItem = ({ } // or, if there's a 3 minute gap between this message and the next - if (ChatBskyConvoDefs.isMessageView(next)) { - const thisDate = new Date(item.sentAt) - const nextDate = new Date(next.sentAt) + if (ChatBskyConvoDefs.isMessageView(nextMessage)) { + const thisDate = new Date(message.sentAt) + const nextDate = new Date(nextMessage.sentAt) const diff = nextDate.getTime() - thisDate.getTime() @@ -54,7 +64,7 @@ export let MessageItem = ({ } return true - }, [item, next, isFromSelf, isNextFromSelf]) + }, [message, nextMessage, isFromSelf, isNextFromSelf, isPending]) const lastInGroupRef = useRef(isLastInGroup) if (lastInGroupRef.current !== isLastInGroup) { @@ -65,61 +75,88 @@ export let MessageItem = ({ const pendingColor = t.name === 'light' ? t.palette.primary_200 : t.palette.primary_800 + const rt = useMemo(() => { + return new RichTextAPI({text: message.text, facets: message.facets}) + }, [message.text, message.facets]) + return ( - - - - - {item.text} - - + + + {AppBskyEmbedRecord.isView(message.embed) && ( + + )} + {rt.text.length > 0 && ( + + + + )} - + + {isLastInGroup && ( + + )} ) } - MessageItem = React.memo(MessageItem) +export {MessageItem} let MessageItemMetadata = ({ - message, - isLastInGroup, + item, style, }: { - message: ChatBskyConvoDefs.MessageView - isLastInGroup: boolean + item: ConvoItem & {type: 'message' | 'pending-message'} style: StyleProp }): React.ReactNode => { const t = useTheme() const {_} = useLingui() + const {message} = item + + const handleRetry = useCallback( + (e: GestureResponderEvent) => { + if (item.type === 'pending-message' && item.retry) { + e.preventDefault() + item.retry() + return false + } + }, + [item], + ) const relativeTimestamp = useCallback( (timestamp: string) => { @@ -129,7 +166,6 @@ let MessageItemMetadata = ({ const time = new Intl.DateTimeFormat(undefined, { hour: 'numeric', minute: 'numeric', - hour12: true, }).format(date) const diff = now.getTime() - date.getTime() @@ -155,7 +191,6 @@ let MessageItemMetadata = ({ return new Intl.DateTimeFormat(undefined, { hour: 'numeric', minute: 'numeric', - hour12: true, day: 'numeric', month: 'numeric', year: 'numeric', @@ -164,29 +199,57 @@ let MessageItemMetadata = ({ [_], ) - if (!isLastInGroup) { - return null - } - return ( - - {({timeElapsed}) => ( - - {timeElapsed} - + + + {({timeElapsed}) => ( + + {timeElapsed} + + )} + + + {item.type === 'pending-message' && item.failed && ( + <> + {' '} + ·{' '} + + {_(msg`Failed to send`)} + + {item.retry && ( + <> + {' '} + ·{' '} + + {_(msg`Retry`)} + + + )} + )} - + ) } MessageItemMetadata = React.memo(MessageItemMetadata) +export {MessageItemMetadata} function localDateString(date: Date) { // can't use toISOString because it should be in local time diff --git a/src/components/dms/MessageItemEmbed.tsx b/src/components/dms/MessageItemEmbed.tsx new file mode 100644 index 0000000000..dbdbe95b56 --- /dev/null +++ b/src/components/dms/MessageItemEmbed.tsx @@ -0,0 +1,22 @@ +import React from 'react' +import {View} from 'react-native' +import {AppBskyEmbedRecord} from '@atproto/api' + +import {PostEmbeds} from '#/view/com/util/post-embeds' +import {atoms as a, native, useTheme} from '#/alf' + +let MessageItemEmbed = ({ + embed, +}: { + embed: AppBskyEmbedRecord.View +}): React.ReactNode => { + const t = useTheme() + + return ( + + + + ) +} +MessageItemEmbed = React.memo(MessageItemEmbed) +export {MessageItemEmbed} diff --git a/src/components/dms/MessageMenu.tsx b/src/components/dms/MessageMenu.tsx index 75807f8187..92913d1cb2 100644 --- a/src/components/dms/MessageMenu.tsx +++ b/src/components/dms/MessageMenu.tsx @@ -1,16 +1,21 @@ import React from 'react' import {LayoutAnimation, Pressable, View} from 'react-native' import * as Clipboard from 'expo-clipboard' -import {ChatBskyConvoDefs} from '@atproto-labs/api' +import {ChatBskyConvoDefs, RichText} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {richTextToString} from '#/lib/strings/rich-text-helpers' +import {getTranslatorLink} from '#/locale/helpers' +import {useLanguagePrefs} from '#/state/preferences' +import {useOpenLink} from '#/state/preferences/in-app-browser' import {isWeb} from 'platform/detection' -import {useConvo} from 'state/messages/convo' -import {ConvoStatus} from 'state/messages/convo/types' +import {useConvoActive} from 'state/messages/convo' import {useSession} from 'state/session' import * as Toast from '#/view/com/util/Toast' import {atoms as a, useTheme} from '#/alf' +import {ReportDialog} from '#/components/dms/ReportDialog' +import {BubbleQuestion_Stroke2_Corner0_Rounded as Translate} from '#/components/icons/Bubble' import {DotGrid_Stroke2_Corner0_Rounded as DotsHorizontal} from '#/components/icons/DotGrid' import {Trash_Stroke2_Corner0_Rounded as Trash} from '#/components/icons/Trash' import {Warning_Stroke2_Corner0_Rounded as Warning} from '#/components/icons/Warning' @@ -24,7 +29,6 @@ export let MessageMenu = ({ control, triggerOpacity, }: { - hideTrigger?: boolean triggerOpacity?: number message: ChatBskyConvoDefs.MessageView control: Menu.MenuControlProps @@ -32,33 +36,42 @@ export let MessageMenu = ({ const {_} = useLingui() const t = useTheme() const {currentAccount} = useSession() - const convo = useConvo() + const convo = useConvoActive() const deleteControl = usePromptControl() - const retryDeleteControl = usePromptControl() + const reportControl = usePromptControl() + const langPrefs = useLanguagePrefs() + const openLink = useOpenLink() const isFromSelf = message.sender?.did === currentAccount?.did - const onCopyPostText = React.useCallback(() => { - // use when we have rich text - // const str = richTextToString(richText, true) + const onCopyMessage = React.useCallback(() => { + const str = richTextToString( + new RichText({ + text: message.text, + facets: message.facets, + }), + true, + ) - Clipboard.setStringAsync(message.text) + Clipboard.setStringAsync(str) Toast.show(_(msg`Copied to clipboard`)) - }, [_, message.text]) + }, [_, message.text, message.facets]) + + const onPressTranslateMessage = React.useCallback(() => { + const translatorUrl = getTranslatorLink( + message.text, + langPrefs.primaryLanguage, + ) + openLink(translatorUrl) + }, [langPrefs.primaryLanguage, message.text, openLink]) const onDelete = React.useCallback(() => { - if (convo.status !== ConvoStatus.Ready) return - LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut) convo .deleteMessage(message.id) .then(() => Toast.show(_(msg`Message deleted`))) - .catch(() => retryDeleteControl.open()) - }, [_, convo, message.id, retryDeleteControl]) - - const onReport = React.useCallback(() => { - // TODO report the message - }, []) + .catch(() => Toast.show(_(msg`Failed to delete message`))) + }, [_, convo, message.id]) return ( <> @@ -82,16 +95,27 @@ export let MessageMenu = ({ )} - - - {_(msg`Copy message text`)} - - - - + {message.text.length > 0 && ( + <> + + + {_(msg`Translate`)} + + + + {_(msg`Copy message text`)} + + + + + + )} + onPress={reportControl.open}> {_(msg`Report`)} @@ -113,27 +137,21 @@ export let MessageMenu = ({ + + - - ) } diff --git a/src/components/dms/MessageProfileButton.tsx b/src/components/dms/MessageProfileButton.tsx new file mode 100644 index 0000000000..7f440d621f --- /dev/null +++ b/src/components/dms/MessageProfileButton.tsx @@ -0,0 +1,80 @@ +import React from 'react' +import {View} from 'react-native' +import {AppBskyActorDefs} from '@atproto/api' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {useMaybeConvoForUser} from '#/state/queries/messages/get-convo-for-members' +import {logEvent} from 'lib/statsig/statsig' +import {atoms as a, useTheme} from '#/alf' +import {Message_Stroke2_Corner0_Rounded as Message} from '../icons/Message' +import {Link} from '../Link' +import {canBeMessaged} from './util' + +export function MessageProfileButton({ + profile, +}: { + profile: AppBskyActorDefs.ProfileView +}) { + const {_} = useLingui() + const t = useTheme() + + const {data: convo, isPending} = useMaybeConvoForUser(profile.did) + + const onPress = React.useCallback(() => { + if (convo && !convo.lastMessage) { + logEvent('chat:create', {logContext: 'ProfileHeader'}) + } + logEvent('chat:open', {logContext: 'ProfileHeader'}) + }, [convo]) + + if (isPending) { + // show pending state based on declaration + if (canBeMessaged(profile)) { + return ( + + + + ) + } else { + return null + } + } + + if (convo) { + return ( + + + + ) + } else { + return null + } +} diff --git a/src/components/dms/MessagesListBlockedFooter.tsx b/src/components/dms/MessagesListBlockedFooter.tsx new file mode 100644 index 0000000000..a018b8623a --- /dev/null +++ b/src/components/dms/MessagesListBlockedFooter.tsx @@ -0,0 +1,131 @@ +import React from 'react' +import {View} from 'react-native' +import {AppBskyActorDefs, ModerationCause} from '@atproto/api' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {useProfileShadow} from 'state/cache/profile-shadow' +import {useProfileBlockMutationQueue} from 'state/queries/profile' +import {atoms as a, useBreakpoints, useTheme} from '#/alf' +import {Button, ButtonText} from '#/components/Button' +import {useDialogControl} from '#/components/Dialog' +import {Divider} from '#/components/Divider' +import {BlockedByListDialog} from '#/components/dms/BlockedByListDialog' +import {LeaveConvoPrompt} from '#/components/dms/LeaveConvoPrompt' +import {ReportConversationPrompt} from '#/components/dms/ReportConversationPrompt' +import {Text} from '#/components/Typography' + +export function MessagesListBlockedFooter({ + recipient: initialRecipient, + convoId, + hasMessages, + blockInfo, +}: { + recipient: AppBskyActorDefs.ProfileViewBasic + convoId: string + hasMessages: boolean + blockInfo: { + listBlocks: ModerationCause[] + userBlock: ModerationCause | undefined + } +}) { + const t = useTheme() + const {gtMobile} = useBreakpoints() + const {_} = useLingui() + const recipient = useProfileShadow(initialRecipient) + const [__, queueUnblock] = useProfileBlockMutationQueue(recipient) + + const leaveConvoControl = useDialogControl() + const reportControl = useDialogControl() + const blockedByListControl = useDialogControl() + + const {listBlocks, userBlock} = blockInfo + const isBlocking = !!userBlock || !!listBlocks.length + + const onUnblockPress = React.useCallback(() => { + if (listBlocks.length) { + blockedByListControl.open() + } else { + queueUnblock() + } + }, [blockedByListControl, listBlocks, queueUnblock]) + + return ( + + + + {isBlocking ? ( + You have blocked this user + ) : ( + This user has blocked you + )} + + + + + + {isBlocking && gtMobile && ( + + )} + + {isBlocking && !gtMobile && ( + + + + )} + + + + + + + + ) +} diff --git a/src/components/dms/MessagesListHeader.tsx b/src/components/dms/MessagesListHeader.tsx new file mode 100644 index 0000000000..0aeac36286 --- /dev/null +++ b/src/components/dms/MessagesListHeader.tsx @@ -0,0 +1,223 @@ +import React, {useCallback} from 'react' +import {TouchableOpacity, View} from 'react-native' +import { + AppBskyActorDefs, + ModerationCause, + ModerationDecision, +} from '@atproto/api' +import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' +import {useNavigation} from '@react-navigation/native' + +import {BACK_HITSLOP} from 'lib/constants' +import {makeProfileLink} from 'lib/routes/links' +import {NavigationProp} from 'lib/routes/types' +import {sanitizeDisplayName} from 'lib/strings/display-names' +import {isWeb} from 'platform/detection' +import {useProfileShadow} from 'state/cache/profile-shadow' +import {isConvoActive, useConvo} from 'state/messages/convo' +import {PreviewableUserAvatar} from 'view/com/util/UserAvatar' +import {atoms as a, useBreakpoints, useTheme, web} from '#/alf' +import {ConvoMenu} from '#/components/dms/ConvoMenu' +import {Bell2Off_Filled_Corner0_Rounded as BellStroke} from '#/components/icons/Bell2' +import {Link} from '#/components/Link' +import {PostAlerts} from '#/components/moderation/PostAlerts' +import {Text} from '#/components/Typography' + +const PFP_SIZE = isWeb ? 40 : 34 + +export let MessagesListHeader = ({ + profile, + moderation, + blockInfo, +}: { + profile?: AppBskyActorDefs.ProfileViewBasic + moderation?: ModerationDecision + blockInfo?: { + listBlocks: ModerationCause[] + userBlock?: ModerationCause + } +}): React.ReactNode => { + const t = useTheme() + const {_} = useLingui() + const {gtTablet} = useBreakpoints() + const navigation = useNavigation() + + const onPressBack = useCallback(() => { + if (isWeb) { + navigation.replace('Messages', {}) + } else { + navigation.goBack() + } + }, [navigation]) + + return ( + + {!gtTablet && ( + + + + )} + + {profile && moderation && blockInfo ? ( + + ) : ( + <> + + + + + + + + + + + )} + + ) +} +MessagesListHeader = React.memo(MessagesListHeader) + +function HeaderReady({ + profile: profileUnshadowed, + moderation, + blockInfo, +}: { + profile: AppBskyActorDefs.ProfileViewBasic + moderation: ModerationDecision + blockInfo: { + listBlocks: ModerationCause[] + userBlock?: ModerationCause + } +}) { + const t = useTheme() + const convoState = useConvo() + const profile = useProfileShadow(profileUnshadowed) + + const isDeletedAccount = profile?.handle === 'missing.invalid' + const displayName = isDeletedAccount + ? 'Deleted Account' + : sanitizeDisplayName( + profile.displayName || profile.handle, + moderation.ui('displayName'), + ) + + return ( + + + + + + + + + {displayName} + + {!isDeletedAccount && ( + + @{profile.handle} + {convoState.convo?.muted && ( + <> + {' '} + ·{' '} + + + )} + + )} + + + + {isConvoActive(convoState) && ( + + )} + + + + + + + ) +} diff --git a/src/components/dms/MessagesNUX.tsx b/src/components/dms/MessagesNUX.tsx new file mode 100644 index 0000000000..8d3b11fac5 --- /dev/null +++ b/src/components/dms/MessagesNUX.tsx @@ -0,0 +1,175 @@ +import React, {useCallback, useEffect} from 'react' +import {View} from 'react-native' +import {ChatBskyActorDeclaration} from '@atproto/api' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {useUpdateActorDeclaration} from '#/state/queries/messages/actor-declaration' +import {useProfileQuery} from '#/state/queries/profile' +import {useSession} from '#/state/session' +import * as Toast from '#/view/com/util/Toast' +import {atoms as a, useTheme, web} from '#/alf' +import {Button, ButtonText} from '#/components/Button' +import * as Dialog from '#/components/Dialog' +import * as Toggle from '#/components/forms/Toggle' +import {Message_Stroke2_Corner0_Rounded} from '#/components/icons/Message' +import {Text} from '#/components/Typography' + +export function MessagesNUX() { + const control = Dialog.useDialogControl() + + const {currentAccount} = useSession() + const {data: profile} = useProfileQuery({ + did: currentAccount!.did, + }) + + useEffect(() => { + if (profile && typeof profile.associated?.chat === 'undefined') { + const timeout = setTimeout(() => { + control.open() + }, 1000) + + return () => { + clearTimeout(timeout) + } + } + }, [profile, control]) + + if (!profile) return null + + return ( + + + + + ) +} + +function DialogInner({ + chatDeclation, +}: { + chatDeclation?: ChatBskyActorDeclaration.Record +}) { + const control = Dialog.useDialogContext() + const {_} = useLingui() + const t = useTheme() + + const [initialized, setInitialzed] = React.useState(false) + const {mutate: updateDeclaration} = useUpdateActorDeclaration({ + onError: () => { + Toast.show(_(msg`Failed to update settings`)) + }, + }) + + const onSelectItem = useCallback( + (keys: string[]) => { + const key = keys[0] + if (!key) return + updateDeclaration(key as 'all' | 'none' | 'following') + }, + [updateDeclaration], + ) + + useEffect(() => { + if (!chatDeclation && !initialized) { + updateDeclaration('following') + setInitialzed(true) + } + }, [chatDeclation, updateDeclaration, initialized]) + + return ( + + + + + + Direct messages are here! + + + Privately chat with other users. + + + + + + Who can message you? + + + You can change this at any time. + + + + + + + + Everyone + + + + + + Users I follow + + + + + + No one + + + + + + + + + + + + ) +} diff --git a/src/components/dms/NewChat.tsx b/src/components/dms/NewChat.tsx deleted file mode 100644 index 5dde8628c1..0000000000 --- a/src/components/dms/NewChat.tsx +++ /dev/null @@ -1,255 +0,0 @@ -import React, {useCallback, useMemo, useRef, useState} from 'react' -import {Keyboard, View} from 'react-native' -import {AppBskyActorDefs, moderateProfile} from '@atproto/api' -import {BottomSheetFlatListMethods} from '@discord/bottom-sheet' -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' - -import {sanitizeDisplayName} from '#/lib/strings/display-names' -import {sanitizeHandle} from '#/lib/strings/handles' -import {isWeb} from '#/platform/detection' -import {useModerationOpts} from '#/state/preferences/moderation-opts' -import {useGetConvoForMembers} from '#/state/queries/messages/get-convo-for-members' -import {useActorAutocompleteQuery} from 'state/queries/actor-autocomplete' -import {FAB} from '#/view/com/util/fab/FAB' -import * as Toast from '#/view/com/util/Toast' -import {UserAvatar} from '#/view/com/util/UserAvatar' -import {atoms as a, useTheme, web} from '#/alf' -import * as Dialog from '#/components/Dialog' -import * as TextField from '#/components/forms/TextField' -import {MagnifyingGlass2_Stroke2_Corner0_Rounded as Search} from '#/components/icons/MagnifyingGlass2' -import {PlusLarge_Stroke2_Corner0_Rounded as Plus} from '#/components/icons/Plus' -import {Button} from '../Button' -import {Envelope_Stroke2_Corner0_Rounded as Envelope} from '../icons/Envelope' -import {ListMaybePlaceholder} from '../Lists' -import {Text} from '../Typography' - -export function NewChat({ - control, - onNewChat, -}: { - control: Dialog.DialogControlProps - onNewChat: (chatId: string) => void -}) { - const t = useTheme() - const {_} = useLingui() - - const {mutate: createChat} = useGetConvoForMembers({ - onSuccess: data => { - onNewChat(data.convo.id) - }, - onError: error => { - Toast.show(error.message) - }, - }) - - const onCreateChat = useCallback( - (did: string) => { - control.close(() => createChat([did])) - }, - [control, createChat], - ) - - return ( - <> - } - accessibilityRole="button" - accessibilityLabel={_(msg`New chat`)} - accessibilityHint="" - /> - - - - - - - ) -} - -function SearchablePeopleList({ - onCreateChat, -}: { - onCreateChat: (did: string) => void -}) { - const t = useTheme() - const {_} = useLingui() - const moderationOpts = useModerationOpts() - const control = Dialog.useDialogContext() - const listRef = useRef(null) - - const [searchText, setSearchText] = useState('') - - const { - data: actorAutocompleteData, - isFetching, - isError, - refetch, - } = useActorAutocompleteQuery(searchText, true) - - const renderItem = useCallback( - ({item: profile}: {item: AppBskyActorDefs.ProfileView}) => { - if (!moderationOpts) return null - const moderation = moderateProfile(profile, moderationOpts) - return ( - - ) - }, - [ - moderationOpts, - onCreateChat, - t.atoms.bg_contrast_25, - t.atoms.bg_contrast_50, - t.atoms.bg, - t.atoms.text, - t.atoms.text_contrast_high, - ], - ) - - const listHeader = useMemo(() => { - return ( - - {/* cover top corners */} - - - - Start a new chat - - - - { - setSearchText(text) - listRef.current?.scrollToOffset({offset: 0, animated: false}) - }} - returnKeyType="search" - clearButtonMode="while-editing" - maxLength={50} - onKeyPress={({nativeEvent}) => { - if (nativeEvent.key === 'Escape') { - control.close() - } - }} - autoCorrect={false} - autoComplete="off" - autoCapitalize="none" - autoFocus - /> - - - ) - }, [t.atoms.bg, _, control, searchText]) - - return ( - - {listHeader} - {searchText.length === 0 ? ( - - - - Search for someone to start a conversation with. - - - ) : ( - !actorAutocompleteData?.length && ( - - ) - )} - - } - stickyHeaderIndices={[0]} - keyExtractor={(item: AppBskyActorDefs.ProfileView) => item.did} - // @ts-expect-error web only - style={isWeb && {minHeight: '100vh'}} - onScrollBeginDrag={() => Keyboard.dismiss()} - /> - ) -} diff --git a/src/components/dms/NewMessagesPill.tsx b/src/components/dms/NewMessagesPill.tsx new file mode 100644 index 0000000000..924f7c4558 --- /dev/null +++ b/src/components/dms/NewMessagesPill.tsx @@ -0,0 +1,97 @@ +import React from 'react' +import {Pressable, View} from 'react-native' +import Animated, { + runOnJS, + useAnimatedStyle, + useSharedValue, + withTiming, +} from 'react-native-reanimated' +import {useSafeAreaInsets} from 'react-native-safe-area-context' +import {Trans} from '@lingui/macro' + +import { + ScaleAndFadeIn, + ScaleAndFadeOut, +} from 'lib/custom-animations/ScaleAndFade' +import {useHaptics} from 'lib/haptics' +import {isAndroid, isIOS, isWeb} from 'platform/detection' +import {atoms as a, useTheme} from '#/alf' +import {Text} from '#/components/Typography' + +const AnimatedPressable = Animated.createAnimatedComponent(Pressable) + +export function NewMessagesPill({ + onPress: onPressInner, +}: { + onPress: () => void +}) { + const t = useTheme() + const playHaptic = useHaptics() + const {bottom: bottomInset} = useSafeAreaInsets() + const bottomBarHeight = isIOS ? 42 : isAndroid ? 60 : 0 + const bottomOffset = isWeb ? 0 : bottomInset + bottomBarHeight + + const scale = useSharedValue(1) + + const onPressIn = React.useCallback(() => { + if (isWeb) return + scale.value = withTiming(1.075, {duration: 100}) + }, [scale]) + + const onPressOut = React.useCallback(() => { + if (isWeb) return + scale.value = withTiming(1, {duration: 100}) + }, [scale]) + + const onPress = React.useCallback(() => { + runOnJS(playHaptic)() + onPressInner?.() + }, [onPressInner, playHaptic]) + + const animatedStyle = useAnimatedStyle(() => ({ + transform: [{scale: scale.value}], + })) + + return ( + + + + New messages + + + + ) +} diff --git a/src/components/dms/ReportConversationPrompt.tsx b/src/components/dms/ReportConversationPrompt.tsx new file mode 100644 index 0000000000..610cfbcf96 --- /dev/null +++ b/src/components/dms/ReportConversationPrompt.tsx @@ -0,0 +1,27 @@ +import React from 'react' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {DialogControlProps} from '#/components/Dialog' +import * as Prompt from '#/components/Prompt' + +export function ReportConversationPrompt({ + control, +}: { + control: DialogControlProps +}) { + const {_} = useLingui() + + return ( + {}} + showCancel={false} + /> + ) +} diff --git a/src/components/dms/ReportDialog.tsx b/src/components/dms/ReportDialog.tsx new file mode 100644 index 0000000000..9c4ed2a0e9 --- /dev/null +++ b/src/components/dms/ReportDialog.tsx @@ -0,0 +1,283 @@ +import React, {memo, useMemo, useState} from 'react' +import {View} from 'react-native' +import { + ChatBskyConvoDefs, + ComAtprotoModerationCreateReport, + RichText as RichTextAPI, +} from '@atproto/api' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' +import {useMutation} from '@tanstack/react-query' + +import {ReportOption} from '#/lib/moderation/useReportOptions' +import {isAndroid} from '#/platform/detection' +import {useAgent} from '#/state/session' +import {CharProgress} from '#/view/com/composer/char-progress/CharProgress' +import * as Toast from '#/view/com/util/Toast' +import {atoms as a, useBreakpoints, useTheme} from '#/alf' +import * as Dialog from '#/components/Dialog' +import {Button, ButtonIcon, ButtonText} from '../Button' +import {Divider} from '../Divider' +import {ChevronLeft_Stroke2_Corner0_Rounded as Chevron} from '../icons/Chevron' +import {Loader} from '../Loader' +import {SelectReportOptionView} from '../ReportDialog/SelectReportOptionView' +import {RichText} from '../RichText' +import {Text} from '../Typography' +import {MessageItemMetadata} from './MessageItem' + +type ReportDialogParams = { + type: 'convoMessage' + convoId: string + message: ChatBskyConvoDefs.MessageView +} + +let ReportDialog = ({ + control, + params, +}: { + control: Dialog.DialogControlProps + params: ReportDialogParams +}): React.ReactNode => { + const {_} = useLingui() + return ( + + + + + + + + ) +} +ReportDialog = memo(ReportDialog) +export {ReportDialog} + +function DialogInner({params}: {params: ReportDialogParams}) { + const [reportOption, setReportOption] = useState(null) + + return reportOption ? ( + setReportOption(null)} + /> + ) : ( + + ) +} + +function ReasonStep({ + setReportOption, +}: { + setReportOption: (reportOption: ReportOption) => void + params: ReportDialogParams +}) { + const control = Dialog.useDialogContext() + + return ( + + ) +} + +function SubmitStep({ + params, + reportOption, + goBack, +}: { + params: ReportDialogParams + reportOption: ReportOption + goBack: () => void +}) { + const {_} = useLingui() + const {gtMobile} = useBreakpoints() + const t = useTheme() + const [details, setDetails] = useState('') + const control = Dialog.useDialogContext() + const agent = useAgent() + + const { + mutate: submit, + error, + isPending: submitting, + } = useMutation({ + mutationFn: async () => { + if (params.type === 'convoMessage') { + const {convoId, message} = params + + const report = { + reasonType: reportOption.reason, + subject: { + $type: 'chat.bsky.convo.defs#messageRef', + messageId: message.id, + convoId, + did: message.sender.did, + } satisfies ChatBskyConvoDefs.MessageRef, + reason: details, + } satisfies ComAtprotoModerationCreateReport.InputSchema + + await agent.createModerationReport(report) + } + }, + onSuccess: () => { + control.close(() => { + Toast.show(_(msg`Thank you. Your report has been sent.`)) + }) + }, + }) + + const copy = useMemo(() => { + return { + convoMessage: { + title: _(msg`Report this message`), + }, + }[params.type] + }, [_, params]) + + return ( + + + + + {copy.title} + + + Your report will be sent to the Bluesky Moderation Service + + + + + {params.type === 'convoMessage' && ( + + )} + + + + Reason: + {' '} + {reportOption.title} + + + + + + + Optionally provide additional information below: + + + + + + + + + + + + + {error && ( + + + There was an issue sending your report. Please check your internet + connection. + + + )} + + + + + ) +} + +function PreviewMessage({message}: {message: ChatBskyConvoDefs.MessageView}) { + const t = useTheme() + const rt = useMemo(() => { + return new RichTextAPI({text: message.text, facets: message.facets}) + }, [message.text, message.facets]) + + return ( + + + + + + + ) +} diff --git a/src/components/dms/dialogs/NewChatDialog.tsx b/src/components/dms/dialogs/NewChatDialog.tsx new file mode 100644 index 0000000000..2b90fb02b2 --- /dev/null +++ b/src/components/dms/dialogs/NewChatDialog.tsx @@ -0,0 +1,67 @@ +import React, {useCallback} from 'react' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {useGetConvoForMembers} from '#/state/queries/messages/get-convo-for-members' +import {logEvent} from 'lib/statsig/statsig' +import {FAB} from '#/view/com/util/fab/FAB' +import * as Toast from '#/view/com/util/Toast' +import {useTheme} from '#/alf' +import * as Dialog from '#/components/Dialog' +import {PlusLarge_Stroke2_Corner0_Rounded as Plus} from '#/components/icons/Plus' +import {SearchablePeopleList} from './SearchablePeopleList' + +export function NewChat({ + control, + onNewChat, +}: { + control: Dialog.DialogControlProps + onNewChat: (chatId: string) => void +}) { + const t = useTheme() + const {_} = useLingui() + + const {mutate: createChat} = useGetConvoForMembers({ + onSuccess: data => { + onNewChat(data.convo.id) + + if (!data.convo.lastMessage) { + logEvent('chat:create', {logContext: 'NewChatDialog'}) + } + logEvent('chat:open', {logContext: 'NewChatDialog'}) + }, + onError: error => { + Toast.show(error.message) + }, + }) + + const onCreateChat = useCallback( + (did: string) => { + control.close(() => createChat([did])) + }, + [control, createChat], + ) + + return ( + <> + } + accessibilityRole="button" + accessibilityLabel={_(msg`New chat`)} + accessibilityHint="" + /> + + + + + + ) +} diff --git a/src/components/dms/dialogs/SearchablePeopleList.tsx b/src/components/dms/dialogs/SearchablePeopleList.tsx new file mode 100644 index 0000000000..2c212e56f9 --- /dev/null +++ b/src/components/dms/dialogs/SearchablePeopleList.tsx @@ -0,0 +1,463 @@ +import React, { + useCallback, + useLayoutEffect, + useMemo, + useRef, + useState, +} from 'react' +import type {TextInput as TextInputType} from 'react-native' +import {View} from 'react-native' +import {AppBskyActorDefs, moderateProfile, ModerationOpts} from '@atproto/api' +import {BottomSheetFlatListMethods} from '@discord/bottom-sheet' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {sanitizeDisplayName} from '#/lib/strings/display-names' +import {sanitizeHandle} from '#/lib/strings/handles' +import {isWeb} from '#/platform/detection' +import {useModerationOpts} from '#/state/preferences/moderation-opts' +import {useProfileFollowsQuery} from '#/state/queries/profile-follows' +import {useSession} from '#/state/session' +import {useActorAutocompleteQuery} from 'state/queries/actor-autocomplete' +import {UserAvatar} from '#/view/com/util/UserAvatar' +import {atoms as a, native, useTheme, web} from '#/alf' +import {Button} from '#/components/Button' +import * as Dialog from '#/components/Dialog' +import {TextInput} from '#/components/dms/dialogs/TextInput' +import {canBeMessaged} from '#/components/dms/util' +import {useInteractionState} from '#/components/hooks/useInteractionState' +import {ChevronLeft_Stroke2_Corner0_Rounded as ChevronLeft} from '#/components/icons/Chevron' +import {MagnifyingGlass2_Stroke2_Corner0_Rounded as Search} from '#/components/icons/MagnifyingGlass2' +import {TimesLarge_Stroke2_Corner0_Rounded as X} from '#/components/icons/Times' +import {Text} from '#/components/Typography' + +type Item = + | { + type: 'profile' + key: string + enabled: boolean + profile: AppBskyActorDefs.ProfileView + } + | { + type: 'empty' + key: string + message: string + } + | { + type: 'placeholder' + key: string + } + | { + type: 'error' + key: string + } + +export function SearchablePeopleList({ + title, + onSelectChat, +}: { + title: string + onSelectChat: (did: string) => void +}) { + const t = useTheme() + const {_} = useLingui() + const moderationOpts = useModerationOpts() + const control = Dialog.useDialogContext() + const listRef = useRef(null) + const {currentAccount} = useSession() + const inputRef = useRef(null) + + const [searchText, setSearchText] = useState('') + + const { + data: results, + isError, + isFetching, + } = useActorAutocompleteQuery(searchText, true, 12) + const {data: follows} = useProfileFollowsQuery(currentAccount?.did) + + const items = useMemo(() => { + let _items: Item[] = [] + + if (isError) { + _items.push({ + type: 'empty', + key: 'empty', + message: _(msg`We're having network issues, try again`), + }) + } else if (searchText.length) { + if (results?.length) { + for (const profile of results) { + if (profile.did === currentAccount?.did) continue + _items.push({ + type: 'profile', + key: profile.did, + enabled: canBeMessaged(profile), + profile, + }) + } + + _items = _items.sort(a => { + // @ts-ignore + return a.enabled ? -1 : 1 + }) + } + } else { + if (follows) { + for (const page of follows.pages) { + for (const profile of page.follows) { + _items.push({ + type: 'profile', + key: profile.did, + enabled: canBeMessaged(profile), + profile, + }) + } + } + + _items = _items.sort(a => { + // @ts-ignore + return a.enabled ? -1 : 1 + }) + } else { + Array(10) + .fill(0) + .forEach((_, i) => { + _items.push({ + type: 'placeholder', + key: i + '', + }) + }) + } + } + + return _items + }, [_, searchText, results, isError, currentAccount?.did, follows]) + + if (searchText && !isFetching && !items.length && !isError) { + items.push({type: 'empty', key: 'empty', message: _(msg`No results`)}) + } + + const renderItems = useCallback( + ({item}: {item: Item}) => { + switch (item.type) { + case 'profile': { + return ( + + ) + } + case 'placeholder': { + return + } + case 'empty': { + return + } + default: + return null + } + }, + [moderationOpts, onSelectChat], + ) + + useLayoutEffect(() => { + if (isWeb) { + setImmediate(() => { + inputRef?.current?.focus() + }) + } + }, []) + + const listHeader = useMemo(() => { + return ( + + + + + {title} + + + + + { + setSearchText(text) + listRef.current?.scrollToOffset({offset: 0, animated: false}) + }} + onEscape={control.close} + /> + + + ) + }, [ + t.atoms.border_contrast_low, + t.atoms.bg, + t.atoms.text_contrast_high, + t.palette.contrast_500, + _, + title, + searchText, + control, + ]) + + return ( + item.key} + style={[ + web([a.py_0, {height: '100vh', maxHeight: 600}, a.px_0]), + native({ + height: '100%', + paddingHorizontal: 0, + marginTop: 0, + paddingTop: 0, + borderTopLeftRadius: 40, + borderTopRightRadius: 40, + }), + ]} + webInnerStyle={[a.py_0, {maxWidth: 500, minWidth: 200}]} + keyboardDismissMode="on-drag" + /> + ) +} + +function ProfileCard({ + enabled, + profile, + moderationOpts, + onPress, +}: { + enabled: boolean + profile: AppBskyActorDefs.ProfileView + moderationOpts: ModerationOpts + onPress: (did: string) => void +}) { + const t = useTheme() + const {_} = useLingui() + const moderation = moderateProfile(profile, moderationOpts) + const handle = sanitizeHandle(profile.handle, '@') + const displayName = sanitizeDisplayName( + profile.displayName || sanitizeHandle(profile.handle), + moderation.ui('displayName'), + ) + + const handleOnPress = useCallback(() => { + onPress(profile.did) + }, [onPress, profile.did]) + + return ( + + ) +} + +function ProfileCardSkeleton() { + const t = useTheme() + + return ( + + + + + + + + + ) +} + +function Empty({message}: {message: string}) { + const t = useTheme() + return ( + + + {message} + + + (╯°□°)╯︵ ┻━┻ + + ) +} + +function SearchInput({ + value, + onChangeText, + onEscape, + inputRef, +}: { + value: string + onChangeText: (text: string) => void + onEscape: () => void + inputRef: React.RefObject +}) { + const t = useTheme() + const {_} = useLingui() + const { + state: hovered, + onIn: onMouseEnter, + onOut: onMouseLeave, + } = useInteractionState() + const {state: focused, onIn: onFocus, onOut: onBlur} = useInteractionState() + const interacted = hovered || focused + + return ( + + + + { + if (nativeEvent.key === 'Escape') { + onEscape() + } + }} + autoCorrect={false} + autoComplete="off" + autoCapitalize="none" + autoFocus + accessibilityLabel={_(msg`Search profiles`)} + accessibilityHint={_(msg`Search profiles`)} + /> + + ) +} diff --git a/src/components/dms/dialogs/ShareViaChatDialog.tsx b/src/components/dms/dialogs/ShareViaChatDialog.tsx new file mode 100644 index 0000000000..ac475f7c99 --- /dev/null +++ b/src/components/dms/dialogs/ShareViaChatDialog.tsx @@ -0,0 +1,52 @@ +import React, {useCallback} from 'react' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {useGetConvoForMembers} from '#/state/queries/messages/get-convo-for-members' +import {logEvent} from 'lib/statsig/statsig' +import * as Toast from '#/view/com/util/Toast' +import * as Dialog from '#/components/Dialog' +import {SearchablePeopleList} from './SearchablePeopleList' + +export function SendViaChatDialog({ + control, + onSelectChat, +}: { + control: Dialog.DialogControlProps + onSelectChat: (chatId: string) => void +}) { + const {_} = useLingui() + + const {mutate: createChat} = useGetConvoForMembers({ + onSuccess: data => { + onSelectChat(data.convo.id) + + if (!data.convo.lastMessage) { + logEvent('chat:create', {logContext: 'SendViaChatDialog'}) + } + logEvent('chat:open', {logContext: 'SendViaChatDialog'}) + }, + onError: error => { + Toast.show(error.message) + }, + }) + + const onCreateChat = useCallback( + (did: string) => { + control.close(() => createChat([did])) + }, + [control, createChat], + ) + + return ( + + + + ) +} diff --git a/src/components/dms/dialogs/TextInput.tsx b/src/components/dms/dialogs/TextInput.tsx new file mode 100644 index 0000000000..b4e77e3e07 --- /dev/null +++ b/src/components/dms/dialogs/TextInput.tsx @@ -0,0 +1 @@ +export {BottomSheetTextInput as TextInput} from '@discord/bottom-sheet/src' diff --git a/src/components/dms/dialogs/TextInput.web.tsx b/src/components/dms/dialogs/TextInput.web.tsx new file mode 100644 index 0000000000..5371a534f1 --- /dev/null +++ b/src/components/dms/dialogs/TextInput.web.tsx @@ -0,0 +1 @@ +export {TextInput} from 'react-native' diff --git a/src/components/dms/util.ts b/src/components/dms/util.ts new file mode 100644 index 0000000000..5952b9acf4 --- /dev/null +++ b/src/components/dms/util.ts @@ -0,0 +1,18 @@ +import {AppBskyActorDefs} from '@atproto/api' + +export function canBeMessaged(profile: AppBskyActorDefs.ProfileView) { + switch (profile.associated?.chat?.allowIncoming) { + case 'none': + return false + case 'all': + return true + // if unset, treat as following + case 'following': + case undefined: + return Boolean(profile.viewer?.followedBy) + // any other values are invalid according to the lexicon, so + // let's treat as false to be safe + default: + return false + } +} diff --git a/src/components/hooks/useHeaderOffset.ts b/src/components/hooks/useHeaderOffset.ts new file mode 100644 index 0000000000..e2290c04fb --- /dev/null +++ b/src/components/hooks/useHeaderOffset.ts @@ -0,0 +1,16 @@ +import {useWindowDimensions} from 'react-native' + +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' + +export function useHeaderOffset() { + const {isDesktop, isTablet} = useWebMediaQueries() + const {fontScale} = useWindowDimensions() + if (isDesktop || isTablet) { + return 0 + } + const navBarHeight = 42 + const tabBarPad = 10 + 10 + 3 // padding + border + const normalLineHeight = 1.2 + const tabBarText = 16 * normalLineHeight * fontScale + return navBarHeight + tabBarPad + tabBarText +} diff --git a/src/components/hooks/useRichText.ts b/src/components/hooks/useRichText.ts index 4329638ea6..caf6febc04 100644 --- a/src/components/hooks/useRichText.ts +++ b/src/components/hooks/useRichText.ts @@ -7,7 +7,7 @@ export function useRichText(text: string): [RichTextAPI, boolean] { const [prevText, setPrevText] = React.useState(text) const [rawRT, setRawRT] = React.useState(() => new RichTextAPI({text})) const [resolvedRT, setResolvedRT] = React.useState(null) - const {getAgent} = useAgent() + const agent = useAgent() if (text !== prevText) { setPrevText(text) setRawRT(new RichTextAPI({text})) @@ -19,7 +19,7 @@ export function useRichText(text: string): [RichTextAPI, boolean] { async function resolveRTFacets() { // new each time const resolvedRT = new RichTextAPI({text}) - await resolvedRT.detectFacets(getAgent()) + await resolvedRT.detectFacets(agent) if (!ignore) { setResolvedRT(resolvedRT) } @@ -28,7 +28,7 @@ export function useRichText(text: string): [RichTextAPI, boolean] { return () => { ignore = true } - }, [text, getAgent]) + }, [text, agent]) const isResolving = resolvedRT === null return [resolvedRT ?? rawRT, isResolving] } diff --git a/src/components/icons/Bell.tsx b/src/components/icons/Bell.tsx new file mode 100644 index 0000000000..ede148ec15 --- /dev/null +++ b/src/components/icons/Bell.tsx @@ -0,0 +1,9 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const Bell_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M4.216 8.815a7.853 7.853 0 0 1 15.568 0l1.207 9.053A1 1 0 0 1 20 19h-3.354c-.904 1.748-2.607 3-4.646 3-2.039 0-3.742-1.252-4.646-3H4a1 1 0 0 1-.991-1.132l1.207-9.053ZM9.778 19c.61.637 1.399 1 2.222 1s1.613-.363 2.222-1H9.778ZM12 4a5.853 5.853 0 0 0-5.802 5.08L5.142 17h13.716l-1.056-7.92A5.853 5.853 0 0 0 12 4Z', +}) + +export const Bell_Filled_Corner0_Rounded = createSinglePathSVG({ + path: 'M12 2a7.853 7.853 0 0 0-7.784 6.815l-1.207 9.053A1 1 0 0 0 4 19h3.354c.904 1.748 2.607 3 4.646 3 2.039 0 3.742-1.252 4.646-3H20a1 1 0 0 0 .991-1.132l-1.207-9.053A7.853 7.853 0 0 0 12 2Zm2.222 17H9.778c.61.637 1.399 1 2.222 1s1.613-.363 2.222-1Z', +}) diff --git a/src/components/icons/Bell2.tsx b/src/components/icons/Bell2.tsx new file mode 100644 index 0000000000..f3d46d09dc --- /dev/null +++ b/src/components/icons/Bell2.tsx @@ -0,0 +1,17 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const Bell2_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M4.702 8.943a7.307 7.307 0 0 1 14.596 0l.19 3.798 1.321 2.641A1.809 1.809 0 0 1 19.191 18H16.9a5.002 5.002 0 0 1-9.8 0H4.809a1.809 1.809 0 0 1-1.618-2.618l1.32-2.641.19-3.798ZM9.17 18a3.001 3.001 0 0 0 5.658 0H9.171ZM12 4a5.307 5.307 0 0 0-5.3 5.042l-.19 3.798a2 2 0 0 1-.21.795L5.119 16h13.764l-1.183-2.365a2 2 0 0 1-.208-.795l-.19-3.798A5.308 5.308 0 0 0 12 4Z', +}) + +export const Bell2_Filled_Corner0_Rounded = createSinglePathSVG({ + path: 'M12 2a7.307 7.307 0 0 0-7.298 6.943l-.19 3.798-1.321 2.641A1.809 1.809 0 0 0 4.809 18H7.1a5.002 5.002 0 0 0 9.8 0h2.291a1.809 1.809 0 0 0 1.618-2.618l-1.32-2.641-.19-3.798A7.308 7.308 0 0 0 12 2Zm0 18a3.001 3.001 0 0 1-2.83-2h5.66A3.001 3.001 0 0 1 12 20Z', +}) + +export const Bell2Off_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M2.293 2.293a1 1 0 0 1 1.414 0l18 18a1 1 0 0 1-1.414 1.414L17.586 19h-.94c-.904 1.748-2.607 3-4.646 3-2.039 0-3.742-1.252-4.646-3H4a1 1 0 0 1-.991-1.132l1.207-9.053c.116-.87.372-1.69.743-2.442L2.293 3.707a1 1 0 0 1 0-1.414Zm4.19 5.604c-.134.376-.23.772-.285 1.183L5.142 17h10.444L6.483 7.897ZM9.778 19c.61.637 1.399 1 2.222 1s1.613-.363 2.222-1H9.778ZM8.834 2.666a7.853 7.853 0 0 1 10.95 6.15l.645 4.832a1 1 0 0 1-1.983.265l-.644-4.833A5.853 5.853 0 0 0 9.64 4.495a1 1 0 0 1-.807-1.83Z', +}) + +export const Bell2Off_Filled_Corner0_Rounded = createSinglePathSVG({ + path: 'm19.785 8.815 1.034 7.761L7.595 3.352a7.853 7.853 0 0 1 12.19 5.463ZM4 19h3.354c.904 1.748 2.607 3 4.646 3 2.038 0 3.742-1.252 4.646-3h.94l2.707 2.707a1 1 0 0 0 1.414-1.414l-18-18a1 1 0 0 0-1.414 1.414l2.666 2.666a7.842 7.842 0 0 0-.743 2.442l-1.207 9.053A1 1 0 0 0 4 19Zm8 1c-.823 0-1.613-.363-2.222-1h4.443c-.608.637-1.398 1-2.221 1Z', +}) diff --git a/src/components/icons/BulletList.tsx b/src/components/icons/BulletList.tsx new file mode 100644 index 0000000000..58847d9d96 --- /dev/null +++ b/src/components/icons/BulletList.tsx @@ -0,0 +1,9 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const BulletList_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M6 6a1 1 0 1 0 0 2 1 1 0 0 0 0-2ZM3 7a3 3 0 1 1 6 0 3 3 0 0 1-6 0Zm9 0a1 1 0 0 1 1-1h7a1 1 0 1 1 0 2h-7a1 1 0 0 1-1-1Zm-6 9a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm-3 1a3 3 0 1 1 6 0 3 3 0 0 1-6 0Zm9 0a1 1 0 0 1 1-1h7a1 1 0 1 1 0 2h-7a1 1 0 0 1-1-1Z', +}) + +export const BulletList_Filled_Corner0_Rounded = createSinglePathSVG({ + path: 'M3 7a3 3 0 1 1 6 0 3 3 0 0 1-6 0Zm0 10a3 3 0 1 1 6 0 3 3 0 0 1-6 0Zm10-1a1 1 0 1 0 0 2h7a1 1 0 1 0 0-2h-7Zm-1-9a1 1 0 0 1 1-1h7a1 1 0 1 1 0 2h-7a1 1 0 0 1-1-1Z', +}) diff --git a/src/components/icons/EditBig.tsx b/src/components/icons/EditBig.tsx new file mode 100644 index 0000000000..571f38b3e1 --- /dev/null +++ b/src/components/icons/EditBig.tsx @@ -0,0 +1,5 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const EditBig_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M17.293 2.293a1 1 0 0 1 1.414 0l3 3a1 1 0 0 1 0 1.414l-9 9A1 1 0 0 1 12 16H9a1 1 0 0 1-1-1v-3a1 1 0 0 1 .293-.707l9-9ZM10 12.414V14h1.586l8-8L18 4.414l-8 8ZM3 4a1 1 0 0 1 1-1h7a1 1 0 1 1 0 2H5v14h14v-6a1 1 0 1 1 2 0v7a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4Z', +}) diff --git a/src/components/icons/Globe.tsx b/src/components/icons/Globe.tsx index f81b3ff7a0..53ef84eec8 100644 --- a/src/components/icons/Globe.tsx +++ b/src/components/icons/Globe.tsx @@ -3,3 +3,7 @@ import {createSinglePathSVG} from './TEMPLATE' export const Globe_Stroke2_Corner0_Rounded = createSinglePathSVG({ path: 'M4.062 11h2.961c.103-2.204.545-4.218 1.235-5.77.06-.136.123-.269.188-.399A8.007 8.007 0 0 0 4.062 11ZM12 2C6.477 2 2 6.477 2 12s4.477 10 10 10 10-4.477 10-10S17.523 2 12 2Zm0 2c-.227 0-.518.1-.868.432-.354.337-.719.872-1.047 1.61-.561 1.263-.958 2.991-1.06 4.958h5.95c-.102-1.967-.499-3.695-1.06-4.958-.328-.738-.693-1.273-1.047-1.61C12.518 4.099 12.227 4 12 4Zm4.977 7c-.103-2.204-.545-4.218-1.235-5.77a9.78 9.78 0 0 0-.188-.399A8.006 8.006 0 0 1 19.938 11h-2.961Zm-2.003 2H9.026c.101 1.966.498 3.695 1.06 4.958.327.738.692 1.273 1.046 1.61.35.333.641.432.868.432.227 0 .518-.1.868-.432.354-.337.719-.872 1.047-1.61.561-1.263.958-2.991 1.06-4.958Zm.58 6.169c.065-.13.128-.263.188-.399.69-1.552 1.132-3.566 1.235-5.77h2.961a8.006 8.006 0 0 1-4.384 6.169Zm-7.108 0a9.877 9.877 0 0 1-.188-.399c-.69-1.552-1.132-3.566-1.235-5.77H4.062a8.006 8.006 0 0 0 4.384 6.169Z', }) + +export const Earth_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M4.4 9.493C4.14 10.28 4 11.124 4 12a8 8 0 1 0 10.899-7.459l-.953 3.81a1 1 0 0 1-.726.727l-3.444.866-.772 1.533a1 1 0 0 1-1.493.35L4.4 9.493Zm.883-1.84L7.756 9.51l.44-.874a1 1 0 0 1 .649-.52l3.306-.832.807-3.227a7.993 7.993 0 0 0-7.676 3.597ZM2 12C2 6.477 6.477 2 12 2s10 4.477 10 10-4.477 10-10 10S2 17.523 2 12Zm8.43.162a1 1 0 0 1 .77-.29l1.89.121a1 1 0 0 1 .494.168l2.869 1.928a1 1 0 0 1 .336 1.277l-.973 1.946a1 1 0 0 1-.894.553h-2.92a1 1 0 0 1-.831-.445L9.225 14.5a1 1 0 0 1 .126-1.262l1.08-1.076Zm.915 1.913.177-.177 1.171.074 1.914 1.286-.303.607h-1.766l-1.194-1.79Z', +}) diff --git a/src/components/icons/Hashtag.tsx b/src/components/icons/Hashtag.tsx index 668ed92566..930484fb21 100644 --- a/src/components/icons/Hashtag.tsx +++ b/src/components/icons/Hashtag.tsx @@ -3,3 +3,7 @@ import {createSinglePathSVG} from './TEMPLATE' export const Hashtag_Stroke2_Corner0_Rounded = createSinglePathSVG({ path: 'M9.124 3.008a1 1 0 0 1 .868 1.116L9.632 7h5.985l.39-3.124a1 1 0 0 1 1.985.248L17.632 7H20a1 1 0 1 1 0 2h-2.617l-.75 6H20a1 1 0 1 1 0 2h-3.617l-.39 3.124a1 1 0 1 1-1.985-.248l.36-2.876H8.382l-.39 3.124a1 1 0 1 1-1.985-.248L6.368 17H4a1 1 0 1 1 0-2h2.617l.75-6H4a1 1 0 1 1 0-2h3.617l.39-3.124a1 1 0 0 1 1.117-.868ZM9.383 9l-.75 6h5.984l.75-6H9.383Z', }) + +export const Hashtag_Filled_Corner0_Rounded = createSinglePathSVG({ + path: 'M9.186 2.512a1.5 1.5 0 0 0-1.674 1.302L7.176 6.5H4a1.5 1.5 0 1 0 0 3h2.8l-.624 5H4a1.5 1.5 0 0 0 0 3h1.8l-.288 2.314a1.5 1.5 0 1 0 2.976.372l.336-2.686h4.977l-.29 2.314a1.5 1.5 0 1 0 2.977.372l.336-2.686H20a1.5 1.5 0 0 0 0-3h-2.8l.624-5H20a1.5 1.5 0 0 0 0-3h-1.8l.288-2.314a1.5 1.5 0 1 0-2.976-.372L15.176 6.5h-4.977l.29-2.314a1.5 1.5 0 0 0-1.303-1.674ZM9.2 14.5l.625-5h4.977l-.625 5H9.199Z', +}) diff --git a/src/components/icons/Home.tsx b/src/components/icons/Home.tsx new file mode 100644 index 0000000000..e150b7b813 --- /dev/null +++ b/src/components/icons/Home.tsx @@ -0,0 +1,9 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const Home_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M11.46 1.362a2 2 0 0 1 1.08 0c.249.07.448.188.611.301.146.102.306.232.467.363l6.421 5.218.046.036c.169.137.38.308.54.53a2 2 0 0 1 .304.64c.073.264.072.536.071.753v9.229c0 .252 0 .498-.017.706a2.023 2.023 0 0 1-.201.77 2 2 0 0 1-.874.874 2.02 2.02 0 0 1-.77.201c-.208.017-.454.017-.706.017H5.568c-.252 0-.498 0-.706-.017a2.02 2.02 0 0 1-.77-.201 2 2 0 0 1-.874-.874 2.022 2.022 0 0 1-.201-.77C3 18.93 3 18.684 3 18.432V9.203c0-.217-.002-.49.07-.754a2 2 0 0 1 .304-.638c.16-.223.372-.394.541-.53l.045-.037 6.422-5.218c.161-.13.321-.26.467-.362.163-.114.362-.232.612-.302Zm.532 1.943c-.077.054-.18.136-.37.29l-6.4 5.2a6.315 6.315 0 0 0-.215.18c-.002 0-.003.002-.004.003v.004C5 9.036 5 9.112 5 9.262V18.4a8.18 8.18 0 0 0 .011.588l.014.002c.116.01.278.01.575.01H8v-5a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v5h2.4a8.207 8.207 0 0 0 .589-.012v-.013c.01-.116.011-.279.011-.575V9.262c0-.15 0-.226-.003-.28v-.004l-.003-.003a6.448 6.448 0 0 0-.216-.18l-6.4-5.2a7.373 7.373 0 0 0-.37-.29L12 3.299l-.008.006ZM14 19v-5h-4v5h4Z', +}) + +export const Home_Filled_Corner0_Rounded = createSinglePathSVG({ + path: 'M13.261 1.736a2 2 0 0 0-2.522 0l-7 5.687A2 2 0 0 0 3 8.976V19a2 2 0 0 0 2 2h3v-8a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v8h3a2 2 0 0 0 2-2V8.976a2 2 0 0 0-.739-1.553l-7-5.687ZM14 21h-4v-7h4v7Z', +}) diff --git a/src/components/icons/HomeOpen.tsx b/src/components/icons/HomeOpen.tsx new file mode 100644 index 0000000000..1b7df5aa90 --- /dev/null +++ b/src/components/icons/HomeOpen.tsx @@ -0,0 +1,9 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const HomeOpen_Stoke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M11.37 1.724a1 1 0 0 1 1.26 0l8 6.5A1 1 0 0 1 21 9v11a1 1 0 0 1-1 1h-6a1 1 0 0 1-1-1v-5h-2v5a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V9a1 1 0 0 1 .37-.776l8-6.5ZM5 9.476V19h4v-5a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v5h4V9.476l-7-5.688-7 5.688Z', +}) + +export const HomeOpen_Filled_Corner0_Rounded = createSinglePathSVG({ + path: 'M12.63 1.724a1 1 0 0 0-1.26 0l-8 6.5A1 1 0 0 0 3 9v11a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1v-6h4v6a1 1 0 0 0 1 1h5a1 1 0 0 0 1-1V9a1 1 0 0 0-.37-.776l-8-6.5Z', +}) diff --git a/src/components/icons/Image.tsx b/src/components/icons/Image.tsx index 03702a0f46..eac296ad42 100644 --- a/src/components/icons/Image.tsx +++ b/src/components/icons/Image.tsx @@ -1,5 +1,5 @@ import {createSinglePathSVG} from './TEMPLATE' export const Image_Stroke2_Corner0_Rounded = createSinglePathSVG({ - path: 'M3 5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5Zm16 0H5v7.213l1.246-.932.044-.03a3 3 0 0 1 3.863.454c1.468 1.58 2.941 2.749 4.847 2.749 1.703 0 2.855-.555 4-1.618V5Zm0 10.357c-1.112.697-2.386 1.097-4 1.097-2.81 0-4.796-1.755-6.313-3.388a1 1 0 0 0-1.269-.164L5 14.712V19h14v-3.643ZM15 8a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm-3 1a3 3 0 1 1 6 0 3 3 0 0 1-6 0Z', + path: 'M3 4a1 1 0 0 1 1-1h16a1 1 0 0 1 1 1v16a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V4Zm2 1v7.213l1.246-.932.044-.03a3 3 0 0 1 3.863.454c1.468 1.58 2.941 2.749 4.847 2.749 1.703 0 2.855-.555 4-1.618V5H5Zm14 10.357c-1.112.697-2.386 1.097-4 1.097-2.81 0-4.796-1.755-6.313-3.388a1 1 0 0 0-1.269-.164L5 14.712V19h14v-3.643ZM15 8a1 1 0 1 0 0 2 1 1 0 0 0 0-2Zm-3 1a3 3 0 1 1 6 0 3 3 0 0 1-6 0Z', }) diff --git a/src/components/icons/MagnifyingGlass.tsx b/src/components/icons/MagnifyingGlass.tsx new file mode 100644 index 0000000000..de5f83c9cb --- /dev/null +++ b/src/components/icons/MagnifyingGlass.tsx @@ -0,0 +1,6 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const MagnifyingGlass_Filled_Stroke2_Corner0_Rounded = + createSinglePathSVG({ + path: 'M5 11a6 6 0 1 1 12 0 6 6 0 0 1-12 0Zm6-8a8 8 0 1 0 4.906 14.32l3.387 3.387a1 1 0 0 0 1.414-1.414l-3.387-3.387A8 8 0 0 0 11 3Zm4 8a4 4 0 1 1-8 0 4 4 0 0 1 8 0Z', + }) diff --git a/src/components/icons/Message.tsx b/src/components/icons/Message.tsx new file mode 100644 index 0000000000..6d0dd01e76 --- /dev/null +++ b/src/components/icons/Message.tsx @@ -0,0 +1,9 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const Message_Stroke2_Corner0_Rounded_Filled = createSinglePathSVG({ + path: 'M2 12C2 6.477 6.477 2 12 2s10 4.477 10 10-4.477 10-10 10a9.968 9.968 0 0 1-4.136-.893l-4.68.876a1 1 0 0 1-1.164-1.184l.931-4.537A9.965 9.965 0 0 1 2 12Zm4.25 0a1.25 1.25 0 1 0 2.5 0 1.25 1.25 0 0 0-2.5 0Zm4.5 0a1.25 1.25 0 1 0 2.5 0 1.25 1.25 0 0 0-2.5 0Zm5.75 1.25a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Z', +}) + +export const Message_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M4 12a8 8 0 1 1 4.445 7.169 1 1 0 0 0-.629-.088l-3.537.662.7-3.415a1 1 0 0 0-.09-.66A7.961 7.961 0 0 1 4 12Zm8-10C6.477 2 2 6.477 2 12c0 1.523.341 2.968.951 4.262l-.93 4.537a1 1 0 0 0 1.163 1.184l4.68-.876A9.968 9.968 0 0 0 12 22c5.523 0 10-4.477 10-10S17.523 2 12 2ZM7.5 13.25a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Zm4.5 0a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Zm4.5 0a1.25 1.25 0 1 1 0-2.5 1.25 1.25 0 0 1 0 2.5Z', +}) diff --git a/src/components/icons/Person.tsx b/src/components/icons/Person.tsx index 6d09148c9d..399f7c0619 100644 --- a/src/components/icons/Person.tsx +++ b/src/components/icons/Person.tsx @@ -3,3 +3,19 @@ import {createSinglePathSVG} from './TEMPLATE' export const Person_Stroke2_Corner0_Rounded = createSinglePathSVG({ path: 'M12 4a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5ZM7.5 6.5a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0ZM5.678 19h12.644c-.71-2.909-3.092-5-6.322-5s-5.613 2.091-6.322 5Zm-2.174.906C3.917 15.521 7.242 12 12 12c4.758 0 8.083 3.521 8.496 7.906A1 1 0 0 1 19.5 21h-15a1 1 0 0 1-.996-1.094Z', }) + +export const PersonCheck_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M12 4a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5ZM7.5 6.5a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0ZM5.679 19c.709-2.902 3.079-5 6.321-5a6.69 6.69 0 0 1 2.612.51 1 1 0 0 0 .776-1.844A8.687 8.687 0 0 0 12 12c-4.3 0-7.447 2.884-8.304 6.696-.29 1.29.767 2.304 1.902 2.304H11a1 1 0 1 0 0-2H5.679Zm14.835-4.857a1 1 0 0 1 .344 1.371l-3 5a1 1 0 0 1-1.458.286l-2-1.5a1 1 0 0 1 1.2-1.6l1.113.835 2.43-4.05a1 1 0 0 1 1.372-.342Z', +}) + +export const PersonX_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M12 4a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5ZM7.5 6.5a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0ZM5.679 19c.709-2.902 3.079-5 6.321-5 .302 0 .595.018.878.053a1 1 0 0 0 .243-1.985A9.235 9.235 0 0 0 12 12c-4.3 0-7.447 2.884-8.304 6.696-.29 1.29.767 2.304 1.902 2.304H12a1 1 0 1 0 0-2H5.679Zm9.614-3.707a1 1 0 0 1 1.414 0L18 16.586l1.293-1.293a1 1 0 0 1 1.414 1.414L19.414 18l1.293 1.293a1 1 0 0 1-1.414 1.414L18 19.414l-1.293 1.293a1 1 0 0 1-1.414-1.414L16.586 18l-1.293-1.293a1 1 0 0 1 0-1.414Z', +}) + +export const PersonPlus_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M12 4a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5ZM7.5 6.5a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0ZM5.678 19c.71-2.909 3.092-5 6.322-5 .621 0 1.206.077 1.748.218a1 1 0 1 0 .504-1.936A8.931 8.931 0 0 0 12 12c-4.758 0-8.083 3.521-8.496 7.906A1 1 0 0 0 4.5 21H11a1 1 0 1 0 0-2H5.678ZM18 14a1 1 0 0 1 1 1v2h2a1 1 0 1 1 0 2h-2v2a1 1 0 1 1-2 0v-2h-2a1 1 0 1 1 0-2h2v-2a1 1 0 0 1 1-1Z', +}) + +export const PersonPlus_Filled_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M7.5 6.5a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0ZM12 12c-4.758 0-8.083 3.521-8.496 7.906A1 1 0 0 0 4.5 21H15a3 3 0 1 1 0-6c0-.824.332-1.571.87-2.113C14.739 12.32 13.435 12 12 12Zm6 2a1 1 0 0 1 1 1v2h2a1 1 0 1 1 0 2h-2v2a1 1 0 1 1-2 0v-2h-2a1 1 0 1 1 0-2h2v-2a1 1 0 0 1 1-1Z', +}) diff --git a/src/components/icons/PersonCheck.tsx b/src/components/icons/PersonCheck.tsx deleted file mode 100644 index 097271d89a..0000000000 --- a/src/components/icons/PersonCheck.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import {createSinglePathSVG} from './TEMPLATE' - -export const PersonCheck_Stroke2_Corner0_Rounded = createSinglePathSVG({ - path: 'M12 4a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5ZM7.5 6.5a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0ZM5.679 19c.709-2.902 3.079-5 6.321-5a6.69 6.69 0 0 1 2.612.51 1 1 0 0 0 .776-1.844A8.687 8.687 0 0 0 12 12c-4.3 0-7.447 2.884-8.304 6.696-.29 1.29.767 2.304 1.902 2.304H11a1 1 0 1 0 0-2H5.679Zm14.835-4.857a1 1 0 0 1 .344 1.371l-3 5a1 1 0 0 1-1.458.286l-2-1.5a1 1 0 0 1 1.2-1.6l1.113.835 2.43-4.05a1 1 0 0 1 1.372-.342Z', -}) diff --git a/src/components/icons/PersonX.tsx b/src/components/icons/PersonX.tsx deleted file mode 100644 index a015e13765..0000000000 --- a/src/components/icons/PersonX.tsx +++ /dev/null @@ -1,5 +0,0 @@ -import {createSinglePathSVG} from './TEMPLATE' - -export const PersonX_Stroke2_Corner0_Rounded = createSinglePathSVG({ - path: 'M12 4a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5ZM7.5 6.5a4.5 4.5 0 1 1 9 0 4.5 4.5 0 0 1-9 0ZM5.679 19c.709-2.902 3.079-5 6.321-5 .302 0 .595.018.878.053a1 1 0 0 0 .243-1.985A9.235 9.235 0 0 0 12 12c-4.3 0-7.447 2.884-8.304 6.696-.29 1.29.767 2.304 1.902 2.304H12a1 1 0 1 0 0-2H5.679Zm9.614-3.707a1 1 0 0 1 1.414 0L18 16.586l1.293-1.293a1 1 0 0 1 1.414 1.414L19.414 18l1.293 1.293a1 1 0 0 1-1.414 1.414L18 19.414l-1.293 1.293a1 1 0 0 1-1.414-1.414L16.586 18l-1.293-1.293a1 1 0 0 1 0-1.414Z', -}) diff --git a/src/components/icons/Quote.tsx b/src/components/icons/Quote.tsx new file mode 100644 index 0000000000..ec53cfc460 --- /dev/null +++ b/src/components/icons/Quote.tsx @@ -0,0 +1,21 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const OpenQuote_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M7.574 4.178a1 1 0 0 1 .43.822v5h2a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-7a1 1 0 0 1-1-1v-8c0-2.585 1.162-4.335 2.316-5.417a8.163 8.163 0 0 1 1.569-1.15 7.029 7.029 0 0 1 .738-.36l.016-.005.005-.003h.003v-.001c.001 0 .002 0 .353.936l-.351-.936a1 1 0 0 1 .92.114Zm-1.57 2.588a5.99 5.99 0 0 0-.316.276C4.842 7.835 4.004 9.085 4.004 11v7h5v-6h-2a1 1 0 0 1-1-1V6.766Zm12.57-2.588a1 1 0 0 1 .43.822v5h2a1 1 0 0 1 1 1v8a1 1 0 0 1-1 1h-7a1 1 0 0 1-1-1v-8c0-2.585 1.162-4.335 2.316-5.417a8.166 8.166 0 0 1 1.569-1.15 7.038 7.038 0 0 1 .738-.36l.016-.005.005-.003h.003v-.001c.001 0 .002 0 .353.936l-.351-.936a1 1 0 0 1 .92.114Zm-1.57 2.588c-.105.085-.21.177-.316.276-.846.793-1.684 2.043-1.684 3.958v7h5v-6h-2a1 1 0 0 1-1-1V6.766Z', +}) + +export const OpenQuote_Filled_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M8.004 5a1 1 0 0 0-.43-.822c-.57-.395-1.176-.031-1.685.255-.428.24-.998.614-1.569 1.15C3.166 6.665 2.004 8.415 2.004 11v8a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1v-8a1 1 0 0 0-1-1h-2V5ZM19.004 5a1 1 0 0 0-.43-.822c-.57-.395-1.176-.031-1.685.255-.428.24-.998.614-1.569 1.15-1.154 1.082-2.316 2.832-2.316 5.417v8a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1v-8a1 1 0 0 0-1-1h-2V5Z', +}) + +export const CloseQuote_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M2.004 5a1 1 0 0 1 1-1h7a1 1 0 0 1 1 1v8c0 2.585-1.162 4.335-2.316 5.417-.571.536-1.14.91-1.569 1.15a7.01 7.01 0 0 1-.738.36l-.016.006-.006.002h-.002l-.001.001L6.004 19l.351.936A1 1 0 0 1 5.004 19v-5h-2a1 1 0 0 1-1-1V5Zm5 12.234c.104-.085.21-.177.316-.276.846-.793 1.684-2.043 1.684-3.958V6h-5v6h2a1 1 0 0 1 1 1v4.234Zm6-12.234a1 1 0 0 1 1-1h7a1 1 0 0 1 1 1v8c0 2.585-1.162 4.335-2.316 5.417-.571.536-1.14.91-1.569 1.15a7.018 7.018 0 0 1-.738.36l-.016.006-.006.002h-.002l-.001.001-.352-.936.351.936A1 1 0 0 1 16.004 19v-5h-2a1 1 0 0 1-1-1V5Zm5 12.234V13a1 1 0 0 0-1-1h-2V6h5v7c0 1.915-.838 3.165-1.684 3.958-.106.1-.212.191-.316.276Z', +}) + +export const CloseQuote_Stroke2_Corner1_Rounded = createSinglePathSVG({ + path: 'M2.003 5.999a2 2 0 0 1 2-1.999h5c1.104 0 2 .893 2 1.999V13c0 2.585-1.16 4.335-2.315 5.417-.571.536-1.14.91-1.569 1.15a7.01 7.01 0 0 1-.738.36l-.016.006-.006.002h-.002l-.001.001L6.004 19l.351.936a1 1 0 0 1-1.351-.935L5 14H4a2 2 0 0 1-2-2.001l.002-6Zm5 11.236L7 12.999A1 1 0 0 0 6 12H4l.003-6h5v7c0 1.915-.837 3.165-1.683 3.958-.106.1-.213.192-.317.277Zm6-11.235a2 2 0 0 1 2-2h5c1.104 0 2 .893 2 1.999V13c0 2.585-1.16 4.335-2.315 5.417-.571.536-1.14.91-1.569 1.15a7.018 7.018 0 0 1-.738.36l-.016.006-.006.002h-.002l-.001.001-.352-.936.351.936A1 1 0 0 1 16.004 19v-5h-1a2 2 0 0 1-2-2V6Zm7 0h-5v6h2a1 1 0 0 1 1 1v4.234c.105-.085.211-.177.317-.276.846-.793 1.684-2.043 1.684-3.958V6Z', +}) + +export const CloseQuote_Filled_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M3.004 4a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2v5a1 1 0 0 0 .43.822c.57.395 1.176.031 1.685-.255.428-.24.998-.614 1.569-1.15 1.154-1.082 2.316-2.832 2.316-5.417V5a1 1 0 0 0-1-1h-7ZM14.004 4a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h2v5a1 1 0 0 0 .43.822c.57.395 1.176.031 1.685-.255.428-.24.998-.614 1.569-1.15 1.154-1.082 2.316-2.832 2.316-5.417V5a1 1 0 0 0-1-1h-7Z', +}) diff --git a/src/components/icons/Repost.tsx b/src/components/icons/Repost.tsx new file mode 100644 index 0000000000..01214bca71 --- /dev/null +++ b/src/components/icons/Repost.tsx @@ -0,0 +1,13 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const Repost_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M16.293 2.293a1 1 0 0 1 1.414 0l3 3a1 1 0 0 1 0 1.414l-3 3a1 1 0 0 1-1.414-1.414L17.586 7H5v4a1 1 0 1 1-2 0V6a1 1 0 0 1 1-1h13.586l-1.293-1.293a1 1 0 0 1 0-1.414ZM21 13v5a1 1 0 0 1-1 1H6.414l1.293 1.293a1 1 0 1 1-1.414 1.414l-3-3a1 1 0 0 1 0-1.414l3-3a1 1 0 0 1 1.414 1.414L6.414 17H19v-4a1 1 0 1 1 2 0Z', +}) + +export const Repost_Stroke2_Corner2_Rounded = createSinglePathSVG({ + path: 'M17.957 2.293a1 1 0 1 0-1.414 1.414L17.836 5H6a3 3 0 0 0-3 3v3a1 1 0 1 0 2 0V8a1 1 0 0 1 1-1h11.836l-1.293 1.293a1 1 0 0 0 1.414 1.414l2.47-2.47a1.75 1.75 0 0 0 0-2.474l-2.47-2.47ZM20 12a1 1 0 0 1 1 1v3a3 3 0 0 1-3 3H6.164l1.293 1.293a1 1 0 1 1-1.414 1.414l-2.47-2.47a1.75 1.75 0 0 1 0-2.474l2.47-2.47a1 1 0 0 1 1.414 1.414L6.164 17H18a1 1 0 0 0 1-1v-3a1 1 0 0 1 1-1Z', +}) + +export const Repost_Stroke2_Corner3_Rounded = createSinglePathSVG({ + path: 'M16.793 2.293a1 1 0 0 1 1.414 0L20.5 4.586a2 2 0 0 1 0 2.828l-2.293 2.293a1 1 0 0 1-1.414-1.414L18.086 7H7a2 2 0 0 0-2 2v2a1 1 0 1 1-2 0V9a4 4 0 0 1 4-4h11.086l-1.293-1.293a1 1 0 0 1 0-1.414ZM20 12a1 1 0 0 1 1 1v2a4 4 0 0 1-4 4H5.914l1.293 1.293a1 1 0 1 1-1.414 1.414L3.5 19.414a2 2 0 0 1 0-2.828l2.293-2.293a1 1 0 0 1 1.414 1.414L5.914 17H17a2 2 0 0 0 2-2v-2a1 1 0 0 1 1-1Z', +}) diff --git a/src/components/icons/SettingsGear2.tsx b/src/components/icons/SettingsGear2.tsx new file mode 100644 index 0000000000..2cc0661bb4 --- /dev/null +++ b/src/components/icons/SettingsGear2.tsx @@ -0,0 +1,9 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const SettingsGear2_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M11.1 2a1 1 0 0 0-.832.445L8.851 4.57 6.6 4.05a1 1 0 0 0-.932.268l-1.35 1.35a1 1 0 0 0-.267.932l.52 2.251-2.126 1.417A1 1 0 0 0 2 11.1v1.8a1 1 0 0 0 .445.832l2.125 1.417-.52 2.251a1 1 0 0 0 .268.932l1.35 1.35a1 1 0 0 0 .932.267l2.251-.52 1.417 2.126A1 1 0 0 0 11.1 22h1.8a1 1 0 0 0 .832-.445l1.417-2.125 2.251.52a1 1 0 0 0 .932-.268l1.35-1.35a1 1 0 0 0 .267-.932l-.52-2.251 2.126-1.417A1 1 0 0 0 22 12.9v-1.8a1 1 0 0 0-.445-.832L19.43 8.851l.52-2.251a1 1 0 0 0-.268-.932l-1.35-1.35a1 1 0 0 0-.932-.267l-2.251.52-1.417-2.126A1 1 0 0 0 12.9 2h-1.8Zm-.968 4.255L11.635 4h.73l1.503 2.255a1 1 0 0 0 1.057.42l2.385-.551.566.566-.55 2.385a1 1 0 0 0 .42 1.057L20 11.635v.73l-2.255 1.503a1 1 0 0 0-.42 1.057l.551 2.385-.566.566-2.385-.55a1 1 0 0 0-1.057.42L12.365 20h-.73l-1.503-2.255a1 1 0 0 0-1.057-.42l-2.385.551-.566-.566.55-2.385a1 1 0 0 0-.42-1.057L4 12.365v-.73l2.255-1.503a1 1 0 0 0 .42-1.057L6.123 6.69l.566-.566 2.385.55a1 1 0 0 0 1.057-.42ZM8 12a4 4 0 1 1 8 0 4 4 0 0 1-8 0Zm4-2a2 2 0 1 0 0 4 2 2 0 0 0 0-4Z', +}) + +export const SettingsGear2_Filled_Corner0_Rounded = createSinglePathSVG({ + path: 'M9.996 2.869A1.951 1.951 0 0 1 11.62 2h.76c.653 0 1.262.326 1.624.869l1.141 1.712 1.749-.404a1.951 1.951 0 0 1 1.819.522l.588.589c.476.475.673 1.162.522 1.818l-.404 1.749 1.712 1.141c.543.362.869.971.869 1.624v.76c0 .653-.326 1.262-.869 1.624l-1.712 1.141.404 1.749a1.951 1.951 0 0 1-.522 1.819l-.588.588a1.951 1.951 0 0 1-1.819.522l-1.749-.404-1.141 1.712A1.951 1.951 0 0 1 12.38 22h-.76a1.951 1.951 0 0 1-1.624-.869L8.855 19.42l-1.749.404a1.951 1.951 0 0 1-1.818-.522l-.59-.588a1.951 1.951 0 0 1-.52-1.819l.403-1.749-1.712-1.141A1.951 1.951 0 0 1 2 12.38v-.76c0-.653.326-1.262.869-1.624L4.58 8.855l-.404-1.749A1.951 1.951 0 0 1 4.7 5.288l.589-.59a1.951 1.951 0 0 1 1.818-.52l1.749.403 1.141-1.712ZM8.5 12a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0Z', +}) diff --git a/src/components/icons/UserCircle.tsx b/src/components/icons/UserCircle.tsx new file mode 100644 index 0000000000..d30466f080 --- /dev/null +++ b/src/components/icons/UserCircle.tsx @@ -0,0 +1,9 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const UserCircle_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M12 4a8 8 0 0 0-5.935 13.365C7.56 15.895 9.612 15 12 15c2.388 0 4.44.894 5.935 2.365A8 8 0 0 0 12 4Zm4.412 14.675C15.298 17.636 13.792 17 12 17c-1.791 0-3.298.636-4.412 1.675A7.96 7.96 0 0 0 12 20a7.96 7.96 0 0 0 4.412-1.325ZM2 12C2 6.477 6.477 2 12 2s10 4.477 10 10a9.98 9.98 0 0 1-3.462 7.567A9.965 9.965 0 0 1 12 22a9.965 9.965 0 0 1-6.538-2.433A9.98 9.98 0 0 1 2 12Zm10-4a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm-4 2a4 4 0 1 1 8 0 4 4 0 0 1-8 0Z', +}) + +export const UserCircle_Filled_Corner0_Rounded = createSinglePathSVG({ + path: 'M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10Zm3-12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm-3 10a7.976 7.976 0 0 1-5.714-2.4C7.618 16.004 9.605 15 12 15c2.396 0 4.383 1.005 5.714 2.6A7.976 7.976 0 0 1 12 20Z', +}) diff --git a/src/components/icons/common.ts b/src/components/icons/common.ts index 9e9f15c4dd..669c157f51 100644 --- a/src/components/icons/common.ts +++ b/src/components/icons/common.ts @@ -1,5 +1,5 @@ import {StyleSheet, TextProps} from 'react-native' -import type {SvgProps, PathProps} from 'react-native-svg' +import type {PathProps, SvgProps} from 'react-native-svg' import {tokens} from '#/alf' diff --git a/src/components/moderation/ContentHider.tsx b/src/components/moderation/ContentHider.tsx index 1e8f36d310..fd71ec838d 100644 --- a/src/components/moderation/ContentHider.tsx +++ b/src/components/moderation/ContentHider.tsx @@ -1,20 +1,19 @@ import React from 'react' import {StyleProp, StyleSheet, View, ViewStyle} from 'react-native' import {ModerationUI} from '@atproto/api' -import {useLingui} from '@lingui/react' import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' -import {useModerationCauseDescription} from '#/lib/moderation/useModerationCauseDescription' import {isJustAMute} from '#/lib/moderation' +import {useModerationCauseDescription} from '#/lib/moderation/useModerationCauseDescription' import {sanitizeDisplayName} from '#/lib/strings/display-names' - -import {atoms as a, useTheme, useBreakpoints, web} from '#/alf' +import {atoms as a, useBreakpoints, useTheme, web} from '#/alf' import {Button} from '#/components/Button' -import {Text} from '#/components/Typography' import { ModerationDetailsDialog, useModerationDetailsDialogControl, } from '#/components/moderation/ModerationDetailsDialog' +import {Text} from '#/components/Typography' export function ContentHider({ testID, @@ -52,7 +51,9 @@ export function ContentHider({ - + {!isSelfLabel && ( + + + + )} - Source:{' '} - control.close()}> - {labeler ? sanitizeHandle(labeler.creator.handle, '@') : label.src} - + {isSelfLabel ? ( + This label was applied by you. + ) : ( + + Source:{' '} + control.close()}> + {labeler + ? sanitizeHandle(labeler.creator.handle, '@') + : label.src} + + + )} @@ -173,14 +202,14 @@ function AppealForm({ const {gtMobile} = useBreakpoints() const [details, setDetails] = React.useState('') const isAccountReport = 'did' in subject - const {getAgent} = useAgent() + const agent = useAgent() - const onSubmit = async () => { - try { + const {mutate, isPending} = useMutation({ + mutationFn: async () => { const $type = !isAccountReport ? 'com.atproto.repo.strongRef' : 'com.atproto.admin.defs#repoRef' - await getAgent() + await agent .withProxy('atproto_labeler', label.src) .createModerationReport({ reasonType: ComAtprotoModerationDefs.REASONAPPEAL, @@ -190,11 +219,18 @@ function AppealForm({ }, reason: details, }) - Toast.show(_(msg`Appeal submitted`)) - } finally { + }, + onError: err => { + logger.error('Failed to submit label appeal', {message: err}) + Toast.show(_(msg`Failed to submit appeal, please try again.`)) + }, + onSuccess: () => { control.close() - } - } + Toast.show(_(msg`Appeal submitted`)) + }, + }) + + const onSubmit = React.useCallback(() => mutate(), [mutate]) return ( <> @@ -255,6 +291,7 @@ function AppealForm({ onPress={onSubmit} label={_(msg`Submit`)}> {_(msg`Submit`)} + {isPending && } diff --git a/src/components/moderation/PostAlerts.tsx b/src/components/moderation/PostAlerts.tsx index 0bfe696788..0b48b51d1d 100644 --- a/src/components/moderation/PostAlerts.tsx +++ b/src/components/moderation/PostAlerts.tsx @@ -1,22 +1,25 @@ import React from 'react' import {StyleProp, View, ViewStyle} from 'react-native' -import {ModerationUI, ModerationCause} from '@atproto/api' +import {BSKY_LABELER_DID, ModerationCause, ModerationUI} from '@atproto/api' -import {useModerationCauseDescription} from '#/lib/moderation/useModerationCauseDescription' import {getModerationCauseKey} from '#/lib/moderation' - -import {atoms as a} from '#/alf' -import {Button, ButtonText, ButtonIcon} from '#/components/Button' +import {useModerationCauseDescription} from '#/lib/moderation/useModerationCauseDescription' +import {UserAvatar} from '#/view/com/util/UserAvatar' +import {atoms as a, useTheme} from '#/alf' +import {Button} from '#/components/Button' import { ModerationDetailsDialog, useModerationDetailsDialogControl, } from '#/components/moderation/ModerationDetailsDialog' +import {Text} from '#/components/Typography' export function PostAlerts({ modui, + size, style, }: { modui: ModerationUI + size?: 'medium' | 'large' includeMute?: boolean style?: StyleProp }) { @@ -28,36 +31,82 @@ export function PostAlerts({ {modui.alerts.map(cause => ( - + ))} {modui.informs.map(cause => ( - + ))} ) } -function PostLabel({cause}: {cause: ModerationCause}) { +function PostLabel({ + cause, + size, +}: { + cause: ModerationCause + size?: 'medium' | 'large' +}) { const control = useModerationDetailsDialogControl() const desc = useModerationCauseDescription(cause) + const t = useTheme() return ( <> diff --git a/src/components/moderation/PostHider.tsx b/src/components/moderation/PostHider.tsx index 05cb8464eb..8a64742978 100644 --- a/src/components/moderation/PostHider.tsx +++ b/src/components/moderation/PostHider.tsx @@ -18,21 +18,25 @@ import { import {Text} from '#/components/Typography' interface Props extends ComponentProps { + disabled: boolean iconSize: number iconStyles: StyleProp modui: ModerationUI profile: AppBskyActorDefs.ProfileViewBasic + interpretFilterAsBlur?: boolean } export function PostHider({ testID, href, + disabled, modui, style, children, iconSize, iconStyles, profile, + interpretFilterAsBlur, ...props }: Props) { const queryClient = useQueryClient() @@ -40,14 +44,15 @@ export function PostHider({ const {_} = useLingui() const [override, setOverride] = React.useState(false) const control = useModerationDetailsDialogControl() - const blur = modui.blurs[0] + const blur = + modui.blurs[0] || (interpretFilterAsBlur ? modui.filters[0] : undefined) const desc = useModerationCauseDescription(blur) const onBeforePress = React.useCallback(() => { precacheProfile(queryClient, profile) }, [queryClient, profile]) - if (!blur) { + if (!blur || (disabled && !modui.noOverride)) { return ( diff --git a/src/lib/analytics/types.ts b/src/lib/analytics/types.ts index 33b8bddbd4..cdf535dec2 100644 --- a/src/lib/analytics/types.ts +++ b/src/lib/analytics/types.ts @@ -150,6 +150,8 @@ export type TrackPropertiesMap = { } 'OnboardingV2:StepModeration:Start': {} 'OnboardingV2:StepModeration:End': {} + 'OnboardingV2:StepProfile:Start': {} + 'OnboardingV2:StepProfile:End': {} 'OnboardingV2:StepFinished:Start': {} 'OnboardingV2:StepFinished:End': {} 'OnboardingV2:Complete': {} diff --git a/src/lib/api/api-polyfill.ts b/src/lib/api/api-polyfill.ts index ea1d975985..e3aec76316 100644 --- a/src/lib/api/api-polyfill.ts +++ b/src/lib/api/api-polyfill.ts @@ -1,5 +1,5 @@ -import {BskyAgent, stringifyLex, jsonToLex} from '@atproto/api' import RNFS from 'react-native-fs' +import {BskyAgent, jsonToLex, stringifyLex} from '@atproto/api' const GET_TIMEOUT = 15e3 // 15s const POST_TIMEOUT = 60e3 // 60s @@ -68,8 +68,10 @@ async function fetchHandler( resBody = jsonToLex(await res.json()) } else if (resMimeType.startsWith('text/')) { resBody = await res.text() + } else if (resMimeType === 'application/vnd.ipld.car') { + resBody = await res.arrayBuffer() } else { - throw new Error('TODO: non-textual response body') + throw new Error('Non-supported mime type') } } diff --git a/src/lib/api/feed-manip.ts b/src/lib/api/feed-manip.ts index 85089608a7..3902a56599 100644 --- a/src/lib/api/feed-manip.ts +++ b/src/lib/api/feed-manip.ts @@ -71,6 +71,10 @@ export class FeedViewPostsSlice { ?.__source as ReasonFeedSource } + get feedContext() { + return this.items.find(item => item.feedContext)?.feedContext + } + containsUri(uri: string) { return !!this.items.find(item => item.post.uri === uri) } diff --git a/src/lib/api/feed/author.ts b/src/lib/api/feed/author.ts index 85601d0683..56eff18816 100644 --- a/src/lib/api/feed/author.ts +++ b/src/lib/api/feed/author.ts @@ -7,22 +7,22 @@ import { import {FeedAPI, FeedAPIResponse} from './types' export class AuthorFeedAPI implements FeedAPI { - getAgent: () => BskyAgent + agent: BskyAgent params: GetAuthorFeed.QueryParams constructor({ - getAgent, + agent, feedParams, }: { - getAgent: () => BskyAgent + agent: BskyAgent feedParams: GetAuthorFeed.QueryParams }) { - this.getAgent = getAgent + this.agent = agent this.params = feedParams } async peekLatest(): Promise { - const res = await this.getAgent().getAuthorFeed({ + const res = await this.agent.getAuthorFeed({ ...this.params, limit: 1, }) @@ -36,7 +36,7 @@ export class AuthorFeedAPI implements FeedAPI { cursor: string | undefined limit: number }): Promise { - const res = await this.getAgent().getAuthorFeed({ + const res = await this.agent.getAuthorFeed({ ...this.params, cursor, limit, diff --git a/src/lib/api/feed/custom.ts b/src/lib/api/feed/custom.ts index 87e45cebab..eb54dd29c1 100644 --- a/src/lib/api/feed/custom.ts +++ b/src/lib/api/feed/custom.ts @@ -10,27 +10,27 @@ import {FeedAPI, FeedAPIResponse} from './types' import {createBskyTopicsHeader, isBlueskyOwnedFeed} from './utils' export class CustomFeedAPI implements FeedAPI { - getAgent: () => BskyAgent + agent: BskyAgent params: GetCustomFeed.QueryParams userInterests?: string constructor({ - getAgent, + agent, feedParams, userInterests, }: { - getAgent: () => BskyAgent + agent: BskyAgent feedParams: GetCustomFeed.QueryParams userInterests?: string }) { - this.getAgent = getAgent + this.agent = agent this.params = feedParams this.userInterests = userInterests } async peekLatest(): Promise { const contentLangs = getContentLanguages().join(',') - const res = await this.getAgent().app.bsky.feed.getFeed( + const res = await this.agent.app.bsky.feed.getFeed( { ...this.params, limit: 1, @@ -48,11 +48,11 @@ export class CustomFeedAPI implements FeedAPI { limit: number }): Promise { const contentLangs = getContentLanguages().join(',') - const agent = this.getAgent() + const agent = this.agent const isBlueskyOwned = isBlueskyOwnedFeed(this.params.feed) const res = agent.session - ? await this.getAgent().app.bsky.feed.getFeed( + ? await this.agent.app.bsky.feed.getFeed( { ...this.params, cursor, diff --git a/src/lib/api/feed/following.ts b/src/lib/api/feed/following.ts index 36c376554a..1004ccfb87 100644 --- a/src/lib/api/feed/following.ts +++ b/src/lib/api/feed/following.ts @@ -3,14 +3,14 @@ import {AppBskyFeedDefs, BskyAgent} from '@atproto/api' import {FeedAPI, FeedAPIResponse} from './types' export class FollowingFeedAPI implements FeedAPI { - getAgent: () => BskyAgent + agent: BskyAgent - constructor({getAgent}: {getAgent: () => BskyAgent}) { - this.getAgent = getAgent + constructor({agent}: {agent: BskyAgent}) { + this.agent = agent } async peekLatest(): Promise { - const res = await this.getAgent().getTimeline({ + const res = await this.agent.getTimeline({ limit: 1, }) return res.data.feed[0] @@ -23,7 +23,7 @@ export class FollowingFeedAPI implements FeedAPI { cursor: string | undefined limit: number }): Promise { - const res = await this.getAgent().getTimeline({ + const res = await this.agent.getTimeline({ cursor, limit, }) diff --git a/src/lib/api/feed/home.ts b/src/lib/api/feed/home.ts index 270f3aacb2..e6bc45bea0 100644 --- a/src/lib/api/feed/home.ts +++ b/src/lib/api/feed/home.ts @@ -27,7 +27,7 @@ export const FALLBACK_MARKER_POST: AppBskyFeedDefs.FeedViewPost = { } export class HomeFeedAPI implements FeedAPI { - getAgent: () => BskyAgent + agent: BskyAgent following: FollowingFeedAPI discover: CustomFeedAPI usingDiscover = false @@ -36,24 +36,24 @@ export class HomeFeedAPI implements FeedAPI { constructor({ userInterests, - getAgent, + agent, }: { userInterests?: string - getAgent: () => BskyAgent + agent: BskyAgent }) { - this.getAgent = getAgent - this.following = new FollowingFeedAPI({getAgent}) + this.agent = agent + this.following = new FollowingFeedAPI({agent}) this.discover = new CustomFeedAPI({ - getAgent, + agent, feedParams: {feed: PROD_DEFAULT_FEED('whats-hot')}, }) this.userInterests = userInterests } reset() { - this.following = new FollowingFeedAPI({getAgent: this.getAgent}) + this.following = new FollowingFeedAPI({agent: this.agent}) this.discover = new CustomFeedAPI({ - getAgent: this.getAgent, + agent: this.agent, feedParams: {feed: PROD_DEFAULT_FEED('whats-hot')}, userInterests: this.userInterests, }) diff --git a/src/lib/api/feed/likes.ts b/src/lib/api/feed/likes.ts index 1729ee05cf..a4e84d8f1f 100644 --- a/src/lib/api/feed/likes.ts +++ b/src/lib/api/feed/likes.ts @@ -7,22 +7,22 @@ import { import {FeedAPI, FeedAPIResponse} from './types' export class LikesFeedAPI implements FeedAPI { - getAgent: () => BskyAgent + agent: BskyAgent params: GetActorLikes.QueryParams constructor({ - getAgent, + agent, feedParams, }: { - getAgent: () => BskyAgent + agent: BskyAgent feedParams: GetActorLikes.QueryParams }) { - this.getAgent = getAgent + this.agent = agent this.params = feedParams } async peekLatest(): Promise { - const res = await this.getAgent().getActorLikes({ + const res = await this.agent.getActorLikes({ ...this.params, limit: 1, }) @@ -36,7 +36,7 @@ export class LikesFeedAPI implements FeedAPI { cursor: string | undefined limit: number }): Promise { - const res = await this.getAgent().getActorLikes({ + const res = await this.agent.getActorLikes({ ...this.params, cursor, limit, diff --git a/src/lib/api/feed/list.ts b/src/lib/api/feed/list.ts index 004685b998..9744e3d4ce 100644 --- a/src/lib/api/feed/list.ts +++ b/src/lib/api/feed/list.ts @@ -7,22 +7,22 @@ import { import {FeedAPI, FeedAPIResponse} from './types' export class ListFeedAPI implements FeedAPI { - getAgent: () => BskyAgent + agent: BskyAgent params: GetListFeed.QueryParams constructor({ - getAgent, + agent, feedParams, }: { - getAgent: () => BskyAgent + agent: BskyAgent feedParams: GetListFeed.QueryParams }) { - this.getAgent = getAgent + this.agent = agent this.params = feedParams } async peekLatest(): Promise { - const res = await this.getAgent().app.bsky.feed.getListFeed({ + const res = await this.agent.app.bsky.feed.getListFeed({ ...this.params, limit: 1, }) @@ -36,7 +36,7 @@ export class ListFeedAPI implements FeedAPI { cursor: string | undefined limit: number }): Promise { - const res = await this.getAgent().app.bsky.feed.getListFeed({ + const res = await this.agent.app.bsky.feed.getListFeed({ ...this.params, cursor, limit, diff --git a/src/lib/api/feed/merge.ts b/src/lib/api/feed/merge.ts index b7ac8bce1c..f551f5e4cc 100644 --- a/src/lib/api/feed/merge.ts +++ b/src/lib/api/feed/merge.ts @@ -16,7 +16,7 @@ const POST_AGE_CUTOFF = 60e3 * 60 * 24 // 24hours export class MergeFeedAPI implements FeedAPI { userInterests?: string - getAgent: () => BskyAgent + agent: BskyAgent params: FeedParams feedTuners: FeedTunerFn[] following: MergeFeedSource_Following @@ -26,29 +26,29 @@ export class MergeFeedAPI implements FeedAPI { sampleCursor = 0 constructor({ - getAgent, + agent, feedParams, feedTuners, userInterests, }: { - getAgent: () => BskyAgent + agent: BskyAgent feedParams: FeedParams feedTuners: FeedTunerFn[] userInterests?: string }) { - this.getAgent = getAgent + this.agent = agent this.params = feedParams this.feedTuners = feedTuners this.userInterests = userInterests this.following = new MergeFeedSource_Following({ - getAgent: this.getAgent, + agent: this.agent, feedTuners: this.feedTuners, }) } reset() { this.following = new MergeFeedSource_Following({ - getAgent: this.getAgent, + agent: this.agent, feedTuners: this.feedTuners, }) this.customFeeds = [] @@ -60,7 +60,7 @@ export class MergeFeedAPI implements FeedAPI { this.params.mergeFeedSources.map( feedUri => new MergeFeedSource_Custom({ - getAgent: this.getAgent, + agent: this.agent, feedUri, feedTuners: this.feedTuners, userInterests: this.userInterests, @@ -73,7 +73,7 @@ export class MergeFeedAPI implements FeedAPI { } async peekLatest(): Promise { - const res = await this.getAgent().getTimeline({ + const res = await this.agent.getTimeline({ limit: 1, }) return res.data.feed[0] @@ -167,7 +167,7 @@ export class MergeFeedAPI implements FeedAPI { } class MergeFeedSource { - getAgent: () => BskyAgent + agent: BskyAgent feedTuners: FeedTunerFn[] sourceInfo: ReasonFeedSource | undefined cursor: string | undefined = undefined @@ -175,13 +175,13 @@ class MergeFeedSource { hasMore = true constructor({ - getAgent, + agent, feedTuners, }: { - getAgent: () => BskyAgent + agent: BskyAgent feedTuners: FeedTunerFn[] }) { - this.getAgent = getAgent + this.agent = agent this.feedTuners = feedTuners } @@ -245,7 +245,7 @@ class MergeFeedSource_Following extends MergeFeedSource { cursor: string | undefined, limit: number, ): Promise { - const res = await this.getAgent().getTimeline({cursor, limit}) + const res = await this.agent.getTimeline({cursor, limit}) // run the tuner pre-emptively to ensure better mixing const slices = this.tuner.tune(res.data.feed, { dryRun: false, @@ -257,27 +257,27 @@ class MergeFeedSource_Following extends MergeFeedSource { } class MergeFeedSource_Custom extends MergeFeedSource { - getAgent: () => BskyAgent + agent: BskyAgent minDate: Date feedUri: string userInterests?: string constructor({ - getAgent, + agent, feedUri, feedTuners, userInterests, }: { - getAgent: () => BskyAgent + agent: BskyAgent feedUri: string feedTuners: FeedTunerFn[] userInterests?: string }) { super({ - getAgent, + agent, feedTuners, }) - this.getAgent = getAgent + this.agent = agent this.feedUri = feedUri this.userInterests = userInterests this.sourceInfo = { @@ -295,7 +295,7 @@ class MergeFeedSource_Custom extends MergeFeedSource { try { const contentLangs = getContentLanguages().join(',') const isBlueskyOwned = isBlueskyOwnedFeed(this.feedUri) - const res = await this.getAgent().app.bsky.feed.getFeed( + const res = await this.agent.app.bsky.feed.getFeed( { cursor, limit, diff --git a/src/lib/api/index.ts b/src/lib/api/index.ts index bc50f9cb3c..dfaae2e018 100644 --- a/src/lib/api/index.ts +++ b/src/lib/api/index.ts @@ -4,7 +4,6 @@ import { AppBskyEmbedRecord, AppBskyEmbedRecordWithMedia, AppBskyFeedThreadgate, - AppBskyRichtextFacet, BskyAgent, ComAtprotoLabelDefs, ComAtprotoRepoUploadBlob, @@ -15,7 +14,7 @@ import {AtUri} from '@atproto/api' import {logger} from '#/logger' import {ThreadgateSetting} from '#/state/queries/threadgate' import {isNetworkError} from 'lib/strings/errors' -import {shortenLinks} from 'lib/strings/rich-text-manip' +import {shortenLinks, stripInvalidMentions} from 'lib/strings/rich-text-manip' import {isNative, isWeb} from 'platform/detection' import {ImageModel} from 'state/models/media/image' import {LinkMeta} from '../link-meta/link-meta' @@ -81,17 +80,7 @@ export async function post(agent: BskyAgent, opts: PostOpts) { opts.onStateChange?.('Processing...') await rt.detectFacets(agent) rt = shortenLinks(rt) - - // filter out any mention facets that didn't map to a user - rt.facets = rt.facets?.filter(facet => { - const mention = facet.features.find(feature => - AppBskyRichtextFacet.isMention(feature), - ) - if (mention && !mention.did) { - return false - } - return true - }) + rt = stripInvalidMentions(rt) // add quote embed if present if (opts.quote) { diff --git a/src/lib/app-info.web.ts b/src/lib/app-info.web.ts index fe2bc5fff8..7227e28632 100644 --- a/src/lib/app-info.web.ts +++ b/src/lib/app-info.web.ts @@ -1,6 +1,8 @@ import {version} from '../../package.json' +export const BUILD_ENV = process.env.EXPO_PUBLIC_ENV export const IS_DEV = process.env.EXPO_PUBLIC_ENV === 'development' +export const IS_TESTFLIGHT = false // This is the commit hash that the current bundle was made from. The user can see the commit hash in the app's settings // along with the other version info. Useful for debugging/reporting. diff --git a/src/lib/browser.native.ts b/src/lib/browser.native.ts new file mode 100644 index 0000000000..fb9be56f10 --- /dev/null +++ b/src/lib/browser.native.ts @@ -0,0 +1,3 @@ +export const isSafari = false +export const isFirefox = false +export const isTouchDevice = true diff --git a/src/lib/browser.ts b/src/lib/browser.ts new file mode 100644 index 0000000000..d178a9a64e --- /dev/null +++ b/src/lib/browser.ts @@ -0,0 +1,7 @@ +// https://stackoverflow.com/questions/7944460/detect-safari-browser +export const isSafari = /^((?!chrome|android).)*safari/i.test( + navigator.userAgent, +) +export const isFirefox = /firefox|fxios/i.test(navigator.userAgent) +export const isTouchDevice = + 'ontouchstart' in window || navigator.maxTouchPoints > 1 diff --git a/src/lib/constants.ts b/src/lib/constants.ts index d7bec1e18d..05d1591f56 100644 --- a/src/lib/constants.ts +++ b/src/lib/constants.ts @@ -1,4 +1,5 @@ import {Insets, Platform} from 'react-native' +import {AppBskyActorDefs} from '@atproto/api' export const LOCAL_DEV_SERVICE = Platform.OS === 'android' ? 'http://10.0.2.2:2583' : 'http://localhost:2583' @@ -35,6 +36,8 @@ export const MAX_DESCRIPTION = 256 export const MAX_GRAPHEME_LENGTH = 300 +export const MAX_DM_GRAPHEME_LENGTH = 1000 + // Recommended is 100 per: https://www.w3.org/WAI/GL/WCAG20/tests/test3.html // but increasing limit per user feedback export const MAX_ALT_TEXT = 1000 @@ -44,7 +47,7 @@ export function IS_TEST_USER(handle?: string) { } export function IS_PROD_SERVICE(url?: string) { - return url && url !== STAGING_SERVICE && url !== LOCAL_DEV_SERVICE + return url && url !== STAGING_SERVICE && !url.startsWith(LOCAL_DEV_SERVICE) } export const PROD_DEFAULT_FEED = (rkey: string) => @@ -92,6 +95,28 @@ export const BSKY_FEED_OWNER_DIDS = [ 'did:plc:q6gjnaw2blty4crticxkmujt', ] +export const DISCOVER_FEED_URI = + 'at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/whats-hot' +export const DISCOVER_SAVED_FEED = { + type: 'feed', + value: DISCOVER_FEED_URI, + pinned: true, +} +export const TIMELINE_SAVED_FEED = { + type: 'timeline', + value: 'following', + pinned: true, +} + +export const RECOMMENDED_SAVED_FEEDS: Pick< + AppBskyActorDefs.SavedFeed, + 'type' | 'value' | 'pinned' +>[] = [DISCOVER_SAVED_FEED, TIMELINE_SAVED_FEED] + +export const KNOWN_SHUTDOWN_FEEDS = [ + 'at://did:plc:wqowuobffl66jv3kpsvo7ak4/app.bsky.feed.generator/the-algorithm', // for you by skygaze +] + export const GIF_SERVICE = 'https://gifs.bsky.app' export const GIF_SEARCH = (params: string) => diff --git a/src/lib/custom-animations/ScaleAndFade.ts b/src/lib/custom-animations/ScaleAndFade.ts new file mode 100644 index 0000000000..ad2c15f8f6 --- /dev/null +++ b/src/lib/custom-animations/ScaleAndFade.ts @@ -0,0 +1,39 @@ +import {withTiming} from 'react-native-reanimated' + +export function ScaleAndFadeIn() { + 'worklet' + + const animations = { + opacity: withTiming(1), + transform: [{scale: withTiming(1)}], + } + + const initialValues = { + opacity: 0, + transform: [{scale: 0.7}], + } + + return { + animations, + initialValues, + } +} + +export function ScaleAndFadeOut() { + 'worklet' + + const animations = { + opacity: withTiming(0), + transform: [{scale: withTiming(0.7)}], + } + + const initialValues = { + opacity: 1, + transform: [{scale: 1}], + } + + return { + animations, + initialValues, + } +} diff --git a/src/lib/custom-animations/ShrinkAndPop.ts b/src/lib/custom-animations/ShrinkAndPop.ts new file mode 100644 index 0000000000..ea2386c14e --- /dev/null +++ b/src/lib/custom-animations/ShrinkAndPop.ts @@ -0,0 +1,27 @@ +import {withDelay, withSequence, withTiming} from 'react-native-reanimated' + +export function ShrinkAndPop() { + 'worklet' + + const animations = { + opacity: withDelay(125, withTiming(0, {duration: 125})), + transform: [ + { + scale: withSequence( + withTiming(0.7, {duration: 75}), + withTiming(1.1, {duration: 150}), + ), + }, + ], + } + + const initialValues = { + opacity: 1, + transform: [{scale: 1}], + } + + return { + animations, + initialValues, + } +} diff --git a/src/lib/hooks/useAccountSwitcher.ts b/src/lib/hooks/useAccountSwitcher.ts index 33d56eb85e..09ff30277f 100644 --- a/src/lib/hooks/useAccountSwitcher.ts +++ b/src/lib/hooks/useAccountSwitcher.ts @@ -53,6 +53,11 @@ export function useAccountSwitcher() { logger.error(`switch account: selectAccount failed`, { message: e.message, }) + requestSwitchToAccount({requestedAccount: account.did}) + Toast.show( + _(msg`Please sign in as @${account.handle}`), + 'circle-exclamation', + ) } finally { setPendingDid(null) } diff --git a/src/lib/hooks/useAppState.ts b/src/lib/hooks/useAppState.ts new file mode 100644 index 0000000000..7fb228d618 --- /dev/null +++ b/src/lib/hooks/useAppState.ts @@ -0,0 +1,15 @@ +import {useEffect, useState} from 'react' +import {AppState} from 'react-native' + +export function useAppState() { + const [state, setState] = useState(AppState.currentState) + + useEffect(() => { + const sub = AppState.addEventListener('change', nextAppState => { + setState(nextAppState) + }) + return () => sub.remove() + }, []) + + return state +} diff --git a/src/lib/hooks/useNotificationHandler.ts b/src/lib/hooks/useNotificationHandler.ts index 12e1505725..347062bebe 100644 --- a/src/lib/hooks/useNotificationHandler.ts +++ b/src/lib/hooks/useNotificationHandler.ts @@ -8,6 +8,7 @@ import {track} from 'lib/analytics/analytics' import {useAccountSwitcher} from 'lib/hooks/useAccountSwitcher' import {NavigationProp} from 'lib/routes/types' import {logEvent} from 'lib/statsig/statsig' +import {isAndroid} from 'platform/detection' import {useCurrentConvoId} from 'state/messages/current-convo-id' import {RQKEY as RQKEY_NOTIFS} from 'state/queries/notifications/feed' import {invalidateCachedUnreadPage} from 'state/queries/notifications/unread' @@ -45,8 +46,9 @@ const DEFAULT_HANDLER_OPTIONS = { shouldSetBadge: true, } -// This needs to stay outside the hook to persist between account switches +// These need to stay outside the hook to persist between account switches let storedPayload: NotificationPayload | undefined +let prevDate = 0 export function useNotificationsHandler() { const queryClient = useQueryClient() @@ -57,8 +59,31 @@ export function useNotificationsHandler() { const {setShowLoggedOut} = useLoggedOutViewControls() const closeAllActiveElements = useCloseAllActiveElements() - // Safety to prevent double handling of the same notification - const prevIdentifier = React.useRef('') + // On Android, we cannot control which sound is used for a notification on Android + // 28 or higher. Instead, we have to configure a notification channel ahead of time + // which has the sounds we want in the configuration for that channel. These two + // channels allow for the mute/unmute functionality we want for the background + // handler. + React.useEffect(() => { + if (!isAndroid) return + Notifications.setNotificationChannelAsync('chat-messages', { + name: 'Chat', + importance: Notifications.AndroidImportance.MAX, + sound: 'dm.mp3', + showBadge: true, + vibrationPattern: [250], + lockscreenVisibility: Notifications.AndroidNotificationVisibility.PRIVATE, + }) + + Notifications.setNotificationChannelAsync('chat-messages-muted', { + name: 'Chat - Muted', + importance: Notifications.AndroidImportance.MAX, + sound: null, + showBadge: true, + vibrationPattern: [250], + lockscreenVisibility: Notifications.AndroidNotificationVisibility.PRIVATE, + }) + }, []) React.useEffect(() => { const handleNotification = (payload?: NotificationPayload) => { @@ -78,9 +103,27 @@ export function useNotificationsHandler() { } else { navigation.dispatch(state => { if (state.routes[0].name === 'Messages') { - return CommonActions.navigate('MessagesConversation', { - conversation: payload.convoId, - }) + if ( + state.routes[state.routes.length - 1].name === + 'MessagesConversation' + ) { + return CommonActions.reset({ + ...state, + routes: [ + ...state.routes.slice(0, state.routes.length - 1), + { + name: 'MessagesConversation', + params: { + conversation: payload.convoId, + }, + }, + ], + }) + } else { + return CommonActions.navigate('MessagesConversation', { + conversation: payload.convoId, + }) + } } else { return CommonActions.navigate('MessagesTab', { screen: 'Messages', @@ -161,10 +204,10 @@ export function useNotificationsHandler() { const responseReceivedListener = Notifications.addNotificationResponseReceivedListener(e => { - if (e.notification.request.identifier === prevIdentifier.current) { + if (e.notification.date === prevDate) { return } - prevIdentifier.current = e.notification.request.identifier + prevDate = e.notification.date logger.debug( 'Notifications: response received', diff --git a/src/lib/hooks/useOTAUpdate.ts b/src/lib/hooks/useOTAUpdate.ts deleted file mode 100644 index d35179256d..0000000000 --- a/src/lib/hooks/useOTAUpdate.ts +++ /dev/null @@ -1,56 +0,0 @@ -import * as Updates from 'expo-updates' -import {useCallback, useEffect} from 'react' -import {AppState} from 'react-native' -import {logger} from '#/logger' - -export function useOTAUpdate() { - // HELPER FUNCTIONS - const checkForUpdate = useCallback(async () => { - logger.debug('useOTAUpdate: Checking for update...') - try { - // Check if new OTA update is available - const update = await Updates.checkForUpdateAsync() - // If updates aren't available stop the function execution - if (!update.isAvailable) { - return - } - // Otherwise fetch the update in the background, so even if the user rejects switching to latest version it will be done automatically on next relaunch. - await Updates.fetchUpdateAsync() - } catch (e) { - logger.error('useOTAUpdate: Error while checking for update', { - message: e, - }) - } - }, []) - const updateEventListener = useCallback((event: Updates.UpdateEvent) => { - logger.debug('useOTAUpdate: Listening for update...') - if (event.type === Updates.UpdateEventType.ERROR) { - logger.error('useOTAUpdate: Error while listening for update', { - message: event.message, - }) - } else if (event.type === Updates.UpdateEventType.NO_UPDATE_AVAILABLE) { - // Handle no update available - // do nothing - } else if (event.type === Updates.UpdateEventType.UPDATE_AVAILABLE) { - // Handle update available - // open modal, ask for user confirmation, and reload the app - } - }, []) - - useEffect(() => { - // ADD EVENT LISTENERS - const updateEventSubscription = Updates.addListener(updateEventListener) - const appStateSubscription = AppState.addEventListener('change', state => { - if (state === 'active' && !__DEV__) { - checkForUpdate() - } - }) - - // REMOVE EVENT LISTENERS (CLEANUP) - return () => { - updateEventSubscription.remove() - appStateSubscription.remove() - } - }, []) // eslint-disable-line react-hooks/exhaustive-deps - // disable exhaustive deps because we don't want to run this effect again -} diff --git a/src/lib/hooks/usePermissions.ts b/src/lib/hooks/usePermissions.ts index 138f3eacab..baf9f7b8af 100644 --- a/src/lib/hooks/usePermissions.ts +++ b/src/lib/hooks/usePermissions.ts @@ -1,6 +1,7 @@ -import {Camera} from 'expo-camera' -import * as MediaLibrary from 'expo-media-library' import {Linking} from 'react-native' +import {Camera} from 'expo-camera/legacy' // TODO: Migrate to the new one. +import * as MediaLibrary from 'expo-media-library' + import {isWeb} from 'platform/detection' import {Alert} from 'view/com/util/Alert' diff --git a/src/lib/icons.tsx b/src/lib/icons.tsx index 93b45ea3a9..aefa9c9c37 100644 --- a/src/lib/icons.tsx +++ b/src/lib/icons.tsx @@ -2,98 +2,6 @@ import React from 'react' import {StyleProp, TextStyle, ViewStyle} from 'react-native' import Svg, {Ellipse, Line, Path, Rect} from 'react-native-svg' -export function GridIcon({ - style, - solid, -}: { - style?: StyleProp - solid?: boolean -}) { - const DIM = 4 - const ARC = 2 - return ( - - - - - - - ) -} -export function GridIconSolid({style}: {style?: StyleProp}) { - return -} - -export function HomeIcon({ - style, - size, - strokeWidth = 4, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - ) -} - -export function HomeIconSolid({ - style, - size, - strokeWidth = 4, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - ) -} - // Copyright (c) 2020 Refactoring UI Inc. // https://github.com/tailwindlabs/heroicons/blob/master/LICENSE export function MagnifyingGlassIcon({ @@ -147,90 +55,6 @@ export function MagnifyingGlassIcon2({ ) } -export function MagnifyingGlassIcon2Solid({ - style, - size, - strokeWidth = 2, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - - - ) -} - -// https://github.com/Remix-Design/RemixIcon/blob/master/License -export function BellIcon({ - style, - size, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - - ) -} - -// https://github.com/Remix-Design/RemixIcon/blob/master/License -export function BellIconSolid({ - style, - size, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - - ) -} - export function CogIcon({ style, size, @@ -263,160 +87,6 @@ export function CogIcon({ ) } -export function CogIconSolid({ - style, - size, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth: number -}) { - return ( - - - - ) -} - -// Copyright (c) 2020 Refactoring UI Inc. -// https://github.com/tailwindlabs/heroicons/blob/master/LICENSE -export function MoonIcon({ - style, - size, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - ) -} - -// Copyright (c) 2020 Refactoring UI Inc. -// https://github.com/tailwindlabs/heroicons/blob/master/LICENSE -export function SunIcon({ - style, - size, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - ) -} - -// Copyright (c) 2020 Refactoring UI Inc. -// https://github.com/tailwindlabs/heroicons/blob/master/LICENSE -export function UserIcon({ - style, - size, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - ) -} - -export function UserIconSolid({ - style, - size, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - - - ) -} - // Copyright (c) 2020 Refactoring UI Inc. // https://github.com/tailwindlabs/heroicons/blob/master/LICENSE export function UserGroupIcon({ @@ -444,208 +114,6 @@ export function UserGroupIcon({ ) } -export function RepostIcon({ - style, - size = 24, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth: number -}) { - return ( - - - - ) -} - -// Font Awesome Pro 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. -export function HeartIcon({ - style, - size = 24, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth: number -}) { - return ( - - - - ) -} - -// Font Awesome Pro 6.2.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2022 Fonticons, Inc. -export function HeartIconSolid({ - style, - size = 24, -}: { - style?: StyleProp - size?: string | number -}) { - return ( - - - - ) -} - -export function UpIcon({ - style, - size, - strokeWidth = 1.3, -}: { - style?: StyleProp - size?: string | number - strokeWidth: number -}) { - return ( - - - - ) -} - -export function UpIconSolid({ - style, - size, -}: { - style?: StyleProp - size?: string | number -}) { - return ( - - - - ) -} - -export function DownIcon({ - style, - size, -}: { - style?: StyleProp - size?: string | number -}) { - return ( - - - - ) -} - -export function DownIconSolid({ - style, - size, -}: { - style?: StyleProp - size?: string | number -}) { - return ( - - - - ) -} - -// Copyright (c) 2020 Refactoring UI Inc. -// https://github.com/tailwindlabs/heroicons/blob/master/LICENSE -export function CommentBottomArrow({ - style, - size, - strokeWidth = 1.3, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - let color = 'currentColor' - if ( - style && - typeof style === 'object' && - 'color' in style && - typeof style.color === 'string' - ) { - color = style.color - } - return ( - - - - ) -} - export function SquareIcon({ style, size, @@ -715,33 +183,6 @@ export function RectTallIcon({ ) } -export function ComposeIcon({ - style, - size, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - ) -} - export function ComposeIcon2({ style, size, @@ -783,54 +224,6 @@ export function ComposeIcon2({ ) } -export function SquarePlusIcon({ - style, - size, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - - - ) -} - export function InfoCircleIcon({ style, size, @@ -947,30 +340,3 @@ export function ShieldExclamation({ ) } - -export function ListIcon({ - style, - size, - strokeWidth = 1.5, -}: { - style?: StyleProp - size?: string | number - strokeWidth?: number -}) { - return ( - - - - ) -} diff --git a/src/lib/media/avatar-generator.tsx b/src/lib/media/avatar-generator.tsx new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/lib/media/manip.ts b/src/lib/media/manip.ts index 9cd4abc626..3e647004bb 100644 --- a/src/lib/media/manip.ts +++ b/src/lib/media/manip.ts @@ -1,12 +1,22 @@ import {Image as RNImage, Share as RNShare} from 'react-native' import {Image} from 'react-native-image-crop-picker' import uuid from 'react-native-uuid' -import {cacheDirectory, copyAsync, deleteAsync} from 'expo-file-system' +import { + cacheDirectory, + copyAsync, + deleteAsync, + EncodingType, + makeDirectoryAsync, + StorageAccessFramework, + writeAsStringAsync, +} from 'expo-file-system' import * as MediaLibrary from 'expo-media-library' import * as Sharing from 'expo-sharing' import ImageResizer from '@bam.tech/react-native-image-resizer' +import {Buffer} from 'buffer' import RNFetchBlob from 'rn-fetch-blob' +import {logger} from '#/logger' import {isAndroid, isIOS} from 'platform/detection' import {Dimensions} from './types' @@ -240,3 +250,70 @@ function normalizePath(str: string, allPlatforms = false): string { } return str } + +export async function saveBytesToDisk( + filename: string, + bytes: Uint8Array, + type: string, +) { + const encoded = Buffer.from(bytes).toString('base64') + return await saveToDevice(filename, encoded, type) +} + +export async function saveToDevice( + filename: string, + encoded: string, + type: string, +) { + try { + if (isIOS) { + await withTempFile(filename, encoded, async tmpFileUrl => { + await Sharing.shareAsync(tmpFileUrl, {UTI: type}) + }) + return true + } else { + const permissions = + await StorageAccessFramework.requestDirectoryPermissionsAsync() + + if (!permissions.granted) { + return false + } + + const fileUrl = await StorageAccessFramework.createFileAsync( + permissions.directoryUri, + filename, + type, + ) + + await writeAsStringAsync(fileUrl, encoded, { + encoding: EncodingType.Base64, + }) + return true + } + } catch (e) { + logger.error('Error occurred while saving file', {message: e}) + return false + } +} + +async function withTempFile( + filename: string, + encoded: string, + cb: (url: string) => T | Promise, +): Promise { + // cacheDirectory will not ever be null so we assert as a string. + // Using a directory so that the file name is not a random string + const tmpDirUri = joinPath(cacheDirectory as string, String(uuid.v4())) + await makeDirectoryAsync(tmpDirUri, {intermediates: true}) + + try { + const tmpFileUrl = joinPath(tmpDirUri, filename) + await writeAsStringAsync(tmpFileUrl, encoded, { + encoding: EncodingType.Base64, + }) + + return await cb(tmpFileUrl) + } finally { + safeDeleteAsync(tmpDirUri) + } +} diff --git a/src/lib/media/manip.web.ts b/src/lib/media/manip.web.ts index 522aa2e51b..4761f2fe0d 100644 --- a/src/lib/media/manip.web.ts +++ b/src/lib/media/manip.web.ts @@ -1,6 +1,7 @@ -import {Dimensions} from './types' import {Image as RNImage} from 'react-native-image-crop-picker' -import {getDataUriSize, blobToDataUri} from './util' + +import {Dimensions} from './types' +import {blobToDataUri, getDataUriSize} from './util' export async function compressIfNeeded( img: RNImage, @@ -138,3 +139,27 @@ function createResizedImage( img.src = dataUri }) } + +export async function saveBytesToDisk( + filename: string, + bytes: Uint8Array, + type: string, +) { + const blob = new Blob([bytes], {type}) + const url = URL.createObjectURL(blob) + await downloadUrl(url, filename) + // Firefox requires a small delay + setTimeout(() => URL.revokeObjectURL(url), 100) + return true +} + +async function downloadUrl(href: string, filename: string) { + const a = document.createElement('a') + a.href = href + a.download = filename + a.click() +} + +export async function safeDeleteAsync() { + // no-op +} diff --git a/src/lib/media/picker.e2e.tsx b/src/lib/media/picker.e2e.tsx index 31702ab227..e6b46ba774 100644 --- a/src/lib/media/picker.e2e.tsx +++ b/src/lib/media/picker.e2e.tsx @@ -1,7 +1,11 @@ -import {Image as RNImage} from 'react-native-image-crop-picker' import RNFS from 'react-native-fs' -import {CropperOptions} from './types' +import { + Image as RNImage, + openCropper as openCropperFn, +} from 'react-native-image-crop-picker' + import {compressIfNeeded} from './manip' +import {CropperOptions} from './types' async function getFile() { let files = await RNFS.readDir( @@ -29,12 +33,17 @@ export async function openCamera(): Promise { return await getFile() } -export async function openCropper(opts: CropperOptions): Promise { +export async function openCropper(opts: CropperOptions) { + const item = await openCropperFn({ + ...opts, + forceJpg: true, // ios only + }) + return { - path: opts.path, - mime: 'image/jpeg', - size: 123, - width: 4288, - height: 2848, + path: item.path, + mime: item.mime, + size: item.size, + width: item.width, + height: item.height, } } diff --git a/src/lib/moderation/useModerationCauseDescription.ts b/src/lib/moderation/useModerationCauseDescription.ts index 57b50d7779..be9014029c 100644 --- a/src/lib/moderation/useModerationCauseDescription.ts +++ b/src/lib/moderation/useModerationCauseDescription.ts @@ -6,15 +6,15 @@ import { } from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {getDefinition, getLabelStrings} from './useLabelInfo' -import {useLabelDefinitions} from '#/state/preferences' -import {useGlobalLabelStrings} from './useGlobalLabelStrings' -import {Props as SVGIconProps} from '#/components/icons/common' -import {Warning_Stroke2_Corner0_Rounded as Warning} from '#/components/icons/Warning' -import {CircleInfo_Stroke2_Corner0_Rounded as CircleInfo} from '#/components/icons/CircleInfo' -import {EyeSlash_Stroke2_Corner0_Rounded as EyeSlash} from '#/components/icons/EyeSlash' +import {useLabelDefinitions} from '#/state/preferences' import {CircleBanSign_Stroke2_Corner0_Rounded as CircleBanSign} from '#/components/icons/CircleBanSign' +import {CircleInfo_Stroke2_Corner0_Rounded as CircleInfo} from '#/components/icons/CircleInfo' +import {Props as SVGIconProps} from '#/components/icons/common' +import {EyeSlash_Stroke2_Corner0_Rounded as EyeSlash} from '#/components/icons/EyeSlash' +import {Warning_Stroke2_Corner0_Rounded as Warning} from '#/components/icons/Warning' +import {useGlobalLabelStrings} from './useGlobalLabelStrings' +import {getDefinition, getLabelStrings} from './useLabelInfo' export interface ModerationCauseDescription { icon: React.ComponentType @@ -22,6 +22,8 @@ export interface ModerationCauseDescription { description: string source?: string sourceType?: ModerationCauseSource['type'] + sourceAvi?: string + sourceDid?: string } export function useModerationCauseDescription( @@ -138,6 +140,8 @@ export function useModerationCauseDescription( description: strings.description, source, sourceType: cause.source.type, + sourceAvi: labeler?.creator.avatar, + sourceDid: cause.label.src, } } // should never happen diff --git a/src/lib/moderation/useReportOptions.ts b/src/lib/moderation/useReportOptions.ts index a22386b991..54b727b76b 100644 --- a/src/lib/moderation/useReportOptions.ts +++ b/src/lib/moderation/useReportOptions.ts @@ -15,6 +15,7 @@ interface ReportOptions { list: ReportOption[] feedgen: ReportOption[] other: ReportOption[] + convoMessage: ReportOption[] } export function useReportOptions(): ReportOptions { @@ -72,6 +73,19 @@ export function useReportOptions(): ReportOptions { }, ...common, ], + convoMessage: [ + { + reason: ComAtprotoModerationDefs.REASONSPAM, + title: _(msg`Spam`), + description: _(msg`Excessive or unwanted messages`), + }, + { + reason: ComAtprotoModerationDefs.REASONSEXUAL, + title: _(msg`Unwanted Sexual Content`), + description: _(msg`Inappropriate messages or explicit links`), + }, + ...common, + ], list: [ { reason: ComAtprotoModerationDefs.REASONVIOLATION, diff --git a/src/lib/notifications/notifications.ts b/src/lib/notifications/notifications.ts index 38c18bf3fe..705d90c564 100644 --- a/src/lib/notifications/notifications.ts +++ b/src/lib/notifications/notifications.ts @@ -1,29 +1,25 @@ +import React from 'react' import * as Notifications from 'expo-notifications' +import {getBadgeCountAsync, setBadgeCountAsync} from 'expo-notifications' import {BskyAgent} from '@atproto/api' import {logger} from '#/logger' -import {SessionAccount} from '#/state/session' -import {devicePlatform} from 'platform/detection' +import {SessionAccount, useAgent, useSession} from '#/state/session' +import {logEvent, useGate} from 'lib/statsig/statsig' +import {devicePlatform, isNative} from 'platform/detection' const SERVICE_DID = (serviceUrl?: string) => serviceUrl?.includes('staging') ? 'did:web:api.staging.bsky.dev' : 'did:web:api.bsky.app' -export async function requestPermissionsAndRegisterToken( - getAgent: () => BskyAgent, +async function registerPushToken( + agent: BskyAgent, account: SessionAccount, + token: Notifications.DevicePushToken, ) { - // request notifications permission once the user has logged in - const perms = await Notifications.getPermissionsAsync() - if (!perms.granted) { - await Notifications.requestPermissionsAsync() - } - - // register the push token with the server - const token = await Notifications.getDevicePushTokenAsync() try { - await getAgent().api.app.bsky.notification.registerPush({ + await agent.api.app.bsky.notification.registerPush({ serviceDid: SERVICE_DID(account.service), platform: devicePlatform, token: token.data, @@ -42,38 +38,89 @@ export async function requestPermissionsAndRegisterToken( } } -export function registerTokenChangeHandler( - getAgent: () => BskyAgent, - account: SessionAccount, -): () => void { - // listens for new changes to the push token - // In rare situations, a push token may be changed by the push notification service while the app is running. When a token is rolled, the old one becomes invalid and sending notifications to it will fail. A push token listener will let you handle this situation gracefully by registering the new token with your backend right away. - const sub = Notifications.addPushTokenListener(async newToken => { - logger.debug( - 'Notifications: Push token changed', - {tokenType: newToken.data, token: newToken.type}, - logger.DebugContext.notifications, - ) - try { - await getAgent().api.app.bsky.notification.registerPush({ - serviceDid: SERVICE_DID(account.service), - platform: devicePlatform, - token: newToken.data, - appId: 'xyz.blueskyweb.app', - }) - logger.debug( - 'Notifications: Sent push token (event)', - { - tokenType: newToken.type, - token: newToken.data, - }, - logger.DebugContext.notifications, - ) - } catch (error) { - logger.error('Notifications: Failed to set push token', {message: error}) - } - }) - return () => { - sub.remove() +async function getPushToken(skipPermissionCheck = false) { + const granted = + skipPermissionCheck || (await Notifications.getPermissionsAsync()).granted + if (granted) { + Notifications.getDevicePushTokenAsync() } } + +export function useNotificationsRegistration() { + const agent = useAgent() + const {currentAccount} = useSession() + + React.useEffect(() => { + if (!currentAccount) { + return + } + + getPushToken() + + // According to the Expo docs, there is a chance that the token will change while the app is open in some rare + // cases. This will fire `registerPushToken` whenever that happens. + const subscription = Notifications.addPushTokenListener(async newToken => { + registerPushToken(agent, currentAccount, newToken) + }) + + return () => { + subscription.remove() + } + }, [currentAccount, agent]) +} + +export function useRequestNotificationsPermission() { + const gate = useGate() + + return async (context: 'StartOnboarding' | 'AfterOnboarding' | 'Login') => { + const permissions = await Notifications.getPermissionsAsync() + + if ( + !isNative || + permissions?.status === 'granted' || + permissions?.status === 'denied' + ) { + return + } + if ( + context === 'StartOnboarding' && + gate('request_notifications_permission_after_onboarding_v2') + ) { + return + } + if ( + context === 'AfterOnboarding' && + !gate('request_notifications_permission_after_onboarding_v2') + ) { + return + } + + const res = await Notifications.requestPermissionsAsync() + logEvent('notifications:request', { + context: context, + status: res.status, + }) + + if (res.granted) { + // This will fire a pushTokenEvent, which will handle registration of the token + getPushToken(true) + } + } +} + +export async function decrementBadgeCount(by: number | 'reset' = 1) { + if (!isNative) return + + const currCount = await getBadgeCountAsync() + + if (by === 'reset') { + await setBadgeCountAsync(0) + return + } + + let newCount = currCount - by + if (newCount < 0) { + newCount = 0 + } + await setBadgeCountAsync(newCount) +} diff --git a/src/lib/routes/helpers.ts b/src/lib/routes/helpers.ts index 0da8850433..603b6f71b6 100644 --- a/src/lib/routes/helpers.ts +++ b/src/lib/routes/helpers.ts @@ -1,5 +1,6 @@ import {NavigationProp} from '@react-navigation/native' -import {State, RouteParams} from './types' + +import {RouteParams, State} from './types' export function getRootNavigation( nav: NavigationProp, @@ -10,7 +11,11 @@ export function getRootNavigation( return nav } -export function getCurrentRoute(state: State) { +export function getCurrentRoute(state?: State) { + if (!state) { + return {name: 'Home'} + } + let node = state.routes[state.index || 0] while (node.state?.routes && typeof node.state?.index === 'number') { node = node.state?.routes[node.state?.index] diff --git a/src/lib/routes/types.ts b/src/lib/routes/types.ts index 31133cb1bd..7504cd83a0 100644 --- a/src/lib/routes/types.ts +++ b/src/lib/routes/types.ts @@ -38,7 +38,7 @@ export type CommonNavigatorParams = { AccessibilitySettings: undefined Search: {q?: string} Hashtag: {tag: string; author?: string} - MessagesConversation: {conversation: string} + MessagesConversation: {conversation: string; embed?: string} MessagesSettings: undefined } @@ -72,7 +72,7 @@ export type MyProfileTabNavigatorParams = CommonNavigatorParams & { } export type MessagesTabNavigatorParams = CommonNavigatorParams & { - Messages: {pushToConversation?: string} + Messages: {pushToConversation?: string; animation?: 'push' | 'pop'} } export type FlatNavigatorParams = CommonNavigatorParams & { @@ -81,7 +81,7 @@ export type FlatNavigatorParams = CommonNavigatorParams & { Feeds: undefined Notifications: undefined Hashtag: {tag: string; author?: string} - Messages: {pushToConversation?: string} + Messages: {pushToConversation?: string; animation?: 'push' | 'pop'} } export type AllNavigatorParams = CommonNavigatorParams & { @@ -96,7 +96,7 @@ export type AllNavigatorParams = CommonNavigatorParams & { MyProfileTab: undefined Hashtag: {tag: string; author?: string} MessagesTab: undefined - Messages: undefined + Messages: {animation?: 'push' | 'pop'} } // NOTE diff --git a/src/lib/statsig/events.ts b/src/lib/statsig/events.ts index 3371cd140d..48651b3d96 100644 --- a/src/lib/statsig/events.ts +++ b/src/lib/statsig/events.ts @@ -16,11 +16,15 @@ export type LogEvents = { logContext: 'SwitchAccount' | 'Settings' | 'Deactivated' } 'notifications:openApp': {} - 'state:background': { + 'notifications:request': { + context: 'StartOnboarding' | 'AfterOnboarding' | 'Login' + status: 'granted' | 'denied' | 'undetermined' + } + 'state:background:sampled': { secondsActive: number } - 'state:foreground': {} - 'router:navigate': {} + 'state:foreground:sampled': {} + 'router:navigate:sampled': {} // Screen events 'splash:signInPressed': {} @@ -48,19 +52,23 @@ export type LogEvents = { selectedFeedsLength: number } 'onboarding:moderation:nextPressed': {} + 'onboarding:profile:nextPressed': {} 'onboarding:finished:nextPressed': {} - 'home:feedDisplayed': { + 'onboarding:finished:avatarResult': { + avatarResult: 'default' | 'created' | 'uploaded' + } + 'home:feedDisplayed:sampled': { feedUrl: string feedType: string index: number reason: 'focus' | 'tabbar-click' | 'pager-swipe' | 'desktop-sidebar-click' } - 'feed:endReached': { + 'feed:endReached:sampled': { feedUrl: string feedType: string itemCount: number } - 'feed:refresh': { + 'feed:refresh:sampled': { feedUrl: string feedType: string reason: 'pull-to-refresh' | 'soft-reset' | 'load-latest' @@ -107,6 +115,7 @@ export type LogEvents = { | 'ProfileHeaderSuggestedFollows' | 'ProfileMenu' | 'ProfileHoverCard' + | 'AvatarButton' } 'profile:unfollow': { logContext: @@ -117,6 +126,18 @@ export type LogEvents = { | 'ProfileHeaderSuggestedFollows' | 'ProfileMenu' | 'ProfileHoverCard' + | 'Chat' + | 'AvatarButton' + } + 'chat:create': { + logContext: 'ProfileHeader' | 'NewChatDialog' | 'SendViaChatDialog' + } + 'chat:open': { + logContext: + | 'ProfileHeader' + | 'NewChatDialog' + | 'ChatsList' + | 'SendViaChatDialog' } 'test:all:always': {} diff --git a/src/lib/statsig/gates.ts b/src/lib/statsig/gates.ts index a2dbb49502..4481935f77 100644 --- a/src/lib/statsig/gates.ts +++ b/src/lib/statsig/gates.ts @@ -1,11 +1,5 @@ export type Gate = // Keep this alphabetic please. - | 'autoexpand_suggestions_on_profile_follow_v2' - | 'disable_min_shell_on_foregrounding_v3' - | 'disable_poll_on_discover_v2' - | 'dms' - | 'reduced_onboarding_and_home_algo' + | 'request_notifications_permission_after_onboarding_v2' + | 'show_avi_follow_button' | 'show_follow_back_label_v2' - | 'start_session_with_following_v2' - | 'test_gate_1' - | 'test_gate_2' diff --git a/src/lib/statsig/statsig.tsx b/src/lib/statsig/statsig.tsx index 2e3fdfd5cb..166d468a1b 100644 --- a/src/lib/statsig/statsig.tsx +++ b/src/lib/statsig/statsig.tsx @@ -7,7 +7,7 @@ import {Statsig, StatsigProvider} from 'statsig-react-native-expo' import {logger} from '#/logger' import {isWeb} from '#/platform/detection' import * as persisted from '#/state/persisted' -import {IS_TESTFLIGHT} from 'lib/app-info' +import {BUNDLE_DATE, BUNDLE_IDENTIFIER, IS_TESTFLIGHT} from 'lib/app-info' import {useSession} from '../../state/session' import {timeout} from '../async/timeout' import {useNonReactiveCallback} from '../hooks/useNonReactiveCallback' @@ -22,6 +22,8 @@ type StatsigUser = { // This is the place where we can add our own stuff. // Fields here have to be non-optional to be visible in the UI. platform: 'ios' | 'android' | 'web' + bundleIdentifier: string + bundleDate: number refSrc: string refUrl: string appLanguage: string @@ -85,11 +87,34 @@ export function toClout(n: number | null | undefined): number | undefined { } } +const DOWNSAMPLED_EVENTS: Set = new Set([ + 'router:navigate:sampled', + 'state:background:sampled', + 'state:foreground:sampled', + 'home:feedDisplayed:sampled', + 'feed:endReached:sampled', + 'feed:refresh:sampled', +]) +const isDownsampledSession = Math.random() < 0.9 // 90% likely + export function logEvent( eventName: E & string, rawMetadata: LogEvents[E] & FlatJSONRecord, ) { try { + if ( + process.env.NODE_ENV === 'development' && + eventName.endsWith(':sampled') && + !DOWNSAMPLED_EVENTS.has(eventName) + ) { + logger.error( + 'Did you forget to add ' + eventName + ' to DOWNSAMPLED_EVENTS?', + ) + } + + if (isDownsampledSession && DOWNSAMPLED_EVENTS.has(eventName)) { + return + } const fullMetadata = { ...rawMetadata, } as Record // Statsig typings are unnecessarily strict here. @@ -108,20 +133,29 @@ export function logEvent( // Our own cache ensures consistent evaluation within a single session. const GateCache = React.createContext | null>(null) -export function useGate(): (gateName: Gate) => boolean { +type GateOptions = { + dangerouslyDisableExposureLogging?: boolean +} + +export function useGate(): (gateName: Gate, options?: GateOptions) => boolean { const cache = React.useContext(GateCache) if (!cache) { throw Error('useGate() cannot be called outside StatsigProvider.') } const gate = React.useCallback( - (gateName: Gate): boolean => { + (gateName: Gate, options: GateOptions = {}): boolean => { const cachedValue = cache.get(gateName) if (cachedValue !== undefined) { return cachedValue } - const value = Statsig.initializeCalled() - ? Statsig.checkGate(gateName) - : false + let value = false + if (Statsig.initializeCalled()) { + if (options.dangerouslyDisableExposureLogging) { + value = Statsig.checkGateWithExposureLoggingDisabled(gateName) + } else { + value = Statsig.checkGate(gateName) + } + } cache.set(gateName, value) return value }, @@ -130,6 +164,28 @@ export function useGate(): (gateName: Gate) => boolean { return gate } +/** + * Debugging tool to override a gate. USE ONLY IN E2E TESTS! + */ +export function useDangerousSetGate(): ( + gateName: Gate, + value: boolean, +) => void { + const cache = React.useContext(GateCache) + if (!cache) { + throw Error( + 'useDangerousSetGate() cannot be called outside StatsigProvider.', + ) + } + const dangerousSetGate = React.useCallback( + (gateName: Gate, value: boolean) => { + cache.set(gateName, value) + }, + [cache], + ) + return dangerousSetGate +} + function toStatsigUser(did: string | undefined): StatsigUser { let userID: string | undefined if (did) { @@ -143,6 +199,8 @@ function toStatsigUser(did: string | undefined): StatsigUser { refSrc, refUrl, platform: Platform.OS as 'ios' | 'android' | 'web', + bundleIdentifier: BUNDLE_IDENTIFIER, + bundleDate: BUNDLE_DATE, appLanguage: languagePrefs.appLanguage, contentLanguages: languagePrefs.contentLanguages, }, @@ -158,14 +216,14 @@ AppState.addEventListener('change', (state: AppStateStatus) => { lastState = state if (state === 'active') { lastActive = performance.now() - logEvent('state:foreground', {}) + logEvent('state:foreground:sampled', {}) } else { let secondsActive = 0 if (lastActive != null) { secondsActive = Math.round((performance.now() - lastActive) / 1e3) } lastActive = null - logEvent('state:background', { + logEvent('state:background:sampled', { secondsActive, }) } diff --git a/src/lib/strings/embed-player.ts b/src/lib/strings/embed-player.ts index 9fa9bc47c8..604e81f065 100644 --- a/src/lib/strings/embed-player.ts +++ b/src/lib/strings/embed-player.ts @@ -1,5 +1,6 @@ import {Dimensions, Platform} from 'react-native' +import {isSafari} from 'lib/browser' import {isWeb} from 'platform/detection' const {height: SCREEN_HEIGHT} = Dimensions.get('window') @@ -356,10 +357,6 @@ export function parseEmbedPlayerFromUrl( if (id && filename && dimensions && id.includes('AAAAC')) { if (Platform.OS === 'web') { - const isSafari = /^((?!chrome|android).)*safari/i.test( - navigator.userAgent, - ) - if (isSafari) { id = id.replace('AAAAC', 'AAAP1') filename = filename.replace('.gif', '.mp4') diff --git a/src/lib/strings/errors.ts b/src/lib/strings/errors.ts index 0c11a6706c..899d8ebce4 100644 --- a/src/lib/strings/errors.ts +++ b/src/lib/strings/errors.ts @@ -11,6 +11,9 @@ export function cleanError(str: any): string { if (str.includes('Upstream Failure')) { return 'The server appears to be experiencing issues. Please try again in a few moments.' } + if (str.includes('Bad token scope')) { + return 'This feature is not available while using an App Password. Please sign in with your main password.' + } if (str.startsWith('Error: ')) { return str.slice('Error: '.length) } diff --git a/src/lib/strings/rich-text-manip.ts b/src/lib/strings/rich-text-manip.ts index d9cd8c0714..2e84656f26 100644 --- a/src/lib/strings/rich-text-manip.ts +++ b/src/lib/strings/rich-text-manip.ts @@ -1,4 +1,5 @@ -import {RichText, UnicodeString} from '@atproto/api' +import {AppBskyRichtextFacet, RichText, UnicodeString} from '@atproto/api' + import {toShortUrl} from './url-helpers' export function shortenLinks(rt: RichText): RichText { @@ -9,9 +10,7 @@ export function shortenLinks(rt: RichText): RichText { // enumerate the link facets if (rt.facets) { for (const facet of rt.facets) { - const isLink = !!facet.features.find( - f => f.$type === 'app.bsky.richtext.facet#link', - ) + const isLink = !!facet.features.find(AppBskyRichtextFacet.isLink) if (!isLink) { continue } @@ -32,3 +31,21 @@ export function shortenLinks(rt: RichText): RichText { } return rt } + +// filter out any mention facets that didn't map to a user +export function stripInvalidMentions(rt: RichText): RichText { + if (!rt.facets?.length) { + return rt + } + rt = rt.clone() + if (rt.facets) { + rt.facets = rt.facets?.filter(facet => { + const mention = facet.features.find(AppBskyRichtextFacet.isMention) + if (mention && !mention.did) { + return false + } + return true + }) + } + return rt +} diff --git a/src/lib/strings/time.ts b/src/lib/strings/time.ts index 3e162af1a2..8de4b52aed 100644 --- a/src/lib/strings/time.ts +++ b/src/lib/strings/time.ts @@ -2,8 +2,8 @@ const NOW = 5 const MINUTE = 60 const HOUR = MINUTE * 60 const DAY = HOUR * 24 -const MONTH = DAY * 28 -const YEAR = DAY * 365 +const MONTH_30 = DAY * 30 +const MONTH = DAY * 30.41675 // This results in 365.001 days in a year, which is close enough for nearly all cases export function ago(date: number | string | Date): string { let ts: number if (typeof date === 'string') { @@ -22,12 +22,21 @@ export function ago(date: number | string | Date): string { return `${Math.floor(diffSeconds / MINUTE)}m` } else if (diffSeconds < DAY) { return `${Math.floor(diffSeconds / HOUR)}h` - } else if (diffSeconds < MONTH) { + } else if (diffSeconds < MONTH_30) { return `${Math.round(diffSeconds / DAY)}d` - } else if (diffSeconds < YEAR) { - return `${Math.floor(diffSeconds / MONTH)}mo` } else { - return new Date(ts).toLocaleDateString() + let months = diffSeconds / MONTH + if (months % 1 >= 0.9) { + months = Math.ceil(months) + } else { + months = Math.floor(months) + } + + if (months < 12) { + return `${months}mo` + } else { + return new Date(ts).toLocaleDateString() + } } } diff --git a/src/locale/locales/ca/messages.po b/src/locale/locales/ca/messages.po index fa93c60865..58c733e91c 100644 --- a/src/locale/locales/ca/messages.po +++ b/src/locale/locales/ca/messages.po @@ -16,67 +16,75 @@ msgstr "" "X-Poedit-SourceCharset: utf-8\n" "Plural-Forms: \n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(sense correu)" #: src/view/com/notifications/FeedItem.tsx:239 msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" -msgstr "" +msgstr "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" #: src/view/shell/desktop/RightNav.tsx:168 #~ msgid "{0, plural, one {# invite code available} other {# invite codes available}}" #~ msgstr "{0, plural, one {# codi d'invitació disponible} other {# codis d'invitació disponibles}}" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "{0, plural, one {# etiqueta s'ha aplicat a aquest compte} other {# etiquetes s'han aplicat a aquest compte}}" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" +msgstr "{0, plural, one {# etiqueta s'ha aplicat a aquest compte} other {# etiquetes s'han aplicat a aquest compte}}" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "{0, plural, one {# etiqueta s'ha aplicat a aquest contingut} other {# etiquetes s'han aplicat a aquest contingut}}" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" +msgstr "{0, plural, one {# etiqueta s'ha aplicat a aquest contingut} other {# etiquetes s'han aplicat a aquest contingut}}" + +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" -msgstr "" +msgstr "{0, plural, one {# republicació} other {# republicacions}}" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" -msgstr "" +msgstr "{0, plural, one {seguidor} other {seguidors}}" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" -msgstr "" +msgstr "{0, plural, one {seguint} other {seguint}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:245 msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" -msgstr "" +msgstr "{0, plural, one {Like (# m'agrada)} other {Like (# m'agrades)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" -msgstr "" +msgstr "{0, plural, one {m'agrada} other {m'agrades}}" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{0, plural, one {Li ha agradat a # user} other {Li ha agradat a # users}}" #: src/screens/Profile/Header/Metrics.tsx:59 msgid "{0, plural, one {post} other {posts}}" -msgstr "" +msgstr "{0, plural, one {publicació} other {publicacions}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:204 msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" -msgstr "" +msgstr "{0, plural, one {Resposta per (# reply)} other {Resposta per (# replies)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" -msgstr "" +msgstr "{0, plural, one {republicació} other {republicacions}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:241 msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" -msgstr "" +msgstr "{0, plural, one {Desmarca m'agrada (# like)} other {Desmarca m'agrada (# likes)}}" #: src/view/com/modals/Repost.tsx:44 #~ msgid "{0}" @@ -86,23 +94,31 @@ msgstr "" #~ msgid "{0} {purposeLabel} List" #~ msgstr "Llista {purposeLabel} {0}" +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "{0} els teus canals" + #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{count, plural, one {Li ha agradat a # user} other {Li ha agradat a # users}}" #: src/screens/Deactivated.tsx:207 msgid "{estimatedTimeHrs, plural, one {hour} other {hours}}" -msgstr "" +msgstr "{estimatedTimeHrs, plural, one {hora} other {hores}}" #: src/screens/Deactivated.tsx:213 msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" -msgstr "" +msgstr "{estimatedTimeMins, plural, one {minut} other {minuts}}" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} seguint" +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "No es poden enviar missatges a {handle}" + #: src/view/shell/desktop/RightNav.tsx:151 #~ msgid "{invitesAvailable, plural, one {Invite codes: # available} other {Invite codes: # available}}" #~ msgstr "{invitesAvailable, plural, one {Codis d'invitació: # available} other {Codi d'invitació: # available}}" @@ -117,35 +133,35 @@ msgstr "{following} seguint" #~ msgid "{invitesAvailable} invite codes available" #~ msgstr "{invitesAvailable} codis d'invitació disponibles" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{likeCount, plural, one {Li ha agradat a # user} other {Li ha agradat a # users}}" #: src/view/screens/Search/Search.tsx:87 #~ msgid "{message}" -#~ msgstr "{message}" +#~ msgstr "{missatge}" -#: src/view/shell/Drawer.tsx:464 +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} no llegides" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" -msgstr "" +msgstr "{value, plural, =0 {Mostra totes les respostes} one {Mostra les respostes amb almenys # m'agrada} other {Mostra les respostes amb almenys # m'agrades}}" #: src/view/com/threadgate/WhoCanReply.tsx:159 msgid "<0/> members" msgstr "<0/> membres" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" -msgstr "" +msgstr "<0>{0} {1, plural, one {seguidor} other {seguidors}}" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" -msgstr "" +msgstr "<0>{0} {1, plural, one {seguint} other {seguint}}" #: src/view/shell/Drawer.tsx:96 #~ msgid "<0>{0} following" @@ -168,9 +184,9 @@ msgstr "" #~ msgid "<0>Follow some<1>Recommended<2>Users" #~ msgstr "<0>Segueix alguns<1>usuaris<2>recomanats" -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." -msgstr "" +msgstr "<0>No aplicable. Aquesta advertència només està disponible per publicacions amb contingut adjunt." #: src/view/com/auth/onboarding/WelcomeDesktop.tsx:21 #~ msgid "<0>Welcome to<1>Bluesky" @@ -180,7 +196,7 @@ msgstr "" msgid "⚠Invalid Handle" msgstr "⚠Identificador invàlid" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "Confirmació 2FA" @@ -202,11 +218,11 @@ msgid "Access profile and other navigation links" msgstr "Accedeix al perfil i altres enllaços de navegació" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "Accessibilitat" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "Configuració d'accessibilitat" @@ -219,21 +235,21 @@ msgstr "Configuració d'accessibilitat" #~ msgid "account" #~ msgstr "compte" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "Compte" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "Compte bloquejat" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "Compte seguit" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "Compte silenciat" @@ -254,55 +270,56 @@ msgstr "Opcions del compte" msgid "Account removed from quick access" msgstr "Compte eliminat de l'accés ràpid" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "Compte desbloquejat" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "Compte no seguit" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "Compte no silenciat" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "Afegeix" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "Afegeix una advertència de contingut" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "Afegeix un usuari a aquesta llista" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "Afegeix un compte" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "Afegeix text alternatiu" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "Afegeix text alternatiu" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "Afegeix una contrasenya d'aplicació" @@ -323,15 +340,23 @@ msgstr "Afegeix una contrasenya d'aplicació" #~ msgid "Add link card:" #~ msgstr "Afegeix una targeta a l'enllaç:" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "Afegeix paraula silenciada a la configuració" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "Afegeix les paraules i etiquetes silenciades" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "Afegeix els canals recomanats" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "Afegeix el canal per defecte només de la gent que segueixes" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "Afegeix el següent registre DNS al teu domini:" @@ -340,7 +365,7 @@ msgstr "Afegeix el següent registre DNS al teu domini:" msgid "Add to Lists" msgstr "Afegeix a les llistes" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "Afegeix als meus canals" @@ -353,17 +378,17 @@ msgstr "Afegeix als meus canals" msgid "Added to list" msgstr "Afegit a la llista" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "Afegit als meus canals" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "Ajusta el nombre de m'agrades que hagi de tenir una resposta per a aparèixer al teu canal." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "Contingut per a adults" @@ -373,17 +398,32 @@ msgstr "Contingut per a adults" #: src/components/moderation/LabelPreference.tsx:242 msgid "Adult content is disabled." -msgstr "El contingut per adults està deshabilitat." +msgstr "El contingut per a adults està deshabilitat." #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "Avançat" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "Tots els canals que has desat, en un sol lloc." +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "Permet missatges de" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -393,13 +433,13 @@ msgstr "Ja tens un codi?" msgid "Already signed in as @{0}" msgstr "Ja estàs registrat com a @{0}" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -407,30 +447,30 @@ msgstr "Text alternatiu" #: src/view/com/util/post-embeds/GifEmbed.tsx:179 msgid "Alt Text" -msgstr "" +msgstr "Text alternatiu" #: src/view/com/composer/photos/Gallery.tsx:224 msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "El text alternatiu descriu les imatges per a les persones cegues o amb problemes de visió, i ajuda a donar context a tothom." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "S'ha enviat un correu a {0}. Inclou un codi de confirmació que has d'entrar aquí sota." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "S'ha enviat un correu a la teva adreça prèvia, {0}. Inclou un codi de confirmació que has d'entrar aquí sota." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "Hi ha hagut un error" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "Hi ha hagut un error intentant esborrar el missatge. Torna-ho a provar." -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "Un problema que no està inclòs en aquestes opcions" @@ -443,16 +483,16 @@ msgstr "Un problema que no està inclòs en aquestes opcions" msgid "An issue occurred, please try again." msgstr "Hi ha hagut un problema, prova-ho de nou." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" -msgstr "" +msgstr "hi ha hagut un problema desconegut" #: src/view/com/notifications/FeedItem.tsx:236 #: src/view/com/threadgate/WhoCanReply.tsx:180 msgid "and" msgstr "i" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "Animals" @@ -460,7 +500,7 @@ msgstr "Animals" msgid "Animated GIF" msgstr "GIF animat" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "Comportament antisocial" @@ -468,19 +508,19 @@ msgstr "Comportament antisocial" msgid "App Language" msgstr "Idioma de l'aplicació" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "Contrasenya de l'aplicació esborrada" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "La contrasenya de l'aplicació només pot estar formada per lletres, números, espais, guions i guions baixos." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "La contrasenya de l'aplicació ha de ser d'almenys 4 caràcters." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "Configuració de la contrasenya d'aplicació" @@ -489,17 +529,17 @@ msgstr "Configuració de la contrasenya d'aplicació" #~ msgstr "Contrasenyes de l'aplicació" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "Contrasenyes de l'aplicació" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "Apel·la" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "Apel·la \"{0}\" etiqueta" @@ -515,47 +555,64 @@ msgstr "Apel·la \"{0}\" etiqueta" #~ msgid "Appeal Decision" #~ msgstr "Decisión de apelación" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" -msgstr "" +msgstr "Apel·lació enviada" #: src/components/moderation/LabelsOnMeDialog.tsx:193 #~ msgid "Appeal submitted." #~ msgstr "Apel·lació enviada." -#: src/view/com/util/moderation/LabelInfo.tsx:52 -#~ msgid "Appeal this decision" -#~ msgstr "Apel·la aquesta decisió" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "Apel·la aquesta decisió" #: src/view/com/util/moderation/LabelInfo.tsx:56 #~ msgid "Appeal this decision." #~ msgstr "Apel·la aquesta decisió." -#: src/view/screens/Settings/index.tsx:430 +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "Aparença" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "Aplica els canals recomanats per defecte" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "Confirmes que vols eliminar la contrasenya de l'aplicació \"{name}\"?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." -msgstr "" +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "Estàs segur que vols esborrar aquest missatge? El missatge s'esborrarà per a tu, però no per a l'altre participant." -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." -msgstr "" +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." +msgstr "Estàs segur que vols esborrar aquest missatge? El missatge s'esborrarà per a tu, però no per als altres participants." -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "Estàs segur que vols abandonar aquesta conversa? Els missatges s'esborraran per a tu, però no per als altres participants." + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." +msgstr "Estàs segur que vols abandonar aquesta conversa? Els missatge s'esborraran per a tu, però no per a l'altre participant." + +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "Confirmes que vols eliminar {0} dels teus canals?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "Confirmes que vols descartar aquest esborrany?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "Ho confirmes?" @@ -567,11 +624,11 @@ msgstr "Ho confirmes?" msgid "Are you writing in <0>{0}?" msgstr "Estàs escrivint en <0>{0}?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "Art" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "Nuesa artística o no eròtica." @@ -579,18 +636,20 @@ msgstr "Nuesa artística o no eròtica." msgid "At least 3 characters" msgstr "Almenys 3 caràcters" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -605,7 +664,7 @@ msgstr "Endarrere" msgid "Based on your interest in {interestsText}" msgstr "Segons els teus interessos en {interestsText}" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "Conceptes bàsics" @@ -613,19 +672,19 @@ msgstr "Conceptes bàsics" msgid "Birthday" msgstr "Aniversari" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "Aniversari:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "Bloqueja" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" -msgstr "" +msgstr "Bloqueja el compte" #: src/view/com/profile/ProfileMenu.tsx:300 #: src/view/com/profile/ProfileMenu.tsx:307 @@ -636,15 +695,15 @@ msgstr "Bloqueja el compte" msgid "Block Account?" msgstr "Vols bloquejar el compte?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "Bloqueja comptes" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "Bloqueja una llista" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "Vols bloquejar aquests comptes?" @@ -674,21 +733,21 @@ msgstr "Els comptes bloquejats no poden respondre cap fil teu, ni anomenar-te ni msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "Els comptes bloquejats no poden respondre a cap fil teu, ni anomenar-te ni interactuar amb tu de cap manera. No veuràs mai el seu contingut ni ells el teu." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "Publicació bloquejada." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "El bloqueig no evita que aquest etiquetador apliqui etiquetes al teu compte." -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "El bloqueig és públic. Els comptes bloquejats no poden respondre els teus fils, ni mencionar-te ni interactuar amb tu de cap manera." #: src/view/com/profile/ProfileMenu.tsx:353 msgid "Blocking will not prevent labels from being applied on your account, but it will stop this account from replying in your threads or interacting with you." -msgstr "Bloquejar no evitarà que s'apliquin etiquetes al teu compte, però no deixarà que aquest compte respongui els teus fils ni interactui amb tu." +msgstr "Bloquejar no evitarà que s'apliquin etiquetes al teu compte, però no deixarà que aquest compte respongui els teus fils ni interactuï amb tu." #: src/view/com/auth/SplashScreen.web.tsx:154 msgid "Blog" @@ -738,10 +797,15 @@ msgstr "Difumina les imatges" msgid "Blur images and filter from feeds" msgstr "Difumina les imatges i filtra-ho dels canals" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "Llibres" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "Explora altres canals" + #: src/view/screens/Settings/index.tsx:893 #~ msgid "Build version {0} {1}" #~ msgstr "Versió {0} {1}" @@ -768,7 +832,7 @@ msgstr "Per {0}" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:112 msgid "by @{0}" -msgstr "" +msgstr "per @{0}" #: src/view/com/profile/ProfileSubpageHeader.tsx:161 msgid "by <0/>" @@ -786,7 +850,7 @@ msgstr "per tu" msgid "Camera" msgstr "Càmera" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "Només pot tenir lletres, números, espais, guions i guions baixos. Ha de tenir almenys 4 caràcters i no més de 32." @@ -794,11 +858,11 @@ msgstr "Només pot tenir lletres, números, espais, guions i guions baixos. Ha d #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -810,22 +874,22 @@ msgstr "Només pot tenir lletres, números, espais, guions i guions baixos. Ha d #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "Cancel·la" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "Cancel·la" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "Cancel·la la supressió del compte" @@ -833,7 +897,7 @@ msgstr "Cancel·la la supressió del compte" #~ msgid "Cancel add image alt text" #~ msgstr "Cancel·la afegir text a la imatge" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "Cancel·la el canvi d'identificador" @@ -862,34 +926,34 @@ msgstr "Cancel·la la cerca" msgid "Cancels opening the linked website" msgstr "Cancel·la obrir la web enllaçada" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "Canvia" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "Canvia" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "Canvia l'identificador" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "Canvia l'identificador" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "Canvia el meu correu" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "Canvia la contrasenya" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "Canvia la contrasenya" @@ -901,26 +965,36 @@ msgstr "Canvia l'idioma de la publicació a {0}" #~ msgid "Change your Bluesky password" #~ msgstr "Canvia la teva contrasenya de Bluesky" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "Canvia el teu correu" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" msgstr "Xat" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" -msgstr "" +msgstr "Xat silenciat" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" +msgstr "Configuració del xat" + +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" -msgstr "" +msgstr "Xat no silenciat" #: src/screens/Messages/Conversation/index.tsx:26 #~ msgid "Chat with {chatId}" @@ -939,11 +1013,11 @@ msgstr "Comprova el meu estat" #~ msgid "Check out some recommended users. Follow them to see similar users." #~ msgstr "Mira alguns usuaris recomanats. Segueix-los per a veure altres usuaris similars." -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." -msgstr "Comprova el teu correu electrònic per obtenir un codi d'inici de sessió i introdueix-lo aquí." +msgstr "Comprova el teu correu electrònic per a obtenir un codi d'inici de sessió i introdueix-lo aquí." -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "Comprova el teu correu per a rebre el codi de confirmació i entra'l aquí sota:" @@ -959,7 +1033,7 @@ msgstr "Tria \"Tothom\" or \"Ningú\"" msgid "Choose Service" msgstr "Tria un servei" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "Tria els algoritmes que alimentaran els teus canals personalitzats." @@ -968,6 +1042,10 @@ msgstr "Tria els algoritmes que alimentaran els teus canals personalitzats." #~ msgid "Choose the algorithms that power your experience with custom feeds." #~ msgstr "Tria els algoritmes que potenciaran la teva experiència amb els canals personalitzats." +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "Tria aquest color com el teu avatar" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "Tria els teus canals principals" @@ -976,19 +1054,19 @@ msgstr "Tria els teus canals principals" msgid "Choose your password" msgstr "Tria la teva contrasenya" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "Esborra totes les dades antigues emmagatzemades" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "Esborra totes les dades antigues emmagatzemades (i després reinicia)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "Esborra totes les dades emmagatzemades" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "Esborra totes les dades emmagatzemades (i després reinicia)" @@ -997,11 +1075,11 @@ msgstr "Esborra totes les dades emmagatzemades (i després reinicia)" msgid "Clear search query" msgstr "Esborra la cerca" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "Esborra totes les dades antigues emmagatzemades" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "Esborra totes les dades emmagatzemades" @@ -1009,27 +1087,40 @@ msgstr "Esborra totes les dades emmagatzemades" msgid "click here" msgstr "clica aquí" +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "Clica aquí per afegir-ne un." + #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" -msgstr "Clica aquí per obrir el menú d'etiquetes per {tag}" +msgstr "Clica aquí per a obrir el menú d'etiquetes per {tag}" #: src/components/RichText.tsx:198 #~ msgid "Click here to open tag menu for #{tag}" -#~ msgstr "Clica aquí per obrir el menú d'etiquetes per #{tag}" +#~ msgstr "Clica aquí per a obrir el menú d'etiquetes per #{tag}" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "Clica aquí per provar d'enviar el missatge de nou" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "Clima" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "Clip 🐴 clop 🐴" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "Tanca" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "Tanca el diàleg actiu" @@ -1041,7 +1132,7 @@ msgstr "Tanca l'advertència" msgid "Close bottom drawer" msgstr "Tanca el calaix inferior" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "Tanca el diàleg" @@ -1057,6 +1148,10 @@ msgstr "Tanca la imatge" msgid "Close image viewer" msgstr "Tanca el visor d'imatges" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "Tanca el modal" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "Tanca el peu de la navegació" @@ -1074,7 +1169,7 @@ msgstr "Tanca la barra de navegació inferior" msgid "Closes password update alert" msgstr "Tanca l'alerta d'actualització de contrasenya" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "Tanca l'editor de la publicació i descarta l'esborrany" @@ -1086,11 +1181,11 @@ msgstr "Tanca la visualització de la imatge de la capçalera" msgid "Collapses list of users for a given notification" msgstr "Plega la llista d'usuaris per una notificació concreta" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "Comèdia" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "Còmics" @@ -1099,7 +1194,7 @@ msgstr "Còmics" msgid "Community Guidelines" msgstr "Directrius de la comunitat" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "Finalitza el registre i comença a utilitzar el teu compte" @@ -1107,7 +1202,7 @@ msgstr "Finalitza el registre i comença a utilitzar el teu compte" msgid "Complete the challenge" msgstr "Completa la prova" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "Crea publicacions de fins a {MAX_GRAPHEME_LENGTH} caràcters" @@ -1129,13 +1224,13 @@ msgstr "Configurat a <0>configuració de moderació." #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "Confirma" @@ -1145,8 +1240,8 @@ msgstr "Confirma" #~ msgid "Confirm" #~ msgstr "Confirma" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "Confirma el canvi" @@ -1154,7 +1249,7 @@ msgstr "Confirma el canvi" msgid "Confirm content language settings" msgstr "Confirma la configuració de l'idioma del contingut" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "Confirma l'eliminació del compte" @@ -1170,13 +1265,13 @@ msgstr "Confirma la teva edat:" msgid "Confirm your birthdate" msgstr "Confirma la teva data de naixement" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "Codi de confirmació" @@ -1184,7 +1279,7 @@ msgstr "Codi de confirmació" #~ msgid "Confirms signing up {email} to the waitlist" #~ msgstr "Confirma afegir {email} a la llista d'espera" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "Connectant…" @@ -1235,12 +1330,13 @@ msgstr "Advertències del contingut" #: src/components/Menu/index.web.tsx:83 msgid "Context menu backdrop, click to close the menu." -msgstr "Teló de fons del menú contextual, fes clic per tancar-lo." +msgstr "Teló de fons del menú contextual, fes clic per a tancar-lo." #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "Continua" @@ -1250,8 +1346,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "Continua com a {0} (sessió actual)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1265,22 +1362,26 @@ msgstr "Continua" msgid "Continue to the next step without following any accounts" msgstr "Continua sense seguir cap compte" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "Conversa esborrada" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "Cuina" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "Copiat" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "Número de versió copiat en memòria" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1290,15 +1391,15 @@ msgstr "Copiat en memòria" msgid "Copied!" msgstr "Copiat" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "Copia la contrasenya d'aplicació" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "Copia" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "Copia {0}" @@ -1307,7 +1408,7 @@ msgstr "Copia {0}" msgid "Copy code" msgstr "Copia el codi" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "Copia l'enllaç a la llista" @@ -1320,10 +1421,10 @@ msgstr "Copia l'enllaç a la publicació" #~ msgid "Copy link to profile" #~ msgstr "Copia l'enllaç al perfil" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" -msgstr "" +msgstr "Copia el text del missatge" #: src/view/com/util/forms/PostDropdownBtn.tsx:256 #: src/view/com/util/forms/PostDropdownBtn.tsx:258 @@ -1335,29 +1436,29 @@ msgstr "Copia el text de la publicació" msgid "Copyright Policy" msgstr "Política de drets d'autor" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" -msgstr "" +msgstr "No s'ha pogut sortir del xat" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" -msgstr "No es pot carregar el canal" +msgstr "No s'ha pogut carregar el canal" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" -msgstr "No es pot carregar la llista" +msgstr "No s'ha pogut carregar la llista" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "No es poden carregar els perfils. Prova-ho més tard." -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" -msgstr "" +msgstr "No s'ha pogut silenciar el xat" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +#~ msgid "Could not unmute chat" +#~ msgstr "No s'ha pogut deixar de silenciar el xat" #: src/view/com/auth/create/Step2.tsx:91 #~ msgid "Country" @@ -1368,7 +1469,7 @@ msgstr "" msgid "Create a new account" msgstr "Crea un nou compte" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "Crea un nou compte de Bluesky" @@ -1381,7 +1482,11 @@ msgstr "Crea un compte" msgid "Create an account" msgstr "Crea un compte" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "Enlloc d'això, crea un avatar" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "Crea una contrasenya d'aplicació" @@ -1390,11 +1495,11 @@ msgstr "Crea una contrasenya d'aplicació" msgid "Create new account" msgstr "Crea un nou compte" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "Crea un informe per a {0}" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "Creat {0}" @@ -1410,7 +1515,7 @@ msgstr "Creat {0}" #~ msgid "Creates a card with a thumbnail. The card links to {url}" #~ msgstr "Crea una targeta amb una miniatura. La targeta enllaça a {url}" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "Cultura" @@ -1419,12 +1524,12 @@ msgstr "Cultura" msgid "Custom" msgstr "Personalitzat" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "Domini personalitzat" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "Els canals personalitzats fets per la comunitat et porten noves experiències i t'ajuden a trobar contingut que t'agradarà." @@ -1436,8 +1541,8 @@ msgstr "Personalitza el contingut dels llocs externs." #~ msgid "Danger Zone" #~ msgstr "Zona de perill" -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "Fosc" @@ -1445,7 +1550,7 @@ msgstr "Fosc" msgid "Dark mode" msgstr "Mode fosc" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "Tema fosc" @@ -1453,7 +1558,7 @@ msgstr "Tema fosc" msgid "Date of birth" msgstr "Data de naixement" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "Moderació de depuració" @@ -1461,14 +1566,14 @@ msgstr "Moderació de depuració" msgid "Debug panel" msgstr "Panell de depuració" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "Elimina" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "Elimina el compte" @@ -1476,35 +1581,40 @@ msgstr "Elimina el compte" #~ msgid "Delete Account" #~ msgstr "Elimina el compte" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" -msgstr "" +msgstr "Elimina el compte <0>\"<1>{0}<2>\"" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "Elimina la contrasenya d'aplicació" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "Vols eliminar la contrasenya d'aplicació?" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" +msgstr "Suprimeix el registre de declaració de xat" -#: src/view/screens/ProfileList.tsx:417 +#: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "Elimina-ho per mi" + +#: src/view/screens/ProfileList.tsx:470 msgid "Delete List" msgstr "Elimina la llista" -#: src/components/dms/MessageMenu.tsx:119 +#: src/components/dms/MessageMenu.tsx:122 msgid "Delete message" -msgstr "" +msgstr "Elimina el missatge" -#: src/components/dms/MessageMenu.tsx:99 +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" -msgstr "" +msgstr "Elimina el missatge per mi" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "Elimina el meu compte" @@ -1512,7 +1622,7 @@ msgstr "Elimina el meu compte" #~ msgid "Delete my account…" #~ msgstr "Elimina el meu compte…" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "Elimina el meu compte…" @@ -1521,7 +1631,7 @@ msgstr "Elimina el meu compte…" msgid "Delete post" msgstr "Elimina la publicació" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "Vols eliminar aquesta llista?" @@ -1533,10 +1643,14 @@ msgstr "Vols eliminar aquesta publicació?" msgid "Deleted" msgstr "Eliminat" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "Publicació eliminada." +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "Suprimeix el registre de declaració de xat" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1544,9 +1658,9 @@ msgstr "Publicació eliminada." msgid "Description" msgstr "Descripció" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" -msgstr "" +msgstr "Text alternatiu descriptiu" #: src/view/com/auth/create/Step1.tsx:96 #~ msgid "Dev Server" @@ -1556,19 +1670,23 @@ msgstr "" #~ msgid "Developer Tools" #~ msgstr "Eines de desenvolupador" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "Vols dir alguna cosa?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "Tènue" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "Els missatges directes són aquí!" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "Desactiva la reproducció automàtica dels GIF" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "Desactiva el correu 2FA" @@ -1587,11 +1705,13 @@ msgstr "Desactiva la retroalimentació hàptica" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "Deshabilitat" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "Descarta" @@ -1599,7 +1719,7 @@ msgstr "Descarta" #~ msgid "Discard draft" #~ msgstr "Descarta l'esborrany" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "Vols descartar l'esborrany?" @@ -1617,7 +1737,7 @@ msgstr "Descobreix nous canals personalitzats" #~ msgid "Discover new feeds" #~ msgstr "Descobreix nous canals" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "Descobreix nous canals" @@ -1629,7 +1749,7 @@ msgstr "Nom mostrat" msgid "Display Name" msgstr "Nom mostrat" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "Panell de DNS" @@ -1641,11 +1761,11 @@ msgstr "No inclou nuesa." msgid "Doesn't begin or end with a hyphen" msgstr "No comença ni acaba amb un guionet" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "valor del domini" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "Domini verificat!" @@ -1657,23 +1777,23 @@ msgstr "Domini verificat!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "Fet" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1695,8 +1815,8 @@ msgstr "Fet{extraText}" #~ msgid "Download Bluesky account data (repository)" #~ msgstr "Descarrega les dades del compte de Bluesky (repositori)" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "Descarrega el fitxer CAR" @@ -1708,7 +1828,7 @@ msgstr "Deixa anar a afegir imatges" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "A causa de les polítiques d'Apple, el contingut a adults només es pot habilitar a la web després de registrar-se." -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "p. ex.jordi" @@ -1716,7 +1836,7 @@ msgstr "p. ex.jordi" msgid "e.g. Alice Roberts" msgstr "p. ex.Jordi Guix" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "p. ex.jordi.com" @@ -1753,7 +1873,7 @@ msgctxt "action" msgid "Edit" msgstr "Edita" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "Edita l'avatar" @@ -1763,7 +1883,7 @@ msgstr "Edita l'avatar" msgid "Edit image" msgstr "Edita la imatge" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "Edita els detalls de la llista" @@ -1772,8 +1892,8 @@ msgid "Edit Moderation List" msgstr "Edita la llista de moderació" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "Edita els meus canals" @@ -1781,18 +1901,18 @@ msgstr "Edita els meus canals" msgid "Edit my profile" msgstr "Edita el meu perfil" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "Edita el perfil" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "Edita el perfil" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "Edita els meus canals guardats" @@ -1808,16 +1928,16 @@ msgstr "Edita el teu nom mostrat" msgid "Edit your profile description" msgstr "Edita la descripció del teu perfil" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "Ensenyament" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "Correu" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "Correu 2FA desactivat" @@ -1825,20 +1945,20 @@ msgstr "Correu 2FA desactivat" msgid "Email address" msgstr "Adreça de correu" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "Correu actualitzat" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "Correu actualitzat" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "Correu verificat" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "Correu:" @@ -1862,16 +1982,16 @@ msgstr "Habilita només {0}" #: src/screens/Moderation/index.tsx:329 msgid "Enable adult content" -msgstr "Habilita el contingut per adults" +msgstr "Habilita el contingut per a adults" #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:94 msgid "Enable Adult Content" -msgstr "Habilita el contingut per adults" +msgstr "Habilita el contingut per a adults" #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:78 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:79 msgid "Enable adult content in your feeds" -msgstr "Habilita veure el contingut per adults als teus canals" +msgstr "Habilita veure el contingut per a adults als teus canals" #: src/components/dialogs/EmbedConsent.tsx:82 #: src/components/dialogs/EmbedConsent.tsx:89 @@ -1886,7 +2006,7 @@ msgstr "Habilita els continguts externs" msgid "Enable media players for" msgstr "Habilita reproductors de contingut per" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "Activa aquesta opció per a veure només les respostes entre els comptes que segueixes." @@ -1894,6 +2014,8 @@ msgstr "Activa aquesta opció per a veure només les respostes entre els comptes msgid "Enable this source only" msgstr "Habilita només per aquesta font" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "Habilitat" @@ -1902,7 +2024,11 @@ msgstr "Habilitat" msgid "End of feed" msgstr "Fi del canal" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "Fi de la llista" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "Posa un nom a aquesta contrasenya d'aplicació" @@ -1910,12 +2036,12 @@ msgstr "Posa un nom a aquesta contrasenya d'aplicació" msgid "Enter a password" msgstr "Introdueix una contrasenya" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "Introdueix una lletra o etiqueta" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "Entra el codi de confirmació" @@ -1927,7 +2053,7 @@ msgstr "Entra el codi de confirmació" msgid "Enter the code you received to change your password." msgstr "Introdueix el codi que has rebut per a canviar la teva contrasenya." -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "Introdueix el domini que vols utilitzar" @@ -1948,11 +2074,11 @@ msgstr "Introdueix la teva data de naixement" msgid "Enter your email address" msgstr "Introdueix el teu correu" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "Introdueix el teu correu a sobre" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "Introdueix el teu nou correu a continuació." @@ -1964,11 +2090,15 @@ msgstr "Introdueix el teu nou correu a continuació." msgid "Enter your username and password" msgstr "Introdueix el teu usuari i contrasenya" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "Ha ocorregut un error en desar el fitxer" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." -msgstr "Erro en rebre la resposta al captcha." +msgstr "Error en rebre la resposta al captcha." -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "Error:" @@ -1977,21 +2107,36 @@ msgstr "Error:" msgid "Everybody" msgstr "Tothom" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "Tothom pot respondre" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "Tothom" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "Mencions o respostes excessives" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "Missatges excessius o no desitjats" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "Surt del procés d'eliminació del compte" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "Surt del procés de canvi d'identificador" #: src/view/com/modals/crop-image/CropImage.web.tsx:160 msgid "Exits image cropping process" -msgstr "Surt del procés de retallar l'imatge" +msgstr "Surt del procés de retallar la imatge" #: src/view/com/lightbox/Lightbox.web.tsx:130 msgid "Exits image view" @@ -2023,12 +2168,12 @@ msgstr "Contingut explícit o potencialment pertorbador." msgid "Explicit sexual images." msgstr "Imatges sexuals explícites." -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "Exporta les meves dades" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "Exporta les meves dades" @@ -2044,16 +2189,16 @@ msgstr "El contingut extern pot permetre que algunes webs recullin informació s #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "Preferència del contingut extern" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "Configuració del contingut extern" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "No s'ha pogut crear la contrasenya d'aplicació." @@ -2061,40 +2206,62 @@ msgstr "No s'ha pogut crear la contrasenya d'aplicació." msgid "Failed to create the list. Check your internet connection and try again." msgstr "No s'ha pogut crear la llista. Comprova la teva connexió a internet i torna-ho a provar." -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" -msgstr "" +msgstr "No s'ha pogut esborrar el missatge" #: src/view/com/util/forms/PostDropdownBtn.tsx:139 msgid "Failed to delete post, please try again" msgstr "No s'ha pogut esborrar la publicació, torna-ho a provar" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "No s'han pogut carregar els GIF" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." -msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" +msgstr "No s'han pogut carregar els missatges anteriors" + +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "No s'han pogut carregar els missatges anteriors." #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 #~ msgid "Failed to load recommended feeds" #~ msgstr "Error en carregar els canals recomanats" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "Error en desar la imatge: {0}" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "No s'ha pogut enviar" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "Error en enviar missatge(s)." + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "No s'ha pogut enviar l'apel·lació, torna-ho a provar." + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "No s'ha pogut actualitzar la configuració" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "Canal" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "Canal per {0}" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "Canal fora de línia" @@ -2103,18 +2270,17 @@ msgstr "Canal fora de línia" #~ msgstr "Preferències del canal" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "Comentaris" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "Canals" @@ -2122,7 +2288,7 @@ msgstr "Canals" #~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." #~ msgstr "Els canals són creats pels usuaris per a curar contingut. Tria els canals que trobis interessants." -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "Els canals són algoritmes personalitzats creats per usuaris que coneixen una mica de codi. <0/> per a més informació." @@ -2130,15 +2296,19 @@ msgstr "Els canals són algoritmes personalitzats creats per usuaris que coneixe msgid "Feeds can be topical as well!" msgstr "Els canals també poden ser d'actualitat!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "Continguts del fitxer" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "Fitxer desat amb èxit" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "Filtra-ho dels canals" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "Finalitzant" @@ -2164,7 +2334,7 @@ msgstr "Troba publicacions i usuaris a Bluesky" #~ msgid "Finding similar accounts..." #~ msgstr "Troba comptes similars…" -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "Ajusta el contingut que veus al teu canal Seguint." @@ -2176,11 +2346,11 @@ msgstr "Ajusta el contingut que veus al teu canal Seguint." msgid "Fine-tune the discussion threads." msgstr "Ajusta els fils de debat." -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "Exercici" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "Flexible" @@ -2193,10 +2363,10 @@ msgstr "Gira horitzontalment" msgid "Flip vertically" msgstr "Gira verticalment" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -2208,7 +2378,7 @@ msgid "Follow" msgstr "Segueix" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "Segueix {0}" @@ -2242,7 +2412,7 @@ msgstr "Seguit per {0}" msgid "Followed users" msgstr "Usuaris seguits" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "Només els usuaris seguits" @@ -2259,28 +2429,30 @@ msgstr "Seguidors" #~ msgid "following" #~ msgstr "seguint" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "Seguint" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "Seguint {0}" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "Preferències del canal Seguint" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "Preferències del canal Seguint" @@ -2292,15 +2464,15 @@ msgstr "Et segueix" msgid "Follows You" msgstr "Et segueix" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "Menjar" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "Per motius de seguretat necessitem enviar-te un codi de confirmació al teu correu." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "Per motius de seguretat no podràs tornar-la a veure. Si perds aquesta contrasenya necessitaràs generar-ne una de nova." @@ -2317,23 +2489,23 @@ msgstr "Per motius de seguretat no podràs tornar-la a veure. Si perds aquesta c msgid "Forgot Password" msgstr "He oblidat la contrasenya" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "Has oblidat la contrasenya?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "Oblidada?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" -msgstr "Publica contingut no dessitjat freqüentment" +msgstr "Publica contingut no desitjat freqüentment" #: src/screens/Hashtag.tsx:118 msgid "From @{sanitizedAuthor}" msgstr "De @{sanitizedAuthor}" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "De <0/>" @@ -2342,12 +2514,20 @@ msgstr "De <0/>" msgid "Gallery" msgstr "Galeria" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "Comença" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "Comença" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "Posa una cara al teu perfil" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "Infraccions flagrants de la llei o les condicions del servei" @@ -2356,9 +2536,9 @@ msgstr "Infraccions flagrants de la llei o les condicions del servei" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "Ves enrere" @@ -2366,13 +2546,14 @@ msgstr "Ves enrere" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "Ves enrere" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2392,24 +2573,28 @@ msgstr "Ves a l'inici" #~ msgid "Go to @{queryMaybeHandle}" #~ msgstr "Ves a @{queryMaybeHandle}" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "Ves a la conversa amb {0}" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "Ves al següent" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" -msgstr "" +msgstr "Ves al perfil" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" -msgstr "" +msgstr "Ves al perfil de l'usuari" #: src/lib/moderation/useGlobalLabelStrings.ts:46 msgid "Graphic Media" msgstr "Mitjans gràfics" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "Identificador" @@ -2417,7 +2602,7 @@ msgstr "Identificador" msgid "Haptics" msgstr "Hàptics" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "Assetjament, troleig o intolerància" @@ -2429,7 +2614,7 @@ msgstr "Etiqueta" #~ msgid "Hashtag: {tag}" #~ msgstr "Etiqueta: {tag}" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "Etiqueta: #{tag}" @@ -2438,10 +2623,14 @@ msgid "Having trouble?" msgstr "Tens problemes?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "Ajuda" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "Ajuda la gent a saber que no ets un bot penjant una imatge o creant un avatar." + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "Aquí tens uns quants comptes que pots seguir" @@ -2454,13 +2643,13 @@ msgstr "Aquí tens alguns canals d'actualitat populars. Pots seguir-ne tants com msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "Aquí tens uns quants canals d'actualitat basats en els teus interessos: {interestsText}. Pots seguir-ne tants com vulguis." -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "Aquí tens la teva contrasenya d'aplicació." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2482,7 +2671,7 @@ msgid "Hide post" msgstr "Amaga l'entrada" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "Amaga el contingut" @@ -2498,39 +2687,39 @@ msgstr "Amaga la llista d'usuaris" #~ msgid "Hides posts from {0} in your feed" #~ msgstr "Amaga les publicacions de {0} al teu canal" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "S'ha produït algun error quan s'intentava connectar amb el servidor del canal. Avisa al propietari del canal d'aquest problema." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "Sembla que el servidor del canal està mal configurat. Avisa al propietari del canal d'aquest problema." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "Sembla que el servidor del canal està sense connexió. Avisa al propietari del canal d'aquest problema." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "El servidor del canal ha donat una resposta incorrecta. Avisa al propietari del canal d'aquest problema." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "Tenim problemes per a trobar aquest canal. Potser ha estat eliminat." #: src/screens/Moderation/index.tsx:59 msgid "Hmmmm, it seems we're having trouble loading this data. See below for more details. If this issue persists, please contact us." -msgstr "Tenim problemes per a carregar aquestes dades. Mira a continuació per a veure més detalls. Contacta'ns si aquest problema continua." +msgstr "Tenim problemes per a carregar aquestes dades. Mira a continuació per a veure més detalls. Contacta amb nosaltres si aquest problema continua." #: src/screens/Profile/ErrorState.tsx:31 msgid "Hmmmm, we couldn't load that moderation service." msgstr "No podem carregar el servei de moderació." -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "Inici" @@ -2541,14 +2730,14 @@ msgstr "Inici" #~ msgid "Home Feed Preferences" #~ msgstr "Preferències dels canals a l'inici" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "Allotjament:" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "Proveïdor d'allotjament" @@ -2561,25 +2750,30 @@ msgstr "Proveïdor d'allotjament" msgid "How should we open this link?" msgstr "Com hem d'obrir aquest enllaç?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "Tinc un codi" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "Tinc un codi de confirmació" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "Tinc el meu propi domini" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "Ho entenc" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "Si el text alternatiu és llarg, canvia l'estat expandit del text alternatiu" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "Si no en selecciones cap, és apropiat per a totes les edats." @@ -2587,7 +2781,7 @@ msgstr "Si no en selecciones cap, és apropiat per a totes les edats." msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "Si encara no ets un adult segons les lleis del teu país, el teu tutor legal haurà de llegir aquests Termes en el teu lloc." -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "Si esborres aquesta llista no la podràs recuperar." @@ -2599,7 +2793,7 @@ msgstr "Si esborres aquesta publicació no la podràs recuperar." msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "Si vols canviar la contrasenya t'enviarem un codi per a verificar que aquest compte és teu." -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "Il·legal i urgent" @@ -2607,7 +2801,7 @@ msgstr "Il·legal i urgent" msgid "Image" msgstr "Imatge" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "Text alternatiu de la imatge" @@ -2616,15 +2810,19 @@ msgstr "Text alternatiu de la imatge" #~ msgid "Image options" #~ msgstr "Opcions de la imatge" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "Suplantació d'identitat o afirmacions falses sobre identitat o afiliació" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "Missatges inapropiats o enllaços explícits" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "Introdueix el codi que s'ha enviat al teu correu per a restablir la contrasenya" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "Introdueix el codi de confirmació per a eliminar el compte" @@ -2636,7 +2834,7 @@ msgstr "Introdueix el codi de confirmació per a eliminar el compte" #~ msgid "Input invite code to proceed" #~ msgstr "Introdueix el codi d'invitació per a continuar" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "Introdueix un nom per la contrasenya d'aplicació" @@ -2644,7 +2842,7 @@ msgstr "Introdueix un nom per la contrasenya d'aplicació" msgid "Input new password" msgstr "Introdueix una nova contrasenya" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "Introdueix la contrasenya per a eliminar el compte" @@ -2652,15 +2850,15 @@ msgstr "Introdueix la contrasenya per a eliminar el compte" #~ msgid "Input phone number for SMS verification" #~ msgstr "Introdueix el telèfon per la verificació per SMS" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "Introdueix el codi que has rebut per correu" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "Introdueix la contrasenya lligada a {identifier}" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "Introdueix el nom d'usuari o correu que vas utilitzar per a registrar-te" @@ -2672,28 +2870,32 @@ msgstr "Introdueix el nom d'usuari o correu que vas utilitzar per a registrar-te #~ msgid "Input your email to get on the Bluesky waitlist" #~ msgstr "Introdueix el teu correu per a afegir-te a la llista d'espera de Bluesky" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "Introdueix la teva contrasenya" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" -msgstr "Introdeix el teu proveïdor d'allotjament preferit" +msgstr "Introdueix el teu proveïdor d'allotjament preferit" #: src/screens/Signup/StepHandle.tsx:63 msgid "Input your user handle" msgstr "Introdueix el teu identificador d'usuari" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "Presentació dels missatges directes" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "El codi de confirmació 2FA no és vàlid." -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "Registre de publicació no vàlid o no admès" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "Nom d'usuari o contrasenya incorrectes" @@ -2709,7 +2911,7 @@ msgstr "Convida un amic" msgid "Invite code" msgstr "Codi d'invitació" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "Codi d'invitació rebutjat. Comprova que l'has entrat correctament i torna-ho a provar." @@ -2746,7 +2948,7 @@ msgstr "Feines" #~ msgid "Join Waitlist" #~ msgstr "Uneix-te a la llista d'espera" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "Periodisme" @@ -2766,19 +2968,19 @@ msgstr "Etiquetat per l'autor." msgid "Labels" msgstr "Etiquetes" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." -msgstr "Les etiquetes son anotacions sobre els usuaris i el contingut. Poden ser utilitzades per a ocultar, advertir i categoritxar la xarxa." +msgstr "Les etiquetes són anotacions sobre els usuaris i el contingut. Poden ser utilitzades per a ocultar, advertir i categoritzar la xarxa." #: src/components/moderation/LabelsOnMe.tsx:61 #~ msgid "labels have been placed on this {labelTarget}" #~ msgstr "S'han posat etiquetes a aquest {labelTarget}" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "Etiquetes al teu compte" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "Etiquetes al teu contingut" @@ -2786,7 +2988,7 @@ msgstr "Etiquetes al teu contingut" msgid "Language selection" msgstr "Tria l'idioma" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "Configuració d'idioma" @@ -2795,7 +2997,7 @@ msgstr "Configuració d'idioma" msgid "Language Settings" msgstr "Configuració d'idioma" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "Idiomes" @@ -2821,7 +3023,7 @@ msgstr "Més informació" msgid "Learn more about the moderation applied to this content." msgstr "Més informació sobre la moderació que s'ha aplicat a aquest contingut." -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "Més informació d'aquesta advertència" @@ -2834,15 +3036,22 @@ msgstr "Més informació sobre què és públic a Bluesky." msgid "Learn more." msgstr "Més informació." -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" -msgstr "" +msgstr "Surt" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "Surt del xat" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" -msgstr "" +msgstr "Surt de la conversa" #: src/view/com/modals/lang-settings/ContentLanguagesSettings.tsx:82 msgid "Leave them all unchecked to see any language." @@ -2856,7 +3065,7 @@ msgstr "Sortint de Bluesky" msgid "left to go." msgstr "queda." -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "L'emmagatzematge heretat s'ha esborrat, cal que reinicieu l'aplicació ara." @@ -2865,7 +3074,7 @@ msgstr "L'emmagatzematge heretat s'ha esborrat, cal que reinicieu l'aplicació a msgid "Let's get your password reset!" msgstr "Restablirem la teva contrasenya!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "Som-hi!" @@ -2874,7 +3083,7 @@ msgstr "Som-hi!" #~ msgid "Library" #~ msgstr "Biblioteca" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "Clar" @@ -2882,8 +3091,8 @@ msgstr "Clar" #~ msgid "Like" #~ msgstr "M'agrada" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "Fes m'agrada a aquest canal" @@ -2915,7 +3124,7 @@ msgstr "Li ha agradat a" #: src/view/com/notifications/FeedItem.tsx:168 msgid "liked your custom feed" -msgstr "els hi ha agradat el teu canal personalitzat" +msgstr "els ha agradat el teu canal personalitzat" #: src/view/com/notifications/FeedItem.tsx:171 #~ msgid "liked your custom feed{0}" @@ -2929,7 +3138,7 @@ msgstr "li ha agradat la teva publicació" msgid "Likes" msgstr "M'agrades" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "M'agrades a aquesta publicació" @@ -2941,19 +3150,19 @@ msgstr "Llista" msgid "List Avatar" msgstr "Avatar de la llista" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "Llista bloquejada" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "Llista per {0}" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "Llista eliminada" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "Llista silenciada" @@ -2961,23 +3170,27 @@ msgstr "Llista silenciada" msgid "List Name" msgstr "Nom de la llista" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "Llista desbloquejada" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "Llista no silenciada" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "Llistes" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "Llistes que bloquegen aquest usuari:" + #: src/view/com/post-thread/PostThread.tsx:333 #: src/view/com/post-thread/PostThread.tsx:341 #~ msgid "Load more posts" @@ -2988,9 +3201,9 @@ msgid "Load new notifications" msgstr "Carrega noves notificacions" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "Carrega noves publicacions" @@ -3021,9 +3234,9 @@ msgstr "Visibilitat pels usuaris no connectats" msgid "Login to account that is not listed" msgstr "Accedeix a un compte que no està llistat" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" -msgstr "Prem llargament per obrir el menú d'etiquetes per a #{tag}" +msgstr "Prem llargament per a obrir el menú d'etiquetes per a #{tag}" #~ msgid "Looks like this feed is only available to users with a Bluesky account. Please sign up or sign in to view this feed!" #~ msgstr "Parece que este canal de noticias sólo está disponible para usuarios con una cuenta Bluesky. Por favor, ¡regístrate o inicia sesión para ver este canal!" @@ -3032,14 +3245,35 @@ msgstr "Prem llargament per obrir el menú d'etiquetes per a #{tag}" msgid "Looks like XXXXX-XXXXX" msgstr "Té l'aspecte XXXXX-XXXXX" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "Sembla que no has desat cap canal encara, utilitza els que recomanem o explora'n d'altres aquí sota." + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "Sembla que has deixat tots els teus canals sense fixar. No passa res, en pots afegir més aquí sota 😄" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "Sembla que et falta el canal del Seguits." + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "Sembla que et falta el canal del Seguits. <0>Clica aquí per a afegir-ne un." + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "Assegura't que és aquí on vols anar!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "Gestiona les teves etiquetes i paraules silenciades" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "Marca com a llegit" + #: src/view/com/auth/create/Step2.tsx:118 #~ msgid "May not be longer than 253 characters" #~ msgstr "No pot ser més llarg de 253 caràcters" @@ -3066,48 +3300,54 @@ msgstr "Usuaris mencionats" msgid "Menu" msgstr "Menú" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "Missatge {0}" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" -msgstr "" +msgstr "Missatge esborrat" #: src/view/com/posts/FeedErrorMessage.tsx:194 #~ msgid "Message from server" #~ msgstr "Missatge del servidor" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "Missatge del servidor: {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" -msgstr "" +msgstr "Camp d'entrada del missatge" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "El missatge és massa llarg" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "Configuració dels missatges" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "Missatges" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "Configuració dels missatges" +#~ msgid "Messaging settings" +#~ msgstr "Configuració dels missatges" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" -msgstr "Compte enganyòs" +msgstr "Compte enganyós" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "Moderació" @@ -3120,13 +3360,13 @@ msgstr "Detalls de la moderació" msgid "Moderation list by {0}" msgstr "Llista de moderació per {0}" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "Llista de moderació per <0/>" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "Llista de moderació teva" @@ -3147,7 +3387,7 @@ msgstr "Llistes de moderació" msgid "Moderation Lists" msgstr "Llistes de moderació" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "Configuració de moderació" @@ -3168,11 +3408,11 @@ msgstr "El moderador ha decidit establir un advertiment general sobre el conting msgid "More" msgstr "Més" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "Més canals" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "Més opcions" @@ -3201,7 +3441,7 @@ msgstr "Silencia {truncatedTag}" msgid "Mute Account" msgstr "Silenciar el compte" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "Silencia els comptes" @@ -3213,24 +3453,29 @@ msgstr "Silencia totes les publicacions {displayTag}" #~ msgid "Mute all {tag} posts" #~ msgstr "Silencia totes les publicacions {tag}" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "Silencia la conversa" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "Silencia només a les etiquetes" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "Silencia a les etiquetes i al text" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "Silencia la llista" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "Silencia les notificacions" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "Vols silenciar aquests comptes?" @@ -3238,11 +3483,11 @@ msgstr "Vols silenciar aquests comptes?" #~ msgid "Mute this List" #~ msgstr "Silencia aquesta llista" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "Silencia aquesta paraula en el text de les publicacions i a les etiquetes" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "Silencia aquesta paraula només a les etiquetes" @@ -3281,7 +3526,7 @@ msgstr "Silenciat per \"{0}\"" msgid "Muted words & tags" msgstr "Paraules i etiquetes silenciades" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "Silenciar és privat. Els comptes silenciats poden interactuar amb tu, però tu no veuràs les seves publicacions ni rebràs notificacions seves." @@ -3290,19 +3535,19 @@ msgstr "Silenciar és privat. Els comptes silenciats poden interactuar amb tu, p msgid "My Birthday" msgstr "El meu aniversari" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "Els meus canals" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "El meu perfil" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "Els meus canals desats" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "Els meus canals desats" @@ -3310,7 +3555,7 @@ msgstr "Els meus canals desats" #~ msgid "my-server.com" #~ msgstr "el-meu-servidor.com" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "Nom" @@ -3319,27 +3564,27 @@ msgstr "Nom" msgid "Name is required" msgstr "Es requereix un nom" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "El nom o la descripció infringeixen els estàndards comunitaris" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "Natura" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "Navega a la pantalla següent" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "Navega al teu perfil" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "Necessites informar d'una infracció dels drets d'autor?" @@ -3353,7 +3598,7 @@ msgstr "Necessites informar d'una infracció dels drets d'autor?" #~ msgid "Never lose access to your followers and data." #~ msgstr "No perdis mai accés als teus seguidors ni a les teves dades." -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "No perdis mai accés als teus seguidors i les teves dades." @@ -3361,7 +3606,7 @@ msgstr "No perdis mai accés als teus seguidors i les teves dades." #~ msgid "Nevermind" #~ msgstr "Tant hi fa" -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "Tant hi fa, crea'm un identificador" @@ -3374,11 +3619,15 @@ msgstr "Nova" msgid "New" msgstr "Nova" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" -msgstr "" +msgstr "Xat nou" + +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "Nous missatges" #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" @@ -3392,22 +3641,22 @@ msgstr "Nova contrasenya" msgid "New Password" msgstr "Nova contrasenya" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "Nova publicació" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "Nova publicació" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "Nova publicació" @@ -3424,14 +3673,14 @@ msgstr "Nova llista d'usuaris" msgid "Newest replies first" msgstr "Les respostes més noves primer" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "Notícies" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3449,29 +3698,29 @@ msgstr "Següent" msgid "Next image" msgstr "Següent imatge" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "No" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "Cap descripció" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "No hi ha panell de DNS" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "No s'han trobat GIF destacats. Pot haver-hi un problema amb Tenor." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "Ja no segueixes a {0}" @@ -3479,25 +3728,39 @@ msgstr "Ja no segueixes a {0}" msgid "No longer than 253 characters" msgstr "No pot tenir més de 253 caràcters" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" -msgstr "" +msgstr "Encara no tens cap missatge" + +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "No hi ha més converses per a mostrar" #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "Encara no tens cap notificació" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "Ningú" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "Cap resultat" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "Cap resultat" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "No s'han trobat resultats" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "No s'han trobat resultats per \"{query}\"" @@ -3507,13 +3770,13 @@ msgstr "No s'han trobat resultats per \"{query}\"" msgid "No results found for {query}" msgstr "No s'han trobat resultats per {query}" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "No s'han trobat resultats de cerca per a \"{search}\"." #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "No s'han trobat resultats de cerca per a \"{searchText}\"." #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3524,6 +3787,10 @@ msgstr "No, gràcies" msgid "Nobody" msgstr "Ningú" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "Ningú pot respondre" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3542,8 +3809,8 @@ msgstr "Nuesa no sexual" msgid "Not Found" msgstr "No s'ha trobat" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "Ara mateix no" @@ -3557,27 +3824,39 @@ msgstr "Nota sobre compartir" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "Nota: Bluesky és una xarxa oberta i pública. Aquesta configuració tan sols limita el teu contingut a l'aplicació de Bluesky i a la web, altres aplicacions poden no respectar-ho. El teu contingut pot ser mostrat a usuaris no connectats per altres aplicacions i webs." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "Aquí no hi ha res" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "Sons de les notificacions" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "Sons de les notificacions" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "Notificacions" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" -msgstr "" +msgstr "Ara" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "Nuesa" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" -msgstr "Nuesa o contingut per adults no etiquetat com a tal" +msgstr "Nuesa o contingut per a adults no etiquetat com a tal" #: src/lib/moderation/useReportOptions.ts:71 #~ msgid "Nudity or pornography not labeled as such" @@ -3591,17 +3870,17 @@ msgstr "Nuesa o contingut per adults no etiquetat com a tal" msgid "Off" msgstr "Apagat" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "Ostres!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "Ostres! Alguna cosa ha fallat." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "D'acord" @@ -3613,14 +3892,18 @@ msgstr "D'acord" msgid "Oldest replies first" msgstr "Respostes més antigues primer" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "Restableix la incorporació" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "Falta el text alternatiu a una o més imatges." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "Només s'accepten fitxers .jpg i .png" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "Només {0} poden respondre." @@ -3629,37 +3912,50 @@ msgstr "Només {0} poden respondre." msgid "Only contains letters, numbers, and hyphens" msgstr "Només pot tenir lletres, nombres i guionets" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "Ostres, alguna cosa ha anat malament!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "Ostres!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "Obre" +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "Obre el creador d'avatars" + #: src/view/screens/Moderation.tsx:75 #~ msgid "Open content filtering settings" #~ msgstr "Obre la configuració del filtre de contingut" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "Obre les opcions de les converses" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "Obre el selector d'emojis" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "Obre el menú de les opcions del canal" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "Obre els enllaços al navegador de l'aplicació" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "Obre les opcions dels missatges" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "Obre la configuració de les paraules i etiquetes silenciades" @@ -3676,12 +3972,12 @@ msgstr "Obre la navegació" msgid "Open post options menu" msgstr "Obre el menú de les opcions de publicació" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "Obre la pàgina d'historial" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "Obre el registre del sistema" @@ -3689,7 +3985,7 @@ msgstr "Obre el registre del sistema" msgid "Opens {numItems} options" msgstr "Obre {numItems} opcions" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "Obre la configuració d'accessibilitat" @@ -3705,11 +4001,15 @@ msgstr "Obre una llista expandida d'usuaris en aquesta notificació" msgid "Opens camera on device" msgstr "Obre la càmera del dispositiu" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "Obre el compositor" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "Obre la configuració d'idioma" @@ -3721,7 +4021,7 @@ msgstr "Obre la galeria fotogràfica del dispositiu" #~ msgid "Opens editor for profile display name, avatar, background image, and description" #~ msgstr "Obre l'editor del perfil per a editar el nom, avatar, imatge de fons i descripció" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "Obre la configuració per les incrustacions externes" @@ -3745,7 +4045,7 @@ msgstr "Obre el procés per a iniciar sessió a un compte existent de Bluesky" #: src/view/com/composer/photos/SelectGifBtn.tsx:37 msgid "Opens GIF select dialog" -msgstr "Obre el diàleg per triar GIF" +msgstr "Obre el diàleg per a triar GIF" #: src/view/screens/Settings.tsx:412 #~ msgid "Opens invite code list" @@ -3755,7 +4055,7 @@ msgstr "Obre el diàleg per triar GIF" msgid "Opens list of invite codes" msgstr "Obre la llista de codis d'invitació" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "Obre el modal per a la confirmació de l'eliminació del compte. Requereix codi de correu electrònic" @@ -3763,44 +4063,44 @@ msgstr "Obre el modal per a la confirmació de l'eliminació del compte. Requere #~ msgid "Opens modal for account deletion confirmation. Requires email code." #~ msgstr "Obre el modal per a confirmar l'eliminació del compte. Requereix un codi de correu" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "Obre el modal per a canviar la contrasenya de Bluesky" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "Obre el modal per a triar un nou identificador de Bluesky" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "Obre el modal per a baixar les dades del vostre compte Bluesky (repositori)" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "Obre el modal per a verificar el correu" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "Obre el modal per a utilitzar un domini personalitzat" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "Obre la configuració de la moderació" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "Obre el formulari de restabliment de la contrasenya" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "Obre pantalla per a editar els canals desats" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "Obre la pantalla amb tots els canals desats" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "Obre la configuració de les contrasenyes d'aplicació" @@ -3808,7 +4108,7 @@ msgstr "Obre la configuració de les contrasenyes d'aplicació" #~ msgid "Opens the app password settings page" #~ msgstr "Obre la pàgina de configuració de les contrasenyes d'aplicació" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "Obre les preferències del canal de Seguint" @@ -3820,20 +4120,20 @@ msgstr "Obre les preferències del canal de Seguint" msgid "Opens the linked website" msgstr "Obre la web enllaçada" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "Obre la pàgina de configuració dels missatges" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "Obre la pàgina de configuració dels missatges" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "Obre la pàgina de l'historial" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "Obre la pàgina de registres del sistema" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "Obre les preferències dels fils de debat" @@ -3841,7 +4141,8 @@ msgstr "Obre les preferències dels fils de debat" msgid "Option {0} of {numItems}" msgstr "Opció {0} de {numItems}" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "Opcionalment, proporciona informació addicional a continuació:" @@ -3849,7 +4150,7 @@ msgstr "Opcionalment, proporciona informació addicional a continuació:" msgid "Or combine these options:" msgstr "O combina aquestes opcions:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "Un altre" @@ -3865,7 +4166,11 @@ msgstr "Un altre compte" msgid "Other..." msgstr "Un altre…" -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "Els nostres moderadors han revisat els informes i han decidit desactivar el teu accés als xats a Bluesky." + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "Pàgina no trobada" @@ -3874,10 +4179,10 @@ msgstr "Pàgina no trobada" msgid "Page Not Found" msgstr "Pàgina no trobada" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "Contrasenya" @@ -3909,15 +4214,15 @@ msgstr "Persones seguides per @{0}" msgid "People following @{0}" msgstr "Persones seguint a @{0}" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "Cal permís per a accedir al carret de la càmera." -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "S'ha denegat el permís per a accedir a la càmera. Activa'l a la configuració del teu sistema." -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "Mascotes" @@ -3925,23 +4230,27 @@ msgstr "Mascotes" #~ msgid "Phone number" #~ msgstr "Telèfon" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "Imatges destinades a adults." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "Fixa a l'inici" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "Fixa a l'Inici" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "Canals de notícies fixats" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "Fixat als teus canals" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "Reprodueix" @@ -3950,6 +4259,11 @@ msgstr "Reprodueix" msgid "Play {0}" msgstr "Reprodueix {0}" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "Reprodueix els sons de notificació" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" msgstr "Reprodueix o posa en pausa el GIF" @@ -3963,23 +4277,23 @@ msgstr "Reprodueix el vídeo" msgid "Plays the GIF" msgstr "Reprodueix el GIF" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "Tria el teu identificador." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "Tria la teva contrasenya." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "Completa el captcha de verificació." -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "Confirma el teu correu abans de canviar-lo. Aquest és un requisit temporal mentre no s'afegeixin eines per a actualitzar el correu. Aviat no serà necessari." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "Introdueix un nom per a la contrasenya de la vostra aplicació. No es permeten tot en espais." @@ -3987,11 +4301,11 @@ msgstr "Introdueix un nom per a la contrasenya de la vostra aplicació. No es pe #~ msgid "Please enter a phone number that can receive SMS text messages." #~ msgstr "Introdueix un telèfon que pugui rebre missatges SMS" -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "Introdueix un nom únic per aquesta contrasenya d'aplicació o fes servir un nom generat aleatòriament." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "Introdueix una paraula, una etiqueta o una frase vàlida per a silenciar" @@ -4003,21 +4317,26 @@ msgstr "Introdueix una paraula, una etiqueta o una frase vàlida per a silenciar #~ msgid "Please enter the verification code sent to {phoneNumberFormatted}." #~ msgstr "Introdueix el codi de verificació enviat a {phoneNumberFormatted}" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "Introdueix el teu correu." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "Introdueix la teva contrasenya també:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "Explica per què creieu que aquesta etiqueta ha estat aplicada incorrectament per {0}" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "Expliqueu perquè creus que els teus xats s'han desactivat incorrectament" + #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" -msgstr "" +msgstr "Inicia sessió com a @{0}" #: src/view/com/modals/AppealLabel.tsx:72 #: src/view/com/modals/AppealLabel.tsx:75 @@ -4027,19 +4346,19 @@ msgstr "" #~ msgid "Please tell us why you think this decision was incorrect." #~ msgstr "Por favor, dinos por qué crees que esta decisión fue incorrecta." -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "Verifica el teu correu" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "Espera que es generi la targeta de l'enllaç" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "Política" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "Pornografia" @@ -4047,13 +4366,13 @@ msgstr "Pornografia" #~ msgid "Pornography" #~ msgstr "Pornografia" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "Publica" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "Publicació" @@ -4064,7 +4383,7 @@ msgstr "Publicació" #~ msgid "Post" #~ msgstr "Publicació" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "Publicació per {0}" @@ -4078,7 +4397,7 @@ msgstr "Publicació per @{0}" msgid "Post deleted" msgstr "Publicació eliminada" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "Publicació oculta" @@ -4100,8 +4419,8 @@ msgstr "Idioma de la publicació" msgid "Post Languages" msgstr "Idiomes de les publicacions" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "Publicació no trobada" @@ -4113,11 +4432,11 @@ msgstr "publicacions" msgid "Posts" msgstr "Publicacions" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "Les publicacions es poder silenciar segons el seu text, etiquetes o ambdues." -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "Publicacions amagades" @@ -4125,21 +4444,25 @@ msgstr "Publicacions amagades" msgid "Potentially Misleading Link" msgstr "Enllaç potencialment enganyós" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "Prem per provar de connectar de nou" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "Prem per canviar el proveïdor d'allotjament" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "Prem per a tornar-ho a provar" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "Prem per a tornar-ho a provar" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -4153,7 +4476,7 @@ msgstr "Idioma principal" msgid "Prioritize Your Follows" msgstr "Prioritza els usuaris que segueixes" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "Privacitat" @@ -4161,25 +4484,29 @@ msgstr "Privacitat" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "Política de privacitat" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "Xateja en privat amb altres usuaris." + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "Processant…" -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "perfil" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "Perfil" @@ -4187,11 +4514,11 @@ msgstr "Perfil" msgid "Profile updated" msgstr "Perfil actualitzat" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "Protegeix el teu compte verificant el teu correu." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "Públic" @@ -4203,11 +4530,11 @@ msgstr "Llistes d'usuaris per a silenciar o bloquejar en massa, públiques i per msgid "Public, shareable lists which can drive feeds." msgstr "Llistes que poden nodrir canals, públiques i per a compartir." -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "Publica" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "Publica la resposta" @@ -4237,6 +4564,14 @@ msgstr "Aleatori (també conegut com a \"Poster's Roulette\")" msgid "Ratios" msgstr "Proporcions" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "Raó:" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "Raó: {0}" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "Cerques recents" @@ -4249,12 +4584,20 @@ msgstr "Cerques recents" #~ msgid "Recommended Users" #~ msgstr "Usuaris recomanats" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "Torna a connectar" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "Carrega les converses de nou" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "Elimina" @@ -4266,7 +4609,7 @@ msgstr "Elimina" msgid "Remove account" msgstr "Elimina el compte" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "Elimina l'avatar" @@ -4274,22 +4617,25 @@ msgstr "Elimina l'avatar" msgid "Remove Banner" msgstr "Elimina el bàner" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "Elimina el canal" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "Vols eliminar el canal?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "Elimina dels meus canals" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "Vols eliminar-lo dels teus canals?" @@ -4301,7 +4647,7 @@ msgstr "Elimina la imatge" msgid "Remove image preview" msgstr "Elimina la visualització prèvia de la imatge" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "Elimina la paraula silenciada de la teva llista" @@ -4317,7 +4663,7 @@ msgstr "Elimina la republicació" #~ msgid "Remove this feed from my feeds?" #~ msgstr "Vols eliminar aquest canal dels teus canals?" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "Elimina aquest canal dels meus canals" @@ -4330,11 +4676,13 @@ msgstr "Elimina aquest canal dels meus canals" msgid "Removed from list" msgstr "Elimina de la llista" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "Eliminat dels meus canals" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "Eliminat dels teus canals" @@ -4346,6 +4694,11 @@ msgstr "Elimina la miniatura per defecte de {0}" msgid "Removes quoted post" msgstr "Elimina la publicació amb la citació" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "Canvia amb Discover" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "Respostes" @@ -4354,12 +4707,12 @@ msgstr "Respostes" msgid "Replies to this thread are disabled" msgstr "Les respostes a aquest fil de debat estan deshabilitades" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "Respon" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "Filtres de resposta" @@ -4370,14 +4723,16 @@ msgstr "Filtres de resposta" #~ msgstr "Resposta a <0/>" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "Resposta a <0><1/>" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" -msgstr "" +msgstr "Informa" #: src/view/com/modals/report/Modal.tsx:166 #~ msgid "Report {collectionName}" @@ -4385,60 +4740,72 @@ msgstr "" #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "Informa del compte" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "Informa del compte" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "Informa d'aquesta conversa" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "Diàleg de l'informe" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "Informa del canal" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "Informa de la llista" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" -msgstr "" +msgstr "Informa del missatge" #: src/view/com/util/forms/PostDropdownBtn.tsx:363 #: src/view/com/util/forms/PostDropdownBtn.tsx:365 msgid "Report post" msgstr "Informa de la publicació" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "Informa d'aquest contingut" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "Informa d'aquest canal" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "Informa d'aquesta llista" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "Informa d'aquest missatge" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "Informa d'aquesta publicació" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "Informa d'aquest usuari" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "Republica" @@ -4460,7 +4827,7 @@ msgstr "Republica o cita la publicació" msgid "Reposted By" msgstr "Republicat per" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "Republicat per {0}" @@ -4472,7 +4839,7 @@ msgstr "Republicat per {0}" #~ msgid "Reposted by <0/>" #~ msgstr "Republicada per <0/>" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "Republicat per <0><1/>" @@ -4480,12 +4847,12 @@ msgstr "Republicat per <0><1/>" msgid "reposted your post" msgstr "ha republicat la teva publicació" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "Republicacions d'aquesta publicació" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "Demana un canvi" @@ -4502,16 +4869,16 @@ msgstr "Demana un codi" msgid "Require alt text before posting" msgstr "Requereix un text alternatiu abans de publicar" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" -msgstr "Sol·licita el codi de correu per iniciar sessió al teu compte" +msgstr "Sol·licita el codi de correu per a iniciar sessió al teu compte" #: src/screens/Signup/StepInfo/index.tsx:69 msgid "Required for this provider" msgstr "Requerit per aquest proveïdor" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "Torna a enviar el correu" @@ -4527,8 +4894,8 @@ msgstr "Codi de restabliment" #~ msgid "Reset onboarding" #~ msgstr "Restableix la incorporació" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "Restableix l'estat de la incorporació" @@ -4540,20 +4907,20 @@ msgstr "Restableix la contrasenya" #~ msgid "Reset preferences" #~ msgstr "Restableix les preferències" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "Restableix l'estat de les preferències" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "Restableix l'estat de la incorporació" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "Restableix l'estat de les preferències" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "Torna a intentar iniciar sessió" @@ -4562,13 +4929,14 @@ msgstr "Torna a intentar iniciar sessió" msgid "Retries the last action, which errored out" msgstr "Torna a intentar l'última acció, que ha donat error" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 @@ -4576,11 +4944,11 @@ msgid "Retry" msgstr "Torna-ho a provar" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "Torna-ho a provar" +#~ msgid "Retry." +#~ msgstr "Torna-ho a provar" #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "Torna a la pàgina anterior" @@ -4589,7 +4957,7 @@ msgid "Returns to home page" msgstr "Torna a la pàgina d'inici" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "Torna a la pàgina anterior" @@ -4598,21 +4966,21 @@ msgstr "Torna a la pàgina anterior" #~ msgstr "ENTORN DE PROVES. Les publicacions i els comptes no són permanents." #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "Desa" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "Desa" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "Desa el text alternatiu" @@ -4624,7 +4992,7 @@ msgstr "Desa la data de naixement" msgid "Save Changes" msgstr "Desa els canvis" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "Desa el canvi d'identificador" @@ -4632,24 +5000,25 @@ msgstr "Desa el canvi d'identificador" msgid "Save image crop" msgstr "Desa la imatge retallada" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "Desa-ho als meus canals" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "Canals desats" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" -msgstr "" +msgstr "S'ha desat a la teva galeria d'imatges" #: src/view/com/lightbox/Lightbox.tsx:81 #~ msgid "Saved to your camera roll." #~ msgstr "S'ha desat a la teva galeria d'imatges." -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "S'ha desat als teus canals." @@ -4657,7 +5026,7 @@ msgstr "S'ha desat als teus canals." msgid "Saves any changes to your profile" msgstr "Desa qualsevol canvi al teu perfil" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "Desa el canvi d'identificador a {handle}" @@ -4665,16 +5034,20 @@ msgstr "Desa el canvi d'identificador a {handle}" msgid "Saves image crop settings" msgstr "Desa la configuració de retall d'imatges" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "Digues hola!" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "Ciència" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "Desplaça't cap a dalt" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4682,12 +5055,12 @@ msgstr "Desplaça't cap a dalt" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "Cerca" @@ -4716,8 +5089,8 @@ msgstr "Cerca totes les publicacions amb l'etiqueta {displayTag}" #~ msgstr "Cerca totes les publicacions amb l'etiqueta {tag}" #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "Cerca algú amb qui començar una conversa." #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4729,15 +5102,16 @@ msgstr "Cerca usuaris" msgid "Search GIFs" msgstr "Cerca GIF" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" -msgstr "" +msgstr "Cerca perfils" #: src/components/dialogs/GifSelect.tsx:159 msgid "Search Tenor" msgstr "Cerca Tenor" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "Es requereix un pas de seguretat" @@ -4766,11 +5140,11 @@ msgstr "Mostra les publicacions amb <0>{displayTag} d'aquest usuari" #~ msgstr "Mostra les publicacions amb <0>{tag} d'aquest usuari" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "Mostra el perfil" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "Consulta aquesta guia" @@ -4782,10 +5156,22 @@ msgstr "Consulta aquesta guia" msgid "Select {item}" msgstr "Selecciona {item}" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "Selecciona un color" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "Selecciona el compte" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "Selecciona un avatar" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "Selecciona un emoji" + #: src/view/com/modals/ServerInput.tsx:75 #~ msgid "Select Bluesky Social" #~ msgstr "Selecciona Bluesky Social" @@ -4796,11 +5182,11 @@ msgstr "Selecciona d'un compte existent" #: src/view/com/composer/photos/SelectGifBtn.tsx:36 msgid "Select GIF" -msgstr "Tria GIF" +msgstr "Selecciona GIF" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" -msgstr "Tria GIF \"{0}\"" +msgstr "Selecciona GIF \"{0}\"" #: src/view/screens/LanguageSettings.tsx:299 msgid "Select languages" @@ -4823,7 +5209,11 @@ msgstr "Selecciona l'opció {i} de {numItems}" msgid "Select some accounts below to follow" msgstr "Selecciona alguns d'aquests comptes per a seguir-los" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "Selecciona el {emojiName} emoji com al teu avatar" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "Selecciona els serveis de moderació als quals voleu informar" @@ -4855,7 +5245,7 @@ msgstr "Selecciona l'idioma de l'aplicació perquè el text predeterminat es mos msgid "Select your date of birth" msgstr "Selecciona la teva data de naixement" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "Selecciona els teus interessos d'entre aquestes opcions" @@ -4875,16 +5265,20 @@ msgstr "Selecciona els teus canals algorítmics primaris" msgid "Select your secondary algorithmic feeds" msgstr "Selecciona els teus canals algorítmics secundaris" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "Envia un lloc web net!" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "Envia correu de confirmació" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "Envia correu" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "Envia correu" @@ -4893,18 +5287,20 @@ msgstr "Envia correu" #~ msgid "Send Email" #~ msgstr "Envia correu" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "Envia comentari" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" -msgstr "" +msgstr "Envia el missatge" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "Envia informe" @@ -4916,12 +5312,12 @@ msgstr "Envia informe" msgid "Send report to {0}" msgstr "Envia informe a {0}" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "Envia un correu de verificació" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "Envia un correu amb el codi de confirmació per l'eliminació del compte" @@ -4971,15 +5367,15 @@ msgstr "Estableix una nova contrasenya" #~ msgid "Set password" #~ msgstr "Estableix una contrasenya" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "Posa \"No\" a aquesta opció per a amagar totes les publicacions citades del teu canal. Les republicacions encara seran visibles." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "Posa \"No\" a aquesta opció per a amagar totes les respostes del teu canal." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "Posa \"No\" a aquesta opció per a amagar totes les republicacions del teu canal." @@ -4991,7 +5387,7 @@ msgstr "Posa \"Sí\" a aquesta opció per a mostrar les respostes en vista de fi #~ msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your following feed. This is an experimental feature." #~ msgstr "Posa \"Sí\" a aquesta opció per a mostrar algunes publicacions dels teus canals en el teu canal de seguits. Aquesta és una opció experimental." -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "Estableix aquesta configuració a \"Sí\" per a mostrar mostres dels teus canals desats al teu canal Seguint. Aquesta és una característica experimental." @@ -4999,27 +5395,27 @@ msgstr "Estableix aquesta configuració a \"Sí\" per a mostrar mostres dels teu msgid "Set up your account" msgstr "Configura el teu compte" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Estableix un nom d'usuari de Bluesky" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "Estableix el tema a fosc" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "Estableix el tema a clar" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "Estableix el tema a la configuració del sistema" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "Estableix el tema fosc al tema fosc" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "Estableix el tema fosc al tema atenuat" @@ -5049,15 +5445,14 @@ msgstr "Estableix la relació d'aspecte de la imatge com a ampla" #~ msgstr "Estableix el servidor pel cient de Bluesky" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "Configuració" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "Activitat sexual o nu eròtic." @@ -5065,7 +5460,7 @@ msgstr "Activitat sexual o nu eròtic." msgid "Sexually Suggestive" msgstr "Suggerent sexualment" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "Comparteix" @@ -5075,18 +5470,26 @@ msgstr "Comparteix" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "Comparteix" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "Comparteix una història interessant!" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "Comparteix una dada divertida!" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "Comparteix de totes maneres" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "Comparteix el canal" @@ -5095,15 +5498,19 @@ msgstr "Comparteix el canal" msgid "Share Link" msgstr "Comparteix l'enllaç" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "Comparteix el teu canal preferit!" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "Comparteix la web enllaçada" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "Mostra" @@ -5113,7 +5520,7 @@ msgstr "Mostra" #: src/view/com/util/post-embeds/GifEmbed.tsx:167 msgid "Show alt text" -msgstr "" +msgstr "Mostra el text alternatiu" #: src/components/moderation/ScreenHider.tsx:169 #: src/components/moderation/ScreenHider.tsx:172 @@ -5133,31 +5540,39 @@ msgstr "Mostra la insígnia i filtra-ho dels canals" #~ msgid "Show embeds from {0}" #~ msgstr "Mostra els incrustats de {0}" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "Mostra seguidors semblants a {0}" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" -msgstr "" +msgstr "Mostra'n menys com aquest" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "Mostra més" #: src/view/com/util/forms/PostDropdownBtn.tsx:297 #: src/view/com/util/forms/PostDropdownBtn.tsx:299 msgid "Show more like this" +msgstr "Mostra'n més com aquest" + +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "Mostra les publicacions dels meus canals" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "Mostra les publicacions citades" @@ -5173,7 +5588,7 @@ msgstr "Mostra els citats a Seguint" msgid "Show re-posts in Following feed" msgstr "Mostra les republicacions al canal Seguint" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "Mostra les respostes" @@ -5193,7 +5608,7 @@ msgstr "Mostra les respostes al canal Seguint" #~ msgid "Show replies with at least {value} {0}" #~ msgstr "Mostra respostes amb almenys {value} {0}" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "Mostra republicacions" @@ -5202,7 +5617,7 @@ msgid "Show reposts in Following" msgstr "Mostra les republicacions al canal Seguint" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "Mostra el contingut" @@ -5216,7 +5631,7 @@ msgstr "Mostra l'advertiment" #: src/lib/moderation/useLabelBehaviorDescription.ts:56 msgid "Show warning and filter from feeds" -msgstr "Mostra l'advertiment i filtra-ho del canals" +msgstr "Mostra l'advertiment i filtra-ho dels canals" #: src/view/com/profile/ProfileHeader.tsx:462 #~ msgid "Shows a list of users similar to this user." @@ -5230,17 +5645,17 @@ msgstr "Mostra les publicacions de {0} al teu canal" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -5263,7 +5678,7 @@ msgstr "Inicia sessió com a …" #: src/components/dialogs/Signin.tsx:75 msgid "Sign in or create your account to join the conversation!" -msgstr "Inicia sessió o crea el teu compte per unir-te a la conversa" +msgstr "Inicia sessió o crea el teu compte per a unir-te a la conversa" #: src/view/com/auth/login/LoginForm.tsx:140 #~ msgid "Sign into" @@ -5271,19 +5686,19 @@ msgstr "Inicia sessió o crea el teu compte per unir-te a la conversa" #: src/components/dialogs/Signin.tsx:46 msgid "Sign into Bluesky or create a new account" -msgstr "Inicia sessió o crea el teu compte per unir-te a la conversa" +msgstr "Inicia sessió o crea el teu compte per a unir-te a la conversa" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "Tanca sessió" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -5299,7 +5714,7 @@ msgstr "Registra't o inicia sessió per a unir-te a la conversa" msgid "Sign-in Required" msgstr "Es requereix iniciar sessió" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "S'ha iniciat sessió com a" @@ -5312,12 +5727,12 @@ msgstr "S'ha iniciat sessió com a @{0}" #~ msgid "Signs {0} out of Bluesky" #~ msgstr "Tanca la sessió de Bluesky de {0}" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "Salta aquest pas" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "Salta aquest flux" @@ -5325,10 +5740,18 @@ msgstr "Salta aquest flux" #~ msgid "SMS verification" #~ msgstr "Verificació per SMS" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "Desenvolupament de programari" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "Algunes persones poden respondre" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "Alguna cosa ha fallat" + #: src/view/com/modals/ProfilePreview.tsx:62 #~ msgid "Something went wrong and we're not sure what." #~ msgstr "Alguna cosa ha fallat i no estem segurs de què." @@ -5347,8 +5770,8 @@ msgstr "Alguna cosa ha fallat, torna-ho a provar." #~ msgid "Something went wrong. Check your email and try again." #~ msgstr "Alguna cosa ha fallat. Comprova el teu correu i torna-ho a provar." -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "La teva sessió ha caducat. Torna a iniciar-la." @@ -5360,19 +5783,24 @@ msgstr "Ordena les respostes" msgid "Sort replies to the same post by:" msgstr "Ordena les respostes a la mateixa publicació per:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "Font:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "Font:" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "Font: <0>{0}" + +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "Brossa" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "Brossa; excessives mencions o respostes" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "Esports" @@ -5384,17 +5812,25 @@ msgstr "Quadrat" #~ msgid "Staging" #~ msgstr "Posada en escena" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" -msgstr "" +msgstr "Comença un nou xat" + +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "Comença un xat amb {displayName}" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "Comença a xatejar" #: src/view/screens/Settings/index.tsx:862 #~ msgid "Status page" #~ msgstr "Pàgina d'estat" -#: src/view/screens/Settings/index.tsx:896 +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" -msgstr "" +msgstr "Pàgina d'estat" #: src/screens/Signup/index.tsx:145 #~ msgid "Step" @@ -5402,48 +5838,50 @@ msgstr "" #: src/screens/Signup/index.tsx:154 msgid "Step {0} of {1}" -msgstr "" +msgstr "Pas {0} de {1}" #: src/view/com/auth/create/StepHeader.tsx:22 #~ msgid "Step {0} of {numSteps}" #~ msgstr "Pas {0} de {numSteps}" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "L'emmagatzematge s'ha esborrat, cal que reinicieu l'aplicació ara." #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Historial" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Envia" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "Subscriure's" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "Subscriu-te a @{0} per a utilitzar aquestes etiquetes:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" -msgstr "Subscriu-te a l'Etiquetador" +msgstr "Subscriu-te a l'etiquetador" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:172 #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:307 msgid "Subscribe to the {0} feed" msgstr "Subscriu-te al canal {0}" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "Subscriu-te a aquest etiquetador" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "Subscriure's a la llista" @@ -5455,7 +5893,7 @@ msgstr "Usuaris suggerits per a seguir" msgid "Suggested for you" msgstr "Suggeriments per tu" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "Suggerent" @@ -5474,23 +5912,23 @@ msgstr "Suport" msgid "Switch Account" msgstr "Canvia el compte" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "Canvia a {0}" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "Canvia en compte amb el que tens iniciada la sessió" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "Sistema" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "Registres del sistema" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "etiqueta" @@ -5510,41 +5948,47 @@ msgstr "Alt" msgid "Tap to view fully" msgstr "Toca per a veure-ho completament" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "Tecnologia" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "Explica un acudit!" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "Condicions" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "Condicions del servei" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "Els termes utilitzats infringeixen els estàndards de la comunitat" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "text" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "Camp d'introducció de text" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "Gràcies. El teu informe s'ha enviat." -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "Això conté els següents:" @@ -5552,7 +5996,7 @@ msgstr "Això conté els següents:" msgid "That handle is already taken." msgstr "Aquest identificador ja està agafat." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "El compte podrà interactuar amb tu després del desbloqueig." @@ -5569,11 +6013,15 @@ msgstr "Les directrius de la comunitat han estat traslladades a <0/>" msgid "The Copyright Policy has been moved to <0/>" msgstr "La política de drets d'autoria ha estat traslladada a <0/>" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "S'ha canviat el canal per Discover." + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "Les següents etiquetes s'han aplicat al teu compte." -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "Les següents etiquetes s'han aplicat als teus continguts." @@ -5581,8 +6029,8 @@ msgstr "Les següents etiquetes s'han aplicat als teus continguts." msgid "The following steps will help customize your Bluesky experience." msgstr "Els següents passos t'ajudaran a personalitzar la teva experiència a Bluesky." -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "És possible que la publicació s'hagi esborrat." @@ -5606,37 +6054,40 @@ msgstr "Les condicions del servei han estat traslladades a" msgid "There are many feeds to try:" msgstr "Hi ha molts canals per a provar:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "Hi ha hagut un problema per a contactar amb el servidor, comprova la teva connexió a internet i torna-ho a provar." -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "Hi ha hagut un problema per a eliminar aquest canal, comprova la teva connexió a internet i torna-ho a provar." -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "Hi ha hagut un problema per a actualitzar els teus canals, comprova la teva connexió a internet i torna-ho a provar." -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." -msgstr "Hi ha hagut un problema per connectar amb Tenor." +msgstr "Hi ha hagut un problema per a connectar amb Tenor." #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "Hi ha hagut un problema per a connectar al xat." -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "Hi ha hagut un problema per a contactar amb el servidor" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "Hi ha hagut un problema per a contactar amb el teu servidor" @@ -5644,7 +6095,7 @@ msgstr "Hi ha hagut un problema per a contactar amb el teu servidor" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "Hi ha hagut un problema en obtenir les notificacions. Toca aquí per a tornar-ho a provar." -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "Hi ha hagut un problema en obtenir les notificacions. Toca aquí per a tornar-ho a provar." @@ -5657,7 +6108,8 @@ msgstr "Hi ha hagut un problema en obtenir la llista. Toca aquí per a tornar-ho msgid "There was an issue fetching your lists. Tap here to try again." msgstr "Hi ha hagut un problema en obtenir les teves llistes. Toca aquí per a tornar-ho a provar." -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "S'ha produït un problema en enviar el teu informe. Comprova la teva connexió a Internet." @@ -5665,32 +6117,32 @@ msgstr "S'ha produït un problema en enviar el teu informe. Comprova la teva con msgid "There was an issue syncing your preferences with the server" msgstr "Hi ha hagut un problema en sincronitzar les teves preferències amb el servidor" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "Hi ha hagut un problema en obtenir les teves contrasenyes d'aplicació" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "Hi ha hagut un problema! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "Hi ha hagut un problema. Comprova la teva connexió a internet i torna-ho a provar." -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "S'ha produït un problema inesperat a l'aplicació. Fes-nos saber si això t'ha passat a tu!" @@ -5718,13 +6170,25 @@ msgstr "Aquesta {screenDescription} ha estat etiquetada:" msgid "This account has requested that users sign in to view their profile." msgstr "Aquest compte ha sol·licitat que els usuaris estiguin registrats per a veure el seu perfil." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "Aquest compte està bloquejat per una o més de les teves llistes de moderació. Per desbloquejar-lo, visita les llistes directament i elimina aquest usuari." + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "Aquesta apel·lació s'enviarà a <0>{0}." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." +msgstr "Aquesta apel·lació s'enviarà al servei de moderació de Bluesky." + +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "Aquest xat s'ha desconnectat" + #: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." -msgstr "" +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "Aquest xat s'ha desconnectat per culpa de un problema de xarxa." #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." @@ -5741,9 +6205,9 @@ msgstr "Aquest contingut està allotjat a {0}. Vols habilitat els continguts ext #: src/components/moderation/ModerationDetailsDialog.tsx:77 #: src/lib/moderation/useModerationCauseDescription.ts:77 msgid "This content is not available because one of the users involved has blocked the other." -msgstr "Aquest contingut no està disponible degut a que un dels usuaris involucrats ha bloquejat a l'altre." +msgstr "Aquest contingut no està disponible per culpa de que un dels usuaris involucrats ha bloquejat a l'altre." -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "Aquest contingut no es pot veure sense un compte de Bluesky." @@ -5751,17 +6215,17 @@ msgstr "Aquest contingut no es pot veure sense un compte de Bluesky." #~ msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." #~ msgstr "Aquesta funcionalitat està en beta. En <0>aquesta entrada al blog tens més informació." -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "Aquesta funció està en versió beta. Podeu obtenir més informació sobre les exportacions de repositoris en <0>aquesta entrada de bloc." -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "Aquest canal està rebent moltes visites actualment i està temporalment inactiu. Prova-ho més tard." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "Aquest canal està buit!" @@ -5769,11 +6233,15 @@ msgstr "Aquest canal està buit!" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "Aquest canal està buit! Necessites seguir més usuaris o modificar la teva configuració d'idiomes." +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "Aquest canal ja no està en línia. En el seu lloc et mostrem <0>Discover." + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "Aquesta informació no es comparteix amb altres usuaris." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "Això és important si mai necessites canviar el teu correu o restablir la contrasenya." @@ -5787,13 +6255,21 @@ msgstr "Això és important si mai necessites canviar el teu correu o restablir #: src/components/moderation/ModerationDetailsDialog.tsx:127 msgid "This label was applied by <0>{0}." -msgstr "" +msgstr "Aquesta etiqueta ha estat aplicada per <0>{0}." #: src/components/moderation/ModerationDetailsDialog.tsx:125 msgid "This label was applied by the author." -msgstr "" +msgstr "Aquesta etiqueta ha estat aplicada per l'autor." -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "Aquesta etiqueta ha estat aplicada per tu" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "Aquesta etiqueta ha estat aplicada per tu." + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "Aquest etiquetador no ha declarat quines etiquetes publica i pot ser que no estigui actiu." @@ -5801,19 +6277,19 @@ msgstr "Aquest etiquetador no ha declarat quines etiquetes publica i pot ser que msgid "This link is taking you to the following website:" msgstr "Aquest enllaç et porta a la web:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "Aquesta llista està buida!" #: src/screens/Profile/ErrorState.tsx:40 msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." -msgstr "Aquest servei de moderació no està disponible. Mira a continuació per obtenir més detalls. Si aquest problema persisteix, posa't en contacte amb nosaltres." +msgstr "Aquest servei de moderació no està disponible. Mira a continuació per a obtenir més detalls. Si aquest problema persisteix, posa't en contacte amb nosaltres." -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "Aquest nom ja està en ús" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "Aquesta publicació ha estat esborrada." @@ -5824,7 +6300,7 @@ msgstr "Aquesta publicació només és visible per als usuaris que han iniciat s #: src/view/com/util/forms/PostDropdownBtn.tsx:399 msgid "This post will be hidden from feeds." -msgstr "Aqeusta publicació no es mostrarà als canals." +msgstr "Aquesta publicació no es mostrarà als canals." #: src/view/com/profile/ProfileMenu.tsx:370 msgid "This profile is only visible to logged-in users. It won't be visible to people who aren't logged in." @@ -5834,7 +6310,7 @@ msgstr "Aquest perfil només és visible per als usuaris que han iniciat sessió msgid "This service has not provided terms of service or a privacy policy." msgstr "Aquest servei no ha proporcionat termes de servei ni una política de privadesa." -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "Això hauria de crear un registre de domini a:" @@ -5842,6 +6318,10 @@ msgstr "Això hauria de crear un registre de domini a:" msgid "This user doesn't have any followers." msgstr "Aquest usuari no té cap seguidor." +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "Aquest usuari t'ha bloquejat" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5879,7 +6359,7 @@ msgstr "Aquest usuari no segueix a ningú." #~ msgid "This warning is only available for posts with media attached." #~ msgstr "Aquesta advertència només està disponible per publicacions amb contingut adjuntat." -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "Això suprimirà {0} de les teves paraules silenciades. Sempre la pots tornar a afegir més tard." @@ -5887,12 +6367,12 @@ msgstr "Això suprimirà {0} de les teves paraules silenciades. Sempre la pots t #~ msgid "This will hide this post from your feeds." #~ msgstr "Això amagarà aquesta publicació dels teus canals." -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "Preferències dels fils de debat" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "Preferències dels fils de debat" @@ -5904,15 +6384,19 @@ msgstr "Mode fils de debat" msgid "Threads Preferences" msgstr "Preferències dels fils de debat" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." -msgstr "Per desactivar el mètode 2FA de correu, verifica el teu accés a l'adreça de correu." +msgstr "per a desactivar el mètode 2FA de correu, verifica el teu accés a l'adreça de correu." + +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "Per informar d'una conversa, informa d'un dels seus missatges a través de la pantalla de conversa. Això permet als nostres moderadors entendre el context del teu problema." #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "A qui vols enviar aquest informe?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "Commuta entre les opcions de paraules silenciades." @@ -5922,7 +6406,7 @@ msgstr "Commuta el menú desplegable" #: src/screens/Moderation/index.tsx:332 msgid "Toggle to enable or disable adult content" -msgstr "Communta per a habilitar o deshabilitar el contingut per adults" +msgstr "Commuta per a habilitar o deshabilitar el contingut per a adults" #: src/screens/Hashtag.tsx:88 #: src/view/screens/Search/Search.tsx:359 @@ -5949,60 +6433,69 @@ msgstr "Torna-ho a provar" #~ msgid "Try again" #~ msgstr "Torna-ho a provar" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "Autenticació de dos factors" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" -msgstr "" +msgstr "Escriu aquí el teu missatge" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "Tipus:" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "Desbloqueja la llista" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "Deixa de silenciar la llista" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "No es pot contactar amb el teu servei. Comprova la teva connexió a internet." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "Desbloqueja" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "Desbloqueja" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "Desbloqueja el compte" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "Desbloqueja el compte" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "Vols desbloquejar el compte?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "Desfés la republicació" @@ -6016,7 +6509,7 @@ msgstr "Deixa de seguir" msgid "Unfollow" msgstr "Deixa de seguir" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "Deixa de seguir a {0}" @@ -6033,12 +6526,12 @@ msgstr "Deixa de seguir el compte" #~ msgid "Unlike" #~ msgstr "Desfés el m'agrada" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "Desfés el m'agrada a aquest canal" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "Deixa de silenciar" @@ -6059,43 +6552,56 @@ msgstr "Deixa de silenciar totes les publicacions amb {displayTag}" #~ msgid "Unmute all {tag} posts" #~ msgstr "Deixa de silenciar totes les publicacions amb {tag}" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" +msgstr "Deixa de silenciar la conversa" + +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "Deixa de silenciar les notificacions" #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "Deixa de silenciar el fil de debat" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "Deixa de fixar" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "Deixa de fixar a l'inici" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "Desancora la llista de moderació" +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "Ja no està fix als teus canals" + #: src/view/screens/ProfileFeed.tsx:346 #~ msgid "Unsave" #~ msgstr "No desis" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "Dona't de baixa" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "Dona't de baixa d'aquest etiquetador" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "Contingut sexual no desitjat" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" -msgstr "Contingut sexual no dessitjat" +msgstr "Contingut sexual no desitjat" #: src/view/com/modals/UserAddRemoveLists.tsx:70 msgid "Update {displayName} in Lists" @@ -6105,7 +6611,7 @@ msgstr "Actualitza {displayName} a les Llistes" #~ msgid "Update Available" #~ msgstr "Actualització disponible" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "Actualitza a {handle}" @@ -6113,42 +6619,46 @@ msgstr "Actualitza a {handle}" msgid "Updating..." msgstr "Actualitzant…" -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "Enlloc d'això, penja una foto" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "Puja un fitxer de text a:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "Puja de la càmera" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "Puja dels Arxius" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "Puja de la biblioteca" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "Utilitza un fitxer del teu servidor" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "Utilitza les contrasenyes d'aplicació per a iniciar sessió en altres clients de Bluesky, sense haver de donar accés total al teu compte o contrasenya." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "Utilitza bsky.social com a proveïdor d'allotjament" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "Utilitza el proveïdor predeterminat" @@ -6162,11 +6672,15 @@ msgstr "Utilitza el navegador de l'aplicació" msgid "Use my default browser" msgstr "Utilitza el meu navegador predeterminat" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "Utilitza els recomanats" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "Utilitza el panell de DNS" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "Utilitza-ho per a iniciar sessió a l'altra aplicació, juntament amb el teu identificador." @@ -6187,6 +6701,10 @@ msgstr "Usuari bloquejat" msgid "User Blocked by \"{0}\"" msgstr "Usuari bloquejat per \"{0}\"" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "Usuari bloquejat per una llista" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "Usuari bloquejat per una llista" @@ -6208,13 +6726,13 @@ msgstr "L'usuari t'ha bloquejat" msgid "User list by {0}" msgstr "Llista d'usuaris per {0}" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "Llista d'usuaris feta per <0/>" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "Llista d'usuaris feta per tu" @@ -6230,11 +6748,11 @@ msgstr "Llista d'usuaris actualitzada" msgid "User Lists" msgstr "Llistes d'usuaris" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "Nom d'usuari o correu" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "Usuaris" @@ -6242,6 +6760,13 @@ msgstr "Usuaris" msgid "users followed by <0/>" msgstr "usuaris seguits per <0/>" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "Els usuaris als que segueixo" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "Usuaris a \"{0}\"" @@ -6250,7 +6775,7 @@ msgstr "Usuaris a \"{0}\"" msgid "Users that have liked this content or profile" msgstr "Usuaris a qui els ha agradat aquest contingut o perfil" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "Valor:" @@ -6262,32 +6787,32 @@ msgstr "Valor:" #~ msgid "Verify {0}" #~ msgstr "Verifica {0}" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" -msgstr "" +msgstr "Verifica els registres de DNS" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "Verifica el correu" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "Verifica el meu correu" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "Verifica el meu correu" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "Verifica el correu nou" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" -msgstr "" +msgstr "Verifica el fitxer de text" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "Verifica el teu correu" @@ -6295,15 +6820,15 @@ msgstr "Verifica el teu correu" #~ msgid "Version {0}" #~ msgstr "Versió {0}" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" -msgstr "" +msgstr "Versió {appVersion} {bundleInfo}" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "Videojocs" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "Veure l'avatar de {0}" @@ -6311,25 +6836,25 @@ msgstr "Veure l'avatar de {0}" msgid "View debug entry" msgstr "Veure el registre de depuració" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "Veure els detalls" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "Veure els detalls per a informar d'una infracció dels drets d'autor" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "Veure el fil de debat complet" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "Mostra informació sobre aquestes etiquetes" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "Veure el perfil" @@ -6341,7 +6866,7 @@ msgstr "Veure l'avatar" msgid "View the labeling service provided by @{0}" msgstr "Veure el servei d'etiquetatge proporcionat per @{0}" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "Veure els usuaris a qui els agrada aquest canal" @@ -6373,11 +6898,15 @@ msgstr "Adverteix del contingut i filtra-ho dels canals" msgid "We couldn't find any results for that hashtag." msgstr "No hem trobat cap resultat per a aquest hashtag." +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "No hem pogut carregar aquesta conversa" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "Calculem {estimatedTime} fins que el teu compte estigui llest." -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "Esperem que t'ho passis pipa. Recorda que Bluesky és:" @@ -6385,7 +6914,7 @@ msgstr "Esperem que t'ho passis pipa. Recorda que Bluesky és:" msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "Ja no hi ha més publicacions dels usuaris que segueixes. Aquí n'hi ha altres de <0/>." -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "Recomanem evitar les paraules habituals que apareixen en moltes publicacions, ja que pot provocar que no es mostri cap publicació." @@ -6401,7 +6930,7 @@ msgstr "No hem pogut carregar les teves preferències de data de naixement. Torn msgid "We were unable to load your configured labelers at this time." msgstr "En aquest moment no hem pogut carregar els teus etiquetadors configurats." -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "No ens hem pogut connectar. Torna-ho a provar per a continuar configurant el teu compte. Si continua fallant, pots ometre aquest flux." @@ -6413,10 +6942,14 @@ msgstr "T'informarem quan el teu compte estigui llest." #~ msgid "We'll look into your appeal promptly." #~ msgstr "Analitzarem la teva apel·lació ràpidament." -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "Ho farem servir per a personalitzar la teva experiència." +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "Tenim problemes de xarxa, torna-ho a provar" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "Ens fa molta il·lusió que t'uneixis a nosaltres!" @@ -6425,7 +6958,7 @@ msgstr "Ens fa molta il·lusió que t'uneixis a nosaltres!" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "Ho sentim, però no hem pogut resoldre aquesta llista. Si això continua, posa't en contacte amb el creador de la llista, @{handleOrDid}." -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "Ho sentim, però no hem pogut carregar les teves paraules silenciades en aquest moment. Torna-ho a provar." @@ -6433,12 +6966,12 @@ msgstr "Ho sentim, però no hem pogut carregar les teves paraules silenciades en msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "Ens sap greu, però la teva cerca no s'ha pogut fer. Prova-ho d'aquí una estona." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "Ens sap greu! No podem trobar la pàgina que estàs cercant." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "Ho sentim! Només et pots subscriure a deu etiquetadors i has arribat al teu límit de deu." @@ -6446,9 +6979,9 @@ msgstr "Ho sentim! Només et pots subscriure a deu etiquetadors i has arribat al #~ msgid "Welcome to <0>Bluesky" #~ msgstr "Us donem la benvinguda a <0>Bluesky" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" -msgstr "Quins són els teus interesos?" +msgstr "Quins són els teus interessos?" #: src/view/com/modals/report/Modal.tsx:169 #~ msgid "What is the issue with this {collectionName}?" @@ -6459,7 +6992,7 @@ msgstr "Quins són els teus interesos?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "Què hi ha de nou" @@ -6471,28 +7004,41 @@ msgstr "En quins idiomes està aquesta publicació?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "Quins idiomes t'agradaria veure en els teus canals algorítmics?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "Qui et pot enviar missatges?" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "Qui hi pot respondre" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "Vaja!" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "Per què s'hauria de revisar aquest contingut?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "Per què s'hauria de revisar aquest canal?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "Per què s'hauria de revisar aquesta llista?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "Per què s'hauria de revisar aquest missatge?" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "Per què s'hauria de revisar aquesta publicació?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "Per què s'hauria de revisar aquest usuari?" @@ -6500,21 +7046,21 @@ msgstr "Per què s'hauria de revisar aquest usuari?" msgid "Wide" msgstr "Amplada" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" -msgstr "" +msgstr "Escriu un missatge" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "Escriu una publicació" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "Escriu la teva resposta" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "Escriptors" @@ -6523,18 +7069,18 @@ msgstr "Escriptors" #~ msgstr "XXXXXX" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "Sí" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" -msgstr "" +msgstr "Ahir, {time}" #: src/screens/Deactivated.tsx:136 msgid "You are in line." @@ -6557,6 +7103,14 @@ msgstr "També pots descobrir nous canals personalitzats per a seguir." msgid "You can change these settings later." msgstr "Pots canviar aquests paràmetres més endavant." +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "Pots canviar-ho quan vulguis." + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -6570,22 +7124,26 @@ msgstr "No tens cap seguidor." msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "Encara no tens codis d'invitació! Te n'enviarem quan portis una mica més de temps a Bluesky." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "No tens cap canal fixat." #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "No tens cap canal desat!" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "No tens cap canal desat!" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "No tens cap canal desat." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "Has bloquejat l'autor o has estat bloquejat per ell." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "Has bloquejat aquest usuari" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -6620,6 +7178,10 @@ msgstr "Has silenciat aquest usuari" #~ msgid "You have muted this user." #~ msgstr "Has silenciat aquest usuari." +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "Encara no tens cap conversa. Comença'n una!" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "No tens canals." @@ -6629,9 +7191,9 @@ msgstr "No tens canals." msgid "You have no lists." msgstr "No tens llistes." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "Encara no tens missatges. Comença una conversa amb algú!" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "Encara no tens missatges. Comença una conversa amb algú!" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." @@ -6641,7 +7203,7 @@ msgstr "Encara no has bloquejat cap compte. Per a bloquejar un compte, ves al se #~ msgid "You have not blocked any accounts yet. To block an account, go to their profile and selected \"Block account\" from the menu on their account." #~ msgstr "Encara no has bloquejat cap compte. Per a fer-ho, ves al seu perfil i selecciona \"Bloqueja el compte\" en el menú del seu compte." -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "Encara no has creat cap contrasenya d'aplicació. Pots fer-ho amb el botó d'aquí sota." @@ -6653,17 +7215,25 @@ msgstr "Encara no has silenciat cap compte. per a silenciar un compte, ves al se #~ msgid "You have not muted any accounts yet. To mute an account, go to their profile and selected \"Mute account\" from the menu on their account." #~ msgstr "Encara no has silenciat cap compte. Per a fer-ho, al seu perfil i selecciona \"Silencia compte\" en el menú del seu compte." -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "Has arribat al final" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "Encara no has silenciat cap paraula ni etiqueta" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "Pots apel·lar les etiquetes que no són pròpies si creus que s'han col·locat per error." + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "Pots apel·lar aquestes etiquetes si creus que s'han col·locat per error." #: src/screens/Signup/StepInfo/Policies.tsx:79 msgid "You must be 13 years of age or older to sign up." -msgstr "Has de tenir 13 anys o més per registrar-te" +msgstr "Has de tenir 13 anys o més per a registrar-te" #: src/view/com/modals/ContentFilteringSettings.tsx:175 #~ msgid "You must be 18 or older to enable adult content." @@ -6673,7 +7243,7 @@ msgstr "Has de tenir 13 anys o més per registrar-te" msgid "You must be 18 years or older to enable adult content" msgstr "Has de tenir 18 anys o més per a habilitar el contingut per a adults" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "Has d'escollir almenys un etiquetador per a un informe" @@ -6689,9 +7259,9 @@ msgstr "Ara rebràs notificacions d'aquest debat" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "Rebràs un correu amb un \"codi de restabliment\". Introdueix aquí el codi i després la teva contrasenya nova." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" -msgstr "" +msgstr "Tu: {0}" #: src/screens/Onboarding/StepModeration/index.tsx:60 msgid "You're in control" @@ -6703,7 +7273,7 @@ msgstr "Tu tens el control" msgid "You're in line" msgstr "Estàs a la cua" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "Ja està tot llest!" @@ -6720,11 +7290,11 @@ msgstr "Has arribat al final del vostre cabal! Cerca alguns comptes més per a s msgid "Your account" msgstr "El teu compte" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "El teu compte s'ha eliminat" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "El repositori del teu compte, que conté tots els registres de dades públiques, es pot baixar com a fitxer \"CAR\". Aquest fitxer no inclou incrustacions multimèdia, com ara imatges, ni les teves dades privades, que s'han d'obtenir per separat." @@ -6732,6 +7302,10 @@ msgstr "El repositori del teu compte, que conté tots els registres de dades pú msgid "Your birth date" msgstr "La teva data de naixement" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "Els teus xats s'han desactivat" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "La teva elecció es desarà, però es pot canviar més endavant a la configuració." @@ -6741,7 +7315,7 @@ msgid "Your default feed is \"Following\"" msgstr "El teu canal per defecte és \"Seguint\"" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "El teu correu no sembla vàlid." @@ -6750,11 +7324,11 @@ msgstr "El teu correu no sembla vàlid." #~ msgid "Your email has been saved! We'll be in touch soon." #~ msgstr "Hem desat el teu correu! Aviat ens posarem en contacte amb tu." -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "El teu correu s'ha actualitzat, però no ha estat verificat. En el pas següent cal que verifiquis el teu correu." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "El teu correu encara no s'ha verificat. Et recomanem fer-ho per seguretat." @@ -6766,7 +7340,7 @@ msgstr "El teu canal de seguint està buit! Segueix a més usuaris per a saber q msgid "Your full handle will be" msgstr "El teu identificador complet serà" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "El teu identificador complet serà <0>@{0}" @@ -6780,7 +7354,7 @@ msgstr "El teu identificador complet serà <0>@{0}" #~ msgid "Your invite codes are hidden when logged in using an App Password" #~ msgstr "Els teus codis d'invitació no es mostren quan has iniciat sessió amb una contrasenya d'aplicació" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "Les teves paraules silenciades" @@ -6788,22 +7362,26 @@ msgstr "Les teves paraules silenciades" msgid "Your password has been changed successfully!" msgstr "S'ha canviat la teva contrasenya!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "S'ha publicat" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "Les teves publicacions, m'agrades i bloquejos són públics. Els comptes silenciats són privats." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "El teu perfil" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "S'ha publicat la teva resposta" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "El teu informe s'enviarà al servei de moderació de Bluesky" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "El teu identificador d'usuari" diff --git a/src/locale/locales/de/messages.po b/src/locale/locales/de/messages.po index 8ab1738a55..a9d323a0ba 100644 --- a/src/locale/locales/de/messages.po +++ b/src/locale/locales/de/messages.po @@ -13,7 +13,7 @@ msgstr "" "Language-Team: Translators in PR 2319, PythooonUser, cdfzo\n" "Plural-Forms: \n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(keine E-Mail)" @@ -21,24 +21,32 @@ msgstr "(keine E-Mail)" msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" msgstr "" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" msgstr "" @@ -47,11 +55,11 @@ msgstr "" msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -63,7 +71,7 @@ msgstr "" msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" msgstr "" @@ -71,6 +79,10 @@ msgstr "" msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" msgstr "" +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "" + #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -83,22 +95,26 @@ msgstr "" msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} folge ich" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" -#: src/view/shell/Drawer.tsx:464 +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} ungelesen" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" msgstr "" @@ -106,11 +122,11 @@ msgstr "" msgid "<0/> members" msgstr "<0/> Mitglieder" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" msgstr "" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" msgstr "" @@ -135,7 +151,7 @@ msgstr "" #~ msgid "<0>Follow some<1>Recommended<2>Users" #~ msgstr "<0>Folge einigen<1>empfohlenen<2>Nutzern" -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." msgstr "" @@ -147,7 +163,7 @@ msgstr "" msgid "⚠Invalid Handle" msgstr "⚠Ungültiger Handle" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "" @@ -169,11 +185,11 @@ msgid "Access profile and other navigation links" msgstr "Zugang zum Profil und anderen Navigationslinks" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "Barrierefreiheit" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "" @@ -186,21 +202,21 @@ msgstr "" #~ msgid "account" #~ msgstr "" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "Konto" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "Konto blockiert" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "Konto stummgeschaltet" @@ -221,55 +237,56 @@ msgstr "Kontoeinstellungen" msgid "Account removed from quick access" msgstr "Konto aus dem Schnellzugriff entfernt" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "Konto entblockiert" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "Konto entfolgt" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "Stummschaltung für Konto aufgehoben" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "Hinzufügen" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "Eine Inhaltswarnung hinzufügen" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "Einen Nutzer zu dieser Liste hinzufügen" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "Konto hinzufügen" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "Alt-Text hinzufügen" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "App-Passwort hinzufügen" @@ -290,15 +307,23 @@ msgstr "App-Passwort hinzufügen" #~ msgid "Add link card:" #~ msgstr "Link-Karte hinzufügen:" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "Stummgeschaltetes Wort für konfigurierte Einstellungen hinzufügen" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "Füge stummgeschaltete Wörter und Tags hinzu" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "Füge den folgenden DNS-Eintrag zu deiner Domain hinzu:" @@ -307,7 +332,7 @@ msgstr "Füge den folgenden DNS-Eintrag zu deiner Domain hinzu:" msgid "Add to Lists" msgstr "Zu Listen hinzufügen" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "Zu meinen Feeds hinzufügen" @@ -320,17 +345,17 @@ msgstr "Zu meinen Feeds hinzufügen" msgid "Added to list" msgstr "Zur Liste hinzugefügt" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "Zu meinen Feeds hinzugefügt" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "Passe die Anzahl der Likes an, die eine Antwort haben muss, um in deinem Feed angezeigt zu werden." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "Inhalt für Erwachsene" @@ -343,14 +368,29 @@ msgid "Adult content is disabled." msgstr "" #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "Erweitert" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "All deine gespeicherten Feeds an einem Ort." +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -360,13 +400,13 @@ msgstr "Hast du bereits einen Code?" msgid "Already signed in as @{0}" msgstr "Bereits angemeldet als @{0}" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -380,24 +420,24 @@ msgstr "" msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "Alt-Text beschreibt Bilder für blinde und sehbehinderte Nutzer und hilft, den Kontext für alle zu vermitteln." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "Eine E-Mail wurde an {0} gesendet. Sie enthält einen Bestätigungscode, den du unten eingeben kannst." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "Eine E-Mail wurde an deine vorherige Adresse {0} gesendet. Sie enthält einen Bestätigungscode, den du unten eingeben kannst." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "Ein Problem, das hier nicht aufgelistet ist" @@ -410,7 +450,7 @@ msgstr "Ein Problem, das hier nicht aufgelistet ist" msgid "An issue occurred, please try again." msgstr "Es ist ein Problem aufgetreten, bitte versuche es erneut." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" msgstr "" @@ -419,7 +459,7 @@ msgstr "" msgid "and" msgstr "und" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "Tiere" @@ -427,7 +467,7 @@ msgstr "Tiere" msgid "Animated GIF" msgstr "" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "Asoziales Verhalten" @@ -435,34 +475,34 @@ msgstr "Asoziales Verhalten" msgid "App Language" msgstr "App-Sprache" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "App-Passwort gelöscht" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "App-Passwortnamen dürfen nur Buchstaben, Zahlen, Leerzeichen, Bindestriche und Unterstriche enthalten." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "App-Passwortnamen müssen mindestens 4 Zeichen lang sein." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "App-Passwort-Einstellungen" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "App-Passwörter" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "Kennzeichnung \"{0}\" anfechten" @@ -475,7 +515,8 @@ msgstr "Kennzeichnung \"{0}\" anfechten" #~ msgid "Appeal Content Warning" #~ msgstr "Inhaltswarnungseinspruch" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" msgstr "" @@ -483,39 +524,55 @@ msgstr "" #~ msgid "Appeal submitted." #~ msgstr "Anfechtung abgeschickt." -#: src/view/com/util/moderation/LabelInfo.tsx:52 -#~ msgid "Appeal this decision" -#~ msgstr "Einspruch gegen diese Entscheidung" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "Einspruch gegen diese Entscheidung" #: src/view/com/util/moderation/LabelInfo.tsx:56 #~ msgid "Appeal this decision." #~ msgstr "Einspruch gegen diese Entscheidung." -#: src/view/screens/Settings/index.tsx:430 +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "Erscheinungsbild" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "Bist du sicher, dass du das App-Passwort \"{name}\" löschen möchtest?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "Bist du sicher, dass du {0} von deinen Feeds entfernen möchtest?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "Bist du sicher, dass du diesen Entwurf verwerfen möchtest?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "Bist du sicher?" @@ -527,11 +584,11 @@ msgstr "Bist du sicher?" msgid "Are you writing in <0>{0}?" msgstr "Schreibst du auf <0>{0}?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "Kunst" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "Künstlerische oder nicht-erotische Nacktheit." @@ -539,18 +596,20 @@ msgstr "Künstlerische oder nicht-erotische Nacktheit." msgid "At least 3 characters" msgstr "Mindestens 3 Zeichen" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -565,7 +624,7 @@ msgstr "Zurück" msgid "Based on your interest in {interestsText}" msgstr "Ausgehend von deinem Interesse an {interestsText}" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "Grundlagen" @@ -573,17 +632,17 @@ msgstr "Grundlagen" msgid "Birthday" msgstr "Geburtstag" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "Geburtstag:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "Blockieren" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" msgstr "" @@ -596,15 +655,15 @@ msgstr "Konto blockieren" msgid "Block Account?" msgstr "Konto blockieren?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "Konten blockieren" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "Blockliste" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "Diese Konten blockieren?" @@ -634,15 +693,15 @@ msgstr "Blockierte Konten können nicht in deinen Threads antworten, dich erwäh msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "Blockierte Konten können nicht in deinen Threads antworten, dich erwähnen oder anderweitig mit dir interagieren. Du wirst ihre Inhalte nicht sehen und sie werden daran gehindert, deine zu sehen." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "Blockierter Beitrag." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "Blockieren hindert diesen Kennzeichnungsdienst nicht daran, Kennzeichnungen zu deinem Konto hinzuzufügen." -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "Die Blockierung ist öffentlich. Blockierte Konten können nicht in deinen Threads antworten, dich erwähnen oder anderweitig mit dir interagieren." @@ -690,10 +749,15 @@ msgstr "Bilder verwischen" msgid "Blur images and filter from feeds" msgstr "Bilder verwischen und aus Feeds herausfiltern" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "Bücher" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "" + #: src/view/screens/Settings/index.tsx:893 #~ msgid "Build version {0} {1}" #~ msgstr "Build-Version {0} {1}" @@ -734,7 +798,7 @@ msgstr "von dir" msgid "Camera" msgstr "Kamera" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "Darf nur Buchstaben, Zahlen, Leerzeichen, Bindestriche und Unterstriche enthalten. Muss mindestens 4 Zeichen lang sein, darf aber nicht länger als 32 Zeichen sein." @@ -742,11 +806,11 @@ msgstr "Darf nur Buchstaben, Zahlen, Leerzeichen, Bindestriche und Unterstriche #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -758,26 +822,26 @@ msgstr "Darf nur Buchstaben, Zahlen, Leerzeichen, Bindestriche und Unterstriche #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "Abbrechen" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "Abbrechen" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "Konto-Löschung abbrechen" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "Handle ändern abbrechen" @@ -802,34 +866,34 @@ msgstr "Suche abbrechen" msgid "Cancels opening the linked website" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "Ändern" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "Handle ändern" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "Handle ändern" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "Meine E-Mail ändern" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "Passwort ändern" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "Passwort Ändern" @@ -841,24 +905,34 @@ msgstr "Beitragssprache in {0} ändern" #~ msgid "Change your Bluesky password" #~ msgstr "Ändere dein Bluesky-Passwort" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "Deine E-Mail ändern" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" msgstr "" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" msgstr "" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" msgstr "" @@ -879,11 +953,11 @@ msgstr "Meinen Status prüfen" #~ msgid "Check out some recommended users. Follow them to see similar users." #~ msgstr "Schau dir einige empfohlene Nutzer an. Folge ihnen, um ähnliche Nutzer zu sehen." -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "Überprüfe deinen Posteingang auf eine E-Mail mit dem Bestätigungscode, den du unten eingeben musst:" @@ -899,7 +973,7 @@ msgstr "Wähle \"Alle\" oder \"Niemand\"" msgid "Choose Service" msgstr "Service wählen" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "Wähle die Algorithmen aus, welche deine benutzerdefinierten Feeds generieren." @@ -908,6 +982,10 @@ msgstr "Wähle die Algorithmen aus, welche deine benutzerdefinierten Feeds gener #~ msgid "Choose the algorithms that power your experience with custom feeds." #~ msgstr "Wähle die Algorithmen aus, welche dein Erlebnis mit benutzerdefinierten Feeds unterstützen." +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "Wähle deine Haupt-Feeds" @@ -916,19 +994,19 @@ msgstr "Wähle deine Haupt-Feeds" msgid "Choose your password" msgstr "Wähle dein Passwort" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "Alle alten Speicherdaten löschen" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "Alle alten Speicherdaten löschen (danach neu starten)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "Alle Speicherdaten löschen" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "Alle Speicherdaten löschen (danach neu starten)" @@ -937,11 +1015,11 @@ msgstr "Alle Speicherdaten löschen (danach neu starten)" msgid "Clear search query" msgstr "Suchanfrage löschen" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "" @@ -949,6 +1027,10 @@ msgstr "" msgid "click here" msgstr "hier klicken" +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "" + #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" msgstr "Klicke hier, um das Tag-Menü für {tag} zu öffnen" @@ -957,19 +1039,28 @@ msgstr "Klicke hier, um das Tag-Menü für {tag} zu öffnen" #~ msgid "Click here to open tag menu for #{tag}" #~ msgstr "Klicke hier, um das Tag-Menü für #{tag} zu öffnen" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "Klima" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "Schließen" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "Aktiven Dialog schließen" @@ -981,7 +1072,7 @@ msgstr "Meldung schließen" msgid "Close bottom drawer" msgstr "Untere Schublade schließen" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "" @@ -997,6 +1088,10 @@ msgstr "Bild schließen" msgid "Close image viewer" msgstr "Bildbetrachter schließen" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "Fußzeile der Navigation schließen" @@ -1014,7 +1109,7 @@ msgstr "Schließt die untere Navigationsleiste" msgid "Closes password update alert" msgstr "Schließt die Kennwortaktualisierungsmeldung" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "Schließt den Beitragsverfasser und verwirft den Beitragsentwurf" @@ -1026,11 +1121,11 @@ msgstr "Schließt den Betrachter für das Banner" msgid "Collapses list of users for a given notification" msgstr "Klappt die Liste der Benutzer für eine bestimmte Meldung zusammen" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "Komödie" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "Comics" @@ -1039,7 +1134,7 @@ msgstr "Comics" msgid "Community Guidelines" msgstr "Community-Richtlinien" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "Schließe das Onboarding ab und nutze dein Konto" @@ -1047,7 +1142,7 @@ msgstr "Schließe das Onboarding ab und nutze dein Konto" msgid "Complete the challenge" msgstr "Beende die Herausforderung" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "Verfasse Beiträge mit einer Länge von bis zu {MAX_GRAPHEME_LENGTH} Zeichen" @@ -1069,13 +1164,13 @@ msgstr "Konfiguriert in <0>Moderationseinstellungen" #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "Bestätigen" @@ -1085,8 +1180,8 @@ msgstr "Bestätigen" #~ msgid "Confirm" #~ msgstr "Bestätigen" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "Änderung bestätigen" @@ -1094,7 +1189,7 @@ msgstr "Änderung bestätigen" msgid "Confirm content language settings" msgstr "Bestätige die Spracheinstellungen für den Inhalt" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "Bestätige das Löschen des Kontos" @@ -1110,17 +1205,17 @@ msgstr "Bestätige dein Alter:" msgid "Confirm your birthdate" msgstr "Bestätige dein Geburtsdatum" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "Bestätigungscode" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "Verbinden..." @@ -1175,8 +1270,9 @@ msgstr "Hintergrund des Kontextmenüs, klicken, um das Menü zu schließen" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "Fortfahren" @@ -1186,8 +1282,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "Fortfahren mit {0} (aktuell angemeldet)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1201,22 +1298,26 @@ msgstr "Weiter zum nächsten Schritt" msgid "Continue to the next step without following any accounts" msgstr "Fahre mit dem nächsten Schritt fort, ohne Konten zu folgen" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "Kochen" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "Kopiert" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "Die Build-Version wurde in die Zwischenablage kopiert" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1226,15 +1327,15 @@ msgstr "In die Zwischenablage kopiert" msgid "Copied!" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "Kopiert das App-Passwort" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "Kopieren" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "{} kopieren" @@ -1243,7 +1344,7 @@ msgstr "{} kopieren" msgid "Copy code" msgstr "" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "Link zur Liste kopieren" @@ -1256,8 +1357,8 @@ msgstr "Link zum Beitrag kopieren" #~ msgid "Copy link to profile" #~ msgstr "Link zum Profil kopieren" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" msgstr "" @@ -1271,36 +1372,36 @@ msgstr "Beitragstext kopieren" msgid "Copyright Policy" msgstr "Urheberrechtsbestimmungen" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" msgstr "" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "Feed konnte nicht geladen werden" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "Liste konnte nicht geladen werden" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "" -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" msgstr "" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +#~ msgid "Could not unmute chat" +#~ msgstr "" #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "Ein neues Konto erstellen" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "Erstelle ein neues Bluesky-Konto" @@ -1313,7 +1414,11 @@ msgstr "Konto erstellen" msgid "Create an account" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "App-Passwort erstellen" @@ -1322,11 +1427,11 @@ msgstr "App-Passwort erstellen" msgid "Create new account" msgstr "Neues Konto erstellen" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "Meldung für {0} erstellen" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "Erstellt {0}" @@ -1342,7 +1447,7 @@ msgstr "Erstellt {0}" #~ msgid "Creates a card with a thumbnail. The card links to {url}" #~ msgstr "Erzeugt eine Karte mit Vorschaubild und verlinkt auf {url}" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "Kultur" @@ -1351,12 +1456,12 @@ msgstr "Kultur" msgid "Custom" msgstr "Benutzerdefiniert" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "Benutzerdefinierte Domain" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "Benutzerdefinierte Feeds, die von der Community erstellt wurden, bringen dir neue Erfahrungen und helfen dir, die Inhalte zu finden, die du liebst." @@ -1364,8 +1469,8 @@ msgstr "Benutzerdefinierte Feeds, die von der Community erstellt wurden, bringen msgid "Customize media from external sites." msgstr "Passe die Einstellungen für Medien von externen Websites an." -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "Dunkel" @@ -1373,7 +1478,7 @@ msgstr "Dunkel" msgid "Dark mode" msgstr "Dunkelmodus" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "Dunkles Thema" @@ -1381,7 +1486,7 @@ msgstr "Dunkles Thema" msgid "Date of birth" msgstr "" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "" @@ -1389,14 +1494,14 @@ msgstr "" msgid "Debug panel" msgstr "Debug-Panel" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "Löschen" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "Konto löschen" @@ -1404,39 +1509,44 @@ msgstr "Konto löschen" #~ msgid "Delete Account" #~ msgstr "Konto löschen" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" msgstr "" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "App-Passwort löschen" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "App-Passwort löschen?" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" - -#: src/view/screens/ProfileList.tsx:417 -msgid "Delete List" -msgstr "Liste löschen" - -#: src/components/dms/MessageMenu.tsx:119 -msgid "Delete message" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" msgstr "" #: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "" + +#: src/view/screens/ProfileList.tsx:470 +msgid "Delete List" +msgstr "Liste löschen" + +#: src/components/dms/MessageMenu.tsx:122 +msgid "Delete message" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "Mein Konto löschen" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "Mein Konto Löschen…" @@ -1445,7 +1555,7 @@ msgstr "Mein Konto Löschen…" msgid "Delete post" msgstr "Beitrag löschen" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "Diese Liste löschen?" @@ -1457,10 +1567,14 @@ msgstr "Diesen Beitrag löschen?" msgid "Deleted" msgstr "Gelöscht" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "Gelöschter Beitrag." +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1468,23 +1582,27 @@ msgstr "Gelöschter Beitrag." msgid "Description" msgstr "Beschreibung" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" msgstr "" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "Wolltest du etwas sagen?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "Dimmen" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "" @@ -1503,11 +1621,13 @@ msgstr "" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "Deaktiviert" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "Verwerfen" @@ -1515,7 +1635,7 @@ msgstr "Verwerfen" #~ msgid "Discard draft" #~ msgstr "Entwurf verwerfen" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "Entwurf löschen?" @@ -1529,7 +1649,7 @@ msgstr "Apps daran hindern, abgemeldeten Nutzern mein Konto zu zeigen" msgid "Discover new custom feeds" msgstr "Entdecke neue benutzerdefinierte Feeds" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "Entdecke neue Feeds" @@ -1541,7 +1661,7 @@ msgstr "Anzeigename" msgid "Display Name" msgstr "Anzeigename" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "" @@ -1553,11 +1673,11 @@ msgstr "Beinhaltet keine Nacktheit." msgid "Doesn't begin or end with a hyphen" msgstr "Beginnt oder endet nicht mit einem Bindestrich" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "Domain verifiziert!" @@ -1565,23 +1685,23 @@ msgstr "Domain verifiziert!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "Erledigt" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1603,8 +1723,8 @@ msgstr "Erledigt{extraText}" #~ msgid "Download Bluesky account data (repository)" #~ msgstr "Öffnet ein Modal zum Herunterladen deiner Bluesky-Kontodaten (Kontodepot)" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "CAR-Datei herunterladen" @@ -1616,7 +1736,7 @@ msgstr "Ablegen zum Hinzufügen von Bildern" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "Aufgrund der Apple-Richtlinien können Inhalte für Erwachsene erst nach Abschluss der Registrierung auf der Website aktiviert werden." -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "z.B. alice" @@ -1624,7 +1744,7 @@ msgstr "z.B. alice" msgid "e.g. Alice Roberts" msgstr "z.B. Alice Roberts" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "z.B. alice.com" @@ -1661,7 +1781,7 @@ msgctxt "action" msgid "Edit" msgstr "Bearbeiten" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "Avatar bearbeiten" @@ -1671,7 +1791,7 @@ msgstr "Avatar bearbeiten" msgid "Edit image" msgstr "Bild bearbeiten" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "Details der Liste bearbeiten" @@ -1680,8 +1800,8 @@ msgid "Edit Moderation List" msgstr "Moderationsliste bearbeiten" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "Meine Feeds bearbeiten" @@ -1689,18 +1809,18 @@ msgstr "Meine Feeds bearbeiten" msgid "Edit my profile" msgstr "Mein Profil bearbeiten" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "Profil bearbeiten" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "Profil bearbeiten" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "Gespeicherte Feeds bearbeiten" @@ -1716,16 +1836,16 @@ msgstr "Bearbeite deinen Anzeigenamen" msgid "Edit your profile description" msgstr "Bearbeite deine Profilbeschreibung" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "Bildung" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "E-Mail" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "" @@ -1733,20 +1853,20 @@ msgstr "" msgid "Email address" msgstr "E-Mail-Adresse" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "E-Mail aktualisiert" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "E-Mail aktualisiert" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "E-Mail verifiziert" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "E-Mail:" @@ -1794,7 +1914,7 @@ msgstr "Externe Medien aktivieren" msgid "Enable media players for" msgstr "Aktiviere Medienplayer für" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "Aktiviere diese Einstellung, um nur Antworten von Personen zu sehen, denen du folgst." @@ -1802,6 +1922,8 @@ msgstr "Aktiviere diese Einstellung, um nur Antworten von Personen zu sehen, den msgid "Enable this source only" msgstr "Nur von dieser Seite erlauben" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "Aktiviert" @@ -1810,7 +1932,11 @@ msgstr "Aktiviert" msgid "End of feed" msgstr "Ende des Feeds" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "Gebe einen Namen für dieses App-Passwort ein" @@ -1818,12 +1944,12 @@ msgstr "Gebe einen Namen für dieses App-Passwort ein" msgid "Enter a password" msgstr "Gib ein Passwort ein" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "Gib ein Wort oder einen Tag ein" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "Bestätigungscode eingeben" @@ -1831,7 +1957,7 @@ msgstr "Bestätigungscode eingeben" msgid "Enter the code you received to change your password." msgstr "Gib den Code ein, welchen du erhalten hast, um dein Passwort zu ändern." -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "Gib die Domain ein, die du verwenden möchtest" @@ -1848,11 +1974,11 @@ msgstr "Gib dein Geburtsdatum ein" msgid "Enter your email address" msgstr "Gib deine E-Mail-Adresse ein" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "Gib oben deine neue E-Mail-Adresse ein" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "Gib unten deine neue E-Mail-Adresse ein." @@ -1860,11 +1986,15 @@ msgstr "Gib unten deine neue E-Mail-Adresse ein." msgid "Enter your username and password" msgstr "Gib deinen Benutzernamen und dein Passwort ein" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "Fehler beim Empfang der Captcha-Antwort." -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "Fehler:" @@ -1873,15 +2003,30 @@ msgstr "Fehler:" msgid "Everybody" msgstr "Alle" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "Übermäßig viele Erwähnungen oder Antworten" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "Verlässt den Vorgang der Accountlöschung" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "Verlässt den Vorgang des Handle-Wechsels" @@ -1915,12 +2060,12 @@ msgstr "" msgid "Explicit sexual images." msgstr "" -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "Exportiere meine Daten" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "Exportiere meine Daten" @@ -1936,16 +2081,16 @@ msgstr "Externe Medien können es Websites ermöglichen, Informationen über dic #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "Externe Medienpräferenzen" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "Externe Medienpräferenzen" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "Das App-Passwort konnte nicht erstellt werden." @@ -1953,7 +2098,7 @@ msgstr "Das App-Passwort konnte nicht erstellt werden." msgid "Failed to create the list. Check your internet connection and try again." msgstr "Die Liste konnte nicht erstellt werden. Überprüfe deine Internetverbindung und versuche es erneut." -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" msgstr "" @@ -1961,48 +2106,69 @@ msgstr "" msgid "Failed to delete post, please try again" msgstr "Beitrag konnte nicht gelöscht werden, bitte versuche es erneut" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "" + #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 #~ msgid "Failed to load recommended feeds" #~ msgstr "Empfohlene Feeds konnten nicht geladen werden" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "Das Speichern des Bildes ist fehlgeschlagen: {0}" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "Feed" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "Feed von {0}" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "Feed offline" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "Feedback" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "Feeds" @@ -2010,7 +2176,7 @@ msgstr "Feeds" #~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." #~ msgstr "Feeds werden von Nutzern erstellt, um Inhalte zu kuratieren. Wähle einige Feeds aus, die du interessant findest." -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "Feeds sind benutzerdefinierte Algorithmen, die Nutzer mit ein wenig Programmierkenntnisse erstellen. <0/> für mehr Informationen." @@ -2018,15 +2184,19 @@ msgstr "Feeds sind benutzerdefinierte Algorithmen, die Nutzer mit ein wenig Prog msgid "Feeds can be topical as well!" msgstr "Die Feeds können auch auf einem Thema basieren!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "Dateiinhalt" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "Aus Feeds filtern" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "Abschließen" @@ -2052,7 +2222,7 @@ msgstr "" #~ msgid "Finding similar accounts..." #~ msgstr "Suche nach ähnlichen Konten..." -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "Passe die Inhalte auf Deinem Following-Feed an." @@ -2060,11 +2230,11 @@ msgstr "Passe die Inhalte auf Deinem Following-Feed an." msgid "Fine-tune the discussion threads." msgstr "Passe die Diskussionsstränge an." -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "Fitness" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "Flexibel" @@ -2077,10 +2247,10 @@ msgstr "Horizontal drehen" msgid "Flip vertically" msgstr "Vertikal drehen" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -2092,7 +2262,7 @@ msgid "Follow" msgstr "Folgen" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "{0} folgen" @@ -2126,7 +2296,7 @@ msgstr "Gefolgt von {0}" msgid "Followed users" msgstr "Benutzer, denen ich folge" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "Nur Benutzer, denen ich folge" @@ -2139,28 +2309,30 @@ msgstr "folgte dir" msgid "Followers" msgstr "Follower" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "Folge ich" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "ich folge {0}" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "Following-Feed-Einstellungen" @@ -2172,15 +2344,15 @@ msgstr "Folgt dir" msgid "Follows You" msgstr "Folgt dir" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "Essen" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "Aus Sicherheitsgründen müssen wir dir einen Bestätigungscode an deine E-Mail-Adresse schicken." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "Aus Sicherheitsgründen kannst du dies nicht erneut ansehen. Wenn du dieses Passwort verlierst, musst du ein neues generieren." @@ -2197,15 +2369,15 @@ msgstr "Aus Sicherheitsgründen kannst du dies nicht erneut ansehen. Wenn du die msgid "Forgot Password" msgstr "Passwort vergessen" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "Passwort vergessen?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "Vergessen?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "Postet oft unerwünschte Inhalte" @@ -2213,7 +2385,7 @@ msgstr "Postet oft unerwünschte Inhalte" msgid "From @{sanitizedAuthor}" msgstr "Von @{sanitizedAuthor}" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "Aus <0/>" @@ -2222,12 +2394,20 @@ msgstr "Aus <0/>" msgid "Gallery" msgstr "Galerie" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "Los geht's" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "Eklatante Verstöße gegen Gesetze oder Nutzungsbedingungen" @@ -2236,9 +2416,9 @@ msgstr "Eklatante Verstöße gegen Gesetze oder Nutzungsbedingungen" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "Gehe zurück" @@ -2246,13 +2426,14 @@ msgstr "Gehe zurück" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "Gehe zurück" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2272,16 +2453,20 @@ msgstr "" #~ msgid "Go to @{queryMaybeHandle}" #~ msgstr "Gehe zu @{queryMaybeHandle}" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "Gehe zum nächsten" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" msgstr "" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" msgstr "" @@ -2289,7 +2474,7 @@ msgstr "" msgid "Graphic Media" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "Handle" @@ -2297,7 +2482,7 @@ msgstr "Handle" msgid "Haptics" msgstr "" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "" @@ -2305,7 +2490,7 @@ msgstr "" msgid "Hashtag" msgstr "Hashtag" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "Hashtag: #{tag}" @@ -2314,10 +2499,14 @@ msgid "Having trouble?" msgstr "Hast du Probleme?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "Hilfe" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "Hier sind einige Konten, denen du folgen könntest" @@ -2330,13 +2519,13 @@ msgstr "Hier sind einige beliebte thematische Feeds. Du kannst so vielen folgen, msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "Hier sind einige thematische Feeds, die auf deinen Interessen basieren: {interestsText}. Du kannst so vielen Feeds folgen, wie du möchtest." -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "Hier ist dein App-Passwort." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2358,7 +2547,7 @@ msgid "Hide post" msgstr "Beitrag ausblenden" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "Den Inhalt ausblenden" @@ -2374,23 +2563,23 @@ msgstr "Benutzerliste ausblenden" #~ msgid "Hides posts from {0} in your feed" #~ msgstr "Blendet Beiträge von {0} in Deinem Feed aus" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "Hmm, beim Kontakt mit dem Feed-Server ist ein Problem aufgetreten. Bitte informiere den Eigentümer des Feeds über dieses Problem." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "Hmm, der Feed-Server scheint falsch konfiguriert zu sein. Bitte informiere den Eigentümer des Feeds über dieses Problem." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "Hmm, der Feed-Server scheint offline zu sein. Bitte informiere den Eigentümer des Feeds über dieses Problem." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "Hmm, der Feed-Server hat eine schlechte Antwort gegeben. Bitte informiere den Eigentümer des Feeds über dieses Problem." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "Hmm, wir haben Probleme, diesen Feed zu finden. Möglicherweise wurde er gelöscht." @@ -2402,22 +2591,22 @@ msgstr "" msgid "Hmmmm, we couldn't load that moderation service." msgstr "" -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "Home" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "Hosting-Anbieter" @@ -2425,25 +2614,30 @@ msgstr "Hosting-Anbieter" msgid "How should we open this link?" msgstr "Wie sollen wir diesen Link öffnen?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "Ich habe einen Code" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "Ich habe einen Bestätigungscode" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "Ich habe meine eigene Domain" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "Schaltet den erweiterten Status des Alt-Textes um, wenn dieser lang ist" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "Wenn keine ausgewählt werden, sind sie für alle Altersgruppen geeignet." @@ -2451,7 +2645,7 @@ msgstr "Wenn keine ausgewählt werden, sind sie für alle Altersgruppen geeignet msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "" -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "Wenn du diese Liste löschst, kannst du sie nicht wiederherstellen." @@ -2463,7 +2657,7 @@ msgstr "Wenn du diesen Post löschst, kannst du ihn nicht wiederherstellen." msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "Wenn du dein Passwort ändern möchtest, senden wir dir einen Code, um zu bestätigen, dass es sich um dein Konto handelt." -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "Illegal und dringend" @@ -2471,7 +2665,7 @@ msgstr "Illegal und dringend" msgid "Image" msgstr "Bild" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "Bild-Alt-Text" @@ -2480,15 +2674,19 @@ msgstr "Bild-Alt-Text" #~ msgid "Image options" #~ msgstr "Bild-Optionen" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "Gib den Code ein, den du per E-Mail erhalten hast, um dein Passwort zurückzusetzen." -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "Bestätigungscode für die Kontolöschung eingeben" @@ -2500,7 +2698,7 @@ msgstr "Bestätigungscode für die Kontolöschung eingeben" #~ msgid "Input invite code to proceed" #~ msgstr "Einladungscode eingeben, um fortzufahren" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "Namen für das App-Passwort eingeben" @@ -2508,27 +2706,27 @@ msgstr "Namen für das App-Passwort eingeben" msgid "Input new password" msgstr "Neues Passwort eingeben" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "Passwort für die Kontolöschung eingeben" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "Passwort, das an {identifier} gebunden ist, eingeben" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "Benutzernamen oder E-Mail-Adresse eingeben, die du bei der Anmeldung verwendet hast" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "Gib dein Passwort ein" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "" @@ -2536,16 +2734,20 @@ msgstr "" msgid "Input your user handle" msgstr "Gib deinen Handle ein" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "Ungültiger oder nicht unterstützter Beitragrekord" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "Ungültiger Benutzername oder Passwort" @@ -2557,7 +2759,7 @@ msgstr "Einen Freund einladen" msgid "Invite code" msgstr "Einladungscode" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "Einladungscode nicht akzeptiert. Überprüfe, ob du ihn richtig eingegeben hast und versuche es erneut." @@ -2577,7 +2779,7 @@ msgstr "Es zeigt die Beiträge der Personen an, denen du folgst, sobald sie ersc msgid "Jobs" msgstr "Jobs" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "Journalismus" @@ -2597,7 +2799,7 @@ msgstr "" msgid "Labels" msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "" @@ -2605,11 +2807,11 @@ msgstr "" #~ msgid "labels have been placed on this {labelTarget}" #~ msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "" @@ -2617,7 +2819,7 @@ msgstr "" msgid "Language selection" msgstr "Sprachauswahl" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "Spracheinstellungen" @@ -2626,7 +2828,7 @@ msgstr "Spracheinstellungen" msgid "Language Settings" msgstr "Spracheinstellungen" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "Sprachen" @@ -2652,7 +2854,7 @@ msgstr "Mehr erfahren" msgid "Learn more about the moderation applied to this content." msgstr "" -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "Erfahre mehr über diese Warnung" @@ -2665,13 +2867,20 @@ msgstr "Erfahre mehr darüber, was auf Bluesky öffentlich ist." msgid "Learn more." msgstr "" -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" msgstr "" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" msgstr "" @@ -2687,7 +2896,7 @@ msgstr "Bluesky verlassen" msgid "left to go." msgstr "noch übrig." -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "Der Legacy-Speicher wurde gelöscht, du musst die App jetzt neu starten." @@ -2696,7 +2905,7 @@ msgstr "Der Legacy-Speicher wurde gelöscht, du musst die App jetzt neu starten. msgid "Let's get your password reset!" msgstr "Lass uns dein Passwort zurücksetzen!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "Los geht's!" @@ -2705,7 +2914,7 @@ msgstr "Los geht's!" #~ msgid "Library" #~ msgstr "Bibliothek" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "Licht" @@ -2713,8 +2922,8 @@ msgstr "Licht" #~ msgid "Like" #~ msgstr "Liken" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "Diesen Feed liken" @@ -2756,7 +2965,7 @@ msgstr "hat deinen Beitrag geliked" msgid "Likes" msgstr "Likes" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "Likes für diesen Beitrag" @@ -2768,19 +2977,19 @@ msgstr "Liste" msgid "List Avatar" msgstr "Listenbild" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "Liste blockiert" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "Liste von {0}" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "Liste gelöscht" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "Liste stummgeschaltet" @@ -2788,23 +2997,27 @@ msgstr "Liste stummgeschaltet" msgid "List Name" msgstr "Name der Liste" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "Liste entblockiert" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "Listenstummschaltung aufgehoben" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "Listen" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "" + #: src/view/com/post-thread/PostThread.tsx:333 #: src/view/com/post-thread/PostThread.tsx:341 #~ msgid "Load more posts" @@ -2815,9 +3028,9 @@ msgid "Load new notifications" msgstr "Neue Mitteilungen laden" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "Neue Beiträge laden" @@ -2844,7 +3057,7 @@ msgstr "Sichtbarkeit für abgemeldete Benutzer" msgid "Login to account that is not listed" msgstr "Anmeldung bei einem Konto, das nicht aufgelistet ist" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "" @@ -2852,14 +3065,35 @@ msgstr "" msgid "Looks like XXXXX-XXXXX" msgstr "Im Format XXXXX-XXXXX" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "Vergewissere dich, dass du auch wirklich dorthin gehen willst!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "Verwalte deine stummgeschalteten Wörter und Tags" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "" + #: src/view/com/auth/create/Step2.tsx:118 #~ msgid "May not be longer than 253 characters" #~ msgstr "Darf nicht länger als 253 Zeichen sein" @@ -2886,44 +3120,50 @@ msgstr "Erwähnte Benutzer" msgid "Menu" msgstr "Menü" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "Nachricht vom Server: {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" msgstr "" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" +#~ msgid "Messaging settings" +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "Irreführender Account" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "Moderation" @@ -2936,13 +3176,13 @@ msgstr "" msgid "Moderation list by {0}" msgstr "Moderationsliste von {0}" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "Moderationsliste von <0/>" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "Moderationsliste von dir" @@ -2963,7 +3203,7 @@ msgstr "Moderationslisten" msgid "Moderation Lists" msgstr "Moderationslisten" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "Moderationseinstellungen" @@ -2984,11 +3224,11 @@ msgstr "Der Moderator hat beschlossen, eine allgemeine Warnung vor dem Inhalt au msgid "More" msgstr "Mehr" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "Mehr Feeds" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "Mehr Optionen" @@ -3013,7 +3253,7 @@ msgstr "{truncatedTag} stummschalten" msgid "Mute Account" msgstr "Konto stummschalten" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "Konten stummschalten" @@ -3021,24 +3261,29 @@ msgstr "Konten stummschalten" msgid "Mute all {displayTag} posts" msgstr "Alle {displayTag}-Beiträge stummschalten" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "Nur in Tags stummschalten" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "In Text und Tags stummschalten" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "Liste stummschalten" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "Diese Konten stummschalten?" @@ -3046,11 +3291,11 @@ msgstr "Diese Konten stummschalten?" #~ msgid "Mute this List" #~ msgstr "Diese Liste stummschalten" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "Dieses Wort in Beitragstexten und Tags stummschalten" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "Dieses Wort nur in Tags stummschalten" @@ -3089,7 +3334,7 @@ msgstr "Stummgeschaltet über \"{0}\"" msgid "Muted words & tags" msgstr "Stummgeschaltete Wörter und Tags" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "Stummschaltung ist privat. Stummgeschaltete Konten können mit dir interagieren, aber du siehst ihre Beiträge nicht und erhältst keine Mitteilungen von ihnen." @@ -3098,19 +3343,19 @@ msgstr "Stummschaltung ist privat. Stummgeschaltete Konten können mit dir inter msgid "My Birthday" msgstr "Mein Geburtstag" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "Meine Feeds" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "Mein Profil" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "Meine gespeicherten Feeds" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "Meine gespeicherten Feeds" @@ -3118,7 +3363,7 @@ msgstr "Meine gespeicherten Feeds" #~ msgid "my-server.com" #~ msgstr "mein-server.de" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "Name" @@ -3127,27 +3372,27 @@ msgstr "Name" msgid "Name is required" msgstr "Name ist erforderlich" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "Natur" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "Navigiert zum nächsten Bildschirm" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "Navigiert zu Deinem Profil" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "" @@ -3161,7 +3406,7 @@ msgstr "" #~ msgid "Never lose access to your followers and data." #~ msgstr "Verliere nie den Zugriff auf deine Follower und Daten." -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "Verliere nie den Zugriff auf deine Follower oder Daten." @@ -3169,7 +3414,7 @@ msgstr "Verliere nie den Zugriff auf deine Follower oder Daten." #~ msgid "Nevermind" #~ msgstr "Egal" -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "" @@ -3182,12 +3427,16 @@ msgstr "Neu" msgid "New" msgstr "Neu" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" msgstr "" +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" msgstr "Neue Moderationsliste" @@ -3200,22 +3449,22 @@ msgstr "Neues Passwort" msgid "New Password" msgstr "Neues Passwort" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "Neuer Beitrag" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "Neuer Beitrag" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "Neuer Beitrag" @@ -3228,14 +3477,14 @@ msgstr "Neue Benutzerliste" msgid "Newest replies first" msgstr "Neueste Antworten zuerst" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "Aktuelles" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3253,29 +3502,29 @@ msgstr "Nächste" msgid "Next image" msgstr "Nächstes Bild" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "Nein" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "Keine Beschreibung" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "{0} wird nicht mehr gefolgt" @@ -3283,25 +3532,39 @@ msgstr "{0} wird nicht mehr gefolgt" msgid "No longer than 253 characters" msgstr "Nicht länger als 253 Zeichen" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" msgstr "" +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "" + #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "Noch keine Mitteilungen!" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "Kein Ergebnis" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "Keine Ergebnisse gefunden" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "Keine Ergebnisse für \"{query}\" gefunden" @@ -3311,13 +3574,13 @@ msgstr "Keine Ergebnisse für \"{query}\" gefunden" msgid "No results found for {query}" msgstr "Keine Ergebnisse für {query} gefunden" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "" #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "" #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3328,6 +3591,10 @@ msgstr "Nein danke" msgid "Nobody" msgstr "Niemand" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3346,8 +3613,8 @@ msgstr "Nicht-sexuelle Nacktheit" msgid "Not Found" msgstr "Nicht gefunden" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "Im Moment nicht" @@ -3361,25 +3628,37 @@ msgstr "" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "Hinweis: Bluesky ist ein offenes und öffentliches Netzwerk. Diese Einstellung schränkt lediglich die Sichtbarkeit deiner Inhalte in der Bluesky-App und auf der Website ein. Andere Apps respektieren diese Einstellung möglicherweise nicht. Deine Inhalte werden abgemeldeten Nutzern möglicherweise weiterhin in anderen Apps und Websites angezeigt." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "Mitteilungen" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "Nacktheit" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "" @@ -3395,17 +3674,17 @@ msgstr "" msgid "Off" msgstr "Aus" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "Oh nein!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "Oh nein, da ist etwas schief gelaufen." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "OK" @@ -3417,14 +3696,18 @@ msgstr "Okay" msgid "Oldest replies first" msgstr "Älteste Antworten zuerst" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "Onboarding zurücksetzen" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "Bei einem oder mehreren Bildern fehlt der Alt-Text." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "Nur {0} kann antworten." @@ -3433,37 +3716,50 @@ msgstr "Nur {0} kann antworten." msgid "Only contains letters, numbers, and hyphens" msgstr "Enthält nur Buchstaben, Nummern und Bindestriche" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "Ups, da ist etwas schief gelaufen!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "Huch!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "Öffnen" +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "" + #: src/view/screens/Moderation.tsx:75 #~ msgid "Open content filtering settings" #~ msgstr "Inhaltsfiltereinstellungen öffnen" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "Emoji-Picker öffnen" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "Links mit In-App-Browser öffnen" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "Einstellungen für stummgeschaltete Wörter und Tags öffnen" @@ -3480,12 +3776,12 @@ msgstr "Navigation öffnen" msgid "Open post options menu" msgstr "Beitragsoptionsmenü öffnen" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "Geschichtenbuch öffnen" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "" @@ -3493,7 +3789,7 @@ msgstr "" msgid "Opens {numItems} options" msgstr "Öffnet {numItems} Optionen" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "" @@ -3509,11 +3805,15 @@ msgstr "Öffnet eine erweiterte Liste der Benutzer in dieser Mitteilung" msgid "Opens camera on device" msgstr "Öffnet die Kamera auf dem Gerät" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "Öffnet den Beitragsverfasser" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "Öffnet die konfigurierbaren Spracheinstellungen" @@ -3525,7 +3825,7 @@ msgstr "Öffnet die Gerätefotogalerie" #~ msgid "Opens editor for profile display name, avatar, background image, and description" #~ msgstr "Öffnet den Editor für Profilanzeige, Avatar, Hintergrundbild und Beschreibung" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "Öffnet die Einstellungen für externe eingebettete Medien" @@ -3555,7 +3855,7 @@ msgstr "" msgid "Opens list of invite codes" msgstr "Öffnet die Liste der Einladungscodes" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "" @@ -3563,44 +3863,44 @@ msgstr "" #~ msgid "Opens modal for account deletion confirmation. Requires email code." #~ msgstr "Öffnet ein Modal, um die Löschung des Kontos zu bestätigen. Erfordert einen E-Mail-Code." -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "Öffnet das Modal für die Verwendung einer benutzerdefinierten Domain" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "Öffnet die Moderationseinstellungen" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "Öffnet das Formular zum Zurücksetzen des Passworts" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "Öffnet den Bildschirm zum Bearbeiten gespeicherten Feeds" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "Öffnet den Bildschirm mit allen gespeicherten Feeds" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "" @@ -3608,7 +3908,7 @@ msgstr "" #~ msgid "Opens the app password settings page" #~ msgstr "Öffnet die Einstellungsseite für das App-Passwort" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "" @@ -3620,20 +3920,20 @@ msgstr "" msgid "Opens the linked website" msgstr "" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "Öffnet die Geschichtenbuch" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "Öffnet die Systemprotokollseite" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "Öffnet die Thread-Einstellungen" @@ -3641,7 +3941,8 @@ msgstr "Öffnet die Thread-Einstellungen" msgid "Option {0} of {numItems}" msgstr "Option {0} von {numItems}" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "" @@ -3649,7 +3950,7 @@ msgstr "" msgid "Or combine these options:" msgstr "Oder kombiniere diese Optionen:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "" @@ -3661,7 +3962,11 @@ msgstr "Anderes Konto" msgid "Other..." msgstr "Andere..." -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "Seite nicht gefunden" @@ -3670,10 +3975,10 @@ msgstr "Seite nicht gefunden" msgid "Page Not Found" msgstr "Seite nicht gefunden" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "Passwort" @@ -3705,35 +4010,39 @@ msgstr "Personen gefolgt von @{0}" msgid "People following @{0}" msgstr "Personen, die @{0} folgen" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "Die Erlaubnis zum Zugriff auf die Kamerarolle ist erforderlich." -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "Die Berechtigung zum Zugriff auf die Kamerarolle wurde verweigert. Bitte aktiviere sie in deinen Systemeinstellungen." -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "Haustiere" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "Bilder, die für Erwachsene bestimmt sind." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "An die Startseite anheften" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "Angeheftete Feeds" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "" @@ -3742,6 +4051,11 @@ msgstr "" msgid "Play {0}" msgstr "{0} abspielen" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" msgstr "" @@ -3755,47 +4069,52 @@ msgstr "Video abspielen" msgid "Plays the GIF" msgstr "Spielt das GIF ab" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "Bitte wähle deinen Handle." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "Bitte wähle dein Passwort." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "Bitte fülle das Verifizierungs-Captcha aus." -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "Bitte bestätige deine E-Mail, bevor du sie änderst. Dies ist eine vorübergehende Anforderung, während E-Mail-Aktualisierungstools hinzugefügt werden, und wird bald wieder entfernt." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "Bitte gib einen Namen für dein App-Passwort ein. Nur Leerzeichen sind nicht erlaubt." -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "Bitte gib einen eindeutigen Namen für dieses App-Passwort ein oder verwende unseren zufällig generierten Namen." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "Bitte gib ein gültiges Wort, einen Tag oder eine Phrase zum Stummschalten ein" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "Bitte gib deine E-Mail ein." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "Bitte gib auch dein Passwort ein:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "" + #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" msgstr "" @@ -3804,19 +4123,19 @@ msgstr "" #~ msgid "Please tell us why you think this content warning was incorrectly applied!" #~ msgstr "Bitte teile uns mit, warum du denkst, dass diese Inhaltswarnung falsch angewendet wurde!" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "Bitte verifiziere deine E-Mail" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "Bitte warte, bis deine Link-karte vollständig geladen ist" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "Politik" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "Porno" @@ -3824,18 +4143,18 @@ msgstr "Porno" #~ msgid "Pornography" #~ msgstr "" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "Beitrag" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "Beitrag" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "Beitrag von {0}" @@ -3849,7 +4168,7 @@ msgstr "Beitrag von @{0}" msgid "Post deleted" msgstr "Beitrag gelöscht" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "Beitrag ausgeblendet" @@ -3871,8 +4190,8 @@ msgstr "Beitragssprache" msgid "Post Languages" msgstr "Beitragssprachen" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "Beitrag nicht gefunden" @@ -3884,11 +4203,11 @@ msgstr "Beiträge" msgid "Posts" msgstr "Beiträge" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "Beiträge können basierend auf ihrem Text, ihren Tags oder beidem stummgeschaltet werden." -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "Ausgeblendete Beiträge" @@ -3896,21 +4215,25 @@ msgstr "Ausgeblendete Beiträge" msgid "Potentially Misleading Link" msgstr "Potenziell irreführender Link" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -3924,7 +4247,7 @@ msgstr "Primäre Sprache" msgid "Prioritize Your Follows" msgstr "Priorisiere deine Follower" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "Privatsphäre" @@ -3932,25 +4255,29 @@ msgstr "Privatsphäre" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "Datenschutzerklärung" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "Wird bearbeitet..." -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "Profil" @@ -3958,11 +4285,11 @@ msgstr "Profil" msgid "Profile updated" msgstr "Profil aktualisiert" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "Schütze dein Konto, indem du deine E-Mail bestätigst." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "Öffentlich" @@ -3974,11 +4301,11 @@ msgstr "Öffentliche, gemeinsam nutzbare Listen von Nutzern, die du stummschalte msgid "Public, shareable lists which can drive feeds." msgstr "Öffentliche, gemeinsam nutzbare Listen, die Feeds steuern können." -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "Beitrag veröffentlichen" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "Antwort veröffentlichen" @@ -4004,6 +4331,14 @@ msgstr "Zufällig (alias \"Poster's Roulette\")" msgid "Ratios" msgstr "Verhältnisse" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "" @@ -4016,12 +4351,20 @@ msgstr "" #~ msgid "Recommended Users" #~ msgstr "Empfohlene Nutzer" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "Entfernen" @@ -4033,7 +4376,7 @@ msgstr "Entfernen" msgid "Remove account" msgstr "Konto entfernen" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "" @@ -4041,22 +4384,25 @@ msgstr "" msgid "Remove Banner" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "Feed entfernen" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "Aus meinen Feeds entfernen" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "" @@ -4068,7 +4414,7 @@ msgstr "Bild entfernen" msgid "Remove image preview" msgstr "Bildvorschau entfernen" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "Stummgeschaltetes Wort aus deiner Liste entfernen" @@ -4084,7 +4430,7 @@ msgstr "Repost entfernen" #~ msgid "Remove this feed from my feeds?" #~ msgstr "Diesen Feed aus meinen Feeds entfernen?" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "" @@ -4097,11 +4443,13 @@ msgstr "" msgid "Removed from list" msgstr "Aus der Liste entfernt" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "Aus meinen Feeds entfernt" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "" @@ -4113,6 +4461,11 @@ msgstr "Entfernt Standard-Miniaturansicht von {0}" msgid "Removes quoted post" msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "Antworten" @@ -4121,12 +4474,12 @@ msgstr "Antworten" msgid "Replies to this thread are disabled" msgstr "Antworten auf diesen Thread sind deaktiviert" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "Antworten" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "Antwortfilter" @@ -4137,12 +4490,14 @@ msgstr "Antwortfilter" #~ msgstr "Antwort an <0/>" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" msgstr "" @@ -4152,28 +4507,34 @@ msgstr "" #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "Konto melden" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "Feed melden" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "Liste melden" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" msgstr "" @@ -4182,30 +4543,36 @@ msgstr "" msgid "Report post" msgstr "Beitrag melden" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "Repost" @@ -4223,7 +4590,7 @@ msgstr "Reposten oder Beitrag zitieren" msgid "Reposted By" msgstr "Repostet von" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "Repostet von {0}" @@ -4231,7 +4598,7 @@ msgstr "Repostet von {0}" #~ msgid "Reposted by <0/>" #~ msgstr "Repostet von <0/>" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "" @@ -4239,12 +4606,12 @@ msgstr "" msgid "reposted your post" msgstr "hat deinen Beitrag repostet" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "Reposts von diesem Beitrag" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "Änderung anfordern" @@ -4257,7 +4624,7 @@ msgstr "Einen Code anfordern" msgid "Require alt text before posting" msgstr "Alt-Text vor der Veröffentlichung erforderlich machen" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "" @@ -4265,8 +4632,8 @@ msgstr "" msgid "Required for this provider" msgstr "Für diesen Anbieter erforderlich" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "" @@ -4282,8 +4649,8 @@ msgstr "Code zurücksetzen" #~ msgid "Reset onboarding" #~ msgstr "Onboarding zurücksetzen" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "Onboarding-Status zurücksetzen" @@ -4295,20 +4662,20 @@ msgstr "Passwort zurücksetzen" #~ msgid "Reset preferences" #~ msgstr "Einstellungen zurücksetzen" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "Einstellungen zurücksetzen" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "Setzt den Onboarding-Status zurück" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "Einstellungen zurücksetzen" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "Versucht die Anmeldung erneut" @@ -4317,13 +4684,14 @@ msgstr "Versucht die Anmeldung erneut" msgid "Retries the last action, which errored out" msgstr "Wiederholung der letzten Aktion, bei der ein Fehler aufgetreten ist" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 @@ -4331,11 +4699,11 @@ msgid "Retry" msgstr "Wiederholen" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" +#~ msgid "Retry." +#~ msgstr "" #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "Zurück zur vorherigen Seite" @@ -4344,26 +4712,26 @@ msgid "Returns to home page" msgstr "" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "Speichern" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "Speichern" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "Alt-Text speichern" @@ -4375,7 +4743,7 @@ msgstr "" msgid "Save Changes" msgstr "Änderungen speichern" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "Handle-Änderung speichern" @@ -4383,16 +4751,16 @@ msgstr "Handle-Änderung speichern" msgid "Save image crop" msgstr "Bildausschnitt speichern" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "Gespeicherte Feeds" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" msgstr "" @@ -4400,7 +4768,8 @@ msgstr "" #~ msgid "Saved to your camera roll." #~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "" @@ -4408,7 +4777,7 @@ msgstr "" msgid "Saves any changes to your profile" msgstr "Speichert alle Änderungen an Deinem Profil" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "Speichert Handle-Änderung in {handle}" @@ -4416,16 +4785,20 @@ msgstr "Speichert Handle-Änderung in {handle}" msgid "Saves image crop settings" msgstr "" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "Wissenschaft" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "Zum Anfang blättern" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4433,12 +4806,12 @@ msgstr "Zum Anfang blättern" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "Suche" @@ -4459,8 +4832,8 @@ msgid "Search for all posts with tag {displayTag}" msgstr "Nach allen Beiträgen mit dem Tag {displayTag} suchen" #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "" #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4472,7 +4845,8 @@ msgstr "Nach Nutzern suchen" msgid "Search GIFs" msgstr "" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" msgstr "" @@ -4480,7 +4854,7 @@ msgstr "" msgid "Search Tenor" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "Sicherheitsschritt erforderlich" @@ -4501,11 +4875,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "Siehe <0>{displayTag}-Beiträge von diesem Benutzer" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "Siehe diesen Leitfaden" @@ -4517,10 +4891,22 @@ msgstr "Siehe diesen Leitfaden" msgid "Select {item}" msgstr "Wähle {item}" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "Von einem bestehenden Konto auswählen" @@ -4529,7 +4915,7 @@ msgstr "Von einem bestehenden Konto auswählen" msgid "Select GIF" msgstr "" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "" @@ -4554,7 +4940,11 @@ msgstr "Wähle Option {i} von {numItems}" msgid "Select some accounts below to follow" msgstr "Wähle unten einige Konten aus, denen du folgen möchtest" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "" @@ -4586,7 +4976,7 @@ msgstr "" msgid "Select your date of birth" msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "Wähle aus den folgenden Optionen deine Interessen aus" @@ -4602,32 +4992,38 @@ msgstr "Wähle deine primären algorithmischen Feeds" msgid "Select your secondary algorithmic feeds" msgstr "Wähle deine sekundären algorithmischen Feeds" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "Bestätigungs-E-Mail senden" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "E-Mail senden" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "E-Mail senden" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "Feedback senden" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "" @@ -4639,12 +5035,12 @@ msgstr "" msgid "Send report to {0}" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "Sendet eine E-Mail mit Bestätigungscode für die Kontolöschung" @@ -4694,15 +5090,15 @@ msgstr "Neues Passwort festlegen" #~ msgid "Set password" #~ msgstr "Passwort festlegen" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "Setze diese Einstellung auf \"Nein\", um alle Zitatbeiträge aus deinem Feed auszublenden. Reposts sind weiterhin sichtbar." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "Setze diese Einstellung auf \"Nein\", um alle Antworten aus deinem Feed auszublenden." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "Setze diese Einstellung auf \"Nein\", um alle Reposts aus deinem Feed auszublenden." @@ -4710,7 +5106,7 @@ msgstr "Setze diese Einstellung auf \"Nein\", um alle Reposts aus deinem Feed au msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "Setze diese Einstellung auf \"Ja\", um Antworten in einer Thread-Ansicht anzuzeigen. Dies ist eine experimentelle Funktion." -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "Setze diese Einstellung auf \"Ja\", um Beispiele für deine gespeicherten Feeds in deinem Following-Feed anzuzeigen. Dies ist eine experimentelle Funktion." @@ -4718,27 +5114,27 @@ msgstr "Setze diese Einstellung auf \"Ja\", um Beispiele für deine gespeicherte msgid "Set up your account" msgstr "Dein Konto einrichten" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Legt deinen Bluesky-Benutzernamen fest" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "" @@ -4768,15 +5164,14 @@ msgstr "" #~ msgstr "Setzt den Server für den Bluesky-Client" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "Einstellungen" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "Sexuelle Aktivitäten oder erotische Nacktheit." @@ -4784,7 +5179,7 @@ msgstr "Sexuelle Aktivitäten oder erotische Nacktheit." msgid "Sexually Suggestive" msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "Teilen" @@ -4794,18 +5189,26 @@ msgstr "Teilen" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "Teilen" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "Feed teilen" @@ -4814,15 +5217,19 @@ msgstr "Feed teilen" msgid "Share Link" msgstr "" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "Anzeigen" @@ -4852,10 +5259,14 @@ msgstr "" #~ msgid "Show embeds from {0}" #~ msgstr "Eingebettete Medien von {0} anzeigen" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "Zeige ähnliche Konten wie {0}" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" @@ -4863,7 +5274,7 @@ msgstr "" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "Mehr anzeigen" @@ -4872,11 +5283,15 @@ msgstr "Mehr anzeigen" msgid "Show more like this" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "Beiträge aus meinen Feeds anzeigen" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "Zitierte Beiträge anzeigen" @@ -4892,7 +5307,7 @@ msgstr "Zitierte Beiträge im Following Feed anzeigen" msgid "Show re-posts in Following feed" msgstr "Reposts im Following-Feed anzeigen" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "Antworten anzeigen" @@ -4912,7 +5327,7 @@ msgstr "Antworten in folgendem Feed anzeigen" #~ msgid "Show replies with at least {value} {0}" #~ msgstr "Antworten mit mindestens {value} {0} anzeigen" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "Reposts anzeigen" @@ -4921,7 +5336,7 @@ msgid "Show reposts in Following" msgstr "Reposts im Following-Feed anzeigen" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "Den Inhalt anzeigen" @@ -4949,17 +5364,17 @@ msgstr "Zeigt Beiträge von {0} in deinem Feed" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4992,17 +5407,17 @@ msgstr "" msgid "Sign into Bluesky or create a new account" msgstr "" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "Abmelden" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -5018,7 +5433,7 @@ msgstr "Registriere dich oder melden dich an, um an der Diskussion teilzunehmen" msgid "Sign-in Required" msgstr "Anmelden erforderlich" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "Angemeldet als" @@ -5031,19 +5446,27 @@ msgstr "Angemeldet als @{0}" #~ msgid "Signs {0} out of Bluesky" #~ msgstr "Meldet {0} von Bluesky ab" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "Überspringen" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "Diesen Schritt überspringen" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "Software-Entwicklung" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 @@ -5054,8 +5477,8 @@ msgstr "" #~ msgid "Something went wrong!" #~ msgstr "Es ist ein Fehler aufgetreten." -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "Entschuldigung! Deine Sitzung ist abgelaufen. Bitte logge dich erneut ein." @@ -5067,19 +5490,24 @@ msgstr "Antworten sortieren" msgid "Sort replies to the same post by:" msgstr "Antworten auf denselben Beitrag sortieren nach:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" msgstr "" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "Sport" @@ -5087,15 +5515,23 @@ msgstr "Sport" msgid "Square" msgstr "Quadratische" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "" + #: src/view/screens/Settings/index.tsx:862 #~ msgid "Status page" #~ msgstr "Status-Seite" -#: src/view/screens/Settings/index.tsx:896 +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" msgstr "" @@ -5111,29 +5547,31 @@ msgstr "" #~ msgid "Step {0} of {numSteps}" #~ msgstr "Schritt {0} von {numSteps}" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "Der Speicher wurde gelöscht, du musst die App jetzt neu starten." #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Geschichtenbuch" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Einreichen" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "Abonnieren" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "" @@ -5142,11 +5580,11 @@ msgstr "" msgid "Subscribe to the {0} feed" msgstr "Abonniere den {0} Feed" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "Abonniere diese Liste" @@ -5158,7 +5596,7 @@ msgstr "Vorgeschlagene Follower" msgid "Suggested for you" msgstr "Vorgeschlagen für dich" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "Suggestiv" @@ -5173,23 +5611,23 @@ msgstr "Support" msgid "Switch Account" msgstr "Konto wechseln" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "Wechseln zu {0}" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "Wechselt das Konto, in das du eingeloggt bist" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "System" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "Systemprotokoll" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "Tag" @@ -5205,41 +5643,47 @@ msgstr "Groß" msgid "Tap to view fully" msgstr "Tippe, um die vollständige Ansicht anzuzeigen" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "Technik" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "Bedingungen" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "Nutzungsbedingungen" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "Text" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "Text-Eingabefeld" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "" @@ -5247,7 +5691,7 @@ msgstr "" msgid "That handle is already taken." msgstr "Dieser Handle ist bereits besetzt." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "Das Konto kann nach der Entblockiert mit dir interagieren." @@ -5264,11 +5708,15 @@ msgstr "Die Community-Richtlinien wurden nach <0/> verschoben" msgid "The Copyright Policy has been moved to <0/>" msgstr "Die Copyright-Richtlinie wurde nach <0/> verschoben" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "" @@ -5276,8 +5724,8 @@ msgstr "" msgid "The following steps will help customize your Bluesky experience." msgstr "Die folgenden Schritte helfen dir, dein Bluesky-Erlebnis anzupassen." -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "Möglicherweise wurde der Post gelöscht." @@ -5297,37 +5745,40 @@ msgstr "Die Allgemeinen Geschäftsbedingungen wurden verschoben nach" msgid "There are many feeds to try:" msgstr "Es gibt viele Feeds zum Ausprobieren:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "Es gab ein Problem bei der Kontaktaufnahme mit dem Server. Bitte überprüfe deine Internetverbindung und versuche es erneut." -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "Es gab ein Problem beim Entfernen dieses Feeds. Bitte überprüfe deine Internetverbindung und versuche es erneut." -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "Es gab ein Problem bei der Aktualisierung deines Feeds. Bitte überprüfe deine Internetverbindung und versuche es erneut." -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "" #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "Es gab ein Problem bei der Kontaktaufnahme mit dem Server" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "Es gab ein Problem bei der Kontaktaufnahme mit deinem Server" @@ -5335,7 +5786,7 @@ msgstr "Es gab ein Problem bei der Kontaktaufnahme mit deinem Server" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "Es gab ein Problem beim Abrufen von Mitteilungen. Tippe hier, um es erneut zu versuchen." -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "Es gab ein Problem beim Abrufen der Beiträge. Tippe hier, um es erneut zu versuchen." @@ -5348,7 +5799,8 @@ msgstr "Es gab ein Problem beim Abrufen der Liste. Tippe hier, um es erneut zu v msgid "There was an issue fetching your lists. Tap here to try again." msgstr "Es gab ein Problem beim Abrufen deiner Listen. Tippe hier, um es erneut zu versuchen." -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "" @@ -5356,32 +5808,32 @@ msgstr "" msgid "There was an issue syncing your preferences with the server" msgstr "Es gab ein Problem bei der Synchronisierung deiner Einstellungen mit dem Server" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "Es gab ein Problem beim Abrufen deiner App-Passwörter" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "Es gab ein Problem! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "Es ist ein Problem aufgetreten. Bitte überprüfe deine Internetverbindung und versuche es erneut." -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "Es gab ein unerwartetes Problem in der Anwendung. Bitte teile uns mit, wenn dies bei dir der Fall ist!" @@ -5402,14 +5854,26 @@ msgstr "Diese {screenDescription} wurde gekennzeichnet:" msgid "This account has requested that users sign in to view their profile." msgstr "Dieses Konto hat die Benutzer aufgefordert, sich anzumelden, um dein Profil zu sehen." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:26 +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "" + #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." msgstr "" @@ -5427,7 +5891,7 @@ msgstr "Dieser Inhalt wird von {0} gehostet. Möchtest du externe Medien aktivie msgid "This content is not available because one of the users involved has blocked the other." msgstr "Dieser Inhalt ist nicht verfügbar, weil einer der beteiligten Nutzer den anderen blockiert hat." -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "Dieser Inhalt ist ohne ein Bluesky-Konto nicht sichtbar." @@ -5435,17 +5899,17 @@ msgstr "Dieser Inhalt ist ohne ein Bluesky-Konto nicht sichtbar." #~ msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." #~ msgstr "Diese Funktion befindet sich in der Beta-Phase. Du kannst mehr über Kontodepot-Exporte in <0>diesem Blogpost lesen." -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "Dieser Feed wird derzeit stark frequentiert und ist vorübergehend nicht verfügbar. Bitte versuche es später erneut." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "Dieser Feed ist leer!" @@ -5453,11 +5917,15 @@ msgstr "Dieser Feed ist leer!" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "Dieser Feed ist leer! Möglicherweise musst du mehr Benutzern folgen oder deine Spracheinstellungen anpassen." +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "" + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "Diese Informationen werden nicht an andere Nutzer weitergegeben." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "Das ist wichtig für den Fall, dass du mal deine E-Mail ändern oder dein Passwort zurücksetzen musst." @@ -5473,7 +5941,15 @@ msgstr "" msgid "This label was applied by the author." msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "" @@ -5481,7 +5957,7 @@ msgstr "" msgid "This link is taking you to the following website:" msgstr "Dieser Link führt dich auf die folgende Website:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "Diese Liste ist leer!" @@ -5489,11 +5965,11 @@ msgstr "Diese Liste ist leer!" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "Dieser Name ist bereits in Gebrauch" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "Dieser Beitrag wurde gelöscht." @@ -5514,7 +5990,7 @@ msgstr "" msgid "This service has not provided terms of service or a privacy policy." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "" @@ -5522,6 +5998,10 @@ msgstr "" msgid "This user doesn't have any followers." msgstr "" +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5555,7 +6035,7 @@ msgstr "" #~ msgid "This warning is only available for posts with media attached." #~ msgstr "Diese Warnung ist nur für Beiträge mit angehängten Medien verfügbar." -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "Dies wird {0} aus deinen stummgeschalteten Wörtern löschen. Du kannst es später jederzeit wieder hinzufügen." @@ -5563,12 +6043,12 @@ msgstr "Dies wird {0} aus deinen stummgeschalteten Wörtern löschen. Du kannst #~ msgid "This will hide this post from your feeds." #~ msgstr "Dadurch wird dieser Beitrag aus deinen Feeds ausgeblendet." -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "Thread-Einstellungen" @@ -5580,15 +6060,19 @@ msgstr "Gewindemodus" msgid "Threads Preferences" msgstr "Thread-Einstellungen" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "" +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "Zwischen den Optionen für stummgeschaltete Wörter wechseln." @@ -5621,60 +6105,69 @@ msgctxt "action" msgid "Try again" msgstr "Erneut versuchen" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "Liste entblocken" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "Stummschaltung von Liste aufheben" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "Es ist uns nicht gelungen, deinen Dienst zu kontaktieren. Bitte überprüfe deine Internetverbindung." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "Entblocken" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "Entblocken" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "Konto entblocken" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "Repost rückgängig machen" @@ -5688,7 +6181,7 @@ msgstr "Nicht mehr folgen" msgid "Unfollow" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "{0} nicht mehr folgen" @@ -5705,12 +6198,12 @@ msgstr "" #~ msgid "Unlike" #~ msgstr "Like aufheben" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "Stummschaltung aufheben" @@ -5727,41 +6220,54 @@ msgstr "Stummschaltung von Konto aufheben" msgid "Unmute all {displayTag} posts" msgstr "Stummschaltung aller {displayTag}-Beiträge aufheben" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" msgstr "" +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "Stummschaltung von Thread aufheben" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "Anheften aufheben" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "Anheften der Moderationsliste aufheben" +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "" + #: src/view/screens/ProfileFeed.tsx:346 #~ msgid "Unsave" #~ msgstr "Speicherung aufheben" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "" @@ -5773,7 +6279,7 @@ msgstr "{displayName} in Listen aktualisieren" #~ msgid "Update Available" #~ msgstr "Update verfügbar" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "" @@ -5781,42 +6287,46 @@ msgstr "" msgid "Updating..." msgstr "Aktualisieren..." -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "Hochladen einer Textdatei auf:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "Verwende App-Passwörter, um dich bei anderen Bluesky-Clients anzumelden, ohne dass du vollen Zugriff auf deinen Account oder Passwort hast." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "Standardanbieter verwenden" @@ -5830,11 +6340,15 @@ msgstr "In-App-Browser verwenden" msgid "Use my default browser" msgstr "Meinen Standardbrowser verwenden" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "Verwenden dies, um dich mit deinem Handle bei der anderen App einzuloggen." @@ -5851,6 +6365,10 @@ msgstr "Benutzer blockiert" msgid "User Blocked by \"{0}\"" msgstr "" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "Benutzer durch der Liste blockiert" @@ -5872,13 +6390,13 @@ msgstr "Benutzer blockiert dich" msgid "User list by {0}" msgstr "Benutzerliste von {0}" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "Benutzerliste von <0/>" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "Benutzerliste von dir" @@ -5894,11 +6412,11 @@ msgstr "Benutzerliste aktualisiert" msgid "User Lists" msgstr "Benutzerlisten" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "Benutzername oder E-Mail-Adresse" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "Benutzer" @@ -5906,6 +6424,13 @@ msgstr "Benutzer" msgid "users followed by <0/>" msgstr "Nutzer gefolgt von <0/>" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "Benutzer in \"{0}\"" @@ -5914,7 +6439,7 @@ msgstr "Benutzer in \"{0}\"" msgid "Users that have liked this content or profile" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "" @@ -5922,32 +6447,32 @@ msgstr "" #~ msgid "Verify {0}" #~ msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" msgstr "" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "E-Mail bestätigen" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "Meine E-Mail bestätigen" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "Meine E-Mail bestätigen" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "Neue E-Mail bestätigen" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "Überprüfe deine E-Mail" @@ -5955,15 +6480,15 @@ msgstr "Überprüfe deine E-Mail" #~ msgid "Version {0}" #~ msgstr "" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" msgstr "" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "Videospiele" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "Avatar von {0} ansehen" @@ -5971,25 +6496,25 @@ msgstr "Avatar von {0} ansehen" msgid "View debug entry" msgstr "Debug-Eintrag anzeigen" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "Vollständigen Thread ansehen" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "Profil ansehen" @@ -6001,7 +6526,7 @@ msgstr "Avatar ansehen" msgid "View the labeling service provided by @{0}" msgstr "" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "" @@ -6033,11 +6558,15 @@ msgstr "" msgid "We couldn't find any results for that hashtag." msgstr "Wir konnten keine Ergebnisse für diesen Hashtag finden." +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "Wir schätzen {estimatedTime} bis dein Konto bereit ist." -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "Wir hoffen, dass du eine schöne Zeit hast. Denke daran, Bluesky ist:" @@ -6045,7 +6574,7 @@ msgstr "Wir hoffen, dass du eine schöne Zeit hast. Denke daran, Bluesky ist:" msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "Wir haben keine Beiträge mehr von den Konten, denen du folgst. Hier ist das Neueste von <0/>." -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "Wir empfehlen, gebräuchliche Wörter zu vermeiden, die in vielen Beiträgen vorkommen, da dies dazu führen kann, dass keine Beiträge angezeigt werden." @@ -6061,7 +6590,7 @@ msgstr "" msgid "We were unable to load your configured labelers at this time." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "Die Verbindung konnte nicht hergestellt werden. Bitte versuche es erneut, um mit der Einrichtung deines Kontos fortzufahren. Wenn der Versuch weiterhin fehlschlägt, kannst du diesen Schritt überspringen." @@ -6073,10 +6602,14 @@ msgstr "Wir werden dich benachrichtigen, wenn dein Konto bereit ist." #~ msgid "We'll look into your appeal promptly." #~ msgstr "Wir werden deinen Widerspruch unverzüglich prüfen." -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "Wir verwenden diese Informationen, um dein Erlebnis individuell zu gestalten." +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "Wir freuen uns sehr, dass du dabei bist!" @@ -6085,7 +6618,7 @@ msgstr "Wir freuen uns sehr, dass du dabei bist!" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "Es tut uns leid, aber wir waren nicht in der Lage, diese Liste aufzulösen. Wenn das Problem weiterhin besteht, kontaktiere bitte den Ersteller der Liste, @{handleOrDid}." -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "Es tut uns leid, aber wir konnten deine stummgeschalteten Wörter nicht laden. Bitte versuche es erneut." @@ -6093,12 +6626,12 @@ msgstr "Es tut uns leid, aber wir konnten deine stummgeschalteten Wörter nicht msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "Es tut uns leid, aber deine Suche konnte nicht abgeschlossen werden. Bitte versuche es in ein paar Minuten erneut." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "Es tut uns leid! Wir können die Seite, nach der du gesucht hast, nicht finden." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "" @@ -6106,7 +6639,7 @@ msgstr "" #~ msgid "Welcome to <0>Bluesky" #~ msgstr "Willkommen bei <0>Bluesky" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "Was sind deine Interessen?" @@ -6116,7 +6649,7 @@ msgstr "Was sind deine Interessen?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "Was gibt's?" @@ -6128,28 +6661,41 @@ msgstr "Welche Sprachen werden in diesem Beitrag verwendet?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "Welche Sprachen würdest du gerne in deinen algorithmischen Feeds sehen?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "Wer antworten kann" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "" @@ -6157,35 +6703,35 @@ msgstr "" msgid "Wide" msgstr "Breit" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" msgstr "" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "Beitrag verfassen" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "Schreibe deine Antwort" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "Schriftsteller" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "Ja" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" msgstr "" @@ -6206,6 +6752,14 @@ msgstr "Du kannst auch neue benutzerdefinierte Feeds entdecken und ihnen folgen. msgid "You can change these settings later." msgstr "Du kannst diese Einstellungen später ändern." +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -6219,22 +6773,26 @@ msgstr "" msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "Du hast noch keine Einladungscodes! Wir schicken dir welche, wenn du schon etwas länger bei Bluesky bist." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "Du hast keine angehefteten Feeds." #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "Du hast keine gespeicherten Feeds!" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "Du hast keine gespeicherten Feeds!" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "Du hast keine gespeicherten Feeds." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "Du hast den Verfasser blockiert oder du wurdest vom Verfasser blockiert." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -6269,6 +6827,10 @@ msgstr "" #~ msgid "You have muted this user." #~ msgstr "Du hast diesen Benutzer stummgeschaltet." +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "Du hast keine Feeds." @@ -6278,9 +6840,9 @@ msgstr "Du hast keine Feeds." msgid "You have no lists." msgstr "Du hast keine Listen." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." @@ -6290,7 +6852,7 @@ msgstr "" #~ msgid "You have not blocked any accounts yet. To block an account, go to their profile and selected \"Block account\" from the menu on their account." #~ msgstr "Du hast noch keine Konten blockiert. Um ein Konto zu blockieren, gehe auf dessen Profil und wähle \"Konto blockieren\" aus dem Menü des Kontos aus." -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "Du hast noch keine App-Passwörter erstellt. Du kannst eines erstellen, indem du auf die Schaltfläche unten klickst." @@ -6302,11 +6864,19 @@ msgstr "" #~ msgid "You have not muted any accounts yet. To mute an account, go to their profile and selected \"Mute account\" from the menu on their account." #~ msgstr "Du hast noch keine Konten stummgeschaltet. Um ein Konto stumm zu schalten, gehe auf dessen Profil und wähle \"Konto stummschalten\" aus dem Menü des Kontos aus." -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "Du hast noch keine Wörter oder Tags stummgeschaltet" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "" @@ -6322,7 +6892,7 @@ msgstr "" msgid "You must be 18 years or older to enable adult content" msgstr "Du musst 18 Jahre oder älter sein, um Inhalte für Erwachsene zu aktivieren." -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "" @@ -6338,7 +6908,7 @@ msgstr "Du erhälst nun Mitteilungen für dieses Thread" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "Du erhältst eine E-Mail mit einem \"Reset-Code\". Gib diesen Code hier ein und gib dann dein neues Passwort ein." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" msgstr "" @@ -6352,7 +6922,7 @@ msgstr "Du hast die Kontrolle" msgid "You're in line" msgstr "Du bist in der Warteschlange" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "Du kannst loslegen!" @@ -6369,11 +6939,11 @@ msgstr "Du hast das Ende deines Feeds erreicht! Finde weitere Konten, denen du f msgid "Your account" msgstr "Dein Konto" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "Dein Konto wurde gelöscht" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "Dein Kontodepot, das alle öffentlichen Datensätze enthält, kann als \"CAR\"-Datei heruntergeladen werden. Diese Datei enthält keine Medieneinbettungen, wie z. B. Bilder, oder deine privaten Daten, welche separat abgerufen werden müssen." @@ -6381,6 +6951,10 @@ msgstr "Dein Kontodepot, das alle öffentlichen Datensätze enthält, kann als \ msgid "Your birth date" msgstr "Dein Geburtsdatum" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "Deine Wahl wird gespeichert, kann aber später in den Einstellungen geändert werden." @@ -6390,16 +6964,16 @@ msgid "Your default feed is \"Following\"" msgstr "Dein Standard-Feed ist \"Following\"" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "Deine E-Mail scheint ungültig zu sein." -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "Deine E-Mail wurde aktualisiert, aber nicht bestätigt. Als nächsten Schritt bestätige bitte deine neue E-Mail." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "Deine E-Mail wurde noch nicht bestätigt. Dies ist ein wichtiger Sicherheitsschritt, den wir empfehlen." @@ -6411,11 +6985,11 @@ msgstr "Dein Following-Feed ist leer! Folge mehr Benutzern, um auf dem Laufenden msgid "Your full handle will be" msgstr "Dein vollständiger Handle lautet" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "Dein vollständiger Handle lautet <0>@{0}" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "Deine stummgeschalteten Wörter" @@ -6423,22 +6997,26 @@ msgstr "Deine stummgeschalteten Wörter" msgid "Your password has been changed successfully!" msgstr "Dein Passwort wurde erfolgreich geändert!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "Dein Beitrag wurde veröffentlicht" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "Deine Beiträge, Likes und Blockierungen sind öffentlich. Stummschaltungen sind privat." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "Dein Profil" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "Deine Antwort wurde veröffentlicht" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "Dein Benutzerhandle" diff --git a/src/locale/locales/en/messages.po b/src/locale/locales/en/messages.po index e11cb8ca6a..36a7c5d458 100644 --- a/src/locale/locales/en/messages.po +++ b/src/locale/locales/en/messages.po @@ -13,7 +13,7 @@ msgstr "" "Language-Team: \n" "Plural-Forms: \n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "" @@ -21,24 +21,32 @@ msgstr "" msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" msgstr "" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" msgstr "" @@ -47,11 +55,11 @@ msgstr "" msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -63,7 +71,7 @@ msgstr "" msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" msgstr "" @@ -71,6 +79,10 @@ msgstr "" msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" msgstr "" +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "" + #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -83,22 +95,26 @@ msgstr "" msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" -#: src/view/shell/Drawer.tsx:464 +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" msgstr "" @@ -106,11 +122,11 @@ msgstr "" msgid "<0/> members" msgstr "" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" msgstr "" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" msgstr "" @@ -135,7 +151,7 @@ msgstr "" #~ msgid "<0>Follow some<1>Recommended<2>Users" #~ msgstr "" -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." msgstr "" @@ -147,7 +163,7 @@ msgstr "" msgid "⚠Invalid Handle" msgstr "" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "" @@ -161,11 +177,11 @@ msgid "Access profile and other navigation links" msgstr "" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "" @@ -178,21 +194,21 @@ msgstr "" #~ msgid "account" #~ msgstr "" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "" @@ -213,55 +229,56 @@ msgstr "" msgid "Account removed from quick access" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "" @@ -273,15 +290,23 @@ msgstr "" #~ msgid "Add link card:" #~ msgstr "" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "" @@ -290,7 +315,7 @@ msgstr "" msgid "Add to Lists" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "" @@ -303,17 +328,17 @@ msgstr "" msgid "Added to list" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "" #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "" @@ -322,14 +347,29 @@ msgid "Adult content is disabled." msgstr "" #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "" +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -339,13 +379,13 @@ msgstr "" msgid "Already signed in as @{0}" msgstr "" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -359,24 +399,24 @@ msgstr "" msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "" -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "" @@ -389,7 +429,7 @@ msgstr "" msgid "An issue occurred, please try again." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" msgstr "" @@ -398,7 +438,7 @@ msgstr "" msgid "and" msgstr "" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "" @@ -406,7 +446,7 @@ msgstr "" msgid "Animated GIF" msgstr "" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "" @@ -414,38 +454,39 @@ msgstr "" msgid "App Language" msgstr "" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "" -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" msgstr "" @@ -453,31 +494,51 @@ msgstr "" #~ msgid "Appeal submitted." #~ msgstr "" -#: src/view/screens/Settings/index.tsx:430 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "" + +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "" @@ -485,11 +546,11 @@ msgstr "" msgid "Are you writing in <0>{0}?" msgstr "" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "" @@ -497,18 +558,20 @@ msgstr "" msgid "At least 3 characters" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -518,7 +581,7 @@ msgstr "" msgid "Based on your interest in {interestsText}" msgstr "" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "" @@ -526,17 +589,17 @@ msgstr "" msgid "Birthday" msgstr "" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" msgstr "" @@ -549,15 +612,15 @@ msgstr "" msgid "Block Account?" msgstr "" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "" @@ -583,15 +646,15 @@ msgstr "" msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "" -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "" -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "" @@ -639,10 +702,15 @@ msgstr "" msgid "Blur images and filter from feeds" msgstr "" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "" + #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "" @@ -679,7 +747,7 @@ msgstr "" msgid "Camera" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "" @@ -687,11 +755,11 @@ msgstr "" #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -703,26 +771,26 @@ msgstr "" #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "" @@ -747,34 +815,34 @@ msgstr "" msgid "Cancels opening the linked website" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "" @@ -782,24 +850,34 @@ msgstr "" msgid "Change post language to {0}" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" msgstr "" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" msgstr "" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" msgstr "" @@ -820,11 +898,11 @@ msgstr "" #~ msgid "Check out some recommended users. Follow them to see similar users." #~ msgstr "" -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "" @@ -836,7 +914,7 @@ msgstr "" msgid "Choose Service" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "" @@ -845,6 +923,10 @@ msgstr "" #~ msgid "Choose the algorithms that power your experience with custom feeds." #~ msgstr "" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "" @@ -853,19 +935,19 @@ msgstr "" msgid "Choose your password" msgstr "" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "" @@ -874,11 +956,11 @@ msgstr "" msgid "Clear search query" msgstr "" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "" @@ -886,6 +968,10 @@ msgstr "" msgid "click here" msgstr "" +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "" + #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" msgstr "" @@ -894,19 +980,28 @@ msgstr "" #~ msgid "Click here to open tag menu for #{tag}" #~ msgstr "" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "" @@ -918,7 +1013,7 @@ msgstr "" msgid "Close bottom drawer" msgstr "" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "" @@ -934,6 +1029,10 @@ msgstr "" msgid "Close image viewer" msgstr "" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "" @@ -951,7 +1050,7 @@ msgstr "" msgid "Closes password update alert" msgstr "" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "" @@ -963,11 +1062,11 @@ msgstr "" msgid "Collapses list of users for a given notification" msgstr "" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "" @@ -976,7 +1075,7 @@ msgstr "" msgid "Community Guidelines" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "" @@ -984,7 +1083,7 @@ msgstr "" msgid "Complete the challenge" msgstr "" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "" @@ -1006,18 +1105,18 @@ msgstr "" #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "" @@ -1025,7 +1124,7 @@ msgstr "" msgid "Confirm content language settings" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "" @@ -1037,17 +1136,17 @@ msgstr "" msgid "Confirm your birthdate" msgstr "" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "" @@ -1094,8 +1193,9 @@ msgstr "" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "" @@ -1105,8 +1205,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1120,22 +1221,26 @@ msgstr "" msgid "Continue to the next step without following any accounts" msgstr "" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1145,15 +1250,15 @@ msgstr "" msgid "Copied!" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "" @@ -1162,7 +1267,7 @@ msgstr "" msgid "Copy code" msgstr "" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "" @@ -1171,8 +1276,8 @@ msgstr "" msgid "Copy link to post" msgstr "" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" msgstr "" @@ -1186,36 +1291,36 @@ msgstr "" msgid "Copyright Policy" msgstr "" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" msgstr "" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "" -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" msgstr "" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +#~ msgid "Could not unmute chat" +#~ msgstr "" #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "" @@ -1228,7 +1333,11 @@ msgstr "" msgid "Create an account" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "" @@ -1237,11 +1346,11 @@ msgstr "" msgid "Create new account" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "" @@ -1249,7 +1358,7 @@ msgstr "" #~ msgid "Creates a card with a thumbnail. The card links to {url}" #~ msgstr "" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "" @@ -1258,12 +1367,12 @@ msgstr "" msgid "Custom" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "" @@ -1271,8 +1380,8 @@ msgstr "" msgid "Customize media from external sites." msgstr "" -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "" @@ -1280,7 +1389,7 @@ msgstr "" msgid "Dark mode" msgstr "" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "" @@ -1288,7 +1397,7 @@ msgstr "" msgid "Date of birth" msgstr "" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "" @@ -1296,14 +1405,14 @@ msgstr "" msgid "Debug panel" msgstr "" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "" @@ -1311,39 +1420,44 @@ msgstr "" #~ msgid "Delete Account" #~ msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" msgstr "" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" - -#: src/view/screens/ProfileList.tsx:417 -msgid "Delete List" -msgstr "" - -#: src/components/dms/MessageMenu.tsx:119 -msgid "Delete message" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" msgstr "" #: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "" + +#: src/view/screens/ProfileList.tsx:470 +msgid "Delete List" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:122 +msgid "Delete message" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "" @@ -1352,7 +1466,7 @@ msgstr "" msgid "Delete post" msgstr "" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "" @@ -1364,10 +1478,14 @@ msgstr "" msgid "Deleted" msgstr "" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "" +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1375,23 +1493,27 @@ msgstr "" msgid "Description" msgstr "" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" msgstr "" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "" @@ -1410,15 +1532,17 @@ msgstr "" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "" @@ -1432,7 +1556,7 @@ msgstr "" msgid "Discover new custom feeds" msgstr "" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "" @@ -1444,7 +1568,7 @@ msgstr "" msgid "Display Name" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "" @@ -1456,11 +1580,11 @@ msgstr "" msgid "Doesn't begin or end with a hyphen" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "" @@ -1468,23 +1592,23 @@ msgstr "" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1498,8 +1622,8 @@ msgstr "" msgid "Done{extraText}" msgstr "" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "" @@ -1511,7 +1635,7 @@ msgstr "" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "" @@ -1519,7 +1643,7 @@ msgstr "" msgid "e.g. Alice Roberts" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "" @@ -1556,7 +1680,7 @@ msgctxt "action" msgid "Edit" msgstr "" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "" @@ -1566,7 +1690,7 @@ msgstr "" msgid "Edit image" msgstr "" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "" @@ -1575,8 +1699,8 @@ msgid "Edit Moderation List" msgstr "" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "" @@ -1584,18 +1708,18 @@ msgstr "" msgid "Edit my profile" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "" @@ -1611,16 +1735,16 @@ msgstr "" msgid "Edit your profile description" msgstr "" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "" @@ -1628,20 +1752,20 @@ msgstr "" msgid "Email address" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "" @@ -1685,7 +1809,7 @@ msgstr "" msgid "Enable media players for" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "" @@ -1693,6 +1817,8 @@ msgstr "" msgid "Enable this source only" msgstr "" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "" @@ -1701,7 +1827,11 @@ msgstr "" msgid "End of feed" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "" @@ -1709,12 +1839,12 @@ msgstr "" msgid "Enter a password" msgstr "" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "" @@ -1722,7 +1852,7 @@ msgstr "" msgid "Enter the code you received to change your password." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "" @@ -1739,11 +1869,11 @@ msgstr "" msgid "Enter your email address" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "" @@ -1751,11 +1881,15 @@ msgstr "" msgid "Enter your username and password" msgstr "" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "" @@ -1764,15 +1898,30 @@ msgstr "" msgid "Everybody" msgstr "" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "" @@ -1806,12 +1955,12 @@ msgstr "" msgid "Explicit sexual images." msgstr "" -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "" @@ -1827,16 +1976,16 @@ msgstr "" #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "" @@ -1844,7 +1993,7 @@ msgstr "" msgid "Failed to create the list. Check your internet connection and try again." msgstr "" -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" msgstr "" @@ -1852,48 +2001,69 @@ msgstr "" msgid "Failed to delete post, please try again" msgstr "" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "" + #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 #~ msgid "Failed to load recommended feeds" #~ msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "" @@ -1901,7 +2071,7 @@ msgstr "" #~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." #~ msgstr "" -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "" @@ -1909,15 +2079,19 @@ msgstr "" msgid "Feeds can be topical as well!" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "" @@ -1943,7 +2117,7 @@ msgstr "" #~ msgid "Finding similar accounts..." #~ msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "" @@ -1951,11 +2125,11 @@ msgstr "" msgid "Fine-tune the discussion threads." msgstr "" -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "" @@ -1968,10 +2142,10 @@ msgstr "" msgid "Flip vertically" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -1983,7 +2157,7 @@ msgid "Follow" msgstr "" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "" @@ -2017,7 +2191,7 @@ msgstr "" msgid "Followed users" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "" @@ -2030,28 +2204,30 @@ msgstr "" msgid "Followers" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "" @@ -2063,15 +2239,15 @@ msgstr "" msgid "Follows You" msgstr "" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "" @@ -2080,15 +2256,15 @@ msgstr "" msgid "Forgot Password" msgstr "" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "" @@ -2096,7 +2272,7 @@ msgstr "" msgid "From @{sanitizedAuthor}" msgstr "" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "" @@ -2105,12 +2281,20 @@ msgstr "" msgid "Gallery" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "" @@ -2119,9 +2303,9 @@ msgstr "" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "" @@ -2129,13 +2313,14 @@ msgstr "" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2155,16 +2340,20 @@ msgstr "" #~ msgid "Go to @{queryMaybeHandle}" #~ msgstr "" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" msgstr "" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" msgstr "" @@ -2172,7 +2361,7 @@ msgstr "" msgid "Graphic Media" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "" @@ -2180,7 +2369,7 @@ msgstr "" msgid "Haptics" msgstr "" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "" @@ -2188,7 +2377,7 @@ msgstr "" msgid "Hashtag" msgstr "" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "" @@ -2197,10 +2386,14 @@ msgid "Having trouble?" msgstr "" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "" @@ -2213,13 +2406,13 @@ msgstr "" msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2241,7 +2434,7 @@ msgid "Hide post" msgstr "" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "" @@ -2253,23 +2446,23 @@ msgstr "" msgid "Hide user list" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "" @@ -2281,22 +2474,22 @@ msgstr "" msgid "Hmmmm, we couldn't load that moderation service." msgstr "" -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "" @@ -2304,25 +2497,30 @@ msgstr "" msgid "How should we open this link?" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "" @@ -2330,7 +2528,7 @@ msgstr "" msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "" -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "" @@ -2342,7 +2540,7 @@ msgstr "" msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "" -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "" @@ -2350,23 +2548,27 @@ msgstr "" msgid "Image" msgstr "" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "" @@ -2374,27 +2576,27 @@ msgstr "" msgid "Input new password" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "" @@ -2402,16 +2604,20 @@ msgstr "" msgid "Input your user handle" msgstr "" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "" @@ -2423,7 +2629,7 @@ msgstr "" msgid "Invite code" msgstr "" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "" @@ -2443,7 +2649,7 @@ msgstr "" msgid "Jobs" msgstr "" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "" @@ -2463,7 +2669,7 @@ msgstr "" msgid "Labels" msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "" @@ -2471,11 +2677,11 @@ msgstr "" #~ msgid "labels have been placed on this {labelTarget}" #~ msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "" @@ -2483,7 +2689,7 @@ msgstr "" msgid "Language selection" msgstr "" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "" @@ -2492,7 +2698,7 @@ msgstr "" msgid "Language Settings" msgstr "" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "" @@ -2510,7 +2716,7 @@ msgstr "" msgid "Learn more about the moderation applied to this content." msgstr "" -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "" @@ -2523,13 +2729,20 @@ msgstr "" msgid "Learn more." msgstr "" -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" msgstr "" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" msgstr "" @@ -2545,7 +2758,7 @@ msgstr "" msgid "left to go." msgstr "" -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "" @@ -2554,11 +2767,11 @@ msgstr "" msgid "Let's get your password reset!" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "" @@ -2566,8 +2779,8 @@ msgstr "" #~ msgid "Like" #~ msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "" @@ -2609,7 +2822,7 @@ msgstr "" msgid "Likes" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "" @@ -2621,19 +2834,19 @@ msgstr "" msgid "List Avatar" msgstr "" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "" @@ -2641,31 +2854,35 @@ msgstr "" msgid "List Name" msgstr "" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "" + #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "" @@ -2692,7 +2909,7 @@ msgstr "" msgid "Login to account that is not listed" msgstr "" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "" @@ -2700,14 +2917,35 @@ msgstr "" msgid "Looks like XXXXX-XXXXX" msgstr "" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2726,44 +2964,50 @@ msgstr "" msgid "Menu" msgstr "" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" msgstr "" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" +#~ msgid "Messaging settings" +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "" @@ -2776,13 +3020,13 @@ msgstr "" msgid "Moderation list by {0}" msgstr "" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "" @@ -2803,7 +3047,7 @@ msgstr "" msgid "Moderation Lists" msgstr "" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "" @@ -2824,11 +3068,11 @@ msgstr "" msgid "More" msgstr "" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "" @@ -2849,7 +3093,7 @@ msgstr "" msgid "Mute Account" msgstr "" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "" @@ -2857,32 +3101,37 @@ msgstr "" msgid "Mute all {displayTag} posts" msgstr "" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "" @@ -2921,7 +3170,7 @@ msgstr "" msgid "Muted words & tags" msgstr "" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "" @@ -2930,23 +3179,23 @@ msgstr "" msgid "My Birthday" msgstr "" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "" @@ -2955,27 +3204,27 @@ msgstr "" msgid "Name is required" msgstr "" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "" @@ -2984,11 +3233,11 @@ msgstr "" #~ msgid "Never lose access to your followers and data." #~ msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "" @@ -3001,12 +3250,16 @@ msgstr "" msgid "New" msgstr "" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" msgstr "" +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" msgstr "" @@ -3019,22 +3272,22 @@ msgstr "" msgid "New Password" msgstr "" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "" @@ -3047,14 +3300,14 @@ msgstr "" msgid "Newest replies first" msgstr "" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3072,29 +3325,29 @@ msgstr "" msgid "Next image" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "" @@ -3102,25 +3355,39 @@ msgstr "" msgid "No longer than 253 characters" msgstr "" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" msgstr "" +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "" + #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "" @@ -3130,13 +3397,13 @@ msgstr "" msgid "No results found for {query}" msgstr "" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "" #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "" #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3147,6 +3414,10 @@ msgstr "" msgid "Nobody" msgstr "" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3165,8 +3436,8 @@ msgstr "" msgid "Not Found" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "" @@ -3180,25 +3451,37 @@ msgstr "" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "" -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "" @@ -3210,17 +3493,17 @@ msgstr "" msgid "Off" msgstr "" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "" #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "" @@ -3232,14 +3515,18 @@ msgstr "" msgid "Oldest replies first" msgstr "" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "" +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "" @@ -3248,33 +3535,46 @@ msgstr "" msgid "Only contains letters, numbers, and hyphens" msgstr "" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "" @@ -3287,12 +3587,12 @@ msgstr "" msgid "Open post options menu" msgstr "" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "" @@ -3300,7 +3600,7 @@ msgstr "" msgid "Opens {numItems} options" msgstr "" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "" @@ -3316,11 +3616,15 @@ msgstr "" msgid "Opens camera on device" msgstr "" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "" @@ -3328,7 +3632,7 @@ msgstr "" msgid "Opens device photo gallery" msgstr "" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "" @@ -3350,52 +3654,52 @@ msgstr "" msgid "Opens list of invite codes" msgstr "" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "" @@ -3403,20 +3707,20 @@ msgstr "" msgid "Opens the linked website" msgstr "" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "" @@ -3424,7 +3728,8 @@ msgstr "" msgid "Option {0} of {numItems}" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "" @@ -3432,7 +3737,7 @@ msgstr "" msgid "Or combine these options:" msgstr "" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "" @@ -3444,7 +3749,11 @@ msgstr "" msgid "Other..." msgstr "" -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "" @@ -3453,10 +3762,10 @@ msgstr "" msgid "Page Not Found" msgstr "" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "" @@ -3488,35 +3797,39 @@ msgstr "" msgid "People following @{0}" msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "" -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "" -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "" @@ -3525,6 +3838,11 @@ msgstr "" msgid "Play {0}" msgstr "" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" msgstr "" @@ -3538,78 +3856,83 @@ msgstr "" msgid "Plays the GIF" msgstr "" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "" -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "" -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "" -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "" + #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "" @@ -3623,7 +3946,7 @@ msgstr "" msgid "Post deleted" msgstr "" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "" @@ -3645,8 +3968,8 @@ msgstr "" msgid "Post Languages" msgstr "" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "" @@ -3658,11 +3981,11 @@ msgstr "" msgid "Posts" msgstr "" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "" @@ -3670,21 +3993,25 @@ msgstr "" msgid "Potentially Misleading Link" msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -3698,7 +4025,7 @@ msgstr "" msgid "Prioritize Your Follows" msgstr "" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "" @@ -3706,25 +4033,29 @@ msgstr "" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "" -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "" @@ -3732,11 +4063,11 @@ msgstr "" msgid "Profile updated" msgstr "" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "" @@ -3748,11 +4079,11 @@ msgstr "" msgid "Public, shareable lists which can drive feeds." msgstr "" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "" @@ -3778,6 +4109,14 @@ msgstr "" msgid "Ratios" msgstr "" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "" @@ -3790,12 +4129,20 @@ msgstr "" #~ msgid "Recommended Users" #~ msgstr "" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "" @@ -3803,7 +4150,7 @@ msgstr "" msgid "Remove account" msgstr "" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "" @@ -3811,22 +4158,25 @@ msgstr "" msgid "Remove Banner" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "" @@ -3838,7 +4188,7 @@ msgstr "" msgid "Remove image preview" msgstr "" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "" @@ -3850,7 +4200,7 @@ msgstr "" msgid "Remove repost" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "" @@ -3859,11 +4209,13 @@ msgstr "" msgid "Removed from list" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "" @@ -3875,6 +4227,11 @@ msgstr "" msgid "Removes quoted post" msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "" @@ -3883,12 +4240,12 @@ msgstr "" msgid "Replies to this thread are disabled" msgstr "" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "" @@ -3899,39 +4256,47 @@ msgstr "" #~ msgstr "" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" msgstr "" #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" msgstr "" @@ -3940,30 +4305,36 @@ msgstr "" msgid "Report post" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "" @@ -3981,7 +4352,7 @@ msgstr "" msgid "Reposted By" msgstr "" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "" @@ -3989,7 +4360,7 @@ msgstr "" #~ msgid "Reposted by <0/>" #~ msgstr "" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "" @@ -3997,12 +4368,12 @@ msgstr "" msgid "reposted your post" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "" @@ -4015,7 +4386,7 @@ msgstr "" msgid "Require alt text before posting" msgstr "" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "" @@ -4023,8 +4394,8 @@ msgstr "" msgid "Required for this provider" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "" @@ -4036,8 +4407,8 @@ msgstr "" msgid "Reset Code" msgstr "" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "" @@ -4045,20 +4416,20 @@ msgstr "" msgid "Reset password" msgstr "" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "" @@ -4067,13 +4438,14 @@ msgstr "" msgid "Retries the last action, which errored out" msgstr "" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 @@ -4081,11 +4453,11 @@ msgid "Retry" msgstr "" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" +#~ msgid "Retry." +#~ msgstr "" #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "" @@ -4094,26 +4466,26 @@ msgid "Returns to home page" msgstr "" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "" @@ -4125,7 +4497,7 @@ msgstr "" msgid "Save Changes" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "" @@ -4133,16 +4505,16 @@ msgstr "" msgid "Save image crop" msgstr "" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" msgstr "" @@ -4150,7 +4522,8 @@ msgstr "" #~ msgid "Saved to your camera roll." #~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "" @@ -4158,7 +4531,7 @@ msgstr "" msgid "Saves any changes to your profile" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "" @@ -4166,16 +4539,20 @@ msgstr "" msgid "Saves image crop settings" msgstr "" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4183,12 +4560,12 @@ msgstr "" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "" @@ -4209,8 +4586,8 @@ msgid "Search for all posts with tag {displayTag}" msgstr "" #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "" #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4222,7 +4599,8 @@ msgstr "" msgid "Search GIFs" msgstr "" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" msgstr "" @@ -4230,7 +4608,7 @@ msgstr "" msgid "Search Tenor" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "" @@ -4251,11 +4629,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "" @@ -4267,10 +4645,22 @@ msgstr "" msgid "Select {item}" msgstr "" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "" @@ -4279,7 +4669,7 @@ msgstr "" msgid "Select GIF" msgstr "" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "" @@ -4299,7 +4689,11 @@ msgstr "" msgid "Select some accounts below to follow" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "" @@ -4327,7 +4721,7 @@ msgstr "" msgid "Select your date of birth" msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "" @@ -4343,32 +4737,38 @@ msgstr "" msgid "Select your secondary algorithmic feeds" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "" @@ -4376,12 +4776,12 @@ msgstr "" msgid "Send report to {0}" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "" @@ -4397,15 +4797,15 @@ msgstr "" msgid "Set new password" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "" @@ -4413,7 +4813,7 @@ msgstr "" msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "" @@ -4421,27 +4821,27 @@ msgstr "" msgid "Set up your account" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "" @@ -4462,15 +4862,14 @@ msgid "Sets image aspect ratio to wide" msgstr "" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "" @@ -4478,7 +4877,7 @@ msgstr "" msgid "Sexually Suggestive" msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "" @@ -4488,18 +4887,26 @@ msgstr "" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "" @@ -4508,15 +4915,19 @@ msgstr "" msgid "Share Link" msgstr "" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "" @@ -4542,10 +4953,14 @@ msgstr "" msgid "Show badge and filter from feeds" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" @@ -4553,7 +4968,7 @@ msgstr "" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "" @@ -4562,11 +4977,15 @@ msgstr "" msgid "Show more like this" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "" @@ -4582,7 +5001,7 @@ msgstr "" msgid "Show re-posts in Following feed" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "" @@ -4602,7 +5021,7 @@ msgstr "" #~ msgid "Show replies with at least {value} {0}" #~ msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "" @@ -4611,7 +5030,7 @@ msgid "Show reposts in Following" msgstr "" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "" @@ -4635,17 +5054,17 @@ msgstr "" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4668,17 +5087,17 @@ msgstr "" msgid "Sign into Bluesky or create a new account" msgstr "" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -4694,7 +5113,7 @@ msgstr "" msgid "Sign-in Required" msgstr "" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "" @@ -4703,27 +5122,35 @@ msgstr "" msgid "Signed in as @{0}" msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." msgstr "" -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "" @@ -4735,19 +5162,24 @@ msgstr "" msgid "Sort replies to the same post by:" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" msgstr "" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "" @@ -4755,15 +5187,23 @@ msgstr "" msgid "Square" msgstr "" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "" + #: src/view/screens/Settings/index.tsx:862 #~ msgid "Status page" #~ msgstr "" -#: src/view/screens/Settings/index.tsx:896 +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" msgstr "" @@ -4775,29 +5215,31 @@ msgstr "" msgid "Step {0} of {1}" msgstr "" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "" #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Submit" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "" @@ -4806,11 +5248,11 @@ msgstr "" msgid "Subscribe to the {0} feed" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "" @@ -4822,7 +5264,7 @@ msgstr "" msgid "Suggested for you" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "" @@ -4837,23 +5279,23 @@ msgstr "" msgid "Switch Account" msgstr "" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "" @@ -4869,41 +5311,47 @@ msgstr "" msgid "Tap to view fully" msgstr "" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "" @@ -4911,7 +5359,7 @@ msgstr "" msgid "That handle is already taken." msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "" @@ -4928,11 +5376,15 @@ msgstr "" msgid "The Copyright Policy has been moved to <0/>" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "" @@ -4940,8 +5392,8 @@ msgstr "" msgid "The following steps will help customize your Bluesky experience." msgstr "" -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "" @@ -4961,37 +5413,40 @@ msgstr "" msgid "There are many feeds to try:" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "" -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "" -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "" #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "" @@ -4999,7 +5454,7 @@ msgstr "" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "" -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "" @@ -5012,7 +5467,8 @@ msgstr "" msgid "There was an issue fetching your lists. Tap here to try again." msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "" @@ -5020,32 +5476,32 @@ msgstr "" msgid "There was an issue syncing your preferences with the server" msgstr "" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "" -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "" @@ -5066,14 +5522,26 @@ msgstr "" msgid "This account has requested that users sign in to view their profile." msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:26 +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "" + #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." msgstr "" @@ -5091,21 +5559,21 @@ msgstr "" msgid "This content is not available because one of the users involved has blocked the other." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "" -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "" #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "" @@ -5113,11 +5581,15 @@ msgstr "" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "" + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "" @@ -5133,7 +5605,15 @@ msgstr "" msgid "This label was applied by the author." msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "" @@ -5141,7 +5621,7 @@ msgstr "" msgid "This link is taking you to the following website:" msgstr "" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "" @@ -5149,11 +5629,11 @@ msgstr "" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "" @@ -5174,7 +5654,7 @@ msgstr "" msgid "This service has not provided terms of service or a privacy policy." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "" @@ -5182,6 +5662,10 @@ msgstr "" msgid "This user doesn't have any followers." msgstr "" +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5207,16 +5691,16 @@ msgstr "" #~ msgid "This warning is only available for posts with media attached." #~ msgstr "" -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "" -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "" @@ -5228,15 +5712,19 @@ msgstr "" msgid "Threads Preferences" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "" +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "" @@ -5269,60 +5757,69 @@ msgctxt "action" msgid "Try again" msgstr "" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "" @@ -5336,7 +5833,7 @@ msgstr "" msgid "Unfollow" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "" @@ -5349,12 +5846,12 @@ msgstr "" #~ msgid "Unlike" #~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "" @@ -5371,37 +5868,50 @@ msgstr "" msgid "Unmute all {displayTag} posts" msgstr "" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" msgstr "" +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "" @@ -5409,7 +5919,7 @@ msgstr "" msgid "Update {displayName} in Lists" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "" @@ -5417,42 +5927,46 @@ msgstr "" msgid "Updating..." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "" @@ -5466,11 +5980,15 @@ msgstr "" msgid "Use my default browser" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "" @@ -5487,6 +6005,10 @@ msgstr "" msgid "User Blocked by \"{0}\"" msgstr "" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "" @@ -5504,13 +6026,13 @@ msgstr "" msgid "User list by {0}" msgstr "" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "" @@ -5526,11 +6048,11 @@ msgstr "" msgid "User Lists" msgstr "" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "" @@ -5538,6 +6060,13 @@ msgstr "" msgid "users followed by <0/>" msgstr "" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "" @@ -5546,7 +6075,7 @@ msgstr "" msgid "Users that have liked this content or profile" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "" @@ -5554,32 +6083,32 @@ msgstr "" #~ msgid "Verify {0}" #~ msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" msgstr "" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "" @@ -5587,15 +6116,15 @@ msgstr "" #~ msgid "Version {0}" #~ msgstr "" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" msgstr "" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "" @@ -5603,25 +6132,25 @@ msgstr "" msgid "View debug entry" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "" @@ -5633,7 +6162,7 @@ msgstr "" msgid "View the labeling service provided by @{0}" msgstr "" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "" @@ -5661,11 +6190,15 @@ msgstr "" msgid "We couldn't find any results for that hashtag." msgstr "" +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "" @@ -5673,7 +6206,7 @@ msgstr "" msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "" -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "" @@ -5689,7 +6222,7 @@ msgstr "" msgid "We were unable to load your configured labelers at this time." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "" @@ -5697,10 +6230,14 @@ msgstr "" msgid "We will let you know when your account is ready." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "" @@ -5709,7 +6246,7 @@ msgstr "" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "" -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "" @@ -5717,12 +6254,12 @@ msgstr "" msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "" -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "" @@ -5730,13 +6267,13 @@ msgstr "" #~ msgid "Welcome to <0>Bluesky" #~ msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "" @@ -5748,28 +6285,41 @@ msgstr "" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "" @@ -5777,35 +6327,35 @@ msgstr "" msgid "Wide" msgstr "" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" msgstr "" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" msgstr "" @@ -5826,6 +6376,14 @@ msgstr "" msgid "You can change these settings later." msgstr "" +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -5839,22 +6397,26 @@ msgstr "" msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "" -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "" #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "" -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "" +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -5885,6 +6447,10 @@ msgstr "" msgid "You have muted this user" msgstr "" +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "" @@ -5894,15 +6460,15 @@ msgstr "" msgid "You have no lists." msgstr "" -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." msgstr "" -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "" @@ -5910,11 +6476,19 @@ msgstr "" msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." msgstr "" -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "" @@ -5926,7 +6500,7 @@ msgstr "" msgid "You must be 18 years or older to enable adult content" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "" @@ -5942,7 +6516,7 @@ msgstr "" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "" -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" msgstr "" @@ -5956,7 +6530,7 @@ msgstr "" msgid "You're in line" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "" @@ -5973,11 +6547,11 @@ msgstr "" msgid "Your account" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "" @@ -5985,6 +6559,10 @@ msgstr "" msgid "Your birth date" msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "" @@ -5994,16 +6572,16 @@ msgid "Your default feed is \"Following\"" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "" @@ -6015,11 +6593,11 @@ msgstr "" msgid "Your full handle will be" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "" @@ -6027,22 +6605,26 @@ msgstr "" msgid "Your password has been changed successfully!" msgstr "" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "" -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "" diff --git a/src/locale/locales/es/messages.po b/src/locale/locales/es/messages.po index 0e1e7efb6b..8ffcf82d70 100644 --- a/src/locale/locales/es/messages.po +++ b/src/locale/locales/es/messages.po @@ -9,40 +9,44 @@ msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" "PO-Revision-Date: \n" -"Last-Translator: \n" -"Language-Team: \n" +"Last-Translator: brodieavoult\n" +"Language-Team: brodieavoult\n" "Plural-Forms: \n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" -msgstr "" +msgstr "(sin correo)" #: src/view/com/notifications/FeedItem.tsx:239 msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" msgstr "" -#: src/view/shell/desktop/RightNav.tsx:168 -#~ msgid "{0, plural, one {# invite code available} other {# invite codes available}}" -#~ msgstr "{0, plural, one {# invite code available} other {# invite codes available}}" +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" msgstr "" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" msgstr "" @@ -51,11 +55,11 @@ msgstr "" msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -67,7 +71,7 @@ msgstr "" msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" msgstr "" @@ -75,6 +79,10 @@ msgstr "" msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" msgstr "" +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "" + #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -87,36 +95,26 @@ msgstr "" msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" +msgstr "{following} siguiendo" + +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" msgstr "" -#: src/view/shell/desktop/RightNav.tsx:151 -#~ msgid "{invitesAvailable, plural, one {Invite codes: # available} other {Invite codes: # available}}" -#~ msgstr "{invitesAvailable, plural, one {Invite codes: # available} other {Invite codes: # available}}" - -#: src/view/screens/Settings.tsx:435 -#: src/view/shell/Drawer.tsx:664 -#~ msgid "{invitesAvailable} invite code available" -#~ msgstr "{invitesAvailable} código de invitación disponible" - -#: src/view/screens/Settings.tsx:437 -#: src/view/shell/Drawer.tsx:666 -#~ msgid "{invitesAvailable} invite codes available" -#~ msgstr "{invitesAvailable} códigos de invitación disponibles" - -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" -#: src/view/shell/Drawer.tsx:464 +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" -msgstr "" +msgstr "{numUnreadNotifications} sin leer" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" msgstr "" @@ -124,58 +122,38 @@ msgstr "" msgid "<0/> members" msgstr "<0/> miembros" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" msgstr "" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" msgstr "" #: src/view/shell/Drawer.tsx:96 #~ msgid "<0>{0} following" -#~ msgstr "" +#~ msgstr "<0>{0} siguiendo" #: src/components/ProfileHoverCard/index.web.tsx:437 #~ msgid "<0>{followers} <1>{pluralizedFollowers}" -#~ msgstr "" +#~ msgstr "<0>{followers} <1>seguidores" #: src/components/ProfileHoverCard/index.web.tsx:449 #: src/screens/Profile/Header/Metrics.tsx:45 #~ msgid "<0>{following} <1>following" -#~ msgstr "" +#~ msgstr "<0>{following} <1>siguiendo" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:31 -#~ msgid "<0>Choose your<1>Recommended<2>Feeds" -#~ msgstr "<0>Elige tus<1>publicaciones<2>recomendadas" - -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:38 -#~ msgid "<0>Follow some<1>Recommended<2>Users" -#~ msgstr "<0>Sigue a algunos<1>usuarios<2>recomendados" - -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." msgstr "" -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:21 -#~ msgid "<0>Welcome to<1>Bluesky" -#~ msgstr "" - #: src/screens/Profile/Header/Handle.tsx:43 msgid "⚠Invalid Handle" -msgstr "" +msgstr "⚠Nombre de usuario inválido" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" -msgstr "" - -#: src/view/com/util/moderation/LabelInfo.tsx:45 -#~ msgid "A content warning has been applied to this {0}." -#~ msgstr "Se ha aplicado una advertencia de contenido a este {0}." - -#: src/lib/hooks/useOTAUpdate.ts:16 -#~ msgid "A new version of the app is available. Please update to continue using the app." -#~ msgstr "Ya está disponible una nueva versión de la aplicación. Actualízala para seguir utilizándola." +msgstr "Confirmación 2FA" #: src/view/com/util/ViewHeader.tsx:91 #: src/view/screens/Search/Search.tsx:650 @@ -187,241 +165,236 @@ msgid "Access profile and other navigation links" msgstr "" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "Accesibilidad" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" -msgstr "" +msgstr "Ajustes de accesibilidad" #: src/Navigation.tsx:290 #: src/view/screens/AccessibilitySettings.tsx:63 msgid "Accessibility Settings" -msgstr "" +msgstr "Ajustes de accesibilidad" #: src/components/moderation/LabelsOnMe.tsx:42 #~ msgid "account" -#~ msgstr "" +#~ msgstr "cuenta" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "Cuenta" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" -msgstr "" +msgstr "Cuenta bloqueada" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" -msgstr "" +msgstr "Cuenta bloqueada" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" -msgstr "" +msgstr "Cuenta muteada" #: src/components/moderation/ModerationDetailsDialog.tsx:93 #: src/lib/moderation/useModerationCauseDescription.ts:91 msgid "Account Muted" -msgstr "" +msgstr "Cuenta muteada" #: src/components/moderation/ModerationDetailsDialog.tsx:82 msgid "Account Muted by List" -msgstr "" +msgstr "Cuenta muteada por lista" #: src/view/com/util/AccountDropdownBtn.tsx:41 msgid "Account options" -msgstr "Opciones de la cuenta" +msgstr "Opciones de cuenta" #: src/view/com/util/AccountDropdownBtn.tsx:25 msgid "Account removed from quick access" -msgstr "" +msgstr "Cuenta elimada de acceso rápido" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" -msgstr "" +msgstr "Cuenta desbloqueada" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" -msgstr "" +msgstr "Has dejado de seguir a esta cuenta" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" -msgstr "" +msgstr "Cuenta demuteada" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" -msgstr "Agregar" +msgstr "Añadir" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" -msgstr "Agregar una advertencia de cuenta" +msgstr "Añadir advertencia de contenido" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" -msgstr "Agregar un usuario a esta lista" +msgstr "Añadir cuenta a esta lista" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" -msgstr "Agregar una cuenta" +msgstr "Añadir cuenta" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" -msgstr "Agregar texto alt" +msgstr "Añadir texto alternativo" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "Añadir texto alternativo" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" -msgstr "" +msgstr "Añadir contraseña de app" -#: src/view/com/modals/report/InputIssueDetails.tsx:41 -#: src/view/com/modals/report/Modal.tsx:191 -#~ msgid "Add details" -#~ msgstr "Agregar detalles" - -#: src/view/com/modals/report/Modal.tsx:194 -#~ msgid "Add details to report" -#~ msgstr "Agregar detalles al informe" - -#: src/view/com/composer/Composer.tsx:467 -#~ msgid "Add link card" -#~ msgstr "Agregar una tarjeta de enlace" - -#: src/view/com/composer/Composer.tsx:472 -#~ msgid "Add link card:" -#~ msgstr "Agregar una tarjeta de enlace:" - -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" +msgstr "Añadir palabras silenciadas y etiquetas" + +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "Añadir feeds recomendados" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "Añade el siguiente registro DNS a tu dominio:" #: src/view/com/profile/ProfileMenu.tsx:263 #: src/view/com/profile/ProfileMenu.tsx:266 msgid "Add to Lists" -msgstr "Agregar a listas" +msgstr "Añadir a listas" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" -msgstr "Agregar a mis noticias" - -#: src/view/com/auth/onboarding/RecommendedFeedsItem.tsx:139 -#~ msgid "Added" -#~ msgstr "" +msgstr "Añadir a mis feeds" #: src/view/com/modals/ListAddRemoveUsers.tsx:191 #: src/view/com/modals/UserAddRemoveLists.tsx:144 msgid "Added to list" -msgstr "Agregar a una lista" +msgstr "Añadido a lista" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" -msgstr "" +msgstr "Añadido a mis feeds" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." -msgstr "Ajusta el número de Me gusta que debe tener una respuesta para que se muestre en tus noticias." +msgstr "Ajusta la cantidad de me gusta que una respuesta debe tener para aparecer en tu feed." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" -msgstr "Contenido para adultos" - -#: src/view/com/modals/ContentFilteringSettings.tsx:141 -#~ msgid "Adult content can only be enabled via the Web at <0/>." -#~ msgstr "" - -#: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:78 -#~ msgid "Adult content can only be enabled via the Web at <0>bsky.app." -#~ msgstr "" +msgstr "Contenido adulto" #: src/components/moderation/LabelPreference.tsx:242 msgid "Adult content is disabled." -msgstr "" +msgstr "El contenido adulto esta desactivado." #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "Avanzado" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." +msgstr "Todos tus feeds guardados, en un solo lugar." + +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" -msgstr "" +msgstr "¿Ya tienes un código?" #: src/screens/Login/ChooseAccountForm.tsx:49 msgid "Already signed in as @{0}" -msgstr "" +msgstr "Sesión ya iniciada como @{0}" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" -msgstr "Texto alt" +msgstr "Texto alternativo" #: src/view/com/util/post-embeds/GifEmbed.tsx:179 msgid "Alt Text" -msgstr "" +msgstr "Texto alternativo" #: src/view/com/composer/photos/Gallery.tsx:224 msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." -msgstr "El texto alternativo describe las imágenes para los usuarios ciegos y con baja visión, y ayuda a dar contexto a todos." +msgstr "El texto alternativo describe imágenes a usuarios ciegos o con baja visión, y ayuda a dar más contexto a todos." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." -msgstr "Se ha enviado un correo electrónico a {0}. Incluye un código de confirmación que puedes introducir a continuación." +msgstr "Un código de verificación ha sido enviado a {0}. Ingresa ese código a continuación." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." -msgstr "Se ha enviado un correo electrónico a tu dirección previa, {0}. Incluye un código de confirmación que puedes introducir a continuación." +msgstr "Un código de verificación ha sido enviado a tu dirección anterior, {0}. Ingresa ese código a continuación." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" -msgstr "" +msgstr "Ocurrió un error" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "Ocurrió un error al intentar eliminar el mensaje. Intenta de nuevo." -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" -msgstr "" +msgstr "Un problema no presente en estas opciones" #: src/components/hooks/useFollowMethods.ts:35 #: src/components/hooks/useFollowMethods.ts:50 @@ -430,218 +403,207 @@ msgstr "" #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:188 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:198 msgid "An issue occurred, please try again." -msgstr "" +msgstr "Ocurrió un problema. Intenta de nuevo." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" -msgstr "" +msgstr "Ocurrió un error desconocido" #: src/view/com/notifications/FeedItem.tsx:236 #: src/view/com/threadgate/WhoCanReply.tsx:180 msgid "and" msgstr "y" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" -msgstr "" +msgstr "Animales" #: src/view/com/util/post-embeds/GifEmbed.tsx:148 msgid "Animated GIF" -msgstr "" +msgstr "GIF animado" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" -msgstr "" +msgstr "Comportamiento antisocial" #: src/view/screens/LanguageSettings.tsx:95 msgid "App Language" -msgstr "Lenguaje de app" +msgstr "Idioma de interfaz" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" -msgstr "" +msgstr "Contraseña de app eliminada" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." -msgstr "" +msgstr "El nombre de una contraseña de app sólo puede contener letras, números, espacios, guiones, y guiones bajos." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." -msgstr "" +msgstr "El nombre de una contraseña de app deben tener al menos 4 caracteres." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" -msgstr "" - -#: src/view/screens/Settings.tsx:650 -#~ msgid "App passwords" -#~ msgstr "Contraseñas de la app" +msgstr "Ajustes de contraseñas de app" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "Contraseñas de la app" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" -msgstr "" +msgstr "Apelar" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" -msgstr "" +msgstr "Apelar la etiqueta de \"{0}\"" -#: src/view/com/util/forms/PostDropdownBtn.tsx:337 -#: src/view/com/util/forms/PostDropdownBtn.tsx:346 -#~ msgid "Appeal content warning" -#~ msgstr "Aviso sobre el contenido del recurso" - -#: src/view/com/modals/AppealLabel.tsx:65 -#~ msgid "Appeal Content Warning" -#~ msgstr "Aviso sobre el Contenido del Recurso" - -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" -msgstr "" +msgstr "Apelación enviada" #: src/components/moderation/LabelsOnMeDialog.tsx:193 #~ msgid "Appeal submitted." -#~ msgstr "" +#~ msgstr "Apelación enviada" -#: src/view/com/util/moderation/LabelInfo.tsx:52 -#~ msgid "Appeal this decision" -#~ msgstr "Apelar esta decisión" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "" -#: src/view/com/util/moderation/LabelInfo.tsx:56 -#~ msgid "Appeal this decision." -#~ msgstr "Apelar esta decisión." - -#: src/view/screens/Settings/index.tsx:430 +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" -msgstr "Aspecto exterior" +msgstr "Aparencia" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" -msgstr "¿Estás seguro de que quieres eliminar la contraseña de la app \"{name}\"?" +msgstr "¿Seguro que quieres eliminar la contraseña de app \"{name}\"?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "¿Seguro que quieres eliminar este mensaje? El mensaje será eliminado para ti, pero no para los otros participantes." + +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "¿Seguro que quieres abandonar esta conversación? Tus mensajes serán eliminados para ti, pero no para los otros participantes." + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" -msgstr "" +msgstr "¿Seguro que quieres eliminar {0} de tus feeds?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" -msgstr "¿Estás seguro de que quieres descartar este borrador?" +msgstr "¿Seguro que quieres descartar este borrador?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "¿Estás seguro?" -#: src/view/com/util/forms/PostDropdownBtn.tsx:322 -#~ msgid "Are you sure? This cannot be undone." -#~ msgstr "¿Estás seguro? Esto no puede deshacerse." - #: src/view/com/composer/select-language/SuggestedLanguage.tsx:60 msgid "Are you writing in <0>{0}?" -msgstr "" +msgstr "¿Estás escribiendo en <0>{0}?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" -msgstr "" +msgstr "Arte" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "Desnudez artística o no erótica." #: src/screens/Signup/StepHandle.tsx:119 msgid "At least 3 characters" -msgstr "" +msgstr "Al menos 3 caracteres" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" -msgstr "Regresar" - -#: src/view/com/post-thread/PostThread.tsx:480 -#~ msgctxt "action" -#~ msgid "Back" -#~ msgstr "" +msgstr "Atrás" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:144 msgid "Based on your interest in {interestsText}" -msgstr "" +msgstr "Basado en tus intereses en {interestsText}" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" -msgstr "Conceptos básicos" +msgstr "General" #: src/components/dialogs/BirthDateSettings.tsx:107 msgid "Birthday" msgstr "Cumpleaños" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "Cumpleaños:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" -msgstr "" +msgstr "Bloquear" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" -msgstr "" +msgstr "Bloquear cuenta" #: src/view/com/profile/ProfileMenu.tsx:300 #: src/view/com/profile/ProfileMenu.tsx:307 msgid "Block Account" -msgstr "Bloquear una cuenta" +msgstr "Bloquear cuenta" #: src/view/com/profile/ProfileMenu.tsx:344 msgid "Block Account?" -msgstr "" +msgstr "¿Bloquear cuenta?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "Bloquear cuentas" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" -msgstr "Bloquear una lista" +msgstr "Bloquear lista" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "¿Bloquear estas cuentas?" -#: src/view/screens/ProfileList.tsx:320 -#~ msgid "Block this List" -#~ msgstr "" - #: src/view/com/lists/ListCard.tsx:110 #: src/view/com/util/post-embeds/QuoteEmbed.tsx:71 msgid "Blocked" -msgstr "" +msgstr "Bloqueado" #: src/screens/Moderation/index.tsx:267 msgid "Blocked accounts" @@ -654,27 +616,27 @@ msgstr "Cuentas bloqueadas" #: src/view/com/profile/ProfileMenu.tsx:356 msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." -msgstr "Las cuentas bloqueadas no pueden responder en tus hilos, mencionarte ni interactuar contigo de ninguna otra forma." +msgstr "Si bloqueas a una cuenta no podrán responder en tus hilos, mencionarte ni interactuar contigo de ninguna manera." #: src/view/screens/ModerationBlockedAccounts.tsx:117 msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." -msgstr "Las cuentas bloqueadas no pueden responder en tus hilos, mencionarte ni interactuar contigo de ninguna otra forma. Tú no verás su contenido y ellos no podrán ver el tuyo." +msgstr "Si bloqueas a una cuenta no podrán responder en tus hilos, mencionarte ni interactuar contigo de ninguna manera. No verás su contenido y no podrán ver el tuyo." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." -msgstr "Publicación bloqueada." +msgstr "Post bloqueado." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." -msgstr "" +msgstr "Si bloqueas a un etiquetador aún podrán seguir aplicando etiquetas a tu cuenta." -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." -msgstr "El bloque es público. Las cuentas bloqueadas no pueden responder en tus hilos, mencionarte ni interactuar contigo de ninguna otra forma." +msgstr "El bloqueo es público. Si bloqueas a una cuenta no podrán responder en tus hilos, mencionarte ni interactuar contigo de ninguna manera." #: src/view/com/profile/ProfileMenu.tsx:353 msgid "Blocking will not prevent labels from being applied on your account, but it will stop this account from replying in your threads or interacting with you." -msgstr "" +msgstr "Si bloqueas a un etiquetador aún podrán seguir aplicando etiquetas a tu cuenta, pero evitará que respondan en tus hilos, te mencionen o interactúen contigo de ninguna manera." #: src/view/com/auth/SplashScreen.web.tsx:154 msgid "Blog" @@ -687,34 +649,11 @@ msgstr "Bluesky" #: src/view/com/auth/server-input/index.tsx:154 msgid "Bluesky is an open network where you can choose your hosting provider. Custom hosting is now available in beta for developers." -msgstr "" - -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:80 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:82 -#~ msgid "Bluesky is flexible." -#~ msgstr "Bluesky es flexible." - -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:69 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:71 -#~ msgid "Bluesky is open." -#~ msgstr "Bluesky es abierto." - -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:56 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:58 -#~ msgid "Bluesky is public." -#~ msgstr "Bluesky es público." - -#: src/view/com/modals/Waitlist.tsx:70 -#~ msgid "Bluesky uses invites to build a healthier community. If you don't know anybody with an invite, you can sign up for the waitlist and we'll send one soon." -#~ msgstr "Bluesky utiliza las invitaciones para construir una comunidad más saludable. Si no conoces a nadie con una invitación, puedes apuntarte a la lista de espera y te enviaremos una en breve." +msgstr "Bluesky es una red abierta donde puedes elegir un proveedor de servicio. Servicios personalizados ya están disponibles en beta para desarrolladores." #: src/screens/Moderation/index.tsx:533 msgid "Bluesky will not show your profile and posts to logged-out users. Other apps may not honor this request. This does not make your account private." -msgstr "Bluesky no mostrará tu perfil ni tus publicaciones a los usuarios que hayan cerrado sesión. Es posible que otras aplicaciones no acepten esta solicitud. Esto no hace que tu cuenta sea privada." - -#: src/view/com/modals/ServerInput.tsx:78 -#~ msgid "Bluesky.Social" -#~ msgstr "Bluesky.Social" +msgstr "Bluesky no mostrará tu perfil o posts a usuarios que no hayan iniciado sesión. Es posible que otras apps no respeten esta solicitud. Esto no hace que tu cuenta sea privada." #: src/lib/moderation/useLabelBehaviorDescription.ts:53 msgid "Blur images" @@ -724,55 +663,48 @@ msgstr "" msgid "Blur images and filter from feeds" msgstr "" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" -msgstr "" +msgstr "Libros" -#: src/view/screens/Settings/index.tsx:893 -#~ msgid "Build version {0} {1}" -#~ msgstr "Versión {0} {1}" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "" #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "Negocios" -#: src/view/com/modals/ServerInput.tsx:115 -#~ msgid "Button disabled. Input custom domain to proceed." -#~ msgstr "" - #: src/view/com/profile/ProfileSubpageHeader.tsx:157 msgid "by —" -msgstr "" - -#: src/view/com/auth/onboarding/RecommendedFeedsItem.tsx:100 -#~ msgid "by {0}" -#~ msgstr "" +msgstr "por —" #: src/components/LabelingServiceCard/index.tsx:56 msgid "By {0}" -msgstr "" +msgstr "By {0}" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:112 msgid "by @{0}" -msgstr "" +msgstr "by @{0}" #: src/view/com/profile/ProfileSubpageHeader.tsx:161 msgid "by <0/>" -msgstr "" +msgstr "by <0/>" #: src/screens/Signup/StepInfo/Policies.tsx:74 msgid "By creating an account you agree to the {els}." -msgstr "" +msgstr "Al crear una cuenta, aceptas nuestros {els}." #: src/view/com/profile/ProfileSubpageHeader.tsx:159 msgid "by you" -msgstr "" +msgstr "por ti" #: src/view/com/composer/photos/OpenCameraBtn.tsx:73 msgid "Camera" msgstr "Cámara" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "Sólo puede contener letras, números, espacios, guiones y guiones bajos. Debe tener al menos 4 caracteres, pero no más de 32." @@ -780,11 +712,11 @@ msgstr "Sólo puede contener letras, números, espacios, guiones y guiones bajos #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -796,28 +728,28 @@ msgstr "Sólo puede contener letras, números, espacios, guiones y guiones bajos #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "Cancelar" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" -msgstr "" +msgstr "Cancelar" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "Cancelar la eliminación de la cuenta" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" -msgstr "Cancelar identificador de cambio" +msgstr "Cancelar cambio de nombre de usuario" #: src/view/com/modals/crop-image/CropImage.web.tsx:159 msgid "Cancel image crop" @@ -825,156 +757,137 @@ msgstr "Cancelar recorte de imagen" #: src/view/com/modals/EditProfile.tsx:245 msgid "Cancel profile editing" -msgstr "Cancelar la edición de perfil" +msgstr "Cancelar edición de perfil" #: src/view/com/modals/Repost.tsx:79 msgid "Cancel quote post" -msgstr "Cancelar la publicación de un presupuesto" +msgstr "Cancelar citación" #: src/view/com/modals/ListAddRemoveUsers.tsx:87 #: src/view/shell/desktop/Search.tsx:214 msgid "Cancel search" msgstr "Cancelar búsqueda" -#: src/view/com/modals/Waitlist.tsx:136 -#~ msgid "Cancel waitlist signup" -#~ msgstr "Cancelar la inscripción en la lista de espera" - #: src/view/com/modals/LinkWarning.tsx:106 msgid "Cancels opening the linked website" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" -msgstr "" +msgstr "Cambiar" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "Cambiar" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" -msgstr "Cambiar el identificador" +msgstr "Cambiar nombre de usuario" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" -msgstr "Cambiar el identificador" +msgstr "Cambiar nombre de usuario" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "Cambiar mi correo electrónico" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" -msgstr "" +msgstr "Cambiar contraseña" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" -msgstr "" +msgstr "Cambiar contraseña" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:73 msgid "Change post language to {0}" -msgstr "" +msgstr "Cambiar idioma del post a {0}" -#: src/view/screens/Settings/index.tsx:733 -#~ msgid "Change your Bluesky password" -#~ msgstr "" - -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" -msgstr "Cambiar tu correo electrónico" +msgstr "Cambiar correo electrónico" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" -msgstr "" +msgstr "Chat" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" -msgstr "" +msgstr "Chat muteado" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" +msgstr "Ajustes de chat" + +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" -msgstr "" - -#: src/screens/Messages/Conversation/index.tsx:26 -#~ msgid "Chat with {chatId}" -#~ msgstr "" +msgstr "Chat demuteado" #: src/screens/Deactivated.tsx:78 #: src/screens/Deactivated.tsx:82 msgid "Check my status" msgstr "" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:122 -#~ msgid "Check out some recommended feeds. Tap + to add them to your list of pinned feeds." -#~ msgstr "Echa un vistazo a algunas publicaciones recomendadas. Pulsa + para añadirlos a tu lista de publicaciones ancladas." - -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:186 -#~ msgid "Check out some recommended users. Follow them to see similar users." -#~ msgstr "Echa un vistazo a algunos usuarios recomendados. Síguelos para ver usuarios similares." - -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." -msgstr "" +msgstr "Te enviamos un código de inicio de sesión a tu correo. Introducelo aquí." -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" -msgstr "Consulta tu bandeja de entrada para recibir un correo electrónico con el código de confirmación que debes introducir a continuación:" +msgstr "Te enviamos un código de verificación a tu correo. Introducelo aquí:" #: src/view/com/modals/Threadgate.tsx:72 msgid "Choose \"Everybody\" or \"Nobody\"" -msgstr "" - -#: src/view/screens/Settings/index.tsx:697 -#~ msgid "Choose a new Bluesky username or create" -#~ msgstr "" +msgstr "Elige \"Todos\" o \"Nadie\"" #: src/view/com/auth/server-input/index.tsx:79 msgid "Choose Service" -msgstr "Elige un Servicio" +msgstr "Elige proveedor" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." -msgstr "" +msgstr "Tu eliges los algoritmos que usar en tus feed." -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:83 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:85 -#~ msgid "Choose the algorithms that power your experience with custom feeds." -#~ msgstr "Elige los algoritmos que potencian tu experiencia con publicaciones personalizadas." - -#: src/screens/Onboarding/StepAlgoFeeds/index.tsx:103 -#~ msgid "Choose your algorithmic feeds" -#~ msgstr "" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "Elige este color como tu avatar" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" -msgstr "" +msgstr "Elige tus feeds principales" #: src/screens/Signup/StepInfo/index.tsx:114 msgid "Choose your password" msgstr "Elige tu contraseña" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "Borrar todos los datos de almacenamiento heredados" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "Borrar todos los datos de almacenamiento heredados (reiniciar después de esto)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "Borrar todos los datos de almacenamiento" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "Borrar todos los datos de almacenamiento (reiniciar después de esto)" @@ -983,39 +896,48 @@ msgstr "Borrar todos los datos de almacenamiento (reiniciar después de esto)" msgid "Clear search query" msgstr "Borrar consulta de búsqueda" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "" #: src/view/screens/Support.tsx:40 msgid "click here" -msgstr "" +msgstr "has clic aquí" + +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "Has clic aquí para agregar uno." #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" +msgstr "Has clic aquí para abrir el menu de {tag}" + +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" msgstr "" -#: src/components/RichText.tsx:198 -#~ msgid "Click here to open tag menu for #{tag}" -#~ msgstr "" - -#: src/screens/Onboarding/index.tsx:35 +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" +msgstr "Clima" + +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" msgstr "" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" -msgstr "" +msgstr "Cerrar" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "" @@ -1027,7 +949,7 @@ msgstr "Cerrar la alerta" msgid "Close bottom drawer" msgstr "Cierra el cajón inferior" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "" @@ -1043,6 +965,10 @@ msgstr "Cerrar la imagen" msgid "Close image viewer" msgstr "Cerrar el visor de imagen" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "Cerrar el pie de página de navegación" @@ -1060,7 +986,7 @@ msgstr "" msgid "Closes password update alert" msgstr "" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "" @@ -1072,11 +998,11 @@ msgstr "" msgid "Collapses list of users for a given notification" msgstr "" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "" @@ -1085,7 +1011,7 @@ msgstr "" msgid "Community Guidelines" msgstr "Directrices de la comunidad" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "" @@ -1093,7 +1019,7 @@ msgstr "" msgid "Complete the challenge" msgstr "" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "" @@ -1115,24 +1041,18 @@ msgstr "" #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "Confirmar" -#: src/view/com/modals/Confirm.tsx:75 -#: src/view/com/modals/Confirm.tsx:78 -#~ msgctxt "action" -#~ msgid "Confirm" -#~ msgstr "" - -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "Confirmar el cambio" @@ -1140,14 +1060,10 @@ msgstr "Confirmar el cambio" msgid "Confirm content language settings" msgstr "Confirmar la configuración del idioma del contenido" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "Confirmar eliminación de cuenta" -#: src/view/com/modals/ContentFilteringSettings.tsx:156 -#~ msgid "Confirm your age to enable adult content." -#~ msgstr "" - #: src/screens/Moderation/index.tsx:301 msgid "Confirm your age:" msgstr "" @@ -1156,21 +1072,17 @@ msgstr "" msgid "Confirm your birthdate" msgstr "" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "Código de confirmación" -#: src/view/com/modals/Waitlist.tsx:120 -#~ msgid "Confirms signing up {email} to the waitlist" -#~ msgstr "" - -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "Conectando..." @@ -1186,14 +1098,6 @@ msgstr "" msgid "Content Blocked" msgstr "" -#: src/view/screens/Moderation.tsx:83 -#~ msgid "Content filtering" -#~ msgstr "Filtro de contenido" - -#: src/view/com/modals/ContentFilteringSettings.tsx:44 -#~ msgid "Content Filtering" -#~ msgstr "Filtro de contenido" - #: src/screens/Moderation/index.tsx:285 msgid "Content filters" msgstr "" @@ -1201,7 +1105,7 @@ msgstr "" #: src/view/com/modals/lang-settings/ContentLanguagesSettings.tsx:74 #: src/view/screens/LanguageSettings.tsx:278 msgid "Content Languages" -msgstr "Lenguajes de contenido" +msgstr "Idiomas de contenido" #: src/components/moderation/ModerationDetailsDialog.tsx:75 #: src/lib/moderation/useModerationCauseDescription.ts:75 @@ -1225,8 +1129,9 @@ msgstr "" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "Continuar" @@ -1236,8 +1141,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1251,22 +1157,26 @@ msgstr "" msgid "Continue to the next step without following any accounts" msgstr "" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "Copiado" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1276,15 +1186,15 @@ msgstr "" msgid "Copied!" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "Copiar" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "" @@ -1293,60 +1203,52 @@ msgstr "" msgid "Copy code" msgstr "" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "Copia el enlace a la lista" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 msgid "Copy link to post" -msgstr "Copia el enlace a la publicación" - -#: src/view/com/profile/ProfileHeader.tsx:295 -#~ msgid "Copy link to profile" -#~ msgstr "Copia el enlace al perfil" +msgstr "Copia el enlace a la post" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" msgstr "" #: src/view/com/util/forms/PostDropdownBtn.tsx:256 #: src/view/com/util/forms/PostDropdownBtn.tsx:258 msgid "Copy post text" -msgstr "Copiar el texto de la publicación" +msgstr "Copiar el texto de la post" #: src/Navigation.tsx:253 #: src/view/screens/CopyrightPolicy.tsx:29 msgid "Copyright Policy" msgstr "Política de derechos de autor" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" -msgstr "" +msgstr "No se pudo salir de este chat" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" -msgstr "No se ha podido cargar las publicaciones" +msgstr "No se pudo cargar este feed" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" -msgstr "No se ha podido cargar la lista" +msgstr "No se pudo cargar esta lista" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "No se pudo cargar los perfiles. Intente de nuevo luego." -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" -msgstr "" +msgstr "No se pudo mutear al chat" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" - -#: src/view/com/auth/create/Step2.tsx:91 -#~ msgid "Country" +#~ msgid "Could not unmute chat" #~ msgstr "" #: src/view/com/auth/SplashScreen.tsx:57 @@ -1354,7 +1256,7 @@ msgstr "" msgid "Create a new account" msgstr "Crear una cuenta nueva" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "" @@ -1367,7 +1269,11 @@ msgstr "Crear una cuenta" msgid "Create an account" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "" @@ -1376,27 +1282,15 @@ msgstr "" msgid "Create new account" msgstr "Crear una cuenta nueva" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "Creado {0}" -#: src/view/screens/ProfileFeed.tsx:616 -#~ msgid "Created by <0/>" -#~ msgstr "" - -#: src/view/screens/ProfileFeed.tsx:614 -#~ msgid "Created by you" -#~ msgstr "" - -#: src/view/com/composer/Composer.tsx:469 -#~ msgid "Creates a card with a thumbnail. The card links to {url}" -#~ msgstr "" - -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "" @@ -1405,25 +1299,21 @@ msgstr "" msgid "Custom" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "Dominio personalizado" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "" #: src/view/screens/PreferencesExternalEmbeds.tsx:56 msgid "Customize media from external sites." -msgstr "" +msgstr "Preferencias sobre medios externos." -#: src/view/screens/Settings.tsx:687 -#~ msgid "Danger Zone" -#~ msgstr "Zona de peligro" - -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "" @@ -1431,7 +1321,7 @@ msgstr "" msgid "Dark mode" msgstr "" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "" @@ -1439,7 +1329,7 @@ msgstr "" msgid "Date of birth" msgstr "" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "" @@ -1447,14 +1337,14 @@ msgstr "" msgid "Debug panel" msgstr "" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "Borrar la cuenta" @@ -1462,66 +1352,71 @@ msgstr "Borrar la cuenta" #~ msgid "Delete Account" #~ msgstr "Borrar la cuenta" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" msgstr "" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "Borrar la contraseña de la app" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" - -#: src/view/screens/ProfileList.tsx:417 -msgid "Delete List" -msgstr "Borrar la lista" - -#: src/components/dms/MessageMenu.tsx:119 -msgid "Delete message" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" msgstr "" #: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "" + +#: src/view/screens/ProfileList.tsx:470 +msgid "Delete List" +msgstr "Borrar la lista" + +#: src/components/dms/MessageMenu.tsx:122 +msgid "Delete message" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "Borrar mi cuenta" -#: src/view/screens/Settings.tsx:706 -#~ msgid "Delete my account…" -#~ msgstr "Borrar mi cuenta..." - -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "" #: src/view/com/util/forms/PostDropdownBtn.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:375 msgid "Delete post" -msgstr "Borrar una publicación" +msgstr "Borrar una post" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "" #: src/view/com/util/forms/PostDropdownBtn.tsx:387 msgid "Delete this post?" -msgstr "¿Borrar esta publicación?" +msgstr "¿Borrar esta post?" #: src/view/com/util/post-embeds/QuoteEmbed.tsx:80 msgid "Deleted" msgstr "" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." -msgstr "Se borró la publicación." +msgstr "Se borró la post." + +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "" #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 @@ -1530,27 +1425,27 @@ msgstr "Se borró la publicación." msgid "Description" msgstr "Descripción" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" msgstr "" -#: src/view/screens/Settings.tsx:760 -#~ msgid "Developer Tools" -#~ msgstr "Herramientas de desarrollador" - -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "¿Quieres decir algo?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" -msgstr "" +msgstr "No reproducir GIFs automáticamente" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "" @@ -1558,30 +1453,20 @@ msgstr "" msgid "Disable haptic feedback" msgstr "" -#: src/view/screens/Settings/index.tsx:697 -#~ msgid "Disable haptics" -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:697 -#~ msgid "Disable vibrations" -#~ msgstr "" - #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "Descartar" -#: src/view/com/composer/Composer.tsx:145 -#~ msgid "Discard draft" -#~ msgstr "Descartar el borrador" - -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "" @@ -1595,11 +1480,7 @@ msgstr "Evitar que las aplicaciones muestren mi cuenta a los usuarios desconecta msgid "Discover new custom feeds" msgstr "" -#: src/view/screens/Feeds.tsx:473 -#~ msgid "Discover new feeds" -#~ msgstr "Descubrir nuevas publicaciones" - -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "" @@ -1611,9 +1492,9 @@ msgstr "Mostrar el nombre" msgid "Display Name" msgstr "Mostrar el nombre" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" -msgstr "" +msgstr "Con panel de DNS" #: src/lib/moderation/useGlobalLabelStrings.ts:39 msgid "Does not include nudity." @@ -1623,39 +1504,35 @@ msgstr "" msgid "Doesn't begin or end with a hyphen" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "¡Dominio verificado!" -#: src/view/com/auth/create/Step1.tsx:170 -#~ msgid "Don't have an invite code?" -#~ msgstr "" - #: src/components/dialogs/BirthDateSettings.tsx:119 #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "Listo" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1669,16 +1546,8 @@ msgstr "" msgid "Done{extraText}" msgstr "Listo{extraText}" -#: src/view/com/auth/login/ChooseAccountForm.tsx:46 -#~ msgid "Double tap to sign in" -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:755 -#~ msgid "Download Bluesky account data (repository)" -#~ msgstr "" - -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "" @@ -1690,41 +1559,41 @@ msgstr "" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" -msgstr "" +msgstr "p. ej. alice" #: src/view/com/modals/EditProfile.tsx:186 msgid "e.g. Alice Roberts" -msgstr "" +msgstr "p. ej. Alice Roberts" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" -msgstr "" +msgstr "p. ej. alice.com" #: src/view/com/modals/EditProfile.tsx:204 msgid "e.g. Artist, dog-lover, and avid reader." -msgstr "" +msgstr "p. ej. Artista, amante de los perros, y lector ávido." #: src/lib/moderation/useGlobalLabelStrings.ts:43 msgid "E.g. artistic nudes." -msgstr "" +msgstr "p. ej. Desnudez artística." #: src/view/com/modals/CreateOrEditList.tsx:286 msgid "e.g. Great Posters" -msgstr "" +msgstr "p. ej. Grandes usuarios" #: src/view/com/modals/CreateOrEditList.tsx:287 msgid "e.g. Spammers" -msgstr "" +msgstr "p. ej. Spammers" #: src/view/com/modals/CreateOrEditList.tsx:315 msgid "e.g. The posters who never miss." -msgstr "" +msgstr "p. ej. Usuarios que simpre aciertan." #: src/view/com/modals/CreateOrEditList.tsx:316 msgid "e.g. Users that repeatedly reply with ads." -msgstr "" +msgstr "p. ej. Usuarios que constantemente responden con publicidad." #: src/view/com/modals/InviteCodes.tsx:97 msgid "Each code works once. You'll receive more invite codes periodically." @@ -1735,7 +1604,7 @@ msgctxt "action" msgid "Edit" msgstr "" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "" @@ -1745,7 +1614,7 @@ msgstr "" msgid "Edit image" msgstr "Editar la imagen" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "Editar los detalles de la lista" @@ -1754,8 +1623,8 @@ msgid "Edit Moderation List" msgstr "" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "Editar mis noticias" @@ -1763,18 +1632,18 @@ msgstr "Editar mis noticias" msgid "Edit my profile" msgstr "Editar mi perfil" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "Editar el perfil" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "Editar el perfil" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "Editar mis noticias guardadas" @@ -1790,16 +1659,16 @@ msgstr "" msgid "Edit your profile description" msgstr "" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "Correo electrónico" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "" @@ -1807,20 +1676,20 @@ msgstr "" msgid "Email address" msgstr "Dirección de correo electrónico" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "Correo electrónico actualizado" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "Correo electrónico:" @@ -1860,15 +1729,11 @@ msgstr "" msgid "Enable external media" msgstr "" -#: src/view/com/modals/EmbedConsent.tsx:97 -#~ msgid "Enable External Media" -#~ msgstr "" - #: src/view/screens/PreferencesExternalEmbeds.tsx:76 msgid "Enable media players for" -msgstr "" +msgstr "Reproducir multimedia de" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "Activa esta opción para ver sólo las respuestas de las personas a las que sigues." @@ -1876,6 +1741,8 @@ msgstr "Activa esta opción para ver sólo las respuestas de las personas a las msgid "Enable this source only" msgstr "" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "" @@ -1884,7 +1751,11 @@ msgstr "" msgid "End of feed" msgstr "Fin de noticias" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "" @@ -1892,12 +1763,12 @@ msgstr "" msgid "Enter a password" msgstr "" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "" @@ -1905,7 +1776,7 @@ msgstr "" msgid "Enter the code you received to change your password." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "Introduce el dominio que quieres utilizar" @@ -1917,36 +1788,32 @@ msgstr "Introduce el correo electrónico que utilizaste para crear tu cuenta. Te msgid "Enter your birth date" msgstr "" -#: src/view/com/modals/Waitlist.tsx:78 -#~ msgid "Enter your email" -#~ msgstr "" - #: src/screens/Login/ForgotPasswordForm.tsx:105 #: src/screens/Signup/StepInfo/index.tsx:92 msgid "Enter your email address" msgstr "Introduce la dirección de correo electrónico" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "Introduce tu nueva dirección de correo electrónico a continuación." -#: src/view/com/auth/create/Step2.tsx:188 -#~ msgid "Enter your phone number" -#~ msgstr "" - #: src/screens/Login/index.tsx:101 msgid "Enter your username and password" msgstr "Introduce tu nombre de usuario y contraseña" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "Error:" @@ -1955,15 +1822,30 @@ msgstr "Error:" msgid "Everybody" msgstr "Todos" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "" @@ -1980,10 +1862,6 @@ msgstr "" msgid "Exits inputting search query" msgstr "" -#: src/view/com/modals/Waitlist.tsx:138 -#~ msgid "Exits signing up for waitlist with {email}" -#~ msgstr "" - #: src/view/com/lightbox/Lightbox.web.tsx:183 msgid "Expand alt text" msgstr "Expandir el texto alt" @@ -2001,37 +1879,37 @@ msgstr "" msgid "Explicit sexual images." msgstr "" -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "" #: src/components/dialogs/EmbedConsent.tsx:55 #: src/components/dialogs/EmbedConsent.tsx:59 msgid "External Media" -msgstr "" +msgstr "Medios externos" #: src/components/dialogs/EmbedConsent.tsx:71 #: src/view/screens/PreferencesExternalEmbeds.tsx:67 msgid "External media may allow websites to collect information about you and your device. No information is sent or requested until you press the \"play\" button." -msgstr "" +msgstr "Es posible que medios externos permitan que otros sitios recopilen datos sobre ti y tu dispositivo. No se envía o solicita ningún tipo de información hasta que presiones el botón de \"play\"." #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" -msgstr "" +msgstr "Medios externos" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" -msgstr "" +msgstr "Medios externos" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "" @@ -2039,7 +1917,7 @@ msgstr "" msgid "Failed to create the list. Check your internet connection and try again." msgstr "" -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" msgstr "" @@ -2047,68 +1925,68 @@ msgstr "" msgid "Failed to delete post, please try again" msgstr "" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" msgstr "" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 -#~ msgid "Failed to load recommended feeds" -#~ msgstr "Error al cargar las noticias recomendadas" +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "Noticias fuera de línea" -#: src/view/com/feeds/FeedPage.tsx:143 -#~ msgid "Feed Preferences" -#~ msgstr "Preferencias de noticias" - #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "Comentarios" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" -msgstr "Noticias" +msgstr "Feeds" -#: src/screens/Onboarding/StepAlgoFeeds/index.tsx:106 -#~ msgid "Feeds are created by users and can give you entirely new experiences." -#~ msgstr "" - -#: src/screens/Onboarding/StepAlgoFeeds/index.tsx:106 -#~ msgid "Feeds are created by users and organizations. They offer you varied experiences and suggest content you may like using algorithms." -#~ msgstr "" - -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:58 -#~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." -#~ msgstr "Se crean las noticias por los usuarios para crear colecciones de contenidos. Elige algunas noticias que te parezcan interesantes." - -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "Las noticias son algoritmos personalizados que los usuarios construyen con un poco de experiencia en codificación. <0/> para más información." @@ -2116,15 +1994,19 @@ msgstr "Las noticias son algoritmos personalizados que los usuarios construyen c msgid "Feeds can be topical as well!" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "" @@ -2138,35 +2020,19 @@ msgstr "" msgid "Find posts and users on Bluesky" msgstr "" -#: src/view/screens/Search/Search.tsx:589 -#~ msgid "Find users on Bluesky" -#~ msgstr "Encontrar usuarios en Bluesky" - -#: src/view/screens/Search/Search.tsx:587 -#~ msgid "Find users with the search tool on the right" -#~ msgstr "Encuentra usuarios con la herramienta de búsqueda de la derecha" - -#: src/view/com/auth/onboarding/RecommendedFollowsItem.tsx:155 -#~ msgid "Finding similar accounts..." -#~ msgstr "Encontrar cuentas similares..." - -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "" -#: src/view/screens/PreferencesHomeFeed.tsx:111 -#~ msgid "Fine-tune the content you see on your home screen." -#~ msgstr "Ajusta el contenido que ves en tu pantalla de inicio." - #: src/view/screens/PreferencesThreads.tsx:60 msgid "Fine-tune the discussion threads." msgstr "Ajusta los hilos de discusión." -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "" @@ -2179,10 +2045,10 @@ msgstr "" msgid "Flip vertically" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -2191,18 +2057,18 @@ msgstr "Seguir" #: src/view/com/profile/FollowButton.tsx:69 msgctxt "action" msgid "Follow" -msgstr "" +msgstr "Seguir" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" -msgstr "" +msgstr "Seguir {0}" #: src/view/com/profile/ProfileMenu.tsx:242 #: src/view/com/profile/ProfileMenu.tsx:253 msgid "Follow Account" -msgstr "" +msgstr "Seguir cuenta" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:187 msgid "Follow All" @@ -2216,98 +2082,88 @@ msgstr "" msgid "Follow selected accounts and continue to the next step" msgstr "" -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:65 -#~ msgid "Follow some users to get started. We can recommend you more users based on who you find interesting." -#~ msgstr "Sigue a algunos usuarios para empezar. Podemos recomendarte más usuarios en función de los que te parezcan interesantes." - #: src/view/com/profile/ProfileCard.tsx:226 msgid "Followed by {0}" -msgstr "" +msgstr "Seguido por {0}" #: src/view/com/modals/Threadgate.tsx:98 msgid "Followed users" msgstr "Usuarios seguidos" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "Solo usuarios seguidos" #: src/view/com/notifications/FeedItem.tsx:164 msgid "followed you" -msgstr "" +msgstr "ha comenzado a seguirte" #: src/view/com/profile/ProfileFollowers.tsx:104 #: src/view/screens/ProfileFollowers.tsx:25 msgid "Followers" msgstr "Seguidores" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "Siguiendo" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" -msgstr "" +msgstr "Siguiendo {0}" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" -msgstr "" +msgstr "Feed de Siguiendo" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" -msgstr "" +msgstr "Feed de Siguiendo" #: src/screens/Profile/Header/Handle.tsx:24 msgid "Follows you" -msgstr "Te siguen" +msgstr "Te sigue" #: src/view/com/profile/ProfileCard.tsx:151 msgid "Follows You" -msgstr "" +msgstr "Te sigue" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" -msgstr "" +msgstr "Comida" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "Por razones de seguridad, tendremos que enviarte un código de confirmación a tu dirección de correo electrónico." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." -msgstr "Por razones de seguridad, no podrás volver a verla. Si pierdes esta contraseña, tendrás que generar una nueva." - -#: src/view/com/auth/login/LoginForm.tsx:244 -#~ msgid "Forgot" -#~ msgstr "Lo olvidé" - -#: src/view/com/auth/login/LoginForm.tsx:241 -#~ msgid "Forgot password" -#~ msgstr "Olvidé mi contraseña" +msgstr "Por razones de seguridad, no podrás volver a verla de nuevo. Si pierdes esta contraseña, tendrás que generar una nueva." #: src/screens/Login/index.tsx:129 #: src/screens/Login/index.tsx:144 msgid "Forgot Password" msgstr "Olvidé mi contraseña" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" -msgstr "" +msgstr "¿Has olvidado tu contraseña?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "" @@ -2315,7 +2171,7 @@ msgstr "" msgid "From @{sanitizedAuthor}" msgstr "" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "" @@ -2324,37 +2180,46 @@ msgstr "" msgid "Gallery" msgstr "Galería" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "Comenzar" -#: src/lib/moderation/useReportOptions.ts:37 -msgid "Glaring violations of law or terms of service" +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" msgstr "" +#: src/lib/moderation/useReportOptions.ts:38 +msgid "Glaring violations of law or terms of service" +msgstr "Violaciones flagrantes de la Ley o de los Términos de servicio" + #: src/components/moderation/ScreenHider.tsx:151 #: src/components/moderation/ScreenHider.tsx:160 #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" -msgstr "Regresar" +msgstr "Volver" #: src/components/Error.tsx:103 #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" -msgstr "Regresar" +msgstr "Volver" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2369,61 +2234,60 @@ msgstr "" msgid "Go Home" msgstr "" -#: src/view/screens/Search/Search.tsx:827 -#: src/view/shell/desktop/Search.tsx:263 -#~ msgid "Go to @{queryMaybeHandle}" -#~ msgstr "" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "Ir al siguiente" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" msgstr "" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" msgstr "" #: src/lib/moderation/useGlobalLabelStrings.ts:46 msgid "Graphic Media" -msgstr "" +msgstr "Contenido Gráfico" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" -msgstr "Identificador" +msgstr "Nombre de usuarioContenido Gráfico" #: src/view/screens/AccessibilitySettings.tsx:103 msgid "Haptics" -msgstr "" +msgstr "Vibración" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" -msgstr "" +msgstr "Acoso, trolling o intolerancia" #: src/Navigation.tsx:297 msgid "Hashtag" -msgstr "" +msgstr "Hashtag" -#: src/components/RichText.tsx:188 -#~ msgid "Hashtag: {tag}" -#~ msgstr "" - -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" -msgstr "" +msgstr "Hashtag: #{tag}" #: src/screens/Signup/index.tsx:234 msgid "Having trouble?" msgstr "" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "Ayuda" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "" @@ -2436,13 +2300,13 @@ msgstr "" msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "Aquí tienes tu contraseña de la app." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2456,47 +2320,43 @@ msgstr "Ocultar" #: src/view/com/notifications/FeedItem.tsx:327 msgctxt "action" msgid "Hide" -msgstr "" +msgstr "Ocultar" #: src/view/com/util/forms/PostDropdownBtn.tsx:346 #: src/view/com/util/forms/PostDropdownBtn.tsx:348 msgid "Hide post" -msgstr "Ocultar publicación" +msgstr "Ocultar post" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "" #: src/view/com/util/forms/PostDropdownBtn.tsx:398 msgid "Hide this post?" -msgstr "¿Ocultar esta publicación?" +msgstr "¿Ocultar este post?" #: src/view/com/notifications/FeedItem.tsx:317 msgid "Hide user list" -msgstr "Ocultar la lista de usuarios" +msgstr "Ocultar lista de usuarios" -#: src/view/com/profile/ProfileHeader.tsx:487 -#~ msgid "Hides posts from {0} in your feed" -#~ msgstr "" - -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "Se ha producido algún problema al contactar con el servidor de noticias. Por favor, informa al propietario de la noticia sobre este problema." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "Parece que el servidor de noticias está mal configurado. Por favor, informa al propietario de la noticia sobre este problema." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "Parece que el servidor de noticias está fuera de línea. Por favor, informa al propietario de la noticia sobre este problema." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "El servidor de noticias ha respondido de forma incorrecta. Por favor, informa al propietario de la noticia sobre este problema." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "Tenemos problemas para encontrar esta noticia. Puede que la hayan borrado." @@ -2508,29 +2368,22 @@ msgstr "" msgid "Hmmmm, we couldn't load that moderation service." msgstr "" -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" -msgstr "Página inicial" +msgstr "Inicio" -#: src/Navigation.tsx:247 -#: src/view/com/pager/FeedsTabBarMobile.tsx:123 -#: src/view/screens/PreferencesHomeFeed.tsx:104 -#: src/view/screens/Settings/index.tsx:543 -#~ msgid "Home Feed Preferences" -#~ msgstr "Preferencias de noticias de la página inicial" - -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "Proveedor de alojamiento" @@ -2538,25 +2391,30 @@ msgstr "Proveedor de alojamiento" msgid "How should we open this link?" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "Tengo un código" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "Tengo mi propio dominio" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "Si no se selecciona ninguno, es apto para todas las edades." @@ -2564,7 +2422,7 @@ msgstr "Si no se selecciona ninguno, es apto para todas las edades." msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "" -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "" @@ -2576,7 +2434,7 @@ msgstr "" msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "" -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "" @@ -2584,36 +2442,27 @@ msgstr "" msgid "Image" msgstr "" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "Texto alt de la imagen" -#: src/view/com/util/UserAvatar.tsx:311 -#: src/view/com/util/UserBanner.tsx:118 -#~ msgid "Image options" -#~ msgstr "Opciones de la imagen" - -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "" -#: src/view/com/auth/create/Step1.tsx:177 -#~ msgid "Input email for Bluesky account" -#~ msgstr "" - -#: src/view/com/auth/create/Step1.tsx:151 -#~ msgid "Input invite code to proceed" -#~ msgstr "" - -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "" @@ -2621,39 +2470,27 @@ msgstr "" msgid "Input new password" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "" -#: src/view/com/auth/create/Step2.tsx:196 -#~ msgid "Input phone number for SMS verification" -#~ msgstr "" - -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "" -#: src/view/com/auth/create/Step2.tsx:271 -#~ msgid "Input the verification code we have texted to you" -#~ msgstr "" - -#: src/view/com/modals/Waitlist.tsx:90 -#~ msgid "Input your email to get on the Bluesky waitlist" -#~ msgstr "" - -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "" @@ -2661,32 +2498,32 @@ msgstr "" msgid "Input your user handle" msgstr "" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "Nombre de usuario o contraseña no válidos" -#: src/view/screens/Settings.tsx:411 -#~ msgid "Invite" -#~ msgstr "Invitar" - #: src/view/com/modals/InviteCodes.tsx:94 msgid "Invite a Friend" -msgstr "Invitar a un amigo" +msgstr "Invita a un amigo" #: src/screens/Signup/StepInfo/index.tsx:58 msgid "Invite code" msgstr "Código de invitación" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "No se acepta el código de invitación. Comprueba que lo has introducido correctamente e inténtalo de nuevo." @@ -2694,10 +2531,6 @@ msgstr "No se acepta el código de invitación. Comprueba que lo has introducido msgid "Invite codes: {0} available" msgstr "" -#: src/view/shell/Drawer.tsx:645 -#~ msgid "Invite codes: {invitesAvailable} available" -#~ msgstr "Códigos de invitación: {invitesAvailable} disponibles" - #: src/view/com/modals/InviteCodes.tsx:170 msgid "Invite codes: 1 available" msgstr "" @@ -2710,20 +2543,7 @@ msgstr "" msgid "Jobs" msgstr "Tareas" -#: src/view/com/modals/Waitlist.tsx:67 -#~ msgid "Join the waitlist" -#~ msgstr "Únete a la lista de espera" - -#: src/view/com/auth/create/Step1.tsx:174 -#: src/view/com/auth/create/Step1.tsx:178 -#~ msgid "Join the waitlist." -#~ msgstr "Únete a la lista de espera." - -#: src/view/com/modals/Waitlist.tsx:128 -#~ msgid "Join Waitlist" -#~ msgstr "Únete a la lista de espera" - -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "" @@ -2743,7 +2563,7 @@ msgstr "" msgid "Labels" msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "" @@ -2751,11 +2571,11 @@ msgstr "" #~ msgid "labels have been placed on this {labelTarget}" #~ msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "" @@ -2763,32 +2583,24 @@ msgstr "" msgid "Language selection" msgstr "Escoger el idioma" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" -msgstr "" +msgstr "Ajustes de Idiomas" #: src/Navigation.tsx:151 #: src/view/screens/LanguageSettings.tsx:89 msgid "Language Settings" -msgstr "Configuración del idioma" +msgstr "Ajustes de Idiomas" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "Idiomas" -#: src/view/com/auth/create/StepHeader.tsx:20 -#~ msgid "Last step!" -#~ msgstr "" - #: src/screens/Hashtag.tsx:99 #: src/view/screens/Search/Search.tsx:369 msgid "Latest" msgstr "" -#: src/view/com/util/moderation/ContentHider.tsx:103 -#~ msgid "Learn more" -#~ msgstr "Aprender más" - #: src/components/moderation/ScreenHider.tsx:136 msgid "Learn More" msgstr "Aprender más" @@ -2798,7 +2610,7 @@ msgstr "Aprender más" msgid "Learn more about the moderation applied to this content." msgstr "" -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "Aprender más acerca de esta advertencia" @@ -2811,13 +2623,20 @@ msgstr "Más información sobre lo que es público en Bluesky." msgid "Learn more." msgstr "" -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" msgstr "" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" msgstr "" @@ -2833,7 +2652,7 @@ msgstr "Salir de Bluesky" msgid "left to go." msgstr "" -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "" @@ -2842,16 +2661,11 @@ msgstr "" msgid "Let's get your password reset!" msgstr "¡Vamos a restablecer tu contraseña!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "" -#: src/view/com/util/UserAvatar.tsx:248 -#: src/view/com/util/UserBanner.tsx:62 -#~ msgid "Library" -#~ msgstr "Librería" - -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "" @@ -2859,8 +2673,8 @@ msgstr "" #~ msgid "Like" #~ msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "Dar «me gusta» a esta noticia" @@ -2902,7 +2716,7 @@ msgstr "" msgid "Likes" msgstr "Cantidad de «Me gusta»" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "" @@ -2914,19 +2728,19 @@ msgstr "" msgid "List Avatar" msgstr "Avatar de la lista" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "" @@ -2934,47 +2748,42 @@ msgstr "" msgid "List Name" msgstr "Nombre de la lista" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "Listas" -#: src/view/com/post-thread/PostThread.tsx:333 -#: src/view/com/post-thread/PostThread.tsx:341 -#~ msgid "Load more posts" -#~ msgstr "Cargar más publicaciones" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "" #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "Cargar notificaciones nuevas" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" -msgstr "Cargar publicaciones nuevas" +msgstr "Cargar posts nuevos" #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:99 msgid "Loading..." msgstr "Cargando..." -#: src/view/com/modals/ServerInput.tsx:50 -#~ msgid "Local dev server" -#~ msgstr "Servidor de desarrollo local" - #: src/Navigation.tsx:228 msgid "Log" msgstr "" @@ -2994,7 +2803,7 @@ msgstr "Visibilidad de desconexión" msgid "Login to account that is not listed" msgstr "Acceder a una cuenta que no está en la lista" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "" @@ -3002,26 +2811,39 @@ msgstr "" msgid "Looks like XXXXX-XXXXX" msgstr "" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "¡Asegúrate de que es aquí a donde pretendes ir!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "" -#: src/view/com/auth/create/Step2.tsx:118 -#~ msgid "May not be longer than 253 characters" -#~ msgstr "" - -#: src/view/com/auth/create/Step2.tsx:109 -#~ msgid "May only contain letters and numbers" -#~ msgstr "" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "" #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" -msgstr "Medios" +msgstr "Multimedia" #: src/view/com/threadgate/WhoCanReply.tsx:139 msgid "mentioned users" @@ -3036,44 +2858,50 @@ msgstr "Usuarios mencionados" msgid "Menu" msgstr "Menú" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "Mensaje del servidor: {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" msgstr "" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" +#~ msgid "Messaging settings" +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "Moderación" @@ -3086,13 +2914,13 @@ msgstr "" msgid "Moderation list by {0}" msgstr "" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "" @@ -3113,7 +2941,7 @@ msgstr "Listas de moderación" msgid "Moderation Lists" msgstr "Listas de moderación" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "" @@ -3134,26 +2962,18 @@ msgstr "" msgid "More" msgstr "" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" -msgstr "Más canales de noticias" +msgstr "Más feeds" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "Más opciones" -#: src/view/com/util/forms/PostDropdownBtn.tsx:315 -#~ msgid "More post options" -#~ msgstr "" - #: src/view/screens/PreferencesThreads.tsx:82 msgid "Most-liked replies first" msgstr "" -#: src/view/com/auth/create/Step2.tsx:122 -#~ msgid "Must be at least 3 characters" -#~ msgstr "" - #: src/components/TagMenu/index.tsx:249 msgid "Mute" msgstr "" @@ -3167,7 +2987,7 @@ msgstr "" msgid "Mute Account" msgstr "Silenciar la cuenta" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "Silenciar las cuentas" @@ -3175,47 +2995,44 @@ msgstr "Silenciar las cuentas" msgid "Mute all {displayTag} posts" msgstr "" -#: src/components/TagMenu/index.tsx:211 -#~ msgid "Mute all {tag} posts" -#~ msgstr "" +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "Silenciar la lista" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "¿Silenciar estas cuentas?" -#: src/view/screens/ProfileList.tsx:279 -#~ msgid "Mute this List" -#~ msgstr "" - -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "" #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:327 msgid "Mute thread" -msgstr "Silenciar el hilo" +msgstr "Mutear hilo" #: src/view/com/util/forms/PostDropdownBtn.tsx:337 #: src/view/com/util/forms/PostDropdownBtn.tsx:339 @@ -3224,59 +3041,55 @@ msgstr "" #: src/view/com/lists/ListCard.tsx:102 msgid "Muted" -msgstr "" +msgstr "Muteado" #: src/screens/Moderation/index.tsx:255 msgid "Muted accounts" -msgstr "Cuentas silenciadas" +msgstr "Cuentas muteadas" #: src/Navigation.tsx:136 #: src/view/screens/ModerationMutedAccounts.tsx:109 msgid "Muted Accounts" -msgstr "Cuentas silenciadas" +msgstr "Cuentas muteadas" #: src/view/screens/ModerationMutedAccounts.tsx:117 msgid "Muted accounts have their posts removed from your feed and from your notifications. Mutes are completely private." -msgstr "Las cuentas silenciadas eliminan sus publicaciones de tu canal de noticias y de tus notificaciones. Las cuentas silenciadas son completamente privadas." +msgstr "Al mutear a una cuenta no verás sus posts en tu feed o notificaciones. Nadie puede ver a quien muteas." #: src/lib/moderation/useModerationCauseDescription.ts:85 msgid "Muted by \"{0}\"" -msgstr "" +msgstr "Muteado por \"{0}\"" #: src/screens/Moderation/index.tsx:231 msgid "Muted words & tags" -msgstr "" +msgstr "Palabras y etiquetas muteadas" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." -msgstr "Silenciar es privado. Las cuentas silenciadas pueden interactuar contigo, pero no verás sus publicaciones ni recibirás notificaciones suyas." +msgstr "Nadie puede ver a quien muteas. Las cuentas muteadas pueden interactuar contigo, pero no verás sus posts en tu feed o notificaciones." #: src/components/dialogs/BirthDateSettings.tsx:35 #: src/components/dialogs/BirthDateSettings.tsx:38 msgid "My Birthday" msgstr "Mi cumpleaños" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" -msgstr "Mis canales de noticias" +msgstr "Mis feeds" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "Mi perfil" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" -msgstr "" +msgstr "Mis feeds guardados" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" -msgstr "Mis canales de noticias guardados" +msgstr "Mis feeds guardados" -#: src/view/com/auth/server-input/index.tsx:118 -#~ msgid "my-server.com" -#~ msgstr "" - -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "Nombre" @@ -3285,49 +3098,35 @@ msgstr "Nombre" msgid "Name is required" msgstr "" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "" -#: src/view/com/modals/EmbedConsent.tsx:107 -#: src/view/com/modals/EmbedConsent.tsx:123 -#~ msgid "Never load embeds from {0}" -#~ msgstr "" - -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:72 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:74 -#~ msgid "Never lose access to your followers and data." -#~ msgstr "No pierdas nunca el acceso a tus seguidores y datos." - -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "" -#: src/components/dialogs/MutedWords.tsx:293 -#~ msgid "Nevermind" -#~ msgstr "" - -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "" @@ -3340,12 +3139,16 @@ msgstr "" msgid "New" msgstr "Nuevo" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" msgstr "" +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" msgstr "" @@ -3358,42 +3161,42 @@ msgstr "" msgid "New Password" msgstr "" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" -msgstr "Publicación nueva" +msgstr "Nuevo post" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" -msgstr "Publicación nueva" +msgstr "Nuevo post" #: src/view/com/modals/CreateOrEditList.tsx:250 msgid "New User List" -msgstr "" +msgstr "Nueva lista de usuarios" #: src/view/screens/PreferencesThreads.tsx:79 msgid "Newest replies first" msgstr "" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" -msgstr "" +msgstr "Noticias" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3402,38 +3205,33 @@ msgstr "" msgid "Next" msgstr "Siguiente" -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:103 -#~ msgctxt "action" -#~ msgid "Next" -#~ msgstr "" - #: src/view/com/lightbox/Lightbox.web.tsx:169 msgid "Next image" msgstr "Imagen nueva" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "No" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "Sin descripción" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" -msgstr "" +msgstr "Sin panel de DNS" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "" @@ -3441,25 +3239,39 @@ msgstr "" msgid "No longer than 253 characters" msgstr "" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" msgstr "" +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "" + #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "Sin resultados" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "No se han encontrado resultados para \"{query}\"" @@ -3469,13 +3281,13 @@ msgstr "No se han encontrado resultados para \"{query}\"" msgid "No results found for {query}" msgstr "No se han encontrado resultados para {query}" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "" #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "" #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3486,6 +3298,10 @@ msgstr "" msgid "Nobody" msgstr "Nadie" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3504,8 +3320,8 @@ msgstr "" msgid "Not Found" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "" @@ -3519,32 +3335,40 @@ msgstr "" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "Nota: Bluesky es una red abierta y pública. Esta configuración sólo limita la visibilidad de tu contenido en la aplicación y el sitio web de Bluesky, y es posible que otras aplicaciones no respeten esta configuración. Otras aplicaciones y sitios web pueden seguir mostrando tu contenido a los usuarios que hayan cerrado sesión." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "Notificaciones" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "" -#: src/lib/moderation/useReportOptions.ts:71 -#~ msgid "Nudity or pornography not labeled as such" -#~ msgstr "" - #: src/screens/Signup/index.tsx:145 #~ msgid "of" #~ msgstr "" @@ -3553,17 +3377,17 @@ msgstr "" msgid "Off" msgstr "" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "¡Qué problema!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "" #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "" @@ -3575,14 +3399,18 @@ msgstr "Está bien" msgid "Oldest replies first" msgstr "" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "Falta el texto alternativo en una o varias imágenes." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "Solo {0} puede responder." @@ -3591,45 +3419,50 @@ msgstr "Solo {0} puede responder." msgid "Only contains letters, numbers, and hyphens" msgstr "" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "" -#: src/view/screens/Moderation.tsx:75 -#~ msgid "Open content filtering settings" -#~ msgstr "" +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "" -#: src/view/screens/Moderation.tsx:92 -#~ msgid "Open muted words settings" -#~ msgstr "" - #: src/view/com/home/HomeHeaderLayoutMobile.tsx:52 msgid "Open navigation" msgstr "Abrir navegación" @@ -3638,12 +3471,12 @@ msgstr "Abrir navegación" msgid "Open post options menu" msgstr "" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "" @@ -3651,7 +3484,7 @@ msgstr "" msgid "Opens {numItems} options" msgstr "" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "" @@ -3667,11 +3500,15 @@ msgstr "" msgid "Opens camera on device" msgstr "" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "Abrir la configuración del idioma que se puede ajustar" @@ -3679,11 +3516,7 @@ msgstr "Abrir la configuración del idioma que se puede ajustar" msgid "Opens device photo gallery" msgstr "" -#: src/view/com/profile/ProfileHeader.tsx:420 -#~ msgid "Opens editor for profile display name, avatar, background image, and description" -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "" @@ -3697,105 +3530,81 @@ msgstr "" msgid "Opens flow to sign into your existing Bluesky account" msgstr "" -#: src/view/com/profile/ProfileHeader.tsx:575 -#~ msgid "Opens followers list" -#~ msgstr "" - -#: src/view/com/profile/ProfileHeader.tsx:594 -#~ msgid "Opens following list" -#~ msgstr "" - #: src/view/com/composer/photos/SelectGifBtn.tsx:37 msgid "Opens GIF select dialog" msgstr "" -#: src/view/screens/Settings.tsx:412 -#~ msgid "Opens invite code list" -#~ msgstr "" - #: src/view/com/modals/InviteCodes.tsx:173 msgid "Opens list of invite codes" msgstr "Abre la lista de códigos de invitación" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "" -#: src/view/screens/Settings/index.tsx:774 -#~ msgid "Opens modal for account deletion confirmation. Requires email code." -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "Abre el modal para usar el dominio personalizado" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "Abre la configuración de moderación" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "Abre la pantalla con todas las noticias guardadas" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "" -#: src/view/screens/Settings/index.tsx:676 -#~ msgid "Opens the app password settings page" -#~ msgstr "Abre la página de configuración de la contraseña de la app" - -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "" -#: src/view/screens/Settings/index.tsx:535 -#~ msgid "Opens the home feed preferences" -#~ msgstr "Abre las preferencias de noticias de la página inicial" - #: src/view/com/modals/LinkWarning.tsx:93 msgid "Opens the linked website" msgstr "" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "Abre la página del libro de cuentos" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "Abre la página de la bitácora del sistema" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "Abre las preferencias de hilos" @@ -3803,7 +3612,8 @@ msgstr "Abre las preferencias de hilos" msgid "Option {0} of {numItems}" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "" @@ -3811,7 +3621,7 @@ msgstr "" msgid "Or combine these options:" msgstr "" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "" @@ -3819,15 +3629,15 @@ msgstr "" msgid "Other account" msgstr "Otra cuenta" -#: src/view/com/modals/ServerInput.tsx:88 -#~ msgid "Other service" -#~ msgstr "Otro servicio" - #: src/view/com/composer/select-language/SelectLangBtn.tsx:91 msgid "Other..." msgstr "Otro..." -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "Página no encontrada" @@ -3836,10 +3646,10 @@ msgstr "Página no encontrada" msgid "Page Not Found" msgstr "" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "Contraseña" @@ -3871,39 +3681,39 @@ msgstr "" msgid "People following @{0}" msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "" -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "" -#: src/view/com/auth/create/Step2.tsx:183 -#~ msgid "Phone number" -#~ msgstr "" - -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "Imágenes destinadas a adultos." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "Canales de noticias anclados" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "" @@ -3912,6 +3722,11 @@ msgstr "" msgid "Play {0}" msgstr "" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" msgstr "" @@ -3925,136 +3740,120 @@ msgstr "" msgid "Plays the GIF" msgstr "" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "Por favor, elige tu identificador." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "Por favor, elige tu contraseña." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "Por favor, confirma tu correo electrónico antes de cambiarlo. Se trata de un requisito temporal mientras se añaden herramientas de actualización de correo electrónico, y pronto se eliminará." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "" -#: src/view/com/auth/create/Step2.tsx:206 -#~ msgid "Please enter a phone number that can receive SMS text messages." -#~ msgstr "" - -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "Introduce un nombre único para la contraseña de esta app o utiliza una generada aleatoriamente." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "" -#: src/view/com/auth/create/state.ts:170 -#~ msgid "Please enter the code you received by SMS." -#~ msgstr "" - -#: src/view/com/auth/create/Step2.tsx:282 -#~ msgid "Please enter the verification code sent to {phoneNumberFormatted}." -#~ msgstr "" - -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "Introduce tu correo electrónico." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "Introduce tu contraseña, también:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "" + #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" msgstr "" -#: src/view/com/modals/AppealLabel.tsx:72 -#: src/view/com/modals/AppealLabel.tsx:75 -#~ msgid "Please tell us why you think this content warning was incorrectly applied!" -#~ msgstr "Por favor, dinos por qué crees que esta advertencia de contenido se ha aplicado incorrectamente!" - -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "Por favor, espera a que tu tarjeta de enlace termine de cargarse" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" -msgstr "" +msgstr "Política" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" -msgstr "" +msgstr "Pornografía" -#: src/lib/moderation/useGlobalLabelStrings.ts:34 -#~ msgid "Pornography" -#~ msgstr "" - -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" -msgstr "" +msgstr "Publicar" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" -msgstr "Publicación" +msgstr "Post" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" -msgstr "" +msgstr "Post por {0}" #: src/Navigation.tsx:183 #: src/Navigation.tsx:190 #: src/Navigation.tsx:197 msgid "Post by @{0}" -msgstr "" +msgstr "Post por {0}" #: src/view/com/util/forms/PostDropdownBtn.tsx:119 msgid "Post deleted" -msgstr "" +msgstr "Post eliminado" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" -msgstr "Publicación oculta" +msgstr "Post ocultado" #: src/components/moderation/ModerationDetailsDialog.tsx:97 #: src/lib/moderation/useModerationCauseDescription.ts:99 msgid "Post Hidden by Muted Word" -msgstr "" +msgstr "Post ocultado por palabra muteada" #: src/components/moderation/ModerationDetailsDialog.tsx:100 #: src/lib/moderation/useModerationCauseDescription.ts:108 msgid "Post Hidden by You" -msgstr "" +msgstr "Post ocultado por ti" #: src/view/com/composer/select-language/SelectLangBtn.tsx:87 msgid "Post language" -msgstr "Lenguaje de la publicación" +msgstr "Lenguaje de la post" #: src/view/com/modals/lang-settings/PostLanguagesSettings.tsx:75 msgid "Post Languages" -msgstr "Lenguajes de la publicación" +msgstr "Lenguajes de la post" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "Publicación no encontrada" @@ -4066,11 +3865,11 @@ msgstr "" msgid "Posts" msgstr "Publicaciones" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "" @@ -4078,21 +3877,25 @@ msgstr "" msgid "Potentially Misleading Link" msgstr "Enlace potencialmente engañoso" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -4100,13 +3903,13 @@ msgstr "Imagen previa" #: src/view/screens/LanguageSettings.tsx:187 msgid "Primary Language" -msgstr "Lenguajes primarios" +msgstr "Idioma primario" #: src/view/screens/PreferencesThreads.tsx:97 msgid "Prioritize Your Follows" msgstr "Priorizar los usuarios a los que sigue" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "Privacidad" @@ -4114,25 +3917,29 @@ msgstr "Privacidad" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "Política de privacidad" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "Procesando..." -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "Perfil" @@ -4140,43 +3947,43 @@ msgstr "Perfil" msgid "Profile updated" msgstr "" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "Protege tu cuenta verificando tu correo electrónico." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "" #: src/view/screens/ModerationModlists.tsx:61 msgid "Public, shareable lists of users to mute or block in bulk." -msgstr "Listas públicas y compartibles de usuarios para silenciar o bloquear en bloque." +msgstr "Listas públicas y compartibles de usuarios para mutear o bloquear en cantidad." #: src/view/screens/Lists.tsx:61 msgid "Public, shareable lists which can drive feeds." -msgstr "Listas públicas y compartibles que pueden impulsar las noticias." +msgstr "Listas públicas y compartibles que pueden impulsar feeds." -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "" #: src/view/com/modals/Repost.tsx:66 msgctxt "action" msgid "Quote post" -msgstr "Citar una publicación" +msgstr "Citar una post" #: src/view/com/util/post-ctrls/RepostButton.web.tsx:58 msgid "Quote post" -msgstr "Citar una publicación" +msgstr "Citar una post" #: src/view/com/modals/Repost.tsx:71 msgctxt "action" msgid "Quote Post" -msgstr "Citar una publicación" +msgstr "Citar una post" #: src/view/screens/PreferencesThreads.tsx:86 msgid "Random (aka \"Poster's Roulette\")" @@ -4186,36 +3993,40 @@ msgstr "" msgid "Ratios" msgstr "Proporciones" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:117 -#~ msgid "Recommended Feeds" -#~ msgstr "Canales de noticias recomendados" +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "" -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:181 -#~ msgid "Recommended Users" -#~ msgstr "Usuarios recomendados" +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "Eliminar" -#: src/view/com/feeds/FeedSourceCard.tsx:108 -#~ msgid "Remove {0} from my feeds?" -#~ msgstr "¿Eliminar {0} de mis canales de noticias?" - #: src/view/com/util/AccountDropdownBtn.tsx:22 msgid "Remove account" msgstr "Eliminar la cuenta" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "" @@ -4223,22 +4034,25 @@ msgstr "" msgid "Remove Banner" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "Eliminar el canal de noticias" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "Eliminar de mis canales de noticias" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "" @@ -4250,7 +4064,7 @@ msgstr "Eliminar la imagen" msgid "Remove image preview" msgstr "Eliminar la vista previa de la imagen" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "" @@ -4262,28 +4076,22 @@ msgstr "" msgid "Remove repost" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:175 -#~ msgid "Remove this feed from my feeds?" -#~ msgstr "¿Eliminar este canal de mis canales de noticias?" - -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:132 -#~ msgid "Remove this feed from your saved feeds?" -#~ msgstr "¿Eliminar este canal de mis canales de noticias guardados?" - #: src/view/com/modals/ListAddRemoveUsers.tsx:199 #: src/view/com/modals/UserAddRemoveLists.tsx:152 msgid "Removed from list" msgstr "Eliminar de la lista" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "" @@ -4295,6 +4103,11 @@ msgstr "" msgid "Removes quoted post" msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "Respuestas" @@ -4303,91 +4116,95 @@ msgstr "Respuestas" msgid "Replies to this thread are disabled" msgstr "Las respuestas a este hilo están desactivadas" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "Filtros de respuestas" -#: src/view/com/post/Post.tsx:177 -#: src/view/com/posts/FeedItem.tsx:285 -#~ msgctxt "description" -#~ msgid "Reply to <0/>" -#~ msgstr "" - #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" msgstr "" -#: src/view/com/modals/report/Modal.tsx:166 -#~ msgid "Report {collectionName}" -#~ msgstr "Informe de {collectionName}" - #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "Informe de la cuenta" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "Informe del canal de noticias" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "Informe de la lista" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" msgstr "" #: src/view/com/util/forms/PostDropdownBtn.tsx:363 #: src/view/com/util/forms/PostDropdownBtn.tsx:365 msgid "Report post" -msgstr "Informe de la publicación" +msgstr "Informe de la post" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "" @@ -4399,21 +4216,17 @@ msgstr "Volver a publicar" #: src/view/com/util/post-ctrls/RepostButton.web.tsx:94 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:105 msgid "Repost or quote post" -msgstr "Volver a publicar o citar publicación" +msgstr "Volver a publicar o citar post" #: src/view/screens/PostRepostedBy.tsx:27 msgid "Reposted By" msgstr "Vuelto a publicar por" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "Vuelto a publicar por {0}" -#: src/view/com/posts/FeedItem.tsx:214 -#~ msgid "Reposted by <0/>" -#~ msgstr "Vuelto a publicar por <0/>" - -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "" @@ -4421,19 +4234,15 @@ msgstr "" msgid "reposted your post" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "Solicitar un cambio" -#: src/view/com/auth/create/Step2.tsx:219 -#~ msgid "Request code" -#~ msgstr "" - #: src/view/com/modals/ChangePassword.tsx:243 #: src/view/com/modals/ChangePassword.tsx:245 msgid "Request Code" @@ -4441,9 +4250,9 @@ msgstr "" #: src/view/screens/AccessibilitySettings.tsx:82 msgid "Require alt text before posting" -msgstr "" +msgstr "Requerir texto alternativo antes de publicar" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "" @@ -4451,25 +4260,21 @@ msgstr "" msgid "Required for this provider" msgstr "Requerido para este proveedor" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" -msgstr "" +msgstr "Volver a enviar correo" #: src/view/com/modals/ChangePassword.tsx:187 msgid "Reset code" -msgstr "Restablecer el código" +msgstr "Código de reseteo" #: src/view/com/modals/ChangePassword.tsx:194 msgid "Reset Code" -msgstr "" +msgstr "Código de reseteo" -#: src/view/screens/Settings/index.tsx:824 -#~ msgid "Reset onboarding" -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "Restablecer el estado de incorporación" @@ -4477,24 +4282,20 @@ msgstr "Restablecer el estado de incorporación" msgid "Reset password" msgstr "Restablecer la contraseña" -#: src/view/screens/Settings/index.tsx:814 -#~ msgid "Reset preferences" -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "Restablecer el estado de preferencias" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "Restablece el estado de incorporación" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "Restablecer el estado de preferencias" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "" @@ -4503,25 +4304,26 @@ msgstr "" msgid "Retries the last action, which errored out" msgstr "" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 msgid "Retry" -msgstr "Volver a intentar" +msgstr "Intentar de nuevo" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" +#~ msgid "Retry." +#~ msgstr "Intentar de nuevo" #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "" @@ -4530,59 +4332,55 @@ msgid "Returns to home page" msgstr "" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "" -#: src/view/shell/desktop/RightNav.tsx:55 -#~ msgid "SANDBOX. Posts and accounts are not permanent." -#~ msgstr "" - #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "Guardar" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" -msgstr "" +msgstr "Guardar" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" -msgstr "Guardar el texto alt" +msgstr "Guardar texto alternativo" #: src/components/dialogs/BirthDateSettings.tsx:119 msgid "Save birthday" -msgstr "" +msgstr "Guardar cumpleaños" #: src/view/com/modals/EditProfile.tsx:233 msgid "Save Changes" msgstr "Guardar cambios" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" -msgstr "Guardar el cambio de identificador" +msgstr "Guardar cambio de nombre de usuario" #: src/view/com/modals/crop-image/CropImage.web.tsx:169 msgid "Save image crop" -msgstr "Guardar el recorte de imagen" +msgstr "Guardar recorte de imagen" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" -msgstr "" +msgstr "Guardar a mis feeds" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" -msgstr "Guardar canales de noticias" +msgstr "Feeds Guardados" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" msgstr "" @@ -4590,7 +4388,8 @@ msgstr "" #~ msgid "Saved to your camera roll." #~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "" @@ -4598,7 +4397,7 @@ msgstr "" msgid "Saves any changes to your profile" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "" @@ -4606,16 +4405,20 @@ msgstr "" msgid "Saves image crop settings" msgstr "" -#: src/screens/Onboarding/index.tsx:36 -msgid "Science" +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" msgstr "" -#: src/view/screens/ProfileList.tsx:869 +#: src/screens/Onboarding/index.tsx:48 +msgid "Science" +msgstr "Ciencia" + +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4623,12 +4426,12 @@ msgstr "" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "Buscar" @@ -4644,21 +4447,13 @@ msgstr "" msgid "Search for all posts by @{authorHandle} with tag {displayTag}" msgstr "" -#: src/components/TagMenu/index.tsx:145 -#~ msgid "Search for all posts by @{authorHandle} with tag {tag}" -#~ msgstr "" - #: src/components/TagMenu/index.tsx:94 msgid "Search for all posts with tag {displayTag}" msgstr "" -#: src/components/TagMenu/index.tsx:90 -#~ msgid "Search for all posts with tag {tag}" -#~ msgstr "" - #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "" #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4670,7 +4465,8 @@ msgstr "Buscar usuarios" msgid "Search GIFs" msgstr "" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" msgstr "" @@ -4678,7 +4474,7 @@ msgstr "" msgid "Search Tenor" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "Se requiere un paso de seguridad" @@ -4698,38 +4494,34 @@ msgstr "" msgid "See <0>{displayTag} posts by this user" msgstr "" -#: src/components/TagMenu/index.tsx:128 -#~ msgid "See <0>{tag} posts" -#~ msgstr "" - -#: src/components/TagMenu/index.tsx:189 -#~ msgid "See <0>{tag} posts by this user" -#~ msgstr "" - #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "" -#: src/view/com/auth/HomeLoggedOutCTA.tsx:40 -#~ msgid "See what's next" -#~ msgstr "Ver lo que sigue" - #: src/view/com/util/Selector.tsx:106 msgid "Select {item}" msgstr "" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "" -#: src/view/com/modals/ServerInput.tsx:75 -#~ msgid "Select Bluesky Social" -#~ msgstr "Seleccionar Bluesky Social" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "" #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" @@ -4739,7 +4531,7 @@ msgstr "Selecciona de una cuenta existente" msgid "Select GIF" msgstr "" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "" @@ -4755,26 +4547,21 @@ msgstr "" msgid "Select option {i} of {numItems}" msgstr "" -#: src/view/com/auth/create/Step1.tsx:96 -#: src/view/com/auth/login/LoginForm.tsx:153 -#~ msgid "Select service" -#~ msgstr "Selecciona el servicio" - #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:52 msgid "Select some accounts below to follow" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "" #: src/view/com/auth/server-input/index.tsx:82 msgid "Select the service that hosts your data." -msgstr "" - -#: src/screens/Onboarding/StepModeration/index.tsx:49 -#~ msgid "Select the types of content that you want to see (or not see), and we'll handle the rest." -#~ msgstr "" +msgstr "Elige que proveedor de servicio quieres usar." #: src/screens/Onboarding/StepTopicalFeeds.tsx:100 msgid "Select topical feeds to follow from the list below" @@ -4782,35 +4569,27 @@ msgstr "" #: src/screens/Onboarding/StepModeration/index.tsx:63 msgid "Select what you want to see (or not see), and we’ll handle the rest." -msgstr "" +msgstr "Elige lo que quieres ver y nosotros nos encargaremos del resto." #: src/view/screens/LanguageSettings.tsx:281 msgid "Select which languages you want your subscribed feeds to include. If none are selected, all languages will be shown." -msgstr "Selecciona qué idiomas quieres que incluyan tus canales de noticias suscritos. Si no seleccionas ninguno, se mostrarán todos los idiomas." - -#: src/view/screens/LanguageSettings.tsx:98 -#~ msgid "Select your app language for the default text to display in the app" -#~ msgstr "Selecciona el idioma de tu app para el texto que se mostrará por defecto en la app" +msgstr "Elige en que idioma deseas que estén los posts de tus feeds. Si ninguno es seleccionado, se mostraran en todos los idiomas." #: src/view/screens/LanguageSettings.tsx:98 msgid "Select your app language for the default text to display in the app." -msgstr "" +msgstr "Elige en que idioma deseas que esté la interfaz de Bluesky." #: src/screens/Signup/StepInfo/index.tsx:135 msgid "Select your date of birth" -msgstr "" +msgstr "Elige tu fecha de nacimiento" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "" -#: src/view/com/auth/create/Step2.tsx:155 -#~ msgid "Select your phone's country" -#~ msgstr "" - #: src/view/screens/LanguageSettings.tsx:190 msgid "Select your preferred language for translations in your feed." -msgstr "Selecciona el idioma que prefieras para las traducciones de tus noticias." +msgstr "Elige en que idioma deseas traducir los posts de tu feed." #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:117 msgid "Select your primary algorithmic feeds" @@ -4820,107 +4599,75 @@ msgstr "" msgid "Select your secondary algorithmic feeds" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" -msgstr "Enviar el mensaje de confirmación" +msgstr "Enviar correo de confirmación" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" -msgstr "Enviar el mensaje" +msgstr "Enviar correo" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" -msgstr "Enviar el mensaje" +msgstr "Enviar correo" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "Enviar comentarios" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" -msgstr "" +msgstr "Enviar mensaje" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" -msgstr "" - -#: src/view/com/modals/report/SendReportButton.tsx:45 -#~ msgid "Send Report" -#~ msgstr "Enviar el informe" +msgstr "Enviar reporte" #: src/components/ReportDialog/SelectLabelerView.tsx:44 msgid "Send report to {0}" -msgstr "" +msgstr "Enviar reporte a {0}" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "" #: src/view/com/auth/server-input/index.tsx:114 msgid "Server address" -msgstr "" - -#: src/view/com/modals/ContentFilteringSettings.tsx:311 -#~ msgid "Set {value} for {labelGroup} content moderation policy" -#~ msgstr "" - -#: src/view/com/modals/ContentFilteringSettings.tsx:160 -#: src/view/com/modals/ContentFilteringSettings.tsx:179 -#~ msgctxt "action" -#~ msgid "Set Age" -#~ msgstr "" +msgstr "Dirección del servidor" #: src/screens/Moderation/index.tsx:304 msgid "Set birthdate" -msgstr "" - -#: src/view/screens/Settings/index.tsx:488 -#~ msgid "Set color theme to dark" -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:481 -#~ msgid "Set color theme to light" -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:475 -#~ msgid "Set color theme to system setting" -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:514 -#~ msgid "Set dark theme to the dark theme" -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:507 -#~ msgid "Set dark theme to the dim theme" -#~ msgstr "" +msgstr "Establecer cumpleaños" #: src/screens/Login/SetNewPasswordForm.tsx:102 msgid "Set new password" msgstr "Establecer la contraseña nueva" -#: src/view/com/auth/create/Step1.tsx:202 -#~ msgid "Set password" -#~ msgstr "" - -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "Establece este ajuste en \"No\" para ocultar todas las publicaciones de citas de tus noticias. Las repeticiones seguirán siendo visibles." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "Establece este ajuste en \"No\" para ocultar todas las respuestas de tus noticias." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "Establece este ajuste en \"No\" para ocultar todas las veces que se han vuelto a publicar desde tus noticias." @@ -4928,11 +4675,7 @@ msgstr "Establece este ajuste en \"No\" para ocultar todas las veces que se han msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "Establece este ajuste en \"Sí\" para mostrar las respuestas en una vista de hilos. Se trata de una función experimental." -#: src/view/screens/PreferencesHomeFeed.tsx:261 -#~ msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your following feed. This is an experimental feature." -#~ msgstr "Establece este ajuste en \"Sí\" para mostrar muestras de tus noticias guardadas en tu siguiente canal de noticias. Se trata de una función experimental." - -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "" @@ -4940,27 +4683,27 @@ msgstr "" msgid "Set up your account" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "" @@ -4968,10 +4711,6 @@ msgstr "" msgid "Sets email for password reset" msgstr "" -#: src/view/com/auth/login/ForgotPasswordForm.tsx:122 -#~ msgid "Sets hosting provider for password reset" -#~ msgstr "" - #: src/view/com/modals/crop-image/CropImage.web.tsx:146 msgid "Sets image aspect ratio to square" msgstr "" @@ -4984,56 +4723,62 @@ msgstr "" msgid "Sets image aspect ratio to wide" msgstr "" -#: src/view/com/auth/create/Step1.tsx:97 -#: src/view/com/auth/login/LoginForm.tsx:154 -#~ msgid "Sets server for the Bluesky client" -#~ msgstr "" - #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" -msgstr "Configuraciones" +msgstr "Ajustes" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "Actividad sexual o desnudez erótica." #: src/lib/moderation/useGlobalLabelStrings.ts:38 msgid "Sexually Suggestive" -msgstr "" +msgstr "Sexualmente sugestivo" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" -msgstr "" +msgstr "Compartir" #: src/view/com/profile/ProfileMenu.tsx:215 #: src/view/com/profile/ProfileMenu.tsx:224 #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "Compartir" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" -msgstr "Compartir las noticias" +msgstr "Compartir feed" #: src/view/com/modals/LinkWarning.tsx:89 #: src/view/com/modals/LinkWarning.tsx:95 msgid "Share Link" +msgstr "Compartir enlace" + +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" msgstr "" #: src/view/com/modals/LinkWarning.tsx:92 @@ -5042,11 +4787,11 @@ msgstr "" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" -msgstr "Mostrar" +msgstr "Ver" #: src/view/screens/PreferencesFollowingFeed.tsx:68 #~ msgid "Show all replies" @@ -5054,12 +4799,12 @@ msgstr "Mostrar" #: src/view/com/util/post-embeds/GifEmbed.tsx:167 msgid "Show alt text" -msgstr "" +msgstr "Ver texto alternativo" #: src/components/moderation/ScreenHider.tsx:169 #: src/components/moderation/ScreenHider.tsx:172 msgid "Show anyway" -msgstr "Mostrar de todas maneras" +msgstr "Ver de todas maneras" #: src/lib/moderation/useLabelBehaviorDescription.ts:27 #: src/lib/moderation/useLabelBehaviorDescription.ts:63 @@ -5070,14 +4815,14 @@ msgstr "" msgid "Show badge and filter from feeds" msgstr "" -#: src/view/com/modals/EmbedConsent.tsx:87 -#~ msgid "Show embeds from {0}" -#~ msgstr "" - -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" @@ -5085,36 +4830,40 @@ msgstr "" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" -msgstr "" +msgstr "Ver más" #: src/view/com/util/forms/PostDropdownBtn.tsx:297 #: src/view/com/util/forms/PostDropdownBtn.tsx:299 msgid "Show more like this" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "Mostrar publicaciones de mis noticias" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "Mostrar publicaciones de citas" #: src/screens/Onboarding/StepFollowingFeed.tsx:119 msgid "Show quote-posts in Following feed" -msgstr "" +msgstr "Mostrar citaciones en Siguiendo" #: src/screens/Onboarding/StepFollowingFeed.tsx:135 msgid "Show quotes in Following" -msgstr "" +msgstr "Mostrar citaciones en Siguiendo" #: src/screens/Onboarding/StepFollowingFeed.tsx:95 msgid "Show re-posts in Following feed" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "Mostrar respuestas" @@ -5124,26 +4873,26 @@ msgstr "Mostrar las respuestas de las personas a quienes sigues antes que el res #: src/screens/Onboarding/StepFollowingFeed.tsx:87 msgid "Show replies in Following" -msgstr "" +msgstr "Mostrar respuestas en Siguiendo" #: src/screens/Onboarding/StepFollowingFeed.tsx:71 msgid "Show replies in Following feed" -msgstr "" +msgstr "Mostrar respuestas en el feed de Siguiendo" #: src/view/screens/PreferencesFollowingFeed.tsx:70 #~ msgid "Show replies with at least {value} {0}" #~ msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" -msgstr "Mostrar publicaciones que se han publicado nuevamente" +msgstr "Mostrar reposts" #: src/screens/Onboarding/StepFollowingFeed.tsx:111 msgid "Show reposts in Following" -msgstr "" +msgstr "Mostrar reposts en Siguiendo" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "" @@ -5159,10 +4908,6 @@ msgstr "" msgid "Show warning and filter from feeds" msgstr "" -#: src/view/com/profile/ProfileHeader.tsx:462 -#~ msgid "Shows a list of users similar to this user." -#~ msgstr "" - #: src/view/com/post-thread/PostThreadFollowBtn.tsx:130 msgid "Shows posts from {0} in your feed" msgstr "" @@ -5171,29 +4916,23 @@ msgstr "" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 msgid "Sign in" msgstr "Iniciar sesión" -#: src/view/com/auth/HomeLoggedOutCTA.tsx:82 -#: src/view/com/auth/SplashScreen.tsx:86 -#: src/view/com/auth/SplashScreen.web.tsx:91 -#~ msgid "Sign In" -#~ msgstr "Iniciar sesión" - #: src/components/AccountList.tsx:114 msgid "Sign in as {0}" msgstr "Iniciar sesión como {0}" @@ -5204,174 +4943,161 @@ msgstr "Iniciar sesión como ..." #: src/components/dialogs/Signin.tsx:75 msgid "Sign in or create your account to join the conversation!" -msgstr "" - -#: src/view/com/auth/login/LoginForm.tsx:140 -#~ msgid "Sign into" -#~ msgstr "Iniciar sesión en" +msgstr "¡Inicia sesión o crea una cuenta para unirte a la conversación!" #: src/components/dialogs/Signin.tsx:46 msgid "Sign into Bluesky or create a new account" -msgstr "" +msgstr "Inicia sesión a Bluesky o crea una nueva cuenta" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "Cerrar sesión" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 msgid "Sign up" -msgstr "Inscribirse" +msgstr "Crear cuenta" #: src/view/shell/NavSignupCard.tsx:47 msgid "Sign up or sign in to join the conversation" -msgstr "Regístrate o inicia sesión para unirte a la conversación" +msgstr "Inicia sesión o crea una cuenta para unirte a la conversación" #: src/components/moderation/ScreenHider.tsx:97 #: src/lib/moderation/useGlobalLabelStrings.ts:28 msgid "Sign-in Required" msgstr "Se requiere iniciar sesión" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" -msgstr "Se inició sesión como" +msgstr "Sesión iniciada como" #: src/lib/hooks/useAccountSwitcher.ts:44 #: src/screens/Login/ChooseAccountForm.tsx:60 msgid "Signed in as @{0}" -msgstr "" +msgstr "Sesión iniciada como @{0}" -#: src/view/com/modals/SwitchAccount.tsx:70 -#~ msgid "Signs {0} out of Bluesky" -#~ msgstr "" - -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" -msgstr "Saltarse este paso" +msgstr "Saltar" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" -msgstr "" +msgstr "Saltar" -#: src/view/com/auth/create/Step2.tsx:82 -#~ msgid "SMS verification" -#~ msgstr "" - -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" +msgstr "Programación" + +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" msgstr "" -#: src/view/com/modals/ProfilePreview.tsx:62 -#~ msgid "Something went wrong and we're not sure what." -#~ msgstr "" +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "Ocurrió un error" #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." -msgstr "" +msgstr "Ocurrió un error. Intenta de nuevo." -#: src/components/Lists.tsx:203 -#~ msgid "Something went wrong!" -#~ msgstr "" - -#: src/view/com/modals/Waitlist.tsx:51 -#~ msgid "Something went wrong. Check your email and try again." -#~ msgstr "" - -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." -msgstr "" +msgstr "Lo sentimos, tu sesión ha expirado. Inicia sesión de nuevo." #: src/view/screens/PreferencesThreads.tsx:69 msgid "Sort Replies" -msgstr "Clasificar respuestas" +msgstr "Ordenar respuestas" #: src/view/screens/PreferencesThreads.tsx:72 msgid "Sort replies to the same post by:" -msgstr "Ordenar las respuestas a un mismo mensaje por:" +msgstr "Ordenar respuestas al mismo post por:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "Fuente:" + +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" msgstr "" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" -msgstr "" +msgstr "Spam" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" -msgstr "" +msgstr "Spam; menciones o respuestas excesivas" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" -msgstr "" +msgstr "Deportes" #: src/view/com/modals/crop-image/CropImage.web.tsx:145 msgid "Square" msgstr "Cuadrado" -#: src/view/com/modals/ServerInput.tsx:62 -#~ msgid "Staging" -#~ msgstr "Puesta en escena" - -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" msgstr "" -#: src/view/screens/Settings/index.tsx:862 -#~ msgid "Status page" -#~ msgstr "Página de estado" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "" -#: src/view/screens/Settings/index.tsx:896 +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "" + +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" msgstr "" #: src/screens/Signup/index.tsx:145 #~ msgid "Step" -#~ msgstr "" +#~ msgstr "Paso" #: src/screens/Signup/index.tsx:154 msgid "Step {0} of {1}" -msgstr "" +msgstr "Paso {0} de {1}" -#: src/view/com/auth/create/StepHeader.tsx:22 -#~ msgid "Step {0} of {numSteps}" -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "" #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Libro de cuentos" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Enviar" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "Suscribirse" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "" @@ -5380,11 +5106,11 @@ msgstr "" msgid "Subscribe to the {0} feed" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "Suscribirse a esta lista" @@ -5396,7 +5122,7 @@ msgstr "Usuarios sugeridos a seguir" msgid "Suggested for you" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "" @@ -5406,32 +5132,28 @@ msgstr "" msgid "Support" msgstr "Soporte" -#: src/view/com/modals/ProfilePreview.tsx:110 -#~ msgid "Swipe up to see more" -#~ msgstr "" - #: src/components/dialogs/SwitchAccount.tsx:47 #: src/components/dialogs/SwitchAccount.tsx:50 msgid "Switch Account" msgstr "Cambiar a otra cuenta" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "Bitácora del sistema" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "" @@ -5439,10 +5161,6 @@ msgstr "" msgid "Tag menu: {displayTag}" msgstr "" -#: src/components/TagMenu/index.tsx:74 -#~ msgid "Tag menu: {tag}" -#~ msgstr "" - #: src/view/com/modals/crop-image/CropImage.web.tsx:135 msgid "Tall" msgstr "Alto" @@ -5451,8 +5169,12 @@ msgstr "Alto" msgid "Tap to view fully" msgstr "" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" +msgstr "Tecnología" + +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" msgstr "" #: src/view/shell/desktop/RightNav.tsx:85 @@ -5461,42 +5183,44 @@ msgstr "Condiciones" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "Condiciones de servicio" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "Campo de introducción de texto" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "" #: src/screens/Signup/index.tsx:87 msgid "That handle is already taken." -msgstr "" +msgstr "Este nombre de usuario ya está en uso." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." -msgstr "La cuenta podrá interactuar contigo tras el desbloqueo." +msgstr "La cuenta podrá interactuar contigo tras desbloquearla." #: src/components/moderation/ModerationDetailsDialog.tsx:127 #~ msgid "the author" @@ -5510,11 +5234,15 @@ msgstr "Las Directrices Comunitarias se ha trasladado a <0/>" msgid "The Copyright Policy has been moved to <0/>" msgstr "La Política de derechos de autor se han trasladado a <0/>" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "" @@ -5522,10 +5250,10 @@ msgstr "" msgid "The following steps will help customize your Bluesky experience." msgstr "" -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." -msgstr "Es posible que se haya borrado la publicación." +msgstr "Es posible que se haya borrado el post." #: src/view/screens/PrivacyPolicy.tsx:33 msgid "The Privacy Policy has been moved to <0/>" @@ -5541,39 +5269,42 @@ msgstr "Las condiciones de servicio se han trasladado a" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:141 msgid "There are many feeds to try:" -msgstr "" +msgstr "Hay muchos más feeds que probar:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "" -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "" -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "" #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "" @@ -5581,7 +5312,7 @@ msgstr "" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "" -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "" @@ -5594,7 +5325,8 @@ msgstr "" msgid "There was an issue fetching your lists. Tap here to try again." msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "" @@ -5602,32 +5334,32 @@ msgstr "" msgid "There was an issue syncing your preferences with the server" msgstr "" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" -msgstr "" +msgstr "Ocurrió un problema {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "" -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "Se ha producido un problema inesperado en la aplicación. Por favor, ¡avísanos si te ha ocurrido esto!" @@ -5636,10 +5368,6 @@ msgstr "Se ha producido un problema inesperado en la aplicación. Por favor, ¡a msgid "There's been a rush of new users to Bluesky! We'll activate your account as soon as we can." msgstr "" -#: src/view/com/auth/create/Step2.tsx:55 -#~ msgid "There's something wrong with this number. Please choose your country and enter your full phone number!" -#~ msgstr "" - #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:146 msgid "These are popular accounts you might like:" msgstr "" @@ -5652,14 +5380,26 @@ msgstr "Esta {screenDescription} ha sido marcada:" msgid "This account has requested that users sign in to view their profile." msgstr "Esta cuenta ha solicitado que los usuarios inicien sesión para ver su perfil." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:26 +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "" + #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." msgstr "" @@ -5677,25 +5417,21 @@ msgstr "" msgid "This content is not available because one of the users involved has blocked the other." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." -msgstr "Este contenido no se puede ver sin una cuenta Bluesky." +msgstr "Este contenido no se puede visto sin una cuenta de Bluesky." -#: src/view/screens/Settings/ExportCarDialog.tsx:75 -#~ msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." -#~ msgstr "" - -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." -msgstr "Este canal de noticias está recibiendo mucho tráfico y no está disponible temporalmente. Vuelve a intentarlo más tarde." +msgstr "Este feed está recibiendo mucho tráfico y no está disponible temporalmente. Intenta de nuevo luego." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "" @@ -5703,11 +5439,15 @@ msgstr "" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "" + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." -msgstr "Esta información no se comparte con otros usuarios." +msgstr "Esta información no es compartida con otros usuarios." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "Esto es importante por si alguna vez necesitas cambiar tu correo electrónico o restablecer tu contraseña." @@ -5723,7 +5463,15 @@ msgstr "" msgid "This label was applied by the author." msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "" @@ -5731,7 +5479,7 @@ msgstr "" msgid "This link is taking you to the following website:" msgstr "Este enlace te lleva al siguiente sitio web:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "" @@ -5739,13 +5487,13 @@ msgstr "" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." -msgstr "Esta publicación ha sido eliminada." +msgstr "Esta post ha sido eliminado." #: src/view/com/util/forms/PostDropdownBtn.tsx:417 #: src/view/com/util/post-ctrls/PostCtrls.tsx:301 @@ -5764,14 +5512,18 @@ msgstr "" msgid "This service has not provided terms of service or a privacy policy." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" -msgstr "" +msgstr "Esto deberia de crear un registro de dominio a:" #: src/view/com/profile/ProfileFollowers.tsx:87 msgid "This user doesn't have any followers." msgstr "" +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5781,14 +5533,6 @@ msgstr "" msgid "This user has requested that their content only be shown to signed-in users." msgstr "" -#: src/view/com/modals/ModerationDetails.tsx:42 -#~ msgid "This user is included in the <0/> list which you have blocked." -#~ msgstr "" - -#: src/view/com/modals/ModerationDetails.tsx:74 -#~ msgid "This user is included in the <0/> list which you have muted." -#~ msgstr "" - #: src/components/moderation/ModerationDetailsDialog.tsx:55 msgid "This user is included in the <0>{0} list which you have blocked." msgstr "" @@ -5797,10 +5541,6 @@ msgstr "" msgid "This user is included in the <0>{0} list which you have muted." msgstr "" -#: src/view/com/modals/ModerationDetails.tsx:74 -#~ msgid "This user is included the <0/> list which you have muted." -#~ msgstr "" - #: src/view/com/profile/ProfileFollows.tsx:87 msgid "This user isn't following anyone." msgstr "" @@ -5809,20 +5549,16 @@ msgstr "" #~ msgid "This warning is only available for posts with media attached." #~ msgstr "Esta advertencia sólo está disponible para las publicaciones con medios adjuntos." -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "" -#: src/view/com/util/forms/PostDropdownBtn.tsx:282 -#~ msgid "This will hide this post from your feeds." -#~ msgstr "Esto ocultará esta entrada de tus contenidos." - -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" -msgstr "" +msgstr "Preferencias de hilos" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "Preferencias de hilos" @@ -5834,15 +5570,19 @@ msgstr "Modo con hilos" msgid "Threads Preferences" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "" +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "" @@ -5857,7 +5597,7 @@ msgstr "" #: src/screens/Hashtag.tsx:88 #: src/view/screens/Search/Search.tsx:359 msgid "Top" -msgstr "" +msgstr "Top" #: src/view/com/modals/EditImage.tsx:272 msgid "Transformations" @@ -5873,165 +5613,171 @@ msgstr "Traducir" #: src/view/com/util/error/ErrorScreen.tsx:82 msgctxt "action" msgid "Try again" -msgstr "Intentar nuevamente" +msgstr "Intentar de nuevo" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" -msgstr "" +msgstr "Escribe tu mensaje aquí" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" -msgstr "Desbloquear una lista" +msgstr "Desbloquear lista" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" -msgstr "Desactivar la opción de silenciar la lista" +msgstr "Demutear lista" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." -msgstr "No se puede contactar con tu servicio. Comprueba tu conexión a Internet." +msgstr "No se puede contactar con tu proveedor. Comprueba tu conexión a Internet." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "Desbloquear" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" +msgstr "Desbloquear" + +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" msgstr "" #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" -msgstr "Desbloquear una cuenta" +msgstr "Desbloquear Cuenta" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" -msgstr "" +msgstr "¿Desbloquear Cuenta?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" -msgstr "Deshacer esta publicación" +msgstr "Deshacer repost" #: src/view/com/profile/FollowButton.tsx:60 msgctxt "action" msgid "Unfollow" -msgstr "" +msgstr "Dejar de seguir" #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Unfollow" -msgstr "" +msgstr "Dejar de seguir" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" -msgstr "" +msgstr "Dejar de seguir a {0}" #: src/view/com/profile/ProfileMenu.tsx:241 #: src/view/com/profile/ProfileMenu.tsx:251 msgid "Unfollow Account" -msgstr "" - -#: src/view/com/auth/create/state.ts:262 -#~ msgid "Unfortunately, you do not meet the requirements to create an account." -#~ msgstr "Lamentablemente, no cumples los requisitos para crear una cuenta." +msgstr "Dejar de seguir a esta cuenta" #: src/view/com/util/post-ctrls/PostCtrls.tsx:197 #~ msgid "Unlike" #~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" -msgstr "" +msgstr "Demutear" #: src/components/TagMenu/index.web.tsx:104 msgid "Unmute {truncatedTag}" -msgstr "" +msgstr "Demutear {truncatedTag}" #: src/view/com/profile/ProfileMenu.tsx:278 #: src/view/com/profile/ProfileMenu.tsx:284 msgid "Unmute Account" -msgstr "Desactivar la opción de silenciar la cuenta" +msgstr "Demutear Cuenta" #: src/components/TagMenu/index.tsx:208 msgid "Unmute all {displayTag} posts" msgstr "" -#: src/components/TagMenu/index.tsx:210 -#~ msgid "Unmute all {tag} posts" -#~ msgstr "" - -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" msgstr "" +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "Demutear notificaciones" + #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" -msgstr "Desactivar la opción de silenciar el hilo" +msgstr "Demutear hilo" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" -msgstr "" +msgstr "Desfijar" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" -msgstr "Desanclar la lista de moderación" +msgstr "Desfijar lista de moderación" -#: src/view/screens/ProfileFeed.tsx:346 -#~ msgid "Unsave" -#~ msgstr "" +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" -msgstr "" +msgstr "Contenido sexual no deseado" #: src/view/com/modals/UserAddRemoveLists.tsx:70 msgid "Update {displayName} in Lists" msgstr "Actualizar {displayName} en Listas" -#: src/lib/hooks/useOTAUpdate.ts:15 -#~ msgid "Update Available" -#~ msgstr "Actualización disponible" - -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "" @@ -6039,44 +5785,48 @@ msgstr "" msgid "Updating..." msgstr "Actualizando..." -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "Carga un archivo de texto en:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." -msgstr "Utiliza las contraseñas de la app para iniciar sesión en otros clientes Bluesky sin dar acceso completo a tu cuenta o contraseña." +msgstr "Utiliza las contraseñas de app para iniciar sesión en otros clientes de Bluesky sin dar acceso completo a tu cuenta o contraseña." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" -msgstr "" +msgstr "Usar bsky.social como proveedor" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" -msgstr "Utiliza un proveedor predeterminado" +msgstr "Utilizar el proveedor predeterminado" #: src/view/com/modals/InAppBrowserConsent.tsx:56 #: src/view/com/modals/InAppBrowserConsent.tsx:58 @@ -6088,17 +5838,17 @@ msgstr "" msgid "Use my default browser" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." -msgstr "Utilízalo para iniciar sesión en la otra aplicación junto con tu identificador." - -#: src/view/com/modals/ServerInput.tsx:105 -#~ msgid "Use your domain as your Bluesky client service provider" -#~ msgstr "" +msgstr "Utilízalo para iniciar sesión en la otra app junto a tu nombre de usuario." #: src/view/com/modals/InviteCodes.tsx:201 msgid "Used by:" @@ -6113,6 +5863,10 @@ msgstr "" msgid "User Blocked by \"{0}\"" msgstr "" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "" @@ -6125,22 +5879,18 @@ msgstr "" msgid "User Blocks You" msgstr "" -#: src/view/com/auth/create/Step2.tsx:79 -#~ msgid "User handle" -#~ msgstr "Identificador del usuario" - #: src/view/com/lists/ListCard.tsx:85 #: src/view/com/modals/UserAddRemoveLists.tsx:198 msgid "User list by {0}" msgstr "" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "" @@ -6156,11 +5906,11 @@ msgstr "" msgid "User Lists" msgstr "Listas de usuarios" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "Nombre de usuario o dirección de correo electrónico" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "Usuarios" @@ -6168,68 +5918,67 @@ msgstr "Usuarios" msgid "users followed by <0/>" msgstr "usuarios seguidos por <0/>" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" -msgstr "Usuarios en «{0}»" +msgstr "Usuarios en \"{0}\"" #: src/components/LikesDialog.tsx:85 msgid "Users that have liked this content or profile" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "" -#: src/view/com/auth/create/Step2.tsx:243 -#~ msgid "Verification code" -#~ msgstr "" - #: src/view/com/modals/ChangeHandle.tsx:510 #~ msgid "Verify {0}" #~ msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" msgstr "" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "Verificar el correo electrónico" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "Verificar mi correo electrónico" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "Verificar mi correo electrónico" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "Verificar el correo electrónico nuevo" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "" -#: src/view/screens/Settings/index.tsx:852 -#~ msgid "Version {0}" -#~ msgstr "" - -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" msgstr "" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" -msgstr "" +msgstr "Videojuegos" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "" @@ -6237,25 +5986,25 @@ msgstr "" msgid "View debug entry" msgstr "Ver entrada de depuración" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" -msgstr "" +msgstr "Ver más detalles sobre cómo reportar una violación de Derechos de Autor" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "" @@ -6267,7 +6016,7 @@ msgstr "Ver el avatar" msgid "View the labeling service provided by @{0}" msgstr "" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "" @@ -6281,7 +6030,7 @@ msgstr "Visitar el sitio" #: src/lib/moderation/useLabelBehaviorDescription.ts:22 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:53 msgid "Warn" -msgstr "" +msgstr "Advertir" #: src/lib/moderation/useLabelBehaviorDescription.ts:48 msgid "Warn content" @@ -6291,37 +6040,33 @@ msgstr "" msgid "Warn content and filter from feeds" msgstr "" -#: src/screens/Onboarding/StepAlgoFeeds/index.tsx:134 -#~ msgid "We also think you'll like \"For You\" by Skygaze:" -#~ msgstr "" - #: src/screens/Hashtag.tsx:210 msgid "We couldn't find any results for that hashtag." msgstr "" +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" -msgstr "" +msgstr "Esperemos que la pases bien. Recuerda, Bluesky es:" #: src/view/com/posts/DiscoverFallbackHeader.tsx:29 msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "" -#: src/screens/Onboarding/StepAlgoFeeds/index.tsx:118 -#~ msgid "We recommend \"For You\" by Skygaze:" -#~ msgstr "" - -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:125 msgid "We recommend our \"Discover\" feed:" -msgstr "" +msgstr "Recomendamos nuesto feed \"Discover\":" #: src/components/dialogs/BirthDateSettings.tsx:52 msgid "We were unable to load your birth date preferences. Please try again." @@ -6331,7 +6076,7 @@ msgstr "" msgid "We were unable to load your configured labelers at this time." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "" @@ -6339,153 +6084,154 @@ msgstr "" msgid "We will let you know when your account is ready." msgstr "" -#: src/view/com/modals/AppealLabel.tsx:48 -#~ msgid "We'll look into your appeal promptly." -#~ msgstr "" - -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" -msgstr "¡Nos hace mucha ilusión que te unas a nosotros!" +msgstr "¡Es nuestro placer tenerte aquí!" #: src/view/screens/ProfileList.tsx:90 msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "" -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "" #: src/view/screens/Search/Search.tsx:262 msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." -msgstr "Lo sentimos, pero no se ha podido completar tu búsqueda. Vuelve a intentarlo dentro de unos minutos." +msgstr "Lo sentimos, pero no se ha podido completar tu búsqueda. Intenta de nuevo en unos minutos." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "Lo sentimos. No encontramos la página que buscabas." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." -msgstr "" +msgstr "Lo sentimos. Solo puedes suscribirte a hasta 10 etiquetadores, y has alcanzado el límite." -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:48 -#~ msgid "Welcome to <0>Bluesky" -#~ msgstr "Bienvenido a <0>Bluesky" - -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" -msgstr "" - -#: src/view/com/modals/report/Modal.tsx:169 -#~ msgid "What is the issue with this {collectionName}?" -#~ msgstr "¿Cuál es el problema con esta {collectionName}?" +msgstr "¿Cuáles son tus intereses?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "¿Qué hay de nuevo?" #: src/view/com/modals/lang-settings/PostLanguagesSettings.tsx:78 msgid "Which languages are used in this post?" -msgstr "¿Qué idiomas se utilizan en esta publicación?" +msgstr "¿En qué idioma está este post?" #: src/view/com/modals/lang-settings/ContentLanguagesSettings.tsx:77 msgid "Which languages would you like to see in your algorithmic feeds?" -msgstr "¿Qué idiomas te gustaría ver en tus noticias algorítmicas?" +msgstr "¿Qué idiomas te gustaría ver en tus feeds?" + +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "Quién puede responder" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "Whoops!" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" -msgstr "" +msgstr "¿Por qué crees que este contenido debe ser revisado?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" -msgstr "" +msgstr "¿Por qué crees que este feed debe ser revisado?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" -msgstr "" +msgstr "¿Por qué crees que esta lista debe ser revisada?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "¿Por qué crees que este mensaje debe ser revisado?" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" -msgstr "" +msgstr "¿Por qué crees que este post debe ser revisado?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" -msgstr "" +msgstr "¿Por qué crees que este usuario debe ser revisado?" #: src/view/com/modals/crop-image/CropImage.web.tsx:125 msgid "Wide" msgstr "Ancho" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" -msgstr "" +msgstr "Escribe un mensaje" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" -msgstr "Redactar una publicación" +msgstr "Redacta un post" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" -msgstr "Redactar tu respuesta" +msgstr "Redacta una respuesta" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" -msgstr "" - -#: src/view/com/auth/create/Step2.tsx:263 -#~ msgid "XXXXXX" -#~ msgstr "" +msgstr "Escritores" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "Sí" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" msgstr "" -#: src/screens/Onboarding/StepModeration/index.tsx:46 -#~ msgid "You are in control" -#~ msgstr "" - #: src/screens/Deactivated.tsx:136 msgid "You are in line." -msgstr "" +msgstr "Estás en cola." #: src/view/com/profile/ProfileFollows.tsx:86 msgid "You are not following anyone." -msgstr "" +msgstr "No estás siguiendo a nadie." #: src/view/com/posts/FollowingEmptyState.tsx:67 #: src/view/com/posts/FollowingEndOfFeed.tsx:68 msgid "You can also discover new Custom Feeds to follow." msgstr "" -#: src/screens/Onboarding/StepAlgoFeeds/index.tsx:123 -#~ msgid "You can also try our \"Discover\" algorithm:" -#~ msgstr "" - #: src/screens/Onboarding/StepFollowingFeed.tsx:143 msgid "You can change these settings later." +msgstr "Puedes cambiar estos ajustes luego." + +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." msgstr "" #: src/screens/Login/index.tsx:158 @@ -6495,116 +6241,116 @@ msgstr "Ahora puedes iniciar sesión con tu nueva contraseña." #: src/view/com/profile/ProfileFollowers.tsx:86 msgid "You do not have any followers." -msgstr "" +msgstr "No tienes ningún seguidor." #: src/view/com/modals/InviteCodes.tsx:67 msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." -msgstr "¡Aún no tienes códigos de invitación! Te enviaremos algunos cuando lleves un poco más de tiempo en Bluesky." +msgstr "¡Aún no tienes ningún código de invitación! Te enviaremos algunos cuando lleves un poco más de tiempo en Bluesky." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." -msgstr "No tienes ninguna noticia anclada." +msgstr "No tienes ninguna feed fijado." #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "¡No tienes ninguna noticia guardada!" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "No tienes ninguna feed guardado" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." -msgstr "No tienes ninguna noticia guardada." +msgstr "No tienes ningún feed guardado" -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "Has bloqueado al autor o has sido bloqueado por el autor." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 msgid "You have blocked this user. You cannot view their content." -msgstr "" +msgstr "Has bloqueado a este usuario. No puedes ver su contenido." #: src/screens/Login/SetNewPasswordForm.tsx:54 #: src/screens/Login/SetNewPasswordForm.tsx:91 #: src/view/com/modals/ChangePassword.tsx:89 #: src/view/com/modals/ChangePassword.tsx:123 msgid "You have entered an invalid code. It should look like XXXXX-XXXXX." -msgstr "" +msgstr "Has ingresado un código inválido. Debe lucir algo así XXXXX-XXXXX." #: src/lib/moderation/useModerationCauseDescription.ts:109 msgid "You have hidden this post" -msgstr "" +msgstr "Has ocultado este post" #: src/components/moderation/ModerationDetailsDialog.tsx:101 msgid "You have hidden this post." -msgstr "" +msgstr "Has ocultado este post." #: src/components/moderation/ModerationDetailsDialog.tsx:94 #: src/lib/moderation/useModerationCauseDescription.ts:92 msgid "You have muted this account." -msgstr "" +msgstr "Has muteado a esta cuenta." #: src/lib/moderation/useModerationCauseDescription.ts:86 msgid "You have muted this user" -msgstr "" +msgstr "Has muteado a esta cuenta" -#: src/view/com/modals/ModerationDetails.tsx:87 -#~ msgid "You have muted this user." -#~ msgstr "" +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "" #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." -msgstr "No tienes noticias." +msgstr "No tienes feeds." #: src/view/com/lists/MyLists.tsx:89 #: src/view/com/lists/ProfileLists.tsx:148 msgid "You have no lists." msgstr "No tienes listas." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "Aún no tienes ningún mensaje. ¡Comienza una conversación con alguien!" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." msgstr "" -#: src/view/screens/ModerationBlockedAccounts.tsx:132 -#~ msgid "You have not blocked any accounts yet. To block an account, go to their profile and selected \"Block account\" from the menu on their account." -#~ msgstr "Aún no has bloqueado ninguna cuenta. Para bloquear una cuenta, ve a su perfil y selecciona \"Bloquear cuenta\" en el menú de su cuenta." - -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." -msgstr "Aún no has creado ninguna contraseña de aplicación. Puedes crear una pulsando el botón de abajo." +msgstr "Aún no has creado una contraseña de app. Puedes crear una al presionar el botón abajo." #: src/view/screens/ModerationMutedAccounts.tsx:133 msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." msgstr "" -#: src/view/screens/ModerationMutedAccounts.tsx:131 -#~ msgid "You have not muted any accounts yet. To mute an account, go to their profile and selected \"Mute account\" from the menu on their account." -#~ msgstr "Aún no has silenciado ninguna cuenta. Para silenciar una cuenta, ve a su perfil y selecciona \"Silenciar cuenta\" en el menú de su cuenta." +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "" -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "" #: src/screens/Signup/StepInfo/Policies.tsx:79 msgid "You must be 13 years of age or older to sign up." -msgstr "" - -#: src/view/com/modals/ContentFilteringSettings.tsx:175 -#~ msgid "You must be 18 or older to enable adult content." -#~ msgstr "" +msgstr "Tienes que tener 13 años o más para poder crear una cuenta." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:110 msgid "You must be 18 years or older to enable adult content" -msgstr "" +msgstr "Tienes que tener 18 años o más para poder activar el contenido adulto" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "" @@ -6618,25 +6364,25 @@ msgstr "" #: src/screens/Login/SetNewPasswordForm.tsx:104 msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." -msgstr "Recibirás un correo electrónico con un \"código de restablecimiento\". Introduce ese código aquí y, a continuación, introduce tu nueva contraseña." +msgstr "Enviamos un código de reseteo a tu correo. Introduce ese código aquí y luego introduce tu nueva contraseña." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" -msgstr "" +msgstr "Tu: {0}" #: src/screens/Onboarding/StepModeration/index.tsx:60 msgid "You're in control" -msgstr "" +msgstr "Tu tienes el control" #: src/screens/Deactivated.tsx:93 #: src/screens/Deactivated.tsx:94 #: src/screens/Deactivated.tsx:109 msgid "You're in line" -msgstr "" +msgstr "Ya estás en cola" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" -msgstr "" +msgstr "¡Eso es todo!" #: src/components/moderation/ModerationDetailsDialog.tsx:98 #: src/lib/moderation/useModerationCauseDescription.ts:101 @@ -6645,17 +6391,17 @@ msgstr "" #: src/view/com/posts/FollowingEndOfFeed.tsx:48 msgid "You've reached the end of your feed! Find some more accounts to follow." -msgstr "" +msgstr "¡Haz llegado al fin de tu feed! Encuentra más cuentas para seguir." #: src/screens/Signup/index.tsx:164 msgid "Your account" msgstr "Tu cuenta" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" -msgstr "" +msgstr "Tu cuenta ha sido eliminada" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "" @@ -6663,74 +6409,72 @@ msgstr "" msgid "Your birth date" msgstr "Tu fecha de nacimiento" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." -msgstr "" +msgstr "Tu elección será guardada. Puedes cambiar esto en los ajustes luego." #: src/screens/Onboarding/StepFollowingFeed.tsx:62 msgid "Your default feed is \"Following\"" -msgstr "" +msgstr "Tu feed principal es \"Siguiendo\"" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "Tu correo electrónico parece no ser válido." -#: src/view/com/modals/Waitlist.tsx:109 -#~ msgid "Your email has been saved! We'll be in touch soon." -#~ msgstr "¡Hemos guardado tu correo electrónico! Pronto nos pondremos en contacto contigo." - -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." -msgstr "Tu correo electrónico ha sido actualizado pero no verificado. Como siguiente paso, verifica tu nuevo correo electrónico." +msgstr "Tu correo electrónico ha sido actualizado pero no verificado. Verifica tu nuevo correo electrónico." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." -msgstr "Tu correo electrónico aún no ha sido verificado. Este es un paso de seguridad importante que te recomendamos." +msgstr "Tu correo electrónico aún no ha sido verificado. Por tu seguridad, recomendamos que lo verifiques." #: src/view/com/posts/FollowingEmptyState.tsx:47 msgid "Your following feed is empty! Follow more users to see what's happening." -msgstr "" +msgstr "¡Tu feed de Siguiendo esta vacío! Sigue a más usuarios para ver sus posts aquí." #: src/screens/Signup/StepHandle.tsx:73 msgid "Your full handle will be" -msgstr "Tu identificador completo será" +msgstr "Tu nombre de usuario completo será" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" -msgstr "" +msgstr "Tu nombre de usuario completo será <0>@{0}" -#: src/view/screens/Settings.tsx:430 -#: src/view/shell/desktop/RightNav.tsx:137 -#: src/view/shell/Drawer.tsx:660 -#~ msgid "Your invite codes are hidden when logged in using an App Password" -#~ msgstr "Tus códigos de invitación están ocultos cuando inicias sesión con una contraseña de la app" - -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" -msgstr "" +msgstr "Tus palabras muteadas" #: src/view/com/modals/ChangePassword.tsx:159 msgid "Your password has been changed successfully!" -msgstr "" +msgstr "Tu contraseña ha sido cambiada exitosamente." -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" -msgstr "" +msgstr "Post publicado" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." -msgstr "Tus publicaciones, Me gustas y bloqueos son públicos. Las cuentas silenciadas son privadas." +msgstr "Tus posts, a qué le das me gusta y a quién bloqueas son públicos. Nadie puede ver a quien muteas." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "Tu perfil" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" -msgstr "" +msgstr "Respuesta publicada" + +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "Tu reporte ha sido enviado al servicio de moderación de Bluesky" #: src/screens/Signup/index.tsx:166 msgid "Your user handle" -msgstr "Tu identificador del usuario" +msgstr "Tu nombre de usuario" diff --git a/src/locale/locales/fi/messages.po b/src/locale/locales/fi/messages.po index f6508e9b98..32a0cdac0c 100644 --- a/src/locale/locales/fi/messages.po +++ b/src/locale/locales/fi/messages.po @@ -13,7 +13,7 @@ msgstr "" "Language-Team: @pekka.bsky.social,@jaoler.fi,@rahi.bsky.social\n" "Plural-Forms: \n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(ei sähköpostiosoitetta)" @@ -21,24 +21,32 @@ msgstr "(ei sähköpostiosoitetta)" msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" msgstr "" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" msgstr "" @@ -47,11 +55,11 @@ msgstr "" msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -63,7 +71,7 @@ msgstr "" msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" msgstr "" @@ -71,6 +79,10 @@ msgstr "" msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" msgstr "" +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "" + #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -83,22 +95,26 @@ msgstr "" msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} seurattua" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" -#: src/view/shell/Drawer.tsx:464 +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} lukematonta" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" msgstr "" @@ -106,11 +122,11 @@ msgstr "" msgid "<0/> members" msgstr "<0/> jäsentä" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" msgstr "" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" msgstr "" @@ -135,7 +151,7 @@ msgstr "" #~ msgid "<0>Follow some<1>Recommended<2>Users" #~ msgstr "<0>Seuraa joitakin<1>suositeltuja<2>käyttäjiä" -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." msgstr "" @@ -147,7 +163,7 @@ msgstr "" msgid "⚠Invalid Handle" msgstr "⚠Virheellinen käyttäjätunnus" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "Kaksivaiheisen tunnistautumisen vahvistus" @@ -161,11 +177,11 @@ msgid "Access profile and other navigation links" msgstr "Siirry profiiliin ja muihin navigointilinkkeihin" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "Saavutettavuus" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "Esteettömyysasetukset\"" @@ -178,21 +194,21 @@ msgstr "Esteettömyysasetukset\"" #~ msgid "account" #~ msgstr "käyttäjätili" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "Käyttäjätili" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "Käyttäjätili estetty" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "Käyttäjätili seurannassa" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "Käyttäjätili hiljennetty" @@ -213,67 +229,76 @@ msgstr "Käyttäjätilin asetukset" msgid "Account removed from quick access" msgstr "Käyttäjätili poistettu pikalinkeistä" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "Käyttäjätilin esto poistettu" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "Käyttäjätilin seuranta lopetettu" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "Käyttäjätilin hiljennys poistettu" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "Lisää" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "Lisää sisältövaroitus" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "Lisää käyttäjä tähän listaan" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "Lisää käyttäjätili" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "Lisää ALT-teksti" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "Lisää sovelluksen salasana" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "Lisää hiljennetty sana määritettyihin asetuksiin" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "Lisää hiljennetyt sanat ja aihetunnisteet" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "Lisää seuraava DNS-merkintä verkkotunnukseesi:" @@ -282,7 +307,7 @@ msgstr "Lisää seuraava DNS-merkintä verkkotunnukseesi:" msgid "Add to Lists" msgstr "Lisää listoihin" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "Lisää syötteisiini" @@ -295,17 +320,17 @@ msgstr "Lisää syötteisiini" msgid "Added to list" msgstr "Lisätty listaan" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "Lisätty syötteisiini" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "Säädä, kuinka monta tykkäystä vastauksen on saatava näkyäkseen syötteessäsi." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "Aikuissisältöä" @@ -314,14 +339,29 @@ msgid "Adult content is disabled." msgstr "Aikuissisältö on estetty" #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "Edistyneemmät" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "Kaikki tallentamasi syötteet yhdessä paikassa." +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -331,13 +371,13 @@ msgstr "Onko sinulla jo koodi?" msgid "Already signed in as @{0}" msgstr "Kirjautuneena sisään nimellä @{0}" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -351,24 +391,24 @@ msgstr "" msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "ALT-teksti kuvailee kuvia sokeille ja heikkonäköisille käyttäjille sekä lisää kontekstia kaikille." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "Sähköposti on lähetetty osoitteeseen {0}. Siinä on vahvistuskoodi, jonka voit syöttää alla." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "Sähköposti on lähetetty aiempaan osoitteeseesi, {0}. Siinä on vahvistuskoodi, jonka voit syöttää alla." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "Tapahtui virhe" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "Ongelma, jota ei ole sisällytetty näihin vaihtoehtoihin" @@ -381,7 +421,7 @@ msgstr "Ongelma, jota ei ole sisällytetty näihin vaihtoehtoihin" msgid "An issue occurred, please try again." msgstr "Tapahtui virhe, yritä uudelleen." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" msgstr "" @@ -390,7 +430,7 @@ msgstr "" msgid "and" msgstr "ja" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "Eläimet" @@ -398,7 +438,7 @@ msgstr "Eläimet" msgid "Animated GIF" msgstr "Animoitu GIF" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "Epäsosiaalinen käytös" @@ -406,38 +446,39 @@ msgstr "Epäsosiaalinen käytös" msgid "App Language" msgstr "Sovelluksen kieli" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "Sovelluksen salasana poistettu" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "Sovelluksen salasanan nimet voivat sisältää vain kirjaimia, numeroita, välilyöntejä, viivoja ja alaviivoja." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "Sovelluksen salasanojen nimien on oltava vähintään 4 merkkiä pitkiä." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "Sovelluksen salasanan asetukset" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "Sovellussalasanat" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "Valita" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "Valita \"{0}\" -merkinnästä" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" msgstr "" @@ -445,31 +486,51 @@ msgstr "" #~ msgid "Appeal submitted." #~ msgstr "Valitus jätetty." -#: src/view/screens/Settings/index.tsx:430 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "" + +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "Ulkonäkö" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "Haluatko varmasti poistaa sovellussalasanan \"{name}\"?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "Haluatko varmasti poistaa {0} syötteistäsi?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "Haluatko varmasti hylätä tämän luonnoksen?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "Oletko varma?" @@ -477,11 +538,11 @@ msgstr "Oletko varma?" msgid "Are you writing in <0>{0}?" msgstr "Onko viestisi kieli <0>{0}?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "Taide" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "Taiteellinen tai ei-eroottinen alastomuus." @@ -489,18 +550,20 @@ msgstr "Taiteellinen tai ei-eroottinen alastomuus." msgid "At least 3 characters" msgstr "Vähintään kolme merkkiä" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -510,7 +573,7 @@ msgstr "Takaisin" msgid "Based on your interest in {interestsText}" msgstr "Perustuen kiinnostukseesi {interestsText}" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "Perusasiat" @@ -518,17 +581,17 @@ msgstr "Perusasiat" msgid "Birthday" msgstr "Syntymäpäivä" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "Syntymäpäivä:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "Estä" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" msgstr "" @@ -541,15 +604,15 @@ msgstr "Estä käyttäjä" msgid "Block Account?" msgstr "Estä käyttäjätili?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "Estä käyttäjätilit" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "Estä lista" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "Estetäänkö nämä käyttäjät?" @@ -575,15 +638,15 @@ msgstr "Estetyt käyttäjät eivät voi vastata viesteihisi, mainita sinua tai m msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "Estetyt käyttäjät eivät voi vastata viesteihisi, mainita sinua tai muuten olla vuorovaikutuksessa kanssasi. Et näe heidän sisältöään ja he eivät näe sinun sisältöäsi." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "Estetty viesti." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "Estäminen ei estä tätä merkitsijää asettamasta merkintöjä tilillesi." -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "Estäminen on julkista. Estetyt käyttäjät eivät voi vastata viesteihisi, mainita sinua tai muuten olla vuorovaikutuksessa kanssasi." @@ -631,10 +694,15 @@ msgstr "Sumenna kuvat" msgid "Blur images and filter from feeds" msgstr "Sumenna kuvat ja suodata syötteistä" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "Kirjat" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "" + #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "Yritys" @@ -671,7 +739,7 @@ msgstr "sinulta" msgid "Camera" msgstr "Kamera" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "Voi sisältää vain kirjaimia, numeroita, välilyöntejä, viivoja ja alaviivoja. Täytyy olla vähintään 4 merkkiä pitkä, mutta enintään 32 merkkiä pitkä." @@ -679,11 +747,11 @@ msgstr "Voi sisältää vain kirjaimia, numeroita, välilyöntejä, viivoja ja a #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -695,26 +763,26 @@ msgstr "Voi sisältää vain kirjaimia, numeroita, välilyöntejä, viivoja ja a #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "Peruuta" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "Peruuta" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "Peruuta käyttäjätilin poisto" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "Peruuta käyttäjätunnuksen vaihto" @@ -739,34 +807,34 @@ msgstr "Peruuta haku" msgid "Cancels opening the linked website" msgstr "Peruuttaa linkitetyn verkkosivuston avaamisen" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "Vaihda" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "Vaihda" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "Vaihda käyttäjätunnus" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "Vaihda käyttäjätunnus" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "Vaihda sähköpostiosoitteeni" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "Vaihda salasana" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "Vaihda salasana" @@ -774,24 +842,34 @@ msgstr "Vaihda salasana" msgid "Change post language to {0}" msgstr "Vaihda julkaisun kieleksi {0}" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "Vaihda sähköpostiosoitteesi" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" msgstr "" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" msgstr "" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" msgstr "" @@ -812,11 +890,11 @@ msgstr "Tarkista tilani" #~ msgid "Check out some recommended users. Follow them to see similar users." #~ msgstr "Tutustu suositeltuihin käyttäjiin. Seuraa heitä löytääksesi samankaltaisia käyttäjiä." -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "Tarkista sähköpostistasi kirjautumiskoodi ja syötä se tähän." -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "Tarkista sähköpostisi ja syötä saamasi vahvistuskoodi alle:" @@ -828,7 +906,7 @@ msgstr "Valitse \"Kaikki\" tai \"Ei kukaan\"" msgid "Choose Service" msgstr "Valitse palvelu" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "Valitse algoritmit, jotka ohjaavat mukautettuja syötteitäsi." @@ -837,6 +915,10 @@ msgstr "Valitse algoritmit, jotka ohjaavat mukautettuja syötteitäsi." #~ msgid "Choose the algorithms that power your experience with custom feeds." #~ msgstr "Valitse algoritmit, jotka ohjaavat kokemustasi mukautettujen syötteiden kanssa." +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "Valitse pääsyötteet" @@ -845,19 +927,19 @@ msgstr "Valitse pääsyötteet" msgid "Choose your password" msgstr "Valitse salasanasi" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "Tyhjennä kaikki vanhan tietomallin mukaiset tiedot" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "Tyhjennä kaikki vanhan tietomallin tiedot (käynnistä uudelleen tämän jälkeen)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "Tyhjennä kaikki tallennukset" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "Tyhjennä kaikki tallennukset (käynnistä uudelleen tämän jälkeen)" @@ -866,11 +948,11 @@ msgstr "Tyhjennä kaikki tallennukset (käynnistä uudelleen tämän jälkeen)" msgid "Clear search query" msgstr "Tyhjennä hakukysely" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "Tyhjentää kaikki tallennustiedot" @@ -878,23 +960,36 @@ msgstr "Tyhjentää kaikki tallennustiedot" msgid "click here" msgstr "klikkaa tästä" +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "" + #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" msgstr "Avaa tästä valikko aihetunnisteelle {tag}" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "Ilmasto" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "Sulje" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "Sulje aktiivinen ikkuna" @@ -906,7 +1001,7 @@ msgstr "Sulje hälytys" msgid "Close bottom drawer" msgstr "Sulje alavalinnat" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "Sulje valintaikkuna." @@ -922,6 +1017,10 @@ msgstr "Sulje kuva" msgid "Close image viewer" msgstr "Sulje kuvankatselu" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "Sulje alanavigointi" @@ -939,7 +1038,7 @@ msgstr "Sulkee alanavigaation" msgid "Closes password update alert" msgstr "Sulkee salasanan päivitysilmoituksen" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "Sulkee editorin ja hylkää luonnoksen" @@ -951,11 +1050,11 @@ msgstr "Sulkee kuvan katseluohjelman" msgid "Collapses list of users for a given notification" msgstr "Pienentää käyttäjäluettelon annetulle ilmoitukselle" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "Komedia" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "Sarjakuvat" @@ -964,7 +1063,7 @@ msgstr "Sarjakuvat" msgid "Community Guidelines" msgstr "Yhteisöohjeet" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "Suorita käyttöönotto loppuun ja aloita käyttäjätilisi käyttö" @@ -972,7 +1071,7 @@ msgstr "Suorita käyttöönotto loppuun ja aloita käyttäjätilisi käyttö" msgid "Complete the challenge" msgstr "Tee haaste loppuun" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "Laadi viestejä, joiden pituus on enintään {MAX_GRAPHEME_LENGTH} merkkiä" @@ -994,18 +1093,18 @@ msgstr "" #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "Vahvista" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "Vahvista muutos" @@ -1013,7 +1112,7 @@ msgstr "Vahvista muutos" msgid "Confirm content language settings" msgstr "Vahvista sisällön kieliasetukset" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "Vahvista käyttäjätilin poisto" @@ -1025,17 +1124,17 @@ msgstr "Vahvista ikäsi:" msgid "Confirm your birthdate" msgstr "Vahvista syntymäaikasi" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "Vahvistuskoodi" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "Yhdistetään..." @@ -1082,8 +1181,9 @@ msgstr "" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "Jatka" @@ -1093,8 +1193,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "Jatka käyttäjänä {0} (kirjautunut)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1108,22 +1209,26 @@ msgstr "Jatka seuraavaan vaiheeseen" msgid "Continue to the next step without following any accounts" msgstr "Jatka seuraavaan vaiheeseen seuraamatta yhtään tiliä" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "Ruoanlaitto" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "Kopioitu" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "Ohjelmiston versio kopioitu leikepöydälle" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1133,15 +1238,15 @@ msgstr "Kopioitu leikepöydälle" msgid "Copied!" msgstr "Kopioitu!" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "Kopioi sovellussalasanan" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "Kopioi" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "Kopioi {0}" @@ -1150,7 +1255,7 @@ msgstr "Kopioi {0}" msgid "Copy code" msgstr "Kopioi koodi" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "Kopioi listan linkki" @@ -1159,8 +1264,8 @@ msgstr "Kopioi listan linkki" msgid "Copy link to post" msgstr "Kopioi julkaisun linkki" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" msgstr "" @@ -1174,36 +1279,36 @@ msgstr "Kopioi viestin teksti" msgid "Copyright Policy" msgstr "Tekijänoikeuskäytäntö" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" msgstr "" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "Syötettä ei voitu ladata" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "Listaa ei voitu ladata" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "" -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" msgstr "" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +#~ msgid "Could not unmute chat" +#~ msgstr "" #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "Luo uusi käyttäjätili" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "Luo uusi Bluesky-tili" @@ -1216,7 +1321,11 @@ msgstr "Luo käyttäjätili" msgid "Create an account" msgstr "Luo käyttäjätili" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "Luo sovellussalasana" @@ -1225,15 +1334,15 @@ msgstr "Luo sovellussalasana" msgid "Create new account" msgstr "Luo uusi käyttäjätili" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "Luo raportti: {0}" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "{0} luotu" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "Kulttuuri" @@ -1242,12 +1351,12 @@ msgstr "Kulttuuri" msgid "Custom" msgstr "Mukautettu" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "Mukautettu verkkotunnus" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "Yhteisön rakentamat mukautetut syötteet tuovat sinulle uusia kokemuksia ja auttavat löytämään mieluisaa sisältöä." @@ -1255,8 +1364,8 @@ msgstr "Yhteisön rakentamat mukautetut syötteet tuovat sinulle uusia kokemuksi msgid "Customize media from external sites." msgstr "Muokkaa ulkoisten sivustojen mediasisältöjen asetuksia" -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "Tumma" @@ -1264,7 +1373,7 @@ msgstr "Tumma" msgid "Dark mode" msgstr "Tumma ulkoasu" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "Tumma teema" @@ -1272,7 +1381,7 @@ msgstr "Tumma teema" msgid "Date of birth" msgstr "Syntymäaika" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "" @@ -1280,14 +1389,14 @@ msgstr "" msgid "Debug panel" msgstr "Vianetsintäpaneeli" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "Poista" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "Poista käyttäjätili" @@ -1295,39 +1404,44 @@ msgstr "Poista käyttäjätili" #~ msgid "Delete Account" #~ msgstr "Poista käyttäjätili" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" msgstr "" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "Poista sovellussalasana" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "Poista sovellussalasana" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" - -#: src/view/screens/ProfileList.tsx:417 -msgid "Delete List" -msgstr "Poista lista" - -#: src/components/dms/MessageMenu.tsx:119 -msgid "Delete message" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" msgstr "" #: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "" + +#: src/view/screens/ProfileList.tsx:470 +msgid "Delete List" +msgstr "Poista lista" + +#: src/components/dms/MessageMenu.tsx:122 +msgid "Delete message" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "Poista käyttäjätilini" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "Poista käyttäjätilini…" @@ -1336,7 +1450,7 @@ msgstr "Poista käyttäjätilini…" msgid "Delete post" msgstr "Poista viesti" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "Poista tämä lista?" @@ -1348,10 +1462,14 @@ msgstr "Poista tämä viesti?" msgid "Deleted" msgstr "Poistettu" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "Poistettu viesti." +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1359,23 +1477,27 @@ msgstr "Poistettu viesti." msgid "Description" msgstr "Kuvaus" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" msgstr "" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "Haluatko sanoa jotain?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "Himmeä" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "Älä käynnistä giffejä automaattisesti" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "Poista sähköpostiin perustuva kaksivaiheinen tunnistautuminen käytöstä" @@ -1386,15 +1508,17 @@ msgstr "Poista haptiset palautteet käytöstä" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "Poistettu käytöstä" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "Hylkää" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "Hylkää luonnos?" @@ -1408,7 +1532,7 @@ msgstr "Estä sovelluksia näyttämästä tiliäni kirjautumattomille käyttäji msgid "Discover new custom feeds" msgstr "Löydä uusia mukautettuja syötteitä" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "Löydä uusia syötteitä" @@ -1420,7 +1544,7 @@ msgstr "Näyttönimi" msgid "Display Name" msgstr "Näyttönimi" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "DNS-paneeli" @@ -1432,11 +1556,11 @@ msgstr "Ei sisällä alastomuutta." msgid "Doesn't begin or end with a hyphen" msgstr "Ei ala eikä lopu väliviivaan" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "Verkkotunnus vahvistettu!" @@ -1444,23 +1568,23 @@ msgstr "Verkkotunnus vahvistettu!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "Valmis" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1474,8 +1598,8 @@ msgstr "Valmis" msgid "Done{extraText}" msgstr "Valmis{extraText}" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "Lataa CAR tiedosto" @@ -1487,7 +1611,7 @@ msgstr "Raahaa tähän lisätäksesi kuvia" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "Applen sääntöjen vuoksi aikuisviihde voidaan ottaa käyttöön vasta rekisteröitymisen jälkeen." -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "esim. maija" @@ -1495,7 +1619,7 @@ msgstr "esim. maija" msgid "e.g. Alice Roberts" msgstr "esim. Maija Mallikas" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "esim. liisa.fi" @@ -1532,7 +1656,7 @@ msgctxt "action" msgid "Edit" msgstr "Muokkaa" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "Muokkaa profiilikuvaa" @@ -1542,7 +1666,7 @@ msgstr "Muokkaa profiilikuvaa" msgid "Edit image" msgstr "Muokkaa kuvaa" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "Muokkaa listan tietoja" @@ -1551,8 +1675,8 @@ msgid "Edit Moderation List" msgstr "Muokkaa moderaatiolistaa" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "Muokkaa syötteitä" @@ -1560,18 +1684,18 @@ msgstr "Muokkaa syötteitä" msgid "Edit my profile" msgstr "Muokkaa profiilia" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "Muokkaa profiilia" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "Muokkaa profiilia" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "Muokkaa tallennettuja syötteitä" @@ -1587,16 +1711,16 @@ msgstr "Muokkaa näyttönimeäsi" msgid "Edit your profile description" msgstr "Muokkaa profiilin kuvausta" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "Koulutus" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "Sähköposti" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "Sähköpostiin perustuva kaksivaiheinen tunnistautuminen poistettu käytöstä" @@ -1604,20 +1728,20 @@ msgstr "Sähköpostiin perustuva kaksivaiheinen tunnistautuminen poistettu käyt msgid "Email address" msgstr "Sähköpostiosoite" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "Sähköpostiosoite päivitetty" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "Sähköpostiosoite päivitetty" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "Sähköpostiosoite vahvistettu" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "Sähköpostiosoite:" @@ -1661,7 +1785,7 @@ msgstr "Ota käyttöön ulkoinen media" msgid "Enable media players for" msgstr "Ota mediatoistimet käyttöön kohteille" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "Ota tämä asetus käyttöön nähdäksesi vastaukset vain seuraamiltasi ihmisiltä." @@ -1669,6 +1793,8 @@ msgstr "Ota tämä asetus käyttöön nähdäksesi vastaukset vain seuraamiltasi msgid "Enable this source only" msgstr "Ota käyttöön vain tämä lähde" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "Käytössä" @@ -1677,7 +1803,11 @@ msgstr "Käytössä" msgid "End of feed" msgstr "Syötteen loppu" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "Anna sovellusalasanalle nimi" @@ -1685,12 +1815,12 @@ msgstr "Anna sovellusalasanalle nimi" msgid "Enter a password" msgstr "Anna salasana" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "Kirjoita sana tai aihetunniste" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "Syötä vahvistuskoodi" @@ -1698,7 +1828,7 @@ msgstr "Syötä vahvistuskoodi" msgid "Enter the code you received to change your password." msgstr "Anna saamasi koodi vaihtaaksesi salasanasi." -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "Anna verkkotunnus, jota haluat käyttää" @@ -1715,11 +1845,11 @@ msgstr "Syötä syntymäaikasi" msgid "Enter your email address" msgstr "Syötä sähköpostiosoitteesi" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "Syötä uusi sähköpostiosoitteesi yläpuolelle" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "Syötä uusi sähköpostiosoitteesi alle" @@ -1727,11 +1857,15 @@ msgstr "Syötä uusi sähköpostiosoitteesi alle" msgid "Enter your username and password" msgstr "Syötä käyttäjätunnuksesi ja salasanasi" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "Virhe captcha-vastauksen vastaanottamisessa." -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "Virhe:" @@ -1740,15 +1874,30 @@ msgstr "Virhe:" msgid "Everybody" msgstr "Kaikki" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "Liialliset maininnat tai vastaukset" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "Keskeyttää tilin poistoprosessin" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "Peruuttaa käyttäjätunnuksen vaihtamisen" @@ -1782,12 +1931,12 @@ msgstr "Selvästi tai mahdollisesti häiritsevä media." msgid "Explicit sexual images." msgstr "Selvästi seksuaalista kuvamateriaalia." -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "Vie tietoni" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "Vie tietoni" @@ -1803,16 +1952,16 @@ msgstr "Ulkoiset mediat voivat sallia verkkosivustojen kerätä tietoja sinusta #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "Ulkoisten mediasoittimien asetukset" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "Ulkoisten mediasoittimien asetukset" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "Sovellussalasanan luominen epäonnistui." @@ -1820,7 +1969,7 @@ msgstr "Sovellussalasanan luominen epäonnistui." msgid "Failed to create the list. Check your internet connection and try again." msgstr "Listan luominen epäonnistui. Tarkista internetyhteytesi ja yritä uudelleen." -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" msgstr "" @@ -1828,48 +1977,69 @@ msgstr "" msgid "Failed to delete post, please try again" msgstr "Viestin poistaminen epäonnistui, yritä uudelleen" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "GIF-animaatioiden lataaminen epäonnistui" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "" + #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 #~ msgid "Failed to load recommended feeds" #~ msgstr "Suositeltujen syötteiden lataaminen epäonnistui" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "Kuvan {0} tallennus epäonnistui" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "Syöte" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "Syöte käyttäjältä {0}" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "Syöte ei ole käytettävissä" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "Palaute" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "Syötteet" @@ -1877,7 +2047,7 @@ msgstr "Syötteet" #~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." #~ msgstr "Käyttäjät luovat syötteitä sisällön kuratointiin. Valitse joitakin syötteitä, jotka koet mielenkiintoisiksi." -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "Syötteet ovat käyttäjien rakentamia mukautettuja algoritmeja, jotka vaativat vain vähän koodaustaitoja. <0/> lisätietoa varten." @@ -1885,15 +2055,19 @@ msgstr "Syötteet ovat käyttäjien rakentamia mukautettuja algoritmeja, jotka v msgid "Feeds can be topical as well!" msgstr "Syötteet voivat olla myös aihepiirikohtaisia!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "Tiedoston sisältö" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "Suodata syötteistä" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "Viimeistely" @@ -1911,7 +2085,7 @@ msgstr "Etsi viestejä ja käyttäjiä Blueskysta" #~ msgid "Finding similar accounts..." #~ msgstr "Etsitään samankaltaisia käyttäjätilejä" -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "Hienosäädä näkemääsi sisältöä Seuratut-syötteessäsi." @@ -1919,11 +2093,11 @@ msgstr "Hienosäädä näkemääsi sisältöä Seuratut-syötteessäsi." msgid "Fine-tune the discussion threads." msgstr "Hienosäädä keskusteluketjuja." -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "Kuntoilu" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "Joustava" @@ -1936,10 +2110,10 @@ msgstr "Käännä vaakasuunnassa" msgid "Flip vertically" msgstr "Käännä pystysuunnassa" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -1951,7 +2125,7 @@ msgid "Follow" msgstr "Seuraa" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "Seuraa {0}" @@ -1985,7 +2159,7 @@ msgstr "Seuraajina {0}" msgid "Followed users" msgstr "Seuratut käyttäjät" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "Vain seuratut käyttäjät" @@ -1998,28 +2172,30 @@ msgstr "seurasi sinua" msgid "Followers" msgstr "Seuraajat" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "Seurataan" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "Seurataan {0}" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "Seuratut -syötteen asetukset" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "Seuratut -syötteen asetukset" @@ -2031,15 +2207,15 @@ msgstr "Seuraa sinua" msgid "Follows You" msgstr "Seuraa sinua" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "Ruoka" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "Turvallisuussyistä meidän on lähetettävä vahvistuskoodi sähköpostiosoitteeseesi." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "Turvallisuussyistä et näe tätä uudelleen. Jos unohdat tämän salasanan, sinun on luotava uusi." @@ -2048,15 +2224,15 @@ msgstr "Turvallisuussyistä et näe tätä uudelleen. Jos unohdat tämän salasa msgid "Forgot Password" msgstr "Unohtunut salasana" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "Unohtuiko salasana?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "Unohditko?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "Julkaisee usein ei-toivottua sisältöä" @@ -2064,7 +2240,7 @@ msgstr "Julkaisee usein ei-toivottua sisältöä" msgid "From @{sanitizedAuthor}" msgstr "Käyttäjältä @{sanitizedAuthor}" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "Lähde: <0/>" @@ -2073,12 +2249,20 @@ msgstr "Lähde: <0/>" msgid "Gallery" msgstr "Galleria" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "Aloita tästä" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "Ilmeisiä lain tai käyttöehtojen rikkomuksia" @@ -2087,9 +2271,9 @@ msgstr "Ilmeisiä lain tai käyttöehtojen rikkomuksia" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "Palaa takaisin" @@ -2097,13 +2281,14 @@ msgstr "Palaa takaisin" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "Palaa takaisin" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2123,16 +2308,20 @@ msgstr "Palaa alkuun" #~ msgid "Go to @{queryMaybeHandle}" #~ msgstr "Siirry @{queryMaybeHandle}" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "Siirry seuraavaan" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" msgstr "" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" msgstr "" @@ -2140,7 +2329,7 @@ msgstr "" msgid "Graphic Media" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "Käyttäjätunnus" @@ -2148,7 +2337,7 @@ msgstr "Käyttäjätunnus" msgid "Haptics" msgstr "Haptiikka" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "Häirintä, trollaus tai suvaitsemattomuus" @@ -2156,7 +2345,7 @@ msgstr "Häirintä, trollaus tai suvaitsemattomuus" msgid "Hashtag" msgstr "Aihetunniste" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "Aihetunniste #{tag}" @@ -2165,10 +2354,14 @@ msgid "Having trouble?" msgstr "Ongelmia?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "Ohje" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "Tässä on joitakin tilejä seurattavaksi" @@ -2181,13 +2374,13 @@ msgstr "Tässä on joitakin suosittuja aihepiirikohtaisia syötteitä. Voit vali msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "Tässä on joitakin aihepiirikohtaisia syötteitä kiinnostuksiesi perusteella: {interestsText}. Voit valita seurata niin montaa kuin haluat." -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "Tässä on sovelluksesi salasana." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2209,7 +2402,7 @@ msgid "Hide post" msgstr "Piilota viesti" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "Piilota sisältö" @@ -2221,23 +2414,23 @@ msgstr "Piilota tämä viesti?" msgid "Hide user list" msgstr "Piilota käyttäjäluettelo" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "Hmm, jokin ongelma ilmeni ottaessa yhteyttä syötteen palvelimeen. Ilmoita asiasta syötteen omistajalle." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "Hmm, syötteen palvelin vaikuttaa olevan väärin konfiguroitu. Ilmoita asiasta syötteen omistajalle." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "Hmm, syötteen palvelin vaikuttaa olevan poissa käytöstä. Ilmoita asiasta syötteen omistajalle." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "Hmm, syötteen palvelin antoi virheellisen vastauksen. Ilmoita asiasta syötteen omistajalle." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "Hmm, meillä on vaikeuksia löytää tätä syötettä. Se saattaa olla poistettu." @@ -2249,22 +2442,22 @@ msgstr "Hmm, vaikuttaa siltä, että tämän datan lataamisessa on ongelmia. Kat msgid "Hmmmm, we couldn't load that moderation service." msgstr "Hmm, emme pystyneet avaamaan kyseistä moderaatiopalvelua." -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "Koti" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "Hostingyritys" @@ -2272,25 +2465,30 @@ msgstr "Hostingyritys" msgid "How should we open this link?" msgstr "Kuinka haluat avata tämän linkin?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "Minulla on koodi" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "Minulla on vahvistuskoodi" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "Minulla on oma verkkotunnus" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "Jos ALT-teksti on pitkä, vaihtaa ALT-tekstin laajennetun tilan" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "Jos mitään ei ole valittu, sopii kaikenikäisille." @@ -2298,7 +2496,7 @@ msgstr "Jos mitään ei ole valittu, sopii kaikenikäisille." msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "Jos et ole vielä täysi-ikäinen, huoltajasi tai laillisen edustajasi on luettava nämä ehdot puolestasi." -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "Jos poistat tämän listan, et voi palauttaa sitä." @@ -2310,7 +2508,7 @@ msgstr "Jos poistat tämän julkaisun, et voi palauttaa sitä." msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "Jos haluat vaihtaa salasanasi, lähetämme sinulle koodin varmistaaksemme, että tämä on käyttäjätilisi." -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "Laiton ja kiireellinen" @@ -2318,23 +2516,27 @@ msgstr "Laiton ja kiireellinen" msgid "Image" msgstr "Kuva" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "Kuvan ALT-teksti" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "Henkilöllisyyden tai yhteyksien vääristely tai vääriä väitteitä niistä" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "Syötä sähköpostiisi lähetetty koodi salasanan nollaamista varten" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "Syötä vahvistuskoodi käyttäjätilin poistoa varten" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "Syötä nimi sovellussalasanaa varten" @@ -2342,27 +2544,27 @@ msgstr "Syötä nimi sovellussalasanaa varten" msgid "Input new password" msgstr "Syötä uusi salasana" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "Syötä salasana käyttäjätilin poistoa varten" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "Syötä sinulle sähköpostitse lähetetty koodi" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "Syötä salasana, joka liittyy kohteeseen {identifier}" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "Syötä käyttäjätunnus tai sähköpostiosoite, jonka käytit rekisteröityessäsi" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "Syötä salasanasi" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "Syötä haluamasi palveluntarjoaja" @@ -2370,16 +2572,20 @@ msgstr "Syötä haluamasi palveluntarjoaja" msgid "Input your user handle" msgstr "Syötä käyttäjätunnuksesi" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "Virheellinen kaksivaiheisen tunnistautumisen vahvistuskoodi." -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "Virheellinen tai ei tuettu tietue" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "Virheellinen käyttäjätunnus tai salasana" @@ -2391,7 +2597,7 @@ msgstr "Kutsu ystävä" msgid "Invite code" msgstr "Kutsukoodi" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "Kutsukoodia ei hyväksytty. Tarkista, että syötit sen oikein ja yritä uudelleen." @@ -2411,7 +2617,7 @@ msgstr "Se näyttää viestejä seuraamiltasi ihmisiltä reaaliajassa." msgid "Jobs" msgstr "Työpaikat" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "Journalismi" @@ -2431,7 +2637,7 @@ msgstr "" msgid "Labels" msgstr "Merkinnät" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "" @@ -2439,11 +2645,11 @@ msgstr "" #~ msgid "labels have been placed on this {labelTarget}" #~ msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "" @@ -2451,7 +2657,7 @@ msgstr "" msgid "Language selection" msgstr "Kielen valinta" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "Kielen asetukset" @@ -2460,7 +2666,7 @@ msgstr "Kielen asetukset" msgid "Language Settings" msgstr "Kielen asetukset" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "Kielet" @@ -2478,7 +2684,7 @@ msgstr "Lue lisää" msgid "Learn more about the moderation applied to this content." msgstr "" -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "Lue lisää tästä varoituksesta" @@ -2491,13 +2697,20 @@ msgstr "Lue lisää siitä, mikä on julkista Blueskyssa." msgid "Learn more." msgstr "Lue lisää." -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" msgstr "" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" msgstr "" @@ -2513,7 +2726,7 @@ msgstr "Poistuminen Blueskysta" msgid "left to go." msgstr "jäljellä." -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "Legacy tietovarasto tyhjennetty, sinun on käynnistettävä sovellus uudelleen nyt." @@ -2522,11 +2735,11 @@ msgstr "Legacy tietovarasto tyhjennetty, sinun on käynnistettävä sovellus uud msgid "Let's get your password reset!" msgstr "Aloitetaan salasanasi nollaus!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "Aloitetaan!" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "Vaalea" @@ -2534,8 +2747,8 @@ msgstr "Vaalea" #~ msgid "Like" #~ msgstr "Tykkää" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "Tykkää tästä syötteestä" @@ -2577,7 +2790,7 @@ msgstr "tykkäsi viestistäsi" msgid "Likes" msgstr "Tykkäykset" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "Tykkäykset tässä viestissä" @@ -2589,19 +2802,19 @@ msgstr "Lista" msgid "List Avatar" msgstr "Listan kuvake" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "Lista estetty" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "Listan on luonut {0}" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "Lista poistettu" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "Lista hiljennetty" @@ -2609,31 +2822,35 @@ msgstr "Lista hiljennetty" msgid "List Name" msgstr "Listan nimi" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "Listaa estosta poistetut" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "Listaa hiljennyksestä poistetut" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "Listat" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "" + #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "Lataa uusia ilmoituksia" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "Lataa uusia viestejä" @@ -2660,7 +2877,7 @@ msgstr "Näkyvyys kirjautumattomana" msgid "Login to account that is not listed" msgstr "Kirjaudu tiliin, joka ei ole luettelossa" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "Pidä alaspainettuna avataksesi tunnistevalikon tunnisteelle #{tag}" @@ -2668,14 +2885,35 @@ msgstr "Pidä alaspainettuna avataksesi tunnistevalikon tunnisteelle #{tag}" msgid "Looks like XXXXX-XXXXX" msgstr "Näkyy muodossa XXXXX-XXXXX" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "Varmista, että olet menossa oikeaan paikkaan!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "Hallinnoi hiljennettyjä sanoja ja aihetunnisteita" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2694,44 +2932,50 @@ msgstr "Mainitut käyttäjät" msgid "Menu" msgstr "Valikko" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "Viesti palvelimelta: {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" msgstr "" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" +#~ msgid "Messaging settings" +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "Harhaanjohtava käyttäjätili" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "Moderointi" @@ -2744,13 +2988,13 @@ msgstr "Moderaation yksityiskohdat" msgid "Moderation list by {0}" msgstr "Moderointilista käyttäjältä {0}" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "Moderointilista käyttäjältä <0/>" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "Sinun moderointilistasi" @@ -2771,7 +3015,7 @@ msgstr "Moderointilistat" msgid "Moderation Lists" msgstr "Moderointilistat" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "Moderointiasetukset" @@ -2792,11 +3036,11 @@ msgstr "Ylläpitäjä on asettanut yleisen varoituksen sisällölle." msgid "More" msgstr "Lisää" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "Lisää syötteitä" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "Lisää asetuksia" @@ -2817,7 +3061,7 @@ msgstr "Hiljennä {truncatedTag}" msgid "Mute Account" msgstr "Hiljennä käyttäjä" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "Hiljennä käyttäjät" @@ -2825,32 +3069,37 @@ msgstr "Hiljennä käyttäjät" msgid "Mute all {displayTag} posts" msgstr "Hiljennä kaikki {displayTag} viestit" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "Hiljennä vain aihetunnisteissa" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "Hiljennä tekstissä ja aihetunnisteissa" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "Hiljennä lista" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "Hiljennä nämä käyttäjät?" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "Hiljennä tämä sana viesteissä ja aihetunnisteissa" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "Hiljennä tämä sana vain aihetunnisteissa" @@ -2889,7 +3138,7 @@ msgstr "Hiljentäjä: \"{0}\"" msgid "Muted words & tags" msgstr "Hiljennetyt sanat ja aihetunnisteet" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "Hiljennys on yksityinen. Hiljennetyt käyttäjät voivat edelleen vuorovaikuttaa kanssasi, mutta et näe heidän viestejään tai saa ilmoituksia heiltä." @@ -2898,23 +3147,23 @@ msgstr "Hiljennys on yksityinen. Hiljennetyt käyttäjät voivat edelleen vuorov msgid "My Birthday" msgstr "Syntymäpäiväni" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "Omat syötteet" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "Profiilini" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "Tallennetut syötteeni" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "Tallennetut syötteeni" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "Nimi" @@ -2923,27 +3172,27 @@ msgstr "Nimi" msgid "Name is required" msgstr "Nimi vaaditaan" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "Nimi tai kuvaus rikkoo yhteisön sääntöjä" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "Luonto" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "Siirtyy seuraavalle näytölle" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "Siirtyy profiiliisi" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "Tarvitseeko ilmoittaa tekijänoikeusrikkomuksesta?" @@ -2952,11 +3201,11 @@ msgstr "Tarvitseeko ilmoittaa tekijänoikeusrikkomuksesta?" #~ msgid "Never lose access to your followers and data." #~ msgstr "Älä koskaan menetä pääsyä seuraajiisi ja tietoihisi." -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "Älä koskaan menetä pääsyä seuraajiisi tai tietoihisi." -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "" @@ -2969,12 +3218,16 @@ msgstr "Uusi" msgid "New" msgstr "Uusi" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" msgstr "" +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" msgstr "Uusi moderointilista" @@ -2987,22 +3240,22 @@ msgstr "Uusi salasana" msgid "New Password" msgstr "Uusi salasana" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "Uusi viesti" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "Uusi viesti" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "Uusi viesti" @@ -3015,14 +3268,14 @@ msgstr "Uusi käyttäjälista" msgid "Newest replies first" msgstr "Uusimmat vastaukset ensin" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "Uutiset" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3040,29 +3293,29 @@ msgstr "Seuraava" msgid "Next image" msgstr "Seuraava kuva" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "Ei" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "Ei kuvausta" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "Ei löydetty esillä olevia GIF-kuvia. Tenor-palvelussa saattaa olla ongelma." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "Et enää seuraa käyttäjää {0}" @@ -3070,25 +3323,39 @@ msgstr "Et enää seuraa käyttäjää {0}" msgid "No longer than 253 characters" msgstr "Ei pidempi kuin 253 merkkiä." -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" msgstr "" +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "" + #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "Ei vielä ilmoituksia!" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "Ei tuloksia" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "Tuloksia ei löydetty" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "Ei tuloksia haulle \"{query}\"" @@ -3098,13 +3365,13 @@ msgstr "Ei tuloksia haulle \"{query}\"" msgid "No results found for {query}" msgstr "Ei tuloksia haulle {query}" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "Ei tuloksia hakusanalle \"{search}\"." #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "" #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3115,6 +3382,10 @@ msgstr "Ei kiitos" msgid "Nobody" msgstr "Ei kukaan" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3133,8 +3404,8 @@ msgstr "Ei-seksuaalinen alastomuus" msgid "Not Found" msgstr "Ei löytynyt" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "Ei juuri nyt" @@ -3148,25 +3419,37 @@ msgstr "" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "Huomio: Bluesky on avoin ja julkinen verkosto. Tämä asetus rajoittaa vain sisältösi näkyvyyttä Bluesky-sovelluksessa ja -sivustolla, eikä muut sovellukset ehkä kunnioita tässä asetuksissaan. Sisältösi voi silti näkyä uloskirjautuneille käyttäjille muissa sovelluksissa ja verkkosivustoilla." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "Ilmoitukset" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "Alastomuus" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "" @@ -3178,17 +3461,17 @@ msgstr "" msgid "Off" msgstr "Pois" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "Voi ei!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "Voi ei! Jokin meni pieleen." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "OK" @@ -3200,14 +3483,18 @@ msgstr "Selvä" msgid "Oldest replies first" msgstr "Vanhimmat vastaukset ensin" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "Käyttöönoton nollaus" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "Yksi tai useampi kuva on ilman vaihtoehtoista Alt-tekstiä." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "Vain {0} voi vastata." @@ -3216,33 +3503,46 @@ msgstr "Vain {0} voi vastata." msgid "Only contains letters, numbers, and hyphens" msgstr "Sisältää vain kirjaimia, numeroita ja väliviivoja" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "Hups, nyt meni jotain väärin!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "Hups!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "Avaa" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "Avaa emoji-valitsin" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "Avaa syötteen asetusvalikko" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "Avaa linkit sovelluksen sisäisellä selaimella" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "Avaa hiljennettyjen sanojen ja aihetunnisteiden asetukset" @@ -3255,12 +3555,12 @@ msgstr "Avaa navigointi" msgid "Open post options menu" msgstr "Avaa viestin asetusvalikko" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "Avaa storybook-sivu" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "Avaa järjestelmäloki" @@ -3268,7 +3568,7 @@ msgstr "Avaa järjestelmäloki" msgid "Opens {numItems} options" msgstr "Avaa {numItems} asetusta" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "Avaa esteettömyysasetukset" @@ -3284,11 +3584,15 @@ msgstr "Avaa laajennetun listan tämän ilmoituksen käyttäjistä" msgid "Opens camera on device" msgstr "Avaa laitteen kameran" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "Avaa editorin" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "Avaa mukautettavat kielen asetukset" @@ -3296,7 +3600,7 @@ msgstr "Avaa mukautettavat kielen asetukset" msgid "Opens device photo gallery" msgstr "Avaa laitteen valokuvat" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "Avaa ulkoiset upotusasetukset" @@ -3318,52 +3622,52 @@ msgstr "Avaa GIF-valinnan valintaikkunan." msgid "Opens list of invite codes" msgstr "Avaa kutsukoodien luettelon" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "Avaa asetukset oman verkkotunnuksen käyttöönottoon" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "Avaa moderointiasetukset" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "Avaa salasanan palautuslomakkeen" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "Avaa näkymän tallennettujen syötteiden muokkaamiseen" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "Avaa näkymän kaikkiin tallennettuihin syötteisiin" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "Avaa sovelluksen salasanojen asetukset" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "Avaa Seuratut-syötteen asetukset" @@ -3371,20 +3675,20 @@ msgstr "Avaa Seuratut-syötteen asetukset" msgid "Opens the linked website" msgstr "Avaa linkitetyn verkkosivun" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "Avaa storybook-sivun" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "Avaa järjestelmän lokisivun" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "Avaa keskusteluasetukset" @@ -3392,7 +3696,8 @@ msgstr "Avaa keskusteluasetukset" msgid "Option {0} of {numItems}" msgstr "Asetus {0}/{numItems}" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "Voit tarvittaessa antaa lisätietoja alla:" @@ -3400,7 +3705,7 @@ msgstr "Voit tarvittaessa antaa lisätietoja alla:" msgid "Or combine these options:" msgstr "Tai yhdistä nämä asetukset:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "Joku toinen" @@ -3412,7 +3717,11 @@ msgstr "Toinen tili" msgid "Other..." msgstr "Muu..." -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "Sivua ei löytynyt" @@ -3421,10 +3730,10 @@ msgstr "Sivua ei löytynyt" msgid "Page Not Found" msgstr "Sivua ei löytynyt" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "Salasana" @@ -3456,35 +3765,39 @@ msgstr "Henkilöt, joita @{0} seuraa" msgid "People following @{0}" msgstr "Henkilöt, jotka seuraavat käyttäjää @{0}" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "Käyttöoikeus valokuviin tarvitaan." -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "Lupa valokuviin evättiin. Anna lupa järjestelmäasetuksissa." -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "Lemmikit" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "Aikuisille tarkoitetut kuvat." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "Kiinnitä etusivulle" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "Kiinnitä etusivulle" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "Kiinnitetyt syötteet" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "Käynnistä" @@ -3493,6 +3806,11 @@ msgstr "Käynnistä" msgid "Play {0}" msgstr "Toista {0}" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" msgstr "Toista tai pysäytä GIF" @@ -3506,78 +3824,83 @@ msgstr "Toista video" msgid "Plays the GIF" msgstr "Toistaa GIFin" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "Valitse käyttäjätunnuksesi." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "Valitse salasanasi." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "Täydennä varmennus-captcha, ole hyvä." -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "Vahvista sähköpostiosoitteesi ennen sen vaihtamista. Tämä on väliaikainen vaatimus, kunnes sähköpostin muokkaamisen liittyvät asetukset ovat lisätty ja se poistetaan piakkoin." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "Anna nimi sovellussalasanalle. Kaikki välilyönnit eivät ole sallittuja." -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "Anna uniikki nimi tälle sovellussalasanalle tai käytä satunnaisesti luotua." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "Ole hyvä ja syötä oikea sana, aihetunniste tai lause hiljennettäväksi." -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "Anna sähköpostiosoitteesi." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "Anna myös salasanasi:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "" + #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "Vahvista sähköpostiosoitteesi" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "Odota, että linkkikortti latautuu kokonaan" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "Politiikka" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "Porno" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "Lähetä" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "Viesti" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "Lähettäjä {0}" @@ -3591,7 +3914,7 @@ msgstr "Lähettäjä @{0}" msgid "Post deleted" msgstr "Viesti poistettu" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "Viesti piilotettu" @@ -3613,8 +3936,8 @@ msgstr "Lähetyskieli" msgid "Post Languages" msgstr "Lähetyskielet" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "Viestiä ei löydy" @@ -3626,11 +3949,11 @@ msgstr "viestit" msgid "Posts" msgstr "Viestit" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "Viestejä voidaan hiljentää sanojen, aihetunnisteiden tai molempien perusteella." -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "Piilotetut viestit" @@ -3638,21 +3961,25 @@ msgstr "Piilotetut viestit" msgid "Potentially Misleading Link" msgstr "Mahdollisesti harhaanjohtava linkki" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "Klikkaa vaihtaaksesi palveluntarjoajaa" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "Paina uudelleen jatkaaksesi" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -3666,7 +3993,7 @@ msgstr "Ensisijainen kieli" msgid "Prioritize Your Follows" msgstr "Aseta seurattavat tärkeysjärjestykseen" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "Yksityisyys" @@ -3674,25 +4001,29 @@ msgstr "Yksityisyys" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "Yksityisyydensuojakäytäntö" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "Käsitellään..." -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "profiili" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "Profiili" @@ -3700,11 +4031,11 @@ msgstr "Profiili" msgid "Profile updated" msgstr "Profiili päivitetty" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "Suojaa käyttäjätilisi vahvistamalla sähköpostiosoitteesi." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "Julkinen" @@ -3716,11 +4047,11 @@ msgstr "Julkinen, jaettava käyttäjäluettelo hiljennettyjen tai estettyjen kä msgid "Public, shareable lists which can drive feeds." msgstr "Julkinen, jaettava lista, joka voi ohjata syötteitä." -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "Julkaise viesti" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "Julkaise vastaus" @@ -3746,6 +4077,14 @@ msgstr "Satunnainen (tunnetaan myös nimellä \"Lähettäjän ruletti\")" msgid "Ratios" msgstr "Suhdeluvut" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "Viimeaikaiset haut" @@ -3758,12 +4097,20 @@ msgstr "Viimeaikaiset haut" #~ msgid "Recommended Users" #~ msgstr "Suositellut käyttäjät" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "Poista" @@ -3771,7 +4118,7 @@ msgstr "Poista" msgid "Remove account" msgstr "Poista käyttäjätili" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "Poista avatar" @@ -3779,22 +4126,25 @@ msgstr "Poista avatar" msgid "Remove Banner" msgstr "Poista banneri" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "Poista syöte" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "Poista syöte?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "Poista syötteistäni" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "Poista syötteistäni?" @@ -3806,7 +4156,7 @@ msgstr "Poista kuva" msgid "Remove image preview" msgstr "Poista kuvan esikatselu" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "Poista hiljennetty sana listaltasi" @@ -3818,7 +4168,7 @@ msgstr "" msgid "Remove repost" msgstr "Poista uudelleenjulkaisu" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "Poista tämä syöte seurannasta" @@ -3827,11 +4177,13 @@ msgstr "Poista tämä syöte seurannasta" msgid "Removed from list" msgstr "Poistettu listalta" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "Poistettu syötteistäni" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "Poistettu syötteistäsi" @@ -3843,6 +4195,11 @@ msgstr "Poistaa {0} oletuskuvakkeen" msgid "Removes quoted post" msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "Vastaukset" @@ -3851,49 +4208,57 @@ msgstr "Vastaukset" msgid "Replies to this thread are disabled" msgstr "Tähän keskusteluun vastaaminen on estetty" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "Vastaa" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "Vastaussuodattimet" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "Vastaa käyttäjälle <0><1/>" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" msgstr "" #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "Ilmianna käyttäjätili" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "Ilmianna syöte" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "Ilmianna luettelo" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" msgstr "" @@ -3902,30 +4267,36 @@ msgstr "" msgid "Report post" msgstr "Ilmianna viesti" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "Ilmianna tämä sisältö" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "Ilmianna tämä syöte" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "Ilmianna tämä lista" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "Ilmianna tämä viesti" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "Ilmianna tämä käyttäjä" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "Uudelleenjulkaise" @@ -3943,11 +4314,11 @@ msgstr "Uudelleenjulkaise tai lainaa viestiä" msgid "Reposted By" msgstr "Uudelleenjulkaissut" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "{0} uudelleenjulkaisi" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "Uudelleenjulkaissut <0><1/>" @@ -3955,12 +4326,12 @@ msgstr "Uudelleenjulkaissut <0><1/>" msgid "reposted your post" msgstr "uudelleenjulkaisi viestisi" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "Tämän viestin uudelleenjulkaisut" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "Pyydä muutosta" @@ -3973,7 +4344,7 @@ msgstr "Pyydä koodia" msgid "Require alt text before posting" msgstr "Edellytä ALT-tekstiä ennen viestin julkaisua" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "Edellytä sähköpostikoodia kirjautumisessa" @@ -3981,8 +4352,8 @@ msgstr "Edellytä sähköpostikoodia kirjautumisessa" msgid "Required for this provider" msgstr "Vaaditaan tälle instanssille" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "Lähetä sähköposti uudelleen" @@ -3994,8 +4365,8 @@ msgstr "Nollauskoodi" msgid "Reset Code" msgstr "Nollauskoodi" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "Nollaa käyttöönoton tila" @@ -4003,20 +4374,20 @@ msgstr "Nollaa käyttöönoton tila" msgid "Reset password" msgstr "Nollaa salasana" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "Nollaa asetusten tila" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "Nollaa käyttöönoton tilan" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "Nollaa asetusten tilan" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "Yrittää uudelleen kirjautumista" @@ -4025,13 +4396,14 @@ msgstr "Yrittää uudelleen kirjautumista" msgid "Retries the last action, which errored out" msgstr "Yrittää uudelleen viimeisintä toimintoa, joka epäonnistui" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 @@ -4039,11 +4411,11 @@ msgid "Retry" msgstr "Yritä uudelleen" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" +#~ msgid "Retry." +#~ msgstr "" #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "Palaa edelliselle sivulle" @@ -4052,26 +4424,26 @@ msgid "Returns to home page" msgstr "Palaa etusivulle" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "Palaa edelliselle sivulle" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "Tallenna" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "Tallenna" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "Tallenna vaihtoehtoinen ALT-teksti" @@ -4083,7 +4455,7 @@ msgstr "Tallenna syntymäpäivä" msgid "Save Changes" msgstr "Tallenna muutokset" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "Tallenna käyttäjätunnuksen muutos" @@ -4091,16 +4463,16 @@ msgstr "Tallenna käyttäjätunnuksen muutos" msgid "Save image crop" msgstr "Tallenna kuvan rajaus" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "Tallenna syötteisiini" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "Tallennetut syötteet" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" msgstr "" @@ -4108,7 +4480,8 @@ msgstr "" #~ msgid "Saved to your camera roll." #~ msgstr "Tallennettu kuvagalleriaasi." -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "Tallennettu syötteisiisi" @@ -4116,7 +4489,7 @@ msgstr "Tallennettu syötteisiisi" msgid "Saves any changes to your profile" msgstr "Tallentaa kaikki muutokset profiiliisi" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "Tallentaa käyttäjätunnuksen muutoksen muotoon {handle}" @@ -4124,16 +4497,20 @@ msgstr "Tallentaa käyttäjätunnuksen muutoksen muotoon {handle}" msgid "Saves image crop settings" msgstr "Tallentaa kuvan rajausasetukset" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "Tiede" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "Vieritä alkuun" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4141,12 +4518,12 @@ msgstr "Vieritä alkuun" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "Haku" @@ -4167,8 +4544,8 @@ msgid "Search for all posts with tag {displayTag}" msgstr "Etsi kaikki viestit aihetunnisteella {displayTag}." #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "" #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4180,7 +4557,8 @@ msgstr "Hae käyttäjiä" msgid "Search GIFs" msgstr "Hae GIF-animaatioita" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" msgstr "" @@ -4188,7 +4566,7 @@ msgstr "" msgid "Search Tenor" msgstr "Hae Tenorista" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "Turvatarkistus vaaditaan" @@ -4209,11 +4587,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "Näytä tämän käyttäjän <0>{displayTag} viestit" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "Katso profiilia" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "Katso tämä opas" @@ -4221,10 +4599,22 @@ msgstr "Katso tämä opas" msgid "Select {item}" msgstr "Valitse {item}" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "Valitse käyttäjätili" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "Valitse olemassa olevalta tililtä" @@ -4233,7 +4623,7 @@ msgstr "Valitse olemassa olevalta tililtä" msgid "Select GIF" msgstr "Valitse GIF" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "Valitse GIF \"{0}\"" @@ -4253,7 +4643,11 @@ msgstr "Valitse vaihtoehto {i} / {numItems}" msgid "Select some accounts below to follow" msgstr "Valitse alla olevista tileistä jotain seurattavaksi" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "" @@ -4281,7 +4675,7 @@ msgstr "Valitse sovelluksen käyttöliittymän kieli." msgid "Select your date of birth" msgstr "Aseta syntymäaikasi" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "Valitse kiinnostuksen kohteesi alla olevista vaihtoehdoista" @@ -4297,32 +4691,38 @@ msgstr "Valitse ensisijaiset algoritmisyötteet" msgid "Select your secondary algorithmic feeds" msgstr "Valitse toissijaiset algoritmisyötteet" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "Lähetä vahvistussähköposti" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "Lähetä sähköposti" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "Lähetä sähköposti" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "Lähetä palautetta" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "Lähetä raportti" @@ -4330,12 +4730,12 @@ msgstr "Lähetä raportti" msgid "Send report to {0}" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "Lähetä vahvistussähköposti" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "Lähettää sähköpostin tilin poistamiseen tarvittavan vahvistuskoodin" @@ -4351,15 +4751,15 @@ msgstr "Aseta syntymäaika" msgid "Set new password" msgstr "Aseta uusi salasana" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "Aseta tämä asetus \"Ei\"-tilaan piilottaaksesi kaikki lainaukset syötteestäsi. Uudelleenjulkaisut näkyvät silti." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "Aseta tämä asetus \"Ei\"-tilaan piilottaaksesi kaikki vastaukset syötteestäsi." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "Aseta tämä asetus \"Ei\"-tilaan piilottaaksesi kaikki uudelleenjulkaisut syötteestäsi." @@ -4367,7 +4767,7 @@ msgstr "Aseta tämä asetus \"Ei\"-tilaan piilottaaksesi kaikki uudelleenjulkais msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "Aseta tämä asetus \"Kyllä\" tilaan näyttääksesi vastaukset ketjumaisessa näkymässä. Tämä on kokeellinen ominaisuus." -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "Aseta tämä asetus \"Kyllä\"-tilaan nähdäksesi esimerkkejä tallennetuista syötteistäsi seuraamissasi syötteessäsi. Tämä on kokeellinen ominaisuus." @@ -4375,27 +4775,27 @@ msgstr "Aseta tämä asetus \"Kyllä\"-tilaan nähdäksesi esimerkkejä tallenne msgid "Set up your account" msgstr "Luo käyttäjätili" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Asettaa Bluesky-käyttäjätunnuksen" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "Muuttaa väriteeman tummaksi" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "Muuttaa väriteeman vaaleaksi" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "Muuttaa väriteeman käyttöjärjestelmän mukaiseksi" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "Muuttaa tumman väriteeman tummaksi" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "Asettaa tumman teeman himmeäksi teemaksi" @@ -4416,15 +4816,14 @@ msgid "Sets image aspect ratio to wide" msgstr "Asettaa kuvan kuvasuhteen leveäksi" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "Asetukset" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "Erotiikka tai muu aikuisviihde." @@ -4432,7 +4831,7 @@ msgstr "Erotiikka tai muu aikuisviihde." msgid "Sexually Suggestive" msgstr "Seksuaalisesti vihjaileva" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "Jaa" @@ -4442,18 +4841,26 @@ msgstr "Jaa" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "Jaa" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "Jaa kuitenkin" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "Jaa syöte" @@ -4462,15 +4869,19 @@ msgstr "Jaa syöte" msgid "Share Link" msgstr "Jaa linkki" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "Jakaa linkitetyn verkkosivun" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "Näytä" @@ -4496,10 +4907,14 @@ msgstr "" msgid "Show badge and filter from feeds" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "Näytä seurannat samankaltaisilta käyttäjiltä kuin {0}" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" @@ -4507,7 +4922,7 @@ msgstr "" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "Näytä lisää" @@ -4516,11 +4931,15 @@ msgstr "Näytä lisää" msgid "Show more like this" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "Näytä viestit omista syötteistäni" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "Näytä lainatut viestit" @@ -4536,7 +4955,7 @@ msgstr "Näytä lainaukset seurattavissa" msgid "Show re-posts in Following feed" msgstr "Näytä uudelleenjulkaistut viestit seurattavissa" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "Näytä vastaukset" @@ -4556,7 +4975,7 @@ msgstr "Näytä vastaukset seurattavissa" #~ msgid "Show replies with at least {value} {0}" #~ msgstr "Näytä vastaukset, joissa on vähintään {value} {0}" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "Näytä uudelleenjulkaisut" @@ -4565,7 +4984,7 @@ msgid "Show reposts in Following" msgstr "Näytä uudelleenjulkaisut seurattavissa" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "Näytä sisältö" @@ -4589,17 +5008,17 @@ msgstr "Näyttää viestit käyttäjältä {0} syötteessäsi" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4622,17 +5041,17 @@ msgstr "Kirjaudu sisään tai luo tili osallistuaksesi keskusteluun!" msgid "Sign into Bluesky or create a new account" msgstr "Kirjaudu Blueskyhin tai luo uusi käyttäjätili" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "Kirjaudu ulos" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -4648,7 +5067,7 @@ msgstr "Rekisteröidy tai kirjaudu sisään liittyäksesi keskusteluun" msgid "Sign-in Required" msgstr "Sisäänkirjautuminen vaaditaan" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "Kirjautunut sisään nimellä" @@ -4657,27 +5076,35 @@ msgstr "Kirjautunut sisään nimellä" msgid "Signed in as @{0}" msgstr "Kirjautunut sisään käyttäjätunnuksella @{0}" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "Ohita" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "Ohita tämä vaihe" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "Ohjelmistokehitys" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." msgstr "Jotain meni pieleen, yritä uudelleen" -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "Pahoittelut! Istuntosi on vanhentunut. Kirjaudu sisään uudelleen." @@ -4689,19 +5116,24 @@ msgstr "Lajittele vastaukset" msgid "Sort replies to the same post by:" msgstr "Lajittele saman viestin vastaukset seuraavasti:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "Lähde:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "Lähde:" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "Roskapostia" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "Urheilu" @@ -4709,15 +5141,23 @@ msgstr "Urheilu" msgid "Square" msgstr "Neliö" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "" + #: src/view/screens/Settings/index.tsx:862 #~ msgid "Status page" #~ msgstr "Tilasivu" -#: src/view/screens/Settings/index.tsx:896 +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" msgstr "" @@ -4729,29 +5169,31 @@ msgstr "" msgid "Step {0} of {1}" msgstr "" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "Tallennustila tyhjennetty, sinun on käynnistettävä sovellus uudelleen." #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Storybook" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Lähetä" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "Tilaa" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "" @@ -4760,11 +5202,11 @@ msgstr "" msgid "Subscribe to the {0} feed" msgstr "Tilaa {0}-syöte" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "Tilaa tämä lista" @@ -4776,7 +5218,7 @@ msgstr "Mahdollisia seurattavia" msgid "Suggested for you" msgstr "Suositeltua sinulle" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "Viittaava" @@ -4791,23 +5233,23 @@ msgstr "Tuki" msgid "Switch Account" msgstr "Vaihda käyttäjätiliä" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "Vaihda käyttäjään {0}" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "Vaihtaa sisäänkirjautuneen käyttäjän tilin" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "Järjestelmä" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "Järjestelmäloki" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "aihetunniste" @@ -4823,41 +5265,47 @@ msgstr "Pitkä" msgid "Tap to view fully" msgstr "Napauta nähdäksesi kokonaan" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "Teknologia" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "Ehdot" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "Käyttöehdot" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "teksti" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "Tekstikenttä" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "Kiitos. Raporttisi on lähetetty." -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "Se sisältää seuraavaa:" @@ -4865,7 +5313,7 @@ msgstr "Se sisältää seuraavaa:" msgid "That handle is already taken." msgstr "Tuo käyttätunnus on jo käytössä." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "Käyttäjä voi olla vuorovaikutuksessa kanssasi, kun poistat eston." @@ -4882,11 +5330,15 @@ msgstr "Yhteisöohjeet on siirretty kohtaan <0/>" msgid "The Copyright Policy has been moved to <0/>" msgstr "Tekijänoikeuskäytäntö on siirretty kohtaan <0/>" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "" @@ -4894,8 +5346,8 @@ msgstr "" msgid "The following steps will help customize your Bluesky experience." msgstr "Seuraavat vaiheet auttavat mukauttamaan Bluesky-kokemustasi." -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "Viesti saattaa olla poistettu." @@ -4915,37 +5367,40 @@ msgstr "Käyttöehdot on siirretty kohtaan" msgid "There are many feeds to try:" msgstr "On monia syötteitä kokeiltavaksi:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "Emme saaneet yhteyttä palvelimeen, tarkista internetyhteytesi ja yritä uudelleen." -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "Syötteen poistossa on ongelmia. Tarkista internetyhteytesi ja yritä uudelleen." -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "Syötteiden päivittämisessä on ongelmia, tarkista internetyhteytesi ja yritä uudelleen." -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "Yhteyden muodostamisessa Tenoriin ilmeni ongelma." #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "Yhteydenotto palvelimeen epäonnistui" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "Yhteydenotto palvelimeen epäonnistui" @@ -4953,7 +5408,7 @@ msgstr "Yhteydenotto palvelimeen epäonnistui" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "Ongelma ilmoitusten hakemisessa. Napauta tästä yrittääksesi uudelleen." -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "Ongelma viestien hakemisessa. Napauta tästä yrittääksesi uudelleen." @@ -4966,7 +5421,8 @@ msgstr "Ongelma listan hakemisessa. Napauta tästä yrittääksesi uudelleen." msgid "There was an issue fetching your lists. Tap here to try again." msgstr "Ongelma listojesi hakemisessa. Napauta tästä yrittääksesi uudelleen." -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "Raportin lähettämisessä ilmeni ongelma. Tarkista internet-yhteytesi." @@ -4974,32 +5430,32 @@ msgstr "Raportin lähettämisessä ilmeni ongelma. Tarkista internet-yhteytesi." msgid "There was an issue syncing your preferences with the server" msgstr "Ongelma asetuksiesi synkronoinnissa palvelimelle" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "Sovellussalasanojen hakemisessa tapahtui virhe" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "Ilmeni ongelma! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "Ilmeni joku ongelma. Tarkista internet-yhteys ja yritä uudelleen." -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "Sovelluksessa ilmeni odottamaton ongelma. Kerro meille, jos tämä tapahtui sinulle!" @@ -5020,14 +5476,26 @@ msgstr "Tämä {screenDescription} on liputettu:" msgid "This account has requested that users sign in to view their profile." msgstr "Tämä käyttäjätili on pyytänyt, että käyttät kirjautuvat sisään nähdäkseen profiilinsa." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:26 +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "" + #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." msgstr "Moderaattorit ovat piilottaneet tämän sisällön." @@ -5045,21 +5513,21 @@ msgstr "Tämä sisältö on hostattu palvelussa {0}. Haluatko sallia ulkoisen me msgid "This content is not available because one of the users involved has blocked the other." msgstr "Tämä sisältö ei ole saatavilla, koska toinen käyttäjistä on estänyt toisen." -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "Tätä sisältöä ei voi katsoa ilman Bluesky-tiliä." -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "Tämä syöte saa tällä hetkellä paljon liikennettä ja on tilapäisesti pois käytöstä. Yritä uudelleen myöhemmin." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "Tämä syöte on tyhjä!" @@ -5067,11 +5535,15 @@ msgstr "Tämä syöte on tyhjä!" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "Tämä syöte on tyhjä! Sinun on ehkä seurattava useampia käyttäjiä tai säädettävä kieliasetuksiasi." +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "" + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "Tätä tietoa ei jaeta muiden käyttäjien kanssa." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "Tämä on tärkeää, jos sinun tarvitsee vaihtaa sähköpostiosoitteesi tai palauttaa salasanasi." @@ -5087,7 +5559,15 @@ msgstr "" msgid "This label was applied by the author." msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "" @@ -5095,7 +5575,7 @@ msgstr "" msgid "This link is taking you to the following website:" msgstr "Tämä linkki vie sinut tälle verkkosivustolle:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "Tämä lista on tyhjä!" @@ -5103,11 +5583,11 @@ msgstr "Tämä lista on tyhjä!" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "Tämä nimi on jo käytössä" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "Tämä viesti on poistettu." @@ -5128,7 +5608,7 @@ msgstr "Tämä profiili on näkyvissä vain kirjautuneille käyttäjille. Sitä msgid "This service has not provided terms of service or a privacy policy." msgstr "Tämä palvelu ei ole toimittanut käyttöehtoja tai tietosuojakäytäntöä." -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "" @@ -5136,6 +5616,10 @@ msgstr "" msgid "This user doesn't have any followers." msgstr "Tällä käyttäjällä ei ole yhtään seuraajaa" +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5161,16 +5645,16 @@ msgstr "Tämä käyttäjä ei seuraa ketään." #~ msgid "This warning is only available for posts with media attached." #~ msgstr "Tämä varoitus on saatavilla vain viesteille, joihin on liitetty mediatiedosto." -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "Tämä poistaa {0}:n hiljennetyistä sanoistasi. Voit lisätä sen takaisin myöhemmin." -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "Keskusteluketjun asetukset" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "Keskusteluketjun asetukset" @@ -5182,15 +5666,19 @@ msgstr "Ketjumainen näkymä" msgid "Threads Preferences" msgstr "Keskusteluketjujen asetukset" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "Jos haluat poistaa sähköpostiin perustuvan kaksivaiheisen tunnistautumisen käytöstä, vahvista pääsysi sähköpostiosoitteeseen." +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "Kenelle haluaisit lähettää tämän raportin?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "Vaihda hiljennysvaihtoehtojen välillä." @@ -5223,60 +5711,69 @@ msgctxt "action" msgid "Try again" msgstr "Yritä uudelleen" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "Kaksivaiheinen tunnistautuminen" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "Tyyppi:" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "Poista listan esto" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "Poista listan hiljennys" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "Yhteys palveluusi ei onnistu. Tarkista internet-yhteytesi." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "Poista esto" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "Poista esto" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "Poista käyttäjätilin esto" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "Poista esto?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "Kumoa uudelleenjulkaisu" @@ -5290,7 +5787,7 @@ msgstr "Lopeta seuraaminen" msgid "Unfollow" msgstr "Älä seuraa" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "Lopeta seuraaminen {0}" @@ -5303,12 +5800,12 @@ msgstr "Lopeta käyttäjätilin seuraaminen" #~ msgid "Unlike" #~ msgstr "En tykkää" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "Poista tykkäys tästä syötteestä" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "Poista hiljennys" @@ -5325,37 +5822,50 @@ msgstr "Poista käyttäjätilin hiljennys" msgid "Unmute all {displayTag} posts" msgstr "Poista hiljennys kaikista {displayTag}-julkaisuista" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" msgstr "" +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "Poista keskusteluketjun hiljennys" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "Poista kiinnitys" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "Poista kiinnitys etusivulta" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "Poista moderointilistan kiinnitys" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "Peruuta tilaus" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "Ei-toivottu seksuaalinen sisältö" @@ -5363,7 +5873,7 @@ msgstr "Ei-toivottu seksuaalinen sisältö" msgid "Update {displayName} in Lists" msgstr "Päivitä {displayName} listoissa" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "Päivitä {handle}\"" @@ -5371,42 +5881,46 @@ msgstr "Päivitä {handle}\"" msgid "Updating..." msgstr "Päivitetään..." -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "Lataa tekstitiedosto kohteeseen:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "Lataa kamerasta" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "Lataa tiedostoista" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "Lataa kirjastosta" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "Käytä palvelimellasi olevaa tiedostoa" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "Käytä sovellussalasanoja kirjautuaksesi muihin Bluesky-sovelluksiin antamatta niille täyttä hallintaa tilillesi tai salasanallesi." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "Käytä bsky.socialia palveluntarjoajana." -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "Käytä oletustoimittajaa" @@ -5420,11 +5934,15 @@ msgstr "Käytä sovelluksen sisäistä selainta" msgid "Use my default browser" msgstr "Käytä oletusselaintani" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "Käytä tätä kirjautuaksesi toiseen sovellukseen käyttäjätunnuksellasi." @@ -5441,6 +5959,10 @@ msgstr "Käyttäjä estetty" msgid "User Blocked by \"{0}\"" msgstr "\"{0}\" on estänyt käyttäjän." +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "Käyttäjä on estetty listalla" @@ -5458,13 +5980,13 @@ msgstr "Käyttäjä on estänyt sinut" msgid "User list by {0}" msgstr "Käyttäjälistan on tehnyt {0}" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "Käyttäjälistan on tehnyt <0/>" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "Käyttäjälistasi" @@ -5480,11 +6002,11 @@ msgstr "Käyttäjälista päivitetty" msgid "User Lists" msgstr "Käyttäjälistat" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "Käyttäjätunnus tai sähköpostiosoite" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "Käyttäjät" @@ -5492,6 +6014,13 @@ msgstr "Käyttäjät" msgid "users followed by <0/>" msgstr "käyttäjät, joita <0/> seuraa" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "Käyttäjät listassa \"{0}\"" @@ -5500,7 +6029,7 @@ msgstr "Käyttäjät listassa \"{0}\"" msgid "Users that have liked this content or profile" msgstr "Käyttäjät, jotka ovat pitäneet tästä sisällöstä tai profiilista" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "Arvo:" @@ -5508,32 +6037,32 @@ msgstr "Arvo:" #~ msgid "Verify {0}" #~ msgstr "Vahvista {0}" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" msgstr "" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "Varmista sähköposti" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "Vahvista sähköpostini" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "Vahvista sähköpostini" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "Vahvista uusi sähköposti" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "Vahvista sähköpostisi" @@ -5541,15 +6070,15 @@ msgstr "Vahvista sähköpostisi" #~ msgid "Version {0}" #~ msgstr "Versio {0}" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" msgstr "" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "Videopelit" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "Katso {0}:n avatar" @@ -5557,25 +6086,25 @@ msgstr "Katso {0}:n avatar" msgid "View debug entry" msgstr "Katso vianmääritystietue" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "Näytä tiedot" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "Näytä tiedot tekijänoikeusrikkomuksen ilmoittamisesta" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "Katso koko keskusteluketju" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "Katso profiilia" @@ -5587,7 +6116,7 @@ msgstr "Katso avatar" msgid "View the labeling service provided by @{0}" msgstr "" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "Katso, kuka tykkää tästä syötteestä" @@ -5615,11 +6144,15 @@ msgstr "" msgid "We couldn't find any results for that hashtag." msgstr "Emme löytäneet tuloksia tuolla aihetunnisteella." +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "Arvioimme, että tilisi valmistumiseen on {estimatedTime} aikaa." -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "Toivomme sinulle ihania hetkiä. Muista, että Bluesky on:" @@ -5627,7 +6160,7 @@ msgstr "Toivomme sinulle ihania hetkiä. Muista, että Bluesky on:" msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "Emme enää löytäneet viestejä seurattavilta. Tässä on uusin tekijältä <0/>." -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "Suosittelemme välttämään yleisiä sanoja, jotka esiintyvät monissa viesteissä. Se voi johtaa siihen, ettei mitään viestejä näytetä." @@ -5643,7 +6176,7 @@ msgstr "" msgid "We were unable to load your configured labelers at this time." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "Yhteyden muodostaminen ei onnistunut. Yritä uudelleen jatkaaksesi tilisi määritystä. Jos ongelma jatkuu, voit ohittaa tämän vaiheen." @@ -5651,10 +6184,14 @@ msgstr "Yhteyden muodostaminen ei onnistunut. Yritä uudelleen jatkaaksesi tilis msgid "We will let you know when your account is ready." msgstr "Ilmoitamme sinulle, kun käyttäjätilisi on valmis." -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "Käytämme tätä mukauttaaksemme kokemustasi." +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "Olemme innoissamme, että liityt joukkoomme!" @@ -5663,7 +6200,7 @@ msgstr "Olemme innoissamme, että liityt joukkoomme!" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "Pahoittelemme, emme saaneet avattua tätä listaa. Jos ongelma jatkuu, ota yhteyttä listan tekijään: @{handleOrDid}." -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "Pahoittelemme, emme pystyneet lataamaan hiljennettyjä sanojasi tällä hetkellä. Yritä uudelleen." @@ -5671,12 +6208,12 @@ msgstr "Pahoittelemme, emme pystyneet lataamaan hiljennettyjä sanojasi tällä msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "Pahoittelemme, hakuasi ei voitu suorittaa loppuun. Yritä uudelleen muutaman minuutin kuluttua." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "Pahoittelut! Emme löydä etsimääsi sivua." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "" @@ -5684,13 +6221,13 @@ msgstr "" #~ msgid "Welcome to <0>Bluesky" #~ msgstr "Tervetuloa <0>Bluesky:iin" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "Mitkä ovat kiinnostuksenkohteesi?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "Mitä kuuluu?" @@ -5702,28 +6239,41 @@ msgstr "Mitä kieliä tässä viestissä käytetään?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "Mitä kieliä haluaisit nähdä algoritmisissä syötteissä?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "Kuka voi vastata" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "Miksi tämä sisältö tulisi arvioida?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "Miksi tämä syöte tulisi arvioida?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "Miksi tämä lista tulisi arvioida?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "Miksi tämä viesti tulisi arvioida?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "Miksi tämä käyttäjä tulisi arvioida?" @@ -5731,35 +6281,35 @@ msgstr "Miksi tämä käyttäjä tulisi arvioida?" msgid "Wide" msgstr "Leveä" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" msgstr "" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "Kirjoita viesti" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "Kirjoita vastauksesi" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "Kirjoittajat" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "Kyllä" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" msgstr "" @@ -5780,6 +6330,14 @@ msgstr "Voit myös selata uusia mukautettuja syötteitä seurattavaksi." msgid "You can change these settings later." msgstr "Voit muuttaa näitä asetuksia myöhemmin." +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -5793,22 +6351,26 @@ msgstr "Sinulla ei ole kyhtään seuraajaa." msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "Sinulla ei ole vielä kutsukoodia! Lähetämme sinulle sellaisen, kun olet ollut Bluesky-palvelussa hieman pidempään." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "Sinulla ei ole kiinnitettyjä syötteitä." #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "Sinulla ei ole tallennettuja syötteitä!" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "Sinulla ei ole tallennettuja syötteitä!" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "Sinulla ei ole tallennettuja syötteitä." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "Olet estänyt tekijän tai sinut on estetty tekijän toimesta." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -5839,6 +6401,10 @@ msgstr "Olet hiljentänyt tämän käyttäjätilin." msgid "You have muted this user" msgstr "Olet hiljentänyt tämän käyttäjän" +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "Sinulla ei ole syötteitä." @@ -5848,15 +6414,15 @@ msgstr "Sinulla ei ole syötteitä." msgid "You have no lists." msgstr "Sinulla ei ole listoja." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." msgstr "Et ole vielä estänyt yhtään käyttäjää. Estääksesi käyttäjän, siirry heidän profiiliinsa ja valitse \"Estä käyttäjä\"-vaihtoehto valikosta." -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "Et ole vielä luonut yhtään sovelluksen salasanaa. Voit luoda sellaisen painamalla alla olevaa painiketta." @@ -5864,11 +6430,19 @@ msgstr "Et ole vielä luonut yhtään sovelluksen salasanaa. Voit luoda sellaise msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." msgstr "Et ole hiljentänyt vielä yhtään käyttäjää. Hiljentääksesi käyttäjän, mene hänen profiiliin ja valitse \"Hiljennä käyttäjä\" valikosta." -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "Et ole vielä hiljentänyt yhtään sanaa tai aihetunnistetta" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "Voit valittaa näistä merkinnöistä, jos ne ovat mielestäsi virheellisiä." @@ -5880,7 +6454,7 @@ msgstr "Sinun on oltava vähintään 13-vuotias rekisteröityäksesi." msgid "You must be 18 years or older to enable adult content" msgstr "Sinun on oltava vähintään 18-vuotias katsoaksesi aikuissisältöä" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "" @@ -5896,7 +6470,7 @@ msgstr "Saat nyt ilmoituksia tästä keskustelusta" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "Saat sähköpostin \"nollauskoodin\". Syötä koodi tähän ja syötä sitten uusi salasanasi." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" msgstr "" @@ -5910,7 +6484,7 @@ msgstr "Sinulla on ohjat" msgid "You're in line" msgstr "Olet jonossa" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "Olet valmis aloittamaan!" @@ -5927,11 +6501,11 @@ msgstr "Olet saavuttanut syötteesi lopun! Etsi lisää käyttäjiä seurattavak msgid "Your account" msgstr "Käyttäjätilisi" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "Käyttäjätilisi on poistettu" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "Käyttäjätilisi arkisto, joka sisältää kaikki julkiset tietueet, voidaan ladata \"CAR\"-tiedostona. Tämä tiedosto ei sisällä upotettuja mediaelementtejä, kuten kuvia, tai yksityisiä tietojasi, jotka on haettava erikseen." @@ -5939,6 +6513,10 @@ msgstr "Käyttäjätilisi arkisto, joka sisältää kaikki julkiset tietueet, vo msgid "Your birth date" msgstr "Syntymäaikasi" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "Valintasi tallennetaan, mutta sitä voit muuttaa myöhemmin asetuksissa." @@ -5948,16 +6526,16 @@ msgid "Your default feed is \"Following\"" msgstr "Oletussyötteesi on \"Following\"" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "Sähköpostiosoitteesi näyttää olevan virheellinen." -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "Sähköpostiosoitteesi on päivitetty, mutta sitä ei ole vielä vahvistettu. Seuraavana vaiheena vahvista uusi sähköpostiosoitteesi." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "Sähköpostiosoitettasi ei ole vielä vahvistettu. Tämä on tärkeä turvatoimi, jonka suosittelemme suorittamaan." @@ -5969,11 +6547,11 @@ msgstr "Seuraamiesi syöte on tyhjä! Seuraa lisää käyttäjiä nähdäksesi, msgid "Your full handle will be" msgstr "Käyttäjätunnuksesi tulee olemaan" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "Käyttäjätunnuksesi tulee olemaan <0>@{0}" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "Hiljentämäsi sanat" @@ -5981,22 +6559,26 @@ msgstr "Hiljentämäsi sanat" msgid "Your password has been changed successfully!" msgstr "Salasanasi on vaihdettu onnistuneesti!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "Viestisi on julkaistu" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "Julkaisusi, tykkäyksesi ja estosi ovat julkisia. Hiljennykset ovat yksityisiä." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "Profiilisi" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "Vastauksesi on julkaistu" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "Käyttäjätunnuksesi" diff --git a/src/locale/locales/fr/messages.po b/src/locale/locales/fr/messages.po index 7cc0f489b0..6105ddbd16 100644 --- a/src/locale/locales/fr/messages.po +++ b/src/locale/locales/fr/messages.po @@ -9,147 +9,126 @@ msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" "PO-Revision-Date: 2024-04-22 15:00+0100\n" -"Last-Translator: surfdude29\n" +"Last-Translator: Stanislas Signoud (@signez.fr)\n" "Language-Team: Stanislas Signoud (@signez.fr), surfdude29\n" "Plural-Forms: \n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(pas d’e-mail)" #: src/view/com/notifications/FeedItem.tsx:239 msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" -msgstr "" +msgstr "{0, plural, one {{formattedCount} autre} other {{formattedCount} autres}}" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" +msgstr "{0, plural, one {# étiquette a été placée sur ce compte} other {# étiquettes ont été placées sur ce compte}}" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" +msgstr "{0, plural, one {# étiquette a été placée sur ce contenu} other {# étiquettes ont été placées sur ce contenu}}" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" -msgstr "" +msgstr "{0, plural, one {# repost} other {# reposts}}" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" -msgstr "" +msgstr "{0, plural, one {abonné·e} other {abonné·e·s}}" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" -msgstr "" +msgstr "{0, plural, one {abonnement} other {abonnements}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:245 msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" -msgstr "" +msgstr "{0, plural, one {Liker (# like)} other {Liker (# likes)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" -msgstr "" +msgstr "{0, plural, one {like} other {likes}}" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{0, plural, one {Liké par # compte} other {Liké par # comptes}}" #: src/screens/Profile/Header/Metrics.tsx:59 msgid "{0, plural, one {post} other {posts}}" -msgstr "" +msgstr "{0, plural, one {post} other {posts}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:204 msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" -msgstr "" +msgstr "{0, plural, one {Répondre (# réponse)} other {Répondre (# réponses)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" -msgstr "" +msgstr "{0, plural, one {repost} other {reposts}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:241 msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" -msgstr "" +msgstr "{0, plural, one {Déliker (# like)} other {Déliker (# likes)}}" #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{count, plural, one {Liké par # compte} other {Liké par # comptes}}" #: src/screens/Deactivated.tsx:207 msgid "{estimatedTimeHrs, plural, one {hour} other {hours}}" -msgstr "" +msgstr "{estimatedTimeHrs, plural, one {heure} other {heures}}" #: src/screens/Deactivated.tsx:213 msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" -msgstr "" +msgstr "{estimatedTimeMins, plural, one {minute} other {minutes}}" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} abonnements" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 -msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "{handle} ne peut être contacté par message" -#: src/view/shell/Drawer.tsx:464 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 +msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" +msgstr "{likeCount, plural, one {Liké par # compte} other {Liké par # comptes}}" + +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} non lus" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" -msgstr "" +msgstr "{value, plural, =0 {Voir toutes les réponses} one {Voir les réponses avec au moins # like} other {Voir les réponses avec au moins # likes}}" #: src/view/com/threadgate/WhoCanReply.tsx:159 msgid "<0/> members" msgstr "<0/> membres" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" -msgstr "" +msgstr "<0>{0} {1, plural, one {abonné·e} other {abonné·e·s}}" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" -msgstr "" +msgstr "<0>{0} {1, plural, one {abonnement} other {abonnements}}" -#: src/view/shell/Drawer.tsx:96 -#~ msgid "<0>{0} following" -#~ msgstr "<0>{0} abonnements" - -#: src/components/ProfileHoverCard/index.web.tsx:437 -#~ msgid "<0>{followers} <1>{pluralizedFollowers}" -#~ msgstr "<0>{followers} <1>{pluralizedFollowers}" - -#: src/components/ProfileHoverCard/index.web.tsx:449 -#: src/screens/Profile/Header/Metrics.tsx:45 -#~ msgid "<0>{following} <1>following" -#~ msgstr "<0>{following} <1>abonnements" - -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:31 -#~ msgid "<0>Choose your<1>Recommended<2>Feeds" -#~ msgstr "<0>Choisissez vos<1>fils d’actu<2>recommandés" - -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:38 -#~ msgid "<0>Follow some<1>Recommended<2>Users" -#~ msgstr "<0>Suivre certains<1>comptes<2>recommandés" - -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." -msgstr "" - -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:21 -#~ msgid "<0>Welcome to<1>Bluesky" -#~ msgstr "<0>Bienvenue sur<1>Bluesky" +msgstr "<0>Pas applicable. Cet avertissement est seulement disponible pour les posts qui ont des médias qui leur sont attachés." #: src/screens/Profile/Header/Handle.tsx:43 msgid "⚠Invalid Handle" msgstr "⚠Pseudo invalide" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" -msgstr "" +msgstr "Confirmation 2FA" #: src/view/com/util/ViewHeader.tsx:91 #: src/view/screens/Search/Search.tsx:650 @@ -161,38 +140,34 @@ msgid "Access profile and other navigation links" msgstr "Accède au profil et aux autres liens de navigation" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "Accessibilité" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" -msgstr "" +msgstr "Paramètres d’accessibilité" #: src/Navigation.tsx:290 #: src/view/screens/AccessibilitySettings.tsx:63 msgid "Accessibility Settings" -msgstr "" +msgstr "Paramètres d’accessibilité" -#: src/components/moderation/LabelsOnMe.tsx:42 -#~ msgid "account" -#~ msgstr "compte" - -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "Compte" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "Compte bloqué" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "Compte suivi" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "Compte masqué" @@ -213,75 +188,72 @@ msgstr "Options de compte" msgid "Account removed from quick access" msgstr "Compte supprimé de l’accès rapide" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "Compte débloqué" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "Compte désabonné" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "Compte démasqué" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "Ajouter" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "Ajouter un avertissement sur le contenu" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "Ajouter un compte à cette liste" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "Ajouter un compte" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "Ajouter un texte alt" -#: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" - -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "Ajouter un mot de passe d’application" -#: src/view/com/composer/Composer.tsx:467 -#~ msgid "Add link card" -#~ msgstr "Ajouter une carte de lien" - -#: src/view/com/composer/Composer.tsx:472 -#~ msgid "Add link card:" -#~ msgstr "Ajouter une carte de lien :" - -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "Ajouter un mot masqué pour les paramètres configurés" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "Ajouter des mots et des mots-clés masqués" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "Ajouter les fils d’actu recommandés" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "Ajouter le fil d’actu par défaut avec seulement les comptes que vous suivez" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "Ajoutez l’enregistrement DNS suivant à votre domaine :" @@ -290,30 +262,26 @@ msgstr "Ajoutez l’enregistrement DNS suivant à votre domaine :" msgid "Add to Lists" msgstr "Ajouter aux listes" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "Ajouter à mes fils d’actu" -#: src/view/com/auth/onboarding/RecommendedFeedsItem.tsx:139 -#~ msgid "Added" -#~ msgstr "Ajouté" - #: src/view/com/modals/ListAddRemoveUsers.tsx:191 #: src/view/com/modals/UserAddRemoveLists.tsx:144 msgid "Added to list" msgstr "Ajouté à la liste" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "Ajouté à mes fils d’actu" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "Définissez le nombre de likes qu’une réponse doit avoir pour être affichée dans votre fil d’actu." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "Contenu pour adultes" @@ -322,14 +290,29 @@ msgid "Adult content is disabled." msgstr "Le contenu pour adultes est désactivé." #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "Avancé" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "Tous les fils d’actu que vous avez enregistrés, au même endroit." +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "Autoriser les messages de" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -339,13 +322,13 @@ msgstr "Avez-vous déjà un code ?" msgid "Already signed in as @{0}" msgstr "Déjà connecté·e en tant que @{0}" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -353,30 +336,26 @@ msgstr "Texte Alt" #: src/view/com/util/post-embeds/GifEmbed.tsx:179 msgid "Alt Text" -msgstr "" +msgstr "Texte alt" #: src/view/com/composer/photos/Gallery.tsx:224 msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "Le texte Alt décrit les images pour les personnes aveugles et malvoyantes, et aide à donner un contexte à tout le monde." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "Un e-mail a été envoyé à {0}. Il comprend un code de confirmation que vous pouvez saisir ici." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "Un e-mail a été envoyé à votre ancienne adresse, {0}. Il comprend un code de confirmation que vous pouvez saisir ici." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" -msgstr "" +msgstr "Une erreur s’est produite" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" - -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "Un problème qui ne fait pas partie de ces options" @@ -389,24 +368,24 @@ msgstr "Un problème qui ne fait pas partie de ces options" msgid "An issue occurred, please try again." msgstr "Un problème est survenu, veuillez réessayer." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" -msgstr "" +msgstr "une erreur inconnue s’est produite" #: src/view/com/notifications/FeedItem.tsx:236 #: src/view/com/threadgate/WhoCanReply.tsx:180 msgid "and" msgstr "et" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "Animaux" #: src/view/com/util/post-embeds/GifEmbed.tsx:148 msgid "Animated GIF" -msgstr "" +msgstr "GIF animé" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "Comportement antisocial" @@ -414,70 +393,79 @@ msgstr "Comportement antisocial" msgid "App Language" msgstr "Langue de l’application" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "Mot de passe d’application supprimé" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "Les noms de mots de passe d’application ne peuvent contenir que des lettres, des chiffres, des espaces, des tirets et des tirets bas." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "Les noms de mots de passe d’application doivent comporter au moins 4 caractères." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "Paramètres de mot de passe d’application" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "Mots de passe d’application" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "Faire appel" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "Faire appel de l’étiquette « {0} »" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" +msgstr "Appel soumis" + +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 -#~ msgid "Appeal submitted." -#~ msgstr "Appel soumis." - -#: src/view/screens/Settings/index.tsx:430 +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "Affichage" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "Utiliser les fils d’actu recommandés par défaut" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "Êtes-vous sûr de vouloir supprimer le mot de passe de l’application « {name} » ?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." -msgstr "" +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." +msgstr "Êtes-vous sûr de vouloir supprimer ce message ? Ce message sera supprimé pour vous, mais pas pour l’autre personne." -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." -msgstr "" +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." +msgstr "Êtes-vous sûr de vouloir partir de cette conversation ? Vos messages seront supprimés pour vous, mais pas pour l’autre personne." -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "Êtes-vous sûr de vouloir supprimer {0} de vos fils d’actu ?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "Êtes-vous sûr de vouloir rejeter ce brouillon ?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "Vous confirmez ?" @@ -485,11 +473,11 @@ msgstr "Vous confirmez ?" msgid "Are you writing in <0>{0}?" msgstr "Écrivez-vous en <0>{0} ?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "Art" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "Nudité artistique ou non érotique." @@ -497,18 +485,20 @@ msgstr "Nudité artistique ou non érotique." msgid "At least 3 characters" msgstr "Au moins 3 caractères" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -518,7 +508,7 @@ msgstr "Arrière" msgid "Based on your interest in {interestsText}" msgstr "En fonction de votre intérêt pour {interestsText}" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "Principes de base" @@ -526,19 +516,19 @@ msgstr "Principes de base" msgid "Birthday" msgstr "Date de naissance" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "Date de naissance :" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "Bloquer" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" -msgstr "" +msgstr "Bloquer le compte" #: src/view/com/profile/ProfileMenu.tsx:300 #: src/view/com/profile/ProfileMenu.tsx:307 @@ -549,15 +539,15 @@ msgstr "Bloquer ce compte" msgid "Block Account?" msgstr "Bloquer ce compte ?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "Bloquer ces comptes" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "Liste de blocage" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "Bloquer ces comptes ?" @@ -583,15 +573,15 @@ msgstr "Les comptes bloqués ne peuvent pas répondre à vos discussions, vous m msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "Les comptes bloqués ne peuvent pas répondre à vos discussions, vous mentionner ou interagir avec vous. Vous ne verrez pas leur contenu et ils ne pourront pas voir le vôtre." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "Post bloqué." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "Le blocage n’empêche pas cet étiqueteur de placer des étiquettes sur votre compte." -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "Le blocage est public. Les comptes bloqués ne peuvent pas répondre à vos discussions, vous mentionner ou interagir avec vous." @@ -612,21 +602,6 @@ msgstr "Bluesky" msgid "Bluesky is an open network where you can choose your hosting provider. Custom hosting is now available in beta for developers." msgstr "Bluesky est un réseau ouvert où vous pouvez choisir votre hébergeur. L’auto-hébergement est désormais disponible en version bêta pour les développeurs." -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:80 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:82 -#~ msgid "Bluesky is flexible." -#~ msgstr "Bluesky est adaptable." - -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:69 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:71 -#~ msgid "Bluesky is open." -#~ msgstr "Bluesky est ouvert." - -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:56 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:58 -#~ msgid "Bluesky is public." -#~ msgstr "Bluesky est public." - #: src/screens/Moderation/index.tsx:533 msgid "Bluesky will not show your profile and posts to logged-out users. Other apps may not honor this request. This does not make your account private." msgstr "Bluesky n’affichera pas votre profil et vos posts à des personnes non connectées. Il est possible que d’autres applications n’honorent pas cette demande. Cela ne privatise pas votre compte." @@ -639,10 +614,15 @@ msgstr "Flouter les images" msgid "Blur images and filter from feeds" msgstr "Flouter les images et les filtrer des fils d’actu" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "Livres" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "Parcourir d’autres fils d’actu" + #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "Affaires" @@ -651,17 +631,13 @@ msgstr "Affaires" msgid "by —" msgstr "par —" -#: src/view/com/auth/onboarding/RecommendedFeedsItem.tsx:100 -#~ msgid "by {0}" -#~ msgstr "par {0}" - #: src/components/LabelingServiceCard/index.tsx:56 msgid "By {0}" msgstr "Par {0}" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:112 msgid "by @{0}" -msgstr "" +msgstr "par @{0}" #: src/view/com/profile/ProfileSubpageHeader.tsx:161 msgid "by <0/>" @@ -679,7 +655,7 @@ msgstr "par vous" msgid "Camera" msgstr "Caméra" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "Ne peut contenir que des lettres, des chiffres, des espaces, des tirets et des tirets bas. La longueur doit être d’au moins 4 caractères, mais pas plus de 32." @@ -687,11 +663,11 @@ msgstr "Ne peut contenir que des lettres, des chiffres, des espaces, des tirets #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -703,26 +679,26 @@ msgstr "Ne peut contenir que des lettres, des chiffres, des espaces, des tirets #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "Annuler" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "Annuler" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "Annuler la suppression de compte" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "Annuler le changement de pseudo" @@ -747,34 +723,34 @@ msgstr "Annuler la recherche" msgid "Cancels opening the linked website" msgstr "Annule l’ouverture du site web lié" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "Modifier" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "Modifier" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "Modifier le pseudo" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "Modifier le pseudo" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "Modifier mon e-mail" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "Modifier le mot de passe" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "Modifier le mot de passe" @@ -782,49 +758,47 @@ msgstr "Modifier le mot de passe" msgid "Change post language to {0}" msgstr "Modifier la langue de post en {0}" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "Modifier votre e-mail" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" -msgstr "" +msgstr "Discussions" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" -msgstr "" +msgstr "Discussion masquée" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" +msgstr "Paramètres de discussion" + +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" -msgstr "" - -#: src/screens/Messages/Conversation/index.tsx:26 -#~ msgid "Chat with {chatId}" -#~ msgstr "" +msgstr "Discussion réaffichée" #: src/screens/Deactivated.tsx:78 #: src/screens/Deactivated.tsx:82 msgid "Check my status" msgstr "Vérifier mon statut" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:122 -#~ msgid "Check out some recommended feeds. Tap + to add them to your list of pinned feeds." -#~ msgstr "Consultez quelques fils d’actu recommandés. Appuyez sur + pour les ajouter à votre liste de fils d’actu." - -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:186 -#~ msgid "Check out some recommended users. Follow them to see similar users." -#~ msgstr "Consultez quelques comptes recommandés. Suivez-les pour voir des personnes similaires." - -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." -msgstr "" +msgstr "Vérifiez votre boîte e-mail pour un code de connexion et saisissez-le ici." -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "Consultez votre boîte de réception, vous avez du recevoir un e-mail contenant un code de confirmation à saisir ci-dessous :" @@ -836,14 +810,13 @@ msgstr "Choisir « Tout le monde » ou « Personne »" msgid "Choose Service" msgstr "Choisir un service" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "Choisissez les algorithmes qui alimentent vos fils d’actu personnalisés." -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:83 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:85 -#~ msgid "Choose the algorithms that power your experience with custom feeds." -#~ msgstr "Choisissez les algorithmes qui alimentent votre expérience avec des fils d’actu personnalisés." +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "Choisir cette couleur comme avatar" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" @@ -853,19 +826,19 @@ msgstr "Choisissez vos principaux fils d’actu" msgid "Choose your password" msgstr "Choisissez votre mot de passe" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "Effacer toutes les données de stockage existantes" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "Effacer toutes les données de stockage existantes (redémarrer ensuite)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "Effacer toutes les données de stockage" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "Effacer toutes les données de stockage (redémarrer ensuite)" @@ -874,11 +847,11 @@ msgstr "Effacer toutes les données de stockage (redémarrer ensuite)" msgid "Clear search query" msgstr "Effacer la recherche" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "Efface toutes les données de stockage existantes" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "Efface toutes les données de stockage" @@ -890,23 +863,28 @@ msgstr "cliquez ici" msgid "Click here to open tag menu for {tag}" msgstr "Cliquez ici pour ouvrir le menu de mot-clé pour {tag}" -#: src/components/RichText.tsx:198 -#~ msgid "Click here to open tag menu for #{tag}" -#~ msgstr "Cliquez ici pour ouvrir le menu de mot-clé pour #{tag}" +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "Cliquer pour réessayer l’envoi échoué du message" -#: src/screens/Onboarding/index.tsx:35 +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "Climat" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "Fermer" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "Fermer le dialogue actif" @@ -918,13 +896,13 @@ msgstr "Fermer l’alerte" msgid "Close bottom drawer" msgstr "Fermer le tiroir du bas" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" -msgstr "" +msgstr "Fermer le dialogue" #: src/components/dialogs/GifSelect.tsx:150 msgid "Close GIF dialog" -msgstr "" +msgstr "Fermer le dialogue des GIFs" #: src/view/com/lightbox/ImageViewing/components/ImageDefaultHeader.tsx:36 msgid "Close image" @@ -934,6 +912,10 @@ msgstr "Fermer l’image" msgid "Close image viewer" msgstr "Fermer la visionneuse d’images" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "Fermer la modale" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "Fermer le pied de page de navigation" @@ -951,7 +933,7 @@ msgstr "Ferme la barre de navigation du bas" msgid "Closes password update alert" msgstr "Ferme la notification de mise à jour du mot de passe" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "Ferme la fenêtre de rédaction et supprime le brouillon" @@ -963,11 +945,11 @@ msgstr "Ferme la visionneuse pour l’image d’en-tête" msgid "Collapses list of users for a given notification" msgstr "Réduit la liste des comptes pour une notification donnée" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "Comédie" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "Bandes dessinées" @@ -976,7 +958,7 @@ msgstr "Bandes dessinées" msgid "Community Guidelines" msgstr "Directives communautaires" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "Terminez le didacticiel et commencez à utiliser votre compte" @@ -984,7 +966,7 @@ msgstr "Terminez le didacticiel et commencez à utiliser votre compte" msgid "Complete the challenge" msgstr "Compléter le défi" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "Permet d’écrire des posts de {MAX_GRAPHEME_LENGTH} caractères maximum" @@ -1006,18 +988,18 @@ msgstr "Configuré dans <0>les paramètres de modération." #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "Confirmer" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "Confirmer le changement" @@ -1025,7 +1007,7 @@ msgstr "Confirmer le changement" msgid "Confirm content language settings" msgstr "Confirmer les paramètres de langue" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "Confirmer la suppression du compte" @@ -1037,17 +1019,17 @@ msgstr "Confirmez votre âge :" msgid "Confirm your birthdate" msgstr "Confirme votre date de naissance" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "Code de confirmation" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "Connexion…" @@ -1055,10 +1037,6 @@ msgstr "Connexion…" msgid "Contact support" msgstr "Contacter le support" -#: src/components/moderation/LabelsOnMe.tsx:42 -#~ msgid "content" -#~ msgstr "contenu" - #: src/lib/moderation/useGlobalLabelStrings.ts:18 msgid "Content Blocked" msgstr "Contenu bloqué" @@ -1094,8 +1072,9 @@ msgstr "Menu contextuel en arrière-plan, cliquez pour fermer le menu." #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "Continuer" @@ -1105,8 +1084,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "Continuer comme {0} (actuellement connecté)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1120,22 +1100,26 @@ msgstr "Passer à l’étape suivante" msgid "Continue to the next step without following any accounts" msgstr "Passer à l’étape suivante sans suivre aucun compte" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "Cuisine" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "Copié" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "Version de build copiée dans le presse-papier" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1145,15 +1129,15 @@ msgstr "Copié dans le presse-papier" msgid "Copied!" msgstr "Copié !" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "Copie le mot de passe d’application" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "Copier" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "Copier {0}" @@ -1162,7 +1146,7 @@ msgstr "Copier {0}" msgid "Copy code" msgstr "Copier ce code" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "Copier le lien vers la liste" @@ -1171,10 +1155,10 @@ msgstr "Copier le lien vers la liste" msgid "Copy link to post" msgstr "Copier le lien vers le post" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" -msgstr "" +msgstr "Copier le texte du message" #: src/view/com/util/forms/PostDropdownBtn.tsx:256 #: src/view/com/util/forms/PostDropdownBtn.tsx:258 @@ -1186,36 +1170,28 @@ msgstr "Copier le texte du post" msgid "Copyright Policy" msgstr "Politique sur les droits d’auteur" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" -msgstr "" +msgstr "Impossible de partir de la discussion" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "Impossible de charger le fil d’actu" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "Impossible de charger la liste" -#: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" - -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" -msgstr "" - -#: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +msgstr "Impossible de masquer la discussion" #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "Créer un nouveau compte" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "Créer un compte Bluesky" @@ -1228,7 +1204,11 @@ msgstr "Créer un compte" msgid "Create an account" msgstr "Créer un compte" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "Créer plutôt un avatar" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "Créer un mot de passe d’application" @@ -1237,19 +1217,15 @@ msgstr "Créer un mot de passe d’application" msgid "Create new account" msgstr "Créer un nouveau compte" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "Créer un rapport pour {0}" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "{0} créé" -#: src/view/com/composer/Composer.tsx:469 -#~ msgid "Creates a card with a thumbnail. The card links to {url}" -#~ msgstr "Crée une carte avec une miniature. La carte pointe vers {url}" - -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "Culture" @@ -1258,12 +1234,12 @@ msgstr "Culture" msgid "Custom" msgstr "Personnalisé" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "Domaine personnalisé" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "Les fils d’actu personnalisés élaborés par la communauté vous font vivre de nouvelles expériences et vous aident à trouver le contenu que vous aimez." @@ -1271,8 +1247,8 @@ msgstr "Les fils d’actu personnalisés élaborés par la communauté vous font msgid "Customize media from external sites." msgstr "Personnaliser les médias provenant de sites externes." -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "Sombre" @@ -1280,7 +1256,7 @@ msgstr "Sombre" msgid "Dark mode" msgstr "Mode sombre" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "Thème sombre" @@ -1288,7 +1264,7 @@ msgstr "Thème sombre" msgid "Date of birth" msgstr "Date de naissance" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "Déboguer la modération" @@ -1296,54 +1272,55 @@ msgstr "Déboguer la modération" msgid "Debug panel" msgstr "Panneau de débug" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "Supprimer" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "Supprimer le compte" -#: src/view/com/modals/DeleteAccount.tsx:87 -#~ msgid "Delete Account" -#~ msgstr "Supprimer le compte" - -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" -msgstr "" +msgstr "Suppression du compte <0>« <1>{0}<2> »" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "Supprimer le mot de passe de l’appli" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "Supprimer le mot de passe de l’appli ?" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" +msgstr "Supprimer la déclaration d’ouverture aux discussions" -#: src/view/screens/ProfileList.tsx:417 +#: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "Supprimer pour moi" + +#: src/view/screens/ProfileList.tsx:470 msgid "Delete List" msgstr "Supprimer la liste" -#: src/components/dms/MessageMenu.tsx:119 +#: src/components/dms/MessageMenu.tsx:122 msgid "Delete message" -msgstr "" +msgstr "Supprimer le message" -#: src/components/dms/MessageMenu.tsx:99 +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" -msgstr "" +msgstr "Supprimer le message pour moi" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "Supprimer mon compte" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "Supprimer mon compte…" @@ -1352,7 +1329,7 @@ msgstr "Supprimer mon compte…" msgid "Delete post" msgstr "Supprimer le post" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "Supprimer cette liste ?" @@ -1364,10 +1341,14 @@ msgstr "Supprimer ce post ?" msgid "Deleted" msgstr "Supprimé" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "Post supprimé." +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "Supprime l’enregistrement de déclaration de discussion" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1375,50 +1356,48 @@ msgstr "Post supprimé." msgid "Description" msgstr "Description" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" -msgstr "" +msgstr "Texte alt descriptif" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "Vous vouliez dire quelque chose ?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "Atténué" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "Les messages privés sont arrivés !" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" -msgstr "" +msgstr "Désactiver la lecture automatique des GIFs" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" -msgstr "" +msgstr "Désactiver le 2FA par e-mail" #: src/view/screens/AccessibilitySettings.tsx:108 msgid "Disable haptic feedback" -msgstr "" - -#: src/view/screens/Settings/index.tsx:697 -#~ msgid "Disable haptics" -#~ msgstr "Désactiver l’haptique" - -#: src/view/screens/Settings/index.tsx:697 -#~ msgid "Disable vibrations" -#~ msgstr "Désactiver les vibrations" +msgstr "Désactiver le retour haptique" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "Désactivé" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "Ignorer" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "Abandonner le brouillon ?" @@ -1432,7 +1411,7 @@ msgstr "Empêcher les applis de montrer mon compte aux personnes non connectées msgid "Discover new custom feeds" msgstr "Découvrir des fils d’actu personnalisés" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "Découvrir de nouveaux fils d’actu" @@ -1444,7 +1423,7 @@ msgstr "Afficher le nom" msgid "Display Name" msgstr "Afficher le nom" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "Panneau DNS" @@ -1456,11 +1435,11 @@ msgstr "Ne comprend pas de nudité." msgid "Doesn't begin or end with a hyphen" msgstr "Ne commence pas ou ne se termine pas par un trait d’union" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "Valeur du domaine" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "Domaine vérifié !" @@ -1468,23 +1447,23 @@ msgstr "Domaine vérifié !" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "Terminé" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1498,8 +1477,8 @@ msgstr "Terminer" msgid "Done{extraText}" msgstr "Terminé{extraText}" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "Télécharger le fichier CAR" @@ -1511,7 +1490,7 @@ msgstr "Déposer pour ajouter des images" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "En raison des politiques d’Apple, le contenu pour adultes ne peut être activé que via le Web une fois l’inscription terminée." -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "ex. alice" @@ -1519,7 +1498,7 @@ msgstr "ex. alice" msgid "e.g. Alice Roberts" msgstr "ex. Alice Dupont" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "ex. alice.fr" @@ -1556,7 +1535,7 @@ msgctxt "action" msgid "Edit" msgstr "Modifier" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "Modifier l’avatar" @@ -1566,7 +1545,7 @@ msgstr "Modifier l’avatar" msgid "Edit image" msgstr "Modifier l’image" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "Modifier les infos de la liste" @@ -1575,8 +1554,8 @@ msgid "Edit Moderation List" msgstr "Modifier la liste de modération" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "Modifier mes fils d’actu" @@ -1584,18 +1563,18 @@ msgstr "Modifier mes fils d’actu" msgid "Edit my profile" msgstr "Modifier mon profil" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "Modifier le profil" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "Modifier le profil" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "Modifier les fils d’actu enregistrés" @@ -1611,37 +1590,37 @@ msgstr "Modifier votre nom d’affichage" msgid "Edit your profile description" msgstr "Modifier votre description de profil" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "Éducation" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "E-mail" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" -msgstr "" +msgstr "2FA par e-mail désactivé" #: src/screens/Login/ForgotPasswordForm.tsx:99 msgid "Email address" msgstr "Adresse e-mail" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "Adresse e-mail mise à jour" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "E-mail mis à jour" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "Adresse e-mail vérifiée" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "E-mail :" @@ -1685,7 +1664,7 @@ msgstr "Activer les médias externes" msgid "Enable media players for" msgstr "Activer les lecteurs médias pour" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "Activez ce paramètre pour ne voir que les réponses des personnes que vous suivez." @@ -1693,6 +1672,8 @@ msgstr "Activez ce paramètre pour ne voir que les réponses des personnes que v msgid "Enable this source only" msgstr "Active cette source uniquement" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "Activé" @@ -1701,7 +1682,11 @@ msgstr "Activé" msgid "End of feed" msgstr "Fin du fil d’actu" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "Entrer un nom pour ce mot de passe d’application" @@ -1709,12 +1694,12 @@ msgstr "Entrer un nom pour ce mot de passe d’application" msgid "Enter a password" msgstr "Saisir un mot de passe" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "Saisir un mot ou un mot-clé" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "Entrer un code de confirmation" @@ -1722,7 +1707,7 @@ msgstr "Entrer un code de confirmation" msgid "Enter the code you received to change your password." msgstr "Saisissez le code que vous avez reçu pour modifier votre mot de passe." -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "Entrez le domaine que vous voulez utiliser" @@ -1739,11 +1724,11 @@ msgstr "Saisissez votre date de naissance" msgid "Enter your email address" msgstr "Entrez votre e-mail" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "Entrez votre nouvel e-mail ci-dessus" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "Entrez votre nouvelle e-mail ci-dessous." @@ -1751,11 +1736,15 @@ msgstr "Entrez votre nouvelle e-mail ci-dessous." msgid "Enter your username and password" msgstr "Entrez votre pseudo et votre mot de passe" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "Échec lors de la sauvegarde du fichier" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "Erreur de réception de la réponse captcha." -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "Erreur :" @@ -1764,15 +1753,30 @@ msgstr "Erreur :" msgid "Everybody" msgstr "Tout le monde" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "Tout le monde" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "Mentions ou réponses excessives" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "Messages excessifs ou non-sollicités" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "Sort du processus de suppression du compte" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "Sort du processus de changement de pseudo" @@ -1806,12 +1810,12 @@ msgstr "Médias explicites ou potentiellement dérangeants." msgid "Explicit sexual images." msgstr "Images sexuelles explicites." -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "Exporter mes données" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "Exporter mes données" @@ -1827,16 +1831,16 @@ msgstr "Les médias externes peuvent permettre à des sites web de collecter des #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "Préférences sur les médias externes" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "Préférences sur les médias externes" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "Échec de la création du mot de passe d’application." @@ -1844,64 +1848,68 @@ msgstr "Échec de la création du mot de passe d’application." msgid "Failed to create the list. Check your internet connection and try again." msgstr "Échec de la création de la liste. Vérifiez votre connexion Internet et réessayez." -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" -msgstr "" +msgstr "Échec de la suppression du message" #: src/view/com/util/forms/PostDropdownBtn.tsx:139 msgid "Failed to delete post, please try again" msgstr "Échec de la suppression du post, veuillez réessayer" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" -msgstr "" +msgstr "Échec du chargement des GIFs" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." -msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" +msgstr "Échec du chargement de l’historique" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 -#~ msgid "Failed to load recommended feeds" -#~ msgstr "Échec du chargement des fils d’actu recommandés" - -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "Échec de l’enregistrement de l’image : {0}" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "Échec de l’envoi" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "Échec de la mise à jour des paramètres" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "Fil d’actu" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "Fil d’actu par {0}" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "Fil d’actu hors ligne" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "Feedback" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "Fils d’actu" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:58 -#~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." -#~ msgstr "Les fils d’actu sont créés par d’autres personnes pour rassembler du contenu. Choisissez des fils d’actu qui vous intéressent." - -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "Les fils d’actu sont des algorithmes personnalisés qui se construisent avec un peu d’expertise en programmation. <0/> pour plus d’informations." @@ -1909,15 +1917,19 @@ msgstr "Les fils d’actu sont des algorithmes personnalisés qui se construisen msgid "Feeds can be topical as well!" msgstr "Les fils d’actu peuvent également être thématiques !" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "Contenu du fichier" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "Fichier sauvegardé avec succès !" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "Filtrer des fils d’actu" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "Finalisation" @@ -1929,21 +1941,9 @@ msgstr "Trouver des comptes à suivre" #: src/view/screens/Search/Search.tsx:462 msgid "Find posts and users on Bluesky" -msgstr "" +msgstr "Trouver des posts et comptes sur Bluesky" -#: src/view/screens/Search/Search.tsx:589 -#~ msgid "Find users on Bluesky" -#~ msgstr "Trouver des comptes sur Bluesky" - -#: src/view/screens/Search/Search.tsx:587 -#~ msgid "Find users with the search tool on the right" -#~ msgstr "Trouvez des comptes à l’aide de l’outil de recherche, à droite" - -#: src/view/com/auth/onboarding/RecommendedFollowsItem.tsx:155 -#~ msgid "Finding similar accounts..." -#~ msgstr "Recherche de comptes similaires…" - -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "Affine le contenu affiché sur votre fil d’actu « Following »." @@ -1951,11 +1951,11 @@ msgstr "Affine le contenu affiché sur votre fil d’actu « Following »." msgid "Fine-tune the discussion threads." msgstr "Affine les fils de discussion." -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "Fitness" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "Flexible" @@ -1968,10 +1968,10 @@ msgstr "Miroir horizontal" msgid "Flip vertically" msgstr "Miroir vertical" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -1983,7 +1983,7 @@ msgid "Follow" msgstr "Suivre" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "Suivre {0}" @@ -2005,10 +2005,6 @@ msgstr "Suivre en retour" msgid "Follow selected accounts and continue to the next step" msgstr "Suivre les comptes sélectionnés et passer à l’étape suivante" -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:65 -#~ msgid "Follow some users to get started. We can recommend you more users based on who you find interesting." -#~ msgstr "Suivez quelques comptes pour commencer. Nous pouvons vous recommander d’autres comptes en fonction des personnes qui vous intéressent." - #: src/view/com/profile/ProfileCard.tsx:226 msgid "Followed by {0}" msgstr "Suivi par {0}" @@ -2017,7 +2013,7 @@ msgstr "Suivi par {0}" msgid "Followed users" msgstr "Comptes suivis" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "Comptes suivis uniquement" @@ -2030,28 +2026,30 @@ msgstr "vous suit" msgid "Followers" msgstr "Abonné·e·s" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "Suivi" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "Suit {0}" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "Préférences du fil d’actu « Following »" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "Préférences en matière de fil d’actu « Following »" @@ -2063,15 +2061,15 @@ msgstr "Vous suit" msgid "Follows You" msgstr "Vous suit" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "Nourriture" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "Pour des raisons de sécurité, nous devrons envoyer un code de confirmation à votre e-mail." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "Pour des raisons de sécurité, vous ne pourrez plus afficher ceci. Si vous perdez ce mot de passe, vous devrez en générer un autre." @@ -2080,15 +2078,15 @@ msgstr "Pour des raisons de sécurité, vous ne pourrez plus afficher ceci. Si v msgid "Forgot Password" msgstr "Mot de passe oublié" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "Mot de passe oublié ?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "Oublié ?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "Publication fréquente de contenu indésirable" @@ -2096,7 +2094,7 @@ msgstr "Publication fréquente de contenu indésirable" msgid "From @{sanitizedAuthor}" msgstr "De @{sanitizedAuthor}" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "Tiré de <0/>" @@ -2105,12 +2103,20 @@ msgstr "Tiré de <0/>" msgid "Gallery" msgstr "Galerie" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "C’est parti" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "C’est parti" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "Donner à votre profil un visage" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "Violations flagrantes de la loi ou des conditions d’utilisation" @@ -2119,9 +2125,9 @@ msgstr "Violations flagrantes de la loi ou des conditions d’utilisation" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "Retour" @@ -2129,13 +2135,14 @@ msgstr "Retour" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "Retour" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2150,37 +2157,36 @@ msgstr "Accéder à l’accueil" msgid "Go Home" msgstr "Accéder à l’accueil" -#: src/view/screens/Search/Search.tsx:827 -#: src/view/shell/desktop/Search.tsx:263 -#~ msgid "Go to @{queryMaybeHandle}" -#~ msgstr "Aller à @{queryMaybeHandle}" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "Aller à la suite" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" -msgstr "" +msgstr "Voir le profil" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" -msgstr "" +msgstr "Voir le profil du compte" #: src/lib/moderation/useGlobalLabelStrings.ts:46 msgid "Graphic Media" msgstr "Médias crus" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "Pseudo" #: src/view/screens/AccessibilitySettings.tsx:103 msgid "Haptics" -msgstr "" +msgstr "Haptiques" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "Harcèlement, trolling ou intolérance" @@ -2188,7 +2194,7 @@ msgstr "Harcèlement, trolling ou intolérance" msgid "Hashtag" msgstr "Mot-clé" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "Mot-clé : #{tag}" @@ -2197,10 +2203,14 @@ msgid "Having trouble?" msgstr "Un souci ?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "Aide" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "Aidez les gens à savoir que vous n’êtes pas un bot en envoyant une image ou en créant un avatar." + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "Voici quelques comptes à suivre" @@ -2213,13 +2223,13 @@ msgstr "Voici quelques fils d’actu thématiques populaires. Vous pouvez choisi msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "Voici quelques fils d’actu thématiques basés sur vos centres d’intérêt : {interestsText}. Vous pouvez choisir d’en suivre autant que vous le souhaitez." -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "Voici le mot de passe de votre appli." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2241,7 +2251,7 @@ msgid "Hide post" msgstr "Cacher ce post" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "Cacher ce contenu" @@ -2253,23 +2263,23 @@ msgstr "Cacher ce post ?" msgid "Hide user list" msgstr "Cacher la liste des comptes" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "Hmm, un problème s’est produit avec le serveur de fils d’actu. Veuillez informer la personne propriétaire du fil d’actu de ce problème." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "Hmm, le serveur du fils d’actu semble être mal configuré. Veuillez informer la personne propriétaire du fil d’actu de ce problème." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "Hmm, le serveur de fils d’actu semble être hors ligne. Veuillez informer la personne propriétaire du fil d’actu de ce problème." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "Hmm, le serveur de fils d’actu ne répond pas. Veuillez informer la personne propriétaire du fil d’actu de ce problème." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "Hmm, nous n’arrivons pas à trouver ce fil d’actu. Il a peut-être été supprimé." @@ -2281,22 +2291,22 @@ msgstr "Hmm, il semble que nous ayons des difficultés à charger ces données. msgid "Hmmmm, we couldn't load that moderation service." msgstr "Hmm, nous n’avons pas pu charger ce service de modération." -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "Accueil" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "Hébergeur :" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "Hébergeur" @@ -2304,25 +2314,30 @@ msgstr "Hébergeur" msgid "How should we open this link?" msgstr "Comment ouvrir ce lien ?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "J’ai un code" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "J’ai un code de confirmation" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "J’ai mon propre domaine" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "Je comprends" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "Si le texte alternatif est trop long, change son mode d’affichage" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "Si rien n’est sélectionné, il n’y a pas de restriction d’âge." @@ -2330,7 +2345,7 @@ msgstr "Si rien n’est sélectionné, il n’y a pas de restriction d’âge." msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "Si vous n’êtes pas encore un adulte selon les lois de votre pays, vos parents ou votre tuteur légal doivent lire ces conditions en votre nom." -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "Si vous supprimez cette liste, vous ne pourrez pas la récupérer." @@ -2342,7 +2357,7 @@ msgstr "Si vous supprimez ce post, vous ne pourrez pas le récupérer." msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "Si vous souhaitez modifier votre mot de passe, nous vous enverrons un code pour vérifier qu’il s’agit bien de votre compte." -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "Illégal et urgent" @@ -2350,23 +2365,27 @@ msgstr "Illégal et urgent" msgid "Image" msgstr "Image" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "Texte alt de l’image" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "Usurpation d’identité ou fausses déclarations concernant l’identité ou l’affiliation" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "Messages inappropriés ou liens explicites" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "Entrez le code envoyé à votre e-mail pour réinitialiser le mot de passe" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "Entrez le code de confirmation pour supprimer le compte" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "Entrez le nom du mot de passe de l’appli" @@ -2374,27 +2393,27 @@ msgstr "Entrez le nom du mot de passe de l’appli" msgid "Input new password" msgstr "Entrez le nouveau mot de passe" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "Entrez le mot de passe pour la suppression du compte" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" -msgstr "" +msgstr "Entrez le code qui vous a été envoyé par e-mail" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "Entrez le mot de passe associé à {identifier}" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "Entrez le pseudo ou l’adresse e-mail que vous avez utilisé lors de l’inscription" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "Entrez votre mot de passe" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "Entrez votre hébergeur préféré" @@ -2402,16 +2421,20 @@ msgstr "Entrez votre hébergeur préféré" msgid "Input your user handle" msgstr "Entrez votre pseudo" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 -msgid "Invalid 2FA confirmation code." -msgstr "" +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "Et voici les Messages Privés" -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 +msgid "Invalid 2FA confirmation code." +msgstr "Code de confirmation 2FA invalide." + +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "Enregistrement de post invalide ou non pris en charge" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "Pseudo ou mot de passe incorrect" @@ -2423,7 +2446,7 @@ msgstr "Inviter un ami" msgid "Invite code" msgstr "Code d’invitation" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "Code d’invitation refusé. Vérifiez que vous l’avez saisi correctement et réessayez." @@ -2443,14 +2466,10 @@ msgstr "Il affiche les posts des personnes que vous suivez au fur et à mesure q msgid "Jobs" msgstr "Emplois" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "Journalisme" -#: src/components/moderation/LabelsOnMe.tsx:59 -#~ msgid "label has been placed on this {labelTarget}" -#~ msgstr "étiquette a été placée sur ce {labelTarget}" - #: src/components/moderation/ContentHider.tsx:144 msgid "Labeled by {0}." msgstr "Étiqueté par {0}." @@ -2463,19 +2482,15 @@ msgstr "Étiqueté par l’auteur." msgid "Labels" msgstr "Étiquettes" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "Les étiquettes sont des annotations sur les comptes et le contenu. Elles peuvent être utilisées pour masquer, avertir et catégoriser le réseau." -#: src/components/moderation/LabelsOnMe.tsx:61 -#~ msgid "labels have been placed on this {labelTarget}" -#~ msgstr "étiquettes ont été placées sur ce {labelTarget}" - -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "Étiquettes sur votre compte" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "Étiquettes sur votre contenu" @@ -2483,7 +2498,7 @@ msgstr "Étiquettes sur votre contenu" msgid "Language selection" msgstr "Sélection de la langue" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "Préférences de langue" @@ -2492,7 +2507,7 @@ msgstr "Préférences de langue" msgid "Language Settings" msgstr "Paramètres linguistiques" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "Langues" @@ -2510,7 +2525,7 @@ msgstr "En savoir plus" msgid "Learn more about the moderation applied to this content." msgstr "En savoir plus sur la modération appliquée à ce contenu." -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "En savoir plus sur cet avertissement" @@ -2523,15 +2538,22 @@ msgstr "En savoir plus sur ce qui est public sur Bluesky." msgid "Learn more." msgstr "En savoir plus." -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" -msgstr "" +msgstr "Partir" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "Partir de la discussion" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" -msgstr "" +msgstr "Partir de la conversation" #: src/view/com/modals/lang-settings/ContentLanguagesSettings.tsx:82 msgid "Leave them all unchecked to see any language." @@ -2545,7 +2567,7 @@ msgstr "Quitter Bluesky" msgid "left to go." msgstr "devant vous dans la file." -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "Stockage ancien effacé, vous devez redémarrer l’application maintenant." @@ -2554,20 +2576,16 @@ msgstr "Stockage ancien effacé, vous devez redémarrer l’application maintena msgid "Let's get your password reset!" msgstr "Réinitialisez votre mot de passe !" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "Allons-y !" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "Clair" -#: src/view/com/util/post-ctrls/PostCtrls.tsx:197 -#~ msgid "Like" -#~ msgstr "Liker" - -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "Liker ce fil d’actu" @@ -2583,20 +2601,6 @@ msgstr "Liké par" msgid "Liked By" msgstr "Liké par" -#: src/view/com/feeds/FeedSourceCard.tsx:268 -#~ msgid "Liked by {0} {1}" -#~ msgstr "Liké par {0} {1}" - -#: src/components/LabelingServiceCard/index.tsx:72 -#~ msgid "Liked by {count} {0}" -#~ msgstr "Liké par {count} {0}\"" - -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:287 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:301 -#: src/view/screens/ProfileFeed.tsx:600 -#~ msgid "Liked by {likeCount} {0}" -#~ msgstr "Liké par {likeCount} {0}" - #: src/view/com/notifications/FeedItem.tsx:168 msgid "liked your custom feed" msgstr "liké votre fil d’actu personnalisé" @@ -2609,7 +2613,7 @@ msgstr "liké votre post" msgid "Likes" msgstr "Likes" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "Likes sur ce post" @@ -2621,19 +2625,19 @@ msgstr "Liste" msgid "List Avatar" msgstr "Liste des avatars" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "Liste bloquée" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "Liste par {0}" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "Liste supprimée" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "Liste masquée" @@ -2641,31 +2645,35 @@ msgstr "Liste masquée" msgid "List Name" msgstr "Nom de liste" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "Liste débloquée" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "Liste démasquée" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "Listes" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "Listes qui bloquent ce compte :" + #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "Charger les nouvelles notifications" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "Charger les nouveaux posts" @@ -2692,22 +2700,39 @@ msgstr "Visibilité déconnectée" msgid "Login to account that is not listed" msgstr "Se connecter à un compte qui n’est pas listé" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" -msgstr "" +msgstr "Appuyer longtemps pour ouvrir le menu de mot-clé pour #{tag}" #: src/screens/Login/SetNewPasswordForm.tsx:116 msgid "Looks like XXXXX-XXXXX" msgstr "De la forme XXXXX-XXXXX" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "On dirait que vous n’avez plus de fils d’actu enregistrés ! Utilisez nos recommandations ou parcourez en plus ci-dessous." + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "On dirait que vous avez désépinglé tous vos fils d’actu. Mais pas d’inquiétudes : vous pouvez en ajouter ci-dessous 😄" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "On dirait que vous n’avez plus de fil d’actu « Following ». <0>Cliquez ici pour en rajouter un." + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "Assurez-vous que c’est bien là que vous avez l’intention d’aller !" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "Gérer les mots et les mots-clés masqués" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "Marqué comme lu" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2726,44 +2751,46 @@ msgstr "Comptes mentionnés" msgid "Menu" msgstr "Menu" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 -msgid "Message deleted" +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 +msgid "Message deleted" +msgstr "Message supprimé" + +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "Message du serveur : {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" -msgstr "" +msgstr "Champ d’écriture du message" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "Le message est trop long" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" -msgstr "" +msgstr "Paramètres des messages" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" -msgstr "" +msgstr "Messages" -#: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" - -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "Compte trompeur" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "Modération" @@ -2776,13 +2803,13 @@ msgstr "Détails de la modération" msgid "Moderation list by {0}" msgstr "Liste de modération par {0}" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "Liste de modération par <0/>" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "Liste de modération par vous" @@ -2803,7 +2830,7 @@ msgstr "Listes de modération" msgid "Moderation Lists" msgstr "Listes de modération" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "Paramètres de modération" @@ -2824,11 +2851,11 @@ msgstr "La modération a choisi d’ajouter un avertissement général sur le co msgid "More" msgstr "Plus" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "Plus de fils d’actu" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "Plus d’options" @@ -2849,7 +2876,7 @@ msgstr "Masquer {truncatedTag}" msgid "Mute Account" msgstr "Masquer le compte" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "Masquer les comptes" @@ -2857,32 +2884,32 @@ msgstr "Masquer les comptes" msgid "Mute all {displayTag} posts" msgstr "Masquer tous les posts {displayTag}" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "Masquer la conversation" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "Masquer dans les mots-clés uniquement" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "Masquer dans le texte et les mots-clés" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "Masquer la liste" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" - -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "Masquer ces comptes ?" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "Masquer ce mot dans le texte du post et les mots-clés" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "Masquer ce mot dans les mots-clés uniquement" @@ -2921,7 +2948,7 @@ msgstr "Masqué par « {0} »" msgid "Muted words & tags" msgstr "Les mots et les mots-clés masqués" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "Ce que vous masquez reste privé. Les comptes masqués peuvent interagir avec vous, mais vous ne verrez pas leurs posts et ne recevrez pas de notifications de leur part." @@ -2930,23 +2957,23 @@ msgstr "Ce que vous masquez reste privé. Les comptes masqués peuvent interagir msgid "My Birthday" msgstr "Ma date de naissance" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "Mes fils d’actu" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "Mon profil" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "Mes fils d’actu enregistrés" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "Mes fils d’actu enregistrés" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "Nom" @@ -2955,40 +2982,35 @@ msgstr "Nom" msgid "Name is required" msgstr "Le nom est requis" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "Nom ou description qui viole les normes communautaires" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "Nature" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "Navigue vers le prochain écran" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "Navigue vers votre profil" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "Besoin de signaler une violation des droits d’auteur ?" -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:72 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:74 -#~ msgid "Never lose access to your followers and data." -#~ msgstr "Ne perdez jamais l’accès à vos abonné·e·s et à vos données." - -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "Ne perdez jamais l’accès à vos abonné·e·s ou à vos données." -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "Peu importe, créez un pseudo pour moi" @@ -3001,11 +3023,15 @@ msgstr "Nouveau" msgid "New" msgstr "Nouveau" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" -msgstr "" +msgstr "Nouvelle discussion" + +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "Nouveaux messages" #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" @@ -3019,22 +3045,22 @@ msgstr "Nouveau mot de passe" msgid "New Password" msgstr "Nouveau mot de passe" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "Nouveau post" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "Nouveau post" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "Nouveau post" @@ -3047,14 +3073,14 @@ msgstr "Nouvelle liste de comptes" msgid "Newest replies first" msgstr "Réponses les plus récentes en premier" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "Actualités" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3063,38 +3089,37 @@ msgstr "Actualités" msgid "Next" msgstr "Suivant" -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:103 -#~ msgctxt "action" -#~ msgid "Next" -#~ msgstr "Suivant" - #: src/view/com/lightbox/Lightbox.web.tsx:169 msgid "Next image" msgstr "Image suivante" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "Non" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/screens/Messages/List/index.tsx:156 +#~ msgid "No chats yet" +#~ msgstr "Pas de discussions pour l’instant" + +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "Aucune description" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "Pas de panneau DNS" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." -msgstr "" +msgstr "Aucun GIFs vedettes à afficher. Il y a peut-être un souci chez Tenor." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "Ne suit plus {0}" @@ -3102,25 +3127,39 @@ msgstr "Ne suit plus {0}" msgid "No longer than 253 characters" msgstr "Pas plus de 253 caractères" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" +msgstr "Pas encore de messages" + +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" msgstr "" #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "Pas encore de notifications !" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "Personne" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "Aucun résultat" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "Aucun résultat" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "Aucun résultat trouvé" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "Aucun résultat trouvé pour « {query} »" @@ -3130,13 +3169,9 @@ msgstr "Aucun résultat trouvé pour « {query} »" msgid "No results found for {query}" msgstr "Aucun résultat trouvé pour {query}" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." -msgstr "" - -#: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +msgstr "Pas de résultats pour « {search} »." #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3147,6 +3182,10 @@ msgstr "Non merci" msgid "Nobody" msgstr "Personne" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3156,17 +3195,13 @@ msgstr "Personne n’a encore liké. Peut-être devriez-vous ouvrir la voie !" msgid "Non-sexual Nudity" msgstr "Nudité non sexuelle" -#: src/view/com/modals/SelfLabel.tsx:135 -#~ msgid "Not Applicable." -#~ msgstr "Sans objet." - #: src/Navigation.tsx:116 #: src/view/screens/Profile.tsx:100 msgid "Not Found" msgstr "Introuvable" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "Pas maintenant" @@ -3180,47 +3215,55 @@ msgstr "Note sur le partage" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "Remarque : Bluesky est un réseau ouvert et public. Ce paramètre limite uniquement la visibilité de votre contenu sur l’application et le site Web de Bluesky, et d’autres applications peuvent ne pas respecter ce paramètre. Votre contenu peut toujours être montré aux personnes non connectées par d’autres applications et sites Web." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "Notifications" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" -msgstr "" +msgstr "Maintenant" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "Nudité" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "Nudité ou contenu adulte non identifié comme tel" -#: src/screens/Signup/index.tsx:145 -#~ msgid "of" -#~ msgstr "sur" - #: src/lib/moderation/useLabelBehaviorDescription.ts:11 msgid "Off" msgstr "Éteint" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "Oh non !" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "Oh non ! Il y a eu un problème." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "OK" @@ -3232,14 +3275,18 @@ msgstr "D’accord" msgid "Oldest replies first" msgstr "Plus anciennes réponses en premier" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "Réinitialiser le didacticiel" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "Une ou plusieurs images n’ont pas de texte alt." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "Seuls les fichiers .jpg et .png sont acceptés" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "Seul {0} peut répondre." @@ -3248,33 +3295,46 @@ msgstr "Seul {0} peut répondre." msgid "Only contains letters, numbers, and hyphens" msgstr "Ne contient que des lettres, des chiffres et des traits d’union" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "Oups, quelque chose n’a pas marché !" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "Oups !" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" -msgstr "Ouvrir" +msgstr "Ouvert" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "Ouvre le créateur d’avatar" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "Ouvrir le sélecteur d’emoji" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "Ouvrir le menu des options de fil d’actu" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "Ouvrir des liens avec le navigateur interne à l’appli" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "Ouvrir les paramètres des mots masqués et mots-clés" @@ -3287,12 +3347,12 @@ msgstr "Navigation ouverte" msgid "Open post options menu" msgstr "Ouvrir le menu d’options du post" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "Ouvrir la page Storybook" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "Ouvrir le journal du système" @@ -3300,9 +3360,9 @@ msgstr "Ouvrir le journal du système" msgid "Opens {numItems} options" msgstr "Ouvre {numItems} options" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" -msgstr "" +msgstr "Ouvre les paramètres d’accessibilité" #: src/view/screens/Log.tsx:54 msgid "Opens additional details for a debug entry" @@ -3316,11 +3376,15 @@ msgstr "Ouvre une liste étendue des comptes dans cette notification" msgid "Opens camera on device" msgstr "Ouvre l’appareil photo de l’appareil" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "Ouvre le rédacteur" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "Ouvre les paramètres linguistiques configurables" @@ -3328,7 +3392,7 @@ msgstr "Ouvre les paramètres linguistiques configurables" msgid "Opens device photo gallery" msgstr "Ouvre la galerie de photos de l’appareil" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "Ouvre les paramètres d’intégration externe" @@ -3344,58 +3408,58 @@ msgstr "Ouvre le flux pour vous connecter à votre compte Bluesky existant" #: src/view/com/composer/photos/SelectGifBtn.tsx:37 msgid "Opens GIF select dialog" -msgstr "" +msgstr "Ouvre la sélection de GIF" #: src/view/com/modals/InviteCodes.tsx:173 msgid "Opens list of invite codes" msgstr "Ouvre la liste des codes d’invitation" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "Ouvre la fenêtre modale pour confirmer la suppression du compte. Requiert un code e-mail." -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "Ouvre une fenêtre modale pour changer le mot de passe de Bluesky" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "Ouvre une fenêtre modale pour choisir un nouveau pseudo Bluesky" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "Ouvre une fenêtre modale pour télécharger les données du compte Bluesky (dépôt)" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "Ouvre une fenêtre modale pour la vérification de l’e-mail" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "Ouvre une fenêtre modale pour utiliser un domaine personnalisé" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "Ouvre les paramètres de modération" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "Ouvre le formulaire de réinitialisation du mot de passe" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "Ouvre l’écran pour modifier les fils d’actu enregistrés" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "Ouvre l’écran avec tous les fils d’actu enregistrés" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "Ouvre les paramètres du mot de passe de l’application" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "Ouvre les préférences du fil d’actu « Following »" @@ -3403,20 +3467,16 @@ msgstr "Ouvre les préférences du fil d’actu « Following »" msgid "Opens the linked website" msgstr "Ouvre le site web lié" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" - -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "Ouvre la page de l’historique" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "Ouvre la page du journal système" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "Ouvre les préférences relatives aux fils de discussion" @@ -3424,7 +3484,8 @@ msgstr "Ouvre les préférences relatives aux fils de discussion" msgid "Option {0} of {numItems}" msgstr "Option {0} sur {numItems}" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "Ajoutez des informations supplémentaires ci-dessous (optionnel) :" @@ -3432,7 +3493,7 @@ msgstr "Ajoutez des informations supplémentaires ci-dessous (optionnel) :" msgid "Or combine these options:" msgstr "Ou une combinaison de ces options :" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "Autre" @@ -3444,7 +3505,11 @@ msgstr "Autre compte" msgid "Other..." msgstr "Autre…" -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "Notre modération a examiné les signalements qu’elle a reçu et a décidé de désactiver vos accès aux discussion sur Bluesky." + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "Page introuvable" @@ -3453,10 +3518,10 @@ msgstr "Page introuvable" msgid "Page Not Found" msgstr "Page introuvable" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "Mot de passe" @@ -3474,7 +3539,7 @@ msgstr "Mot de passe mis à jour !" #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Pause" -msgstr "" +msgstr "Mettre en pause" #: src/view/screens/Search/Search.tsx:379 msgid "People" @@ -3488,46 +3553,55 @@ msgstr "Personnes suivies par @{0}" msgid "People following @{0}" msgstr "Personnes qui suivent @{0}" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "Permission d’accès à la pellicule requise." -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "Permission d’accès à la pellicule refusée. Veuillez l’activer dans les paramètres de votre système." -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "Animaux domestiques" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "Images destinées aux adultes." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "Ajouter à l’accueil" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "Ajouter à l’accueil" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "Fils épinglés" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "Épinglé à vos fils d’actu" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" -msgstr "" +msgstr "Lire" #: src/view/com/util/post-embeds/ExternalGifEmbed.tsx:123 msgid "Play {0}" msgstr "Lire {0}" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "Jouer des sons de notification" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" -msgstr "" +msgstr "Lire ou mettre en pause le GIF" #: src/view/com/util/post-embeds/ExternalPlayerEmbed.tsx:57 #: src/view/com/util/post-embeds/ExternalPlayerEmbed.tsx:58 @@ -3538,78 +3612,83 @@ msgstr "Lire la vidéo" msgid "Plays the GIF" msgstr "Lit le GIF" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "Veuillez choisir votre pseudo." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "Veuillez choisir votre mot de passe." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "Veuillez compléter le captcha de vérification." -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "Veuillez confirmer votre e-mail avant de le modifier. Ceci est temporairement requis pendant que des outils de mise à jour d’e-mail sont ajoutés, cette étape ne sera bientôt plus nécessaire." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "Veuillez entrer un nom pour votre mot de passe d’application. Les espaces ne sont pas autorisés." -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "Veuillez saisir un nom unique pour le mot de passe de l’application ou utiliser celui que nous avons généré de manière aléatoire." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "Veuillez entrer un mot, un mot-clé ou une phrase valide à masquer" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "Veuillez entrer votre e-mail." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "Veuillez également entrer votre mot de passe :" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "Veuillez expliquer pourquoi vous pensez que cette étiquette a été appliquée à tort par {0}" -#: src/lib/hooks/useAccountSwitcher.ts:48 -msgid "Please sign in as @{0}" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 +msgid "Please sign in as @{0}" +msgstr "Veuillez vous identifier comme @{0}" + +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "Veuillez vérifier votre e-mail" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "Veuillez patienter le temps que votre carte de lien soit chargée" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "Politique" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "Porno" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "Poster" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "Post" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "Post de {0}" @@ -3623,7 +3702,7 @@ msgstr "Post de @{0}" msgid "Post deleted" msgstr "Post supprimé" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "Post caché" @@ -3645,8 +3724,8 @@ msgstr "Langue du post" msgid "Post Languages" msgstr "Langues du post" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "Post introuvable" @@ -3658,11 +3737,11 @@ msgstr "posts" msgid "Posts" msgstr "Posts" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "Les posts peuvent être masqués en fonction de leur texte, de leurs mots-clés ou des deux." -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "Posts cachés" @@ -3670,22 +3749,21 @@ msgstr "Posts cachés" msgid "Potentially Misleading Link" msgstr "Lien potentiellement trompeur" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "Appuyer pour tenter une reconnection" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "Appuyer pour changer d’hébergeur" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "Appuyer pour réessayer" -#: src/screens/Messages/Conversation/MessagesList.tsx:47 -#: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" - #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" msgstr "Image précédente" @@ -3698,7 +3776,7 @@ msgstr "Langue principale" msgid "Prioritize Your Follows" msgstr "Définissez des priorités de vos suivis" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "Vie privée" @@ -3706,25 +3784,29 @@ msgstr "Vie privée" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "Charte de confidentialité" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "Discuter en privé avec d’autres comptes." + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "Traitement…" -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "profil" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "Profil" @@ -3732,11 +3814,11 @@ msgstr "Profil" msgid "Profile updated" msgstr "Profil mis à jour" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "Protégez votre compte en vérifiant votre e-mail." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "Public" @@ -3748,11 +3830,11 @@ msgstr "Listes publiques et partageables de comptes à masquer ou à bloquer." msgid "Public, shareable lists which can drive feeds." msgstr "Les listes publiques et partageables qui peuvent alimenter les fils d’actu." -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "Publier le post" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "Publier la réponse" @@ -3778,24 +3860,28 @@ msgstr "Aléatoire" msgid "Ratios" msgstr "Ratios" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "Raison :" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "Recherches récentes" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:117 -#~ msgid "Recommended Feeds" -#~ msgstr "Fils d’actu recommandés" +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "Se reconnecter" -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:181 -#~ msgid "Recommended Users" -#~ msgstr "Comptes recommandés" +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "Supprimer" @@ -3803,7 +3889,7 @@ msgstr "Supprimer" msgid "Remove account" msgstr "Supprimer compte" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "Supprimer l’avatar" @@ -3811,22 +3897,25 @@ msgstr "Supprimer l’avatar" msgid "Remove Banner" msgstr "Supprimer l’image d’en-tête" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "Supprimer le fil d’actu" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "Supprimer le fil d’actu ?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "Supprimer de mes fils d’actu" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "Supprimer de mes fils d’actu ?" @@ -3838,19 +3927,19 @@ msgstr "Supprimer l’image" msgid "Remove image preview" msgstr "Supprimer l’aperçu d’image" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "Supprimer le mot masqué de votre liste" #: src/view/com/util/post-embeds/QuoteEmbed.tsx:223 msgid "Remove quote" -msgstr "" +msgstr "Supprimer la citation" #: src/view/com/modals/Repost.tsx:48 msgid "Remove repost" msgstr "Supprimer le repost" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "Supprimer ce fil d’actu de vos fils d’actu enregistrés" @@ -3859,11 +3948,13 @@ msgstr "Supprimer ce fil d’actu de vos fils d’actu enregistrés" msgid "Removed from list" msgstr "Supprimé de la liste" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "Supprimé de mes fils d’actu" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "Supprimé de vos fils d’actu" @@ -3873,7 +3964,12 @@ msgstr "Supprime la miniature par défaut de {0}" #: src/view/com/util/post-embeds/QuoteEmbed.tsx:224 msgid "Removes quoted post" -msgstr "" +msgstr "Supprime le post cité" + +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "Remplacer par Discover" #: src/view/screens/Profile.tsx:194 msgid "Replies" @@ -3883,87 +3979,95 @@ msgstr "Réponses" msgid "Replies to this thread are disabled" msgstr "Les réponses à ce fil de discussion sont désactivées" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "Répondre" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "Filtres de réponse" -#: src/view/com/post/Post.tsx:177 -#: src/view/com/posts/FeedItem.tsx:285 -#~ msgctxt "description" -#~ msgid "Reply to <0/>" -#~ msgstr "Réponse à <0/>" - #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" -msgstr "" +msgstr "Réponse à <0><1/>" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" -msgstr "" - -#: src/components/dms/ConvoMenu.tsx:146 -#: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +msgstr "Signaler" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "Signaler le compte" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "Signaler la conversation" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "Fenêtre de dialogue de signalement" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "Signaler le fil d’actu" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "Signaler la liste" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" -msgstr "" +msgstr "Signaler le message" #: src/view/com/util/forms/PostDropdownBtn.tsx:363 #: src/view/com/util/forms/PostDropdownBtn.tsx:365 msgid "Report post" msgstr "Signaler le post" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/dms/ReportDialog.tsx:167 +#: src/components/ReportDialog/SelectReportOptionView.tsx:62 +#~ msgid "Report this account" +#~ msgstr "Signaler ce compte" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "Signaler ce contenu" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "Signaler ce fil d’actu" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "Signaler cette liste" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "Signaler ce message" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "Signaler ce post" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "Signaler ce compte" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "Republier" @@ -3981,11 +4085,11 @@ msgstr "Republier ou citer" msgid "Reposted By" msgstr "Republié par" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "Republié par {0}" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "Republié par <0><1/>" @@ -3993,12 +4097,12 @@ msgstr "Republié par <0><1/>" msgid "reposted your post" msgstr "a republié votre post" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "Reposts de ce post" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "Demande de modification" @@ -4011,18 +4115,18 @@ msgstr "Demander un code" msgid "Require alt text before posting" msgstr "Nécessiter un texte alt avant de publier" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" -msgstr "" +msgstr "Nécessiter un code par e-mail pour se connecter au compte" #: src/screens/Signup/StepInfo/index.tsx:69 msgid "Required for this provider" msgstr "Obligatoire pour cet hébergeur" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" -msgstr "" +msgstr "Renvoyer l’e-mail" #: src/view/com/modals/ChangePassword.tsx:187 msgid "Reset code" @@ -4032,8 +4136,8 @@ msgstr "Réinitialiser le code" msgid "Reset Code" msgstr "Code de réinitialisation" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "Réinitialisation du didacticiel" @@ -4041,20 +4145,20 @@ msgstr "Réinitialisation du didacticiel" msgid "Reset password" msgstr "Réinitialiser mot de passe" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "Réinitialiser l’état des préférences" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "Réinitialise l’état d’accueil" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "Réinitialise l’état des préférences" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "Réessaye la connection" @@ -4063,25 +4167,22 @@ msgstr "Réessaye la connection" msgid "Retries the last action, which errored out" msgstr "Réessaye la dernière action, qui a échoué" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 msgid "Retry" msgstr "Réessayer" -#: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" - #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "Retourne à la page précédente" @@ -4090,26 +4191,26 @@ msgid "Returns to home page" msgstr "Retour à la page d’accueil" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "Retour à la page précédente" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "Enregistrer" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "Enregistrer" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "Enregistrer le texte alt" @@ -4121,7 +4222,7 @@ msgstr "Enregistrer la date de naissance" msgid "Save Changes" msgstr "Enregistrer les modifications" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "Enregistrer le changement de pseudo" @@ -4129,24 +4230,21 @@ msgstr "Enregistrer le changement de pseudo" msgid "Save image crop" msgstr "Enregistrer le recadrage de l’image" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "Enregistrer dans mes fils d’actu" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "Fils d’actu enregistrés" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" -msgstr "" +msgstr "Enregistré dans votre photothèque" -#: src/view/com/lightbox/Lightbox.tsx:81 -#~ msgid "Saved to your camera roll." -#~ msgstr "Enregistré dans votre photothèque" - -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "Enregistré à mes fils d’actu" @@ -4154,7 +4252,7 @@ msgstr "Enregistré à mes fils d’actu" msgid "Saves any changes to your profile" msgstr "Enregistre toutes les modifications apportées à votre profil" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "Enregistre le changement de pseudo en {handle}" @@ -4162,16 +4260,20 @@ msgstr "Enregistre le changement de pseudo en {handle}" msgid "Saves image crop settings" msgstr "Enregistre les paramètres de recadrage de l’image" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "Science" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "Remonter en haut" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4179,12 +4281,12 @@ msgstr "Remonter en haut" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "Recherche" @@ -4194,7 +4296,7 @@ msgstr "Recherche de « {query} »" #: src/view/screens/Search/Search.tsx:839 msgid "Search for \"{searchText}\"" -msgstr "" +msgstr "Recherche de « {searchText} »" #: src/components/TagMenu/index.tsx:145 msgid "Search for all posts by @{authorHandle} with tag {displayTag}" @@ -4204,10 +4306,6 @@ msgstr "Rechercher tous les posts de @{authorHandle} avec le mot-clé {displayTa msgid "Search for all posts with tag {displayTag}" msgstr "Rechercher tous les posts avec le mot-clé {displayTag}" -#: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" - #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 #: src/view/com/modals/ListAddRemoveUsers.tsx:70 @@ -4216,17 +4314,18 @@ msgstr "Rechercher des comptes" #: src/components/dialogs/GifSelect.tsx:158 msgid "Search GIFs" -msgstr "" +msgstr "Rechercher des GIFs" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" -msgstr "" +msgstr "Rechercher dans les profils" #: src/components/dialogs/GifSelect.tsx:159 msgid "Search Tenor" -msgstr "" +msgstr "Rechercher dans Tenor" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "Étape de sécurité requise" @@ -4247,11 +4346,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "Voir les posts <0>{displayTag} de ce compte" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "Voir le profil" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "Voir ce guide" @@ -4259,21 +4358,33 @@ msgstr "Voir ce guide" msgid "Select {item}" msgstr "Sélectionner {item}" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "Sélectionner une couleur" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "Sélectionner un compte" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "Sélectionner un avatar" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "Sélectionner un emoji" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "Sélectionner un compte existant" #: src/view/com/composer/photos/SelectGifBtn.tsx:36 msgid "Select GIF" -msgstr "" +msgstr "Sélectionner le GIF" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" -msgstr "" +msgstr "Sélectionner le GIF « {0} »" #: src/view/screens/LanguageSettings.tsx:299 msgid "Select languages" @@ -4291,7 +4402,11 @@ msgstr "Sélectionne l’option {i} sur {numItems}" msgid "Select some accounts below to follow" msgstr "Sélectionnez quelques comptes à suivre ci-dessous" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "Sélectionner l’emoji {emojiName} comme avatar" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "Sélectionnez le(s) service(s) de modération destinataires du signalement" @@ -4319,7 +4434,7 @@ msgstr "Sélectionnez votre langue par défaut pour les textes de l’applicatio msgid "Select your date of birth" msgstr "Sélectionnez votre date de naissance" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "Sélectionnez vos centres d’intérêt parmi les options ci-dessous" @@ -4335,32 +4450,38 @@ msgstr "Sélectionnez vos principaux fils d’actu algorithmiques" msgid "Select your secondary algorithmic feeds" msgstr "Sélectionnez vos fils d’actu algorithmiques secondaires" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "Envoyer un e-mail de confirmation" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "Envoyer e-mail" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "Envoyer l’e-mail" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "Envoyer des commentaires" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" -msgstr "" +msgstr "Envoyer le message" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "Envoyer le rapport" @@ -4368,12 +4489,12 @@ msgstr "Envoyer le rapport" msgid "Send report to {0}" msgstr "Envoyer le rapport à {0}" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" -msgstr "" +msgstr "Envoyer l’e-mail de vérification" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "Envoie un e-mail avec le code de confirmation pour la suppression du compte" @@ -4389,15 +4510,15 @@ msgstr "Entrez votre date de naissance" msgid "Set new password" msgstr "Définir un nouveau mot de passe" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "Choisissez « Non » pour cacher toutes les citations sur votre fils d’actu. Les reposts seront toujours visibles." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "Choisissez « Non » pour cacher toutes les réponses dans votre fils d’actu." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "Choisissez « Non » pour cacher toutes les reposts de votre fils d’actu." @@ -4405,7 +4526,7 @@ msgstr "Choisissez « Non » pour cacher toutes les reposts de votre fils d’ msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "Choisissez « Oui » pour afficher les réponses dans un fil de discussion. C’est une fonctionnalité expérimentale." -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "Choisissez « Oui » pour afficher des échantillons de vos fils d’actu enregistrés dans votre fil d’actu « Following ». C’est une fonctionnalité expérimentale." @@ -4413,27 +4534,27 @@ msgstr "Choisissez « Oui » pour afficher des échantillons de vos fils d’a msgid "Set up your account" msgstr "Créez votre compte" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Définit le pseudo Bluesky" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "Change le thème de couleur en sombre" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "Change le thème de couleur en clair" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "Change le thème de couleur en fonction du paramètre système" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "Change le thème sombre comme étant le plus sombre" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "Change le thème sombre comme étant le thème atténué" @@ -4454,15 +4575,14 @@ msgid "Sets image aspect ratio to wide" msgstr "Définit le rapport d’aspect de l’image comme paysage" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "Paramètres" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "Activité sexuelle ou nudité érotique." @@ -4470,7 +4590,7 @@ msgstr "Activité sexuelle ou nudité érotique." msgid "Sexually Suggestive" msgstr "Sexuellement suggestif" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "Partager" @@ -4480,18 +4600,26 @@ msgstr "Partager" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "Partager" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "Partager quand même" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "Partager le fil d’actu" @@ -4500,25 +4628,25 @@ msgstr "Partager le fil d’actu" msgid "Share Link" msgstr "Partager le lien" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "Partage le site web lié" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "Afficher" -#: src/view/screens/PreferencesFollowingFeed.tsx:68 -#~ msgid "Show all replies" -#~ msgstr "Afficher toutes les réponses" - #: src/view/com/util/post-embeds/GifEmbed.tsx:167 msgid "Show alt text" -msgstr "" +msgstr "Voir le texte alt" #: src/components/moderation/ScreenHider.tsx:169 #: src/components/moderation/ScreenHider.tsx:172 @@ -4534,31 +4662,39 @@ msgstr "Afficher le badge" msgid "Show badge and filter from feeds" msgstr "Afficher les badges et filtrer des fils d’actu" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "Afficher les suivis similaires à {0}" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" -msgstr "" +msgstr "En montrer moins comme ça" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "Voir plus" #: src/view/com/util/forms/PostDropdownBtn.tsx:297 #: src/view/com/util/forms/PostDropdownBtn.tsx:299 msgid "Show more like this" +msgstr "En montrer plus comme ça" + +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "Afficher les posts de mes fils d’actu" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "Afficher les citations" @@ -4574,7 +4710,7 @@ msgstr "Afficher les citations dans le fil d’actu « Following »" msgid "Show re-posts in Following feed" msgstr "Afficher les reposts dans le fil d’actu « Following »" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "Afficher les réponses" @@ -4590,11 +4726,7 @@ msgstr "Afficher les réponses dans le fil d’actu « Following »" msgid "Show replies in Following feed" msgstr "Afficher les réponses dans le fil d’actu « Following »" -#: src/view/screens/PreferencesFollowingFeed.tsx:70 -#~ msgid "Show replies with at least {value} {0}" -#~ msgstr "Afficher les réponses avec au moins {value} {0}" - -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "Afficher les reposts" @@ -4603,7 +4735,7 @@ msgid "Show reposts in Following" msgstr "Afficher les reposts dans le fil d’actu « Following »" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "Afficher le contenu" @@ -4627,17 +4759,17 @@ msgstr "Affiche les posts de {0} dans votre fil d’actu" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4660,17 +4792,17 @@ msgstr "Connectez-vous ou créez votre compte pour participer à la conversation msgid "Sign into Bluesky or create a new account" msgstr "Connectez-vous à Bluesky ou créez un nouveau compte" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "Déconnexion" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -4686,7 +4818,7 @@ msgstr "S’inscrire ou se connecter pour participer à la conversation" msgid "Sign-in Required" msgstr "Connexion requise" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "Connecté en tant que" @@ -4695,27 +4827,35 @@ msgstr "Connecté en tant que" msgid "Signed in as @{0}" msgstr "Connecté en tant que @{0}" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "Ignorer" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "Passer cette étape" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "Développement de logiciels" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "Quelque chose n’a pas marché" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." msgstr "Quelque chose n’a pas marché, veuillez réessayer." -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "Désolé ! Votre session a expiré. Essayez de vous reconnecter." @@ -4727,19 +4867,20 @@ msgstr "Trier les réponses" msgid "Sort replies to the same post by:" msgstr "Trier les réponses au même post par :" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "Source :" +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "Source : <0>{0}" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "Spam" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "Spam ; mentions ou réponses excessives" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "Sports" @@ -4747,49 +4888,51 @@ msgstr "Sports" msgid "Square" msgstr "Carré" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" -msgstr "" +msgstr "Démarrer une nouvelle discussion" -#: src/view/screens/Settings/index.tsx:862 -#~ msgid "Status page" -#~ msgstr "État du service" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "Démarrer une discussion avec {displayName}" -#: src/view/screens/Settings/index.tsx:896 +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "Démarrer les discussions" + +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" -msgstr "" - -#: src/screens/Signup/index.tsx:145 -#~ msgid "Step" -#~ msgstr "Étape" +msgstr "État du service" #: src/screens/Signup/index.tsx:154 msgid "Step {0} of {1}" -msgstr "" +msgstr "Étape {0} sur {1}" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "Stockage effacé, vous devez redémarrer l’application maintenant." #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Historique" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Envoyer" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "S’abonner" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "Abonnez-vous à @{0} pour utiliser ces étiquettes :" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "S’abonner à l’étiqueteur" @@ -4798,11 +4941,11 @@ msgstr "S’abonner à l’étiqueteur" msgid "Subscribe to the {0} feed" msgstr "S’abonner au fil d’actu {0}" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "S’abonner à cet étiqueteur" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "S’abonner à cette liste" @@ -4814,7 +4957,7 @@ msgstr "Suivis suggérés" msgid "Suggested for you" msgstr "Suggérés pour vous" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "Suggestif" @@ -4829,23 +4972,23 @@ msgstr "Soutien" msgid "Switch Account" msgstr "Changer de compte" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "Basculer sur {0}" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "Bascule le compte auquel vous êtes connectés vers" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "Système" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "Journal système" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "mot-clé" @@ -4861,41 +5004,47 @@ msgstr "Grand" msgid "Tap to view fully" msgstr "Tapper pour voir en entier" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "Technologie" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "Conditions générales" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "Conditions d’utilisation" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "Termes utilisés qui violent les normes de la communauté" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "texte" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "Champ de saisie de texte" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "Nous vous remercions. Votre rapport a été envoyé." -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "Qui contient les éléments suivants :" @@ -4903,15 +5052,11 @@ msgstr "Qui contient les éléments suivants :" msgid "That handle is already taken." msgstr "Ce pseudo est déjà occupé." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "Ce compte pourra interagir avec vous après le déblocage." -#: src/components/moderation/ModerationDetailsDialog.tsx:127 -#~ msgid "the author" -#~ msgstr "l’auteur" - #: src/view/screens/CommunityGuidelines.tsx:36 msgid "The Community Guidelines have been moved to <0/>" msgstr "Les lignes directrices communautaires ont été déplacées vers <0/>" @@ -4920,11 +5065,15 @@ msgstr "Les lignes directrices communautaires ont été déplacées vers <0/>" msgid "The Copyright Policy has been moved to <0/>" msgstr "Notre politique de droits d’auteur a été déplacée vers <0/>" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "Ce fil d’actu a été remplacé par Discover." + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "Les étiquettes suivantes ont été appliquées à votre compte." -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "Les étiquettes suivantes ont été appliquées à votre contenu." @@ -4932,8 +5081,8 @@ msgstr "Les étiquettes suivantes ont été appliquées à votre contenu." msgid "The following steps will help customize your Bluesky experience." msgstr "Les étapes suivantes vous aideront à personnaliser votre expérience avec Bluesky." -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "Ce post a peut-être été supprimé." @@ -4953,37 +5102,36 @@ msgstr "Nos conditions d’utilisation ont été déplacées vers" msgid "There are many feeds to try:" msgstr "Il existe de nombreux fils d’actu à essayer :" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "Il y a eu un problème de connexion au serveur, veuillez vérifier votre connexion Internet et réessayez." -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "Il y a eu un problème lors de la suppression du fil, veuillez vérifier votre connexion Internet et réessayez." -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "Il y a eu un problème lors de la mise à jour de vos fils d’actu, veuillez vérifier votre connexion Internet et réessayez." -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." -msgstr "" +msgstr "Il y a eu un problème de connexion à Tenor." -#: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" - -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "Il y a eu un problème de connexion au serveur" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "Il y a eu un problème de connexion à votre serveur" @@ -4991,7 +5139,7 @@ msgstr "Il y a eu un problème de connexion à votre serveur" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "Il y a eu un problème lors de la récupération des notifications. Appuyez ici pour réessayer." -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "Il y a eu un problème lors de la récupération des posts. Appuyez ici pour réessayer." @@ -5004,7 +5152,8 @@ msgstr "Il y a eu un problème lors de la récupération de la liste. Appuyez ic msgid "There was an issue fetching your lists. Tap here to try again." msgstr "Il y a eu un problème lors de la récupération de vos listes. Appuyez ici pour réessayer." -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "Il y a eu un problème lors de l’envoi de votre rapport. Veuillez vérifier votre connexion internet." @@ -5012,32 +5161,32 @@ msgstr "Il y a eu un problème lors de l’envoi de votre rapport. Veuillez vér msgid "There was an issue syncing your preferences with the server" msgstr "Il y a eu un problème de synchronisation de vos préférences avec le serveur" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "Il y a eu un problème lors de la récupération de vos mots de passe d’application" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "Il y a eu un problème ! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "Il y a eu un problème. Veuillez vérifier votre connexion Internet et réessayez." -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "Un problème inattendu s’est produit dans l’application. N’hésitez pas à nous faire savoir si cela vous est arrivé !" @@ -5058,14 +5207,22 @@ msgstr "Ce {screenDescription} a été signalé :" msgid "This account has requested that users sign in to view their profile." msgstr "Ce compte a demandé aux personnes de se connecter pour voir son profil." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "Ce compte est bloqué par un ou plusieurs de vos listes de modération. Pour le débloquer, veuillez visiter les listes directement et en retirer ce compte." + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "Cet appel sera envoyé à <0>{0}." -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "Cette discussion a été déconnectée" + #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." msgstr "Ce contenu a été masqué par la modération." @@ -5083,21 +5240,21 @@ msgstr "Ce contenu est hébergé par {0}. Voulez-vous activer les médias extern msgid "This content is not available because one of the users involved has blocked the other." msgstr "Ce contenu n’est pas disponible car l’un des comptes impliqués a bloqué l’autre." -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "Ce contenu n’est pas visible sans un compte Bluesky." -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "Cette fonctionnalité est en version bêta. Vous pouvez en savoir plus sur les exportations de dépôts dans <0>ce blogpost." -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "Ce fil d’actu reçoit actuellement un trafic important, il est temporairement indisponible. Veuillez réessayer plus tard." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "Ce fil d’actu est vide !" @@ -5105,27 +5262,31 @@ msgstr "Ce fil d’actu est vide !" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "Ce fil d’actu est vide ! Vous devriez peut-être suivre plus de comptes ou ajuster vos paramètres de langue." +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "Ce fil d’actu n’est plus disponible. Nous vous montrons <0>Discover à la place." + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "Ces informations ne sont pas partagées avec d’autres personnes." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "Ceci est important au cas où vous auriez besoin de changer d’e-mail ou de réinitialiser votre mot de passe." -#: src/components/moderation/ModerationDetailsDialog.tsx:124 -#~ msgid "This label was applied by {0}." -#~ msgstr "Cette étiquette a été apposée par {0}." - #: src/components/moderation/ModerationDetailsDialog.tsx:127 msgid "This label was applied by <0>{0}." -msgstr "" +msgstr "Cette étiquette a été apposée par <0>{0}." #: src/components/moderation/ModerationDetailsDialog.tsx:125 msgid "This label was applied by the author." -msgstr "" +msgstr "Cette étiquette a été apposée par l’auteur·ice." -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "Cette étiquette a été apposée par vous." + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "Cet étiqueteur n’a pas déclaré les étiquettes qu’il publie et peut ne pas être actif." @@ -5133,7 +5294,7 @@ msgstr "Cet étiqueteur n’a pas déclaré les étiquettes qu’il publie et pe msgid "This link is taking you to the following website:" msgstr "Ce lien vous conduit au site Web suivant :" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "Cette liste est vide !" @@ -5141,11 +5302,11 @@ msgstr "Cette liste est vide !" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "Ce service de modération n’est pas disponible. Voir ci-dessous pour plus de détails. Si le problème persiste, contactez-nous." -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "Ce nom est déjà utilisé" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "Ce post a été supprimé." @@ -5166,7 +5327,7 @@ msgstr "Ce profil n’est visible que pour les personnes connectées. Il ne sera msgid "This service has not provided terms of service or a privacy policy." msgstr "Ce service n’a pas fourni de conditions d’utilisation ni de politique de confidentialité." -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "Cela devrait créer un enregistrement de domaine à :" @@ -5174,6 +5335,10 @@ msgstr "Cela devrait créer un enregistrement de domaine à :" msgid "This user doesn't have any followers." msgstr "Ce compte n’a pas d’abonné·e·s." +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "Ce compte vous a bloqué·e" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5195,20 +5360,16 @@ msgstr "Ce compte est inclus dans la liste <0>{0} que vous avez masquée." msgid "This user isn't following anyone." msgstr "Ce compte ne suit personne." -#: src/view/com/modals/SelfLabel.tsx:137 -#~ msgid "This warning is only available for posts with media attached." -#~ msgstr "Cet avertissement n’est disponible que pour les posts contenant des médias." - -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "Cela supprimera {0} de vos mots masqués. Vous pourrez toujours le réintégrer plus tard." -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "Préférences des fils de discussion" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "Préférences des fils de discussion" @@ -5220,15 +5381,19 @@ msgstr "Mode arborescent" msgid "Threads Preferences" msgstr "Préférences des fils de discussion" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." +msgstr "Pour désactiver le 2FA par e-mail, veuillez vérifier votre accès à l’adresse e-mail." + +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." msgstr "" #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "À qui souhaitez-vous envoyer ce rapport ?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "Basculer entre les options pour les mots masqués." @@ -5261,60 +5426,69 @@ msgctxt "action" msgid "Try again" msgstr "Réessayer" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" -msgstr "" +msgstr "Authentification à deux facteurs" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" -msgstr "" +msgstr "Écrivez votre message ici" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "Type :" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "Débloquer la liste" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "Réafficher cette liste" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "Impossible de contacter votre service. Veuillez vérifier votre connexion Internet." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "Débloquer" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "Débloquer" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "Débloquer le compte" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "Débloquer le compte" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "Débloquer le compte ?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "Annuler le repost" @@ -5328,7 +5502,7 @@ msgstr "Se désabonner" msgid "Unfollow" msgstr "Se désabonner" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "Se désabonner de {0}" @@ -5337,16 +5511,12 @@ msgstr "Se désabonner de {0}" msgid "Unfollow Account" msgstr "Se désabonner du compte" -#: src/view/com/util/post-ctrls/PostCtrls.tsx:197 -#~ msgid "Unlike" -#~ msgstr "Déliker" - -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "Déliker ce fil d’actu" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "Réafficher" @@ -5363,37 +5533,42 @@ msgstr "Réafficher ce compte" msgid "Unmute all {displayTag} posts" msgstr "Réafficher tous les posts {displayTag}" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" +msgstr "Réafficher la conversation" #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "Réafficher ce fil de discussion" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "Désépingler" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "Désépingler de l’accueil" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "Supprimer la liste de modération" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "Désépingler de vos fil d’actu" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "Se désabonner" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "Se désabonner de cet étiqueteur" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "Contenu sexuel non désiré" @@ -5401,7 +5576,7 @@ msgstr "Contenu sexuel non désiré" msgid "Update {displayName} in Lists" msgstr "Mise à jour de {displayName} dans les listes" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "Mettre à jour pour {handle}" @@ -5409,42 +5584,46 @@ msgstr "Mettre à jour pour {handle}" msgid "Updating..." msgstr "Mise à jour…" -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "Envoyer plutôt une photo" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "Envoyer un fichier texte vers :" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "Envoyer à partir de l’appareil photo" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "Envoyer à partir de fichiers" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "Envoyer à partir de la photothèque" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "Utiliser un fichier sur votre serveur" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "Utilisez les mots de passe de l’appli pour se connecter à d’autres clients Bluesky sans donner un accès complet à votre compte ou à votre mot de passe." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "Utiliser bsky.social comme hébergeur" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "Utiliser le fournisseur par défaut" @@ -5458,11 +5637,15 @@ msgstr "Utiliser le navigateur interne à l’appli" msgid "Use my default browser" msgstr "Utiliser mon navigateur par défaut" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "Utiliser les recommandés" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "Utiliser le panneau DNS" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "Utilisez-le pour vous connecter à l’autre application avec votre identifiant." @@ -5479,6 +5662,10 @@ msgstr "Compte bloqué" msgid "User Blocked by \"{0}\"" msgstr "Compte bloqué par « {0} »" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "Compte bloqué par liste" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "Compte bloqué par liste" @@ -5496,13 +5683,13 @@ msgstr "Compte qui vous bloque" msgid "User list by {0}" msgstr "Liste de compte de {0}" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "Liste de compte par <0/>" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "Liste de compte par vous" @@ -5518,11 +5705,11 @@ msgstr "Liste de compte mise à jour" msgid "User Lists" msgstr "Listes de comptes" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "Pseudo ou e-mail" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "Comptes" @@ -5530,6 +5717,13 @@ msgstr "Comptes" msgid "users followed by <0/>" msgstr "comptes suivis par <0/>" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "Comptes que je suis" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "Comptes dans « {0} »" @@ -5538,56 +5732,48 @@ msgstr "Comptes dans « {0} »" msgid "Users that have liked this content or profile" msgstr "Comptes qui ont liké ce contenu ou ce profil" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "Valeur :" -#: src/view/com/modals/ChangeHandle.tsx:510 -#~ msgid "Verify {0}" -#~ msgstr "Vérifier {0}" - -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" -msgstr "" +msgstr "Vérifier l’enregistrement DNS" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "Confirmer l’e-mail" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "Confirmer mon e-mail" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "Confirmer mon e-mail" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "Confirmer le nouvel e-mail" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" -msgstr "" +msgstr "Vérifier le fichier texte" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "Vérifiez votre e-mail" -#: src/view/screens/Settings/index.tsx:852 -#~ msgid "Version {0}" -#~ msgstr "Version {0}" - -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" -msgstr "" +msgstr "Version {appVersion} {bundleInfo}" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "Jeux vidéo" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "Voir l’avatar de {0}" @@ -5595,25 +5781,25 @@ msgstr "Voir l’avatar de {0}" msgid "View debug entry" msgstr "Afficher l’entrée de débogage" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "Voir les détails" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "Voir les détails pour signaler une violation du droit d’auteur" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "Voir le fil de discussion entier" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "Voir les informations sur ces étiquettes" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "Voir le profil" @@ -5625,7 +5811,7 @@ msgstr "Afficher l’avatar" msgid "View the labeling service provided by @{0}" msgstr "Voir le service d’étiquetage fourni par @{0}" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "Voir les comptes qui a liké ce fil d’actu" @@ -5653,11 +5839,15 @@ msgstr "Avertir du contenu et filtrer des fils d’actu" msgid "We couldn't find any results for that hashtag." msgstr "Nous n’avons trouvé aucun résultat pour ce mot-clé." +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "Nous ne pouvons pas charger cette conversation" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "Nous estimons que votre compte sera prêt dans {estimatedTime}." -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "Nous espérons que vous passerez un excellent moment. N’oubliez pas que Bluesky est :" @@ -5665,7 +5855,7 @@ msgstr "Nous espérons que vous passerez un excellent moment. N’oubliez pas qu msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "Nous n’avons plus de posts provenant des comptes que vous suivez. Voici le dernier de <0/>." -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "Nous vous recommandons d’éviter les mots communs qui apparaissent dans de nombreux posts, car cela peut avoir pour conséquence qu’aucun post ne s’affiche." @@ -5681,7 +5871,7 @@ msgstr "Nous n’avons pas pu charger vos préférences en matière de date de n msgid "We were unable to load your configured labelers at this time." msgstr "Nous n’avons pas pu charger vos étiqueteurs configurés pour le moment." -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "Nous n’avons pas pu nous connecter. Veuillez réessayer pour continuer à configurer votre compte. Si l’échec persiste, vous pouvez sauter cette étape." @@ -5689,10 +5879,14 @@ msgstr "Nous n’avons pas pu nous connecter. Veuillez réessayer pour continuer msgid "We will let you know when your account is ready." msgstr "Nous vous informerons lorsque votre compte sera prêt." -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "Nous utiliserons ces informations pour personnaliser votre expérience." +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "Nous avons des soucis de réseau, réessayez" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "Nous sommes ravis de vous accueillir !" @@ -5701,7 +5895,7 @@ msgstr "Nous sommes ravis de vous accueillir !" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "Nous sommes désolés, mais nous n’avons pas pu charger cette liste. Si cela persiste, veuillez contacter l’origine de la liste, @{handleOrDid}." -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "Nous sommes désolés, mais nous n’avons pas pu charger vos mots masqués pour le moment. Veuillez réessayer." @@ -5709,26 +5903,22 @@ msgstr "Nous sommes désolés, mais nous n’avons pas pu charger vos mots masqu msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "Nous sommes désolés, mais votre recherche a été annulée. Veuillez réessayer dans quelques minutes." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "Nous sommes désolés ! La page que vous recherchez est introuvable." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "Nous sommes désolés ! Vous ne pouvez vous abonner qu’à dix étiqueteurs, et vous avez atteint votre limite de dix." -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:48 -#~ msgid "Welcome to <0>Bluesky" -#~ msgstr "Bienvenue sur <0>Bluesky" - -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "Quels sont vos centres d’intérêt ?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "Quoi de neuf ?" @@ -5740,28 +5930,45 @@ msgstr "Quelles sont les langues utilisées dans ce post ?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "Quelles langues aimeriez-vous voir apparaître dans vos fils d’actu algorithmiques ?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "Qui peut discuter avec vous ?" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "Qui peut répondre ?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "Oups !" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:63 +#~ msgid "Why should this account be reviewed?" +#~ msgstr "Pourquoi ce compte devrait-il être examiné ?" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "Pourquoi ce contenu doit-il être examiné ?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "Pourquoi ce fil d’actu doit-il être examiné ?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "Pourquoi cette liste devrait-elle être examinée ?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "Pourquoi ce message devrait-il être examiné ?" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "Pourquoi ce post devrait-il être examiné ?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "Pourquoi ce compte doit-il être examiné ?" @@ -5769,37 +5976,37 @@ msgstr "Pourquoi ce compte doit-il être examiné ?" msgid "Wide" msgstr "Large" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" -msgstr "" +msgstr "Écrire un message" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "Rédiger un post" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "Rédigez votre réponse" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "Écrivain·e·s" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "Oui" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" -msgstr "" +msgstr "Hier, {time}" #: src/screens/Deactivated.tsx:136 msgid "You are in line." @@ -5818,6 +6025,14 @@ msgstr "Vous pouvez aussi découvrir de nouveaux fils d’actu personnalisés à msgid "You can change these settings later." msgstr "Vous pouvez modifier ces paramètres ultérieurement." +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "Vous pouvez changer cela à tout moment." + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -5831,22 +6046,22 @@ msgstr "Vous n’avez pas d’abonné·e·s." msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "Vous n’avez encore aucun code d’invitation ! Nous vous en enverrons lorsque vous serez sur Bluesky depuis un peu plus longtemps." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "Vous n’avez encore aucun fil épinglé." -#: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "Vous n’avez encore aucun fil enregistré !" - -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "Vous n’avez encore aucun fil enregistré." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "Vous avez bloqué cet auteur ou vous avez été bloqué par celui-ci." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "Vous avez bloqué ce compte" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -5877,6 +6092,14 @@ msgstr "Vous avez masqué ce compte." msgid "You have muted this user" msgstr "Vous avez masqué ce compte" +#: src/screens/Messages/List/index.tsx:158 +#~ msgid "You have no chats yet. Start a conversation with someone!" +#~ msgstr "Vous n’avez pas de discussions pour l’instant. Démarrez une conversation avec quelqu’un !" + +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "Vous n’avez aucun fil." @@ -5886,15 +6109,11 @@ msgstr "Vous n’avez aucun fil." msgid "You have no lists." msgstr "Vous n’avez aucune liste." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" - #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." msgstr "Vous n’avez pas encore bloqué de comptes. Pour bloquer un compte, allez sur son profil et sélectionnez « Bloquer le compte » dans le menu de son compte." -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "Vous n’avez encore créé aucun mot de passe pour l’appli. Vous pouvez en créer un en cliquant sur le bouton suivant." @@ -5902,11 +6121,19 @@ msgstr "Vous n’avez encore créé aucun mot de passe pour l’appli. Vous pouv msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." msgstr "Vous n’avez encore masqué aucun compte. Pour masquer un compte, allez sur son profil et sélectionnez « Masquer le compte » dans le menu de son compte." -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "Vous n’avez pas encore masqué de mot ou de mot-clé" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "Vous pouvez faire appel des étiquettes poseés par des tiers si vous pensez qu’elles ont été appliquées par erreur." + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "Vous pouvez faire appel de ces étiquettes si vous estimez qu’elles ont été apposées par erreur." @@ -5918,7 +6145,7 @@ msgstr "Vous devez avoir 13 ans ou plus pour vous inscrire." msgid "You must be 18 years or older to enable adult content" msgstr "Vous devez avoir 18 ans ou plus pour activer le contenu pour adultes." -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "Vous devez sélectionner au moins un étiqueteur pour un rapport" @@ -5934,9 +6161,9 @@ msgstr "Vous recevrez désormais des notifications pour ce fil de discussion" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "Vous recevrez un e-mail contenant un « code de réinitialisation ». Saisissez ce code ici, puis votre nouveau mot de passe." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" -msgstr "" +msgstr "Vous : {0}" #: src/screens/Onboarding/StepModeration/index.tsx:60 msgid "You're in control" @@ -5948,7 +6175,7 @@ msgstr "Vous avez le contrôle" msgid "You're in line" msgstr "Vous êtes dans la file d’attente" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "Vous êtes prêt à partir !" @@ -5965,11 +6192,11 @@ msgstr "Vous avez atteint la fin de votre fil d’actu ! Trouvez d’autres com msgid "Your account" msgstr "Votre compte" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "Votre compte a été supprimé" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "Le dépôt de votre compte, qui contient toutes les données publiques, peut être téléchargé sous la forme d’un fichier « CAR ». Ce fichier n’inclut pas les éléments multimédias, tels que les images, ni vos données privées, qui doivent être récupérées séparément." @@ -5977,6 +6204,10 @@ msgstr "Le dépôt de votre compte, qui contient toutes les données publiques, msgid "Your birth date" msgstr "Votre date de naissance" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "Vos discussions ont été désactivées" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "Votre choix sera enregistré, mais vous pourrez le modifier ultérieurement dans les paramètres." @@ -5986,16 +6217,16 @@ msgid "Your default feed is \"Following\"" msgstr "Votre fil d’actu par défaut est « Following »" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "Votre e-mail semble être invalide." -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "Votre e-mail a été mis à jour, mais n’a pas été vérifié. L’étape suivante consiste à vérifier votre nouvel e-mail." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "Votre e-mail n’a pas encore été vérifié. Il s’agit d’une mesure de sécurité importante que nous recommandons." @@ -6007,11 +6238,11 @@ msgstr "Votre fil d’actu des comptes suivis est vide ! Suivez plus de comptes msgid "Your full handle will be" msgstr "Votre nom complet sera" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "Votre pseudo complet sera <0>@{0}" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "Vos mots masqués" @@ -6019,22 +6250,26 @@ msgstr "Vos mots masqués" msgid "Your password has been changed successfully!" msgstr "Votre mot de passe a été modifié avec succès !" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "Votre post a été publié" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "Vos posts, les likes et les blocages sont publics. Les silences (comptes masqués) sont privés." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "Votre profil" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "Votre réponse a été publiée" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "Votre rapport sera envoyé au Service de Modération de Bluesky" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "Votre pseudo" diff --git a/src/locale/locales/ga/messages.po b/src/locale/locales/ga/messages.po index 1d390e9673..1cc2748f0e 100644 --- a/src/locale/locales/ga/messages.po +++ b/src/locale/locales/ga/messages.po @@ -12,7 +12,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : n<7 ? 2 : n < 11 ? 3 : 4\n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(gan ríomhphost)" @@ -20,24 +20,32 @@ msgstr "(gan ríomhphost)" msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" msgstr "" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" msgstr "" @@ -46,11 +54,11 @@ msgstr "" msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -62,7 +70,7 @@ msgstr "" msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" msgstr "" @@ -70,6 +78,10 @@ msgstr "" msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" msgstr "" +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "" + #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -82,22 +94,26 @@ msgstr "" msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} á leanúint" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" -#: src/view/shell/Drawer.tsx:464 +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} gan léamh" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" msgstr "" @@ -105,11 +121,11 @@ msgstr "" msgid "<0/> members" msgstr "<0/> ball" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" msgstr "" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" msgstr "" @@ -134,7 +150,7 @@ msgstr "" #~ msgid "<0>Follow some<1>Recommended<2>Users" #~ msgstr "<0>Lean cúpla<1>Úsáideoirí<2>Molta" -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." msgstr "" @@ -146,7 +162,7 @@ msgstr "" msgid "⚠Invalid Handle" msgstr "⚠Leasainm Neamhbhailí" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "Dearbhú 2FA" @@ -160,11 +176,11 @@ msgid "Access profile and other navigation links" msgstr "Oscail próifíl agus nascanna eile" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "Inrochtaineacht" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "Socruithe inrochtaineachta" @@ -177,21 +193,21 @@ msgstr "Socruithe Inrochtaineachta" #~ msgid "account" #~ msgstr "cuntas" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "Cuntas" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "Cuntas blocáilte" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "Cuntas leanaithe" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "Cuireadh an cuntas i bhfolach" @@ -212,55 +228,56 @@ msgstr "Roghanna cuntais" msgid "Account removed from quick access" msgstr "Baineadh an cuntas ón mearliosta" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "Cuntas díbhlocáilte" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "Cuntas díleanaithe" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "Níl an cuntas i bhfolach a thuilleadh" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "Cuir leis" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "Cuir rabhadh faoin ábhar leis" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "Cuir cuntas leis an liosta seo" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "Cuir cuntas leis seo" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "Cuir téacs malartach leis seo" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "Cuir pasfhocal aipe leis seo" @@ -272,15 +289,23 @@ msgstr "Cuir pasfhocal aipe leis seo" #~ msgid "Add link card:" #~ msgstr "Cuir cárta leanúna leis seo:" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "Cuir focal atá le cur i bhfolach anseo le haghaidh socruithe a rinne tú" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "Cuir focail agus clibeanna a cuireadh i bhfolach leis seo" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "Cuir an taifead DNS seo a leanas le d'fhearann:" @@ -289,7 +314,7 @@ msgstr "Cuir an taifead DNS seo a leanas le d'fhearann:" msgid "Add to Lists" msgstr "Cuir le liostaí" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "Cuir le mo chuid fothaí" @@ -302,17 +327,17 @@ msgstr "Cuir le mo chuid fothaí" msgid "Added to list" msgstr "Curtha leis an liosta" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "Curtha le mo chuid fothaí" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "Sonraigh an méid moltaí ar fhreagra atá de dhíth le bheith le feiceáil i d'fhotha." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "Ábhar do dhaoine fásta" @@ -321,14 +346,29 @@ msgid "Adult content is disabled." msgstr "Tá ábhar do dhaoine fásta curtha ar ceal." #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "Ardleibhéal" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "Na fothaí go léir a shábháil tú, in áit amháin." +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -338,13 +378,13 @@ msgstr "An bhfuil cód agat cheana?" msgid "Already signed in as @{0}" msgstr "Logáilte isteach cheana mar @{0}" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -358,24 +398,24 @@ msgstr "" msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "Cuireann an téacs malartach síos ar na híomhánna do dhaoine atá dall nó a bhfuil lagú radhairc orthu agus cuireann sé an comhthéacs ar fáil do chuile dhuine." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "Cuireadh teachtaireacht ríomhphoist chuig {0}. Tá cód dearbhaithe faoi iamh. Is féidir leat an cód a chur isteach thíos anseo." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "Cuireadh teachtaireacht ríomhphoist chuig do sheanseoladh. {0}. Tá cód dearbhaithe faoi iamh." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "Tharla earráid" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "Rud nach bhfuil ar fáil sna roghanna seo" @@ -388,7 +428,7 @@ msgstr "Rud nach bhfuil ar fáil sna roghanna seo" msgid "An issue occurred, please try again." msgstr "Tharla fadhb. Déan iarracht eile, le do thoil." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" msgstr "" @@ -397,7 +437,7 @@ msgstr "" msgid "and" msgstr "agus" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "Ainmhithe" @@ -405,7 +445,7 @@ msgstr "Ainmhithe" msgid "Animated GIF" msgstr "GIF beo" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "Iompar Frithshóisialta" @@ -413,38 +453,39 @@ msgstr "Iompar Frithshóisialta" msgid "App Language" msgstr "Teanga na haipe" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "Pasfhocal na haipe scriosta" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "Ní féidir ach litreacha, uimhreacha, spásanna, daiseanna agus fostríocanna a bheith in ainmneacha phasfhocal na haipe." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "Caithfear 4 charachtar ar a laghad a bheith in ainmneacha phasfhocal na haipe." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "Socruithe phasfhocal na haipe" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "Pasfhocal na haipe" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "Achomharc" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "Achomharc in aghaidh lipéid \"{0}\"" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" msgstr "" @@ -452,31 +493,51 @@ msgstr "" #~ msgid "Appeal submitted." #~ msgstr "Achomharc déanta" -#: src/view/screens/Settings/index.tsx:430 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "" + +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "Cuma" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "An bhfuil tú cinnte gur mhaith leat pasfhocal na haipe “{name}” a scriosadh?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "An bhfuil tú cinnte gur mhaith leat {0} a bhaint de do chuid fothaí?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "An bhfuil tú cinnte gur mhaith leat an dréacht seo a scriosadh?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "Lánchinnte?" @@ -484,11 +545,11 @@ msgstr "Lánchinnte?" msgid "Are you writing in <0>{0}?" msgstr "An bhfuil tú ag scríobh sa teanga <0>{0}?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "Ealaín" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "Lomnochtacht ealaíonta nó gan a bheith gáirsiúil." @@ -496,18 +557,20 @@ msgstr "Lomnochtacht ealaíonta nó gan a bheith gáirsiúil." msgid "At least 3 characters" msgstr "3 charachtar ar a laghad" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -517,7 +580,7 @@ msgstr "Ar ais" msgid "Based on your interest in {interestsText}" msgstr "Toisc go bhfuil suim agat in {interestsText}" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "Bunrudaí" @@ -525,17 +588,17 @@ msgstr "Bunrudaí" msgid "Birthday" msgstr "Breithlá" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "Breithlá:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "Blocáil" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" msgstr "" @@ -548,15 +611,15 @@ msgstr "Blocáil an cuntas seo" msgid "Block Account?" msgstr "Blocáil an cuntas seo?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "Blocáil na cuntais seo" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "Liosta blocála" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "An bhfuil fonn ort na cuntais seo a bhlocáil?" @@ -582,15 +645,15 @@ msgstr "Ní féidir leis na cuntais bhlocáilte freagra a thabhairt ar do chomhr msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "Ní féidir leis na cuntais bhlocáilte freagra a thabhairt ar do chomhráite, tagairt a dhéanamh duit, ná aon phlé eile a bheith acu leat. Ní fheicfidh tú a gcuid ábhair agus ní fheicfidh siad do chuid ábhair." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "Postáil bhlocáilte." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "Ní bhacann blocáil an lipéadóir seo ar lipéid a chur ar do chuntas." -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "Tá an bhlocáil poiblí. Ní féidir leis na cuntais bhlocáilte freagra a thabhairt ar do chomhráite, tagairt a dhéanamh duit, ná aon phlé eile a bheith acu leat." @@ -635,10 +698,15 @@ msgstr "Déan íomhánna doiléir" msgid "Blur images and filter from feeds" msgstr "Déan íomhánna doiléir agus scag ó fhothaí iad" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "Leabhair" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "" + #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "Gnó" @@ -675,7 +743,7 @@ msgstr "leat" msgid "Camera" msgstr "Ceamara" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "Ní féidir ach litreacha, uimhreacha, spásanna, daiseanna agus fostríocanna a bheith ann. Caithfear 4 charachtar ar a laghad a bheith ann agus gan níos mó ná 32 charachtar." @@ -683,11 +751,11 @@ msgstr "Ní féidir ach litreacha, uimhreacha, spásanna, daiseanna agus fostrí #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -699,26 +767,26 @@ msgstr "Ní féidir ach litreacha, uimhreacha, spásanna, daiseanna agus fostrí #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "Cealaigh" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "Cealaigh" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "Ná scrios an chuntas" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "Ná hathraigh an leasainm" @@ -743,34 +811,34 @@ msgstr "Cealaigh an cuardach" msgid "Cancels opening the linked website" msgstr "Cuireann sé seo oscailt an tsuímh gréasáin atá nasctha ar ceal" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "Athraigh" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "Athraigh" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "Athraigh mo leasainm" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "Athraigh mo leasainm" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "Athraigh mo ríomhphost" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "Athraigh mo phasfhocal" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "Athraigh mo phasfhocal" @@ -778,24 +846,34 @@ msgstr "Athraigh mo phasfhocal" msgid "Change post language to {0}" msgstr "Athraigh an teanga phostála go {0}" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "Athraigh do ríomhphost" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" msgstr "" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" msgstr "" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" msgstr "" @@ -816,11 +894,11 @@ msgstr "Seiceáil mo stádas" #~ msgid "Check out some recommended users. Follow them to see similar users." #~ msgstr "Cuir súil ar na húsáideoirí seo. Lean iad le húsáideoirí atá cosúil leo a fheiceáil." -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "Féach ar do bhosca ríomhphoist le haghaidh cód dearbhaithe agus cuir isteach anseo é." -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "Féach ar do bhosca ríomhphoist le haghaidh teachtaireachta leis an gcód dearbhaithe atá le cur isteach thíos." @@ -832,7 +910,7 @@ msgstr "Roghnaigh “Chuile Dhuine” nó “Duine Ar Bith”" msgid "Choose Service" msgstr "Roghnaigh Seirbhís" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "Roghnaigh na halgartaim le haghaidh do chuid sainfhothaí." @@ -840,6 +918,10 @@ msgstr "Roghnaigh na halgartaim le haghaidh do chuid sainfhothaí." #~ msgid "Choose the algorithms that power your experience with custom feeds." #~ msgstr "Roghnaigh na halgartaim a shainíonn an dóigh a n-oibríonn do chuid sainfhothaí." +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "Roghnaigh do phríomhfhothaí" @@ -848,19 +930,19 @@ msgstr "Roghnaigh do phríomhfhothaí" msgid "Choose your password" msgstr "Roghnaigh do phasfhocal" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "Glan na sonraí oidhreachta ar fad atá i dtaisce." -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "Glan na sonraí oidhreachta ar fad atá i dtaisce. Ansin atosaigh." -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "Glan na sonraí ar fad atá i dtaisce." -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "Glan na sonraí ar fad atá i dtaisce. Ansin atosaigh." @@ -869,11 +951,11 @@ msgstr "Glan na sonraí ar fad atá i dtaisce. Ansin atosaigh." msgid "Clear search query" msgstr "Glan an cuardach" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "Glanann seo na sonraí oidhreachta ar fad atá i dtaisce" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "Glanann seo na sonraí ar fad atá i dtaisce" @@ -881,6 +963,10 @@ msgstr "Glanann seo na sonraí ar fad atá i dtaisce" msgid "click here" msgstr "cliceáil anseo" +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "" + #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" msgstr "Cliceáil anseo le clár na clibe le haghaidh {tag} a oscailt" @@ -889,19 +975,28 @@ msgstr "Cliceáil anseo le clár na clibe le haghaidh {tag} a oscailt" #~ msgid "Click here to open tag menu for #{tag}" #~ msgstr "Cliceáil anseo le clár na clibe le haghaidh #{tag} a oscailt" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "Aeráid" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "Dún" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "Dún an dialóg oscailte" @@ -913,7 +1008,7 @@ msgstr "Dún an rabhadh" msgid "Close bottom drawer" msgstr "Dún an tarraiceán íochtair" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "Dún an dialóg" @@ -929,6 +1024,10 @@ msgstr "Dún an íomhá" msgid "Close image viewer" msgstr "Dún amharcóir na n-íomhánna" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "Dún an buntásc" @@ -946,7 +1045,7 @@ msgstr "Dúnann sé seo an barra nascleanúna ag an mbun" msgid "Closes password update alert" msgstr "Dúnann sé seo an rabhadh faoi uasdátú an phasfhocail" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "Dúnann sé seo cumadóir na postálacha agus ní shábhálann sé an dréacht" @@ -958,11 +1057,11 @@ msgstr "Dúnann sé seo an t-amharcóir le haghaidh íomhá an cheanntáisc" msgid "Collapses list of users for a given notification" msgstr "Laghdaíonn sé seo liosta na n-úsáideoirí le haghaidh an fhógra sin" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "Greann" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "Greannáin" @@ -971,7 +1070,7 @@ msgstr "Greannáin" msgid "Community Guidelines" msgstr "Treoirlínte an phobail" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "Críochnaigh agus tosaigh ag baint úsáide as do chuntas." @@ -979,7 +1078,7 @@ msgstr "Críochnaigh agus tosaigh ag baint úsáide as do chuntas." msgid "Complete the challenge" msgstr "Freagair an dúshlán" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "Scríobh postálacha chomh fada le {MAX_GRAPHEME_LENGTH} litir agus carachtair eile" @@ -1001,18 +1100,18 @@ msgstr "Le socrú i <0>socruithe na modhnóireachta." #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "Dearbhaigh" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "Dearbhaigh an t-athrú" @@ -1020,7 +1119,7 @@ msgstr "Dearbhaigh an t-athrú" msgid "Confirm content language settings" msgstr "Dearbhaigh socruithe le haghaidh teanga an ábhair" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "Dearbhaigh scriosadh an chuntais" @@ -1032,17 +1131,17 @@ msgstr "Dearbhaigh d'aois:" msgid "Confirm your birthdate" msgstr "Dearbhaigh do bhreithlá" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "Cód dearbhaithe" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "Ag nascadh…" @@ -1089,8 +1188,9 @@ msgstr "Cúlra an roghchláir comhthéacs, cliceáil chun an roghchlár a dhúna #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "Lean ar aghaidh" @@ -1100,8 +1200,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "Lean ort mar {0} (atá logáilte isteach faoi láthair)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1115,22 +1216,26 @@ msgstr "Lean ar aghaidh go dtí an chéad chéim eile" msgid "Continue to the next step without following any accounts" msgstr "Lean ar aghaidh go dtí an chéad chéim eile gan aon chuntas a leanúint" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "Cócaireacht" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "Cóipeáilte" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "Leagan cóipeáilte sa ghearrthaisce" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1140,15 +1245,15 @@ msgstr "Cóipeáilte sa ghearrthaisce" msgid "Copied!" msgstr "Cóipeáilte!" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "Cóipeálann sé seo pasfhocal na haipe" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "Cóipeáil" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "Cóipeáil {0}" @@ -1157,7 +1262,7 @@ msgstr "Cóipeáil {0}" msgid "Copy code" msgstr "Cóipeáil an cód" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "Cóipeáil an nasc leis an liosta" @@ -1166,8 +1271,8 @@ msgstr "Cóipeáil an nasc leis an liosta" msgid "Copy link to post" msgstr "Cóipeáil an nasc leis an bpostáil" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" msgstr "" @@ -1181,36 +1286,36 @@ msgstr "Cóipeáil téacs na postála" msgid "Copyright Policy" msgstr "An polasaí maidir le cóipcheart" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" msgstr "" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "Ní féidir an fotha a lódáil" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "Ní féidir an liosta a lódáil" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "" -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" msgstr "" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +#~ msgid "Could not unmute chat" +#~ msgstr "" #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "Cruthaigh cuntas nua" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "Cruthaigh cuntas nua Bluesky" @@ -1223,7 +1328,11 @@ msgstr "Cruthaigh cuntas" msgid "Create an account" msgstr "Cruthaigh cuntas" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "Cruthaigh pasfhocal aipe" @@ -1232,11 +1341,11 @@ msgstr "Cruthaigh pasfhocal aipe" msgid "Create new account" msgstr "Cruthaigh cuntas nua" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "Cruthaigh tuairisc do {0}" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "Cruthaíodh {0}" @@ -1244,7 +1353,7 @@ msgstr "Cruthaíodh {0}" #~ msgid "Creates a card with a thumbnail. The card links to {url}" #~ msgstr "Cruthaíonn sé seo cárta le mionsamhail. Nascann an cárta le {url}." -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "Cultúr" @@ -1253,12 +1362,12 @@ msgstr "Cultúr" msgid "Custom" msgstr "Saincheaptha" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "Sainfhearann" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "Cruthaíonn an pobal fothaí chun eispéiris nua a chur ar fáil duit, agus chun cabhrú leat teacht ar an ábhar a thaitníonn leat" @@ -1266,8 +1375,8 @@ msgstr "Cruthaíonn an pobal fothaí chun eispéiris nua a chur ar fáil duit, a msgid "Customize media from external sites." msgstr "Oiriúnaigh na meáin ó shuíomhanna seachtracha" -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "Dorcha" @@ -1275,7 +1384,7 @@ msgstr "Dorcha" msgid "Dark mode" msgstr "Modh dorcha" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "Téama Dorcha" @@ -1283,7 +1392,7 @@ msgstr "Téama Dorcha" msgid "Date of birth" msgstr "Dáta breithe" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "Dífhabhtaigh Modhnóireacht" @@ -1291,14 +1400,14 @@ msgstr "Dífhabhtaigh Modhnóireacht" msgid "Debug panel" msgstr "Painéal dífhabhtaithe" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "Scrios" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "Scrios an cuntas" @@ -1306,39 +1415,44 @@ msgstr "Scrios an cuntas" #~ msgid "Delete Account" #~ msgstr "Scrios an Cuntas" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" msgstr "" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "Scrios pasfhocal na haipe" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "Scrios pasfhocal na haipe?" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" - -#: src/view/screens/ProfileList.tsx:417 -msgid "Delete List" -msgstr "Scrios an liosta" - -#: src/components/dms/MessageMenu.tsx:119 -msgid "Delete message" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" msgstr "" #: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "" + +#: src/view/screens/ProfileList.tsx:470 +msgid "Delete List" +msgstr "Scrios an liosta" + +#: src/components/dms/MessageMenu.tsx:122 +msgid "Delete message" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "Scrios mo chuntas" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "Scrios mo chuntas…" @@ -1347,7 +1461,7 @@ msgstr "Scrios mo chuntas…" msgid "Delete post" msgstr "Scrios an phostáil" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "An bhfuil fonn ort an liosta seo a scriosadh?" @@ -1359,10 +1473,14 @@ msgstr "An bhfuil fonn ort an phostáil seo a scriosadh?" msgid "Deleted" msgstr "Scriosta" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "Scriosadh an phostáil." +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1370,23 +1488,27 @@ msgstr "Scriosadh an phostáil." msgid "Description" msgstr "Cur síos" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" msgstr "" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "Ar mhaith leat rud éigin a rá?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "Breacdhorcha" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "Ná seinn GIFanna go huathoibríoch" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "Ná húsáid 2FA trí ríomhphost" @@ -1401,15 +1523,17 @@ msgstr "Ná húsáid aiseolas haptach" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "Díchumasaithe" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "Ná sábháil" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "Faigh réidh leis an dréacht?" @@ -1423,7 +1547,7 @@ msgstr "Cuir ina luí ar aipeanna gan mo chuntas a thaispeáint d'úsáideoirí msgid "Discover new custom feeds" msgstr "Aimsigh sainfhothaí nua" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "Aimsigh Fothaí Nua" @@ -1435,7 +1559,7 @@ msgstr "Ainm taispeána" msgid "Display Name" msgstr "Ainm Taispeána" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "Painéal DNS" @@ -1447,11 +1571,11 @@ msgstr "Níl lomnochtacht ann." msgid "Doesn't begin or end with a hyphen" msgstr "Ní thosaíonn ná chríochnaíonn sé le fleiscín" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "Luach an Fhearainn" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "Fearann dearbhaithe!" @@ -1459,23 +1583,23 @@ msgstr "Fearann dearbhaithe!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "Déanta" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1489,8 +1613,8 @@ msgstr "Déanta" msgid "Done{extraText}" msgstr "Déanta{extraText}" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "Íoslódáil comhad CAR" @@ -1502,7 +1626,7 @@ msgstr "Scaoil anseo chun íomhánna a chur leis" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "De bharr pholasaí Apple, ní féidir ábhar do dhaoine fásta ar an nGréasán a fháil roimh an logáil isteach a chríochnú." -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "m.sh. cáit" @@ -1510,7 +1634,7 @@ msgstr "m.sh. cáit" msgid "e.g. Alice Roberts" msgstr "m.sh. Cáit Ní Dhuibhir" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "m.sh. cait.com" @@ -1547,7 +1671,7 @@ msgctxt "action" msgid "Edit" msgstr "Eagar" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "Cuir an t-abhatár in eagar" @@ -1557,7 +1681,7 @@ msgstr "Cuir an t-abhatár in eagar" msgid "Edit image" msgstr "Cuir an íomhá seo in eagar" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "Athraigh mionsonraí an liosta" @@ -1566,8 +1690,8 @@ msgid "Edit Moderation List" msgstr "Athraigh liosta na modhnóireachta" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "Athraigh mo chuid fothaí" @@ -1575,18 +1699,18 @@ msgstr "Athraigh mo chuid fothaí" msgid "Edit my profile" msgstr "Athraigh mo phróifíl" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "Athraigh an phróifíl" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "Athraigh an Phróifíl" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "Athraigh na fothaí sábháilte" @@ -1602,16 +1726,16 @@ msgstr "Athraigh d’ainm taispeána" msgid "Edit your profile description" msgstr "Athraigh an cur síos ort sa phróifíl" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "Oideachas" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "Ríomhphost" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "Níl 2FA trí ríomhphost ar fáil a thuilleadh" @@ -1619,20 +1743,20 @@ msgstr "Níl 2FA trí ríomhphost ar fáil a thuilleadh" msgid "Email address" msgstr "Seoladh ríomhphoist" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "Seoladh ríomhphoist uasdátaithe" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "Seoladh ríomhphoist uasdátaithe" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "Ríomhphost dearbhaithe" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "Ríomhphost:" @@ -1676,7 +1800,7 @@ msgstr "Cuir meáin sheachtracha ar fáil" msgid "Enable media players for" msgstr "Cuir seinnteoirí na meán ar fáil le haghaidh" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "Cuir an socrú seo ar siúl le gan ach freagraí i measc na ndaoine a leanann tú a fheiceáil." @@ -1684,6 +1808,8 @@ msgstr "Cuir an socrú seo ar siúl le gan ach freagraí i measc na ndaoine a le msgid "Enable this source only" msgstr "Cuir an foinse seo amháin ar fáil" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "Cumasaithe" @@ -1692,7 +1818,11 @@ msgstr "Cumasaithe" msgid "End of feed" msgstr "Deireadh an fhotha" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "Cuir isteach ainm don phasfhocal aipe seo" @@ -1700,12 +1830,12 @@ msgstr "Cuir isteach ainm don phasfhocal aipe seo" msgid "Enter a password" msgstr "Cuir pasfhocal isteach" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "Cuir focal na clib isteach" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "Cuir isteach an cód dearbhaithe" @@ -1713,7 +1843,7 @@ msgstr "Cuir isteach an cód dearbhaithe" msgid "Enter the code you received to change your password." msgstr "Cuir isteach an cód a fuair tú chun do phasfhocal a athrú." -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "Cuir isteach an fearann is maith leat a úsáid" @@ -1730,11 +1860,11 @@ msgstr "Cuir isteach do bhreithlá" msgid "Enter your email address" msgstr "Cuir isteach do sheoladh ríomhphoist" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "Cuir isteach do sheoladh ríomhphoist nua thuas" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "Cuir isteach do sheoladh ríomhphoist nua thíos." @@ -1742,11 +1872,15 @@ msgstr "Cuir isteach do sheoladh ríomhphoist nua thíos." msgid "Enter your username and password" msgstr "Cuir isteach do leasainm agus do phasfhocal" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "Earráid agus an freagra ar an captcha á phróiseáil." -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "Earráid:" @@ -1755,15 +1889,30 @@ msgstr "Earráid:" msgid "Everybody" msgstr "Chuile dhuine" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "An iomarca tagairtí nó freagraí" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "Fágann sé seo próiseas scrios an chuntais" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "Fágann sé seo athrú do leasainm" @@ -1797,12 +1946,12 @@ msgstr "Meáin is féidir a bheith gáirsiúil nó goilliúnach." msgid "Explicit sexual images." msgstr "Íomhánna gnéasacha." -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "Easpórtáil mo chuid sonraí" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "Easpórtáil mo chuid sonraí" @@ -1818,16 +1967,16 @@ msgstr "Is féidir le meáin sheachtracha cumas a thabhairt do shuíomhanna ar a #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "Roghanna maidir le meáin sheachtracha" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "Socruithe maidir le meáin sheachtracha" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "Teip ar phasfhocal aipe a chruthú." @@ -1835,7 +1984,7 @@ msgstr "Teip ar phasfhocal aipe a chruthú." msgid "Failed to create the list. Check your internet connection and try again." msgstr "Teip ar chruthú an liosta. Seiceáil do nasc leis an idirlíon agus déan iarracht eile." -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" msgstr "" @@ -1843,47 +1992,68 @@ msgstr "" msgid "Failed to delete post, please try again" msgstr "Teip ar scriosadh na postála. Déan iarracht eile." -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "Theip ar lódáil na GIFanna" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "" + #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:NaN #~ msgid "Failed to load recommended feeds" #~ msgstr "Teip ar lódáil na bhfothaí molta" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "Níor sábháladh an íomhá: {0}" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "Fotha" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "Fotha le {0}" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "Fotha as líne" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "Aiseolas" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "Fothaí" @@ -1891,7 +2061,7 @@ msgstr "Fothaí" #~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." #~ msgstr "Is iad na húsáideoirí a chruthaíonn na fothaí le hábhar is spéis leo a chur ar fáil. Roghnaigh cúpla fotha a bhfuil suim agat iontu." -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "Is sainalgartaim iad na fothaí. Cruthaíonn úsáideoirí a bhfuil beagán taithí acu ar chódáil iad. <0/> le tuilleadh eolais a fháil." @@ -1899,15 +2069,19 @@ msgstr "Is sainalgartaim iad na fothaí. Cruthaíonn úsáideoirí a bhfuil beag msgid "Feeds can be topical as well!" msgstr "Is féidir le fothaí a bheith bunaithe ar chúrsaí reatha freisin!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "Ábhar an Chomhaid" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "Scag ó mo chuid fothaí" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "Ag cur crích air" @@ -1933,7 +2107,7 @@ msgstr "Aimsigh postálacha agus úsáideoirí ar Bluesky" #~ msgid "Finding similar accounts..." #~ msgstr "Cuntais eile atá cosúil leis seo á n-aimsiú..." -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "Mionathraigh an t-ábhar a fheiceann tú ar an bhfotha Following." @@ -1941,11 +2115,11 @@ msgstr "Mionathraigh an t-ábhar a fheiceann tú ar an bhfotha Following." msgid "Fine-tune the discussion threads." msgstr "Mionathraigh na snáitheanna chomhrá" -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "Folláine" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "Solúbtha" @@ -1958,10 +2132,10 @@ msgstr "Iompaigh go cothrománach é" msgid "Flip vertically" msgstr "Iompaigh go hingearach é" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -1973,7 +2147,7 @@ msgid "Follow" msgstr "Lean" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "Lean {0}" @@ -2007,7 +2181,7 @@ msgstr "Leanta ag {0}" msgid "Followed users" msgstr "Cuntais a leanann tú" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "Cuntais a leanann tú amháin" @@ -2020,28 +2194,30 @@ msgstr "— lean sé/sí thú" msgid "Followers" msgstr "Leantóirí" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "Á leanúint" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "Ag leanúint {0}" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "Roghanna le haghaidh an fhotha Following" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "Roghanna don Fhotha Following" @@ -2053,15 +2229,15 @@ msgstr "Leanann sé/sí thú" msgid "Follows You" msgstr "Leanann sé/sí thú" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "Bia" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "Ar chúiseanna slándála, beidh orainn cód dearbhaithe a chur chuig do sheoladh ríomhphoist." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "Ar chúiseanna slándála, ní bheidh tú in ann é seo a fheiceáil arís. Má chailleann tú an pasfhocal seo beidh ort ceann nua a chruthú." @@ -2070,15 +2246,15 @@ msgstr "Ar chúiseanna slándála, ní bheidh tú in ann é seo a fheiceáil ar msgid "Forgot Password" msgstr "Pasfhocal dearmadta" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "Pasfhocal dearmadta?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "Dearmadta?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "Is minic a phostálann siad ábhar nach bhfuil de dhíth" @@ -2086,7 +2262,7 @@ msgstr "Is minic a phostálann siad ábhar nach bhfuil de dhíth" msgid "From @{sanitizedAuthor}" msgstr "Ó @{sanitizedAuthor}" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "Ó <0/>" @@ -2095,12 +2271,20 @@ msgstr "Ó <0/>" msgid "Gallery" msgstr "Gailearaí" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "Ar aghaidh leat anois!" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "Deargshárú an dlí nó na dtéarmaí seirbhíse" @@ -2109,9 +2293,9 @@ msgstr "Deargshárú an dlí nó na dtéarmaí seirbhíse" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "Ar ais" @@ -2119,13 +2303,14 @@ msgstr "Ar ais" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "Ar ais" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2144,16 +2329,20 @@ msgstr "Abhaile" #~ msgid "Go to @{queryMaybeHandle}" #~ msgstr "Téigh go dtí @{queryMaybeHandle}" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "Téigh go dtí an chéad rud eile" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" msgstr "" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" msgstr "" @@ -2161,7 +2350,7 @@ msgstr "" msgid "Graphic Media" msgstr "Meáin Ghrafacha" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "Leasainm" @@ -2169,7 +2358,7 @@ msgstr "Leasainm" msgid "Haptics" msgstr "Haptaic" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "Ciapadh, trolláil, nó éadulaingt" @@ -2177,7 +2366,7 @@ msgstr "Ciapadh, trolláil, nó éadulaingt" msgid "Hashtag" msgstr "Haischlib" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "Haischlib: #{tag}" @@ -2186,10 +2375,14 @@ msgid "Having trouble?" msgstr "Fadhb ort?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "Cúnamh" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "Seo cúpla cuntas le leanúint duit" @@ -2202,13 +2395,13 @@ msgstr "Seo cúpla fotha a bhfuil ráchairt orthu. Is féidir leat an méid acu msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "Seo cúpla fotha a phléann le rudaí a bhfuil suim agat iontu: {interestsText}. Is féidir leat an méid acu is mian leat a leanúint." -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "Seo é do phasfhocal aipe." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2230,7 +2423,7 @@ msgid "Hide post" msgstr "Cuir an phostáil seo i bhfolach" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "Cuir an t-ábhar seo i bhfolach" @@ -2242,23 +2435,23 @@ msgstr "An bhfuil fonn ort an phostáil seo a chur i bhfolach?" msgid "Hide user list" msgstr "Cuir liosta na gcuntas i bhfolach" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "Hmm. Tharla fadhb éigin sa dul i dteagmháil le freastalaí an fhotha seo. Cuir é seo in iúl d’úinéir an fhotha, le do thoil." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "Hmm. Is cosúil nach bhfuil freastalaí an fhotha seo curtha le chéile i gceart. Cuir é seo in iúl d’úinéir an fhotha, le do thoil." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "Hmm. Is cosúil go bhfuil freastalaí an fhotha as líne. Cuir é seo in iúl d’úinéir an fhotha, le do thoil." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "Hmm. Thug freastalaí an fhotha drochfhreagra. Cuir é seo in iúl d’úinéir an fhotha, le do thoil." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "Hmm. Ní féidir linn an fotha seo a aimsiú. Is féidir gur scriosadh é." @@ -2270,22 +2463,22 @@ msgstr "Hmmm, is cosúil go bhfuil fadhb againn le lódáil na sonraí seo. Féa msgid "Hmmmm, we couldn't load that moderation service." msgstr "Hmmm, ní raibh muid in ann an tseirbhís modhnóireachta sin a lódáil." -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "Baile" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "Óstach:" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "Soláthraí óstála" @@ -2293,25 +2486,30 @@ msgstr "Soláthraí óstála" msgid "How should we open this link?" msgstr "Conas ar cheart dúinn an nasc seo a oscailt?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "Tá cód agam" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "Tá cód dearbhaithe agam" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "Tá fearann de mo chuid féin agam" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "Má tá an téacs malartach rófhada, athraíonn sé seo go téacs leathnaithe" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "Mura roghnaítear tada, tá sé oiriúnach do gach aois." @@ -2319,7 +2517,7 @@ msgstr "Mura roghnaítear tada, tá sé oiriúnach do gach aois." msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "Ní duine fásta thú de réir dhlí do thíre, tá ar do thuismitheoir nó do chaomhnóir dlíthiúil na Téarmaí seo a léamh ar do shon." -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "Má scriosann tú an liosta seo, ní bheidh tú in ann é a fháil ar ais." @@ -2331,7 +2529,7 @@ msgstr "Má bhaineann tú an phostáil seo, ní bheidh tú in ann í a fháil ar msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "Más mian leat do phasfhocal a athrú, seolfaimid cód duit chun dearbhú gur leatsa an cuntas seo." -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "Mídhleathach agus Práinneach" @@ -2339,23 +2537,27 @@ msgstr "Mídhleathach agus Práinneach" msgid "Image" msgstr "Íomhá" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "Téacs malartach le híomhá" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "Pearsanú nó maíomh mícheart maidir le cé atá ann nó a gceangal" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "Cuir isteach an cód a seoladh chuig do ríomhphost leis an bpasfhocal a athrú" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "Cuir isteach an cód dearbhaithe leis an gcuntas a scriosadh" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "Cuir isteach an t-ainm le haghaidh phasfhocal na haipe" @@ -2363,27 +2565,27 @@ msgstr "Cuir isteach an t-ainm le haghaidh phasfhocal na haipe" msgid "Input new password" msgstr "Cuir isteach an pasfhocal nua" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "Cuir isteach an pasfhocal chun an cuntas a scriosadh" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "Cuir isteach an cód a chuir muid chugat i dteachtaireacht r-phoist" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "Cuir isteach an pasfhocal ceangailte le {identifier}" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "Cuir isteach an leasainm nó an seoladh ríomhphoist a d’úsáid tú nuair a chláraigh tú" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "Cuir isteach do phasfhocal" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "Cuir isteach an soláthraí óstála is fearr leat" @@ -2391,16 +2593,20 @@ msgstr "Cuir isteach an soláthraí óstála is fearr leat" msgid "Input your user handle" msgstr "Cuir isteach do leasainm" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "Tá an cód 2FA seo neamhbhailí." -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "Taifead postála atá neamhbhailí nó gan bhunús" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "Leasainm nó pasfhocal míchruinn" @@ -2412,7 +2618,7 @@ msgstr "Tabhair cuireadh chuig cara leat" msgid "Invite code" msgstr "Cód cuiridh" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "Níor glacadh leis an gcód cuiridh. Bí cinnte gur scríobh tú i gceart é agus bain triail eile as." @@ -2432,7 +2638,7 @@ msgstr "Taispeánann sé postálacha ó na daoine a leanann tú nuair a fhoilsí msgid "Jobs" msgstr "Jabanna" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "Iriseoireacht" @@ -2452,7 +2658,7 @@ msgstr "Lipéadaithe ag an údar." msgid "Labels" msgstr "Lipéid" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "Nótaí faoi úsáideoirí nó ábhar is ea lipéid. Is féidir úsáid a bhaint astu leis an líonra a cheilt, a chatagóiriú, agus fainic a chur air." @@ -2460,11 +2666,11 @@ msgstr "Nótaí faoi úsáideoirí nó ábhar is ea lipéid. Is féidir úsáid #~ msgid "labels have been placed on this {labelTarget}" #~ msgstr "cuireadh lipéid ar an {labelTarget}" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "Lipéid ar do chuntas" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "Lipéid ar do chuid ábhair" @@ -2472,7 +2678,7 @@ msgstr "Lipéid ar do chuid ábhair" msgid "Language selection" msgstr "Rogha teanga" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "Socruithe teanga" @@ -2481,7 +2687,7 @@ msgstr "Socruithe teanga" msgid "Language Settings" msgstr "Socruithe teanga" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "Teangacha" @@ -2499,7 +2705,7 @@ msgstr "Le tuilleadh a fhoghlaim" msgid "Learn more about the moderation applied to this content." msgstr "Foghlaim níos mó faoin modhnóireacht a dhéantar ar an ábhar seo." -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "Le tuilleadh a fhoghlaim faoin rabhadh seo" @@ -2512,13 +2718,20 @@ msgstr "Le tuilleadh a fhoghlaim faoi céard atá poiblí ar Bluesky" msgid "Learn more." msgstr "Tuilleadh eolais." -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" msgstr "" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" msgstr "" @@ -2534,7 +2747,7 @@ msgstr "Ag fágáil slán ag Bluesky" msgid "left to go." msgstr "le déanamh fós." -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "Stóráil oidhreachta scriosta, tá ort an aip a atosú anois." @@ -2543,11 +2756,11 @@ msgstr "Stóráil oidhreachta scriosta, tá ort an aip a atosú anois." msgid "Let's get your password reset!" msgstr "Socraímis do phasfhocal arís!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "Ar aghaidh linn!" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "Sorcha" @@ -2555,8 +2768,8 @@ msgstr "Sorcha" #~ msgid "Like" #~ msgstr "Mol" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "Mol an fotha seo" @@ -2598,7 +2811,7 @@ msgstr "a mhol do phostáil" msgid "Likes" msgstr "Moltaí" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "Moltaí don phostáil seo" @@ -2610,19 +2823,19 @@ msgstr "Liosta" msgid "List Avatar" msgstr "Abhatár an Liosta" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "Liosta blocáilte" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "Liosta le {0}" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "Scriosadh an liosta" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "Balbhaíodh an liosta" @@ -2630,31 +2843,35 @@ msgstr "Balbhaíodh an liosta" msgid "List Name" msgstr "Ainm an liosta" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "Liosta díbhlocáilte" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "Liosta nach bhfuil balbhaithe níos mó" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "Liostaí" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "" + #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "Lódáil fógraí nua" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "Lódáil postálacha nua" @@ -2681,7 +2898,7 @@ msgstr "Feiceálacht le linn a bheith logáilte amach" msgid "Login to account that is not listed" msgstr "Logáil isteach ar chuntas nach bhfuil liostáilte" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "Brú fada le clár na clibe le haghaidh #{tag} a oscailt" @@ -2689,14 +2906,35 @@ msgstr "Brú fada le clár na clibe le haghaidh #{tag} a oscailt" msgid "Looks like XXXXX-XXXXX" msgstr "Tá cuma XXXXX-XXXXX air" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "Bí cinnte go bhfuil tú ag iarraidh cuairt a thabhairt ar an áit sin!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "Bainistigh do chuid clibeanna agus na focail a chuir tú i bhfolach" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2715,44 +2953,50 @@ msgstr "Úsáideoirí luaite" msgid "Menu" msgstr "Clár" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "Teachtaireacht ón bhfreastalaí: {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" msgstr "" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" +#~ msgid "Messaging settings" +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "Cuntas atá Míthreorach" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "Modhnóireacht" @@ -2765,13 +3009,13 @@ msgstr "Mionsonraí modhnóireachta" msgid "Moderation list by {0}" msgstr "Liosta modhnóireachta le {0}" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "Liosta modhnóireachta le <0/>" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "Liosta modhnóireachta leat" @@ -2792,7 +3036,7 @@ msgstr "Liostaí modhnóireachta" msgid "Moderation Lists" msgstr "Liostaí modhnóireachta" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "Socruithe modhnóireachta" @@ -2813,11 +3057,11 @@ msgstr "Chuir an modhnóir rabhadh ginearálta ar an ábhar." msgid "More" msgstr "Tuilleadh" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "Tuilleadh fothaí" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "Tuilleadh roghanna" @@ -2838,7 +3082,7 @@ msgstr "Cuir {truncatedTag} i bhfolach" msgid "Mute Account" msgstr "Cuir an cuntas i bhfolach" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "Cuir na cuntais i bhfolach" @@ -2846,32 +3090,37 @@ msgstr "Cuir na cuntais i bhfolach" msgid "Mute all {displayTag} posts" msgstr "Cuir gach postáil {displayTag} i bhfolach" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "Ná cuir i bhfolach ach i gclibeanna" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "Cuir i bhfolach i dtéacs agus i gclibeanna" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "Cuir an liosta i bhfolach" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "An bhfuil fonn ort na cuntais seo a chur i bhfolach" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "Cuir an focal seo i bhfolach i dtéacs postálacha agus i gclibeanna" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "Ná cuir an focal seo i bhfolach ach i gclibeanna" @@ -2910,7 +3159,7 @@ msgstr "Curtha i bhfolach ag \"{0}\"" msgid "Muted words & tags" msgstr "Focail ⁊ clibeanna a cuireadh i bhfolach" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "Tá an cur i bhfolach príobháideach. Is féidir leis na cuntais a chuir tú i bhfolach do chuid postálacha a fheiceáil agus is féidir leo scríobh chugat ach ní fheicfidh tú a gcuid postálacha eile ná aon fhógraí uathu." @@ -2919,23 +3168,23 @@ msgstr "Tá an cur i bhfolach príobháideach. Is féidir leis na cuntais a chui msgid "My Birthday" msgstr "Mo Bhreithlá" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "Mo Chuid Fothaí" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "Mo Phróifíl" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "Na fothaí a shábháil mé" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "Na Fothaí a Shábháil Mé" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "Ainm" @@ -2944,27 +3193,27 @@ msgstr "Ainm" msgid "Name is required" msgstr "Tá an t-ainm riachtanach" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "Sáraíonn an tAinm nó an Cur Síos Caighdeáin an Phobail" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "Nádúr" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "Téann sé seo chuig an gcéad scáileán eile" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "Téann sé seo chuig do phróifíl" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "An bhfuil tú ag iarraidh sárú cóipchirt a thuairisciú?" @@ -2972,11 +3221,11 @@ msgstr "An bhfuil tú ag iarraidh sárú cóipchirt a thuairisciú?" #~ msgid "Never lose access to your followers and data." #~ msgstr "Ná bíodh gan fáil ar do chuid leantóirí ná ar do chuid dáta go deo." -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "Ná bíodh gan fáil ar do chuid leantóirí ná ar do chuid dáta go deo." -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "Is cuma, cruthaigh leasainm dom" @@ -2989,12 +3238,16 @@ msgstr "Nua" msgid "New" msgstr "Nua" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" msgstr "" +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" msgstr "Liosta modhnóireachta nua" @@ -3007,22 +3260,22 @@ msgstr "Pasfhocal Nua" msgid "New Password" msgstr "Pasfhocal Nua" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "Postáil nua" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "Postáil nua" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "Postáil nua" @@ -3035,14 +3288,14 @@ msgstr "Liosta Nua d’Úsáideoirí" msgid "Newest replies first" msgstr "Na freagraí is déanaí ar dtús" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "Nuacht" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3060,29 +3313,29 @@ msgstr "Ar aghaidh" msgid "Next image" msgstr "An chéad íomhá eile" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "Níl" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "Gan chur síos" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "Gan Phainéal DNS" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "Níor aimsíodh GIFanna speisialta. D'fhéadfadh sé gur tharla fadhb le Tenor." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "Ní leantar {0} níos mó" @@ -3090,25 +3343,39 @@ msgstr "Ní leantar {0} níos mó" msgid "No longer than 253 characters" msgstr "Gan a bheith níos faide na 253 charachtar" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" msgstr "" +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "" + #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "Níl aon fhógra ann fós!" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "Gan torthaí" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "Gan torthaí" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "Gan torthaí ar “{query}”" @@ -3118,13 +3385,13 @@ msgstr "Gan torthaí ar “{query}”" msgid "No results found for {query}" msgstr "Gan torthaí ar {query}" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "Gan torthaí ar \"{search}\"." #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "" #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3135,6 +3402,10 @@ msgstr "Níor mhaith liom é sin." msgid "Nobody" msgstr "Duine ar bith" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3153,8 +3424,8 @@ msgstr "Lomnochtacht Neamhghnéasach" msgid "Not Found" msgstr "Ní bhfuarthas é sin" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "Ní anois" @@ -3168,25 +3439,37 @@ msgstr "Nóta faoi roinnt" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "Nod leat: is gréasán oscailte poiblí Bluesky. Ní chuireann an socrú seo srian ar fheiceálacht do chuid ábhair ach amháin ar aip agus suíomh Bluesky. Is féidir nach gcloífidh aipeanna eile leis an socrú seo. Is féidir go dtaispeánfar do chuid ábhair d’úsáideoirí atá lógáilte amach ar aipeanna agus suíomhanna eile." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "Fógraí" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "Lomnochtacht" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "Lomnochtacht nó ábhar do dhaoine fásta nach bhfuil an lipéad sin air" @@ -3198,17 +3481,17 @@ msgstr "Lomnochtacht nó ábhar do dhaoine fásta nach bhfuil an lipéad sin air msgid "Off" msgstr "As" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "Úps!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "Úps! Theip ar rud éigin." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "OK" @@ -3220,14 +3503,18 @@ msgstr "Maith go leor" msgid "Oldest replies first" msgstr "Na freagraí is sine ar dtús" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "Atosú an chláraithe" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "Tá téacs malartach de dhíth ar íomhá amháin nó níos mó acu." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "Ní féidir ach le {0} freagra a thabhairt." @@ -3236,33 +3523,46 @@ msgstr "Ní féidir ach le {0} freagra a thabhairt." msgid "Only contains letters, numbers, and hyphens" msgstr "Níl ann ach litreacha, uimhreacha, agus fleiscíní" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "Úps! Theip ar rud éigin!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "Úps!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "Oscail" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "Oscail roghnóir na n-emoji" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "Oscail roghchlár na bhfothaí" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "Oscail nascanna leis an mbrabhsálaí san aip" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "Oscail suíomhanna na gclibeanna agus na bhfocal a cuireadh i bhfolach" @@ -3275,12 +3575,12 @@ msgstr "Oscail an nascleanúint" msgid "Open post options menu" msgstr "Oscail roghchlár na bpostálacha" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "Oscail leathanach an Storybook" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "Oscail logleabhar an chórais" @@ -3288,7 +3588,7 @@ msgstr "Oscail logleabhar an chórais" msgid "Opens {numItems} options" msgstr "Osclaíonn sé seo {numItems} rogha" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "Osclaíonn sé seo na socruithe inrochtaineachta" @@ -3304,11 +3604,15 @@ msgstr "Osclaíonn sé seo liosta méadaithe d’úsáideoirí san fhógra seo" msgid "Opens camera on device" msgstr "Osclaíonn sé seo an ceamara ar an ngléas" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "Osclaíonn sé seo an t-eagarthóir" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "Osclaíonn sé seo na socruithe teanga is féidir a dhéanamh" @@ -3316,7 +3620,7 @@ msgstr "Osclaíonn sé seo na socruithe teanga is féidir a dhéanamh" msgid "Opens device photo gallery" msgstr "Osclaíonn sé seo gailearaí na ngrianghraf ar an ngléas" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "Osclaíonn sé seo na socruithe le haghaidh leabuithe seachtracha" @@ -3338,52 +3642,52 @@ msgstr "Osclaíonn sé seo fuinneog chun GIF a roghnú" msgid "Opens list of invite codes" msgstr "Osclaíonn sé seo liosta na gcód cuiridh" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "Osclaíonn sé seo an fhuinneog le scriosadh an chuntais a dhearbhú. Tá cód ríomhphoist riachtanach" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "Osclaíonn sé seo an fhuinneog le do phasfhocal Bluesky a athrú" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "Osclaíonn sé seo an fhuinneog le leasainm nua Bluesky a roghnú" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "Osclaíonn sé seo an fhuinneog le stór sonraí do chuntais Bluesky a íoslódáil" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "Osclaíonn sé seo fuinneog le deimhniú an ríomhphoist" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "Osclaíonn sé seo an fhuinneog le sainfhearann a úsáid" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "Osclaíonn sé seo socruithe na modhnóireachta" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "Osclaíonn sé seo an fhoirm leis an bpasfhocal a athrú" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "Osclaíonn sé seo an scáileán leis na fothaí sábháilte a athrú" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "Osclaíonn sé seo an scáileán leis na fothaí sábháilte go léir" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "Osclaíonn sé seo an leathanach a bhfuil socruithe phasfhocal na haipe air" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "Osclaíonn sé seo roghanna don fhotha Following" @@ -3391,20 +3695,20 @@ msgstr "Osclaíonn sé seo roghanna don fhotha Following" msgid "Opens the linked website" msgstr "Osclaíonn sé seo an suíomh gréasáin atá nasctha" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "Osclaíonn sé seo leathanach an Storybook" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "Osclaíonn sé seo logleabhar an chórais" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "Osclaíonn sé seo roghanna na snáitheanna" @@ -3412,7 +3716,8 @@ msgstr "Osclaíonn sé seo roghanna na snáitheanna" msgid "Option {0} of {numItems}" msgstr "Rogha {0} as {numItems}" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "Is féidir tuilleadh eolais a chur ar fáil thíos:" @@ -3420,7 +3725,7 @@ msgstr "Is féidir tuilleadh eolais a chur ar fáil thíos:" msgid "Or combine these options:" msgstr "Nó cuir na roghanna seo le chéile:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "Eile" @@ -3432,7 +3737,11 @@ msgstr "Cuntas eile" msgid "Other..." msgstr "Eile…" -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "Leathanach gan aimsiú" @@ -3441,10 +3750,10 @@ msgstr "Leathanach gan aimsiú" msgid "Page Not Found" msgstr "Leathanach gan aimsiú" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "Pasfhocal" @@ -3476,35 +3785,39 @@ msgstr "Na daoine atá leanta ag @{0}" msgid "People following @{0}" msgstr "Na leantóirí atá ag @{0}" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "Tá cead de dhíth le rolla an cheamara a oscailt." -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "Ní bhfuarthas cead le rolla an cheamara a oscailt. Athraigh socruithe an chórais len é seo a chur ar fáil, le do thoil." -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "Peataí" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "Pictiúir le haghaidh daoine fásta." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "Greamaigh le baile" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "Greamaigh le Baile" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "Fothaí greamaithe" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "Seinn" @@ -3513,6 +3826,11 @@ msgstr "Seinn" msgid "Play {0}" msgstr "Seinn {0}" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" msgstr "Seinn nó stop an GIF" @@ -3526,78 +3844,83 @@ msgstr "Seinn an físeán" msgid "Plays the GIF" msgstr "Seinneann sé seo an GIF" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "Roghnaigh do leasainm, le do thoil." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "Roghnaigh do phasfhocal, le do thoil." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "Déan an captcha, le do thoil." -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "Dearbhaigh do ríomhphost roimh é a athrú. Riachtanas sealadach é seo le linn dúinn acmhainní a chur isteach le haghaidh uasdátú an ríomhphoist. Scriosfar é seo roimh i bhfad." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "Cuir isteach ainm le haghaidh phasfhocal na haipe, le do thoil. Ní cheadaítear spásanna gan aon rud eile ann." -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "Cuir isteach ainm nach bhfuil in úsáid cheana féin le haghaidh Phasfhocal na hAipe nó bain úsáid as an gceann a chruthóidh muid go randamach." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "Cuir focal, clib, nó frása inghlactha isteach le cur i bhfolach" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "Cuir isteach do sheoladh ríomhphoist, le do thoil." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "Cuir isteach do phasfhocal freisin, le do thoil." -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "Abair linn, le do thoil, cén fáth a gcreideann tú gur chuir {0} an lipéad seo i bhfeidhm go mícheart" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "" + #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "Dearbhaigh do ríomhphost, le do thoil." -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "Fan le lódáil ar fad do chárta naisc, le do thoil." -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "Polaitíocht" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "Pornagrafaíocht" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "Postáil" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "Postáil" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "Postáil ó {0}" @@ -3611,7 +3934,7 @@ msgstr "Postáil ó @{0}" msgid "Post deleted" msgstr "Scriosadh an phostáil" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "Cuireadh an phostáil i bhfolach" @@ -3633,8 +3956,8 @@ msgstr "Teanga postála" msgid "Post Languages" msgstr "Teangacha postála" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "Ní bhfuarthas an phostáil" @@ -3646,11 +3969,11 @@ msgstr "postálacha" msgid "Posts" msgstr "Postálacha" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "Is féidir postálacha a chuir i bhfolach de bharr a gcuid téacs, a gcuid clibeanna, nó an dá rud." -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "Cuireadh na postálacha i bhfolach" @@ -3658,21 +3981,25 @@ msgstr "Cuireadh na postálacha i bhfolach" msgid "Potentially Misleading Link" msgstr "Is féidir go bhfuil an nasc seo míthreorach." +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "Brúigh leis an soláthraí óstála a athrú" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "Brúigh le iarracht eile a dhéanamh" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -3686,7 +4013,7 @@ msgstr "Príomhtheanga" msgid "Prioritize Your Follows" msgstr "Tabhair Tosaíocht do Do Chuid Leantóirí" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "Príobháideacht" @@ -3694,25 +4021,29 @@ msgstr "Príobháideacht" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "Polasaí príobháideachta" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "Á phróiseáil..." -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "próifíl" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "Próifíl" @@ -3720,11 +4051,11 @@ msgstr "Próifíl" msgid "Profile updated" msgstr "Próifíl uasdátaithe" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "Dearbhaigh do ríomhphost le do chuntas a chosaint." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "Poiblí" @@ -3736,11 +4067,11 @@ msgstr "Liostaí poiblí agus inroinnte d’úsáideoirí le cur i bhfolach nó msgid "Public, shareable lists which can drive feeds." msgstr "Liostaí poiblí agus inroinnte atá in ann fothaí a bheathú" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "Foilsigh an phostáil" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "Foilsigh an freagra" @@ -3766,6 +4097,14 @@ msgstr "Randamach" msgid "Ratios" msgstr "Cóimheasa" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "Cuardaigh a Rinneadh le Déanaí" @@ -3778,12 +4117,20 @@ msgstr "Cuardaigh a Rinneadh le Déanaí" #~ msgid "Recommended Users" #~ msgstr "Cuntais mholta" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "Scrios" @@ -3791,7 +4138,7 @@ msgstr "Scrios" msgid "Remove account" msgstr "Bain an cuntas de" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "Bain an tAbhatár Amach" @@ -3799,22 +4146,25 @@ msgstr "Bain an tAbhatár Amach" msgid "Remove Banner" msgstr "Bain an Fógra Meirge Amach" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "Bain an fotha de" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "An bhfuil fonn ort an fotha a bhaint?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "Bain de mo chuid fothaí" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "É sin a bhaint de mo chuid fothaí?" @@ -3826,7 +4176,7 @@ msgstr "Bain an íomhá de" msgid "Remove image preview" msgstr "Bain réamhléiriú den íomhá" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "Bain focal folaigh de do liosta" @@ -3838,7 +4188,7 @@ msgstr "" msgid "Remove repost" msgstr "Scrios an athphostáil" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "Bain an fotha seo de do chuid fothaí sábháilte" @@ -3847,11 +4197,13 @@ msgstr "Bain an fotha seo de do chuid fothaí sábháilte" msgid "Removed from list" msgstr "Baineadh den liosta é" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "Baineadh de do chuid fothaí é" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "Baineadh de do chuid fothaí é" @@ -3863,6 +4215,11 @@ msgstr "Baineann sé seo an mhionsamhail réamhshocraithe de {0}" msgid "Removes quoted post" msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "Freagraí" @@ -3871,12 +4228,12 @@ msgstr "Freagraí" msgid "Replies to this thread are disabled" msgstr "Ní féidir freagraí a thabhairt ar an gcomhrá seo" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "Freagair" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "Scagairí freagra" @@ -3886,39 +4243,47 @@ msgstr "Scagairí freagra" #~ msgstr "Freagra ar <0/>" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "Freagra ar <0><1/>" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" msgstr "" #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "Déan gearán faoi chuntas" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "Tuairiscigh comhrá" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "Déan gearán faoi fhotha" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "Déan gearán faoi liosta" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" msgstr "" @@ -3927,30 +4292,36 @@ msgstr "" msgid "Report post" msgstr "Déan gearán faoi phostáil" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "Déan gearán faoin ábhar seo" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "Déan gearán faoin fhotha seo" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "Déan gearán faoin liosta seo" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "Déan gearán faoin phostáil seo" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "Déan gearán faoin úsáideoir seo" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "Athphostáil" @@ -3968,7 +4339,7 @@ msgstr "Athphostáil nó luaigh postáil" msgid "Reposted By" msgstr "Athphostáilte ag" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "Athphostáilte ag {0}" @@ -3976,7 +4347,7 @@ msgstr "Athphostáilte ag {0}" #~ msgid "Reposted by <0/>" #~ msgstr "Athphostáilte ag <0/>" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "Athphostáilte ag <0><1/>" @@ -3984,12 +4355,12 @@ msgstr "Athphostáilte ag <0><1/>" msgid "reposted your post" msgstr "— d'athphostáil sé/sí do phostáil" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "Athphostálacha den phostáil seo" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "Iarr Athrú" @@ -4002,7 +4373,7 @@ msgstr "Iarr Cód" msgid "Require alt text before posting" msgstr "Bíodh téacs malartach ann roimh phostáil i gcónaí" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "Bíodh cód ríomhphoist ag teastáil chun logáil isteach" @@ -4010,8 +4381,8 @@ msgstr "Bíodh cód ríomhphoist ag teastáil chun logáil isteach" msgid "Required for this provider" msgstr "Riachtanach don soláthraí seo" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "Athsheol an ríomhphost" @@ -4023,8 +4394,8 @@ msgstr "Cód athshocraithe" msgid "Reset Code" msgstr "Cód Athshocraithe" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "Athshocraigh an próiseas cláraithe" @@ -4032,20 +4403,20 @@ msgstr "Athshocraigh an próiseas cláraithe" msgid "Reset password" msgstr "Athshocraigh an pasfhocal" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "Athshocraigh na roghanna" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "Athshocraíonn sé seo an clárú" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "Athshocraíonn sé seo na roghanna" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "Baineann sé seo triail eile as an logáil isteach" @@ -4054,13 +4425,14 @@ msgstr "Baineann sé seo triail eile as an logáil isteach" msgid "Retries the last action, which errored out" msgstr "Baineann sé seo triail eile as an ngníomh is déanaí, ar theip air" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 @@ -4068,11 +4440,11 @@ msgid "Retry" msgstr "Bain triail eile as" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" +#~ msgid "Retry." +#~ msgstr "" #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "Fill ar an leathanach roimhe seo" @@ -4081,26 +4453,26 @@ msgid "Returns to home page" msgstr "Filleann sé seo abhaile" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "Filleann sé seo ar an leathanach roimhe seo" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "Sábháil" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "Sábháil" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "Sábháil an téacs malartach" @@ -4112,7 +4484,7 @@ msgstr "Sábháil do bhreithlá" msgid "Save Changes" msgstr "Sábháil na hathruithe" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "Sábháil an leasainm nua" @@ -4120,16 +4492,16 @@ msgstr "Sábháil an leasainm nua" msgid "Save image crop" msgstr "Sábháil an pictiúr bearrtha" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "Sábháil i mo chuid fothaí" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "Fothaí Sábháilte" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" msgstr "" @@ -4137,7 +4509,8 @@ msgstr "" #~ msgid "Saved to your camera roll." #~ msgstr "Sábháilte i do rolla ceamara." -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "Sábháilte le mo chuid fothaí" @@ -4145,7 +4518,7 @@ msgstr "Sábháilte le mo chuid fothaí" msgid "Saves any changes to your profile" msgstr "Sábhálann sé seo na hathruithe a rinne tú ar do phróifíl" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "Sábhálann sé seo athrú an leasainm go {handle}" @@ -4153,16 +4526,20 @@ msgstr "Sábhálann sé seo athrú an leasainm go {handle}" msgid "Saves image crop settings" msgstr "Sábhálann sé seo na socruithe le haghaidh íomhánna a laghdú" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "Eolaíocht" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "Fill ar an mbarr" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4170,12 +4547,12 @@ msgstr "Fill ar an mbarr" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "Cuardaigh" @@ -4196,8 +4573,8 @@ msgid "Search for all posts with tag {displayTag}" msgstr "Lorg na postálacha uile leis an gclib {displayTag}" #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "" #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4209,7 +4586,8 @@ msgstr "Cuardaigh úsáideoirí" msgid "Search GIFs" msgstr "Cuardaigh GIFanna" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" msgstr "" @@ -4217,7 +4595,7 @@ msgstr "" msgid "Search Tenor" msgstr "Cuardaigh Tenor" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "Céim Slándála de dhíth" @@ -4238,11 +4616,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "Féach na postálacha <0>{displayTag} leis an úsáideoir seo" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "Féach ar an bpróifíl" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "Féach ar an treoirleabhar seo" @@ -4254,10 +4632,22 @@ msgstr "Féach ar an treoirleabhar seo" msgid "Select {item}" msgstr "Roghnaigh {item}" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "Roghnaigh cuntas" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "Roghnaigh ó chuntas atá ann" @@ -4266,7 +4656,7 @@ msgstr "Roghnaigh ó chuntas atá ann" msgid "Select GIF" msgstr "Roghnaigh GIF" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "Roghnaigh GIF \"{0}\"" @@ -4286,7 +4676,11 @@ msgstr "Roghnaigh rogha {i} as {numItems}" msgid "Select some accounts below to follow" msgstr "Roghnaigh cúpla cuntas le leanúint" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "Roghnaigh na seirbhísí modhnóireachta le tuairisciú chuige" @@ -4314,7 +4708,7 @@ msgstr "Roghnaigh teanga an téacs a thaispeánfar san aip." msgid "Select your date of birth" msgstr "Roghnaigh do dháta breithe" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "Roghnaigh na rudaí a bhfuil suim agat iontu as na roghanna thíos" @@ -4330,32 +4724,38 @@ msgstr "Roghnaigh do phríomhfhothaí algartamacha" msgid "Select your secondary algorithmic feeds" msgstr "Roghnaigh do chuid fothaí algartamacha tánaisteacha" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "Seol ríomhphost dearbhaithe" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "Seol ríomhphost" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "Seol ríomhphost" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "Seol aiseolas" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "Seol an tuairisc" @@ -4363,12 +4763,12 @@ msgstr "Seol an tuairisc" msgid "Send report to {0}" msgstr "Seol an tuairisc chuig {0}" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "Seol ríomhphost dearbhaithe" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "Seolann sé seo ríomhphost ina bhfuil cód dearbhaithe chun an cuntas a scriosadh" @@ -4384,15 +4784,15 @@ msgstr "Socraigh do bhreithlá" msgid "Set new password" msgstr "Socraigh pasfhocal nua" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "Roghnaigh “Níl” chun postálacha athluaite a chur i bhfolach i d'fhotha. Feicfidh tú athphostálacha fós." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "Roghnaigh “Níl” chun freagraí a chur i bhfolach i d'fhotha." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "Roghnaigh “Níl” chun athphostálacha a chur i bhfolach i d'fhotha." @@ -4400,7 +4800,7 @@ msgstr "Roghnaigh “Níl” chun athphostálacha a chur i bhfolach i d'fhotha." msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "Roghnaigh “Tá” le freagraí a thaispeáint i snáitheanna. Is gné thurgnamhach é seo." -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "Roghnaigh “Tá” le samplaí ó do chuid fothaí sábháilte a thaispeáint in ”Á Leanúint”. Is gné thurgnamhach é seo." @@ -4408,27 +4808,27 @@ msgstr "Roghnaigh “Tá” le samplaí ó do chuid fothaí sábháilte a thaisp msgid "Set up your account" msgstr "Socraigh do chuntas" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Socraíonn sé seo d'ainm úsáideora ar Bluesky" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "Roghnaíonn sé seo an modh dorcha" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "Roghnaíonn sé seo an modh sorcha" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "Roghnaíonn sé seo scéim dathanna an chórais" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "Úsáideann sé seo an téama dorcha mar théama dorcha" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "Úsáideann sé seo an téama breacdhorcha mar théama dorcha" @@ -4449,15 +4849,14 @@ msgid "Sets image aspect ratio to wide" msgstr "Socraíonn sé seo cóimheas treoíochta na híomhá go leathan" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "Socruithe" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "Gníomhaíocht ghnéasach nó lomnochtacht gháirsiúil." @@ -4465,7 +4864,7 @@ msgstr "Gníomhaíocht ghnéasach nó lomnochtacht gháirsiúil." msgid "Sexually Suggestive" msgstr "Graosta" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "Comhroinn" @@ -4475,18 +4874,26 @@ msgstr "Comhroinn" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "Comhroinn" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "Comhroinn mar sin féin" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "Comhroinn an fotha" @@ -4495,15 +4902,19 @@ msgstr "Comhroinn an fotha" msgid "Share Link" msgstr "Comhroinn Nasc" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "Roinneann sé seo na suíomh gréasáin atá nasctha" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "Taispeáin" @@ -4529,10 +4940,14 @@ msgstr "Taispeáin suaitheantas" msgid "Show badge and filter from feeds" msgstr "Taispeáin suaitheantas agus scag ó na fothaí é" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "Taispeáin cuntais cosúil le {0}" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" @@ -4540,7 +4955,7 @@ msgstr "" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "Tuilleadh" @@ -4549,11 +4964,15 @@ msgstr "Tuilleadh" msgid "Show more like this" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "Taispeáin postálacha ó mo chuid fothaí" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "Taispeáin postálacha athluaite" @@ -4569,7 +4988,7 @@ msgstr "Taispeáin postálacha athluaite san fhotha “Á Leanúint”" msgid "Show re-posts in Following feed" msgstr "Taispeáin athphostálacha san fhotha “Á Leanúint”" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "Taispeáin freagraí" @@ -4589,7 +5008,7 @@ msgstr "Taispeáin freagraí san fhotha “Á Leanúint”" #~ msgid "Show replies with at least {value} {0}" #~ msgstr "Taispeáin freagraí a bhfuil ar a laghad {value} {0} acu" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "Taispeáin athphostálacha" @@ -4598,7 +5017,7 @@ msgid "Show reposts in Following" msgstr "Taispeáin athphostálacha san fhotha “Á Leanúint”" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "Taispeáin an t-ábhar" @@ -4622,17 +5041,17 @@ msgstr "Taispeánann sé seo postálacha ó {0} i d'fhotha" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4655,17 +5074,17 @@ msgstr "Logáil isteach nó cláraigh chun páirt a ghlacadh sa chomhrá!" msgid "Sign into Bluesky or create a new account" msgstr "Logáil isteach i Bluesky nó cruthaigh cuntas nua" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "Logáil amach" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -4681,7 +5100,7 @@ msgstr "Cláraigh nó logáil isteach chun páirt a ghlacadh sa chomhrá" msgid "Sign-in Required" msgstr "Caithfidh tú logáil isteach" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "Logáilte isteach mar" @@ -4690,27 +5109,35 @@ msgstr "Logáilte isteach mar" msgid "Signed in as @{0}" msgstr "Logáilte isteach mar @{0}" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "Ná bac leis" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "Ná bac leis an bpróiseas seo" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "Forbairt Bogearraí" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." msgstr "Chuaigh rud éigin ó rath. Bain triail eile as." -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "Ár leithscéal. Chuaigh do sheisiún i léig. Ní mór duit logáil isteach arís." @@ -4722,19 +5149,24 @@ msgstr "Sórtáil freagraí" msgid "Sort replies to the same post by:" msgstr "Sórtáil freagraí ar an bpostáil chéanna de réir:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "Foinse:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "Foinse:" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "Turscar" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "Turscar; an iomarca tagairtí nó freagraí" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "Spórt" @@ -4742,15 +5174,23 @@ msgstr "Spórt" msgid "Square" msgstr "Cearnóg" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "" + #: src/view/screens/Settings/index.tsx:862 #~ msgid "Status page" #~ msgstr "Leathanach stádais" -#: src/view/screens/Settings/index.tsx:896 +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" msgstr "" @@ -4762,29 +5202,31 @@ msgstr "" msgid "Step {0} of {1}" msgstr "" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "Stóráil scriosta, tá ort an aip a atosú anois." #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Storybook" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Seol" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "Liostáil" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "Glac síntiús le @{0} leis na lipéid seo a úsáid:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "Glac síntiús le lipéadóir" @@ -4793,11 +5235,11 @@ msgstr "Glac síntiús le lipéadóir" msgid "Subscribe to the {0} feed" msgstr "Liostáil leis an bhfotha {0}" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "Glac síntiús leis an lipéadóir seo" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "Liostáil leis an liosta seo" @@ -4809,7 +5251,7 @@ msgstr "Cuntais le leanúint" msgid "Suggested for you" msgstr "Molta duit" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "Gáirsiúil" @@ -4824,23 +5266,23 @@ msgstr "Tacaíocht" msgid "Switch Account" msgstr "Athraigh an cuntas" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "Athraigh go {0}" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "Athraíonn sé seo an cuntas beo" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "Córas" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "Logleabhar an chórais" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "clib" @@ -4856,41 +5298,47 @@ msgstr "Ard" msgid "Tap to view fully" msgstr "Tapáil leis an rud iomlán a fheiceáil" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "Teic" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "Téarmaí" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "Téarmaí Seirbhíse" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "Sárú ar chaighdeáin an phobail atá sna téarmaí a úsáideadh" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "téacs" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "Réimse téacs" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "Go raibh maith agat. Seoladh do thuairisc." -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "Ina bhfuil an méid seo a leanas:" @@ -4898,7 +5346,7 @@ msgstr "Ina bhfuil an méid seo a leanas:" msgid "That handle is already taken." msgstr "Tá an leasainm sin in úsáid cheana féin." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "Beidh an cuntas seo in ann caidreamh a dhéanamh leat tar éis duit é a dhíbhlocáil" @@ -4915,11 +5363,15 @@ msgstr "Bogadh Treoirlínte an Phobail go dtí <0/>" msgid "The Copyright Policy has been moved to <0/>" msgstr "Bogadh an Polasaí Cóipchirt go dtí <0/>" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "Cuireadh na lipéid seo a leanas le do chuntas." -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "Cuireadh na lipéid seo a leanas le do chuid ábhair." @@ -4927,8 +5379,8 @@ msgstr "Cuireadh na lipéid seo a leanas le do chuid ábhair." msgid "The following steps will help customize your Bluesky experience." msgstr "Cuideoidh na céimeanna seo a leanas leat Bluesky a chur in oiriúint duit féin." -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "Is féidir gur scriosadh an phostáil seo." @@ -4948,37 +5400,40 @@ msgstr "Bogadh ár dTéarmaí Seirbhíse go dtí" msgid "There are many feeds to try:" msgstr "Tá a lán fothaí ann le blaiseadh:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "Bhí fadhb ann maidir le dul i dteagmháil leis an bhfreastalaí. Seiceáil do cheangal leis an idirlíon agus bain triail eile as, le do thoil." -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "Bhí fadhb ann maidir leis an bhfotha seo a bhaint. Seiceáil do cheangal leis an idirlíon agus bain triail eile as, le do thoil." -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "Bhí fadhb ann maidir le huasdátú do chuid fothaí. Seiceáil do cheangal leis an idirlíon agus bain triail eile as, le do thoil." -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "Bhí fadhb ann maidir le teagmháil a dhéanamh le Tenor." #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "Bhí fadhb ann maidir le teagmháil a dhéanamh leis an bhfreastalaí" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "Bhí fadhb ann maidir le teagmháil a dhéanamh le do fhreastálaí" @@ -4986,7 +5441,7 @@ msgstr "Bhí fadhb ann maidir le teagmháil a dhéanamh le do fhreastálaí" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "Bhí fadhb ann maidir le fógraí a fháil. Tapáil anseo le triail eile a bhaint as." -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "Bhí fadhb ann maidir le postálacha a fháil. Tapáil anseo le triail eile a bhaint as." @@ -4999,7 +5454,8 @@ msgstr "Bhí fadhb ann maidir leis an liosta a fháil. Tapáil anseo le triail e msgid "There was an issue fetching your lists. Tap here to try again." msgstr "Bhí fadhb ann maidir le do chuid liostaí a fháil. Tapáil anseo le triail eile a bhaint as." -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "Níor seoladh do thuairisc. Seiceáil do nasc leis an idirlíon, le do thoil." @@ -5007,32 +5463,32 @@ msgstr "Níor seoladh do thuairisc. Seiceáil do nasc leis an idirlíon, le do t msgid "There was an issue syncing your preferences with the server" msgstr "Bhí fadhb ann maidir le do chuid roghanna a shioncronú leis an bhfreastalaí" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "Bhí fadhb ann maidir le do chuid pasfhocal don aip a fháil" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "Bhí fadhb ann! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "Bhí fadhb ann. Seiceáil do cheangal leis an idirlíon, le do thoil, agus bain triail eile as." -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "D’éirigh fadhb gan choinne leis an aip. Abair linn, le do thoil, má tharla sé sin duit!" @@ -5053,14 +5509,26 @@ msgstr "Cuireadh bratach leis an {screenDescription} seo:" msgid "This account has requested that users sign in to view their profile." msgstr "Ní mór duit logáil isteach le próifíl an chuntais seo a fheiceáil." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "Cuirfear an t-achomharc seo chuig <0>{0}." -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:26 +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "" + #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." msgstr "Chuir na modhnóirí an t-ábhar seo i bhfolach." @@ -5078,21 +5546,21 @@ msgstr "Tá an t-ábhar seo ar fáil ó {0}. An bhfuil fonn ort na meáin sheach msgid "This content is not available because one of the users involved has blocked the other." msgstr "Níl an t-ábhar seo le feiceáil toisc gur bhlocáil duine de na húsáideoirí an duine eile." -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "Níl an t-ábhar seo le feiceáil gan chuntas Bluesky." -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "Tá an ghné seo á tástáil fós. Tig leat níos mó faoi chartlanna easpórtáilte a léamh sa <0>bhlagphost seo." -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "Tá ráchairt an-mhór ar an bhfotha seo faoi láthair. Níl sé ar fáil anois díreach dá bhrí sin. Bain triail eile as níos déanaí, le do thoil." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "Tá an fotha seo folamh!" @@ -5100,11 +5568,15 @@ msgstr "Tá an fotha seo folamh!" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "Tá an fotha seo folamh! Is féidir go mbeidh ort tuilleadh úsáideoirí a leanúint nó do shocruithe teanga a athrú." +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "" + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "Ní roinntear an t-eolas seo le húsáideoirí eile." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "Tá sé seo tábhachtach má bhíonn ort do ríomhphost nó do phasfhocal a athrú." @@ -5120,7 +5592,15 @@ msgstr "" msgid "This label was applied by the author." msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "Ní dúirt an lipéadóir seo céard iad na lipéid a fhoilsíonn sé, agus is féidir nach bhfuil sé i mbun gnó." @@ -5128,7 +5608,7 @@ msgstr "Ní dúirt an lipéadóir seo céard iad na lipéid a fhoilsíonn sé, a msgid "This link is taking you to the following website:" msgstr "Téann an nasc seo go dtí an suíomh idirlín seo:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "Tá an liosta seo folamh!" @@ -5136,11 +5616,11 @@ msgstr "Tá an liosta seo folamh!" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "Níl an tseirbhís modhnóireachta ar fáil. Féach tuilleadh sonraí thíos. Má mhaireann an fhadhb seo, téigh i dteagmháil linn." -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "Tá an t-ainm seo in úsáid cheana féin" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "Scriosadh an phostáil seo." @@ -5161,7 +5641,7 @@ msgstr "Níl an phróifíl seo le feiceáil ach ag úsáideoirí atá logáilte msgid "This service has not provided terms of service or a privacy policy." msgstr "Níor chuir an tseirbhís seo téarmaí seirbhíse ná polasaí príobháideachta ar fáil." -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "Ba cheart dó seo taifead fearainn a chruthú ag:" @@ -5169,6 +5649,10 @@ msgstr "Ba cheart dó seo taifead fearainn a chruthú ag:" msgid "This user doesn't have any followers." msgstr "Níl aon leantóirí ag an úsáideoir seo." +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5194,16 +5678,16 @@ msgstr "Níl éinne á leanúint ag an úsáideoir seo." #~ msgid "This warning is only available for posts with media attached." #~ msgstr "Níl an rabhadh seo ar fáil ach le haghaidh postálacha a bhfuil meáin ceangailte leo." -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "Bainfidh sé seo {0} de do chuid focal i bhfolach. Tig leat é a chur ar ais níos déanaí." -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "Roghanna snáitheanna" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "Roghanna Snáitheanna" @@ -5215,15 +5699,19 @@ msgstr "Modh Snáithithe" msgid "Threads Preferences" msgstr "Roghanna Snáitheanna" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "Chun 2FA trí ríomhphoist a dhíchumasú, dearbhaigh gur leatsa an seoladh ríomhphoist." +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "Cé chuige ar mhaith leat an tuairisc seo a sheoladh?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "Scoránaigh idir na roghanna maidir le focail atá le cur i bhfolach." @@ -5256,60 +5744,69 @@ msgctxt "action" msgid "Try again" msgstr "Bain triail eile as" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "Fíordheimhniú déshraithe (2FA)" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "Clóscríobh:" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "Díbhlocáil an liosta" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "Ná coinnigh an liosta sin i bhfolach níos mó" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "Ní féidir teagmháil a dhéanamh le do sheirbhís. Seiceáil do cheangal leis an idirlíon, le do thoil." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "Díbhlocáil" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "Díbhlocáil" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "Díbhlocáil an cuntas" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "An bhfuil fonn ort an cuntas seo a dhíbhlocáil?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "Cuir stop leis an athphostáil" @@ -5323,7 +5820,7 @@ msgstr "Dílean" msgid "Unfollow" msgstr "Dílean" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "Dílean {0}" @@ -5336,12 +5833,12 @@ msgstr "Dílean an cuntas seo" #~ msgid "Unlike" #~ msgstr "Dímhol" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "Dímhol an fotha seo" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "Ná coinnigh i bhfolach" @@ -5358,37 +5855,50 @@ msgstr "Ná coinnigh an cuntas seo i bhfolach níos mó" msgid "Unmute all {displayTag} posts" msgstr "Ná coinnigh aon phostáil {displayTag} i bhfolach" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" msgstr "" +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "Ná coinnigh an snáithe seo i bhfolach níos mó" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "Díghreamaigh" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "Díghreamaigh ón mbaile" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "Díghreamaigh an liosta modhnóireachta" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "Díliostáil" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "Díliostáil ón lipéadóir seo" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "Ábhar graosta nach mian liom" @@ -5396,7 +5906,7 @@ msgstr "Ábhar graosta nach mian liom" msgid "Update {displayName} in Lists" msgstr "Uasdátú {displayName} sna Liostaí" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "Déan uasdátú go {handle}" @@ -5404,42 +5914,46 @@ msgstr "Déan uasdátú go {handle}" msgid "Updating..." msgstr "Á uasdátú…" -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "Uaslódáil comhad téacs chuig:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "Uaslódáil ó Cheamara" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "Uaslódáil ó Chomhaid" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "Uaslódáil ó Leabharlann" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "Bain úsáid as comhad ar do fhreastalaí" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "Bain úsáid as pasfhocail na haipe le logáil isteach ar chliaint eile de chuid Bluesky gan fáil iomlán ar do chuntas ná do phasfhocal a thabhairt dóibh." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "Bain feidhm as bsky.social mar sholáthraí óstála" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "Úsáid an soláthraí réamhshocraithe" @@ -5453,11 +5967,15 @@ msgstr "Úsáid an brabhsálaí san aip seo" msgid "Use my default browser" msgstr "Úsáid an brabhsálaí réamhshocraithe atá agam" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "Bain feidhm as an bpainéal DNS" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "Úsáid é seo le logáil isteach ar an aip eile in éindí le do leasainm." @@ -5474,6 +5992,10 @@ msgstr "Úsáideoir blocáilte" msgid "User Blocked by \"{0}\"" msgstr "Úsáideoir blocáilte ag \"{0}\"" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "Úsáideoir blocáilte le liosta" @@ -5491,13 +6013,13 @@ msgstr "Blocálann an t-úsáideoir seo thú" msgid "User list by {0}" msgstr "Liosta úsáideoirí le {0}" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "Liosta úsáideoirí le <0/>" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "Liosta úsáideoirí leat" @@ -5513,11 +6035,11 @@ msgstr "Liosta úsáideoirí uasdátaithe" msgid "User Lists" msgstr "Liostaí Úsáideoirí" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "Ainm úsáideora nó ríomhphost" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "Úsáideoirí" @@ -5525,6 +6047,13 @@ msgstr "Úsáideoirí" msgid "users followed by <0/>" msgstr "Úsáideoirí a bhfuil <0/> á leanúint" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "Úsáideoirí in ”{0}“" @@ -5533,7 +6062,7 @@ msgstr "Úsáideoirí in ”{0}“" msgid "Users that have liked this content or profile" msgstr "Úsáideoirí ar thaitin an t-ábhar nó an próifíl seo leo" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "Luach:" @@ -5541,32 +6070,32 @@ msgstr "Luach:" #~ msgid "Verify {0}" #~ msgstr "Dearbhaigh {0}" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" msgstr "" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "Dearbhaigh ríomhphost" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "Dearbhaigh mo ríomhphost" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "Dearbhaigh Mo Ríomhphost" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "Dearbhaigh an Ríomhphost Nua" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "Dearbhaigh Do Ríomhphost" @@ -5574,15 +6103,15 @@ msgstr "Dearbhaigh Do Ríomhphost" #~ msgid "Version {0}" #~ msgstr "Leagan {0}" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" msgstr "" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "Físchluichí" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "Féach ar an abhatár atá ag {0}" @@ -5590,25 +6119,25 @@ msgstr "Féach ar an abhatár atá ag {0}" msgid "View debug entry" msgstr "Féach ar an iontráil dífhabhtaithe" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "Féach ar shonraí" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "Féach ar shonraí maidir le sárú cóipchirt a thuairisciú" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "Féach ar an snáithe iomlán" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "Féach ar eolas faoi na lipéid seo" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "Féach ar an bpróifíl" @@ -5620,7 +6149,7 @@ msgstr "Féach ar an abhatár" msgid "View the labeling service provided by @{0}" msgstr "Féach ar an tseirbhís lipéadaithe atá curtha ar fáil ag @{0}" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "Féach ar úsáideoirí ar thaitin an fotha seo leo" @@ -5648,11 +6177,15 @@ msgstr "Tabhair foláireamh faoi ábhar agus scag as fothaí" msgid "We couldn't find any results for that hashtag." msgstr "Níor aimsigh muid toradh ar bith don haischlib sin." +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "Measaimid go mbeidh do chuntas réidh i gceann {estimatedTime}" -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "Tá súil againn go mbeidh an-chraic agat anseo. Ná déan dearmad go bhfuil Bluesky:" @@ -5660,7 +6193,7 @@ msgstr "Tá súil againn go mbeidh an-chraic agat anseo. Ná déan dearmad go bh msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "Níl aon ábhar nua le taispeáint ó na cuntais a leanann tú. Seo duit an t-ábhar is déanaí ó <0/>." -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "Molaimid focail choitianta a bhíonn i go leor póstálacha a sheachaint, toisc gur féidir nach dtaispeánfaí aon phostáil dá bharr." @@ -5676,7 +6209,7 @@ msgstr "Theip orainn do rogha maidir le dáta breithe a lódáil. Bain triail as msgid "We were unable to load your configured labelers at this time." msgstr "Theip orainn na lipéadóirí a roghnaigh tú a lódáil faoi láthair." -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "Níorbh fhéidir linn ceangal a bhunú. Bain triail eile as do chuntas a shocrú. Má mhaireann an fhadhb, ní gá duit an próiseas seo a chur i gcrích." @@ -5684,10 +6217,14 @@ msgstr "Níorbh fhéidir linn ceangal a bhunú. Bain triail eile as do chuntas a msgid "We will let you know when your account is ready." msgstr "Déarfaidh muid leat nuair a bheidh do chuntas réidh." -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "Bainfimid úsáid as seo chun an suíomh a chur in oiriúint duit." +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "Tá muid an-sásta go bhfuil tú linn!" @@ -5696,7 +6233,7 @@ msgstr "Tá muid an-sásta go bhfuil tú linn!" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "Ár leithscéal, ach ní féidir linn an liosta seo a thaispeáint. Má mhaireann an fhadhb, déan teagmháil leis an duine a chruthaigh an liosta, @{handleOrDid}." -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "Tá brón orainn, ach theip orainn na focail a chuir tú i bhfolach a lódáil an uair seo. Bain triail as arís." @@ -5704,12 +6241,12 @@ msgstr "Tá brón orainn, ach theip orainn na focail a chuir tú i bhfolach a l msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "Ár leithscéal, ach níorbh fhéidir linn do chuardach a chur i gcrích. Bain triail eile as i gceann cúpla nóiméad." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "Ár leithscéal, ach ní féidir linn an leathanach atá tú ag lorg a aimsiú." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "Tá brón orainn! Ní féidir síntiúis a ghlacadh ach le deich lipéadóir, tá an teorainn sin sroichte agat." @@ -5717,13 +6254,13 @@ msgstr "Tá brón orainn! Ní féidir síntiúis a ghlacadh ach le deich lipéad #~ msgid "Welcome to <0>Bluesky" #~ msgstr "Fáilte go <0>Bluesky" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "Cad iad na rudaí a bhfuil suim agat iontu?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "Aon scéal?" @@ -5735,28 +6272,41 @@ msgstr "Cad iad na teangacha sa phostáil seo?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "Cad iad na teangacha ba mhaith leat a fheiceáil i do chuid fothaí algartamacha?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "Cé atá in ann freagra a thabhairt" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "Cén fáth gur cheart athbhreithniú a dhéanamh ar an t-ábhar seo?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "Cén fáth gur cheart athbhreithniú a dhéanamh ar an bhfotha seo?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "Cén fáth gur cheart athbhreithniú a dhéanamh ar an liosta seo?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "Cén fáth gur cheart athbhreithniú a dhéanamh ar an bpostáil seo?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "Cén fáth gur cheart athbhreithniú a dhéanamh ar an úsáideoir seo?" @@ -5764,35 +6314,35 @@ msgstr "Cén fáth gur cheart athbhreithniú a dhéanamh ar an úsáideoir seo?" msgid "Wide" msgstr "Leathan" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" msgstr "" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "Scríobh postáil" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "Scríobh freagra" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "Scríbhneoirí" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "Tá" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" msgstr "" @@ -5813,6 +6363,14 @@ msgstr "Is féidir leat sainfhothaí nua a aimsiú le leanúint." msgid "You can change these settings later." msgstr "Is féidir leat na socruithe seo a athrú níos déanaí." +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -5826,22 +6384,26 @@ msgstr "Níl aon leantóir agat." msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "Níl aon chóid chuiridh agat fós! Cuirfidh muid cúpla cód chugat tar éis duit beagán ama a chaitheamh anseo." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "Níl aon fhothaí greamaithe agat." #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "Níl aon fhothaí sábháilte agat!" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "Níl aon fhothaí sábháilte agat!" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "Níl aon fhothaí sábháilte agat." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "Bhlocáil tú an t-údar nó tá tú blocáilte ag an údar." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -5872,6 +6434,10 @@ msgstr "Chuir tú an cuntas seo i bhfolach." msgid "You have muted this user" msgstr "Chuir tú an t-úsáideoir seo i bhfolach" +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "Níl aon fhothaí agat." @@ -5881,15 +6447,15 @@ msgstr "Níl aon fhothaí agat." msgid "You have no lists." msgstr "Níl aon liostaí agat." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." msgstr "Níor bhlocáil tú aon chuntas fós. Le cuntas a bhlocáil, téigh go dtí a bpróifíl agus roghnaigh “Blocáil an cuntas seo” ar an gclár ansin." -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "Níor chruthaigh tú aon phasfhocal aipe fós. Is féidir leat ceann a chruthú ach brú ar an gcnaipe thíos." @@ -5897,11 +6463,19 @@ msgstr "Níor chruthaigh tú aon phasfhocal aipe fós. Is féidir leat ceann a c msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." msgstr "Níor chuir tú aon chuntas i bhfolach fós. Le cuntas a chur i bhfolach, téigh go dtí a bpróifíl agus roghnaigh “Cuir an cuntas seo i bhfolach” ar an gclár ansin." -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "Níor chuir tú aon fhocal ná clib i bhfolach fós" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "Is féidir leat achomharc a dhéanamh maidir leis na lipéad seo má shíleann tú gur cuireadh in earráid iad." @@ -5913,7 +6487,7 @@ msgstr "Caithfidh tú a bheith 13 bliana d’aois nó níos sine le clárú." msgid "You must be 18 years or older to enable adult content" msgstr "Caithfidh tú a bheith 18 mbliana d’aois nó níos sine le hábhar do dhaoine fásta a fháil." -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "Caithfidh tú ar a laghad lipéadóir amháin a roghnú do thuairisc" @@ -5929,7 +6503,7 @@ msgstr "Gheobhaidh tú fógraí don snáithe seo anois." msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "Gheobhaidh tú teachtaireacht ríomhphoist le “cód athshocraithe” ann. Cuir an cód sin isteach anseo, ansin cuir do phasfhocal nua isteach." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" msgstr "" @@ -5943,7 +6517,7 @@ msgstr "Tá sé faoi do stiúir" msgid "You're in line" msgstr "Tá tú sa scuaine" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "Tá tú réidh!" @@ -5960,11 +6534,11 @@ msgstr "Tháinig tú go deireadh d’fhotha! Aimsigh cuntais eile le leanúint." msgid "Your account" msgstr "Do chuntas" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "Scriosadh do chuntas" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "Is féidir cartlann do chuntais, a bhfuil na taifid phoiblí uile inti, a íoslódáil mar chomhad “CAR”. Ní bheidh aon mheáin leabaithe (íomhánna, mar shampla) ná do shonraí príobháideacha inti. Ní mór iad a fháil ar dhóigh eile." @@ -5972,6 +6546,10 @@ msgstr "Is féidir cartlann do chuntais, a bhfuil na taifid phoiblí uile inti, msgid "Your birth date" msgstr "Do bhreithlá" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "Sábhálfar do rogha, ach is féidir é athrú níos déanaí sna socruithe." @@ -5981,16 +6559,16 @@ msgid "Your default feed is \"Following\"" msgstr "Is é “Following” d’fhotha réamhshocraithe" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "Is cosúil go bhfuil do ríomhphost neamhbhailí." -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "Uasdátaíodh do sheoladh ríomhphoist ach níor dearbhaíodh é. An chéad chéim eile anois ná do sheoladh nua a dhearbhú, le do thoil." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "Níor dearbhaíodh do sheoladh ríomhphoist fós. Is tábhachtach an chéim shábháilteachta é sin agus molaimid é." @@ -6002,11 +6580,11 @@ msgstr "Tá an fotha de na daoine a leanann tú folamh! Lean tuilleadh úsáideo msgid "Your full handle will be" msgstr "Do leasainm iomlán anseo:" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "Do leasainm iomlán anseo: <0>@{0}" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "Na focail a chuir tú i bhfolach" @@ -6014,22 +6592,26 @@ msgstr "Na focail a chuir tú i bhfolach" msgid "Your password has been changed successfully!" msgstr "Athraíodh do phasfhocal!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "Foilsíodh do phostáil" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "Tá do chuid postálacha, moltaí, agus blocálacha poiblí. Is príobháideach iad na cuntais a chuireann tú i bhfolach." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "Do phróifíl" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "Foilsíodh do fhreagra" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "Do leasainm" diff --git a/src/locale/locales/hi/messages.po b/src/locale/locales/hi/messages.po index 582504e83c..f5293b850a 100644 --- a/src/locale/locales/hi/messages.po +++ b/src/locale/locales/hi/messages.po @@ -13,7 +13,7 @@ msgstr "" "Language-Team: \n" "Plural-Forms: \n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "" @@ -25,24 +25,32 @@ msgstr "" #~ msgid "{0, plural, one {# invite code available} other {# invite codes available}}" #~ msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" msgstr "" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" msgstr "" @@ -51,11 +59,11 @@ msgstr "" msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -67,7 +75,7 @@ msgstr "" msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" msgstr "" @@ -75,6 +83,10 @@ msgstr "" msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" msgstr "" +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "" + #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -87,11 +99,15 @@ msgstr "" msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:151 #~ msgid "{invitesAvailable, plural, one {Invite codes: # available} other {Invite codes: # available}}" #~ msgstr "" @@ -106,17 +122,17 @@ msgstr "" #~ msgid "{invitesAvailable} invite codes available" #~ msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" -#: src/view/shell/Drawer.tsx:464 +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" msgstr "" @@ -124,11 +140,11 @@ msgstr "" msgid "<0/> members" msgstr "" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" msgstr "" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" msgstr "" @@ -157,7 +173,7 @@ msgstr "" #~ msgid "<0>Here is your app password. Use this to sign into the other app along with your handle." #~ msgstr "<0>इधर आपका ऐप पासवर्ड है। इसे अपने हैंडल के साथ दूसरे ऐप में साइन करने के लिए उपयोग करें।।" -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." msgstr "" @@ -169,7 +185,7 @@ msgstr "" msgid "⚠Invalid Handle" msgstr "" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "" @@ -191,11 +207,11 @@ msgid "Access profile and other navigation links" msgstr "" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "प्रवेर्शयोग्यता" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "" @@ -208,21 +224,21 @@ msgstr "" #~ msgid "account" #~ msgstr "" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "अकाउंट" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "" @@ -243,55 +259,56 @@ msgstr "अकाउंट के विकल्प" msgid "Account removed from quick access" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "ऐड करो" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "सामग्री चेतावनी जोड़ें" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "इस सूची में किसी को जोड़ें" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "अकाउंट जोड़ें" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "इस फ़ोटो में विवरण जोड़ें" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "" @@ -312,15 +329,23 @@ msgstr "" #~ msgid "Add link card:" #~ msgstr "लिंक कार्ड जोड़ें:" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "अपने डोमेन में निम्नलिखित DNS रिकॉर्ड जोड़ें:" @@ -329,7 +354,7 @@ msgstr "अपने डोमेन में निम्नलिखित DN msgid "Add to Lists" msgstr "सूचियों में जोड़ें" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "इस फ़ीड को सहेजें" @@ -342,17 +367,17 @@ msgstr "इस फ़ीड को सहेजें" msgid "Added to list" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "पसंद की संख्या को समायोजित करें उत्तर को आपके फ़ीड में दिखाया जाना चाहिए।।" #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "वयस्क सामग्री" @@ -369,14 +394,29 @@ msgid "Adult content is disabled." msgstr "" #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "विकसित" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "" +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -386,13 +426,13 @@ msgstr "" msgid "Already signed in as @{0}" msgstr "" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -406,24 +446,24 @@ msgstr "" msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "ऑल्ट टेक्स्ट अंधा और कम दृश्य लोगों के लिए छवियों का वर्णन करता है, और हर किसी को संदर्भ देने में मदद करता है।।" -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "{0} को ईमेल भेजा गया है। इसमें एक OTP कोड शामिल है जिसे आप नीचे दर्ज कर सकते हैं।।" -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "{0} को ईमेल भेजा गया है। इसमें एक OTP कोड शामिल है जिसे आप नीचे दर्ज कर सकते हैं।।" -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "" @@ -436,7 +476,7 @@ msgstr "" msgid "An issue occurred, please try again." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" msgstr "" @@ -445,7 +485,7 @@ msgstr "" msgid "and" msgstr "और" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "" @@ -453,7 +493,7 @@ msgstr "" msgid "Animated GIF" msgstr "" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "" @@ -461,19 +501,19 @@ msgstr "" msgid "App Language" msgstr "ऐप भाषा" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "" -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "" @@ -482,17 +522,17 @@ msgstr "" #~ msgstr "ऐप पासवर्ड" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "ऐप पासवर्ड" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "" @@ -505,7 +545,8 @@ msgstr "" #~ msgid "Appeal Content Warning" #~ msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" msgstr "" @@ -513,39 +554,55 @@ msgstr "" #~ msgid "Appeal submitted." #~ msgstr "" -#: src/view/com/util/moderation/LabelInfo.tsx:52 -#~ msgid "Appeal this decision" -#~ msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "" #: src/view/com/util/moderation/LabelInfo.tsx:56 #~ msgid "Appeal this decision." #~ msgstr "" -#: src/view/screens/Settings/index.tsx:430 +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "दिखावट" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "क्या आप वाकई ऐप पासवर्ड \"{name}\" हटाना चाहते हैं?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "क्या आप वाकई इस ड्राफ्ट को हटाना करना चाहेंगे?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "क्या आप वास्तव में इसे करना चाहते हैं?" @@ -557,11 +614,11 @@ msgstr "क्या आप वास्तव में इसे करना msgid "Are you writing in <0>{0}?" msgstr "" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "कलात्मक या गैर-कामुक नग्नता।।" @@ -569,18 +626,20 @@ msgstr "कलात्मक या गैर-कामुक नग्नत msgid "At least 3 characters" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -595,7 +654,7 @@ msgstr "वापस" msgid "Based on your interest in {interestsText}" msgstr "" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "मूल बातें" @@ -603,17 +662,17 @@ msgstr "मूल बातें" msgid "Birthday" msgstr "जन्मदिन" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "जन्मदिन:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" msgstr "" @@ -626,15 +685,15 @@ msgstr "खाता ब्लॉक करें" msgid "Block Account?" msgstr "" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "खाता ब्लॉक करें" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "खाता ब्लॉक करें?" @@ -664,15 +723,15 @@ msgstr "अवरुद्ध खाते आपके थ्रेड्स msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "अवरुद्ध खाते आपके थ्रेड्स में उत्तर नहीं दे सकते, आपका उल्लेख नहीं कर सकते, या अन्यथा आपके साथ बातचीत नहीं कर सकते। आप उनकी सामग्री नहीं देख पाएंगे और उन्हें आपकी सामग्री देखने से रोका जाएगा।" -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "ब्लॉक पोस्ट।" -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "" -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "अवरोधन सार्वजनिक है. अवरुद्ध खाते आपके थ्रेड्स में उत्तर नहीं दे सकते, आपका उल्लेख नहीं कर सकते, या अन्यथा आपके साथ बातचीत नहीं कर सकते।" @@ -728,10 +787,15 @@ msgstr "" msgid "Blur images and filter from feeds" msgstr "" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "" + #: src/view/screens/Settings/index.tsx:893 #~ msgid "Build version {0} {1}" #~ msgstr "Build version {0} {1}" @@ -776,7 +840,7 @@ msgstr "" msgid "Camera" msgstr "कैमरा" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "केवल अक्षर, संख्या, रिक्त स्थान, डैश और अंडरस्कोर हो सकते हैं। कम से कम 4 अक्षर लंबा होना चाहिए, लेकिन 32 अक्षरों से अधिक लंबा नहीं होना चाहिए।।" @@ -784,11 +848,11 @@ msgstr "केवल अक्षर, संख्या, रिक्त स् #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -800,26 +864,26 @@ msgstr "केवल अक्षर, संख्या, रिक्त स् #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "कैंसिल" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "अकाउंट बंद मत करो" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "नाम मत बदलो" @@ -848,34 +912,34 @@ msgstr "खोज मत करो" msgid "Cancels opening the linked website" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "परिवर्तन" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "हैंडल बदलें" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "हैंडल बदलें" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "मेरा ईमेल बदलें" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "" @@ -887,24 +951,34 @@ msgstr "" #~ msgid "Change your Bluesky password" #~ msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "मेरा ईमेल बदलें" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" msgstr "" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" msgstr "" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" msgstr "" @@ -925,11 +999,11 @@ msgstr "" #~ msgid "Check out some recommended users. Follow them to see similar users." #~ msgstr "कुछ अनुशंसित उपयोगकर्ताओं की जाँच करें। ऐसे ही उपयोगकर्ता देखने के लिए उनका अनुसरण करें।" -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "नीचे प्रवेश करने के लिए OTP कोड के साथ एक ईमेल के लिए अपने इनबॉक्स की जाँच करें:" @@ -945,7 +1019,7 @@ msgstr "" msgid "Choose Service" msgstr "सेवा चुनें" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "" @@ -954,6 +1028,10 @@ msgstr "" #~ msgid "Choose the algorithms that power your experience with custom feeds." #~ msgstr "उन एल्गोरिदम का चयन करें जो कस्टम फीड्स के साथ अपने अनुभव को शक्ति देते हैं।।" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:103 #~ msgid "Choose your algorithmic feeds" #~ msgstr "" @@ -966,19 +1044,19 @@ msgstr "" msgid "Choose your password" msgstr "अपना पासवर्ड चुनें" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "" @@ -987,11 +1065,11 @@ msgstr "" msgid "Clear search query" msgstr "खोज क्वेरी साफ़ करें" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "" @@ -999,6 +1077,10 @@ msgstr "" msgid "click here" msgstr "" +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "" + #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" msgstr "" @@ -1007,19 +1089,28 @@ msgstr "" #~ msgid "Click here to open tag menu for #{tag}" #~ msgstr "" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "" @@ -1031,7 +1122,7 @@ msgstr "चेतावनी को बंद करो" msgid "Close bottom drawer" msgstr "बंद करो" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "" @@ -1047,6 +1138,10 @@ msgstr "छवि बंद करें" msgid "Close image viewer" msgstr "छवि बंद करें" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "नेविगेशन पाद बंद करें" @@ -1064,7 +1159,7 @@ msgstr "" msgid "Closes password update alert" msgstr "" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "" @@ -1076,11 +1171,11 @@ msgstr "" msgid "Collapses list of users for a given notification" msgstr "" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "" @@ -1089,7 +1184,7 @@ msgstr "" msgid "Community Guidelines" msgstr "समुदाय दिशानिर्देश" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "" @@ -1097,7 +1192,7 @@ msgstr "" msgid "Complete the challenge" msgstr "" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "" @@ -1119,13 +1214,13 @@ msgstr "" #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "हो गया" @@ -1135,8 +1230,8 @@ msgstr "हो गया" #~ msgid "Confirm" #~ msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "बदलाव की पुष्टि करें" @@ -1144,7 +1239,7 @@ msgstr "बदलाव की पुष्टि करें" msgid "Confirm content language settings" msgstr "सामग्री भाषा सेटिंग्स की पुष्टि करें" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "खाते को हटा दें" @@ -1160,13 +1255,13 @@ msgstr "" msgid "Confirm your birthdate" msgstr "" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "OTP कोड" @@ -1174,7 +1269,7 @@ msgstr "OTP कोड" #~ msgid "Confirms signing up {email} to the waitlist" #~ msgstr "" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "कनेक्टिंग ..।" @@ -1229,8 +1324,9 @@ msgstr "" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "आगे बढ़ें" @@ -1240,8 +1336,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1255,22 +1352,26 @@ msgstr "" msgid "Continue to the next step without following any accounts" msgstr "" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "कॉपी कर ली" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1280,15 +1381,15 @@ msgstr "" msgid "Copied!" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "कॉपी" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "" @@ -1297,7 +1398,7 @@ msgstr "" msgid "Copy code" msgstr "" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "" @@ -1310,8 +1411,8 @@ msgstr "" #~ msgid "Copy link to profile" #~ msgstr "" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" msgstr "" @@ -1325,29 +1426,29 @@ msgstr "पोस्ट टेक्स्ट कॉपी करें" msgid "Copyright Policy" msgstr "कॉपीराइट नीति" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" msgstr "" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "फ़ीड लोड नहीं कर सकता" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "सूची लोड नहीं कर सकता" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "" -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" msgstr "" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +#~ msgid "Could not unmute chat" +#~ msgstr "" #: src/view/com/auth/create/Step2.tsx:91 #~ msgid "Country" @@ -1358,7 +1459,7 @@ msgstr "" msgid "Create a new account" msgstr "नया खाता बनाएं" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "" @@ -1371,7 +1472,11 @@ msgstr "खाता बनाएँ" msgid "Create an account" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "" @@ -1380,11 +1485,11 @@ msgstr "" msgid "Create new account" msgstr "नया खाता बनाएं" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "बनाया गया {0}" @@ -1400,7 +1505,7 @@ msgstr "बनाया गया {0}" #~ msgid "Creates a card with a thumbnail. The card links to {url}" #~ msgstr "" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "" @@ -1409,12 +1514,12 @@ msgstr "" msgid "Custom" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "कस्टम डोमेन" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "" @@ -1426,8 +1531,8 @@ msgstr "" #~ msgid "Danger Zone" #~ msgstr "खतरा क्षेत्र" -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "डार्क मोड" @@ -1435,7 +1540,7 @@ msgstr "डार्क मोड" msgid "Dark mode" msgstr "" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "" @@ -1443,7 +1548,7 @@ msgstr "" msgid "Date of birth" msgstr "" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "" @@ -1451,14 +1556,14 @@ msgstr "" msgid "Debug panel" msgstr "" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "खाता हटाएं" @@ -1466,35 +1571,40 @@ msgstr "खाता हटाएं" #~ msgid "Delete Account" #~ msgstr "खाता हटाएं" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" msgstr "" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "अप्प पासवर्ड हटाएं" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" - -#: src/view/screens/ProfileList.tsx:417 -msgid "Delete List" -msgstr "सूची हटाएँ" - -#: src/components/dms/MessageMenu.tsx:119 -msgid "Delete message" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" msgstr "" #: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "" + +#: src/view/screens/ProfileList.tsx:470 +msgid "Delete List" +msgstr "सूची हटाएँ" + +#: src/components/dms/MessageMenu.tsx:122 +msgid "Delete message" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "मेरा खाता हटाएं" @@ -1502,7 +1612,7 @@ msgstr "मेरा खाता हटाएं" #~ msgid "Delete my account…" #~ msgstr "मेरा खाता हटाएं…" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "" @@ -1511,7 +1621,7 @@ msgstr "" msgid "Delete post" msgstr "पोस्ट को हटाएं" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "" @@ -1523,10 +1633,14 @@ msgstr "इस पोस्ट को डीलीट करें?" msgid "Deleted" msgstr "" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "यह पोस्ट मिटाई जा चुकी है" +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1534,7 +1648,7 @@ msgstr "यह पोस्ट मिटाई जा चुकी है" msgid "Description" msgstr "विवरण" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" msgstr "" @@ -1542,19 +1656,23 @@ msgstr "" #~ msgid "Developer Tools" #~ msgstr "डेवलपर उपकरण" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "" @@ -1573,11 +1691,13 @@ msgstr "" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "" @@ -1585,7 +1705,7 @@ msgstr "" #~ msgid "Discard draft" #~ msgstr "ड्राफ्ट हटाएं" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "" @@ -1603,7 +1723,7 @@ msgstr "" #~ msgid "Discover new feeds" #~ msgstr "नए फ़ीड की खोज करें" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "" @@ -1615,7 +1735,7 @@ msgstr "नाम" msgid "Display Name" msgstr "प्रदर्शन का नाम" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "" @@ -1627,11 +1747,11 @@ msgstr "" msgid "Doesn't begin or end with a hyphen" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "डोमेन सत्यापित!" @@ -1643,23 +1763,23 @@ msgstr "डोमेन सत्यापित!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "खत्म" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1681,8 +1801,8 @@ msgstr "खत्म {extraText}" #~ msgid "Download Bluesky account data (repository)" #~ msgstr "" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "" @@ -1694,7 +1814,7 @@ msgstr "" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "" @@ -1702,7 +1822,7 @@ msgstr "" msgid "e.g. Alice Roberts" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "" @@ -1739,7 +1859,7 @@ msgctxt "action" msgid "Edit" msgstr "" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "" @@ -1749,7 +1869,7 @@ msgstr "" msgid "Edit image" msgstr "छवि संपादित करें" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "सूची विवरण संपादित करें" @@ -1758,8 +1878,8 @@ msgid "Edit Moderation List" msgstr "" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "मेरी फ़ीड संपादित करें" @@ -1767,18 +1887,18 @@ msgstr "मेरी फ़ीड संपादित करें" msgid "Edit my profile" msgstr "मेरी प्रोफ़ाइल संपादित करें" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "मेरी प्रोफ़ाइल संपादित करें" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "मेरी प्रोफ़ाइल संपादित करें" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "एडिट सेव्ड फीड" @@ -1794,16 +1914,16 @@ msgstr "" msgid "Edit your profile description" msgstr "" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "ईमेल" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "" @@ -1811,20 +1931,20 @@ msgstr "" msgid "Email address" msgstr "ईमेल" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "ईमेल अपडेट किया गया" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "ईमेल:" @@ -1872,7 +1992,7 @@ msgstr "" msgid "Enable media players for" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "इस सेटिंग को केवल उन लोगों के बीच जवाब देखने में सक्षम करें जिन्हें आप फॉलो करते हैं।।" @@ -1880,6 +2000,8 @@ msgstr "इस सेटिंग को केवल उन लोगों क msgid "Enable this source only" msgstr "" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "" @@ -1888,7 +2010,11 @@ msgstr "" msgid "End of feed" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "" @@ -1896,12 +2022,12 @@ msgstr "" msgid "Enter a password" msgstr "" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "" @@ -1909,7 +2035,7 @@ msgstr "" msgid "Enter the code you received to change your password." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "आप जिस डोमेन का उपयोग करना चाहते हैं उसे दर्ज करें" @@ -1930,11 +2056,11 @@ msgstr "" msgid "Enter your email address" msgstr "अपना ईमेल पता दर्ज करें" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "नीचे अपना नया ईमेल पता दर्ज करें।।" @@ -1946,11 +2072,15 @@ msgstr "नीचे अपना नया ईमेल पता दर्ज msgid "Enter your username and password" msgstr "अपने यूज़रनेम और पासवर्ड दर्ज करें" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "" @@ -1959,15 +2089,30 @@ msgstr "" msgid "Everybody" msgstr "" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "" @@ -2005,12 +2150,12 @@ msgstr "" msgid "Explicit sexual images." msgstr "" -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "" @@ -2026,16 +2171,16 @@ msgstr "" #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "" @@ -2043,7 +2188,7 @@ msgstr "" msgid "Failed to create the list. Check your internet connection and try again." msgstr "" -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" msgstr "" @@ -2051,32 +2196,54 @@ msgstr "" msgid "Failed to delete post, please try again" msgstr "" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "" + #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 #~ msgid "Failed to load recommended feeds" #~ msgstr "अनुशंसित फ़ीड लोड करने में विफल" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "फ़ीड ऑफ़लाइन है" @@ -2085,18 +2252,17 @@ msgstr "फ़ीड ऑफ़लाइन है" #~ msgstr "फ़ीड प्राथमिकता" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "प्रतिक्रिया" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "सभी फ़ीड" @@ -2112,7 +2278,7 @@ msgstr "सभी फ़ीड" #~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." #~ msgstr "सामग्री को व्यवस्थित करने के लिए उपयोगकर्ताओं द्वारा फ़ीड बनाए जाते हैं। कुछ फ़ीड चुनें जो आपको दिलचस्प लगें।" -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "फ़ीड कस्टम एल्गोरिदम हैं जिन्हें उपयोगकर्ता थोड़ी कोडिंग विशेषज्ञता के साथ बनाते हैं। <0/> अधिक जानकारी के लिए." @@ -2120,15 +2286,19 @@ msgstr "फ़ीड कस्टम एल्गोरिदम हैं ज msgid "Feeds can be topical as well!" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "" @@ -2154,7 +2324,7 @@ msgstr "" #~ msgid "Finding similar accounts..." #~ msgstr "मिलते-जुलते खाते ढूँढना" -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "" @@ -2166,11 +2336,11 @@ msgstr "" msgid "Fine-tune the discussion threads." msgstr "चर्चा धागे को ठीक-ट्यून करें।।" -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "" @@ -2183,10 +2353,10 @@ msgstr "" msgid "Flip vertically" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -2198,7 +2368,7 @@ msgid "Follow" msgstr "" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "" @@ -2232,7 +2402,7 @@ msgstr "" msgid "Followed users" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "केवल वे यूजर को फ़ॉलो किया गया" @@ -2245,28 +2415,30 @@ msgstr "" msgid "Followers" msgstr "यह यूजर आपका फ़ोलो करता है" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "फोल्लोविंग" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "" @@ -2278,15 +2450,15 @@ msgstr "यह यूजर आपका फ़ोलो करता है" msgid "Follows You" msgstr "" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "सुरक्षा कारणों के लिए, हमें आपके ईमेल पते पर एक OTP कोड भेजने की आवश्यकता होगी।।" -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "सुरक्षा कारणों के लिए, आप इसे फिर से देखने में सक्षम नहीं होंगे। यदि आप इस पासवर्ड को खो देते हैं, तो आपको एक नया उत्पन्न करना होगा।।" @@ -2303,15 +2475,15 @@ msgstr "सुरक्षा कारणों के लिए, आप इस msgid "Forgot Password" msgstr "पासवर्ड भूल गए" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "" @@ -2319,7 +2491,7 @@ msgstr "" msgid "From @{sanitizedAuthor}" msgstr "" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "" @@ -2328,12 +2500,20 @@ msgstr "" msgid "Gallery" msgstr "गैलरी" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "प्रारंभ करें" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "" @@ -2342,9 +2522,9 @@ msgstr "" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "वापस जाओ" @@ -2352,13 +2532,14 @@ msgstr "वापस जाओ" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "वापस जाओ" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2378,16 +2559,20 @@ msgstr "" #~ msgid "Go to @{queryMaybeHandle}" #~ msgstr "" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "अगला" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" msgstr "" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" msgstr "" @@ -2395,7 +2580,7 @@ msgstr "" msgid "Graphic Media" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "हैंडल" @@ -2403,7 +2588,7 @@ msgstr "हैंडल" msgid "Haptics" msgstr "" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "" @@ -2415,7 +2600,7 @@ msgstr "" #~ msgid "Hashtag: {tag}" #~ msgstr "" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "" @@ -2424,10 +2609,14 @@ msgid "Having trouble?" msgstr "" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "सहायता" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "" @@ -2440,13 +2629,13 @@ msgstr "" msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "यहां आपका ऐप पासवर्ड है." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2468,7 +2657,7 @@ msgid "Hide post" msgstr "" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "" @@ -2484,23 +2673,23 @@ msgstr "उपयोगकर्ता सूची छुपाएँ" #~ msgid "Hides posts from {0} in your feed" #~ msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "" @@ -2512,11 +2701,11 @@ msgstr "" msgid "Hmmmm, we couldn't load that moderation service." msgstr "" -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "होम फीड" @@ -2527,14 +2716,14 @@ msgstr "होम फीड" #~ msgid "Home Feed Preferences" #~ msgstr "होम फ़ीड प्राथमिकताएं" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "होस्टिंग प्रदाता" @@ -2542,25 +2731,30 @@ msgstr "होस्टिंग प्रदाता" msgid "How should we open this link?" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "मेरे पास एक OTP कोड है" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "मेरे पास अपना डोमेन है" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "यदि किसी को चुना जाता है, तो सभी उम्र के लिए उपयुक्त है।।" @@ -2568,7 +2762,7 @@ msgstr "यदि किसी को चुना जाता है, तो msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "" -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "" @@ -2580,7 +2774,7 @@ msgstr "" msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "" -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "" @@ -2588,7 +2782,7 @@ msgstr "" msgid "Image" msgstr "" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "छवि alt पाठ" @@ -2597,15 +2791,19 @@ msgstr "छवि alt पाठ" #~ msgid "Image options" #~ msgstr "छवि विकल्प" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "" @@ -2617,7 +2815,7 @@ msgstr "" #~ msgid "Input invite code to proceed" #~ msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "" @@ -2625,7 +2823,7 @@ msgstr "" msgid "Input new password" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "" @@ -2633,15 +2831,15 @@ msgstr "" #~ msgid "Input phone number for SMS verification" #~ msgstr "" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "" @@ -2653,11 +2851,11 @@ msgstr "" #~ msgid "Input your email to get on the Bluesky waitlist" #~ msgstr "" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "" @@ -2665,16 +2863,20 @@ msgstr "" msgid "Input your user handle" msgstr "" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "अवैध उपयोगकर्ता नाम या पासवर्ड" @@ -2690,7 +2892,7 @@ msgstr "एक दोस्त को आमंत्रित करें" msgid "Invite code" msgstr "आमंत्रण कोड" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "" @@ -2727,7 +2929,7 @@ msgstr "" #~ msgid "Join Waitlist" #~ msgstr "वेटरलिस्ट में शामिल हों" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "" @@ -2747,7 +2949,7 @@ msgstr "" msgid "Labels" msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "" @@ -2755,11 +2957,11 @@ msgstr "" #~ msgid "labels have been placed on this {labelTarget}" #~ msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "" @@ -2767,7 +2969,7 @@ msgstr "" msgid "Language selection" msgstr "अपनी भाषा चुने" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "" @@ -2776,7 +2978,7 @@ msgstr "" msgid "Language Settings" msgstr "भाषा सेटिंग्स" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "भाषा" @@ -2802,7 +3004,7 @@ msgstr "अधिक जानें" msgid "Learn more about the moderation applied to this content." msgstr "" -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "इस चेतावनी के बारे में अधिक जानें" @@ -2815,13 +3017,20 @@ msgstr "" msgid "Learn more." msgstr "" -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" msgstr "" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" msgstr "" @@ -2837,7 +3046,7 @@ msgstr "लीविंग Bluesky" msgid "left to go." msgstr "" -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "" @@ -2846,7 +3055,7 @@ msgstr "" msgid "Let's get your password reset!" msgstr "चलो अपना पासवर्ड रीसेट करें!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "" @@ -2855,7 +3064,7 @@ msgstr "" #~ msgid "Library" #~ msgstr "चित्र पुस्तकालय" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "लाइट मोड" @@ -2863,8 +3072,8 @@ msgstr "लाइट मोड" #~ msgid "Like" #~ msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "इस फ़ीड को लाइक करो" @@ -2906,7 +3115,7 @@ msgstr "" msgid "Likes" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "" @@ -2918,19 +3127,19 @@ msgstr "" msgid "List Avatar" msgstr "सूची अवतार" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "" @@ -2938,23 +3147,27 @@ msgstr "" msgid "List Name" msgstr "सूची का नाम" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "सूची" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "" + #: src/view/com/post-thread/PostThread.tsx:333 #: src/view/com/post-thread/PostThread.tsx:341 #~ msgid "Load more posts" @@ -2965,9 +3178,9 @@ msgid "Load new notifications" msgstr "नई सूचनाएं लोड करें" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "नई पोस्ट लोड करें" @@ -2998,7 +3211,7 @@ msgstr "" msgid "Login to account that is not listed" msgstr "उस खाते में लॉग इन करें जो सूचीबद्ध नहीं है" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "" @@ -3006,14 +3219,35 @@ msgstr "" msgid "Looks like XXXXX-XXXXX" msgstr "" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "यह सुनिश्चित करने के लिए कि आप कहाँ जाना चाहते हैं!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "" + #: src/view/com/auth/create/Step2.tsx:118 #~ msgid "May not be longer than 253 characters" #~ msgstr "" @@ -3040,44 +3274,50 @@ msgstr "" msgid "Menu" msgstr "मेनू" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" msgstr "" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" +#~ msgid "Messaging settings" +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "मॉडरेशन" @@ -3090,13 +3330,13 @@ msgstr "" msgid "Moderation list by {0}" msgstr "" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "" @@ -3117,7 +3357,7 @@ msgstr "मॉडरेशन सूचियाँ" msgid "Moderation Lists" msgstr "" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "" @@ -3138,11 +3378,11 @@ msgstr "" msgid "More" msgstr "" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "अधिक फ़ीड" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "अधिक विकल्प" @@ -3171,7 +3411,7 @@ msgstr "" msgid "Mute Account" msgstr "खाता म्यूट करें" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "खातों को म्यूट करें" @@ -3183,24 +3423,29 @@ msgstr "" #~ msgid "Mute all {tag} posts" #~ msgstr "" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "इन खातों को म्यूट करें?" @@ -3208,11 +3453,11 @@ msgstr "इन खातों को म्यूट करें?" #~ msgid "Mute this List" #~ msgstr "" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "" @@ -3251,7 +3496,7 @@ msgstr "" msgid "Muted words & tags" msgstr "" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "म्यूट करना निजी है. म्यूट किए गए खाते आपके साथ इंटरैक्ट कर सकते हैं, लेकिन आप उनकी पोस्ट नहीं देखेंगे या उनसे सूचनाएं प्राप्त नहीं करेंगे।" @@ -3260,19 +3505,19 @@ msgstr "म्यूट करना निजी है. म्यूट कि msgid "My Birthday" msgstr "जन्मदिन" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "मेरी फ़ीड" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "मेरी प्रोफाइल" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "मेरी फ़ीड" @@ -3280,7 +3525,7 @@ msgstr "मेरी फ़ीड" #~ msgid "my-server.com" #~ msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "नाम" @@ -3289,27 +3534,27 @@ msgstr "नाम" msgid "Name is required" msgstr "" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "" @@ -3323,7 +3568,7 @@ msgstr "" #~ msgid "Never lose access to your followers and data." #~ msgstr "अपने फ़ॉलोअर्स और डेटा तक पहुंच कभी न खोएं।" -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "" @@ -3331,7 +3576,7 @@ msgstr "" #~ msgid "Nevermind" #~ msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "" @@ -3344,12 +3589,16 @@ msgstr "" msgid "New" msgstr "नया" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" msgstr "" +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" msgstr "" @@ -3362,22 +3611,22 @@ msgstr "" msgid "New Password" msgstr "" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "नई पोस्ट" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "नई पोस्ट" @@ -3390,14 +3639,14 @@ msgstr "" msgid "Newest replies first" msgstr "" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3415,29 +3664,29 @@ msgstr "अगला" msgid "Next image" msgstr "अगली फोटो" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "नहीं" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "कोई विवरण नहीं" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "" @@ -3445,25 +3694,39 @@ msgstr "" msgid "No longer than 253 characters" msgstr "" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" msgstr "" +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "" + #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "\"{query}\" के लिए कोई परिणाम नहीं मिला" @@ -3473,13 +3736,13 @@ msgstr "\"{query}\" के लिए कोई परिणाम नहीं msgid "No results found for {query}" msgstr "{query} के लिए कोई परिणाम नहीं मिला\"" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "" #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "" #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3490,6 +3753,10 @@ msgstr "" msgid "Nobody" msgstr "" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3508,8 +3775,8 @@ msgstr "" msgid "Not Found" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "" @@ -3523,25 +3790,37 @@ msgstr "" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "" -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "सूचनाएं" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "" @@ -3557,17 +3836,17 @@ msgstr "" msgid "Off" msgstr "" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "अरे नहीं!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "" #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "" @@ -3579,14 +3858,18 @@ msgstr "ठीक है" msgid "Oldest replies first" msgstr "" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "एक या अधिक छवियाँ alt पाठ याद आती हैं।।" +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "" @@ -3595,37 +3878,50 @@ msgstr "" msgid "Only contains letters, numbers, and hyphens" msgstr "" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "" +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "" + #: src/view/screens/Moderation.tsx:75 #~ msgid "Open content filtering settings" #~ msgstr "" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "" @@ -3642,12 +3938,12 @@ msgstr "ओपन नेविगेशन" msgid "Open post options menu" msgstr "" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "" @@ -3655,7 +3951,7 @@ msgstr "" msgid "Opens {numItems} options" msgstr "" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "" @@ -3671,11 +3967,15 @@ msgstr "" msgid "Opens camera on device" msgstr "" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "भाषा सेटिंग्स खोलें" @@ -3687,7 +3987,7 @@ msgstr "" #~ msgid "Opens editor for profile display name, avatar, background image, and description" #~ msgstr "" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "" @@ -3721,7 +4021,7 @@ msgstr "" msgid "Opens list of invite codes" msgstr "" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "" @@ -3729,44 +4029,44 @@ msgstr "" #~ msgid "Opens modal for account deletion confirmation. Requires email code." #~ msgstr "" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "कस्टम डोमेन का उपयोग करने के लिए मोडल खोलें" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "मॉडरेशन सेटिंग्स खोलें" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "सभी बचाया फ़ीड के साथ स्क्रीन खोलें" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "" @@ -3774,7 +4074,7 @@ msgstr "" #~ msgid "Opens the app password settings page" #~ msgstr "ऐप पासवर्ड सेटिंग पेज खोलें" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "" @@ -3786,20 +4086,20 @@ msgstr "" msgid "Opens the linked website" msgstr "" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "स्टोरीबुक पेज खोलें" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "सिस्टम लॉग पेज खोलें" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "धागे वरीयताओं को खोलता है" @@ -3807,7 +4107,8 @@ msgstr "धागे वरीयताओं को खोलता है" msgid "Option {0} of {numItems}" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "" @@ -3819,7 +4120,7 @@ msgstr "" #~ msgid "Or you can try our \"Discover\" algorithm:" #~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "" @@ -3835,7 +4136,11 @@ msgstr "अन्य खाता" msgid "Other..." msgstr "अन्य..।" -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "पृष्ठ नहीं मिला" @@ -3844,10 +4149,10 @@ msgstr "पृष्ठ नहीं मिला" msgid "Page Not Found" msgstr "" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "पासवर्ड" @@ -3879,15 +4184,15 @@ msgstr "" msgid "People following @{0}" msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "" -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "" @@ -3895,23 +4200,27 @@ msgstr "" #~ msgid "Phone number" #~ msgstr "" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "चित्र वयस्कों के लिए थे।।" -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "पिन किया गया फ़ीड" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "" @@ -3920,6 +4229,11 @@ msgstr "" msgid "Play {0}" msgstr "" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" msgstr "" @@ -3933,23 +4247,23 @@ msgstr "" msgid "Plays the GIF" msgstr "" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "" -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "" -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "इसे बदलने से पहले कृपया अपने ईमेल की पुष्टि करें। यह एक अस्थायी आवश्यकता है जबकि ईमेल-अपडेटिंग टूल जोड़ा जाता है, और इसे जल्द ही हटा दिया जाएगा।।" -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "" @@ -3957,11 +4271,11 @@ msgstr "" #~ msgid "Please enter a phone number that can receive SMS text messages." #~ msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "कृपया इस ऐप पासवर्ड के लिए एक अद्वितीय नाम दर्ज करें या हमारे यादृच्छिक रूप से उत्पन्न एक का उपयोग करें।।" -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "" @@ -3973,19 +4287,24 @@ msgstr "" #~ msgid "Please enter the verification code sent to {phoneNumberFormatted}." #~ msgstr "" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "कृपया अपना पासवर्ड भी दर्ज करें:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "" + #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" msgstr "" @@ -3994,19 +4313,19 @@ msgstr "" #~ msgid "Please tell us why you think this content warning was incorrectly applied!" #~ msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "" @@ -4014,18 +4333,18 @@ msgstr "" #~ msgid "Pornography" #~ msgstr "" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "पोस्ट" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "" @@ -4039,7 +4358,7 @@ msgstr "" msgid "Post deleted" msgstr "" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "छुपा पोस्ट" @@ -4061,8 +4380,8 @@ msgstr "पोस्ट भाषा" msgid "Post Languages" msgstr "पोस्ट भाषा" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "पोस्ट नहीं मिला" @@ -4074,11 +4393,11 @@ msgstr "" msgid "Posts" msgstr "" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "" @@ -4086,21 +4405,25 @@ msgstr "" msgid "Potentially Misleading Link" msgstr "शायद एक भ्रामक लिंक" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -4114,7 +4437,7 @@ msgstr "प्राथमिक भाषा" msgid "Prioritize Your Follows" msgstr "अपने फ़ॉलोअर्स को प्राथमिकता दें" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "गोपनीयता" @@ -4122,25 +4445,29 @@ msgstr "गोपनीयता" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "गोपनीयता नीति" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "प्रसंस्करण..." -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "प्रोफ़ाइल" @@ -4148,11 +4475,11 @@ msgstr "प्रोफ़ाइल" msgid "Profile updated" msgstr "" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "अपने ईमेल को सत्यापित करके अपने खाते को सुरक्षित रखें।।" -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "" @@ -4164,11 +4491,11 @@ msgstr "" msgid "Public, shareable lists which can drive feeds." msgstr "सार्वजनिक, साझा करने योग्य सूचियाँ जो फ़ीड चला सकती हैं।" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "" @@ -4194,6 +4521,14 @@ msgstr "" msgid "Ratios" msgstr "अनुपात" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "" @@ -4206,12 +4541,20 @@ msgstr "" #~ msgid "Recommended Users" #~ msgstr "अनुशंसित लोग" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "निकालें" @@ -4223,7 +4566,7 @@ msgstr "निकालें" msgid "Remove account" msgstr "खाता हटाएं" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "" @@ -4231,22 +4574,25 @@ msgstr "" msgid "Remove Banner" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "फ़ीड हटाएँ" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "मेरे फ़ीड से हटाएँ" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "" @@ -4258,7 +4604,7 @@ msgstr "छवि निकालें" msgid "Remove image preview" msgstr "छवि पूर्वावलोकन निकालें" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "" @@ -4274,7 +4620,7 @@ msgstr "" #~ msgid "Remove this feed from my feeds?" #~ msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "" @@ -4287,11 +4633,13 @@ msgstr "" msgid "Removed from list" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "" @@ -4303,6 +4651,11 @@ msgstr "" msgid "Removes quoted post" msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "" @@ -4311,12 +4664,12 @@ msgstr "" msgid "Replies to this thread are disabled" msgstr "" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "फिल्टर" @@ -4327,12 +4680,14 @@ msgstr "फिल्टर" #~ msgstr "" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" msgstr "" @@ -4342,28 +4697,34 @@ msgstr "" #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "रिपोर्ट" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "रिपोर्ट फ़ीड" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "रिपोर्ट सूची" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" msgstr "" @@ -4372,30 +4733,36 @@ msgstr "" msgid "Report post" msgstr "रिपोर्ट पोस्ट" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "" @@ -4413,7 +4780,7 @@ msgstr "पोस्ट दोबारा पोस्ट करें या msgid "Reposted By" msgstr "द्वारा दोबारा पोस्ट किया गया" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "" @@ -4421,7 +4788,7 @@ msgstr "" #~ msgid "Reposted by <0/>" #~ msgstr "" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "" @@ -4429,12 +4796,12 @@ msgstr "" msgid "reposted your post" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "अनुरोध बदलें" @@ -4451,7 +4818,7 @@ msgstr "" msgid "Require alt text before posting" msgstr "पोस्ट करने से पहले वैकल्पिक टेक्स्ट की आवश्यकता है" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "" @@ -4459,8 +4826,8 @@ msgstr "" msgid "Required for this provider" msgstr "इस प्रदाता के लिए आवश्यक" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "" @@ -4476,8 +4843,8 @@ msgstr "" #~ msgid "Reset onboarding" #~ msgstr "" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "ऑनबोर्डिंग स्टेट को रीसेट करें" @@ -4489,20 +4856,20 @@ msgstr "पासवर्ड रीसेट" #~ msgid "Reset preferences" #~ msgstr "" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "प्राथमिकताओं को रीसेट करें" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "ऑनबोर्डिंग स्टेट को रीसेट करें" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "प्राथमिकताओं की स्थिति को रीसेट करें" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "" @@ -4511,13 +4878,14 @@ msgstr "" msgid "Retries the last action, which errored out" msgstr "" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 @@ -4525,11 +4893,11 @@ msgid "Retry" msgstr "फिर से कोशिश करो" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" +#~ msgid "Retry." +#~ msgstr "" #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "" @@ -4538,7 +4906,7 @@ msgid "Returns to home page" msgstr "" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "" @@ -4547,21 +4915,21 @@ msgstr "" #~ msgstr "" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "सेव करो" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "सेव ऑल्ट टेक्स्ट" @@ -4573,7 +4941,7 @@ msgstr "" msgid "Save Changes" msgstr "बदलाव सेव करो" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "बदलाव सेव करो" @@ -4581,16 +4949,16 @@ msgstr "बदलाव सेव करो" msgid "Save image crop" msgstr "फोटो बदलाव सेव करो" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "सहेजे गए फ़ीड" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" msgstr "" @@ -4598,7 +4966,8 @@ msgstr "" #~ msgid "Saved to your camera roll." #~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "" @@ -4606,7 +4975,7 @@ msgstr "" msgid "Saves any changes to your profile" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "" @@ -4614,16 +4983,20 @@ msgstr "" msgid "Saves image crop settings" msgstr "" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4631,12 +5004,12 @@ msgstr "" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "खोज" @@ -4665,8 +5038,8 @@ msgstr "" #~ msgstr "" #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "" #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4678,7 +5051,8 @@ msgstr "" msgid "Search GIFs" msgstr "" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" msgstr "" @@ -4686,7 +5060,7 @@ msgstr "" msgid "Search Tenor" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "सुरक्षा चरण आवश्यक" @@ -4715,11 +5089,11 @@ msgstr "" #~ msgstr "" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "" @@ -4731,10 +5105,22 @@ msgstr "" msgid "Select {item}" msgstr "" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "" + #: src/view/com/modals/ServerInput.tsx:75 #~ msgid "Select Bluesky Social" #~ msgstr "Bluesky Social का चयन करें" @@ -4747,7 +5133,7 @@ msgstr "मौजूदा खाते से चुनें" msgid "Select GIF" msgstr "" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "" @@ -4772,7 +5158,11 @@ msgstr "" msgid "Select some accounts below to follow" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "" @@ -4808,7 +5198,7 @@ msgstr "" msgid "Select your date of birth" msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "" @@ -4828,32 +5218,38 @@ msgstr "" msgid "Select your secondary algorithmic feeds" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "पुष्टिकरण ईमेल भेजें" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "ईमेल भेजें" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "ईमेल भेजें" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "प्रतिक्रिया भेजें" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "" @@ -4865,12 +5261,12 @@ msgstr "" msgid "Send report to {0}" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "" @@ -4920,15 +5316,15 @@ msgstr "नया पासवर्ड सेट करें" #~ msgid "Set password" #~ msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "अपने फ़ीड से सभी उद्धरण पदों को छिपाने के लिए इस सेटिंग को \"नहीं\" में सेट करें। Reposts अभी भी दिखाई देगा।।" -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "इस सेटिंग को अपने फ़ीड से सभी उत्तरों को छिपाने के लिए \"नहीं\" पर सेट करें।।" -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "इस सेटिंग को अपने फ़ीड से सभी पोस्ट छिपाने के लिए \"नहीं\" करने के लिए सेट करें।।" @@ -4940,7 +5336,7 @@ msgstr "इस सेटिंग को \"हाँ\" में सेट क #~ msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your following feed. This is an experimental feature." #~ msgstr "इस सेटिंग को अपने निम्नलिखित फ़ीड में अपने सहेजे गए फ़ीड के नमूने दिखाने के लिए \"हाँ\" पर सेट करें। यह एक प्रयोगात्मक विशेषता है।।" -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "" @@ -4948,27 +5344,27 @@ msgstr "" msgid "Set up your account" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "" @@ -4998,15 +5394,14 @@ msgstr "" #~ msgstr "" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "सेटिंग्स" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "यौन गतिविधि या कामुक नग्नता।।" @@ -5014,7 +5409,7 @@ msgstr "यौन गतिविधि या कामुक नग्नत msgid "Sexually Suggestive" msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "" @@ -5024,18 +5419,26 @@ msgstr "" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "शेयर" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "" @@ -5044,15 +5447,19 @@ msgstr "" msgid "Share Link" msgstr "" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "दिखाओ" @@ -5082,10 +5489,14 @@ msgstr "" #~ msgid "Show embeds from {0}" #~ msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" @@ -5093,7 +5504,7 @@ msgstr "" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "" @@ -5102,11 +5513,15 @@ msgstr "" msgid "Show more like this" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "मेरी फीड से पोस्ट दिखाएं" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "उद्धरण पोस्ट दिखाओ" @@ -5122,7 +5537,7 @@ msgstr "" msgid "Show re-posts in Following feed" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "उत्तर दिखाएँ" @@ -5142,7 +5557,7 @@ msgstr "" #~ msgid "Show replies with at least {value} {0}" #~ msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "रीपोस्ट दिखाएँ" @@ -5151,7 +5566,7 @@ msgid "Show reposts in Following" msgstr "" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "" @@ -5179,17 +5594,17 @@ msgstr "" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -5222,17 +5637,17 @@ msgstr "" msgid "Sign into Bluesky or create a new account" msgstr "" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "साइन आउट" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -5248,7 +5663,7 @@ msgstr "" msgid "Sign-in Required" msgstr "" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "आपने इस रूप में साइन इन करा है:" @@ -5261,12 +5676,12 @@ msgstr "" #~ msgid "Signs {0} out of Bluesky" #~ msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "स्किप" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "" @@ -5274,10 +5689,18 @@ msgstr "" #~ msgid "SMS verification" #~ msgstr "" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "" + #: src/view/com/modals/ProfilePreview.tsx:62 #~ msgid "Something went wrong and we're not sure what." #~ msgstr "" @@ -5296,8 +5719,8 @@ msgstr "" #~ msgid "Something went wrong. Check your email and try again." #~ msgstr "" -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "" @@ -5309,19 +5732,24 @@ msgstr "उत्तर क्रमबद्ध करें" msgid "Sort replies to the same post by:" msgstr "उसी पोस्ट के उत्तरों को इस प्रकार क्रमबद्ध करें:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" msgstr "" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "" @@ -5333,15 +5761,23 @@ msgstr "स्क्वायर" #~ msgid "Staging" #~ msgstr "स्टेजिंग" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "" + #: src/view/screens/Settings/index.tsx:862 #~ msgid "Status page" #~ msgstr "स्थिति पृष्ठ" -#: src/view/screens/Settings/index.tsx:896 +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" msgstr "" @@ -5357,29 +5793,31 @@ msgstr "" #~ msgid "Step {0} of {numSteps}" #~ msgstr "" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "" #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Storybook" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "सब्सक्राइब" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "" @@ -5388,11 +5826,11 @@ msgstr "" msgid "Subscribe to the {0} feed" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "इस सूची को सब्सक्राइब करें" @@ -5404,7 +5842,7 @@ msgstr "अनुशंसित लोग" msgid "Suggested for you" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "" @@ -5423,23 +5861,23 @@ msgstr "सहायता" msgid "Switch Account" msgstr "खाते बदलें" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "प्रणाली" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "सिस्टम लॉग" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "" @@ -5459,41 +5897,47 @@ msgstr "लंबा" msgid "Tap to view fully" msgstr "" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "शर्तें" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "सेवा की शर्तें" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "पाठ इनपुट फ़ील्ड" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "" @@ -5501,7 +5945,7 @@ msgstr "" msgid "That handle is already taken." msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "अनब्लॉक करने के बाद अकाउंट आपसे इंटरैक्ट कर सकेगा।" @@ -5518,11 +5962,15 @@ msgstr "सामुदायिक दिशानिर्देशों क msgid "The Copyright Policy has been moved to <0/>" msgstr "कॉपीराइट नीति को <0/> पर स्थानांतरित कर दिया गया है" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "" @@ -5530,8 +5978,8 @@ msgstr "" msgid "The following steps will help customize your Bluesky experience." msgstr "" -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "हो सकता है कि यह पोस्ट हटा दी गई हो।" @@ -5551,37 +5999,40 @@ msgstr "सेवा की शर्तों को स्थानांत msgid "There are many feeds to try:" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "" -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "" -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "" #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "" @@ -5589,7 +6040,7 @@ msgstr "" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "" -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "" @@ -5602,7 +6053,8 @@ msgstr "" msgid "There was an issue fetching your lists. Tap here to try again." msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "" @@ -5610,32 +6062,32 @@ msgstr "" msgid "There was an issue syncing your preferences with the server" msgstr "" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "" -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "एप्लिकेशन में एक अप्रत्याशित समस्या थी. कृपया हमें बताएं कि क्या आपके साथ ऐसा हुआ है!" @@ -5660,14 +6112,26 @@ msgstr "यह {screenDescription} फ्लैग किया गया है msgid "This account has requested that users sign in to view their profile." msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:26 +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "" + #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." msgstr "" @@ -5685,7 +6149,7 @@ msgstr "" msgid "This content is not available because one of the users involved has blocked the other." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "" @@ -5693,17 +6157,17 @@ msgstr "" #~ msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." #~ msgstr "" -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "" #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "" @@ -5711,11 +6175,15 @@ msgstr "" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "" + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "यह जानकारी अन्य उपयोगकर्ताओं के साथ साझा नहीं की जाती है।।" -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "अगर आपको कभी अपना ईमेल बदलने या पासवर्ड रीसेट करने की आवश्यकता है तो यह महत्वपूर्ण है।।" @@ -5731,7 +6199,15 @@ msgstr "" msgid "This label was applied by the author." msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "" @@ -5739,7 +6215,7 @@ msgstr "" msgid "This link is taking you to the following website:" msgstr "यह लिंक आपको निम्नलिखित वेबसाइट पर ले जा रहा है:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "" @@ -5747,11 +6223,11 @@ msgstr "" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "इस पोस्ट को हटा दिया गया है।।" @@ -5772,7 +6248,7 @@ msgstr "" msgid "This service has not provided terms of service or a privacy policy." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "" @@ -5780,6 +6256,10 @@ msgstr "" msgid "This user doesn't have any followers." msgstr "" +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5817,7 +6297,7 @@ msgstr "" #~ msgid "This warning is only available for posts with media attached." #~ msgstr "यह चेतावनी केवल मीडिया संलग्न पोस्ट के लिए उपलब्ध है।" -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "" @@ -5825,12 +6305,12 @@ msgstr "" #~ msgid "This will hide this post from your feeds." #~ msgstr "" -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "थ्रेड प्राथमिकता" @@ -5842,15 +6322,19 @@ msgstr "थ्रेड मोड" msgid "Threads Preferences" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "" +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "" @@ -5883,60 +6367,69 @@ msgctxt "action" msgid "Try again" msgstr "फिर से कोशिश करो" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "आपकी सेवा से संपर्क करने में असमर्थ। कृपया अपने इंटरनेट कनेक्शन की जांच करें।।" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "अनब्लॉक" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "अनब्लॉक खाता" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "पुनः पोस्ट पूर्ववत करें" @@ -5950,7 +6443,7 @@ msgstr "" msgid "Unfollow" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "" @@ -5967,12 +6460,12 @@ msgstr "" #~ msgid "Unlike" #~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "" @@ -5993,41 +6486,54 @@ msgstr "" #~ msgid "Unmute all {tag} posts" #~ msgstr "" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" msgstr "" +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "थ्रेड को अनम्यूट करें" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "" +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "" + #: src/view/screens/ProfileFeed.tsx:346 #~ msgid "Unsave" #~ msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "" @@ -6039,7 +6545,7 @@ msgstr "सूची में {displayName} अद्यतन करें" #~ msgid "Update Available" #~ msgstr "उपलब्ध अद्यतन" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "" @@ -6047,42 +6553,46 @@ msgstr "" msgid "Updating..." msgstr "अद्यतन..।" -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "एक पाठ फ़ाइल अपलोड करने के लिए:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "अपने खाते या पासवर्ड को पूर्ण एक्सेस देने के बिना अन्य ब्लूस्की ग्राहकों को लॉगिन करने के लिए ऐप पासवर्ड का उपयोग करें।।" -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "डिफ़ॉल्ट प्रदाता का उपयोग करें" @@ -6096,11 +6606,15 @@ msgstr "" msgid "Use my default browser" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "अपने हैंडल के साथ दूसरे ऐप में साइन इन करने के लिए इसका उपयोग करें।" @@ -6121,6 +6635,10 @@ msgstr "" msgid "User Blocked by \"{0}\"" msgstr "" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "" @@ -6142,13 +6660,13 @@ msgstr "" msgid "User list by {0}" msgstr "" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "" @@ -6164,11 +6682,11 @@ msgstr "" msgid "User Lists" msgstr "लोग सूचियाँ" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "यूजर नाम या ईमेल पता" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "यूजर लोग" @@ -6176,6 +6694,13 @@ msgstr "यूजर लोग" msgid "users followed by <0/>" msgstr "" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "" @@ -6184,7 +6709,7 @@ msgstr "" msgid "Users that have liked this content or profile" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "" @@ -6196,32 +6721,32 @@ msgstr "" #~ msgid "Verify {0}" #~ msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" msgstr "" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "ईमेल सत्यापित करें" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "मेरी ईमेल सत्यापित करें" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "मेरी ईमेल सत्यापित करें" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "नया ईमेल सत्यापित करें" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "" @@ -6229,15 +6754,15 @@ msgstr "" #~ msgid "Version {0}" #~ msgstr "" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" msgstr "" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "" @@ -6245,25 +6770,25 @@ msgstr "" msgid "View debug entry" msgstr "डीबग प्रविष्टि देखें" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "" @@ -6275,7 +6800,7 @@ msgstr "अवतार देखें" msgid "View the labeling service provided by @{0}" msgstr "" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "" @@ -6307,11 +6832,15 @@ msgstr "" msgid "We couldn't find any results for that hashtag." msgstr "" +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "" @@ -6323,7 +6852,7 @@ msgstr "" #~ msgid "We recommend \"For You\" by Skygaze:" #~ msgstr "" -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "" @@ -6339,7 +6868,7 @@ msgstr "" msgid "We were unable to load your configured labelers at this time." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "" @@ -6351,10 +6880,14 @@ msgstr "" #~ msgid "We'll look into your appeal promptly." #~ msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "हम आपके हमारी सेवा में शामिल होने को लेकर बहुत उत्साहित हैं!" @@ -6363,7 +6896,7 @@ msgstr "हम आपके हमारी सेवा में शामि msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "" -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "" @@ -6371,12 +6904,12 @@ msgstr "" msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "" -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "हम क्षमा चाहते हैं! हमें वह पेज नहीं मिल रहा जिसे आप ढूंढ रहे थे।" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "" @@ -6384,7 +6917,7 @@ msgstr "" #~ msgid "Welcome to <0>Bluesky" #~ msgstr "<0>Bluesky में आपका स्वागत है" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "" @@ -6394,7 +6927,7 @@ msgstr "" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "" @@ -6406,28 +6939,41 @@ msgstr "इस पोस्ट में किस भाषा का उपय msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "कौन से भाषाएं आपको अपने एल्गोरिदमिक फ़ीड में देखना पसंद करती हैं?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "" @@ -6435,21 +6981,21 @@ msgstr "" msgid "Wide" msgstr "चौड़ा" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" msgstr "" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "पोस्ट लिखो" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "अपना जवाब दें" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "" @@ -6458,16 +7004,16 @@ msgstr "" #~ msgstr "" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "हाँ" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" msgstr "" @@ -6496,6 +7042,14 @@ msgstr "" msgid "You can change these settings later." msgstr "" +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -6509,22 +7063,26 @@ msgstr "" msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "आपके पास अभी तक कोई आमंत्रण कोड नहीं है! जब आप कुछ अधिक समय के लिए Bluesky पर रहेंगे तो हम आपको कुछ भेजेंगे।" -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "आपके पास कोई पिन किया हुआ फ़ीड नहीं है." #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "आपके पास कोई सहेजी गई फ़ीड नहीं है." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "आपने लेखक को अवरुद्ध किया है या आपने लेखक द्वारा अवरुद्ध किया है।।" +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -6559,6 +7117,10 @@ msgstr "" #~ msgid "You have muted this user." #~ msgstr "" +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "" @@ -6568,9 +7130,9 @@ msgstr "" msgid "You have no lists." msgstr "आपके पास कोई सूची नहीं है।।" -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." @@ -6580,7 +7142,7 @@ msgstr "" #~ msgid "You have not blocked any accounts yet. To block an account, go to their profile and selected \"Block account\" from the menu on their account." #~ msgstr "आपने अभी तक कोई भी अकाउंट ब्लॉक नहीं किया है. किसी खाते को ब्लॉक करने के लिए, उनकी प्रोफ़ाइल पर जाएं और उनके खाते के मेनू से \"खाता ब्लॉक करें\" चुनें।" -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "आपने अभी तक कोई ऐप पासवर्ड नहीं बनाया है। आप नीचे बटन दबाकर एक बना सकते हैं।।" @@ -6592,11 +7154,19 @@ msgstr "" #~ msgid "You have not muted any accounts yet. To mute an account, go to their profile and selected \"Mute account\" from the menu on their account." #~ msgstr "आपने अभी तक कोई खाता म्यूट नहीं किया है. किसी खाते को म्यूट करने के लिए, उनकी प्रोफ़ाइल पर जाएं और उनके खाते के मेनू से \"खाता म्यूट करें\" चुनें।" -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "" @@ -6612,7 +7182,7 @@ msgstr "" msgid "You must be 18 years or older to enable adult content" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "" @@ -6628,7 +7198,7 @@ msgstr "" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "आपको \"reset code\" के साथ एक ईमेल प्राप्त होगा। उस कोड को यहाँ दर्ज करें, फिर अपना नया पासवर्ड दर्ज करें।।" -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" msgstr "" @@ -6642,7 +7212,7 @@ msgstr "" msgid "You're in line" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "" @@ -6659,11 +7229,11 @@ msgstr "" msgid "Your account" msgstr "आपका खाता" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "" @@ -6671,6 +7241,10 @@ msgstr "" msgid "Your birth date" msgstr "जन्म तिथि" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "" @@ -6680,7 +7254,7 @@ msgid "Your default feed is \"Following\"" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "" @@ -6689,11 +7263,11 @@ msgstr "" #~ msgid "Your email has been saved! We'll be in touch soon." #~ msgstr "आपका ईमेल बचाया गया है! हम जल्द ही संपर्क में रहेंगे।।" -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "आपका ईमेल अद्यतन किया गया है लेकिन सत्यापित नहीं किया गया है। अगले चरण के रूप में, कृपया अपना नया ईमेल सत्यापित करें।।" -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "आपका ईमेल अभी तक सत्यापित नहीं हुआ है। यह एक महत्वपूर्ण सुरक्षा कदम है जिसे हम अनुशंसा करते हैं।।" @@ -6705,7 +7279,7 @@ msgstr "" msgid "Your full handle will be" msgstr "आपका पूरा हैंडल होगा" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "" @@ -6715,7 +7289,7 @@ msgstr "" #~ msgid "Your invite codes are hidden when logged in using an App Password" #~ msgstr "" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "" @@ -6723,22 +7297,26 @@ msgstr "" msgid "Your password has been changed successfully!" msgstr "" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "आपकी पोस्ट, पसंद और ब्लॉक सार्वजनिक हैं। म्यूट निजी हैं।।" -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "आपकी प्रोफ़ाइल" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "आपका यूजर हैंडल" diff --git a/src/locale/locales/id/messages.po b/src/locale/locales/id/messages.po index 1b3f3c968c..bb62c10dec 100644 --- a/src/locale/locales/id/messages.po +++ b/src/locale/locales/id/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: bluesky-id\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-05-01 11:21\n" +"PO-Revision-Date: 2024-05-22 05:38\n" "Last-Translator: \n" "Language-Team: GID0317, danninov, thinkbyte1024, mary-ext, kodebanget, oops-wtf\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -18,119 +18,135 @@ msgstr "" "X-Crowdin-File: /main/src/locale/locales/en/messages.po\n" "X-Crowdin-File-ID: 12\n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(tidak ada email)" #: src/view/com/notifications/FeedItem.tsx:239 msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" -msgstr "" +msgstr "{0, plural, other {{formattedCount} lainnya}}" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" +msgstr "{0, plural, other {# label telah diterapkan pada akun ini}}" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" +msgstr "{0, plural, other {# label telah diterapkan pada konten ini}}" + +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" -msgstr "" +msgstr "{0, plural, other {# postingan ulang}}" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" -msgstr "" +msgstr "{0, plural, other {pengikut}}" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" -msgstr "" +msgstr "{0, plural, other {mengikuti}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:245 msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" -msgstr "" +msgstr "{0, plural, other {Suka (# menyukai)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" -msgstr "" +msgstr "{0, plural, other {suka}}" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{0, plural, other {Disukai oleh # pengguna}}" #: src/screens/Profile/Header/Metrics.tsx:59 msgid "{0, plural, one {post} other {posts}}" -msgstr "" +msgstr "{0, plural, other {postingan}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:204 msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" -msgstr "" +msgstr "{0, plural, other {Balas (# balasan)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" -msgstr "" +msgstr "{0, plural, other {posting ulang}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:241 msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" -msgstr "" +msgstr "{0, plural, other {Batal suka (# menyukai)}}" + +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "" #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{count, plural, other {Disukai oleh # pengguna}}" #: src/screens/Deactivated.tsx:207 msgid "{estimatedTimeHrs, plural, one {hour} other {hours}}" -msgstr "" +msgstr "{estimatedTimeHrs, plural, other {jam}}" #: src/screens/Deactivated.tsx:213 msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" -msgstr "" +msgstr "{estimatedTimeMins, plural, other {menit}}" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} mengikuti" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 -msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "{handle} tidak dapat dikirimi pesan" -#: src/view/shell/Drawer.tsx:464 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 +msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" +msgstr "{likeCount, plural, other {Disukai oleh # pengguna}}" + +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} belum dibaca" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" -msgstr "" +msgstr "{value, plural, =0 {Tampilkan semua balasan} other {Tampilkan balasan dengan minimal # suka}}" #: src/view/com/threadgate/WhoCanReply.tsx:159 msgid "<0/> members" -msgstr "<0/> anggota" +msgstr "anggota <0/>" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" -msgstr "" +msgstr "<0>{0} {1, plural, other {pengikut}}" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" -msgstr "" +msgstr "<0>{0} {1, plural, other {mengikuti}}" #: src/view/shell/Drawer.tsx:96 #~ msgid "<0>{0} following" -#~ msgstr "<0>{0} mengikuti" +#~ msgstr "" #: src/components/ProfileHoverCard/index.web.tsx:437 #~ msgid "<0>{followers} <1>{pluralizedFollowers}" -#~ msgstr "<0>{followers} <1>{pluralizedFollowers}" +#~ msgstr "" #: src/components/ProfileHoverCard/index.web.tsx:449 #: src/screens/Profile/Header/Metrics.tsx:45 #~ msgid "<0>{following} <1>following" -#~ msgstr "<0>{following} <1>mengikuti" +#~ msgstr "" #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:31 #~ msgid "<0>Choose your<1>Recommended<2>Feeds" @@ -140,9 +156,9 @@ msgstr "" #~ msgid "<0>Follow some<1>Recommended<2>Users" #~ msgstr "" -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." -msgstr "" +msgstr "<0>Tidak bisa diterapkan. Peringatan ini hanya tersedia untuk postingan dengan lampiran media." #: src/view/com/auth/onboarding/WelcomeDesktop.tsx:21 #~ msgid "<0>Welcome to<1>Bluesky" @@ -152,7 +168,7 @@ msgstr "" msgid "⚠Invalid Handle" msgstr "⚠Handle Tidak Valid" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "Konfirmasi 2FA" @@ -166,11 +182,11 @@ msgid "Access profile and other navigation links" msgstr "Akses profil dan tautan navigasi lain" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "Aksesibilitas" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "Pengaturan aksesibilitas" @@ -181,23 +197,23 @@ msgstr "Pengaturan Aksesibilitas" #: src/components/moderation/LabelsOnMe.tsx:42 #~ msgid "account" -#~ msgstr "akun" +#~ msgstr "" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "Akun" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "Akun diblokir" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "Akun diikuti" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "Akun dibisukan" @@ -208,7 +224,7 @@ msgstr "Akun Dibisukan" #: src/components/moderation/ModerationDetailsDialog.tsx:82 msgid "Account Muted by List" -msgstr "Akun Dibisukan Berdasarkan Daftar" +msgstr "Akun Dibisukan oleh Daftar" #: src/view/com/util/AccountDropdownBtn.tsx:41 msgid "Account options" @@ -218,55 +234,56 @@ msgstr "Pengaturan akun" msgid "Account removed from quick access" msgstr "Akun dihapus dari akses cepat" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "Akun batal diblokir" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "Akun batal diikuti" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "Akun batal dibisukan" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "Tambah" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "Tambahkan peringatan konten" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "Tambahkan pengguna ke daftar ini" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "Tambahkan akun" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "Tambahkan teks alt" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "Tambahkan Kata Sandi Aplikasi" @@ -278,15 +295,23 @@ msgstr "Tambahkan Kata Sandi Aplikasi" #~ msgid "Add link card:" #~ msgstr "" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "Tambahkan kata yang akan dibisukan ke pengaturan terpilih" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "Tambah kata dan tagar untuk dibisukan" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "Tambahkan feed rekomendasi" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "Tambahkan feed bawaan hanya untuk orang yang Anda ikuti" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "Tambahkan catatan DNS berikut ke domain Anda:" @@ -295,7 +320,7 @@ msgstr "Tambahkan catatan DNS berikut ke domain Anda:" msgid "Add to Lists" msgstr "Tambahkan ke Daftar" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "Tambakan ke feed saya" @@ -308,17 +333,17 @@ msgstr "Tambakan ke feed saya" msgid "Added to list" msgstr "Ditambahkan ke daftar" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "Ditambahkan ke feed saya" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." -msgstr "Atur jumlah suka dari balasan yang akan ditampilkan di feed Anda." +msgstr "Sesuaikan jumlah suka yang harus dimiliki oleh balasan agar ditampilkan di feed Anda." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "Konten Dewasa" @@ -327,14 +352,29 @@ msgid "Adult content is disabled." msgstr "Konten dewasa dinonaktifkan." #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "Lanjutan" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "Berisi semua feed yang telah Anda simpan dalam satu tempat." +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "Izinkan pesan dari" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -344,13 +384,13 @@ msgstr "Sudah memiliki kode?" msgid "Already signed in as @{0}" msgstr "Sudah masuk sebagai @{0}" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -358,32 +398,32 @@ msgstr "Teks alt" #: src/view/com/util/post-embeds/GifEmbed.tsx:179 msgid "Alt Text" -msgstr "" +msgstr "Teks Alt" #: src/view/com/composer/photos/Gallery.tsx:224 msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "Teks alt menjelaskan gambar untuk pengguna tunanetra dan pengguna dengan penglihatan rendah, serta membantu memberikan konteks kepada semua orang." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "Email telah dikirim ke {0}. Email tersebut berisi kode konfirmasi yang dapat Anda masukkan di bawah ini." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "Email telah dikirim ke alamat Anda sebelumnya, {0}. Email tersebut berisi kode konfirmasi yang dapat Anda masukkan di bawah ini." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "Terjadi kesalahan" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" -msgstr "Masalah yang tidak termasuk dalam pilihan" +msgstr "Masalah lain yang tidak termasuk dalam pilihan" #: src/components/hooks/useFollowMethods.ts:35 #: src/components/hooks/useFollowMethods.ts:50 @@ -394,16 +434,16 @@ msgstr "Masalah yang tidak termasuk dalam pilihan" msgid "An issue occurred, please try again." msgstr "Terjadi masalah, silakan coba lagi." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" -msgstr "" +msgstr "terjadi kesalahan yang tidak diketahui" #: src/view/com/notifications/FeedItem.tsx:236 #: src/view/com/threadgate/WhoCanReply.tsx:180 msgid "and" msgstr "dan" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "Hewan" @@ -411,7 +451,7 @@ msgstr "Hewan" msgid "Animated GIF" msgstr "Animasi GIF" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "Perilaku Anti-Sosial" @@ -419,70 +459,91 @@ msgstr "Perilaku Anti-Sosial" msgid "App Language" msgstr "Bahasa Aplikasi" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "Kata sandi aplikasi dihapus" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "Nama Kata Sandi Aplikasi hanya boleh terdiri dari huruf, angka, spasi, tanda hubung, dan garis bawah." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "Nama Kata Sandi Aplikasi harus terdiri dari minimal 4 karakter." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "Pengaturan kata sandi aplikasi" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "Kata sandi Aplikasi" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "Ajukan Banding" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "Banding label \"{0}\"" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" -msgstr "" +msgstr "Banding diajukan" #: src/components/moderation/LabelsOnMeDialog.tsx:193 #~ msgid "Appeal submitted." -#~ msgstr "Banding diajukan." +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:430 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "Ajukan banding atas keputusan ini" + +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "Tampilan" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "Tambahkan feed yang direkomendasikan secara default" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "Anda yakin untuk menghapus kata sandi aplikasi \"{name}\"?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." -msgstr "" +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." -msgstr "" +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." +msgstr "Anda yakin ingin menghapus pesan ini? Pesan akan dihapus untuk Anda, tetapi tidak untuk partisipan lain." -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." +msgstr "Anda yakin ingin meninggalkan percakapan ini? Pesan akan dihapus untuk Anda, tetapi tidak untuk partisipan lain." + +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "Apakah Anda yakin ingin menghapus {0} dari daftar feed Anda?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "Anda yakin untuk membuang draf ini?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "Anda yakin?" @@ -490,30 +551,32 @@ msgstr "Anda yakin?" msgid "Are you writing in <0>{0}?" msgstr "Apakah Anda menulis dalam <0>{0}?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "Seni" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "Ketelanjangan artistik atau non-erotis." #: src/screens/Signup/StepHandle.tsx:119 msgid "At least 3 characters" -msgstr "Sedikitnya 3 karakter" +msgstr "Minimal 3 karakter" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -523,7 +586,7 @@ msgstr "Kembali" msgid "Based on your interest in {interestsText}" msgstr "Berdasarkan minat Anda pada {interestsText}" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "Dasar" @@ -531,19 +594,19 @@ msgstr "Dasar" msgid "Birthday" msgstr "Tanggal lahir" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "Tanggal lahir:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "Blokir" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" -msgstr "" +msgstr "Blokir akun" #: src/view/com/profile/ProfileMenu.tsx:300 #: src/view/com/profile/ProfileMenu.tsx:307 @@ -554,15 +617,15 @@ msgstr "Blokir Akun" msgid "Block Account?" msgstr "Blokir Akun?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "Blokir akun" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "Blokir daftar" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "Blokir akun ini?" @@ -586,23 +649,23 @@ msgstr "Akun yang diblokir tidak dapat membalas di utas Anda, menyebut Anda, ata #: src/view/screens/ModerationBlockedAccounts.tsx:117 msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." -msgstr "Akun yang diblokir tidak dapat membalas postingan Anda, menyebutkan Anda, dan interaksi lain dengan Anda. Anda tidak akan melihat konten mereka dan mereka akan dicegah melihat konten Anda." +msgstr "Akun yang diblokir tidak dapat membalas postingan Anda, menyebut Anda, atau berinteraksi dengan Anda. Anda juga tidak akan melihat konten mereka dan mereka akan dicegah melihat konten Anda." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "Postingan yang diblokir." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "Pemblokiran tidak menghalangi pelabel ini menerapkan label pada akun Anda." -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "Pemblokiran bersifat publik. Akun yang diblokir tidak dapat membalas postingan Anda, menyebut Anda, atau berinteraksi dengan Anda." #: src/view/com/profile/ProfileMenu.tsx:353 msgid "Blocking will not prevent labels from being applied on your account, but it will stop this account from replying in your threads or interacting with you." -msgstr "Pemblokiran tidak akan mencegah label diterapkan pada akun Anda, tetapi akan menghentikan akun ini untuk membalas atau berinteraksi dengan Anda." +msgstr "Memblokir tidak akan mencegah label diterapkan pada akun Anda, tetapi akan menghentikan akun ini untuk membalas atau berinteraksi dengan Anda." #: src/view/com/auth/SplashScreen.web.tsx:154 msgid "Blog" @@ -615,7 +678,7 @@ msgstr "Bluesky" #: src/view/com/auth/server-input/index.tsx:154 msgid "Bluesky is an open network where you can choose your hosting provider. Custom hosting is now available in beta for developers." -msgstr "Bluesky adalah jaringan terbuka yang memungkinkan Anda memilih penyedia hosting Anda. Hosting khusus kini tersedia dalam versi beta untuk pengembang." +msgstr "Bluesky adalah jaringan terbuka di mana Anda dapat memilih penyedia hosting sendiri. Hosting kustom kini tersedia dalam versi beta untuk pengembang." #: src/view/com/auth/onboarding/WelcomeDesktop.tsx:80 #: src/view/com/auth/onboarding/WelcomeMobile.tsx:82 @@ -634,7 +697,7 @@ msgstr "Bluesky adalah jaringan terbuka yang memungkinkan Anda memilih penyedia #: src/screens/Moderation/index.tsx:533 msgid "Bluesky will not show your profile and posts to logged-out users. Other apps may not honor this request. This does not make your account private." -msgstr "Bluesky tidak akan menampilkan profil dan postingan Anda ke pengguna yang tidak login. Aplikasi lain mungkin tidak menghormati permintaan ini. Ini tidak membuat akun Anda menjadi privat." +msgstr "Bluesky tidak akan menampilkan profil dan postingan Anda kepada pengguna yang tidak login. Aplikasi lain mungkin tidak mematuhi permintaan ini. Ini tidak membuat akun Anda menjadi privat." #: src/lib/moderation/useLabelBehaviorDescription.ts:53 msgid "Blur images" @@ -644,10 +707,15 @@ msgstr "Buramkan gambar" msgid "Blur images and filter from feeds" msgstr "Buramkan gambar dan saring dari feed" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "Buku" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "Telusuri feed lain" + #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "Bisnis" @@ -666,7 +734,7 @@ msgstr "Oleh {0}" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:112 msgid "by @{0}" -msgstr "" +msgstr "oleh @{0}" #: src/view/com/profile/ProfileSubpageHeader.tsx:161 msgid "by <0/>" @@ -684,7 +752,7 @@ msgstr "oleh Anda" msgid "Camera" msgstr "Kamera" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "Hanya dapat terdiri dari huruf, angka, spasi, tanda hubung dan garis bawah. Minimal 4 karakter, namun tidak boleh lebih dari 32 karakter." @@ -692,11 +760,11 @@ msgstr "Hanya dapat terdiri dari huruf, angka, spasi, tanda hubung dan garis baw #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -708,26 +776,26 @@ msgstr "Hanya dapat terdiri dari huruf, angka, spasi, tanda hubung dan garis baw #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "Batal" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "Batal" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "Batal menghapus akun" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "Batal mengubah handle" @@ -752,34 +820,34 @@ msgstr "Batal mencari" msgid "Cancels opening the linked website" msgstr "Membatalkan membuka situs web tertaut" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "Ubah" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "Ubah" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "Ubah handle" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "Ubah Handle" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "Ubah email saya" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "Ubah kata sandi" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "Ubah Kata Sandi" @@ -787,30 +855,40 @@ msgstr "Ubah Kata Sandi" msgid "Change post language to {0}" msgstr "Ubah bahasa postingan menjadi {0}" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "Ubah Email Anda" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" -msgstr "Chat" +msgstr "Obrolan" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" -msgstr "" +msgstr "Obrolan dibisukan" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" +msgstr "Pengaturan obrolan" + +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" -msgstr "" +msgstr "Obrolan batal dibisukan" #: src/screens/Messages/Conversation/index.tsx:26 #~ msgid "Chat with {chatId}" -#~ msgstr "Chat dengan {chatId}" +#~ msgstr "" #: src/screens/Deactivated.tsx:78 #: src/screens/Deactivated.tsx:82 @@ -825,11 +903,11 @@ msgstr "Periksa status saya" #~ msgid "Check out some recommended users. Follow them to see similar users." #~ msgstr "" -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "Periksa email Anda untuk mendapatkan kode login dan masukkan di sini." -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "Periksa kotak masuk email Anda untuk kode konfirmasi dan masukkan di bawah ini:" @@ -841,15 +919,19 @@ msgstr "Pilih \"Semua Orang\" atau \"Tidak Ada\"" msgid "Choose Service" msgstr "Pilih Layanan" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." -msgstr "Pilih algoritma yang akan digunakan untuk feed khusus Anda." +msgstr "Pilih algoritma yang akan digunakan untuk feed kustom Anda." #: src/view/com/auth/onboarding/WelcomeDesktop.tsx:83 #: src/view/com/auth/onboarding/WelcomeMobile.tsx:85 #~ msgid "Choose the algorithms that power your experience with custom feeds." #~ msgstr "" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "Pilih warna ini sebagai avatar Anda" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "Pilih feed utama Anda" @@ -858,19 +940,19 @@ msgstr "Pilih feed utama Anda" msgid "Choose your password" msgstr "Pilih kata sandi Anda" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "Hapus semua data penyimpanan lama" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "Hapus semua data penyimpanan lama (mulai ulang setelah ini)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "Hapus semua data penyimpanan" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "Hapus semua data penyimpanan (mulai ulang setelah ini)" @@ -879,11 +961,11 @@ msgstr "Hapus semua data penyimpanan (mulai ulang setelah ini)" msgid "Clear search query" msgstr "Hapus kueri pencarian" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "Bersihkan semua penyimpanan data lama" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "Hapus semua data penyimpanan" @@ -891,6 +973,10 @@ msgstr "Hapus semua data penyimpanan" msgid "click here" msgstr "klik di sini" +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "" + #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" msgstr "Klik di sini untuk membuka menu tagar dari {tag}" @@ -899,19 +985,28 @@ msgstr "Klik di sini untuk membuka menu tagar dari {tag}" #~ msgid "Click here to open tag menu for #{tag}" #~ msgstr "" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "Ketuk untuk mengirim ulang pesan yang gagal" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "Iklim" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "Keletak 🐴 keletuk 🐴" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "Tutup" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "Tutup dialog aktif" @@ -923,7 +1018,7 @@ msgstr "Tutup peringatan" msgid "Close bottom drawer" msgstr "Tutup kotak bawah" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "Tutup dialog" @@ -939,6 +1034,10 @@ msgstr "Tutup gambar" msgid "Close image viewer" msgstr "Tutup penampil gambar" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "Tutup modal" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "Tutup footer navigasi" @@ -956,7 +1055,7 @@ msgstr "Menutup bilah navigasi bawah" msgid "Closes password update alert" msgstr "Menutup peringatan pembaruan kata sandi" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "Menutup penyusun postingan dan membuang draf" @@ -968,11 +1067,11 @@ msgstr "Menutup penampil untuk gambar header" msgid "Collapses list of users for a given notification" msgstr "Menciutkan daftar pengguna untuk notifikasi tertentu" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "Komedi" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "Komik" @@ -981,7 +1080,7 @@ msgstr "Komik" msgid "Community Guidelines" msgstr "Panduan Komunitas" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "Selesaikan onboarding dan mulai menggunakan akun Anda" @@ -989,7 +1088,7 @@ msgstr "Selesaikan onboarding dan mulai menggunakan akun Anda" msgid "Complete the challenge" msgstr "Selesaikan tantangan" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "Buat postingan dengan panjang hingga {MAX_GRAPHEME_LENGTH} karakter" @@ -1011,18 +1110,18 @@ msgstr "Diatur pada <0>pengaturan moderasi." #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "Konfirmasi" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "Konfirmasi Perubahan" @@ -1030,29 +1129,29 @@ msgstr "Konfirmasi Perubahan" msgid "Confirm content language settings" msgstr "Konfirmasi pengaturan bahasa konten" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "Konfirmasi hapus akun" #: src/screens/Moderation/index.tsx:301 msgid "Confirm your age:" -msgstr "Konfirmasikan usia Anda:" +msgstr "Konfirmasi usia Anda:" #: src/screens/Moderation/index.tsx:292 msgid "Confirm your birthdate" msgstr "Konfirmasi tanggal lahir Anda" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "Kode konfirmasi" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "Menghubungkan..." @@ -1062,7 +1161,7 @@ msgstr "Hubungi pusat bantuan" #: src/components/moderation/LabelsOnMe.tsx:42 #~ msgid "content" -#~ msgstr "konten" +#~ msgstr "" #: src/lib/moderation/useGlobalLabelStrings.ts:18 msgid "Content Blocked" @@ -1095,23 +1194,25 @@ msgstr "Peringatan konten" #: src/components/Menu/index.web.tsx:83 msgid "Context menu backdrop, click to close the menu." -msgstr "Latar belakang menu konteks, klik untuk menutup menu." +msgstr "Latar menu konteks, klik untuk menutup menu." #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "Lanjutkan" #: src/components/AccountList.tsx:113 msgid "Continue as {0} (currently signed in)" -msgstr "Lanjutkan sebagai {0} (saat ini masuk)" +msgstr "Lanjutkan sebagai {0} (sudah masuk)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1125,22 +1226,26 @@ msgstr "Lanjutkan ke langkah berikutnya" msgid "Continue to the next step without following any accounts" msgstr "Lanjutkan ke langkah berikutnya tanpa mengikuti akun apa pun" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "Percakapan dihapus" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "Memasak" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "Disalin" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "Menyalin versi build ke papan klip" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1150,15 +1255,15 @@ msgstr "Disalin ke papan klip" msgid "Copied!" msgstr "Tersalin!" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "Menyalin kata sandi aplikasi" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "Salin" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "Salin {0}" @@ -1167,7 +1272,7 @@ msgstr "Salin {0}" msgid "Copy code" msgstr "Salin kode" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "Salin tautan daftar" @@ -1176,10 +1281,10 @@ msgstr "Salin tautan daftar" msgid "Copy link to post" msgstr "Salin tautan postingan" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" -msgstr "" +msgstr "Salin teks pesan" #: src/view/com/util/forms/PostDropdownBtn.tsx:256 #: src/view/com/util/forms/PostDropdownBtn.tsx:258 @@ -1191,36 +1296,36 @@ msgstr "Salin teks postingan" msgid "Copyright Policy" msgstr "Kebijakan Hak Cipta" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" -msgstr "" +msgstr "Tidak dapat meninggalkan obrolan" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "Tidak dapat memuat feed" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "Tidak dapat memuat daftar" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "" -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" -msgstr "" +msgstr "Tidak dapat membisukan obrolan" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +#~ msgid "Could not unmute chat" +#~ msgstr "" #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "Buat akun baru" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "Buat akun Bluesky baru" @@ -1233,7 +1338,11 @@ msgstr "Buat Akun" msgid "Create an account" msgstr "Buat akun" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "Buat avatar saja" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "Buat Kata Sandi Aplikasi" @@ -1242,11 +1351,11 @@ msgstr "Buat Kata Sandi Aplikasi" msgid "Create new account" msgstr "Buat akun baru" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "Buat laporan untuk {0}" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "Dibuat {0}" @@ -1254,7 +1363,7 @@ msgstr "Dibuat {0}" #~ msgid "Creates a card with a thumbnail. The card links to {url}" #~ msgstr "" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "Budaya" @@ -1263,21 +1372,21 @@ msgstr "Budaya" msgid "Custom" msgstr "Kustom" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "Domain kustom" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." -msgstr "Feed khusus yang dibuat oleh komunitas memberikan pengalaman baru dan membantu Anda menemukan konten yang Anda sukai." +msgstr "Feed kustom yang dibangun oleh komunitas memberikan pengalaman baru dan membantu Anda menemukan konten yang Anda sukai." #: src/view/screens/PreferencesExternalEmbeds.tsx:56 msgid "Customize media from external sites." msgstr "Sesuaikan media dari situs eksternal." -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "Gelap" @@ -1285,7 +1394,7 @@ msgstr "Gelap" msgid "Dark mode" msgstr "Mode gelap" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "Tema Gelap" @@ -1293,7 +1402,7 @@ msgstr "Tema Gelap" msgid "Date of birth" msgstr "Tanggal lahir" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "Debug Moderasi" @@ -1301,54 +1410,59 @@ msgstr "Debug Moderasi" msgid "Debug panel" msgstr "Panel awakutu" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "Hapus" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "Hapus akun" #: src/view/com/modals/DeleteAccount.tsx:87 #~ msgid "Delete Account" -#~ msgstr "Hapus Akun" +#~ msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" -msgstr "" +msgstr "Hapus Akun <0>\"<1>{0}<2>\"" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "Hapus kata sandi aplikasi" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "Hapus kata sandi aplikasi?" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" +msgstr "Hapus catatan deklarasi obrolan" -#: src/view/screens/ProfileList.tsx:417 +#: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "Hapus untuk saya" + +#: src/view/screens/ProfileList.tsx:470 msgid "Delete List" msgstr "Hapus Daftar" -#: src/components/dms/MessageMenu.tsx:119 +#: src/components/dms/MessageMenu.tsx:122 msgid "Delete message" -msgstr "" +msgstr "Hapus pesan" -#: src/components/dms/MessageMenu.tsx:99 +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" -msgstr "" +msgstr "Hapus pesan untuk saya" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "Hapus akun saya" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "Hapus Akun Saya…" @@ -1357,7 +1471,7 @@ msgstr "Hapus Akun Saya…" msgid "Delete post" msgstr "Hapus postingan" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "Hapus daftar ini?" @@ -1369,10 +1483,14 @@ msgstr "Hapus postingan ini?" msgid "Deleted" msgstr "Dihapus" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "Postingan dihapus." +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "Hapus catatan deklarasi obrolan" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1380,25 +1498,29 @@ msgstr "Postingan dihapus." msgid "Description" msgstr "Deskripsi" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" -msgstr "" +msgstr "Teks alt deskriptif" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "Apakah Anda ingin mengatakan sesuatu?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "Redup" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "Pesan langsung telah hadir!" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "Nonaktifkan pemutaran otomatis untuk GIF" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" -msgstr "Nonaktfikan Email 2FA" +msgstr "Nonaktifkan Email 2FA" #: src/view/screens/AccessibilitySettings.tsx:108 msgid "Disable haptic feedback" @@ -1415,15 +1537,17 @@ msgstr "Matikan respons haptik" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "Dinonaktifkan" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "Buang" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "Buang draf?" @@ -1435,9 +1559,9 @@ msgstr "Cegah aplikasi untuk menampilkan akun saya ke pengguna yang tidak login" #: src/view/com/posts/FollowingEmptyState.tsx:74 #: src/view/com/posts/FollowingEndOfFeed.tsx:75 msgid "Discover new custom feeds" -msgstr "Temukan feed khusus baru" +msgstr "Temukan feed kustom baru" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "Temukan Feed Baru" @@ -1449,7 +1573,7 @@ msgstr "Nama tampilan" msgid "Display Name" msgstr "Nama Tampilan" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "Panel DNS" @@ -1461,11 +1585,11 @@ msgstr "Tidak termasuk ketelanjangan." msgid "Doesn't begin or end with a hyphen" msgstr "Tidak diawali atau diakhiri dengan tanda hubung" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "Nilai Domain" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "Domain terverifikasi!" @@ -1473,23 +1597,23 @@ msgstr "Domain terverifikasi!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "Selesai" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1503,8 +1627,8 @@ msgstr "Selesai" msgid "Done{extraText}" msgstr "Selesai{extraText}" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "Unduh berkas CAR" @@ -1516,7 +1640,7 @@ msgstr "Lepaskan untuk menambahkan gambar" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "Sesuai dengan kebijakan Apple, konten dewasa hanya dapat diaktifkan di web setelah menyelesaikan pendaftaran." -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "contoh: alice" @@ -1524,7 +1648,7 @@ msgstr "contoh: alice" msgid "e.g. Alice Roberts" msgstr "contoh: Alice Roberts" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "contoh: alice.com" @@ -1546,7 +1670,7 @@ msgstr "contoh: Spammer" #: src/view/com/modals/CreateOrEditList.tsx:315 msgid "e.g. The posters who never miss." -msgstr "contoh: Pemosting yang selalu tepat sasaran." +msgstr "contoh: Pemosting yang selalu kekinian." #: src/view/com/modals/CreateOrEditList.tsx:316 msgid "e.g. Users that repeatedly reply with ads." @@ -1561,7 +1685,7 @@ msgctxt "action" msgid "Edit" msgstr "Ubah" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "Edit avatar" @@ -1571,7 +1695,7 @@ msgstr "Edit avatar" msgid "Edit image" msgstr "Edit gambar" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "Edit detail daftar" @@ -1580,8 +1704,8 @@ msgid "Edit Moderation List" msgstr "Ubah Daftar Moderasi" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "Edit Feed Saya" @@ -1589,18 +1713,18 @@ msgstr "Edit Feed Saya" msgid "Edit my profile" msgstr "Edit profil saya" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "Edit profil" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "Edit Profil" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "Edit Feed Tersimpan" @@ -1616,16 +1740,16 @@ msgstr "Ubah nama tampilan Anda" msgid "Edit your profile description" msgstr "Ubah deskripsi profil Anda" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "Pendidikan" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "Email" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "Email 2FA dinonaktifkan" @@ -1633,20 +1757,20 @@ msgstr "Email 2FA dinonaktifkan" msgid "Email address" msgstr "Alamat email" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "Email diperbarui" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "Email Diupdate" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "Email terverifikasi" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "Email:" @@ -1690,14 +1814,16 @@ msgstr "Aktifkan media eksternal" msgid "Enable media players for" msgstr "Aktifkan pemutar media untuk" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." -msgstr "Aktifkan opsi ini untuk hanya menampilkan balasan dari akun yang Anda ikuti." +msgstr "Aktifkan opsi ini untuk menampilkan balasan hanya dari akun yang Anda ikuti." #: src/components/dialogs/EmbedConsent.tsx:94 msgid "Enable this source only" msgstr "Aktifkan hanya sumber ini saja" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "Diaktifkan" @@ -1706,7 +1832,11 @@ msgstr "Diaktifkan" msgid "End of feed" msgstr "Akhir feed" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "Masukkan nama untuk Sandi Aplikasi ini" @@ -1714,12 +1844,12 @@ msgstr "Masukkan nama untuk Sandi Aplikasi ini" msgid "Enter a password" msgstr "Masukkan kata sandi" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" -msgstr "Masukkan kata atau tag" +msgstr "Masukkan kata atau tagar" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "Masukkan Kode Konfirmasi" @@ -1727,7 +1857,7 @@ msgstr "Masukkan Kode Konfirmasi" msgid "Enter the code you received to change your password." msgstr "Masukkan kode yang Anda terima untuk mengubah kata sandi Anda." -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "Masukkan domain yang ingin Anda gunakan" @@ -1744,11 +1874,11 @@ msgstr "Masukkan tanggal lahir Anda" msgid "Enter your email address" msgstr "Masukkan alamat email Anda" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "Masukkan email baru Anda di atas" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "Masukkan alamat email baru Anda di bawah ini." @@ -1756,11 +1886,15 @@ msgstr "Masukkan alamat email baru Anda di bawah ini." msgid "Enter your username and password" msgstr "Masukkan nama pengguna dan kata sandi Anda" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "Terjadi kesalahan saat menyimpan berkas" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "Gagal menerima respons captcha." -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "Eror:" @@ -1769,15 +1903,30 @@ msgstr "Eror:" msgid "Everybody" msgstr "Semua orang" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "Semua orang dapat membalas" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "Semua orang" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "Menyebut atau membalas secara berlebihan" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "Pesan yang berlebihan atau tidak diinginkan" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "Keluar dari proses penghapusan akun" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "Keluar dari proses perubahan handle" @@ -1811,12 +1960,12 @@ msgstr "Media eksplisit atau berpotensi mengganggu." msgid "Explicit sexual images." msgstr "Gambar seksual eksplisit." -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "Ekspor data saya" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "Ekspor Data Saya" @@ -1832,16 +1981,16 @@ msgstr "Media eksternal memungkinkan situs web untuk mengumpulkan informasi tent #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "Preferensi Media Eksternal" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "Pengaturan media eksternal" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "Gagal membuat kata sandi aplikasi." @@ -1849,56 +1998,77 @@ msgstr "Gagal membuat kata sandi aplikasi." msgid "Failed to create the list. Check your internet connection and try again." msgstr "Gagal membuat daftar. Periksa koneksi internet Anda dan coba lagi." -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" -msgstr "" +msgstr "Gagal menghapus pesan" #: src/view/com/util/forms/PostDropdownBtn.tsx:139 msgid "Failed to delete post, please try again" msgstr "Gagal menghapus postingan, silakan coba lagi" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "Gagal memuat GIF" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." -msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" +msgstr "Gagal memuat pesan terdahulu" + +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "" #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 #~ msgid "Failed to load recommended feeds" #~ msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "Gagal menyimpan gambar: {0}" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "Gagal mengirim" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "Gagal mengirimkan banding, silakan coba lagi." + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "Gagal memperbarui pengaturan" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "Feed" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" -msgstr "Feed oleh {0}" +msgstr "Feed {0}" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "Feed offline" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "Masukan" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "Feed" @@ -1906,23 +2076,27 @@ msgstr "Feed" #~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." #~ msgstr "" -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." -msgstr "Feed adalah algoritma khusus yang dibuat oleh pengguna dengan sedikit keahlian pengkodean. <0/> untuk informasi lebih lanjut." +msgstr "Feeds adalah algoritma kustom yang dibuat pengguna dengan sedikit keahlian pemrograman. <0/> untuk informasi lebih lanjut." #: src/screens/Onboarding/StepTopicalFeeds.tsx:80 msgid "Feeds can be topical as well!" msgstr "Feed juga bisa berdasarkan topik!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "Isi Berkas" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "Berkas berhasil disimpan!" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "Saring dari feed" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "Menyelesaikan" @@ -1948,19 +2122,19 @@ msgstr "Temukan postingan dan pengguna di Bluesky" #~ msgid "Finding similar accounts..." #~ msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." -msgstr "Sesuaikan konten yang ingin Anda lihat di feed Following." +msgstr "Sesuaikan konten yang Anda lihat di feed Mengikuti." #: src/view/screens/PreferencesThreads.tsx:60 msgid "Fine-tune the discussion threads." -msgstr "Atur utasan diskusi." +msgstr "Sesuaikan utasan diskusi." -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "Kebugaran" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "Fleksibel" @@ -1973,10 +2147,10 @@ msgstr "Balik secara horizontal" msgid "Flip vertically" msgstr "Balik secara vertikal" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -1988,7 +2162,7 @@ msgid "Follow" msgstr "Ikuti" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "Ikuti {0}" @@ -2020,9 +2194,9 @@ msgstr "Diikuti oleh {0}" #: src/view/com/modals/Threadgate.tsx:98 msgid "Followed users" -msgstr "Pengguna yang diikuti" +msgstr "Pengguna yang Anda ikuti" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "Hanya pengguna yang diikuti" @@ -2035,30 +2209,32 @@ msgstr "mengikuti Anda" msgid "Followers" msgstr "Pengikut" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "Mengikuti" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "Mengikuti {0}" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" -msgstr "Preferensi feed Following" +msgstr "Preferensi feed Mengikuti" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" -msgstr "Preferensi Feed Following" +msgstr "Preferensi Feed Mengikuti" #: src/screens/Profile/Header/Handle.tsx:24 msgid "Follows you" @@ -2068,15 +2244,15 @@ msgstr "Mengikuti Anda" msgid "Follows You" msgstr "Mengikuti Anda" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "Makanan" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "Untuk alasan keamanan, kami akan mengirimkan kode konfirmasi ke alamat email Anda." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "Untuk alasan keamanan, Anda tidak akan dapat melihat ini lagi. Jika Anda lupa kata sandi ini, Anda harus membuat yang baru." @@ -2085,15 +2261,15 @@ msgstr "Untuk alasan keamanan, Anda tidak akan dapat melihat ini lagi. Jika Anda msgid "Forgot Password" msgstr "Lupa Kata Sandi" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "Lupa kata sandi?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "Lupa?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "Sering Memposting Konten yang Tidak Diinginkan" @@ -2101,7 +2277,7 @@ msgstr "Sering Memposting Konten yang Tidak Diinginkan" msgid "From @{sanitizedAuthor}" msgstr "Dari @{sanitizedAuthor}" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "Dari <0/>" @@ -2110,12 +2286,20 @@ msgstr "Dari <0/>" msgid "Gallery" msgstr "Galeri" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "Memulai" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "Memulai" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "Beri wajah pada profil Anda" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "Pelanggaran hukum atau ketentuan layanan secara terang-terangan" @@ -2124,9 +2308,9 @@ msgstr "Pelanggaran hukum atau ketentuan layanan secara terang-terangan" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "Kembali" @@ -2134,13 +2318,14 @@ msgstr "Kembali" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "Kembali" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2160,24 +2345,28 @@ msgstr "Ke Beranda" #~ msgid "Go to @{queryMaybeHandle}" #~ msgstr "" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "Buka percakapan dengan {0}" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "Berikutnya" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" -msgstr "" +msgstr "Buka profil" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" -msgstr "" +msgstr "Buka profil pengguna" #: src/lib/moderation/useGlobalLabelStrings.ts:46 msgid "Graphic Media" msgstr "Media Sensitif" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "Handle" @@ -2185,7 +2374,7 @@ msgstr "Handle" msgid "Haptics" msgstr "Haptik" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "Pelecehan, unggah sulut, atau intoleransi" @@ -2193,7 +2382,7 @@ msgstr "Pelecehan, unggah sulut, atau intoleransi" msgid "Hashtag" msgstr "Tagar" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "Tagar: #{tag}" @@ -2202,29 +2391,33 @@ msgid "Having trouble?" msgstr "Mengalami masalah?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "Bantuan" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "Beri tahu orang-orang bahwa Anda bukan bot dengan mengunggah gambar atau membuat avatar." + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "Berikut beberapa akun untuk Anda ikuti" #: src/screens/Onboarding/StepTopicalFeeds.tsx:89 msgid "Here are some popular topical feeds. You can choose to follow as many as you like." -msgstr "Berikut beberapa feed topik yang populer. Anda dapat memilih untuk mengikuti sebanyak yang Anda suka." +msgstr "Berikut beberapa feed topikal yang populer. Anda dapat memilih untuk mengikuti sebanyak yang Anda suka." #: src/screens/Onboarding/StepTopicalFeeds.tsx:84 msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." -msgstr "Berikut beberapa feed topik terdasarkan minat Anda: {interestsText}. Anda dapat memilih untuk mengikuti sebanyak yang Anda suka." +msgstr "Berikut beberapa feed topikal berdasarkan minat Anda: {interestsText}. Anda dapat memilih untuk mengikuti sebanyak yang Anda suka." -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "Berikut kata sandi aplikasi Anda." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2246,7 +2439,7 @@ msgid "Hide post" msgstr "Sembunyikan postingan" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "Sembunyikan konten" @@ -2258,76 +2451,81 @@ msgstr "Sembunyikan postingan ini?" msgid "Hide user list" msgstr "Sembunyikan daftar pengguna" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." -msgstr "Hmm, ada masalah yang terjadi saat menghubungi server feed. Harap beri tahu pemilik feed tentang masalah ini." +msgstr "Hmm, terjadi masalah saat menghubungi server feed. Harap beri tahu pemilik feed tentang masalah ini." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "Hmm, server feed tampaknya salah konfigurasi. Harap beri tahu pemilik feed tentang masalah ini." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "Hmm, server feed tampaknya sedang offline. Harap beri tahu pemilik feed tentang masalah ini." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "Hmm, server feed memberikan respons yang buruk. Harap beri tahu pemilik feed tentang masalah ini." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "Hmm, kami kesulitan menemukan feed ini. Mungkin sudah dihapus." #: src/screens/Moderation/index.tsx:59 msgid "Hmmmm, it seems we're having trouble loading this data. See below for more details. If this issue persists, please contact us." -msgstr "Hmmmm, sepertinya kami kesulitan memuat data ini. Lihat di bawah untuk keterangan lebih lanjut. Jika tetap eror, mohon hubungi kami." +msgstr "Hmmmm, tampaknya kami mengalami kesulitan memuat data ini. Lihat detail lebih lanjut di bawah ini. Jika masalah berlanjut, silakan hubungi kami." #: src/screens/Profile/ErrorState.tsx:31 msgid "Hmmmm, we couldn't load that moderation service." msgstr "Hmmmm, kami tidak dapat memuat layanan moderasi." -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "Beranda" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "Host:" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" -msgstr "Provider hosting" +msgstr "Penyedia hosting" #: src/view/com/modals/InAppBrowserConsent.tsx:44 msgid "How should we open this link?" msgstr "Bagaimana kami harus membuka tautan ini?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "Saya punya kode" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "Saya punya kode konfirmasi" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "Saya punya domain sendiri" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "Saya mengerti" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "Jika teks alt panjang, alihkan status teks alt yang diperluas" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "Jika tidak ada yang dipilih, cocok untuk semua umur." @@ -2335,7 +2533,7 @@ msgstr "Jika tidak ada yang dipilih, cocok untuk semua umur." msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "Jika Anda belum berusia dewasa menurut hukum negara Anda, orang tua atau wali sah Anda harus membaca Ketentuan ini atas nama Anda." -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "Jika Anda menghapus daftar ini, Anda tidak dapat memulihkannya lagi." @@ -2347,7 +2545,7 @@ msgstr "Jika Anda menghapus postingan ini, Anda tidak dapat memulihkannya lagi." msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "Jika Anda ingin mengubah kata sandi, kami akan mengirimkan kode untuk memverifikasi bahwa ini adalah akun Anda." -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "Ilegal dan Urgen" @@ -2355,23 +2553,27 @@ msgstr "Ilegal dan Urgen" msgid "Image" msgstr "Gambar" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "Teks alt gambar" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "Impersonasi atau klaim palsu tentang identitas atau afiliasi" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "Pesan tidak pantas atau tautan eksplisit" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "Masukkan kode yang dikirim ke email Anda untuk pengaturan ulang kata sandi" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "Masukkan kode konfirmasi untuk penghapusan akun" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "Masukkan nama untuk kata sandi aplikasi" @@ -2379,27 +2581,27 @@ msgstr "Masukkan nama untuk kata sandi aplikasi" msgid "Input new password" msgstr "Masukkan kata sandi baru" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "Masukkan kata sandi untuk penghapusan akun" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "Masukkan kode yang telah dikirim ke email Anda" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "Masukkan kata sandi yang terkait dengan {identifier}" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "Masukkan nama pengguna atau alamat email yang Anda gunakan saat mendaftar" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "Masukkan kata sandi Anda" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "Masukkan penyedia hosting pilihan Anda" @@ -2407,16 +2609,20 @@ msgstr "Masukkan penyedia hosting pilihan Anda" msgid "Input your user handle" msgstr "Masukkan handle pengguna Anda" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "Memperkenalkan Pesan Langsung" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "Kode konfirmasi 2FA tidak valid." -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "Catatan posting tidak valid atau tidak didukung" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "Username atau kata sandi salah" @@ -2428,7 +2634,7 @@ msgstr "Undang Teman" msgid "Invite code" msgstr "Kode Undangan" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "Kode undangan salah. Periksa bahwa Anda memasukkannya dengan benar dan coba lagi." @@ -2448,13 +2654,13 @@ msgstr "Feed ini menampilkan postingan secara langsung dari orang yang Anda ikut msgid "Jobs" msgstr "Karir" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "Jurnalisme" #: src/components/moderation/LabelsOnMe.tsx:59 #~ msgid "label has been placed on this {labelTarget}" -#~ msgstr "label telah diterapkan pada {labelTarget} ini" +#~ msgstr "" #: src/components/moderation/ContentHider.tsx:144 msgid "Labeled by {0}." @@ -2462,25 +2668,25 @@ msgstr "Dilabeli oleh {0}." #: src/components/moderation/ContentHider.tsx:142 msgid "Labeled by the author." -msgstr "Dilabeli oleh penulis." +msgstr "Dilabeli oleh pemosting." #: src/view/screens/Profile.tsx:191 msgid "Labels" msgstr "Label" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." -msgstr "Label adalah anotasi pada pengguna dan konten. Label dapat digunakan untuk menyembunyikan, memperingatkan, dan mengkategorikan jaringan." +msgstr "Label adalah anotasi yang diterapkan pada pengguna dan konten. Label dapat digunakan untuk menyembunyikan, memperingatkan, dan mengkategorikan jaringan." #: src/components/moderation/LabelsOnMe.tsx:61 #~ msgid "labels have been placed on this {labelTarget}" -#~ msgstr "label telah diterapkan pada {labelTarget} ini" +#~ msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "Label pada akun Anda" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "Label pada konten Anda" @@ -2488,7 +2694,7 @@ msgstr "Label pada konten Anda" msgid "Language selection" msgstr "Pilih bahasa" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "Pengaturan bahasa" @@ -2497,7 +2703,7 @@ msgstr "Pengaturan bahasa" msgid "Language Settings" msgstr "Pengaturan Bahasa" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "Bahasa" @@ -2515,7 +2721,7 @@ msgstr "Pelajari Lebih Lanjut" msgid "Learn more about the moderation applied to this content." msgstr "Pelajari lebih lanjut tentang moderasi yang diterapkan pada konten ini." -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "Pelajari lebih lanjut tentang peringatan ini" @@ -2528,15 +2734,22 @@ msgstr "Pelajari lebih lanjut tentang apa yang publik di Bluesky." msgid "Learn more." msgstr "Pelajari lebih lanjut." -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" -msgstr "" +msgstr "Tinggalkan" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "Tinggalkan obrolan" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" -msgstr "" +msgstr "Tinggalkan percakapan" #: src/view/com/modals/lang-settings/ContentLanguagesSettings.tsx:82 msgid "Leave them all unchecked to see any language." @@ -2550,7 +2763,7 @@ msgstr "Meninggalkan Bluesky" msgid "left to go." msgstr "yang tersisa" -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "Penyimpanan lama dihapus, Anda perlu memulai ulang aplikasi sekarang." @@ -2559,20 +2772,20 @@ msgstr "Penyimpanan lama dihapus, Anda perlu memulai ulang aplikasi sekarang." msgid "Let's get your password reset!" msgstr "Reset kata sandi Anda!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "Ayo!" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "Terang" #: src/view/com/util/post-ctrls/PostCtrls.tsx:197 #~ msgid "Like" -#~ msgstr "Suka" +#~ msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "Suka feed ini" @@ -2590,21 +2803,21 @@ msgstr "Disukai Oleh" #: src/view/com/feeds/FeedSourceCard.tsx:268 #~ msgid "Liked by {0} {1}" -#~ msgstr "Disukai oleh {0} {1}" +#~ msgstr "" #: src/components/LabelingServiceCard/index.tsx:72 #~ msgid "Liked by {count} {0}" -#~ msgstr "Disukai oleh {count} {0}" +#~ msgstr "" #: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:287 #: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:301 #: src/view/screens/ProfileFeed.tsx:600 #~ msgid "Liked by {likeCount} {0}" -#~ msgstr "Disukai oleh {likeCount} {0}" +#~ msgstr "" #: src/view/com/notifications/FeedItem.tsx:168 msgid "liked your custom feed" -msgstr "menyukai feed khusus Anda" +msgstr "menyukai feed kustom Anda" #: src/view/com/notifications/FeedItem.tsx:153 msgid "liked your post" @@ -2614,7 +2827,7 @@ msgstr "menyukai postingan Anda" msgid "Likes" msgstr "Suka" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "Suka pada postingan ini" @@ -2626,19 +2839,19 @@ msgstr "Daftar" msgid "List Avatar" msgstr "Avatar Daftar" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "Daftar diblokir" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" -msgstr "Daftar oleh {0}" +msgstr "Daftar {0}" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "Daftar dihapus" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "Daftar dibisukan" @@ -2646,31 +2859,35 @@ msgstr "Daftar dibisukan" msgid "List Name" msgstr "Nama Daftar" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "Daftar tidak diblokir" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "Daftar tidak dibisukan" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "Daftar" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "Daftar yang memblokir pengguna ini:" + #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "Muat notifikasi baru" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "Muat postingan baru" @@ -2697,7 +2914,7 @@ msgstr "Visibilitas pengguna yang tidak login" msgid "Login to account that is not listed" msgstr "Masuk ke akun yang tidak ada di daftar" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "Tekan lama untuk membuka menu tagar untuk #{tag}" @@ -2705,14 +2922,35 @@ msgstr "Tekan lama untuk membuka menu tagar untuk #{tag}" msgid "Looks like XXXXX-XXXXX" msgstr "Seperti XXXXX-XXXXX" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "Sepertinya Anda belum menyimpan feed apa pun! Gunakan rekomendasi kami atau telusuri lebih banyak di bawah ini." + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "Sepertinya Anda menghapus semua feed tersemat. Tapi jangan khawatir, Anda dapat menambahkan beberapa feed di bawah ini 😄" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "Sepertinya Anda kehilangan feed mengikuti. <0>Klik di sini untuk menambahkan." + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" -msgstr "Pastikan ini adalah website yang Anda tuju!" +msgstr "Pastikan ini adalah situs web yang Anda tuju!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "Kelola kata dan tagar yang dibisukan" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "Tandai telah dibaca" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2724,51 +2962,57 @@ msgstr "pengguna yang disebutkan" #: src/view/com/modals/Threadgate.tsx:93 msgid "Mentioned users" -msgstr "Pengguna yang disebutkan" +msgstr "Pengguna yang Anda sebut" #: src/view/com/util/ViewHeader.tsx:89 #: src/view/screens/Search/Search.tsx:649 msgid "Menu" msgstr "Menu" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 -msgid "Message deleted" -msgstr "" +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "Kirim pesan ke {0}" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 +msgid "Message deleted" +msgstr "Pesan dihapus" + +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "Pesan dari server: {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" -msgstr "" +msgstr "Kotak input pesan" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "Pesan terlalu panjang" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "Pengaturan pesan" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "Pesan" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "Pengaturan perpesanan" +#~ msgid "Messaging settings" +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "Akun Menyesatkan" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "Moderasi" @@ -2779,15 +3023,15 @@ msgstr "Detail moderasi" #: src/view/com/lists/ListCard.tsx:93 #: src/view/com/modals/UserAddRemoveLists.tsx:206 msgid "Moderation list by {0}" -msgstr "Daftar moderasi oleh {0}" +msgstr "Daftar moderasi {0}" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "Daftar moderasi oleh <0/>" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "Daftar moderasi Anda" @@ -2808,7 +3052,7 @@ msgstr "Daftar moderasi" msgid "Moderation Lists" msgstr "Daftar Moderasi" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "Pengaturan moderasi" @@ -2827,13 +3071,13 @@ msgstr "Moderator telah memilih untuk menetapkan peringatan umum pada konten." #: src/view/com/post-thread/PostThreadItem.tsx:542 msgid "More" -msgstr "Lainnya" +msgstr "Lebih lanjut" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "Feed lainnya" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "Pilihan lainnya" @@ -2854,7 +3098,7 @@ msgstr "Bisukan {truncatedTag}" msgid "Mute Account" msgstr "Bisukan Akun" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "Bisukan akun" @@ -2862,34 +3106,39 @@ msgstr "Bisukan akun" msgid "Mute all {displayTag} posts" msgstr "Bisukan semua postingan {displayTag}" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "Bisukan percakapan" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "Bisukan di tagar saja" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "Bisukan di teks & tagar" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "Bisukan daftar" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" -msgstr "Bisukan akun ini?" +msgstr "Bisukan akun-akun ini?" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" -msgstr "Bisukan kata ini di teks dan tag postingan" +msgstr "Bisukan kata ini di teks postingan dan tagar" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" -msgstr "Bisukan kata ini di tag saja" +msgstr "Bisukan kata ini hanya dalam tagar" #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:327 @@ -2899,7 +3148,7 @@ msgstr "Bisukan utasan" #: src/view/com/util/forms/PostDropdownBtn.tsx:337 #: src/view/com/util/forms/PostDropdownBtn.tsx:339 msgid "Mute words & tags" -msgstr "Bisukan kata & tag" +msgstr "Bisukan kata & tagar" #: src/view/com/lists/ListCard.tsx:102 msgid "Muted" @@ -2926,32 +3175,32 @@ msgstr "Dibisukan oleh \"{0}\"" msgid "Muted words & tags" msgstr "Kata & tagar yang dibisukan" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." -msgstr "Pembisuan akun bersifat privat. Akun yang dibisukan tetap dapat berinteraksi dengan Anda, namun Anda tidak akan melihat postingan atau notifikasi dari mereka." +msgstr "Pembisuan bersifat privat. Akun yang dibisukan tetap dapat berinteraksi dengan Anda, tetapi Anda tidak akan melihat postingan atau notifikasi dari mereka." #: src/components/dialogs/BirthDateSettings.tsx:35 #: src/components/dialogs/BirthDateSettings.tsx:38 msgid "My Birthday" msgstr "Tanggal Lahir Saya" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "Feed Saya" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "Profil Saya" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "Feed tersimpan saya" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "Feed Tersimpan Saya" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "Nama" @@ -2960,27 +3209,27 @@ msgstr "Nama" msgid "Name is required" msgstr "Nama harus diisi" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "Nama atau Deskripsi Melanggar Standar Komunitas" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "Alam" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "Menuju ke layar berikutnya" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "Menuju ke profil Anda" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "Perlu melaporkan pelanggaran hak cipta?" @@ -2989,11 +3238,11 @@ msgstr "Perlu melaporkan pelanggaran hak cipta?" #~ msgid "Never lose access to your followers and data." #~ msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "Tidak akan lagi kehilangan akses ke data dan pengikut Anda." -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "Tidak usah, buatkan handle untuk saya" @@ -3006,11 +3255,15 @@ msgstr "Baru" msgid "New" msgstr "Baru" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" -msgstr "" +msgstr "Obrolan baru" + +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "Pesan baru" #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" @@ -3024,22 +3277,22 @@ msgstr "Kata sandi baru" msgid "New Password" msgstr "Kata Sandi Baru" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "Postingan baru" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "Postingan baru" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "Postingan baru" @@ -3052,14 +3305,14 @@ msgstr "Daftar Pengguna Baru" msgid "Newest replies first" msgstr "Balasan terbaru terlebih dahulu" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "Berita" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3077,29 +3330,29 @@ msgstr "Berikutnya" msgid "Next image" msgstr "Gambar berikutnya" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "Tidak" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "Tidak ada deskripsi" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "Tanpa Panel DNS" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "GIF tidak ditemukan. Mungkin ada masalah dengan Tenor." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "Tidak lagi mengikuti {0}" @@ -3107,25 +3360,39 @@ msgstr "Tidak lagi mengikuti {0}" msgid "No longer than 253 characters" msgstr "Tidak lebih dari 253 karakter" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" -msgstr "" +msgstr "Belum ada pesan" + +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "Tidak ada percakapan lain untuk ditampilkan" #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "Belum ada notifikasi!" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "Tidak seorang pun" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "Tidak ada hasil" -#: src/components/Lists.tsx:195 -msgid "No results found" -msgstr "Tidak ada hasil yang ditemukan" +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "Tidak ada hasil" -#: src/view/screens/Feeds.tsx:520 +#: src/components/Lists.tsx:207 +msgid "No results found" +msgstr "Tidak ditemukan hasil" + +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "Tidak ada hasil ditemukan untuk \"{query}\"" @@ -3135,13 +3402,13 @@ msgstr "Tidak ada hasil ditemukan untuk \"{query}\"" msgid "No results found for {query}" msgstr "Tidak ada hasil ditemukan untuk {query}" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "Tidak ada hasil pencarian yang ditemukan untuk \"{search}\"." #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "" #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3152,6 +3419,10 @@ msgstr "Tidak terima kasih" msgid "Nobody" msgstr "Tak seorang pun" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "Tidak ada yang dapat membalas" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3163,15 +3434,15 @@ msgstr "Ketelanjangan Non-Seksual" #: src/view/com/modals/SelfLabel.tsx:135 #~ msgid "Not Applicable." -#~ msgstr "Tidak Berlaku." +#~ msgstr "" #: src/Navigation.tsx:116 #: src/view/screens/Profile.tsx:100 msgid "Not Found" msgstr "Tidak ditemukan" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "Jangan sekarang" @@ -3183,49 +3454,61 @@ msgstr "Catatan tentang berbagi" #: src/screens/Moderation/index.tsx:540 msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." -msgstr "Catatan: Bluesky merupakan jaringan terbuka dan publik. Pengaturan ini hanya akan membatasi visibilitas konten Anda pada aplikasi dan website Bluesky, dan aplikasi lain mungkin tidak mengindahkan pengaturan ini. Konten Anda mungkin tetap ditampilkan kepada pengguna yang tidak login oleh aplikasi dan website lain." +msgstr "Catatan: Bluesky merupakan jaringan terbuka dan publik. Pengaturan ini hanya akan membatasi visibilitas konten Anda pada aplikasi dan situs web Bluesky, dan aplikasi lain mungkin tidak menghormati pengaturan ini. Konten Anda mungkin tetap ditampilkan kepada pengguna yang tidak login oleh aplikasi dan website lain." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "Kosong" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "Suara notifikasi" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "Suara Notifikasi" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "Notifikasi" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" -msgstr "" +msgstr "Sekarang" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "Ketelanjangan" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "Ketelanjangan atau konten dewasa yang tidak dilabeli sedemikian rupa" #: src/screens/Signup/index.tsx:145 #~ msgid "of" -#~ msgstr "dari" +#~ msgstr "" #: src/lib/moderation/useLabelBehaviorDescription.ts:11 msgid "Off" msgstr "Matikan" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "Oh tidak!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "Oh tidak! Sepertinya ada yang salah." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "OK" @@ -3237,49 +3520,66 @@ msgstr "Baiklah" msgid "Oldest replies first" msgstr "Balasan terlama terlebih dahulu" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "Atur ulang orientasi" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "Satu atau lebih gambar belum ada teks alt." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "Hanya mendukung berkas .jpg dan .png" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." -msgstr "Hanya {0} dapat membalas." +msgstr "Hanya {0} yang dapat membalas." #: src/screens/Signup/StepHandle.tsx:98 msgid "Only contains letters, numbers, and hyphens" msgstr "Hanya berisi huruf, angka, dan tanda hubung" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" -msgstr "Oops, sepertinya ada yang salah!" +msgstr "Ups, sepertinya ada yang salah!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "Uups!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "Buka" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "Buka pembuat avatar" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "Buka opsi percakapan" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "Buka pemilih emoji" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "Buka menu opsi feed" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "Buka tautan dengan browser dalam aplikasi" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "Buka opsi pesan" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "Buka pengaturan kata dan tagar yang dibisukan" @@ -3290,14 +3590,14 @@ msgstr "Buka navigasi" #: src/view/com/util/forms/PostDropdownBtn.tsx:217 msgid "Open post options menu" -msgstr "Buka menu pilihan postingan" +msgstr "Buka menu opsi postingan" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "Buka halaman buku cerita" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "Buka log sistem" @@ -3305,7 +3605,7 @@ msgstr "Buka log sistem" msgid "Opens {numItems} options" msgstr "Membuka opsi {numItems}" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "Membuka pengaturan aksesibilitas" @@ -3321,11 +3621,15 @@ msgstr "Membuka daftar pengguna yang diperluas dalam notifikasi ini" msgid "Opens camera on device" msgstr "Membuka kamera pada perangkat" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "Membuka penyusun postingan" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "Membuka pengaturan bahasa yang dapat dikonfigurasi" @@ -3333,7 +3637,7 @@ msgstr "Membuka pengaturan bahasa yang dapat dikonfigurasi" msgid "Opens device photo gallery" msgstr "Membuka galeri foto perangkat" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "Membuka pengaturan penyematan eksternal" @@ -3355,73 +3659,73 @@ msgstr "Membuka dialog pemilihan GIF" msgid "Opens list of invite codes" msgstr "Membuka daftar kode undangan" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" -msgstr "Membuka modal untuk konfirmasi penghapusan akun. Membutuhkan kode email" +msgstr "Buka modal untuk konfirmasi penghapusan akun. Membutuhkan kode email" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" -msgstr "Membuka modal untuk mengubah kata sandi Bluesky Anda" +msgstr "Buka modal untuk mengubah kata sandi Bluesky Anda" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" -msgstr "Buka modal untuk memilih handle baru Bluesky" +msgstr "Membuka modal untuk memilih handle baru Bluesky" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" -msgstr "Membuka modal untuk mengunduh data akun (repositori) Bluesky Anda" +msgstr "Buka modal untuk mengunduh data akun (repositori) Bluesky Anda" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "Membuka modal untuk verifikasi email" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "Buka modal untuk menggunakan domain kustom" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "Buka pengaturan moderasi" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "Membuka formulir pengaturan ulang kata sandi" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "Membuka layar untuk mengedit Feed Tersimpan" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "Buka halaman dengan semua feed tersimpan" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" -msgstr "Membuka pengaturan kata sandi aplikasi" +msgstr "Buka pengaturan kata sandi aplikasi" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" -msgstr "Membuka preferensi feed Following" +msgstr "Membuka preferensi feed Mengikuti" #: src/view/com/modals/LinkWarning.tsx:93 msgid "Opens the linked website" msgstr "Membuka situs web tertaut" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "Membuka halaman pengaturan perpesanan" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "Buka halaman storybook" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "Buka halaman log sistem" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "Buka preferensi utasan" @@ -3429,7 +3733,8 @@ msgstr "Buka preferensi utasan" msgid "Option {0} of {numItems}" msgstr "Opsi {0} dari {numItems}" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "Jika perlu, berikan informasi tambahan di bawah ini:" @@ -3437,7 +3742,7 @@ msgstr "Jika perlu, berikan informasi tambahan di bawah ini:" msgid "Or combine these options:" msgstr "Atau gabungkan opsi-opsi berikut:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "Lainnya" @@ -3449,7 +3754,11 @@ msgstr "Akun lainnya" msgid "Other..." msgstr "Lainnya..." -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "Moderator kami telah meninjau laporan dan memutuskan untuk menonaktifkan akses Anda ke obrolan di Bluesky." + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "Halaman tidak ditemukan" @@ -3458,10 +3767,10 @@ msgstr "Halaman tidak ditemukan" msgid "Page Not Found" msgstr "Halaman Tidak Ditemukan" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "Kata sandi" @@ -3483,7 +3792,7 @@ msgstr "Jeda" #: src/view/screens/Search/Search.tsx:379 msgid "People" -msgstr "Orang-orang" +msgstr "Orang" #: src/Navigation.tsx:171 msgid "People followed by @{0}" @@ -3493,46 +3802,55 @@ msgstr "Orang yang diikuti oleh @{0}" msgid "People following @{0}" msgstr "Orang yang mengikuti @{0}" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "Diperlukan izin untuk mengakses rol kamera." -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "Izin untuk mengakses rol kamera ditolak. Silakan aktifkan di pengaturan sistem Anda." -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "Hewan Peliharaan" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "Gambar yang ditujukan untuk orang dewasa." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "Sematkan ke beranda" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "Sematkan ke Beranda" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "Feed Tersemat" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "Disematkan ke feed Anda" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" -msgstr "Mainkan" +msgstr "Putar" #: src/view/com/util/post-embeds/ExternalGifEmbed.tsx:123 msgid "Play {0}" msgstr "Putar {0}" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" -msgstr "Mainkan atau jeda GIF" +msgstr "Putar atau jeda GIF" #: src/view/com/util/post-embeds/ExternalPlayerEmbed.tsx:57 #: src/view/com/util/post-embeds/ExternalPlayerEmbed.tsx:58 @@ -3543,78 +3861,83 @@ msgstr "Putar Video" msgid "Plays the GIF" msgstr "Putar GIF" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "Silakan pilih handle Anda." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "Masukkan kata sandi Anda." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "Mohon selesaikan verifikasi captcha." -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "Harap konfirmasi email Anda sebelum mengubahnya. Ini adalah persyaratan sementara selama alat pembaruan email ditambahkan, dan akan segera dihapus." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." -msgstr "Masukkan nama untuk kata sandi aplikasi Anda. Semua spasi tidak diperbolehkan." +msgstr "Masukkan nama untuk kata sandi aplikasi Anda. Tidak diperbolehkan menggunakan spasi." -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "Masukkan nama unik untuk Kata Sandi Aplikasi ini atau gunakan nama yang dibuat secara acak." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "Silakan masukkan kata, tagar, atau frasa yang valid untuk dibisukan" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "Masukkan email Anda." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "Masukkan juga kata sandi Anda:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "Jelaskan menurut Anda mengapa {0} salah menerapkan label ini" -#: src/lib/hooks/useAccountSwitcher.ts:48 -msgid "Please sign in as @{0}" -msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "Mohon jelaskan mengapa menurut Anda obrolan Anda dinonaktifkan secara keliru" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 +msgid "Please sign in as @{0}" +msgstr "Silakan masuk sebagai @{0}" + +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "Mohon Verifikasi Email Anda" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "Harap tunggu hingga kartu tautan Anda selesai dimuat" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "Politik" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "Pornografi" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "Posting" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" -msgstr "Posting" +msgstr "Postingan" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "Postingan oleh {0}" @@ -3628,19 +3951,19 @@ msgstr "Postingan oleh @{0}" msgid "Post deleted" msgstr "Postingan dihapus" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "Postingan disembunyikan" #: src/components/moderation/ModerationDetailsDialog.tsx:97 #: src/lib/moderation/useModerationCauseDescription.ts:99 msgid "Post Hidden by Muted Word" -msgstr "Postingan Disembunyikan oleh Kata yang Dibisukan" +msgstr "Disembunyikan oleh Kata yang Dibisukan" #: src/components/moderation/ModerationDetailsDialog.tsx:100 #: src/lib/moderation/useModerationCauseDescription.ts:108 msgid "Post Hidden by You" -msgstr "Postingan Disembunyikan oleh Anda" +msgstr "Postingan yang Anda sembunyikan" #: src/view/com/composer/select-language/SelectLangBtn.tsx:87 msgid "Post language" @@ -3650,8 +3973,8 @@ msgstr "Bahasa postingan" msgid "Post Languages" msgstr "Bahasa Postingan" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "Postingan tidak ditemukan" @@ -3663,11 +3986,11 @@ msgstr "postingan" msgid "Posts" msgstr "Postingan" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "Postingan dapat dibisukan berdasarkan teks, tagar mereka, atau keduanya." -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "Postingan disembunyikan" @@ -3675,21 +3998,25 @@ msgstr "Postingan disembunyikan" msgid "Potentially Misleading Link" msgstr "Tautan yang Mungkin Menyesatkan" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "Tekan untuk mencoba menghubungkan kembali" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "Tekan untuk mengganti penyedia hosting" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "Tekan untuk mengulangi" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -3703,7 +4030,7 @@ msgstr "Bahasa Utama" msgid "Prioritize Your Follows" msgstr "Prioritaskan Pengikut Anda" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "Privasi" @@ -3711,25 +4038,29 @@ msgstr "Privasi" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "Kebijakan Privasi" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "Berkirim pesan secara pribadi dengan pengguna lain." + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "Memproses..." -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "profil" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "Profil" @@ -3737,27 +4068,27 @@ msgstr "Profil" msgid "Profile updated" msgstr "Profil diperbarui" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." -msgstr "Amankan akun Anda dengan memverifikasi email Anda." +msgstr "Verifikasi email untuk mengamankan akun Anda." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "Publik" #: src/view/screens/ModerationModlists.tsx:61 msgid "Public, shareable lists of users to mute or block in bulk." -msgstr "Daftar publik yang dapat dibagikan oleh pengguna untuk dibisukan atau diblokir secara massal." +msgstr "Daftar publik yang dapat dibagikan untuk memblokir atau membisukan pengguna secara massal." #: src/view/screens/Lists.tsx:61 msgid "Public, shareable lists which can drive feeds." msgstr "Daftar bersifat publik yang dapat dibagikan dan digunakan sebagai feed." -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "Publikasikan postingan" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "Publikasikan balasan" @@ -3783,9 +4114,17 @@ msgstr "Acak (alias \"Rolet Poster\")" msgid "Ratios" msgstr "Rasio" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "Alasan:" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" -msgstr "Pencarian terakhir" +msgstr "Pencarian Terakhir" #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:117 #~ msgid "Recommended Feeds" @@ -3795,12 +4134,20 @@ msgstr "Pencarian terakhir" #~ msgid "Recommended Users" #~ msgstr "" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "Hubungkan kembali" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "Memuat ulang percakapan" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "Hapus" @@ -3808,30 +4155,33 @@ msgstr "Hapus" msgid "Remove account" msgstr "Hapus akun" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "Hapus Avatar" #: src/view/com/util/UserBanner.tsx:155 msgid "Remove Banner" -msgstr "Hapus Banner" +msgstr "Hapus Spanduk" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "Hapus feed" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "Hapus feed?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "Hapus dari feed saya" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "Hapus dari feed saya?" @@ -3843,7 +4193,7 @@ msgstr "Hapus gambar" msgid "Remove image preview" msgstr "Hapus pratinjau gambar" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "Hapus kata yang dibisukan dari daftar Anda" @@ -3855,7 +4205,7 @@ msgstr "Hapus kutipan" msgid "Remove repost" msgstr "Hapus postingan ulang" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "Hapus feed ini dari feed tersimpan Anda" @@ -3864,11 +4214,13 @@ msgstr "Hapus feed ini dari feed tersimpan Anda" msgid "Removed from list" msgstr "Dihapus dari daftar" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "Dihapus dari feed saya" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "Dihapus dari feed Anda" @@ -3878,7 +4230,12 @@ msgstr "Menghapus gambar pra tinjau bawaan dari {0}" #: src/view/com/util/post-embeds/QuoteEmbed.tsx:224 msgid "Removes quoted post" -msgstr "Hapus kutipan postingan" +msgstr "Hapus postingan yang dikutip" + +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "Ganti dengan Discover" #: src/view/screens/Profile.tsx:194 msgid "Replies" @@ -3888,12 +4245,12 @@ msgstr "Balasan" msgid "Replies to this thread are disabled" msgstr "Balasan ke utas ini dinonaktifkan" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "Balas" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "Penyaring Balasan" @@ -3904,71 +4261,85 @@ msgstr "Penyaring Balasan" #~ msgstr "" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "Membalas <0><1/>" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" -msgstr "" +msgstr "Laporkan" #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "Laporkan Akun" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "Laporkan percakapan" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "Dialog laporan" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "Laporkan feed" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "Laporkan Daftar" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" -msgstr "" +msgstr "Laporkan pesan" #: src/view/com/util/forms/PostDropdownBtn.tsx:363 #: src/view/com/util/forms/PostDropdownBtn.tsx:365 msgid "Report post" msgstr "Laporkan postingan" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "Laporkan konten ini" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "Laporkan feed ini" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "Laporkan daftar ini" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "Laporkan pesan ini" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "Laporkan postingan ini" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "Laporkan pengguna ini" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "Posting ulang" @@ -3986,7 +4357,7 @@ msgstr "Posting ulang atau kutip postingan" msgid "Reposted By" msgstr "Diposting Ulang Oleh" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "Diposting ulang oleh {0}" @@ -3994,7 +4365,7 @@ msgstr "Diposting ulang oleh {0}" #~ msgid "Reposted by <0/>" #~ msgstr "" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "Diposting ulang oleh <0><1/>" @@ -4002,12 +4373,12 @@ msgstr "Diposting ulang oleh <0><1/>" msgid "reposted your post" msgstr "memposting ulang postingan Anda" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "Posting ulang postingan ini" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "Ajukan Perubahan" @@ -4020,7 +4391,7 @@ msgstr "Minta Kode" msgid "Require alt text before posting" msgstr "Wajibkan teks alt sebelum memposting" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "Gunakan kode email untuk masuk ke akun Anda" @@ -4028,8 +4399,8 @@ msgstr "Gunakan kode email untuk masuk ke akun Anda" msgid "Required for this provider" msgstr "Diwajibkan untuk provider ini" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "Kirim ulang email" @@ -4041,8 +4412,8 @@ msgstr "Kode reset" msgid "Reset Code" msgstr "Kode Reset" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "Reset status onboarding" @@ -4050,20 +4421,20 @@ msgstr "Reset status onboarding" msgid "Reset password" msgstr "Reset kata sandi" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "Atur ulang status preferensi" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "Reset status onboarding" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "Reset status preferensi" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "Mencoba masuk kembali" @@ -4072,13 +4443,14 @@ msgstr "Mencoba masuk kembali" msgid "Retries the last action, which errored out" msgstr "Coba kembali tindakan terakhir, yang gagal" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 @@ -4086,11 +4458,11 @@ msgid "Retry" msgstr "Ulangi" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" +#~ msgid "Retry." +#~ msgstr "" #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "Kembali ke halaman sebelumnya" @@ -4099,26 +4471,26 @@ msgid "Returns to home page" msgstr "Kembali ke beranda" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "Kembali ke halaman sebelumnya" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "Simpan" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "Simpan" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "Simpan teks alt" @@ -4130,7 +4502,7 @@ msgstr "Simpan tanggal lahir" msgid "Save Changes" msgstr "Simpan Perubahan" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "Simpan perubahan handle" @@ -4138,24 +4510,25 @@ msgstr "Simpan perubahan handle" msgid "Save image crop" msgstr "Simpan potongan gambar" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" -msgstr "Tambakan ke feed saya" +msgstr "Simpan ke feed saya" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "Feed Tersimpan" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" -msgstr "" +msgstr "Disimpan ke rol kamera Anda" #: src/view/com/lightbox/Lightbox.tsx:81 #~ msgid "Saved to your camera roll." -#~ msgstr "Disimpan ke rol kamera Anda." +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "Disimpan ke feed Anda" @@ -4163,7 +4536,7 @@ msgstr "Disimpan ke feed Anda" msgid "Saves any changes to your profile" msgstr "Simpan setiap perubahan pada profil Anda" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "Simpan perubahan handle ke {handle}" @@ -4171,16 +4544,20 @@ msgstr "Simpan perubahan handle ke {handle}" msgid "Saves image crop settings" msgstr "Menyimpan pengaturan pemangkasan gambar" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "Katakan halo!" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "Sains" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "Gulir ke atas" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4188,12 +4565,12 @@ msgstr "Gulir ke atas" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "Cari" @@ -4214,8 +4591,8 @@ msgid "Search for all posts with tag {displayTag}" msgstr "Cari semua postingan dengan tagar {displayTag}" #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "" #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4227,15 +4604,16 @@ msgstr "Cari pengguna" msgid "Search GIFs" msgstr "Cari GIF" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" -msgstr "" +msgstr "Cari profil" #: src/components/dialogs/GifSelect.tsx:159 msgid "Search Tenor" msgstr "Cari di Tenor" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "Langkah Keamanan Diperlukan" @@ -4245,7 +4623,7 @@ msgstr "Lihat postingan {truncatedTag}" #: src/components/TagMenu/index.web.tsx:83 msgid "See {truncatedTag} posts by user" -msgstr "Lihat postingan {truncatedTag} oleh pengguna" +msgstr "Lihat postingan {truncatedTag} dari pengguna" #: src/components/TagMenu/index.tsx:128 msgid "See <0>{displayTag} posts" @@ -4253,14 +4631,14 @@ msgstr "Lihat postingan <0>{displayTag}" #: src/components/TagMenu/index.tsx:187 msgid "See <0>{displayTag} posts by this user" -msgstr "Lihat postingan <0>{displayTag} oleh pengguna ini" +msgstr "Lihat postingan <0>{displayTag} dari pengguna ini" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "Lihat profil" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "Lihat panduan ini" @@ -4272,10 +4650,22 @@ msgstr "Lihat panduan ini" msgid "Select {item}" msgstr "Pilih {item}" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "Pilih warna" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "Pilih akun" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "Pilih avatar" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "Pilih emoji" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "Pilih dari akun yang sudah ada" @@ -4284,7 +4674,7 @@ msgstr "Pilih dari akun yang sudah ada" msgid "Select GIF" msgstr "Pilih GIF" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "Pilih GIF \"{0}\"" @@ -4304,17 +4694,21 @@ msgstr "Pilih opsi {i} dari {numItems}" msgid "Select some accounts below to follow" msgstr "Pilih beberapa akun di bawah ini untuk diikuti" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "Pilih emoji {emojiName} sebagai avatar Anda" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "Pilih layanan moderasi untuk melaporkan" #: src/view/com/auth/server-input/index.tsx:82 msgid "Select the service that hosts your data." -msgstr "Pilih layanan yang akan menampung data Anda." +msgstr "Pilih layanan yang akan menyimpan data Anda." #: src/screens/Onboarding/StepTopicalFeeds.tsx:100 msgid "Select topical feeds to follow from the list below" -msgstr "Pilih feed topik untuk diikuti dari daftar di bawah ini" +msgstr "Pilih feed topikal untuk diikuti dari daftar di bawah ini" #: src/screens/Onboarding/StepModeration/index.tsx:63 msgid "Select what you want to see (or not see), and we’ll handle the rest." @@ -4326,13 +4720,13 @@ msgstr "Pilih bahasa yang ingin Anda sertakan dalam feed langganan Anda. Jika ti #: src/view/screens/LanguageSettings.tsx:98 msgid "Select your app language for the default text to display in the app." -msgstr "Pilih bahasa untuk teks yang akan ditampilkan dalam aplikasi." +msgstr "Pilih bahasa untuk teks default yang akan ditampilkan dalam aplikasi." #: src/screens/Signup/StepInfo/index.tsx:135 msgid "Select your date of birth" msgstr "Pilih tanggal lahir Anda" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "Pilih minat Anda dari opsi di bawah ini" @@ -4348,32 +4742,38 @@ msgstr "Pilih feed algoritma utama Anda" msgid "Select your secondary algorithmic feeds" msgstr "Pilih feed algoritma sekunder Anda" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "Kirimkan situs web yang bagus!" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "Kirim Email Konfirmasi" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "Kirim email" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "Kirim Email" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "Kirim masukan" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" -msgstr "" +msgstr "Kirim pesan" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "Kirim laporan" @@ -4381,12 +4781,12 @@ msgstr "Kirim laporan" msgid "Send report to {0}" msgstr "Kirim laporan ke {0}" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "Kirim email verifikasi" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "Kirim email dengan kode konfirmasi untuk penghapusan akun" @@ -4402,15 +4802,15 @@ msgstr "Atur tanggal lahir" msgid "Set new password" msgstr "Buat kata sandi baru" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "Pilih \"Tidak\" untuk menyembunyikan semua kutipan postingan dari feed Anda. Posting ulang tetap akan terlihat." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "Pilih \"Tidak\" untuk menyembunyikan semua balasan dari feed Anda." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "Pilih \"Tidak\" untuk menyembunyikan semua posting ulang dari feed Anda." @@ -4418,7 +4818,7 @@ msgstr "Pilih \"Tidak\" untuk menyembunyikan semua posting ulang dari feed Anda. msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "Pilih \"Ya\" untuk menampilkan balasan dalam bentuk utasan. Ini merupakan fitur eksperimental." -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "Pilih \"Ya\" untuk menampilkan beberapa sampel dari feed tersimpan di feed Mengikuti Anda. Ini merupakan fitur eksperimental" @@ -4426,27 +4826,27 @@ msgstr "Pilih \"Ya\" untuk menampilkan beberapa sampel dari feed tersimpan di fe msgid "Set up your account" msgstr "Atur akun Anda" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Atur nama pengguna Bluesky" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "Mengatur tema menjadi gelap" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "Mengatur tema menjadi terang" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "Mengatur tema sesuai pengaturan sistem" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "Mengatur tema gelap menjadi tema gelap" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "Mengatur tema gelap menjadi tema redup" @@ -4467,23 +4867,22 @@ msgid "Sets image aspect ratio to wide" msgstr "Mengatur aspek rasio gambar menjadi lebar" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "Pengaturan" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "Aktivitas seksual atau ketelanjangan erotis." #: src/lib/moderation/useGlobalLabelStrings.ts:38 msgid "Sexually Suggestive" -msgstr "Mengarah ke Seksualitas" +msgstr "Bermuatan Seksual" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "Bagikan" @@ -4493,18 +4892,26 @@ msgstr "Bagikan" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "Bagikan" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "Bagikan cerita seru!" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "Bagikan fakta menarik!" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "Tetap bagikan" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "Bagikan feed" @@ -4513,25 +4920,29 @@ msgstr "Bagikan feed" msgid "Share Link" msgstr "Bagikan Tautan" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "Bagikan feed favorit Anda!" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "Membagikan situs web tertaut" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "Tampilkan" #: src/view/screens/PreferencesFollowingFeed.tsx:68 #~ msgid "Show all replies" -#~ msgstr "Tampilkan semua balasan" +#~ msgstr "" #: src/view/com/util/post-embeds/GifEmbed.tsx:167 msgid "Show alt text" -msgstr "" +msgstr "Tampilkan teks alt" #: src/components/moderation/ScreenHider.tsx:169 #: src/components/moderation/ScreenHider.tsx:172 @@ -4547,31 +4958,39 @@ msgstr "Tampilkan lencana" msgid "Show badge and filter from feeds" msgstr "Tampilkan lencana dan saring dari feed" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" -msgstr "Tampilkan berikut ini mirip dengan {0}" +msgstr "Tampilkan pengguna lain yang serupa dengan {0}" + +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" -msgstr "" +msgstr "Tampilkan lebih sedikit" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "Tampilkan Lebih Lanjut" #: src/view/com/util/forms/PostDropdownBtn.tsx:297 #: src/view/com/util/forms/PostDropdownBtn.tsx:299 msgid "Show more like this" +msgstr "Tampilkan lebih banyak" + +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "Tampilkan Postingan dari Feed Saya" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "Tampilkan Kutipan Postingan" @@ -4587,7 +5006,7 @@ msgstr "Tampilkan kutipan di Mengikuti" msgid "Show re-posts in Following feed" msgstr "Tampilkan posting ulang di feed Mengikuti" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "Tampilkan Balasan" @@ -4605,9 +5024,9 @@ msgstr "Tampilkan balasan di feed Mengikuti" #: src/view/screens/PreferencesFollowingFeed.tsx:70 #~ msgid "Show replies with at least {value} {0}" -#~ msgstr "Tampilkan balasan dengan setidaknya {value} {0}" +#~ msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "Tampilkan Posting Ulang" @@ -4616,7 +5035,7 @@ msgid "Show reposts in Following" msgstr "Tampilkan posting ulang di Mengikuti" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "Tampilkan konten" @@ -4640,17 +5059,17 @@ msgstr "Tampilkan postingan dari {0} di feed Anda" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4673,17 +5092,17 @@ msgstr "Masuk atau buat akun Anda untuk bergabung dalam percakapan!" msgid "Sign into Bluesky or create a new account" msgstr "Masuk ke Bluesky atau buat akun baru" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "Keluar" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -4699,7 +5118,7 @@ msgstr "Daftar atau masuk untuk bergabung dalam obrolan" msgid "Sign-in Required" msgstr "Wajib Masuk" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "Masuk sebagai" @@ -4708,27 +5127,35 @@ msgstr "Masuk sebagai" msgid "Signed in as @{0}" msgstr "Masuk sebagai @{0}" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "Lewati" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "Lewati tahap ini" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "Pengembang Perangkat Lunak" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "Beberapa orang dapat membalas" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "Terjadi kesalahan" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." msgstr "Terjadi kesalahan, silakan coba lagi." -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "Maaf! Sesi Anda telah berakhir. Silakan masuk lagi." @@ -4740,19 +5167,24 @@ msgstr "Urutkan Balasan" msgid "Sort replies to the same post by:" msgstr "Urutkan balasan ke postingan yang sama berdasarkan:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "Asal:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "Sumber: <0>{0}" + +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "Spam" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "Spam; menyebut atau membalas secara berlebihan" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "Olahraga" @@ -4760,74 +5192,84 @@ msgstr "Olahraga" msgid "Square" msgstr "Persegi" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" -msgstr "" +msgstr "Mulai obrolan baru" + +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "Mulai obrolan dengan {displayName}" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "Mulai mengobrol" #: src/view/screens/Settings/index.tsx:862 #~ msgid "Status page" -#~ msgstr "Halaman status" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:896 +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" -msgstr "" +msgstr "Halaman Status" #: src/screens/Signup/index.tsx:145 #~ msgid "Step" -#~ msgstr "Langkah" +#~ msgstr "" #: src/screens/Signup/index.tsx:154 msgid "Step {0} of {1}" -msgstr "" +msgstr "Langkah {0} dari {1}" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "Penyimpanan dihapus, Anda perlu memulai ulang aplikasi sekarang." #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Storybook" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Kirim" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" -msgstr "Langganan" +msgstr "Berlangganan" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "Berlangganan @{0} untuk menggunakan label berikut:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "Berlangganan Pelabel" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:172 #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:307 msgid "Subscribe to the {0} feed" -msgstr "Langganan ke feed {0}" +msgstr "Berlangganan ke feed {0}" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "Berlangganan pelabel ini" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" -msgstr "Langganan ke daftar ini" +msgstr "Berlangganan ke daftar ini" #: src/view/screens/Search/Search.tsx:417 msgid "Suggested Follows" -msgstr "Saran untuk Diikuti" +msgstr "Disarankan untuk Mengikuti" #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:65 msgid "Suggested for you" msgstr "Disarankan untuk Anda" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "Sugestif" @@ -4842,23 +5284,23 @@ msgstr "Dukungan" msgid "Switch Account" msgstr "Pindah Akun" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "Beralih ke {0}" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "Mengganti akun yang Anda masuki" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "Sistem" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "Log sistem" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "tagar" @@ -4874,56 +5316,62 @@ msgstr "Tinggi" msgid "Tap to view fully" msgstr "Ketuk untuk melihat sepenuhnya" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "Teknologi" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "Ceritakan sebuah lelucon!" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "Ketentuan" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "Ketentuan Layanan" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "Istilah yang digunakan melanggar standar komunitas" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "teks" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "Area input teks" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "Terima kasih. Laporan Anda telah terkirim." -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" -msgstr "Yang berisi konten berikut:" +msgstr "Berisi hal berikut:" #: src/screens/Signup/index.tsx:87 msgid "That handle is already taken." msgstr "Handle telah terpakai." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "Akun ini dapat berinteraksi kembali dengan Anda setelah pemblokiran dibuka." #: src/components/moderation/ModerationDetailsDialog.tsx:127 #~ msgid "the author" -#~ msgstr "pembuat" +#~ msgstr "" #: src/view/screens/CommunityGuidelines.tsx:36 msgid "The Community Guidelines have been moved to <0/>" @@ -4933,20 +5381,24 @@ msgstr "Panduan Komunitas telah dipindahkan ke <0/>" msgid "The Copyright Policy has been moved to <0/>" msgstr "Kebijakan Hak Cipta telah dipindahkan ke <0/>" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 -msgid "The following labels were applied to your account." -msgstr "Label berikut ini telah diterapkan pada akun Anda." +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "Feed telah diganti dengan Discover." -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:66 +msgid "The following labels were applied to your account." +msgstr "Label berikut telah diterapkan pada akun Anda." + +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." -msgstr "Label berikut ini telah diterapkan pada konten Anda." +msgstr "Label berikut telah diterapkan pada konten Anda." #: src/screens/Onboarding/Layout.tsx:58 msgid "The following steps will help customize your Bluesky experience." msgstr "Langkah berikut akan membantu menyesuaikan pengalaman Bluesky Anda." -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "Postingan mungkin telah dihapus." @@ -4966,37 +5418,40 @@ msgstr "Ketentuan Layanan telah dipindahkan ke" msgid "There are many feeds to try:" msgstr "Ada banyak feed untuk dicoba:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "Ada masalah saat menghubungi server, silakan periksa koneksi internet Anda dan coba lagi." -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "Ada masalah saat menghapus feed ini. Periksa koneksi internet Anda dan coba lagi." -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." -msgstr "Ada masalah saat memperbarui feed Anda, periksa koneksi internet Anda dan coba lagi." +msgstr "Ada masalah saat memperbarui feed Anda, periksa koneksi internet dan coba lagi." -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "Ada masalah saat menghubungkan ke Tenor." #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "Ada masalah saat menghubungi server" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "Ada masalah saat menghubungi server Anda" @@ -5004,7 +5459,7 @@ msgstr "Ada masalah saat menghubungi server Anda" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "Ada masalah saat mengambil notifikasi. Ketuk di sini untuk mencoba lagi." -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "Ada masalah saat mengambil postingan. Ketuk di sini untuk mencoba lagi." @@ -5017,7 +5472,8 @@ msgstr "Ada masalah saat mengambil daftar. Ketuk di sini untuk mencoba lagi." msgid "There was an issue fetching your lists. Tap here to try again." msgstr "Ada masalah saat mengambil daftar Anda. Ketuk di sini untuk mencoba lagi." -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "Ada masalah saat mengirimkan laporan. Silakan periksa koneksi internet Anda." @@ -5025,32 +5481,32 @@ msgstr "Ada masalah saat mengirimkan laporan. Silakan periksa koneksi internet A msgid "There was an issue syncing your preferences with the server" msgstr "Ada masalah saat mensinkronkan preferensi Anda dengan server" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "Ada masalah dengan pengambilan kata sandi aplikasi Anda" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "Ada masalah! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "Ada masalah. Periksa koneksi internet Anda dan coba lagi." -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "Sepertinya ada masalah pada aplikasi. Harap beri tahu kami jika Anda mengalaminya!" @@ -5065,19 +5521,31 @@ msgstr "Berikut adalah akun populer yang mungkin Anda sukai:" #: src/components/moderation/ScreenHider.tsx:116 msgid "This {screenDescription} has been flagged:" -msgstr "Ini {screenDescription} telah ditandai:" +msgstr "{screenDescription} ini telah ditandai:" #: src/components/moderation/ScreenHider.tsx:111 msgid "This account has requested that users sign in to view their profile." msgstr "Akun ini mewajibkan pengguna untuk masuk agar bisa melihat profilnya." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "Akun ini diblokir oleh satu atau lebih daftar moderasi Anda. Untuk membuka blokir, silakan kunjungi daftar tersebut secara langsung dan hapus pengguna ini." + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "Banding ini akan dikirim ke <0>{0}." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." +msgstr "Banding ini akan dikirimkan ke layanan moderasi Bluesky." + +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "Obrolan ini telah terputus" + #: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." -msgstr "" +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "" #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." @@ -5096,21 +5564,21 @@ msgstr "Konten ini disediakan oleh {0}. Apakah Anda ingin mengaktifkan media eks msgid "This content is not available because one of the users involved has blocked the other." msgstr "Konten ini tidak tersedia karena salah satu pengguna yang terlibat telah memblokir pengguna lainnya." -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "Konten ini tidak dapat dilihat tanpa akun Bluesky." -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." -msgstr "Fitur ini masih dalam versi beta. Anda dapat membaca lebih lanjut tentang ekspor repositori di <0>blogpost ini." +msgstr "Fitur ini masih dalam versi beta. Anda dapat membaca lebih lanjut tentang ekspor repositori di <0>postingan blog ini." -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "Feed ini sedang menerima terlalu banyak trafik dan sementara tidak tersedia. Silakan coba lagi nanti." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "Feed ini kosong!" @@ -5118,35 +5586,47 @@ msgstr "Feed ini kosong!" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "Feed ini kosong! Anda mungkin perlu mengikuti lebih banyak pengguna atau menyesuaikan pengaturan bahasa Anda." +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "Feed ini tidak lagi online. Kami akan menampilkan <0>Discover sebagai gantinya." + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "Informasi ini tidak akan dibagikan ke pengguna lainnya." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "Ini penting jika Anda butuh untuk mengganti email atau reset kata sandi Anda nantinya." #: src/components/moderation/ModerationDetailsDialog.tsx:124 #~ msgid "This label was applied by {0}." -#~ msgstr "Label ini diterapkan oleh {0}." +#~ msgstr "" #: src/components/moderation/ModerationDetailsDialog.tsx:127 msgid "This label was applied by <0>{0}." -msgstr "" +msgstr "Label ini diterapkan oleh <0>{0}." #: src/components/moderation/ModerationDetailsDialog.tsx:125 msgid "This label was applied by the author." -msgstr "" +msgstr "Label ini diterapkan oleh pemosting." -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "Label ini diterapkan oleh Anda." + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." -msgstr "Pelabel ini belum menyatakan label yang dia publikasikan, dan mungkin tidak aktif." +msgstr "Pelabel ini belum menyatakan label apa yang diterbitkannya, dan mungkin tidak aktif." #: src/view/com/modals/LinkWarning.tsx:72 msgid "This link is taking you to the following website:" -msgstr "Tautan ini akan membawa Anda ke website:" +msgstr "Tautan ini akan membawa Anda ke situs web berikut:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "Daftar ini kosong!" @@ -5154,11 +5634,11 @@ msgstr "Daftar ini kosong!" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "Layanan moderasi ini tidak tersedia. Lihat detail lebih lanjut di bawah. Jika masalah berlanjut, hubungi kami." -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "Nama ini sudah digunakan" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "Postingan ini telah dihapus." @@ -5179,7 +5659,7 @@ msgstr "Profil ini hanya dapat dilihat oleh pengguna yang masuk. Ini tidak akan msgid "This service has not provided terms of service or a privacy policy." msgstr "Layanan ini tidak menyediakan ketentuan layanan atau kebijakan privasi." -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "Ini akan membuat catatan domain di:" @@ -5187,6 +5667,10 @@ msgstr "Ini akan membuat catatan domain di:" msgid "This user doesn't have any followers." msgstr "Pengguna ini tidak memiliki pengikut." +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "Pengguna ini telah memblokir Anda" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5194,7 +5678,7 @@ msgstr "Pengguna ini telah memblokir Anda. Anda tidak dapat melihat konten merek #: src/lib/moderation/useGlobalLabelStrings.ts:30 msgid "This user has requested that their content only be shown to signed-in users." -msgstr "Pengguna ini telah meminta agar kontennya hanya ditampilkan ke pengguna yang masuk." +msgstr "Pengguna ini telah meminta agar kontennya hanya ditampilkan kepada pengguna yang sudah masuk." #: src/components/moderation/ModerationDetailsDialog.tsx:55 msgid "This user is included in the <0>{0} list which you have blocked." @@ -5210,18 +5694,18 @@ msgstr "Pengguna ini tidak mengikuti siapa pun." #: src/view/com/modals/SelfLabel.tsx:137 #~ msgid "This warning is only available for posts with media attached." -#~ msgstr "Peringatan ini hanya tersedia untuk postingan dengan lampiran media." +#~ msgstr "" -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "Ini akan menghapus {0} dari daftar kata yang Anda bisukan. Anda tetap dapat menambahkannya lagi nanti." -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "Preferensi utasan" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "Preferensi Utasan" @@ -5233,15 +5717,19 @@ msgstr "Mode Utasan" msgid "Threads Preferences" msgstr "Preferensi Utas" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." -msgstr "Untuk menonaktifkan metode 2FA email, silakan verifikasi akses Anda ke alamat email." +msgstr "Untuk menonaktifkan metode 2FA melalui email, silakan verifikasi akses Anda ke alamat email tersebut." + +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "Untuk melaporkan percakapan, silakan laporkan salah satu pesannya melalui laman percakapan. Ini akan membantu moderator kami memahami konteks masalah Anda." #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "Kepada siapa Anda ingin mengirimkan laporan ini?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "Beralih antara opsi kata yang dibisukan." @@ -5274,60 +5762,69 @@ msgctxt "action" msgid "Try again" msgstr "Coba lagi" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "Autentikasi dua faktor" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" -msgstr "" +msgstr "Ketik pesan Anda di sini" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "Tipe:" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "Buka blokir daftar" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "Bunyikan daftar" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "Tidak dapat terhubung ke layanan. Mohon periksa koneksi internet Anda." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "Buka blokir" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "Buka blokir" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "Buka blokir akun" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "Buka blokir Akun" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" -msgstr "Buka blokir Akun?" +msgstr "Buka Blokir Akun?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "Batalkan posting ulang" @@ -5341,7 +5838,7 @@ msgstr "Berhenti mengikuti" msgid "Unfollow" msgstr "Batal ikuti" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "Berhenti mengikuti {0}" @@ -5352,14 +5849,14 @@ msgstr "Batal Ikuti Akun" #: src/view/com/util/post-ctrls/PostCtrls.tsx:197 #~ msgid "Unlike" -#~ msgstr "Tidak suka" +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "Batalkan suka feed ini" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "Bunyikan" @@ -5376,37 +5873,50 @@ msgstr "Bunyikan Akun" msgid "Unmute all {displayTag} posts" msgstr "Batal bisukan semua postingan {displayTag}" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" +msgstr "Bunyikan percakapan" + +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "" #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "Bunyikan utasan" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "Lepas sematan" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" -msgstr "Batal sematkan dari beranda" +msgstr "Lepaskan sematan dari beranda" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "Lepas sematan daftar moderasi" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "Lepaskan sematan dari feed Anda" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "Berhenti langganan" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "Berhenti langganan pelabel ini" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "Konten Seksual yang Tidak Diinginkan" @@ -5414,7 +5924,7 @@ msgstr "Konten Seksual yang Tidak Diinginkan" msgid "Update {displayName} in Lists" msgstr "Perbarui {displayName} dalam Daftar" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "Ubah ke {handle}" @@ -5422,44 +5932,48 @@ msgstr "Ubah ke {handle}" msgid "Updating..." msgstr "Memperbarui..." -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "Unggah foto saja" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "Unggah berkas teks ke:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "Unggah dari Kamera" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "Unggah dari Berkas" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "Unggah dari Pustaka" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "Gunakan berkas di server Anda" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "Gunakan kata sandi aplikasi untuk masuk ke klien Bluesky lainnya tanpa memberikan akses penuh ke akun atau kata sandi Anda." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "Gunakan bsky.social sebagai penyedia hosting" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" -msgstr "Gunakan layanan bawaan" +msgstr "Gunakan penyedia handle bawaan" #: src/view/com/modals/InAppBrowserConsent.tsx:56 #: src/view/com/modals/InAppBrowserConsent.tsx:58 @@ -5471,11 +5985,15 @@ msgstr "Gunakan peramban dalam aplikasi" msgid "Use my default browser" msgstr "Gunakan peramban bawaan saya" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "Gunakan rekomendasi" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "Gunakan panel DNS" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "Gunakan ini untuk masuk ke aplikasi lain dengan handle Anda." @@ -5490,7 +6008,11 @@ msgstr "Pengguna Diblokir" #: src/lib/moderation/useModerationCauseDescription.ts:48 msgid "User Blocked by \"{0}\"" -msgstr "Pengguna Diblokir oleh \"{0}\"" +msgstr "Diblokir oleh \"{0}\"" + +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "Pengguna diblokir oleh daftar" #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" @@ -5498,7 +6020,7 @@ msgstr "Pengguna Diblokir oleh Daftar" #: src/lib/moderation/useModerationCauseDescription.ts:66 msgid "User Blocking You" -msgstr "Pengguna Memblokir Anda" +msgstr "Pengguna yang Memblokir Anda" #: src/components/moderation/ModerationDetailsDialog.tsx:70 msgid "User Blocks You" @@ -5507,17 +6029,17 @@ msgstr "Pengguna Memblokir Anda" #: src/view/com/lists/ListCard.tsx:85 #: src/view/com/modals/UserAddRemoveLists.tsx:198 msgid "User list by {0}" -msgstr "Daftar pengguna oleh {0}" +msgstr "Daftar pengguna {0}" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "Daftar pengguna oleh<0/>" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" -msgstr "Daftar pengguna oleh Anda" +msgstr "Daftar pengguna Anda" #: src/view/com/modals/CreateOrEditList.tsx:198 msgid "User list created" @@ -5531,11 +6053,11 @@ msgstr "Daftar pengguna diperbarui" msgid "User Lists" msgstr "Daftar Pengguna" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "Nama pengguna atau alamat email" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "Pengguna" @@ -5543,6 +6065,13 @@ msgstr "Pengguna" msgid "users followed by <0/>" msgstr "pengguna yang diikuti <0/>" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "Pengguna yang saya ikuti" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "Pengguna di \"{0}\"" @@ -5551,56 +6080,56 @@ msgstr "Pengguna di \"{0}\"" msgid "Users that have liked this content or profile" msgstr "Pengguna yang telah menyukai konten atau profil" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "Nilai:" #: src/view/com/modals/ChangeHandle.tsx:510 #~ msgid "Verify {0}" -#~ msgstr "Verifikasi {0}" +#~ msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" -msgstr "" +msgstr "Verifikasi DNS" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "Verifikasi email" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "Verifikasi email saya" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "Verifikasi Email Saya" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "Verifikasi Email Baru" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" -msgstr "" +msgstr "Verifikasi Berkas" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "Verifikasi Email Anda" #: src/view/screens/Settings/index.tsx:852 #~ msgid "Version {0}" -#~ msgstr "Versi {0}" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" -msgstr "" +msgstr "Versi {appVersion} {bundleInfo}" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "Permainan Video" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "Lihat avatar {0}" @@ -5608,25 +6137,25 @@ msgstr "Lihat avatar {0}" msgid "View debug entry" msgstr "Lihat entri debug" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "Lihat detail" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "Lihat detail untuk melaporkan pelanggaran hak cipta" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "Lihat utas lengkap" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "Lihat informasi tentang label ini" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "Lihat profil" @@ -5638,14 +6167,14 @@ msgstr "Lihat avatar" msgid "View the labeling service provided by @{0}" msgstr "Lihat layanan pelabelan yang disediakan oleh @{0}" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "Lihat pengguna yang menyukai feed ini" #: src/view/com/modals/LinkWarning.tsx:89 #: src/view/com/modals/LinkWarning.tsx:95 msgid "Visit Site" -msgstr "Kunjungi Halaman" +msgstr "Kunjungi Situs" #: src/components/moderation/LabelPreference.tsx:135 #: src/lib/moderation/useLabelBehaviorDescription.ts:17 @@ -5666,11 +6195,15 @@ msgstr "Peringatkan konten dan saring dari feed" msgid "We couldn't find any results for that hashtag." msgstr "Kami tidak dapat menemukan hasil apa pun untuk tagar tersebut." +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "Kami tidak dapat memuat percakapan ini" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "Kami perkirakan {estimatedTime} hingga akun Anda siap." -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "Semoga Anda senang dan betah di sini. Ingat, Bluesky adalah:" @@ -5678,7 +6211,7 @@ msgstr "Semoga Anda senang dan betah di sini. Ingat, Bluesky adalah:" msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "Kami kehabisan postingan dari akun yang Anda ikuti. Inilah yang terbaru dari <0/>." -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "Sebaiknya hindari kata-kata umum yang muncul dalam postingan, karena dapat mengakibatkan tidak adanya postingan yang ditampilkan." @@ -5694,7 +6227,7 @@ msgstr "Kami tidak dapat memuat preferensi tanggal lahir Anda. Silakan coba lagi msgid "We were unable to load your configured labelers at this time." msgstr "Kami tidak dapat memuat pelabel yang Anda konfigurasikan saat ini." -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "Sepertinya ada masalah koneksi. Mohon coba lagi untuk melanjutkan pengaturan akun Anda. Jika terus gagal, Anda dapat melewati langkah ini." @@ -5702,10 +6235,14 @@ msgstr "Sepertinya ada masalah koneksi. Mohon coba lagi untuk melanjutkan pengat msgid "We will let you know when your account is ready." msgstr "Kami akan memberi tahu Anda ketika akun Anda siap." -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "Kami akan menggunakan ini untuk menyesuaikan pengalaman Anda." +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "Kami mengalami masalah jaringan, coba lagi" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "Kami sangat senang Anda bergabung dengan kami!" @@ -5714,20 +6251,20 @@ msgstr "Kami sangat senang Anda bergabung dengan kami!" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "Mohon maaf, kami tidak dapat menyelesaikan daftar ini. Jika hal ini terus berlanjut, silakan hubungi pembuat daftar, @{handleOrDid}." -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." -msgstr "Mohon maaf, untuk saat ini kami tidak dapat memuat kata yang Anda dibisukan. Silakan coba lagi." +msgstr "Mohon maaf, untuk saat ini kami tidak dapat memuat kata yang Anda bisukan. Silakan coba lagi." #: src/view/screens/Search/Search.tsx:262 msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "Maaf, pencarian Anda tidak dapat dilakukan. Mohon coba lagi dalam beberapa menit." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "Maaf! Kami tidak dapat menemukan halaman yang Anda cari." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "Maaf, Anda hanya dapat berlangganan sepuluh pelabel dan Anda telah mencapai batas tersebut." @@ -5735,13 +6272,13 @@ msgstr "Maaf, Anda hanya dapat berlangganan sepuluh pelabel dan Anda telah menca #~ msgid "Welcome to <0>Bluesky" #~ msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "Apa saja minat Anda?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "Apa kabar?" @@ -5753,28 +6290,41 @@ msgstr "Bahasa apa yang digunakan di postingan ini?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "Bahasa apa yang ingin Anda lihat di feed Anda?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "Siapa yang dapat mengirim pesan kepada Anda?" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "Siapa yang dapat membalas" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "Waduh!" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "Mengapa konten ini perlu ditinjau?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "Mengapa feed ini perlu ditinjau?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "Mengapa daftar ini perlu ditinjau?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "Mengapa pesan ini perlu ditinjau?" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "Mengapa postingan ini perlu ditinjau?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "Mengapa pengguna ini perlu ditinjau?" @@ -5782,37 +6332,37 @@ msgstr "Mengapa pengguna ini perlu ditinjau?" msgid "Wide" msgstr "Lebar" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" -msgstr "" +msgstr "Tulis pesan" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "Tulis postingan" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "Tulis balasan Anda" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "Penulis" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "Ya" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" -msgstr "" +msgstr "Kemarin, {time}" #: src/screens/Deactivated.tsx:136 msgid "You are in line." @@ -5825,12 +6375,20 @@ msgstr "Anda tidak mengikuti siapa pun." #: src/view/com/posts/FollowingEmptyState.tsx:67 #: src/view/com/posts/FollowingEndOfFeed.tsx:68 msgid "You can also discover new Custom Feeds to follow." -msgstr "Anda juga dapat menemukan Feed Khusus baru untuk diikuti." +msgstr "Anda juga bisa menemukan Feed Kustom baru untuk diikuti." #: src/screens/Onboarding/StepFollowingFeed.tsx:143 msgid "You can change these settings later." msgstr "Anda dapat mengubah pengaturan ini nanti." +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "Anda dapat mengubah ini kapan saja." + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -5844,22 +6402,26 @@ msgstr "Anda tidak memiliki pengikut." msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "Anda belum memiliki kode undangan! Kami akan mengirimkan kode saat Anda sudah sedikit lama di Bluesky." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "Anda tidak memiliki feed yang disematkan." #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "Anda tidak memiliki feed yang disimpan!" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "Anda tidak memiliki feed yang disimpan." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "Anda telah memblokir atau diblokir oleh penulis ini." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "Anda telah memblokir pengguna ini" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -5890,6 +6452,10 @@ msgstr "Anda telah membisukan akun ini." msgid "You have muted this user" msgstr "Anda telah membisukan pengguna ini" +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "Anda belum melakukan percakapan. Mulai sekarang!" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "Anda tidak punya feed." @@ -5899,27 +6465,35 @@ msgstr "Anda tidak punya feed." msgid "You have no lists." msgstr "Anda tidak punya daftar." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "Anda belum memiliki pesan. Mulailah percakapan dengan seseorang!" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." -msgstr "Anda belum memblokir akun apa pun. Untuk memblokir akun, buka profilnya dan pilih \"Blokir akun\" dari menu di akunnya." +msgstr "Anda belum memblokir akun apa pun. Untuk memblokir akun, buka profil mereka dan pilih \"Blokir akun\" dari menu di akunnya." -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "Anda belum membuat kata sandi aplikasi. Anda dapat membuatnya dengan menekan tombol di bawah ini." #: src/view/screens/ModerationMutedAccounts.tsx:133 msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." -msgstr "Anda belum membisukan akun apa pun. Untuk membisukan akun, buka profilnya dan pilih \"Bisukan akun\" dari menu di akunnya." +msgstr "Anda belum membisukan akun apa pun. Untuk membisukan akun, buka profil mereka dan pilih \"Bisukan akun\" dari menu di akunnya." -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "Anda telah mencapai akhir" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" -msgstr "Anda belum membisukan kata atau tag apa pun" +msgstr "Anda belum membisukan kata atau tagar apa pun" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "Anda dapat mengajukan banding atas label non-mandiri jika Anda merasa label tersebut ditempatkan secara tidak tepat." + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "Anda dapat mengajukan banding atas label ini jika Anda merasa label tersebut ditempatkan secara tidak tepat." @@ -5931,9 +6505,9 @@ msgstr "Anda harus berusia 13 tahun atau lebih untuk mendaftar." msgid "You must be 18 years or older to enable adult content" msgstr "Anda harus berusia 18 tahun atau lebih untuk mengaktifkan konten dewasa" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" -msgstr "Anda harus memilih setidaknya satu pelabel untuk laporan" +msgstr "Anda harus memilih setidaknya satu pelabel untuk sebuah laporan" #: src/view/com/util/forms/PostDropdownBtn.tsx:158 msgid "You will no longer receive notifications for this thread" @@ -5947,9 +6521,9 @@ msgstr "Anda sekarang akan menerima notifikasi untuk utas ini" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "Anda akan menerima email berisikan \"kode reset\". Masukkan kode tersebut di sini, lalu masukkan kata sandi baru." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" -msgstr "" +msgstr "Anda: {0}" #: src/screens/Onboarding/StepModeration/index.tsx:60 msgid "You're in control" @@ -5961,14 +6535,14 @@ msgstr "Anda memiliki kendali" msgid "You're in line" msgstr "Anda sedang dalam antrian" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "Anda siap untuk mulai!" #: src/components/moderation/ModerationDetailsDialog.tsx:98 #: src/lib/moderation/useModerationCauseDescription.ts:101 msgid "You've chosen to hide a word or tag within this post." -msgstr "Anda telah memilih untuk menyembunyikan kata atau tag di dalam postingan ini." +msgstr "Anda telah memilih untuk menyembunyikan kata atau tagar dalam postingan ini." #: src/view/com/posts/FollowingEndOfFeed.tsx:48 msgid "You've reached the end of your feed! Find some more accounts to follow." @@ -5978,18 +6552,22 @@ msgstr "Anda telah mencapai akhir feed Anda! Temukan beberapa akun lain untuk di msgid "Your account" msgstr "Akun Anda" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "Akun Anda telah dihapus" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." -msgstr "Semua catatan data publik dalam repositori akun Anda dapat diunduh sebagai file \"CAR\". Tidak termasuk konten media seperti gambar dan data pribadi yang harus diunduh secara terpisah." +msgstr "Semua catatan data publik dalam repositori akun Anda dapat diunduh sebagai berkas \"CAR\". Tidak termasuk konten media seperti gambar dan data pribadi yang harus diunduh secara terpisah." #: src/screens/Signup/StepInfo/index.tsx:123 msgid "Your birth date" msgstr "Tanggal lahir Anda" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "Obrolan Anda telah dinonaktifkan" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "Pilihan Anda akan disimpan, tetapi dapat diubah nanti di pengaturan." @@ -5999,16 +6577,16 @@ msgid "Your default feed is \"Following\"" msgstr "Feed bawaan Anda adalah \"Mengikuti\"" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "Email Anda tidak valid." -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "Alamat email Anda telah diperbarui namun belum diverifikasi. Silakan verifikasi alamat email baru Anda." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "Alamat email Anda belum diverifikasi. Ini merupakan langkah keamanan penting yang kami rekomendasikan." @@ -6020,11 +6598,11 @@ msgstr "Feed mengikuti Anda kosong! Ikuti lebih banyak pengguna untuk melihat ap msgid "Your full handle will be" msgstr "Handle lengkap Anda akan menjadi" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "Handle lengkap Anda akan menjadi <0>@{0}" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "Kata yang Anda bisukan" @@ -6032,22 +6610,26 @@ msgstr "Kata yang Anda bisukan" msgid "Your password has been changed successfully!" msgstr "Kata sandi Anda telah berhasil diubah!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "Postingan Anda telah dipublikasikan" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." -msgstr "Postingan, suka, dan blokir Anda bersifat publik. Bisukan bersifat privat." +msgstr "Postingan, suka, dan pemblokiran Anda bersifat publik. Sedangkan pembisuan bersifat privat." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "Profil Anda" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "Balasan Anda telah dipublikasikan" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "Laporan Anda akan dikirim ke Layanan Moderasi Bluesky" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "Handle Anda" diff --git a/src/locale/locales/it/messages.po b/src/locale/locales/it/messages.po index 4f58d95b10..a86001b47f 100644 --- a/src/locale/locales/it/messages.po +++ b/src/locale/locales/it/messages.po @@ -14,7 +14,7 @@ msgstr "" "X-Generator: Poedit 3.4.2\n" "X-Poedit-SourceCharset: UTF-8\n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(no email)" @@ -25,24 +25,32 @@ msgstr "" #~ msgid "{0, plural, one {# invite code available} other {# invite codes available}}" #~ msgstr "{0, plural, one {# codice d'invito disponibile} other {# codici d'inviti disponibili}}" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" msgstr "" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" msgstr "" @@ -51,11 +59,11 @@ msgstr "" msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -67,7 +75,7 @@ msgstr "" msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" msgstr "" @@ -81,6 +89,10 @@ msgstr "" #~ msgid "{0} {purposeLabel} List" #~ msgstr "Lista {purposeLabel} {0}" +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "" + #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -93,11 +105,15 @@ msgstr "" msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} following" +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "" + #~ msgid "{invitesAvailable, plural, one {Invite codes: # available} other {Invite codes: # available}}" #~ msgstr "{invitesAvailable, plural, one {Codici d'invito: # available} other {Codici d'invito: # available}}" @@ -107,20 +123,20 @@ msgstr "{following} following" #~ msgid "{invitesAvailable} invite codes available" #~ msgstr "{invitesAvailable} codici d'invito disponibili" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" #~ msgid "{message}" #~ msgstr "{message}" -#: src/view/shell/Drawer.tsx:464 +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} non letto" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" msgstr "" @@ -128,11 +144,11 @@ msgstr "" msgid "<0/> members" msgstr "<0/> membri" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" msgstr "" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" msgstr "" @@ -157,7 +173,7 @@ msgstr "" #~ msgid "<0>Follow some<1>Recommended<2>Users" #~ msgstr "<0>Segui alcuni<1>utenti<2>consigliati" -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." msgstr "" @@ -169,7 +185,7 @@ msgstr "" msgid "⚠Invalid Handle" msgstr "⚠Nome utente non valido" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "Conferma 2FA" @@ -189,11 +205,11 @@ msgid "Access profile and other navigation links" msgstr "Accedi al profilo e ad altre impostazioni di navigazione" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "Accessibilità" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "Impostazioni di accessibilità" @@ -206,21 +222,21 @@ msgstr "Impostazioni di Accessibilità" #~ msgid "account" #~ msgstr "account" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "Account" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "Account bloccato" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "Account seguito" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "Account silenziato" @@ -241,55 +257,56 @@ msgstr "Opzioni dell'account" msgid "Account removed from quick access" msgstr "Account rimosso dall'accesso immediato" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "Account sbloccato" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "Account non seguito" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "Account non silenziato" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "Aggiungi" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "Aggiungi un avviso sul contenuto" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "Aggiungi un utente a questo elenco" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "Aggiungi account" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "Aggiungi testo alternativo" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "Aggiungi la Password per l'App" @@ -305,15 +322,23 @@ msgstr "Aggiungi la Password per l'App" #~ msgid "Add link card:" #~ msgstr "Aggiungi anteprima del link:" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "Aggiungi parola silenziata alle impostazioni configurate" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "Aggiungi parole silenziate e tags" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "Aggiungi il seguente record DNS al tuo dominio:" @@ -322,7 +347,7 @@ msgstr "Aggiungi il seguente record DNS al tuo dominio:" msgid "Add to Lists" msgstr "Aggiungi alle Liste" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "Aggiungi ai miei feed" @@ -335,17 +360,17 @@ msgstr "Aggiungi ai miei feed" msgid "Added to list" msgstr "Aggiunto alla lista" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "Aggiunto ai miei feeds" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "Modifica il numero di \"Mi piace\" che una risposta deve avere per essere mostrata nel tuo feed." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "Contenuto per adulti" @@ -357,14 +382,29 @@ msgid "Adult content is disabled." msgstr "Il contenuto per adulti è disattivato." #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "Avanzato" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "Tutti i feed che hai salvato, in un unico posto." +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -374,13 +414,13 @@ msgstr "Hai già un codice?" msgid "Already signed in as @{0}" msgstr "Hai già effettuato l'accesso come @{0}" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -394,24 +434,24 @@ msgstr "" msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "Il testo alternativo descrive le immagini per gli utenti non vedenti ed ipovedenti, fornendo un contesto a tutti." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "È stata inviata un'e-mail a {0}. Include un codice di conferma che puoi inserire di seguito." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "Una email è stata inviata al tuo indirizzo precedente, {0}. Include un codice di conferma che puoi inserire di seguito." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "Si è verificato un errore" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "Un problema non incluso in queste opzioni" @@ -424,7 +464,7 @@ msgstr "Un problema non incluso in queste opzioni" msgid "An issue occurred, please try again." msgstr "Si è verificato un problema, riprova un'altra volta." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" msgstr "" @@ -433,7 +473,7 @@ msgstr "" msgid "and" msgstr "e" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "Animali" @@ -441,7 +481,7 @@ msgstr "Animali" msgid "Animated GIF" msgstr "GIF animata" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "Comportamento antisociale" @@ -449,19 +489,19 @@ msgstr "Comportamento antisociale" msgid "App Language" msgstr "Lingua dell'app" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "Password dell'app eliminata" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "Le password dell'app possono contenere solo lettere, numeri, spazi, trattini e trattini bassi." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "Le password delle app devono contenere almeno 4 caratteri." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "Impostazioni della password dell'app" @@ -469,17 +509,17 @@ msgstr "Impostazioni della password dell'app" #~ msgstr "Passwords dell'app" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "Password dell'App" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "Ricorso" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "Etichetta \"{0}\" del ricorso" @@ -492,7 +532,8 @@ msgstr "Etichetta \"{0}\" del ricorso" #~ msgid "Appeal Decision" #~ msgstr "Decisión de apelación" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" msgstr "" @@ -500,37 +541,54 @@ msgstr "" #~ msgid "Appeal submitted." #~ msgstr "Ricorso presentato." -#~ msgid "Appeal this decision" -#~ msgstr "Appella contro questa decisione" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "Appella contro questa decisione" #~ msgid "Appeal this decision." #~ msgstr "Appella contro questa decisione." -#: src/view/screens/Settings/index.tsx:430 +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "Aspetto" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "Confermi di voler eliminare la password dell'app \"{name}\"?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "Confermi di voler rimuovere {0} dai tuoi feed?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "Confermi di voler eliminare questa bozza?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "Confermi?" @@ -541,11 +599,11 @@ msgstr "Confermi?" msgid "Are you writing in <0>{0}?" msgstr "Stai scrivendo in <0>{0}?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "Arte" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "Nudità artistica o non erotica." @@ -553,18 +611,20 @@ msgstr "Nudità artistica o non erotica." msgid "At least 3 characters" msgstr "Almeno 3 caratteri" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -578,7 +638,7 @@ msgstr "Indietro" msgid "Based on your interest in {interestsText}" msgstr "Basato sui tuoi interessi {interestsText}" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "Preferenze" @@ -586,17 +646,17 @@ msgstr "Preferenze" msgid "Birthday" msgstr "Compleanno" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "Compleanno:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "Blocca" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" msgstr "" @@ -609,15 +669,15 @@ msgstr "Blocca Account" msgid "Block Account?" msgstr "Bloccare Account?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "Blocca gli account" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "Lista di blocchi" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "Vuoi bloccare questi accounts?" @@ -646,15 +706,15 @@ msgstr "Gli account bloccati non possono rispondere alle tue discussioni, menzio msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "Gli account bloccati non possono rispondere alle tue discussioni, menzionarti, o interagire in nessun altro modo con te. Non vedrai il loro contenuto e non vedranno il tuo." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "Post bloccato." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "Il blocco non impedisce al labeler di inserire etichette nel tuo account." -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "l blocco è pubblico. Gli account bloccati non possono rispondere alle tue discussioni, menzionarti, o interagire con te in nessun altro modo." @@ -708,10 +768,15 @@ msgstr "Sfoca le immagini" msgid "Blur images and filter from feeds" msgstr "Sfoca le immagini e filtra dai feed" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "Libri" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "" + #~ msgid "Build version {0} {1}" #~ msgstr "Versione {0} {1}" @@ -754,7 +819,7 @@ msgstr "da te" msgid "Camera" msgstr "Fotocamera" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "Può contenere solo lettere, numeri, spazi, trattini e trattini bassi. Deve contenere almeno 4 caratteri, ma non più di 32 caratteri." @@ -762,11 +827,11 @@ msgstr "Può contenere solo lettere, numeri, spazi, trattini e trattini bassi. D #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -778,29 +843,29 @@ msgstr "Può contenere solo lettere, numeri, spazi, trattini e trattini bassi. D #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "Cancella" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "Cancella" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "Annulla la cancellazione dell'account" #~ msgid "Cancel add image alt text" #~ msgstr "Cancel·la afegir text a la imatge" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "Annulla il cambio del tuo nome utente" @@ -828,34 +893,34 @@ msgstr "Annulla la ricerca" msgid "Cancels opening the linked website" msgstr "Annulla l'apertura del sito collegato" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "Cambia" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "Cambia" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "Cambia il nome utente" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "Cambia il Nome Utente" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "Cambia la mia email" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "Cambia la password" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "Cambia la Password" @@ -866,24 +931,34 @@ msgstr "Cambia la lingua del post a {0}" #~ msgid "Change your Bluesky password" #~ msgstr "Cambia la tua password di Bluesky" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "Cambia la tua email" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" msgstr "" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" msgstr "" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" msgstr "" @@ -904,11 +979,11 @@ msgstr "Verifica il mio stato" #~ msgid "Check out some recommended users. Follow them to see similar users." #~ msgstr "Scopri alcuni utenti consigliati. Seguili per vedere utenti simili." -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "Controlla la tua email per il codice di accesso e inseriscilo qui." -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "Controlla la tua posta in arrivo, dovrebbe contenere un'e-mail con il codice di conferma da inserire di seguito:" @@ -923,7 +998,7 @@ msgstr "Scegli \"Tutti\" o \"Nessuno\"" msgid "Choose Service" msgstr "Scegli il servizio" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "Scegli gli algoritmi che compilano i tuoi feed personalizzati." @@ -932,6 +1007,10 @@ msgstr "Scegli gli algoritmi che compilano i tuoi feed personalizzati." #~ msgid "Choose the algorithms that power your experience with custom feeds." #~ msgstr "Scegli gli algoritmi che migliorano la tua esperienza con i feed personalizzati." +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "Scegli i tuoi feed principali" @@ -940,19 +1019,19 @@ msgstr "Scegli i tuoi feed principali" msgid "Choose your password" msgstr "Scegli la tua password" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "Cancella tutti i dati legacy in archivio" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "Cancella tutti i dati legacy in archivio (poi ricomincia)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "Cancella tutti i dati in archivio" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "Cancella tutti i dati in archivio (poi ricomincia)" @@ -961,11 +1040,11 @@ msgstr "Cancella tutti i dati in archivio (poi ricomincia)" msgid "Clear search query" msgstr "Annulla la ricerca" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "Cancella tutti i dati di archiviazione legacy" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "Cancella tutti i dati di archiviazione" @@ -973,6 +1052,10 @@ msgstr "Cancella tutti i dati di archiviazione" msgid "click here" msgstr "clicca qui" +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "" + #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" msgstr "Clicca qui per aprire il menu per {tag}" @@ -980,19 +1063,28 @@ msgstr "Clicca qui per aprire il menu per {tag}" #~ msgid "Click here to open tag menu for #{tag}" #~ msgstr "Clicca qui per aprire il menu per #{tag}" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "Clima" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "Chiudi" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "Chiudi la finestra attiva" @@ -1004,7 +1096,7 @@ msgstr "Chiudi l'avviso" msgid "Close bottom drawer" msgstr "Chiudi il bottom drawer" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "Chiudi la finestra di dialogo" @@ -1020,6 +1112,10 @@ msgstr "Chiudi l'immagine" msgid "Close image viewer" msgstr "Chiudi il visualizzatore di immagini" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "Chiudi la navigazione del footer" @@ -1037,7 +1133,7 @@ msgstr "Chiude la barra di navigazione in basso" msgid "Closes password update alert" msgstr "Chiude l'avviso di aggiornamento della password" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "Chiude l'editore del post ed elimina la bozza del post" @@ -1049,11 +1145,11 @@ msgstr "Chiude il visualizzatore dell'immagine di intestazione" msgid "Collapses list of users for a given notification" msgstr "Comprime l'elenco degli utenti per una determinata notifica" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "Commedia" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "Fumetti" @@ -1062,7 +1158,7 @@ msgstr "Fumetti" msgid "Community Guidelines" msgstr "Linee guida della community" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "Completa l'incorporazione e inizia a utilizzare il tuo account" @@ -1070,7 +1166,7 @@ msgstr "Completa l'incorporazione e inizia a utilizzare il tuo account" msgid "Complete the challenge" msgstr "Completa la challenge" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "Componi un post fino a {MAX_GRAPHEME_LENGTH} caratteri" @@ -1092,13 +1188,13 @@ msgstr "Configurato nelle <0>impostazioni di moderazione." #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "Conferma" @@ -1106,8 +1202,8 @@ msgstr "Conferma" #~ msgid "Confirm" #~ msgstr "Conferma" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "Conferma il cambio" @@ -1115,7 +1211,7 @@ msgstr "Conferma il cambio" msgid "Confirm content language settings" msgstr "Conferma le impostazioni della lingua del contenuto" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "Conferma l'eliminazione dell'account" @@ -1130,20 +1226,20 @@ msgstr "Conferma la tua età:" msgid "Confirm your birthdate" msgstr "Conferma la tua data di nascita" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "Codice di conferma" #~ msgid "Confirms signing up {email} to the waitlist" #~ msgstr "Conferma l'iscrizione di {email} alla lista d'attesa" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "Connessione in corso..." @@ -1196,8 +1292,9 @@ msgstr "Sfondo del menu contestuale, clicca per chiudere il menu." #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "Continua" @@ -1207,8 +1304,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "Continua come {0} (attualmente connesso)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1222,22 +1320,26 @@ msgstr "Vai al passaggio successivo" msgid "Continue to the next step without following any accounts" msgstr "Vai al passaggio successivo senza seguire nessun account" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "Cucina" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "Copiato" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "Versione di build copiata nella clipboard" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1247,15 +1349,15 @@ msgstr "Copiato nel clipboard" msgid "Copied!" msgstr "Copiato!" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "Copia la password dell'app" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "Copia" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "Copia {0}" @@ -1264,7 +1366,7 @@ msgstr "Copia {0}" msgid "Copy code" msgstr "Copia il codice" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "Copia il link alla lista" @@ -1276,8 +1378,8 @@ msgstr "Copia il link al post" #~ msgid "Copy link to profile" #~ msgstr "Copia il link al profilo" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" msgstr "" @@ -1291,29 +1393,29 @@ msgstr "Copia il testo del post" msgid "Copyright Policy" msgstr "Politica sul diritto d'autore" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" msgstr "" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "Feed non caricato" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "No si è potuto caricare la lista" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "" -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" msgstr "" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +#~ msgid "Could not unmute chat" +#~ msgstr "" #~ msgid "Country" #~ msgstr "Paese" @@ -1323,7 +1425,7 @@ msgstr "" msgid "Create a new account" msgstr "Crea un nuovo account" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "Crea un nuovo Bluesky account" @@ -1336,7 +1438,11 @@ msgstr "Crea un account" msgid "Create an account" msgstr "Crea un account" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "Crea un password per l'app" @@ -1345,11 +1451,11 @@ msgstr "Crea un password per l'app" msgid "Create new account" msgstr "Crea un nuovo account" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "Crea un report per {0}" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "Creato {0}" @@ -1362,7 +1468,7 @@ msgstr "Creato {0}" #~ msgid "Creates a card with a thumbnail. The card links to {url}" #~ msgstr "Crea una scheda con una miniatura. La scheda si collega a {url}" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "Cultura" @@ -1371,12 +1477,12 @@ msgstr "Cultura" msgid "Custom" msgstr "Personalizzato" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "Dominio personalizzato" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "I feed personalizzati creati dalla comunità ti offrono nuove esperienze e ti aiutano a trovare contenuti interessanti." @@ -1387,8 +1493,8 @@ msgstr "Personalizza i media da i siti esterni." #~ msgid "Danger Zone" #~ msgstr "Zona di Pericolo" -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "Scuro" @@ -1396,7 +1502,7 @@ msgstr "Scuro" msgid "Dark mode" msgstr "Aspetto scuro" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "Tema scuro" @@ -1404,7 +1510,7 @@ msgstr "Tema scuro" msgid "Date of birth" msgstr "Data di nascita" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "Eliminare errori nella Moderazione" @@ -1412,14 +1518,14 @@ msgstr "Eliminare errori nella Moderazione" msgid "Debug panel" msgstr "Pannello per il debug" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "Elimina" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "Elimina l'account" @@ -1427,42 +1533,47 @@ msgstr "Elimina l'account" #~ msgid "Delete Account" #~ msgstr "Elimina l'Account" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" msgstr "" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "Elimina la password dell'app" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "Eliminare la password dell'app?" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" - -#: src/view/screens/ProfileList.tsx:417 -msgid "Delete List" -msgstr "Elimina la lista" - -#: src/components/dms/MessageMenu.tsx:119 -msgid "Delete message" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" msgstr "" #: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "" + +#: src/view/screens/ProfileList.tsx:470 +msgid "Delete List" +msgstr "Elimina la lista" + +#: src/components/dms/MessageMenu.tsx:122 +msgid "Delete message" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "Cancellare account" #~ msgid "Delete my account…" #~ msgstr "Cancella il mio account…" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "Cancellare Account…" @@ -1471,7 +1582,7 @@ msgstr "Cancellare Account…" msgid "Delete post" msgstr "Elimina il post" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "Elimina questa lista?" @@ -1483,10 +1594,14 @@ msgstr "Eliminare questo post?" msgid "Deleted" msgstr "Eliminato" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "Post eliminato." +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1494,7 +1609,7 @@ msgstr "Post eliminato." msgid "Description" msgstr "Descrizione" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" msgstr "" @@ -1504,19 +1619,23 @@ msgstr "" #~ msgid "Developer Tools" #~ msgstr "Strumenti per sviluppatori" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "Volevi dire qualcosa?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "Fioco" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "Disattiva la riproduzione automatica per le GIF" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "Disattiva l'email 2FA" @@ -1527,18 +1646,20 @@ msgstr "Disattiva il feedback tattile" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "Disabilitato" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "Scartare" #~ msgid "Discard draft" #~ msgstr "Scarta la bozza" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "Scartare la bozza?" @@ -1555,7 +1676,7 @@ msgstr "Scopri nuovi feeds personalizzati" #~ msgid "Discover new feeds" #~ msgstr "Scopri nuovi feeds" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "Scopri nuovi feeds" @@ -1567,7 +1688,7 @@ msgstr "Nome visualizzato" msgid "Display Name" msgstr "Nome Visualizzato" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "Pannello DNS" @@ -1579,11 +1700,11 @@ msgstr "Non include nudità." msgid "Doesn't begin or end with a hyphen" msgstr "Non inizia o termina con un trattino" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "Valore del dominio" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "Dominio verificato!" @@ -1594,23 +1715,23 @@ msgstr "Dominio verificato!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "Fatto" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1630,8 +1751,8 @@ msgstr "Fatto{extraText}" #~ msgid "Download Bluesky account data (repository)" #~ msgstr "Scarica i dati dell'account Bluesky (archivio)" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "Scarica il CAR file" @@ -1643,7 +1764,7 @@ msgstr "Trascina e rilascia per aggiungere immagini" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "A causa delle politiche di Apple, i contenuti per adulti possono essere abilitati sul Web solo dopo aver completato la registrazione." -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "e.g. alice" @@ -1651,7 +1772,7 @@ msgstr "e.g. alice" msgid "e.g. Alice Roberts" msgstr "e.g. Alice Roberts" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "e.g. alice.com" @@ -1688,7 +1809,7 @@ msgctxt "action" msgid "Edit" msgstr "Modifica" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "Modifica l'avatar" @@ -1698,7 +1819,7 @@ msgstr "Modifica l'avatar" msgid "Edit image" msgstr "Modifica l'immagine" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "Modifica i dettagli della lista" @@ -1707,8 +1828,8 @@ msgid "Edit Moderation List" msgstr "Modifica l'elenco di moderazione" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "Modifica i miei feeds" @@ -1716,18 +1837,18 @@ msgstr "Modifica i miei feeds" msgid "Edit my profile" msgstr "Modifica il mio profilo" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "Modifica il profilo" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "Modifica il Profilo" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "Modifica i feeds memorizzati" @@ -1743,16 +1864,16 @@ msgstr "Modifica il tuo nome visualizzato" msgid "Edit your profile description" msgstr "Modifica la descrizione del tuo profilo" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "Formazione scolastica" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "Email" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "E-mail 2FA disattivata" @@ -1760,20 +1881,20 @@ msgstr "E-mail 2FA disattivata" msgid "Email address" msgstr "Indirizzo email" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "Email aggiornata" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "Email Aggiornata" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "Email verificata" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "Email:" @@ -1820,7 +1941,7 @@ msgstr "Abilita i media esterni" msgid "Enable media players for" msgstr "Attiva i lettori multimediali per" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "Abilita questa impostazione per vedere solo le risposte delle persone che segui." @@ -1828,6 +1949,8 @@ msgstr "Abilita questa impostazione per vedere solo le risposte delle persone ch msgid "Enable this source only" msgstr "Abilita solo questa fonte" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "Abilitato" @@ -1836,7 +1959,11 @@ msgstr "Abilitato" msgid "End of feed" msgstr "Fine del feed" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "Inserisci un nome per questa password dell'app" @@ -1844,12 +1971,12 @@ msgstr "Inserisci un nome per questa password dell'app" msgid "Enter a password" msgstr "Inserisci una password" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "Inserisci una parola o tag" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "Inserire il codice di conferma" @@ -1860,7 +1987,7 @@ msgstr "Inserire il codice di conferma" msgid "Enter the code you received to change your password." msgstr "Inserisci il codice che hai ricevuto per modificare la tua password." -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "Inserisci il dominio che vuoi utilizzare" @@ -1880,11 +2007,11 @@ msgstr "Inserisci la tua data di nascita" msgid "Enter your email address" msgstr "Inserisci il tuo indirizzo email" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "Inserisci la tua nuova email qui sopra" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "Inserisci il tuo nuovo indirizzo email qui sotto." @@ -1895,11 +2022,15 @@ msgstr "Inserisci il tuo nuovo indirizzo email qui sotto." msgid "Enter your username and password" msgstr "Inserisci il tuo nome di utente e la tua password" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "Errore nella risposta del captcha." -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "Errore:" @@ -1908,15 +2039,30 @@ msgstr "Errore:" msgid "Everybody" msgstr "Tutti" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "Menzioni o risposte eccessive" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "Uscita dall'eliminazione dell'account" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "Uscita dal processo di modifica" @@ -1953,12 +2099,12 @@ msgstr "Media espliciti o potenzialmente inquietanti." msgid "Explicit sexual images." msgstr "Immagini sessuali esplicite." -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "Esporta i miei dati" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "Esporta i miei dati" @@ -1974,16 +2120,16 @@ msgstr "I multimediali esterni possono consentire ai siti web di raccogliere inf #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "Preferenze multimediali esterni" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "Impostazioni multimediali esterni" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "Impossibile creare la password dell'app." @@ -1991,7 +2137,7 @@ msgstr "Impossibile creare la password dell'app." msgid "Failed to create the list. Check your internet connection and try again." msgstr "Impossibile creare l'elenco. Controlla la connessione Internet e riprova." -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" msgstr "" @@ -1999,32 +2145,54 @@ msgstr "" msgid "Failed to delete post, please try again" msgstr "Non possiamo eliminare il post, riprova di nuovo" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "Ha fallito il Il caricamento delle GIF's" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "" + #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 #~ msgid "Failed to load recommended feeds" #~ msgstr "Non possiamo caricare i feed consigliati" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "Non è possibile salvare l'immagine: {0}" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "Feed" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "Feed fatto da {0}" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "Feed offline" @@ -2032,18 +2200,17 @@ msgstr "Feed offline" #~ msgstr "Preferenze del feed" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "Commenti" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "Feeds" @@ -2051,7 +2218,7 @@ msgstr "Feeds" #~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." #~ msgstr "I feed vengono creati dagli utenti per curare i contenuti. Scegli alcuni feed che ritieni interessanti." -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "I feed sono algoritmi personalizzati che gli utenti creano con un minimo di esperienza nella codifica. Vedi <0/> per ulteriori informazioni." @@ -2059,15 +2226,19 @@ msgstr "I feed sono algoritmi personalizzati che gli utenti creano con un minimo msgid "Feeds can be topical as well!" msgstr "I feeds possono anche avere tematiche!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "Archivia i contenuti" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "Filtra dai feed" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "Finalizzando" @@ -2091,7 +2262,7 @@ msgstr "Trova post e utenti su Bluesky" #~ msgid "Finding similar accounts..." #~ msgstr "Trovare account simili…" -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "Ottimizza il contenuto che vedi nel tuo Following feed." @@ -2102,11 +2273,11 @@ msgstr "Ottimizza il contenuto che vedi nel tuo Following feed." msgid "Fine-tune the discussion threads." msgstr "Ottimizza i la visualizzazione delle discussioni." -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "Fitness" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "Flessibile" @@ -2119,10 +2290,10 @@ msgstr "Gira in orizzontale" msgid "Flip vertically" msgstr "Gira in verticale" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -2134,7 +2305,7 @@ msgid "Follow" msgstr "Segui" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "Segui {0}" @@ -2168,7 +2339,7 @@ msgstr "Seguito da {0}" msgid "Followed users" msgstr "Utenti seguiti" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "Solo utenti seguiti" @@ -2184,28 +2355,30 @@ msgstr "Followers" #~ msgid "following" #~ msgstr "following" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "Following" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "Seguiti {0}" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "Preferenze del Following feed" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "Preferenze del Following Feed" @@ -2217,15 +2390,15 @@ msgstr "Ti segue" msgid "Follows You" msgstr "Ti Segue" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "Gastronomia" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "Per motivi di sicurezza, invieremo un codice di conferma al tuo indirizzo email." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "Per motivi di sicurezza non potrai visualizzarlo nuovamente. Se perdi questa password, dovrai generarne una nuova." @@ -2240,15 +2413,15 @@ msgstr "Per motivi di sicurezza non potrai visualizzarlo nuovamente. Se perdi qu msgid "Forgot Password" msgstr "Hai dimenticato la Password" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "Hai dimenticato la password?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "Hai dimenticato?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "Pubblica spesso contenuti indesiderati" @@ -2256,7 +2429,7 @@ msgstr "Pubblica spesso contenuti indesiderati" msgid "From @{sanitizedAuthor}" msgstr "Di @{sanitizedAuthor}" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "Da <0/>" @@ -2265,12 +2438,20 @@ msgstr "Da <0/>" msgid "Gallery" msgstr "Galleria" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "Inizia" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "Evidenti violazioni della legge o dei termini di servizio" @@ -2279,9 +2460,9 @@ msgstr "Evidenti violazioni della legge o dei termini di servizio" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "Torna indietro" @@ -2289,13 +2470,14 @@ msgstr "Torna indietro" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "Torna Indietro" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2314,16 +2496,20 @@ msgstr "Torna Home" #~ msgid "Go to @{queryMaybeHandle}" #~ msgstr "Vai a @{queryMaybeHandle}" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "Seguente" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" msgstr "" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" msgstr "" @@ -2331,7 +2517,7 @@ msgstr "" msgid "Graphic Media" msgstr "Media grafici" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "Nome Utente" @@ -2339,7 +2525,7 @@ msgstr "Nome Utente" msgid "Haptics" msgstr "Aptica" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "Molestie, trolling o intolleranza" @@ -2347,7 +2533,7 @@ msgstr "Molestie, trolling o intolleranza" msgid "Hashtag" msgstr "Hashtag" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "Hashtag: #{tag}" @@ -2356,10 +2542,14 @@ msgid "Having trouble?" msgstr "Ci sono problemi?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "Aiuto" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "Ecco alcuni account da seguire" @@ -2372,13 +2562,13 @@ msgstr "Ecco alcuni feed più visitati. Puoi seguire quanti ne vuoi." msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "Ecco alcuni feed di attualità scelti in base ai tuoi interessi: {interestsText}. Puoi seguire quanti ne vuoi." -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "Ecco la password dell'app." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2400,7 +2590,7 @@ msgid "Hide post" msgstr "Nascondi il messaggio" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "Nascondere il contenuto" @@ -2415,23 +2605,23 @@ msgstr "Nascondi elenco utenti" #~ msgid "Hides posts from {0} in your feed" #~ msgstr "Nasconde i post di {0} nel tuo feed" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "Si è verificato un problema durante il contatto con il server del feed. Informa il proprietario del feed del problema." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "Il server del feed sembra non è configurato correttamente. Informa il proprietario del feed del problema." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "Il server del feed sembra essere offline. Informa il proprietario del feed di questo problema." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "Il server del feed ha dato una risposta negativa. Informa il proprietario del feed di questo problema." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "Stiamo riscontrando problemi nel trovare questo feed. Potrebbe essere stato cancellato." @@ -2443,25 +2633,25 @@ msgstr "Stiamo riscontrando problemi nel trovare questi dati. Guarda PI[U giù p msgid "Hmmmm, we couldn't load that moderation service." msgstr "Non siamo riusciti a caricare il servizio di moderazione." -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "Home" #~ msgid "Home Feed Preferences" #~ msgstr "Preferenze per i feed per la pagina d'inizio" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "Hosting:" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "Servizio di hosting" @@ -2472,25 +2662,30 @@ msgstr "Servizio di hosting" msgid "How should we open this link?" msgstr "Come dovremmo aprire questo link?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "Ho un codice" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "Ho un codice di conferma" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "Ho il mio dominio" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "Se il testo alternativo è lungo, attiva/disattiva lo stato del testo alternativo" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "Se niente è selezionato, adatto a tutte le età." @@ -2498,7 +2693,7 @@ msgstr "Se niente è selezionato, adatto a tutte le età." msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "Se non sei ancora maggiorenne secondo le leggi del tuo Paese, il tuo genitore o tutore legale deve leggere i Termini a tuo nome." -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "Se elimini questa lista, non potrai recuperarla." @@ -2510,7 +2705,7 @@ msgstr "Se rimuovi questo post, non potrai recuperarlo." msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "Se vuoi modificare la password, ti invieremo un codice per verificare se questo è il tuo account." -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "Illegale e Urgente" @@ -2518,22 +2713,26 @@ msgstr "Illegale e Urgente" msgid "Image" msgstr "Immagine" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "Testo alternativo dell'immagine" #~ msgid "Image options" #~ msgstr "Opzioni per l'immagine" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "Furto d'identità o false affermazioni sull'identità o sull'affiliazione" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "Inserisci il codice inviato alla tua email per reimpostare la password" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "Inserisci il codice di conferma per la cancellazione dell'account" @@ -2543,7 +2742,7 @@ msgstr "Inserisci il codice di conferma per la cancellazione dell'account" #~ msgid "Input invite code to proceed" #~ msgstr "Inserisci il codice di invito per procedere" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "Inserisci il nome per la password dell'app" @@ -2551,22 +2750,22 @@ msgstr "Inserisci il nome per la password dell'app" msgid "Input new password" msgstr "Inserisci la nuova password" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "Inserisci la password per la cancellazione dell'account" #~ msgid "Input phone number for SMS verification" #~ msgstr "Inserisci il numero di telefono per la verifica via SMS" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "Inserisci il codice che ti è stato inviato via email" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "Inserisci la password relazionata a {identifier}" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "Inserisci il nome utente o l'indirizzo email che hai utilizzato al momento della registrazione" @@ -2576,11 +2775,11 @@ msgstr "Inserisci il nome utente o l'indirizzo email che hai utilizzato al momen #~ msgid "Input your email to get on the Bluesky waitlist" #~ msgstr "Inserisci la tua email per entrare nella lista d'attesa di Bluesky" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "Inserisci la tua password" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "Inserisci il tuo provider di hosting preferito" @@ -2588,16 +2787,20 @@ msgstr "Inserisci il tuo provider di hosting preferito" msgid "Input your user handle" msgstr "Inserisci il tuo identificatore" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "Codice di conferma 2FA non valido." -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "Protocollo del post non valido o non supportato" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "Nome dell'utente o password errato" @@ -2612,7 +2815,7 @@ msgstr "Invita un amico" msgid "Invite code" msgstr "Codice d'invito" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "Codice invito non accettato. Controlla di averlo inserito correttamente e riprova." @@ -2644,7 +2847,7 @@ msgstr "Lavori" #~ msgid "Join Waitlist" #~ msgstr "Iscriviti alla Lista d'Attesa" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "Giornalismo" @@ -2664,7 +2867,7 @@ msgstr "Etichettato dall'autore." msgid "Labels" msgstr "Etichette" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "Le etichette sono annotazioni su utenti e contenuti. Possono essere utilizzate per nascondere, avvisare e classificare il network." @@ -2672,11 +2875,11 @@ msgstr "Le etichette sono annotazioni su utenti e contenuti. Possono essere util #~ msgid "labels have been placed on this {labelTarget}" #~ msgstr "le etichette sono state inserite su questo {labelTarget}" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "Etichette sul tuo account" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "Etichette sul tuo contenuto" @@ -2684,7 +2887,7 @@ msgstr "Etichette sul tuo contenuto" msgid "Language selection" msgstr "Seleziona la lingua" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "Impostazione delle lingue" @@ -2693,7 +2896,7 @@ msgstr "Impostazione delle lingue" msgid "Language Settings" msgstr "Impostazione delle Lingue" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "Lingue" @@ -2717,7 +2920,7 @@ msgstr "Ulteriori Informazioni" msgid "Learn more about the moderation applied to this content." msgstr "Scopri di più sulla moderazione applicata a questo contenuto." -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "Ulteriori informazioni su questo avviso" @@ -2730,13 +2933,20 @@ msgstr "Scopri cosa è pubblico su Bluesky." msgid "Learn more." msgstr "Saperne di più." -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" msgstr "" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" msgstr "" @@ -2752,7 +2962,7 @@ msgstr "Stai lasciando Bluesky" msgid "left to go." msgstr "mancano." -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "L'archivio legacy è stato cancellato, riattiva la app." @@ -2761,14 +2971,14 @@ msgstr "L'archivio legacy è stato cancellato, riattiva la app." msgid "Let's get your password reset!" msgstr "Reimpostazione della password!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "Andiamo!" #~ msgid "Library" #~ msgstr "Biblioteca" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "Chiaro" @@ -2776,8 +2986,8 @@ msgstr "Chiaro" #~ msgid "Like" #~ msgstr "Mi piace" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "Metti mi piace a questo feed" @@ -2822,7 +3032,7 @@ msgstr "piace il tuo post" msgid "Likes" msgstr "Mi piace" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "Mi Piace in questo post" @@ -2834,19 +3044,19 @@ msgstr "Lista" msgid "List Avatar" msgstr "Lista avatar" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "Lista bloccata" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "Lista di {0}" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "Lista cancellata" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "Lista muta" @@ -2854,23 +3064,27 @@ msgstr "Lista muta" msgid "List Name" msgstr "Nome della lista" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "Lista sbloccata" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "Lista non mutata" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "Liste" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "" + #~ msgid "Load more posts" #~ msgstr "Carica più post" @@ -2879,9 +3093,9 @@ msgid "Load new notifications" msgstr "Carica più notifiche" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "Carica nuovi posts" @@ -2911,7 +3125,7 @@ msgstr "Visibilità degli utenti disconnessi" msgid "Login to account that is not listed" msgstr "Accedi all'account che non è nella lista" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "Tieni premutoper aprire il menu dei tag per #{tag}" @@ -2922,14 +3136,35 @@ msgstr "Tieni premutoper aprire il menu dei tag per #{tag}" msgid "Looks like XXXXX-XXXXX" msgstr "Sembra XXXX-XXXXX" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "Assicurati che questo sia dove intendi andare!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "Gestisci le parole mute e i tags" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "" + #~ msgid "May not be longer than 253 characters" #~ msgstr "Non può contenere più di 253 caratteri" @@ -2954,47 +3189,53 @@ msgstr "Utenti menzionati" msgid "Menu" msgstr "Menù" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" msgstr "" #~ msgid "Message from server" #~ msgstr "Messaggio dal server" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "Messaggio dal server: {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" msgstr "" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" +#~ msgid "Messaging settings" +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "Account Ingannevole" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "Moderazione" @@ -3007,13 +3248,13 @@ msgstr "Dettagli sulla moderazione" msgid "Moderation list by {0}" msgstr "Lista di moderazione di {0}" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "Lista di moderazione di <0/>" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "Le tue liste di moderazione" @@ -3034,7 +3275,7 @@ msgstr "Liste di moderazione" msgid "Moderation Lists" msgstr "Liste di Moderazione" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "Impostazioni di moderazione" @@ -3055,11 +3296,11 @@ msgstr "Il moderatore ha scelto di mettere un avviso generale sul contenuto." msgid "More" msgstr "Di più" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "Altri feed" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "Altre opzioni" @@ -3086,7 +3327,7 @@ msgstr "Silenzia {truncatedTag}" msgid "Mute Account" msgstr "Silenzia l'account" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "Silenzia gli accounts" @@ -3094,35 +3335,40 @@ msgstr "Silenzia gli accounts" msgid "Mute all {displayTag} posts" msgstr "Silenzia tutti i post {displayTag}" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "Silenzia solo i tags" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "Silenzia nel testo & tags" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "Silenziare la lista" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "Vuoi silenziare queste liste?" #~ msgid "Mute this List" #~ msgstr "Silenzia questa Lista" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "Silenzia questa parola nel testo e nei tag del post" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "Siilenzia questa parola solo nei tags" @@ -3161,7 +3407,7 @@ msgstr "Silenziato da \"{0}\"" msgid "Muted words & tags" msgstr "Parole e tags silenziati" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "Silenziare un account è privato. Gli account silenziati possono interagire con te, ma non vedrai i loro post né riceverai le loro notifiche." @@ -3170,26 +3416,26 @@ msgstr "Silenziare un account è privato. Gli account silenziati possono interag msgid "My Birthday" msgstr "Il mio Compleanno" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "I miei Feeds" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "Il mio Profilo" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "I miei feed salvati" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "I miei Feeds Salvati" #~ msgid "my-server.com" #~ msgstr "my-server.com" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "Nome" @@ -3198,27 +3444,27 @@ msgstr "Nome" msgid "Name is required" msgstr "Il nome è obbligatorio" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "Il Nome o la Descrizione Viola gli Standard della Comunità" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "Natura" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "Vai alla schermata successiva" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "Vai al tuo profilo" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "Hai bisogno di segnalare una violazione del copyright?" @@ -3230,11 +3476,11 @@ msgstr "Hai bisogno di segnalare una violazione del copyright?" #~ msgid "Never lose access to your followers and data." #~ msgstr "Non perdere mai l'accesso ai tuoi follower e ai tuoi dati." -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "Non perdere mai l'accesso ai tuoi follower o ai tuoi dati." -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "Non importa, crea una handle per me" @@ -3247,12 +3493,16 @@ msgstr "Nuova" msgid "New" msgstr "Nuova" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" msgstr "" +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" msgstr "Nuova Lista di Moderazione" @@ -3265,22 +3515,22 @@ msgstr "Nuovo Password" msgid "New Password" msgstr "Nuovo Password" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "Nuovo Post" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "Nuovo post" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "Nuovo post" @@ -3296,14 +3546,14 @@ msgstr "Nuova lista" msgid "Newest replies first" msgstr "Mostrare prima le risposte più recenti" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "Notizie" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3321,29 +3571,29 @@ msgstr "Seguente" msgid "Next image" msgstr "Immagine seguente" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "No" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "Senza descrizione" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "Nessun pannello DNS" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "Non si è trovata nessuna GIF in primo piano. Potrebbe esserci un problema con Tenor." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "Non segui più {0}" @@ -3351,25 +3601,39 @@ msgstr "Non segui più {0}" msgid "No longer than 253 characters" msgstr "Non più di 253 caratteri" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" msgstr "" +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "" + #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "Ancora nessuna notifica!" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "Nessun risultato" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "Non si è trovato nessun risultato" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "Nessun risultato trovato per \"{query}\"" @@ -3379,13 +3643,13 @@ msgstr "Nessun risultato trovato per \"{query}\"" msgid "No results found for {query}" msgstr "Nessun risultato trovato per {query}" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "Nessun risultato trovato per \"{search}\"." #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "" #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3396,6 +3660,10 @@ msgstr "No grazie" msgid "Nobody" msgstr "Nessuno" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3414,8 +3682,8 @@ msgstr "Nudità non sessuale" msgid "Not Found" msgstr "Non trovato" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "Non adesso" @@ -3429,25 +3697,37 @@ msgstr "Nota sulla condivisione" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "Nota: Bluesky è una rete aperta e pubblica. Questa impostazione limita solo la visibilità dei tuoi contenuti sull'app e sul sito Web di Bluesky e altre app potrebbero non rispettare questa impostazione. I tuoi contenuti potrebbero comunque essere mostrati agli utenti disconnessi da altre app e siti web." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "Notifiche" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "Nudità" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "Nudità o contenuti per adulti non etichettati come tali" @@ -3462,17 +3742,17 @@ msgstr "Nudità o contenuti per adulti non etichettati come tali" msgid "Off" msgstr "Spento" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "Oh no!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "Oh no! Qualcosa è andato male." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "OK" @@ -3484,14 +3764,18 @@ msgstr "Va bene" msgid "Oldest replies first" msgstr "Mostrare prima le risposte più vecchie" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "Reimpostazione dell'onboarding" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "A una o più immagini manca il testo alternativo." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "Solo {0} può rispondere." @@ -3500,33 +3784,46 @@ msgstr "Solo {0} può rispondere." msgid "Only contains letters, numbers, and hyphens" msgstr "Contiene solo lettere, numeri e trattini" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "Ops! Qualcosa è andato male!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "Ops!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "Apri" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "Apri il selettore emoji" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "Apri il menu delle opzioni del feed" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "Apri i links con il navigatore della app" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "Apri le impostazioni delle parole e dei tag silenziati" @@ -3539,12 +3836,12 @@ msgstr "Apri la navigazione" msgid "Open post options menu" msgstr "Apri il menu delle opzioni del post" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "Apri la pagina della cronologia" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "Apri il registro di sistema" @@ -3552,7 +3849,7 @@ msgstr "Apri il registro di sistema" msgid "Opens {numItems} options" msgstr "Apre le {numItems} opzioni" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "Apre le impostazioni di accessibilità" @@ -3568,11 +3865,15 @@ msgstr "Apre un elenco ampliato di utenti in questa notifica" msgid "Opens camera on device" msgstr "Apre la fotocamera sul dispositivo" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "Apre il compositore" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "Apre le impostazioni configurabili delle lingue" @@ -3583,7 +3884,7 @@ msgstr "Apre la galleria fotografica del dispositivo" #~ msgid "Opens editor for profile display name, avatar, background image, and description" #~ msgstr "Apre l'editor per il nome configurato del profilo, l'avatar, l'immagine di sfondo e la descrizione" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "Apre le impostazioni esterne per gli incorporamenti" @@ -3614,58 +3915,58 @@ msgstr "Apre la finestra per selezionare i GIF" msgid "Opens list of invite codes" msgstr "Apre la lista dei codici di invito" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "Apre la modale per la conferma dell'eliminazione dell'account. Richiede un codice e-mail" #~ msgid "Opens modal for account deletion confirmation. Requires email code." #~ msgstr "Apre il modal per la conferma dell'eliminazione dell'account. Richiede un codice email." -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "Apre la modale per modificare il tuo password di Bluesky" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "Apre la modale per la scelta di un nuovo handle di Bluesky" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "Apre la modale per scaricare i dati del tuo account Bluesky (repository)" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "Apre la modale per la verifica dell'e-mail" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "Apre il modal per l'utilizzo del dominio personalizzato" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "Apre le impostazioni di moderazione" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "Apre il modulo di reimpostazione della password" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "Apre la schermata per modificare i feed salvati" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "Apre la schermata con tutti i feed salvati" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "Apre le impostazioni della password dell'app" #~ msgid "Opens the app password settings page" #~ msgstr "Apre la pagina delle impostazioni della password dell'app" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "Apre le preferenze del feed Following" @@ -3676,20 +3977,20 @@ msgstr "Apre le preferenze del feed Following" msgid "Opens the linked website" msgstr "Apre il sito Web collegato" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "Apri la pagina della cronologia" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "Apre la pagina del registro di sistema" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "Apre le preferenze dei threads" @@ -3697,7 +3998,8 @@ msgstr "Apre le preferenze dei threads" msgid "Option {0} of {numItems}" msgstr "Opzione {0} di {numItems}" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "Facoltativamente, fornisci ulteriori informazioni di seguito:" @@ -3705,7 +4007,7 @@ msgstr "Facoltativamente, fornisci ulteriori informazioni di seguito:" msgid "Or combine these options:" msgstr "Oppure combina queste opzioni:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "Altri" @@ -3720,7 +4022,11 @@ msgstr "Altro account" msgid "Other..." msgstr "Altro..." -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "Pagina non trovata" @@ -3729,10 +4035,10 @@ msgstr "Pagina non trovata" msgid "Page Not Found" msgstr "Pagina non trovata" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "Password" @@ -3764,38 +4070,42 @@ msgstr "Persone seguite da @{0}" msgid "People following @{0}" msgstr "Persone che seguono @{0}" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "È richiesta l'autorizzazione per accedere al la cartella delle immagini." -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "L'autorizzazione per accedere la cartella delle immagini è stata negata. Si prega di abilitarla nelle impostazioni del sistema." -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "Animali di compagnia" #~ msgid "Phone number" #~ msgstr "Numero di telefono" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "Immagini per adulti." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "Fissa su Home" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "Fissa su Home" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "Feeds Fissi" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "Play" @@ -3804,6 +4114,11 @@ msgstr "Play" msgid "Play {0}" msgstr "Riproduci {0}" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" msgstr "Riproduci o pausa la GIF" @@ -3817,34 +4132,34 @@ msgstr "Riproduci video" msgid "Plays the GIF" msgstr "Riproduci questa GIF" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "Scegli il tuo nome utente." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "Scegli la tua password." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "Si prega di completare il captcha di verifica." -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "Conferma la tua email prima di cambiarla. Si tratta di un requisito temporaneo durante l'aggiunta degli strumenti di aggiornamento della posta elettronica e verrà presto rimosso." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "Inserisci un nome per la password dell'app. Tutti gli spazi non sono consentiti." #~ msgid "Please enter a phone number that can receive SMS text messages." #~ msgstr "Inserisci un numero di telefono in grado di ricevere messaggi di testo SMS." -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "Inserisci un nome unico per la password dell'app o utilizzane uno generato automaticamente." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "Inserisci una parola, un tag o una frase valida da silenziare" @@ -3854,19 +4169,24 @@ msgstr "Inserisci una parola, un tag o una frase valida da silenziare" #~ msgid "Please enter the verification code sent to {phoneNumberFormatted}." #~ msgstr "Inserisci il codice di verifica inviato a {phoneNumberFormatted}." -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "Inserisci la tua email." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "Inserisci anche la tua password:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "Spiega perché ritieni che questa etichetta sia stata applicata in modo errato da {0}" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "" + #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" msgstr "" @@ -3876,32 +4196,32 @@ msgstr "" #~ msgid "Please tell us why you think this decision was incorrect." #~ msgstr "Per favore spiegaci perché ritieni che questa decisione sia stata sbagliata." -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "Verifica la tua email" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "Attendi il caricamento della scheda di collegamento" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "Politica" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "Porno" #~ msgid "Pornography" #~ msgstr "Pornografia" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "Post" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "Post" @@ -3909,7 +4229,7 @@ msgstr "Post" #~ msgid "Post" #~ msgstr "Post" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "Pubblicato da {0}" @@ -3923,7 +4243,7 @@ msgstr "Pubblicato da @{0}" msgid "Post deleted" msgstr "Post eliminato" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "Post nascosto" @@ -3945,8 +4265,8 @@ msgstr "Lingua del post" msgid "Post Languages" msgstr "Lingue del post" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "Post non trovato" @@ -3958,11 +4278,11 @@ msgstr "post" msgid "Posts" msgstr "Post" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "I post possono essere silenziati ​​in base al testo, ai tag o entrambi." -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "Post nascosto" @@ -3970,21 +4290,25 @@ msgstr "Post nascosto" msgid "Potentially Misleading Link" msgstr "Link potenzialmente fuorviante" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "Premi per cambiare provider di hosting" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "Premere per riprovare" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -3998,7 +4322,7 @@ msgstr "Lingua principale" msgid "Prioritize Your Follows" msgstr "Dai priorità a quelli che segui" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "Privacy" @@ -4006,25 +4330,29 @@ msgstr "Privacy" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "Informativa sulla privacy" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "Elaborazione in corso…" -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "profilo" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "Profilo" @@ -4032,11 +4360,11 @@ msgstr "Profilo" msgid "Profile updated" msgstr "Profilo aggiornato" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "Proteggi il tuo account verificando la tua email." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "Pubblico" @@ -4048,11 +4376,11 @@ msgstr "Elenchi pubblici e condivisibili di utenti da disattivare o bloccare in msgid "Public, shareable lists which can drive feeds." msgstr "Liste pubbliche e condivisibili che possono impulsare i feeds." -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "Pubblica il post" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "Pubblica la risposta" @@ -4081,6 +4409,14 @@ msgstr "Selezione a caso (nota anche come \"Poster's Roulette\")" msgid "Ratios" msgstr "Rapporti" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "Ricerche recenti" @@ -4093,12 +4429,20 @@ msgstr "Ricerche recenti" #~ msgid "Recommended Users" #~ msgstr "Utenti consigliati" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "Rimuovi" @@ -4109,7 +4453,7 @@ msgstr "Rimuovi" msgid "Remove account" msgstr "Rimuovi l'account" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "Rimuovere Avatar" @@ -4117,22 +4461,25 @@ msgstr "Rimuovere Avatar" msgid "Remove Banner" msgstr "Rimuovi il Banner" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "Rimuovi il feed" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "Rimuovere il feed?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "Rimuovi dai miei feed" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "Rimuovere dai miei feed?" @@ -4144,7 +4491,7 @@ msgstr "Rimuovi l'immagine" msgid "Remove image preview" msgstr "Rimuovi l'anteprima dell'immagine" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "Rimuovi la parola silenziata dalla tua lista" @@ -4159,7 +4506,7 @@ msgstr "Rimuovi la ripubblicazione" #~ msgid "Remove this feed from my feeds?" #~ msgstr "Rimuovere questo feed dai miei feeds?" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "Rimuovi questo feed dai feed salvati" @@ -4171,11 +4518,13 @@ msgstr "Rimuovi questo feed dai feed salvati" msgid "Removed from list" msgstr "Elimina dalla lista" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "Rimuovere dai miei feeds" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "Rimosso dai tuoi feed" @@ -4187,6 +4536,11 @@ msgstr "Elimina la miniatura predefinita da {0}" msgid "Removes quoted post" msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "Risposte" @@ -4195,12 +4549,12 @@ msgstr "Risposte" msgid "Replies to this thread are disabled" msgstr "Le risposte a questo thread sono disabilitate" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "Risposta" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "Filtri di risposta" @@ -4209,12 +4563,14 @@ msgstr "Filtri di risposta" #~ msgstr "In risposta a <0/>" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "Rispondi a <0><1/>" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" msgstr "" @@ -4223,28 +4579,34 @@ msgstr "" #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "Segnala l'account" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "Segnala il dialogo" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "Segnala il feed" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "Segnala la lista" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" msgstr "" @@ -4253,30 +4615,36 @@ msgstr "" msgid "Report post" msgstr "Segnala il post" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "Segnala questo contenuto" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "Segnala questo feed" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "Segnala questa lista" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "Segnala questo post" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "Segnala questo utente" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "Ripubblicare" @@ -4297,7 +4665,7 @@ msgstr "Ripubblica o cita il post" msgid "Reposted By" msgstr "Ripubblicato da" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "Ripubblicato da{0}" @@ -4307,7 +4675,7 @@ msgstr "Ripubblicato da{0}" #~ msgid "Reposted by <0/>" #~ msgstr "Repost di <0/>" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "Ripubblicato da <0><1/>" @@ -4315,12 +4683,12 @@ msgstr "Ripubblicato da <0><1/>" msgid "reposted your post" msgstr "ripubblicato il tuo post" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "Ripubblicazioni di questo post" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "Richiedi un cambio" @@ -4336,7 +4704,7 @@ msgstr "Richiedi il codice" msgid "Require alt text before posting" msgstr "Richiedi il testo alternativo prima di pubblicare" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "Richiedi il codice via email per accedere al tuo account" @@ -4344,8 +4712,8 @@ msgstr "Richiedi il codice via email per accedere al tuo account" msgid "Required for this provider" msgstr "Obbligatorio per questo operatore" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "Rinvia l'email" @@ -4360,8 +4728,8 @@ msgstr "Reimposta il Codice" #~ msgid "Reset onboarding" #~ msgstr "Reimposta l'incorporazione" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "Reimposta lo stato dell' incorporazione" @@ -4372,20 +4740,20 @@ msgstr "Reimposta la password" #~ msgid "Reset preferences" #~ msgstr "Reimposta le preferenze" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "Reimposta lo stato delle preferenze" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "Reimposta lo stato dell'incorporazione" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "Reimposta lo stato delle preferenze" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "Ritenta l'accesso" @@ -4394,13 +4762,14 @@ msgstr "Ritenta l'accesso" msgid "Retries the last action, which errored out" msgstr "Ritenta l'ultima azione che ha generato un errore" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 @@ -4408,11 +4777,11 @@ msgid "Retry" msgstr "Riprova" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "Riprova." +#~ msgid "Retry." +#~ msgstr "Riprova." #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "Ritorna alla pagina precedente" @@ -4421,7 +4790,7 @@ msgid "Returns to home page" msgstr "Ritorna su Home" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "Ritorna alla pagina precedente" @@ -4429,21 +4798,21 @@ msgstr "Ritorna alla pagina precedente" #~ msgstr "SANDBOX. I post e gli account non sono permanenti." #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "Salva" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "Salva" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "Salva il testo alternativo" @@ -4455,7 +4824,7 @@ msgstr "Salva il compleanno" msgid "Save Changes" msgstr "Salva i cambi" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "Salva la modifica del tuo identificatore" @@ -4463,16 +4832,16 @@ msgstr "Salva la modifica del tuo identificatore" msgid "Save image crop" msgstr "Salva il ritaglio dell'immagine" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "Salva nei miei feed" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "Canali salvati" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" msgstr "" @@ -4480,7 +4849,8 @@ msgstr "" #~ msgid "Saved to your camera roll." #~ msgstr "Salvato nel rullino fotografico." -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "Salvato nei tuoi feed" @@ -4488,7 +4858,7 @@ msgstr "Salvato nei tuoi feed" msgid "Saves any changes to your profile" msgstr "Salva eventuali modifiche al tuo profilo" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "Salva la modifica del cambio dell'utente in {handle}" @@ -4496,16 +4866,20 @@ msgstr "Salva la modifica del cambio dell'utente in {handle}" msgid "Saves image crop settings" msgstr "Salva le impostazioni di ritaglio dell'immagine" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "Scienza" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "Scorri verso l'alto" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4513,12 +4887,12 @@ msgstr "Scorri verso l'alto" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "Cerca" @@ -4539,8 +4913,8 @@ msgid "Search for all posts with tag {displayTag}" msgstr "Cerca tutti i post con il tag {displayTag}" #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "" #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4552,7 +4926,8 @@ msgstr "Cerca utenti" msgid "Search GIFs" msgstr "Cerca i Gif" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" msgstr "" @@ -4560,7 +4935,7 @@ msgstr "" msgid "Search Tenor" msgstr "Cerca Tenor" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "Passaggio di sicurezza obbligatorio" @@ -4581,11 +4956,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "Vedi <0>{displayTag} posts di questo utente" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "Vedi il profilo" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "Consulta questa guida" @@ -4596,10 +4971,22 @@ msgstr "Consulta questa guida" msgid "Select {item}" msgstr "Seleziona {item}" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "Seleziona l'account" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "" + #~ msgid "Select Bluesky Social" #~ msgstr "Seleziona Bluesky Social" @@ -4611,7 +4998,7 @@ msgstr "Seleziona da un account esistente" msgid "Select GIF" msgstr "Seleziona GIF" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "Seleziona GIF \"{0}\"" @@ -4634,7 +5021,11 @@ msgstr "Seleziona l'opzione {i} di {numItems}" msgid "Select some accounts below to follow" msgstr "Seleziona alcuni account da seguire qui giù" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "Seleziona il/i servizio/i di moderazione per fare la segnalazione" @@ -4665,7 +5056,7 @@ msgstr "Seleziona la lingua dell'app per il testo predefinito da visualizzare ne msgid "Select your date of birth" msgstr "Seleziona la tua data di nascita" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "Seleziona i tuoi interessi dalle seguenti opzioni" @@ -4684,16 +5075,20 @@ msgstr "Seleziona i tuoi feed algoritmici principali" msgid "Select your secondary algorithmic feeds" msgstr "Seleziona i tuoi feed algoritmici secondari" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "Invia email di conferma" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "Invia email" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "Invia email" @@ -4701,18 +5096,20 @@ msgstr "Invia email" #~ msgid "Send Email" #~ msgstr "Envia Email" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "Invia feedback" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "Invia la segnalazione" @@ -4723,12 +5120,12 @@ msgstr "Invia la segnalazione" msgid "Send report to {0}" msgstr "Invia la segnalazione a {0}" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "Invia la email di verifica" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "Invia un'email con il codice di conferma per la cancellazione dell'account" @@ -4769,15 +5166,15 @@ msgstr "Imposta una nuova password" #~ msgid "Set password" #~ msgstr "Imposta la password" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "Seleziona \"No\" per nascondere tutti i post con le citazioni dal tuo feed. I repost saranno ancora visibili." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "Seleziona \"No\" per nascondere tutte le risposte dal tuo feed." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "Seleziona \"No\" per nascondere tutte le ripubblicazioni dal tuo feed." @@ -4788,7 +5185,7 @@ msgstr "Seleziona \"Sì\" per mostrare le risposte in una visualizzazione concat #~ msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your following feed. This is an experimental feature." #~ msgstr "Seleziona \"Sì\" per mostrare esempi dei feed salvati nel feed successivo. Questa è una funzionalità sperimentale." -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "Imposta questa impostazione su \"Sì\" per mostrare esempi dei tuoi feed salvati nel feed Seguiti. Questa è una funzionalità sperimentale." @@ -4796,27 +5193,27 @@ msgstr "Imposta questa impostazione su \"Sì\" per mostrare esempi dei tuoi feed msgid "Set up your account" msgstr "Configura il tuo account" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Imposta il tuo nome utente di Bluesky" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "Imposta il tema colore su scuro" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "Imposta il tema colore su chiaro" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "Imposta il tema colore basato impostazioni di sistema" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "Imposta il tema scuro sul tema scuro" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "Imposta il tema scuro sul tema semi fosco" @@ -4843,15 +5240,14 @@ msgstr "Imposta l'amplio sulle proporzioni dell'immagine" #~ msgstr "Imposta il server per il client Bluesky" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "Impostazioni" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "Attività sessuale o nudità erotica." @@ -4859,7 +5255,7 @@ msgstr "Attività sessuale o nudità erotica." msgid "Sexually Suggestive" msgstr "Sessualmente suggestivo" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "Condividi" @@ -4869,18 +5265,26 @@ msgstr "Condividi" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "Condividi" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "Condividi comunque" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "Condividi il feed" @@ -4889,15 +5293,19 @@ msgstr "Condividi il feed" msgid "Share Link" msgstr "Condividi il link" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "Condivide il sito Web nel link" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "Mostra" @@ -4926,10 +5334,14 @@ msgstr "Mostra badge e filtra dai feed" #~ msgid "Show embeds from {0}" #~ msgstr "Mostra incorporamenti di {0}" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "Mostra follows simile a {0}" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" @@ -4937,7 +5349,7 @@ msgstr "" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "Mostra di più" @@ -4946,11 +5358,15 @@ msgstr "Mostra di più" msgid "Show more like this" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "Mostra post dai miei feed" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "Mostra post con citazioni" @@ -4966,7 +5382,7 @@ msgstr "Mostra le citazioni in Seguiti" msgid "Show re-posts in Following feed" msgstr "Mostra re-post nel feed Seguiti" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "Mostra risposte" @@ -4986,7 +5402,7 @@ msgstr "Mostra le risposte nel feed Seguiti" #~ msgid "Show replies with at least {value} {0}" #~ msgstr "Mostra risposte con almeno {value} {0}" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "Mostra ripubblicazioni" @@ -4995,7 +5411,7 @@ msgid "Show reposts in Following" msgstr "Mostra i re-repost in Seguiti" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "Mostra il contenuto" @@ -5022,17 +5438,17 @@ msgstr "Mostra i post di {0} nel tuo feed" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -5061,17 +5477,17 @@ msgstr "Accedi o crea il tuo account per partecipare alla conversazione!" msgid "Sign into Bluesky or create a new account" msgstr "Accedi a Bluesky o crea un nuovo account" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "Disconnetta" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -5087,7 +5503,7 @@ msgstr "Iscriviti o accedi per partecipare alla conversazione" msgid "Sign-in Required" msgstr "È richiesta l'autenticazione" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "Registrato/a come" @@ -5099,22 +5515,30 @@ msgstr "Registrato/a come @{0}" #~ msgid "Signs {0} out of Bluesky" #~ msgstr "{0} esce da Bluesky" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "Salta questo passo" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "Salta questa corrente" #~ msgid "SMS verification" #~ msgstr "Verifica tramite SMS" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "Sviluppo Software" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "" + #~ msgid "Something went wrong and we're not sure what." #~ msgstr "Qualcosa è andato storto ma non siamo sicuri di cosa." @@ -5127,8 +5551,8 @@ msgstr "Qualcosa è andato male, prova di nuovo." #~ msgid "Something went wrong. Check your email and try again." #~ msgstr "Qualcosa è andato storto. Controlla la tua email e riprova." -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "Scusa! La tua sessione è scaduta. Per favore accedi di nuovo." @@ -5140,19 +5564,24 @@ msgstr "Ordina le risposte" msgid "Sort replies to the same post by:" msgstr "Ordina le risposte allo stesso post per:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "Origine:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "Origine:" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "Spam" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "Spam; menzioni o risposte eccessive" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "Sports" @@ -5163,15 +5592,23 @@ msgstr "Quadrato" #~ msgid "Staging" #~ msgstr "Allestimento" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "" + #: src/view/screens/Settings/index.tsx:862 #~ msgid "Status page" #~ msgstr "Pagina di stato" -#: src/view/screens/Settings/index.tsx:896 +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" msgstr "" @@ -5186,29 +5623,31 @@ msgstr "" #~ msgid "Step {0} of {numSteps}" #~ msgstr "Passo {0} di {numSteps}" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "Spazio di archiviazione eliminato. Riavvia l'app." #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Cronologia" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Invia" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "Iscriviti" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "Iscriviti a @{0} per utilizzare queste etichette:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "Iscriviti a Labeler" @@ -5217,11 +5656,11 @@ msgstr "Iscriviti a Labeler" msgid "Subscribe to the {0} feed" msgstr "Iscriviti a {0} feed" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "Iscriviti a questo labeler" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "Iscriviti alla lista" @@ -5233,7 +5672,7 @@ msgstr "Accounts da seguire" msgid "Suggested for you" msgstr "Suggerito per te" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "Suggestivo" @@ -5251,23 +5690,23 @@ msgstr "Supporto" msgid "Switch Account" msgstr "Cambia account" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "Cambia a {0}" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "Cambia l'account dal quale hai effettuato l'accesso" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "Sistema" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "Registro di sistema" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "tag" @@ -5283,41 +5722,47 @@ msgstr "Alto" msgid "Tap to view fully" msgstr "Tocca per visualizzare completamente" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "Tecnologia" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "Termini" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "Termini di servizio" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "I termini utilizzati violano gli standard della comunità" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "testo" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "Campo di testo" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "Grazie. La tua segnalazione è stata inviata." -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "Che contiene il seguente:" @@ -5325,7 +5770,7 @@ msgstr "Che contiene il seguente:" msgid "That handle is already taken." msgstr "Questo handle è già stato preso." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "L'account sarà in grado di interagire con te dopo lo sblocco." @@ -5342,11 +5787,15 @@ msgstr "Le Linee guida della community sono state spostate a<0/>" msgid "The Copyright Policy has been moved to <0/>" msgstr "La politica sul copyright è stata spostata a <0/>" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "Al tuo account sono state applicate le seguenti etichette." -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "Ai tuoi contenuti sono state applicate le seguenti etichette." @@ -5354,8 +5803,8 @@ msgstr "Ai tuoi contenuti sono state applicate le seguenti etichette." msgid "The following steps will help customize your Bluesky experience." msgstr "I passaggi seguenti ti aiuteranno a personalizzare la tua esperienza con Bluesky." -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "Il post potrebbe essere stato cancellato." @@ -5378,37 +5827,40 @@ msgstr "I Termini di Servizio sono stati spostati a" msgid "There are many feeds to try:" msgstr "Ci sono molti feed da provare:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "Si è verificato un problema nel contattare il server, controlla la tua connessione Internet e riprova." -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "Si è verificato un problema durante la rimozione di questo feed. Per favore controlla la tua connessione Internet e prova di nuovo." -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "Si è verificato un problema durante la rimozione di questo feed. Per favore controlla la tua connessione Internet e prova di nuovo." -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "Si è verificato un problema durante la connessione a Tenor." #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "Si è verificato un problema durante il contatto con il server" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "Si è verificato un problema durante il contatto con il tuo server" @@ -5416,7 +5868,7 @@ msgstr "Si è verificato un problema durante il contatto con il tuo server" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "Si è verificato un problema durante il recupero delle notifiche. Tocca qui per riprovare." -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "Si è verificato un problema nel recupero dei post. Tocca qui per riprovare." @@ -5429,7 +5881,8 @@ msgstr "Si è verificato un problema durante il recupero dell'elenco. Tocca qui msgid "There was an issue fetching your lists. Tap here to try again." msgstr "Si è verificato un problema durante il recupero delle tue liste. Tocca qui per riprovare." -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "Si è verificato un problema durante l'invio della segnalazione. Per favore controlla la tua connessione Internet." @@ -5437,32 +5890,32 @@ msgstr "Si è verificato un problema durante l'invio della segnalazione. Per fav msgid "There was an issue syncing your preferences with the server" msgstr "Si è verificato un problema durante la sincronizzazione delle tue preferenze con il server" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "Si è verificato un problema durante il recupero delle password dell'app" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "Si è verificato un problema! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "Si è verificato un problema. Per favore controlla la tua connessione Internet e prova di nuovo." -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "Si è verificato un problema imprevisto nell'applicazione. Per favore facci sapere se ti è successo!" @@ -5489,14 +5942,26 @@ msgstr "Questa {screenDescription} è stata segnalata:" msgid "This account has requested that users sign in to view their profile." msgstr "Questo account ha richiesto agli utenti di accedere Bluesky per visualizzare il profilo." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "Questo ricorso verrà inviato a <0>{0}." -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:26 +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "" + #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." msgstr "Questo contenuto è stato nascosto dai moderatori." @@ -5514,24 +5979,24 @@ msgstr "Questo contenuto è hosted da {0}. Vuoi abilitare i media esterni?" msgid "This content is not available because one of the users involved has blocked the other." msgstr "Questo contenuto non è disponibile perché uno degli utenti coinvolti ha bloccato l'altro." -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "Questo contenuto non è visualizzabile senza un account Bluesky." #~ msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." #~ msgstr "Questa funzionalità è in versione beta. Puoi leggere ulteriori informazioni sulle esportazioni dell' archivio in <0>questo post del blog." -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "Questa funzionalità è in versione beta. Puoi leggere ulteriori informazioni sulle esportazioni del repository in <0>questo post del blog." -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "Questo canale al momento sta ricevendo molte visite ed è temporaneamente non disponibile. Riprova più tardi." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "Questo feed è vuoto!" @@ -5539,11 +6004,15 @@ msgstr "Questo feed è vuoto!" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "Questo feed è vuoto! Prova a seguire più utenti o ottimizza le impostazioni della lingua." +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "" + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "Queste informazioni non vengono condivise con altri utenti." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "Questo è importante nel caso in cui avessi bisogno di modificare la tua email o reimpostare la password." @@ -5562,7 +6031,15 @@ msgstr "" msgid "This label was applied by the author." msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "Questo etichettatore non ha dichiarato quali etichette pubblica e potrebbe non essere attivo." @@ -5570,7 +6047,7 @@ msgstr "Questo etichettatore non ha dichiarato quali etichette pubblica e potreb msgid "This link is taking you to the following website:" msgstr "Questo link ti porta al seguente sito web:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "La lista è vuota!" @@ -5578,11 +6055,11 @@ msgstr "La lista è vuota!" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "Questo servizio di moderazione non è disponibile. Vedi giù per ulteriori dettagli. Se il problema persiste, contattaci." -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "Questo nome è già in uso" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "Questo post è stato cancellato." @@ -5603,7 +6080,7 @@ msgstr "Questo profilo è visibile solo agli utenti registrati. Non sarà visibi msgid "This service has not provided terms of service or a privacy policy." msgstr "Questo servizio non ha fornito termini di servizio o un'informativa sulla privacy." -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "Questo dovrebbe creare un record di dominio in:" @@ -5611,6 +6088,10 @@ msgstr "Questo dovrebbe creare un record di dominio in:" msgid "This user doesn't have any followers." msgstr "Questo utente non ha follower." +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5645,19 +6126,19 @@ msgstr "Questo utente non sta seguendo nessuno." #~ msgid "This warning is only available for posts with media attached." #~ msgstr "Questo avviso è disponibile solo per i post con contenuti multimediali allegati." -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "Questo eliminerà {0} dalle parole disattivate. Puoi sempre aggiungerla nuovamente in seguito." #~ msgid "This will hide this post from your feeds." #~ msgstr "Questo nasconderà il post dai tuoi feeds." -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "Preferenze delle discussioni" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "Preferenze delle Discussioni" @@ -5669,15 +6150,19 @@ msgstr "Modalità discussione" msgid "Threads Preferences" msgstr "Preferenze per le discussioni" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "Per disabilitare il metodo 2FA via e-mail, verifica il tuo accesso all'indirizzo e-mail." +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "A chi desideri inviare questo report?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "Alterna tra le opzioni delle parole silenziate." @@ -5713,60 +6198,69 @@ msgstr "Riprova" #~ msgid "Try again" #~ msgstr "Provalo di nuovo" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "Autenticazione a due fattori" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "Tipo:" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "Sblocca la lista" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "Riattiva questa lista" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "Impossibile contattare il servizio. Per favore controlla la tua connessione Internet." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "Sblocca" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "Sblocca" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "Sblocca Account" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "Sblocca Account?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "Annulla la ripubblicazione" @@ -5780,7 +6274,7 @@ msgstr "Smetti di seguire" msgid "Unfollow" msgstr "Smetti di seguire" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "Smetti di seguire {0}" @@ -5796,12 +6290,12 @@ msgstr "Smetti di seguire questo account" #~ msgid "Unlike" #~ msgstr "Togli Mi piace" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "Togli il like a questo feed" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "Riattiva" @@ -5818,40 +6312,53 @@ msgstr "Riattiva questo account" msgid "Unmute all {displayTag} posts" msgstr "Riattiva tutti i post di {displayTag}" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" msgstr "" +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "Riattiva questa discussione" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "Stacca dal profilo" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "Stacca dalla Home" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "Stacca la lista di moderazione" +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "" + #~ msgid "Unsave" #~ msgstr "Rimuovi" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "Annulla l'iscrizione" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "Annulla l'iscrizione a questo/a labeler" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "Contenuti Sessuali Indesiderati" @@ -5862,7 +6369,7 @@ msgstr "Aggiorna {displayName} negli elenchi" #~ msgid "Update Available" #~ msgstr "Aggiornamento disponibile" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "Aggiorna a {handle}" @@ -5870,42 +6377,46 @@ msgstr "Aggiorna a {handle}" msgid "Updating..." msgstr "In aggiornamento..." -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "Carica una file di testo a:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "Carica dalla fotocamera" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "Carica dai Files" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "Carica dalla Libreria" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "Utilizza un file sul tuo server" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "Utilizza le password dell'app per accedere ad altri client Bluesky senza fornire l'accesso completo al tuo account o alla tua password." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "Utilizza bsky.social come provider di hosting" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "Utilizza il tuo provider predefinito" @@ -5919,11 +6430,15 @@ msgstr "Utilizza il browser dell'app" msgid "Use my default browser" msgstr "Utilizza il mio browser predefinito" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "Utilizza il pannello DNS" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "Utilizza questo per accedere all'altra app insieme al tuo nome utente." @@ -5943,6 +6458,10 @@ msgstr "Utente bloccato" msgid "User Blocked by \"{0}\"" msgstr "Utente bloccato da \"{0}\"" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "Utente bloccato dalla lista" @@ -5963,13 +6482,13 @@ msgstr "Questo utente ti blocca" msgid "User list by {0}" msgstr "Lista di {0}" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "Lista di<0/>" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "La tua lista" @@ -5985,11 +6504,11 @@ msgstr "Lista aggiornata" msgid "User Lists" msgstr "Liste publiche" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "Nome utente o indirizzo Email" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "Utenti" @@ -5997,6 +6516,13 @@ msgstr "Utenti" msgid "users followed by <0/>" msgstr "utenti seguiti da <0/>" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "Utenti in «{0}»" @@ -6005,7 +6531,7 @@ msgstr "Utenti in «{0}»" msgid "Users that have liked this content or profile" msgstr "Utenti a cui è piaciuto questo contenuto o profilo" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "Valore:" @@ -6016,32 +6542,32 @@ msgstr "Valore:" #~ msgid "Verify {0}" #~ msgstr "Verifica {0}" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" msgstr "" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "Verifica Email" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "Verifica la mia email" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "Verifica la Mia Email" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "Verifica la nuova email" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "Verifica la tua email" @@ -6049,15 +6575,15 @@ msgstr "Verifica la tua email" #~ msgid "Version {0}" #~ msgstr "Versione {0}" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" msgstr "" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "Video Games" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "Vedi l'avatar di {0}" @@ -6065,25 +6591,25 @@ msgstr "Vedi l'avatar di {0}" msgid "View debug entry" msgstr "Vedi le informazioni del debug" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "Vedere dettagli" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "Visualizza i dettagli per segnalare una violazione del copyright" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "Vedi la discussione completa" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "Visualizza le informazioni su queste etichette" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "Vedi il profilo" @@ -6095,7 +6621,7 @@ msgstr "Vedi l'avatar" msgid "View the labeling service provided by @{0}" msgstr "Visualizza il servizio di etichettatura fornito da @{0}" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "Visualizza gli utenti a cui piace questo feed" @@ -6126,11 +6652,15 @@ msgstr "Avvisa i contenuti e filtra dai feed" msgid "We couldn't find any results for that hashtag." msgstr "Non siamo riusciti a trovare alcun risultato per quell'hashtag." +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "Stimiamo {estimatedTime} prima che il tuo account sia pronto." -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "Speriamo di darti dei momenti dei bei momenti. Ricorda, Bluesky è:" @@ -6138,7 +6668,7 @@ msgstr "Speriamo di darti dei momenti dei bei momenti. Ricorda, Bluesky è:" msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "Abbiamo esaurito i posts dei tuoi follower. Ecco le ultime novità da <0/>." -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "Ti consigliamo di evitare usare parole comuni che compaiono in molti post, perchè ciò potrebbe comportare la mancata visualizzazione dei post." @@ -6154,7 +6684,7 @@ msgstr "Non siamo riusciti a caricare le tue preferenze relative alla data di na msgid "We were unable to load your configured labelers at this time." msgstr "Al momento non è stato possibile caricare le etichettatori configurati." -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "Non siamo riusciti a connetterci. Riprova per continuare a configurare il tuo account. Se il problema persiste, puoi ignorare questo flusso." @@ -6165,10 +6695,14 @@ msgstr "Ti faremo sapere quando il tuo account sarà pronto." #~ msgid "We'll look into your appeal promptly." #~ msgstr "Esamineremo il tuo ricorso al più presto." -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "Lo useremo per personalizzare la tua esperienza." +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "Siamo felici che tu ti unisca a noi!" @@ -6177,7 +6711,7 @@ msgstr "Siamo felici che tu ti unisca a noi!" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "Siamo spiacenti, ma non siamo riusciti a risolvere questa lista. Se il problema persiste, contatta il creatore della lista, @{handleOrDid}." -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "Siamo spiacenti, ma al momento non siamo riusciti a caricare le parole silenziate. Per favore riprova si nuovo." @@ -6185,12 +6719,12 @@ msgstr "Siamo spiacenti, ma al momento non siamo riusciti a caricare le parole s msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "Siamo spiacenti, ma non è stato possibile completare la ricerca. Riprova tra qualche minuto." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "Ci dispiace! Non riusciamo a trovare la pagina che stavi cercando." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "Ci dispiace! Puoi abbonarti solo a dieci etichettatori e hai raggiunto il limite di dieci." @@ -6198,7 +6732,7 @@ msgstr "Ci dispiace! Puoi abbonarti solo a dieci etichettatori e hai raggiunto i #~ msgid "Welcome to <0>Bluesky" #~ msgstr "Ti diamo il benvenuto a <0>Bluesky" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "Quali sono i tuoi interessi?" @@ -6210,7 +6744,7 @@ msgstr "Quali sono i tuoi interessi?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "Come va?" @@ -6222,28 +6756,41 @@ msgstr "Che lingue sono utilizzate in questo post?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "Quali lingue vorresti vedere negli algoritmi dei tuoi feeds?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "Chi può rispondere" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "Perché questo contenuto dovrebbe essere revisionato?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "Perché questo feed dovrebbe essere revisionato?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "Perché questa lista dovrebbe essere revisionata?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "Perché questo post dovrebbe essere revisionato?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "Perché questo utente dovrebbe essere revisionato?" @@ -6251,21 +6798,21 @@ msgstr "Perché questo utente dovrebbe essere revisionato?" msgid "Wide" msgstr "Largo" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" msgstr "" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "Scrivi un post" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "Scrivi la tua risposta" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "Scrittori" @@ -6273,16 +6820,16 @@ msgstr "Scrittori" #~ msgstr "XXXXXX" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "Si" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" msgstr "" @@ -6306,6 +6853,14 @@ msgstr "Puoi anche scoprire nuovi feed personalizzati da seguire." msgid "You can change these settings later." msgstr "Potrai modificare queste impostazioni in seguito." +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -6319,22 +6874,26 @@ msgstr "Non hai follower." msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "Non hai ancora alcun codice di invito! Te ne invieremo alcuni quando utilizzerai Bluesky per un po' più a lungo." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "Non hai fissato nessun feed." #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "Non hai salvato nessun feed!" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "Non hai salvato nessun feed!" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "Non hai salvato nessun feed." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "Hai bloccato l'autore o sei stato bloccato dall'autore." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -6368,6 +6927,10 @@ msgstr "Hai silenziato questo utente" #~ msgid "You have muted this user." #~ msgstr "Hai disattivato questo utente." +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "Non hai feeds." @@ -6377,9 +6940,9 @@ msgstr "Non hai feeds." msgid "You have no lists." msgstr "Non hai liste." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." @@ -6388,7 +6951,7 @@ msgstr "Non hai ancora bloccato nessun account. Per bloccare un account, vai sul #~ msgid "You have not blocked any accounts yet. To block an account, go to their profile and selected \"Block account\" from the menu on their account." #~ msgstr "Non hai ancora bloccato nessun conto. Per bloccare un conto, vai al profilo e seleziona \"Blocca conto\" dal menu del suo conto." -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "Non hai ancora creato alcuna password per l'app. Puoi crearne uno premendo il pulsante qui sotto." @@ -6399,11 +6962,19 @@ msgstr "Non hai ancora silenziato nessun account. Per silenziare un account, vai #~ msgid "You have not muted any accounts yet. To mute an account, go to their profile and selected \"Mute account\" from the menu on their account." #~ msgstr "Non hai ancora disattivato alcun account. Per disattivare un account, vai al suo profilo e seleziona \"Disattiva account\" dal menu del account." -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "Non hai ancora silenziato nessuna parola o tag" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "Puoi presentare ricorso contro queste etichette se ritieni che siano state inserite per errore." @@ -6418,7 +6989,7 @@ msgstr "Per iscriverti devi avere almeno 13 anni." msgid "You must be 18 years or older to enable adult content" msgstr "Devi avere almeno 18 anni per abilitare i contenuti per adulti" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "È necessario selezionare almeno un'etichettatore per un report" @@ -6434,7 +7005,7 @@ msgstr "Adesso riceverai le notifiche per questa discussione" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "Riceverai un'email con un \"codice di reset\". Inserisci il codice qui, poi inserisci la nuova password." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" msgstr "" @@ -6448,7 +7019,7 @@ msgstr "Sei in controllo" msgid "You're in line" msgstr "Sei in fila" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "Sei pronto per iniziare!" @@ -6465,11 +7036,11 @@ msgstr "Hai raggiunto la fine del tuo feed! Trova altri account da seguire." msgid "Your account" msgstr "Il tuo account" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "Il tuo account è stato eliminato" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "L'archivio del tuo account, che contiene tutti i record di dati pubblici, può essere scaricato come file \"CAR\". Questo file non include elementi multimediali incorporati, come immagini o dati privati, che devono essere recuperati separatamente." @@ -6477,6 +7048,10 @@ msgstr "L'archivio del tuo account, che contiene tutti i record di dati pubblici msgid "Your birth date" msgstr "La tua data di nascita" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "La tua scelta verrà salvata, ma potrà essere modificata successivamente nelle impostazioni." @@ -6486,7 +7061,7 @@ msgid "Your default feed is \"Following\"" msgstr "Il tuo feed predefinito è \"Following\"" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "Your email appears to be invalid." @@ -6494,11 +7069,11 @@ msgstr "Your email appears to be invalid." #~ msgid "Your email has been saved! We'll be in touch soon." #~ msgstr "La tua email è stata salvata! Ci metteremo in contatto al più presto." -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "La tua email è stata aggiornata ma non verificata. Come passo successivo, verifica la tua nuova email." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "La tua email non è stata ancora verificata. Ti consigliamo di fare questo importante passo per la sicurezza del tuo account." @@ -6510,7 +7085,7 @@ msgstr "Il tuo feed seguente è vuoto! Segui più utenti per vedere cosa sta suc msgid "Your full handle will be" msgstr "Il tuo nome di utente completo sarà" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "Il tuo nome di utente completo sarà <0>@{0}" @@ -6520,7 +7095,7 @@ msgstr "Il tuo nome di utente completo sarà <0>@{0}" #~ msgid "Your invite codes are hidden when logged in using an App Password" #~ msgstr "I tuoi codici di invito vengono celati quando accedi utilizzando una password per l'app" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "Le tue parole silenziate" @@ -6528,22 +7103,26 @@ msgstr "Le tue parole silenziate" msgid "Your password has been changed successfully!" msgstr "La tua password è stata modificata correttamente!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "Il tuo post è stato pubblicato" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "I tuoi post, i tuoi Mi piace e i tuoi blocchi sono pubblici. I conti silenziati sono privati." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "Il tuo profilo" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "La tua risposta è stata pubblicata" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "Il tuo handle utente" diff --git a/src/locale/locales/ja/messages.po b/src/locale/locales/ja/messages.po index a612fff007..5375519ebf 100644 --- a/src/locale/locales/ja/messages.po +++ b/src/locale/locales/ja/messages.po @@ -8,134 +8,125 @@ msgstr "" "Language: ja\n" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-05-06 15:47+0900\n" +"PO-Revision-Date: 2024-05-24 09:20+0900\n" "Last-Translator: tkusano\n" "Language-Team: Hima-Zinn, tkusano, dolciss, oboenikui, noritada, middlingphys, hibiki, reindex-ot, haoyayoi, vyv03354\n" "Plural-Forms: \n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "メールがありません" #: src/view/com/notifications/FeedItem.tsx:239 msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" -msgstr "" +msgstr "{0, plural, other {他{formattedCount}人}}" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" +msgstr "{0, plural, other {#個のラベルがこのアカウントに適用されています}}" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" +msgstr "{0, plural, other {#個のラベルがこのコンテンツに適用されています}}" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" -msgstr "" +msgstr "{0, plural, other {#回のリポスト}}" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" -msgstr "" +msgstr "{0, plural, other {フォロワー}}" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" -msgstr "" +msgstr "{0, plural, other {フォロー中}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:245 msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" -msgstr "" +msgstr "{0, plural, other {いいね (#個のいいね)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" -msgstr "" +msgstr "{0, plural, other {いいね}}" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{0, plural, other {#人のユーザーがいいね}}" #: src/screens/Profile/Header/Metrics.tsx:59 msgid "{0, plural, one {post} other {posts}}" -msgstr "" +msgstr "{0, plural, other {投稿}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:204 msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" -msgstr "" +msgstr "{0, plural, other {返信 (#件の返信)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" -msgstr "" +msgstr "{0, plural, other {リポスト}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:241 msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" -msgstr "" +msgstr "{0, plural, other {いいねを外す (#個のいいね)}}" #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{count, plural, other {#人のユーザーがいいね}}" #: src/screens/Deactivated.tsx:207 msgid "{estimatedTimeHrs, plural, one {hour} other {hours}}" -msgstr "" +msgstr "{estimatedTimeHrs, plural, other {時間}}" #: src/screens/Deactivated.tsx:213 msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" -msgstr "" +msgstr "{estimatedTimeMins, plural, other {分}}" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} フォロー" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 -msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "{handle}にメッセージを送れません" -#: src/view/shell/Drawer.tsx:464 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 +msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" +msgstr "{likeCount, plural, other {#人のユーザーがいいね}}" + +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications}件の未読" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" -msgstr "" +msgstr "{value, plural, =0 {すべての返信を表示} other {#個以上のいいねがついた返信を表示}}" #: src/view/com/threadgate/WhoCanReply.tsx:159 msgid "<0/> members" msgstr "<0/>のメンバー" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" -msgstr "" +msgstr "<0>{0} {1, plural, other {フォロワー}}" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" -msgstr "" +msgstr "<0>{0} {1, plural, other {フォロー}}" -#: src/view/shell/Drawer.tsx:96 -#~ msgid "<0>{0} following" -#~ msgstr "<0>{0} フォロー" - -#: src/components/ProfileHoverCard/index.web.tsx:437 -#~ msgid "<0>{followers} <1>{pluralizedFollowers}" -#~ msgstr "<0>{followers} <1>フォロワー" - -#: src/components/ProfileHoverCard/index.web.tsx:449 -#: src/screens/Profile/Header/Metrics.tsx:45 -#~ msgid "<0>{following} <1>following" -#~ msgstr "<0>{following} <1>フォロー" - -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." -msgstr "" +msgstr "<0>適用できません。 この警告はメディアが添付された投稿にのみ利用可能です。" #: src/screens/Profile/Header/Handle.tsx:43 msgid "⚠Invalid Handle" msgstr "⚠無効なハンドル" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "2要素認証の確認" @@ -149,11 +140,11 @@ msgid "Access profile and other navigation links" msgstr "プロフィールと他のナビゲーションリンクにアクセス" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "アクセシビリティ" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "アクセシビリティの設定" @@ -162,25 +153,21 @@ msgstr "アクセシビリティの設定" msgid "Accessibility Settings" msgstr "アクセシビリティの設定" -#: src/components/moderation/LabelsOnMe.tsx:42 -#~ msgid "account" -#~ msgstr "アカウント" - -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "アカウント" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "アカウントをブロックしました" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "アカウントをフォローしました" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "アカウントをミュートしました" @@ -201,67 +188,72 @@ msgstr "アカウントオプション" msgid "Account removed from quick access" msgstr "クイックアクセスからアカウントを解除" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "アカウントのブロックを解除しました" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "アカウントのフォローを解除しました" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "アカウントのミュートを解除しました" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "追加" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "コンテンツの警告を追加" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "リストにユーザーを追加" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "アカウントを追加" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "ALTテキストを追加" -#: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" - -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "アプリパスワードを追加" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "ミュートするワードを設定に追加" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "ミュートするワードとタグを追加" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "おすすめのフィードを追加" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "フォローしているユーザーのみのデフォルトのフィードを追加" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "次のDNSレコードをドメインに追加してください:" @@ -270,7 +262,7 @@ msgstr "次のDNSレコードをドメインに追加してください:" msgid "Add to Lists" msgstr "リストに追加" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "マイフィードに追加" @@ -279,17 +271,17 @@ msgstr "マイフィードに追加" msgid "Added to list" msgstr "リストに追加" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "マイフィードに追加" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "返信がフィードに表示されるために必要ないいねの数を調整します。" #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "成人向けコンテンツ" @@ -298,14 +290,24 @@ msgid "Adult content is disabled." msgstr "成人向けコンテンツは無効になっています。" #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "高度な設定" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "保存したすべてのフィードを1箇所にまとめます。" +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "ダイレクトメッセージへのアクセスを許可" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "新しいメッセージを誰から受け取れるか:" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -315,13 +317,13 @@ msgstr "コードをすでに持っていますか?" msgid "Already signed in as @{0}" msgstr "@{0}としてすでにサインイン済み" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -329,30 +331,26 @@ msgstr "ALTテキスト" #: src/view/com/util/post-embeds/GifEmbed.tsx:179 msgid "Alt Text" -msgstr "" +msgstr "ALTテキスト" #: src/view/com/composer/photos/Gallery.tsx:224 msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "ALTテキストは、すべての人が文脈を理解できるようにするために、視覚障害者や低視力者向けに提供する画像の説明文です。" -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "メールが{0}に送信されました。以下に入力できる確認コードがそのメールに記載されています。" -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "以前のメールアドレス{0}にメールが送信されました。以下に入力できる確認コードがそのメールに記載されています。" -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "エラーが発生しました" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "メッセージ削除中にエラーが発生しました。再実行してみてください。" - -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "ほかの選択肢にはあてはまらない問題" @@ -365,16 +363,16 @@ msgstr "ほかの選択肢にはあてはまらない問題" msgid "An issue occurred, please try again." msgstr "問題が発生しました。もう一度お試しください。" -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" -msgstr "" +msgstr "何らかのエラーが発生しました" #: src/view/com/notifications/FeedItem.tsx:236 #: src/view/com/threadgate/WhoCanReply.tsx:180 msgid "and" msgstr "および" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "動物" @@ -382,7 +380,7 @@ msgstr "動物" msgid "Animated GIF" msgstr "アニメーションGIF" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "反社会的な行動" @@ -390,70 +388,79 @@ msgstr "反社会的な行動" msgid "App Language" msgstr "アプリの言語" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "アプリパスワードを削除しました" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "アプリパスワードの名前には、英数字、スペース、ハイフン、アンダースコアのみが使用可能です。" -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "アプリパスワードの名前は長さが4文字以上である必要があります。" -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "アプリパスワードの設定" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "アプリパスワード" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "異議を申し立てる" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "「{0}」のラベルに異議を申し立てる" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" -msgstr "" +msgstr "異議申し立てを提出しました" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 -#~ msgid "Appeal submitted." -#~ msgstr "異議申し立てを提出しました。" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "この決定に異議を申し立てる" -#: src/view/screens/Settings/index.tsx:430 +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "背景" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "デフォルトのおすすめフィードを追加" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "アプリパスワード「{name}」を本当に削除しますか?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "このメッセージを本当に削除しますか?このメッセージはあなたからは削除したように見えますが、他の参加者からは削除されません。" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." msgstr "この会話から退出しますか?あなたのメッセージはあなたからは削除したように見えますが、他の参加者からは削除されません。" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "あなたのフィードから{0}を削除してもよろしいですか?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "本当にこの下書きを破棄しますか?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "本当によろしいですか?" @@ -461,11 +468,11 @@ msgstr "本当によろしいですか?" msgid "Are you writing in <0>{0}?" msgstr "<0>{0}で書かれた投稿ですか?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "アート" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "芸術的または性的ではないヌード。" @@ -473,18 +480,20 @@ msgstr "芸術的または性的ではないヌード。" msgid "At least 3 characters" msgstr "少なくとも3文字" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -494,7 +503,7 @@ msgstr "戻る" msgid "Based on your interest in {interestsText}" msgstr "{interestsText}への興味に基づいたおすすめ" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "基本" @@ -502,17 +511,17 @@ msgstr "基本" msgid "Birthday" msgstr "生年月日" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "生年月日:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "ブロック" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" msgstr "アカウントをブロック" @@ -525,15 +534,15 @@ msgstr "アカウントをブロック" msgid "Block Account?" msgstr "アカウントをブロックしますか?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "アカウントをブロック" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "リストをブロック" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "これらのアカウントをブロックしますか?" @@ -559,21 +568,21 @@ msgstr "ブロック中のアカウントは、あなたのスレッドでの返 msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "ブロック中のアカウントは、あなたのスレッドでの返信、あなたへのメンション、その他の方法であなたとやり取りすることはできません。あなたは相手のコンテンツを見ることができず、相手はあなたのコンテンツを見ることができなくなります。" -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "投稿をブロックしました。" -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." -msgstr "ブロックしてもこのラベラーがあなたのアカウントにラベルを貼ることができます。" +msgstr "ブロックしてもこのラベラーがあなたのアカウントにラベルを適用することができます。" -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "ブロックしたことは公開されます。ブロック中のアカウントは、あなたのスレッドでの返信、あなたへのメンション、その他の方法であなたとやり取りすることはできません。" #: src/view/com/profile/ProfileMenu.tsx:353 msgid "Blocking will not prevent labels from being applied on your account, but it will stop this account from replying in your threads or interacting with you." -msgstr "ブロックしてもこのラベラーがあなたのアカウントにラベルを貼ることができますが、このアカウントがあなたのスレッドに返信したり、やりとりをしたりといったことはできなくなります。" +msgstr "ブロックしてもこのラベラーがあなたのアカウントにラベルを適用することができますが、このアカウントがあなたのスレッドに返信したり、やりとりをしたりといったことはできなくなります。" #: src/view/com/auth/SplashScreen.web.tsx:154 msgid "Blog" @@ -600,10 +609,15 @@ msgstr "画像をぼかす" msgid "Blur images and filter from feeds" msgstr "画像のぼかしとフィードからのフィルタリング" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "書籍" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "他のフィードを見る" + #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "ビジネス" @@ -618,7 +632,7 @@ msgstr "作成者:{0}" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:112 msgid "by @{0}" -msgstr "" +msgstr "作成者:@{0}" #: src/view/com/profile/ProfileSubpageHeader.tsx:161 msgid "by <0/>" @@ -636,7 +650,7 @@ msgstr "作成者:あなた" msgid "Camera" msgstr "カメラ" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "英数字、スペース、ハイフン、アンダースコアのみが使用可能です。長さは4文字以上32文字以下である必要があります。" @@ -644,11 +658,11 @@ msgstr "英数字、スペース、ハイフン、アンダースコアのみが #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -660,26 +674,26 @@ msgstr "英数字、スペース、ハイフン、アンダースコアのみが #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "キャンセル" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "キャンセル" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "アカウントの削除をキャンセル" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "ハンドルの変更をキャンセル" @@ -704,34 +718,34 @@ msgstr "検索をキャンセル" msgid "Cancels opening the linked website" msgstr "リンク先のウェブサイトを開くことをキャンセル" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "変更" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "変更" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "ハンドルを変更" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "ハンドルを変更" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "メールアドレスを変更" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "パスワードを変更" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "パスワードを変更" @@ -739,24 +753,34 @@ msgstr "パスワードを変更" msgid "Change post language to {0}" msgstr "投稿の言語を{0}に変更します" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "メールアドレスを変更" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" msgstr "チャット" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" msgstr "チャットをミュートしました" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" msgstr "チャットの設定" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "チャットの設定" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" msgstr "チャットのミュートを解除しました" @@ -765,11 +789,11 @@ msgstr "チャットのミュートを解除しました" msgid "Check my status" msgstr "ステータスを確認" -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "確認コードが記載されたメールを確認し、ここに入力してください。" -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "入力したメールアドレスの受信トレイを確認して、以下に入力するための確認コードが記載されたメールが届いていないか確認してください:" @@ -781,10 +805,14 @@ msgstr "「全員」か「返信不可」のどちらかを選択" msgid "Choose Service" msgstr "サービスを選択" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "カスタムフィードのアルゴリズムを選択できます。" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "この色をアバターとして選択" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "メインのフィードを選択" @@ -793,19 +821,19 @@ msgstr "メインのフィードを選択" msgid "Choose your password" msgstr "パスワードを入力" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "レガシーストレージデータをすべてクリア" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "すべてのレガシーストレージデータをクリア(このあと再起動します)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "すべてのストレージデータをクリア" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "すべてのストレージデータをクリア(このあと再起動します)" @@ -814,11 +842,11 @@ msgstr "すべてのストレージデータをクリア(このあと再起動 msgid "Clear search query" msgstr "検索クエリをクリア" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "すべてのレガシーストレージデータをクリア" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "すべてのストレージデータをクリア" @@ -830,19 +858,28 @@ msgstr "こちらをクリック" msgid "Click here to open tag menu for {tag}" msgstr "{tag}のタグメニューをクリックして表示" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "送信失敗したメッセージを再送信" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "気象" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "パカラッ 🐴 パカラッ 🐴" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "閉じる" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "アクティブなダイアログを閉じる" @@ -854,7 +891,7 @@ msgstr "アラートを閉じる" msgid "Close bottom drawer" msgstr "一番下の引き出しを閉じる" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "ダイアログを閉じる" @@ -870,6 +907,10 @@ msgstr "画像を閉じる" msgid "Close image viewer" msgstr "画像ビューアを閉じる" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "モーダルを閉じる" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "ナビゲーションフッターを閉じる" @@ -887,7 +928,7 @@ msgstr "下部のナビゲーションバーを閉じる" msgid "Closes password update alert" msgstr "パスワード更新アラートを閉じる" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "投稿の編集画面を閉じて下書きを削除する" @@ -899,11 +940,11 @@ msgstr "ヘッダー画像のビューワーを閉じる" msgid "Collapses list of users for a given notification" msgstr "指定した通知のユーザーリストを折りたたむ" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "コメディー" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "漫画" @@ -912,7 +953,7 @@ msgstr "漫画" msgid "Community Guidelines" msgstr "コミュニティーガイドライン" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "初期設定を完了してアカウントを使い始める" @@ -920,7 +961,7 @@ msgstr "初期設定を完了してアカウントを使い始める" msgid "Complete the challenge" msgstr "テストをクリアしてください" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "{MAX_GRAPHEME_LENGTH}文字までの投稿を作成" @@ -942,18 +983,18 @@ msgstr "<0>モデレーションの設定で設定されています。" #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "確認" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "変更を確認" @@ -961,7 +1002,7 @@ msgstr "変更を確認" msgid "Confirm content language settings" msgstr "コンテンツの言語設定を確認" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "アカウントの削除を確認" @@ -973,17 +1014,17 @@ msgstr "年齢の確認:" msgid "Confirm your birthdate" msgstr "生年月日の確認" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "確認コード" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "接続中..." @@ -991,10 +1032,6 @@ msgstr "接続中..." msgid "Contact support" msgstr "サポートに連絡" -#: src/components/moderation/LabelsOnMe.tsx:42 -#~ msgid "content" -#~ msgstr "コンテンツ" - #: src/lib/moderation/useGlobalLabelStrings.ts:18 msgid "Content Blocked" msgstr "ブロックされたコンテンツ" @@ -1030,8 +1067,9 @@ msgstr "コンテキストメニューの背景をクリックし、メニュー #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "続行" @@ -1041,8 +1079,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "{0}として続行 (現在サインイン中)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1056,22 +1095,26 @@ msgstr "次のステップへ進む" msgid "Continue to the next step without following any accounts" msgstr "アカウントをフォローせずに次のステップへ進む" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "会話が削除されました" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "料理" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "コピーしました" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "ビルドバージョンをクリップボードにコピーしました" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1081,15 +1124,15 @@ msgstr "クリップボードにコピーしました" msgid "Copied!" msgstr "コピーしました!" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "アプリパスワードをコピーします" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "コピー" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "{0}をコピー" @@ -1098,7 +1141,7 @@ msgstr "{0}をコピー" msgid "Copy code" msgstr "コードをコピー" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "リストへのリンクをコピー" @@ -1107,8 +1150,8 @@ msgstr "リストへのリンクをコピー" msgid "Copy link to post" msgstr "投稿へのリンクをコピー" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" msgstr "メッセージのテキストをコピー" @@ -1122,36 +1165,28 @@ msgstr "投稿のテキストをコピー" msgid "Copyright Policy" msgstr "著作権ポリシー" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" msgstr "チャットからの退出に失敗しました" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "フィードの読み込みに失敗しました" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "リストの読み込みに失敗しました" -#: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "プロフィールの読み込みに失敗しました。時間をおいてもう一度お試しください。" - -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" msgstr "チャットのミュートに失敗しました" -#: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "チャットのミュートの解除に失敗しました" - #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "新しいアカウントを作成" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "新しいBlueskyアカウントを作成" @@ -1164,7 +1199,11 @@ msgstr "アカウントを作成" msgid "Create an account" msgstr "アカウントを作成" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "代わりにアバターを作成" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "アプリパスワードを作成" @@ -1173,15 +1212,15 @@ msgstr "アプリパスワードを作成" msgid "Create new account" msgstr "新しいアカウントを作成" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "{0}の報告を作成" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "{0}に作成" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "文化" @@ -1190,12 +1229,12 @@ msgstr "文化" msgid "Custom" msgstr "カスタム" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "カスタムドメイン" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "コミュニティーによって作成されたカスタムフィードは、あなたに新しい体験をもたらし、あなたが好きなコンテンツを見つけるのに役立ちます。" @@ -1203,8 +1242,8 @@ msgstr "コミュニティーによって作成されたカスタムフィード msgid "Customize media from external sites." msgstr "外部サイトのメディアをカスタマイズします。" -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "ダーク" @@ -1212,7 +1251,7 @@ msgstr "ダーク" msgid "Dark mode" msgstr "ダークモード" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "ダークテーマ" @@ -1220,7 +1259,7 @@ msgstr "ダークテーマ" msgid "Date of birth" msgstr "生年月日" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "モデレーションをデバッグ" @@ -1228,54 +1267,55 @@ msgstr "モデレーションをデバッグ" msgid "Debug panel" msgstr "デバッグパネル" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "削除" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "アカウントを削除" -#: src/view/com/modals/DeleteAccount.tsx:87 -#~ msgid "Delete Account" -#~ msgstr "アカウントを削除" - -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" -msgstr "" +msgstr "アカウント<0>「<1>{0}<2>」を削除" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "アプリパスワードを削除" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "アプリパスワードを削除しますか?" -#: src/components/dms/MessageMenu.tsx:101 +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" +msgstr "チャットの宣言レコードを削除" + +#: src/components/dms/MessageMenu.tsx:99 msgid "Delete for me" msgstr "自分宛を削除" -#: src/view/screens/ProfileList.tsx:417 +#: src/view/screens/ProfileList.tsx:470 msgid "Delete List" msgstr "リストを削除" -#: src/components/dms/MessageMenu.tsx:119 +#: src/components/dms/MessageMenu.tsx:122 msgid "Delete message" msgstr "メッセージを削除" -#: src/components/dms/MessageMenu.tsx:99 +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" msgstr "メッセージの宛先から自分を削除" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "マイアカウントを削除" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "マイアカウントを削除…" @@ -1284,7 +1324,7 @@ msgstr "マイアカウントを削除…" msgid "Delete post" msgstr "投稿を削除" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "このリストを削除しますか?" @@ -1296,10 +1336,14 @@ msgstr "この投稿を削除しますか?" msgid "Deleted" msgstr "削除されています" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "投稿を削除しました。" +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "チャットの宣言レコードを削除する" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1307,23 +1351,27 @@ msgstr "投稿を削除しました。" msgid "Description" msgstr "説明" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" -msgstr "" +msgstr "説明的なALTテキスト" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "なにか言いたいことはあった?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "グレー" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "ダイレクトメッセージはこちら!" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "GIFを自動再生しない" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "メールでの2要素認証を無効化" @@ -1334,15 +1382,17 @@ msgstr "触覚フィードバックを無効化" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "無効" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "破棄" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "下書きを削除しますか?" @@ -1356,7 +1406,7 @@ msgstr "アプリがログアウトしたユーザーに自分のアカウント msgid "Discover new custom feeds" msgstr "新しいカスタムフィードを見つける" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "新しいフィードを探す" @@ -1368,7 +1418,7 @@ msgstr "表示名" msgid "Display Name" msgstr "表示名" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "DNSパネルがある場合" @@ -1380,11 +1430,11 @@ msgstr "ヌードは含まれません。" msgid "Doesn't begin or end with a hyphen" msgstr "ハイフンで始まったり終ったりしない" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "ドメインの値" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "ドメインを確認しました!" @@ -1392,23 +1442,23 @@ msgstr "ドメインを確認しました!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "完了" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1422,8 +1472,8 @@ msgstr "完了" msgid "Done{extraText}" msgstr "完了{extraText}" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "CARファイルをダウンロード" @@ -1435,7 +1485,7 @@ msgstr "ドロップして画像を追加する" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "Appleのポリシーにより、成人向けコンテンツはサインアップ完了後にウェブ上でのみ有効にすることができます。" -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "例:太郎" @@ -1443,7 +1493,7 @@ msgstr "例:太郎" msgid "e.g. Alice Roberts" msgstr "例:山田 太郎" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "例:taro.com" @@ -1480,7 +1530,7 @@ msgctxt "action" msgid "Edit" msgstr "編集" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "アバターを編集" @@ -1490,7 +1540,7 @@ msgstr "アバターを編集" msgid "Edit image" msgstr "画像を編集" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "リストの詳細を編集" @@ -1499,8 +1549,8 @@ msgid "Edit Moderation List" msgstr "モデレーションリストを編集" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "マイフィードを編集" @@ -1508,18 +1558,18 @@ msgstr "マイフィードを編集" msgid "Edit my profile" msgstr "マイプロフィールを編集" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "プロフィールを編集" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "プロフィールを編集" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "保存されたフィードを編集" @@ -1535,16 +1585,16 @@ msgstr "あなたの表示名を編集します" msgid "Edit your profile description" msgstr "あなたのプロフィールの説明を編集します" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "教育" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "メールアドレス" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "メールでの2要素認証を無効にしました" @@ -1552,20 +1602,20 @@ msgstr "メールでの2要素認証を無効にしました" msgid "Email address" msgstr "メールアドレス" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "メールアドレスは更新されました" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "メールアドレスは更新されました" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "メールアドレスは認証されました" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "メールアドレス:" @@ -1609,7 +1659,7 @@ msgstr "外部メディアを有効にする" msgid "Enable media players for" msgstr "有効にするメディアプレイヤー" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "この設定を有効にすると、自分がフォローしているユーザーからの返信だけが表示されます。" @@ -1617,6 +1667,8 @@ msgstr "この設定を有効にすると、自分がフォローしているユ msgid "Enable this source only" msgstr "このソースのみ有効にする" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "有効" @@ -1625,7 +1677,7 @@ msgstr "有効" msgid "End of feed" msgstr "フィードの終わり" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "このアプリパスワードの名前を入力" @@ -1633,12 +1685,12 @@ msgstr "このアプリパスワードの名前を入力" msgid "Enter a password" msgstr "パスワードを入力" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "ワードまたはタグを入力" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "確認コードを入力してください" @@ -1646,7 +1698,7 @@ msgstr "確認コードを入力してください" msgid "Enter the code you received to change your password." msgstr "パスワードを変更するために受け取ったコードを入力してください。" -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "使用するドメインを入力してください" @@ -1663,11 +1715,11 @@ msgstr "生年月日を入力してください" msgid "Enter your email address" msgstr "メールアドレスを入力してください" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "上記に新しいメールアドレスを入力してください" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "以下に新しいメールアドレスを入力してください。" @@ -1675,11 +1727,15 @@ msgstr "以下に新しいメールアドレスを入力してください。" msgid "Enter your username and password" msgstr "ユーザー名とパスワードを入力してください" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "ファイルの保存中にエラーが発生しました" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "Captchaレスポンスの受信中にエラーが発生しました。" -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "エラー:" @@ -1688,15 +1744,30 @@ msgstr "エラー:" msgid "Everybody" msgstr "全員" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "誰でも返信可能" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "全員" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "過剰なメンションや返信" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "多すぎる、または不要なメッセージ" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "アカウントの削除処理を終了" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "ハンドルの変更を終了" @@ -1730,12 +1801,12 @@ msgstr "露骨な、または不愉快になる可能性のあるメディア。 msgid "Explicit sexual images." msgstr "露骨な性的画像。" -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "私のデータをエクスポートする" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "私のデータをエクスポートする" @@ -1751,16 +1822,16 @@ msgstr "外部メディアを有効にすると、それらのメディアのウ #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "外部メディアの設定" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "外部メディアの設定" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "アプリパスワードの作成に失敗しました。" @@ -1768,7 +1839,7 @@ msgstr "アプリパスワードの作成に失敗しました。" msgid "Failed to create the list. Check your internet connection and try again." msgstr "リストの作成に失敗しました。インターネットへの接続を確認の上、もう一度お試しください。" -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" msgstr "メッセージの削除に失敗しました" @@ -1776,47 +1847,60 @@ msgstr "メッセージの削除に失敗しました" msgid "Failed to delete post, please try again" msgstr "投稿の削除に失敗しました。もう一度お試しください。" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "GIFの読み込みに失敗しました" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." -msgstr "過去のメッセージの読み込みに失敗しました。" +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" +msgstr "過去のメッセージの読み込みに失敗しました" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "画像の保存に失敗しました:{0}" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "送信に失敗" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "異議申し立ての送信に失敗しました。再度試してください。" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "設定の更新に失敗しました" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "フィード" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "{0}によるフィード" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "フィードはオフラインです" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "フィードバック" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "フィード" -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "フィードはユーザーがプログラミングの専門知識を持って構築するカスタムアルゴリズムです。詳細については、<0/>を参照してください。" @@ -1824,15 +1908,19 @@ msgstr "フィードはユーザーがプログラミングの専門知識を持 msgid "Feeds can be topical as well!" msgstr "フィードには特定の話題に焦点を当てたものもあります!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "ファイルのコンテンツ" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "ファイルの保存に成功しました!" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "フィードからのフィルター" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "最後に" @@ -1846,7 +1934,7 @@ msgstr "フォローするアカウントを探す" msgid "Find posts and users on Bluesky" msgstr "投稿やユーザーをBlueskyで検索" -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "Followingフィードに表示されるコンテンツを調整します。" @@ -1854,11 +1942,11 @@ msgstr "Followingフィードに表示されるコンテンツを調整します msgid "Fine-tune the discussion threads." msgstr "ディスカッションスレッドを微調整します。" -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "フィットネス" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "柔軟です" @@ -1871,10 +1959,10 @@ msgstr "水平方向に反転" msgid "Flip vertically" msgstr "垂直方向に反転" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -1886,7 +1974,7 @@ msgid "Follow" msgstr "フォロー" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "{0}をフォロー" @@ -1916,41 +2004,43 @@ msgstr "{0}がフォロー中" msgid "Followed users" msgstr "自分がフォローしているユーザー" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "自分がフォローしているユーザーのみ" #: src/view/com/notifications/FeedItem.tsx:164 msgid "followed you" -msgstr "あなたをフォローしました" +msgstr "があなたをフォローしました" #: src/view/com/profile/ProfileFollowers.tsx:104 #: src/view/screens/ProfileFollowers.tsx:25 msgid "Followers" msgstr "フォロワー" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "フォロー中" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "{0}をフォローしています" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "Followingフィードの設定" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "Followingフィードの設定" @@ -1962,15 +2052,15 @@ msgstr "あなたをフォロー" msgid "Follows You" msgstr "あなたをフォロー" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "食べ物" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "セキュリティ上の理由から、あなたのメールアドレスに確認コードを送信する必要があります。" -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "セキュリティ上の理由から、これを再度表示することはできません。このパスワードを紛失した場合は、新しいパスワードを生成する必要があります。" @@ -1979,15 +2069,15 @@ msgstr "セキュリティ上の理由から、これを再度表示すること msgid "Forgot Password" msgstr "パスワードを忘れた" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "パスワードを忘れた?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "忘れた?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "望ましくないコンテンツを頻繁に投稿" @@ -1995,7 +2085,7 @@ msgstr "望ましくないコンテンツを頻繁に投稿" msgid "From @{sanitizedAuthor}" msgstr "@{sanitizedAuthor}による" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "<0/>から" @@ -2004,12 +2094,20 @@ msgstr "<0/>から" msgid "Gallery" msgstr "ギャラリー" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "始める" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "開始" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "プロフィールに顔をつける" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "法律または利用規約への明らかな違反" @@ -2018,9 +2116,9 @@ msgstr "法律または利用規約への明らかな違反" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "戻る" @@ -2028,13 +2126,14 @@ msgstr "戻る" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "戻る" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2049,16 +2148,20 @@ msgstr "ホームへ" msgid "Go Home" msgstr "ホームへ" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "{0}との会話へ" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "次へ" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" msgstr "プロフィールへ" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" msgstr "ユーザーのプロフィールへ移動" @@ -2066,7 +2169,7 @@ msgstr "ユーザーのプロフィールへ移動" msgid "Graphic Media" msgstr "生々しいメディア" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "ハンドル" @@ -2074,7 +2177,7 @@ msgstr "ハンドル" msgid "Haptics" msgstr "触覚フィードバック" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "嫌がらせ、荒らし、不寛容" @@ -2082,7 +2185,7 @@ msgstr "嫌がらせ、荒らし、不寛容" msgid "Hashtag" msgstr "ハッシュタグ" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "ハッシュタグ:#{tag}" @@ -2091,10 +2194,14 @@ msgid "Having trouble?" msgstr "なにか問題が発生しましたか?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "ヘルプ" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "画像をアップロードするかアバターを作ってあなたがbotではないことをみんなに知らせましょう。" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "あなたがフォローしそうなアカウントを紹介します" @@ -2107,13 +2214,13 @@ msgstr "人気のあるフィードを紹介します。好きなだけフォロ msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "{interestsText}への興味に基づいたおすすめです。好きなだけフォローすることができます。" -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "アプリパスワードをお知らせします。" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2135,7 +2242,7 @@ msgid "Hide post" msgstr "投稿を非表示" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "コンテンツを非表示" @@ -2147,23 +2254,23 @@ msgstr "この投稿を非表示にしますか?" msgid "Hide user list" msgstr "ユーザーリストを非表示" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "フィードサーバーに問い合わせたところ、なんらかの問題が発生しました。この問題をフィードのオーナーにお知らせください。" -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "フィードサーバーの設定が間違っているようです。この問題をフィードのオーナーにお知らせください。" -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "フィードサーバーがオフラインのようです。この問題をフィードのオーナーにお知らせください。" -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "フィードサーバーの反応が悪いようです。この問題をフィードのオーナーにお知らせください。" -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "このフィードが見つからないようです。もしかしたら削除されたのかもしれません。" @@ -2175,22 +2282,22 @@ msgstr "このデータの読み込みに問題があるようです。詳細は msgid "Hmmmm, we couldn't load that moderation service." msgstr "そのモデレーションサービスを読み込めませんでした。" -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "ホーム" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "ホスト:" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "ホスティングプロバイダー" @@ -2198,25 +2305,30 @@ msgstr "ホスティングプロバイダー" msgid "How should we open this link?" msgstr "このリンクをどのように開きますか?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "コードを持っています" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "確認コードを持っています" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "自分のドメインを持っています" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "理解した" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "ALTテキストが長い場合、ALTテキストの展開状態を切り替える" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "なにも選択しない場合は、全年齢対象です。" @@ -2224,7 +2336,7 @@ msgstr "なにも選択しない場合は、全年齢対象です。" msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "あなたがお住いの国の法律においてまだ成人していない場合は、親権者または法定後見人があなたに代わって本規約をお読みください。" -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "このリストを削除すると、復元できなくなります。" @@ -2236,7 +2348,7 @@ msgstr "この投稿を削除すると、復元できなくなります。" msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "パスワードを変更する場合は、あなたのアカウントであることを確認するためのコードをお送りします。" -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "違法かつ緊急" @@ -2244,23 +2356,27 @@ msgstr "違法かつ緊急" msgid "Image" msgstr "画像" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "画像のALTテキスト" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "なりすまし、または身元もしくは所属に関する虚偽の主張" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "不適切なメッセージ、または露骨なコンテンツへのリンク" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "パスワードをリセットするためにあなたのメールアドレスに送られたコードを入力" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "アカウント削除のために確認コードを入力" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "アプリパスワードの名前を入力" @@ -2268,27 +2384,27 @@ msgstr "アプリパスワードの名前を入力" msgid "Input new password" msgstr "新しいパスワードを入力" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "アカウント削除のためにパスワードを入力" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "メールで送られたコードを入力" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "{identifier}に紐づくパスワードを入力" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "サインアップ時に使用したユーザー名またはメールアドレスを入力" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "あなたのパスワードを入力" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "ご希望のホスティングプロバイダーを入力" @@ -2296,16 +2412,20 @@ msgstr "ご希望のホスティングプロバイダーを入力" msgid "Input your user handle" msgstr "あなたのユーザーハンドルを入力" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "ダイレクトメッセージの紹介" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "無効な2要素認証の確認コードです。" -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "無効またはサポートされていない投稿のレコード" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "無効なユーザー名またはパスワード" @@ -2317,7 +2437,7 @@ msgstr "友達を招待" msgid "Invite code" msgstr "招待コード" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "招待コードが確認できません。正しく入力されていることを確認し、もう一度実行してください。" @@ -2337,14 +2457,10 @@ msgstr "あなたがフォローしたユーザーの投稿が随時表示され msgid "Jobs" msgstr "仕事" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "報道" -#: src/components/moderation/LabelsOnMe.tsx:59 -#~ msgid "label has been placed on this {labelTarget}" -#~ msgstr "個のラベルがこの{labelTarget}に貼られました" - #: src/components/moderation/ContentHider.tsx:144 msgid "Labeled by {0}." msgstr "{0}によるラベル" @@ -2357,19 +2473,15 @@ msgstr "投稿者によるラベル。" msgid "Labels" msgstr "ラベル" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "ラベルは、ユーザーやコンテンツに対する注釈です。ラベルはネットワークを隠したり、警告したり、分類したりするのに使われます。" -#: src/components/moderation/LabelsOnMe.tsx:61 -#~ msgid "labels have been placed on this {labelTarget}" -#~ msgstr "個のラベルがこの{labelTarget}に貼られました" - -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "あなたのアカウントのラベル" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "あなたのコンテンツのラベル" @@ -2377,7 +2489,7 @@ msgstr "あなたのコンテンツのラベル" msgid "Language selection" msgstr "言語の選択" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "言語の設定" @@ -2386,7 +2498,7 @@ msgstr "言語の設定" msgid "Language Settings" msgstr "言語の設定" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "言語" @@ -2404,7 +2516,7 @@ msgstr "詳細" msgid "Learn more about the moderation applied to this content." msgstr "このコンテンツに適用されるモデレーションはこちらを参照してください。" -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "この警告の詳細" @@ -2417,13 +2529,20 @@ msgstr "Blueskyで公開されている内容はこちらを参照してくだ msgid "Learn more." msgstr "詳細。" -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" msgstr "退出" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "チャットを退出" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" msgstr "会話を退出" @@ -2439,7 +2558,7 @@ msgstr "Blueskyから離れる" msgid "left to go." msgstr "あと少しです。" -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "レガシーストレージがクリアされたため、今すぐアプリを再起動する必要があります。" @@ -2448,20 +2567,16 @@ msgstr "レガシーストレージがクリアされたため、今すぐアプ msgid "Let's get your password reset!" msgstr "パスワードをリセットしましょう!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "さあ始めましょう!" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "ライト" -#: src/view/com/util/post-ctrls/PostCtrls.tsx:197 -#~ msgid "Like" -#~ msgstr "いいね" - -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "このフィードをいいね" @@ -2477,33 +2592,19 @@ msgstr "いいねしたユーザー" msgid "Liked By" msgstr "いいねしたユーザー" -#: src/view/com/feeds/FeedSourceCard.tsx:268 -#~ msgid "Liked by {0} {1}" -#~ msgstr "{0} {1}にいいねされました" - -#: src/components/LabelingServiceCard/index.tsx:72 -#~ msgid "Liked by {count} {0}" -#~ msgstr "{count} {0}にいいねされました" - -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:287 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:301 -#: src/view/screens/ProfileFeed.tsx:600 -#~ msgid "Liked by {likeCount} {0}" -#~ msgstr "いいねしたユーザー:{likeCount}人" - #: src/view/com/notifications/FeedItem.tsx:168 msgid "liked your custom feed" -msgstr "あなたのカスタムフィードがいいねされました" +msgstr "があなたのカスタムフィードをいいねしました" #: src/view/com/notifications/FeedItem.tsx:153 msgid "liked your post" -msgstr "あなたの投稿がいいねされました" +msgstr "があなたの投稿をいいねしました" #: src/view/screens/Profile.tsx:196 msgid "Likes" msgstr "いいね" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "この投稿をいいねする" @@ -2515,19 +2616,19 @@ msgstr "リスト" msgid "List Avatar" msgstr "リストのアバター" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "リストをブロックしました" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "{0}によるリスト" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "リストを削除しました" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "リストをミュートしました" @@ -2535,31 +2636,35 @@ msgstr "リストをミュートしました" msgid "List Name" msgstr "リストの名前" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "リストのブロックを解除しました" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "リストのミュートを解除しました" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "リスト" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "このユーザーをブロックしているリスト:" + #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "最新の通知を読み込む" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "最新の投稿を読み込む" @@ -2586,7 +2691,7 @@ msgstr "ログアウトしたユーザーからの可視性" msgid "Login to account that is not listed" msgstr "リストにないアカウントにログイン" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "長押しで #{tag} のタグメニューを開く" @@ -2594,14 +2699,31 @@ msgstr "長押しで #{tag} のタグメニューを開く" msgid "Looks like XXXXX-XXXXX" msgstr "XXXXX-XXXXXみたいなもの" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "フィードを保存してないようですね!おすすめを使うか以下で探してみましょう。" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "すべてのフィードのピン留めを外したようですね。心配ありません、以下で追加できます 😄" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "Followingフィードを消したようです。<0>ここをクリックして追加。" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "意図した場所であることを確認してください!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "ミュートしたワードとタグの管理" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "既読にする" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2620,44 +2742,46 @@ msgstr "メンションされたユーザー" msgid "Menu" msgstr "メニュー" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "{0}へメッセージを送る" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" msgstr "メッセージは削除されました" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "サーバーからのメッセージ:{0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" msgstr "メッセージを入力するフィールド" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "メッセージが長すぎます" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "メッセージの設定" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "メッセージ" -#: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "メッセージの設定" - -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "誤解を招くアカウント" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "モデレーション" @@ -2670,13 +2794,13 @@ msgstr "モデレーションの詳細" msgid "Moderation list by {0}" msgstr "{0}の作成したモデレーションリスト" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "<0/>の作成したモデレーションリスト" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "あなたの作成したモデレーションリスト" @@ -2697,7 +2821,7 @@ msgstr "モデレーションリスト" msgid "Moderation Lists" msgstr "モデレーションリスト" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "モデレーションの設定" @@ -2718,11 +2842,11 @@ msgstr "モデレーターによりコンテンツに一般的な警告が設定 msgid "More" msgstr "さらに" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "その他のフィード" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "その他のオプション" @@ -2743,7 +2867,7 @@ msgstr "{truncatedTag}をミュート" msgid "Mute Account" msgstr "アカウントをミュート" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "アカウントをミュート" @@ -2751,32 +2875,32 @@ msgstr "アカウントをミュート" msgid "Mute all {displayTag} posts" msgstr "{displayTag}のすべての投稿をミュート" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "会話をミュート" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "タグのみをミュート" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "テキストとタグをミュート" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "リストをミュート" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "通知をミュート" - -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "これらのアカウントをミュートしますか?" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "投稿のテキストやタグでこのワードをミュート" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "タグのみでこのワードをミュート" @@ -2815,7 +2939,7 @@ msgstr "「{0}」によってミュート中" msgid "Muted words & tags" msgstr "ミュートしたワードとタグ" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "ミュートの設定は非公開です。ミュート中のアカウントはあなたと引き続き関わることができますが、そのアカウントの投稿や通知を受信することはできません。" @@ -2824,23 +2948,23 @@ msgstr "ミュートの設定は非公開です。ミュート中のアカウン msgid "My Birthday" msgstr "生年月日" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "マイフィード" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "マイプロフィール" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "保存されたフィード" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "保存されたフィード" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "名前" @@ -2849,35 +2973,35 @@ msgstr "名前" msgid "Name is required" msgstr "名前は必須です" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "名前または説明がコミュニティ基準に違反" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "自然" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "次の画面に移動します" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "あなたのプロフィールに移動します" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "著作権侵害を報告する必要がありますか?" -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "フォロワーやデータへのアクセスを失うことはありません。" -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "気にせずにハンドルを作成" @@ -2890,12 +3014,16 @@ msgstr "新規" msgid "New" msgstr "新規" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" msgstr "新しいチャット" +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "新しいメッセージ" + #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" msgstr "新しいモデレーションリスト" @@ -2908,22 +3036,22 @@ msgstr "新しいパスワード" msgid "New Password" msgstr "新しいパスワード" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "新しい投稿" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "新しい投稿" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "新しい投稿" @@ -2936,14 +3064,14 @@ msgstr "新しいユーザーリスト" msgid "Newest replies first" msgstr "新しい順に返信を表示" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "ニュース" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -2956,29 +3084,33 @@ msgstr "次へ" msgid "Next image" msgstr "次の画像" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "いいえ" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/screens/Messages/List/index.tsx:150 +#~ msgid "No chats yet" +#~ msgstr "チャットがまだありません" + +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "説明はありません" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "DNSパネルがない場合" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "おすすめのGIFが見つかりません。Tenorに問題があるかもしれません。" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "{0}のフォローを解除しました" @@ -2986,25 +3118,39 @@ msgstr "{0}のフォローを解除しました" msgid "No longer than 253 characters" msgstr "253文字まで" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" msgstr "メッセージはありません" +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "これ以上表示できる会話はありません" + #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "お知らせはありません!" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "誰からも受け取らない" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "結果はありません" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "結果はありません" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "結果は見つかりません" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "「{query}」の検索結果はありません" @@ -3014,14 +3160,10 @@ msgstr "「{query}」の検索結果はありません" msgid "No results found for {query}" msgstr "「{query}」の検索結果はありません" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "「{search}」の検索結果はありません。" -#: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "「{searchText}」の検索結果はありません。" - #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 msgid "No thanks" @@ -3031,6 +3173,10 @@ msgstr "結構です" msgid "Nobody" msgstr "返信不可" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "誰も返信できない" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3040,17 +3186,13 @@ msgstr "まだ誰もこれをいいねしていません。あなたが最初に msgid "Non-sexual Nudity" msgstr "性的ではないヌード" -#: src/view/com/modals/SelfLabel.tsx:135 -#~ msgid "Not Applicable." -#~ msgstr "該当なし。" - #: src/Navigation.tsx:116 #: src/view/screens/Profile.tsx:100 msgid "Not Found" msgstr "見つかりません" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "今はしない" @@ -3064,47 +3206,55 @@ msgstr "共有についての注意事項" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "注記:Blueskyはオープンでパブリックなネットワークです。この設定はBlueskyのアプリおよびウェブサイト上のみでのあなたのコンテンツの可視性を制限するものであり、他のアプリではこの設定を尊重しない場合があります。他のアプリやウェブサイトでは、ログアウトしたユーザーにあなたのコンテンツが表示される場合があります。" -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "何もありません" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "通知音" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "通知音" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "通知" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" msgstr "今" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "ヌード" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "ヌードあるいは成人向けコンテンツと表示されていないもの" -#: src/screens/Signup/index.tsx:145 -#~ msgid "of" -#~ msgstr "/" - #: src/lib/moderation/useLabelBehaviorDescription.ts:11 msgid "Off" msgstr "オフ" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "ちょっと!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "ちょっと!なにかがおかしいです。" #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "OK" @@ -3116,14 +3266,18 @@ msgstr "OK" msgid "Oldest replies first" msgstr "古い順に返信を表示" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "オンボーディングのリセット" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "1つもしくは複数の画像にALTテキストがありません。" +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr ".jpgと.pngファイルのみに対応しています" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "{0}のみ返信可能" @@ -3132,33 +3286,46 @@ msgstr "{0}のみ返信可能" msgid "Only contains letters, numbers, and hyphens" msgstr "英数字とハイフンのみ" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "おっと、なにかが間違っているようです!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "おっと!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "開かれています" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "アバター・クリエイターを開く" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "会話のオプションを開く" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "絵文字を入力" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "フィードの設定メニューを開く" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "アプリ内ブラウザーでリンクを開く" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "メッセージのオプションを開く" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "ミュートしたワードとタグの設定を開く" @@ -3171,12 +3338,12 @@ msgstr "ナビゲーションを開く" msgid "Open post options menu" msgstr "投稿のオプションを開く" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "絵本のページを開く" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "システムのログを開く" @@ -3184,7 +3351,7 @@ msgstr "システムのログを開く" msgid "Opens {numItems} options" msgstr "{numItems}個のオプションを開く" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "アクセシビリティの設定を開く" @@ -3200,11 +3367,15 @@ msgstr "この通知内のユーザーの拡張リストを開く" msgid "Opens camera on device" msgstr "デバイスのカメラを開く" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "チャットの設定を開く" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "編集画面を開く" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "構成可能な言語設定を開く" @@ -3212,7 +3383,7 @@ msgstr "構成可能な言語設定を開く" msgid "Opens device photo gallery" msgstr "デバイスのフォトギャラリーを開く" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "外部コンテンツの埋め込みの設定を開く" @@ -3234,52 +3405,52 @@ msgstr "GIFの選択のダイアログを開く" msgid "Opens list of invite codes" msgstr "招待コードのリストを開く" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "アカウントの削除確認用の表示を開きます。メールアドレスのコードが必要です" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "Blueskyのパスワードを変更するためのモーダルを開く" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "新しいBlueskyのハンドルを選択するためのモーダルを開く" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "Blueskyのアカウントのデータ(リポジトリ)をダウンロードするためのモーダルを開く" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "メールアドレスの認証のためのモーダルを開く" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "カスタムドメインを使用するためのモーダルを開く" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "モデレーションの設定を開く" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "パスワードリセットのフォームを開く" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "保存されたフィードの編集画面を開く" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "保存されたすべてのフィードで画面を開く" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "アプリパスワードの設定を開く" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "Followingフィードの設定を開く" @@ -3287,20 +3458,16 @@ msgstr "Followingフィードの設定を開く" msgid "Opens the linked website" msgstr "リンク先のウェブサイトを開く" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "メッセージの設定のページを開く" - -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "ストーリーブックのページを開く" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "システムログのページを開く" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "スレッドの設定を開く" @@ -3308,7 +3475,8 @@ msgstr "スレッドの設定を開く" msgid "Option {0} of {numItems}" msgstr "{numItems}個中{0}目のオプション" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "オプションとして、以下に追加情報をご記入ください:" @@ -3316,7 +3484,7 @@ msgstr "オプションとして、以下に追加情報をご記入ください msgid "Or combine these options:" msgstr "または以下のオプションを組み合わせてください:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "その他" @@ -3328,7 +3496,11 @@ msgstr "その他のアカウント" msgid "Other..." msgstr "その他..." -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "モデレーターが報告をレビューし、Blueskyであなたがチャットにアクセスできないようにしました。" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "ページが見つかりません" @@ -3337,10 +3509,10 @@ msgstr "ページが見つかりません" msgid "Page Not Found" msgstr "ページが見つかりません" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "パスワード" @@ -3372,35 +3544,39 @@ msgstr "@{0}がフォロー中のユーザー" msgid "People following @{0}" msgstr "@{0}をフォロー中のユーザー" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "カメラへのアクセス権限が必要です。" -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "カメラへのアクセスが拒否されました。システムの設定で有効にしてください。" -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "ペット" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "成人向けの画像です。" -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "ホームにピン留め" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "ホームにピン留め" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "ピン留めされたフィード" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "フィードにピン留めしました" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "再生" @@ -3409,6 +3585,11 @@ msgstr "再生" msgid "Play {0}" msgstr "{0}を再生" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "通知音を再生" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" msgstr "GIFの再生や一時停止" @@ -3422,78 +3603,83 @@ msgstr "動画を再生" msgid "Plays the GIF" msgstr "GIFを再生" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "ハンドルをお選びください。" -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "パスワードを選択してください。" -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "Captcha認証を完了してください。" -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "変更する前にメールを確認してください。これは、メールアップデートツールが追加されている間の一時的な要件であり、まもなく削除されます。" -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "アプリパスワードにつける名前を入力してください。すべてスペースとしてはいけません。" -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "このアプリパスワードに固有の名前を入力するか、ランダムに生成された名前を使用してください。" -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "ミュートにする有効な単語、タグ、フレーズを入力してください" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "メールアドレスを入力してください。" -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "パスワードも入力してください:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" -msgstr "{0}によって貼られたこのラベルが誤って適用されたと思われる理由を説明してください" +msgstr "{0}によって適用されたこのラベルが誤りであると思われる理由を説明してください" + +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "チャットが間違って無効化されたと考える理由を説明してください" #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" msgstr "@{0}としてサインインしてください" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "メールアドレスを確認してください" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "リンクカードが読み込まれるまでお待ちください" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "政治" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "ポルノ" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "投稿" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "投稿" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "{0}による投稿" @@ -3507,7 +3693,7 @@ msgstr "@{0}による投稿" msgid "Post deleted" msgstr "投稿を削除" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "投稿を非表示" @@ -3529,8 +3715,8 @@ msgstr "投稿の言語" msgid "Post Languages" msgstr "投稿の言語" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "投稿が見つかりません" @@ -3542,11 +3728,11 @@ msgstr "投稿" msgid "Posts" msgstr "投稿" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "投稿はテキスト、タグ、またはその両方に基づいてミュートできます。" -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "非表示の投稿" @@ -3554,22 +3740,21 @@ msgstr "非表示の投稿" msgid "Potentially Misleading Link" msgstr "誤解を招く可能性のあるリンク" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "再接続してみる" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "ホスティングプロバイダーを変える" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "再実行する" -#: src/screens/Messages/Conversation/MessagesList.tsx:47 -#: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "再実行" - #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" msgstr "前の画像" @@ -3582,7 +3767,7 @@ msgstr "第一言語" msgid "Prioritize Your Follows" msgstr "あなたのフォローを優先" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "プライバシー" @@ -3590,25 +3775,29 @@ msgstr "プライバシー" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "プライバシーポリシー" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "他のユーザーとプライベートにチャットします。" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "処理中..." -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "プロフィール" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "プロフィール" @@ -3616,11 +3805,11 @@ msgstr "プロフィール" msgid "Profile updated" msgstr "プロフィールを更新しました" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "メールアドレスを確認してアカウントを保護します。" -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "公開されています" @@ -3632,11 +3821,11 @@ msgstr "ユーザーを一括でミュートまたはブロックする、公開 msgid "Public, shareable lists which can drive feeds." msgstr "フィードとして利用できる、公開された共有可能なリスト。" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "投稿を公開" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "返信を公開" @@ -3662,16 +3851,28 @@ msgstr "ランダムな順番で表示(別名「投稿者のルーレット」 msgid "Ratios" msgstr "比率" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "理由:" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "検索履歴" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "再接続" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "会話を再読み込み" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "削除" @@ -3679,7 +3880,7 @@ msgstr "削除" msgid "Remove account" msgstr "アカウントを削除" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "アバターを削除" @@ -3687,22 +3888,25 @@ msgstr "アバターを削除" msgid "Remove Banner" msgstr "バナーを削除" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "フィードを削除" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "フィードを削除しますか?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "マイフィードから削除" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "マイフィードから削除しますか?" @@ -3714,7 +3918,7 @@ msgstr "イメージを削除" msgid "Remove image preview" msgstr "イメージプレビューを削除" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "リストからミュートワードを削除" @@ -3726,7 +3930,7 @@ msgstr "引用を削除" msgid "Remove repost" msgstr "リポストを削除" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "保存したフィードからこのフィードを削除" @@ -3735,11 +3939,13 @@ msgstr "保存したフィードからこのフィードを削除" msgid "Removed from list" msgstr "リストから削除されました" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "フィードから削除しました" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "あなたのフィードから削除しました" @@ -3751,6 +3957,11 @@ msgstr "{0}からデフォルトのサムネイルを削除" msgid "Removes quoted post" msgstr "引用を削除する" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "Discoverで置き換える" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "返信" @@ -3759,49 +3970,52 @@ msgstr "返信" msgid "Replies to this thread are disabled" msgstr "このスレッドへの返信はできません" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "返信" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "返信のフィルター" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "<0><1/>に返信" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" msgstr "報告" -#: src/components/dms/ConvoMenu.tsx:146 -#: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "アカウントを報告" - #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "アカウントを報告" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "会話を報告" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "報告ダイアログ" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "フィードを報告" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "リストを報告" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" msgstr "メッセージを報告" @@ -3810,30 +4024,41 @@ msgstr "メッセージを報告" msgid "Report post" msgstr "投稿を報告" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/dms/ReportDialog.tsx:167 +#: src/components/ReportDialog/SelectReportOptionView.tsx:62 +#~ msgid "Report this account" +#~ msgstr "このアカウントを報告" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "このコンテンツを報告" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "このフィードを報告" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "このリストを報告" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "このメッセージを報告" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "この投稿を報告" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "このユーザーを報告" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "リポスト" @@ -3851,24 +4076,24 @@ msgstr "リポストまたは引用" msgid "Reposted By" msgstr "リポストしたユーザー" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "{0}にリポストされた" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "<0><1/>がリポスト" #: src/view/com/notifications/FeedItem.tsx:160 msgid "reposted your post" -msgstr "あなたの投稿はリポストされました" +msgstr "があなたの投稿をリポストしました" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "この投稿をリポスト" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "変更を要求" @@ -3881,7 +4106,7 @@ msgstr "コードをリクエスト" msgid "Require alt text before posting" msgstr "画像投稿時にALTテキストを必須とする" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "アカウントにログインする時にメールのコードを必須とする" @@ -3889,8 +4114,8 @@ msgstr "アカウントにログインする時にメールのコードを必須 msgid "Required for this provider" msgstr "このプロバイダーに必要" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "メールを再送" @@ -3902,8 +4127,8 @@ msgstr "リセットコード" msgid "Reset Code" msgstr "リセットコード" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "オンボーディングの状態をリセット" @@ -3911,20 +4136,20 @@ msgstr "オンボーディングの状態をリセット" msgid "Reset password" msgstr "パスワードをリセット" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "設定をリセット" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "オンボーディングの状態をリセットします" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "設定の状態をリセットします" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "ログインをやり直す" @@ -3933,25 +4158,22 @@ msgstr "ログインをやり直す" msgid "Retries the last action, which errored out" msgstr "エラーになった最後のアクションをやり直す" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 msgid "Retry" msgstr "再試行" -#: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "再試行。" - #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "前のページに戻る" @@ -3960,26 +4182,26 @@ msgid "Returns to home page" msgstr "ホームページに戻る" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "前のページに戻る" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "保存" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "保存" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "ALTテキストを保存" @@ -3991,7 +4213,7 @@ msgstr "生年月日を保存" msgid "Save Changes" msgstr "変更を保存" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "ハンドルの変更を保存" @@ -3999,24 +4221,21 @@ msgstr "ハンドルの変更を保存" msgid "Save image crop" msgstr "画像の切り抜きを保存" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "マイフィードに保存" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "保存されたフィード" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" -msgstr "" +msgstr "カメラロールに保存しました" -#: src/view/com/lightbox/Lightbox.tsx:81 -#~ msgid "Saved to your camera roll." -#~ msgstr "カメラロールに保存しました。" - -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "フィードを保存しました" @@ -4024,7 +4243,7 @@ msgstr "フィードを保存しました" msgid "Saves any changes to your profile" msgstr "プロフィールに加えた変更を保存します" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "{handle}へのハンドルの変更を保存" @@ -4032,16 +4251,20 @@ msgstr "{handle}へのハンドルの変更を保存" msgid "Saves image crop settings" msgstr "画像の切り抜き設定を保存" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "よろしく!" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "科学" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "一番上までスクロール" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4049,12 +4272,12 @@ msgstr "一番上までスクロール" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "検索" @@ -4074,10 +4297,6 @@ msgstr "{displayTag}のすべての投稿を検索(@{authorHandle}のみ)" msgid "Search for all posts with tag {displayTag}" msgstr "{displayTag}のすべての投稿を検索(すべてのユーザー)" -#: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "会話を始める相手を検索。" - #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 #: src/view/com/modals/ListAddRemoveUsers.tsx:70 @@ -4088,7 +4307,8 @@ msgstr "ユーザーを検索" msgid "Search GIFs" msgstr "GIFを検索" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" msgstr "プロフィールを検索" @@ -4096,7 +4316,7 @@ msgstr "プロフィールを検索" msgid "Search Tenor" msgstr "Tenorを検索" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "必要なセキュリティの手順" @@ -4117,11 +4337,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "<0>{displayTag}の投稿を表示(このユーザーのみ)" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "プロフィールを表示" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "ガイドを見る" @@ -4129,10 +4349,22 @@ msgstr "ガイドを見る" msgid "Select {item}" msgstr "{item}を選択" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "色を選択" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "アカウントを選択" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "アバターを選択" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "絵文字を選択" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "既存のアカウントから選択" @@ -4141,7 +4373,7 @@ msgstr "既存のアカウントから選択" msgid "Select GIF" msgstr "GIFを選ぶ" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "GIF「{0}」を選ぶ" @@ -4161,7 +4393,11 @@ msgstr "{numItems}個中{i}個目のオプションを選択" msgid "Select some accounts below to follow" msgstr "次のアカウントを選択してフォローしてください" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "絵文字{emojiName}をアバターとして選択" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "報告先のモデレーションサービスを選んでください" @@ -4189,7 +4425,7 @@ msgstr "アプリに表示されるデフォルトのテキストの言語を選 msgid "Select your date of birth" msgstr "生年月日を選択" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "次のオプションから興味のあるものを選択してください" @@ -4205,32 +4441,38 @@ msgstr "1番目のフィードのアルゴリズムを選択してください msgid "Select your secondary algorithmic feeds" msgstr "2番目のフィードのアルゴリズムを選択してください" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "素敵なウェブサイトを送って!" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "確認のメールを送信" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "メールを送信" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "メールを送信" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "フィードバックを送信" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" msgstr "メッセージを送信" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "報告を送信" @@ -4238,12 +4480,12 @@ msgstr "報告を送信" msgid "Send report to {0}" msgstr "{0}に報告を送信" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "確認メールを送信" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "アカウントの削除の確認コードをメールに送信" @@ -4259,15 +4501,15 @@ msgstr "生年月日を設定" msgid "Set new password" msgstr "新しいパスワードを設定" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "フィード内の引用をすべて非表示にするには、この設定を「いいえ」にします。リポストは引き続き表示されます。" -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "フィード内の返信をすべて非表示にするには、この設定を「いいえ」にします。" -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "フィード内のリポストをすべて非表示にするには、この設定を「いいえ」にします。" @@ -4275,7 +4517,7 @@ msgstr "フィード内のリポストをすべて非表示にするには、こ msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "スレッド表示で返信を表示するには、この設定を「はい」にします。これは実験的な機能です。" -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "保存されたフィードから投稿を抽出してFollowingフィードに表示するには、この設定を「はい」にします。これは実験的な機能です。" @@ -4283,27 +4525,27 @@ msgstr "保存されたフィードから投稿を抽出してFollowingフィー msgid "Set up your account" msgstr "アカウントを設定する" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Blueskyのユーザーネームを設定" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "カラーテーマをダークに設定します" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "カラーテーマをライトに設定します" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "デバイスで設定したカラーテーマを使用するように設定します" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "ダークテーマを暗いものに設定します" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "ダークテーマを薄暗いものに設定します" @@ -4324,15 +4566,14 @@ msgid "Sets image aspect ratio to wide" msgstr "画像のアスペクト比をワイドに設定" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "設定" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "性的行為または性的なヌード。" @@ -4340,7 +4581,7 @@ msgstr "性的行為または性的なヌード。" msgid "Sexually Suggestive" msgstr "性的にきわどい" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "共有" @@ -4350,18 +4591,26 @@ msgstr "共有" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "共有" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "クールなストーリーをシェアして!" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "面白いことをシェアして!" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "とにかく共有" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "フィードを共有" @@ -4370,25 +4619,25 @@ msgstr "フィードを共有" msgid "Share Link" msgstr "リンクを共有" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "お気に入りのフィードをシェアして!" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "リンクしたウェブサイトを共有" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "表示" -#: src/view/screens/PreferencesFollowingFeed.tsx:68 -#~ msgid "Show all replies" -#~ msgstr "すべての返信を表示" - #: src/view/com/util/post-embeds/GifEmbed.tsx:167 msgid "Show alt text" -msgstr "" +msgstr "ALTテキストを表示" #: src/components/moderation/ScreenHider.tsx:169 #: src/components/moderation/ScreenHider.tsx:172 @@ -4404,31 +4653,39 @@ msgstr "バッジを表示" msgid "Show badge and filter from feeds" msgstr "バッジの表示とフィードからのフィルタリング" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "{0}に似たおすすめのフォロー候補を表示" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "隠れている返信を表示" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" -msgstr "" +msgstr "このような投稿の表示を減らす" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "さらに表示" #: src/view/com/util/forms/PostDropdownBtn.tsx:297 #: src/view/com/util/forms/PostDropdownBtn.tsx:299 msgid "Show more like this" -msgstr "" +msgstr "このような投稿の表示を増やす" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "ミュートした返信を表示" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "マイフィードからの投稿を表示" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "引用を表示" @@ -4444,7 +4701,7 @@ msgstr "Followingフィードで引用を表示" msgid "Show re-posts in Following feed" msgstr "Followingフィードでリポストを表示" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "返信を表示" @@ -4460,11 +4717,7 @@ msgstr "Followingフィードで返信を表示" msgid "Show replies in Following feed" msgstr "Followingフィードで返信を表示" -#: src/view/screens/PreferencesFollowingFeed.tsx:70 -#~ msgid "Show replies with at least {value} {0}" -#~ msgstr "{value}個以上の{0}がついた返信を表示" - -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "リポストを表示" @@ -4473,7 +4726,7 @@ msgid "Show reposts in Following" msgstr "Followingフィードでリポストを表示" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "コンテンツを表示" @@ -4497,17 +4750,17 @@ msgstr "マイフィード内の{0}からの投稿を表示します" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4530,17 +4783,17 @@ msgstr "会話に参加するにはサインインするか新しくアカウン msgid "Sign into Bluesky or create a new account" msgstr "Blueskyにサインイン または 新規アカウントの登録" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "サインアウト" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -4556,7 +4809,7 @@ msgstr "サインアップまたはサインインして会話に参加" msgid "Sign-in Required" msgstr "サインインが必要" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "サインイン済み" @@ -4565,27 +4818,35 @@ msgstr "サインイン済み" msgid "Signed in as @{0}" msgstr "@{0}でサインイン" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "スキップ" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "この手順をスキップする" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "ソフトウェア開発" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "一部の人が返信可能" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "何らかの問題が発生しました" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." msgstr "なにか間違っているようなので、もう一度お試しください。" -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "大変申し訳ありません!セッションの有効期限が切れました。もう一度ログインしてください。" @@ -4597,19 +4858,20 @@ msgstr "返信を並び替える" msgid "Sort replies to the same post by:" msgstr "次の方法で同じ投稿への返信を並び替えます。" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "ソース:" +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "ソース:<0>{0}" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "スパム" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "スパム、過剰なメンションや返信" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "スポーツ" @@ -4617,45 +4879,51 @@ msgstr "スポーツ" msgid "Square" msgstr "正方形" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" msgstr "新しいチャットを開始" -#: src/view/screens/Settings/index.tsx:896 +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "{displayName}とのチャットを開始" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "チャットを開始" + +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" msgstr "ステータスページ" -#: src/screens/Signup/index.tsx:145 -#~ msgid "Step" -#~ msgstr "ステップ" - #: src/screens/Signup/index.tsx:154 msgid "Step {0} of {1}" -msgstr "" +msgstr "ステップ {0} / {1}" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "ストレージがクリアされたため、今すぐアプリを再起動する必要があります。" #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "ストーリーブック" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "送信" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "登録" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "これらのラベルを使用するには@{0}を登録してください:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "ラベラーを登録する" @@ -4664,11 +4932,11 @@ msgstr "ラベラーを登録する" msgid "Subscribe to the {0} feed" msgstr "{0} フィードを登録" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "このラベラーを登録" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "このリストに登録" @@ -4680,7 +4948,7 @@ msgstr "おすすめのフォロー" msgid "Suggested for you" msgstr "あなたへのおすすめ" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "きわどい" @@ -4695,23 +4963,23 @@ msgstr "サポート" msgid "Switch Account" msgstr "アカウントを切り替える" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "{0}に切り替え" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "ログインしているアカウントを切り替えます" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "システム" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "システムログ" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "タグ" @@ -4727,41 +4995,47 @@ msgstr "トール" msgid "Tap to view fully" msgstr "タップして全体を表示" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "テクノロジー" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "ジョークを言って!" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "条件" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "利用規約" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "使用されている用語がコミュニティ基準に違反している" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "テキスト" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "テキストの入力フィールド" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "ありがとうございます。あなたの報告は送信されました。" -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "その内容は以下の通りです:" @@ -4769,15 +5043,11 @@ msgstr "その内容は以下の通りです:" msgid "That handle is already taken." msgstr "そのハンドルはすでに使用されています。" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "このアカウントは、ブロック解除後にあなたとやり取りすることができます。" -#: src/components/moderation/ModerationDetailsDialog.tsx:127 -#~ msgid "the author" -#~ msgstr "投稿者" - #: src/view/screens/CommunityGuidelines.tsx:36 msgid "The Community Guidelines have been moved to <0/>" msgstr "コミュニティーガイドラインは<0/>に移動しました" @@ -4786,11 +5056,15 @@ msgstr "コミュニティーガイドラインは<0/>に移動しました" msgid "The Copyright Policy has been moved to <0/>" msgstr "著作権ポリシーは<0/>に移動しました" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "フィードはDiscoverと置き換えられました。" + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "以下のラベルがあなたのアカウントに適用されました。" -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "以下のラベルがあなたのコンテンツに適用されました。" @@ -4798,8 +5072,8 @@ msgstr "以下のラベルがあなたのコンテンツに適用されました msgid "The following steps will help customize your Bluesky experience." msgstr "次の手順であなたのBlueskyでの体験をカスタマイズできます。" -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "投稿が削除された可能性があります。" @@ -4819,37 +5093,36 @@ msgstr "サービス規約は移動しました" msgid "There are many feeds to try:" msgstr "試せるフィードはたくさんあります:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "サーバーへの問い合わせ中に問題が発生しました。インターネットへの接続を確認の上、もう一度お試しください。" -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "フィードの削除中に問題が発生しました。インターネットへの接続を確認の上、もう一度お試しください。" -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "フィードの更新中に問題が発生しました。インターネットへの接続を確認の上、もう一度お試しください。" -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "Tenorへの接続中に問題が発生しました。" -#: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" - -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "サーバーへの問い合わせ中に問題が発生しました" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "サーバーへの問い合わせ中に問題が発生しました" @@ -4857,7 +5130,7 @@ msgstr "サーバーへの問い合わせ中に問題が発生しました" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "通知の取得中に問題が発生しました。もう一度試すにはこちらをタップしてください。" -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "投稿の取得中に問題が発生しました。もう一度試すにはこちらをタップしてください。" @@ -4870,7 +5143,8 @@ msgstr "リストの取得中に問題が発生しました。もう一度試す msgid "There was an issue fetching your lists. Tap here to try again." msgstr "リストの取得中に問題が発生しました。もう一度試すにはこちらをタップしてください。" -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "報告の送信に問題が発生しました。インターネットの接続を確認してください。" @@ -4878,32 +5152,32 @@ msgstr "報告の送信に問題が発生しました。インターネットの msgid "There was an issue syncing your preferences with the server" msgstr "設定をサーバーと同期中に問題が発生しました" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "アプリパスワードの取得中に問題が発生しました" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "問題が発生しました! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "問題が発生しました。インターネットへの接続を確認の上、もう一度お試しください。" -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "アプリケーションに予期しない問題が発生しました。このようなことが繰り返した場合はサポートへお知らせください!" @@ -4924,13 +5198,21 @@ msgstr "この{screenDescription}にはフラグが設定されています:" msgid "This account has requested that users sign in to view their profile." msgstr "このアカウントを閲覧するためにはサインインが必要です。" -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "このアカウントは1つ、あるいは複数のモデレーションリストでブロックされています。ブロックを解除するにはリストの画面に移動してこのユーザーをリストから外してください。" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "この申し立ては<0>{0}に送られます。" -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." -msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." +msgstr "この異議申し立てはBlueskyのモデレーション・サービスに送られます。" + +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "このチャットは切断されました" #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." @@ -4949,21 +5231,21 @@ msgstr "このコンテンツは{0}によってホストされています。外 msgid "This content is not available because one of the users involved has blocked the other." msgstr "このコンテンツは関係するユーザーの一方が他方をブロックしているため、利用できません。" -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "このコンテンツはBlueskyのアカウントがないと閲覧できません。" -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "この機能はベータ版です。リポジトリのエクスポートの詳細については、<0>このブログ投稿を参照してください。" -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "現在このフィードにはアクセスが集中しており、一時的にご利用いただけません。時間をおいてもう一度お試しください。" #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "このフィードは空です!" @@ -4971,27 +5253,31 @@ msgstr "このフィードは空です!" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "このフィードは空です!もっと多くのユーザーをフォローするか、言語の設定を調整する必要があるかもしれません。" +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "このフィードはもはやオンラインではありません。代わりに<0>Discoverを表示しています。" + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "この情報は他のユーザーと共有されません。" -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "これは、メールアドレスの変更やパスワードのリセットが必要な場合に重要です。" -#: src/components/moderation/ModerationDetailsDialog.tsx:124 -#~ msgid "This label was applied by {0}." -#~ msgstr "{0}によって適用されたラベルです。" - #: src/components/moderation/ModerationDetailsDialog.tsx:127 msgid "This label was applied by <0>{0}." -msgstr "" +msgstr "<0>{0}によって適用されたラベルです。" #: src/components/moderation/ModerationDetailsDialog.tsx:125 msgid "This label was applied by the author." -msgstr "" +msgstr "投稿者によって適用されたラベルです。" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "あなたによって適用されたラベルです。" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "このラベラーはどのようなラベルを発行しているか宣言しておらず、活動していない可能性もあります。" @@ -4999,7 +5285,7 @@ msgstr "このラベラーはどのようなラベルを発行しているか宣 msgid "This link is taking you to the following website:" msgstr "このリンクは次のウェブサイトへリンクしています:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "このリストは空です!" @@ -5007,11 +5293,11 @@ msgstr "このリストは空です!" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "このモデレーションのサービスはご利用できません。詳細は以下をご覧ください。この問題が解決しない場合は、サポートへお問い合わせください。" -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "この名前はすでに使用中です" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "この投稿は削除されました。" @@ -5032,7 +5318,7 @@ msgstr "このプロフィールはログインしているユーザーにのみ msgid "This service has not provided terms of service or a privacy policy." msgstr "このサービスには、利用規約もプライバシーポリシーもありません。" -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "右記にドメインレコードを作成されるはずです:" @@ -5040,6 +5326,10 @@ msgstr "右記にドメインレコードを作成されるはずです:" msgid "This user doesn't have any followers." msgstr "このユーザーにはフォロワーがいません。" +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "このユーザーはあなたをブロックしています" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5061,20 +5351,16 @@ msgstr "このユーザーはミュートした<0>{0}リストに含まれ msgid "This user isn't following anyone." msgstr "このユーザーは誰もフォローしていません。" -#: src/view/com/modals/SelfLabel.tsx:137 -#~ msgid "This warning is only available for posts with media attached." -#~ msgstr "この警告は、メディアが添付されている投稿にのみ使用できます。" - -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "ミュートしたワードから{0}が削除されます。あとでいつでも戻すことができます。" -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "スレッドの設定" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "スレッドの設定" @@ -5086,15 +5372,19 @@ msgstr "スレッドモード" msgid "Threads Preferences" msgstr "スレッドの設定" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "メールでの2要素認証を無効にするには、メールアドレスにアクセスできるか確認してください。" +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "会話を報告するには、会話の画面からメッセージのうちの一つを報告してください。それによって問題の文脈をモデレーターが理解できるようになります。" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "この報告を誰に送りたいですか?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "ミュートしたワードのオプションを切り替えます。" @@ -5127,60 +5417,69 @@ msgctxt "action" msgid "Try again" msgstr "再試行" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "2要素認証" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" msgstr "ここにメッセージを入力する" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "タイプ:" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "リストでのブロックを解除" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "リストでのミュートを解除" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "あなたのサービスに接続できません。インターネットの接続を確認してください。" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "ブロックを解除" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "ブロックを解除" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "アカウントのブロックを解除" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "アカウントのブロックを解除" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "アカウントのブロックを解除しますか?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "リポストを元に戻す" @@ -5194,7 +5493,7 @@ msgstr "フォローを解除" msgid "Unfollow" msgstr "フォローを解除" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "{0}のフォローを解除" @@ -5203,16 +5502,12 @@ msgstr "{0}のフォローを解除" msgid "Unfollow Account" msgstr "アカウントのフォローを解除" -#: src/view/com/util/post-ctrls/PostCtrls.tsx:197 -#~ msgid "Unlike" -#~ msgstr "いいねを外す" - -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "このフィードからいいねを外す" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "ミュートを解除" @@ -5229,37 +5524,42 @@ msgstr "アカウントのミュートを解除" msgid "Unmute all {displayTag} posts" msgstr "{displayTag}のすべての投稿のミュートを解除" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" -msgstr "通知のミュートを解除" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" +msgstr "会話のミュートを解除" #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "スレッドのミュートを解除" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "ピン留めを解除" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "ホームからピン留めを解除" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "モデレーションリストのピン留めを解除" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "フィードからピン留めを解除" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "登録を解除" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "このラベラーの登録を解除" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "望まない性的なコンテンツ" @@ -5267,7 +5567,7 @@ msgstr "望まない性的なコンテンツ" msgid "Update {displayName} in Lists" msgstr "リストの{displayName}を更新" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "{handle}に更新" @@ -5275,42 +5575,46 @@ msgstr "{handle}に更新" msgid "Updating..." msgstr "更新中…" -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "代わりに写真をアップロード" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "テキストファイルのアップロード先:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "カメラからアップロード" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "ファイルからアップロード" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "ライブラリーからアップロード" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "あなたのサーバーのファイルを使用" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "他のBlueskyクライアントにアカウントやパスワードに完全にアクセスする権限を与えずに、アプリパスワードを使ってログインします。" -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "ホスティングプロバイダーとしてbsky.socialを使用" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "デフォルトプロバイダーを使用" @@ -5324,11 +5628,15 @@ msgstr "アプリ内ブラウザーを使用" msgid "Use my default browser" msgstr "デフォルトのブラウザーを使用" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "おすすめを使う" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "DNSパネルを使用" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "このアプリパスワードとハンドルを使って他のアプリにサインインします。" @@ -5345,6 +5653,10 @@ msgstr "ブロック中のユーザー" msgid "User Blocked by \"{0}\"" msgstr "「{0}」によってブロックされたユーザー" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "リストによってブロック中のユーザー" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "リストによってブロック中のユーザー" @@ -5362,13 +5674,13 @@ msgstr "あなたをブロックしているユーザー" msgid "User list by {0}" msgstr "<0/>の作成したユーザーリスト" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "<0/>の作成したユーザーリスト" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "あなたの作成したユーザーリスト" @@ -5384,11 +5696,11 @@ msgstr "ユーザーリストを更新しました" msgid "User Lists" msgstr "ユーザーリスト" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "ユーザー名またはメールアドレス" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "ユーザー" @@ -5396,6 +5708,13 @@ msgstr "ユーザー" msgid "users followed by <0/>" msgstr "<0/>にフォローされているユーザー" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "フォローしているユーザー" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "{0}のユーザー" @@ -5404,52 +5723,48 @@ msgstr "{0}のユーザー" msgid "Users that have liked this content or profile" msgstr "このコンテンツやプロフィールにいいねをしているユーザー" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "値:" -#: src/view/com/modals/ChangeHandle.tsx:510 -#~ msgid "Verify {0}" -#~ msgstr "{0}で認証" - -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" -msgstr "" +msgstr "DNSレコードを確認" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "メールアドレスを確認" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "メールアドレスを確認" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "メールアドレスを確認" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "新しいメールアドレスを確認" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" -msgstr "" +msgstr "テキストファイルを確認" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "メールアドレスを確認" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" msgstr "バージョン {appVersion} {bundleInfo}" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "ビデオゲーム" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "{0}のアバターを表示" @@ -5457,25 +5772,25 @@ msgstr "{0}のアバターを表示" msgid "View debug entry" msgstr "デバッグエントリーを表示" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "詳細を表示" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "著作権侵害の報告の詳細を見る" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "スレッドをすべて表示" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "これらのラベルに関する情報を見る" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "プロフィールを表示" @@ -5487,7 +5802,7 @@ msgstr "アバターを表示" msgid "View the labeling service provided by @{0}" msgstr "@{0}によって提供されるラベリングサービスを見る" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "このフィードにいいねしたユーザーを見る" @@ -5515,11 +5830,15 @@ msgstr "コンテンツの警告とフィードからのフィルタリング" msgid "We couldn't find any results for that hashtag." msgstr "そのハッシュタグの検索結果は見つかりませんでした。" +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "この会話を読み込めませんでした" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "あなたのアカウントが準備できるまで{estimatedTime}ほどかかります。" -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "素敵なひとときをお過ごしください。覚えておいてください、Blueskyは:" @@ -5527,7 +5846,7 @@ msgstr "素敵なひとときをお過ごしください。覚えておいてく msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "あなたのフォロー中のユーザーの投稿を読み終わりました。フィード<0/>内の最新の投稿を表示します。" -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "投稿が表示されなくなる可能性があるため、多くの投稿に使われる一般的なワードは避けることをおすすめします。" @@ -5543,7 +5862,7 @@ msgstr "生年月日の設定を読み込むことはできませんでした。 msgid "We were unable to load your configured labelers at this time." msgstr "現在設定されたラベラーを読み込めません。" -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "接続できませんでした。アカウントの設定を続けるためにもう一度お試しください。繰り返し失敗する場合は、この手順をスキップすることもできます。" @@ -5551,10 +5870,14 @@ msgstr "接続できませんでした。アカウントの設定を続けるた msgid "We will let you know when your account is ready." msgstr "アカウントの準備ができたらお知らせします。" -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "これはあなたの体験をカスタマイズするために使用されます。" +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "ネットワークで問題が発生しています。再度試してください" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "私たちはあなたが参加してくれることをとても楽しみにしています!" @@ -5563,7 +5886,7 @@ msgstr "私たちはあなたが参加してくれることをとても楽しみ msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "大変申し訳ありませんが、このリストを解決できませんでした。それでもこの問題が解決しない場合は、作成者の@{handleOrDid}までお問い合わせください。" -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "大変申し訳ありませんが、現在ミュートされたワードを読み込むことができませんでした。もう一度お試しください。" @@ -5571,22 +5894,22 @@ msgstr "大変申し訳ありませんが、現在ミュートされたワード msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "大変申し訳ありませんが、検索を完了できませんでした。数分後に再試行してください。" -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "大変申し訳ありません!お探しのページは見つかりません。" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "大変申し訳ありません!ラベラーは10までしか登録できず、すでに上限に達しています。" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "なにに興味がありますか?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "最近どう?" @@ -5598,28 +5921,45 @@ msgstr "この投稿ではどの言語が使われていますか?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "アルゴリズムによるフィードにはどの言語を使用しますか?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "誰があなたへメッセージを送れるか?" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "返信できるユーザー" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "おっと!" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:63 +#~ msgid "Why should this account be reviewed?" +#~ msgstr "このアカウントはなぜレビューされるべきか?" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "なぜこのコンテンツをレビューする必要がありますか?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "なぜこのフィードをレビューする必要がありますか?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "なぜこのリストをレビューする必要がありますか?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "なぜこのメッセージをレビューする必要がありますか?" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "なぜこの投稿をレビューする必要がありますか?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "なぜこのユーザーをレビューする必要がありますか?" @@ -5627,35 +5967,35 @@ msgstr "なぜこのユーザーをレビューする必要がありますか? msgid "Wide" msgstr "ワイド" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" msgstr "メッセージを書く" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "投稿を書く" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "返信を書く" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "ライター" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "はい" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" msgstr "昨日、{time}" @@ -5676,6 +6016,14 @@ msgstr "また、あなたはフォローすべき新しいカスタムフィー msgid "You can change these settings later." msgstr "これらの設定はあとで変更できます。" +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "これはいつでも変更できます。" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "どの設定を選択しても進行中の会話は続けることができます。" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -5689,22 +6037,22 @@ msgstr "あなたはまだだれもフォロワーがいません。" msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "まだ招待コードがありません!Blueskyをもうしばらく利用したらお送りします。" -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "ピン留めされたフィードがありません。" -#: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "保存されたフィードがありません!" - -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "保存されたフィードがありません。" -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "あなたが投稿者をブロックしているか、または投稿者によってあなたはブロックされています。" +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "あなたはこのユーザーをブロックしました" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -5735,6 +6083,10 @@ msgstr "このアカウントをミュートしました。" msgid "You have muted this user" msgstr "このユーザーをミュートしました" +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "まだ会話していません。始めましょう!" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "フィードがありません。" @@ -5744,15 +6096,11 @@ msgstr "フィードがありません。" msgid "You have no lists." msgstr "リストがありません。" -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "メッセージがありません。誰かと会話を始めましょう!" - #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." msgstr "ブロック中のアカウントはまだありません。アカウントをブロックするには、ユーザーのプロフィールに移動し、アカウントメニューから「アカウントをブロック」を選択します。" -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "アプリパスワードはまだ作成されていません。下のボタンを押すと作成できます。" @@ -5760,13 +6108,21 @@ msgstr "アプリパスワードはまだ作成されていません。下のボ msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." msgstr "ミュートしているアカウントはまだありません。アカウントをミュートするには、プロフィールに移動し、アカウントメニューから「アカウントをミュート」を選択します。" -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "最後まで到達しました" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "まだワードやタグをミュートしていません" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "間違って適用されたと思うのであれば、自己申告ではないラベルならば異議申し立てができます。" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." -msgstr "これらのラベルが誤って貼られたと思った場合は、異議申し立てを行うことができます。" +msgstr "これらのラベルが誤って適用されたと思った場合は、異議申し立てを行うことができます。" #: src/screens/Signup/StepInfo/Policies.tsx:79 msgid "You must be 13 years of age or older to sign up." @@ -5776,7 +6132,7 @@ msgstr "サインアップするには、13歳以上である必要がありま msgid "You must be 18 years or older to enable adult content" msgstr "成人向けコンテンツを有効にするには、18歳以上である必要があります。" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "報告をするには少なくとも1つのラベラーを選択する必要があります" @@ -5792,7 +6148,7 @@ msgstr "これ以降、このスレッドに関する通知を受け取ること msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "「リセットコード」が記載されたメールが届きます。ここにコードを入力し、新しいパスワードを入力します。" -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" msgstr "あなた: {0}" @@ -5806,7 +6162,7 @@ msgstr "あなたがコントロールしています" msgid "You're in line" msgstr "あなたは並んでいます。" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "準備ができました!" @@ -5823,11 +6179,11 @@ msgstr "フィードはここまでです!もっとフォローするアカウ msgid "Your account" msgstr "あなたのアカウント" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "あなたのアカウントは削除されました" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "あなたのアカウントの公開データの全記録を含むリポジトリは、「CAR」ファイルとしてダウンロードできます。このファイルには、画像などのメディア埋め込み、また非公開のデータは含まれていないため、それらは個別に取得する必要があります。" @@ -5835,6 +6191,10 @@ msgstr "あなたのアカウントの公開データの全記録を含むリポ msgid "Your birth date" msgstr "生年月日" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "あなたのチャットは無効化されています" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "ここで選択した内容は保存されますが、あとから設定で変更できます。" @@ -5844,16 +6204,16 @@ msgid "Your default feed is \"Following\"" msgstr "あなたのデフォルトフィードは「Following」です" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "メールアドレスが無効なようです。" -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "メールアドレスは更新されましたが、確認されていません。次のステップとして、新しいメールアドレスを確認してください。" -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "メールアドレスはまだ確認されていません。これは、当社が推奨する重要なセキュリティステップです。" @@ -5865,11 +6225,11 @@ msgstr "Followingフィードは空です!もっと多くのユーザーをフ msgid "Your full handle will be" msgstr "フルハンドルは" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "フルハンドルは<0>@{0}になります" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "ミュートしたワード" @@ -5877,22 +6237,26 @@ msgstr "ミュートしたワード" msgid "Your password has been changed successfully!" msgstr "パスワードの変更が完了しました!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "投稿を公開しました" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "投稿、いいね、ブロックは公開されます。ミュートは非公開です。" -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "あなたのプロフィール" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "返信を公開しました" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "あなたの報告はBluesky Moderation Serviceに送られます" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "あなたのユーザーハンドル" diff --git a/src/locale/locales/ko/messages.po b/src/locale/locales/ko/messages.po index 4c897ce005..5387cab6c2 100644 --- a/src/locale/locales/ko/messages.po +++ b/src/locale/locales/ko/messages.po @@ -8,134 +8,125 @@ msgstr "" "Language: ko\n" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: \n" +"PO-Revision-Date: 2024-05-24 16:50+0900\n" "Last-Translator: quiple\n" "Language-Team: quiple, lens0021, HaruChanHeart, hazzzi, heartade\n" "Plural-Forms: \n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(이메일 없음)" #: src/view/com/notifications/FeedItem.tsx:239 msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" -msgstr "" +msgstr "외 {0, plural, other {{formattedCount}}}명" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" +msgstr "이 계정에 {0, plural, other {#}}개의 라벨이 지정됨" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" +msgstr "이 콘텐츠에 {0, plural, other {#}}개의 라벨이 지정됨" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" -msgstr "" +msgstr "{0, plural, other {#}}개" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" -msgstr "" +msgstr "팔로워" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" -msgstr "" +msgstr "팔로우 중" #: src/view/com/util/post-ctrls/PostCtrls.tsx:245 msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" -msgstr "" +msgstr "좋아요 ({0, plural, other {#}}개)" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" -msgstr "" +msgstr "좋아요" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{0, plural, other {#}}명의 사용자가 좋아함" #: src/screens/Profile/Header/Metrics.tsx:59 msgid "{0, plural, one {post} other {posts}}" -msgstr "" +msgstr "게시물" #: src/view/com/util/post-ctrls/PostCtrls.tsx:204 msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" -msgstr "" +msgstr "답글 ({0, plural, other {#}}개)" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" -msgstr "" +msgstr "재게시" #: src/view/com/util/post-ctrls/PostCtrls.tsx:241 msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" -msgstr "" +msgstr "좋아요 취소 ({0, plural, other {#}}개)" #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{count, plural, other {#}}명의 사용자가 좋아함" #: src/screens/Deactivated.tsx:207 msgid "{estimatedTimeHrs, plural, one {hour} other {hours}}" -msgstr "" +msgstr "시간" #: src/screens/Deactivated.tsx:213 msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" -msgstr "" +msgstr "분" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} 팔로우 중" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 -msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "{handle} 님에게 메시지를 보낼 수 없습니다" -#: src/view/shell/Drawer.tsx:464 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 +msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" +msgstr "{likeCount, plural, other {#}}명의 사용자가 좋아함" + +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications}개 읽지 않음" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" -msgstr "" +msgstr "{value, plural, =0 {모든 답글 표시} other {좋아요가 #개 이상인 답글 표시}}" #: src/view/com/threadgate/WhoCanReply.tsx:159 msgid "<0/> members" msgstr "<0/>의 멤버" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" -msgstr "" +msgstr "<0>{0} 팔로워" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" -msgstr "" +msgstr "<0>{0} 팔로우 중" -#: src/view/shell/Drawer.tsx:97 -#~ msgid "<0>{0} following" -#~ msgstr "<0>{0} 팔로우 중" - -#: src/components/ProfileHoverCard/index.web.tsx:437 -#~ msgid "<0>{followers} <1>{pluralizedFollowers}" -#~ msgstr "<0>{followers} <1>팔로워" - -#: src/components/ProfileHoverCard/index.web.tsx:449 -#: src/screens/Profile/Header/Metrics.tsx:45 -#~ msgid "<0>{following} <1>following" -#~ msgstr "<0>{following} <1>팔로우 중" - -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." -msgstr "" +msgstr "<0>해당 없음. 이 경고는 미디어가 첨부된 게시물에만 사용할 수 있습니다." #: src/screens/Profile/Header/Handle.tsx:43 msgid "⚠Invalid Handle" msgstr "⚠잘못된 핸들" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "2단계 인증" @@ -149,11 +140,11 @@ msgid "Access profile and other navigation links" msgstr "프로필 및 기타 탐색 링크로 이동합니다" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "접근성" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "접근성 설정" @@ -162,25 +153,21 @@ msgstr "접근성 설정" msgid "Accessibility Settings" msgstr "접근성 설정" -#: src/components/moderation/LabelsOnMe.tsx:42 -#~ msgid "account" -#~ msgstr "계정" - -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "계정" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "계정 차단됨" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "계정 팔로우함" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "계정 뮤트됨" @@ -201,67 +188,72 @@ msgstr "계정 옵션" msgid "Account removed from quick access" msgstr "빠른 액세스에서 계정 제거" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "계정 차단 해제됨" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "계정 언팔로우함" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "계정 언뮤트됨" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "추가" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "콘텐츠 경고 추가" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "이 리스트에 사용자 추가" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "계정 추가" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" -msgstr "대체 텍스트 추가하기" +msgstr "대체 텍스트 추가" -#: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" - -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "앱 비밀번호 추가" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "구성 설정에 뮤트 단어 추가" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "뮤트할 단어 및 태그 추가" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "추천 피드 추가" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "내가 팔로우하는 사람의 기본 피드만 추가하기" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "도메인에 다음 DNS 레코드를 추가하세요:" @@ -270,7 +262,7 @@ msgstr "도메인에 다음 DNS 레코드를 추가하세요:" msgid "Add to Lists" msgstr "리스트에 추가" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "내 피드에 추가" @@ -279,17 +271,17 @@ msgstr "내 피드에 추가" msgid "Added to list" msgstr "리스트에 추가됨" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "내 피드에 추가됨" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "답글이 피드에 표시되기 위해 필요한 좋아요 수를 조정합니다." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "성인 콘텐츠" @@ -298,14 +290,24 @@ msgid "Adult content is disabled." msgstr "성인 콘텐츠가 비활성화되어 있습니다." #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "고급" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "저장한 모든 피드를 한 곳에서 확인하세요." +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "다이렉트 메시지 접근 허용" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "새 메시지를 허용할 대상" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -315,13 +317,13 @@ msgstr "이미 코드가 있나요?" msgid "Already signed in as @{0}" msgstr "이미 @{0}(으)로 로그인했습니다" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -329,30 +331,26 @@ msgstr "대체 텍스트" #: src/view/com/util/post-embeds/GifEmbed.tsx:179 msgid "Alt Text" -msgstr "" +msgstr "대체 텍스트" #: src/view/com/composer/photos/Gallery.tsx:224 msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "대체 텍스트는 시각장애인과 저시력 사용자를 위해 이미지를 설명하며 모든 사용자의 이해를 돕습니다." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "{0}(으)로 이메일을 보냈습니다. 이 이메일에는 아래에 입력하는 인증 코드가 포함되어 있습니다." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "이전 주소인 {0}(으)로 이메일을 보냈습니다. 이 이메일에는 아래에 입력하는 인증 코드가 포함되어 있습니다." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "오류 발생" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "메시지를 삭제하는 동안 오류가 발생했습니다. 다시 시도해 주세요." - -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "어떤 옵션에도 포함되지 않는 문제" @@ -365,16 +363,16 @@ msgstr "어떤 옵션에도 포함되지 않는 문제" msgid "An issue occurred, please try again." msgstr "문제가 발생했습니다. 다시 시도해 주세요." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" -msgstr "" +msgstr "알 수 없는 오류가 발생했습니다" #: src/view/com/notifications/FeedItem.tsx:236 #: src/view/com/threadgate/WhoCanReply.tsx:180 msgid "and" msgstr "및" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "동물" @@ -382,7 +380,7 @@ msgstr "동물" msgid "Animated GIF" msgstr "움직이는 GIF" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "반사회적 행위" @@ -390,70 +388,79 @@ msgstr "반사회적 행위" msgid "App Language" msgstr "앱 언어" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "앱 비밀번호 삭제됨" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "앱 비밀번호 이름에는 문자, 숫자, 공백, 대시, 밑줄만 사용할 수 있습니다." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "앱 비밀번호 이름은 4자 이상이어야 합니다." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "앱 비밀번호 설정" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "앱 비밀번호" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "이의신청" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "\"{0}\" 라벨 이의신청" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" -msgstr "" +msgstr "이의신청 제출함" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 -#~ msgid "Appeal submitted." -#~ msgstr "이의신청 제출함" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "이 결정에 이의신청" -#: src/view/screens/Settings/index.tsx:430 +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "모양" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "기본 추천 피드 적용하기" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "앱 비밀번호 \"{name}\"을(를) 삭제하시겠습니까?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "정말 이 메시지를 삭제하시겠습니까? 나에게 보이는 메시지는 삭제되지만 상대방에게는 삭제되지 않습니다." -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." -msgstr "정말 이 대화를 종료하시겠습니까? 나에게 보이는 메시지는 삭제되지만 상대방에게는 삭제되지 않습니다." +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." +msgstr "정말 이 대화에서 나가시겠습니까? 나에게 보이는 메시지는 삭제되지만 상대방에게는 삭제되지 않습니다." -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "피드에서 {0}을(를) 제거하시겠습니까?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "이 초안을 삭제하시겠습니까?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "정말인가요?" @@ -461,11 +468,11 @@ msgstr "정말인가요?" msgid "Are you writing in <0>{0}?" msgstr "{0}(으)로 쓰고 있나요?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "예술" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "선정적이지 않거나 예술적인 노출." @@ -473,18 +480,20 @@ msgstr "선정적이지 않거나 예술적인 노출." msgid "At least 3 characters" msgstr "3자 이상" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -494,7 +503,7 @@ msgstr "뒤로" msgid "Based on your interest in {interestsText}" msgstr "{interestsText}에 대한 관심사 기반" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "기본" @@ -502,17 +511,17 @@ msgstr "기본" msgid "Birthday" msgstr "생년월일" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "생년월일:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "차단" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" msgstr "계정 차단" @@ -525,15 +534,15 @@ msgstr "계정 차단" msgid "Block Account?" msgstr "계정을 차단하시겠습니까?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "계정 차단" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "리스트 차단" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "이 계정들을 차단하시겠습니까?" @@ -559,15 +568,15 @@ msgstr "차단한 계정은 내 스레드에 답글을 달거나 나를 멘션 msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "차단한 계정은 내 스레드에 답글을 달거나 나를 멘션하거나 기타 다른 방식으로 나와 상호작용할 수 없습니다. 차단한 계정의 콘텐츠를 볼 수 없으며 해당 계정도 내 콘텐츠를 볼 수 없게 됩니다." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "차단된 게시물." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "차단하더라도 이 라벨러가 내 계정에 라벨을 붙이는 것을 막지는 못합니다." -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "차단 목록은 공개됩니다. 차단한 계정은 내 스레드에 답글을 달거나 나를 멘션하거나 기타 다른 방식으로 나와 상호작용할 수 없습니다." @@ -600,10 +609,15 @@ msgstr "이미지 흐리게" msgid "Blur images and filter from feeds" msgstr "이미지 흐리게 및 피드에서 필터링" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "책" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "다른 피드 탐색하기" + #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "비즈니스" @@ -618,7 +632,7 @@ msgstr "{0} 님이 만듦" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:112 msgid "by @{0}" -msgstr "" +msgstr "@{0} 님이 만듦" #: src/view/com/profile/ProfileSubpageHeader.tsx:161 msgid "by <0/>" @@ -636,7 +650,7 @@ msgstr "내가 만듦" msgid "Camera" msgstr "카메라" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "글자, 숫자, 공백, 대시, 밑줄만 포함할 수 있습니다. 길이는 4자 이상이어야 하고 32자를 넘지 않아야 합니다." @@ -644,11 +658,11 @@ msgstr "글자, 숫자, 공백, 대시, 밑줄만 포함할 수 있습니다. #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -660,26 +674,26 @@ msgstr "글자, 숫자, 공백, 대시, 밑줄만 포함할 수 있습니다. #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "취소" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "취소" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "계정 삭제 취소" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "핸들 변경 취소" @@ -704,34 +718,34 @@ msgstr "검색 취소" msgid "Cancels opening the linked website" msgstr "연결된 웹사이트를 여는 것을 취소합니다" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "변경" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "변경" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "핸들 변경" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "핸들 변경" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "내 이메일 변경하기" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "비밀번호 변경" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "비밀번호 변경" @@ -739,24 +753,34 @@ msgstr "비밀번호 변경" msgid "Change post language to {0}" msgstr "게시물 언어를 {0}(으)로 변경" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "이메일 변경" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" msgstr "대화" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" msgstr "대화 뮤트됨" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" msgstr "대화 설정" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "대화 설정" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" msgstr "대화 언뮤트됨" @@ -765,11 +789,11 @@ msgstr "대화 언뮤트됨" msgid "Check my status" msgstr "내 상태 확인" -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "이메일에서 로그인 코드를 확인한 후 여기에 입력하세요." -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "받은 편지함에서 아래에 입력하는 인증 코드가 포함된 이메일이 있는지 확인하세요:" @@ -781,10 +805,14 @@ msgstr "\"모두\" 또는 \"없음\"을 선택하세요." msgid "Choose Service" msgstr "서비스 선택" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "맞춤 피드를 구동할 알고리즘을 선택하세요." +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "이 색상을 아바타로 선택" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "기본 피드 선택" @@ -793,19 +821,19 @@ msgstr "기본 피드 선택" msgid "Choose your password" msgstr "비밀번호를 입력하세요" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "모든 레거시 스토리지 데이터 지우기" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "모든 레거시 스토리지 데이터 지우기 (이후 다시 시작)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "모든 스토리지 데이터 지우기" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "모든 스토리지 데이터 지우기 (이후 다시 시작)" @@ -814,11 +842,11 @@ msgstr "모든 스토리지 데이터 지우기 (이후 다시 시작)" msgid "Clear search query" msgstr "검색어 지우기" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "모든 레거시 스토리지 데이터를 지웁니다" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "모든 스토리지 데이터를 지웁니다" @@ -830,19 +858,28 @@ msgstr "이곳을 클릭" msgid "Click here to open tag menu for {tag}" msgstr "이곳을 클릭하여 {tag}의 태그 메뉴 열기" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "클릭하여 메시지를 다시 보내기" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "기후" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "다그닥 🐴 다그닥 🐴" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "닫기" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "열려 있는 대화 상자 닫기" @@ -854,7 +891,7 @@ msgstr "알림 닫기" msgid "Close bottom drawer" msgstr "하단 서랍 닫기" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "대화 상자 닫기" @@ -870,6 +907,10 @@ msgstr "이미지 닫기" msgid "Close image viewer" msgstr "이미지 뷰어 닫기" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "대화 상자 닫기" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "탐색 푸터 닫기" @@ -887,7 +928,7 @@ msgstr "하단 탐색 막대를 닫습니다" msgid "Closes password update alert" msgstr "비밀번호 변경 알림을 닫습니다" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "게시물 작성 상자를 닫고 게시물 초안을 삭제합니다" @@ -899,11 +940,11 @@ msgstr "헤더 이미지 뷰어를 닫습니다" msgid "Collapses list of users for a given notification" msgstr "이 알림에 대한 사용자 목록을 축소합니다" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "코미디" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "만화" @@ -912,7 +953,7 @@ msgstr "만화" msgid "Community Guidelines" msgstr "커뮤니티 가이드라인" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "온보딩 완료 후 계정 사용 시작" @@ -920,7 +961,7 @@ msgstr "온보딩 완료 후 계정 사용 시작" msgid "Complete the challenge" msgstr "챌린지 완료하기" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "최대 {MAX_GRAPHEME_LENGTH}자 길이까지 글을 작성할 수 있습니다" @@ -942,18 +983,18 @@ msgstr "<0>검토 설정에서 설정합니다." #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "확인" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "변경 확인" @@ -961,7 +1002,7 @@ msgstr "변경 확인" msgid "Confirm content language settings" msgstr "콘텐츠 언어 설정 확인" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "계정 삭제 확인" @@ -973,17 +1014,17 @@ msgstr "나이를 확인하세요:" msgid "Confirm your birthdate" msgstr "생년월일 확인" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "인증 코드" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "연결 중…" @@ -991,10 +1032,6 @@ msgstr "연결 중…" msgid "Contact support" msgstr "지원에 연락하기" -#: src/components/moderation/LabelsOnMe.tsx:42 -#~ msgid "content" -#~ msgstr "콘텐츠" - #: src/lib/moderation/useGlobalLabelStrings.ts:18 msgid "Content Blocked" msgstr "콘텐츠 차단됨" @@ -1030,8 +1067,9 @@ msgstr "컨텍스트 메뉴 배경을 클릭하여 메뉴를 닫습니다." #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "계속" @@ -1041,8 +1079,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "{0}(으)로 계속하기 (현재 로그인)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1056,22 +1095,26 @@ msgstr "다음 단계로 계속하기" msgid "Continue to the next step without following any accounts" msgstr "계정을 팔로우하지 않고 다음 단계로 계속하기" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "대화 삭제됨" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "요리" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "복사됨" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "빌드 버전 클립보드에 복사됨" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1081,15 +1124,15 @@ msgstr "클립보드에 복사됨" msgid "Copied!" msgstr "복사했습니다!" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "앱 비밀번호를 복사합니다" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "복사" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "{0} 복사" @@ -1098,7 +1141,7 @@ msgstr "{0} 복사" msgid "Copy code" msgstr "코드 복사" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "리스트 링크 복사" @@ -1107,8 +1150,8 @@ msgstr "리스트 링크 복사" msgid "Copy link to post" msgstr "게시물 링크 복사" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" msgstr "메시지 텍스트 복사" @@ -1122,36 +1165,28 @@ msgstr "게시물 텍스트 복사" msgid "Copyright Policy" msgstr "저작권 정책" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" -msgstr "대화를 종료할 수 없습니다" +msgstr "대화에서 나갈 수 없습니다" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "피드를 불러올 수 없습니다" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "리스트를 불러올 수 없습니다" -#: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "프로필을 불러올 수 없습니다. 나중에 다시 시도하세요." - -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" msgstr "대화를 뮤트할 수 없습니다" -#: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "대화를 언뮤트할 수 없습니다" - #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "새 계정 만들기" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "새 Bluesky 계정을 만듭니다" @@ -1164,7 +1199,11 @@ msgstr "계정 만들기" msgid "Create an account" msgstr "계정 만들기" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "대신 아바타 만들기" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "앱 비밀번호 만들기" @@ -1173,15 +1212,15 @@ msgstr "앱 비밀번호 만들기" msgid "Create new account" msgstr "새 계정 만들기" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "{0}에 대한 신고 작성하기" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "{0}에 생성됨" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "문화" @@ -1190,12 +1229,12 @@ msgstr "문화" msgid "Custom" msgstr "사용자 지정" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "사용자 지정 도메인" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "커뮤니티에서 구축한 맞춤 피드는 새로운 경험을 제공하고 좋아하는 콘텐츠를 찾을 수 있도록 도와줍니다." @@ -1203,8 +1242,8 @@ msgstr "커뮤니티에서 구축한 맞춤 피드는 새로운 경험을 제공 msgid "Customize media from external sites." msgstr "외부 사이트 미디어를 사용자 지정합니다." -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "어두움" @@ -1212,7 +1251,7 @@ msgstr "어두움" msgid "Dark mode" msgstr "어두운 모드" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "어두운 테마" @@ -1220,7 +1259,7 @@ msgstr "어두운 테마" msgid "Date of birth" msgstr "생년월일" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "검토 디버그" @@ -1228,54 +1267,55 @@ msgstr "검토 디버그" msgid "Debug panel" msgstr "디버그 패널" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "삭제" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "계정 삭제" -#: src/view/com/modals/DeleteAccount.tsx:87 -#~ msgid "Delete Account" -#~ msgstr "계정 삭제" - -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" -msgstr "" +msgstr "<0>\"<1>{0}<2>\" 계정 삭제" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "앱 비밀번호 삭제" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "앱 비밀번호를 삭제하시겠습니까?" -#: src/components/dms/MessageMenu.tsx:101 +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" +msgstr "대화 신고 기록 삭제" + +#: src/components/dms/MessageMenu.tsx:99 msgid "Delete for me" msgstr "내게서 삭제" -#: src/view/screens/ProfileList.tsx:417 +#: src/view/screens/ProfileList.tsx:470 msgid "Delete List" msgstr "리스트 삭제" -#: src/components/dms/MessageMenu.tsx:119 +#: src/components/dms/MessageMenu.tsx:122 msgid "Delete message" msgstr "메시지 삭제" -#: src/components/dms/MessageMenu.tsx:99 +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" msgstr "내게 보이는 메시지 삭제" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "내 계정 삭제" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "내 계정 삭제…" @@ -1284,7 +1324,7 @@ msgstr "내 계정 삭제…" msgid "Delete post" msgstr "게시물 삭제" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "이 리스트를 삭제하시겠습니까?" @@ -1296,10 +1336,14 @@ msgstr "이 게시물을 삭제하시겠습니까?" msgid "Deleted" msgstr "삭제됨" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "삭제된 게시물." +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "대화 신고 기록을 삭제합니다" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1307,23 +1351,27 @@ msgstr "삭제된 게시물." msgid "Description" msgstr "설명" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" -msgstr "" +msgstr "설명이 포함된 대체 텍스트" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "하고 싶은 말이 있나요?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "어둑함" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "다이렉트 메시지가 생겼습니다!" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "GIF 자동 재생 끄기" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "이메일 2단계 인증 끄기" @@ -1334,15 +1382,17 @@ msgstr "햅틱 피드백 끄기" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" -msgstr "비활성화됨" +msgstr "사용 안 함" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "삭제" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "초안 삭제" @@ -1356,7 +1406,7 @@ msgstr "앱이 로그아웃한 사용자에게 내 계정을 표시하지 않도 msgid "Discover new custom feeds" msgstr "새로운 맞춤 피드 찾아보기" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "새 피드 발견하기" @@ -1368,7 +1418,7 @@ msgstr "표시 이름" msgid "Display Name" msgstr "표시 이름" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "DNS 패널" @@ -1380,11 +1430,11 @@ msgstr "노출을 포함하지 않습니다." msgid "Doesn't begin or end with a hyphen" msgstr "하이픈으로 시작하거나 끝나지 않음" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "도메인 값" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "도메인을 확인했습니다." @@ -1392,23 +1442,23 @@ msgstr "도메인을 확인했습니다." #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "완료" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1422,8 +1472,8 @@ msgstr "완료" msgid "Done{extraText}" msgstr "완료{extraText}" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "CAR 파일 다운로드" @@ -1435,7 +1485,7 @@ msgstr "드롭하여 이미지 추가" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "Apple 정책으로 인해 성인 콘텐츠는 가입을 완료한 후에 웹에서만 사용 설정할 수 있습니다." -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "예: alice" @@ -1443,7 +1493,7 @@ msgstr "예: alice" msgid "e.g. Alice Roberts" msgstr "예: 앨리스 로버츠" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "예: alice.com" @@ -1480,7 +1530,7 @@ msgctxt "action" msgid "Edit" msgstr "편집" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "아바타 편집" @@ -1490,7 +1540,7 @@ msgstr "아바타 편집" msgid "Edit image" msgstr "이미지 편집" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "리스트 세부 정보 편집" @@ -1499,8 +1549,8 @@ msgid "Edit Moderation List" msgstr "검토 리스트 편집" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "내 피드 편집" @@ -1508,20 +1558,20 @@ msgstr "내 피드 편집" msgid "Edit my profile" msgstr "내 프로필 편집" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "프로필 편집" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "프로필 편집" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" -msgstr "저장된 피드 편집" +msgstr "저장한 피드 편집" #: src/view/com/modals/CreateOrEditList.tsx:248 msgid "Edit User List" @@ -1535,16 +1585,16 @@ msgstr "내 표시 이름 편집" msgid "Edit your profile description" msgstr "내 프로필 설명 편집" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "교육" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "이메일" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "이메일 2단계 인증을 비활성화했습니다" @@ -1552,20 +1602,20 @@ msgstr "이메일 2단계 인증을 비활성화했습니다" msgid "Email address" msgstr "이메일 주소" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "이메일 변경됨" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "이메일 변경됨" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "이메일 확인됨" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "이메일:" @@ -1609,7 +1659,7 @@ msgstr "외부 미디어 사용" msgid "Enable media players for" msgstr "미디어 플레이어를 사용할 외부 사이트" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "내가 팔로우하는 사람들 간의 답글만 표시합니다." @@ -1617,15 +1667,17 @@ msgstr "내가 팔로우하는 사람들 간의 답글만 표시합니다." msgid "Enable this source only" msgstr "이 소스에서만 사용" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" -msgstr "활성화됨" +msgstr "사용" #: src/screens/Profile/Sections/Feed.tsx:104 msgid "End of feed" msgstr "피드 끝" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "이 앱 비밀번호의 이름 입력" @@ -1633,12 +1685,12 @@ msgstr "이 앱 비밀번호의 이름 입력" msgid "Enter a password" msgstr "비밀번호 입력" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "단어 또는 태그 입력" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "인증 코드 입력" @@ -1646,7 +1698,7 @@ msgstr "인증 코드 입력" msgid "Enter the code you received to change your password." msgstr "비밀번호를 변경하려면 받은 코드를 입력하세요." -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "사용할 도메인 입력" @@ -1663,11 +1715,11 @@ msgstr "생년월일을 입력하세요" msgid "Enter your email address" msgstr "이메일 주소를 입력하세요" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "새 이메일을 입력하세요" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "아래에 새 이메일 주소를 입력하세요." @@ -1675,11 +1727,15 @@ msgstr "아래에 새 이메일 주소를 입력하세요." msgid "Enter your username and password" msgstr "사용자 이름 및 비밀번호 입력" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "파일을 저장하는 동안 오류가 발생했습니다" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "캡차 응답을 수신하는 동안 오류가 발생했습니다." -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "오류:" @@ -1688,15 +1744,30 @@ msgstr "오류:" msgid "Everybody" msgstr "모두" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "누구나 답글을 달 수 있음" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "모두" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "과도한 멘션 또는 답글" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "과도하거나 원치 않는 메시지" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "계정 삭제 프로세스를 종료합니다" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "핸들 변경 프로세스를 종료합니다" @@ -1730,12 +1801,12 @@ msgstr "노골적이거나 불쾌감을 줄 수 있는 미디어." msgid "Explicit sexual images." msgstr "노골적인 성적 이미지." -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "내 데이터 내보내기" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "내 데이터 내보내기" @@ -1751,16 +1822,16 @@ msgstr "외부 미디어는 웹사이트가 나와 내 기기에 대한 정보 #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "외부 미디어 설정" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "외부 미디어 설정" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "앱 비밀번호를 만들지 못했습니다." @@ -1768,7 +1839,7 @@ msgstr "앱 비밀번호를 만들지 못했습니다." msgid "Failed to create the list. Check your internet connection and try again." msgstr "리스트를 만들지 못했습니다. 인터넷 연결을 확인한 후 다시 시도하세요." -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" msgstr "메시지를 삭제하지 못했습니다" @@ -1776,47 +1847,60 @@ msgstr "메시지를 삭제하지 못했습니다" msgid "Failed to delete post, please try again" msgstr "게시물을 삭제하지 못했습니다. 다시 시도해 주세요" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "GIF 불러오기 실패" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." -msgstr "지난 메시지를 불러오지 못했습니다." +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" +msgstr "지난 메시지를 불러오지 못했습니다" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "이미지를 저장하지 못함: {0}" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "전송 실패" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "이의신청을 제출하지 못했습니다. 다시 시도하세요." + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "설정을 업데이트하지 못했습니다" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "피드" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "{0} 님의 피드" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "피드 오프라인" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "피드백" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "피드" -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "피드는 사용자가 약간의 코딩 전문 지식만으로 구축할 수 있는 맞춤 알고리즘입니다. <0/>에서 자세한 내용을 확인하세요." @@ -1824,15 +1908,19 @@ msgstr "피드는 사용자가 약간의 코딩 전문 지식만으로 구축할 msgid "Feeds can be topical as well!" msgstr "주제 기반 피드도 있습니다!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "파일 콘텐츠" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "파일을 성공적으로 저장했습니다!" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "피드에서 필터링" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "마무리 중" @@ -1846,7 +1934,7 @@ msgstr "팔로우할 계정 찾아보기" msgid "Find posts and users on Bluesky" msgstr "Bluesky에서 게시물 및 사용자 찾기" -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "팔로우 중 피드에 표시되는 콘텐츠를 미세 조정합니다." @@ -1854,11 +1942,11 @@ msgstr "팔로우 중 피드에 표시되는 콘텐츠를 미세 조정합니다 msgid "Fine-tune the discussion threads." msgstr "대화 스레드를 미세 조정합니다." -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "건강" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "유연성" @@ -1871,10 +1959,10 @@ msgstr "가로로 뒤집기" msgid "Flip vertically" msgstr "세로로 뒤집기" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -1886,7 +1974,7 @@ msgid "Follow" msgstr "팔로우" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "{0} 님을 팔로우" @@ -1916,41 +2004,43 @@ msgstr "{0} 님이 팔로우함" msgid "Followed users" msgstr "팔로우한 사용자" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "팔로우한 사용자만" #: src/view/com/notifications/FeedItem.tsx:164 msgid "followed you" -msgstr "님이 나를 팔로우했습니다" +msgstr "이(가) 나를 팔로우했습니다" #: src/view/com/profile/ProfileFollowers.tsx:104 #: src/view/screens/ProfileFollowers.tsx:25 msgid "Followers" msgstr "팔로워" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "팔로우 중" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "{0} 님을 팔로우했습니다" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "팔로우 중 피드 설정" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "팔로우 중 피드 설정" @@ -1962,15 +2052,15 @@ msgstr "나를 팔로우함" msgid "Follows You" msgstr "나를 팔로우함" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "음식" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "보안상의 이유로 이메일 주소로 인증 코드를 보내야 합니다." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "보안상의 이유로 이 비밀번호는 다시 볼 수 없습니다. 이 비밀번호를 분실한 경우 새 비밀번호를 생성해야 합니다." @@ -1979,15 +2069,15 @@ msgstr "보안상의 이유로 이 비밀번호는 다시 볼 수 없습니다. msgid "Forgot Password" msgstr "비밀번호 분실" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "비밀번호를 잊으셨나요?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "분실" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "잦은 원치 않는 콘텐츠 게시" @@ -1995,7 +2085,7 @@ msgstr "잦은 원치 않는 콘텐츠 게시" msgid "From @{sanitizedAuthor}" msgstr "@{sanitizedAuthor} 님의 태그" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "<0/>에서" @@ -2004,12 +2094,20 @@ msgstr "<0/>에서" msgid "Gallery" msgstr "갤러리" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "시작하기" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "시작하기" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "프로필에 얼굴 달기" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "명백한 법률 또는 서비스 이용약관 위반 행위" @@ -2018,9 +2116,9 @@ msgstr "명백한 법률 또는 서비스 이용약관 위반 행위" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "뒤로" @@ -2028,13 +2126,14 @@ msgstr "뒤로" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "뒤로" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2049,16 +2148,20 @@ msgstr "홈으로 이동" msgid "Go Home" msgstr "홈으로 이동" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "{0} 님과의 대화로 이동합니다" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "다음" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" msgstr "프로필로 가기" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" msgstr "사용자의 프로필로 가기" @@ -2066,7 +2169,7 @@ msgstr "사용자의 프로필로 가기" msgid "Graphic Media" msgstr "그래픽 미디어" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "핸들" @@ -2074,7 +2177,7 @@ msgstr "핸들" msgid "Haptics" msgstr "햅틱" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "괴롭힘, 분쟁 유발 또는 차별" @@ -2082,7 +2185,7 @@ msgstr "괴롭힘, 분쟁 유발 또는 차별" msgid "Hashtag" msgstr "해시태그" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "해시태그: #{tag}" @@ -2091,10 +2194,14 @@ msgid "Having trouble?" msgstr "문제가 있나요?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "도움말" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "사진을 업로드하거나 아바타를 만들어 사람들이 내가 봇이 아니라는 사실을 알 수 있도록 하세요." + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "팔로우할 만한 계정" @@ -2107,13 +2214,13 @@ msgstr "다음은 인기 있는 화제 피드입니다. 원하는 만큼 피드 msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "다음은 사용자의 관심사를 기반으로 한 몇 가지 주제별 피드입니다: {interestsText}. 원하는 만큼 많은 피드를 팔로우할 수 있습니다." -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "앱 비밀번호입니다." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2135,7 +2242,7 @@ msgid "Hide post" msgstr "게시물 숨기기" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "콘텐츠 숨기기" @@ -2147,23 +2254,23 @@ msgstr "이 게시물을 숨기시겠습니까?" msgid "Hide user list" msgstr "사용자 리스트 숨기기" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "피드 서버에 연결하는 중 어떤 문제가 발생했습니다. 피드 소유자에게 이 문제에 대해 알려주세요." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "피드 서버가 잘못 구성된 것 같습니다. 피드 소유자에게 이 문제에 대해 알려주세요." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "피드 서버가 오프라인 상태인 것 같습니다. 피드 소유자에게 이 문제에 대해 알려주세요." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "피드 서버에서 잘못된 응답을 보냈습니다. 피드 소유자에게 이 문제에 대해 알려주세요." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "이 피드를 찾는 데 문제가 있습니다. 피드가 삭제되었을 수 있습니다." @@ -2175,22 +2282,22 @@ msgstr "이 데이터를 불러오는 데 문제가 있는 것 같습니다. 자 msgid "Hmmmm, we couldn't load that moderation service." msgstr "검토 서비스를 불러올 수 없습니다." -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "홈" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "호스트:" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "호스팅 제공자" @@ -2198,25 +2305,30 @@ msgstr "호스팅 제공자" msgid "How should we open this link?" msgstr "이 링크를 어떻게 여시겠습니까?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "코드가 있습니다" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "인증 코드가 있습니다" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "내 도메인을 가지고 있습니다" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "확인" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "대체 텍스트가 긴 경우 대체 텍스트 확장 상태를 전환합니다" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "아무것도 선택하지 않으면 모든 연령대에 적합하다는 뜻입니다." @@ -2224,7 +2336,7 @@ msgstr "아무것도 선택하지 않으면 모든 연령대에 적합하다는 msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "해당 국가의 법률에 따라 아직 성인이 아닌 경우, 부모 또는 법적 보호자가 대신 이 약관을 읽어야 합니다." -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "이 리스트를 삭제하면 다시 복구할 수 없습니다." @@ -2236,7 +2348,7 @@ msgstr "이 게시물을 삭제하면 다시 복구할 수 없습니다." msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "비밀번호를 변경하고 싶다면 본인 계정임을 확인할 수 있는 코드를 보내드리겠습니다." -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "불법 및 긴급 사항" @@ -2244,23 +2356,27 @@ msgstr "불법 및 긴급 사항" msgid "Image" msgstr "이미지" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "이미지 대체 텍스트" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "신원 또는 소속에 대한 사칭 또는 허위 주장" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "부적절한 메시지 또는 노골적인 링크" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "비밀번호 재설정을 위해 이메일로 전송된 코드를 입력합니다" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "계정 삭제를 위한 인증 코드를 입력합니다" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "앱 비밀번호의 이름을 입력합니다" @@ -2268,27 +2384,27 @@ msgstr "앱 비밀번호의 이름을 입력합니다" msgid "Input new password" msgstr "새 비밀번호를 입력합니다" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "계정을 삭제하기 위해 비밀번호를 입력합니다" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "이메일로 전송된 코드를 입력합니다" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "{identifier}에 연결된 비밀번호를 입력합니다" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "가입 시 사용한 사용자 이름 또는 이메일 주소를 입력합니다" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "비밀번호를 입력합니다" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "선호하는 호스팅 제공자를 입력합니다" @@ -2296,16 +2412,20 @@ msgstr "선호하는 호스팅 제공자를 입력합니다" msgid "Input your user handle" msgstr "사용자 핸들을 입력합니다" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "다이렉트 메시지 소개" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "잘못된 2단계 인증 코드입니다." -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "유효하지 않거나 지원되지 않는 게시물 기록" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "잘못된 사용자 이름 또는 비밀번호" @@ -2317,7 +2437,7 @@ msgstr "친구 초대하기" msgid "Invite code" msgstr "초대 코드" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "초대 코드가 올바르지 않습니다. 코드를 올바르게 입력했는지 확인한 후 다시 시도하세요." @@ -2337,17 +2457,13 @@ msgstr "내가 팔로우하는 사람들의 게시물이 올라오는 대로 표 msgid "Jobs" msgstr "채용" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "저널리즘" -#: src/components/moderation/LabelsOnMe.tsx:59 -#~ msgid "label has been placed on this {labelTarget}" -#~ msgstr "이 {labelTarget}에 라벨이 지정되었습니다" - #: src/components/moderation/ContentHider.tsx:144 msgid "Labeled by {0}." -msgstr "{0} 님이 라벨 지정함." +msgstr "{0}이(가) 라벨 지정함." #: src/components/moderation/ContentHider.tsx:142 msgid "Labeled by the author." @@ -2357,19 +2473,15 @@ msgstr "작성자가 라벨 지정함." msgid "Labels" msgstr "라벨" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "라벨은 사용자 및 콘텐츠에 대한 주석입니다. 네트워크를 숨기고, 경고하고, 분류하는 데 사용할 수 있습니다." -#: src/components/moderation/LabelsOnMe.tsx:61 -#~ msgid "labels have been placed on this {labelTarget}" -#~ msgstr "라벨이 {labelTarget}에 지정되었습니다" - -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "내 계정의 라벨" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "내 콘텐츠의 라벨" @@ -2377,7 +2489,7 @@ msgstr "내 콘텐츠의 라벨" msgid "Language selection" msgstr "언어 선택" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "언어 설정" @@ -2386,7 +2498,7 @@ msgstr "언어 설정" msgid "Language Settings" msgstr "언어 설정" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "언어" @@ -2404,7 +2516,7 @@ msgstr "더 알아보기" msgid "Learn more about the moderation applied to this content." msgstr "이 콘텐츠에 적용된 검토 설정에 대해 자세히 알아보세요." -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "이 경고에 대해 더 알아보기" @@ -2417,15 +2529,22 @@ msgstr "Bluesky에서 공개되는 항목에 대해 자세히 알아보세요." msgid "Learn more." msgstr "더 알아보기" -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" -msgstr "종료" +msgstr "나가기" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "대화 떠나기" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" -msgstr "대화 종료" +msgstr "대화 나가기" #: src/view/com/modals/lang-settings/ContentLanguagesSettings.tsx:82 msgid "Leave them all unchecked to see any language." @@ -2439,7 +2558,7 @@ msgstr "Bluesky 떠나기" msgid "left to go." msgstr "명 남았습니다." -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "레거시 스토리지가 지워졌으며 지금 앱을 다시 시작해야 합니다." @@ -2448,20 +2567,16 @@ msgstr "레거시 스토리지가 지워졌으며 지금 앱을 다시 시작해 msgid "Let's get your password reset!" msgstr "비밀번호를 재설정해 봅시다!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "출발!" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "밝음" -#: src/view/com/util/post-ctrls/PostCtrls.tsx:197 -#~ msgid "Like" -#~ msgstr "좋아요" - -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "이 피드에 좋아요 표시" @@ -2477,33 +2592,19 @@ msgstr "좋아요 표시한 사용자" msgid "Liked By" msgstr "좋아요 표시한 사용자" -#: src/view/com/feeds/FeedSourceCard.tsx:268 -#~ msgid "Liked by {0} {1}" -#~ msgstr "{0}명의 사용자가 좋아함" - -#: src/components/LabelingServiceCard/index.tsx:72 -#~ msgid "Liked by {count} {0}" -#~ msgstr "{count}명의 사용자가 좋아함" - -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:287 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:301 -#: src/view/screens/ProfileFeed.tsx:600 -#~ msgid "Liked by {likeCount} {0}" -#~ msgstr "{likeCount}명의 사용자가 좋아함" - #: src/view/com/notifications/FeedItem.tsx:168 msgid "liked your custom feed" -msgstr "님이 내 맞춤 피드를 좋아합니다" +msgstr "이(가) 내 맞춤 피드를 좋아합니다" #: src/view/com/notifications/FeedItem.tsx:153 msgid "liked your post" -msgstr "님이 내 게시물을 좋아합니다" +msgstr "이(가) 내 게시물을 좋아합니다" #: src/view/screens/Profile.tsx:196 msgid "Likes" msgstr "좋아요" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "이 게시물을 좋아요 표시합니다" @@ -2515,19 +2616,19 @@ msgstr "리스트" msgid "List Avatar" msgstr "리스트 아바타" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "리스트 차단됨" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "{0} 님의 리스트" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "리스트 삭제됨" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "리스트 뮤트됨" @@ -2535,31 +2636,35 @@ msgstr "리스트 뮤트됨" msgid "List Name" msgstr "리스트 이름" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "리스트 차단 해제됨" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "리스트 언뮤트됨" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "리스트" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "이 사용자를 차단한 리스트:" + #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "새 알림 불러오기" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "새 게시물 불러오기" @@ -2586,7 +2691,7 @@ msgstr "로그아웃 표시" msgid "Login to account that is not listed" msgstr "목록에 없는 계정으로 로그인" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "길게 눌러 #{tag}에 대한 태그 메뉴를 엽니다" @@ -2594,14 +2699,31 @@ msgstr "길게 눌러 #{tag}에 대한 태그 메뉴를 엽니다" msgid "Looks like XXXXX-XXXXX" msgstr "XXXXX-XXXXX 형식" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "저장한 피드가 없는 것 같습니다! 권장 사항을 사용하거나 아래에서 더 많은 피드를 찾아보세요." + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "모든 피드를 고정 해제했군요. 하지만 걱정하지 마세요. 아래에서 추가할 수 있습니다 😄" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "팔로우 중 피드가 누락된 것 같습니다. <0>이곳을 클릭해 하나 추가하세요." + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "이곳이 당신이 가고자 하는 곳인지 확인하세요!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "뮤트한 단어 및 태그 관리" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "읽음으로 표시" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2620,44 +2742,46 @@ msgstr "멘션한 사용자" msgid "Menu" msgstr "메뉴" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "{0} 님에게 메시지 보내기" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" msgstr "메시지 삭제됨" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "서버에서 보낸 메시지: {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" msgstr "메시지 입력 필드" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "메시지가 너무 깁니다" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "메시지 설정" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "메시지" -#: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "메시지 설정" - -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "오해의 소지가 있는 계정" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "검토" @@ -2670,13 +2794,13 @@ msgstr "검토 세부 정보" msgid "Moderation list by {0}" msgstr "{0} 님의 검토 리스트" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "<0/> 님의 검토 리스트" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "내 검토 리스트" @@ -2697,7 +2821,7 @@ msgstr "검토 리스트" msgid "Moderation Lists" msgstr "검토 리스트" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "검토 설정" @@ -2718,11 +2842,11 @@ msgstr "검토자가 콘텐츠에 일반 경고를 설정했습니다." msgid "More" msgstr "더 보기" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "피드 더 보기" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "옵션 더 보기" @@ -2743,7 +2867,7 @@ msgstr "{truncatedTag} 뮤트" msgid "Mute Account" msgstr "계정 뮤트" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "계정 뮤트" @@ -2751,32 +2875,32 @@ msgstr "계정 뮤트" msgid "Mute all {displayTag} posts" msgstr "모든 {displayTag} 게시물 뮤트" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "대화 뮤트" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "태그에서만 뮤트" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "글 및 태그에서 뮤트" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "리스트 뮤트" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "알림 뮤트" - -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "이 계정들을 뮤트하시겠습니까?" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "게시물 글 및 태그에서 이 단어 뮤트하기" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "태그에서만 이 단어 뮤트하기" @@ -2815,7 +2939,7 @@ msgstr "\"{0}\" 님이 뮤트함" msgid "Muted words & tags" msgstr "뮤트한 단어 및 태그" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "뮤트 목록은 비공개입니다. 뮤트한 계정은 나와 상호작용할 수 있지만 해당 계정의 게시물을 보거나 해당 계정으로부터 알림을 받을 수 없습니다." @@ -2824,23 +2948,23 @@ msgstr "뮤트 목록은 비공개입니다. 뮤트한 계정은 나와 상호 msgid "My Birthday" msgstr "내 생년월일" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "내 피드" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "내 프로필" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" -msgstr "내 저장된 피드" +msgstr "내 저장한 피드" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" -msgstr "내 저장된 피드" +msgstr "내 저장한 피드" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "이름" @@ -2849,35 +2973,35 @@ msgstr "이름" msgid "Name is required" msgstr "이름을 입력하세요" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "이름 또는 설명이 커뮤니티 기준을 위반함" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "자연" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "다음 화면으로 이동합니다" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "내 프로필로 이동합니다" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "저작권 위반을 신고해야 하나요?" -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "팔로워 또는 데이터에 대한 접근 권한을 잃지 마세요." -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "취소하고 내 핸들 만들기" @@ -2890,12 +3014,16 @@ msgstr "새로 만들기" msgid "New" msgstr "새로 만들기" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" msgstr "새 대화" +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "새 메시지" + #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" msgstr "새 검토 리스트" @@ -2908,22 +3036,22 @@ msgstr "새 비밀번호" msgid "New Password" msgstr "새 비밀번호" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "새 게시물" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "새 게시물" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "새 게시물" @@ -2936,14 +3064,14 @@ msgstr "새 사용자 리스트" msgid "Newest replies first" msgstr "새로운 순" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "뉴스" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -2956,29 +3084,29 @@ msgstr "다음" msgid "Next image" msgstr "다음 이미지" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "아니요" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "설명 없음" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "DNS 패널 없음" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "인기 GIF를 찾을 수 없습니다. Tenor에 문제가 있을 수 있습니다." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "더 이상 {0} 님을 팔로우하지 않음" @@ -2986,25 +3114,39 @@ msgstr "더 이상 {0} 님을 팔로우하지 않음" msgid "No longer than 253 characters" msgstr "253자를 초과하지 않음" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" msgstr "아직 메시지가 없습니다" +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "더 이상 표시할 대화가 없습니다" + #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "아직 알림이 없습니다." +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "없음" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "결과 없음" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "결과 없음" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "결과를 찾을 수 없음" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "\"{query}\"에 대한 결과를 찾을 수 없습니다" @@ -3014,14 +3156,10 @@ msgstr "\"{query}\"에 대한 결과를 찾을 수 없습니다" msgid "No results found for {query}" msgstr "{query}에 대한 결과를 찾을 수 없습니다" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "\"{search}\"에 대한 검색 결과를 찾을 수 없습니다." -#: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "\"{searchText}\"에 대한 검색 결과를 찾을 수 없습니다." - #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 msgid "No thanks" @@ -3031,6 +3169,10 @@ msgstr "사용하지 않음" msgid "Nobody" msgstr "없음" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "아무도 답글을 달 수 없음" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3040,17 +3182,13 @@ msgstr "아직 아무도 좋아요를 누르지 않았습니다. 첫 번째가 msgid "Non-sexual Nudity" msgstr "선정적이지 않은 노출" -#: src/view/com/modals/SelfLabel.tsx:135 -#~ msgid "Not Applicable." -#~ msgstr "해당 없음." - #: src/Navigation.tsx:116 #: src/view/screens/Profile.tsx:100 msgid "Not Found" msgstr "찾을 수 없음" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "나중에 하기" @@ -3064,47 +3202,55 @@ msgstr "공유 관련 참고 사항" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "참고: Bluesky는 개방형 공개 네트워크입니다. 이 설정은 Bluesky 앱과 웹사이트에서만 내 콘텐츠가 표시되는 것을 제한하며, 다른 앱에서는 이 설정을 준수하지 않을 수 있습니다. 다른 앱과 웹사이트에서는 로그아웃한 사용자에게 내 콘텐츠가 계속 표시될 수 있습니다." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "빈 페이지" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "알림음" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "알림음" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "알림" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" msgstr "지금" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "노출" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "누드 또는 성인 콘텐츠로 설정되지 않은 콘텐츠" -#: src/screens/Signup/index.tsx:154 -#~ msgid "of" -#~ msgstr "" - #: src/lib/moderation/useLabelBehaviorDescription.ts:11 msgid "Off" msgstr "끄기" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "이런!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "이런! 뭔가 잘못되었습니다." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "확인" @@ -3116,14 +3262,18 @@ msgstr "확인" msgid "Oldest replies first" msgstr "오래된 순" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "온보딩 재설정" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "하나 이상의 이미지에 대체 텍스트가 누락되었습니다." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr ".jpg 및 .png 파일만 지원합니다" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "{0}만 답글을 달 수 있습니다." @@ -3132,33 +3282,46 @@ msgstr "{0}만 답글을 달 수 있습니다." msgid "Only contains letters, numbers, and hyphens" msgstr "문자, 숫자, 하이픈만 포함" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "이런, 뭔가 잘못되었습니다!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "이런!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "공개성" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "아바타 생성기 열기" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "대화 옵션 열기" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "이모티콘 선택기 열기" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "피드 옵션 메뉴 열기" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "링크를 인앱 브라우저로 열기" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "메시지 옵션 열기" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "뮤트한 단어 및 태그 설정 열기" @@ -3171,12 +3334,12 @@ msgstr "내비게이션 열기" msgid "Open post options menu" msgstr "게시물 옵션 메뉴 열기" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "스토리북 페이지 열기" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "시스템 로그 열기" @@ -3184,7 +3347,7 @@ msgstr "시스템 로그 열기" msgid "Opens {numItems} options" msgstr "{numItems}번째 옵션을 엽니다" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "접근성 설정을 엽니다" @@ -3200,11 +3363,15 @@ msgstr "이 알림에서 확장된 사용자 목록을 엽니다" msgid "Opens camera on device" msgstr "기기에서 카메라를 엽니다" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "대화 설정을 엽니다" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "답글 작성 상자를 엽니다" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "구성 가능한 언어 설정을 엽니다" @@ -3212,7 +3379,7 @@ msgstr "구성 가능한 언어 설정을 엽니다" msgid "Opens device photo gallery" msgstr "기기의 사진 갤러리를 엽니다" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "외부 임베드 설정을 엽니다" @@ -3234,52 +3401,52 @@ msgstr "GIF 선택 대화 상자를 엽니다" msgid "Opens list of invite codes" msgstr "초대 코드 목록을 엽니다" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "계정 삭제 확인을 위한 대화 상자를 엽니다. 이메일 코드가 필요합니다" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "Bluesky 비밀번호 변경을 위한 대화 상자를 엽니다" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "새로운 Bluesky 핸들을 선택하기 위한 대화 상자를 엽니다" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "Bluesky 계정 데이터(저장소)를 다운로드하기 위한 대화 상자를 엽니다" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "이메일 인증을 위한 대화 상자를 엽니다" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "사용자 지정 도메인을 사용하기 위한 대화 상자를 엽니다" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "검토 설정을 엽니다" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "비밀번호 재설정 양식을 엽니다" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" -msgstr "저장된 피드를 편집할 수 있는 화면을 엽니다" +msgstr "저장한 피드를 편집할 수 있는 화면을 엽니다" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" -msgstr "모든 저장된 피드 화면을 엽니다" +msgstr "모든 저장한 피드 화면을 엽니다" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "비밀번호 설정을 엽니다" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "팔로우 중 피드 설정을 엽니다" @@ -3287,20 +3454,16 @@ msgstr "팔로우 중 피드 설정을 엽니다" msgid "Opens the linked website" msgstr "연결된 웹사이트를 엽니다" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "메시지 설정 페이지를 엽니다" - -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "스토리북 페이지를 엽니다" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "시스템 로그 페이지를 엽니다" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "스레드 설정을 엽니다" @@ -3308,7 +3471,8 @@ msgstr "스레드 설정을 엽니다" msgid "Option {0} of {numItems}" msgstr "{numItems}개 중 {0}번째 옵션" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "선택 사항으로 아래에 추가 정보를 입력하세요:" @@ -3316,7 +3480,7 @@ msgstr "선택 사항으로 아래에 추가 정보를 입력하세요:" msgid "Or combine these options:" msgstr "또는 다음 옵션을 결합하세요:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "기타" @@ -3328,7 +3492,11 @@ msgstr "다른 계정" msgid "Other..." msgstr "기타…" -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "Bluesky 운영진이 신고를 검토한 결과, 귀하의 Bluesky 대화 접속을 비활성화하기로 결정했습니다." + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "페이지를 찾을 수 없음" @@ -3337,10 +3505,10 @@ msgstr "페이지를 찾을 수 없음" msgid "Page Not Found" msgstr "페이지를 찾을 수 없음" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "비밀번호" @@ -3372,34 +3540,38 @@ msgstr "@{0} 님이 팔로우한 사람들" msgid "People following @{0}" msgstr "@{0} 님을 팔로우하는 사람들" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "앨범에 접근할 수 있는 권한이 필요합니다." -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "앨범에 접근할 수 있는 권한이 거부되었습니다. 시스템 설정에서 활성화하세요." -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "반려동물" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "성인용 사진." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "홈에 고정" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "홈에 고정" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" -msgstr "고정된 피드" +msgstr "고정한 피드" + +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "내 피드에 고정됨" #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" @@ -3422,78 +3594,83 @@ msgstr "동영상 재생" msgid "Plays the GIF" msgstr "GIF를 재생합니다" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "핸들을 입력하세요." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "비밀번호를 입력하세요." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "인증 캡차를 완료해 주세요." -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "이메일을 변경하기 전에 이메일을 확인해 주세요. 이는 이메일 변경 도구가 추가되는 동안 일시적으로 요구되는 사항이며 곧 제거될 예정입니다." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "앱 비밀번호의 이름을 입력하세요. 모든 공백 문자는 허용되지 않습니다." -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "이 앱 비밀번호에 대해 고유한 이름을 입력하거나 무작위로 생성된 이름을 사용합니다." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "뮤트할 단어나 태그 또는 문구를 입력하세요" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "이메일을 입력하세요." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "비밀번호도 입력해 주세요:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "{0} 님이 이 라벨을 잘못 적용했다고 생각하는 이유를 설명해 주세요" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "채팅이 잘못 비활성화되었다고 생각하는 이유를 설명해 주세요" + #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" msgstr "@{0}(으)로 로그인하세요" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "이메일 인증하기" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "링크 카드를 완전히 불러올 때까지 기다려주세요" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "정치" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "음란물" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "게시하기" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "게시물" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "{0} 님의 게시물" @@ -3507,7 +3684,7 @@ msgstr "@{0} 님의 게시물" msgid "Post deleted" msgstr "게시물 삭제됨" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "게시물 숨김" @@ -3529,8 +3706,8 @@ msgstr "게시물 언어" msgid "Post Languages" msgstr "게시물 언어" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "게시물을 찾을 수 없음" @@ -3542,11 +3719,11 @@ msgstr "게시물" msgid "Posts" msgstr "게시물" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "게시물의 글 및 태그에 따라 게시물을 뮤트할 수 있습니다." -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "게시물 숨겨짐" @@ -3554,22 +3731,21 @@ msgstr "게시물 숨겨짐" msgid "Potentially Misleading Link" msgstr "오해의 소지가 있는 링크" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "다시 연결을 시도하려면 누르기" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "호스팅 제공자를 변경하려면 누릅니다" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "다시 시도하려면 누르기" -#: src/screens/Messages/Conversation/MessagesList.tsx:47 -#: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "다시 시도하려면 누르기" - #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" msgstr "이전 이미지" @@ -3582,7 +3758,7 @@ msgstr "주 언어" msgid "Prioritize Your Follows" msgstr "내 팔로우 먼저 표시" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "개인정보" @@ -3590,25 +3766,29 @@ msgstr "개인정보" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "개인정보 처리방침" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "다른 사용자와 비공개로 채팅하세요." + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "처리 중…" -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "프로필" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "프로필" @@ -3616,11 +3796,11 @@ msgstr "프로필" msgid "Profile updated" msgstr "프로필 업데이트됨" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "이메일을 인증하여 계정을 보호하세요." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "공공성" @@ -3632,11 +3812,11 @@ msgstr "일괄 뮤트하거나 차단할 수 있는 공개적이고 공유 가 msgid "Public, shareable lists which can drive feeds." msgstr "피드를 탐색할 수 있는 공개적이고 공유 가능한 목록입니다." -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "게시물 게시하기" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "답글 게시하기" @@ -3662,16 +3842,28 @@ msgstr "무작위" msgid "Ratios" msgstr "비율" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "이유:" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "최근 검색" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "다시 연결" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "대화 다시 불러오기" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "제거" @@ -3679,7 +3871,7 @@ msgstr "제거" msgid "Remove account" msgstr "계정 제거" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "아바타 제거" @@ -3687,22 +3879,25 @@ msgstr "아바타 제거" msgid "Remove Banner" msgstr "배너 제거" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "피드 제거" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "피드를 제거하시겠습니까?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "내 피드에서 제거" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "내 피드에서 제거하시겠습니까?" @@ -3714,7 +3909,7 @@ msgstr "이미지 제거" msgid "Remove image preview" msgstr "이미지 미리보기 제거" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "목록에서 뮤트한 단어 제거" @@ -3726,20 +3921,22 @@ msgstr "인용 제거" msgid "Remove repost" msgstr "재게시를 취소합니다" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" -msgstr "저장된 피드에서 이 피드를 제거합니다" +msgstr "저장한 피드에서 이 피드를 제거합니다" #: src/view/com/modals/ListAddRemoveUsers.tsx:199 #: src/view/com/modals/UserAddRemoveLists.tsx:152 msgid "Removed from list" msgstr "리스트에서 제거됨" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "내 피드에서 제거됨" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "내 피드에서 제거됨" @@ -3751,6 +3948,11 @@ msgstr "{0}에서 기본 미리보기 이미지를 제거합니다" msgid "Removes quoted post" msgstr "인용된 게시물을 제거합니다" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "Discover로 교체" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "답글" @@ -3759,49 +3961,52 @@ msgstr "답글" msgid "Replies to this thread are disabled" msgstr "이 스레드에 대한 답글이 비활성화됩니다." -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "답글" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "답글 필터" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "<0><1/> 님에게 보내는 답글" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" msgstr "신고" -#: src/components/dms/ConvoMenu.tsx:146 -#: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "계정 신고" - #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "계정 신고" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "대화 신고" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "신고 대화 상자" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "피드 신고" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "리스트 신고" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" msgstr "메시지 신고" @@ -3810,30 +4015,36 @@ msgstr "메시지 신고" msgid "Report post" msgstr "게시물 신고" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "이 콘텐츠 신고하기" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "이 피드 신고하기" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "이 리스트 신고하기" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "이 메시지 신고하기" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "이 게시물 신고하기" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "이 사용자 신고하기" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "재게시" @@ -3851,24 +4062,24 @@ msgstr "재게시 또는 게시물 인용" msgid "Reposted By" msgstr "재게시한 사용자" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "{0} 님이 재게시함" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "<0><1/> 님이 재게시함" #: src/view/com/notifications/FeedItem.tsx:160 msgid "reposted your post" -msgstr "님이 내 게시물을 재게시했습니다" +msgstr "이(가) 내 게시물을 재게시했습니다" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "이 게시물의 재게시" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "변경 요청" @@ -3881,7 +4092,7 @@ msgstr "코드 요청" msgid "Require alt text before posting" msgstr "게시하기 전 대체 텍스트 필수" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "계정에 로그인할 때 이메일 코드 필수" @@ -3889,8 +4100,8 @@ msgstr "계정에 로그인할 때 이메일 코드 필수" msgid "Required for this provider" msgstr "이 제공자에서 필수" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "이메일 다시 보내기" @@ -3902,8 +4113,8 @@ msgstr "재설정 코드" msgid "Reset Code" msgstr "재설정 코드" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "온보딩 상태 초기화" @@ -3911,20 +4122,20 @@ msgstr "온보딩 상태 초기화" msgid "Reset password" msgstr "비밀번호 재설정" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "설정 상태 초기화" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "온보딩 상태 초기화" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "설정 상태 초기화" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "로그인을 다시 시도합니다" @@ -3933,25 +4144,22 @@ msgstr "로그인을 다시 시도합니다" msgid "Retries the last action, which errored out" msgstr "오류가 발생한 마지막 작업을 다시 시도합니다" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 msgid "Retry" msgstr "다시 시도" -#: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "다시 시도" - #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "이전 페이지로 돌아갑니다" @@ -3960,26 +4168,26 @@ msgid "Returns to home page" msgstr "홈 페이지로 돌아갑니다" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "이전 페이지로 돌아갑니다" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "저장" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "저장" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "대체 텍스트 저장" @@ -3991,7 +4199,7 @@ msgstr "생년월일 저장" msgid "Save Changes" msgstr "변경 사항 저장" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "핸들 변경 저장" @@ -3999,24 +4207,21 @@ msgstr "핸들 변경 저장" msgid "Save image crop" msgstr "이미지 자르기 저장" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "내 피드에 저장" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" -msgstr "저장된 피드" +msgstr "저장한 피드" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" -msgstr "" +msgstr "내 앨범에 저장됨" -#: src/view/com/lightbox/Lightbox.tsx:81 -#~ msgid "Saved to your camera roll." -#~ msgstr "내 앨범에 저장됨" - -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "내 피드에 저장됨" @@ -4024,7 +4229,7 @@ msgstr "내 피드에 저장됨" msgid "Saves any changes to your profile" msgstr "프로필에 대한 모든 변경 사항을 저장합니다" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "핸들을 {handle}(으)로 변경합니다" @@ -4032,16 +4237,20 @@ msgstr "핸들을 {handle}(으)로 변경합니다" msgid "Saves image crop settings" msgstr "이미지 자르기 설정을 저장합니다" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "인사해 보세요!" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "과학" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "맨 위로 스크롤" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4049,12 +4258,12 @@ msgstr "맨 위로 스크롤" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "검색" @@ -4074,10 +4283,6 @@ msgstr "{displayTag} 태그를 사용한 @{authorHandle} 님의 모든 게시물 msgid "Search for all posts with tag {displayTag}" msgstr "{displayTag} 태그를 사용한 모든 게시물 검색" -#: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "대화를 시작할 사람을 검색하세요." - #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 #: src/view/com/modals/ListAddRemoveUsers.tsx:70 @@ -4088,7 +4293,8 @@ msgstr "사용자 검색하기" msgid "Search GIFs" msgstr "GIF 검색하기" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" msgstr "프로필 검색" @@ -4096,7 +4302,7 @@ msgstr "프로필 검색" msgid "Search Tenor" msgstr "Tenor 검색" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "보안 단계 필요" @@ -4117,11 +4323,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "이 사용자의 <0>{displayTag} 게시물 보기" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "프로필 보기" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "이 가이드" @@ -4129,10 +4335,22 @@ msgstr "이 가이드" msgid "Select {item}" msgstr "{item} 선택" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "색상 선택" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "계정 선택" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "아바타 선택" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "이모티콘 선택" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "기존 계정에서 선택" @@ -4141,7 +4359,7 @@ msgstr "기존 계정에서 선택" msgid "Select GIF" msgstr "GIF 선택" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "GIF \"{0}\" 선택" @@ -4161,7 +4379,11 @@ msgstr "{numItems}개 중 {i}번째 옵션을 선택합니다" msgid "Select some accounts below to follow" msgstr "아래에서 팔로우할 계정을 선택하세요" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "{emojiName} 이모티콘을 아바타로 선택하기" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "신고할 검토 서비스를 선택하세요." @@ -4189,7 +4411,7 @@ msgstr "앱에 표시되는 기본 텍스트 언어를 선택합니다." msgid "Select your date of birth" msgstr "생년월일을 선택하세요" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "아래 옵션에서 관심사를 선택하세요" @@ -4205,32 +4427,38 @@ msgstr "기본 알고리즘 피드를 선택하세요" msgid "Select your secondary algorithmic feeds" msgstr "보조 알고리즘 피드를 선택하세요" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "멋진 웹사이트 링크를 보내 보세요!" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "인증 이메일 보내기" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "이메일 보내기" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "이메일 보내기" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "피드백 보내기" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" msgstr "메시지 보내기" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "신고 보내기" @@ -4238,12 +4466,12 @@ msgstr "신고 보내기" msgid "Send report to {0}" msgstr "{0} 님에게 신고 보내기" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "인증 메일 보내기" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "계정 삭제를 위한 확인 코드가 포함된 이메일을 전송합니다" @@ -4259,15 +4487,15 @@ msgstr "생년월일 설정" msgid "Set new password" msgstr "새 비밀번호 설정" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "피드에서 모든 인용 게시물을 숨기려면 이 설정을 \"아니요\"로 설정합니다. 재게시는 계속 표시됩니다." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "피드에서 모든 답글을 숨기려면 이 설정을 \"아니요\"로 설정합니다." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "피드에서 모든 재게시를 숨기려면 이 설정을 \"아니요\"로 설정합니다." @@ -4275,35 +4503,35 @@ msgstr "피드에서 모든 재게시를 숨기려면 이 설정을 \"아니요\ msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "스레드 보기에 답글을 표시하려면 이 설정을 \"예\"로 설정합니다. 이는 실험적인 기능입니다." -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." -msgstr "팔로우 중 피드에 저장된 피드 샘플을 표시하려면 이 설정을 \"예\"로 설정합니다. 이는 실험적인 기능입니다." +msgstr "팔로우 중 피드에 저장한 피드 샘플을 표시하려면 이 설정을 \"예\"로 설정합니다. 이는 실험적인 기능입니다." #: src/screens/Onboarding/Layout.tsx:48 msgid "Set up your account" msgstr "계정 설정하기" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Bluesky 사용자 이름을 설정합니다" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "색상 테마를 어두움으로 설정합니다" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "색상 테마를 밝음으로 설정합니다" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "색상 테마를 시스템 설정에 맞춥니다" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "어두운 테마를 완전히 어둡게 설정합니다" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "어두운 테마를 살짝 밝게 설정합니다" @@ -4324,15 +4552,14 @@ msgid "Sets image aspect ratio to wide" msgstr "이미지 비율을 가로로 길게 설정합니다" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "설정" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "성행위 또는 선정적인 노출." @@ -4340,7 +4567,7 @@ msgstr "성행위 또는 선정적인 노출." msgid "Sexually Suggestive" msgstr "외설적" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "공유" @@ -4350,18 +4577,26 @@ msgstr "공유" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "공유" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "멋진 이야기를 전하세요!" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "재미있는 사실을 전하세요!" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "무시하고 공유" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "피드 공유" @@ -4370,25 +4605,25 @@ msgstr "피드 공유" msgid "Share Link" msgstr "링크 공유" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "좋아하는 피드를 공유해 보세요!" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "연결된 웹사이트를 공유합니다" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "표시" -#: src/view/screens/PreferencesFollowingFeed.tsx:68 -#~ msgid "Show all replies" -#~ msgstr "모든 답글 표시" - #: src/view/com/util/post-embeds/GifEmbed.tsx:167 msgid "Show alt text" -msgstr "" +msgstr "대체 텍스트 표시" #: src/components/moderation/ScreenHider.tsx:169 #: src/components/moderation/ScreenHider.tsx:172 @@ -4404,31 +4639,39 @@ msgstr "배지 표시" msgid "Show badge and filter from feeds" msgstr "배지 표시 및 피드에서 필터링" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "{0} 님과 비슷한 팔로우 표시" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "숨겨진 답글 표시" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" -msgstr "" +msgstr "이런 항목 덜 보기" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "더 보기" #: src/view/com/util/forms/PostDropdownBtn.tsx:297 #: src/view/com/util/forms/PostDropdownBtn.tsx:299 msgid "Show more like this" -msgstr "" +msgstr "이런 항목 더 보기" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "뮤트된 답글 표시" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "내 피드에서 게시물 표시" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "인용 게시물 표시" @@ -4444,7 +4687,7 @@ msgstr "팔로우 중 피드에 인용 표시" msgid "Show re-posts in Following feed" msgstr "팔로우 중 피드에 재게시 표시" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "답글 표시" @@ -4460,11 +4703,7 @@ msgstr "팔로우 중 피드에 답글 표시" msgid "Show replies in Following feed" msgstr "팔로우 중 피드에 답글 표시" -#: src/view/screens/PreferencesFollowingFeed.tsx:70 -#~ msgid "Show replies with at least {value} {0}" -#~ msgstr "좋아요가 {value}개 이상인 답글 표시" - -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "재게시 표시" @@ -4473,7 +4712,7 @@ msgid "Show reposts in Following" msgstr "팔로우 중 피드에 재게시 표시" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "콘텐츠 표시" @@ -4497,17 +4736,17 @@ msgstr "피드에 {0} 님의 게시물을 표시합니다" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4530,17 +4769,17 @@ msgstr "대화에 참여하려면 로그인하거나 계정을 만드세요!" msgid "Sign into Bluesky or create a new account" msgstr "Bluesky에 로그인하거나 새 계정 만들기" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "로그아웃" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -4556,7 +4795,7 @@ msgstr "가입 또는 로그인하여 대화에 참여하세요" msgid "Sign-in Required" msgstr "로그인 필요" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "로그인한 계정" @@ -4565,31 +4804,35 @@ msgstr "로그인한 계정" msgid "Signed in as @{0}" msgstr "@{0}(으)로 로그인했습니다" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "건너뛰기" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "이 단계 건너뛰기" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "소프트웨어 개발" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "몇몇 사람들이 답글을 달 수 있음" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "알 수 없는 오류가 발생했습니다" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." -msgstr "뭔가 잘못되었습니다. 다시 시도해 주세요." +msgstr "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요." -#: src/lib/hooks/useAccountSwitcher.ts:60 -#~ msgid "Sorry! We need you to enter your password." -#~ msgstr "죄송합니다. 비밀번호를 입력해 주세요." - -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "죄송합니다. 세션이 만료되었습니다. 다시 로그인해 주세요." @@ -4601,19 +4844,20 @@ msgstr "답글 정렬" msgid "Sort replies to the same post by:" msgstr "동일한 게시물에 대한 답글을 정렬하는 기준입니다." -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "출처:" +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "출처: <0>{0}" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "스팸" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "스팸, 과도한 멘션 또는 답글" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "스포츠" @@ -4621,45 +4865,51 @@ msgstr "스포츠" msgid "Square" msgstr "정사각형" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" msgstr "새 대화 시작하기" -#: src/view/screens/Settings/index.tsx:896 +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "{displayName} 님과 대화 시작하기" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "대화 시작하기" + +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" msgstr "상태 페이지" -#: src/screens/Signup/index.tsx:154 -#~ msgid "Step" -#~ msgstr "" - #: src/screens/Signup/index.tsx:154 msgid "Step {0} of {1}" -msgstr "" +msgstr "{1}단계 중 {0}단계" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "스토리지가 지워졌으며 지금 앱을 다시 시작해야 합니다." #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "스토리북" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "확인" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "구독" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" -msgstr "이 라벨을 사용하려면 @{0} 님을 구독하세요:" +msgstr "이 라벨을 사용하려면 @{0}을(를) 구독하세요." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "라벨러 구독" @@ -4668,11 +4918,11 @@ msgstr "라벨러 구독" msgid "Subscribe to the {0} feed" msgstr "{0} 피드 구독하기" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "이 라벨러 구독하기" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "이 리스트 구독하기" @@ -4684,7 +4934,7 @@ msgstr "팔로우 추천" msgid "Suggested for you" msgstr "나를 위한 추천" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "외설적" @@ -4699,23 +4949,23 @@ msgstr "지원" msgid "Switch Account" msgstr "계정 전환" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "{0}(으)로 전환" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "로그인한 계정을 전환합니다" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "시스템" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "시스템 로그" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "태그" @@ -4731,41 +4981,47 @@ msgstr "세로" msgid "Tap to view fully" msgstr "탭하여 전체 크기로 봅니다" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "기술" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "농담해 보세요!" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "이용약관" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "서비스 이용약관" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "커뮤니티 기준을 위반하는 용어 사용" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "글" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "텍스트 입력 필드" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "감사합니다. 신고를 전송했습니다." -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "텍스트 파일 내용:" @@ -4773,15 +5029,11 @@ msgstr "텍스트 파일 내용:" msgid "That handle is already taken." msgstr "이 핸들은 이미 사용 중입니다." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "차단을 해제하면 이 계정이 나와 상호작용할 수 있게 됩니다." -#: src/components/moderation/ModerationDetailsDialog.tsx:127 -#~ msgid "the author" -#~ msgstr "작성자" - #: src/view/screens/CommunityGuidelines.tsx:36 msgid "The Community Guidelines have been moved to <0/>" msgstr "커뮤니티 가이드라인을 <0/>(으)로 이동했습니다" @@ -4790,11 +5042,15 @@ msgstr "커뮤니티 가이드라인을 <0/>(으)로 이동했습니다" msgid "The Copyright Policy has been moved to <0/>" msgstr "저작권 정책을 <0/>(으)로 이동했습니다" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "피드를 Discover로 교체했습니다." + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "내 계정에 다음 라벨이 적용되었습니다." -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "내 콘텐츠에 다음 라벨이 적용되었습니다." @@ -4802,8 +5058,8 @@ msgstr "내 콘텐츠에 다음 라벨이 적용되었습니다." msgid "The following steps will help customize your Bluesky experience." msgstr "다음 단계는 Bluesky 환경을 맞춤 설정하는 데 도움이 됩니다." -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "게시물이 삭제되었을 수 있습니다." @@ -4823,37 +5079,36 @@ msgstr "서비스 이용약관을 다음으로 이동했습니다:" msgid "There are many feeds to try:" msgstr "시도해 볼 만한 피드:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "서버에 연결하는 동안 문제가 발생했습니다. 인터넷 연결을 확인한 후 다시 시도하세요." -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "이 피드를 삭제하는 동안 문제가 발생했습니다. 인터넷 연결을 확인한 후 다시 시도하세요." -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "피드를 업데이트하는 동안 문제가 발생했습니다. 인터넷 연결을 확인한 후 다시 시도하세요." -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "Tenor에 연결하는 동안 문제가 발생했습니다." -#: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" - -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "서버에 연결하는 동안 문제가 발생했습니다" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "서버에 연결하는 동안 문제가 발생했습니다" @@ -4861,7 +5116,7 @@ msgstr "서버에 연결하는 동안 문제가 발생했습니다" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "알림을 가져오는 동안 문제가 발생했습니다. 이곳을 탭하여 다시 시도하세요." -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "게시물을 가져오는 동안 문제가 발생했습니다. 이곳을 탭하여 다시 시도하세요." @@ -4874,7 +5129,8 @@ msgstr "리스트를 가져오는 동안 문제가 발생했습니다. 이곳을 msgid "There was an issue fetching your lists. Tap here to try again." msgstr "리스트를 가져오는 동안 문제가 발생했습니다. 이곳을 탭하여 다시 시도하세요." -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "신고를 전송하는 동안 문제가 발생했습니다. 인터넷 연결을 확인해 주세요." @@ -4882,32 +5138,32 @@ msgstr "신고를 전송하는 동안 문제가 발생했습니다. 인터넷 msgid "There was an issue syncing your preferences with the server" msgstr "설정을 서버와 동기화하는 동안 문제가 발생했습니다" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "앱 비밀번호를 가져오는 동안 문제가 발생했습니다" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "문제가 발생했습니다! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "문제가 발생했습니다. 인터넷 연결을 확인한 후 다시 시도하세요." -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "애플리케이션에 예기치 않은 문제가 발생했습니다. 이런 일이 발생하면 저희에게 알려주세요!" @@ -4928,13 +5184,21 @@ msgstr "이 {screenDescription}에 다음 플래그가 지정되었습니다:" msgid "This account has requested that users sign in to view their profile." msgstr "이 계정의 프로필을 보려면 로그인해야 합니다." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "이 계정은 하나 이상의 검토 리스트에 의해 차단되었습니다. 차단을 해제하려면 해당 리스트로 직접 이동하여 이 사용자를 제거하세요." + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "이 이의신청은 <0>{0}에게 보내집니다." -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." -msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." +msgstr "이 이의신청은 Bluesky Moderation Service로 보내집니다." + +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "이 채팅은 연결이 끊어졌습니다" #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." @@ -4953,21 +5217,21 @@ msgstr "이 콘텐츠는 {0}에서 호스팅됩니다. 외부 미디어를 사 msgid "This content is not available because one of the users involved has blocked the other." msgstr "관련 사용자 중 한 명이 다른 사용자를 차단했기 때문에 이 콘텐츠를 사용할 수 없습니다." -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "이 콘텐츠는 Bluesky 계정이 없으면 볼 수 없습니다." -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "이 기능은 베타 버전입니다. 저장소 내보내기에 대한 자세한 내용은 <0>이 블로그 글에서 확인할 수 있습니다." -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "이 피드는 현재 트래픽이 많아 일시적으로 사용할 수 없습니다. 나중에 다시 시도해 주세요." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "이 피드는 비어 있습니다." @@ -4975,27 +5239,31 @@ msgstr "이 피드는 비어 있습니다." msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "이 피드는 비어 있습니다. 더 많은 사용자를 팔로우하거나 언어 설정을 조정해 보세요." +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "이 피드는 더 이상 온라인 상태가 아닙니다. 대신 <0>Discover를 표시합니다." + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "이 정보는 다른 사용자와 공유되지 않습니다." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "이는 이메일을 변경하거나 비밀번호를 재설정해야 할 때 중요한 정보입니다." -#: src/components/moderation/ModerationDetailsDialog.tsx:124 -#~ msgid "This label was applied by {0}." -#~ msgstr "이 라벨은 {0}이(가) 적용했습니다." - #: src/components/moderation/ModerationDetailsDialog.tsx:127 msgid "This label was applied by <0>{0}." -msgstr "" +msgstr "이 라벨은 {0}이(가) 적용했습니다." #: src/components/moderation/ModerationDetailsDialog.tsx:125 msgid "This label was applied by the author." -msgstr "" +msgstr "이 라벨은 작성자가 적용했습니다." -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "이 라벨은 내가 적용했습니다." + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "이 라벨러는 라벨을 게시하지 않았으며 활성화되어 있지 않을 수 있습니다." @@ -5003,7 +5271,7 @@ msgstr "이 라벨러는 라벨을 게시하지 않았으며 활성화되어 있 msgid "This link is taking you to the following website:" msgstr "이 링크를 클릭하면 다음 웹사이트로 이동합니다:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "이 리스트는 비어 있습니다." @@ -5011,11 +5279,11 @@ msgstr "이 리스트는 비어 있습니다." msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "이 검토 서비스는 사용할 수 없습니다. 자세한 내용은 아래를 참조하세요. 이 문제가 지속되면 문의해 주세요." -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "이 이름은 이미 사용 중입니다" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "이 게시물은 삭제되었습니다." @@ -5036,7 +5304,7 @@ msgstr "이 프로필은 로그인한 사용자에게만 표시됩니다. 로그 msgid "This service has not provided terms of service or a privacy policy." msgstr "이 서비스는 서비스 이용약관이나 개인정보 처리방침을 제공하지 않습니다." -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "이 도메인에 레코드가 추가됩니다:" @@ -5044,6 +5312,10 @@ msgstr "이 도메인에 레코드가 추가됩니다:" msgid "This user doesn't have any followers." msgstr "이 사용자는 팔로워가 없습니다." +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "이 사용자는 나를 차단했습니다" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5065,20 +5337,16 @@ msgstr "이 사용자는 내가 뮤트한 <0>{0} 리스트에 포함되어 msgid "This user isn't following anyone." msgstr "이 사용자는 아무도 팔로우하지 않았습니다." -#: src/view/com/modals/SelfLabel.tsx:137 -#~ msgid "This warning is only available for posts with media attached." -#~ msgstr "이 경고는 미디어가 첨부된 게시물에만 사용할 수 있습니다." - -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "뮤트한 단어에서 {0}이(가) 삭제됩니다. 나중에 언제든지 다시 추가할 수 있습니다." -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "스레드 설정" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "스레드 설정" @@ -5090,15 +5358,19 @@ msgstr "스레드 모드" msgid "Threads Preferences" msgstr "스레드 설정" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "이메일 2단계 인증을 비활성화하려면 이메일 주소에 대한 접근 권한을 인증하세요." +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "대화를 신고하려면 대화 화면에서 해당 메시지 중 하나를 신고하세요. 이렇게 하면 운영진이 문제의 맥락을 파악할 수 있습니다." + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "이 신고를 누구에게 보내시겠습니까?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "뮤트한 단어 옵션 사이를 전환합니다." @@ -5131,60 +5403,69 @@ msgctxt "action" msgid "Try again" msgstr "다시 시도" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "2단계 인증" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" msgstr "메시지를 입력하세요" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "유형:" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "리스트 차단 해제" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "리스트 언뮤트" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "서비스에 연결할 수 없습니다. 인터넷 연결을 확인하세요." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "차단 해제" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "차단 해제" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "계정 차단 해제" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "계정 차단 해제" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "계정을 차단 해제하시겠습니까?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "재게시 취소" @@ -5198,7 +5479,7 @@ msgstr "언팔로우" msgid "Unfollow" msgstr "언팔로우" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "{0} 님을 언팔로우" @@ -5207,16 +5488,12 @@ msgstr "{0} 님을 언팔로우" msgid "Unfollow Account" msgstr "계정 언팔로우" -#: src/view/com/util/post-ctrls/PostCtrls.tsx:197 -#~ msgid "Unlike" -#~ msgstr "좋아요 취소" - -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "이 피드 좋아요 취소" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "언뮤트" @@ -5233,8 +5510,8 @@ msgstr "계정 언뮤트" msgid "Unmute all {displayTag} posts" msgstr "모든 {tag} 게시물 언뮤트" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" msgstr "알림 언뮤트" #: src/view/com/util/forms/PostDropdownBtn.tsx:321 @@ -5242,28 +5519,33 @@ msgstr "알림 언뮤트" msgid "Unmute thread" msgstr "스레드 언뮤트" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "고정 해제" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "홈에서 고정 해제" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "검토 리스트 고정 해제" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "내 피드에서 고정 해제됨" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "구독 취소" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "이 라벨러 구독 취소하기" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "원치 않는 성적 콘텐츠" @@ -5271,7 +5553,7 @@ msgstr "원치 않는 성적 콘텐츠" msgid "Update {displayName} in Lists" msgstr "리스트에서 {displayName} 업데이트" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "{handle}로 변경" @@ -5279,42 +5561,46 @@ msgstr "{handle}로 변경" msgid "Updating..." msgstr "업데이트 중…" -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "대신 사진 업로드하기" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "텍스트 파일 업로드 경로:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "카메라에서 업로드" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "파일에서 업로드" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "라이브러리에서 업로드" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "서버에 있는 파일을 사용합니다" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "앱 비밀번호를 사용하면 계정이나 비밀번호에 대한 전체 접근 권한을 제공하지 않고도 다른 Bluesky 클라이언트에 로그인할 수 있습니다." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "호스팅 제공자로 bsky.social을 사용합니다" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "기본 제공자 사용" @@ -5328,11 +5614,15 @@ msgstr "인앱 브라우저 사용" msgid "Use my default browser" msgstr "내 기본 브라우저 사용" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "추천 사용" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "DNS 패널을 사용합니다" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "이 비밀번호와 핸들을 사용하여 다른 앱에 로그인하세요." @@ -5349,6 +5639,10 @@ msgstr "사용자 차단됨" msgid "User Blocked by \"{0}\"" msgstr " \"{0}\"에서 차단된 사용자" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "리스트로 사용자 차단됨" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "리스트로 사용자 차단됨" @@ -5366,13 +5660,13 @@ msgstr "나를 차단한 사용자" msgid "User list by {0}" msgstr "{0} 님의 사용자 리스트" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "<0/> 님의 사용자 리스트" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "내 사용자 리스트" @@ -5388,11 +5682,11 @@ msgstr "사용자 리스트 업데이트됨" msgid "User Lists" msgstr "사용자 리스트" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "사용자 이름 또는 이메일 주소" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "사용자" @@ -5400,6 +5694,13 @@ msgstr "사용자" msgid "users followed by <0/>" msgstr "<0/> 님이 팔로우한 사용자" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "내가 팔로우하는 사용자" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "\"{0}\"에 있는 사용자" @@ -5408,52 +5709,48 @@ msgstr "\"{0}\"에 있는 사용자" msgid "Users that have liked this content or profile" msgstr "이 콘텐츠 또는 프로필을 좋아하는 사용자" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "값:" -#: src/view/com/modals/ChangeHandle.tsx:510 -#~ msgid "Verify {0}" -#~ msgstr "{0} 확인" - -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" -msgstr "" +msgstr "DNS 레코드 인증" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "이메일 인증" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "내 이메일 인증하기" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "내 이메일 인증하기" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "새 이메일 인증" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" -msgstr "" +msgstr "텍스트 파일 인증" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "이메일 인증하기" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" msgstr "버전 {appVersion} {bundleInfo}" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "비디오 게임" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "{0} 님의 아바타를 봅니다" @@ -5461,25 +5758,25 @@ msgstr "{0} 님의 아바타를 봅니다" msgid "View debug entry" msgstr "디버그 항목 보기" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "세부 정보 보기" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "저작권 위반 신고에 대한 세부 정보 보기" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "전체 스레드 보기" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "이 라벨에 대한 정보 보기" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "프로필 보기" @@ -5491,7 +5788,7 @@ msgstr "아바타 보기" msgid "View the labeling service provided by @{0}" msgstr "{0} 님이 제공하는 라벨링 서비스 보기" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "이 피드를 좋아하는 사용자 보기" @@ -5519,11 +5816,15 @@ msgstr "콘텐츠 경고 및 피드에서 필터링" msgid "We couldn't find any results for that hashtag." msgstr "해당 해시태그에 대한 결과를 찾을 수 없습니다." +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "이 대화를 불러올 수 없습니다" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "계정이 준비될 때까지 {estimatedTime}이(가) 걸릴 것으로 예상됩니다." -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "즐거운 시간 되시기 바랍니다. Bluesky의 다음 특징을 기억하세요:" @@ -5531,7 +5832,7 @@ msgstr "즐거운 시간 되시기 바랍니다. Bluesky의 다음 특징을 기 msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "팔로우한 사용자의 게시물이 부족합니다. 대신 <0/>의 최신 게시물을 표시합니다." -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "게시물이 표시되지 않을 수 있으므로 많은 게시물에 자주 등장하는 단어는 피하는 것이 좋습니다." @@ -5547,7 +5848,7 @@ msgstr "생년월일 설정을 불러올 수 없습니다. 다시 시도해 주 msgid "We were unable to load your configured labelers at this time." msgstr "현재 구성된 라벨러를 불러올 수 없습니다." -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "연결하지 못했습니다. 계정 설정을 계속하려면 다시 시도해 주세요. 계속 실패하면 이 과정을 건너뛸 수 있습니다." @@ -5555,10 +5856,14 @@ msgstr "연결하지 못했습니다. 계정 설정을 계속하려면 다시 msgid "We will let you know when your account is ready." msgstr "계정이 준비되면 알려드리겠습니다." -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "이를 통해 사용자 환경을 맞춤 설정할 수 있습니다." +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "네트워크 문제가 발생했습니다. 다시 시도하세요" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "함께하게 되어 정말 기뻐요!" @@ -5567,7 +5872,7 @@ msgstr "함께하게 되어 정말 기뻐요!" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "죄송하지만 이 리스트를 불러올 수 없습니다. 이 문제가 계속되면 리스트 작성자인 @{handleOrDid}에게 문의하세요." -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "죄송하지만 현재 뮤트한 단어를 불러올 수 없습니다. 다시 시도해 주세요." @@ -5575,22 +5880,22 @@ msgstr "죄송하지만 현재 뮤트한 단어를 불러올 수 없습니다. msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "죄송하지만 검색을 완료할 수 없습니다. 몇 분 후에 다시 시도해 주세요." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "죄송합니다. 페이지를 찾을 수 없습니다." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "죄송합니다. 라벨러는 10개까지만 구독할 수 있으며 10개에 도달했습니다." -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "어떤 관심사가 있으신가요?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "무슨 일이 일어나고 있나요?" @@ -5602,28 +5907,41 @@ msgstr "이 게시물에 어떤 언어가 사용되나요?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "알고리즘 피드에 어떤 언어를 표시하시겠습니까?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "누구의 메시지를 허용하시겠습니까?" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "답글을 달 수 있는 사람" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "이런!" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "이 콘텐츠를 검토해야 하는 이유는 무엇인가요?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "이 피드를 검토해야 하는 이유는 무엇인가요?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "이 리스트를 검토해야 하는 이유는 무엇인가요?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "이 메시지를 검토해야 하는 이유는 무엇인가요?" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "이 게시물을 검토해야 하는 이유는 무엇인가요?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "이 사용자를 검토해야 하는 이유는 무엇인가요?" @@ -5631,35 +5949,35 @@ msgstr "이 사용자를 검토해야 하는 이유는 무엇인가요?" msgid "Wide" msgstr "가로" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" msgstr "메시지를 입력하세요" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "게시물 작성" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "답글 작성하기" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "작가" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "예" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" msgstr "어제 {time}" @@ -5680,6 +5998,14 @@ msgstr "팔로우할 새로운 맞춤 피드를 찾을 수도 있습니다." msgid "You can change these settings later." msgstr "이 설정은 나중에 변경할 수 있습니다." +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "언제든지 변경할 수 있습니다." + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "어떤 설정을 선택하든 진행 중인 대화를 계속할 수 있습니다." + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -5693,22 +6019,22 @@ msgstr "팔로워가 없습니다." msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "아직 초대 코드가 없습니다! Bluesky를 좀 더 오래 사용하신 후에 보내드리겠습니다." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." -msgstr "고정된 피드가 없습니다." +msgstr "고정한 피드가 없습니다." -#: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "저장된 피드가 없습니다!" - -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." -msgstr "저장된 피드가 없습니다." +msgstr "저장한 피드가 없습니다." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "작성자를 차단했거나 작성자가 나를 차단했습니다." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "이 사용자를 차단했습니다" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -5739,6 +6065,10 @@ msgstr "내가 이 계정을 뮤트했습니다." msgid "You have muted this user" msgstr "내가 이 사용자를 뮤트했습니다" +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "아직 대화가 없습니다. 시작해 보세요!" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "피드가 없습니다." @@ -5748,15 +6078,11 @@ msgstr "피드가 없습니다." msgid "You have no lists." msgstr "리스트가 없습니다." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "아직 메시지가 없습니다. 사람들과 대화를 시작해 보세요!" - #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." msgstr "아직 어떤 계정도 차단하지 않았습니다. 계정을 차단하려면 해당 계정의 프로필로 이동하여 계정 메뉴에서 \"계정 차단\"을 선택하세요." -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "아직 앱 비밀번호를 생성하지 않았습니다. 아래 버튼을 눌러 생성할 수 있습니다." @@ -5764,11 +6090,19 @@ msgstr "아직 앱 비밀번호를 생성하지 않았습니다. 아래 버튼 msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." msgstr "아직 어떤 계정도 뮤트하지 않았습니다. 계정을 뮤트하려면 해당 계정의 프로필로 이동하여 계정 메뉴에서 \"계정 뮤트\"를 선택하세요." -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "끝에 도달했습니다" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "아직 어떤 단어나 태그도 뮤트하지 않았습니다" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "비셀프 라벨이 잘못 지정되었다고 생각되면 이의신청할 수 있습니다." + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "이 라벨이 잘못 지정되었다고 생각되면 이의신청할 수 있습니다." @@ -5780,7 +6114,7 @@ msgstr "가입하려면 만 13세 이상이어야 합니다." msgid "You must be 18 years or older to enable adult content" msgstr "성인 콘텐츠를 사용하려면 만 18세 이상이어야 합니다." -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "신고하려면 하나 이상의 라벨을 선택해야 합니다." @@ -5796,7 +6130,7 @@ msgstr "이제 이 스레드에 대한 알림을 받습니다" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "\"재설정 코드\"가 포함된 이메일을 받게 되면 여기에 해당 코드를 입력한 다음 새 비밀번호를 입력합니다." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" msgstr "나: {0}" @@ -5810,7 +6144,7 @@ msgstr "직접 제어하세요" msgid "You're in line" msgstr "대기 중입니다" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "준비가 끝났습니다!" @@ -5827,11 +6161,11 @@ msgstr "피드 끝에 도달했습니다! 팔로우할 계정을 더 찾아보 msgid "Your account" msgstr "내 계정" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "계정을 삭제했습니다" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "모든 공개 데이터 레코드가 포함된 계정 저장소를 \"CAR\" 파일로 다운로드할 수 있습니다. 이 파일에는 이미지와 같은 미디어 임베드나 별도로 가져와야 하는 비공개 데이터는 포함되지 않습니다." @@ -5839,6 +6173,10 @@ msgstr "모든 공개 데이터 레코드가 포함된 계정 저장소를 \"CAR msgid "Your birth date" msgstr "생년월일" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "대화가 사용 중지되었습니다" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "선택 사항은 저장되며 나중에 설정에서 변경할 수 있습니다." @@ -5848,16 +6186,16 @@ msgid "Your default feed is \"Following\"" msgstr "기본 피드는 \"팔로우 중\"입니다" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "이메일이 잘못된 것 같습니다." -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "이메일이 변경되었지만 인증되지 않았습니다. 다음 단계로 새 이메일을 인증해 주세요." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "이메일이 아직 인증되지 않았습니다. 이는 중요한 보안 단계이므로 권장하는 사항입니다." @@ -5869,11 +6207,11 @@ msgstr "팔로우 중 피드가 비어 있습니다! 더 많은 사용자를 팔 msgid "Your full handle will be" msgstr "내 전체 핸들:" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "내 전체 핸들: <0>@{0}" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "뮤트한 단어" @@ -5881,22 +6219,26 @@ msgstr "뮤트한 단어" msgid "Your password has been changed successfully!" msgstr "비밀번호를 성공적으로 변경했습니다." -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "게시물을 게시했습니다" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "게시물, 좋아요, 차단 목록은 공개됩니다. 뮤트 목록은 공개되지 않습니다." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "내 프로필" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "내 답글을 게시했습니다" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "신고가 Bluesky Moderation Service로 보내집니다." + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "내 사용자 핸들" diff --git a/src/locale/locales/pt-BR/messages.po b/src/locale/locales/pt-BR/messages.po index 7a4ac1dd21..b485c0e77d 100644 --- a/src/locale/locales/pt-BR/messages.po +++ b/src/locale/locales/pt-BR/messages.po @@ -8,111 +8,127 @@ msgstr "" "Language: pt-BR\n" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-04-18 15:23\n" +"PO-Revision-Date: 2024-05-13 11:41\n" "Last-Translator: gildaswise\n" "Language-Team: maisondasilva, MightyLoggor, gildaswise, gleydson, faeriarum\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(sem email)" #: src/view/com/notifications/FeedItem.tsx:239 msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" +msgstr "{0, plural, one {{formattedCount} outro} other {{formattedCount} outros}}" + +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "{0, plural, one {# rótulo aplicado nesta conta} other {# rótulos aplicados nesta conta}}" + +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "{0, plural, one {# rótulo aplicado neste conteúdo} other {# rótulos aplicados neste conteúdo}}" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" -msgstr "" - -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" -msgstr "" +msgstr "{0, plural, one {# repost} other {# reposts}}" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" -msgstr "" +msgstr "{0, plural, one {seguidor} other {seguidores}}" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" -msgstr "" +msgstr "{0, plural, one {seguindo} other {seguindo}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:245 msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" -msgstr "" +msgstr "{0, plural, one {Curtir (# curtida)} other {Curtir (# curtidas)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" -msgstr "" +msgstr "{0, plural, one {curtida} other {curtidas}}" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{0, plural, one {Curtido por # usuário} other {Curtido por # usuários}}" #: src/screens/Profile/Header/Metrics.tsx:59 msgid "{0, plural, one {post} other {posts}}" -msgstr "" +msgstr "{0, plural, one {post} other {posts}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:204 msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" -msgstr "" +msgstr "{0, plural, one {Responder (# resposta)} other {Responder (# respostas)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" -msgstr "" +msgstr "{0, plural, one {repost} other {reposts}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:241 msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" -msgstr "" +msgstr "{0, plural, one {Descurtir (# curtida)} other {Descurtir (# curtidas)}}" + +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "{0} seus feeds" #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{count, plural, one {Curtido por # usuário} other {Curtido por # usuários}}" #: src/screens/Deactivated.tsx:207 msgid "{estimatedTimeHrs, plural, one {hour} other {hours}}" -msgstr "" +msgstr "{estimatedTimeHrs, plural, one {hora} other {horas}}" #: src/screens/Deactivated.tsx:213 msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" -msgstr "" +msgstr "{estimatedTimeMins, plural, one {minuto} other {minutos}}" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} seguindo" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 -msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" msgstr "" -#: src/view/shell/Drawer.tsx:464 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 +msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" +msgstr "{likeCount, plural, one {Curtido por # usuário} other {Curtido por # usuários}}" + +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} não lidas" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" -msgstr "" +msgstr "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" #: src/view/com/threadgate/WhoCanReply.tsx:159 msgid "<0/> members" msgstr "<0/> membros" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" -msgstr "" +msgstr "<0>{0} {1, plural, one {seguidor} other {seguidores}}" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" -msgstr "" +msgstr "<0>{0} {1, plural, one {seguindo} other {seguindo}}" #: src/view/shell/Drawer.tsx:96 #~ msgid "<0>{0} following" @@ -135,9 +151,9 @@ msgstr "" #~ msgid "<0>Follow some<1>Recommended<2>Users" #~ msgstr "<0>Siga alguns<2>Usuários<1>recomendados" -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." -msgstr "" +msgstr "<0>Não se aplica. Este aviso só funciona para posts com mídia." #: src/view/com/auth/onboarding/WelcomeDesktop.tsx:21 #~ msgid "<0>Welcome to<1>Bluesky" @@ -147,9 +163,9 @@ msgstr "" msgid "⚠Invalid Handle" msgstr "⚠Usuário Inválido" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" -msgstr "" +msgstr "Confirmação do 2FA" #: src/view/com/util/ViewHeader.tsx:91 #: src/view/screens/Search/Search.tsx:650 @@ -161,38 +177,38 @@ msgid "Access profile and other navigation links" msgstr "Acessar perfil e outros links de navegação" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "Acessibilidade" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" -msgstr "" +msgstr "Configurações de acessibilidade" #: src/Navigation.tsx:290 #: src/view/screens/AccessibilitySettings.tsx:63 msgid "Accessibility Settings" -msgstr "" +msgstr "Configurações de acessibilidade" #: src/components/moderation/LabelsOnMe.tsx:42 #~ msgid "account" #~ msgstr "conta" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "Conta" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "Conta bloqueada" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "Você está seguindo esta conta" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "Conta silenciada" @@ -213,55 +229,56 @@ msgstr "Configurações da conta" msgid "Account removed from quick access" msgstr "Conta removida do acesso rápido" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "Conta desbloqueada" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "Você não segue mais esta conta" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "Conta dessilenciada" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "Adicionar" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "Adicionar um aviso de conteúdo" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "Adicionar um usuário a esta lista" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "Adicionar conta" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "Adicionar texto alternativo" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "Adicionar texto alternativo" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "Adicionar Senha de Aplicativo" @@ -273,15 +290,23 @@ msgstr "Adicionar Senha de Aplicativo" #~ msgid "Add link card:" #~ msgstr "Adicionar prévia de link:" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "Adicionar palavra silenciada para as configurações selecionadas" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "Adicionar palavras/tags silenciadas" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "Utilizar feeds recomendados" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "Adicionar o feed padrão com as pessoas que você segue" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "Adicione o seguinte registro DNS ao seu domínio:" @@ -290,7 +315,7 @@ msgstr "Adicione o seguinte registro DNS ao seu domínio:" msgid "Add to Lists" msgstr "Adicionar às Listas" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "Adicionar aos meus feeds" @@ -303,17 +328,17 @@ msgstr "Adicionar aos meus feeds" msgid "Added to list" msgstr "Adicionado à lista" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "Adicionado aos meus feeds" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "Ajuste o número de curtidas para que uma resposta apareça no seu feed." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "Conteúdo Adulto" @@ -322,14 +347,29 @@ msgid "Adult content is disabled." msgstr "O conteúdo adulto está desabilitado." #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "Avançado" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "Todos os feeds que você salvou, em um único lugar." +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -339,13 +379,13 @@ msgstr "Já tem um código?" msgid "Already signed in as @{0}" msgstr "Já autenticado como @{0}" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -353,30 +393,30 @@ msgstr "Texto alternativo" #: src/view/com/util/post-embeds/GifEmbed.tsx:179 msgid "Alt Text" -msgstr "" +msgstr "Texto alternativo" #: src/view/com/composer/photos/Gallery.tsx:224 msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "O texto alternativo descreve imagens para usuários cegos e com baixa visão, além de dar contexto a todos." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "Um email foi enviado para {0}. Ele inclui um código de confirmação que você pode inserir abaixo." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "Um email foi enviado para seu email anterior, {0}. Ele inclui um código de confirmação que você pode inserir abaixo." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" -msgstr "" +msgstr "Tivemos um problema" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "Ocorreu um erro ao tentar deletar esta mensagem. Por favor, tente novamente." -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "Outro problema" @@ -389,24 +429,24 @@ msgstr "Outro problema" msgid "An issue occurred, please try again." msgstr "Ocorreu um problema, por favor tente novamente." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" -msgstr "" +msgstr "ocorreu um erro desconhecido" #: src/view/com/notifications/FeedItem.tsx:236 #: src/view/com/threadgate/WhoCanReply.tsx:180 msgid "and" msgstr "e" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "Animais" #: src/view/com/util/post-embeds/GifEmbed.tsx:148 msgid "Animated GIF" -msgstr "" +msgstr "GIF animado" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "Comportamento anti-social" @@ -414,70 +454,91 @@ msgstr "Comportamento anti-social" msgid "App Language" msgstr "Idioma do aplicativo" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "Senha de Aplicativo excluída" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "O nome da Senha de Aplicativo só pode conter letras, números, traços e sublinhados." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "O nome da Senha de Aplicativo precisa ter no mínimo 4 caracteres." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "Configurações de Senha de Aplicativo" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "Senhas de Aplicativos" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "Contestar" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "Contestar rótulo \"{0}\"" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" -msgstr "" +msgstr "Contestação enviada." #: src/components/moderation/LabelsOnMeDialog.tsx:193 #~ msgid "Appeal submitted." #~ msgstr "Contestação enviada." -#: src/view/screens/Settings/index.tsx:430 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "" + +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "Aparência" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "Utilizar feeds recomendados" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "Tem certeza de que deseja excluir a senha do aplicativo \"{name}\"?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "Tem certeza de que deseja excluir esta mensagem? A mensagem será excluída para você, mas não para os outros participantes." + +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "Tem certeza de que deseja sair desta conversa? Suas mensagens serão excluídas para você, mas não para os outros participantes." + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "Tem certeza que deseja remover {0} dos seus feeds?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "Tem certeza que deseja descartar este rascunho?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "Tem certeza?" @@ -485,11 +546,11 @@ msgstr "Tem certeza?" msgid "Are you writing in <0>{0}?" msgstr "Você está escrevendo em <0>{0}?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "Arte" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "Nudez artística ou não erótica." @@ -497,18 +558,20 @@ msgstr "Nudez artística ou não erótica." msgid "At least 3 characters" msgstr "No mínimo 3 caracteres" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -518,7 +581,7 @@ msgstr "Voltar" msgid "Based on your interest in {interestsText}" msgstr "Com base no seu interesse em {interestsText}" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "Básicos" @@ -526,19 +589,19 @@ msgstr "Básicos" msgid "Birthday" msgstr "Aniversário" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "Aniversário:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "Bloquear" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" -msgstr "" +msgstr "Bloquear conta" #: src/view/com/profile/ProfileMenu.tsx:300 #: src/view/com/profile/ProfileMenu.tsx:307 @@ -549,15 +612,15 @@ msgstr "Bloquear Conta" msgid "Block Account?" msgstr "Bloquear Conta?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "Bloquear contas" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "Lista de bloqueio" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "Bloquear estas contas?" @@ -583,15 +646,15 @@ msgstr "Contas bloqueadas não podem te responder, mencionar ou interagir com vo msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "Contas bloqueadas não podem te responder, mencionar ou interagir com você. Você não verá o conteúdo deles e eles serão impedidos de ver o seu." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "Post bloqueado." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "Bloquear não previne este rotulador de rotular a sua conta." -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "Bloqueios são públicos. Contas bloqueadas não podem te responder, mencionar ou interagir com você." @@ -639,10 +702,15 @@ msgstr "Desfocar imagens" msgid "Blur images and filter from feeds" msgstr "Desfocar imagens e filtrar dos feeds" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "Livros" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "Navegar por outros feeds" + #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "Empresarial" @@ -661,7 +729,7 @@ msgstr "Por {0}" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:112 msgid "by @{0}" -msgstr "" +msgstr "por @{0}" #: src/view/com/profile/ProfileSubpageHeader.tsx:161 msgid "by <0/>" @@ -679,7 +747,7 @@ msgstr "por você" msgid "Camera" msgstr "Câmera" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "Só pode conter letras, números, espaços, traços e sublinhados. Deve ter pelo menos 4 caracteres, mas não mais de 32 caracteres." @@ -687,11 +755,11 @@ msgstr "Só pode conter letras, números, espaços, traços e sublinhados. Deve #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -703,26 +771,26 @@ msgstr "Só pode conter letras, números, espaços, traços e sublinhados. Deve #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "Cancelar" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "Cancelar" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "Cancelar exclusão da conta" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "Cancelar alteração de usuário" @@ -747,34 +815,34 @@ msgstr "Cancelar busca" msgid "Cancels opening the linked website" msgstr "Cancela a abertura do link" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "Trocar" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "Alterar" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "Alterar usuário" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "Alterar Usuário" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "Alterar meu email" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "Alterar senha" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "Alterar Senha" @@ -782,30 +850,40 @@ msgstr "Alterar Senha" msgid "Change post language to {0}" msgstr "Trocar idioma do post para {0}" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "Altere o Seu Email" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" -msgstr "" +msgstr "Chat" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" -msgstr "" +msgstr "Chat silenciado" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" +msgstr "Configurações do Chat" + +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" -msgstr "" +msgstr "Chat dessilenciado" #: src/screens/Messages/Conversation/index.tsx:26 #~ msgid "Chat with {chatId}" -#~ msgstr "" +#~ msgstr "Chat com {chatId}" #: src/screens/Deactivated.tsx:78 #: src/screens/Deactivated.tsx:82 @@ -820,11 +898,11 @@ msgstr "Verificar minha situação" #~ msgid "Check out some recommended users. Follow them to see similar users." #~ msgstr "Confira alguns usuários recomendados. Siga-os para ver usuários semelhantes." -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." -msgstr "" +msgstr "Um código de login foi enviado para o seu e-mail. Insira-o aqui." -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "Verifique em sua caixa de entrada um e-mail com o código de confirmação abaixo:" @@ -836,7 +914,7 @@ msgstr "Escolha \"Todos\" ou \"Ninguém\"" msgid "Choose Service" msgstr "Escolher Serviço" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "Escolha os algoritmos que geram seus feeds customizados." @@ -845,6 +923,10 @@ msgstr "Escolha os algoritmos que geram seus feeds customizados." #~ msgid "Choose the algorithms that power your experience with custom feeds." #~ msgstr "Escolha os algoritmos que fazem sentido para você com os feeds personalizados." +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "Selecionar esta cor como seu avatar" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "Escolha seus feeds principais" @@ -853,19 +935,19 @@ msgstr "Escolha seus feeds principais" msgid "Choose your password" msgstr "Escolha sua senha" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "Limpar todos os dados de armazenamento legados" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "Limpar todos os dados de armazenamento legados (reinicie em seguida)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "Limpar todos os dados de armazenamento" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "Limpar todos os dados de armazenamento (reinicie em seguida)" @@ -874,11 +956,11 @@ msgstr "Limpar todos os dados de armazenamento (reinicie em seguida)" msgid "Clear search query" msgstr "Limpar busca" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "Limpa todos os dados antigos" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "Limpa todos os dados antigos" @@ -886,6 +968,10 @@ msgstr "Limpa todos os dados antigos" msgid "click here" msgstr "clique aqui" +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "Clique aqui para resolver isso." + #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" msgstr "Clique aqui para abrir o menu da tag {tag}" @@ -894,19 +980,28 @@ msgstr "Clique aqui para abrir o menu da tag {tag}" #~ msgid "Click here to open tag menu for #{tag}" #~ msgstr "Clique aqui para abrir o menu da tag #{tag}" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "Clima e tempo" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "Fechar" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "Fechar janela ativa" @@ -918,13 +1013,13 @@ msgstr "Fechar alerta" msgid "Close bottom drawer" msgstr "Fechar parte inferior" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" -msgstr "" +msgstr "Fechar janela" #: src/components/dialogs/GifSelect.tsx:150 msgid "Close GIF dialog" -msgstr "" +msgstr "Fechar janela de GIFs" #: src/view/com/lightbox/ImageViewing/components/ImageDefaultHeader.tsx:36 msgid "Close image" @@ -934,6 +1029,10 @@ msgstr "Fechar imagem" msgid "Close image viewer" msgstr "Fechar visualizador de imagens" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "Fechar o painel de navegação" @@ -951,7 +1050,7 @@ msgstr "Fecha barra de navegação inferior" msgid "Closes password update alert" msgstr "Fecha alerta de troca de senha" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "Fecha o editor de post e descarta o rascunho" @@ -963,11 +1062,11 @@ msgstr "Fechar o visualizador de banner" msgid "Collapses list of users for a given notification" msgstr "Fecha lista de usuários da notificação" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "Comédia" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "Quadrinhos" @@ -976,7 +1075,7 @@ msgstr "Quadrinhos" msgid "Community Guidelines" msgstr "Diretrizes da Comunidade" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "Completar e começar a usar sua conta" @@ -984,7 +1083,7 @@ msgstr "Completar e começar a usar sua conta" msgid "Complete the challenge" msgstr "Complete o captcha" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "Escreva posts de até {MAX_GRAPHEME_LENGTH} caracteres" @@ -1006,18 +1105,18 @@ msgstr "Configure no <0>painel de moderação." #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "Confirmar" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "Confirmar Alterações" @@ -1025,7 +1124,7 @@ msgstr "Confirmar Alterações" msgid "Confirm content language settings" msgstr "Confirmar configurações de idioma de conteúdo" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "Confirmar a exclusão da conta" @@ -1037,17 +1136,17 @@ msgstr "Confirme sua idade:" msgid "Confirm your birthdate" msgstr "Confirme sua data de nascimento" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "Código de confirmação" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "Conectando..." @@ -1094,8 +1193,9 @@ msgstr "Fundo do menu, clique para fechá-lo." #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "Continuar" @@ -1105,8 +1205,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "Continuar como {0} (já conectado)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1120,22 +1221,26 @@ msgstr "Continuar para o próximo passo" msgid "Continue to the next step without following any accounts" msgstr "Continuar para o próximo passo sem seguir contas" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "Culinária" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "Copiado" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "Versão do aplicativo copiada" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1145,15 +1250,15 @@ msgstr "Copiado" msgid "Copied!" msgstr "Copiado!" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "Copia senha de aplicativo" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "Copiar" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "Copiar {0}" @@ -1162,7 +1267,7 @@ msgstr "Copiar {0}" msgid "Copy code" msgstr "Copiar código" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "Copiar link da lista" @@ -1171,10 +1276,10 @@ msgstr "Copiar link da lista" msgid "Copy link to post" msgstr "Copiar link do post" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" -msgstr "" +msgstr "Copiar texto da mensagem" #: src/view/com/util/forms/PostDropdownBtn.tsx:256 #: src/view/com/util/forms/PostDropdownBtn.tsx:258 @@ -1186,36 +1291,36 @@ msgstr "Copiar texto do post" msgid "Copyright Policy" msgstr "Política de Direitos Autorais" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" -msgstr "" +msgstr "Não foi possível sair deste chat" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "Não foi possível carregar o feed" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "Não foi possível carregar a lista" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "Não foi possível carregar estes perfis. Por favor, tente novamente." -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" -msgstr "" +msgstr "Não foi possível silenciar este chat" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +#~ msgid "Could not unmute chat" +#~ msgstr "Não foi possível dessilenciar este chat" #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "Criar uma nova conta" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "Criar uma nova conta do Bluesky" @@ -1228,7 +1333,11 @@ msgstr "Criar Conta" msgid "Create an account" msgstr "Criar conta" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "Criar um avatar" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "Criar Senha de Aplicativo" @@ -1237,11 +1346,11 @@ msgstr "Criar Senha de Aplicativo" msgid "Create new account" msgstr "Criar uma nova conta" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "Criar denúncia para {0}" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "{0} criada" @@ -1249,7 +1358,7 @@ msgstr "{0} criada" #~ msgid "Creates a card with a thumbnail. The card links to {url}" #~ msgstr "Cria uma prévia com miniatura. A prévia faz um link para {url}" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "Cultura" @@ -1258,12 +1367,12 @@ msgstr "Cultura" msgid "Custom" msgstr "Customizado" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "Domínio personalizado" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "Feeds customizados feitos pela comunidade te proporcionam novas experiências e te ajudam a encontrar o conteúdo que você mais ama." @@ -1271,8 +1380,8 @@ msgstr "Feeds customizados feitos pela comunidade te proporcionam novas experiê msgid "Customize media from external sites." msgstr "Configurar mídia de sites externos." -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "Escuro" @@ -1280,7 +1389,7 @@ msgstr "Escuro" msgid "Dark mode" msgstr "Modo escuro" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "Modo Escuro" @@ -1288,7 +1397,7 @@ msgstr "Modo Escuro" msgid "Date of birth" msgstr "Data de nascimento" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "Testar Moderação" @@ -1296,14 +1405,14 @@ msgstr "Testar Moderação" msgid "Debug panel" msgstr "Painel de depuração" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "Excluir" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "Excluir a conta" @@ -1311,39 +1420,44 @@ msgstr "Excluir a conta" #~ msgid "Delete Account" #~ msgstr "Excluir a Conta" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" -msgstr "" +msgstr "Excluir Conta <0>\"<1>{0}<2>\"" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "Excluir senha de aplicativo" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "Excluir senha de aplicativo?" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" - -#: src/view/screens/ProfileList.tsx:417 -msgid "Delete List" -msgstr "Excluir Lista" - -#: src/components/dms/MessageMenu.tsx:119 -msgid "Delete message" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" msgstr "" #: src/components/dms/MessageMenu.tsx:99 -msgid "Delete message for me" -msgstr "" +msgid "Delete for me" +msgstr "Excluir para mim" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/screens/ProfileList.tsx:470 +msgid "Delete List" +msgstr "Excluir Lista" + +#: src/components/dms/MessageMenu.tsx:122 +msgid "Delete message" +msgstr "Excluir mensagem" + +#: src/components/dms/MessageMenu.tsx:97 +msgid "Delete message for me" +msgstr "Excluir mensagem para mim" + +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "Excluir minha conta" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "Excluir minha conta…" @@ -1352,7 +1466,7 @@ msgstr "Excluir minha conta…" msgid "Delete post" msgstr "Excluir post" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "Excluir esta lista?" @@ -1364,10 +1478,14 @@ msgstr "Excluir este post?" msgid "Deleted" msgstr "Excluído" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "Post excluído." +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1375,29 +1493,33 @@ msgstr "Post excluído." msgid "Description" msgstr "Descrição" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" -msgstr "" +msgstr "Texto alternativo" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "Você gostaria de dizer alguma coisa?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "Menos escuro" -#: src/view/screens/AccessibilitySettings.tsx:94 -msgid "Disable autoplay for GIFs" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/AccessibilitySettings.tsx:94 +msgid "Disable autoplay for GIFs" +msgstr "Desabilitar autoplay em GIFs" + +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" -msgstr "" +msgstr "Desabilitar 2FA via e-mail" #: src/view/screens/AccessibilitySettings.tsx:108 msgid "Disable haptic feedback" -msgstr "" +msgstr "Desabilitar feedback tátil" #: src/view/screens/Settings/index.tsx:697 #~ msgid "Disable haptics" @@ -1410,15 +1532,17 @@ msgstr "" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "Desabilitado" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "Descartar" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "Descartar rascunho?" @@ -1432,7 +1556,7 @@ msgstr "Desencorajar aplicativos a mostrar minha conta para usuários desautenti msgid "Discover new custom feeds" msgstr "Descubra novos feeds" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "Descubra Novos Feeds" @@ -1444,7 +1568,7 @@ msgstr "Nome de exibição" msgid "Display Name" msgstr "Nome de Exibição" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "Painel DNS" @@ -1456,11 +1580,11 @@ msgstr "Não inclui nudez." msgid "Doesn't begin or end with a hyphen" msgstr "Não começa ou termina com um hífen" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "Domínio" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "Domínio verificado!" @@ -1468,23 +1592,23 @@ msgstr "Domínio verificado!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "Feito" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1498,8 +1622,8 @@ msgstr "Feito" msgid "Done{extraText}" msgstr "Feito{extraText}" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "Baixar arquivo CAR" @@ -1511,7 +1635,7 @@ msgstr "Solte para adicionar imagens" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "Devido a políticas da Apple, o conteúdo adulto só pode ser habilitado no site após terminar o cadastro." -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "ex. alice" @@ -1519,7 +1643,7 @@ msgstr "ex. alice" msgid "e.g. Alice Roberts" msgstr "ex. Alice Roberts" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "ex. alice.com" @@ -1556,7 +1680,7 @@ msgctxt "action" msgid "Edit" msgstr "Editar" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "Editar avatar" @@ -1566,7 +1690,7 @@ msgstr "Editar avatar" msgid "Edit image" msgstr "Editar imagem" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "Editar detalhes da lista" @@ -1575,8 +1699,8 @@ msgid "Edit Moderation List" msgstr "Editar lista de moderação" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "Editar Meus Feeds" @@ -1584,18 +1708,18 @@ msgstr "Editar Meus Feeds" msgid "Edit my profile" msgstr "Editar meu perfil" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "Editar perfil" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "Editar Perfil" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "Editar Feeds Salvos" @@ -1611,37 +1735,37 @@ msgstr "Editar seu nome" msgid "Edit your profile description" msgstr "Editar sua descrição" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "Educação" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "E-mail" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" -msgstr "" +msgstr "2FA via e-mail desabilitado" #: src/screens/Login/ForgotPasswordForm.tsx:99 msgid "Email address" msgstr "Endereço de e-mail" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "E-mail atualizado" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "E-mail Atualizado" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "E-mail verificado" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "E-mail:" @@ -1685,7 +1809,7 @@ msgstr "Habilitar mídia externa" msgid "Enable media players for" msgstr "Habilitar mídia para" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "Ative esta configuração para ver respostas apenas entre as pessoas que você segue." @@ -1693,6 +1817,8 @@ msgstr "Ative esta configuração para ver respostas apenas entre as pessoas que msgid "Enable this source only" msgstr "Habilitar mídia somente para este site" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "Habilitado" @@ -1701,7 +1827,11 @@ msgstr "Habilitado" msgid "End of feed" msgstr "Fim do feed" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "Insira um nome para esta Senha de Aplicativo" @@ -1709,12 +1839,12 @@ msgstr "Insira um nome para esta Senha de Aplicativo" msgid "Enter a password" msgstr "Insira uma senha" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "Digite uma palavra ou tag" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "Insira o código de confirmação" @@ -1722,7 +1852,7 @@ msgstr "Insira o código de confirmação" msgid "Enter the code you received to change your password." msgstr "Digite o código recebido para alterar sua senha." -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "Digite o domínio que você deseja usar" @@ -1739,11 +1869,11 @@ msgstr "Insira seu aniversário" msgid "Enter your email address" msgstr "Digite seu endereço de e-mail" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "Digite o novo e-mail acima" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "Digite seu novo endereço de e-mail abaixo." @@ -1751,11 +1881,15 @@ msgstr "Digite seu novo endereço de e-mail abaixo." msgid "Enter your username and password" msgstr "Digite seu nome de usuário e senha" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "Não foi possível salvar o arquivo" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "Não foi possível processar o captcha." -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "Erro:" @@ -1764,15 +1898,30 @@ msgstr "Erro:" msgid "Everybody" msgstr "Todos" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "Menções ou respostas excessivas" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "Mensagens excessivas ou indesejadas" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "Sair do processo de deleção da conta" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "Sair do processo de trocar usuário" @@ -1806,12 +1955,12 @@ msgstr "Imagens explícitas ou potencialmente perturbadoras." msgid "Explicit sexual images." msgstr "Imagens sexualmente explícitas." -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "Exportar meus dados" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "Exportar Meus Dados" @@ -1827,16 +1976,16 @@ msgstr "Mídias externas podem permitir que sites coletem informações sobre vo #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "Preferências de Mídia Externa" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "Preferências de mídia externa" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "Não foi possível criar senha de aplicativo." @@ -1844,56 +1993,77 @@ msgstr "Não foi possível criar senha de aplicativo." msgid "Failed to create the list. Check your internet connection and try again." msgstr "Não foi possível criar a lista. Por favor tente novamente." -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" -msgstr "" +msgstr "Não foi possível excluir esta mensagem" #: src/view/com/util/forms/PostDropdownBtn.tsx:139 msgid "Failed to delete post, please try again" msgstr "Não foi possível excluir o post, por favor tente novamente." -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" +msgstr "Não foi possível carregar os GIFs" + +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." -msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "Não foi possível carregar mensagens antigas." #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 #~ msgid "Failed to load recommended feeds" #~ msgstr "Falha ao carregar feeds recomendados" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "Não foi possível salvar a imagem: {0}" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "Não foi possível enviar sua mensagem." + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "Feed" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "Feed por {0}" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "Feed offline" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "Comentários" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "Feeds" @@ -1901,7 +2071,7 @@ msgstr "Feeds" #~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." #~ msgstr "Os feeds são criados por usuários para curadoria de conteúdo. Escolha alguns feeds que você acha interessantes." -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "Os feeds são algoritmos personalizados que os usuários com um pouco de experiência em programação podem criar. <0/> para mais informações." @@ -1909,15 +2079,19 @@ msgstr "Os feeds são algoritmos personalizados que os usuários com um pouco de msgid "Feeds can be topical as well!" msgstr "Feeds podem ser de assuntos específicos também!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "Conteúdo do arquivo" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "Arquivo salvo com sucesso!" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "Filtrar dos feeds" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "Finalizando" @@ -1929,7 +2103,7 @@ msgstr "Encontre contas para seguir" #: src/view/screens/Search/Search.tsx:462 msgid "Find posts and users on Bluesky" -msgstr "" +msgstr "Encontre posts e usuários no Bluesky" #: src/view/screens/Search/Search.tsx:589 #~ msgid "Find users on Bluesky" @@ -1943,7 +2117,7 @@ msgstr "" #~ msgid "Finding similar accounts..." #~ msgstr "Procurando contas semelhantes..." -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "Ajuste o conteúdo que você vê na sua tela inicial." @@ -1951,11 +2125,11 @@ msgstr "Ajuste o conteúdo que você vê na sua tela inicial." msgid "Fine-tune the discussion threads." msgstr "Ajuste as threads." -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "Fitness" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "Flexível" @@ -1968,10 +2142,10 @@ msgstr "Virar horizontalmente" msgid "Flip vertically" msgstr "Virar verticalmente" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -1983,7 +2157,7 @@ msgid "Follow" msgstr "Seguir" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "Seguir {0}" @@ -2017,7 +2191,7 @@ msgstr "Seguido por {0}" msgid "Followed users" msgstr "Usuários seguidos" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "Somente usuários seguidos" @@ -2030,28 +2204,30 @@ msgstr "seguiu você" msgid "Followers" msgstr "Seguidores" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "Seguindo" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "Seguindo {0}" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "Configurações do feed principal" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "Configurações do feed principal" @@ -2063,15 +2239,15 @@ msgstr "Segue você" msgid "Follows You" msgstr "Segue Você" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "Comida" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "Por motivos de segurança, precisamos enviar um código de confirmação para seu endereço de e-mail." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "Por motivos de segurança, você não poderá ver esta senha novamente. Se você perder esta senha, terá que gerar uma nova." @@ -2080,15 +2256,15 @@ msgstr "Por motivos de segurança, você não poderá ver esta senha novamente. msgid "Forgot Password" msgstr "Esqueci a Senha" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "Esqueceu a senha?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "Esqueceu?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "Frequentemente Posta Conteúdo Indesejado" @@ -2096,7 +2272,7 @@ msgstr "Frequentemente Posta Conteúdo Indesejado" msgid "From @{sanitizedAuthor}" msgstr "De @{sanitizedAuthor}" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "Por <0/>" @@ -2105,12 +2281,20 @@ msgstr "Por <0/>" msgid "Gallery" msgstr "Galeria" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "Vamos começar" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "Dê uma cara nova pro seu perfil" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "Violações flagrantes da lei ou dos termos de serviço" @@ -2119,9 +2303,9 @@ msgstr "Violações flagrantes da lei ou dos termos de serviço" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "Voltar" @@ -2129,13 +2313,14 @@ msgstr "Voltar" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "Voltar" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2155,32 +2340,36 @@ msgstr "Voltar para a tela inicial" #~ msgid "Go to @{queryMaybeHandle}" #~ msgstr "Ir para @{queryMaybleHandle}" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "Próximo" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" -msgstr "" +msgstr "Ir para este perfil" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" -msgstr "" +msgstr "Ir para o perfil deste usuário" #: src/lib/moderation/useGlobalLabelStrings.ts:46 msgid "Graphic Media" msgstr "Conteúdo Gráfico" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "Usuário" #: src/view/screens/AccessibilitySettings.tsx:103 msgid "Haptics" -msgstr "" +msgstr "Feedback tátil" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "Assédio, intolerância ou \"trollagem\"" @@ -2188,7 +2377,7 @@ msgstr "Assédio, intolerância ou \"trollagem\"" msgid "Hashtag" msgstr "Hashtag" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "Hashtag: #{tag}" @@ -2197,10 +2386,14 @@ msgid "Having trouble?" msgstr "Precisa de ajuda?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "Ajuda" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "As pessoas não vão achar que você é um bot se você criar um avatar ou fazer upload de uma imagem." + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "Aqui estão algumas contas para você seguir" @@ -2213,13 +2406,13 @@ msgstr "Aqui estão alguns feeds de assuntos. Você pode seguir quantos quiser." msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "Aqui estão alguns feeds de assuntos baseados nos seus interesses: {interestsText}. Você pode seguir quantos quiser." -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "Aqui está a sua senha de aplicativo." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2241,7 +2434,7 @@ msgid "Hide post" msgstr "Ocultar post" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "Esconder o conteúdo" @@ -2253,23 +2446,23 @@ msgstr "Ocultar este post?" msgid "Hide user list" msgstr "Ocultar lista de usuários" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "Hmm, ocorreu algum problema ao entrar em contato com o servidor deste feed. Por favor, avise o criador do feed sobre este problema." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "Hmm, o servidor do feed parece estar mal configurado. Por favor, avise o criador do feed sobre este problema." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "Hmm, o servidor do feed parece estar offline. Por favor, avise o criador do feed sobre este problema." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "Hmm, o servidor do feed teve algum problema. Por favor, avise o criador do feed sobre este problema." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "Hmm, estamos com problemas para encontrar este feed. Ele pode ter sido excluído." @@ -2281,22 +2474,22 @@ msgstr "Hmmmm, parece que estamos com problemas pra carregar isso. Veja mais det msgid "Hmmmm, we couldn't load that moderation service." msgstr "Hmmmm, não foi possível carregar este serviço de moderação." -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "Página Inicial" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "Host:" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "Provedor de hospedagem" @@ -2304,25 +2497,30 @@ msgstr "Provedor de hospedagem" msgid "How should we open this link?" msgstr "Como devemos abrir este link?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "Eu tenho um código" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "Eu tenho um código" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "Eu tenho meu próprio domínio" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "Entendi" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "Se o texto alternativo é longo, mostra o texto completo" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "Se nenhum for selecionado, adequado para todas as idades." @@ -2330,7 +2528,7 @@ msgstr "Se nenhum for selecionado, adequado para todas as idades." msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "Se você ainda não é um adulto de acordo com as leis do seu país, seu responsável ou guardião legal deve ler estes Termos por você." -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "Se você deletar esta lista, você não poderá recuperá-la." @@ -2342,7 +2540,7 @@ msgstr "Se você remover este post, você não poderá recuperá-la." msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "Se você quiser alterar sua senha, enviaremos um código que para verificar sua identidade." -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "Ilegal e Urgente" @@ -2350,23 +2548,27 @@ msgstr "Ilegal e Urgente" msgid "Image" msgstr "Imagem" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "Texto alternativo da imagem" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "Falsificação de identidade ou alegações falsas sobre identidade ou filiação" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "Insira o código enviado para o seu e-mail para redefinir sua senha" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "Insira o código de confirmação para excluir sua conta" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "Insira um nome para a senha de aplicativo" @@ -2374,27 +2576,27 @@ msgstr "Insira um nome para a senha de aplicativo" msgid "Input new password" msgstr "Insira a nova senha" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "Insira a senha para excluir a conta" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" -msgstr "" +msgstr "Insira o código que você recebeu por e-mail" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "Insira a senha da conta {identifier}" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "Insira o usuário ou e-mail que você cadastrou" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "Insira sua senha" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "Insira seu provedor de hospedagem" @@ -2402,16 +2604,20 @@ msgstr "Insira seu provedor de hospedagem" msgid "Input your user handle" msgstr "Insira o usuário" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 -msgid "Invalid 2FA confirmation code." +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 +msgid "Invalid 2FA confirmation code." +msgstr "Código de confirmação inválido." + +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "Post inválido" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "Credenciais inválidas" @@ -2423,7 +2629,7 @@ msgstr "Convide um Amigo" msgid "Invite code" msgstr "Convite" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "Convite inválido. Verifique se você o inseriu corretamente e tente novamente." @@ -2443,7 +2649,7 @@ msgstr "Mostra os posts de quem você segue conforme acontecem." msgid "Jobs" msgstr "Carreiras" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "Jornalismo" @@ -2463,7 +2669,7 @@ msgstr "Rotulado pelo autor." msgid "Labels" msgstr "Rótulos" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "Rótulos são identificações aplicadas sobre perfis e conteúdos. Eles são utilizados para esconder, avisar e categorizar o conteúdo da rede." @@ -2471,11 +2677,11 @@ msgstr "Rótulos são identificações aplicadas sobre perfis e conteúdos. Eles #~ msgid "labels have been placed on this {labelTarget}" #~ msgstr "rótulos foram aplicados neste {labelTarget}" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "Rótulos sobre sua conta" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "Rótulos sobre seu conteúdo" @@ -2483,7 +2689,7 @@ msgstr "Rótulos sobre seu conteúdo" msgid "Language selection" msgstr "Seleção de idioma" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "Configuração de Idioma" @@ -2492,7 +2698,7 @@ msgstr "Configuração de Idioma" msgid "Language Settings" msgstr "Configurações de Idiomas" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "Idiomas" @@ -2510,7 +2716,7 @@ msgstr "Saiba Mais" msgid "Learn more about the moderation applied to this content." msgstr "Saiba mais sobre a decisão de moderação aplicada neste conteúdo." -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "Saiba mais sobre este aviso" @@ -2523,15 +2729,22 @@ msgstr "Saiba mais sobre o que é público no Bluesky." msgid "Learn more." msgstr "Saiba mais." -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" +msgstr "Sair" + +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" msgstr "" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" -msgstr "" +msgstr "Sair desta conversa" #: src/view/com/modals/lang-settings/ContentLanguagesSettings.tsx:82 msgid "Leave them all unchecked to see any language." @@ -2545,7 +2758,7 @@ msgstr "Saindo do Bluesky" msgid "left to go." msgstr "na sua frente." -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "Armazenamento limpo, você precisa reiniciar o app agora." @@ -2554,11 +2767,11 @@ msgstr "Armazenamento limpo, você precisa reiniciar o app agora." msgid "Let's get your password reset!" msgstr "Vamos redefinir sua senha!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "Vamos lá!" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "Claro" @@ -2566,8 +2779,8 @@ msgstr "Claro" #~ msgid "Like" #~ msgstr "Curtir" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "Curtir este feed" @@ -2609,7 +2822,7 @@ msgstr "curtiu seu post" msgid "Likes" msgstr "Curtidas" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "Curtidas neste post" @@ -2621,19 +2834,19 @@ msgstr "Lista" msgid "List Avatar" msgstr "Avatar da lista" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "Lista bloqueada" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "Lista por {0}" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "Lista excluída" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "Lista silenciada" @@ -2641,31 +2854,35 @@ msgstr "Lista silenciada" msgid "List Name" msgstr "Nome da lista" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "Lista desbloqueada" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "Lista dessilenciada" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "Listas" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "" + #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "Carregar novas notificações" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "Carregar novos posts" @@ -2692,22 +2909,43 @@ msgstr "Visibilidade do seu perfil" msgid "Login to account that is not listed" msgstr "Fazer login em uma conta que não está listada" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" -msgstr "" +msgstr "Segure para abrir o menu da tag #{tag}" #: src/screens/Login/SetNewPasswordForm.tsx:116 msgid "Looks like XXXXX-XXXXX" msgstr "Tem esse formato: XXXXX-XXXXX" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "Parece que você não salvou um feed ainda! Dá uma olhada nas nossas recomendações ou veja mais abaixo." + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "Parece que você desafixou todos os seus feeds, mas não esquenta, dá uma olhada nesses aqui! 😄" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "Parece que você está sem seu feed principal." + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "Certifique-se de onde está indo!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "Gerencie suas palavras/tags silenciadas" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "Marcar como lida" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2726,44 +2964,50 @@ msgstr "Usuários mencionados" msgid "Menu" msgstr "Menu" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 -msgid "Message deleted" +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 +msgid "Message deleted" +msgstr "Mensagem excluída" + +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "Mensagem do servidor: {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" -msgstr "" +msgstr "Caixa de texto da mensagem" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "Mensagem longa demais" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" -msgstr "" +msgstr "Configurações das mensagens" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" -msgstr "" +msgstr "Mensagens" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" +#~ msgid "Messaging settings" +#~ msgstr "Configurações das mensagens" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "Conta Enganosa" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "Moderação" @@ -2776,13 +3020,13 @@ msgstr "Detalhes da moderação" msgid "Moderation list by {0}" msgstr "Lista de moderação por {0}" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "Lista de moderação por <0/>" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "Lista de moderação por você" @@ -2803,7 +3047,7 @@ msgstr "Listas de moderação" msgid "Moderation Lists" msgstr "Listas de Moderação" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "Moderação" @@ -2824,11 +3068,11 @@ msgstr "O moderador escolheu um aviso geral neste conteúdo." msgid "More" msgstr "Mais" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "Mais feeds" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "Mais opções" @@ -2849,7 +3093,7 @@ msgstr "Silenciar {truncatedTag}" msgid "Mute Account" msgstr "Silenciar Conta" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "Silenciar contas" @@ -2857,32 +3101,37 @@ msgstr "Silenciar contas" msgid "Mute all {displayTag} posts" msgstr "Silenciar posts com {displayTag}" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "Silenciar apenas tags" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "Silenciar texto e tags" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "Silenciar lista" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "Silenciar notificações" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "Silenciar estas contas?" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "Silenciar esta palavra no conteúdo de um post e tags" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "Silenciar esta palavra apenas nas tags de um post" @@ -2921,7 +3170,7 @@ msgstr "Silenciado por \"{0}\"" msgid "Muted words & tags" msgstr "Palavras/tags silenciadas" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "Silenciar é privado. Contas silenciadas podem interagir com você, mas você não verá postagens ou receber notificações delas." @@ -2930,23 +3179,23 @@ msgstr "Silenciar é privado. Contas silenciadas podem interagir com você, mas msgid "My Birthday" msgstr "Meu Aniversário" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "Meus Feeds" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "Meu Perfil" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "Meus feeds salvos" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "Meus Feeds Salvos" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "Nome" @@ -2955,27 +3204,27 @@ msgstr "Nome" msgid "Name is required" msgstr "Nome é obrigatório" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "Nome ou Descrição Viola os Padrões da Comunidade" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "Natureza" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "Navega para próxima tela" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "Navega para seu perfil" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "Precisa denunciar uma violação de copyright?" @@ -2984,11 +3233,11 @@ msgstr "Precisa denunciar uma violação de copyright?" #~ msgid "Never lose access to your followers and data." #~ msgstr "Nunca perca o acesso aos seus seguidores e dados." -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "Nunca perca o acesso aos seus seguidores ou dados." -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "Deixa pra lá, crie um usuário pra mim" @@ -3001,10 +3250,14 @@ msgstr "Novo" msgid "New" msgstr "Novo" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" +msgstr "Novo chat" + +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" msgstr "" #: src/view/com/modals/CreateOrEditList.tsx:255 @@ -3019,22 +3272,22 @@ msgstr "Nova senha" msgid "New Password" msgstr "Nova Senha" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "Novo post" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "Novo post" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "Novo Post" @@ -3047,14 +3300,14 @@ msgstr "Nova lista de usuários" msgid "Newest replies first" msgstr "Respostas mais recentes primeiro" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "Notícias" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3072,29 +3325,29 @@ msgstr "Próximo" msgid "Next image" msgstr "Próxima imagem" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "Não" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "Sem descrição" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "Não tenho painel de DNS" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." -msgstr "" +msgstr "Nenhum GIF em destaque encontrado." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "Você não está mais seguindo {0}" @@ -3102,25 +3355,39 @@ msgstr "Você não está mais seguindo {0}" msgid "No longer than 253 characters" msgstr "No máximo 253 caracteres" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" +msgstr "Nenhuma mensagem ainda" + +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" msgstr "" #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "Nenhuma notificação!" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "Nenhum resultado" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "Nenhum resultado encontrado" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "Nenhum resultado encontrado para \"{query}\"" @@ -3130,13 +3397,13 @@ msgstr "Nenhum resultado encontrado para \"{query}\"" msgid "No results found for {query}" msgstr "Nenhum resultado encontrado para {query}" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." -msgstr "" +msgstr "Nenhum resultado encontrado para \"{search}\"." #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "Nenhum resultado encontrado para \"{searchText}\"." #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3147,6 +3414,10 @@ msgstr "Não, obrigado" msgid "Nobody" msgstr "Ninguém" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3165,8 +3436,8 @@ msgstr "Nudez não-erótica" msgid "Not Found" msgstr "Não encontrado" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "Agora não" @@ -3180,25 +3451,37 @@ msgstr "Nota sobre compartilhamento" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "Nota: o Bluesky é uma rede aberta e pública. Esta configuração limita somente a visibilidade do seu conteúdo no site e aplicativo do Bluesky, e outros aplicativos podem não respeitar esta configuração. Seu conteúdo ainda poderá ser exibido para usuários não autenticados por outros aplicativos e sites." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "Notificações" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" -msgstr "" +msgstr "Agora" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "Nudez" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "Nudez ou pornografia sem aviso aplicado" @@ -3210,17 +3493,17 @@ msgstr "Nudez ou pornografia sem aviso aplicado" msgid "Off" msgstr "Desligado" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "Opa!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "Opa! Algo deu errado." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "OK" @@ -3232,14 +3515,18 @@ msgstr "Ok" msgid "Oldest replies first" msgstr "Respostas mais antigas primeiro" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "Resetar tutoriais" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "Uma ou mais imagens estão sem texto alternativo." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "Apenas imagens .jpg ou .png são permitidas" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "Apenas {0} pode responder." @@ -3248,33 +3535,46 @@ msgstr "Apenas {0} pode responder." msgid "Only contains letters, numbers, and hyphens" msgstr "Contém apenas letras, números e hífens" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "Opa, algo deu errado!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "Opa!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "Abrir" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "Abrir criador de avatar" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "Abrir seletor de emojis" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "Abrir opções do feed" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "Abrir links no navegador interno" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "Abrir opções de palavras/tags silenciadas" @@ -3287,12 +3587,12 @@ msgstr "Abrir navegação" msgid "Open post options menu" msgstr "Abrir opções do post" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "Abre o storybook" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "Abrir registros do sistema" @@ -3300,9 +3600,9 @@ msgstr "Abrir registros do sistema" msgid "Opens {numItems} options" msgstr "Abre {numItems} opções" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" -msgstr "" +msgstr "Abre as configurações de acessibilidade" #: src/view/screens/Log.tsx:54 msgid "Opens additional details for a debug entry" @@ -3316,11 +3616,15 @@ msgstr "Abre a lista de usuários nesta notificação" msgid "Opens camera on device" msgstr "Abre a câmera do dispositivo" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "Abre o editor de post" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "Abre definições de idioma configuráveis" @@ -3328,7 +3632,7 @@ msgstr "Abre definições de idioma configuráveis" msgid "Opens device photo gallery" msgstr "Abre a galeria de fotos do dispositivo" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "Abre as configurações de anexos externos" @@ -3344,58 +3648,58 @@ msgstr "Abre o fluxo de entrar na sua conta do Bluesky" #: src/view/com/composer/photos/SelectGifBtn.tsx:37 msgid "Opens GIF select dialog" -msgstr "" +msgstr "Abre a janela de seleção de GIFs" #: src/view/com/modals/InviteCodes.tsx:173 msgid "Opens list of invite codes" msgstr "Abre a lista de códigos de convite" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "Abre modal de confirmar a exclusão da conta. Requer código enviado por email" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "Abre modal para troca da sua senha do Bluesky" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "Abre modal para troca do seu usuário do Bluesky" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "Abre modal para baixar os dados da sua conta do Bluesky" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "Abre modal para verificação de email" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "Abre modal para usar o domínio personalizado" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "Abre configurações de moderação" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "Abre o formulário de redefinição de senha" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "Abre a tela para editar feeds salvos" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "Abre a tela com todos os feeds salvos" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "Abre as configurações de senha do aplicativo" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "Abre as preferências do feed inicial" @@ -3403,20 +3707,20 @@ msgstr "Abre as preferências do feed inicial" msgid "Opens the linked website" msgstr "Abre o link" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "Abre a tela de configurações do chat" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "Abre a página do storybook" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "Abre a página de log do sistema" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "Abre as preferências de threads" @@ -3424,7 +3728,8 @@ msgstr "Abre as preferências de threads" msgid "Option {0} of {numItems}" msgstr "Opção {0} de {numItems}" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "Se quiser adicionar mais informações, digite abaixo:" @@ -3432,7 +3737,7 @@ msgstr "Se quiser adicionar mais informações, digite abaixo:" msgid "Or combine these options:" msgstr "Ou combine estas opções:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "Outro" @@ -3444,7 +3749,11 @@ msgstr "Outra conta" msgid "Other..." msgstr "Outro..." -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "Página não encontrada" @@ -3453,10 +3762,10 @@ msgstr "Página não encontrada" msgid "Page Not Found" msgstr "Página Não Encontrada" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "Senha" @@ -3474,7 +3783,7 @@ msgstr "Senha atualizada!" #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Pause" -msgstr "" +msgstr "Pausar" #: src/view/screens/Search/Search.tsx:379 msgid "People" @@ -3488,46 +3797,55 @@ msgstr "Pessoas seguidas por @{0}" msgid "People following @{0}" msgstr "Pessoas seguindo @{0}" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "A permissão de galeria é obrigatória." -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "A permissão de galeria foi recusada. Por favor, habilite-a nas configurações do dispositivo." -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "Pets" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "Imagens destinadas a adultos." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "Fixar na tela inicial" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "Fixar na Tela Inicial" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "Feeds Fixados" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" -msgstr "" +msgstr "Tocar" #: src/view/com/util/post-embeds/ExternalGifEmbed.tsx:123 msgid "Play {0}" msgstr "Reproduzir {0}" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" -msgstr "" +msgstr "Tocar ou pausar o GIF" #: src/view/com/util/post-embeds/ExternalPlayerEmbed.tsx:57 #: src/view/com/util/post-embeds/ExternalPlayerEmbed.tsx:58 @@ -3538,78 +3856,83 @@ msgstr "Reproduzir Vídeo" msgid "Plays the GIF" msgstr "Reproduz o GIF" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "Por favor, escolha seu usuário." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "Por favor, escolha sua senha." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "Por favor, complete o captcha de verificação." -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "Por favor, confirme seu e-mail antes de alterá-lo. Este é um requisito temporário enquanto ferramentas de atualização de e-mail são adicionadas, e em breve será removido." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "Por favor, insira um nome para a sua Senha de Aplicativo." -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "Por favor, insira um nome único para esta Senha de Aplicativo ou use nosso nome gerado automaticamente." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "Por favor, insira uma palavra, tag ou frase para silenciar" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "Por favor, digite o seu e-mail." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "Por favor, digite sua senha também:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "Por favor, explique por que você acha que este rótulo foi aplicado incorrentamente por {0}" -#: src/lib/hooks/useAccountSwitcher.ts:48 -msgid "Please sign in as @{0}" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 +msgid "Please sign in as @{0}" +msgstr "Por favor entre como @{0}" + +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "Por favor, verifique seu e-mail" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "Aguarde até que a prévia de link termine de carregar" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "Política" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "Pornografia" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "Postar" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "Post" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "Post por {0}" @@ -3623,7 +3946,7 @@ msgstr "Post por @{0}" msgid "Post deleted" msgstr "Post excluído" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "Post oculto" @@ -3645,8 +3968,8 @@ msgstr "Idioma do post" msgid "Post Languages" msgstr "Idiomas do Post" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "Post não encontrado" @@ -3658,11 +3981,11 @@ msgstr "posts" msgid "Posts" msgstr "Posts" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "Posts podem ser silenciados baseados no seu conteúdo, tags ou ambos." -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "Posts ocultados" @@ -3670,21 +3993,25 @@ msgstr "Posts ocultados" msgid "Potentially Misleading Link" msgstr "Link Potencialmente Enganoso" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "Trocar de provedor de hospedagem" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "Tentar novamente" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "Tentar novamente" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -3698,7 +4025,7 @@ msgstr "Idioma Principal" msgid "Prioritize Your Follows" msgstr "Priorizar seus Seguidores" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "Privacidade" @@ -3706,25 +4033,29 @@ msgstr "Privacidade" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "Política de Privacidade" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "Processando..." -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "perfil" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "Perfil" @@ -3732,11 +4063,11 @@ msgstr "Perfil" msgid "Profile updated" msgstr "Perfil atualizado" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "Proteja a sua conta verificando o seu e-mail." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "Público" @@ -3748,11 +4079,11 @@ msgstr "Listas públicas e compartilháveis para silenciar ou bloquear usuários msgid "Public, shareable lists which can drive feeds." msgstr "Listas públicas e compartilháveis que geram feeds." -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "Publicar post" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "Publicar resposta" @@ -3778,6 +4109,14 @@ msgstr "Aleatório" msgid "Ratios" msgstr "Índices" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "Motivo: {0}" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "Buscas Recentes" @@ -3790,12 +4129,20 @@ msgstr "Buscas Recentes" #~ msgid "Recommended Users" #~ msgstr "Usuários Recomendados" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "Remover" @@ -3803,7 +4150,7 @@ msgstr "Remover" msgid "Remove account" msgstr "Remover conta" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "Remover avatar" @@ -3811,22 +4158,25 @@ msgstr "Remover avatar" msgid "Remove Banner" msgstr "Remover banner" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "Remover feed" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "Remover feed?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "Remover dos meus feeds" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "Remover dos meus feeds?" @@ -3838,19 +4188,19 @@ msgstr "Remover imagem" msgid "Remove image preview" msgstr "Remover visualização da imagem" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "Remover palavra silenciada da lista" #: src/view/com/util/post-embeds/QuoteEmbed.tsx:223 msgid "Remove quote" -msgstr "" +msgstr "Remover citação" #: src/view/com/modals/Repost.tsx:48 msgid "Remove repost" msgstr "Desfazer repost" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "Remover este feed dos feeds salvos" @@ -3859,11 +4209,13 @@ msgstr "Remover este feed dos feeds salvos" msgid "Removed from list" msgstr "Removido da lista" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "Removido dos meus feeds" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "Removido dos feeds salvos" @@ -3873,7 +4225,12 @@ msgstr "Remover miniatura de {0}" #: src/view/com/util/post-embeds/QuoteEmbed.tsx:224 msgid "Removes quoted post" -msgstr "" +msgstr "Remove o post citado" + +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "Trocar pelo Discover" #: src/view/screens/Profile.tsx:194 msgid "Replies" @@ -3883,12 +4240,12 @@ msgstr "Respostas" msgid "Replies to this thread are disabled" msgstr "Respostas para esta thread estão desativadas" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "Responder" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "Filtros de Resposta" @@ -3899,71 +4256,85 @@ msgstr "Filtros de Resposta" #~ msgstr "Responder <0/>" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" -msgstr "" +msgstr "Responder <0><1/>" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" -msgstr "" +msgstr "Denunciar" #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "Denunciar conta" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "Denunciar Conta" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "Denunciar conversa" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "Janela de denúncia" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "Denunciar feed" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "Denunciar Lista" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" -msgstr "" +msgstr "Denunciar mensagem" #: src/view/com/util/forms/PostDropdownBtn.tsx:363 #: src/view/com/util/forms/PostDropdownBtn.tsx:365 msgid "Report post" msgstr "Denunciar post" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "Denunciar conteúdo" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "Denunciar este feed" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "Denunciar esta lista" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "Denunciar esta mensagem" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "Denunciar este post" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "Denunciar este usuário" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "Repostar" @@ -3981,7 +4352,7 @@ msgstr "Repostar ou citar um post" msgid "Reposted By" msgstr "Repostado Por" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "Repostado por {0}" @@ -3989,7 +4360,7 @@ msgstr "Repostado por {0}" #~ msgid "Reposted by <0/>" #~ msgstr "Repostado por <0/>" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "Repostado por <0><1/>" @@ -3997,12 +4368,12 @@ msgstr "Repostado por <0><1/>" msgid "reposted your post" msgstr "repostou seu post" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "Reposts" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "Solicitar Alteração" @@ -4015,18 +4386,18 @@ msgstr "Solicitar Código" msgid "Require alt text before posting" msgstr "Exigir texto alternativo antes de postar" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" -msgstr "" +msgstr "Torna obrigatório um código de verificação por e-mail ao entrar nesta conta" #: src/screens/Signup/StepInfo/index.tsx:69 msgid "Required for this provider" msgstr "Obrigatório para este provedor" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" -msgstr "" +msgstr "Reenviar e-mail" #: src/view/com/modals/ChangePassword.tsx:187 msgid "Reset code" @@ -4036,8 +4407,8 @@ msgstr "Código de redefinição" msgid "Reset Code" msgstr "Código de Redefinição" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "Redefinir tutoriais" @@ -4045,20 +4416,20 @@ msgstr "Redefinir tutoriais" msgid "Reset password" msgstr "Redefinir senha" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "Redefinir configurações" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "Redefine tutoriais" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "Redefine as configurações" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "Tenta entrar novamente" @@ -4067,13 +4438,14 @@ msgstr "Tenta entrar novamente" msgid "Retries the last action, which errored out" msgstr "Tenta a última ação, que deu erro" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 @@ -4081,11 +4453,11 @@ msgid "Retry" msgstr "Tente novamente" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" +#~ msgid "Retry." +#~ msgstr "Tentar novamente." #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "Voltar para página anterior" @@ -4094,26 +4466,26 @@ msgid "Returns to home page" msgstr "Voltar para a tela inicial" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "Voltar para página anterior" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "Salvar" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "Salvar" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "Salvar texto alternativo" @@ -4125,7 +4497,7 @@ msgstr "Salvar data de nascimento" msgid "Save Changes" msgstr "Salvar Alterações" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "Salvar usuário" @@ -4133,24 +4505,25 @@ msgstr "Salvar usuário" msgid "Save image crop" msgstr "Salvar corte de imagem" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "Salvar nos meus feeds" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "Feeds Salvos" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" -msgstr "" +msgstr "Imagem salva na galeria." #: src/view/com/lightbox/Lightbox.tsx:81 #~ msgid "Saved to your camera roll." #~ msgstr "Imagem salva na galeria." -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "Adicionado aos seus feeds" @@ -4158,7 +4531,7 @@ msgstr "Adicionado aos seus feeds" msgid "Saves any changes to your profile" msgstr "Salva todas as alterações" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "Salva mudança de usuário para {handle}" @@ -4166,16 +4539,20 @@ msgstr "Salva mudança de usuário para {handle}" msgid "Saves image crop settings" msgstr "Salva o corte da imagem" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "Ciência" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "Ir para o topo" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4183,12 +4560,12 @@ msgstr "Ir para o topo" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "Buscar" @@ -4198,7 +4575,7 @@ msgstr "Pesquisar por \"{query}\"" #: src/view/screens/Search/Search.tsx:839 msgid "Search for \"{searchText}\"" -msgstr "" +msgstr "Pesquisar por \"{searchText}\"" #: src/components/TagMenu/index.tsx:145 msgid "Search for all posts by @{authorHandle} with tag {displayTag}" @@ -4209,8 +4586,8 @@ msgid "Search for all posts with tag {displayTag}" msgstr "Pesquisar por posts com a tag {displayTag}" #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "Pesquise por alguém para começar um novo chat." #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4220,17 +4597,18 @@ msgstr "Buscar usuários" #: src/components/dialogs/GifSelect.tsx:158 msgid "Search GIFs" -msgstr "" +msgstr "Pesquisar por GIFs" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" -msgstr "" +msgstr "Pesquisar por usuários" #: src/components/dialogs/GifSelect.tsx:159 msgid "Search Tenor" -msgstr "" +msgstr "Pesquisar via Tenor" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "Passo de Segurança Necessário" @@ -4251,11 +4629,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "Ver posts com <0>{displayTag} deste usuário" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "Ver perfil" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "Veja o guia" @@ -4267,21 +4645,33 @@ msgstr "Veja o guia" msgid "Select {item}" msgstr "Selecionar {item}" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "Selecione uma cor" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "Selecione uma conta" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "Selecione um avatar" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "Selecione um emoji" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "Selecionar de uma conta existente" #: src/view/com/composer/photos/SelectGifBtn.tsx:36 msgid "Select GIF" -msgstr "" +msgstr "Selecionar GIF" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" -msgstr "" +msgstr "Selecionar GIF \"{0}\"" #: src/view/screens/LanguageSettings.tsx:299 msgid "Select languages" @@ -4299,7 +4689,11 @@ msgstr "Seleciona opção {i} de {numItems}" msgid "Select some accounts below to follow" msgstr "Selecione algumas contas para seguir" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "Selecione o {emojiName} emoji como avatar" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "Selecione o(s) serviço(s) de moderação para reportar" @@ -4327,7 +4721,7 @@ msgstr "Selecione o idioma do seu aplicativo" msgid "Select your date of birth" msgstr "Selecione sua data de nascimento" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "Selecione seus interesses" @@ -4343,32 +4737,38 @@ msgstr "Selecione seus feeds primários" msgid "Select your secondary algorithmic feeds" msgstr "Selecione seus feeds secundários" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "Enviar E-mail de Confirmação" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "Enviar e-mail" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "Enviar E-mail" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "Enviar comentários" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" -msgstr "" +msgstr "Enviar mensagem" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "Denunciar" @@ -4376,12 +4776,12 @@ msgstr "Denunciar" msgid "Send report to {0}" msgstr "Denunciar via {0}" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" -msgstr "" +msgstr "Enviar e-mail de verificação" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "Envia o e-mail com o código de confirmação para excluir a conta" @@ -4397,15 +4797,15 @@ msgstr "Definir data de nascimento" msgid "Set new password" msgstr "Definir uma nova senha" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "Defina esta configuração como \"Não\" para ocultar todas as citações do seu feed. Reposts ainda serão visíveis." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "Defina esta configuração como \"Não\" para ocultar todas as respostas do seu feed." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "Defina esta configuração como \"Não\" para ocultar todos os reposts do seu feed." @@ -4413,7 +4813,7 @@ msgstr "Defina esta configuração como \"Não\" para ocultar todos os reposts d msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "Defina esta configuração como \"Sim\" para mostrar respostas em uma visualização de thread. Este é um recurso experimental." -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "Defina esta configuração como \"Sim\" para exibir amostras de seus feeds salvos no seu feed inicial. Este é um recurso experimental." @@ -4421,27 +4821,27 @@ msgstr "Defina esta configuração como \"Sim\" para exibir amostras de seus fee msgid "Set up your account" msgstr "Configure sua conta" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Configura o usuário no Bluesky" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "Define o tema para escuro" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "Define o tema para claro" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "Define o tema para seguir o sistema" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "Define o tema escuro para o padrão" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "Define o tema escuro para o menos escuro" @@ -4462,15 +4862,14 @@ msgid "Sets image aspect ratio to wide" msgstr "Define a proporção da imagem para comprida" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "Configurações" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "Atividade sexual ou nudez erótica." @@ -4478,7 +4877,7 @@ msgstr "Atividade sexual ou nudez erótica." msgid "Sexually Suggestive" msgstr "Sexualmente Sugestivo" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "Compartilhar" @@ -4488,18 +4887,26 @@ msgstr "Compartilhar" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "Compartilhar" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "Compartilhar assim" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "Compartilhar feed" @@ -4508,15 +4915,19 @@ msgstr "Compartilhar feed" msgid "Share Link" msgstr "Compartilhar Link" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "Compartilha o link" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "Mostrar" @@ -4526,7 +4937,7 @@ msgstr "Mostrar" #: src/view/com/util/post-embeds/GifEmbed.tsx:167 msgid "Show alt text" -msgstr "" +msgstr "Mostrar texto alternativo" #: src/components/moderation/ScreenHider.tsx:169 #: src/components/moderation/ScreenHider.tsx:172 @@ -4542,31 +4953,39 @@ msgstr "Mostrar rótulo" msgid "Show badge and filter from feeds" msgstr "Mostrar rótulo e filtrar dos feeds" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "Mostrar usuários parecidos com {0}" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" -msgstr "" +msgstr "Mostrar menos disso" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "Mostrar Mais" #: src/view/com/util/forms/PostDropdownBtn.tsx:297 #: src/view/com/util/forms/PostDropdownBtn.tsx:299 msgid "Show more like this" +msgstr "Mostrar mais disso" + +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "Mostrar Posts dos Meus Feeds" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "Mostrar Citações" @@ -4582,7 +5001,7 @@ msgstr "Mostrar citações no Seguindo" msgid "Show re-posts in Following feed" msgstr "Mostrar reposts no feed Seguindo" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "Mostrar Respostas" @@ -4602,7 +5021,7 @@ msgstr "Mostrar respostas no feed Seguindo" #~ msgid "Show replies with at least {value} {0}" #~ msgstr "Mostrar respostas com ao menos {0} {value}" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "Mostrar Reposts" @@ -4611,7 +5030,7 @@ msgid "Show reposts in Following" msgstr "Mostrar reposts no Seguindo" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "Mostrar conteúdo" @@ -4635,17 +5054,17 @@ msgstr "Mostra posts de {0} no seu feed" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4668,17 +5087,17 @@ msgstr "Faça login ou crie sua conta para entrar na conversa!" msgid "Sign into Bluesky or create a new account" msgstr "Faça login no Bluesky ou crie uma nova conta" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "Sair" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -4694,7 +5113,7 @@ msgstr "Inscreva-se ou faça login para se juntar à conversa" msgid "Sign-in Required" msgstr "É Necessário Fazer Login" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "Entrou como" @@ -4703,27 +5122,35 @@ msgstr "Entrou como" msgid "Signed in as @{0}" msgstr "autenticado como @{0}" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "Pular" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "Pular" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "Desenvolvimento de software" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "Algo deu errado" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." msgstr "Algo deu errado. Por favor, tente novamente." -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "Opa! Sua sessão expirou. Por favor, entre novamente." @@ -4735,19 +5162,24 @@ msgstr "Classificar Respostas" msgid "Sort replies to the same post by:" msgstr "Classificar respostas de um post por:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "Fonte:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "Fonte:" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "Spam" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "Spam; menções ou respostas excessivas" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "Esportes" @@ -4755,17 +5187,25 @@ msgstr "Esportes" msgid "Square" msgstr "Quadrado" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" +msgstr "Começar um novo chat" + +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" msgstr "" #: src/view/screens/Settings/index.tsx:862 #~ msgid "Status page" #~ msgstr "Página de status" -#: src/view/screens/Settings/index.tsx:896 +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" -msgstr "" +msgstr "Página de status" #: src/screens/Signup/index.tsx:145 #~ msgid "Step" @@ -4773,31 +5213,33 @@ msgstr "" #: src/screens/Signup/index.tsx:154 msgid "Step {0} of {1}" -msgstr "" +msgstr "Passo {0} de {1}" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "Armazenamento limpo, você precisa reiniciar o app agora." #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Storybook" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Enviar" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "Inscrever-se" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "Inscreva-se em @{0} para utilizar estes rótulos:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "Inscrever-se no rotulador" @@ -4806,11 +5248,11 @@ msgstr "Inscrever-se no rotulador" msgid "Subscribe to the {0} feed" msgstr "Increver-se no feed {0}" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "Inscrever-se neste rotulador" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "Inscreva-se nesta lista" @@ -4822,7 +5264,7 @@ msgstr "Sugestões de Seguidores" msgid "Suggested for you" msgstr "Sugeridos para você" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "Sugestivo" @@ -4837,23 +5279,23 @@ msgstr "Suporte" msgid "Switch Account" msgstr "Alterar Conta" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "Trocar para {0}" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "Troca a conta que você está autenticado" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "Sistema" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "Log do sistema" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "tag" @@ -4869,41 +5311,47 @@ msgstr "Alto" msgid "Tap to view fully" msgstr "Toque para ver tudo" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "Tecnologia" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "Termos" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "Termos de Serviço" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "Termos utilizados violam as diretrizes da comunidade" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "texto" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "Campo de entrada de texto" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "Obrigado. Sua denúncia foi enviada." -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "Contém o seguinte:" @@ -4911,7 +5359,7 @@ msgstr "Contém o seguinte:" msgid "That handle is already taken." msgstr "Este identificador de usuário já está sendo usado." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "A conta poderá interagir com você após o desbloqueio." @@ -4928,11 +5376,15 @@ msgstr "As Diretrizes da Comunidade foram movidas para <0/>" msgid "The Copyright Policy has been moved to <0/>" msgstr "A Política de Direitos Autorais foi movida para <0/>" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "Este feed foi substituído pelo Discover." + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "Os seguintes rótulos foram aplicados sobre sua conta." -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "Os seguintes rótulos foram aplicados sobre seu conteúdo." @@ -4940,8 +5392,8 @@ msgstr "Os seguintes rótulos foram aplicados sobre seu conteúdo." msgid "The following steps will help customize your Bluesky experience." msgstr "Os seguintes passos vão ajudar a customizar sua experiência no Bluesky." -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "O post pode ter sido excluído." @@ -4961,37 +5413,40 @@ msgstr "Os Termos de Serviço foram movidos para" msgid "There are many feeds to try:" msgstr "Temos vários feeds para você experimentar:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "Tivemos um problema ao contatar o servidor, por favor verifique sua conexão com a internet e tente novamente." -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "Tivemos um problema ao remover este feed, por favor verifique sua conexão com a internet e tente novamente." -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "Tivemos um problema ao atualizar seus feeds, por favor verifique sua conexão com a internet e tente novamente." -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." -msgstr "" +msgstr "Tivemos um problema ao conectar com o Tenor." #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "Tivemos um problema ao conectar neste chat." -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "Tivemos um problema ao contatar o servidor deste feed" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "Tivemos um problema ao contatar o servidor deste feed" @@ -4999,7 +5454,7 @@ msgstr "Tivemos um problema ao contatar o servidor deste feed" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "Tivemos um problema ao carregar notificações. Toque aqui para tentar de novo." -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "Tivemos um problema ao carregar posts. Toque aqui para tentar de novo." @@ -5012,7 +5467,8 @@ msgstr "Tivemos um problema ao carregar esta lista. Toque aqui para tentar de no msgid "There was an issue fetching your lists. Tap here to try again." msgstr "Tivemos um problema ao carregar suas listas. Toque aqui para tentar de novo." -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "Tivemos um problema ao enviar sua denúncia. Por favor, verifique sua conexão com a internet." @@ -5020,32 +5476,32 @@ msgstr "Tivemos um problema ao enviar sua denúncia. Por favor, verifique sua co msgid "There was an issue syncing your preferences with the server" msgstr "Tivemos um problema ao sincronizar suas configurações" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "Tivemos um problema ao carregar suas senhas de app." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "Tivemos um problema! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "Tivemos algum problema. Por favor verifique sua conexão com a internet e tente novamente." -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "Houve um problema inesperado no aplicativo. Por favor, deixe-nos saber se isso aconteceu com você!" @@ -5066,14 +5522,26 @@ msgstr "Este {screenDescription} foi reportado:" msgid "This account has requested that users sign in to view their profile." msgstr "Esta conta solicitou que os usuários fizessem login para visualizar seu perfil." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "Esta contestação será enviada para <0>{0}." -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:26 +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "Este chat foi desconectado devido a um problema de conexão." + #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." msgstr "Este conteúdo foi escondido pelos moderadores." @@ -5091,21 +5559,21 @@ msgstr "Este conteúdo é hospedado por {0}. Deseja ativar a mídia externa?" msgid "This content is not available because one of the users involved has blocked the other." msgstr "Este conteúdo não está disponível porque um dos usuários bloqueou o outro." -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "Este conteúdo não é visível sem uma conta do Bluesky." -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "Esta funcionalidade está em beta. Você pode ler mais sobre exportação de repositórios <0>neste post do nosso blog." -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "Este feed está recebendo muito tráfego e está temporariamente indisponível. Por favor, tente novamente mais tarde." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "Este feed está vazio!" @@ -5113,11 +5581,15 @@ msgstr "Este feed está vazio!" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "Este feed está vazio! Talvez você precise seguir mais usuários ou configurar os idiomas filtrados." +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "Este feed não funciona mais. Estamos te mostrando o conteúdo do <0>Discover." + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "Esta informação não é compartilhada com outros usuários." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "Isso é importante caso você precise alterar seu e-mail ou redefinir sua senha." @@ -5127,13 +5599,21 @@ msgstr "Isso é importante caso você precise alterar seu e-mail ou redefinir su #: src/components/moderation/ModerationDetailsDialog.tsx:127 msgid "This label was applied by <0>{0}." -msgstr "" +msgstr "Este rótulo foi aplicado por <0>{0}." #: src/components/moderation/ModerationDetailsDialog.tsx:125 msgid "This label was applied by the author." +msgstr "Este rótulo foi aplicado pelo autor." + +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "Este rótulo foi aplicado por você" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "Este rotulador não declarou quais rótulos utiliza e pode não estar funcionando ainda." @@ -5141,7 +5621,7 @@ msgstr "Este rotulador não declarou quais rótulos utiliza e pode não estar fu msgid "This link is taking you to the following website:" msgstr "Este link está levando você ao seguinte site:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "Esta lista está vazia!" @@ -5149,11 +5629,11 @@ msgstr "Esta lista está vazia!" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "Este serviço de moderação está indisponível. Veja mais detalhes abaixo. Se este problema persistir, entre em contato." -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "Você já tem uma senha com esse nome" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "Este post foi excluído." @@ -5174,7 +5654,7 @@ msgstr "Este post só pode ser visto por usuários autenticados e não aparecer msgid "This service has not provided terms of service or a privacy policy." msgstr "Este serviço não proveu termos de serviço ou política de privacidade." -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "Isso deve criar um registro no domínio:" @@ -5182,6 +5662,10 @@ msgstr "Isso deve criar um registro no domínio:" msgid "This user doesn't have any followers." msgstr "Este usuário não é seguido por ninguém ainda." +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5207,16 +5691,16 @@ msgstr "Este usuário não segue ninguém ainda." #~ msgid "This warning is only available for posts with media attached." #~ msgstr "Este aviso só está disponível para publicações com mídia anexada." -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "Isso removerá {0} das suas palavras silenciadas. Você pode adicioná-la novamente depois." -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "Preferências das Threads" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "Preferências das Threads" @@ -5228,15 +5712,19 @@ msgstr "Visualização de Threads" msgid "Threads Preferences" msgstr "Preferências das Threads" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." -msgstr "" +msgstr "Para desabilitar o 2FA via e-mail, por favor verifique seu acesso a este endereço de e-mail." + +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "Para denunciar uma conversa, por favor, denuncie uma das mensagens individualmente. Isso vai permitir a análise da situação pelos nossos moderadores." #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "Para quem você gostaria de enviar esta denúncia?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "Alternar entre opções de uma palavra silenciada" @@ -5269,60 +5757,69 @@ msgctxt "action" msgid "Try again" msgstr "Tentar novamente" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" -msgstr "" +msgstr "Autenticação de dois fatores (2FA)" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" -msgstr "" +msgstr "Digite sua mensagem aqui" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "Tipo:" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "Desbloquear lista" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "Dessilenciar lista" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "Não foi possível entrar em contato com seu serviço. Por favor, verifique sua conexão à internet." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "Desbloquear" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "Desbloquear" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "Desbloquear Conta" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "Desbloquear Conta?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "Desfazer repost" @@ -5336,7 +5833,7 @@ msgstr "Deixar de seguir" msgid "Unfollow" msgstr "Deixar de seguir" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "Deixar de seguir {0}" @@ -5349,12 +5846,12 @@ msgstr "Deixar de seguir" #~ msgid "Unlike" #~ msgstr "Descurtir" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "Descurtir este feed" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "Dessilenciar" @@ -5371,37 +5868,50 @@ msgstr "Dessilenciar conta" msgid "Unmute all {displayTag} posts" msgstr "Dessilenciar posts com {displayTag}" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" msgstr "" +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "Dessilenciar notificações" + #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "Dessilenciar thread" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "Desafixar" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "Desafixar da tela inicial" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "Desafixar lista de moderação" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "Desinscrever-se" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "Desinscrever-se deste rotulador" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "Conteúdo sexual indesejado" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "Conteúdo Sexual Indesejado" @@ -5409,7 +5919,7 @@ msgstr "Conteúdo Sexual Indesejado" msgid "Update {displayName} in Lists" msgstr "Atualizar {displayName} nas Listas" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "Alterar para {handle}" @@ -5417,42 +5927,46 @@ msgstr "Alterar para {handle}" msgid "Updating..." msgstr "Atualizando..." -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "Enviar uma foto" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "Carregar um arquivo de texto para:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "Tirar uma foto" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "Carregar um arquivo" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "Carregar da galeria" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "Utilize um arquivo no seu servidor" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "Use as senhas de aplicativos para fazer login em outros clientes do Bluesky sem dar acesso total à sua conta ou senha." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "Usar bsky.social como serviço de hospedagem" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "Usar provedor padrão" @@ -5466,11 +5980,15 @@ msgstr "Usar o navegador interno" msgid "Use my default browser" msgstr "Usar o meu navegador padrão" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "Usar recomendados" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "Usar o painel do meu DNS" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "Use esta senha para entrar no outro aplicativo juntamente com seu identificador." @@ -5487,6 +6005,10 @@ msgstr "Usuário Bloqueado" msgid "User Blocked by \"{0}\"" msgstr "Usuário Bloqueado por \"{0}\"" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "Usuário Bloqueado Por Lista" @@ -5504,13 +6026,13 @@ msgstr "Este Usuário Te Bloqueou" msgid "User list by {0}" msgstr "Lista de usuários por {0}" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "Lista de usuários por <0/>" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "Sua lista de usuários" @@ -5526,11 +6048,11 @@ msgstr "Lista de usuários atualizada" msgid "User Lists" msgstr "Listas de Usuários" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "Nome de usuário ou endereço de e-mail" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "Usuários" @@ -5538,6 +6060,13 @@ msgstr "Usuários" msgid "users followed by <0/>" msgstr "usuários seguidos por <0/>" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "Usuários em \"{0}\"" @@ -5546,7 +6075,7 @@ msgstr "Usuários em \"{0}\"" msgid "Users that have liked this content or profile" msgstr "Usuários que curtiram este conteúdo ou perfil" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "Conteúdo:" @@ -5554,32 +6083,32 @@ msgstr "Conteúdo:" #~ msgid "Verify {0}" #~ msgstr "Verificar {0}" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" -msgstr "" +msgstr "Verificar registro DNS" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "Verificar e-mail" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "Verificar meu e-mail" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "Verificar Meu Email" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "Verificar Novo E-mail" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" -msgstr "" +msgstr "Verificar Arquivo" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "Verificar Seu E-mail" @@ -5587,15 +6116,15 @@ msgstr "Verificar Seu E-mail" #~ msgid "Version {0}" #~ msgstr "Versão {0}" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" -msgstr "" +msgstr "Versão {appVersion} {bundleInfo}" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "Games" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "Ver o avatar de {0}" @@ -5603,25 +6132,25 @@ msgstr "Ver o avatar de {0}" msgid "View debug entry" msgstr "Ver depuração" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "Ver detalhes" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "Ver detalhes para denunciar uma violação de copyright" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "Ver thread completa" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "Ver informações sobre estes rótulos" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "Ver perfil" @@ -5633,7 +6162,7 @@ msgstr "Ver o avatar" msgid "View the labeling service provided by @{0}" msgstr "Ver este rotulador provido por @{0}" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "Ver usuários que curtiram este feed" @@ -5661,11 +6190,15 @@ msgstr "Avisar e filtrar dos feeds" msgid "We couldn't find any results for that hashtag." msgstr "Não encontramos nenhum post com esta hashtag." +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "Não foi possível carregar esta conversa" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "Estimamos que sua conta estará pronta em mais ou menos {estimatedTime}." -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "Esperamos que você se divirta. Lembre-se, o Bluesky é:" @@ -5673,7 +6206,7 @@ msgstr "Esperamos que você se divirta. Lembre-se, o Bluesky é:" msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "Não temos mais posts de quem você segue. Aqui estão os mais novos de <0/>." -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "Não recomendamos utilizar palavras comuns que aparecem em muitos posts, já que isso pode resultar em filtrar todos eles." @@ -5689,7 +6222,7 @@ msgstr "Não foi possível carregar sua data de nascimento. Por favor, tente nov msgid "We were unable to load your configured labelers at this time." msgstr "Não foi possível carregar seus rotuladores." -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "Não conseguimos conectar. Por favor, tente novamente para continuar configurando a sua conta. Se continuar falhando, você pode pular este fluxo." @@ -5697,10 +6230,14 @@ msgstr "Não conseguimos conectar. Por favor, tente novamente para continuar con msgid "We will let you know when your account is ready." msgstr "Avisaremos quando sua conta estiver pronta." -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "Usaremos isto para customizar a sua experiência." +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "Estamos muito felizes em recebê-lo!" @@ -5709,7 +6246,7 @@ msgstr "Estamos muito felizes em recebê-lo!" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "Tivemos um problema ao exibir esta lista. Se continuar acontecendo, contate o criador da lista: @{handleOrDid}." -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "Não foi possível carregar sua lista de palavras silenciadas. Por favor, tente novamente." @@ -5717,12 +6254,12 @@ msgstr "Não foi possível carregar sua lista de palavras silenciadas. Por favor msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "Lamentamos, mas sua busca não pôde ser concluída. Por favor, tente novamente em alguns minutos." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "Sentimos muito! Não conseguimos encontrar a página que você estava procurando." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "Sentimos muito! Você só pode se inscrever em até dez rotuladores e você já chegou ao máximo." @@ -5730,13 +6267,13 @@ msgstr "Sentimos muito! Você só pode se inscrever em até dez rotuladores e vo #~ msgid "Welcome to <0>Bluesky" #~ msgstr "Bem-vindo ao <0>Bluesky" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "Do que você gosta?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "E aí?" @@ -5748,66 +6285,79 @@ msgstr "Quais idiomas são usados neste post?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "Quais idiomas você gostaria de ver nos seus feeds?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "Quem pode responder" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "Opa!" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" -msgstr "Por que este conteúdo deve ser revisado?" +msgstr "Por que este conteúdo deve ser analisado?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" -msgstr "Por que este feed deve ser revisado?" +msgstr "Por que este feed deve ser analisado?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" -msgstr "Por que esta lista deve ser revisada?" +msgstr "Por que esta lista deve ser analisada?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "Por que esta mensagem deve ser analisada?" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" -msgstr "Por que este post deve ser revisado?" +msgstr "Por que este post deve ser analisado?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" -msgstr "Por que este usuário deve ser revisado?" +msgstr "Por que este usuário deve ser analisado?" #: src/view/com/modals/crop-image/CropImage.web.tsx:125 msgid "Wide" msgstr "Largo" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" -msgstr "" +msgstr "Escreva uma mensagem" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "Escrever post" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "Escreva sua resposta" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "Escritores" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "Sim" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" -msgstr "" +msgstr "Ontem, {time}" #: src/screens/Deactivated.tsx:136 msgid "You are in line." @@ -5826,6 +6376,14 @@ msgstr "Você também pode descobrir novos feeds para seguir." msgid "You can change these settings later." msgstr "Você pode mudar estas configurações depois." +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -5839,22 +6397,26 @@ msgstr "Ninguém segue você ainda." msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "Você ainda não tem nenhum convite! Nós lhe enviaremos alguns quando você estiver há mais tempo no Bluesky." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "Você não tem feeds fixados." #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "Você não tem feeds salvos!" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "Você não tem feeds salvos!" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "Você não tem feeds salvos." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "Você bloqueou esta conta ou foi bloqueado por ela." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -5885,6 +6447,10 @@ msgstr "Você silenciou esta conta." msgid "You have muted this user" msgstr "Você silenciou este usuário." +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "Você não tem feeds." @@ -5894,15 +6460,15 @@ msgstr "Você não tem feeds." msgid "You have no lists." msgstr "Você não tem listas." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "Você ainda não tem chats. Comece um novo com alguém!" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." msgstr "Você ainda não bloqueou nenhuma conta. Para bloquear uma conta, acesse um perfil e selecione \"Bloquear conta\" no menu." -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "Você ainda não criou nenhuma senha de aplicativo. Você pode criar uma pressionando o botão abaixo." @@ -5910,11 +6476,19 @@ msgstr "Você ainda não criou nenhuma senha de aplicativo. Você pode criar uma msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." msgstr "Você ainda não silenciou nenhuma conta. Para silenciar uma conta, acesse um perfil e selecione \"Silenciar conta\" no menu." -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "Você não silenciou nenhuma palavra ou tag ainda" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "Você pode contestar estes rótulos se você acha que estão errados." + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "Você pode contestar estes rótulos se você acha que estão errados." @@ -5926,7 +6500,7 @@ msgstr "Você precisa ter no mínimo 13 anos de idade para se cadastrar." msgid "You must be 18 years or older to enable adult content" msgstr "Você precisa ser maior de idade para habilitar conteúdo adulto." -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "Você deve selecionar no mínimo um rotulador" @@ -5942,9 +6516,9 @@ msgstr "Você vai receber notificações desta thread" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "Você receberá um e-mail com um \"código de redefinição\". Digite esse código aqui, e então digite sua nova senha." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" -msgstr "" +msgstr "Você: {0}" #: src/screens/Onboarding/StepModeration/index.tsx:60 msgid "You're in control" @@ -5956,7 +6530,7 @@ msgstr "Você está no controle" msgid "You're in line" msgstr "Você está na fila" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "Tudo pronto!" @@ -5973,11 +6547,11 @@ msgstr "Você chegou ao fim do seu feed! Encontre novas contas para seguir." msgid "Your account" msgstr "Sua conta" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "Sua conta foi excluída" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "O repositório da sua conta, contendo todos os seus dados públicos, pode ser baixado como um arquivo \"CAR\". Este arquivo não inclui imagens ou dados privados, estes devem ser exportados separadamente." @@ -5985,6 +6559,10 @@ msgstr "O repositório da sua conta, contendo todos os seus dados públicos, pod msgid "Your birth date" msgstr "Sua data de nascimento" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "Sua escolha será salva, mas você pode trocá-la nas configurações depois" @@ -5994,16 +6572,16 @@ msgid "Your default feed is \"Following\"" msgstr "Seu feed inicial é o \"Seguindo\"" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "Seu e-mail parece ser inválido." -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "Seu e-mail foi atualizado mas não foi verificado. Como próximo passo, por favor verifique seu novo e-mail." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "Seu e-mail ainda não foi verificado. Esta é uma etapa importante de segurança que recomendamos." @@ -6015,11 +6593,11 @@ msgstr "Seu feed inicial está vazio! Siga mais usuários para acompanhar o que msgid "Your full handle will be" msgstr "Seu identificador completo será" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "Seu usuário completo será <0>@{0}" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "Suas palavras silenciadas" @@ -6027,22 +6605,26 @@ msgstr "Suas palavras silenciadas" msgid "Your password has been changed successfully!" msgstr "Sua senha foi alterada com sucesso!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "Seu post foi publicado" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "Suas postagens, curtidas e bloqueios são públicos. Silenciamentos são privados." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "Seu perfil" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "Sua resposta foi publicada" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "Sua denúncia será enviada para o serviço de moderação do Bluesky" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "Seu identificador de usuário" diff --git a/src/locale/locales/tr/messages.po b/src/locale/locales/tr/messages.po index 438025122c..6497c22c7a 100644 --- a/src/locale/locales/tr/messages.po +++ b/src/locale/locales/tr/messages.po @@ -13,7 +13,7 @@ msgstr "" "Plural-Forms: \n" "X-Generator: Poedit 3.4.2\n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(e-posta yok)" @@ -25,24 +25,32 @@ msgstr "" #~ msgid "{0, plural, one {# invite code available} other {# invite codes available}}" #~ msgstr "{0, plural, one {# davet kodu mevcut} other {# davet kodları mevcut}}" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" msgstr "" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" msgstr "" @@ -51,11 +59,11 @@ msgstr "" msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -67,7 +75,7 @@ msgstr "" msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" msgstr "" @@ -75,6 +83,10 @@ msgstr "" msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" msgstr "" +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "" + #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -87,11 +99,15 @@ msgstr "" msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} takip ediliyor" +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:151 #~ msgid "{invitesAvailable, plural, one {Invite codes: # available} other {Invite codes: # available}}" #~ msgstr "{invitesAvailable, plural, one {Davet kodları: # mevcut} other {Davet kodları: # mevcut}}" @@ -104,17 +120,17 @@ msgstr "{following} takip ediliyor" #~ msgid "{invitesAvailable} invite codes available" #~ msgstr "{invitesAvailable} davet kodları mevcut" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" -#: src/view/shell/Drawer.tsx:464 +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} okunmamış" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" msgstr "" @@ -122,11 +138,11 @@ msgstr "" msgid "<0/> members" msgstr "<0/> üyeleri" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" msgstr "" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" msgstr "" @@ -151,7 +167,7 @@ msgstr "" #~ msgid "<0>Follow some<1>Recommended<2>Users" #~ msgstr "<0>Önerilen<1>Kullanıcıları Takip Et<2>Seç" -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." msgstr "" @@ -163,7 +179,7 @@ msgstr "" msgid "⚠Invalid Handle" msgstr "⚠Geçersiz Kullanıcı Adı" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "" @@ -185,11 +201,11 @@ msgid "Access profile and other navigation links" msgstr "Profil ve diğer gezinme bağlantılarına erişin" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "Erişilebilirlik" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "" @@ -202,21 +218,21 @@ msgstr "" #~ msgid "account" #~ msgstr "" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "Hesap" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "Hesap engellendi" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "Hesap susturuldu" @@ -237,55 +253,56 @@ msgstr "Hesap seçenekleri" msgid "Account removed from quick access" msgstr "Hesap hızlı erişimden kaldırıldı" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "Hesap engeli kaldırıldı" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "Hesap susturulması kaldırıldı" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "Ekle" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "Bir içerik uyarısı ekleyin" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "Bu listeye bir kullanıcı ekleyin" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "Hesap ekle" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "Alternatif metin ekle" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "Uygulama Şifresi Ekle" @@ -306,15 +323,23 @@ msgstr "Uygulama Şifresi Ekle" #~ msgid "Add link card:" #~ msgstr "Bağlantı kartı ekle:" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "Alan adınıza aşağıdaki DNS kaydını ekleyin:" @@ -323,7 +348,7 @@ msgstr "Alan adınıza aşağıdaki DNS kaydını ekleyin:" msgid "Add to Lists" msgstr "Listelere Ekle" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "Beslemelerime ekle" @@ -336,17 +361,17 @@ msgstr "Beslemelerime ekle" msgid "Added to list" msgstr "Listeye eklendi" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "Beslemelerime eklendi" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "Bir yanıtın beslemenizde gösterilmesi için sahip olması gereken beğeni sayısını ayarlayın." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "Yetişkin İçerik" @@ -359,14 +384,29 @@ msgid "Adult content is disabled." msgstr "" #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "Gelişmiş" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "" +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -376,13 +416,13 @@ msgstr "Zaten bir kodunuz mu var?" msgid "Already signed in as @{0}" msgstr "Zaten @{0} olarak oturum açıldı" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -396,24 +436,24 @@ msgstr "" msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "Alternatif metin, görme engelli ve düşük görme yeteneğine sahip kullanıcılar için resimleri tanımlar ve herkes için bağlam sağlamaya yardımcı olur." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "{0} adresine bir e-posta gönderildi. Aşağıda girebileceğiniz bir onay kodu içerir." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "Önceki adresinize, {0} bir e-posta gönderildi. Aşağıda girebileceğiniz bir onay kodu içerir." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "" @@ -426,7 +466,7 @@ msgstr "" msgid "An issue occurred, please try again." msgstr "Bir sorun oluştu, lütfen tekrar deneyin." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" msgstr "" @@ -435,7 +475,7 @@ msgstr "" msgid "and" msgstr "ve" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "Hayvanlar" @@ -443,7 +483,7 @@ msgstr "Hayvanlar" msgid "Animated GIF" msgstr "" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "" @@ -451,34 +491,34 @@ msgstr "" msgid "App Language" msgstr "Uygulama Dili" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "Uygulama şifresi silindi" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "Uygulama Şifre adları yalnızca harfler, sayılar, boşluklar, tireler ve alt çizgiler içerebilir." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "Uygulama Şifre adları en az 4 karakter uzunluğunda olmalıdır." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "Uygulama şifresi ayarları" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "Uygulama Şifreleri" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "" @@ -490,7 +530,8 @@ msgstr "" #~ msgid "Appeal Content Warning" #~ msgstr "İçerik Uyarısını İtiraz Et" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" msgstr "" @@ -498,39 +539,55 @@ msgstr "" #~ msgid "Appeal submitted." #~ msgstr "" -#: src/view/com/util/moderation/LabelInfo.tsx:52 -#~ msgid "Appeal this decision" -#~ msgstr "Bu karara itiraz et" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "Bu karara itiraz et" #: src/view/com/util/moderation/LabelInfo.tsx:56 #~ msgid "Appeal this decision." #~ msgstr "Bu karara itiraz et." -#: src/view/screens/Settings/index.tsx:430 +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "Görünüm" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "\"{name}\" uygulama şifresini silmek istediğinizden emin misiniz?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "Bu taslağı silmek istediğinizden emin misiniz?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "Emin misiniz?" @@ -542,11 +599,11 @@ msgstr "Emin misiniz?" msgid "Are you writing in <0>{0}?" msgstr "<0>{0} dilinde mi yazıyorsunuz?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "Sanat" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "Sanatsal veya erotik olmayan çıplaklık." @@ -554,18 +611,20 @@ msgstr "Sanatsal veya erotik olmayan çıplaklık." msgid "At least 3 characters" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -580,7 +639,7 @@ msgstr "Geri" msgid "Based on your interest in {interestsText}" msgstr "{interestsText} ilginize dayalı" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "Temel" @@ -588,17 +647,17 @@ msgstr "Temel" msgid "Birthday" msgstr "Doğum günü" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "Doğum günü:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" msgstr "" @@ -611,15 +670,15 @@ msgstr "Hesabı Engelle" msgid "Block Account?" msgstr "" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "Hesapları engelle" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "Listeyi engelle" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "Bu hesapları engelle?" @@ -649,15 +708,15 @@ msgstr "Engellenen hesaplar, konularınıza yanıt veremez, sizi bahsedemez veya msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "Engellenen hesaplar, konularınıza yanıt veremez, sizi bahsedemez veya başka şekilde sizinle etkileşime giremez. Onların içeriğini görmeyeceksiniz ve onlar da sizinkini görmekten alıkonulacaklar." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "Engellenen gönderi." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "" -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "Engelleme herkese açıktır. Engellenen hesaplar, konularınıza yanıt veremez, sizi bahsedemez veya başka şekilde sizinle etkileşime giremez." @@ -713,10 +772,15 @@ msgstr "" msgid "Blur images and filter from feeds" msgstr "" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "Kitaplar" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "" + #: src/view/screens/Settings.tsx:841 #~ msgid "Build version {0} {1}" #~ msgstr "Sürüm {0} {1}" @@ -761,7 +825,7 @@ msgstr "siz tarafından" msgid "Camera" msgstr "Kamera" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "Yalnızca harfler, sayılar, boşluklar, tireler ve alt çizgiler içerebilir. En az 4 karakter uzunluğunda, ancak 32 karakterden fazla olmamalıdır." @@ -769,11 +833,11 @@ msgstr "Yalnızca harfler, sayılar, boşluklar, tireler ve alt çizgiler içere #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -785,26 +849,26 @@ msgstr "Yalnızca harfler, sayılar, boşluklar, tireler ve alt çizgiler içere #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "İptal" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "İptal" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "Hesap silmeyi iptal et" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "Kullanıcı adı değişikliğini iptal et" @@ -833,34 +897,34 @@ msgstr "Aramayı iptal et" msgid "Cancels opening the linked website" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "Değiştir" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "Kullanıcı adını değiştir" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "Kullanıcı Adını Değiştir" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "E-postamı değiştir" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "Şifre değiştir" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "Şifre Değiştir" @@ -872,24 +936,34 @@ msgstr "Gönderi dilini {0} olarak değiştir" #~ msgid "Change your Bluesky password" #~ msgstr "Bluesky şifrenizi değiştirin" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "E-postanızı Değiştirin" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" msgstr "" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" msgstr "" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" msgstr "" @@ -910,11 +984,11 @@ msgstr "Durumumu kontrol et" #~ msgid "Check out some recommended users. Follow them to see similar users." #~ msgstr "Bazı önerilen kullanıcılara göz atın. Benzer kullanıcıları görmek için onları takip edin." -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "Aşağıya gireceğiniz onay kodu içeren bir e-posta için gelen kutunuzu kontrol edin:" @@ -930,7 +1004,7 @@ msgstr "\"Herkes\" veya \"Hiç kimse\" seçin" msgid "Choose Service" msgstr "Hizmet Seç" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "Özel beslemelerinizi destekleyen algoritmaları seçin." @@ -939,6 +1013,10 @@ msgstr "Özel beslemelerinizi destekleyen algoritmaları seçin." #~ msgid "Choose the algorithms that power your experience with custom feeds." #~ msgstr "Özel beslemelerle deneyiminizi destekleyen algoritmaları seçin." +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "Ana beslemelerinizi seçin" @@ -947,19 +1025,19 @@ msgstr "Ana beslemelerinizi seçin" msgid "Choose your password" msgstr "Şifrenizi seçin" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "Tüm eski depolama verilerini temizle" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "Tüm eski depolama verilerini temizle (bundan sonra yeniden başlat)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "Tüm depolama verilerini temizle" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "Tüm depolama verilerini temizle (bundan sonra yeniden başlat)" @@ -968,11 +1046,11 @@ msgstr "Tüm depolama verilerini temizle (bundan sonra yeniden başlat)" msgid "Clear search query" msgstr "Arama sorgusunu temizle" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "" @@ -980,6 +1058,10 @@ msgstr "" msgid "click here" msgstr "buraya tıklayın" +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "" + #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" msgstr "" @@ -988,19 +1070,28 @@ msgstr "" #~ msgid "Click here to open tag menu for #{tag}" #~ msgstr "" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "İklim" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "Kapat" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "Etkin iletişim kutusunu kapat" @@ -1012,7 +1103,7 @@ msgstr "Uyarıyı kapat" msgid "Close bottom drawer" msgstr "Alt çekmeceyi kapat" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "" @@ -1028,6 +1119,10 @@ msgstr "Resmi kapat" msgid "Close image viewer" msgstr "Resim görüntüleyiciyi kapat" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "Gezinme altbilgisini kapat" @@ -1045,7 +1140,7 @@ msgstr "Alt gezinme çubuğunu kapatır" msgid "Closes password update alert" msgstr "Şifre güncelleme uyarısını kapatır" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "Gönderi bestecisini kapatır ve gönderi taslağını siler" @@ -1057,11 +1152,11 @@ msgstr "Başlık resmi görüntüleyicisini kapatır" msgid "Collapses list of users for a given notification" msgstr "Belirli bir bildirim için kullanıcı listesini daraltır" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "Komedi" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "Çizgi romanlar" @@ -1070,7 +1165,7 @@ msgstr "Çizgi romanlar" msgid "Community Guidelines" msgstr "Topluluk Kuralları" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "Onboarding'i tamamlayın ve hesabınızı kullanmaya başlayın" @@ -1078,7 +1173,7 @@ msgstr "Onboarding'i tamamlayın ve hesabınızı kullanmaya başlayın" msgid "Complete the challenge" msgstr "" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "En fazla {MAX_GRAPHEME_LENGTH} karakter uzunluğunda gönderiler oluşturun" @@ -1100,13 +1195,13 @@ msgstr "" #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "Onayla" @@ -1115,8 +1210,8 @@ msgstr "Onayla" #~ msgid "Confirm" #~ msgstr "Onayla" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "Değişikliği Onayla" @@ -1124,7 +1219,7 @@ msgstr "Değişikliği Onayla" msgid "Confirm content language settings" msgstr "İçerik dil ayarlarını onayla" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "Hesabı silmeyi onayla" @@ -1140,13 +1235,13 @@ msgstr "" msgid "Confirm your birthdate" msgstr "" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "Onay kodu" @@ -1154,7 +1249,7 @@ msgstr "Onay kodu" #~ msgid "Confirms signing up {email} to the waitlist" #~ msgstr "{email} adresinin bekleme listesine kaydını onaylar" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "Bağlanıyor..." @@ -1209,8 +1304,9 @@ msgstr "" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "Devam et" @@ -1220,8 +1316,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1235,22 +1332,26 @@ msgstr "Sonraki adıma devam et" msgid "Continue to the next step without following any accounts" msgstr "Herhangi bir hesabı takip etmeden sonraki adıma devam et" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "Yemek pişirme" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "Kopyalandı" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "Sürüm numarası panoya kopyalandı" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1260,15 +1361,15 @@ msgstr "Panoya kopyalandı" msgid "Copied!" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "Uygulama şifresini kopyalar" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "Kopyala" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "" @@ -1277,7 +1378,7 @@ msgstr "" msgid "Copy code" msgstr "" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "Liste bağlantısını kopyala" @@ -1290,8 +1391,8 @@ msgstr "Gönderi bağlantısını kopyala" #~ msgid "Copy link to profile" #~ msgstr "Profili bağlantısını kopyala" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" msgstr "" @@ -1305,29 +1406,29 @@ msgstr "Gönderi metnini kopyala" msgid "Copyright Policy" msgstr "Telif Hakkı Politikası" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" msgstr "" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "Besleme yüklenemedi" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "Liste yüklenemedi" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "" -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" msgstr "" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +#~ msgid "Could not unmute chat" +#~ msgstr "" #: src/view/com/auth/create/Step2.tsx:91 #~ msgid "Country" @@ -1338,7 +1439,7 @@ msgstr "" msgid "Create a new account" msgstr "Yeni bir hesap oluştur" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "Yeni bir Bluesky hesabı oluştur" @@ -1351,7 +1452,11 @@ msgstr "Hesap Oluştur" msgid "Create an account" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "Uygulama Şifresi Oluştur" @@ -1360,11 +1465,11 @@ msgstr "Uygulama Şifresi Oluştur" msgid "Create new account" msgstr "Yeni hesap oluştur" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "{0} oluşturuldu" @@ -1380,7 +1485,7 @@ msgstr "{0} oluşturuldu" #~ msgid "Creates a card with a thumbnail. The card links to {url}" #~ msgstr "Küçük resimli bir kart oluşturur. Kart, {url} bağlantısına gider" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "Kültür" @@ -1389,12 +1494,12 @@ msgstr "Kültür" msgid "Custom" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "Özel alan adı" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "Topluluk tarafından oluşturulan özel beslemeler size yeni deneyimler sunar ve sevdiğiniz içeriği bulmanıza yardımcı olur." @@ -1402,8 +1507,8 @@ msgstr "Topluluk tarafından oluşturulan özel beslemeler size yeni deneyimler msgid "Customize media from external sites." msgstr "Harici sitelerden medyayı özelleştirin." -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "Karanlık" @@ -1411,7 +1516,7 @@ msgstr "Karanlık" msgid "Dark mode" msgstr "Karanlık mod" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "Karanlık Tema" @@ -1419,7 +1524,7 @@ msgstr "Karanlık Tema" msgid "Date of birth" msgstr "" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "" @@ -1427,14 +1532,14 @@ msgstr "" msgid "Debug panel" msgstr "Hata ayıklama paneli" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "Hesabı sil" @@ -1442,39 +1547,44 @@ msgstr "Hesabı sil" #~ msgid "Delete Account" #~ msgstr "Hesabı Sil" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" msgstr "" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "Uygulama şifresini sil" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" - -#: src/view/screens/ProfileList.tsx:417 -msgid "Delete List" -msgstr "Listeyi Sil" - -#: src/components/dms/MessageMenu.tsx:119 -msgid "Delete message" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" msgstr "" #: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "" + +#: src/view/screens/ProfileList.tsx:470 +msgid "Delete List" +msgstr "Listeyi Sil" + +#: src/components/dms/MessageMenu.tsx:122 +msgid "Delete message" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "Hesabımı sil" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "Hesabımı Sil…" @@ -1483,7 +1593,7 @@ msgstr "Hesabımı Sil…" msgid "Delete post" msgstr "Gönderiyi sil" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "" @@ -1495,10 +1605,14 @@ msgstr "Bu gönderiyi sil?" msgid "Deleted" msgstr "Silindi" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "Silinen gönderi." +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1506,7 +1620,7 @@ msgstr "Silinen gönderi." msgid "Description" msgstr "Açıklama" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" msgstr "" @@ -1514,19 +1628,23 @@ msgstr "" #~ msgid "Developer Tools" #~ msgstr "Geliştirici Araçları" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "Bir şey söylemek istediniz mi?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "Karart" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "" @@ -1545,11 +1663,13 @@ msgstr "" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "Sil" @@ -1557,7 +1677,7 @@ msgstr "Sil" #~ msgid "Discard draft" #~ msgstr "Taslağı sil" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "" @@ -1575,7 +1695,7 @@ msgstr "Yeni özel beslemeler keşfet" #~ msgid "Discover new feeds" #~ msgstr "Yeni beslemeler keşfet" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "" @@ -1587,7 +1707,7 @@ msgstr "Görünen ad" msgid "Display Name" msgstr "Görünen Ad" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "" @@ -1599,11 +1719,11 @@ msgstr "" msgid "Doesn't begin or end with a hyphen" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "Alan adı doğrulandı!" @@ -1615,23 +1735,23 @@ msgstr "Alan adı doğrulandı!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "Tamam" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1649,8 +1769,8 @@ msgstr "Tamam{extraText}" #~ msgid "Double tap to sign in" #~ msgstr "Oturum açmak için çift dokunun" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "" @@ -1662,7 +1782,7 @@ msgstr "Resim eklemek için bırakın" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "Apple politikaları gereği, yetişkin içeriği yalnızca kaydı tamamladıktan sonra web üzerinde etkinleştirilebilir." -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "" @@ -1670,7 +1790,7 @@ msgstr "" msgid "e.g. Alice Roberts" msgstr "örn: Alice Roberts" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "" @@ -1707,7 +1827,7 @@ msgctxt "action" msgid "Edit" msgstr "Düzenle" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "" @@ -1717,7 +1837,7 @@ msgstr "" msgid "Edit image" msgstr "Resmi düzenle" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "Liste ayrıntılarını düzenle" @@ -1726,8 +1846,8 @@ msgid "Edit Moderation List" msgstr "Düzenleme Listesini Düzenle" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "Beslemelerimi Düzenle" @@ -1735,18 +1855,18 @@ msgstr "Beslemelerimi Düzenle" msgid "Edit my profile" msgstr "Profilimi düzenle" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "Profil düzenle" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "Profil Düzenle" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "Kayıtlı Beslemeleri Düzenle" @@ -1762,16 +1882,16 @@ msgstr "Görünen adınızı düzenleyin" msgid "Edit your profile description" msgstr "Profil açıklamanızı düzenleyin" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "Eğitim" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "E-posta" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "" @@ -1779,20 +1899,20 @@ msgstr "" msgid "Email address" msgstr "E-posta adresi" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "E-posta güncellendi" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "E-posta Güncellendi" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "E-posta doğrulandı" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "E-posta:" @@ -1840,7 +1960,7 @@ msgstr "" msgid "Enable media players for" msgstr "Medya oynatıcılarını etkinleştir" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "Bu ayarı yalnızca takip ettiğiniz kişiler arasındaki yanıtları görmek için etkinleştirin." @@ -1848,6 +1968,8 @@ msgstr "Bu ayarı yalnızca takip ettiğiniz kişiler arasındaki yanıtları g msgid "Enable this source only" msgstr "" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "" @@ -1856,7 +1978,11 @@ msgstr "" msgid "End of feed" msgstr "Beslemenin sonu" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "Bu Uygulama Şifresi için bir ad girin" @@ -1864,12 +1990,12 @@ msgstr "Bu Uygulama Şifresi için bir ad girin" msgid "Enter a password" msgstr "" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "Onay Kodunu Girin" @@ -1877,7 +2003,7 @@ msgstr "Onay Kodunu Girin" msgid "Enter the code you received to change your password." msgstr "Şifrenizi değiştirmek için aldığınız kodu girin." -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "Kullanmak istediğiniz alan adını girin" @@ -1898,11 +2024,11 @@ msgstr "Doğum tarihinizi girin" msgid "Enter your email address" msgstr "E-posta adresinizi girin" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "Yeni e-postanızı yukarıya girin" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "Yeni e-posta adresinizi aşağıya girin." @@ -1914,11 +2040,15 @@ msgstr "Yeni e-posta adresinizi aşağıya girin." msgid "Enter your username and password" msgstr "Kullanıcı adınızı ve şifrenizi girin" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "Hata:" @@ -1927,15 +2057,30 @@ msgstr "Hata:" msgid "Everybody" msgstr "Herkes" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "Kullanıcı adı değişikliği sürecinden çıkar" @@ -1973,12 +2118,12 @@ msgstr "" msgid "Explicit sexual images." msgstr "" -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "" @@ -1994,16 +2139,16 @@ msgstr "Harici medya, web sitelerinin siz ve cihazınız hakkında bilgi toplama #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "Harici Medya Tercihleri" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "Harici medya ayarları" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "Uygulama şifresi oluşturulamadı." @@ -2011,7 +2156,7 @@ msgstr "Uygulama şifresi oluşturulamadı." msgid "Failed to create the list. Check your internet connection and try again." msgstr "Liste oluşturulamadı. İnternet bağlantınızı kontrol edin ve tekrar deneyin." -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" msgstr "" @@ -2019,32 +2164,54 @@ msgstr "" msgid "Failed to delete post, please try again" msgstr "Gönderi silinemedi, lütfen tekrar deneyin" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "" + #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 #~ msgid "Failed to load recommended feeds" #~ msgstr "Önerilen beslemeler yüklenemedi" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "Besleme" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "{0} tarafından besleme" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "Besleme çevrimdışı" @@ -2053,18 +2220,17 @@ msgstr "Besleme çevrimdışı" #~ msgstr "Besleme Tercihleri" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "Geribildirim" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "Beslemeler" @@ -2072,7 +2238,7 @@ msgstr "Beslemeler" #~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." #~ msgstr "Beslemeler, içerikleri düzenlemek için kullanıcılar tarafından oluşturulur. İlginizi çeken bazı beslemeler seçin." -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "Beslemeler, kullanıcıların biraz kodlama uzmanlığı ile oluşturduğu özel algoritmalardır. Daha fazla bilgi için <0/>." @@ -2080,15 +2246,19 @@ msgstr "Beslemeler, kullanıcıların biraz kodlama uzmanlığı ile oluşturdu msgid "Feeds can be topical as well!" msgstr "Beslemeler aynı zamanda konusal olabilir!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "Tamamlanıyor" @@ -2114,7 +2284,7 @@ msgstr "" #~ msgid "Finding similar accounts..." #~ msgstr "Benzer hesaplar bulunuyor..." -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "" @@ -2126,11 +2296,11 @@ msgstr "" msgid "Fine-tune the discussion threads." msgstr "Tartışma konularını ayarlayın." -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "Fitness" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "Esnek" @@ -2143,10 +2313,10 @@ msgstr "Yatay çevir" msgid "Flip vertically" msgstr "Dikey çevir" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -2158,7 +2328,7 @@ msgid "Follow" msgstr "Takip et" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "{0} takip et" @@ -2192,7 +2362,7 @@ msgstr "{0} tarafından takip ediliyor" msgid "Followed users" msgstr "Takip edilen kullanıcılar" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "Yalnızca takip edilen kullanıcılar" @@ -2205,28 +2375,30 @@ msgstr "sizi takip etti" msgid "Followers" msgstr "Takipçiler" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "Takip edilenler" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "{0} takip ediliyor" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "" @@ -2238,15 +2410,15 @@ msgstr "Sizi takip ediyor" msgid "Follows You" msgstr "Sizi Takip Ediyor" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "Yiyecek" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "Güvenlik nedeniyle, e-posta adresinize bir onay kodu göndermemiz gerekecek." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "Güvenlik nedeniyle, bunu tekrar göremezsiniz. Bu şifreyi kaybederseniz, yeni bir tane oluşturmanız gerekecek." @@ -2263,15 +2435,15 @@ msgstr "Güvenlik nedeniyle, bunu tekrar göremezsiniz. Bu şifreyi kaybederseni msgid "Forgot Password" msgstr "Şifremi Unuttum" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "" @@ -2279,7 +2451,7 @@ msgstr "" msgid "From @{sanitizedAuthor}" msgstr "" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "<0/> tarafından" @@ -2288,12 +2460,20 @@ msgstr "<0/> tarafından" msgid "Gallery" msgstr "Galeri" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "Başlayın" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "" @@ -2302,9 +2482,9 @@ msgstr "" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "Geri git" @@ -2312,13 +2492,14 @@ msgstr "Geri git" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "Geri Git" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2338,16 +2519,20 @@ msgstr "" #~ msgid "Go to @{queryMaybeHandle}" #~ msgstr "@{queryMaybeHandle} adresine git" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "Sonrakine git" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" msgstr "" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" msgstr "" @@ -2355,7 +2540,7 @@ msgstr "" msgid "Graphic Media" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "Kullanıcı adı" @@ -2363,7 +2548,7 @@ msgstr "Kullanıcı adı" msgid "Haptics" msgstr "" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "" @@ -2371,7 +2556,7 @@ msgstr "" msgid "Hashtag" msgstr "" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "" @@ -2380,10 +2565,14 @@ msgid "Having trouble?" msgstr "Sorun mu yaşıyorsunuz?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "Yardım" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "Takip etmeniz için size bazı hesaplar" @@ -2396,13 +2585,13 @@ msgstr "İşte bazı popüler konusal beslemeler. İstediğiniz kadar takip etme msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "İlgi alanlarınıza dayalı olarak bazı konusal beslemeler: {interestsText}. İstediğiniz kadar takip etmeyi seçebilirsiniz." -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "İşte uygulama şifreniz." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2424,7 +2613,7 @@ msgid "Hide post" msgstr "Gönderiyi gizle" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "İçeriği gizle" @@ -2440,23 +2629,23 @@ msgstr "Kullanıcı listesini gizle" #~ msgid "Hides posts from {0} in your feed" #~ msgstr "Beslemenizdeki {0} gönderilerini gizler" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "Hmm, besleme sunucusuna ulaşırken bir tür sorun oluştu. Lütfen bu konuda besleme sahibini bilgilendirin." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "Hmm, besleme sunucusunun yanlış yapılandırılmış görünüyor. Lütfen bu konuda besleme sahibini bilgilendirin." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "Hmm, besleme sunucusunun çevrimdışı görünüyor. Lütfen bu konuda besleme sahibini bilgilendirin." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "Hmm, besleme sunucusu kötü bir yanıt verdi. Lütfen bu konuda besleme sahibini bilgilendirin." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "Hmm, bu beslemeyi bulmakta sorun yaşıyoruz. Silinmiş olabilir." @@ -2468,11 +2657,11 @@ msgstr "" msgid "Hmmmm, we couldn't load that moderation service." msgstr "" -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "Ana Sayfa" @@ -2482,14 +2671,14 @@ msgstr "Ana Sayfa" #~ msgid "Home Feed Preferences" #~ msgstr "Ana Sayfa Besleme Tercihleri" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "Barındırma sağlayıcısı" @@ -2497,25 +2686,30 @@ msgstr "Barındırma sağlayıcısı" msgid "How should we open this link?" msgstr "Bu bağlantıyı nasıl açmalıyız?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "Bir kodum var" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "Bir onay kodum var" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "Kendi alan adım var" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "Alternatif metin uzunsa, alternatif metin genişletme durumunu değiştirir" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "Hiçbiri seçilmezse, tüm yaşlar için uygun." @@ -2523,7 +2717,7 @@ msgstr "Hiçbiri seçilmezse, tüm yaşlar için uygun." msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "" -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "" @@ -2535,7 +2729,7 @@ msgstr "" msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "Şifrenizi değiştirmek istiyorsanız, size hesabınızın sizin olduğunu doğrulamak için bir kod göndereceğiz." -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "" @@ -2543,7 +2737,7 @@ msgstr "" msgid "Image" msgstr "Resim" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "Resim alternatif metni" @@ -2551,15 +2745,19 @@ msgstr "Resim alternatif metni" #~ msgid "Image options" #~ msgstr "Resim seçenekleri" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "Şifre sıfırlama için e-postanıza gönderilen kodu girin" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "Hesap silme için onay kodunu girin" @@ -2571,7 +2769,7 @@ msgstr "Hesap silme için onay kodunu girin" #~ msgid "Input invite code to proceed" #~ msgstr "Devam etmek için davet kodunu girin" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "Uygulama şifresi için ad girin" @@ -2579,7 +2777,7 @@ msgstr "Uygulama şifresi için ad girin" msgid "Input new password" msgstr "Yeni şifre girin" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "Hesap silme için şifre girin" @@ -2587,15 +2785,15 @@ msgstr "Hesap silme için şifre girin" #~ msgid "Input phone number for SMS verification" #~ msgstr "SMS doğrulaması için telefon numarası girin" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "{identifier} ile ilişkili şifreyi girin" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "Kaydolurken kullandığınız kullanıcı adını veya e-posta adresini girin" @@ -2607,11 +2805,11 @@ msgstr "Kaydolurken kullandığınız kullanıcı adını veya e-posta adresini #~ msgid "Input your email to get on the Bluesky waitlist" #~ msgstr "Bluesky bekleme listesine girmek için e-postanızı girin" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "Şifrenizi girin" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "" @@ -2619,16 +2817,20 @@ msgstr "" msgid "Input your user handle" msgstr "Kullanıcı adınızı girin" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "Geçersiz veya desteklenmeyen gönderi kaydı" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "Geçersiz kullanıcı adı veya şifre" @@ -2644,7 +2846,7 @@ msgstr "Arkadaşını Davet Et" msgid "Invite code" msgstr "Davet kodu" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "Davet kodu kabul edilmedi. Doğru girdiğinizden emin olun ve tekrar deneyin." @@ -2681,7 +2883,7 @@ msgstr "İşler" #~ msgid "Join Waitlist" #~ msgstr "Bekleme Listesine Katıl" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "Gazetecilik" @@ -2701,7 +2903,7 @@ msgstr "" msgid "Labels" msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "" @@ -2709,11 +2911,11 @@ msgstr "" #~ msgid "labels have been placed on this {labelTarget}" #~ msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "" @@ -2721,7 +2923,7 @@ msgstr "" msgid "Language selection" msgstr "Dil seçimi" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "Dil ayarları" @@ -2730,7 +2932,7 @@ msgstr "Dil ayarları" msgid "Language Settings" msgstr "Dil Ayarları" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "Diller" @@ -2756,7 +2958,7 @@ msgstr "Daha Fazla Bilgi Edinin" msgid "Learn more about the moderation applied to this content." msgstr "" -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "Bu uyarı hakkında daha fazla bilgi edinin" @@ -2769,13 +2971,20 @@ msgstr "Bluesky'da neyin herkese açık olduğu hakkında daha fazla bilgi edini msgid "Learn more." msgstr "" -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" msgstr "" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" msgstr "" @@ -2791,7 +3000,7 @@ msgstr "Bluesky'dan ayrılıyor" msgid "left to go." msgstr "kaldı." -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "Eski depolama temizlendi, şimdi uygulamayı yeniden başlatmanız gerekiyor." @@ -2800,7 +3009,7 @@ msgstr "Eski depolama temizlendi, şimdi uygulamayı yeniden başlatmanız gerek msgid "Let's get your password reset!" msgstr "Şifrenizi sıfırlamaya başlayalım!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "Hadi gidelim!" @@ -2808,7 +3017,7 @@ msgstr "Hadi gidelim!" #~ msgid "Library" #~ msgstr "Kütüphane" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "Açık" @@ -2816,8 +3025,8 @@ msgstr "Açık" #~ msgid "Like" #~ msgstr "Beğen" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "Bu beslemeyi beğen" @@ -2859,7 +3068,7 @@ msgstr "gönderinizi beğendi" msgid "Likes" msgstr "Beğeniler" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "Bu gönderideki beğeniler" @@ -2871,19 +3080,19 @@ msgstr "Liste" msgid "List Avatar" msgstr "Liste Avatarı" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "Liste engellendi" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "{0} tarafından liste" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "Liste silindi" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "Liste sessize alındı" @@ -2891,23 +3100,27 @@ msgstr "Liste sessize alındı" msgid "List Name" msgstr "Liste Adı" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "Liste engeli kaldırıldı" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "Liste sessizden çıkarıldı" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "Listeler" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "" + #: src/view/com/post-thread/PostThread.tsx:281 #: src/view/com/post-thread/PostThread.tsx:289 #~ msgid "Load more posts" @@ -2918,9 +3131,9 @@ msgid "Load new notifications" msgstr "Yeni bildirimleri yükle" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "Yeni gönderileri yükle" @@ -2951,7 +3164,7 @@ msgstr "Çıkış yapan görünürlüğü" msgid "Login to account that is not listed" msgstr "Listelenmeyen hesaba giriş yap" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "" @@ -2959,14 +3172,35 @@ msgstr "" msgid "Looks like XXXXX-XXXXX" msgstr "" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "Bu gitmek istediğiniz yer olduğundan emin olun!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2985,44 +3219,50 @@ msgstr "Bahsedilen kullanıcılar" msgid "Menu" msgstr "Menü" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "Sunucudan mesaj: {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" msgstr "" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" +#~ msgid "Messaging settings" +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "Moderasyon" @@ -3035,13 +3275,13 @@ msgstr "" msgid "Moderation list by {0}" msgstr "{0} tarafından moderasyon listesi" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "<0/> tarafından moderasyon listesi" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "Sizin tarafınızdan moderasyon listesi" @@ -3062,7 +3302,7 @@ msgstr "Moderasyon listeleri" msgid "Moderation Lists" msgstr "Moderasyon Listeleri" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "Moderasyon ayarları" @@ -3083,11 +3323,11 @@ msgstr "Moderatör, içeriğe genel bir uyarı koymayı seçti." msgid "More" msgstr "" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "Daha fazla besleme" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "Daha fazla seçenek" @@ -3112,7 +3352,7 @@ msgstr "" msgid "Mute Account" msgstr "Hesabı Sessize Al" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "Hesapları sessize al" @@ -3120,24 +3360,29 @@ msgstr "Hesapları sessize al" msgid "Mute all {displayTag} posts" msgstr "" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "Listeyi sessize al" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "Bu hesapları sessize al?" @@ -3145,11 +3390,11 @@ msgstr "Bu hesapları sessize al?" #~ msgid "Mute this List" #~ msgstr "Bu Listeyi Sessize Al" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "" @@ -3188,7 +3433,7 @@ msgstr "" msgid "Muted words & tags" msgstr "" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "Sessizlik özeldir. Sessize alınan hesaplar sizinle etkileşime geçebilir, ancak gönderilerini görmeyecek ve onlardan bildirim almayacaksınız." @@ -3197,23 +3442,23 @@ msgstr "Sessizlik özeldir. Sessize alınan hesaplar sizinle etkileşime geçebi msgid "My Birthday" msgstr "Doğum Günüm" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "Beslemelerim" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "Profilim" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "Kayıtlı Beslemelerim" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "Ad" @@ -3222,27 +3467,27 @@ msgstr "Ad" msgid "Name is required" msgstr "Ad gerekli" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "Doğa" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "Sonraki ekrana yönlendirir" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "Profilinize yönlendirir" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "" @@ -3256,11 +3501,11 @@ msgstr "" #~ msgid "Never lose access to your followers and data." #~ msgstr "Takipçilerinize ve verilerinize asla erişimi kaybetmeyin." -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "Takipçilerinize veya verilerinize asla erişimi kaybetmeyin." -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "" @@ -3273,12 +3518,16 @@ msgstr "Yeni" msgid "New" msgstr "Yeni" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" msgstr "" +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" msgstr "Yeni Moderasyon Listesi" @@ -3291,22 +3540,22 @@ msgstr "Yeni şifre" msgid "New Password" msgstr "Yeni Şifre" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "Yeni gönderi" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "Yeni gönderi" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "Yeni Gönderi" @@ -3319,14 +3568,14 @@ msgstr "Yeni Kullanıcı Listesi" msgid "Newest replies first" msgstr "En yeni yanıtlar önce" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "Haberler" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3344,29 +3593,29 @@ msgstr "İleri" msgid "Next image" msgstr "Sonraki resim" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "Hayır" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "Açıklama yok" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "{0} artık takip edilmiyor" @@ -3374,25 +3623,39 @@ msgstr "{0} artık takip edilmiyor" msgid "No longer than 253 characters" msgstr "" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" msgstr "" +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "" + #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "Henüz bildirim yok!" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "Sonuç yok" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "\"{query}\" için sonuç bulunamadı" @@ -3402,13 +3665,13 @@ msgstr "\"{query}\" için sonuç bulunamadı" msgid "No results found for {query}" msgstr "{query} için sonuç bulunamadı" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "" #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "" #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3419,6 +3682,10 @@ msgstr "Teşekkürler" msgid "Nobody" msgstr "Hiç kimse" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3437,8 +3704,8 @@ msgstr "" msgid "Not Found" msgstr "Bulunamadı" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "Şu anda değil" @@ -3452,25 +3719,37 @@ msgstr "" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "Not: Bluesky açık ve kamusal bir ağdır. Bu ayar yalnızca içeriğinizin Bluesky uygulaması ve web sitesindeki görünürlüğünü sınırlar, diğer uygulamalar bu ayarı dikkate almayabilir. İçeriğiniz hala diğer uygulamalar ve web siteleri tarafından çıkış yapan kullanıcılara gösterilebilir." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "Bildirimler" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "Çıplaklık" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "" @@ -3482,17 +3761,17 @@ msgstr "" msgid "Off" msgstr "" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "Oh hayır!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "Oh hayır! Bir şeyler yanlış gitti." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "" @@ -3504,14 +3783,18 @@ msgstr "Tamam" msgid "Oldest replies first" msgstr "En eski yanıtlar önce" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "Onboarding sıfırlama" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "Bir veya daha fazla resimde alternatif metin eksik." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "Yalnızca {0} yanıtlayabilir." @@ -3520,33 +3803,46 @@ msgstr "Yalnızca {0} yanıtlayabilir." msgid "Only contains letters, numbers, and hyphens" msgstr "" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "Hata!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "Aç" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "Emoji seçiciyi aç" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "Uygulama içi tarayıcıda bağlantıları aç" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "" @@ -3559,12 +3855,12 @@ msgstr "Navigasyonu aç" msgid "Open post options menu" msgstr "" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "Storybook sayfasını aç" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "" @@ -3572,7 +3868,7 @@ msgstr "" msgid "Opens {numItems} options" msgstr "{numItems} seçeneği açar" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "" @@ -3588,11 +3884,15 @@ msgstr "Bu bildirimdeki kullanıcıların genişletilmiş bir listesini açar" msgid "Opens camera on device" msgstr "Cihazdaki kamerayı açar" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "Besteciyi açar" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "Yapılandırılabilir dil ayarlarını açar" @@ -3604,7 +3904,7 @@ msgstr "Cihaz fotoğraf galerisini açar" #~ msgid "Opens editor for profile display name, avatar, background image, and description" #~ msgstr "Profil görüntü adı, avatar, arka plan resmi ve açıklama için düzenleyiciyi açar" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "Harici gömülü ayarları açar" @@ -3638,7 +3938,7 @@ msgstr "" msgid "Opens list of invite codes" msgstr "Davet kodu listesini açar" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "" @@ -3646,44 +3946,44 @@ msgstr "" #~ msgid "Opens modal for account deletion confirmation. Requires email code." #~ msgstr "Hesap silme onayı için modalı açar. E-posta kodu gerektirir." -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "Özel alan adı kullanımı için modalı açar" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "Moderasyon ayarlarını açar" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "Şifre sıfırlama formunu açar" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "Kayıtlı Beslemeleri düzenlemek için ekranı açar" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "Tüm kayıtlı beslemeleri içeren ekrana açar" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "" @@ -3691,7 +3991,7 @@ msgstr "" #~ msgid "Opens the app password settings page" #~ msgstr "Uygulama şifre ayarları sayfasını açar" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "" @@ -3703,20 +4003,20 @@ msgstr "" msgid "Opens the linked website" msgstr "" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "Storybook sayfasını açar" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "Sistem log sayfasını açar" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "Konu tercihlerini açar" @@ -3724,7 +4024,8 @@ msgstr "Konu tercihlerini açar" msgid "Option {0} of {numItems}" msgstr "{0} seçeneği, {numItems} seçenekten" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "" @@ -3732,7 +4033,7 @@ msgstr "" msgid "Or combine these options:" msgstr "Veya bu seçenekleri birleştirin:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "" @@ -3748,7 +4049,11 @@ msgstr "Diğer hesap" msgid "Other..." msgstr "Diğer..." -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "Sayfa bulunamadı" @@ -3757,10 +4062,10 @@ msgstr "Sayfa bulunamadı" msgid "Page Not Found" msgstr "Sayfa Bulunamadı" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "Şifre" @@ -3792,15 +4097,15 @@ msgstr "@{0} tarafından takip edilenler" msgid "People following @{0}" msgstr "@{0} tarafından takip edilenler" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "Kamera rulosuna erişim izni gerekiyor." -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "Kamera rulosuna erişim izni reddedildi. Lütfen sistem ayarlarınızda etkinleştirin." -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "Evcil Hayvanlar" @@ -3808,23 +4113,27 @@ msgstr "Evcil Hayvanlar" #~ msgid "Phone number" #~ msgstr "Telefon numarası" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "Yetişkinler için resimler." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "Ana ekrana sabitle" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "Sabitleme Beslemeleri" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "" @@ -3833,6 +4142,11 @@ msgstr "" msgid "Play {0}" msgstr "{0} oynat" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" msgstr "" @@ -3846,23 +4160,23 @@ msgstr "Videoyu Oynat" msgid "Plays the GIF" msgstr "GIF'i oynatır" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "Kullanıcı adınızı seçin." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "Şifrenizi seçin." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "E-postanızı değiştirmeden önce onaylayın. Bu, e-posta güncelleme araçları eklenirken geçici bir gerekliliktir ve yakında kaldırılacaktır." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "Uygulama şifreniz için bir ad girin. Tüm boşluklar izin verilmez." @@ -3870,11 +4184,11 @@ msgstr "Uygulama şifreniz için bir ad girin. Tüm boşluklar izin verilmez." #~ msgid "Please enter a phone number that can receive SMS text messages." #~ msgstr "SMS metin mesajları alabilen bir telefon numarası girin." -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "Bu Uygulama Şifresi için benzersiz bir ad girin veya rastgele oluşturulanı kullanın." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "" @@ -3886,19 +4200,24 @@ msgstr "" #~ msgid "Please enter the verification code sent to {phoneNumberFormatted}." #~ msgstr "{phoneNumberFormatted} numarasına gönderilen doğrulama kodunu girin." -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "E-postanızı girin." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "Lütfen şifrenizi de girin:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "" + #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" msgstr "" @@ -3907,34 +4226,34 @@ msgstr "" #~ msgid "Please tell us why you think this content warning was incorrectly applied!" #~ msgstr "Lütfen bu içerik uyarısının yanlış uygulandığını düşündüğünüz nedeni bize bildirin!" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "Lütfen E-postanızı Doğrulayın" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "Bağlantı kartınızın yüklenmesini bekleyin" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "Politika" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "Pornografi" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "Gönder" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "Gönderi" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "{0} tarafından gönderi" @@ -3948,7 +4267,7 @@ msgstr "@{0} tarafından gönderi" msgid "Post deleted" msgstr "Gönderi silindi" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "Gönderi gizlendi" @@ -3970,8 +4289,8 @@ msgstr "Gönderi dili" msgid "Post Languages" msgstr "Gönderi Dilleri" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "Gönderi bulunamadı" @@ -3983,11 +4302,11 @@ msgstr "" msgid "Posts" msgstr "Gönderiler" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "Gönderiler gizlendi" @@ -3995,21 +4314,25 @@ msgstr "Gönderiler gizlendi" msgid "Potentially Misleading Link" msgstr "Potansiyel Yanıltıcı Bağlantı" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -4023,7 +4346,7 @@ msgstr "Birincil Dil" msgid "Prioritize Your Follows" msgstr "Takipçilerinizi Önceliklendirin" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "Gizlilik" @@ -4031,25 +4354,29 @@ msgstr "Gizlilik" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "Gizlilik Politikası" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "İşleniyor..." -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "Profil" @@ -4057,11 +4384,11 @@ msgstr "Profil" msgid "Profile updated" msgstr "Profil güncellendi" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "E-postanızı doğrulayarak hesabınızı koruyun." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "Herkese Açık" @@ -4073,11 +4400,11 @@ msgstr "Toplu olarak sessize almak veya engellemek için herkese açık, paylaş msgid "Public, shareable lists which can drive feeds." msgstr "Beslemeleri yönlendirebilen herkese açık, paylaşılabilir listeler." -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "Gönderiyi yayınla" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "Yanıtı yayınla" @@ -4103,6 +4430,14 @@ msgstr "Rastgele (yani \"Gönderenin Ruleti\")" msgid "Ratios" msgstr "Oranlar" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "" @@ -4115,12 +4450,20 @@ msgstr "" #~ msgid "Recommended Users" #~ msgstr "Önerilen Kullanıcılar" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "Kaldır" @@ -4132,7 +4475,7 @@ msgstr "Kaldır" msgid "Remove account" msgstr "Hesabı kaldır" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "" @@ -4140,22 +4483,25 @@ msgstr "" msgid "Remove Banner" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "Beslemeyi kaldır" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "Beslemelerimden kaldır" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "" @@ -4167,7 +4513,7 @@ msgstr "Resmi kaldır" msgid "Remove image preview" msgstr "Resim önizlemesini kaldır" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "" @@ -4183,7 +4529,7 @@ msgstr "Yeniden göndermeyi kaldır" #~ msgid "Remove this feed from my feeds?" #~ msgstr "Bu beslemeyi beslemelerimden kaldırsın mı?" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "" @@ -4196,11 +4542,13 @@ msgstr "" msgid "Removed from list" msgstr "Listeden kaldırıldı" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "Beslemelerimden kaldırıldı" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "" @@ -4212,6 +4560,11 @@ msgstr "{0} adresinden varsayılan küçük resmi kaldırır" msgid "Removes quoted post" msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "Yanıtlar" @@ -4220,12 +4573,12 @@ msgstr "Yanıtlar" msgid "Replies to this thread are disabled" msgstr "Bu konuya yanıtlar devre dışı bırakıldı" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "Yanıtla" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "Yanıt Filtreleri" @@ -4236,12 +4589,14 @@ msgstr "Yanıt Filtreleri" #~ msgstr "<0/>'a yanıt" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" msgstr "" @@ -4251,28 +4606,34 @@ msgstr "" #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "Hesabı Raporla" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "Beslemeyi raporla" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "Listeyi Raporla" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" msgstr "" @@ -4281,30 +4642,36 @@ msgstr "" msgid "Report post" msgstr "Gönderiyi raporla" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "Yeniden gönder" @@ -4322,7 +4689,7 @@ msgstr "Gönderiyi yeniden gönder veya alıntıla" msgid "Reposted By" msgstr "Yeniden Gönderen" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "{0} tarafından yeniden gönderildi" @@ -4330,7 +4697,7 @@ msgstr "{0} tarafından yeniden gönderildi" #~ msgid "Reposted by <0/>" #~ msgstr "<0/>'a yeniden gönderildi" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "" @@ -4338,12 +4705,12 @@ msgstr "" msgid "reposted your post" msgstr "gönderinizi yeniden gönderdi" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "Bu gönderinin yeniden gönderilmesi" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "Değişiklik İste" @@ -4360,7 +4727,7 @@ msgstr "Kod İste" msgid "Require alt text before posting" msgstr "Göndermeden önce alternatif metin gerektir" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "" @@ -4368,8 +4735,8 @@ msgstr "" msgid "Required for this provider" msgstr "Bu sağlayıcı için gereklidir" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "" @@ -4385,8 +4752,8 @@ msgstr "Sıfırlama Kodu" #~ msgid "Reset onboarding" #~ msgstr "Onboarding sıfırla" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "Onboarding durumunu sıfırla" @@ -4398,20 +4765,20 @@ msgstr "Şifreyi sıfırla" #~ msgid "Reset preferences" #~ msgstr "Tercihleri sıfırla" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "Tercih durumunu sıfırla" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "Onboarding durumunu sıfırlar" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "Tercih durumunu sıfırlar" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "Giriş tekrar denemesi" @@ -4420,13 +4787,14 @@ msgstr "Giriş tekrar denemesi" msgid "Retries the last action, which errored out" msgstr "Son hataya neden olan son eylemi tekrarlar" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 @@ -4434,11 +4802,11 @@ msgid "Retry" msgstr "Tekrar dene" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "Tekrar dene." +#~ msgid "Retry." +#~ msgstr "Tekrar dene." #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "Önceki sayfaya dön" @@ -4447,7 +4815,7 @@ msgid "Returns to home page" msgstr "" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "" @@ -4456,21 +4824,21 @@ msgstr "" #~ msgstr "KUM KUTUSU. Gönderiler ve hesaplar kalıcı değildir." #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "Kaydet" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "Kaydet" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "Alternatif metni kaydet" @@ -4482,7 +4850,7 @@ msgstr "" msgid "Save Changes" msgstr "Değişiklikleri Kaydet" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "Kullanıcı adı değişikliğini kaydet" @@ -4490,16 +4858,16 @@ msgstr "Kullanıcı adı değişikliğini kaydet" msgid "Save image crop" msgstr "Resim kırpma kaydet" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "Kayıtlı Beslemeler" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" msgstr "" @@ -4507,7 +4875,8 @@ msgstr "" #~ msgid "Saved to your camera roll." #~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "" @@ -4515,7 +4884,7 @@ msgstr "" msgid "Saves any changes to your profile" msgstr "Profilinizdeki herhangi bir değişikliği kaydeder" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "{handle} kullanıcı adı değişikliğini kaydeder" @@ -4523,16 +4892,20 @@ msgstr "{handle} kullanıcı adı değişikliğini kaydeder" msgid "Saves image crop settings" msgstr "" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "Bilim" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "Başa kaydır" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4540,12 +4913,12 @@ msgstr "Başa kaydır" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "Ara" @@ -4566,8 +4939,8 @@ msgid "Search for all posts with tag {displayTag}" msgstr "" #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "" #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4579,7 +4952,8 @@ msgstr "Kullanıcıları ara" msgid "Search GIFs" msgstr "" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" msgstr "" @@ -4587,7 +4961,7 @@ msgstr "" msgid "Search Tenor" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "Güvenlik Adımı Gerekli" @@ -4608,11 +4982,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "Bu kılavuzu gör" @@ -4624,10 +4998,22 @@ msgstr "Bu kılavuzu gör" msgid "Select {item}" msgstr "{item} seç" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "" + #: src/view/com/modals/ServerInput.tsx:75 #~ msgid "Select Bluesky Social" #~ msgstr "Bluesky Social seç" @@ -4640,7 +5026,7 @@ msgstr "Mevcut bir hesaptan seç" msgid "Select GIF" msgstr "" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "" @@ -4665,7 +5051,11 @@ msgstr "{i} seçeneği, {numItems} seçenekten" msgid "Select some accounts below to follow" msgstr "Aşağıdaki hesaplardan bazılarını takip et" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "" @@ -4697,7 +5087,7 @@ msgstr "" msgid "Select your date of birth" msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "Aşağıdaki seçeneklerden ilgi alanlarınızı seçin" @@ -4717,32 +5107,38 @@ msgstr "Birincil algoritmik beslemelerinizi seçin" msgid "Select your secondary algorithmic feeds" msgstr "İkincil algoritmik beslemelerinizi seçin" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "Onay E-postası Gönder" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "E-posta gönder" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "E-posta Gönder" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "Geribildirim gönder" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "" @@ -4754,12 +5150,12 @@ msgstr "" msgid "Send report to {0}" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "Hesap silme için onay kodu içeren e-posta gönderir" @@ -4809,15 +5205,15 @@ msgstr "Yeni şifre ayarla" #~ msgid "Set password" #~ msgstr "Şifre ayarla" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "Bu ayarı \"Hayır\" olarak ayarlayarak beslemenizden tüm alıntı gönderileri gizleyebilirsiniz. Yeniden göndermeler hala görünür olacaktır." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "Bu ayarı \"Hayır\" olarak ayarlayarak beslemenizden tüm yanıtları gizleyebilirsiniz." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "Bu ayarı \"Hayır\" olarak ayarlayarak beslemenizden tüm yeniden göndermeleri gizleyebilirsiniz." @@ -4829,7 +5225,7 @@ msgstr "Bu ayarı \"Evet\" olarak ayarlayarak yanıtları konu tabanlı görünt #~ msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your following feed. This is an experimental feature." #~ msgstr "Bu ayarı \"Evet\" olarak ayarlayarak kayıtlı beslemelerinizin örneklerini takip ettiğiniz beslemede göstermek için ayarlayın. Bu deneysel bir özelliktir." -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "" @@ -4837,27 +5233,27 @@ msgstr "" msgid "Set up your account" msgstr "Hesabınızı ayarlayın" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Bluesky kullanıcı adını ayarlar" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "" @@ -4887,15 +5283,14 @@ msgstr "" #~ msgstr "Bluesky istemcisi için sunucuyu ayarlar" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "Ayarlar" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "Cinsel aktivite veya erotik çıplaklık." @@ -4903,7 +5298,7 @@ msgstr "Cinsel aktivite veya erotik çıplaklık." msgid "Sexually Suggestive" msgstr "" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "Paylaş" @@ -4913,18 +5308,26 @@ msgstr "Paylaş" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "Paylaş" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "Beslemeyi paylaş" @@ -4933,15 +5336,19 @@ msgstr "Beslemeyi paylaş" msgid "Share Link" msgstr "" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "Göster" @@ -4971,10 +5378,14 @@ msgstr "" #~ msgid "Show embeds from {0}" #~ msgstr "{0} adresinden gömülü öğeleri göster" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "{0} adresine benzer takipçileri göster" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" @@ -4982,7 +5393,7 @@ msgstr "" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "Daha Fazla Göster" @@ -4991,11 +5402,15 @@ msgstr "Daha Fazla Göster" msgid "Show more like this" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "Beslemelerimden Gönderileri Göster" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "Alıntı Gönderileri Göster" @@ -5011,7 +5426,7 @@ msgstr "Takip etme beslemesinde alıntıları göster" msgid "Show re-posts in Following feed" msgstr "Yeniden göndermeleri takip etme beslemesinde göster" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "Yanıtları Göster" @@ -5031,7 +5446,7 @@ msgstr "Takip etme beslemesinde yanıtları göster" #~ msgid "Show replies with at least {value} {0}" #~ msgstr "En az {value} {0} olan yanıtları göster" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "Yeniden Göndermeleri Göster" @@ -5040,7 +5455,7 @@ msgid "Show reposts in Following" msgstr "Takip etme beslemesinde yeniden göndermeleri göster" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "İçeriği göster" @@ -5068,17 +5483,17 @@ msgstr "Beslemenizde {0} adresinden gönderileri gösterir" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -5111,17 +5526,17 @@ msgstr "" msgid "Sign into Bluesky or create a new account" msgstr "" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "Çıkış yap" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -5137,7 +5552,7 @@ msgstr "Konuşmaya katılmak için kaydolun veya giriş yapın" msgid "Sign-in Required" msgstr "Giriş Yapılması Gerekiyor" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "Olarak giriş yapıldı" @@ -5150,12 +5565,12 @@ msgstr "@{0} olarak giriş yapıldı" #~ msgid "Signs {0} out of Bluesky" #~ msgstr "{0} adresini Bluesky'den çıkarır" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "Atla" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "Bu akışı atla" @@ -5163,10 +5578,18 @@ msgstr "Bu akışı atla" #~ msgid "SMS verification" #~ msgstr "SMS doğrulama" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "Yazılım Geliştirme" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "" + #: src/view/com/modals/ProfilePreview.tsx:62 #~ msgid "Something went wrong and we're not sure what." #~ msgstr "Bir şeyler yanlış gitti ve ne olduğundan emin değiliz." @@ -5181,8 +5604,8 @@ msgstr "" #~ msgid "Something went wrong. Check your email and try again." #~ msgstr "Bir şeyler yanlış gitti. E-postanızı kontrol edin ve tekrar deneyin." -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "Üzgünüz! Oturumunuzun süresi doldu. Lütfen tekrar giriş yapın." @@ -5194,19 +5617,24 @@ msgstr "Yanıtları Sırala" msgid "Sort replies to the same post by:" msgstr "Aynı gönderiye verilen yanıtları şuna göre sırala:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" msgstr "" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "Spor" @@ -5218,15 +5646,23 @@ msgstr "Kare" #~ msgid "Staging" #~ msgstr "Staging" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "" + #: src/view/screens/Settings/index.tsx:862 #~ msgid "Status page" #~ msgstr "Durum sayfası" -#: src/view/screens/Settings/index.tsx:896 +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" msgstr "" @@ -5242,29 +5678,31 @@ msgstr "" #~ msgid "Step {0} of {numSteps}" #~ msgstr "{numSteps} adımdan {0}. adım" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "Depolama temizlendi, şimdi uygulamayı yeniden başlatmanız gerekiyor." #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Storybook" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Submit" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "Abone ol" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "" @@ -5273,11 +5711,11 @@ msgstr "" msgid "Subscribe to the {0} feed" msgstr "{0} beslemesine abone ol" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "Bu listeye abone ol" @@ -5289,7 +5727,7 @@ msgstr "Önerilen Takipçiler" msgid "Suggested for you" msgstr "Sana önerilenler" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "Tehlikeli" @@ -5308,23 +5746,23 @@ msgstr "Destek" msgid "Switch Account" msgstr "Hesap Değiştir" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "{0} adresine geç" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "Giriş yaptığınız hesabı değiştirir" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "Sistem" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "Sistem günlüğü" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "" @@ -5340,41 +5778,47 @@ msgstr "Uzun" msgid "Tap to view fully" msgstr "Tamamen görüntülemek için dokunun" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "Teknoloji" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "Şartlar" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "Hizmet Şartları" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "Metin giriş alanı" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "" @@ -5382,7 +5826,7 @@ msgstr "" msgid "That handle is already taken." msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "Hesap, engeli kaldırdıktan sonra sizinle etkileşime geçebilecek." @@ -5399,11 +5843,15 @@ msgstr "Topluluk Kuralları <0/> konumuna taşındı" msgid "The Copyright Policy has been moved to <0/>" msgstr "Telif Hakkı Politikası <0/> konumuna taşındı" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "" @@ -5411,8 +5859,8 @@ msgstr "" msgid "The following steps will help customize your Bluesky experience." msgstr "Aşağıdaki adımlar, Bluesky deneyiminizi özelleştirmenize yardımcı olacaktır." -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "Gönderi silinmiş olabilir." @@ -5432,37 +5880,40 @@ msgstr "Hizmet Şartları taşındı" msgid "There are many feeds to try:" msgstr "Denemek için birçok besleme var:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "Sunucuya ulaşma konusunda bir sorun oluştu, lütfen internet bağlantınızı kontrol edin ve tekrar deneyin." -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "Bu beslemeyi kaldırma konusunda bir sorun oluştu. Lütfen internet bağlantınızı kontrol edin ve tekrar deneyin." -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "Beslemelerinizi güncelleme konusunda bir sorun oluştu, lütfen internet bağlantınızı kontrol edin ve tekrar deneyin." -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "" #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "Sunucuya ulaşma konusunda bir sorun oluştu" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "Sunucunuza ulaşma konusunda bir sorun oluştu" @@ -5470,7 +5921,7 @@ msgstr "Sunucunuza ulaşma konusunda bir sorun oluştu" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "Bildirimleri almakta bir sorun oluştu. Tekrar denemek için buraya dokunun." -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "Gönderileri almakta bir sorun oluştu. Tekrar denemek için buraya dokunun." @@ -5483,7 +5934,8 @@ msgstr "Listeyi almakta bir sorun oluştu. Tekrar denemek için buraya dokunun." msgid "There was an issue fetching your lists. Tap here to try again." msgstr "Listelerinizi almakta bir sorun oluştu. Tekrar denemek için buraya dokunun." -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "" @@ -5491,32 +5943,32 @@ msgstr "" msgid "There was an issue syncing your preferences with the server" msgstr "Tercihlerinizi sunucuyla senkronize etme konusunda bir sorun oluştu" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "Uygulama şifrelerinizi almakta bir sorun oluştu" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "Bir sorun oluştu! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "Bir sorun oluştu. Lütfen internet bağlantınızı kontrol edin ve tekrar deneyin." -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "Uygulamada beklenmeyen bir sorun oluştu. Bu size de olduysa lütfen bize bildirin!" @@ -5541,14 +5993,26 @@ msgstr "Bu {screenDescription} işaretlendi:" msgid "This account has requested that users sign in to view their profile." msgstr "Bu hesap, kullanıcıların profilini görüntülemek için giriş yapmalarını istedi." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:26 +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "" + #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." msgstr "" @@ -5566,21 +6030,21 @@ msgstr "Bu içerik {0} tarafından barındırılıyor. Harici medyayı etkinleş msgid "This content is not available because one of the users involved has blocked the other." msgstr "Bu içerik, içerikte yer alan kullanıcılardan biri diğerini engellediği için mevcut değil." -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "Bu içerik, bir Bluesky hesabı olmadan görüntülenemez." -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "Bu besleme şu anda yüksek trafik alıyor ve geçici olarak kullanılamıyor. Lütfen daha sonra tekrar deneyin." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "Bu besleme boş!" @@ -5588,11 +6052,15 @@ msgstr "Bu besleme boş!" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "Bu besleme boş! Daha fazla kullanıcı takip etmeniz veya dil ayarlarınızı ayarlamanız gerekebilir." +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "" + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "Bu bilgi diğer kullanıcılarla paylaşılmaz." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "Bu, e-postanızı değiştirmeniz veya şifrenizi sıfırlamanız gerektiğinde önemlidir." @@ -5608,7 +6076,15 @@ msgstr "" msgid "This label was applied by the author." msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "" @@ -5616,7 +6092,7 @@ msgstr "" msgid "This link is taking you to the following website:" msgstr "Bu bağlantı sizi aşağıdaki web sitesine götürüyor:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "Bu liste boş!" @@ -5624,11 +6100,11 @@ msgstr "Bu liste boş!" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "Bu isim zaten kullanılıyor" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "Bu gönderi silindi." @@ -5649,7 +6125,7 @@ msgstr "" msgid "This service has not provided terms of service or a privacy policy." msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "" @@ -5657,6 +6133,10 @@ msgstr "" msgid "This user doesn't have any followers." msgstr "" +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5690,7 +6170,7 @@ msgstr "" #~ msgid "This warning is only available for posts with media attached." #~ msgstr "Bu uyarı yalnızca medya ekli gönderiler için mevcuttur." -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "" @@ -5698,12 +6178,12 @@ msgstr "" #~ msgid "This will hide this post from your feeds." #~ msgstr "Bu, bu gönderiyi beslemelerinizden gizleyecektir." -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "Konu Tercihleri" @@ -5715,15 +6195,19 @@ msgstr "Konu Tabanlı Mod" msgid "Threads Preferences" msgstr "Konu Tercihleri" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "" +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "" @@ -5756,60 +6240,69 @@ msgctxt "action" msgid "Try again" msgstr "Tekrar dene" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "Listeyi engeli kaldır" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "Listeyi sessizden çıkar" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "Hizmetinize ulaşılamıyor. Lütfen internet bağlantınızı kontrol edin." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "Engeli kaldır" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "Engeli kaldır" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "Hesabın engelini kaldır" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "Yeniden göndermeyi geri al" @@ -5823,7 +6316,7 @@ msgstr "Takibi bırak" msgid "Unfollow" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "{0} adresini takibi bırak" @@ -5840,12 +6333,12 @@ msgstr "" #~ msgid "Unlike" #~ msgstr "Beğenmeyi geri al" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "Sessizden çıkar" @@ -5862,41 +6355,54 @@ msgstr "Hesabın sessizliğini kaldır" msgid "Unmute all {displayTag} posts" msgstr "" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" msgstr "" +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "Konunun sessizliğini kaldır" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "Sabitlemeyi kaldır" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "Moderasyon listesini sabitlemeyi kaldır" +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "" + #: src/view/screens/ProfileFeed.tsx:345 #~ msgid "Unsave" #~ msgstr "Kaydedilenlerden kaldır" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "" @@ -5908,7 +6414,7 @@ msgstr "Listelerde {displayName} güncelle" #~ msgid "Update Available" #~ msgstr "Güncelleme Mevcut" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "" @@ -5916,42 +6422,46 @@ msgstr "" msgid "Updating..." msgstr "Güncelleniyor..." -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "Bir metin dosyası yükleyin:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "Uygulama şifrelerini kullanarak hesabınızın veya şifrenizin tam erişimini vermeden diğer Bluesky istemcilerine giriş yapın." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "Varsayılan sağlayıcıyı kullan" @@ -5965,11 +6475,15 @@ msgstr "Uygulama içi tarayıcıyı kullan" msgid "Use my default browser" msgstr "Varsayılan tarayıcımı kullan" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "Bunu, kullanıcı adınızla birlikte diğer uygulamaya giriş yapmak için kullanın." @@ -5990,6 +6504,10 @@ msgstr "Kullanıcı Engellendi" msgid "User Blocked by \"{0}\"" msgstr "" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "Liste Tarafından Engellenen Kullanıcı" @@ -6011,13 +6529,13 @@ msgstr "Kullanıcı Sizi Engelledi" msgid "User list by {0}" msgstr "{0} tarafından oluşturulan kullanıcı listesi" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "<0/> tarafından oluşturulan kullanıcı listesi" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "Sizin tarafınızdan oluşturulan kullanıcı listesi" @@ -6033,11 +6551,11 @@ msgstr "Kullanıcı listesi güncellendi" msgid "User Lists" msgstr "Kullanıcı Listeleri" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "Kullanıcı adı veya e-posta adresi" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "Kullanıcılar" @@ -6045,6 +6563,13 @@ msgstr "Kullanıcılar" msgid "users followed by <0/>" msgstr "<0/> tarafından takip edilen kullanıcılar" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "\"{0}\" içindeki kullanıcılar" @@ -6053,7 +6578,7 @@ msgstr "\"{0}\" içindeki kullanıcılar" msgid "Users that have liked this content or profile" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "" @@ -6065,32 +6590,32 @@ msgstr "" #~ msgid "Verify {0}" #~ msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" msgstr "" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "E-postayı doğrula" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "E-postamı doğrula" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "E-postamı Doğrula" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "Yeni E-postayı Doğrula" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "E-postanızı Doğrulayın" @@ -6098,15 +6623,15 @@ msgstr "E-postanızı Doğrulayın" #~ msgid "Version {0}" #~ msgstr "" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" msgstr "" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "Video Oyunları" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "{0}'ın avatarını görüntüle" @@ -6114,25 +6639,25 @@ msgstr "{0}'ın avatarını görüntüle" msgid "View debug entry" msgstr "Hata ayıklama girişini görüntüle" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "Tam konuyu görüntüle" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "Profili görüntüle" @@ -6144,7 +6669,7 @@ msgstr "Avatarı görüntüle" msgid "View the labeling service provided by @{0}" msgstr "" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "" @@ -6176,11 +6701,15 @@ msgstr "" msgid "We couldn't find any results for that hashtag." msgstr "" +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "Hesabınızın hazır olmasına {estimatedTime} tahmin ediyoruz." -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "Harika vakit geçirmenizi umuyoruz. Unutmayın, Bluesky:" @@ -6188,7 +6717,7 @@ msgstr "Harika vakit geçirmenizi umuyoruz. Unutmayın, Bluesky:" msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "Takipçilerinizden gönderi kalmadı. İşte <0/>'den en son gönderiler." -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "" @@ -6204,7 +6733,7 @@ msgstr "" msgid "We were unable to load your configured labelers at this time." msgstr "" -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "Bağlantı kuramadık. Hesabınızı kurmaya devam etmek için tekrar deneyin. Başarısız olmaya devam ederse bu akışı atlayabilirsiniz." @@ -6216,10 +6745,14 @@ msgstr "Hesabınız hazır olduğunda size bildireceğiz." #~ msgid "We'll look into your appeal promptly." #~ msgstr "İtirazınıza hızlı bir şekilde bakacağız." -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "Bu, deneyiminizi özelleştirmenize yardımcı olmak için kullanılacak." +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "Sizi aramızda görmekten çok mutluyuz!" @@ -6228,7 +6761,7 @@ msgstr "Sizi aramızda görmekten çok mutluyuz!" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "Üzgünüz, ancak bu listeyi çözemedik. Bu durum devam ederse, lütfen liste oluşturucu, @{handleOrDid} ile iletişime geçin." -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "" @@ -6236,12 +6769,12 @@ msgstr "" msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "Üzgünüz, ancak aramanız tamamlanamadı. Lütfen birkaç dakika içinde tekrar deneyin." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "Üzgünüz! Aradığınız sayfayı bulamıyoruz." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "" @@ -6249,7 +6782,7 @@ msgstr "" #~ msgid "Welcome to <0>Bluesky" #~ msgstr "<0>Bluesky'e hoş geldiniz" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "İlgi alanlarınız nelerdir?" @@ -6259,7 +6792,7 @@ msgstr "İlgi alanlarınız nelerdir?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "Nasılsınız?" @@ -6271,28 +6804,41 @@ msgstr "Bu gönderide hangi diller kullanılıyor?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "Algoritmik beslemelerinizde hangi dilleri görmek istersiniz?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "Kimler yanıtlayabilir" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "" @@ -6300,21 +6846,21 @@ msgstr "" msgid "Wide" msgstr "Geniş" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" msgstr "" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "Gönderi yaz" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "Yanıtınızı yazın" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "Yazarlar" @@ -6323,16 +6869,16 @@ msgstr "Yazarlar" #~ msgstr "XXXXXX" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "Evet" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" msgstr "" @@ -6353,6 +6899,14 @@ msgstr "Ayrıca takip edebileceğiniz yeni Özel Beslemeler keşfedebilirsiniz." msgid "You can change these settings later." msgstr "Bu ayarları daha sonra değiştirebilirsiniz." +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -6366,22 +6920,26 @@ msgstr "" msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "Henüz hiç davet kodunuz yok! Bluesky'de biraz daha uzun süre kaldıktan sonra size bazı kodlar göndereceğiz." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "Sabitlemiş beslemeniz yok." #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "Kaydedilmiş beslemeniz yok!" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "Kaydedilmiş beslemeniz yok!" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "Kaydedilmiş beslemeniz yok." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "Yazarı engellediniz veya yazar tarafından engellendiniz." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -6416,6 +6974,10 @@ msgstr "" #~ msgid "You have muted this user." #~ msgstr "Bu kullanıcıyı sessize aldınız." +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "Beslemeniz yok." @@ -6425,9 +6987,9 @@ msgstr "Beslemeniz yok." msgid "You have no lists." msgstr "Listeniz yok." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." @@ -6437,7 +6999,7 @@ msgstr "" #~ msgid "You have not blocked any accounts yet. To block an account, go to their profile and selected \"Block account\" from the menu on their account." #~ msgstr "Henüz hiçbir hesabı engellemediniz. Bir hesabı engellemek için, profilinize gidin ve hesaplarının menüsünden \"Hesabı engelle\" seçeneğini seçin." -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "Henüz hiçbir uygulama şifresi oluşturmadınız. Aşağıdaki düğmeye basarak bir tane oluşturabilirsiniz." @@ -6449,11 +7011,19 @@ msgstr "" #~ msgid "You have not muted any accounts yet. To mute an account, go to their profile and selected \"Mute account\" from the menu on their account." #~ msgstr "Henüz hiçbir hesabı sessize almadınız. Bir hesabı sessize almak için, profilinize gidin ve hesaplarının menüsünden \"Hesabı sessize al\" seçeneğini seçin." -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "" @@ -6469,7 +7039,7 @@ msgstr "" msgid "You must be 18 years or older to enable adult content" msgstr "Yetişkin içeriğini etkinleştirmek için 18 yaşında veya daha büyük olmalısınız" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "" @@ -6485,7 +7055,7 @@ msgstr "Artık bu konu için bildirim alacaksınız" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "Bir \"sıfırlama kodu\" içeren bir e-posta alacaksınız. Bu kodu buraya girin, ardından yeni şifrenizi girin." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" msgstr "" @@ -6499,7 +7069,7 @@ msgstr "Siz kontrol ediyorsunuz" msgid "You're in line" msgstr "Sıradasınız" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "Hazırsınız!" @@ -6516,11 +7086,11 @@ msgstr "Beslemenizin sonuna ulaştınız! Takip edebileceğiniz daha fazla hesap msgid "Your account" msgstr "Hesabınız" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "Hesabınız silindi" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "" @@ -6528,6 +7098,10 @@ msgstr "" msgid "Your birth date" msgstr "Doğum tarihiniz" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "Seçiminiz kaydedilecek, ancak daha sonra ayarlarda değiştirilebilir." @@ -6537,7 +7111,7 @@ msgid "Your default feed is \"Following\"" msgstr "Varsayılan beslemeniz \"Takip Edilenler\"" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "E-postanız geçersiz gibi görünüyor." @@ -6546,11 +7120,11 @@ msgstr "E-postanız geçersiz gibi görünüyor." #~ msgid "Your email has been saved! We'll be in touch soon." #~ msgstr "E-postanız kaydedildi! Yakında sizinle iletişime geçeceğiz." -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "E-postanız güncellendi ancak doğrulanmadı. Bir sonraki adım olarak, lütfen yeni e-postanızı doğrulayın." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "E-postanız henüz doğrulanmadı. Bu, önerdiğimiz önemli bir güvenlik adımıdır." @@ -6562,7 +7136,7 @@ msgstr "Takip ettiğiniz besleme boş! Neler olduğunu görmek için daha fazla msgid "Your full handle will be" msgstr "Tam kullanıcı adınız" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "Tam kullanıcı adınız <0>@{0} olacak" @@ -6571,7 +7145,7 @@ msgstr "Tam kullanıcı adınız <0>@{0} olacak" #~ msgid "Your invite codes are hidden when logged in using an App Password" #~ msgstr "Uygulama Şifresi kullanarak giriş yaptığınızda davet kodlarınız gizlenir" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "" @@ -6579,22 +7153,26 @@ msgstr "" msgid "Your password has been changed successfully!" msgstr "Şifreniz başarıyla değiştirildi!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "Gönderiniz yayınlandı" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "Gönderileriniz, beğenileriniz ve engellemeleriniz herkese açıktır. Sessizlikleriniz özeldir." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "Profiliniz" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "Yanıtınız yayınlandı" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "Kullanıcı adınız" diff --git a/src/locale/locales/uk/messages.po b/src/locale/locales/uk/messages.po index 430ceaaee9..3593181547 100644 --- a/src/locale/locales/uk/messages.po +++ b/src/locale/locales/uk/messages.po @@ -18,7 +18,7 @@ msgstr "" "X-Crowdin-File: /main/src/locale/locales/en/messages.po\n" "X-Crowdin-File-ID: 14\n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(немає ел. адреси)" @@ -26,24 +26,32 @@ msgstr "(немає ел. адреси)" msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#: src/components/moderation/LabelsOnMe.tsx:55 +#~ msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" msgstr "" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#: src/components/moderation/LabelsOnMe.tsx:61 +#~ msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" msgstr "" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" msgstr "" @@ -52,11 +60,11 @@ msgstr "" msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -68,7 +76,7 @@ msgstr "" msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" msgstr "" @@ -76,6 +84,10 @@ msgstr "" msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" msgstr "" +#: src/view/screens/ProfileList.tsx:286 +#~ msgid "{0} your feeds" +#~ msgstr "" + #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" @@ -88,22 +100,26 @@ msgstr "" msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" msgstr "" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} підписок" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" msgstr "" -#: src/view/shell/Drawer.tsx:464 +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} непрочитаних" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" msgstr "" @@ -111,11 +127,11 @@ msgstr "" msgid "<0/> members" msgstr "<0/> учасників" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" msgstr "" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" msgstr "" @@ -140,7 +156,7 @@ msgstr "" #~ msgid "<0>Follow some<1>Recommended<2>Users" #~ msgstr "<0>Підпишіться на деяких <1>рекомендованих <2>користувачів" -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." msgstr "" @@ -152,7 +168,7 @@ msgstr "" msgid "⚠Invalid Handle" msgstr "⚠Недопустимий псевдонім" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "" @@ -166,11 +182,11 @@ msgid "Access profile and other navigation links" msgstr "Відкрити профіль та іншу навігацію" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "Доступність" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "" @@ -183,21 +199,21 @@ msgstr "" #~ msgid "account" #~ msgstr "обліковий запис" -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "Обліковий запис" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "Обліковий запис заблоковано" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "Ви підписалися на обліковий запис" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "Обліковий запис ігнорується" @@ -218,55 +234,56 @@ msgstr "Параметри облікового запису" msgid "Account removed from quick access" msgstr "Обліковий запис вилучено зі швидкого доступу" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "Обліковий запис розблоковано" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "Ви відписалися від облікового запису" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "Обліковий запис більше не ігнорується" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "Додати" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "Додати попередження про вміст" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "Додати користувача до списку" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "Додати обліковий запис" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "Додати альтернативний текст" #: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" +#~ msgid "Add ALT text" +#~ msgstr "" -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "Додати пароль застосунку" @@ -278,15 +295,23 @@ msgstr "Додати пароль застосунку" #~ msgid "Add link card:" #~ msgstr "Додати попередній перегляд:" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "Додати слово до ігнорування з обраними налаштуваннями" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "Додати ігноровані слова та теги" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "Додайте наступний DNS-запис до вашого домену:" @@ -295,7 +320,7 @@ msgstr "Додайте наступний DNS-запис до вашого до msgid "Add to Lists" msgstr "Додати до списку" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "Додати до моїх стрічок" @@ -308,17 +333,17 @@ msgstr "Додати до моїх стрічок" msgid "Added to list" msgstr "Додано до списку" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "Додано до моїх стрічок" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." msgstr "Налаштуйте мінімальну кількість вподобань для того щоб відповідь відобразилася у вашій стрічці." #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "Вміст для дорослих" @@ -327,14 +352,29 @@ msgid "Adult content is disabled." msgstr "Контент для дорослих вимкнено." #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "Розширені" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "Усі збережені стрічки в одному місці." +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "" + +#: src/screens/Messages/Settings.tsx:61 +#: src/screens/Messages/Settings.tsx:64 +#~ msgid "Allow messages from" +#~ msgstr "" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -344,13 +384,13 @@ msgstr "Вже маєте код?" msgid "Already signed in as @{0}" msgstr "Вже увійшли як @{0}" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -364,24 +404,24 @@ msgstr "" msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "Альтернативний текст описує зображення для незрячих та користувачів із вадами зору, та надає додатковий контекст для всіх." -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "Було надіслано лист на адресу {0}. Він містить код підтвердження, який можна ввести нижче." -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "Було надіслано лист на вашу попередню адресу, {0}. Він містить код підтвердження, який ви можете ввести нижче." -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" +#: src/components/dms/MessageMenu.tsx:134 +#~ msgid "An error occurred while trying to delete the message. Please try again." +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "Проблема не включена до цих варіантів" @@ -394,7 +434,7 @@ msgstr "Проблема не включена до цих варіантів" msgid "An issue occurred, please try again." msgstr "Виникла проблема, будь ласка, спробуйте ще раз." -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" msgstr "" @@ -403,7 +443,7 @@ msgstr "" msgid "and" msgstr "та" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "Тварини" @@ -411,7 +451,7 @@ msgstr "Тварини" msgid "Animated GIF" msgstr "" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "Антисоціальна поведінка" @@ -419,38 +459,39 @@ msgstr "Антисоціальна поведінка" msgid "App Language" msgstr "Мова застосунку" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "Пароль застосунку видалено" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "Назва пароля може містити лише латинські літери, цифри, пробіли, мінуси та нижні підкреслення." -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "Назва пароля застосунку мусить бути хоча б 4 символи в довжину." -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "Налаштування пароля застосунків" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "Паролі для застосунків" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "Звернення" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "Оскаржити мітку \"{0}\"" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" msgstr "" @@ -458,31 +499,51 @@ msgstr "" #~ msgid "Appeal submitted." #~ msgstr "Звернення надіслано." -#: src/view/screens/Settings/index.tsx:430 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "" + +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "Оформлення" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "Ви дійсно хочете видалити пароль для застосунку \"{name}\"?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#: src/components/dms/MessageMenu.tsx:123 +#~ msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." msgstr "" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#: src/components/dms/ConvoMenu.tsx:189 +#~ msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." +#~ msgstr "" + +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." msgstr "" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" msgstr "Ви впевнені, що бажаєте видалити {0} зі стрічки?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "Ви дійсно бажаєте видалити цю чернетку?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "Ви впевнені?" @@ -490,11 +551,11 @@ msgstr "Ви впевнені?" msgid "Are you writing in <0>{0}?" msgstr "Ви пишете <0>{0}?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "Мистецтво" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "Художня або нееротична оголеність." @@ -502,18 +563,20 @@ msgstr "Художня або нееротична оголеність." msgid "At least 3 characters" msgstr "Не менше 3-х символів" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -523,7 +586,7 @@ msgstr "Назад" msgid "Based on your interest in {interestsText}" msgstr "Ґрунтуючись на вашому інтересі до {interestsText}" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "Основні" @@ -531,17 +594,17 @@ msgstr "Основні" msgid "Birthday" msgstr "Дата народження" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "Дата народження:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "Заблокувати" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" msgstr "" @@ -554,15 +617,15 @@ msgstr "Заблокувати" msgid "Block Account?" msgstr "Заблокувати обліковий запис?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "Заблокувати облікові записи" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "Заблокувати список" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "Заблокувати ці облікові записи?" @@ -588,15 +651,15 @@ msgstr "Заблоковані облікові записи не можуть msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "Заблоковані облікові записи не можуть вам відповідати, згадувати вас у своїх постах, і взаємодіяти з вами будь-яким іншим чином. Ви не будете бачити їхні пости і вони не будуть бачити ваші." -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "Заблокований пост." -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "Блокування не заважає цьому маркувальнику додавати мітку до вашого облікового запису." -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "Блокування - це відкрита інформація. Заблоковані користувачі не можуть відповісти у ваших темах, згадувати вас або іншим чином взаємодіяти з вами." @@ -644,10 +707,15 @@ msgstr "Розмити зображення" msgid "Blur images and filter from feeds" msgstr "Розмити зображення і фільтрувати їх зі стрічки" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "Книги" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "" + #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "Організація" @@ -684,7 +752,7 @@ msgstr "створено вами" msgid "Camera" msgstr "Камера" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "Може містити лише літери, цифри, пробіли, дефіси та знаки підкреслення, і мати довжину від 4 до 32 символів." @@ -692,11 +760,11 @@ msgstr "Може містити лише літери, цифри, пробіл #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -708,26 +776,26 @@ msgstr "Може містити лише літери, цифри, пробіл #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "Скасувати" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "Скасувати" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "Скасувати видалення облікового запису" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "Скасувати зміну псевдоніма" @@ -752,34 +820,34 @@ msgstr "Скасувати пошук" msgid "Cancels opening the linked website" msgstr "Скасовує відкриття посилання" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "Змінити" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "Змінити" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "Змінити псевдонім" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "Змінити псевдонім" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "Змінити адресу електронної пошти" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "Змінити пароль" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "Зміна пароля" @@ -787,24 +855,34 @@ msgstr "Зміна пароля" msgid "Change post language to {0}" msgstr "Змінити мову поста на {0}" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "Змінити адресу електронної пошти" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" msgstr "" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" msgstr "" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" msgstr "" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" msgstr "" @@ -825,11 +903,11 @@ msgstr "Перевірити мій статус" #~ msgid "Check out some recommended users. Follow them to see similar users." #~ msgstr "Ознайомтеся з деякими рекомендованими користувачами. Слідкуйте за ними, щоб побачити дописи від подібних користувачів." -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "Перевірте свою поштову скриньку на наявність електронного листа з кодом підтвердження та введіть його нижче:" @@ -841,7 +919,7 @@ msgstr "Виберіть \"Усі\" або \"Ніхто\"" msgid "Choose Service" msgstr "Оберіть хостинг-провайдера" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "Оберіть алгоритми, що наповнюватимуть ваші стрічки." @@ -850,6 +928,10 @@ msgstr "Оберіть алгоритми, що наповнюватимуть #~ msgid "Choose the algorithms that power your experience with custom feeds." #~ msgstr "Автори стрічок можуть обирати будь-які алгоритми для формування стрічки саме для вас." +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "Виберіть ваші основні стрічки" @@ -858,19 +940,19 @@ msgstr "Виберіть ваші основні стрічки" msgid "Choose your password" msgstr "Вкажіть пароль" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "" @@ -879,11 +961,11 @@ msgstr "" msgid "Clear search query" msgstr "Очистити пошуковий запит" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "Видаляє всі застарілі дані зі сховища" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "Видаляє всі дані зі сховища" @@ -891,6 +973,10 @@ msgstr "Видаляє всі дані зі сховища" msgid "click here" msgstr "натисніть тут" +#: src/screens/Feeds/NoFollowingFeed.tsx:46 +#~ msgid "Click here to add one." +#~ msgstr "" + #: src/components/TagMenu/index.web.tsx:138 msgid "Click here to open tag menu for {tag}" msgstr "Натисніть тут, щоб відкрити меню тегів для {tag}" @@ -899,19 +985,28 @@ msgstr "Натисніть тут, щоб відкрити меню тегів #~ msgid "Click here to open tag menu for #{tag}" #~ msgstr "Натисніть тут, щоб відкрити меню тегів для #{tag}" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "Клімат" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "Закрити" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "Закрити діалогове вікно" @@ -923,7 +1018,7 @@ msgstr "Закрити сповіщення" msgid "Close bottom drawer" msgstr "Закрити нижнє меню" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "" @@ -939,6 +1034,10 @@ msgstr "Закрити зображення" msgid "Close image viewer" msgstr "Закрити перегляд зображення" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "Закрити панель навігації" @@ -956,7 +1055,7 @@ msgstr "Закриває нижню панель навігації" msgid "Closes password update alert" msgstr "Закриває сповіщення про оновлення пароля" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "Закриває редактор постів і видаляє чернетку" @@ -968,11 +1067,11 @@ msgstr "Закриває перегляд зображення" msgid "Collapses list of users for a given notification" msgstr "Згортає список користувачів для даного сповіщення" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "Комедія" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "Комікси" @@ -981,7 +1080,7 @@ msgstr "Комікси" msgid "Community Guidelines" msgstr "Правила спільноти" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "Завершіть ознайомлення та розпочніть користуватися вашим обліковим записом" @@ -989,7 +1088,7 @@ msgstr "Завершіть ознайомлення та розпочніть к msgid "Complete the challenge" msgstr "Виконайте завдання" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "Створюйте пости до {MAX_GRAPHEME_LENGTH} символів у довжину" @@ -1011,18 +1110,18 @@ msgstr "Налаштовано <0>у налаштуваннях модераці #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "Підтвердити" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "Підтвердити" @@ -1030,7 +1129,7 @@ msgstr "Підтвердити" msgid "Confirm content language settings" msgstr "Підтвердити налаштування мови вмісту" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "Підтвердити видалення облікового запису" @@ -1042,17 +1141,17 @@ msgstr "Підтвердіть ваш вік:" msgid "Confirm your birthdate" msgstr "Підтвердіть вашу дату народження" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "Код підтвердження" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "З’єднання..." @@ -1099,8 +1198,9 @@ msgstr "Тло контекстного меню натисніть, щоб за #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "Далі" @@ -1110,8 +1210,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "Продовжити як {0} (поточний користувач)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1125,22 +1226,26 @@ msgstr "Перейти до наступного кроку" msgid "Continue to the next step without following any accounts" msgstr "Перейдіть до наступного кроку, ні на кого не підписуючись" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "Кухарство" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "Скопійовано" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "Версію збірки скопійовано до буфера обміну" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1150,15 +1255,15 @@ msgstr "Скопійовано" msgid "Copied!" msgstr "Скопійовано!" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "Копіює пароль застосунку" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "Скопіювати" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "Копіювати {0}" @@ -1167,7 +1272,7 @@ msgstr "Копіювати {0}" msgid "Copy code" msgstr "Скопіювати код" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "Копіювати посилання на список" @@ -1176,8 +1281,8 @@ msgstr "Копіювати посилання на список" msgid "Copy link to post" msgstr "Копіювати посилання на пост" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" msgstr "" @@ -1191,36 +1296,36 @@ msgstr "Копіювати текст повідомлення" msgid "Copyright Policy" msgstr "Політика захисту авторського права" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" msgstr "" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "Не вдалося завантажити стрічку" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "Не вдалося завантажити список" #: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" +#~ msgid "Could not load profiles. Please try again later." +#~ msgstr "" -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" msgstr "" #: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +#~ msgid "Could not unmute chat" +#~ msgstr "" #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "Створити новий обліковий запис" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "Створити новий обліковий запис Bluesky" @@ -1233,7 +1338,11 @@ msgstr "Створити обліковий запис" msgid "Create an account" msgstr "Створити обліковий запис" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "Створити пароль застосунку" @@ -1242,11 +1351,11 @@ msgstr "Створити пароль застосунку" msgid "Create new account" msgstr "Створити новий обліковий запис" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "Створити звіт для {0}" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "Створено: {0}" @@ -1254,7 +1363,7 @@ msgstr "Створено: {0}" #~ msgid "Creates a card with a thumbnail. The card links to {url}" #~ msgstr "Створює картку з мініатюрою. Посилання картки: {url}" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "Культура" @@ -1263,12 +1372,12 @@ msgstr "Культура" msgid "Custom" msgstr "Користувацький" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "Власний домен" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." msgstr "Кастомні стрічки, створені спільнотою, подарують вам нові враження та допоможуть знайти контент, який ви любите." @@ -1276,8 +1385,8 @@ msgstr "Кастомні стрічки, створені спільнотою, msgid "Customize media from external sites." msgstr "Налаштування медіа зі сторонніх вебсайтів." -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "Темна" @@ -1285,7 +1394,7 @@ msgstr "Темна" msgid "Dark mode" msgstr "Темний режим" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "Темна тема" @@ -1293,7 +1402,7 @@ msgstr "Темна тема" msgid "Date of birth" msgstr "Дата народження" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" msgstr "Налагодження модерації" @@ -1301,14 +1410,14 @@ msgstr "Налагодження модерації" msgid "Debug panel" msgstr "Панель налагодження" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "Видалити" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "Видалити обліковий запис" @@ -1316,39 +1425,44 @@ msgstr "Видалити обліковий запис" #~ msgid "Delete Account" #~ msgstr "Видалити обліковий запис" -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" msgstr "" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "Видалити пароль для застосунку" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "Видалити пароль для застосунку?" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" - -#: src/view/screens/ProfileList.tsx:417 -msgid "Delete List" -msgstr "Видалити список" - -#: src/components/dms/MessageMenu.tsx:119 -msgid "Delete message" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" msgstr "" #: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "" + +#: src/view/screens/ProfileList.tsx:470 +msgid "Delete List" +msgstr "Видалити список" + +#: src/components/dms/MessageMenu.tsx:122 +msgid "Delete message" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "Видалити мій обліковий запис" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "Видалити мій обліковий запис..." @@ -1357,7 +1471,7 @@ msgstr "Видалити мій обліковий запис..." msgid "Delete post" msgstr "Видалити пост" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "Видалити цей список?" @@ -1369,10 +1483,14 @@ msgstr "Видалити цей пост?" msgid "Deleted" msgstr "Видалено" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "Видалений пост." +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1380,23 +1498,27 @@ msgstr "Видалений пост." msgid "Description" msgstr "Опис" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" msgstr "" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "Порожній пост. Ви хотіли щось написати?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "Тьмяний" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "" @@ -1415,15 +1537,17 @@ msgstr "" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "Вимкнено" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "Видалити" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "Відхилити чернетку?" @@ -1437,7 +1561,7 @@ msgstr "Попросити застосунки не показувати мій msgid "Discover new custom feeds" msgstr "Відкрийте для себе нові стрічки" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "Відкрийте для себе нові стрічки" @@ -1449,7 +1573,7 @@ msgstr "Ім'я" msgid "Display Name" msgstr "Ім'я" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "Панель DNS" @@ -1461,11 +1585,11 @@ msgstr "Не містить оголеності." msgid "Doesn't begin or end with a hyphen" msgstr "Не починається або закінчується дефісом" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "Значення домену" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "Домен перевірено!" @@ -1473,23 +1597,23 @@ msgstr "Домен перевірено!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "Готово" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1503,8 +1627,8 @@ msgstr "Готово" msgid "Done{extraText}" msgstr "Готово{extraText}" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "Завантажити CAR файл" @@ -1516,7 +1640,7 @@ msgstr "Перетягніть і відпустіть, щоб додати зо msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "Через політику компанії Apple, перегляд вмісту для дорослих можна ввімкнути лише в інтернеті після реєстрації." -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "для прикладу, olenka" @@ -1524,7 +1648,7 @@ msgstr "для прикладу, olenka" msgid "e.g. Alice Roberts" msgstr "напр. Тарас Шевченко" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "для прикладу, olenka.ua" @@ -1561,7 +1685,7 @@ msgctxt "action" msgid "Edit" msgstr "Редагувати" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "Змінити фото профілю" @@ -1571,7 +1695,7 @@ msgstr "Змінити фото профілю" msgid "Edit image" msgstr "Редагувати зображення" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "Редагувати опис списку" @@ -1580,8 +1704,8 @@ msgid "Edit Moderation List" msgstr "Редагування списку" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "Редагувати мої стрічки" @@ -1589,18 +1713,18 @@ msgstr "Редагувати мої стрічки" msgid "Edit my profile" msgstr "Редагувати мій профіль" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "Редагувати профіль" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "Редагувати профіль" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" msgstr "Редагувати збережені стрічки" @@ -1616,16 +1740,16 @@ msgstr "Редагувати ваш псевдонім для показу" msgid "Edit your profile description" msgstr "Редагувати опис вашого профілю" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "Освіта" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "Ел. адреса" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "" @@ -1633,20 +1757,20 @@ msgstr "" msgid "Email address" msgstr "Адреса електронної пошти" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "Електронну адресу змінено" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "Ел. адресу оновлено" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "Електронну адресу перевірено" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "Ел. адреса:" @@ -1690,7 +1814,7 @@ msgstr "Увімкнути зовнішні медіа" msgid "Enable media players for" msgstr "Увімкнути медіапрогравачі для" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "Увімкніть цей параметр, щоб бачити відповіді тільки від людей, на яких ви підписані." @@ -1698,6 +1822,8 @@ msgstr "Увімкніть цей параметр, щоб бачити відп msgid "Enable this source only" msgstr "Увімкнути лише джерело" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "Увімкнено" @@ -1706,7 +1832,11 @@ msgstr "Увімкнено" msgid "End of feed" msgstr "Кінець стрічки" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/components/Lists.tsx:52 +#~ msgid "End of list" +#~ msgstr "" + +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "Введіть ім'я для цього пароля застосунку" @@ -1714,12 +1844,12 @@ msgstr "Введіть ім'я для цього пароля застосунк msgid "Enter a password" msgstr "Введіть пароль" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "Введіть слово або тег" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "Введіть код підтвердження" @@ -1727,7 +1857,7 @@ msgstr "Введіть код підтвердження" msgid "Enter the code you received to change your password." msgstr "Введіть код, який ви отримали, щоб змінити пароль." -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "Введіть домен, який ви хочете використовувати" @@ -1744,11 +1874,11 @@ msgstr "Введіть вашу дату народження" msgid "Enter your email address" msgstr "Введіть адресу електронної пошти" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "Введіть вашу нову електронну пошту вище" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "Введіть нову адресу електронної пошти." @@ -1756,11 +1886,15 @@ msgstr "Введіть нову адресу електронної пошти." msgid "Enter your username and password" msgstr "Введіть псевдонім та пароль" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "Помилка отримання відповіді Captcha." -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "Помилка:" @@ -1769,15 +1903,30 @@ msgstr "Помилка:" msgid "Everybody" msgstr "Усі" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "Спам; надмірні згадки або відповіді" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "Виходить з процесу видалення облікового запису" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "Вихід з процесу зміни псевдоніму користувача" @@ -1811,12 +1960,12 @@ msgstr "Відверто або потенційно проблемний вмі msgid "Explicit sexual images." msgstr "Відверті сексуальні зображення." -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "Експорт моїх даних" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "Експорт моїх даних" @@ -1832,16 +1981,16 @@ msgstr "Зовнішні медіа можуть дозволяти вебсай #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "Налаштування зовнішніх медіа" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "Налаштування зовнішніх медіа" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "Не вдалося створити пароль застосунку." @@ -1849,7 +1998,7 @@ msgstr "Не вдалося створити пароль застосунку." msgid "Failed to create the list. Check your internet connection and try again." msgstr "Не вдалося створити список. Перевірте інтернет-з'єднання і спробуйте ще раз." -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" msgstr "" @@ -1857,48 +2006,69 @@ msgstr "" msgid "Failed to delete post, please try again" msgstr "Не вдалося видалити пост, спробуйте ще раз" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:28 +#~ msgid "Failed to load past messages." +#~ msgstr "" + #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 #: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 #~ msgid "Failed to load recommended feeds" #~ msgstr "Не вдалося завантажити рекомендації стрічок" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "Не вдалося зберегти зображення: {0}" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:29 +#~ msgid "Failed to send message(s)." +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "Стрічка" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "Стрічка від {0}" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "Стрічка не працює" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "Зворотний зв'язок" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "Стрічки" @@ -1906,7 +2076,7 @@ msgstr "Стрічки" #~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." #~ msgstr "Стрічки створюються користувачами для відбору постів. Оберіть стрічки, що вас цікавлять." -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "Стрічки – це алгоритми, створені користувачами з деяким досвідом програмування. <0/> для додаткової інформації." @@ -1914,15 +2084,19 @@ msgstr "Стрічки – це алгоритми, створені корис msgid "Feeds can be topical as well!" msgstr "Стрічки також можуть бути тематичними!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "Вміст файлу" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" msgstr "Фільтрувати зі стрічок" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "Завершення" @@ -1948,7 +2122,7 @@ msgstr "" #~ msgid "Finding similar accounts..." #~ msgstr "Пошук подібних облікових записів..." -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." msgstr "Оберіть, що ви хочете бачити у своїй стрічці підписок." @@ -1956,11 +2130,11 @@ msgstr "Оберіть, що ви хочете бачити у своїй стр msgid "Fine-tune the discussion threads." msgstr "Налаштуйте відображення обговорень." -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "Фітнес" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "Гнучкий" @@ -1973,10 +2147,10 @@ msgstr "Віддзеркалити горизонтально" msgid "Flip vertically" msgstr "Віддзеркалити вертикально" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -1988,7 +2162,7 @@ msgid "Follow" msgstr "Підписатись" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "Підписатися на {0}" @@ -2022,7 +2196,7 @@ msgstr "Підписані {0}" msgid "Followed users" msgstr "Ваші підписки" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "Тільки ваші підписки" @@ -2035,28 +2209,30 @@ msgstr "підписка на вас" msgid "Followers" msgstr "Підписники" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "Підписані" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" msgstr "Підписання на \"{0}\"" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" msgstr "Налаштування стрічки підписок" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" msgstr "Налаштування стрічки підписок" @@ -2068,15 +2244,15 @@ msgstr "Підписаний(-на) на вас" msgid "Follows You" msgstr "Підписаний(-на) на вас" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "Їжа" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "З міркувань безпеки нам потрібно буде відправити код підтвердження на вашу електронну адресу." -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "З міркувань безпеки цей пароль відображається лише один раз. Якщо ви втратите цей пароль, вам потрібно буде згенерувати новий." @@ -2085,15 +2261,15 @@ msgstr "З міркувань безпеки цей пароль відобра msgid "Forgot Password" msgstr "Забули пароль" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "Забули пароль?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "Забули пароль?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "Часто публікує неприйнятний контент" @@ -2101,7 +2277,7 @@ msgstr "Часто публікує неприйнятний контент" msgid "From @{sanitizedAuthor}" msgstr "Від @{sanitizedAuthor}" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "Зі стрічки \"<0/>\"" @@ -2110,12 +2286,20 @@ msgstr "Зі стрічки \"<0/>\"" msgid "Gallery" msgstr "Галерея" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "Почати" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "Грубі порушення закону чи умов використання" @@ -2124,9 +2308,9 @@ msgstr "Грубі порушення закону чи умов викорис #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "Назад" @@ -2134,13 +2318,14 @@ msgstr "Назад" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "Назад" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2160,16 +2345,20 @@ msgstr "Повернутися на головну" #~ msgid "Go to @{queryMaybeHandle}" #~ msgstr "Перейти до @{queryMaybeHandle}" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "Далі" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" msgstr "" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" msgstr "" @@ -2177,7 +2366,7 @@ msgstr "" msgid "Graphic Media" msgstr "Графічний медіаконтент" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "Псевдонім" @@ -2185,7 +2374,7 @@ msgstr "Псевдонім" msgid "Haptics" msgstr "" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "Домагання, тролінг або нетерпимість" @@ -2193,7 +2382,7 @@ msgstr "Домагання, тролінг або нетерпимість" msgid "Hashtag" msgstr "Хештег" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "Хештег: #{tag}" @@ -2202,10 +2391,14 @@ msgid "Having trouble?" msgstr "Виникли проблеми?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "Довідка" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "Ось деякі облікові записи, на які ви підписані" @@ -2218,13 +2411,13 @@ msgstr "Ось декілька популярних тематичних стр msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "Ось декілька тематичних стрічок на основі ваших інтересів: {interestsText}. Ви можете підписатися на скільки забажаєте з них." -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "Це ваш пароль для застосунків." #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2246,7 +2439,7 @@ msgid "Hide post" msgstr "Сховати пост" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "Приховати вміст" @@ -2258,23 +2451,23 @@ msgstr "Сховати цей пост?" msgid "Hide user list" msgstr "Сховати список користувачів" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "Хм, при зв'язку з сервером стрічки виникла якась проблема. Будь ласка, повідомте про це її власника." -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "Хм, здається сервер стрічки налаштовано неправильно. Будь ласка, повідомте про це її власника." -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "Хм, здається сервер стрічки зараз не працює. Будь ласка, повідомте про це її власника." -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "Хм, сервер стрічки надіслав нам незрозумілу відповідь. Будь ласка, повідомте про це її власника." -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "Хм, ми не можемо знайти цю стрічку. Можливо вона була видалена." @@ -2286,22 +2479,22 @@ msgstr "Здається, у нас виникли проблеми з зава msgid "Hmmmm, we couldn't load that moderation service." msgstr "Хм, ми не змогли завантажити цей сервіс модерації." -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "Головна" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "Host:" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "Хостинг-провайдер" @@ -2309,25 +2502,30 @@ msgstr "Хостинг-провайдер" msgid "How should we open this link?" msgstr "Як ви хочете відкрити це посилання?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "У мене є код" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "У мене є код підтвердження" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "Я маю власний домен" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "Розкриває альтернативний текст, якщо текст задовгий" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "Якщо не вибрано жодного варіанту - підходить для всіх." @@ -2335,7 +2533,7 @@ msgstr "Якщо не вибрано жодного варіанту - підх msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "Якщо ви ще не досягли повноліття відповідно до законів вашої країни, ваш батьківський або юридичний опікун повинен прочитати ці Умови від вашого імені." -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "Якщо ви видалите цей список, ви не зможете його відновити." @@ -2347,7 +2545,7 @@ msgstr "Якщо ви видалите цей пост, ви не зможете msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "Якщо ви хочете змінити пароль, ми надішлемо вам код, щоб переконатися, що це ваш обліковий запис." -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "Незаконний та невідкладний" @@ -2355,23 +2553,27 @@ msgstr "Незаконний та невідкладний" msgid "Image" msgstr "Зображення" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "Опис зображення" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "Видавання себе за іншу особу або неправдиві твердження про особу чи приналежність" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "Введіть код, надісланий на вашу електронну пошту для скидання пароля" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "Введіть код підтвердження для видалення облікового запису" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "Введіть ім'я для пароля застосунку" @@ -2379,27 +2581,27 @@ msgstr "Введіть ім'я для пароля застосунку" msgid "Input new password" msgstr "Введіть новий пароль" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "Введіть пароль для видалення облікового запису" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "Введіть пароль, прив'язаний до {identifier}" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "Введіть псевдонім або ел. адресу, які ви використовували для реєстрації" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "Введіть ваш пароль" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "Введіть бажаного хостинг-провайдера" @@ -2407,16 +2609,20 @@ msgstr "Введіть бажаного хостинг-провайдера" msgid "Input your user handle" msgstr "Введіть ваш псевдонім" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "" -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "Невірний або непідтримуваний пост" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "Невірне ім'я користувача або пароль" @@ -2428,7 +2634,7 @@ msgstr "Запросити друга" msgid "Invite code" msgstr "Код запрошення" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "Код запрошення не прийнято. Переконайтеся в його правильності та повторіть спробу." @@ -2448,7 +2654,7 @@ msgstr "Ми показуємо пости людей, за якими ви сл msgid "Jobs" msgstr "Вакансії" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "Журналістика" @@ -2468,7 +2674,7 @@ msgstr "Мітку додано автором." msgid "Labels" msgstr "Мітки" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "Мітки є анотаціями для користувачів і контенту. Вони можуть використовуватися для приховування, попередження та категоризації мережі." @@ -2476,11 +2682,11 @@ msgstr "Мітки є анотаціями для користувачів і к #~ msgid "labels have been placed on this {labelTarget}" #~ msgstr "мітка була розміщена на {labelTarget}" -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "Мітки на вашому обліковому записі" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "Мітки на вашому контенті" @@ -2488,7 +2694,7 @@ msgstr "Мітки на вашому контенті" msgid "Language selection" msgstr "Вибір мови" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "Налаштування мови" @@ -2497,7 +2703,7 @@ msgstr "Налаштування мови" msgid "Language Settings" msgstr "Налаштування мов" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "Мови" @@ -2515,7 +2721,7 @@ msgstr "Дізнатися більше" msgid "Learn more about the moderation applied to this content." msgstr "Дізнайтеся більше про те, яка модерація застосована до цього вмісту." -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "Дізнатися більше про це попередження" @@ -2528,13 +2734,20 @@ msgstr "Дізнатися більше про те, що є публічним msgid "Learn more." msgstr "Дізнатися більше." -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" msgstr "" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" msgstr "" @@ -2550,7 +2763,7 @@ msgstr "Ви залишаєте Bluesky" msgid "left to go." msgstr "ще залишилося." -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "Старе сховище очищено, тепер вам потрібно перезапустити застосунок." @@ -2559,11 +2772,11 @@ msgstr "Старе сховище очищено, тепер вам потріб msgid "Let's get your password reset!" msgstr "Давайте відновимо ваш пароль!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "Злітаємо!" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "Світла" @@ -2571,8 +2784,8 @@ msgstr "Світла" #~ msgid "Like" #~ msgstr "Вподобати" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "Вподобати цю стрічку" @@ -2614,7 +2827,7 @@ msgstr "сподобався ваш пост" msgid "Likes" msgstr "Вподобання" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "Вподобайки цього поста" @@ -2626,19 +2839,19 @@ msgstr "Список" msgid "List Avatar" msgstr "Аватар списку" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "Список заблоковано" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "Список від {0}" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "Список видалено" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "Список ігнорується" @@ -2646,31 +2859,35 @@ msgstr "Список ігнорується" msgid "List Name" msgstr "Назва списку" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "Список розблоковано" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "Список більше не ігнорується" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "Списки" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "" + #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "Завантажити нові сповіщення" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "Завантажити нові пости" @@ -2697,7 +2914,7 @@ msgstr "Видимість для користувачів без обліков msgid "Login to account that is not listed" msgstr "Увійти до облікового запису, якого немає в списку" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "" @@ -2705,14 +2922,35 @@ msgstr "" msgid "Looks like XXXXX-XXXXX" msgstr "Виглядає як XXXXX-XXXXXXX" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:38 +#~ msgid "Looks like you're missing a following feed." +#~ msgstr "" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "Переконайтеся, що це дійсно той сайт, що ви збираєтеся відвідати!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "Налаштовуйте ваші ігноровані слова та теги" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2731,44 +2969,50 @@ msgstr "Згадані користувачі" msgid "Menu" msgstr "Меню" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "" + +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 msgid "Message deleted" msgstr "" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "Повідомлення від сервера: {0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" msgstr "" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "" #: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" +#~ msgid "Messaging settings" +#~ msgstr "" -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "Оманливий обліковий запис" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" msgstr "Модерація" @@ -2781,13 +3025,13 @@ msgstr "Деталі модерації" msgid "Moderation list by {0}" msgstr "Список модерації від {0}" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" msgstr "Список модерації від <0/>" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" msgstr "Список модерації від вас" @@ -2808,7 +3052,7 @@ msgstr "Списки для модерації" msgid "Moderation Lists" msgstr "Списки для модерації" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" msgstr "Налаштування модерації" @@ -2829,11 +3073,11 @@ msgstr "Модератор вирішив встановити загальне msgid "More" msgstr "Більше" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "Більше стрічок" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "Додаткові опції" @@ -2854,7 +3098,7 @@ msgstr "Ігнорувати {truncatedTag}" msgid "Mute Account" msgstr "Ігнорувати обліковий запис" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "Ігнорувати облікові записи" @@ -2862,32 +3106,37 @@ msgstr "Ігнорувати облікові записи" msgid "Mute all {displayTag} posts" msgstr "Ігнорувати всі пости {displayTag}" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "Ігнорувати лише в тегах" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "Ігнорувати в тексті та тегах" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "Ігнорувати список" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:142 +#~ msgid "Mute notifications" +#~ msgstr "" -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "Ігнорувати ці облікові записи?" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "Ігнорувати це слово у постах і тегах" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "Ігнорувати це слово лише у тегах" @@ -2926,7 +3175,7 @@ msgstr "Проігноровано списком \"{0}\"" msgid "Muted words & tags" msgstr "Ігноровані слова та теги" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "Ігнорування є приватним. Ігноровані користувачі можуть взаємодіяти з вами, але ви не бачитимете їх пости і не отримуватимете від них сповіщень." @@ -2935,23 +3184,23 @@ msgstr "Ігнорування є приватним. Ігноровані ко msgid "My Birthday" msgstr "Мій день народження" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "Мої стрічки" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "Мій профіль" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "Мої збережені стрічки" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "Мої збережені стрічки" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "Ім'я" @@ -2960,27 +3209,27 @@ msgstr "Ім'я" msgid "Name is required" msgstr "Необхідна назва" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "Ім'я чи Опис порушують стандарти спільноти" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "Природа" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "Переходить до наступного екрана" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "Переходить до вашого профілю" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "Хочете повідомити про порушення авторських прав?" @@ -2989,11 +3238,11 @@ msgstr "Хочете повідомити про порушення авторс #~ msgid "Never lose access to your followers and data." #~ msgstr "Ніколи не втрачайте доступ до ваших даних та підписників." -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "Ніколи не втрачайте доступ до ваших підписників та даних." -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "Неважливо, створіть для мене псевдонім" @@ -3006,12 +3255,16 @@ msgstr "Новий" msgid "New" msgstr "Новий" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" msgstr "" +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "" + #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" msgstr "Новий список модерації" @@ -3024,22 +3277,22 @@ msgstr "Новий пароль" msgid "New Password" msgstr "Новий Пароль" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "Новий пост" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "Новий пост" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "Новий пост" @@ -3052,14 +3305,14 @@ msgstr "Новий список користувачів" msgid "Newest replies first" msgstr "Спочатку найновіші" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "Новини" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3077,29 +3330,29 @@ msgstr "Далі" msgid "Next image" msgstr "Наступне зображення" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "Ні" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "Опис відсутній" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "Немає панелі DNS" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "Ви більше не підписані на {0}" @@ -3107,25 +3360,39 @@ msgstr "Ви більше не підписані на {0}" msgid "No longer than 253 characters" msgstr "Не може бути довшим за 253 символи" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" msgstr "" +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "" + #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "Ще ніяких сповіщень!" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "Результати відсутні" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "Нічого не знайдено" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "Нічого не знайдено за запитом «{query}»" @@ -3135,13 +3402,13 @@ msgstr "Нічого не знайдено за запитом «{query}»" msgid "No results found for {query}" msgstr "Нічого не знайдено за запитом «{query}»" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "" #: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" +#~ msgid "No search results found for \"{searchText}\"." +#~ msgstr "" #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 @@ -3152,6 +3419,10 @@ msgstr "Ні, дякую" msgid "Nobody" msgstr "Ніхто" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3170,8 +3441,8 @@ msgstr "Несексуальна оголеність" msgid "Not Found" msgstr "Не знайдено" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "Пізніше" @@ -3185,25 +3456,37 @@ msgstr "Примітка щодо поширення" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "Примітка: Bluesky є відкритою і публічною мережею. Цей параметр обмежує видимість вашого вмісту лише у застосунках і на сайті Bluesky, але інші застосунки можуть цього не дотримуватися. Ваш вміст все ще може бути показаний відвідувачам без облікового запису іншими застосунками і вебсайтами." -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "Сповіщення" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" msgstr "" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "Оголеність" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "Нагота чи матеріали для дорослих не позначені відповідним чином" @@ -3215,17 +3498,17 @@ msgstr "Нагота чи матеріали для дорослих не поз msgid "Off" msgstr "Вимкнено" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "О, ні!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "Ой! Щось пішло не так." #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "OK" @@ -3237,14 +3520,18 @@ msgstr "Добре" msgid "Oldest replies first" msgstr "Спочатку найдавніші" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "Скинути ознайомлення" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "Для одного або кількох зображень відсутній опис." +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." msgstr "Тільки {0} можуть відповідати." @@ -3253,33 +3540,46 @@ msgstr "Тільки {0} можуть відповідати." msgid "Only contains letters, numbers, and hyphens" msgstr "Тільки літери, цифри та дефіс" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "Ой, щось пішло не так!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "Ой!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "Відкрити" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "Емоджі" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "Відкрити меню налаштувань стрічки" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "Вбудований браузер" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "Відкрити налаштування ігнорування слів і тегів" @@ -3292,12 +3592,12 @@ msgstr "Відкрити навігацію" msgid "Open post options menu" msgstr "Відкрити меню налаштувань посту" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "Відкрити storybook сторінку" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "Відкрити системний журнал" @@ -3305,7 +3605,7 @@ msgstr "Відкрити системний журнал" msgid "Opens {numItems} options" msgstr "Відкриває меню з {numItems} опціями" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "" @@ -3321,11 +3621,15 @@ msgstr "Відкрити розширений список користувач msgid "Opens camera on device" msgstr "Відкриває камеру на пристрої" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "Відкрити редактор" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "Відкриває налаштування мов" @@ -3333,7 +3637,7 @@ msgstr "Відкриває налаштування мов" msgid "Opens device photo gallery" msgstr "Відкриває фотогалерею пристрою" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "Відкриває налаштування зовнішніх вбудувань" @@ -3355,52 +3659,52 @@ msgstr "" msgid "Opens list of invite codes" msgstr "Відкриває список кодів запрошення" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "Відкриває модальне вікно для підтвердження видалення облікового запису. Потребує код з електронної пошти" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "Відкриває модальне вікно для зміни паролю в Bluesky" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "Відкриває модальне вікно для вибору псевдоніму в Bluesky" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "Відкриває модальне вікно для завантаження даних з вашого облікового запису Bluesky (репозиторій)" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "Відкриває модальне вікно для перевірки електронної пошти" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "Відкриває діалог налаштування власного домену як псевдоніму" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" msgstr "Відкриває налаштування модерації" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "Відкриває форму скидання пароля" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" msgstr "Відкриває сторінку з усіма збереженими стрічками" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" msgstr "Відкриває сторінку з усіма збереженими каналами" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "Відкриває налаштування паролів для застосунків" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" msgstr "Відкриває налаштування стрічки підписок" @@ -3408,20 +3712,20 @@ msgstr "Відкриває налаштування стрічки підпис msgid "Opens the linked website" msgstr "Відкриває посилання" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" +#: src/screens/Messages/List/index.tsx:86 +#~ msgid "Opens the message settings page" +#~ msgstr "" -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "Відкриває системний журнал" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "Відкриває налаштування гілок" @@ -3429,7 +3733,8 @@ msgstr "Відкриває налаштування гілок" msgid "Option {0} of {numItems}" msgstr "Опція {0} з {numItems}" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "За бажанням надайте додаткову інформацію нижче:" @@ -3437,7 +3742,7 @@ msgstr "За бажанням надайте додаткову інформац msgid "Or combine these options:" msgstr "Або якісь із наступних варіантів:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "Інше" @@ -3449,7 +3754,11 @@ msgstr "Інший обліковий запис" msgid "Other..." msgstr "Інші..." -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "Сторінку не знайдено" @@ -3458,10 +3767,10 @@ msgstr "Сторінку не знайдено" msgid "Page Not Found" msgstr "Сторінку не знайдено" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "Пароль" @@ -3493,35 +3802,39 @@ msgstr "Люди, на яких підписаний(-на) @{0}" msgid "People following @{0}" msgstr "Люди, які підписані на @{0}" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." msgstr "Потрібен дозвіл на доступ до камери." -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." msgstr "Дозвіл на доступ до камери був заборонений. Будь ласка, включіть його в налаштуваннях системи." -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "Домашні улюбленці" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "Зображення, призначені для дорослих." -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "Закріпити" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "Закріпити на головній" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "Закріплені стрічки" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "" @@ -3530,6 +3843,11 @@ msgstr "" msgid "Play {0}" msgstr "Відтворити {0}" +#: src/screens/Messages/Settings.tsx:97 +#: src/screens/Messages/Settings.tsx:104 +#~ msgid "Play notification sounds" +#~ msgstr "" + #: src/view/com/util/post-embeds/GifEmbed.tsx:35 msgid "Play or pause the GIF" msgstr "" @@ -3543,78 +3861,83 @@ msgstr "Відтворити відео" msgid "Plays the GIF" msgstr "Відтворює GIF" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "Будь ласка, оберіть псевдонім." -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "Будь ласка, оберіть ваш пароль." -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "Будь ласка, завершіть перевірку Captcha." -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "Будь ласка, підтвердіть вашу електронну адресу, перш ніж змінити її. Це тимчасова вимога під час додавання інструментів оновлення електронної адреси, незабаром її видалять." -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "Будь ласка, введіть ім'я для пароля застосунку. Пробіли і пропуски не допускаються." -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "Будь ласка, введіть унікальну назву для цього паролю або використовуйте нашу випадково згенеровану." -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "Будь ласка, введіть допустиме слово, тег або фразу для ігнорування" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "Будь ласка, введіть адресу ел. пошти." -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "Будь ласка, також введіть ваш пароль:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "Будь ласка, поясніть, чому ви вважаєте, що ця позначка була помилково додана до {0}" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "" + #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "Підтвердьте свою адресу електронної пошти" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "Будь ласка, зачекайте доки завершиться створення попереднього перегляду для посилання" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "Політика" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "Порнографія" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "Запостити" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "Пост" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "Пост від {0}" @@ -3628,7 +3951,7 @@ msgstr "Пост від @{0}" msgid "Post deleted" msgstr "Пост видалено" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "Пост приховано" @@ -3650,8 +3973,8 @@ msgstr "Мова посту" msgid "Post Languages" msgstr "Мови посту" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "Пост не знайдено" @@ -3663,11 +3986,11 @@ msgstr "пости" msgid "Posts" msgstr "Пости" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "Пости можуть бути ігноровані за їхнім текстом, тегами чи за обома." -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "Пости приховано" @@ -3675,21 +3998,25 @@ msgstr "Пости приховано" msgid "Potentially Misleading Link" msgstr "Потенційно оманливе посилання" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "Змінити хостинг-провайдера" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "Натисніть, щоб повторити спробу" #: src/screens/Messages/Conversation/MessagesList.tsx:47 #: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" +#~ msgid "Press to Retry" +#~ msgstr "" #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" @@ -3703,7 +4030,7 @@ msgstr "Основна мова" msgid "Prioritize Your Follows" msgstr "Пріоритезувати ваші підписки" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "Конфіденційність" @@ -3711,25 +4038,29 @@ msgstr "Конфіденційність" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "Політика конфіденційності" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "Обробка..." -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "профіль" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "Профіль" @@ -3737,11 +4068,11 @@ msgstr "Профіль" msgid "Profile updated" msgstr "Профіль оновлено" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "Захистіть свій обліковий запис, підтвердивши свою електронну адресу." -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "Публічний" @@ -3753,11 +4084,11 @@ msgstr "Публічні, поширювані списки користувач msgid "Public, shareable lists which can drive feeds." msgstr "Публічні, поширювані списки для створення стрічок." -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "Опублікувати пост" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "Опублікувати відповідь" @@ -3783,6 +4114,14 @@ msgstr "У випадковому порядку" msgid "Ratios" msgstr "Співвідношення сторін" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "" + +#: src/components/dms/MessageReportDialog.tsx:149 +#~ msgid "Reason: {0}" +#~ msgstr "" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "Останні запити" @@ -3795,12 +4134,20 @@ msgstr "Останні запити" #~ msgid "Recommended Users" #~ msgstr "Рекомендовані користувачі" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "Видалити" @@ -3808,7 +4155,7 @@ msgstr "Видалити" msgid "Remove account" msgstr "Видалити обліковий запис" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "Видалити аватар" @@ -3816,22 +4163,25 @@ msgstr "Видалити аватар" msgid "Remove Banner" msgstr "Видалити банер" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "Видалити стрічку" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "Видалити стрічку?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "Вилучити з моїх стрічок" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "Видалити з моїх стрічок?" @@ -3843,7 +4193,7 @@ msgstr "Вилучити зображення" msgid "Remove image preview" msgstr "Вилучити попередній перегляд зображення" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "Вилучити ігноровані слова з вашого списку" @@ -3855,7 +4205,7 @@ msgstr "" msgid "Remove repost" msgstr "Видалити репост" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" msgstr "Вилучити цю стрічку зі збережених стрічок" @@ -3864,11 +4214,13 @@ msgstr "Вилучити цю стрічку зі збережених стрі msgid "Removed from list" msgstr "Вилучено зі списку" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" msgstr "Вилучено з моїх стрічок" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" msgstr "Видалено з моїх стрічок" @@ -3880,6 +4232,11 @@ msgstr "Видаляє мініатюру за замовчуванням з {0} msgid "Removes quoted post" msgstr "" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "Відповіді" @@ -3888,12 +4245,12 @@ msgstr "Відповіді" msgid "Replies to this thread are disabled" msgstr "Відповіді до цього посту вимкнено" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "Відповісти" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "Які відповіді показувати" @@ -3904,39 +4261,47 @@ msgstr "Які відповіді показувати" #~ msgstr "У відповідь <0/>" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" msgstr "" #: src/components/dms/ConvoMenu.tsx:146 #: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +#~ msgid "Report account" +#~ msgstr "" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "Поскаржитись на обліковий запис" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "Діалогове вікно для скарг" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "Поскаржитись на стрічку" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "Поскаржитись на список" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" msgstr "" @@ -3945,30 +4310,36 @@ msgstr "" msgid "Report post" msgstr "Поскаржитись на пост" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "Повідомити про цей вміст" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "Повідомити про цю стрічку" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "Поскаржитись на цей список" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "Поскаржитись на цей пост" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "Поскаржитись на цього користувача" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "Репост" @@ -3986,7 +4357,7 @@ msgstr "Репостити або цитувати" msgid "Reposted By" msgstr "Зробив(-ла) репост" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "{0} зробив(-ла) репост" @@ -3994,7 +4365,7 @@ msgstr "{0} зробив(-ла) репост" #~ msgid "Reposted by <0/>" #~ msgstr "" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "Зроблено репост від <0><1/>" @@ -4002,12 +4373,12 @@ msgstr "Зроблено репост від <0><1/>" msgid "reposted your post" msgstr "зробив(-ла) репост вашого допису" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "Репости цього поста" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "Змінити" @@ -4020,7 +4391,7 @@ msgstr "Надіслати запит на код" msgid "Require alt text before posting" msgstr "Вимагати опис зображень перед публікацією" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "" @@ -4028,8 +4399,8 @@ msgstr "" msgid "Required for this provider" msgstr "Вимагається цим хостинг-провайдером" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "" @@ -4041,8 +4412,8 @@ msgstr "Код підтвердження" msgid "Reset Code" msgstr "Код скидання" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "" @@ -4050,20 +4421,20 @@ msgstr "" msgid "Reset password" msgstr "Скинути пароль" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "Повторити спробу" @@ -4072,13 +4443,14 @@ msgstr "Повторити спробу" msgid "Retries the last action, which errored out" msgstr "Повторити останню дію, яка спричинила помилку" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 @@ -4086,11 +4458,11 @@ msgid "Retry" msgstr "Повторити спробу" #: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" +#~ msgid "Retry." +#~ msgstr "" #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "Повернутися до попередньої сторінки" @@ -4099,26 +4471,26 @@ msgid "Returns to home page" msgstr "Повертає до головної сторінки" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "Повертає до попередньої сторінки" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "Зберегти" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "Зберегти" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "Зберегти опис" @@ -4130,7 +4502,7 @@ msgstr "Зберегти день народження" msgid "Save Changes" msgstr "Зберегти зміни" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "Зберегти новий псевдонім" @@ -4138,16 +4510,16 @@ msgstr "Зберегти новий псевдонім" msgid "Save image crop" msgstr "Обрізати зображення" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "Зберегти до моїх стрічок" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" msgstr "Збережені стрічки" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" msgstr "" @@ -4155,7 +4527,8 @@ msgstr "" #~ msgid "Saved to your camera roll." #~ msgstr "Збережено до галереї." -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "Збережено до ваших стрічок" @@ -4163,7 +4536,7 @@ msgstr "Збережено до ваших стрічок" msgid "Saves any changes to your profile" msgstr "Зберігає зміни вашого профілю" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "Зберігає зміню псевдоніму на {handle}" @@ -4171,16 +4544,20 @@ msgstr "Зберігає зміню псевдоніму на {handle}" msgid "Saves image crop settings" msgstr "Зберігає налаштування обрізання зображення" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "Наука" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "Прогорнути вгору" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4188,12 +4565,12 @@ msgstr "Прогорнути вгору" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "Пошук" @@ -4214,8 +4591,8 @@ msgid "Search for all posts with tag {displayTag}" msgstr "Пошук усіх повідомлень з тегом {displayTag}" #: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" +#~ msgid "Search for someone to start a conversation with." +#~ msgstr "" #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 @@ -4227,7 +4604,8 @@ msgstr "Пошук користувачів" msgid "Search GIFs" msgstr "" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" msgstr "" @@ -4235,7 +4613,7 @@ msgstr "" msgid "Search Tenor" msgstr "" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "Потрібен код підтвердження" @@ -4256,11 +4634,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "Переглянути пости цього користувача з <0>{displayTag}" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "Переглянути профіль" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "Перегляньте цей посібник" @@ -4272,10 +4650,22 @@ msgstr "Перегляньте цей посібник" msgid "Select {item}" msgstr "Обрати {item}" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "Обрати обліковий запис" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "Вибрати існуючий обліковий запис" @@ -4284,7 +4674,7 @@ msgstr "Вибрати існуючий обліковий запис" msgid "Select GIF" msgstr "" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "" @@ -4304,7 +4694,11 @@ msgstr "Обрати варіант {i} із {numItems}" msgid "Select some accounts below to follow" msgstr "Оберіть деякі облікові записи, щоб підписатися" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" msgstr "Оберіть сервіс модерації для скарги" @@ -4332,7 +4726,7 @@ msgstr "Оберіть мову застосунку для відображен msgid "Select your date of birth" msgstr "Оберіть дату народження" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "Виберіть ваші інтереси із нижченаведених варіантів" @@ -4348,32 +4742,38 @@ msgstr "Оберіть ваші основні алгоритмічні стрі msgid "Select your secondary algorithmic feeds" msgstr "Оберіть ваші другорядні алгоритмічні стрічки" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "Надіслати лист із кодом підтвердження" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "Надіслати ел. листа" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "Надіслати ел. лист" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "Надіслати відгук" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" msgstr "" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "Поскаржитись" @@ -4381,12 +4781,12 @@ msgstr "Поскаржитись" msgid "Send report to {0}" msgstr "Надіслати скаргу до {0}" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "Надсилає електронний лист з кодом підтвердження видалення облікового запису" @@ -4402,15 +4802,15 @@ msgstr "Додати дату народження" msgid "Set new password" msgstr "Зміна пароля" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "Вимкніть цей параметр, щоб приховати всі цитовані пости у вашій стрічці. Не впливає на репости без цитування." -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "Вимкніть цей параметр, щоб приховати всі відповіді у вашій стрічці." -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "Вимкніть цей параметр, щоб приховати всі репости у вашій стрічці." @@ -4418,7 +4818,7 @@ msgstr "Вимкніть цей параметр, щоб приховати вс msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "Увімкніть це налаштування, щоб показувати відповіді у вигляді гілок. Це експериментальна функція." -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." msgstr "Увімкніть це налаштування, щоб іноді бачити пости зі збережених стрічок у вашій домашній стрічці. Це експериментальна функція." @@ -4426,27 +4826,27 @@ msgstr "Увімкніть це налаштування, щоб іноді ба msgid "Set up your account" msgstr "Налаштуйте ваш обліковий запис" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "Встановлює псевдонім Bluesky" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "Встановлює темну тему" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "Встановлює світлу тему" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "Встановлює тему відповідно до системних налаштувань" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "Встановлює чорний колір для темної теми" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "Встановлює тьмяний колір для темної теми" @@ -4467,15 +4867,14 @@ msgid "Sets image aspect ratio to wide" msgstr "Встановлює співвідношення сторін зображення до ширини" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "Налаштування" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "Сексуальна активність або еротична оголеність." @@ -4483,7 +4882,7 @@ msgstr "Сексуальна активність або еротична ого msgid "Sexually Suggestive" msgstr "З сексуальним підтекстом" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "Поширити" @@ -4493,18 +4892,26 @@ msgstr "Поширити" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "Поширити" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "Все одно поширити" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "Поширити стрічку" @@ -4513,15 +4920,19 @@ msgstr "Поширити стрічку" msgid "Share Link" msgstr "Поділитись посиланням" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "Поширює посилання" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "Показувати" @@ -4547,10 +4958,14 @@ msgstr "Показати значок" msgid "Show badge and filter from feeds" msgstr "Показати значок і фільтри зі стрічки" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "Показати підписки, схожі на {0}" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" @@ -4558,7 +4973,7 @@ msgstr "" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "Показати більше" @@ -4567,11 +4982,15 @@ msgstr "Показати більше" msgid "Show more like this" msgstr "" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" msgstr "Показувати пости зі збережених стрічок" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "Показувати цитати" @@ -4587,7 +5006,7 @@ msgstr "Показувати цитування у стрічці \"Following\"" msgid "Show re-posts in Following feed" msgstr "Показувати репости у стрічці \"Following\"" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "Показувати відповіді" @@ -4607,7 +5026,7 @@ msgstr "Показувати відповіді у стрічці \"Following\"" #~ msgid "Show replies with at least {value} {0}" #~ msgstr "Показувати відповіді від {value} {0}" -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "Показувати репости" @@ -4616,7 +5035,7 @@ msgid "Show reposts in Following" msgstr "Показувати репости у стрічці \"Following\"" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "Показати вміст" @@ -4640,17 +5059,17 @@ msgstr "Показує дописи з {0} у вашій стрічці" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4673,17 +5092,17 @@ msgstr "Увійдіть або створіть обліковий запис, msgid "Sign into Bluesky or create a new account" msgstr "Увійдіть у Bluesky або створіть новий обліковий запис" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "Вийти" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -4699,7 +5118,7 @@ msgstr "Зареєструйтеся або увійдіть, щоб приєд msgid "Sign-in Required" msgstr "Необхідно увійти для перегляду" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "Ви увійшли як" @@ -4708,27 +5127,35 @@ msgstr "Ви увійшли як" msgid "Signed in as @{0}" msgstr "Ви увійшли як @{0}" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "Пропустити" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "Пропустити цей процес" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "Розробка П/З" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." msgstr "Щось пішло не так. Будь ласка, спробуйте ще раз." -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "Даруйте! Ваш сеанс вичерпався. Будь ласка, увійдіть знову." @@ -4740,19 +5167,24 @@ msgstr "Сортувати відповіді" msgid "Sort replies to the same post by:" msgstr "Оберіть, як сортувати відповіді до постів:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "Джерело:" +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +#~ msgid "Source:" +#~ msgstr "Джерело:" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "" + +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "Спам" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "Спам; надмірні згадки або відповіді" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "Спорт" @@ -4760,15 +5192,23 @@ msgstr "Спорт" msgid "Square" msgstr "Квадратне" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "" + +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "" + #: src/view/screens/Settings/index.tsx:862 #~ msgid "Status page" #~ msgstr "Сторінка стану" -#: src/view/screens/Settings/index.tsx:896 +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" msgstr "" @@ -4780,29 +5220,31 @@ msgstr "" msgid "Step {0} of {1}" msgstr "" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "Сховище очищено, тепер вам треба перезапустити застосунок." #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "Надіслати" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "Підписатися" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "Підпишіться на @{0}, щоб використовувати ці мітки:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "Підписатися на маркувальника" @@ -4811,11 +5253,11 @@ msgstr "Підписатися на маркувальника" msgid "Subscribe to the {0} feed" msgstr "Підписатися на {0} стрічку" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "Підписатися на цього маркувальника" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "Підписатися на цей список" @@ -4827,7 +5269,7 @@ msgstr "Пропоновані підписки" msgid "Suggested for you" msgstr "Пропозиції для вас" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "Непристойний" @@ -4842,23 +5284,23 @@ msgstr "Підтримка" msgid "Switch Account" msgstr "Перемикнути обліковий запис" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "Переключитися на {0}" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "Переключає обліковий запис" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "Системне" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "Системний журнал" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "тег" @@ -4874,41 +5316,47 @@ msgstr "Високе" msgid "Tap to view fully" msgstr "Торкніться, щоб переглянути повністю" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "Технології" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "Умови" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "Умови Використання" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "Використані терміни порушують стандарти спільноти" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "текст" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "Поле вводу тексту" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "Дякуємо. Вашу скаргу було надіслано." -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "Що містить наступне:" @@ -4916,7 +5364,7 @@ msgstr "Що містить наступне:" msgid "That handle is already taken." msgstr "Цей псевдонім вже зайнятий." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "Обліковий запис зможе взаємодіяти з вами після розблокування." @@ -4933,11 +5381,15 @@ msgstr "Правила Спільноти переміщено до <0/>" msgid "The Copyright Policy has been moved to <0/>" msgstr "Політику захисту авторського права переміщено до <0/>" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "Наступні мітки були додано до вашого облікового запису." -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "Наступні мітки були додано до вашого контенту." @@ -4945,8 +5397,8 @@ msgstr "Наступні мітки були додано до вашого ко msgid "The following steps will help customize your Bluesky experience." msgstr "Наступні кроки допоможуть налаштувати Ваш досвід використання Bluesky." -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "Можливо цей пост було видалено." @@ -4966,37 +5418,40 @@ msgstr "Умови Використання перенесено до" msgid "There are many feeds to try:" msgstr "Також є багато інших стрічок, щоб спробувати:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "Виникла проблема з доступом до сервера. Перевірте підключення до Інтернету і повторіть спробу знову." -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "Виникла проблема при видаленні цієї стрічки. Перевірте підключення до Інтернету і повторіть спробу." -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." msgstr "Виникла проблема з оновленням ваших стрічок. Перевірте підключення до Інтернету і повторіть спробу." -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "" #: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" +#~ msgid "There was an issue connecting to the chat." +#~ msgstr "" -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "При з'єднанні з сервером виникла проблема" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "При з'єднанні з вашим сервером виникла проблема" @@ -5004,7 +5459,7 @@ msgstr "При з'єднанні з вашим сервером виникла msgid "There was an issue fetching notifications. Tap here to try again." msgstr "Виникла проблема з завантаженням сповіщень. Натисніть тут, щоб повторити спробу." -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "Виникла проблема з завантаженням постів. Натисніть тут, щоб повторити спробу." @@ -5017,7 +5472,8 @@ msgstr "Виникла проблема з завантаженням списк msgid "There was an issue fetching your lists. Tap here to try again." msgstr "Виникла проблема з завантаженням ваших списків. Натисніть тут, щоб повторити спробу." -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "Виникла проблема з надсиланням вашої скарги. Будь ласка, перевірте підключення до Інтернету." @@ -5025,32 +5481,32 @@ msgstr "Виникла проблема з надсиланням вашої с msgid "There was an issue syncing your preferences with the server" msgstr "Виникла проблема під час синхронізації ваших налаштувань із сервером" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "Виникла проблема з завантаженням ваших паролів для застосунків" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "Виникла проблема! {0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "Виникла проблема. Перевірте підключення до Інтернету і повторіть спробу." -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "У застосунку сталася неочікувана проблема. Будь ласка, повідомте нас, якщо ви отримали це повідомлення!" @@ -5071,14 +5527,26 @@ msgstr "Цей {screenDescription} був позначений:" msgid "This account has requested that users sign in to view their profile." msgstr "Цей користувач вказав, що не хоче, аби його профіль бачили відвідувачі без облікового запису." -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "Це звернення буде надіслано до <0>{0}." -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "" + +#: src/screens/Messages/Conversation/MessageListError.tsx:26 +#~ msgid "This chat was disconnected due to a network error." +#~ msgstr "" + #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." msgstr "Цей контент був прихований модераторами." @@ -5096,21 +5564,21 @@ msgstr "Цей вміст розміщено {0}. Увімкнути зовні msgid "This content is not available because one of the users involved has blocked the other." msgstr "Цей контент недоступний, оскільки один із залучених користувачів заблокував іншого." -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "Цей вміст не доступний для перегляду без облікового запису Bluesky." -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "Ця функція знаходиться в беті. Ви можете дізнатися більше про експорт репозиторіїв у <0>цьому блозі.." -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "Ця стрічка зараз отримує забагато запитів і тимчасово недоступна. Спробуйте ще раз пізніше." #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" msgstr "Стрічка порожня!" @@ -5118,11 +5586,15 @@ msgstr "Стрічка порожня!" msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "Ця стрічка порожня! Можливо, вам треба підписатися на більшу кількість користувачів або змінити ваші налаштування мови." +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "" + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "Ця інформація не розкривається іншим користувачам." -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "Це важливо для випадку, якщо вам коли-небудь потрібно буде змінити адресу електронної пошти або відновити пароль." @@ -5138,7 +5610,15 @@ msgstr "" msgid "This label was applied by the author." msgstr "" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:165 +#~ msgid "This label was applied by you" +#~ msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "Цей маркувальник ще не заявив, які мітки він публікує, і може бути неактивним." @@ -5146,7 +5626,7 @@ msgstr "Цей маркувальник ще не заявив, які мітк msgid "This link is taking you to the following website:" msgstr "Це посилання веде на сайт:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "Список порожній!" @@ -5154,11 +5634,11 @@ msgstr "Список порожній!" msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." msgstr "Даний сервіс модерації недоступний. Перегляньте деталі нижче. Якщо проблема не зникне, зв'яжіться з нами." -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "Це ім'я вже використовується" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "Цей пост було видалено." @@ -5179,7 +5659,7 @@ msgstr "Цей профіль видно лише користувачам, як msgid "This service has not provided terms of service or a privacy policy." msgstr "Цей сервіс не надав умови обслуговування або політики конфіденційності." -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "Це має створити обліковий запис домену:" @@ -5187,6 +5667,10 @@ msgstr "Це має створити обліковий запис домену: msgid "This user doesn't have any followers." msgstr "Цей користувач ще не має жодного підписника." +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5212,16 +5696,16 @@ msgstr "Цей користувач не підписаний ні на кого #~ msgid "This warning is only available for posts with media attached." #~ msgstr "Це попередження доступне тільки для записів з прикріпленими медіа-файлами." -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "Це видалить {0} зі ваших ігнорованих слів. Ви завжди можете додати його назад." -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "Налаштування гілок" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "Налаштування гілок" @@ -5233,15 +5717,19 @@ msgstr "Режим гілок" msgid "Threads Preferences" msgstr "Налаштування обговорень" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "" +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "Кому ви хотіли б відправити цю скаргу?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "Перемикання між опціями ігнорування слів." @@ -5274,60 +5762,69 @@ msgctxt "action" msgid "Try again" msgstr "Спробувати ще раз" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" msgstr "" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "Тип:" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "Розблокувати список" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "Перестати ігнорувати" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "Не вдалося зв'язатися з вашим хостинг-провайдером. Перевірте ваше підключення до Інтернету." -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "Розблокувати" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "Розблокувати" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "Розблокувати обліковий запис" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "Розблокувати обліковий запис?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "Скасувати репост" @@ -5341,7 +5838,7 @@ msgstr "Відписатись" msgid "Unfollow" msgstr "Не стежити" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "Відписатися від {0}" @@ -5354,12 +5851,12 @@ msgstr "Відписатися від облікового запису" #~ msgid "Unlike" #~ msgstr "Прибрати вподобання" -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "Видалити вподобання цієї стрічки" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "Не ігнорувати" @@ -5376,37 +5873,50 @@ msgstr "Перестати ігнорувати" msgid "Unmute all {displayTag} posts" msgstr "Перестати ігнорувати всі пости {displayTag}" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" msgstr "" +#: src/components/dms/ConvoMenu.tsx:140 +#~ msgid "Unmute notifications" +#~ msgstr "" + #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "Перестати ігнорувати" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "Відкріпити" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "Відкріпити від головної сторінки" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "Відкріпити список модерації" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "Відписатися" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "Відписатися від цього маркувальника" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:85 +#~ msgid "Unwanted sexual content" +#~ msgstr "" + +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "Небажаний сексуальний вміст" @@ -5414,7 +5924,7 @@ msgstr "Небажаний сексуальний вміст" msgid "Update {displayName} in Lists" msgstr "Змінити належність {displayName} до списків" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "Оновити до {handle}" @@ -5422,42 +5932,46 @@ msgstr "Оновити до {handle}" msgid "Updating..." msgstr "Оновлення..." -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "Завантажити текстовий файл до:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "Завантажити з камери" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "Завантажити з файлів" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "Завантажити з бібліотеки" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "Використовувати файл на вашому сервері" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "Використовуйте паролі для застосунків для входу в інших застосунках для Bluesky. Це дозволить використовувати їх, не надаючи повний доступ до вашого облікового запису і вашого основного пароля." -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "Використовувати bsky.social як хостинг-провайдер" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "Використовувати провайдера за замовчуванням" @@ -5471,11 +5985,15 @@ msgstr "У вбудованому браузері" msgid "Use my default browser" msgstr "У звичайному браузері" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "Використати панель DNS" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "Скористайтесь ним для входу в інші застосунки." @@ -5492,6 +6010,10 @@ msgstr "Користувача заблоковано" msgid "User Blocked by \"{0}\"" msgstr "Користувача заблоковано списком \"{0}\"" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "Користувача заблоковано списком" @@ -5509,13 +6031,13 @@ msgstr "Користувач заблокував вас" msgid "User list by {0}" msgstr "Список користувачів від {0}" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "Список користувачів від <0/>" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "Список користувачів від вас" @@ -5531,11 +6053,11 @@ msgstr "Список користувачів оновлено" msgid "User Lists" msgstr "Списки користувачів" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "Ім'я користувача або електронна адреса" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "Користувачі" @@ -5543,6 +6065,13 @@ msgstr "Користувачі" msgid "users followed by <0/>" msgstr "користувачі, на яких підписані <0/>" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "Користувачі в «{0}»" @@ -5551,7 +6080,7 @@ msgstr "Користувачі в «{0}»" msgid "Users that have liked this content or profile" msgstr "Користувачі, які вподобали цей контент і профіль" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "Значення:" @@ -5559,32 +6088,32 @@ msgstr "Значення:" #~ msgid "Verify {0}" #~ msgstr "Верифікувати {0}" -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" msgstr "" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "Підтвердити електронну адресу" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "Підтвердити мою електронну адресу" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "Підтвердити мою електронну адресу" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "Підтвердити нову адресу електронної пошти" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" msgstr "" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "Підтвердьте адресу вашої електронної пошти" @@ -5592,15 +6121,15 @@ msgstr "Підтвердьте адресу вашої електронної п #~ msgid "Version {0}" #~ msgstr "Версія {0}" -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" msgstr "" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "Відеоігри" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "Переглянути аватар {0}" @@ -5608,25 +6137,25 @@ msgstr "Переглянути аватар {0}" msgid "View debug entry" msgstr "Переглянути запис для налагодження" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "Переглянути деталі" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "Переглянути деталі як надіслати скаргу про порушення авторських прав" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "Переглянути обговорення" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "Переглянути інформацію про мітки" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "Переглянути профіль" @@ -5638,7 +6167,7 @@ msgstr "Переглянути аватар" msgid "View the labeling service provided by @{0}" msgstr "Переглянути послуги маркування, який надає @{0}" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "Переглянути користувачів, які вподобали цю стрічку" @@ -5666,11 +6195,15 @@ msgstr "Попереджувати про вміст і фільтрувати msgid "We couldn't find any results for that hashtag." msgstr "Ми не змогли знайти жодних результатів для цього хештегу." +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "Ми оцінюємо {estimatedTime} до готовності вашого облікового запису." -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "Ми сподіваємося, що ви проведете чудово свій час. Пам'ятайте, Bluesky — це:" @@ -5678,7 +6211,7 @@ msgstr "Ми сподіваємося, що ви проведете чудово msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "У нас закінчилися дописи у ваших підписках. Ось останні пости зі стрічки <0/>." -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "Ми рекомендуємо уникати загальних слів, що зʼявляються у багатьох постах, оскільки це може призвести до того, що жодного поста не буде показано." @@ -5694,7 +6227,7 @@ msgstr "Не вдалося завантажити ваші налаштуван msgid "We were unable to load your configured labelers at this time." msgstr "Наразі ми не змогли завантажити список ваших маркувальників." -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "Ми не змогли під'єднатися. Будь ласка, спробуйте ще раз, щоб продовжити налаштування свого облікового запису. Якщо помилка повторюється, то ви можете пропустити цей процес." @@ -5702,10 +6235,14 @@ msgstr "Ми не змогли під'єднатися. Будь ласка, с msgid "We will let you know when your account is ready." msgstr "Ми повідомимо вас, коли ваш обліковий запис буде готовий." -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "Ми скористаємося цим, щоб підлаштувати Ваш досвід." +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "Ми дуже раді, що ви приєдналися!" @@ -5714,7 +6251,7 @@ msgstr "Ми дуже раді, що ви приєдналися!" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "Дуже прикро, але нам не вдалося знайти цей список. Якщо це продовжується, будь ласка, зв'яжіться з його автором: @{handleOrDid}." -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "На жаль, ми не змогли зараз завантажити ваші ігноровані слова. Будь ласка, спробуйте ще раз." @@ -5722,12 +6259,12 @@ msgstr "На жаль, ми не змогли зараз завантажити msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "Даруйте, нам не вдалося виконати пошук за вашим запитом. Будь ласка, спробуйте ще раз через кілька хвилин." -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "Нам дуже прикро! Ми не можемо знайти сторінку, яку ви шукали." -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "На жаль, ви можете підписатися тільки на 10 маркувальників, і ви вже досягли цього ліміту." @@ -5735,13 +6272,13 @@ msgstr "На жаль, ви можете підписатися тільки н #~ msgid "Welcome to <0>Bluesky" #~ msgstr "Ласкаво просимо до <0>Bluesky" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "Чим ви цікавитесь?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "Як справи?" @@ -5753,28 +6290,41 @@ msgstr "Які мови використані в цьому пості?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "Якими мовами ви хочете бачити пости у алгоритмічних стрічках?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "Хто може відповідати" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "Чому слід переглянути цей контент?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "Чому слід переглянути цю стрічку?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "Чому слід переглянути цей список?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "Чому слід переглянути цей пост?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "Чому слід переглянути цього користувача?" @@ -5782,35 +6332,35 @@ msgstr "Чому слід переглянути цього користувач msgid "Wide" msgstr "Широке" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" msgstr "" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "Написати пост" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "Написати відповідь" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "Письменники" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "Так" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" msgstr "" @@ -5831,6 +6381,14 @@ msgstr "Також ви можете знайти кастомні стрічк msgid "You can change these settings later." msgstr "Ви можете змінити ці налаштування пізніше." +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -5844,22 +6402,26 @@ msgstr "У вас немає жодного підписника." msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "У вас ще немає кодів запрошення! З часом ми надамо вам декілька." -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "У вас немає закріплених стрічок." #: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "У вас немає збережених стрічок!" +#~ msgid "You don't have any saved feeds!" +#~ msgstr "У вас немає збережених стрічок!" -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." msgstr "У вас немає збережених стрічок." -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "Ви заблокували автора або автор заблокував вас." +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -5890,6 +6452,10 @@ msgstr "Ви увімкнули ігнорування цього обліков msgid "You have muted this user" msgstr "Ви увімкнули ігнорування цього користувача" +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." msgstr "У вас немає стрічок." @@ -5899,15 +6465,15 @@ msgstr "У вас немає стрічок." msgid "You have no lists." msgstr "У вас немає списків." -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" +#: src/screens/Messages/List/index.tsx:200 +#~ msgid "You have no messages yet. Start a conversation with someone!" +#~ msgstr "" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." msgstr "Ви ще не заблокували жодного облікового запису. Щоб заблокувати когось, перейдіть до їх профілю та виберіть опцію \"Заблокувати\" у меню їх облікового запису." -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "Ви ще не створили жодного пароля для застосунків. Ви можете створити новий пароль, натиснувши кнопку нижче." @@ -5915,11 +6481,19 @@ msgstr "Ви ще не створили жодного пароля для за msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." msgstr "Ви ще не ігноруєте жодного облікового запису. Щоб увімкнути ігнорування когось, перейдіть до їх профілю та виберіть опцію \"Ігнорувати\" у меню їх облікового запису." -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "У вас ще немає ігнорованих слів чи тегів" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "Ви можете оскаржувати мітки, якщо вважаєте, що вони були розміщені помилково." @@ -5931,7 +6505,7 @@ msgstr "Вам має виповнитись 13 років для того, що msgid "You must be 18 years or older to enable adult content" msgstr "Ви повинні бути старше 18 років, щоб дозволити перегляд контенту для дорослих" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "Ви повинні обрати хоча б одного маркувальника для скарги" @@ -5947,7 +6521,7 @@ msgstr "Ви будете отримувати сповіщення з цьог msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "Ви отримаєте електронний лист із кодом підтвердження. Введіть цей код тут, а потім введіть новий пароль." -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" msgstr "" @@ -5961,7 +6535,7 @@ msgstr "Все під вашим контролем" msgid "You're in line" msgstr "Ви в черзі" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "Все готово!" @@ -5978,11 +6552,11 @@ msgstr "Ваша домашня стрічка закінчилась! Підп msgid "Your account" msgstr "Ваш акаунт" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "Ваш обліковий запис видалено" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "Дані з вашого облікового запису, які містять усі загальнодоступні записи, можна завантажити як \"CAR\" файл. Цей файл не містить медіафайлів, таких як зображення, або особисті дані, які необхідно отримати окремо." @@ -5990,6 +6564,10 @@ msgstr "Дані з вашого облікового запису, які мі msgid "Your birth date" msgstr "Ваша дата народження" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "Ваш вибір буде запам'ятовано, ви у будь-який момент зможете змінити його в налаштуваннях." @@ -5999,16 +6577,16 @@ msgid "Your default feed is \"Following\"" msgstr "Ваша стрічка за замовчуванням \"Following\"" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "Не вдалося розпізнати адресу електронної пошти." -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "Вашу адресу електронної пошти було змінено, але ще не підтверджено. Для підтвердження, будь ласка, перевірте вашу поштову скриньку за новою адресою." -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "Ваша електронна пошта ще не підтверджена. Це важливий крок для безпеки вашого облікового запису, який ми рекомендуємо вам зробити." @@ -6020,11 +6598,11 @@ msgstr "Ваша домашня стрічка порожня! Підпишіт msgid "Your full handle will be" msgstr "Ваш повний псевдонім буде" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "Вашим повним псевдонімом буде <0>@{0}" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "Ваші ігноровані слова" @@ -6032,22 +6610,26 @@ msgstr "Ваші ігноровані слова" msgid "Your password has been changed successfully!" msgstr "Ваш пароль успішно змінено!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "Пост опубліковано" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "Ваші повідомлення, вподобання і блоки є публічними. Ігнорування - приватні." -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "Ваш профіль" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "Відповідь опубліковано" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "Ваш псевдонім" diff --git a/src/locale/locales/zh-CN/messages.po b/src/locale/locales/zh-CN/messages.po index 77dfdde445..95f5043da1 100644 --- a/src/locale/locales/zh-CN/messages.po +++ b/src/locale/locales/zh-CN/messages.po @@ -1,153 +1,132 @@ msgid "" msgstr "" -"POT-Creation-Date: 2024-04-26 10:15+0800\n" +"POT-Creation-Date: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: @lingui/cli\n" "Language: zh_CN\n" -"Project-Id-Version: \n" -"Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: \n" +"Project-Id-Version: zh-CN for bluesky-social-app\n" +"Report-Msgid-Bugs-To: Frudrax Cheng \n" +"PO-Revision-Date: 2024-05-24 10:26+0800\n" "Last-Translator: Frudrax Cheng \n" -"Language-Team: Frudrax Cheng, Simon Chan, U2FsdGVkX1, Mikan Harada, IceCodeNew\n" +"Language-Team: Frudrax Cheng (auroursa), Simon Chan (RitsukiP), U2FsdGVkX1, Mikan Harada (mitian233), IceCodeNew\n" "Plural-Forms: \n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(没有邮件)" #: src/view/com/notifications/FeedItem.tsx:239 msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" -msgstr "" +msgstr "{0, plural, one {其他 {formattedCount} 人} other {其他 {formattedCount} 人}}" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" +msgstr "{0, plural, one {# 个标签已标记到这个账户} other {# 个标签已标记到这个账户}}" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" +msgstr "{0, plural, one {# 个标签已标记到此内容} other {# 个标签已标记到此内容}}" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" -msgstr "" +msgstr "{0, plural, one {# 条转发} other {# 条转发}}" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" -msgstr "" +msgstr "{0, plural, one {关注者} other {关注者}}" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" -msgstr "" +msgstr "{0, plural, one {正在关注} other {正在关注}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:245 msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" -msgstr "" +msgstr "{0, plural, one {喜欢 (# 个喜欢)} other {喜欢 (# 个喜欢)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" -msgstr "" +msgstr "{0, plural, one {喜欢} other {喜欢}}" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{0, plural, one {# 位用户喜欢} other {# 位用户喜欢}}" #: src/screens/Profile/Header/Metrics.tsx:59 msgid "{0, plural, one {post} other {posts}}" -msgstr "" +msgstr "{0, plural, one {帖子} other {帖子}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:204 msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" -msgstr "" +msgstr "{0, plural, one {回复 (# 个回复)} other {回复 (# 个回复)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" -msgstr "" +msgstr "{0, plural, one {转发} other {转发}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:241 msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" -msgstr "" +msgstr "{0, plural, one {取消喜欢 (# 个喜欢)} other {取消喜欢 (# 个喜欢)}}" #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{count, plural, one {# 位用户喜欢} other {# 位用户喜欢}}" #: src/screens/Deactivated.tsx:207 msgid "{estimatedTimeHrs, plural, one {hour} other {hours}}" -msgstr "" +msgstr "{estimatedTimeHrs, plural, one {时} other {时}}" #: src/screens/Deactivated.tsx:213 msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" -msgstr "" +msgstr "{estimatedTimeMins, plural, one {分} other {分}}" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} 个正在关注" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 -msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "无法给 {handle} 发送私信" -#: src/view/shell/Drawer.tsx:464 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 +msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" +msgstr "{likeCount, plural, one {# 位用户喜欢} other {# 位用户喜欢}}" + +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} 个未读" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" -msgstr "" +msgstr "{value, plural, =0 {显示所有回复} one {显示至少含有 # 个喜欢数的回复} other {显示至少含有 # 个喜欢数的回复}}" #: src/view/com/threadgate/WhoCanReply.tsx:159 msgid "<0/> members" msgstr "<0/> 个成员" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" -msgstr "" +msgstr "<0>{0} {1, plural, one {关注者} other {关注者}}" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" -msgstr "" +msgstr "<0>{0} {1, plural, one {正在关注} other {正在关注}}" -#: src/view/shell/Drawer.tsx:96 -#~ msgid "<0>{0} following" -#~ msgstr "<0>{0} 个正在关注" - -#: src/components/ProfileHoverCard/index.web.tsx:437 -#~ msgid "<0>{followers} <1>{pluralizedFollowers}" -#~ msgstr "<0>{followers} <1>{pluralizedFollowers}" - -#: src/components/ProfileHoverCard/index.web.tsx:449 -#: src/screens/Profile/Header/Metrics.tsx:45 -#~ msgid "<0>{following} <1>following" -#~ msgstr "<0>{following} <1>个正在关注" - -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:31 -#~ msgid "<0>Choose your<1>Recommended<2>Feeds" -#~ msgstr "<0>选择你<1>推荐的<2>信息流" - -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:38 -#~ msgid "<0>Follow some<1>Recommended<2>Users" -#~ msgstr "<0>关注一些<1>推荐的<2>用户" - -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." -msgstr "" - -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:21 -#~ msgid "<0>Welcome to<1>Bluesky" -#~ msgstr "<0>欢迎来到<1>Bluesky" +msgstr "<0>不适用。 这个警告仅适用于附加媒体内容的帖子。" #: src/screens/Profile/Header/Handle.tsx:43 msgid "⚠Invalid Handle" msgstr "⚠无效的用户识别符" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "两步验证" @@ -161,11 +140,11 @@ msgid "Access profile and other navigation links" msgstr "访问个人资料及其他导航链接" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "无障碍" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "无障碍设置" @@ -174,25 +153,21 @@ msgstr "无障碍设置" msgid "Accessibility Settings" msgstr "无障碍设置" -#: src/components/moderation/LabelsOnMe.tsx:42 -#~ msgid "account" -#~ msgstr "账户" - -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "账户" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "已屏蔽账户" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "已关注账户" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "已隐藏账户" @@ -213,67 +188,72 @@ msgstr "账户选项" msgid "Account removed from quick access" msgstr "已从快速访问中移除账户" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" msgstr "已取消屏蔽账户" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "已取消关注账户" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "已取消隐藏账户" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "添加" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "新增内容警告" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "将用户添加至列表" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "添加账户" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "新增替代文字" -#: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" - -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "新增应用专用密码" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "为配置的设置添加隐藏词汇" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "添加隐藏词和标签" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "添加推荐的资讯源" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "添加默认的资讯源(仅显示你关注的人)" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "将以下 DNS 记录新增到你的域名:" @@ -282,30 +262,26 @@ msgstr "将以下 DNS 记录新增到你的域名:" msgid "Add to Lists" msgstr "添加至列表" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" -msgstr "添加至自定义信息流" - -#: src/view/com/auth/onboarding/RecommendedFeedsItem.tsx:139 -#~ msgid "Added" -#~ msgstr "已添加" +msgstr "添加至自定义资讯源" #: src/view/com/modals/ListAddRemoveUsers.tsx:191 #: src/view/com/modals/UserAddRemoveLists.tsx:144 msgid "Added to list" msgstr "已添加至列表" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" -msgstr "已添加至自定义信息流" +msgstr "已添加至自定义资讯源" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." -msgstr "调整回复中需要具有的喜欢数才会在你的信息流中显示。" +msgstr "调整会在你的资讯源中显示的回复至少需要含有多少喜欢数。" #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "成人内容" @@ -314,13 +290,23 @@ msgid "Adult content is disabled." msgstr "成人内容显示已被禁用。" #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" msgstr "详细设置" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." -msgstr "你保存的所有信息流都集中在一处。" +msgstr "你保存的所有资讯源都集中在一处。" + +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "允许读取你的私信" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "允许以下来源发起新对话" #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 @@ -331,13 +317,13 @@ msgstr "已经有验证码了?" msgid "Already signed in as @{0}" msgstr "已以@{0}身份登录" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -345,30 +331,26 @@ msgstr "替代文字" #: src/view/com/util/post-embeds/GifEmbed.tsx:179 msgid "Alt Text" -msgstr "" +msgstr "替代文字" #: src/view/com/composer/photos/Gallery.tsx:224 msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "为图片新增替代文字,以帮助盲人及视障群体了解图片内容。" -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "一封电子邮件已发送至 {0}。请查阅邮件内容并复制验证码至下方。" -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "一封电子邮件已发送至先前填写的邮箱 {0}。请查阅邮件内容并复制验证码至下方。" -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "发生错误" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" - -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "不在这些选项中的问题" @@ -381,16 +363,16 @@ msgstr "不在这些选项中的问题" msgid "An issue occurred, please try again." msgstr "出现问题,请重试。" -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" -msgstr "" +msgstr "出现未知错误" #: src/view/com/notifications/FeedItem.tsx:236 #: src/view/com/threadgate/WhoCanReply.tsx:180 msgid "and" msgstr "和" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "动物" @@ -398,7 +380,7 @@ msgstr "动物" msgid "Animated GIF" msgstr "GIF 动画" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "反社会行为" @@ -406,70 +388,79 @@ msgstr "反社会行为" msgid "App Language" msgstr "应用语言" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "应用专用密码已删除" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "应用专用密码只能包含字母、数字、空格、破折号及下划线。" -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "应用专用密码必须至少为 4 个字符。" -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "应用专用密码设置" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "应用专用密码" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "申诉" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "申诉 \"{0}\" 标记" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" -msgstr "" +msgstr "申诉已提交" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 -#~ msgid "Appeal submitted." -#~ msgstr "申诉已提交。" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "对此结果提出申诉" -#: src/view/screens/Settings/index.tsx:430 +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "外观" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "使用默认推荐的资讯源" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "你确定要删除这条应用专用密码 \"{name}\" 吗?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." -msgstr "" +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." +msgstr "你确定要删除这条私信吗?此操作仅会在你的对话中删除私信,而不会在其他人的对话中删除。" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." -msgstr "" +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." +msgstr "您确定要离开这个对话吗?此操作仅会在你的私信列表中删除对话,而不会在其他人的私信列表中删除。" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" -msgstr "你确定要从你的信息流中删除 {0} 吗?" +msgstr "你确定要从你的资讯源中删除 {0} 吗?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" -msgstr "你确定要丢弃此草稿吗?" +msgstr "你确定要丢弃这段草稿吗?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "你确定吗?" @@ -477,11 +468,11 @@ msgstr "你确定吗?" msgid "Are you writing in <0>{0}?" msgstr "你是用 <0>{0} 编写的吗?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "艺术" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "艺术作品或非色情的裸体。" @@ -489,18 +480,20 @@ msgstr "艺术作品或非色情的裸体。" msgid "At least 3 characters" msgstr "至少 3 个字符" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -510,7 +503,7 @@ msgstr "返回" msgid "Based on your interest in {interestsText}" msgstr "基于你对 {interestsText} 感兴趣" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "基础信息" @@ -518,19 +511,19 @@ msgstr "基础信息" msgid "Birthday" msgstr "生日" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "生日:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "屏蔽" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" -msgstr "" +msgstr "屏蔽账户" #: src/view/com/profile/ProfileMenu.tsx:300 #: src/view/com/profile/ProfileMenu.tsx:307 @@ -541,15 +534,15 @@ msgstr "屏蔽账户" msgid "Block Account?" msgstr "屏蔽账户?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "屏蔽账户" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "屏蔽列表" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "屏蔽这些账户?" @@ -575,21 +568,21 @@ msgstr "被屏蔽的账户无法在你的帖子中回复、提及你或以其他 msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "被屏蔽的账户无法在你的帖子中回复、提及你或以其他方式与你互动。你将不会看到他们所发的内容,同样他们也无法查看你的内容。" -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "已屏蔽帖子。" -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." msgstr "屏蔽这个用户不能阻止他继续标记你的账户。" -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "屏蔽是公开的。被屏蔽的账户无法在你的帖子中回复、提及你或以其他方式与你互动。" #: src/view/com/profile/ProfileMenu.tsx:353 msgid "Blocking will not prevent labels from being applied on your account, but it will stop this account from replying in your threads or interacting with you." -msgstr "屏蔽不会阻止标记被放置到你的账户上,但会阻止此账户在你发布的帖子中回复或与你互动。" +msgstr "屏蔽不会阻止标记被放置到你的账户上,但会阻止这个账户在你发布的帖子中回复或与你互动。" #: src/view/com/auth/SplashScreen.web.tsx:154 msgid "Blog" @@ -604,24 +597,9 @@ msgstr "Bluesky" msgid "Bluesky is an open network where you can choose your hosting provider. Custom hosting is now available in beta for developers." msgstr "Bluesky 是一个开放的公共网络,你可以选择自己的托管提供商。现在,自定义托管现在已经进入开发者测试阶段。" -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:80 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:82 -#~ msgid "Bluesky is flexible." -#~ msgstr "Bluesky 非常灵活。" - -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:69 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:71 -#~ msgid "Bluesky is open." -#~ msgstr "Bluesky 保持开放。" - -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:56 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:58 -#~ msgid "Bluesky is public." -#~ msgstr "Bluesky 为公众而生。" - #: src/screens/Moderation/index.tsx:533 msgid "Bluesky will not show your profile and posts to logged-out users. Other apps may not honor this request. This does not make your account private." -msgstr "Bluesky 不会向未登录的用户显示你的个人资料和帖子。但其他应用可能不会遵照此请求,这无法确保你的账户隐私。" +msgstr "Bluesky 不会向未登录的用户显示你的个人资料和帖子。但其他应用可能不会遵照这个请求,这无法确保你的账户隐私。" #: src/lib/moderation/useLabelBehaviorDescription.ts:53 msgid "Blur images" @@ -629,12 +607,17 @@ msgstr "模糊化图片" #: src/lib/moderation/useLabelBehaviorDescription.ts:51 msgid "Blur images and filter from feeds" -msgstr "模糊化图片并从信息流中过滤" +msgstr "模糊化图片并从资讯源中过滤" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "书籍" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "浏览其他资讯源" + #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "商务" @@ -643,17 +626,13 @@ msgstr "商务" msgid "by —" msgstr "来自 —" -#: src/view/com/auth/onboarding/RecommendedFeedsItem.tsx:100 -#~ msgid "by {0}" -#~ msgstr "来自 {0}" - #: src/components/LabelingServiceCard/index.tsx:56 msgid "By {0}" msgstr "来自 {0}" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:112 msgid "by @{0}" -msgstr "" +msgstr "来自 @{0}" #: src/view/com/profile/ProfileSubpageHeader.tsx:161 msgid "by <0/>" @@ -671,7 +650,7 @@ msgstr "来自你" msgid "Camera" msgstr "相机" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "只能包含字母、数字、空格、破折号及下划线。 长度必须至少 4 个字符,但不超过 32 个字符。" @@ -679,11 +658,11 @@ msgstr "只能包含字母、数字、空格、破折号及下划线。 长度 #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -695,26 +674,26 @@ msgstr "只能包含字母、数字、空格、破折号及下划线。 长度 #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "取消" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "取消" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "取消账户删除申请" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "取消修改用户识别符" @@ -739,34 +718,34 @@ msgstr "取消搜索" msgid "Cancels opening the linked website" msgstr "取消打开链接的网站" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "更改" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "更改" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "更改用户识别符" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "更改用户识别符" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "更改我的邮箱地址" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "更改密码" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "更改密码" @@ -774,49 +753,47 @@ msgstr "更改密码" msgid "Change post language to {0}" msgstr "更改帖子的发布语言至 {0}" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "更改你的邮箱地址" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" -msgstr "" +msgstr "私信" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" -msgstr "" +msgstr "已隐藏对话" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" -msgstr "" +msgstr "私信设置" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "私信设置" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" -msgstr "" - -#: src/screens/Messages/Conversation/index.tsx:26 -#~ msgid "Chat with {chatId}" -#~ msgstr "" +msgstr "已解除隐藏对话" #: src/screens/Deactivated.tsx:78 #: src/screens/Deactivated.tsx:82 msgid "Check my status" msgstr "检查我的状态" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:122 -#~ msgid "Check out some recommended feeds. Tap + to add them to your list of pinned feeds." -#~ msgstr "查看一些推荐的信息流。点击 + 去将他们新增到你的固定信息流列表中。" - -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:186 -#~ msgid "Check out some recommended users. Follow them to see similar users." -#~ msgstr "查看一些推荐的用户。关注他们还将推荐相似的用户。" - -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." -msgstr "在这里输入刚才发送到你电子邮箱里的验证码" +msgstr "在这里输入刚才发送到你电子邮箱里的验证码。" -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "查看发送至你电子邮箱的确认邮件,并在下方输入收到的验证码:" @@ -828,36 +805,35 @@ msgstr "选择 \"所有人\" 或是 \"没有人\"" msgid "Choose Service" msgstr "选择服务" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." -msgstr "选择支持你的自定义信息流的算法。" +msgstr "选择支持你的自定义资讯源的算法。" -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:83 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:85 -#~ msgid "Choose the algorithms that power your experience with custom feeds." -#~ msgstr "选择可改进你自定义信息流的算法。" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "选择这个颜色作为你的头像" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" -msgstr "选择你的主要信息流" +msgstr "选择你的主要资讯源" #: src/screens/Signup/StepInfo/index.tsx:114 msgid "Choose your password" msgstr "选择你的密码" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "清除所有旧存储数据" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "清除所有旧存储数据(并重启)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "清除所有数据" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "清除所有数据(并重启)" @@ -866,11 +842,11 @@ msgstr "清除所有数据(并重启)" msgid "Clear search query" msgstr "清除搜索历史记录" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "清除所有旧版存储数据" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "清除所有数据" @@ -882,19 +858,28 @@ msgstr "点击这里" msgid "Click here to open tag menu for {tag}" msgstr "点击这里打开 {tag} 的标签菜单" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "点击以重试发送失败的私信" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "气象" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "哒哒🐴哒哒🐴" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "关闭" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "关闭活动对话框" @@ -906,7 +891,7 @@ msgstr "关闭警告" msgid "Close bottom drawer" msgstr "关闭底部抽屉" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "关闭对话框" @@ -922,6 +907,10 @@ msgstr "关闭图片" msgid "Close image viewer" msgstr "关闭图片查看器" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "关闭对话框" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "关闭导航页脚" @@ -939,7 +928,7 @@ msgstr "关闭底部导航栏" msgid "Closes password update alert" msgstr "关闭密码更新警告" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "关闭帖子编辑页并丢弃草稿" @@ -951,11 +940,11 @@ msgstr "关闭标题图片查看器" msgid "Collapses list of users for a given notification" msgstr "折叠给定通知的用户列表" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "喜剧" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "漫画" @@ -964,7 +953,7 @@ msgstr "漫画" msgid "Community Guidelines" msgstr "社群准则" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "完成引导并开始使用你的账户" @@ -972,7 +961,7 @@ msgstr "完成引导并开始使用你的账户" msgid "Complete the challenge" msgstr "完成验证" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "撰写帖子的长度最多为 {MAX_GRAPHEME_LENGTH} 个字符" @@ -990,22 +979,22 @@ msgstr "为类别 {name} 配置内容过滤设置" #: src/components/moderation/LabelPreference.tsx:244 msgid "Configured in <0>moderation settings." -msgstr "在 <0>限制设置 中配置。" +msgstr "在 <0>内容审核设置 中配置。" #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "确认" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "确认更改" @@ -1013,7 +1002,7 @@ msgstr "确认更改" msgid "Confirm content language settings" msgstr "确认内容语言设置" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "确认删除账户" @@ -1025,17 +1014,17 @@ msgstr "确认你的年龄:" msgid "Confirm your birthdate" msgstr "确认你的出生日期" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "验证码" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "连接中..." @@ -1043,10 +1032,6 @@ msgstr "连接中..." msgid "Contact support" msgstr "联系支持" -#: src/components/moderation/LabelsOnMe.tsx:42 -#~ msgid "content" -#~ msgstr "内容" - #: src/lib/moderation/useGlobalLabelStrings.ts:18 msgid "Content Blocked" msgstr "内容已屏蔽" @@ -1082,8 +1067,9 @@ msgstr "上下文菜单背景,点击关闭菜单。" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "继续" @@ -1093,8 +1079,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "以 {0} 继续(已登录)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1108,22 +1095,26 @@ msgstr "继续下一步" msgid "Continue to the next step without following any accounts" msgstr "继续下一步,不关注任何账户" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "对话已删除" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "烹饪" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "已复制" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "已复制构建版本号至剪贴板" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1133,15 +1124,15 @@ msgstr "已复制至剪贴板" msgid "Copied!" msgstr "已复制!" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "已复制应用专用密码" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "复制" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "复制 {0}" @@ -1150,7 +1141,7 @@ msgstr "复制 {0}" msgid "Copy code" msgstr "复制代码" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "复制列表链接" @@ -1159,10 +1150,10 @@ msgstr "复制列表链接" msgid "Copy link to post" msgstr "复制帖子链接" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" -msgstr "" +msgstr "复制私信文字" #: src/view/com/util/forms/PostDropdownBtn.tsx:256 #: src/view/com/util/forms/PostDropdownBtn.tsx:258 @@ -1174,36 +1165,28 @@ msgstr "复制帖子文字" msgid "Copyright Policy" msgstr "版权许可" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" -msgstr "" +msgstr "无法离开对话" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" -msgstr "无法加载信息流" +msgstr "无法加载资讯源" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "无法加载列表" -#: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" - -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" -msgstr "" - -#: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +msgstr "无法隐藏对话" #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "创建新的账户" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "创建新的 Bluesky 账户" @@ -1216,7 +1199,11 @@ msgstr "创建账户" msgid "Create an account" msgstr "创建一个账户" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "创建一个头像" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "创建应用专用密码" @@ -1225,15 +1212,15 @@ msgstr "创建应用专用密码" msgid "Create new account" msgstr "创建新的账户" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "创建 {0} 的举报" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "{0} 已创建" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "文化" @@ -1242,21 +1229,21 @@ msgstr "文化" msgid "Custom" msgstr "自定义" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "自定义域名" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." -msgstr "由社群构建的自定义信息流能为你带来新的体验,并帮助你找到你喜欢的内容。" +msgstr "由社群构建的自定义资讯源能为你带来新的体验,并帮助你找到你喜欢的内容。" #: src/view/screens/PreferencesExternalEmbeds.tsx:56 msgid "Customize media from external sites." msgstr "自定义外部站点的媒体。" -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "暗色" @@ -1264,7 +1251,7 @@ msgstr "暗色" msgid "Dark mode" msgstr "深色模式" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "深色模式" @@ -1272,62 +1259,63 @@ msgstr "深色模式" msgid "Date of birth" msgstr "生日" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" -msgstr "调试限制" +msgstr "调试内容审核" #: src/view/screens/Debug.tsx:83 msgid "Debug panel" msgstr "调试面板" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "删除" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "删除账户" -#: src/view/com/modals/DeleteAccount.tsx:87 -#~ msgid "Delete Account" -#~ msgstr "删除账户" - -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" -msgstr "" +msgstr "删除账户 <0>\"<1>{0}<2>\"" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "删除应用专用密码" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "删除应用专用密码?" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" +msgstr "删除聊天记录" -#: src/view/screens/ProfileList.tsx:417 +#: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "为我删除" + +#: src/view/screens/ProfileList.tsx:470 msgid "Delete List" msgstr "删除列表" -#: src/components/dms/MessageMenu.tsx:119 +#: src/components/dms/MessageMenu.tsx:122 msgid "Delete message" -msgstr "" +msgstr "删除私信" -#: src/components/dms/MessageMenu.tsx:99 +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" -msgstr "" +msgstr "为我删除私信" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "删除我的账户" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "删除我的账户…" @@ -1336,7 +1324,7 @@ msgstr "删除我的账户…" msgid "Delete post" msgstr "删除帖子" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "删除这个列表?" @@ -1348,10 +1336,14 @@ msgstr "删除这条帖子?" msgid "Deleted" msgstr "已删除" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "已删除帖子。" +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "删除聊天记录" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1359,23 +1351,27 @@ msgstr "已删除帖子。" msgid "Description" msgstr "描述" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" -msgstr "" +msgstr "描述替代文字" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "有什么想说的吗?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "暗淡" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "隆重介绍私信功能!" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "关闭 GIF 自动播放" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "关闭电子邮件两步验证" @@ -1386,15 +1382,17 @@ msgstr "关闭触感反馈" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "关闭" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "丢弃" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "丢弃草稿?" @@ -1406,11 +1404,11 @@ msgstr "阻止应用向未登录用户显示我的账户" #: src/view/com/posts/FollowingEmptyState.tsx:74 #: src/view/com/posts/FollowingEndOfFeed.tsx:75 msgid "Discover new custom feeds" -msgstr "探索新的自定义信息流" +msgstr "探索新的自定义资讯源" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" -msgstr "探索新的信息流" +msgstr "探索新的资讯源" #: src/view/com/modals/EditProfile.tsx:193 msgid "Display name" @@ -1420,7 +1418,7 @@ msgstr "显示名称" msgid "Display Name" msgstr "显示名称" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "DNS 面板" @@ -1432,11 +1430,11 @@ msgstr "不包含裸露内容。" msgid "Doesn't begin or end with a hyphen" msgstr "不以连字符开头或结尾" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "域名记录" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "域名已认证!" @@ -1444,23 +1442,23 @@ msgstr "域名已认证!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "完成" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1474,8 +1472,8 @@ msgstr "完成" msgid "Done{extraText}" msgstr "完成{extraText}" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "下载 CAR 文件" @@ -1487,7 +1485,7 @@ msgstr "拖放即可新增图片" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "受 Apple 政策限制,显示成人内容只能在完成注册后在网页端设置中启用。" -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "例如:alice" @@ -1495,7 +1493,7 @@ msgstr "例如:alice" msgid "e.g. Alice Roberts" msgstr "例如:爱丽丝·罗伯特" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "例如:alice.com" @@ -1532,7 +1530,7 @@ msgctxt "action" msgid "Edit" msgstr "编辑" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "编辑头像" @@ -1542,38 +1540,38 @@ msgstr "编辑头像" msgid "Edit image" msgstr "编辑图片" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "编辑列表详情" #: src/view/com/modals/CreateOrEditList.tsx:253 msgid "Edit Moderation List" -msgstr "编辑限制列表" +msgstr "编辑内容审核列表" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" -msgstr "编辑自定义信息流" +msgstr "编辑自定义资讯源" #: src/view/com/modals/EditProfile.tsx:153 msgid "Edit my profile" msgstr "编辑个人资料" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "编辑个人资料" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "编辑个人资料" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" -msgstr "编辑保存的信息流" +msgstr "编辑保存的资讯源" #: src/view/com/modals/CreateOrEditList.tsx:248 msgid "Edit User List" @@ -1587,16 +1585,16 @@ msgstr "编辑你的显示名称" msgid "Edit your profile description" msgstr "编辑你的账户描述" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "教育" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "电子邮箱" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "电子邮件两步验证已关闭" @@ -1604,20 +1602,20 @@ msgstr "电子邮件两步验证已关闭" msgid "Email address" msgstr "邮箱地址" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "电子邮箱已更新" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "电子邮箱已更新" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "电子邮箱已验证" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "电子邮箱:" @@ -1633,7 +1631,7 @@ msgstr "嵌入帖子" #: src/components/dialogs/Embed.tsx:101 msgid "Embed this post in your website. Simply copy the following snippet and paste it into the HTML code of your website." -msgstr "将此帖子嵌入到你的网站。只需复制以下代码片段,并将其粘贴到您网站的 HTML 代码中即可。" +msgstr "将这条帖子嵌入到你的网站。只需复制以下代码片段,并将其粘贴到您网站的 HTML 代码中即可。" #: src/components/dialogs/EmbedConsent.tsx:101 msgid "Enable {0} only" @@ -1650,7 +1648,7 @@ msgstr "启用成人内容" #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:78 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:79 msgid "Enable adult content in your feeds" -msgstr "在你的信息流中启用成人内容" +msgstr "在你的资讯源中启用成人内容" #: src/components/dialogs/EmbedConsent.tsx:82 #: src/components/dialogs/EmbedConsent.tsx:89 @@ -1661,36 +1659,38 @@ msgstr "启用外部媒体" msgid "Enable media players for" msgstr "启用媒体播放器" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." -msgstr "启用此设置以便仅查看你关注的用户的回复。" +msgstr "启用这个设置项将仅显示你已关注用户的回复。" #: src/components/dialogs/EmbedConsent.tsx:94 msgid "Enable this source only" -msgstr "仅启用此来源" +msgstr "仅启用这个来源" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "已启用" #: src/screens/Profile/Sections/Feed.tsx:104 msgid "End of feed" -msgstr "信息流的末尾" +msgstr "已到末尾" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" -msgstr "为此应用专用密码命名" +msgstr "为这个应用专用密码命名" #: src/screens/Login/SetNewPasswordForm.tsx:139 msgid "Enter a password" msgstr "输入密码" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "输入一个词或标签" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "输入验证码" @@ -1698,7 +1698,7 @@ msgstr "输入验证码" msgid "Enter the code you received to change your password." msgstr "输入你收到的确认码以更改密码。" -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "输入你想使用的域名" @@ -1715,11 +1715,11 @@ msgstr "输入你的出生日期" msgid "Enter your email address" msgstr "输入你的电子邮箱" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "请在上方输入你新的电子邮箱" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "请在下方输入你新的电子邮箱。" @@ -1727,11 +1727,15 @@ msgstr "请在下方输入你新的电子邮箱。" msgid "Enter your username and password" msgstr "输入你的用户名和密码" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "保存文件时发生错误" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "Captcha 响应错误。" -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "错误:" @@ -1740,15 +1744,30 @@ msgstr "错误:" msgid "Everybody" msgstr "所有人" -#: src/lib/moderation/useReportOptions.ts:66 -msgid "Excessive mentions or replies" -msgstr "过多的提及或回复" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "所有人都可以回复" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "所有人" + +#: src/lib/moderation/useReportOptions.ts:67 +msgid "Excessive mentions or replies" +msgstr "过于频繁的提及或回复" + +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "过于频繁的骚扰信息" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "退出账户删除流程" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "退出修改用户识别符流程" @@ -1782,12 +1801,12 @@ msgstr "明确或潜在引起不适的媒体内容。" msgid "Explicit sexual images." msgstr "明确的性暗示图片。" -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "导出账户数据" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "导出账户数据" @@ -1803,16 +1822,16 @@ msgstr "外部媒体可能允许网站收集有关你和你设备的有关信息 #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "外部媒体首选项" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "外部媒体设置" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "创建应用专用密码失败。" @@ -1820,80 +1839,88 @@ msgstr "创建应用专用密码失败。" msgid "Failed to create the list. Check your internet connection and try again." msgstr "无法创建列表。请检查你的互联网连接并重试。" -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" -msgstr "" +msgstr "无法删除私信" #: src/view/com/util/forms/PostDropdownBtn.tsx:139 msgid "Failed to delete post, please try again" msgstr "无法删除帖子,请重试" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "无法加载 GIF" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." -msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" +msgstr "无法加载旧的私信" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:110 -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:143 -#~ msgid "Failed to load recommended feeds" -#~ msgstr "无法加载推荐信息流" - -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" -msgstr "无法保存此图片:{0}" +msgstr "无法保存这张图片:{0}" + +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "无法发送私信" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "无法提交申诉,请再试一次。" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "无法更新设置" #: src/Navigation.tsx:203 msgid "Feed" -msgstr "信息流" +msgstr "资讯源" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" -msgstr "由 {0} 创建的信息流" +msgstr "由 {0} 创建的资讯源" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" -msgstr "信息流已离线" +msgstr "资讯源已离线" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "反馈" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" -msgstr "信息流" +msgstr "资讯源" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:58 -#~ msgid "Feeds are created by users to curate content. Choose some feeds that you find interesting." -#~ msgstr "信息流由用户创建并管理。选择一些你感兴趣的信息流。" - -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." -msgstr "创建信息流要求一些编程基础。查看 <0/> 以获取详情。" +msgstr "创建资讯源仅需你掌握一点编程基础。查看 <0/> 以获取详情。" #: src/screens/Onboarding/StepTopicalFeeds.tsx:80 msgid "Feeds can be topical as well!" -msgstr "信息流也可以围绕某些话题!" +msgstr "资讯源也可以围绕某些话题!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "文件内容" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "文件保存成功!" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" -msgstr "从信息流中过滤" +msgstr "从资讯源中过滤" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "最终确定" @@ -1907,23 +1934,19 @@ msgstr "寻找一些账户关注" msgid "Find posts and users on Bluesky" msgstr "在 Bluesky 寻找帖子和用户" -#: src/view/com/auth/onboarding/RecommendedFollowsItem.tsx:155 -#~ msgid "Finding similar accounts..." -#~ msgstr "正在寻找类似的账户..." - -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." -msgstr "调整你在关注信息流上所看到的内容。" +msgstr "调整你在\"正在关注\"资讯源上所看到的内容。" #: src/view/screens/PreferencesThreads.tsx:60 msgid "Fine-tune the discussion threads." msgstr "调整讨论主题。" -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "健康" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "灵活" @@ -1936,10 +1959,10 @@ msgstr "水平翻转" msgid "Flip vertically" msgstr "垂直翻转" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -1951,7 +1974,7 @@ msgid "Follow" msgstr "关注" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "关注 {0}" @@ -1973,10 +1996,6 @@ msgstr "回关" msgid "Follow selected accounts and continue to the next step" msgstr "关注选择的用户并继续下一步" -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:65 -#~ msgid "Follow some users to get started. We can recommend you more users based on who you find interesting." -#~ msgstr "关注一些用户以开始,我们可以根据你感兴趣的用户向你推荐更多类似用户。" - #: src/view/com/profile/ProfileCard.tsx:226 msgid "Followed by {0}" msgstr "由 {0} 关注" @@ -1985,7 +2004,7 @@ msgstr "由 {0} 关注" msgid "Followed users" msgstr "已关注的用户" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "仅限已关注的用户" @@ -1998,30 +2017,32 @@ msgstr "关注了你" msgid "Followers" msgstr "关注者" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "正在关注" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" -msgstr "正在关注 {0}" +msgstr "已关注 {0}" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" -msgstr "关注信息流首选项" +msgstr "\"正在关注\"资讯源首选项" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" -msgstr "关注信息流首选项" +msgstr "\"正在关注\"资讯源首选项" #: src/screens/Profile/Header/Handle.tsx:24 msgid "Follows you" @@ -2031,15 +2052,15 @@ msgstr "关注了你" msgid "Follows You" msgstr "关注了你" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "食物" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "出于安全原因,我们需要向你的电子邮箱发送验证码。" -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "出于安全原因,你将无法再次查看此内容。如果你丢失了该密码,则需要生成一个新的密码。" @@ -2048,15 +2069,15 @@ msgstr "出于安全原因,你将无法再次查看此内容。如果你丢失 msgid "Forgot Password" msgstr "忘记密码" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "忘记密码?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "忘记?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "频繁发布不受欢迎的内容" @@ -2064,7 +2085,7 @@ msgstr "频繁发布不受欢迎的内容" msgid "From @{sanitizedAuthor}" msgstr "来自 @{sanitizedAuthor}" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "来自 <0/>" @@ -2073,12 +2094,20 @@ msgstr "来自 <0/>" msgid "Gallery" msgstr "相册" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "开始吧" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "开始" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "为你的个人资料添加头像" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "明显违反法律或服务条款" @@ -2087,9 +2116,9 @@ msgstr "明显违反法律或服务条款" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "返回" @@ -2097,13 +2126,14 @@ msgstr "返回" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "返回" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2118,29 +2148,28 @@ msgstr "返回主页" msgid "Go Home" msgstr "返回主页" -#: src/view/screens/Search/Search.tsx:827 -#: src/view/shell/desktop/Search.tsx:263 -#~ msgid "Go to @{queryMaybeHandle}" -#~ msgstr "前往 @{queryMaybeHandle}" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "转到与 {0} 的对话" #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "前往下一步" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" -msgstr "" +msgstr "前往个人资料" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" -msgstr "" +msgstr "前往用户个人资料" #: src/lib/moderation/useGlobalLabelStrings.ts:46 msgid "Graphic Media" msgstr "图形媒体" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "用户识别符" @@ -2148,7 +2177,7 @@ msgstr "用户识别符" msgid "Haptics" msgstr "触感" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "骚扰、恶作剧或其他无法容忍的行为" @@ -2156,7 +2185,7 @@ msgstr "骚扰、恶作剧或其他无法容忍的行为" msgid "Hashtag" msgstr "标签" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "标签:#{tag}" @@ -2165,29 +2194,33 @@ msgid "Having trouble?" msgstr "任何疑问?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "帮助" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "通过上传图片或创建头像来帮助人们了解你不是机器人。" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "这里有一些推荐关注的用户" #: src/screens/Onboarding/StepTopicalFeeds.tsx:89 msgid "Here are some popular topical feeds. You can choose to follow as many as you like." -msgstr "这里有一些流行的信息流供你挑选。" +msgstr "这里有一些流行的资讯源供你挑选。" #: src/screens/Onboarding/StepTopicalFeeds.tsx:84 msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." -msgstr "这里有一些基于你兴趣所推荐的信息流供你挑选:{interestsText}。关注的信息流数量没有限制。" +msgstr "这里有一些基于你兴趣所推荐的资讯源供你挑选:{interestsText}。关注的资讯源数量没有限制。" -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "这里是你的应用专用密码。" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2209,7 +2242,7 @@ msgid "Hide post" msgstr "隐藏帖子" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "隐藏内容" @@ -2221,25 +2254,25 @@ msgstr "隐藏这条帖子?" msgid "Hide user list" msgstr "隐藏用户列表" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." -msgstr "连接信息流服务器出现问题,请联系信息流的维护者反馈此问题。" +msgstr "连接资讯源服务器出现问题,请联系资讯源的维护者反馈这个问题。" -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." -msgstr "信息流服务器似乎配置错误,请联系信息流的维护者反馈此问题。" +msgstr "资讯源服务器似乎配置错误,请联系资讯源的维护者反馈这个问题。" -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." -msgstr "信息流服务器似乎已下线,请联系信息流的维护者反馈此问题。" +msgstr "资讯源服务器似乎已下线,请联系资讯源的维护者反馈这个问题。" -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." -msgstr "信息流服务器返回错误的响应,请联系信息流的维护者反馈此问题。" +msgstr "资讯源服务器返回错误的响应,请联系资讯源的维护者反馈这个问题。" -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." -msgstr "无法找到该信息流,似乎已被删除。" +msgstr "无法找到该资讯源,似乎已被删除。" #: src/screens/Moderation/index.tsx:59 msgid "Hmmmm, it seems we're having trouble loading this data. See below for more details. If this issue persists, please contact us." @@ -2247,50 +2280,55 @@ msgstr "看起来在加载数据时遇到了问题,请查看下方获取更多 #: src/screens/Profile/ErrorState.tsx:31 msgid "Hmmmm, we couldn't load that moderation service." -msgstr "无法加载该限制提供服务。" +msgstr "无法加载此内容审核提供服务。" -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "主页" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "主机:" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "托管服务提供商" #: src/view/com/modals/InAppBrowserConsent.tsx:44 msgid "How should we open this link?" -msgstr "我们该如何打开此链接?" +msgstr "我们该如何打开这条链接?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "我有验证码" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "我有验证码" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "我拥有自己的域名" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "我了解" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "若替代文本过长,则切换替代文本的展开状态" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "若不勾选,则默认为全年龄向。" @@ -2298,7 +2336,7 @@ msgstr "若不勾选,则默认为全年龄向。" msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "如果你根据你所在国家的法律定义还不是成年人,则你的父母或法定监护人必须代表你阅读这些条款。" -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "该列表删除后将无法恢复。" @@ -2310,7 +2348,7 @@ msgstr "该列表删除后将无法恢复。" msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "如果你想要更改密码,我们将向你发送一个验证码以验证这是你的账户。" -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "违法" @@ -2318,23 +2356,27 @@ msgstr "违法" msgid "Image" msgstr "图片" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "图片替代文本" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "冒充或虚假身份及从属关系" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "不适当的消息或诱导性链接" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "输入发送到你电子邮箱的验证码以重置密码" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "输入删除用户的验证码" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "输入应用专用密码名称" @@ -2342,27 +2384,27 @@ msgstr "输入应用专用密码名称" msgid "Input new password" msgstr "输入新的密码" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "输入密码以删除账户" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "输入发送至你电子邮箱的验证码" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "输入与 {identifier} 关联的密码" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "输入注册时使用的用户名或电子邮箱" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "输入你的密码" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "输入你首选的托管服务提供商" @@ -2370,16 +2412,20 @@ msgstr "输入你首选的托管服务提供商" msgid "Input your user handle" msgstr "输入你的用户识别符" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "介绍私信" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "无效的两步验证码。" -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "帖子记录无效或不受支持" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "用户名或密码无效" @@ -2391,7 +2437,7 @@ msgstr "邀请朋友" msgid "Invite code" msgstr "邀请码" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "邀请码无效,请检查你输入的邀请码并重试。" @@ -2411,14 +2457,10 @@ msgstr "这将会显示你所关注的用户所发布的帖子。" msgid "Jobs" msgstr "工作" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "新闻学" -#: src/components/moderation/LabelsOnMe.tsx:59 -#~ msgid "label has been placed on this {labelTarget}" -#~ msgstr "标记已放置在 {labelTarget} 上" - #: src/components/moderation/ContentHider.tsx:144 msgid "Labeled by {0}." msgstr "由 {0} 标记。" @@ -2431,19 +2473,15 @@ msgstr "由作者标记。" msgid "Labels" msgstr "标记" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "标记是对特定内容及用户的提示。可以针对特定内容默认隐藏内容、显示警告或直接显示。" -#: src/components/moderation/LabelsOnMe.tsx:61 -#~ msgid "labels have been placed on this {labelTarget}" -#~ msgstr "标记已放置在 {labelTarget} 上" - -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" msgstr "你账户上的标记" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "你内容上的标记" @@ -2451,7 +2489,7 @@ msgstr "你内容上的标记" msgid "Language selection" msgstr "选择语言" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "语言设置" @@ -2460,7 +2498,7 @@ msgstr "语言设置" msgid "Language Settings" msgstr "语言设置" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "语言" @@ -2476,9 +2514,9 @@ msgstr "了解详情" #: src/components/moderation/ContentHider.tsx:65 #: src/components/moderation/ContentHider.tsx:128 msgid "Learn more about the moderation applied to this content." -msgstr "了解有关应用于此内容的限制的更多详情。" +msgstr "了解更多有关审核应用于此内容的详细信息。" -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "了解有关这个警告的更多详情" @@ -2491,15 +2529,22 @@ msgstr "了解有关 Bluesky 公开内容的更多详情。" msgid "Learn more." msgstr "了解详情。" -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" -msgstr "" +msgstr "离开" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "离开对话" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" -msgstr "" +msgstr "离开对话" #: src/view/com/modals/lang-settings/ContentLanguagesSettings.tsx:82 msgid "Leave them all unchecked to see any language." @@ -2513,7 +2558,7 @@ msgstr "离开 Bluesky" msgid "left to go." msgstr "尚未完成。" -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "旧存储数据已清除,你需要立即重新启动应用。" @@ -2522,22 +2567,18 @@ msgstr "旧存储数据已清除,你需要立即重新启动应用。" msgid "Let's get your password reset!" msgstr "让我们来重置你的密码!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "让我们开始!" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "亮色" -#: src/view/com/util/post-ctrls/PostCtrls.tsx:197 -#~ msgid "Like" -#~ msgstr "喜欢" - -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" -msgstr "喜欢这个信息流" +msgstr "喜欢这个资讯源" #: src/components/LikesDialog.tsx:87 #: src/Navigation.tsx:208 @@ -2551,33 +2592,19 @@ msgstr "喜欢" msgid "Liked By" msgstr "喜欢" -#: src/view/com/feeds/FeedSourceCard.tsx:268 -#~ msgid "Liked by {0} {1}" -#~ msgstr "{0} 个 {1} 喜欢" - -#: src/components/LabelingServiceCard/index.tsx:72 -#~ msgid "Liked by {count} {0}" -#~ msgstr "被 {count} {0} 喜欢" - -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:287 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:301 -#: src/view/screens/ProfileFeed.tsx:600 -#~ msgid "Liked by {likeCount} {0}" -#~ msgstr "{likeCount} 个 {0} 喜欢" - #: src/view/com/notifications/FeedItem.tsx:168 msgid "liked your custom feed" -msgstr "赞了你的自定义信息流" +msgstr "喜欢了你的自定义资讯源" #: src/view/com/notifications/FeedItem.tsx:153 msgid "liked your post" -msgstr "赞了你的帖子" +msgstr "喜欢了你的帖子" #: src/view/screens/Profile.tsx:196 msgid "Likes" msgstr "喜欢" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "这条帖子的喜欢数" @@ -2589,19 +2616,19 @@ msgstr "列表" msgid "List Avatar" msgstr "列表头像" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "列表已屏蔽" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "列表由 {0} 创建" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "列表已删除" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "列表已隐藏" @@ -2609,31 +2636,35 @@ msgstr "列表已隐藏" msgid "List Name" msgstr "列表名称" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "解除对列表的屏蔽" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "解除对列表的隐藏" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "列表" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "屏蔽该用户的列表:" + #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "加载新的通知" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "加载新的帖子" @@ -2660,7 +2691,7 @@ msgstr "未登录用户可见性" msgid "Login to account that is not listed" msgstr "登录未列出的账户" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "长按来打开 #{tag} 标签菜单" @@ -2668,14 +2699,31 @@ msgstr "长按来打开 #{tag} 标签菜单" msgid "Looks like XXXXX-XXXXX" msgstr "看起来像是 XXXXX-XXXXX" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "看起来你似乎未保存任何资讯源!来看看我们提供的建议,或浏览下方的更多内容。" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "看起来你已取消固定所有资讯源。不过别担心,你仍然可以在下面添加一些😄" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "看起来你似乎缺少\"正在关注\"资讯源。<0>点击这里来重新添加它。" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "请确认目标页面地址是否正确!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "管理你的隐藏词和标签" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "标记为已读" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2694,109 +2742,111 @@ msgstr "提到的用户" msgid "Menu" msgstr "菜单" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 -msgid "Message deleted" -msgstr "" +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "私信 {0}" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 +msgid "Message deleted" +msgstr "私信已删除" + +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "来自服务器的信息:{0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" -msgstr "" +msgstr "私信输入栏" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "私信过长" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" -msgstr "" +msgstr "私信设置" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" -msgstr "" +msgstr "私信" -#: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "" - -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" msgstr "误导性账户" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" -msgstr "限制" +msgstr "内容审核" #: src/components/moderation/ModerationDetailsDialog.tsx:112 msgid "Moderation details" -msgstr "限制详情" +msgstr "内容审核详情" #: src/view/com/lists/ListCard.tsx:93 #: src/view/com/modals/UserAddRemoveLists.tsx:206 msgid "Moderation list by {0}" -msgstr "由 {0} 创建的限制列表" +msgstr "由 {0} 创建的内容审核列表" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" -msgstr "由 创建的限制列表" +msgstr "由 创建的内容审核列表" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" -msgstr "你创建的限制列表" +msgstr "你创建的内容审核列表" #: src/view/com/modals/CreateOrEditList.tsx:199 msgid "Moderation list created" -msgstr "限制列表已创建" +msgstr "内容审核列表已创建" #: src/view/com/modals/CreateOrEditList.tsx:185 msgid "Moderation list updated" -msgstr "限制列表已更新" +msgstr "内容审核列表已更新" #: src/screens/Moderation/index.tsx:243 msgid "Moderation lists" -msgstr "限制列表" +msgstr "内容审核列表" #: src/Navigation.tsx:131 #: src/view/screens/ModerationModlists.tsx:58 msgid "Moderation Lists" -msgstr "限制列表" +msgstr "内容审核列表" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" -msgstr "限制设置" +msgstr "内容审核设置" #: src/Navigation.tsx:223 msgid "Moderation states" -msgstr "限制状态" +msgstr "内容审核状态" #: src/screens/Moderation/index.tsx:215 msgid "Moderation tools" -msgstr "限制工具" +msgstr "内容审核工具" #: src/components/moderation/ModerationDetailsDialog.tsx:48 #: src/lib/moderation/useModerationCauseDescription.ts:40 msgid "Moderator has chosen to set a general warning on the content." -msgstr "由限制者对内容设置的一般警告。" +msgstr "由内容审核服务提供方对这段内容设置的一般警告。" #: src/view/com/post-thread/PostThreadItem.tsx:542 msgid "More" msgstr "更多" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" -msgstr "更多信息流" +msgstr "更多资讯源" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "更多选项" @@ -2817,7 +2867,7 @@ msgstr "隐藏 {truncatedTag}" msgid "Mute Account" msgstr "隐藏账户" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "隐藏账户" @@ -2825,32 +2875,32 @@ msgstr "隐藏账户" msgid "Mute all {displayTag} posts" msgstr "隐藏所有 {displayTag} 的帖子" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "静音对话" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "仅隐藏标签" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "隐藏词汇和标签" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "隐藏列表" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" - -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "隐藏这些账户?" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "在帖子文本和标签中隐藏该词" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "仅在标签中隐藏该词" @@ -2889,7 +2939,7 @@ msgstr "被 \"{0}\" 隐藏" msgid "Muted words & tags" msgstr "隐藏词汇和标签" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "被隐藏的账户将不会得知你已将他隐藏,已隐藏的账户将不会在你的通知或时间线中显示。" @@ -2898,23 +2948,23 @@ msgstr "被隐藏的账户将不会得知你已将他隐藏,已隐藏的账户 msgid "My Birthday" msgstr "我的生日" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" -msgstr "自定义信息流" +msgstr "自定义资讯源" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "我的个人资料" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" -msgstr "我保存的信息流" +msgstr "我保存的资讯源" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" -msgstr "我保存的信息流" +msgstr "我保存的资讯源" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "名称" @@ -2923,40 +2973,35 @@ msgstr "名称" msgid "Name is required" msgstr "名称是必填项" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "名称或描述违反了社群准则" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "自然" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "转到下一页" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "转到个人资料" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "需要举报侵犯版权行为吗?" -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:72 -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:74 -#~ msgid "Never lose access to your followers and data." -#~ msgstr "永远不会失去对你的关注者和数据的访问。" - -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "永远不会失去对你的关注者或数据的访问。" -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "没关系,为我创建一个用户识别符" @@ -2969,15 +3014,19 @@ msgstr "新建" msgid "New" msgstr "新建" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" -msgstr "" +msgstr "新私信" + +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "新私信" #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" -msgstr "新的限制列表" +msgstr "新的内容审核列表" #: src/view/com/modals/ChangePassword.tsx:214 msgid "New password" @@ -2987,22 +3036,22 @@ msgstr "新密码" msgid "New Password" msgstr "新密码" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "新帖子" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "新帖子" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "新帖子" @@ -3015,14 +3064,14 @@ msgstr "新的用户列表" msgid "Newest replies first" msgstr "优先显示最新回复" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "新闻" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -3031,38 +3080,33 @@ msgstr "新闻" msgid "Next" msgstr "下一步" -#: src/view/com/auth/onboarding/WelcomeDesktop.tsx:103 -#~ msgctxt "action" -#~ msgid "Next" -#~ msgstr "下一步" - #: src/view/com/lightbox/Lightbox.web.tsx:169 msgid "Next image" msgstr "下一张图片" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "停用" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "没有描述" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "没有 DNS 面板" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "未找到精选 GIF,Tensor 可能存在问题。" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "不再关注 {0}" @@ -3070,25 +3114,39 @@ msgstr "不再关注 {0}" msgid "No longer than 253 characters" msgstr "不超过 253 个字符" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" -msgstr "" +msgstr "目前还没有任何私信" + +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "没有更多对话可显示" #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "还没有通知!" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "没有人" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "没有结果" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "没有结果" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "未找到结果" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "未找到\"{query}\"的结果" @@ -3098,14 +3156,10 @@ msgstr "未找到\"{query}\"的结果" msgid "No results found for {query}" msgstr "未找到 {query} 的结果" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "未找到 \"{search}\" 的搜索结果。" -#: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" - #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 msgid "No thanks" @@ -3115,6 +3169,10 @@ msgstr "不,谢谢" msgid "Nobody" msgstr "没有人" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "没有人可以回复" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3124,17 +3182,13 @@ msgstr "目前还没有人喜欢,也许你应该成为第一个!" msgid "Non-sexual Nudity" msgstr "非性暗示裸露" -#: src/view/com/modals/SelfLabel.tsx:135 -#~ msgid "Not Applicable." -#~ msgstr "不适用。" - #: src/Navigation.tsx:116 #: src/view/screens/Profile.tsx:100 msgid "Not Found" msgstr "未找到" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "暂时不需要" @@ -3146,49 +3200,57 @@ msgstr "分享注意事项" #: src/screens/Moderation/index.tsx:540 msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." -msgstr "注意:Bluesky 是一个开放的公共网络。此设置项仅限制你的内容在 Bluesky 应用和网站上的可见性,其他应用可能不尊从此设置项,仍可能会向未登录的用户显示你的动态。" +msgstr "注意:Bluesky 是一个开放的公共网络。这个设置项仅限制你发布的内容在 Bluesky 应用和网站上的可见性,其他应用可能不遵从这个设置项,仍可能会向未登录的用户显示你的动态。" -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "这里什么也没有" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "通知提示音" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "通知提示音" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "通知" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" -msgstr "" +msgstr "现在" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "裸露" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "未标记的裸露或成人内容" -#: src/screens/Signup/index.tsx:145 -#~ msgid "of" -#~ msgstr "of" - #: src/lib/moderation/useLabelBehaviorDescription.ts:11 msgid "Off" msgstr "显示" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "糟糕!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "糟糕!发生了一些错误。" #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "好的" @@ -3200,49 +3262,66 @@ msgstr "好的" msgid "Oldest replies first" msgstr "优先显示最旧的回复" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "重新开始引导流程" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "至少有一张图片缺失了替代文字。" +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "目前只支持上传 .jpg 或 .png 格式的图片文件" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." -msgstr "只有 {0} 可以回复。" +msgstr "只有{0}可以回复。" #: src/screens/Signup/StepHandle.tsx:98 msgid "Only contains letters, numbers, and hyphens" msgstr "仅限字母、数字和连字符" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "糟糕,发生了一些错误!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "Oops!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "开启" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "开启头像创建工具" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "开启对话选项" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "开启表情符号选择器" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" -msgstr "开启信息流选项菜单" +msgstr "开启资讯源选项菜单" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "在内置浏览器中打开链接" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "开启私信选项" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "开启隐藏词汇和标签设置" @@ -3255,12 +3334,12 @@ msgstr "打开导航" msgid "Open post options menu" msgstr "开启帖子选项菜单" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "开启 Storybook 界面" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "开启系统日志" @@ -3268,7 +3347,7 @@ msgstr "开启系统日志" msgid "Opens {numItems} options" msgstr "开启 {numItems} 个选项" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "开启无障碍设置" @@ -3278,17 +3357,21 @@ msgstr "开启调试记录的额外详细信息" #: src/view/com/notifications/FeedItem.tsx:349 msgid "Opens an expanded list of users in this notification" -msgstr "展开此通知中的扩展用户列表" +msgstr "展开这条通知中的扩展用户列表" #: src/view/com/composer/photos/OpenCameraBtn.tsx:74 msgid "Opens camera on device" msgstr "开启设备相机" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "开启私信设置" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "开启编辑器" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "开启可配置的语言设置" @@ -3296,7 +3379,7 @@ msgstr "开启可配置的语言设置" msgid "Opens device photo gallery" msgstr "开启设备相册" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "开启外部嵌入设置" @@ -3318,73 +3401,69 @@ msgstr "开启 GIF 选择对话框" msgid "Opens list of invite codes" msgstr "开启邀请码列表" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "需要邮件验证以继续进行账户删除操作" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "开启密码修改界面" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "开启创建新的用户识别符界面" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" msgstr "开启你的 Bluesky 用户资料(存储库)下载页面" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "开启电子邮箱确认界面" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "开启使用自定义域名的模式" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" -msgstr "开启限制设置" +msgstr "开启内容审核设置" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "开启密码重置申请" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" -msgstr "开启用于编辑已保存信息流的界面" +msgstr "开启用于编辑已保存资讯源的界面" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" -msgstr "开启包含所有已保存信息流的界面" +msgstr "开启包含所有已保存资讯源的界面" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "开启应用专用密码设置界面" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" -msgstr "开启关注信息流首选项" +msgstr "开启\"正在关注\"资讯源首选项" #: src/view/com/modals/LinkWarning.tsx:93 msgid "Opens the linked website" msgstr "开启链接的网页" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "" - -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "开启 Storybook 界面" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "开启系统日志界面" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" msgstr "开启讨论串首选项" @@ -3392,7 +3471,8 @@ msgstr "开启讨论串首选项" msgid "Option {0} of {numItems}" msgstr "第 {0} 个选项,共 {numItems} 个" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "可选在下方提供额外信息:" @@ -3400,7 +3480,7 @@ msgstr "可选在下方提供额外信息:" msgid "Or combine these options:" msgstr "或者选择组合这些选项:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "其他" @@ -3412,19 +3492,23 @@ msgstr "其他账户" msgid "Other..." msgstr "其他..." -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "内容审核服务提供方已收到举报,并决定停用你的 Bluesky 私信功能。" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" -msgstr "无法找到此页面" +msgstr "无法找到这个页面" #: src/view/screens/NotFound.tsx:42 msgid "Page Not Found" -msgstr "无法找到此页面" +msgstr "无法找到这个页面" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "密码" @@ -3456,34 +3540,38 @@ msgstr "@{0} 关注的用户" msgid "People following @{0}" msgstr "关注 @{0} 的用户" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." -msgstr "需要相机的访问权限。" +msgstr "需要照片图库的访问权限。" -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." -msgstr "相机的访问权限已被拒绝,请在系统设置中启用。" +msgstr "照片图库的访问权限已被拒绝,请在系统设置中启用。" -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "宠物" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "适合成年人的图像。" -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "固定到主页" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "固定到主页" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" -msgstr "固定信息流列表" +msgstr "固定资讯源列表" + +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "固定到你的资讯源" #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" @@ -3506,78 +3594,83 @@ msgstr "播放视频" msgid "Plays the GIF" msgstr "播放 GIF" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "请设置你的用户识别符。" -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "请设置你的密码。" -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "请完成 Captcha 验证。" -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." -msgstr "更改前请先确认你的电子邮箱。这是新增电子邮箱更新工具的临时要求,此限制将很快被移除。" +msgstr "更改前请先确认你的电子邮箱。这是新增电子邮箱更新工具的临时要求,这个限制将很快被移除。" -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "请输入应用专用密码的名称,不允许使用空格。" -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." -msgstr "请输入此应用专用密码的唯一名称,或使用我们提供的随机生成名称。" +msgstr "请输入这个应用专用密码的唯一名称,或使用我们提供的随机生成名称。" -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "请输入一个有效的词、标签或短语" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "请输入你的电子邮箱。" -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "请输入你的密码:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" -msgstr "请解释为什么你认为此标记是由 {0} 错误应用的" +msgstr "请解释为什么你认为这个标记是由 {0} 错误应用的" + +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "请解释为什么你认为你的私信被错误禁用" #: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 msgid "Please sign in as @{0}" -msgstr "" +msgstr "请以 @{0} 身份登录" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "请验证你的电子邮箱" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "请等待你的链接卡片加载完毕" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "政治" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "色情内容" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "发布" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "发布" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "{0} 的帖子" @@ -3591,7 +3684,7 @@ msgstr "@{0} 的帖子" msgid "Post deleted" msgstr "已删除帖子" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "已隐藏帖子" @@ -3613,8 +3706,8 @@ msgstr "帖子语言" msgid "Post Languages" msgstr "帖子语言" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "无法找到帖子" @@ -3626,11 +3719,11 @@ msgstr "帖子" msgid "Posts" msgstr "帖子" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "帖子可以根据其文本、标签或两者来隐藏。" -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "帖子已隐藏" @@ -3638,22 +3731,21 @@ msgstr "帖子已隐藏" msgid "Potentially Misleading Link" msgstr "潜在误导性链接" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "点击以重试连接" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "点击以变更托管提供商" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "点按重试" -#: src/screens/Messages/Conversation/MessagesList.tsx:47 -#: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" - #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" msgstr "上一张图片" @@ -3666,7 +3758,7 @@ msgstr "首选语言" msgid "Prioritize Your Follows" msgstr "优先显示关注者" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "隐私" @@ -3674,25 +3766,29 @@ msgstr "隐私" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "隐私政策" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "与其他用户开始私信。" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "处理中..." -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "个人资料" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "个人资料" @@ -3700,11 +3796,11 @@ msgstr "个人资料" msgid "Profile updated" msgstr "个人资料已更新" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "通过验证电子邮箱来保护你的账户。" -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "公开内容" @@ -3714,13 +3810,13 @@ msgstr "公开且可共享的批量隐藏或屏蔽列表。" #: src/view/screens/Lists.tsx:61 msgid "Public, shareable lists which can drive feeds." -msgstr "公开且可共享的列表,可作为信息流使用。" +msgstr "公开且可共享的列表,可作为资讯源使用。" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "发布帖子" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "发布回复" @@ -3746,24 +3842,28 @@ msgstr "随机显示 (手气不错)" msgid "Ratios" msgstr "比率" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "结果:" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "最近的搜索" -#: src/view/com/auth/onboarding/RecommendedFeeds.tsx:117 -#~ msgid "Recommended Feeds" -#~ msgstr "推荐信息流" +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "重新连接" -#: src/view/com/auth/onboarding/RecommendedFollows.tsx:181 -#~ msgid "Recommended Users" -#~ msgstr "推荐的用户" +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "重新加载对话" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "移除" @@ -3771,7 +3871,7 @@ msgstr "移除" msgid "Remove account" msgstr "删除账户" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "删除头像" @@ -3779,24 +3879,27 @@ msgstr "删除头像" msgid "Remove Banner" msgstr "删除横幅图片" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" -msgstr "删除信息流" +msgstr "删除资讯源" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" -msgstr "删除信息流?" +msgstr "删除资讯源?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" -msgstr "从自定义信息流中删除" +msgstr "从自定义资讯源中删除" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" -msgstr "从自定义信息流中删除?" +msgstr "从自定义资讯源中删除?" #: src/view/com/composer/photos/Gallery.tsx:174 msgid "Remove image" @@ -3806,34 +3909,36 @@ msgstr "删除图片" msgid "Remove image preview" msgstr "删除图片预览" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "从你的隐藏词汇列表中删除" #: src/view/com/util/post-embeds/QuoteEmbed.tsx:223 msgid "Remove quote" -msgstr "" +msgstr "删除引用" #: src/view/com/modals/Repost.tsx:48 msgid "Remove repost" msgstr "删除转发" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" -msgstr "从保存的信息流列表中删除这个信息流" +msgstr "从保存的资讯源列表中删除这个资讯源" #: src/view/com/modals/ListAddRemoveUsers.tsx:199 #: src/view/com/modals/UserAddRemoveLists.tsx:152 msgid "Removed from list" msgstr "从列表中删除" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" -msgstr "从自定义信息流中删除" +msgstr "已从自定义资讯源中删除" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" -msgstr "从你的自定义信息流中删除" +msgstr "从你的自定义资讯源中删除" #: src/view/com/composer/ExternalEmbed.tsx:88 msgid "Removes default thumbnail from {0}" @@ -3841,7 +3946,12 @@ msgstr "从 {0} 中删除默认缩略图" #: src/view/com/util/post-embeds/QuoteEmbed.tsx:224 msgid "Removes quoted post" -msgstr "" +msgstr "删除引用的帖子" + +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "替换为\"Discover\"" #: src/view/screens/Profile.tsx:194 msgid "Replies" @@ -3849,83 +3959,92 @@ msgstr "回复" #: src/view/com/threadgate/WhoCanReply.tsx:98 msgid "Replies to this thread are disabled" -msgstr "对此讨论串的回复已被禁用" +msgstr "对这条讨论串的回复已被禁用" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "回复" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "回复过滤器" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "回复 <0><1/>" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" -msgstr "" - -#: src/components/dms/ConvoMenu.tsx:146 -#: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +msgstr "举报" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "举报账户" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "举报对话" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "举报页面" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" -msgstr "举报信息流" +msgstr "举报资讯源" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "举报列表" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" -msgstr "" +msgstr "举报私信" #: src/view/com/util/forms/PostDropdownBtn.tsx:363 #: src/view/com/util/forms/PostDropdownBtn.tsx:365 msgid "Report post" msgstr "举报帖子" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "举报此内容" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" -msgstr "举报此信息流" +msgstr "举报这个资讯源" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" -msgstr "举报此列表" +msgstr "举报这个列表" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "举报这条私信" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" -msgstr "举报此帖子" +msgstr "举报这条帖子" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" -msgstr "举报此用户" +msgstr "举报这个用户" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "转发" @@ -3943,11 +4062,11 @@ msgstr "转发或引用帖子" msgid "Reposted By" msgstr "转发" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "由 {0} 转发" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "由 <0><1/> 转发" @@ -3955,12 +4074,12 @@ msgstr "由 <0><1/> 转发" msgid "reposted your post" msgstr "转发你的帖子" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "转发这条帖子" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "请求变更" @@ -3973,7 +4092,7 @@ msgstr "确认码" msgid "Require alt text before posting" msgstr "发布时检查媒体是否存在替代文本" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" msgstr "需要电子邮件验证码才能登录到你的账户" @@ -3981,8 +4100,8 @@ msgstr "需要电子邮件验证码才能登录到你的账户" msgid "Required for this provider" msgstr "服务提供者要求" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "重新发送电子邮件" @@ -3994,8 +4113,8 @@ msgstr "确认码" msgid "Reset Code" msgstr "确认码" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "重置引导流程状态" @@ -4003,20 +4122,20 @@ msgstr "重置引导流程状态" msgid "Reset password" msgstr "重置密码" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "重置首选项状态" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "重置引导流程状态" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "重置首选项状态" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "重试登录" @@ -4025,25 +4144,22 @@ msgstr "重试登录" msgid "Retries the last action, which errored out" msgstr "重试上次出错的操作" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 msgid "Retry" msgstr "重试" -#: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" - #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "回到上一页" @@ -4052,26 +4168,26 @@ msgid "Returns to home page" msgstr "回到主页" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "回到上一页" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "保存" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "保存" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "保存替代文字" @@ -4083,7 +4199,7 @@ msgstr "保存生日" msgid "Save Changes" msgstr "保存更改" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "保存用户识别符更改" @@ -4091,32 +4207,29 @@ msgstr "保存用户识别符更改" msgid "Save image crop" msgstr "保存图片裁切" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" -msgstr "保存到自定义信息流" +msgstr "保存到自定义资讯源" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" -msgstr "已保存信息流" +msgstr "已保存资讯源" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" -msgstr "" +msgstr "保存到你的照片图库" -#: src/view/com/lightbox/Lightbox.tsx:81 -#~ msgid "Saved to your camera roll." -#~ msgstr "已保存到相机胶卷。" - -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" -msgstr "已保存到你的自定义信息流" +msgstr "已保存到你的自定义资讯源" #: src/view/com/modals/EditProfile.tsx:226 msgid "Saves any changes to your profile" msgstr "保存个人资料中所做的变更" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "保存用户识别符更改至 {handle}" @@ -4124,16 +4237,20 @@ msgstr "保存用户识别符更改至 {handle}" msgid "Saves image crop settings" msgstr "保存图片裁剪设置" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "说嗨!" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "科学" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "滚动到顶部" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4141,12 +4258,12 @@ msgstr "滚动到顶部" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "搜索" @@ -4156,7 +4273,7 @@ msgstr "搜索 \"{query}\"" #: src/view/screens/Search/Search.tsx:839 msgid "Search for \"{searchText}\"" -msgstr "" +msgstr "搜索 \"{searchText}\"" #: src/components/TagMenu/index.tsx:145 msgid "Search for all posts by @{authorHandle} with tag {displayTag}" @@ -4166,10 +4283,6 @@ msgstr "搜索 @{authorHandle} 带有 {displayTag} 的所有帖子" msgid "Search for all posts with tag {displayTag}" msgstr "搜索所有带有 {displayTag} 的帖子" -#: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" - #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 #: src/view/com/modals/ListAddRemoveUsers.tsx:70 @@ -4180,15 +4293,16 @@ msgstr "搜索用户" msgid "Search GIFs" msgstr "搜索 GIF" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" -msgstr "" +msgstr "搜索个人资料" #: src/components/dialogs/GifSelect.tsx:159 msgid "Search Tenor" msgstr "搜索 Tenor" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "所需的安全步骤" @@ -4209,11 +4323,11 @@ msgid "See <0>{displayTag} posts by this user" msgstr "查看该用户 <0>{displayTag} 的帖子" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "查看个人资料" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "查看指南" @@ -4221,10 +4335,22 @@ msgstr "查看指南" msgid "Select {item}" msgstr "选择 {item}" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "选择一个颜色" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "选择账户" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "选择一个头像" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "选择一个 emoji" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "从现有账户中选择" @@ -4233,7 +4359,7 @@ msgstr "从现有账户中选择" msgid "Select GIF" msgstr "选择 GIF" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "选择 GIF \"{0}\"" @@ -4243,7 +4369,7 @@ msgstr "选择语言" #: src/components/ReportDialog/SelectLabelerView.tsx:30 msgid "Select moderator" -msgstr "选择限制者" +msgstr "选择内容审核服务提供方" #: src/view/com/util/Selector.tsx:107 msgid "Select option {i} of {numItems}" @@ -4253,9 +4379,13 @@ msgstr "选择 {numItems} 项中的第 {i} 项" msgid "Select some accounts below to follow" msgstr "选择以下一些账户进行关注" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "选择 {emojiName} 作为你的头像" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" -msgstr "请选择你要向哪位限制服务提供者提交举报" +msgstr "请选择你要向哪个内容审核服务提供方提交举报" #: src/view/com/auth/server-input/index.tsx:82 msgid "Select the service that hosts your data." @@ -4263,7 +4393,7 @@ msgstr "选择托管你数据的服务器。" #: src/screens/Onboarding/StepTopicalFeeds.tsx:100 msgid "Select topical feeds to follow from the list below" -msgstr "从下面的列表中选择要关注的专题信息流" +msgstr "从下面的列表中选择要关注的专题资讯源" #: src/screens/Onboarding/StepModeration/index.tsx:63 msgid "Select what you want to see (or not see), and we’ll handle the rest." @@ -4271,7 +4401,7 @@ msgstr "选择你想看到(或不想看到)的内容,剩下的由我们来 #: src/view/screens/LanguageSettings.tsx:281 msgid "Select which languages you want your subscribed feeds to include. If none are selected, all languages will be shown." -msgstr "选择你希望订阅信息流中所包含的语言。如果未选择任何语言,将默认显示所有语言。" +msgstr "选择你希望订阅资讯源中所包含的语言。如果未选择任何语言,将默认显示所有语言。" #: src/view/screens/LanguageSettings.tsx:98 msgid "Select your app language for the default text to display in the app." @@ -4281,48 +4411,54 @@ msgstr "选择你的应用语言,以显示应用中的默认文本。" msgid "Select your date of birth" msgstr "输入你的出生日期" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "下面选择你感兴趣的选项" #: src/view/screens/LanguageSettings.tsx:190 msgid "Select your preferred language for translations in your feed." -msgstr "选择你在订阅信息流中希望进行翻译的目标首选语言。" +msgstr "选择你在订阅资讯源中希望进行翻译的目标首选语言。" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:117 msgid "Select your primary algorithmic feeds" -msgstr "选择你的信息流主要算法" +msgstr "选择你的资讯源主要算法" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:133 msgid "Select your secondary algorithmic feeds" -msgstr "选择你的信息流次要算法" +msgstr "选择你的资讯源次要算法" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "发送一个你认为很有趣的网站!" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "发送确认电子邮件" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "发送电子邮件" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "发送电子邮件" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "提交反馈" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" -msgstr "" +msgstr "发送私信" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "提交举报" @@ -4330,12 +4466,12 @@ msgstr "提交举报" msgid "Send report to {0}" msgstr "给 {0} 提交举报" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "发送验证电子邮件" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "发送包含账户删除验证码的电子邮件" @@ -4351,51 +4487,51 @@ msgstr "设置生日" msgid "Set new password" msgstr "设置新密码" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." -msgstr "停用此设置项以隐藏来自订阅信息流的所有引用帖子,转发仍将可见。" +msgstr "停用这个设置项将从资讯源中隐藏所有引用帖子,但转发仍将可见。" -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." -msgstr "停用此设置项以隐藏来自订阅信息流的所有回复。" +msgstr "停用这个设置项将从资讯源中隐藏所有回复。" -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." -msgstr "停用此设置项以隐藏来自订阅信息流的所有转发。" +msgstr "停用这个设置项将从资讯源中隐藏所有转发。" #: src/view/screens/PreferencesThreads.tsx:122 msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." -msgstr "启用此设置项以在分层视图中显示回复。这是一个实验性功能。" +msgstr "启用这个设置项将在分层视图中显示回复。这是一个实验性功能。" -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." -msgstr "启用此设置项以在关注信息流中显示已保存信息流的样例。这是一个实验性功能。" +msgstr "启用这个设置项将在\"正在关注\"资讯源中显示已保存资讯源的样例。这是一个实验性功能。" #: src/screens/Onboarding/Layout.tsx:48 msgid "Set up your account" msgstr "设置你的账户" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "设置 Bluesky 用户名" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "设置主题为深色模式" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "设置主题为亮色模式" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "设置主题跟随系统设置" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "设置深色模式至深黑" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "设置深色模式至暗淡" @@ -4416,15 +4552,14 @@ msgid "Sets image aspect ratio to wide" msgstr "将图片纵横比设置为宽" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "设置" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "性行为或性暗示裸露。" @@ -4432,7 +4567,7 @@ msgstr "性行为或性暗示裸露。" msgid "Sexually Suggestive" msgstr "性暗示" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "分享" @@ -4442,45 +4577,53 @@ msgstr "分享" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "分享" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "分享一个很酷的事!" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "分享一个有趣的事实!" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "仍然分享" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" -msgstr "分享信息流" +msgstr "分享资讯源" #: src/view/com/modals/LinkWarning.tsx:89 #: src/view/com/modals/LinkWarning.tsx:95 msgid "Share Link" msgstr "分享链接" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "分享你最喜欢的资讯源!" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "分享链接的网站" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "显示" -#: src/view/screens/PreferencesFollowingFeed.tsx:68 -#~ msgid "Show all replies" -#~ msgstr "显示所有回复" - #: src/view/com/util/post-embeds/GifEmbed.tsx:167 msgid "Show alt text" -msgstr "" +msgstr "显示替代文字" #: src/components/moderation/ScreenHider.tsx:169 #: src/components/moderation/ScreenHider.tsx:172 @@ -4494,39 +4637,47 @@ msgstr "显示徽章" #: src/lib/moderation/useLabelBehaviorDescription.ts:61 msgid "Show badge and filter from feeds" -msgstr "显示徽章并从信息流中过滤" +msgstr "显示徽章并从资讯源中过滤" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "显示类似于 {0} 的关注者" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "显示已隐藏的回复" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" -msgstr "" +msgstr "更少显示类似这样的" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "显示更多" #: src/view/com/util/forms/PostDropdownBtn.tsx:297 #: src/view/com/util/forms/PostDropdownBtn.tsx:299 msgid "Show more like this" -msgstr "" +msgstr "更多显示类似这样的" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "显示已隐藏的回复" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" -msgstr "在自定义信息流中显示帖子" +msgstr "显示来自已储存资讯源的帖子" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "显示引用帖子" #: src/screens/Onboarding/StepFollowingFeed.tsx:119 msgid "Show quote-posts in Following feed" -msgstr "在关注信息流中显示引用" +msgstr "在\"正在关注\"资讯源中显示引用" #: src/screens/Onboarding/StepFollowingFeed.tsx:135 msgid "Show quotes in Following" @@ -4534,9 +4685,9 @@ msgstr "在关注中显示引用" #: src/screens/Onboarding/StepFollowingFeed.tsx:95 msgid "Show re-posts in Following feed" -msgstr "在关注信息流中显示转发" +msgstr "在\"正在关注\"资讯源中显示转发" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "显示回复" @@ -4550,13 +4701,9 @@ msgstr "在关注中显示回复" #: src/screens/Onboarding/StepFollowingFeed.tsx:71 msgid "Show replies in Following feed" -msgstr "在关注信息流中显示回复" +msgstr "在\"正在关注\"资讯源中显示回复" -#: src/view/screens/PreferencesFollowingFeed.tsx:70 -#~ msgid "Show replies with at least {value} {0}" -#~ msgstr "显示至少包含 {value} 个 {0} 的回复" - -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "显示转发" @@ -4565,7 +4712,7 @@ msgid "Show reposts in Following" msgstr "在关注中显示转发" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "显示内容" @@ -4579,27 +4726,27 @@ msgstr "显示警告" #: src/lib/moderation/useLabelBehaviorDescription.ts:56 msgid "Show warning and filter from feeds" -msgstr "显示警告并从信息流中过滤" +msgstr "显示警告并从资讯源中过滤" #: src/view/com/post-thread/PostThreadFollowBtn.tsx:130 msgid "Shows posts from {0} in your feed" -msgstr "在你的信息流中显示来自 {0} 的帖子" +msgstr "在你的资讯源中显示来自 {0} 的帖子" #: src/components/dialogs/Signin.tsx:97 #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4616,23 +4763,23 @@ msgstr "登录为..." #: src/components/dialogs/Signin.tsx:75 msgid "Sign in or create your account to join the conversation!" -msgstr "登录或创建你的帐户以加入对话!" +msgstr "登录或创建你的账户以加入对话!" #: src/components/dialogs/Signin.tsx:46 msgid "Sign into Bluesky or create a new account" -msgstr "登录 Bluesky 或创建新帐户" +msgstr "登录 Bluesky 或创建新账户" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "登出" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -4648,7 +4795,7 @@ msgstr "注册或登录以加入对话" msgid "Sign-in Required" msgstr "需要登录" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "登录身份" @@ -4657,27 +4804,35 @@ msgstr "登录身份" msgid "Signed in as @{0}" msgstr "以 @{0} 身份登录" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "跳过" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" -msgstr "跳过此流程" +msgstr "跳过这段流程" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "程序开发" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "一些人可以回复" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "出了点问题" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." msgstr "出了点问题,请重试。" -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "很抱歉,你的登录会话已过期,请重新登录。" @@ -4689,19 +4844,20 @@ msgstr "回复排序" msgid "Sort replies to the same post by:" msgstr "对同一帖子的回复进行排序:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "来源:" +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "来源:<0>{0}" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "垃圾内容" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" -msgstr "垃圾内容;过多的提及或回复" +msgstr "垃圾内容;过于频繁的提及或回复" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "运动" @@ -4709,62 +4865,64 @@ msgstr "运动" msgid "Square" msgstr "方块" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" -msgstr "" +msgstr "开始一个新私信" -#: src/view/screens/Settings/index.tsx:862 -#~ msgid "Status page" -#~ msgstr "状态页" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "与 {displayName} 开始私信" -#: src/view/screens/Settings/index.tsx:896 +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "开始私信" + +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" -msgstr "" - -#: src/screens/Signup/index.tsx:145 -#~ msgid "Step" -#~ msgstr "Step" +msgstr "状态页" #: src/screens/Signup/index.tsx:154 msgid "Step {0} of {1}" -msgstr "" +msgstr "步骤 {1} 共 {0} 步" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "已清除存储,请立即重启应用。" #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "Storybook" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "提交" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "订阅" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "订阅 @{0} 以使用这些标记:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "订阅标记者" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:172 #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:307 msgid "Subscribe to the {0} feed" -msgstr "订阅 {0} 信息流" +msgstr "订阅 {0} 资讯源" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "订阅这个标记者" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "订阅这个列表" @@ -4776,7 +4934,7 @@ msgstr "推荐的关注者" msgid "Suggested for you" msgstr "为你推荐" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "建议" @@ -4791,23 +4949,23 @@ msgstr "支持" msgid "Switch Account" msgstr "切换账户" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "切换到 {0}" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "切换你登录的账户" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "系统" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "系统日志" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "标签" @@ -4823,41 +4981,47 @@ msgstr "高" msgid "Tap to view fully" msgstr "点击查看完整内容" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "科技" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "讲个笑话!" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "条款" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "服务条款" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "用词违反了社群准则" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "文本" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "文本输入框" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "谢谢,你的举报已提交。" -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "其中包含以下内容:" @@ -4865,15 +5029,11 @@ msgstr "其中包含以下内容:" msgid "That handle is already taken." msgstr "该用户识别符已被占用。" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "解除屏蔽后,该账户将能够与你互动。" -#: src/components/moderation/ModerationDetailsDialog.tsx:127 -#~ msgid "the author" -#~ msgstr "作者" - #: src/view/screens/CommunityGuidelines.tsx:36 msgid "The Community Guidelines have been moved to <0/>" msgstr "社群准则已迁移至 <0/>" @@ -4882,11 +5042,15 @@ msgstr "社群准则已迁移至 <0/>" msgid "The Copyright Policy has been moved to <0/>" msgstr "版权许可已迁移至 <0/>" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "资讯源已替换为\"Discover\"。" + +#: src/components/moderation/LabelsOnMeDialog.tsx:66 msgid "The following labels were applied to your account." msgstr "以下标记已应用到你的账户。" -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "以下标记已应用到你的内容。" @@ -4894,10 +5058,10 @@ msgstr "以下标记已应用到你的内容。" msgid "The following steps will help customize your Bluesky experience." msgstr "以下步骤将帮助定制你的 Bluesky 体验。" -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." -msgstr "此帖子可能已被删除。" +msgstr "这条帖子可能已被删除。" #: src/view/screens/PrivacyPolicy.tsx:33 msgid "The Privacy Policy has been moved to <0/>" @@ -4905,7 +5069,7 @@ msgstr "隐私政策已迁移至 <0/>" #: src/view/screens/Support.tsx:36 msgid "The support form has been moved. If you need help, please <0/> or visit {HELP_DESK_URL} to get in touch with us." -msgstr "支持表单已被移除。如果你需要帮助,请点击<0/>或访问{HELP_DESK_URL}与我们联系。" +msgstr "支持表单已被移除。如果你需要帮助,请<0/>或访问{HELP_DESK_URL}与我们联系。" #: src/view/screens/TermsOfService.tsx:33 msgid "The Terms of Service have been moved to" @@ -4913,39 +5077,38 @@ msgstr "服务条款已迁移至" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:141 msgid "There are many feeds to try:" -msgstr "这里有些信息流你可以尝试:" +msgstr "这里有些资讯源你可以尝试:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "连接至服务器时出现问题,请检查你的互联网连接并重试。" -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." -msgstr "删除信息流时出现问题,请检查你的互联网连接并重试。" +msgstr "删除资讯源时出现问题,请检查你的互联网连接并重试。" -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." -msgstr "更新信息流时出现问题,请检查你的互联网连接并重试。" +msgstr "更新资讯源时出现问题,请检查你的互联网连接并重试。" -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "连接 Tenor 时出现问题。" -#: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" - -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "连接服务器时出现问题" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "连接服务器时出现问题" @@ -4953,7 +5116,7 @@ msgstr "连接服务器时出现问题" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "刷新通知时出现问题,点击重试。" -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "刷新帖子时出现问题,点击重试。" @@ -4966,7 +5129,8 @@ msgstr "刷新列表时出现问题,点击重试。" msgid "There was an issue fetching your lists. Tap here to try again." msgstr "刷新列表时出现问题,点击重试。" -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "提交举报时出现问题,请检查你的网络连接。" @@ -4974,32 +5138,32 @@ msgstr "提交举报时出现问题,请检查你的网络连接。" msgid "There was an issue syncing your preferences with the server" msgstr "与服务器同步首选项时出现问题" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "获取应用专用密码时出现问题" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" msgstr "出现问题了!{0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "出现问题了,请检查你的互联网连接并重试。" -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "应用发生意外错误,请联系我们进行错误反馈!" @@ -5018,23 +5182,31 @@ msgstr "{screenDescription} 已被标记:" #: src/components/moderation/ScreenHider.tsx:111 msgid "This account has requested that users sign in to view their profile." -msgstr "此账户要求登录后才能查看其个人资料。" +msgstr "这个账户要求登录后才能查看其个人资料。" -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "这个账号已被你的一个或多个内容审核列表所屏蔽。要解除屏蔽,请从内容审核列表中删除这个账号。" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." -msgstr "此申诉将发送至 <0>{0}。" +msgstr "这条申诉将发送至 <0>{0}。" -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." -msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." +msgstr "此申诉将提交给 Bluesky 内容审核服务。" + +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "此私信已被断开" #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." -msgstr "此内容已被限制者隐藏。" +msgstr "此内容已被内容审核服务提供方所隐藏。" #: src/lib/moderation/useGlobalLabelStrings.ts:24 msgid "This content has received a general warning from moderators." -msgstr "此内容已受到限制者设置的一般警告。" +msgstr "内容审核服务提供方已对此内容设置一般警告。" #: src/components/dialogs/EmbedConsent.tsx:64 msgid "This content is hosted by {0}. Do you want to enable external media?" @@ -5045,80 +5217,84 @@ msgstr "此内容由 {0} 托管。是否要启用外部媒体?" msgid "This content is not available because one of the users involved has blocked the other." msgstr "由于其中一个用户屏蔽了另一个用户,此内容不可用。" -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "没有 Bluesky 账户,无法查看此内容。" -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "该功能正在测试,你可以在<0>这篇博客文章中获得关于导出数据的更多信息。" -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." -msgstr "该信息流当前使用人数较多,服务暂时不可用。请稍后再试。" +msgstr "该资讯源当前使用人数较多,服务暂时不可用。请稍后再试。" #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" -msgstr "该信息流为空!" +msgstr "这里是空的!" #: src/view/com/posts/CustomFeedEmptyState.tsx:37 msgid "This feed is empty! You may need to follow more users or tune your language settings." -msgstr "信息流为空!你或许需要先关注更多的用户,或检查你的语言设置。" +msgstr "这个资讯源是空的!你或许需要先关注更多的用户,或检查你的语言设置。" + +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "这个资讯源已离线,我们将改为显示来自 <0>Discover 资讯源的内容。" #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." -msgstr "此信息不会分享给其他用户。" +msgstr "这条信息不会分享给其他用户。" -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "这很重要,以防你将来需要更改电子邮箱或重置密码。" -#: src/components/moderation/ModerationDetailsDialog.tsx:124 -#~ msgid "This label was applied by {0}." -#~ msgstr "此标记由 {0} 应用。" - #: src/components/moderation/ModerationDetailsDialog.tsx:127 msgid "This label was applied by <0>{0}." -msgstr "" +msgstr "这个标签是由 <0>{0} 标记的。" #: src/components/moderation/ModerationDetailsDialog.tsx:125 msgid "This label was applied by the author." -msgstr "" +msgstr "这个标签是由该作者标记的。" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "这个标签是由你标记的。" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." -msgstr "此标记者尚未声明他发布的标记,并且可能处于非活跃状态。" +msgstr "这个标记者尚未声明他发布的标记,并且可能处于非活跃状态。" #: src/view/com/modals/LinkWarning.tsx:72 msgid "This link is taking you to the following website:" -msgstr "此链接将带你到以下网站:" +msgstr "这条链接将带你到以下网站:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" -msgstr "此列表为空!" +msgstr "这个列表为空!" #: src/screens/Profile/ErrorState.tsx:40 msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." -msgstr "此限制提供服务不可用,请查看下方获取更多详情。如果问题持续存在,请联系我们。" +msgstr "此内容审核提供服务不可用,请查看下方获取更多详情。如果问题持续存在,请联系我们。" -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "该名称已被使用" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." -msgstr "此帖子已被删除。" +msgstr "这条帖子已被删除。" #: src/view/com/util/forms/PostDropdownBtn.tsx:417 #: src/view/com/util/post-ctrls/PostCtrls.tsx:301 msgid "This post is only visible to logged-in users. It won't be visible to people who aren't logged in." -msgstr "此帖子只对已登录用户可见,未登录的用户将无法看到。" +msgstr "这条帖子只对已登录用户可见,未登录的用户将无法看到。" #: src/view/com/util/forms/PostDropdownBtn.tsx:399 msgid "This post will be hidden from feeds." -msgstr "此帖子将从信息流中隐藏。" +msgstr "这条帖子将从资讯源中隐藏。" #: src/view/com/profile/ProfileMenu.tsx:370 msgid "This profile is only visible to logged-in users. It won't be visible to people who aren't logged in." @@ -5128,49 +5304,49 @@ msgstr "此个人资料只对已登录用户可见,未登录的用户将无法 msgid "This service has not provided terms of service or a privacy policy." msgstr "此服务没有提供服务条款或隐私政策。" -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "应该在以下位置创建一个域名记录:" #: src/view/com/profile/ProfileFollowers.tsx:87 msgid "This user doesn't have any followers." -msgstr "此用户目前没有任何关注者。" +msgstr "这个用户目前没有任何关注者。" + +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "这个用户屏蔽了你" #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." -msgstr "此用户已将你屏蔽,你将无法看到他所发布的内容。" +msgstr "这个用户已将你屏蔽,你将无法看到他所发布的内容。" #: src/lib/moderation/useGlobalLabelStrings.ts:30 msgid "This user has requested that their content only be shown to signed-in users." -msgstr "此用户要求其发布内容仅对已登录用户可见。" +msgstr "这个用户设置其发布的内容仅对已登录用户可见。" #: src/components/moderation/ModerationDetailsDialog.tsx:55 msgid "This user is included in the <0>{0} list which you have blocked." -msgstr "此用户包含在你已屏蔽的 <0>{0} 列表中。" +msgstr "这个用户包含在你已屏蔽的 <0>{0} 列表中。" #: src/components/moderation/ModerationDetailsDialog.tsx:84 msgid "This user is included in the <0>{0} list which you have muted." -msgstr "此用户包含在你已隐藏的 <0>{0} 列表中。" +msgstr "这个用户包含在你已隐藏的 <0>{0} 列表中。" #: src/view/com/profile/ProfileFollows.tsx:87 msgid "This user isn't following anyone." -msgstr "此账户目前没有关注任何人。" +msgstr "这个账户目前没有关注任何人。" -#: src/view/com/modals/SelfLabel.tsx:137 -#~ msgid "This warning is only available for posts with media attached." -#~ msgstr "此警告仅适用于附带媒体的帖子。" - -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "这将从你的隐藏词汇中删除 {0}。你随时可以重新添加。" -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" msgstr "讨论串首选项" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" msgstr "讨论串首选项" @@ -5182,15 +5358,19 @@ msgstr "讨论串模式" msgid "Threads Preferences" msgstr "讨论串首选项" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "在关闭电子邮件两步验证前,请先验证你的电子邮箱地址。" +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "要举报对话,请在会话中选择一条私信并举报。这有助于使内容审核服务提供方了解有关问题的背景信息。" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "你想将举报提交给谁?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "在隐藏词汇选项之间切换。" @@ -5223,60 +5403,69 @@ msgctxt "action" msgid "Try again" msgstr "重试" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "两步验证" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" -msgstr "" +msgstr "在这里输入你的消息" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "类型:" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "取消屏蔽列表" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "取消隐藏列表" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "无法连接到服务,请检查互联网连接。" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" msgstr "取消屏蔽" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" msgstr "取消屏蔽" +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "取消屏蔽账户" + #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" msgstr "取消屏蔽账户" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" msgstr "取消屏蔽账户?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "取消转发" @@ -5290,7 +5479,7 @@ msgstr "取消关注" msgid "Unfollow" msgstr "取消关注" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "取消关注 {0}" @@ -5299,16 +5488,12 @@ msgstr "取消关注 {0}" msgid "Unfollow Account" msgstr "取消关注账户" -#: src/view/com/util/post-ctrls/PostCtrls.tsx:197 -#~ msgid "Unlike" -#~ msgstr "取消喜欢" - -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" -msgstr "取消喜欢这个信息流" +msgstr "取消喜欢这个资讯源" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "取消隐藏" @@ -5325,37 +5510,42 @@ msgstr "取消隐藏账户" msgid "Unmute all {displayTag} posts" msgstr "取消隐藏所有 {displayTag} 帖子" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" +msgstr "取消静音对话" #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" msgstr "取消隐藏讨论串" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "取消固定" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "从主页取消固定" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" msgstr "取消固定限制列表" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "从你的资讯源中取消固定" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "取消订阅" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" -msgstr "取消订阅此标记者" +msgstr "取消订阅这个标记者" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" msgstr "不受欢迎的性内容" @@ -5363,7 +5553,7 @@ msgstr "不受欢迎的性内容" msgid "Update {displayName} in Lists" msgstr "更新列表中的 {displayName}" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "更新至 {handle}" @@ -5371,42 +5561,46 @@ msgstr "更新至 {handle}" msgid "Updating..." msgstr "更新中..." -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "上传图片" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "将文本文件上传至:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "从相机上传" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "从文件上传" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" -msgstr "从媒体库上传" +msgstr "从照片图库上传" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "使用你服务器上的文件" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." msgstr "使用应用专用密码登录到其他 Bluesky 客户端,而无需对其授予你账户或密码的完全访问权限。" -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "使用 bsky.social 作为域名提供商" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "使用默认提供商" @@ -5420,11 +5614,15 @@ msgstr "使用内置浏览器" msgid "Use my default browser" msgstr "使用系统默认浏览器" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "使用推荐" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "使用 DNS 面板" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "使用这个和你的用户识别符一起登录其他应用。" @@ -5441,6 +5639,10 @@ msgstr "用户被屏蔽" msgid "User Blocked by \"{0}\"" msgstr "用户被 \"{0}\" 屏蔽" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "用户被列表屏蔽" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "用户被列表屏蔽" @@ -5458,13 +5660,13 @@ msgstr "用户屏蔽了你" msgid "User list by {0}" msgstr "{0} 的用户列表" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "<0/> 的用户列表" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "你的用户列表" @@ -5480,11 +5682,11 @@ msgstr "用户列表已更新" msgid "User Lists" msgstr "用户列表" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "用户名或电子邮箱" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "用户" @@ -5492,6 +5694,13 @@ msgstr "用户" msgid "users followed by <0/>" msgstr "关注 <0/> 的用户" +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "我关注的用户" + #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" msgstr "\"{0}\"中的用户" @@ -5500,56 +5709,48 @@ msgstr "\"{0}\"中的用户" msgid "Users that have liked this content or profile" msgstr "已喜欢此内容或个人资料的账户" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "值:" -#: src/view/com/modals/ChangeHandle.tsx:510 -#~ msgid "Verify {0}" -#~ msgstr "验证 {0}" - -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" -msgstr "" +msgstr "验证 DNS 记录" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "验证邮箱" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "验证我的邮箱" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "验证我的邮箱" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "验证新的邮箱" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" -msgstr "" +msgstr "验证文本文件" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "验证你的邮箱" -#: src/view/screens/Settings/index.tsx:852 -#~ msgid "Version {0}" -#~ msgstr "版本 {0}" - -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" -msgstr "" +msgstr "版本 {appVersion} {bundleInfo}" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "电子游戏" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" msgstr "查看{0}的头像" @@ -5557,25 +5758,25 @@ msgstr "查看{0}的头像" msgid "View debug entry" msgstr "查看调试入口" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "查看详情" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" msgstr "查看举报版权侵权的详情" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" msgstr "查看整个讨论串" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" -msgstr "查看此标记的详情" +msgstr "查看这个标记的详情" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "查看个人资料" @@ -5587,9 +5788,9 @@ msgstr "查看头像" msgid "View the labeling service provided by @{0}" msgstr "查看 @{0} 提供的标记服务。" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" -msgstr "查看此信息流被谁喜欢" +msgstr "查看这个资讯源被谁喜欢" #: src/view/com/modals/LinkWarning.tsx:89 #: src/view/com/modals/LinkWarning.tsx:95 @@ -5609,17 +5810,21 @@ msgstr "警告内容" #: src/lib/moderation/useLabelBehaviorDescription.ts:46 msgid "Warn content and filter from feeds" -msgstr "警告内容并从信息流中过滤" +msgstr "警告内容并从资讯源中过滤" #: src/screens/Hashtag.tsx:210 msgid "We couldn't find any results for that hashtag." msgstr "找不到任何与该标签相关的结果。" +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "我们无法加载这个对话" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "我们估计还需要 {estimatedTime} 才能完成你的账户准备。" -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "我们希望你在此度过愉快的时光。请记住,Bluesky 是:" @@ -5627,13 +5832,13 @@ msgstr "我们希望你在此度过愉快的时光。请记住,Bluesky 是:" msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "我们已经看完了你关注的帖子。这是来自 <0/> 的最新消息。" -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "不建议你添加会出现在许多帖子中的常见词汇,这可能导致你的时间线上没有帖子可显示。" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:125 msgid "We recommend our \"Discover\" feed:" -msgstr "我们推荐我们的 \"Discover\" 信息流:" +msgstr "我们推荐由我们创建的 \"Discover\" 资讯源:" #: src/components/dialogs/BirthDateSettings.tsx:52 msgid "We were unable to load your birth date preferences. Please try again." @@ -5643,27 +5848,31 @@ msgstr "我们无法加载你的生日首选项,请重试。" msgid "We were unable to load your configured labelers at this time." msgstr "我们暂时无法记载你已配置的标记者。" -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." -msgstr "我们无法连接到互联网,请重试以继续设置你的账户。如果仍继续失败,你可以选择跳过此流程。" +msgstr "我们无法连接到互联网,请重试以继续设置你的账户。如果仍继续失败,你可以选择跳过这段流程。" #: src/screens/Deactivated.tsx:143 msgid "We will let you know when your account is ready." msgstr "我们会在你的账户准备好时通知你。" -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "我们将使用这些信息来帮助定制你的体验。" +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "我们遇到了网络问题,请再试一次" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "我们非常高兴你加入我们!" #: src/view/screens/ProfileList.tsx:90 msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." -msgstr "很抱歉,我们无法解析此列表。如果问题持续发生,请联系列表创建者,@{handleOrDid}。" +msgstr "很抱歉,我们无法解析这个列表。如果问题持续发生,请联系列表创建者,@{handleOrDid}。" -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "很抱歉,我们无法加载你的隐藏词汇列表。请重试。" @@ -5671,97 +5880,106 @@ msgstr "很抱歉,我们无法加载你的隐藏词汇列表。请重试。" msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "很抱歉,无法完成你的搜索。请稍后再试。" -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "很抱歉!我们找不到你正在寻找的页面。" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "很抱歉!你目前只能订阅 10 个标记者,你已达到 10 个的限制。" -#: src/view/com/auth/onboarding/WelcomeMobile.tsx:48 -#~ msgid "Welcome to <0>Bluesky" -#~ msgstr "欢迎来到 <0>Bluesky" - -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "你感兴趣的是什么?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "发生了什么新鲜事?" #: src/view/com/modals/lang-settings/PostLanguagesSettings.tsx:78 msgid "Which languages are used in this post?" -msgstr "这个帖子中使用了哪些语言?" +msgstr "这条帖子中使用了哪些语言?" #: src/view/com/modals/lang-settings/ContentLanguagesSettings.tsx:77 msgid "Which languages would you like to see in your algorithmic feeds?" -msgstr "你想在算法信息流中看到哪些语言?" +msgstr "你想在算法资讯源中看到哪些语言?" + +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "谁可以给你发送私信?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "谁可以回复" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "糟糕!" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "为什么应该审核此内容?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" -msgstr "为什么应该审核此信息流?" +msgstr "为什么应该审核这个资讯源?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" -msgstr "为什么应该审核此列表?" +msgstr "为什么应该审核这个列表?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "为什么应该审核这条私信?" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" -msgstr "为什么应该审核此帖子?" +msgstr "为什么应该审核这条帖子?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" -msgstr "为什么应该审核此用户?" +msgstr "为什么应该审核这个用户?" #: src/view/com/modals/crop-image/CropImage.web.tsx:125 msgid "Wide" msgstr "宽" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" -msgstr "" +msgstr "编写私信" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "撰写帖子" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "撰写你的回复" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "作家" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "启用" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" -msgstr "" +msgstr "昨天,{time}" #: src/screens/Deactivated.tsx:136 msgid "You are in line." @@ -5774,12 +5992,20 @@ msgstr "你没有关注任何账户。" #: src/view/com/posts/FollowingEmptyState.tsx:67 #: src/view/com/posts/FollowingEndOfFeed.tsx:68 msgid "You can also discover new Custom Feeds to follow." -msgstr "你也可以探索新的自定义信息流来关注。" +msgstr "你也可以探索新的自定义资讯源来关注。" #: src/screens/Onboarding/StepFollowingFeed.tsx:143 msgid "You can change these settings later." msgstr "你可以稍后在设置中更改。" +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "你可以随时修改此设置项。" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "无论你使用哪种设置,都不会影响已发起的对话。" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -5793,27 +6019,27 @@ msgstr "你目前还没有任何关注者。" msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "你目前还没有邀请码!当你持续使用 Bluesky 一段时间后,我们将提供一些新的邀请码给你。" -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." -msgstr "你目前还没有任何固定的信息流。" +msgstr "你目前还没有任何固定的资讯源。" -#: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "你目前还没有任何保存的信息流!" - -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." -msgstr "你目前还没有任何保存的信息流。" +msgstr "你目前还没有任何保存的资讯源。" -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "你已屏蔽该帖子作者,或你已被该作者屏蔽。" +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "你已屏蔽这个用户" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 msgid "You have blocked this user. You cannot view their content." -msgstr "你已屏蔽了此用户,你将无法查看他们发布的内容。" +msgstr "你已屏蔽这个用户,你将无法查看他们发布的内容。" #: src/screens/Login/SetNewPasswordForm.tsx:54 #: src/screens/Login/SetNewPasswordForm.tsx:91 @@ -5824,39 +6050,39 @@ msgstr "你输入的确认码无效。它应该长得像这样 XXXXX-XXXXX。" #: src/lib/moderation/useModerationCauseDescription.ts:109 msgid "You have hidden this post" -msgstr "你已隐藏此帖子" +msgstr "你已隐藏这条帖子" #: src/components/moderation/ModerationDetailsDialog.tsx:101 msgid "You have hidden this post." -msgstr "你已隐藏此帖子。" +msgstr "你已隐藏这条帖子。" #: src/components/moderation/ModerationDetailsDialog.tsx:94 #: src/lib/moderation/useModerationCauseDescription.ts:92 msgid "You have muted this account." -msgstr "你已隐藏此账户。" +msgstr "你已隐藏这个账户。" #: src/lib/moderation/useModerationCauseDescription.ts:86 msgid "You have muted this user" -msgstr "你已隐藏此用户" +msgstr "你已隐藏这个用户" + +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "你还没有任何私信,立即与其他人展开对话吧!" #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." -msgstr "你没有订阅信息流。" +msgstr "你还没有建立任何资讯源。" #: src/view/com/lists/MyLists.tsx:89 #: src/view/com/lists/ProfileLists.tsx:148 msgid "You have no lists." -msgstr "你没有列表。" - -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "" +msgstr "你还没有建立任何列表。" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." msgstr "你还没有屏蔽任何账户。要屏蔽账户,请转到其个人资料并在其账户上的菜单中选择 \"屏蔽账户\"。" -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "你尚未创建任何应用专用密码,可以通过点击下面的按钮来创建一个。" @@ -5864,13 +6090,21 @@ msgstr "你尚未创建任何应用专用密码,可以通过点击下面的按 msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." msgstr "你还没有隐藏任何账户。要隐藏账户,请转到其个人资料并在其账户上的菜单中选择 \"隐藏账户\"。" -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "你已经到末尾了" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "你还没有隐藏任何词或标签" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "如果你认为由他人放置标签的标记信息有误,你可以提出申诉。" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." -msgstr "如果你认为这些标记是错误的,你可以申诉这些标记。" +msgstr "如果你认为标签的标记信息有误,你可以提出申诉。" #: src/screens/Signup/StepInfo/Policies.tsx:79 msgid "You must be 13 years of age or older to sign up." @@ -5880,7 +6114,7 @@ msgstr "你必须年满13岁及以上才能注册。" msgid "You must be 18 years or older to enable adult content" msgstr "你必须年满18岁及以上才能启用成人内容" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "你必须选择至少一个标记者进行举报" @@ -5896,9 +6130,9 @@ msgstr "你将收到这条讨论串的通知" msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "你将收到一封带有确认码的电子邮件。请在此输入该确认码,然后输入你的新密码。" -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" -msgstr "" +msgstr "你:{0}" #: src/screens/Onboarding/StepModeration/index.tsx:60 msgid "You're in control" @@ -5910,70 +6144,74 @@ msgstr "你尽在掌控" msgid "You're in line" msgstr "轮到你了" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "你已设置完成!" #: src/components/moderation/ModerationDetailsDialog.tsx:98 #: src/lib/moderation/useModerationCauseDescription.ts:101 msgid "You've chosen to hide a word or tag within this post." -msgstr "你选择隐藏了此帖子中的词汇或标签。" +msgstr "你选择隐藏了这条帖子中的词汇或标签。" #: src/view/com/posts/FollowingEndOfFeed.tsx:48 msgid "You've reached the end of your feed! Find some more accounts to follow." -msgstr "你已经浏览完你的订阅信息流啦!寻找一些更多的账户关注吧。" +msgstr "你已经浏览完你的订阅资讯源啦!寻找一些更多的账户关注吧。" #: src/screens/Signup/index.tsx:164 msgid "Your account" msgstr "你的账户" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "你的账户已删除" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." -msgstr "你的帐户数据库包含所有公共数据记录,它们将被导出为“CAR”文件。此文件不包括帖子中的媒体,例如图像或你的隐私数据,这些数据需要另外获取。" +msgstr "你的账户数据库包含所有公共数据记录,它们将被导出为“CAR”文件。这个文件不包括帖子中的媒体,例如图像或你的隐私数据,这些数据需要另外获取。" #: src/screens/Signup/StepInfo/index.tsx:123 msgid "Your birth date" msgstr "你的生日" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "你的私信功能已被停用" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "你的选择将被保存,但可以稍后在设置中更改。" #: src/screens/Onboarding/StepFollowingFeed.tsx:62 msgid "Your default feed is \"Following\"" -msgstr "你的默认信息流为\"关注\"" +msgstr "你的默认资讯源为\"正在关注\"" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "你的电子邮箱似乎无效。" -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "你的电子邮箱已更新但尚未验证。作为下一步,请验证你的新电子邮件。" -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "你的电子邮箱尚未验证。这是一个重要的安全步骤,我们建议你完成验证。" #: src/view/com/posts/FollowingEmptyState.tsx:47 msgid "Your following feed is empty! Follow more users to see what's happening." -msgstr "你的关注信息流为空!关注更多用户去看看他们发了什么。" +msgstr "你的\"正在关注\"资讯源为空!关注更多用户去看看他们发了什么。" #: src/screens/Signup/StepHandle.tsx:73 msgid "Your full handle will be" msgstr "你的完整用户识别符将修改为" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "你的完整用户识别符将修改为 <0>@{0}" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "你的隐藏词汇" @@ -5981,22 +6219,26 @@ msgstr "你的隐藏词汇" msgid "Your password has been changed successfully!" msgstr "你的密码已成功更改!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "你的帖子已发布" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "你的帖子、喜欢和屏蔽是公开可见的,而隐藏不可见。" -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "你的个人资料" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "你的回复已发布" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "你的举报将发送至 Bluesky 内容审核服务" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "你的用户识别符" diff --git a/src/locale/locales/zh-TW/messages.po b/src/locale/locales/zh-TW/messages.po index 83aa37c5bf..376acd5969 100644 --- a/src/locale/locales/zh-TW/messages.po +++ b/src/locale/locales/zh-TW/messages.po @@ -1,141 +1,132 @@ msgid "" msgstr "" -"POT-Creation-Date: 2024-05-06 10:30+0800\n" +"Project-Id-Version: zh-TW for bluesky-social-app\n" +"POT-Creation-Date: \n" +"Report-Msgid-Bugs-To: Kuwa Lee , Frudrax Cheng \n" +"PO-Revision-Date: 2024-05-24 10:26+0800\n" +"Last-Translator: \n" +"Language-Team: Frudrax Cheng , Kuwa Lee , noeFly, snowleo208, Kisaragi Hiu, Yi-Jyun Pan, toto6038, cirx1e\n" +"Language: zh_TW\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: @lingui/cli\n" -"Language: zh_TW\n" -"Project-Id-Version: \n" -"Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: \n" -"Last-Translator: Kuwa Lee \n" -"Language-Team: Frudrax Cheng, Kuwa Lee, noeFly, snowleo208, Kisaragi Hiu, Yi-Jyun Pan, toto6038, cirx1e\n" "Plural-Forms: \n" -#: src/view/com/modals/VerifyEmail.tsx:151 +#: src/view/com/modals/VerifyEmail.tsx:150 msgid "(no email)" msgstr "(沒有電子郵件)" #: src/view/com/notifications/FeedItem.tsx:239 msgid "{0, plural, one {{formattedCount} other} other {{formattedCount} others}}" -msgstr "" +msgstr "{0, plural, one {其他 {formattedCount} 個人} other {其他 {formattedCount} 個人}}" -#: src/components/moderation/LabelsOnMe.tsx:57 -msgid "{0, plural, one {# label has been placed on this account} other {# labels has been placed on this account}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:55 +msgid "{0, plural, one {# label has been placed on this account} other {# labels have been placed on this account}}" +msgstr "{0, plural, one {該帳號有 # 個標籤} other {該帳號有 # 個標籤}}" -#: src/components/moderation/LabelsOnMe.tsx:63 -msgid "{0, plural, one {# label has been placed on this content} other {# labels has been placed on this content}}" -msgstr "" +#: src/components/moderation/LabelsOnMe.tsx:61 +msgid "{0, plural, one {# label has been placed on this content} other {# labels have been placed on this content}}" +msgstr "{0, plural, one {該內容有 # 個標籤} other {該內容有 # 個標籤}}" -#: src/view/com/util/post-ctrls/RepostButton.tsx:61 +#: src/view/com/util/post-ctrls/RepostButton.tsx:62 msgid "{0, plural, one {# repost} other {# reposts}}" -msgstr "" +msgstr "{0, plural, one {# 個轉貼} other {# 個轉貼}}" -#: src/components/ProfileHoverCard/index.web.tsx:373 +#: src/components/ProfileHoverCard/index.web.tsx:376 #: src/screens/Profile/Header/Metrics.tsx:23 msgid "{0, plural, one {follower} other {followers}}" -msgstr "" +msgstr "{0, plural,one {個跟隨者} other {個跟隨者}}" -#: src/components/ProfileHoverCard/index.web.tsx:377 +#: src/components/ProfileHoverCard/index.web.tsx:380 #: src/screens/Profile/Header/Metrics.tsx:27 msgid "{0, plural, one {following} other {following}}" -msgstr "" +msgstr "{0, plural, one {個跟隨中} other {個跟隨中}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:245 msgid "{0, plural, one {Like (# like)} other {Like (# likes)}}" -msgstr "" +msgstr "{0, plural, one {喜歡(# 個喜歡)} other {喜歡(# 個喜歡)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:359 +#: src/view/com/post-thread/PostThreadItem.tsx:358 msgid "{0, plural, one {like} other {likes}}" -msgstr "" +msgstr "{0, plural, one {喜歡} other {喜歡}}" -#: src/view/com/feeds/FeedSourceCard.tsx:267 +#: src/view/com/feeds/FeedSourceCard.tsx:269 msgid "{0, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{0, plural,one {# 個用戶已喜歡} other {# 個用戶已喜歡}}" #: src/screens/Profile/Header/Metrics.tsx:59 msgid "{0, plural, one {post} other {posts}}" -msgstr "" +msgstr "{0, plural, one {則貼文} other {則貼文}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:204 msgid "{0, plural, one {Reply (# reply)} other {Reply (# replies)}}" -msgstr "" +msgstr "{0, plural, one {回覆(# 個回覆)} other {回覆(# 個回覆)}}" -#: src/view/com/post-thread/PostThreadItem.tsx:339 +#: src/view/com/post-thread/PostThreadItem.tsx:338 msgid "{0, plural, one {repost} other {reposts}}" -msgstr "" +msgstr "{0, plural, one {轉貼} other {轉貼}}" #: src/view/com/util/post-ctrls/PostCtrls.tsx:241 msgid "{0, plural, one {Unlike (# like)} other {Unlike (# likes)}}" -msgstr "" +msgstr "{0, plural, one {撤回喜歡(# 個喜歡)} other {撤回喜歡(# 個喜歡)}}" #: src/components/LabelingServiceCard/index.tsx:71 msgid "{count, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +msgstr "{count, plural, one {# 個用戶已喜歡} other {# 個用戶已喜歡}}" #: src/screens/Deactivated.tsx:207 msgid "{estimatedTimeHrs, plural, one {hour} other {hours}}" -msgstr "" +msgstr "{estimatedTimeHrs, plural, one {時} other {時}}" #: src/screens/Deactivated.tsx:213 msgid "{estimatedTimeMins, plural, one {minute} other {minutes}}" -msgstr "" +msgstr "{estimatedTimeMins, plural, one {分} other {分}}" -#: src/components/ProfileHoverCard/index.web.tsx:454 +#: src/components/ProfileHoverCard/index.web.tsx:457 #: src/screens/Profile/Header/Metrics.tsx:50 msgid "{following} following" msgstr "{following} 個跟隨中" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:285 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:298 -#: src/view/screens/ProfileFeed.tsx:604 -msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" -msgstr "" +#: src/components/dms/NewChatDialog/index.tsx:171 +msgid "{handle} can't be messaged" +msgstr "無法傳送訊息給 {handle}" -#: src/view/shell/Drawer.tsx:464 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:299 +#: src/view/screens/ProfileFeed.tsx:585 +msgid "{likeCount, plural, one {Liked by # user} other {Liked by # users}}" +msgstr "{likeCount, plural, one {# 個用戶已喜歡} other {# 個用戶已喜歡}}" + +#: src/view/shell/Drawer.tsx:461 msgid "{numUnreadNotifications} unread" msgstr "{numUnreadNotifications} 個未讀通知" -#: src/view/screens/PreferencesFollowingFeed.tsx:66 +#: src/view/screens/PreferencesFollowingFeed.tsx:67 msgid "{value, plural, =0 {Show all replies} one {Show replies with at least # like} other {Show replies with at least # likes}}" -msgstr "" +msgstr "{value, plural, =0 {顯示所有回覆} one {顯示至少 # 個喜歡的回覆} other {顯示至少 # 個喜歡的回覆}}" #: src/view/com/threadgate/WhoCanReply.tsx:159 msgid "<0/> members" msgstr "<0/> 個成員" -#: src/view/shell/Drawer.tsx:92 +#: src/view/shell/Drawer.tsx:101 msgid "<0>{0} {1, plural, one {follower} other {followers}}" -msgstr "" +msgstr "<0>{0} {1, plural, one {個跟隨者} other {個跟隨者}}" -#: src/view/shell/Drawer.tsx:103 +#: src/view/shell/Drawer.tsx:112 msgid "<0>{0} {1, plural, one {following} other {following}}" -msgstr "" +msgstr "<0>{0} {1, plural, one {個跟隨中} other {個跟隨中}}" -#: src/view/shell/Drawer.tsx:96 -#~ msgid "<0>{0} following" -#~ msgstr "<0>{0} 個跟隨中" - -#: src/components/ProfileHoverCard/index.web.tsx:437 -#~ msgid "<0>{followers} <1>{pluralizedFollowers}" -#~ msgstr "<0>{followers} <1>{pluralizedFollowers}" - -#: src/components/ProfileHoverCard/index.web.tsx:449 -#: src/screens/Profile/Header/Metrics.tsx:45 -#~ msgid "<0>{following} <1>following" -#~ msgstr "<0>{following} <1>個跟隨中" - -#: src/view/com/modals/SelfLabel.tsx:134 +#: src/view/com/modals/SelfLabel.tsx:135 msgid "<0>Not Applicable. This warning is only available for posts with media attached." -msgstr "" +msgstr "<0>不適用。 此警告只適用於附帶媒體的貼文。" #: src/screens/Profile/Header/Handle.tsx:43 msgid "⚠Invalid Handle" msgstr "⚠無效的帳號代碼" -#: src/screens/Login/LoginForm.tsx:238 +#: src/screens/Login/LoginForm.tsx:244 msgid "2FA Confirmation" msgstr "雙重驗證" @@ -149,11 +140,11 @@ msgid "Access profile and other navigation links" msgstr "存取個人資料和其他導覽連結" #: src/view/com/modals/EditImage.tsx:300 -#: src/view/screens/Settings/index.tsx:509 +#: src/view/screens/Settings/index.tsx:511 msgid "Accessibility" msgstr "無障礙" -#: src/view/screens/Settings/index.tsx:500 +#: src/view/screens/Settings/index.tsx:502 msgid "Accessibility settings" msgstr "無障礙設定" @@ -162,25 +153,21 @@ msgstr "無障礙設定" msgid "Accessibility Settings" msgstr "無障礙設定" -#: src/components/moderation/LabelsOnMe.tsx:42 -#~ msgid "account" -#~ msgstr "帳號" - -#: src/screens/Login/LoginForm.tsx:161 -#: src/view/screens/Settings/index.tsx:336 -#: src/view/screens/Settings/index.tsx:718 +#: src/screens/Login/LoginForm.tsx:167 +#: src/view/screens/Settings/index.tsx:338 +#: src/view/screens/Settings/index.tsx:745 msgid "Account" msgstr "帳號" -#: src/view/com/profile/ProfileMenu.tsx:139 +#: src/view/com/profile/ProfileMenu.tsx:140 msgid "Account blocked" msgstr "已封鎖帳號" -#: src/view/com/profile/ProfileMenu.tsx:153 +#: src/view/com/profile/ProfileMenu.tsx:154 msgid "Account followed" msgstr "已跟隨帳號" -#: src/view/com/profile/ProfileMenu.tsx:113 +#: src/view/com/profile/ProfileMenu.tsx:114 msgid "Account muted" msgstr "已靜音帳號" @@ -201,67 +188,72 @@ msgstr "帳號選項" msgid "Account removed from quick access" msgstr "已從快速存取中移除帳號" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 -#: src/view/com/profile/ProfileMenu.tsx:128 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:131 +#: src/view/com/profile/ProfileMenu.tsx:129 msgid "Account unblocked" -msgstr "已取消封鎖帳號" +msgstr "已解除封鎖帳號" -#: src/view/com/profile/ProfileMenu.tsx:166 +#: src/view/com/profile/ProfileMenu.tsx:167 msgid "Account unfollowed" msgstr "已取消跟隨帳號" -#: src/view/com/profile/ProfileMenu.tsx:102 +#: src/view/com/profile/ProfileMenu.tsx:103 msgid "Account unmuted" msgstr "已取消靜音帳號" -#: src/components/dialogs/MutedWords.tsx:164 +#: src/components/dialogs/MutedWords.tsx:165 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/screens/ProfileList.tsx:823 +#: src/view/screens/ProfileList.tsx:880 msgid "Add" msgstr "新增" -#: src/view/com/modals/SelfLabel.tsx:56 +#: src/view/com/modals/SelfLabel.tsx:57 msgid "Add a content warning" msgstr "新增內容警告" -#: src/view/screens/ProfileList.tsx:813 +#: src/view/screens/ProfileList.tsx:870 msgid "Add a user to this list" msgstr "將用戶新增至此列表" #: src/components/dialogs/SwitchAccount.tsx:56 -#: src/view/screens/Settings/index.tsx:413 -#: src/view/screens/Settings/index.tsx:422 +#: src/view/screens/Settings/index.tsx:415 +#: src/view/screens/Settings/index.tsx:424 msgid "Add account" msgstr "新增帳號" -#: src/view/com/composer/GifAltText.tsx:69 -#: src/view/com/composer/GifAltText.tsx:135 +#: src/view/com/composer/GifAltText.tsx:70 +#: src/view/com/composer/GifAltText.tsx:136 +#: src/view/com/composer/GifAltText.tsx:176 #: src/view/com/composer/photos/Gallery.tsx:120 #: src/view/com/composer/photos/Gallery.tsx:187 -#: src/view/com/modals/AltImage.tsx:117 +#: src/view/com/modals/AltImage.tsx:118 msgid "Add alt text" msgstr "新增替代文字" -#: src/view/com/composer/GifAltText.tsx:175 -msgid "Add ALT text" -msgstr "" - -#: src/view/screens/AppPasswords.tsx:104 -#: src/view/screens/AppPasswords.tsx:145 -#: src/view/screens/AppPasswords.tsx:158 +#: src/view/screens/AppPasswords.tsx:106 +#: src/view/screens/AppPasswords.tsx:148 +#: src/view/screens/AppPasswords.tsx:161 msgid "Add App Password" msgstr "新增應用程式專用密碼" -#: src/components/dialogs/MutedWords.tsx:157 +#: src/components/dialogs/MutedWords.tsx:158 msgid "Add mute word for configured settings" msgstr "在已配置的設定中新增靜音文字" -#: src/components/dialogs/MutedWords.tsx:86 +#: src/components/dialogs/MutedWords.tsx:87 msgid "Add muted words and tags" msgstr "新增靜音文字及標籤" -#: src/view/com/modals/ChangeHandle.tsx:417 +#: src/screens/Home/NoFeedsPinned.tsx:112 +msgid "Add recommended feeds" +msgstr "添加推薦的動態源" + +#: src/screens/Feeds/NoFollowingFeed.tsx:41 +msgid "Add the default feed of only people you follow" +msgstr "添加預設的「Following」動態源,他只會顯示您跟隨的人" + +#: src/view/com/modals/ChangeHandle.tsx:410 msgid "Add the following DNS record to your domain:" msgstr "將以下 DNS 記錄新增到您的網域:" @@ -270,7 +262,7 @@ msgstr "將以下 DNS 記錄新增到您的網域:" msgid "Add to Lists" msgstr "新增至列表" -#: src/view/com/feeds/FeedSourceCard.tsx:233 +#: src/view/com/feeds/FeedSourceCard.tsx:235 msgid "Add to my feeds" msgstr "加入到我的動態源" @@ -279,17 +271,17 @@ msgstr "加入到我的動態源" msgid "Added to list" msgstr "新增至列表" -#: src/view/com/feeds/FeedSourceCard.tsx:107 +#: src/view/com/feeds/FeedSourceCard.tsx:112 msgid "Added to my feeds" msgstr "加入到我的動態源" -#: src/view/screens/PreferencesFollowingFeed.tsx:171 +#: src/view/screens/PreferencesFollowingFeed.tsx:172 msgid "Adjust the number of likes a reply must have to be shown in your feed." -msgstr "調整在「Following」動態中顯示屬於回復貼文的最低喜歡數門檻。" +msgstr "調整回覆貼文在您的動態中顯示所需的最低喜歡數量。" #: src/lib/moderation/useGlobalLabelStrings.ts:34 #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:117 -#: src/view/com/modals/SelfLabel.tsx:75 +#: src/view/com/modals/SelfLabel.tsx:76 msgid "Adult Content" msgstr "成人內容" @@ -298,14 +290,24 @@ msgid "Adult content is disabled." msgstr "成人內容已停用。" #: src/screens/Moderation/index.tsx:375 -#: src/view/screens/Settings/index.tsx:652 +#: src/view/screens/Settings/index.tsx:679 msgid "Advanced" -msgstr "詳細設定" +msgstr "進階設定" -#: src/view/screens/Feeds.tsx:691 +#: src/view/screens/Feeds.tsx:797 msgid "All the feeds you've saved, right in one place." msgstr "以下是您保存的動態源。" +#: src/view/com/modals/AddAppPasswords.tsx:188 +#: src/view/com/modals/AddAppPasswords.tsx:195 +msgid "Allow access to your direct messages" +msgstr "允許存取您的私人訊息" + +#: src/screens/Messages/Settings.tsx:62 +#: src/screens/Messages/Settings.tsx:65 +msgid "Allow new messages from" +msgstr "允許這些人發起新對話:" + #: src/screens/Login/ForgotPasswordForm.tsx:178 #: src/view/com/modals/ChangePassword.tsx:172 msgid "Already have a code?" @@ -313,15 +315,15 @@ msgstr "已經有重置碼了?" #: src/screens/Login/ChooseAccountForm.tsx:49 msgid "Already signed in as @{0}" -msgstr "已以@{0}身份登入" +msgstr "已以 @{0} 身份登入" -#: src/view/com/composer/GifAltText.tsx:93 +#: src/view/com/composer/GifAltText.tsx:94 #: src/view/com/composer/photos/Gallery.tsx:144 #: src/view/com/util/post-embeds/GifEmbed.tsx:173 msgid "ALT" msgstr "ALT" -#: src/view/com/composer/GifAltText.tsx:144 +#: src/view/com/composer/GifAltText.tsx:145 #: src/view/com/modals/EditImage.tsx:316 #: src/view/screens/AccessibilitySettings.tsx:77 msgid "Alt text" @@ -329,30 +331,26 @@ msgstr "替代文字" #: src/view/com/util/post-embeds/GifEmbed.tsx:179 msgid "Alt Text" -msgstr "" +msgstr "替代文字" #: src/view/com/composer/photos/Gallery.tsx:224 msgid "Alt text describes images for blind and low-vision users, and helps give context to everyone." msgstr "替代文字為盲人和視障人士描述圖片及提供情境。" -#: src/view/com/modals/VerifyEmail.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:97 +#: src/view/com/modals/VerifyEmail.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:96 msgid "An email has been sent to {0}. It includes a confirmation code which you can enter below." msgstr "一封電子郵件已發送至 {0}。請查閱郵件並在下方輸入驗證碼。" -#: src/view/com/modals/ChangeEmail.tsx:121 +#: src/view/com/modals/ChangeEmail.tsx:114 msgid "An email has been sent to your previous address, {0}. It includes a confirmation code which you can enter below." msgstr "一封電子郵件已發送至先前填寫的電子郵件地址 {0}。請查閱郵件並在下方輸入驗證碼。" -#: src/components/dialogs/GifSelect.tsx:284 +#: src/components/dialogs/GifSelect.tsx:285 msgid "An error occured" msgstr "發生錯誤" -#: src/components/dms/MessageMenu.tsx:132 -msgid "An error occurred while trying to delete the message. Please try again." -msgstr "" - -#: src/lib/moderation/useReportOptions.ts:26 +#: src/lib/moderation/useReportOptions.ts:27 msgid "An issue not included in these options" msgstr "問題不在上述選項" @@ -365,16 +363,16 @@ msgstr "問題不在上述選項" msgid "An issue occurred, please try again." msgstr "出現問題,請再試一次。" -#: src/screens/Onboarding/StepInterests/index.tsx:194 +#: src/screens/Onboarding/StepInterests/index.tsx:204 msgid "an unknown error occurred" -msgstr "" +msgstr "出現未知錯誤" #: src/view/com/notifications/FeedItem.tsx:236 #: src/view/com/threadgate/WhoCanReply.tsx:180 msgid "and" msgstr "和" -#: src/screens/Onboarding/index.tsx:32 +#: src/screens/Onboarding/index.tsx:44 msgid "Animals" msgstr "動物" @@ -382,7 +380,7 @@ msgstr "動物" msgid "Animated GIF" msgstr "GIF 動畫" -#: src/lib/moderation/useReportOptions.ts:31 +#: src/lib/moderation/useReportOptions.ts:32 msgid "Anti-Social Behavior" msgstr "反社會行為" @@ -390,70 +388,79 @@ msgstr "反社會行為" msgid "App Language" msgstr "應用程式語言" -#: src/view/screens/AppPasswords.tsx:223 +#: src/view/screens/AppPasswords.tsx:228 msgid "App password deleted" msgstr "應用程式專用密碼已刪除" -#: src/view/com/modals/AddAppPasswords.tsx:135 +#: src/view/com/modals/AddAppPasswords.tsx:139 msgid "App Password names can only contain letters, numbers, spaces, dashes, and underscores." msgstr "應用程式專用密碼只能包含字母、數字、空格、破折號及底線。" -#: src/view/com/modals/AddAppPasswords.tsx:100 +#: src/view/com/modals/AddAppPasswords.tsx:104 msgid "App Password names must be at least 4 characters long." msgstr "應用程式專用密碼名稱必須至少為 4 個字元。" -#: src/view/screens/Settings/index.tsx:663 +#: src/view/screens/Settings/index.tsx:690 msgid "App password settings" msgstr "應用程式專用密碼設定" #: src/Navigation.tsx:258 -#: src/view/screens/AppPasswords.tsx:189 -#: src/view/screens/Settings/index.tsx:672 +#: src/view/screens/AppPasswords.tsx:192 +#: src/view/screens/Settings/index.tsx:699 msgid "App Passwords" msgstr "應用程式專用密碼" -#: src/components/moderation/LabelsOnMeDialog.tsx:133 -#: src/components/moderation/LabelsOnMeDialog.tsx:136 +#: src/components/moderation/LabelsOnMeDialog.tsx:153 +#: src/components/moderation/LabelsOnMeDialog.tsx:156 msgid "Appeal" msgstr "申訴" -#: src/components/moderation/LabelsOnMeDialog.tsx:202 +#: src/components/moderation/LabelsOnMeDialog.tsx:238 msgid "Appeal \"{0}\" label" msgstr "申訴「{0}」標記" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 +#: src/components/moderation/LabelsOnMeDialog.tsx:229 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:91 msgid "Appeal submitted" -msgstr "" +msgstr "已提交申訴" -#: src/components/moderation/LabelsOnMeDialog.tsx:193 -#~ msgid "Appeal submitted." -#~ msgstr "申訴已提交。" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:51 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:53 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:101 +msgid "Appeal this decision" +msgstr "對此決定提出上訴" -#: src/view/screens/Settings/index.tsx:430 +#: src/view/screens/Settings/index.tsx:432 msgid "Appearance" msgstr "外觀" -#: src/view/screens/AppPasswords.tsx:265 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:47 +#: src/screens/Home/NoFeedsPinned.tsx:106 +msgid "Apply default recommended feeds" +msgstr "使用預設推薦的動態源" + +#: src/view/screens/AppPasswords.tsx:282 msgid "Are you sure you want to delete the app password \"{name}\"?" msgstr "您確定要刪除這個應用程式專用密碼「{name}」嗎?" -#: src/components/dms/MessageMenu.tsx:121 -msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for other participants." -msgstr "" +#: src/components/dms/MessageMenu.tsx:124 +msgid "Are you sure you want to delete this message? The message will be deleted for you, but not for the other participant." +msgstr "您確定要刪除這則訊息嗎?該訊息將為您刪除,但不會為其他參與者刪除。" -#: src/components/dms/ConvoMenu.tsx:173 -msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for other participants." -msgstr "" +#: src/components/dms/LeaveConvoPrompt.tsx:48 +msgid "Are you sure you want to leave this conversation? Your messages will be deleted for you, but not for the other participant." +msgstr "您確定要離開此對話嗎?您的訊息將為您刪除,但不會為其他參與者刪除。" -#: src/view/com/feeds/FeedSourceCard.tsx:280 +#: src/view/com/feeds/FeedSourceCard.tsx:282 msgid "Are you sure you want to remove {0} from your feeds?" -msgstr "您確定要從您的動態源中移除 {0} 嗎?" +msgstr "您確定要從您的動態中移除 {0} 嗎?" -#: src/view/com/composer/Composer.tsx:573 +#: src/view/com/composer/Composer.tsx:577 msgid "Are you sure you'd like to discard this draft?" msgstr "您確定要捨棄此草稿嗎?" -#: src/components/dialogs/MutedWords.tsx:281 +#: src/components/dialogs/MutedWords.tsx:283 msgid "Are you sure?" msgstr "您確定嗎?" @@ -461,11 +468,11 @@ msgstr "您確定嗎?" msgid "Are you writing in <0>{0}?" msgstr "您正在使用 <0>{0} 書寫嗎?" -#: src/screens/Onboarding/index.tsx:26 +#: src/screens/Onboarding/index.tsx:38 msgid "Art" msgstr "藝術" -#: src/view/com/modals/SelfLabel.tsx:123 +#: src/view/com/modals/SelfLabel.tsx:124 msgid "Artistic or non-erotic nudity." msgstr "藝術作品或非情色的裸露。" @@ -473,18 +480,20 @@ msgstr "藝術作品或非情色的裸露。" msgid "At least 3 characters" msgstr "至少 3 個字元" -#: src/components/moderation/LabelsOnMeDialog.tsx:247 -#: src/components/moderation/LabelsOnMeDialog.tsx:248 +#: src/components/dms/MessagesListHeader.tsx:74 +#: src/components/moderation/LabelsOnMeDialog.tsx:283 +#: src/components/moderation/LabelsOnMeDialog.tsx:284 #: src/screens/Login/ChooseAccountForm.tsx:98 #: src/screens/Login/ChooseAccountForm.tsx:103 #: src/screens/Login/ForgotPasswordForm.tsx:129 #: src/screens/Login/ForgotPasswordForm.tsx:135 -#: src/screens/Login/LoginForm.tsx:269 #: src/screens/Login/LoginForm.tsx:275 +#: src/screens/Login/LoginForm.tsx:281 #: src/screens/Login/SetNewPasswordForm.tsx:160 #: src/screens/Login/SetNewPasswordForm.tsx:166 -#: src/screens/Messages/Conversation/index.tsx:115 -#: src/screens/Profile/Header/Shell.tsx:99 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:133 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:134 +#: src/screens/Profile/Header/Shell.tsx:100 #: src/screens/Signup/index.tsx:193 #: src/view/com/util/ViewHeader.tsx:89 msgid "Back" @@ -494,7 +503,7 @@ msgstr "返回" msgid "Based on your interest in {interestsText}" msgstr "因為您對 {interestsText} 感興趣" -#: src/view/screens/Settings/index.tsx:487 +#: src/view/screens/Settings/index.tsx:489 msgid "Basics" msgstr "基本設定" @@ -502,19 +511,19 @@ msgstr "基本設定" msgid "Birthday" msgstr "生日" -#: src/view/screens/Settings/index.tsx:368 +#: src/view/screens/Settings/index.tsx:370 msgid "Birthday:" msgstr "生日:" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 msgid "Block" msgstr "封鎖" -#: src/components/dms/ConvoMenu.tsx:135 -#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 msgid "Block account" -msgstr "" +msgstr "封鎖帳號" #: src/view/com/profile/ProfileMenu.tsx:300 #: src/view/com/profile/ProfileMenu.tsx:307 @@ -525,22 +534,22 @@ msgstr "封鎖帳號" msgid "Block Account?" msgstr "封鎖帳號?" -#: src/view/screens/ProfileList.tsx:526 +#: src/view/screens/ProfileList.tsx:583 msgid "Block accounts" msgstr "封鎖帳號" -#: src/view/screens/ProfileList.tsx:630 +#: src/view/screens/ProfileList.tsx:687 msgid "Block list" msgstr "封鎖列表" -#: src/view/screens/ProfileList.tsx:625 +#: src/view/screens/ProfileList.tsx:682 msgid "Block these accounts?" msgstr "封鎖這些帳號?" #: src/view/com/lists/ListCard.tsx:110 #: src/view/com/util/post-embeds/QuoteEmbed.tsx:71 msgid "Blocked" -msgstr "已封鎖" +msgstr "已被封鎖" #: src/screens/Moderation/index.tsx:267 msgid "Blocked accounts" @@ -559,21 +568,21 @@ msgstr "被封鎖的帳號無法在您的討論串中回覆、提及您,或以 msgid "Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you. You will not see their content and they will be prevented from seeing yours." msgstr "被封鎖的帳號無法在您的討論串中回覆、提及您,或以其他方式與您互動。您將看不到他們的內容,他們也會被阻止看到您的內容。" -#: src/view/com/post-thread/PostThread.tsx:316 +#: src/view/com/post-thread/PostThread.tsx:370 msgid "Blocked post." msgstr "已封鎖貼文。" -#: src/screens/Profile/Sections/Labels.tsx:166 +#: src/screens/Profile/Sections/Labels.tsx:173 msgid "Blocking does not prevent this labeler from placing labels on your account." -msgstr "封鎖此帳戶不會阻止被貼上標記。" +msgstr "封鎖此帳號不會阻止被貼上標記。" -#: src/view/screens/ProfileList.tsx:627 +#: src/view/screens/ProfileList.tsx:684 msgid "Blocking is public. Blocked accounts cannot reply in your threads, mention you, or otherwise interact with you." msgstr "封鎖資訊是公開的。被封鎖的帳號無法在您的討論串中回覆、提及您,或以其他方式與您互動。" #: src/view/com/profile/ProfileMenu.tsx:353 msgid "Blocking will not prevent labels from being applied on your account, but it will stop this account from replying in your threads or interacting with you." -msgstr "封鎖此帳戶不會阻止被貼上標記,但它會阻止此帳戶在您的討論串中回覆或與您進行互動。" +msgstr "封鎖此帳號不會阻止被貼上標記,但它會阻止此帳號在您的討論串中回覆或與您進行互動。" #: src/view/com/auth/SplashScreen.web.tsx:154 msgid "Blog" @@ -600,10 +609,15 @@ msgstr "模糊圖片" msgid "Blur images and filter from feeds" msgstr "從動態中模糊圖片並過濾" -#: src/screens/Onboarding/index.tsx:33 +#: src/screens/Onboarding/index.tsx:45 msgid "Books" msgstr "書籍" +#: src/screens/Home/NoFeedsPinned.tsx:116 +#: src/screens/Home/NoFeedsPinned.tsx:123 +msgid "Browse other feeds" +msgstr "瀏覽其他動態源" + #: src/view/com/auth/SplashScreen.web.tsx:151 msgid "Business" msgstr "商務" @@ -618,7 +632,7 @@ msgstr "來自 {0}" #: src/screens/Onboarding/StepAlgoFeeds/FeedCard.tsx:112 msgid "by @{0}" -msgstr "" +msgstr "來自 @{0}" #: src/view/com/profile/ProfileSubpageHeader.tsx:161 msgid "by <0/>" @@ -626,7 +640,7 @@ msgstr "來自 <0/>" #: src/screens/Signup/StepInfo/Policies.tsx:74 msgid "By creating an account you agree to the {els}." -msgstr "建立帳戶即表示您同意 {els}。" +msgstr "建立帳號即表示您同意 {els}。" #: src/view/com/profile/ProfileSubpageHeader.tsx:159 msgid "by you" @@ -636,7 +650,7 @@ msgstr "來自您" msgid "Camera" msgstr "相機" -#: src/view/com/modals/AddAppPasswords.tsx:217 +#: src/view/com/modals/AddAppPasswords.tsx:180 msgid "Can only contain letters, numbers, spaces, dashes, and underscores. Must be at least 4 characters long, but no more than 32 characters long." msgstr "只能包含字母、數字、空格、破折號及底線。長度必須至少 4 個字元,但不超過 32 個字元。" @@ -644,11 +658,11 @@ msgstr "只能包含字母、數字、空格、破折號及底線。長度必須 #: src/components/Prompt.tsx:119 #: src/components/Prompt.tsx:121 #: src/components/TagMenu/index.tsx:268 -#: src/view/com/composer/Composer.tsx:387 -#: src/view/com/composer/Composer.tsx:392 -#: src/view/com/modals/ChangeEmail.tsx:220 -#: src/view/com/modals/ChangeEmail.tsx:222 -#: src/view/com/modals/ChangeHandle.tsx:155 +#: src/view/com/composer/Composer.tsx:391 +#: src/view/com/composer/Composer.tsx:396 +#: src/view/com/modals/ChangeEmail.tsx:213 +#: src/view/com/modals/ChangeEmail.tsx:215 +#: src/view/com/modals/ChangeHandle.tsx:148 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/modals/CreateOrEditList.tsx:358 @@ -660,26 +674,26 @@ msgstr "只能包含字母、數字、空格、破折號及底線。長度必須 #: src/view/com/modals/LinkWarning.tsx:105 #: src/view/com/modals/LinkWarning.tsx:107 #: src/view/com/modals/Repost.tsx:88 -#: src/view/com/modals/VerifyEmail.tsx:256 -#: src/view/com/modals/VerifyEmail.tsx:262 +#: src/view/com/modals/VerifyEmail.tsx:255 +#: src/view/com/modals/VerifyEmail.tsx:261 #: src/view/screens/Search/Search.tsx:674 #: src/view/shell/desktop/Search.tsx:218 msgid "Cancel" msgstr "取消" #: src/view/com/modals/CreateOrEditList.tsx:363 -#: src/view/com/modals/DeleteAccount.tsx:156 -#: src/view/com/modals/DeleteAccount.tsx:234 +#: src/view/com/modals/DeleteAccount.tsx:166 +#: src/view/com/modals/DeleteAccount.tsx:244 msgctxt "action" msgid "Cancel" msgstr "取消" -#: src/view/com/modals/DeleteAccount.tsx:152 -#: src/view/com/modals/DeleteAccount.tsx:230 +#: src/view/com/modals/DeleteAccount.tsx:162 +#: src/view/com/modals/DeleteAccount.tsx:240 msgid "Cancel account deletion" msgstr "取消刪除帳號" -#: src/view/com/modals/ChangeHandle.tsx:151 +#: src/view/com/modals/ChangeHandle.tsx:144 msgid "Cancel change handle" msgstr "取消修改帳號代碼" @@ -704,34 +718,34 @@ msgstr "取消搜尋" msgid "Cancels opening the linked website" msgstr "取消開啟網站連結" -#: src/view/com/modals/VerifyEmail.tsx:161 +#: src/view/com/modals/VerifyEmail.tsx:160 msgid "Change" msgstr "變更" -#: src/view/screens/Settings/index.tsx:362 +#: src/view/screens/Settings/index.tsx:364 msgctxt "action" msgid "Change" msgstr "變更" -#: src/view/screens/Settings/index.tsx:684 +#: src/view/screens/Settings/index.tsx:711 msgid "Change handle" msgstr "變更帳號代碼" -#: src/view/com/modals/ChangeHandle.tsx:163 -#: src/view/screens/Settings/index.tsx:695 +#: src/view/com/modals/ChangeHandle.tsx:156 +#: src/view/screens/Settings/index.tsx:722 msgid "Change Handle" msgstr "變更帳號代碼" -#: src/view/com/modals/VerifyEmail.tsx:156 +#: src/view/com/modals/VerifyEmail.tsx:155 msgid "Change my email" msgstr "變更我的電子郵件地址" -#: src/view/screens/Settings/index.tsx:729 +#: src/view/screens/Settings/index.tsx:756 msgid "Change password" msgstr "變更密碼" #: src/view/com/modals/ChangePassword.tsx:143 -#: src/view/screens/Settings/index.tsx:740 +#: src/view/screens/Settings/index.tsx:767 msgid "Change Password" msgstr "變更密碼" @@ -739,41 +753,47 @@ msgstr "變更密碼" msgid "Change post language to {0}" msgstr "變更貼文的發佈語言為 {0}" -#: src/view/com/modals/ChangeEmail.tsx:111 +#: src/view/com/modals/ChangeEmail.tsx:104 msgid "Change Your Email" msgstr "變更您的電子郵件地址" #: src/Navigation.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:201 +#: src/view/shell/desktop/LeftNav.tsx:295 msgid "Chat" -msgstr "私訊" +msgstr "對話" -#: src/components/dms/ConvoMenu.tsx:55 +#: src/components/dms/ConvoMenu.tsx:80 msgid "Chat muted" -msgstr "" +msgstr "對話已靜音" -#: src/components/dms/ConvoMenu.tsx:87 -#: src/components/dms/MessageMenu.tsx:69 +#: src/components/dms/ConvoMenu.tsx:110 +#: src/components/dms/MessageMenu.tsx:67 +#: src/Navigation.tsx:307 +#: src/screens/Messages/List/index.tsx:88 +#: src/view/screens/Settings/index.tsx:631 msgid "Chat settings" -msgstr "" +msgstr "對話設定" -#: src/components/dms/ConvoMenu.tsx:65 +#: src/screens/Messages/Settings.tsx:59 +#: src/view/screens/Settings/index.tsx:640 +msgid "Chat Settings" +msgstr "對話設定" + +#: src/components/dms/ConvoMenu.tsx:82 msgid "Chat unmuted" -msgstr "" - -#: src/screens/Messages/Conversation/index.tsx:26 -#~ msgid "Chat with {chatId}" -#~ msgstr "與 {chatId} 對話" +msgstr "對話已解除靜音" #: src/screens/Deactivated.tsx:78 #: src/screens/Deactivated.tsx:82 msgid "Check my status" msgstr "檢查我的狀態" -#: src/screens/Login/LoginForm.tsx:262 +#: src/screens/Login/LoginForm.tsx:268 msgid "Check your email for a login code and enter it here." msgstr "在此輸入寄送至您電子郵件地址的驗證碼。" -#: src/view/com/modals/DeleteAccount.tsx:169 +#: src/view/com/modals/DeleteAccount.tsx:179 msgid "Check your inbox for an email with the confirmation code to enter below:" msgstr "在下方輸入寄送至您電子郵件地址的驗證碼:" @@ -785,10 +805,14 @@ msgstr "選擇「所有人」或「沒有人」" msgid "Choose Service" msgstr "選擇服務" -#: src/screens/Onboarding/StepFinished.tsx:141 +#: src/screens/Onboarding/StepFinished.tsx:238 msgid "Choose the algorithms that power your custom feeds." msgstr "選擇提供您自定義動態的演算法。" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:107 +msgid "Choose this color as your avatar" +msgstr "選擇這個顏色作為您的頭像" + #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:104 msgid "Choose your main feeds" msgstr "選擇您的主要動態源" @@ -797,19 +821,19 @@ msgstr "選擇您的主要動態源" msgid "Choose your password" msgstr "選擇您的密碼" -#: src/view/screens/Settings/index.tsx:843 +#: src/view/screens/Settings/index.tsx:880 msgid "Clear all legacy storage data" msgstr "清除所有殘存資料" -#: src/view/screens/Settings/index.tsx:846 +#: src/view/screens/Settings/index.tsx:883 msgid "Clear all legacy storage data (restart after this)" msgstr "清除所有殘存資料(並重啟)" -#: src/view/screens/Settings/index.tsx:855 +#: src/view/screens/Settings/index.tsx:892 msgid "Clear all storage data" msgstr "清除所有資料" -#: src/view/screens/Settings/index.tsx:858 +#: src/view/screens/Settings/index.tsx:895 msgid "Clear all storage data (restart after this)" msgstr "清除所有資料(並重啟)" @@ -818,11 +842,11 @@ msgstr "清除所有資料(並重啟)" msgid "Clear search query" msgstr "清除搜尋記錄" -#: src/view/screens/Settings/index.tsx:844 +#: src/view/screens/Settings/index.tsx:881 msgid "Clears all legacy storage data" msgstr "清除所有遺留資料" -#: src/view/screens/Settings/index.tsx:856 +#: src/view/screens/Settings/index.tsx:893 msgid "Clears all storage data" msgstr "清除所有資料" @@ -834,19 +858,28 @@ msgstr "點擊這裡" msgid "Click here to open tag menu for {tag}" msgstr "點擊這裡以開啟 {tag} 的標籤選單" -#: src/screens/Onboarding/index.tsx:35 +#: src/components/dms/MessageItem.tsx:223 +msgid "Click to retry failed message" +msgstr "點擊以重試傳送訊息" + +#: src/screens/Onboarding/index.tsx:47 msgid "Climate" msgstr "氣象" -#: src/components/dialogs/GifSelect.tsx:300 +#: src/components/dms/ChatEmptyPill.tsx:39 +msgid "Clip 🐴 clop 🐴" +msgstr "達達的馬蹄🐴是美麗的錯誤🐴" + +#: src/components/dialogs/GifSelect.tsx:301 +#: src/components/dms/NewChatDialog/index.tsx:437 #: src/view/com/modals/ChangePassword.tsx:269 #: src/view/com/modals/ChangePassword.tsx:272 #: src/view/com/util/post-embeds/GifEmbed.tsx:185 msgid "Close" msgstr "關閉" -#: src/components/Dialog/index.web.tsx:111 -#: src/components/Dialog/index.web.tsx:246 +#: src/components/Dialog/index.web.tsx:113 +#: src/components/Dialog/index.web.tsx:251 msgid "Close active dialog" msgstr "關閉打開的對話框" @@ -858,7 +891,7 @@ msgstr "關閉警告" msgid "Close bottom drawer" msgstr "關閉底欄" -#: src/components/dialogs/GifSelect.tsx:294 +#: src/components/dialogs/GifSelect.tsx:295 msgid "Close dialog" msgstr "關閉對話框" @@ -874,6 +907,10 @@ msgstr "關閉圖片" msgid "Close image viewer" msgstr "關閉圖片檢視器" +#: src/components/dms/MessagesNUX.tsx:162 +msgid "Close modal" +msgstr "關閉視窗" + #: src/view/shell/index.web.tsx:61 msgid "Close navigation footer" msgstr "關閉導覽頁腳" @@ -891,7 +928,7 @@ msgstr "關閉底部導覽列" msgid "Closes password update alert" msgstr "關閉密碼更新警告" -#: src/view/com/composer/Composer.tsx:389 +#: src/view/com/composer/Composer.tsx:393 msgid "Closes post composer and discards post draft" msgstr "關閉貼文編輯頁並捨棄草稿" @@ -903,11 +940,11 @@ msgstr "關閉標題圖片檢視器" msgid "Collapses list of users for a given notification" msgstr "折疊指定通知的用戶清單" -#: src/screens/Onboarding/index.tsx:41 +#: src/screens/Onboarding/index.tsx:53 msgid "Comedy" msgstr "喜劇" -#: src/screens/Onboarding/index.tsx:27 +#: src/screens/Onboarding/index.tsx:39 msgid "Comics" msgstr "漫畫" @@ -916,7 +953,7 @@ msgstr "漫畫" msgid "Community Guidelines" msgstr "社群守則" -#: src/screens/Onboarding/StepFinished.tsx:154 +#: src/screens/Onboarding/StepFinished.tsx:251 msgid "Complete onboarding and start using your account" msgstr "完成初始設定並開始使用您的帳號" @@ -924,7 +961,7 @@ msgstr "完成初始設定並開始使用您的帳號" msgid "Complete the challenge" msgstr "完成驗證" -#: src/view/com/composer/Composer.tsx:507 +#: src/view/com/composer/Composer.tsx:505 msgid "Compose posts up to {MAX_GRAPHEME_LENGTH} characters in length" msgstr "撰寫貼文的長度最多為 {MAX_GRAPHEME_LENGTH} 個字元" @@ -942,22 +979,22 @@ msgstr "為 {name} 配置內容過濾設定" #: src/components/moderation/LabelPreference.tsx:244 msgid "Configured in <0>moderation settings." -msgstr "已在<0>限制設定中配置。" +msgstr "已在<0>內容管理設定中配置。" #: src/components/Prompt.tsx:159 #: src/components/Prompt.tsx:162 -#: src/view/com/modals/SelfLabel.tsx:154 -#: src/view/com/modals/VerifyEmail.tsx:240 -#: src/view/com/modals/VerifyEmail.tsx:242 -#: src/view/screens/PreferencesFollowingFeed.tsx:306 +#: src/view/com/modals/SelfLabel.tsx:155 +#: src/view/com/modals/VerifyEmail.tsx:239 +#: src/view/com/modals/VerifyEmail.tsx:241 +#: src/view/screens/PreferencesFollowingFeed.tsx:307 #: src/view/screens/PreferencesThreads.tsx:159 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:181 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:184 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:180 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:183 msgid "Confirm" msgstr "確認" -#: src/view/com/modals/ChangeEmail.tsx:195 -#: src/view/com/modals/ChangeEmail.tsx:197 +#: src/view/com/modals/ChangeEmail.tsx:188 +#: src/view/com/modals/ChangeEmail.tsx:190 msgid "Confirm Change" msgstr "確認更改" @@ -965,7 +1002,7 @@ msgstr "確認更改" msgid "Confirm content language settings" msgstr "確認內容語言設定" -#: src/view/com/modals/DeleteAccount.tsx:220 +#: src/view/com/modals/DeleteAccount.tsx:230 msgid "Confirm delete account" msgstr "確認刪除帳號" @@ -977,17 +1014,17 @@ msgstr "確認您的年齡:" msgid "Confirm your birthdate" msgstr "確認您的出生日期" -#: src/screens/Login/LoginForm.tsx:244 -#: src/view/com/modals/ChangeEmail.tsx:159 -#: src/view/com/modals/DeleteAccount.tsx:176 -#: src/view/com/modals/DeleteAccount.tsx:182 -#: src/view/com/modals/VerifyEmail.tsx:174 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:144 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:150 +#: src/screens/Login/LoginForm.tsx:250 +#: src/view/com/modals/ChangeEmail.tsx:152 +#: src/view/com/modals/DeleteAccount.tsx:186 +#: src/view/com/modals/DeleteAccount.tsx:192 +#: src/view/com/modals/VerifyEmail.tsx:173 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:143 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:149 msgid "Confirmation code" msgstr "驗證碼" -#: src/screens/Login/LoginForm.tsx:296 +#: src/screens/Login/LoginForm.tsx:302 msgid "Connecting..." msgstr "連線中…" @@ -995,10 +1032,6 @@ msgstr "連線中…" msgid "Contact support" msgstr "聯繫支援" -#: src/components/moderation/LabelsOnMe.tsx:42 -#~ msgid "content" -#~ msgstr "內容" - #: src/lib/moderation/useGlobalLabelStrings.ts:18 msgid "Content Blocked" msgstr "已封鎖內容" @@ -1034,8 +1067,9 @@ msgstr "彈出式選單背景,點擊以關閉選單。" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:161 #: src/screens/Onboarding/StepFollowingFeed.tsx:154 -#: src/screens/Onboarding/StepInterests/index.tsx:253 +#: src/screens/Onboarding/StepInterests/index.tsx:263 #: src/screens/Onboarding/StepModeration/index.tsx:103 +#: src/screens/Onboarding/StepProfile/index.tsx:272 #: src/screens/Onboarding/StepTopicalFeeds.tsx:118 msgid "Continue" msgstr "繼續" @@ -1045,8 +1079,9 @@ msgid "Continue as {0} (currently signed in)" msgstr "以 {0} 繼續 (目前已登入)" #: src/screens/Onboarding/StepFollowingFeed.tsx:151 -#: src/screens/Onboarding/StepInterests/index.tsx:250 +#: src/screens/Onboarding/StepInterests/index.tsx:260 #: src/screens/Onboarding/StepModeration/index.tsx:100 +#: src/screens/Onboarding/StepProfile/index.tsx:269 #: src/screens/Onboarding/StepTopicalFeeds.tsx:115 #: src/screens/Signup/index.tsx:213 msgid "Continue to next step" @@ -1060,22 +1095,26 @@ msgstr "繼續下一步" msgid "Continue to the next step without following any accounts" msgstr "繼續下一步,不跟隨任何帳號" -#: src/screens/Onboarding/index.tsx:44 +#: src/screens/Messages/List/ChatListItem.tsx:109 +msgid "Conversation deleted" +msgstr "對話已刪除" + +#: src/screens/Onboarding/index.tsx:56 msgid "Cooking" msgstr "烹飪" -#: src/view/com/modals/AddAppPasswords.tsx:196 +#: src/view/com/modals/AddAppPasswords.tsx:221 #: src/view/com/modals/InviteCodes.tsx:183 msgid "Copied" msgstr "已複製" -#: src/view/screens/Settings/index.tsx:260 +#: src/view/screens/Settings/index.tsx:261 msgid "Copied build version to clipboard" msgstr "已複製建構版本號至剪貼簿" -#: src/components/dms/MessageMenu.tsx:47 -#: src/view/com/modals/AddAppPasswords.tsx:77 -#: src/view/com/modals/ChangeHandle.tsx:327 +#: src/components/dms/MessageMenu.tsx:51 +#: src/view/com/modals/AddAppPasswords.tsx:81 +#: src/view/com/modals/ChangeHandle.tsx:320 #: src/view/com/modals/InviteCodes.tsx:153 #: src/view/com/util/forms/PostDropdownBtn.tsx:172 msgid "Copied to clipboard" @@ -1085,15 +1124,15 @@ msgstr "已複製至剪貼簿" msgid "Copied!" msgstr "已複製!" -#: src/view/com/modals/AddAppPasswords.tsx:190 +#: src/view/com/modals/AddAppPasswords.tsx:215 msgid "Copies app password" msgstr "複製應用程式專用密碼" -#: src/view/com/modals/AddAppPasswords.tsx:189 +#: src/view/com/modals/AddAppPasswords.tsx:214 msgid "Copy" msgstr "複製" -#: src/view/com/modals/ChangeHandle.tsx:481 +#: src/view/com/modals/ChangeHandle.tsx:474 msgid "Copy {0}" msgstr "複製 {0}" @@ -1102,7 +1141,7 @@ msgstr "複製 {0}" msgid "Copy code" msgstr "複製程式碼" -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Copy link to list" msgstr "複製列表連結" @@ -1111,10 +1150,10 @@ msgstr "複製列表連結" msgid "Copy link to post" msgstr "複製貼文連結" +#: src/components/dms/MessageMenu.tsx:87 #: src/components/dms/MessageMenu.tsx:89 -#: src/components/dms/MessageMenu.tsx:91 msgid "Copy message text" -msgstr "" +msgstr "複製訊息文字" #: src/view/com/util/forms/PostDropdownBtn.tsx:256 #: src/view/com/util/forms/PostDropdownBtn.tsx:258 @@ -1126,36 +1165,28 @@ msgstr "複製貼文文字" msgid "Copyright Policy" msgstr "著作權政策" -#: src/components/dms/ConvoMenu.tsx:79 +#: src/components/dms/LeaveConvoPrompt.tsx:39 msgid "Could not leave chat" -msgstr "" +msgstr "無法離開對話" -#: src/view/screens/ProfileFeed.tsx:103 +#: src/view/screens/ProfileFeed.tsx:102 msgid "Could not load feed" msgstr "無法加載動態" -#: src/view/screens/ProfileList.tsx:903 +#: src/view/screens/ProfileList.tsx:960 msgid "Could not load list" msgstr "無法載入列表" -#: src/components/dms/NewChat.tsx:241 -msgid "Could not load profiles. Please try again later." -msgstr "" - -#: src/components/dms/ConvoMenu.tsx:58 +#: src/components/dms/ConvoMenu.tsx:86 msgid "Could not mute chat" -msgstr "" - -#: src/components/dms/ConvoMenu.tsx:68 -msgid "Could not unmute chat" -msgstr "" +msgstr "無法靜音對話" #: src/view/com/auth/SplashScreen.tsx:57 #: src/view/com/auth/SplashScreen.web.tsx:106 msgid "Create a new account" msgstr "建立新帳號" -#: src/view/screens/Settings/index.tsx:414 +#: src/view/screens/Settings/index.tsx:416 msgid "Create a new Bluesky account" msgstr "建立新的 Bluesky 帳號" @@ -1168,7 +1199,11 @@ msgstr "建立帳號" msgid "Create an account" msgstr "建立一個帳號" -#: src/view/com/modals/AddAppPasswords.tsx:227 +#: src/screens/Onboarding/StepProfile/index.tsx:286 +msgid "Create an avatar instead" +msgstr "或是建立一個頭像" + +#: src/view/com/modals/AddAppPasswords.tsx:243 msgid "Create App Password" msgstr "建立應用程式專用密碼" @@ -1177,15 +1212,15 @@ msgstr "建立應用程式專用密碼" msgid "Create new account" msgstr "建立新帳號" -#: src/components/ReportDialog/SelectReportOptionView.tsx:94 +#: src/components/ReportDialog/SelectReportOptionView.tsx:98 msgid "Create report for {0}" msgstr "建立 {0} 的檢舉" -#: src/view/screens/AppPasswords.tsx:246 +#: src/view/screens/AppPasswords.tsx:251 msgid "Created {0}" msgstr "{0} 已建立" -#: src/screens/Onboarding/index.tsx:29 +#: src/screens/Onboarding/index.tsx:41 msgid "Culture" msgstr "文化" @@ -1194,21 +1229,21 @@ msgstr "文化" msgid "Custom" msgstr "自訂" -#: src/view/com/modals/ChangeHandle.tsx:389 +#: src/view/com/modals/ChangeHandle.tsx:382 msgid "Custom domain" msgstr "自訂網域" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:107 -#: src/view/screens/Feeds.tsx:717 +#: src/view/screens/Feeds.tsx:823 msgid "Custom feeds built by the community bring you new experiences and help you find the content you love." -msgstr "由社群打造的自訂動態帶來全新體驗,協助您找到所愛的內容。" +msgstr "由社群打造的自訂動態源帶來全新體驗,幫助您找到所愛的內容。" #: src/view/screens/PreferencesExternalEmbeds.tsx:56 msgid "Customize media from external sites." msgstr "自訂外部網站的媒體。" -#: src/view/screens/Settings/index.tsx:449 -#: src/view/screens/Settings/index.tsx:475 +#: src/view/screens/Settings/index.tsx:451 +#: src/view/screens/Settings/index.tsx:477 msgid "Dark" msgstr "深色" @@ -1216,7 +1251,7 @@ msgstr "深色" msgid "Dark mode" msgstr "深色模式" -#: src/view/screens/Settings/index.tsx:462 +#: src/view/screens/Settings/index.tsx:464 msgid "Dark Theme" msgstr "深色主題" @@ -1224,62 +1259,63 @@ msgstr "深色主題" msgid "Date of birth" msgstr "出生日期" -#: src/view/screens/Settings/index.tsx:816 +#: src/view/screens/Settings/index.tsx:843 msgid "Debug Moderation" -msgstr "限制偵錯" +msgstr "內容管理偵錯" #: src/view/screens/Debug.tsx:83 msgid "Debug panel" msgstr "偵錯面板" -#: src/components/dms/MessageMenu.tsx:123 +#: src/components/dms/MessageMenu.tsx:126 #: src/view/com/util/forms/PostDropdownBtn.tsx:392 -#: src/view/screens/AppPasswords.tsx:268 -#: src/view/screens/ProfileList.tsx:609 +#: src/view/screens/AppPasswords.tsx:285 +#: src/view/screens/ProfileList.tsx:666 msgid "Delete" msgstr "刪除" -#: src/view/screens/Settings/index.tsx:771 +#: src/view/screens/Settings/index.tsx:798 msgid "Delete account" msgstr "刪除帳號" -#: src/view/com/modals/DeleteAccount.tsx:87 -#~ msgid "Delete Account" -#~ msgstr "刪除帳號" - -#: src/view/com/modals/DeleteAccount.tsx:87 +#: src/view/com/modals/DeleteAccount.tsx:97 msgid "Delete Account <0>\"<1>{0}<2>\"" -msgstr "" +msgstr "刪除帳號 <0>「<1>{0}<2>」" -#: src/view/screens/AppPasswords.tsx:239 +#: src/view/screens/AppPasswords.tsx:244 msgid "Delete app password" msgstr "刪除應用程式專用密碼" -#: src/view/screens/AppPasswords.tsx:263 +#: src/view/screens/AppPasswords.tsx:280 msgid "Delete app password?" msgstr "刪除應用程式專用密碼?" -#: src/components/dms/MessageMenu.tsx:101 -msgid "Delete for me" -msgstr "" +#: src/view/screens/Settings/index.tsx:860 +#: src/view/screens/Settings/index.tsx:863 +msgid "Delete chat declaration record" +msgstr "刪除對話聲明紀錄" -#: src/view/screens/ProfileList.tsx:417 +#: src/components/dms/MessageMenu.tsx:99 +msgid "Delete for me" +msgstr "為我刪除" + +#: src/view/screens/ProfileList.tsx:470 msgid "Delete List" msgstr "刪除列表" -#: src/components/dms/MessageMenu.tsx:119 +#: src/components/dms/MessageMenu.tsx:122 msgid "Delete message" -msgstr "" +msgstr "刪除訊息" -#: src/components/dms/MessageMenu.tsx:99 +#: src/components/dms/MessageMenu.tsx:97 msgid "Delete message for me" -msgstr "" +msgstr "為我刪除訊息" -#: src/view/com/modals/DeleteAccount.tsx:223 +#: src/view/com/modals/DeleteAccount.tsx:233 msgid "Delete my account" msgstr "刪除我的帳號" -#: src/view/screens/Settings/index.tsx:783 +#: src/view/screens/Settings/index.tsx:810 msgid "Delete My Account…" msgstr "刪除我的帳號…" @@ -1288,7 +1324,7 @@ msgstr "刪除我的帳號…" msgid "Delete post" msgstr "刪除貼文" -#: src/view/screens/ProfileList.tsx:604 +#: src/view/screens/ProfileList.tsx:661 msgid "Delete this list?" msgstr "刪除此列表?" @@ -1300,10 +1336,14 @@ msgstr "刪除這條貼文?" msgid "Deleted" msgstr "已刪除" -#: src/view/com/post-thread/PostThread.tsx:308 +#: src/view/com/post-thread/PostThread.tsx:362 msgid "Deleted post." msgstr "已刪除貼文。" +#: src/view/screens/Settings/index.tsx:861 +msgid "Deletes the chat declaration record" +msgstr "刪除對話聲明紀錄" + #: src/view/com/modals/CreateOrEditList.tsx:303 #: src/view/com/modals/CreateOrEditList.tsx:324 #: src/view/com/modals/EditProfile.tsx:199 @@ -1311,23 +1351,27 @@ msgstr "已刪除貼文。" msgid "Description" msgstr "描述" -#: src/view/com/composer/GifAltText.tsx:140 +#: src/view/com/composer/GifAltText.tsx:141 msgid "Descriptive alt text" -msgstr "" +msgstr "生動的替代文字" -#: src/view/com/composer/Composer.tsx:248 +#: src/view/com/composer/Composer.tsx:250 msgid "Did you want to say anything?" msgstr "有什麼想說的嗎?" -#: src/view/screens/Settings/index.tsx:468 +#: src/view/screens/Settings/index.tsx:470 msgid "Dim" msgstr "昏暗" +#: src/components/dms/MessagesNUX.tsx:88 +msgid "Direct messages are here!" +msgstr "私人訊息已推出!" + #: src/view/screens/AccessibilitySettings.tsx:94 msgid "Disable autoplay for GIFs" msgstr "關閉 GIF 自動播放" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:91 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:90 msgid "Disable Email 2FA" msgstr "關閉電子郵件雙重驗證" @@ -1338,15 +1382,17 @@ msgstr "關閉觸覺回饋" #: src/lib/moderation/useLabelBehaviorDescription.ts:32 #: src/lib/moderation/useLabelBehaviorDescription.ts:42 #: src/lib/moderation/useLabelBehaviorDescription.ts:68 +#: src/screens/Messages/Settings.tsx:140 +#: src/screens/Messages/Settings.tsx:143 #: src/screens/Moderation/index.tsx:341 msgid "Disabled" msgstr "停用" -#: src/view/com/composer/Composer.tsx:575 +#: src/view/com/composer/Composer.tsx:579 msgid "Discard" msgstr "捨棄" -#: src/view/com/composer/Composer.tsx:572 +#: src/view/com/composer/Composer.tsx:576 msgid "Discard draft?" msgstr "捨棄草稿?" @@ -1360,7 +1406,7 @@ msgstr "阻撓應用程式向未登入用戶顯示我的帳號" msgid "Discover new custom feeds" msgstr "探索新的自訂動態源" -#: src/view/screens/Feeds.tsx:714 +#: src/view/screens/Feeds.tsx:820 msgid "Discover New Feeds" msgstr "探索新的動態源" @@ -1372,7 +1418,7 @@ msgstr "顯示名稱" msgid "Display Name" msgstr "顯示名稱" -#: src/view/com/modals/ChangeHandle.tsx:398 +#: src/view/com/modals/ChangeHandle.tsx:391 msgid "DNS Panel" msgstr "DNS 控制台" @@ -1384,11 +1430,11 @@ msgstr "不包含裸露內容。" msgid "Doesn't begin or end with a hyphen" msgstr "不以連字符開頭或結尾" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "Domain Value" msgstr "網域設定值" -#: src/view/com/modals/ChangeHandle.tsx:489 +#: src/view/com/modals/ChangeHandle.tsx:482 msgid "Domain verified!" msgstr "網域已驗證!" @@ -1396,23 +1442,23 @@ msgstr "網域已驗證!" #: src/components/dialogs/BirthDateSettings.tsx:125 #: src/components/forms/DateField/index.tsx:74 #: src/components/forms/DateField/index.tsx:80 +#: src/screens/Onboarding/StepProfile/index.tsx:325 +#: src/screens/Onboarding/StepProfile/index.tsx:328 #: src/view/com/auth/server-input/index.tsx:169 #: src/view/com/auth/server-input/index.tsx:170 -#: src/view/com/modals/AddAppPasswords.tsx:227 -#: src/view/com/modals/AltImage.tsx:140 +#: src/view/com/modals/AddAppPasswords.tsx:243 +#: src/view/com/modals/AltImage.tsx:141 #: src/view/com/modals/crop-image/CropImage.web.tsx:177 #: src/view/com/modals/InviteCodes.tsx:81 #: src/view/com/modals/InviteCodes.tsx:124 #: src/view/com/modals/ListAddRemoveUsers.tsx:142 -#: src/view/screens/PreferencesFollowingFeed.tsx:309 -#: src/view/screens/Settings/ExportCarDialog.tsx:95 -#: src/view/screens/Settings/ExportCarDialog.tsx:97 +#: src/view/screens/PreferencesFollowingFeed.tsx:310 msgid "Done" msgstr "完成" #: src/view/com/modals/EditImage.tsx:334 #: src/view/com/modals/ListAddRemoveUsers.tsx:144 -#: src/view/com/modals/SelfLabel.tsx:157 +#: src/view/com/modals/SelfLabel.tsx:158 #: src/view/com/modals/Threadgate.tsx:129 #: src/view/com/modals/Threadgate.tsx:132 #: src/view/com/modals/UserAddRemoveLists.tsx:95 @@ -1424,10 +1470,10 @@ msgstr "完成" #: src/view/com/modals/lang-settings/ConfirmLanguagesButton.tsx:43 msgid "Done{extraText}" -msgstr "完成{extraText}" +msgstr "完成 {extraText}" -#: src/view/screens/Settings/ExportCarDialog.tsx:60 -#: src/view/screens/Settings/ExportCarDialog.tsx:64 +#: src/view/screens/Settings/ExportCarDialog.tsx:78 +#: src/view/screens/Settings/ExportCarDialog.tsx:82 msgid "Download CAR file" msgstr "下載 CAR 檔案" @@ -1439,7 +1485,7 @@ msgstr "拖放即可新增圖片" msgid "Due to Apple policies, adult content can only be enabled on the web after completing sign up." msgstr "受 Apple 政策限制,成人內容只能在完成註冊後在網頁端啟用。" -#: src/view/com/modals/ChangeHandle.tsx:259 +#: src/view/com/modals/ChangeHandle.tsx:252 msgid "e.g. alice" msgstr "例如:alice" @@ -1447,7 +1493,7 @@ msgstr "例如:alice" msgid "e.g. Alice Roberts" msgstr "例如:張藍天" -#: src/view/com/modals/ChangeHandle.tsx:381 +#: src/view/com/modals/ChangeHandle.tsx:374 msgid "e.g. alice.com" msgstr "例如:alice.com" @@ -1484,7 +1530,7 @@ msgctxt "action" msgid "Edit" msgstr "編輯" -#: src/view/com/util/UserAvatar.tsx:310 +#: src/view/com/util/UserAvatar.tsx:311 #: src/view/com/util/UserBanner.tsx:92 msgid "Edit avatar" msgstr "編輯頭像" @@ -1494,17 +1540,17 @@ msgstr "編輯頭像" msgid "Edit image" msgstr "編輯圖片" -#: src/view/screens/ProfileList.tsx:405 +#: src/view/screens/ProfileList.tsx:458 msgid "Edit list details" msgstr "編輯列表詳情" #: src/view/com/modals/CreateOrEditList.tsx:253 msgid "Edit Moderation List" -msgstr "編輯限制列表" +msgstr "編輯內容管理列表" #: src/Navigation.tsx:263 -#: src/view/screens/Feeds.tsx:459 -#: src/view/screens/SavedFeeds.tsx:85 +#: src/view/screens/Feeds.tsx:494 +#: src/view/screens/SavedFeeds.tsx:92 msgid "Edit My Feeds" msgstr "編輯我的動態源" @@ -1512,20 +1558,20 @@ msgstr "編輯我的動態源" msgid "Edit my profile" msgstr "編輯我的個人資料" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:180 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:168 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:181 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 msgid "Edit profile" msgstr "編輯個人資料" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:183 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:171 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:174 msgid "Edit Profile" msgstr "編輯個人資料" #: src/view/com/home/HomeHeaderLayout.web.tsx:76 -#: src/view/screens/Feeds.tsx:380 +#: src/view/screens/Feeds.tsx:415 msgid "Edit Saved Feeds" -msgstr "編輯已儲存的動態源" +msgstr "編輯已儲存之動態源" #: src/view/com/modals/CreateOrEditList.tsx:248 msgid "Edit User List" @@ -1539,16 +1585,16 @@ msgstr "編輯您的顯示名稱" msgid "Edit your profile description" msgstr "編輯您的帳號描述" -#: src/screens/Onboarding/index.tsx:34 +#: src/screens/Onboarding/index.tsx:46 msgid "Education" msgstr "教育" #: src/screens/Signup/StepInfo/index.tsx:80 -#: src/view/com/modals/ChangeEmail.tsx:143 +#: src/view/com/modals/ChangeEmail.tsx:136 msgid "Email" msgstr "電子郵件" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:65 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:64 msgid "Email 2FA disabled" msgstr "已關閉電子郵件雙重驗證" @@ -1556,20 +1602,20 @@ msgstr "已關閉電子郵件雙重驗證" msgid "Email address" msgstr "電子郵件地址" -#: src/view/com/modals/ChangeEmail.tsx:58 -#: src/view/com/modals/ChangeEmail.tsx:90 +#: src/view/com/modals/ChangeEmail.tsx:54 +#: src/view/com/modals/ChangeEmail.tsx:83 msgid "Email updated" msgstr "電子郵件已更新" -#: src/view/com/modals/ChangeEmail.tsx:113 +#: src/view/com/modals/ChangeEmail.tsx:106 msgid "Email Updated" msgstr "電子郵件已更新" -#: src/view/com/modals/VerifyEmail.tsx:86 +#: src/view/com/modals/VerifyEmail.tsx:85 msgid "Email verified" msgstr "電子郵件已驗證" -#: src/view/screens/Settings/index.tsx:340 +#: src/view/screens/Settings/index.tsx:342 msgid "Email:" msgstr "電子郵件:" @@ -1613,7 +1659,7 @@ msgstr "啟用外部媒體" msgid "Enable media players for" msgstr "啟用媒體播放器" -#: src/view/screens/PreferencesFollowingFeed.tsx:145 +#: src/view/screens/PreferencesFollowingFeed.tsx:146 msgid "Enable this setting to only see replies between people you follow." msgstr "啟用此設定將只顯示您跟隨的人之間的回覆。" @@ -1621,6 +1667,8 @@ msgstr "啟用此設定將只顯示您跟隨的人之間的回覆。" msgid "Enable this source only" msgstr "僅啟用此來源" +#: src/screens/Messages/Settings.tsx:131 +#: src/screens/Messages/Settings.tsx:134 #: src/screens/Moderation/index.tsx:339 msgid "Enabled" msgstr "啟用" @@ -1629,7 +1677,7 @@ msgstr "啟用" msgid "End of feed" msgstr "已經到底部啦!" -#: src/view/com/modals/AddAppPasswords.tsx:167 +#: src/view/com/modals/AddAppPasswords.tsx:161 msgid "Enter a name for this App Password" msgstr "輸入此應用程式專用密碼的名稱" @@ -1637,12 +1685,12 @@ msgstr "輸入此應用程式專用密碼的名稱" msgid "Enter a password" msgstr "輸入密碼" -#: src/components/dialogs/MutedWords.tsx:99 #: src/components/dialogs/MutedWords.tsx:100 +#: src/components/dialogs/MutedWords.tsx:101 msgid "Enter a word or tag" msgstr "輸入文字或標籤" -#: src/view/com/modals/VerifyEmail.tsx:114 +#: src/view/com/modals/VerifyEmail.tsx:113 msgid "Enter Confirmation Code" msgstr "輸入驗證碼" @@ -1650,7 +1698,7 @@ msgstr "輸入驗證碼" msgid "Enter the code you received to change your password." msgstr "輸入您收到的驗證碼以更改密碼。" -#: src/view/com/modals/ChangeHandle.tsx:371 +#: src/view/com/modals/ChangeHandle.tsx:364 msgid "Enter the domain you want to use" msgstr "輸入您想使用的網域" @@ -1667,11 +1715,11 @@ msgstr "輸入您的出生日期" msgid "Enter your email address" msgstr "輸入您的電子郵件地址" -#: src/view/com/modals/ChangeEmail.tsx:43 +#: src/view/com/modals/ChangeEmail.tsx:42 msgid "Enter your new email above" msgstr "請在上方輸入您的新電子郵件地址" -#: src/view/com/modals/ChangeEmail.tsx:119 +#: src/view/com/modals/ChangeEmail.tsx:112 msgid "Enter your new email address below." msgstr "請在下方輸入您的新電子郵件地址。" @@ -1679,11 +1727,15 @@ msgstr "請在下方輸入您的新電子郵件地址。" msgid "Enter your username and password" msgstr "輸入您的用戶名稱和密碼" +#: src/view/screens/Settings/ExportCarDialog.tsx:47 +msgid "Error occurred while saving file" +msgstr "儲存檔案時發生錯誤" + #: src/screens/Signup/StepCaptcha/index.tsx:51 msgid "Error receiving captcha response." msgstr "Captcha 給出了錯誤的回應。" -#: src/screens/Onboarding/StepInterests/index.tsx:192 +#: src/screens/Onboarding/StepInterests/index.tsx:202 #: src/view/screens/Search/Search.tsx:108 msgid "Error:" msgstr "錯誤:" @@ -1692,15 +1744,30 @@ msgstr "錯誤:" msgid "Everybody" msgstr "所有人" -#: src/lib/moderation/useReportOptions.ts:66 +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:42 +msgid "Everybody can reply" +msgstr "所有人都可以回覆" + +#: src/components/dms/MessagesNUX.tsx:131 +#: src/components/dms/MessagesNUX.tsx:134 +#: src/screens/Messages/Settings.tsx:75 +#: src/screens/Messages/Settings.tsx:78 +msgid "Everyone" +msgstr "所有人" + +#: src/lib/moderation/useReportOptions.ts:67 msgid "Excessive mentions or replies" msgstr "過多的提及或回覆" -#: src/view/com/modals/DeleteAccount.tsx:231 +#: src/lib/moderation/useReportOptions.ts:80 +msgid "Excessive or unwanted messages" +msgstr "過多或不受歡迎的訊息" + +#: src/view/com/modals/DeleteAccount.tsx:241 msgid "Exits account deletion process" msgstr "離開刪除帳號流程" -#: src/view/com/modals/ChangeHandle.tsx:152 +#: src/view/com/modals/ChangeHandle.tsx:145 msgid "Exits handle change process" msgstr "離開修改帳號代碼流程" @@ -1734,12 +1801,12 @@ msgstr "露骨或可能令人不安的媒體內容。" msgid "Explicit sexual images." msgstr "露骨的情色圖片。" -#: src/view/screens/Settings/index.tsx:752 +#: src/view/screens/Settings/index.tsx:779 msgid "Export my data" msgstr "匯出我的資料" -#: src/view/screens/Settings/ExportCarDialog.tsx:45 -#: src/view/screens/Settings/index.tsx:763 +#: src/view/screens/Settings/ExportCarDialog.tsx:63 +#: src/view/screens/Settings/index.tsx:790 msgid "Export My Data" msgstr "匯出我的資料" @@ -1755,16 +1822,16 @@ msgstr "外部媒體可能允許網站收集有關您和您裝置的資料。在 #: src/Navigation.tsx:282 #: src/view/screens/PreferencesExternalEmbeds.tsx:53 -#: src/view/screens/Settings/index.tsx:645 +#: src/view/screens/Settings/index.tsx:672 msgid "External Media Preferences" msgstr "外部媒體偏好" -#: src/view/screens/Settings/index.tsx:636 +#: src/view/screens/Settings/index.tsx:663 msgid "External media settings" msgstr "外部媒體設定" -#: src/view/com/modals/AddAppPasswords.tsx:116 #: src/view/com/modals/AddAppPasswords.tsx:120 +#: src/view/com/modals/AddAppPasswords.tsx:124 msgid "Failed to create app password." msgstr "建立應用程式專用密碼失敗。" @@ -1772,55 +1839,68 @@ msgstr "建立應用程式專用密碼失敗。" msgid "Failed to create the list. Check your internet connection and try again." msgstr "無法建立列表。請檢查您的網路連線並重試。" -#: src/components/dms/MessageMenu.tsx:130 +#: src/components/dms/MessageMenu.tsx:59 msgid "Failed to delete message" -msgstr "" +msgstr "無法刪除訊息" #: src/view/com/util/forms/PostDropdownBtn.tsx:139 msgid "Failed to delete post, please try again" msgstr "無法刪除貼文,請重試" -#: src/components/dialogs/GifSelect.tsx:200 +#: src/components/dialogs/GifSelect.tsx:201 msgid "Failed to load GIFs" msgstr "無法載入 GIF" -#: src/screens/Messages/Conversation/MessageListError.tsx:21 -msgid "Failed to load past messages." -msgstr "" +#: src/screens/Messages/Conversation/MessageListError.tsx:23 +msgid "Failed to load past messages" +msgstr "無法載入過去的訊息" -#: src/view/com/lightbox/Lightbox.tsx:83 +#: src/view/com/lightbox/Lightbox.tsx:84 msgid "Failed to save image: {0}" msgstr "無法儲存圖片:{0}" +#: src/components/dms/MessageItem.tsx:216 +msgid "Failed to send" +msgstr "無法傳送" + +#: src/components/moderation/LabelsOnMeDialog.tsx:225 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:87 +msgid "Failed to submit appeal, please try again." +msgstr "無法提交申訴,請重試。" + +#: src/components/dms/MessagesNUX.tsx:60 +#: src/screens/Messages/Settings.tsx:35 +msgid "Failed to update settings" +msgstr "無法更新設定" + #: src/Navigation.tsx:203 msgid "Feed" msgstr "動態" -#: src/view/com/feeds/FeedSourceCard.tsx:217 +#: src/view/com/feeds/FeedSourceCard.tsx:219 msgid "Feed by {0}" msgstr "{0} 建立的動態源" -#: src/view/screens/Feeds.tsx:630 +#: src/view/screens/Feeds.tsx:735 msgid "Feed offline" msgstr "動態源已離線" #: src/view/shell/desktop/RightNav.tsx:65 -#: src/view/shell/Drawer.tsx:335 +#: src/view/shell/Drawer.tsx:344 msgid "Feedback" msgstr "意見回饋" -#: src/Navigation.tsx:507 -#: src/view/screens/Feeds.tsx:444 -#: src/view/screens/Feeds.tsx:549 +#: src/Navigation.tsx:510 +#: src/view/screens/Feeds.tsx:479 +#: src/view/screens/Feeds.tsx:595 #: src/view/screens/Profile.tsx:197 -#: src/view/shell/bottom-bar/BottomBar.tsx:212 -#: src/view/shell/desktop/LeftNav.tsx:379 -#: src/view/shell/Drawer.tsx:500 -#: src/view/shell/Drawer.tsx:501 +#: src/view/shell/desktop/LeftNav.tsx:367 +#: src/view/shell/Drawer.tsx:492 +#: src/view/shell/Drawer.tsx:493 msgid "Feeds" msgstr "動態源" -#: src/view/screens/SavedFeeds.tsx:157 +#: src/view/screens/SavedFeeds.tsx:179 msgid "Feeds are custom algorithms that users build with a little coding expertise. <0/> for more information." msgstr "動態源是一種自訂演算法,使用者只需掌握一點開發技巧即可輕鬆構建。更多資訊請見 <0/>。" @@ -1828,15 +1908,19 @@ msgstr "動態源是一種自訂演算法,使用者只需掌握一點開發技 msgid "Feeds can be topical as well!" msgstr "動態源也可以圍繞某些話題!" -#: src/view/com/modals/ChangeHandle.tsx:482 +#: src/view/com/modals/ChangeHandle.tsx:475 msgid "File Contents" msgstr "檔案內容" +#: src/view/screens/Settings/ExportCarDialog.tsx:43 +msgid "File saved successfully!" +msgstr "文件儲存成功!" + #: src/lib/moderation/useLabelBehaviorDescription.ts:66 msgid "Filter from feeds" -msgstr "從動態源中篩選" +msgstr "動態源中的篩選" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Finalizing" msgstr "正在完成" @@ -1850,19 +1934,19 @@ msgstr "尋找一些帳號來跟隨" msgid "Find posts and users on Bluesky" msgstr "在 Bluesky 上尋找貼文和用戶" -#: src/view/screens/PreferencesFollowingFeed.tsx:109 +#: src/view/screens/PreferencesFollowingFeed.tsx:110 msgid "Fine-tune the content you see on your Following feed." -msgstr "對跟隨的動態源中的內容進行微調。" +msgstr "對「Following」動態源中的內容進行微調,以下選項只對「Following」動態源起作用。" #: src/view/screens/PreferencesThreads.tsx:60 msgid "Fine-tune the discussion threads." msgstr "微調討論串。" -#: src/screens/Onboarding/index.tsx:38 +#: src/screens/Onboarding/index.tsx:50 msgid "Fitness" msgstr "健康" -#: src/screens/Onboarding/StepFinished.tsx:137 +#: src/screens/Onboarding/StepFinished.tsx:234 msgid "Flexible" msgstr "靈活" @@ -1875,10 +1959,10 @@ msgstr "水平翻轉" msgid "Flip vertically" msgstr "垂直翻轉" -#: src/components/ProfileHoverCard/index.web.tsx:409 -#: src/components/ProfileHoverCard/index.web.tsx:420 +#: src/components/ProfileHoverCard/index.web.tsx:412 +#: src/components/ProfileHoverCard/index.web.tsx:423 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:189 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:235 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:244 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:146 #: src/view/com/profile/ProfileHeaderSuggestedFollows.tsx:247 msgid "Follow" @@ -1890,7 +1974,7 @@ msgid "Follow" msgstr "跟隨" #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:58 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:221 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:230 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:128 msgid "Follow {0}" msgstr "跟隨 {0}" @@ -1920,7 +2004,7 @@ msgstr "由 {0} 跟隨" msgid "Followed users" msgstr "已跟隨的用戶" -#: src/view/screens/PreferencesFollowingFeed.tsx:152 +#: src/view/screens/PreferencesFollowingFeed.tsx:153 msgid "Followed users only" msgstr "僅限已跟隨的用戶" @@ -1933,30 +2017,32 @@ msgstr "已跟隨您" msgid "Followers" msgstr "跟隨者" -#: src/components/ProfileHoverCard/index.web.tsx:408 -#: src/components/ProfileHoverCard/index.web.tsx:419 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:233 +#: src/components/ProfileHoverCard/index.web.tsx:411 +#: src/components/ProfileHoverCard/index.web.tsx:422 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:242 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:149 #: src/view/com/profile/ProfileFollows.tsx:104 +#: src/view/screens/Feeds.tsx:682 #: src/view/screens/ProfileFollows.tsx:25 +#: src/view/screens/SavedFeeds.tsx:413 msgid "Following" msgstr "跟隨中" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:91 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:90 msgid "Following {0}" -msgstr "跟隨中:{0}" +msgstr "已跟隨 {0}" -#: src/view/screens/Settings/index.tsx:564 +#: src/view/screens/Settings/index.tsx:566 msgid "Following feed preferences" -msgstr "跟隨動態源偏好" +msgstr "「Following」動態源偏好" #: src/Navigation.tsx:269 #: src/view/com/home/HomeHeaderLayout.web.tsx:64 #: src/view/com/home/HomeHeaderLayoutMobile.tsx:87 -#: src/view/screens/PreferencesFollowingFeed.tsx:102 -#: src/view/screens/Settings/index.tsx:573 +#: src/view/screens/PreferencesFollowingFeed.tsx:103 +#: src/view/screens/Settings/index.tsx:575 msgid "Following Feed Preferences" -msgstr "跟隨動態源偏好" +msgstr "「Following」動態源偏好" #: src/screens/Profile/Header/Handle.tsx:24 msgid "Follows you" @@ -1966,15 +2052,15 @@ msgstr "跟隨您" msgid "Follows You" msgstr "跟隨您" -#: src/screens/Onboarding/index.tsx:43 +#: src/screens/Onboarding/index.tsx:55 msgid "Food" msgstr "食物" -#: src/view/com/modals/DeleteAccount.tsx:111 +#: src/view/com/modals/DeleteAccount.tsx:121 msgid "For security reasons, we'll need to send a confirmation code to your email address." msgstr "為了保護您的帳號安全,我們需要將驗證碼發送到您的電子郵件地址。" -#: src/view/com/modals/AddAppPasswords.tsx:210 +#: src/view/com/modals/AddAppPasswords.tsx:233 msgid "For security reasons, you won't be able to view this again. If you lose this password, you'll need to generate a new one." msgstr "為了保護您的帳號安全,您將無法再次查看此內容。如果您丟失了此密碼,您將需要再產生一個新的密碼。" @@ -1983,15 +2069,15 @@ msgstr "為了保護您的帳號安全,您將無法再次查看此內容。如 msgid "Forgot Password" msgstr "忘記密碼" -#: src/screens/Login/LoginForm.tsx:218 +#: src/screens/Login/LoginForm.tsx:224 msgid "Forgot password?" msgstr "忘記密碼?" -#: src/screens/Login/LoginForm.tsx:229 +#: src/screens/Login/LoginForm.tsx:235 msgid "Forgot?" msgstr "忘記?" -#: src/lib/moderation/useReportOptions.ts:52 +#: src/lib/moderation/useReportOptions.ts:53 msgid "Frequently Posts Unwanted Content" msgstr "頻繁發佈不當內容" @@ -1999,7 +2085,7 @@ msgstr "頻繁發佈不當內容" msgid "From @{sanitizedAuthor}" msgstr "來自 @{sanitizedAuthor}" -#: src/view/com/posts/FeedItem.tsx:230 +#: src/view/com/posts/FeedItem.tsx:225 msgctxt "from-feed" msgid "From <0/>" msgstr "來自 <0/>" @@ -2008,12 +2094,20 @@ msgstr "來自 <0/>" msgid "Gallery" msgstr "相簿" -#: src/view/com/modals/VerifyEmail.tsx:198 -#: src/view/com/modals/VerifyEmail.tsx:200 +#: src/components/dms/MessagesNUX.tsx:168 +msgid "Get started" +msgstr "開始" + +#: src/view/com/modals/VerifyEmail.tsx:197 +#: src/view/com/modals/VerifyEmail.tsx:199 msgid "Get Started" msgstr "開始" -#: src/lib/moderation/useReportOptions.ts:37 +#: src/screens/Onboarding/StepProfile/index.tsx:228 +msgid "Give your profile a face" +msgstr "為您的個人檔案增添新顏" + +#: src/lib/moderation/useReportOptions.ts:38 msgid "Glaring violations of law or terms of service" msgstr "明顯違反法律或服務條款" @@ -2022,9 +2116,9 @@ msgstr "明顯違反法律或服務條款" #: src/view/com/auth/LoggedOut.tsx:82 #: src/view/com/auth/LoggedOut.tsx:83 #: src/view/screens/NotFound.tsx:55 -#: src/view/screens/ProfileFeed.tsx:112 -#: src/view/screens/ProfileList.tsx:912 -#: src/view/shell/desktop/LeftNav.tsx:111 +#: src/view/screens/ProfileFeed.tsx:111 +#: src/view/screens/ProfileList.tsx:969 +#: src/view/shell/desktop/LeftNav.tsx:127 msgid "Go back" msgstr "返回" @@ -2032,13 +2126,14 @@ msgstr "返回" #: src/screens/Profile/ErrorState.tsx:62 #: src/screens/Profile/ErrorState.tsx:66 #: src/view/screens/NotFound.tsx:54 -#: src/view/screens/ProfileFeed.tsx:117 -#: src/view/screens/ProfileList.tsx:917 +#: src/view/screens/ProfileFeed.tsx:116 +#: src/view/screens/ProfileList.tsx:974 msgid "Go Back" msgstr "返回" -#: src/components/ReportDialog/SelectReportOptionView.tsx:73 -#: src/components/ReportDialog/SubmitView.tsx:104 +#: src/components/dms/ReportDialog.tsx:152 +#: src/components/ReportDialog/SelectReportOptionView.tsx:77 +#: src/components/ReportDialog/SubmitView.tsx:105 #: src/screens/Onboarding/Layout.tsx:102 #: src/screens/Onboarding/Layout.tsx:191 #: src/screens/Signup/index.tsx:187 @@ -2053,24 +2148,28 @@ msgstr "前往首頁" msgid "Go Home" msgstr "前往首頁" +#: src/screens/Messages/List/ChatListItem.tsx:158 +msgid "Go to conversation with {0}" +msgstr "與 {0} 對話" + #: src/screens/Login/ForgotPasswordForm.tsx:172 #: src/view/com/modals/ChangePassword.tsx:169 msgid "Go to next" msgstr "前往下一步" -#: src/components/dms/ConvoMenu.tsx:114 +#: src/components/dms/ConvoMenu.tsx:165 msgid "Go to profile" -msgstr "" +msgstr "前往個人頁面" -#: src/components/dms/ConvoMenu.tsx:111 +#: src/components/dms/ConvoMenu.tsx:162 msgid "Go to user's profile" -msgstr "" +msgstr "前往用戶個人頁面" #: src/lib/moderation/useGlobalLabelStrings.ts:46 msgid "Graphic Media" -msgstr "影像媒體" +msgstr "不適宜圖像媒體" -#: src/view/com/modals/ChangeHandle.tsx:267 +#: src/view/com/modals/ChangeHandle.tsx:260 msgid "Handle" msgstr "帳號代碼" @@ -2078,7 +2177,7 @@ msgstr "帳號代碼" msgid "Haptics" msgstr "觸覺" -#: src/lib/moderation/useReportOptions.ts:32 +#: src/lib/moderation/useReportOptions.ts:33 msgid "Harassment, trolling, or intolerance" msgstr "騷擾、惡作劇或其他無法容忍的行為" @@ -2086,7 +2185,7 @@ msgstr "騷擾、惡作劇或其他無法容忍的行為" msgid "Hashtag" msgstr "標籤" -#: src/components/RichText.tsx:206 +#: src/components/RichText.tsx:217 msgid "Hashtag: #{tag}" msgstr "標籤:#{tag}" @@ -2095,10 +2194,14 @@ msgid "Having trouble?" msgstr "遇到問題?" #: src/view/shell/desktop/RightNav.tsx:94 -#: src/view/shell/Drawer.tsx:345 +#: src/view/shell/Drawer.tsx:354 msgid "Help" msgstr "幫助" +#: src/screens/Onboarding/StepProfile/index.tsx:231 +msgid "Help people know you're not a bot by uploading a picture or creating an avatar." +msgstr "透過上傳圖片或創建頭像來幫助人們知道您不是機器人。" + #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:140 msgid "Here are some accounts for you to follow" msgstr "這裡有一些您可以跟隨的帳號" @@ -2111,13 +2214,13 @@ msgstr "這裡有一些熱門的話題動態源。跟隨的動態源數量沒有 msgid "Here are some topical feeds based on your interests: {interestsText}. You can choose to follow as many as you like." msgstr "這裡有一些根據您的興趣({interestsText})所推薦的熱門話題動態源。跟隨的動態源數量沒有限制。" -#: src/view/com/modals/AddAppPasswords.tsx:154 +#: src/view/com/modals/AddAppPasswords.tsx:204 msgid "Here is your app password." msgstr "這是您的應用程式專用密碼。" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:134 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/lib/moderation/useLabelBehaviorDescription.ts:15 #: src/lib/moderation/useLabelBehaviorDescription.ts:20 #: src/lib/moderation/useLabelBehaviorDescription.ts:25 @@ -2139,7 +2242,7 @@ msgid "Hide post" msgstr "隱藏貼文" #: src/components/moderation/ContentHider.tsx:67 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Hide the content" msgstr "隱藏內容" @@ -2151,23 +2254,23 @@ msgstr "隱藏這則貼文?" msgid "Hide user list" msgstr "隱藏用戶列表" -#: src/view/com/posts/FeedErrorMessage.tsx:111 +#: src/view/com/posts/FeedErrorMessage.tsx:118 msgid "Hmm, some kind of issue occurred when contacting the feed server. Please let the feed owner know about this issue." msgstr "唔,與動態源的伺服器連線時發生了某種問題。請告訴該動態源的擁有者這個問題。" -#: src/view/com/posts/FeedErrorMessage.tsx:99 +#: src/view/com/posts/FeedErrorMessage.tsx:106 msgid "Hmm, the feed server appears to be misconfigured. Please let the feed owner know about this issue." msgstr "唔,動態源的伺服器似乎設定錯誤。請告訴該動態源的擁有者這個問題。" -#: src/view/com/posts/FeedErrorMessage.tsx:105 +#: src/view/com/posts/FeedErrorMessage.tsx:112 msgid "Hmm, the feed server appears to be offline. Please let the feed owner know about this issue." msgstr "唔,動態源的伺服器似乎已離線。請告訴該動態源的擁有者這個問題。" -#: src/view/com/posts/FeedErrorMessage.tsx:102 +#: src/view/com/posts/FeedErrorMessage.tsx:109 msgid "Hmm, the feed server gave a bad response. Please let the feed owner know about this issue." msgstr "唔,動態源的伺服器給出了錯誤的回應。請告訴該動態源的擁有者這個問題。" -#: src/view/com/posts/FeedErrorMessage.tsx:96 +#: src/view/com/posts/FeedErrorMessage.tsx:103 msgid "Hmm, we're having trouble finding this feed. It may have been deleted." msgstr "唔,我們無法找到這個動態源,它可能已被刪除。" @@ -2177,24 +2280,24 @@ msgstr "唔,看起來我們在載入這些資料時遇到了問題,請參閱 #: src/screens/Profile/ErrorState.tsx:31 msgid "Hmmmm, we couldn't load that moderation service." -msgstr "唔,我們無法載入該限制服務。" +msgstr "唔,我們無法載入該內容管理服務。" -#: src/Navigation.tsx:497 -#: src/view/shell/bottom-bar/BottomBar.tsx:168 -#: src/view/shell/desktop/LeftNav.tsx:314 -#: src/view/shell/Drawer.tsx:422 -#: src/view/shell/Drawer.tsx:423 +#: src/Navigation.tsx:500 +#: src/view/shell/bottom-bar/BottomBar.tsx:159 +#: src/view/shell/desktop/LeftNav.tsx:335 +#: src/view/shell/Drawer.tsx:424 +#: src/view/shell/Drawer.tsx:425 msgid "Home" msgstr "首頁" -#: src/view/com/modals/ChangeHandle.tsx:421 +#: src/view/com/modals/ChangeHandle.tsx:414 msgid "Host:" msgstr "主機:" #: src/screens/Login/ForgotPasswordForm.tsx:89 -#: src/screens/Login/LoginForm.tsx:151 +#: src/screens/Login/LoginForm.tsx:157 #: src/screens/Signup/StepInfo/index.tsx:40 -#: src/view/com/modals/ChangeHandle.tsx:282 +#: src/view/com/modals/ChangeHandle.tsx:275 msgid "Hosting provider" msgstr "託管服務供應商" @@ -2202,25 +2305,30 @@ msgstr "託管服務供應商" msgid "How should we open this link?" msgstr "我們該如何開啟此連結?" -#: src/view/com/modals/VerifyEmail.tsx:223 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:133 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:136 +#: src/view/com/modals/VerifyEmail.tsx:222 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:135 msgid "I have a code" msgstr "我有驗證碼" -#: src/view/com/modals/VerifyEmail.tsx:225 +#: src/view/com/modals/VerifyEmail.tsx:224 msgid "I have a confirmation code" msgstr "我有驗證碼" -#: src/view/com/modals/ChangeHandle.tsx:285 +#: src/view/com/modals/ChangeHandle.tsx:278 msgid "I have my own domain" msgstr "我擁有自己的網域" +#: src/components/dms/BlockedByListDialog.tsx:56 +#: src/components/dms/ReportConversationPrompt.tsx:22 +msgid "I understand" +msgstr "我了解" + #: src/view/com/lightbox/Lightbox.web.tsx:185 msgid "If alt text is long, toggles alt text expanded state" msgstr "替代文字過長時,切換替代文字的展開狀態" -#: src/view/com/modals/SelfLabel.tsx:127 +#: src/view/com/modals/SelfLabel.tsx:128 msgid "If none are selected, suitable for all ages." msgstr "若不勾選,則預設為全年齡向。" @@ -2228,7 +2336,7 @@ msgstr "若不勾選,則預設為全年齡向。" msgid "If you are not yet an adult according to the laws of your country, your parent or legal guardian must read these Terms on your behalf." msgstr "如果根據您所在國家的法律,您尚未成年,則您的父母或法定監護人必須代表您閱讀這些條款。" -#: src/view/screens/ProfileList.tsx:606 +#: src/view/screens/ProfileList.tsx:663 msgid "If you delete this list, you won't be able to recover it." msgstr "如果刪除這個列表,您將無法恢復它。" @@ -2240,7 +2348,7 @@ msgstr "如果刪除這則貼文,您將無法恢復它。" msgid "If you want to change your password, we will send you a code to verify that this is your account." msgstr "如果您想更改密碼,我們將向您發送一個驗證碼以確認這是您的帳號。" -#: src/lib/moderation/useReportOptions.ts:36 +#: src/lib/moderation/useReportOptions.ts:37 msgid "Illegal and Urgent" msgstr "違法" @@ -2248,23 +2356,27 @@ msgstr "違法" msgid "Image" msgstr "圖片" -#: src/view/com/modals/AltImage.tsx:121 +#: src/view/com/modals/AltImage.tsx:122 msgid "Image alt text" msgstr "圖片替代文字" -#: src/lib/moderation/useReportOptions.ts:47 +#: src/lib/moderation/useReportOptions.ts:48 msgid "Impersonation or false claims about identity or affiliation" msgstr "冒充或虛假聲明身份或隸屬關係" +#: src/lib/moderation/useReportOptions.ts:85 +msgid "Inappropriate messages or explicit links" +msgstr "不當訊息或露骨連結" + #: src/screens/Login/SetNewPasswordForm.tsx:127 msgid "Input code sent to your email for password reset" msgstr "輸入發送到您電子郵件地址的重設碼以重設密碼" -#: src/view/com/modals/DeleteAccount.tsx:184 +#: src/view/com/modals/DeleteAccount.tsx:194 msgid "Input confirmation code for account deletion" msgstr "輸入刪除帳號的驗證碼" -#: src/view/com/modals/AddAppPasswords.tsx:181 +#: src/view/com/modals/AddAppPasswords.tsx:175 msgid "Input name for app password" msgstr "輸入應用程式專用密碼名稱" @@ -2272,27 +2384,27 @@ msgstr "輸入應用程式專用密碼名稱" msgid "Input new password" msgstr "輸入新密碼" -#: src/view/com/modals/DeleteAccount.tsx:203 +#: src/view/com/modals/DeleteAccount.tsx:213 msgid "Input password for account deletion" msgstr "輸入密碼以刪除帳號" -#: src/screens/Login/LoginForm.tsx:257 +#: src/screens/Login/LoginForm.tsx:263 msgid "Input the code which has been emailed to you" msgstr "輸入寄送至您電子郵件地址的驗證碼" -#: src/screens/Login/LoginForm.tsx:212 +#: src/screens/Login/LoginForm.tsx:218 msgid "Input the password tied to {identifier}" msgstr "輸入與 {identifier} 關聯的密碼" -#: src/screens/Login/LoginForm.tsx:185 +#: src/screens/Login/LoginForm.tsx:191 msgid "Input the username or email address you used at signup" msgstr "輸入註冊時使用的用戶名稱或電子郵件地址" -#: src/screens/Login/LoginForm.tsx:211 +#: src/screens/Login/LoginForm.tsx:217 msgid "Input your password" msgstr "輸入您的密碼" -#: src/view/com/modals/ChangeHandle.tsx:390 +#: src/view/com/modals/ChangeHandle.tsx:383 msgid "Input your preferred hosting provider" msgstr "輸入您的託管服務供應商" @@ -2300,16 +2412,20 @@ msgstr "輸入您的託管服務供應商" msgid "Input your user handle" msgstr "輸入您的帳號代碼" -#: src/screens/Login/LoginForm.tsx:126 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:71 +#: src/components/dms/MessagesNUX.tsx:82 +msgid "Introducing Direct Messages" +msgstr "為您隆重介紹「私人訊息」" + +#: src/screens/Login/LoginForm.tsx:132 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:70 msgid "Invalid 2FA confirmation code." msgstr "無效的雙重驗證碼。" -#: src/view/com/post-thread/PostThreadItem.tsx:222 +#: src/view/com/post-thread/PostThreadItem.tsx:221 msgid "Invalid or unsupported post record" msgstr "無效或不支援的貼文紀錄" -#: src/screens/Login/LoginForm.tsx:131 +#: src/screens/Login/LoginForm.tsx:137 msgid "Invalid username or password" msgstr "用戶名稱或密碼無效" @@ -2321,7 +2437,7 @@ msgstr "邀請朋友" msgid "Invite code" msgstr "邀請碼" -#: src/screens/Signup/state.ts:282 +#: src/screens/Signup/state.ts:272 msgid "Invite code not accepted. Check that you input it correctly and try again." msgstr "邀請碼無效。請檢查您輸入的內容是否正確,然後重試。" @@ -2341,14 +2457,10 @@ msgstr "它會即時顯示您所跟隨的人發佈的貼文。" msgid "Jobs" msgstr "工作" -#: src/screens/Onboarding/index.tsx:24 +#: src/screens/Onboarding/index.tsx:36 msgid "Journalism" msgstr "新聞學" -#: src/components/moderation/LabelsOnMe.tsx:59 -#~ msgid "label has been placed on this {labelTarget}" -#~ msgstr "此標記已放置於 {labelTarget} 上" - #: src/components/moderation/ContentHider.tsx:144 msgid "Labeled by {0}." msgstr "由 {0} 標記。" @@ -2361,19 +2473,15 @@ msgstr "由作者標記。" msgid "Labels" msgstr "標記" -#: src/screens/Profile/Sections/Labels.tsx:156 +#: src/screens/Profile/Sections/Labels.tsx:163 msgid "Labels are annotations on users and content. They can be used to hide, warn, and categorize the network." msgstr "標記是對用戶和內容的標註,可用於隱藏、警告和對網路進行分類。" -#: src/components/moderation/LabelsOnMe.tsx:61 -#~ msgid "labels have been placed on this {labelTarget}" -#~ msgstr "此標記已放置於 {labelTarget} 上" - -#: src/components/moderation/LabelsOnMeDialog.tsx:62 +#: src/components/moderation/LabelsOnMeDialog.tsx:80 msgid "Labels on your account" -msgstr "您帳戶上的標記" +msgstr "您帳號上的標記" -#: src/components/moderation/LabelsOnMeDialog.tsx:64 +#: src/components/moderation/LabelsOnMeDialog.tsx:82 msgid "Labels on your content" msgstr "您內容上的標記" @@ -2381,7 +2489,7 @@ msgstr "您內容上的標記" msgid "Language selection" msgstr "語言選擇" -#: src/view/screens/Settings/index.tsx:521 +#: src/view/screens/Settings/index.tsx:523 msgid "Language settings" msgstr "語言設定" @@ -2390,7 +2498,7 @@ msgstr "語言設定" msgid "Language Settings" msgstr "語言設定" -#: src/view/screens/Settings/index.tsx:530 +#: src/view/screens/Settings/index.tsx:532 msgid "Languages" msgstr "語言" @@ -2406,9 +2514,9 @@ msgstr "瞭解詳情" #: src/components/moderation/ContentHider.tsx:65 #: src/components/moderation/ContentHider.tsx:128 msgid "Learn more about the moderation applied to this content." -msgstr "詳細了解套用於此內容的限制。" +msgstr "詳細了解套用於此內容的內容管理。" -#: src/components/moderation/PostHider.tsx:94 +#: src/components/moderation/PostHider.tsx:96 #: src/components/moderation/ScreenHider.tsx:125 msgid "Learn more about this warning" msgstr "瞭解有關此警告的更多資訊" @@ -2421,15 +2529,22 @@ msgstr "瞭解有關 Bluesky 上公開內容的更多資訊。" msgid "Learn more." msgstr "瞭解詳情。" -#: src/components/dms/ConvoMenu.tsx:175 +#: src/components/dms/LeaveConvoPrompt.tsx:50 msgid "Leave" -msgstr "" +msgstr "離開" -#: src/components/dms/ConvoMenu.tsx:158 -#: src/components/dms/ConvoMenu.tsx:161 -#: src/components/dms/ConvoMenu.tsx:171 +#: src/components/dms/MessagesListBlockedFooter.tsx:66 +#: src/components/dms/MessagesListBlockedFooter.tsx:73 +msgid "Leave chat" +msgstr "離開對話" + +#: src/components/dms/ConvoMenu.tsx:136 +#: src/components/dms/ConvoMenu.tsx:139 +#: src/components/dms/ConvoMenu.tsx:206 +#: src/components/dms/ConvoMenu.tsx:209 +#: src/components/dms/LeaveConvoPrompt.tsx:46 msgid "Leave conversation" -msgstr "" +msgstr "離開對話" #: src/view/com/modals/lang-settings/ContentLanguagesSettings.tsx:82 msgid "Leave them all unchecked to see any language." @@ -2443,7 +2558,7 @@ msgstr "離開 Bluesky" msgid "left to go." msgstr "尚未完成。" -#: src/view/screens/Settings/index.tsx:305 +#: src/view/screens/Settings/index.tsx:306 msgid "Legacy storage cleared, you need to restart the app now." msgstr "遺留資料已清除,您需要立即重新啟動應用程式。" @@ -2452,20 +2567,16 @@ msgstr "遺留資料已清除,您需要立即重新啟動應用程式。" msgid "Let's get your password reset!" msgstr "讓我們來重設您的密碼吧!" -#: src/screens/Onboarding/StepFinished.tsx:157 +#: src/screens/Onboarding/StepFinished.tsx:254 msgid "Let's go!" msgstr "讓我們開始吧!" -#: src/view/screens/Settings/index.tsx:443 +#: src/view/screens/Settings/index.tsx:445 msgid "Light" msgstr "亮色" -#: src/view/com/util/post-ctrls/PostCtrls.tsx:197 -#~ msgid "Like" -#~ msgstr "喜歡" - -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:266 -#: src/view/screens/ProfileFeed.tsx:589 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:267 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Like this feed" msgstr "對這個動態源按喜歡" @@ -2481,33 +2592,19 @@ msgstr "按喜歡的用戶" msgid "Liked By" msgstr "按喜歡的用戶" -#: src/view/com/feeds/FeedSourceCard.tsx:268 -#~ msgid "Liked by {0} {1}" -#~ msgstr "{0} 個 {1} 喜歡" - -#: src/components/LabelingServiceCard/index.tsx:72 -#~ msgid "Liked by {count} {0}" -#~ msgstr "{count} 個 {0} 喜歡" - -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:287 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:301 -#: src/view/screens/ProfileFeed.tsx:600 -#~ msgid "Liked by {likeCount} {0}" -#~ msgstr "{likeCount} 個 {0} 喜歡" - #: src/view/com/notifications/FeedItem.tsx:168 msgid "liked your custom feed" -msgstr "已按喜歡您的自訂動態流" +msgstr "對您的自訂動態源表示喜歡" #: src/view/com/notifications/FeedItem.tsx:153 msgid "liked your post" -msgstr "已按喜歡您的貼文" +msgstr "已喜歡您的貼文" #: src/view/screens/Profile.tsx:196 msgid "Likes" msgstr "喜歡" -#: src/view/com/post-thread/PostThreadItem.tsx:183 +#: src/view/com/post-thread/PostThreadItem.tsx:182 msgid "Likes on this post" msgstr "這條貼文的喜歡數" @@ -2519,19 +2616,19 @@ msgstr "列表" msgid "List Avatar" msgstr "列表頭像" -#: src/view/screens/ProfileList.tsx:313 +#: src/view/screens/ProfileList.tsx:357 msgid "List blocked" msgstr "列表已封鎖" -#: src/view/com/feeds/FeedSourceCard.tsx:219 +#: src/view/com/feeds/FeedSourceCard.tsx:221 msgid "List by {0}" msgstr "列表由 {0} 建立" -#: src/view/screens/ProfileList.tsx:357 +#: src/view/screens/ProfileList.tsx:396 msgid "List deleted" msgstr "列表已刪除" -#: src/view/screens/ProfileList.tsx:285 +#: src/view/screens/ProfileList.tsx:329 msgid "List muted" msgstr "列表已靜音" @@ -2539,31 +2636,35 @@ msgstr "列表已靜音" msgid "List Name" msgstr "列表名稱" -#: src/view/screens/ProfileList.tsx:327 +#: src/view/screens/ProfileList.tsx:371 msgid "List unblocked" msgstr "已解除封鎖的列表" -#: src/view/screens/ProfileList.tsx:299 +#: src/view/screens/ProfileList.tsx:343 msgid "List unmuted" msgstr "已解除靜音的列表" #: src/Navigation.tsx:121 #: src/view/screens/Profile.tsx:192 #: src/view/screens/Profile.tsx:198 -#: src/view/shell/desktop/LeftNav.tsx:397 -#: src/view/shell/Drawer.tsx:516 -#: src/view/shell/Drawer.tsx:517 +#: src/view/shell/desktop/LeftNav.tsx:373 +#: src/view/shell/Drawer.tsx:508 +#: src/view/shell/Drawer.tsx:509 msgid "Lists" msgstr "列表" +#: src/components/dms/BlockedByListDialog.tsx:39 +msgid "Lists blocking this user:" +msgstr "封鎖此用戶的列表:" + #: src/view/screens/Notifications.tsx:159 msgid "Load new notifications" msgstr "載入新的通知" #: src/screens/Profile/Sections/Feed.tsx:86 -#: src/view/com/feeds/FeedPage.tsx:138 -#: src/view/screens/ProfileFeed.tsx:511 -#: src/view/screens/ProfileList.tsx:691 +#: src/view/com/feeds/FeedPage.tsx:135 +#: src/view/screens/ProfileFeed.tsx:492 +#: src/view/screens/ProfileList.tsx:748 msgid "Load new posts" msgstr "載入新的貼文" @@ -2590,7 +2691,7 @@ msgstr "登出可見性" msgid "Login to account that is not listed" msgstr "登入未列出的帳號" -#: src/components/RichText.tsx:207 +#: src/components/RichText.tsx:218 msgid "Long press to open tag menu for #{tag}" msgstr "長按開啟 #{tag} 的標籤選單" @@ -2598,14 +2699,31 @@ msgstr "長按開啟 #{tag} 的標籤選單" msgid "Looks like XXXXX-XXXXX" msgstr "看起來像是 XXXXX-XXXXX" +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:39 +msgid "Looks like you haven't saved any feeds! Use our recommendations or browse more below." +msgstr "您似乎尚未儲存任何動態源!使用我們的建議或瀏覽下面的更多內容。" + +#: src/screens/Home/NoFeedsPinned.tsx:96 +msgid "Looks like you unpinned all your feeds. But don't worry, you can add some below 😄" +msgstr "看起來您已取消釘選所有動態源,但不用擔心,您可以在下面添加一些😄" + +#: src/screens/Feeds/NoFollowingFeed.tsx:37 +msgid "Looks like you're missing a following feed. <0>Click here to add one." +msgstr "您看起來需要「Following」動態源,<0>點選這裡來新增。" + #: src/view/com/modals/LinkWarning.tsx:79 msgid "Make sure this is where you intend to go!" msgstr "請確認這是您想要去的的地方!" -#: src/components/dialogs/MutedWords.tsx:82 +#: src/components/dialogs/MutedWords.tsx:83 msgid "Manage your muted words and tags" msgstr "管理您靜音的文字和標籤" +#: src/components/dms/ConvoMenu.tsx:149 +#: src/components/dms/ConvoMenu.tsx:156 +msgid "Mark as read" +msgstr "標記為已讀" + #: src/view/screens/AccessibilitySettings.tsx:89 #: src/view/screens/Profile.tsx:195 msgid "Media" @@ -2624,109 +2742,111 @@ msgstr "被提及的用戶" msgid "Menu" msgstr "選單" -#: src/components/dms/MessageMenu.tsx:56 -#: src/screens/Messages/List/index.tsx:245 -msgid "Message deleted" -msgstr "" +#: src/components/dms/MessageProfileButton.tsx:67 +msgid "Message {0}" +msgstr "給 {0} 傳送訊息" -#: src/view/com/posts/FeedErrorMessage.tsx:192 +#: src/components/dms/MessageMenu.tsx:58 +#: src/screens/Messages/List/ChatListItem.tsx:110 +msgid "Message deleted" +msgstr "訊息已刪除" + +#: src/view/com/posts/FeedErrorMessage.tsx:201 msgid "Message from server: {0}" msgstr "來自伺服器的訊息:{0}" -#: src/screens/Messages/Conversation/MessageInput.tsx:79 +#: src/screens/Messages/Conversation/MessageInput.tsx:119 msgid "Message input field" -msgstr "" +msgstr "訊息輸入欄位" -#: src/screens/Messages/List/index.tsx:62 -#: src/screens/Messages/List/index.tsx:374 +#: src/screens/Messages/Conversation/MessageInput.tsx:62 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:42 +msgid "Message is too long" +msgstr "訊息太長了" + +#: src/screens/Messages/List/index.tsx:321 msgid "Message settings" msgstr "訊息設定" -#: src/Navigation.tsx:517 -#: src/screens/Messages/List/index.tsx:163 -#: src/screens/Messages/List/index.tsx:190 -#: src/screens/Messages/List/index.tsx:370 -#: src/view/shell/bottom-bar/BottomBar.tsx:261 -#: src/view/shell/desktop/LeftNav.tsx:360 +#: src/Navigation.tsx:520 +#: src/screens/Messages/List/index.tsx:164 +#: src/screens/Messages/List/index.tsx:246 +#: src/screens/Messages/List/index.tsx:317 msgid "Messages" msgstr "訊息" -#: src/Navigation.tsx:307 -msgid "Messaging settings" -msgstr "訊息設定" - -#: src/lib/moderation/useReportOptions.ts:45 +#: src/lib/moderation/useReportOptions.ts:46 msgid "Misleading Account" -msgstr "誤導性帳戶" +msgstr "誤導性帳號" #: src/Navigation.tsx:126 #: src/screens/Moderation/index.tsx:104 -#: src/view/screens/Settings/index.tsx:552 +#: src/view/screens/Settings/index.tsx:554 msgid "Moderation" -msgstr "限制" +msgstr "內容管理" #: src/components/moderation/ModerationDetailsDialog.tsx:112 msgid "Moderation details" -msgstr "限制詳情" +msgstr "內容管理詳情" #: src/view/com/lists/ListCard.tsx:93 #: src/view/com/modals/UserAddRemoveLists.tsx:206 msgid "Moderation list by {0}" -msgstr "由 {0} 建立的限制列表" +msgstr "由 {0} 建立的內容管理列表" -#: src/view/screens/ProfileList.tsx:785 +#: src/view/screens/ProfileList.tsx:842 msgid "Moderation list by <0/>" -msgstr "由 建立的限制列表" +msgstr "由 建立的內容管理列表" #: src/view/com/lists/ListCard.tsx:91 #: src/view/com/modals/UserAddRemoveLists.tsx:204 -#: src/view/screens/ProfileList.tsx:783 +#: src/view/screens/ProfileList.tsx:840 msgid "Moderation list by you" -msgstr "您建立的限制列表" +msgstr "您建立的內容管理列表" #: src/view/com/modals/CreateOrEditList.tsx:199 msgid "Moderation list created" -msgstr "已建立限制列表" +msgstr "已建立內容管理列表" #: src/view/com/modals/CreateOrEditList.tsx:185 msgid "Moderation list updated" -msgstr "限制列表已更新" +msgstr "內容管理列表已更新" #: src/screens/Moderation/index.tsx:243 msgid "Moderation lists" -msgstr "限制列表" +msgstr "內容管理列表" #: src/Navigation.tsx:131 #: src/view/screens/ModerationModlists.tsx:58 msgid "Moderation Lists" -msgstr "限制列表" +msgstr "內容管理列表" -#: src/view/screens/Settings/index.tsx:546 +#: src/view/screens/Settings/index.tsx:548 msgid "Moderation settings" -msgstr "限制設定" +msgstr "內容管理設定" #: src/Navigation.tsx:223 msgid "Moderation states" -msgstr "限制狀態" +msgstr "內容管理狀態" #: src/screens/Moderation/index.tsx:215 msgid "Moderation tools" -msgstr "限制工具" +msgstr "內容管理工具" #: src/components/moderation/ModerationDetailsDialog.tsx:48 #: src/lib/moderation/useModerationCauseDescription.ts:40 msgid "Moderator has chosen to set a general warning on the content." -msgstr "限制者已選擇對內容設定普通警告。" +msgstr "內容管理者已將此內容標記為普通警告。" #: src/view/com/post-thread/PostThreadItem.tsx:542 msgid "More" msgstr "更多" -#: src/view/shell/desktop/Feeds.tsx:65 +#: src/view/shell/desktop/Feeds.tsx:55 msgid "More feeds" msgstr "更多動態源" -#: src/view/screens/ProfileList.tsx:595 +#: src/view/screens/ProfileList.tsx:652 msgid "More options" msgstr "更多選項" @@ -2747,7 +2867,7 @@ msgstr "靜音 {truncatedTag}" msgid "Mute Account" msgstr "靜音帳號" -#: src/view/screens/ProfileList.tsx:514 +#: src/view/screens/ProfileList.tsx:571 msgid "Mute accounts" msgstr "靜音帳號" @@ -2755,39 +2875,39 @@ msgstr "靜音帳號" msgid "Mute all {displayTag} posts" msgstr "將所有 {displayTag} 貼文靜音" -#: src/components/dialogs/MutedWords.tsx:148 +#: src/components/dms/ConvoMenu.tsx:170 +#: src/components/dms/ConvoMenu.tsx:176 +msgid "Mute conversation" +msgstr "靜音對話" + +#: src/components/dialogs/MutedWords.tsx:149 msgid "Mute in tags only" msgstr "僅靜音標籤" -#: src/components/dialogs/MutedWords.tsx:133 +#: src/components/dialogs/MutedWords.tsx:134 msgid "Mute in text & tags" msgstr "靜音文字和標籤" -#: src/view/screens/ProfileList.tsx:620 +#: src/view/screens/ProfileList.tsx:677 msgid "Mute list" msgstr "靜音列表" -#: src/components/dms/ConvoMenu.tsx:119 -#: src/components/dms/ConvoMenu.tsx:125 -msgid "Mute notifications" -msgstr "" - -#: src/view/screens/ProfileList.tsx:615 +#: src/view/screens/ProfileList.tsx:672 msgid "Mute these accounts?" msgstr "靜音這些帳號?" -#: src/components/dialogs/MutedWords.tsx:126 +#: src/components/dialogs/MutedWords.tsx:127 msgid "Mute this word in post text and tags" msgstr "在貼文內容和話題標籤中隱藏該文字" -#: src/components/dialogs/MutedWords.tsx:141 +#: src/components/dialogs/MutedWords.tsx:142 msgid "Mute this word in tags only" msgstr "僅在話題標籤中隱藏該文字" #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:327 msgid "Mute thread" -msgstr "靜音對話串" +msgstr "靜音討論串" #: src/view/com/util/forms/PostDropdownBtn.tsx:337 #: src/view/com/util/forms/PostDropdownBtn.tsx:339 @@ -2819,7 +2939,7 @@ msgstr "被「{0}」靜音" msgid "Muted words & tags" msgstr "靜音文字和標籤" -#: src/view/screens/ProfileList.tsx:617 +#: src/view/screens/ProfileList.tsx:674 msgid "Muting is private. Muted accounts can interact with you, but you will not see their posts or receive notifications from them." msgstr "封鎖是私人的。被封鎖的帳號可以與您互動,但您將無法看到他們的貼文或收到來自他們的通知。" @@ -2828,23 +2948,23 @@ msgstr "封鎖是私人的。被封鎖的帳號可以與您互動,但您將無 msgid "My Birthday" msgstr "我的生日" -#: src/view/screens/Feeds.tsx:688 +#: src/view/screens/Feeds.tsx:794 msgid "My Feeds" msgstr "我的動態源" -#: src/view/shell/desktop/LeftNav.tsx:68 +#: src/view/shell/desktop/LeftNav.tsx:84 msgid "My Profile" msgstr "我的個人資料" -#: src/view/screens/Settings/index.tsx:607 +#: src/view/screens/Settings/index.tsx:609 msgid "My saved feeds" msgstr "我儲存的動態源" -#: src/view/screens/Settings/index.tsx:613 +#: src/view/screens/Settings/index.tsx:615 msgid "My Saved Feeds" msgstr "我儲存的動態源" -#: src/view/com/modals/AddAppPasswords.tsx:180 +#: src/view/com/modals/AddAppPasswords.tsx:174 #: src/view/com/modals/CreateOrEditList.tsx:293 msgid "Name" msgstr "名稱" @@ -2853,35 +2973,35 @@ msgstr "名稱" msgid "Name is required" msgstr "名稱是必填項" -#: src/lib/moderation/useReportOptions.ts:57 -#: src/lib/moderation/useReportOptions.ts:78 -#: src/lib/moderation/useReportOptions.ts:86 +#: src/lib/moderation/useReportOptions.ts:58 +#: src/lib/moderation/useReportOptions.ts:92 +#: src/lib/moderation/useReportOptions.ts:100 msgid "Name or Description Violates Community Standards" msgstr "名稱或描述違反社群標準" -#: src/screens/Onboarding/index.tsx:25 +#: src/screens/Onboarding/index.tsx:37 msgid "Nature" msgstr "自然" #: src/screens/Login/ForgotPasswordForm.tsx:173 -#: src/screens/Login/LoginForm.tsx:303 +#: src/screens/Login/LoginForm.tsx:309 #: src/view/com/modals/ChangePassword.tsx:170 msgid "Navigates to the next screen" msgstr "切換到下一畫面" -#: src/view/shell/Drawer.tsx:70 +#: src/view/shell/Drawer.tsx:79 msgid "Navigates to your profile" msgstr "切換到您的個人檔案" -#: src/components/ReportDialog/SelectReportOptionView.tsx:123 +#: src/components/ReportDialog/SelectReportOptionView.tsx:127 msgid "Need to report a copyright violation?" msgstr "需要檢舉侵權嗎?" -#: src/screens/Onboarding/StepFinished.tsx:125 +#: src/screens/Onboarding/StepFinished.tsx:222 msgid "Never lose access to your followers or data." msgstr "永遠不會失去對您的跟隨者或資料的存取權。" -#: src/view/com/modals/ChangeHandle.tsx:522 +#: src/view/com/modals/ChangeHandle.tsx:515 msgid "Nevermind, create a handle for me" msgstr "沒關係,為我創建一個帳號代碼" @@ -2894,15 +3014,19 @@ msgstr "新增" msgid "New" msgstr "新增" -#: src/components/dms/NewChat.tsx:60 -#: src/screens/Messages/List/index.tsx:384 -#: src/screens/Messages/List/index.tsx:392 +#: src/components/dms/NewChatDialog/index.tsx:98 +#: src/screens/Messages/List/index.tsx:331 +#: src/screens/Messages/List/index.tsx:338 msgid "New chat" -msgstr "" +msgstr "新對話" + +#: src/components/dms/NewMessagesPill.tsx:92 +msgid "New messages" +msgstr "新訊息" #: src/view/com/modals/CreateOrEditList.tsx:255 msgid "New Moderation List" -msgstr "新的限制列表" +msgstr "新的內容管理列表" #: src/view/com/modals/ChangePassword.tsx:214 msgid "New password" @@ -2912,22 +3036,22 @@ msgstr "新密碼" msgid "New Password" msgstr "新密碼" -#: src/view/com/feeds/FeedPage.tsx:149 +#: src/view/com/feeds/FeedPage.tsx:146 msgctxt "action" msgid "New post" msgstr "新貼文" -#: src/view/screens/Feeds.tsx:580 +#: src/view/screens/Feeds.tsx:626 #: src/view/screens/Notifications.tsx:168 #: src/view/screens/Profile.tsx:464 -#: src/view/screens/ProfileFeed.tsx:445 +#: src/view/screens/ProfileFeed.tsx:426 #: src/view/screens/ProfileList.tsx:200 #: src/view/screens/ProfileList.tsx:228 -#: src/view/shell/desktop/LeftNav.tsx:255 +#: src/view/shell/desktop/LeftNav.tsx:271 msgid "New post" msgstr "新貼文" -#: src/view/shell/desktop/LeftNav.tsx:265 +#: src/view/shell/desktop/LeftNav.tsx:277 msgctxt "action" msgid "New Post" msgstr "新貼文" @@ -2940,14 +3064,14 @@ msgstr "新的用戶列表" msgid "Newest replies first" msgstr "最新回覆優先" -#: src/screens/Onboarding/index.tsx:23 +#: src/screens/Onboarding/index.tsx:35 msgid "News" msgstr "新聞" #: src/screens/Login/ForgotPasswordForm.tsx:143 #: src/screens/Login/ForgotPasswordForm.tsx:150 -#: src/screens/Login/LoginForm.tsx:302 -#: src/screens/Login/LoginForm.tsx:309 +#: src/screens/Login/LoginForm.tsx:308 +#: src/screens/Login/LoginForm.tsx:315 #: src/screens/Login/SetNewPasswordForm.tsx:174 #: src/screens/Login/SetNewPasswordForm.tsx:180 #: src/screens/Signup/index.tsx:220 @@ -2960,29 +3084,29 @@ msgstr "下一個" msgid "Next image" msgstr "下一張圖片" -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:198 -#: src/view/screens/PreferencesFollowingFeed.tsx:233 -#: src/view/screens/PreferencesFollowingFeed.tsx:270 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:199 +#: src/view/screens/PreferencesFollowingFeed.tsx:234 +#: src/view/screens/PreferencesFollowingFeed.tsx:271 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "No" msgstr "關" -#: src/view/screens/ProfileFeed.tsx:578 -#: src/view/screens/ProfileList.tsx:765 +#: src/view/screens/ProfileFeed.tsx:559 +#: src/view/screens/ProfileList.tsx:822 msgid "No description" msgstr "沒有描述" -#: src/view/com/modals/ChangeHandle.tsx:406 +#: src/view/com/modals/ChangeHandle.tsx:399 msgid "No DNS Panel" msgstr "無 DNS 控制台" -#: src/components/dialogs/GifSelect.tsx:206 +#: src/components/dialogs/GifSelect.tsx:207 msgid "No featured GIFs found. There may be an issue with Tenor." msgstr "未找到精選 GIF,Tenor 可能發生問題。" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:116 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:112 msgid "No longer following {0}" msgstr "不再跟隨 {0}" @@ -2990,25 +3114,39 @@ msgstr "不再跟隨 {0}" msgid "No longer than 253 characters" msgstr "不超過 253 個字符" -#: src/screens/Messages/List/index.tsx:174 -#: src/screens/Messages/List/index.tsx:234 +#: src/screens/Messages/List/ChatListItem.tsx:97 msgid "No messages yet" -msgstr "" +msgstr "還沒有訊息" + +#: src/screens/Messages/List/index.tsx:274 +msgid "No more conversations to show" +msgstr "已經沒有對話啦!" #: src/view/com/notifications/Feed.tsx:110 msgid "No notifications yet!" msgstr "還沒有通知!" +#: src/components/dms/MessagesNUX.tsx:149 +#: src/components/dms/MessagesNUX.tsx:152 +#: src/screens/Messages/Settings.tsx:93 +#: src/screens/Messages/Settings.tsx:96 +msgid "No one" +msgstr "沒有人" + #: src/view/com/composer/text-input/mobile/Autocomplete.tsx:101 #: src/view/com/composer/text-input/web/Autocomplete.tsx:195 msgid "No result" msgstr "沒有結果" -#: src/components/Lists.tsx:195 +#: src/components/dms/NewChatDialog/index.tsx:378 +msgid "No results" +msgstr "沒有結果" + +#: src/components/Lists.tsx:207 msgid "No results found" msgstr "未找到結果" -#: src/view/screens/Feeds.tsx:520 +#: src/view/screens/Feeds.tsx:555 msgid "No results found for \"{query}\"" msgstr "未找到「{query}」的結果" @@ -3018,14 +3156,10 @@ msgstr "未找到「{query}」的結果" msgid "No results found for {query}" msgstr "未找到 {query} 的結果" -#: src/components/dialogs/GifSelect.tsx:204 +#: src/components/dialogs/GifSelect.tsx:205 msgid "No search results found for \"{search}\"." msgstr "未找到「{search}」的搜尋結果。" -#: src/components/dms/NewChat.tsx:240 -msgid "No search results found for \"{searchText}\"." -msgstr "" - #: src/components/dialogs/EmbedConsent.tsx:105 #: src/components/dialogs/EmbedConsent.tsx:112 msgid "No thanks" @@ -3035,6 +3169,10 @@ msgstr "不,謝謝" msgid "Nobody" msgstr "沒有人" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:44 +msgid "Nobody can reply" +msgstr "沒有人可以回覆" + #: src/components/LikedByList.tsx:79 #: src/components/LikesDialog.tsx:99 msgid "Nobody has liked this yet. Maybe you should be the first!" @@ -3044,17 +3182,13 @@ msgstr "還沒有人按喜歡,也許您應該成為第一個!" msgid "Non-sexual Nudity" msgstr "非情色內容裸體" -#: src/view/com/modals/SelfLabel.tsx:135 -#~ msgid "Not Applicable." -#~ msgstr "不適用。" - #: src/Navigation.tsx:116 #: src/view/screens/Profile.tsx:100 msgid "Not Found" msgstr "未找到" -#: src/view/com/modals/VerifyEmail.tsx:255 -#: src/view/com/modals/VerifyEmail.tsx:261 +#: src/view/com/modals/VerifyEmail.tsx:254 +#: src/view/com/modals/VerifyEmail.tsx:260 msgid "Not right now" msgstr "暫時不需要" @@ -3068,47 +3202,55 @@ msgstr "關於分享的注意事項" msgid "Note: Bluesky is an open and public network. This setting only limits the visibility of your content on the Bluesky app and website, and other apps may not respect this setting. Your content may still be shown to logged-out users by other apps and websites." msgstr "注意:Bluesky 是一個開放且公開的網路。此設定僅限制您在 Bluesky 應用程式和網站上的內容可見性,其他應用程式可能不尊遵循這樣的規則。您的內容仍可能由其他應用程式和網站顯示給未登入的使用者。" -#: src/Navigation.tsx:512 +#: src/screens/Messages/List/index.tsx:215 +msgid "Nothing here" +msgstr "這裡什麼也沒有" + +#: src/screens/Messages/Settings.tsx:124 +msgid "Notification sounds" +msgstr "通知音效" + +#: src/screens/Messages/Settings.tsx:121 +msgid "Notification Sounds" +msgstr "通知音效" + +#: src/Navigation.tsx:515 #: src/view/screens/Notifications.tsx:124 #: src/view/screens/Notifications.tsx:148 -#: src/view/shell/bottom-bar/BottomBar.tsx:236 -#: src/view/shell/desktop/LeftNav.tsx:351 -#: src/view/shell/Drawer.tsx:459 -#: src/view/shell/Drawer.tsx:460 +#: src/view/shell/bottom-bar/BottomBar.tsx:227 +#: src/view/shell/desktop/LeftNav.tsx:350 +#: src/view/shell/Drawer.tsx:456 +#: src/view/shell/Drawer.tsx:457 msgid "Notifications" msgstr "通知" -#: src/components/dms/MessageItem.tsx:139 +#: src/components/dms/MessageItem.tsx:161 msgid "Now" -msgstr "" +msgstr "現在" -#: src/view/com/modals/SelfLabel.tsx:103 +#: src/view/com/modals/SelfLabel.tsx:104 msgid "Nudity" msgstr "裸露" -#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:72 msgid "Nudity or adult content not labeled as such" msgstr "未貼上此類標記的裸露或成人內容" -#: src/screens/Signup/index.tsx:145 -#~ msgid "of" -#~ msgstr "的" - #: src/lib/moderation/useLabelBehaviorDescription.ts:11 msgid "Off" msgstr "顯示" -#: src/components/dialogs/GifSelect.tsx:287 +#: src/components/dialogs/GifSelect.tsx:288 #: src/view/com/util/ErrorBoundary.tsx:55 msgid "Oh no!" msgstr "糟糕!" -#: src/screens/Onboarding/StepInterests/index.tsx:133 +#: src/screens/Onboarding/StepInterests/index.tsx:143 msgid "Oh no! Something went wrong." msgstr "糟糕!發生了一些錯誤。" #: src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx:126 -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:335 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:336 msgid "OK" msgstr "好的" @@ -3120,49 +3262,66 @@ msgstr "好的" msgid "Oldest replies first" msgstr "最舊的回覆優先" -#: src/view/screens/Settings/index.tsx:253 +#: src/view/screens/Settings/index.tsx:254 msgid "Onboarding reset" msgstr "重新開始引導流程" -#: src/view/com/composer/Composer.tsx:462 +#: src/view/com/composer/Composer.tsx:460 msgid "One or more images is missing alt text." msgstr "至少有一張圖片缺失了替代文字。" +#: src/screens/Onboarding/StepProfile/index.tsx:120 +msgid "Only .jpg and .png files are supported" +msgstr "僅支援 .jpg 和 .png 文件" + #: src/view/com/threadgate/WhoCanReply.tsx:100 msgid "Only {0} can reply." -msgstr "只有 {0} 可以回覆。" +msgstr "只有{0}可以回覆。" #: src/screens/Signup/StepHandle.tsx:98 msgid "Only contains letters, numbers, and hyphens" msgstr "只包含字母、數字和連字符" -#: src/components/Lists.tsx:78 +#: src/components/Lists.tsx:88 msgid "Oops, something went wrong!" msgstr "糟糕,發生了錯誤!" -#: src/components/Lists.tsx:179 -#: src/view/screens/AppPasswords.tsx:67 +#: src/components/Lists.tsx:191 +#: src/view/screens/AppPasswords.tsx:69 #: src/view/screens/Profile.tsx:100 msgid "Oops!" msgstr "糟糕!" -#: src/screens/Onboarding/StepFinished.tsx:121 +#: src/screens/Onboarding/StepFinished.tsx:218 msgid "Open" msgstr "開啟" -#: src/view/com/composer/Composer.tsx:555 -#: src/view/com/composer/Composer.tsx:556 +#: src/screens/Onboarding/StepProfile/index.tsx:280 +msgid "Open avatar creator" +msgstr "開啟頭像創建工具" + +#: src/screens/Messages/List/ChatListItem.tsx:164 +#: src/screens/Messages/List/ChatListItem.tsx:165 +msgid "Open conversation options" +msgstr "開啟對話選項" + +#: src/view/com/composer/Composer.tsx:560 +#: src/view/com/composer/Composer.tsx:561 msgid "Open emoji picker" msgstr "開啟表情符號選擇器" -#: src/view/screens/ProfileFeed.tsx:311 +#: src/view/screens/ProfileFeed.tsx:295 msgid "Open feed options menu" msgstr "開啟動態選項選單" -#: src/view/screens/Settings/index.tsx:702 +#: src/view/screens/Settings/index.tsx:729 msgid "Open links with in-app browser" msgstr "在內建瀏覽器中開啟連結" +#: src/components/dms/ActionsWrapper.tsx:87 +msgid "Open message options" +msgstr "開啟訊息選項" + #: src/screens/Moderation/index.tsx:227 msgid "Open muted words and tags settings" msgstr "開啟靜音文字和標籤設定" @@ -3175,12 +3334,12 @@ msgstr "開啟導覽" msgid "Open post options menu" msgstr "開啟貼文選項選單" -#: src/view/screens/Settings/index.tsx:803 -#: src/view/screens/Settings/index.tsx:813 +#: src/view/screens/Settings/index.tsx:830 +#: src/view/screens/Settings/index.tsx:840 msgid "Open storybook page" msgstr "開啟故事書頁面" -#: src/view/screens/Settings/index.tsx:791 +#: src/view/screens/Settings/index.tsx:818 msgid "Open system log" msgstr "開啟系統日誌" @@ -3188,7 +3347,7 @@ msgstr "開啟系統日誌" msgid "Opens {numItems} options" msgstr "開啟 {numItems} 個選項" -#: src/view/screens/Settings/index.tsx:501 +#: src/view/screens/Settings/index.tsx:503 msgid "Opens accessibility settings" msgstr "開啟無障礙設定" @@ -3204,11 +3363,15 @@ msgstr "展開此通知的用戶列表" msgid "Opens camera on device" msgstr "開啟裝置相機" +#: src/view/screens/Settings/index.tsx:632 +msgid "Opens chat settings" +msgstr "打開對話設定" + #: src/view/com/composer/Prompt.tsx:25 msgid "Opens composer" msgstr "開啟編輯器" -#: src/view/screens/Settings/index.tsx:522 +#: src/view/screens/Settings/index.tsx:524 msgid "Opens configurable language settings" msgstr "開啟可以更改的語言設定" @@ -3216,19 +3379,19 @@ msgstr "開啟可以更改的語言設定" msgid "Opens device photo gallery" msgstr "開啟裝置相簿" -#: src/view/screens/Settings/index.tsx:637 +#: src/view/screens/Settings/index.tsx:664 msgid "Opens external embeds settings" msgstr "開啟外部連結嵌入設定" #: src/view/com/auth/SplashScreen.tsx:50 #: src/view/com/auth/SplashScreen.web.tsx:99 msgid "Opens flow to create a new Bluesky account" -msgstr "開始建立新的 Bluesky 帳戶的流程" +msgstr "開始建立新的 Bluesky 帳號的流程" #: src/view/com/auth/SplashScreen.tsx:65 #: src/view/com/auth/SplashScreen.web.tsx:114 msgid "Opens flow to sign into your existing Bluesky account" -msgstr "開始登入您現有的 Bluesky 帳戶流程" +msgstr "開始登入您現有的 Bluesky 帳號流程" #: src/view/com/composer/photos/SelectGifBtn.tsx:37 msgid "Opens GIF select dialog" @@ -3238,81 +3401,78 @@ msgstr "開啟 GIF 選擇對話框" msgid "Opens list of invite codes" msgstr "開啟邀請碼列表" -#: src/view/screens/Settings/index.tsx:773 +#: src/view/screens/Settings/index.tsx:800 msgid "Opens modal for account deletion confirmation. Requires email code" msgstr "開啟帳號刪除的確認彈窗。需要電子郵件驗證碼" -#: src/view/screens/Settings/index.tsx:731 +#: src/view/screens/Settings/index.tsx:758 msgid "Opens modal for changing your Bluesky password" msgstr "開啟修改 Bluesky 密碼的彈窗" -#: src/view/screens/Settings/index.tsx:686 +#: src/view/screens/Settings/index.tsx:713 msgid "Opens modal for choosing a new Bluesky handle" msgstr "開啟創建新 Bluesky 帳號代碼的彈窗" -#: src/view/screens/Settings/index.tsx:754 +#: src/view/screens/Settings/index.tsx:781 msgid "Opens modal for downloading your Bluesky account data (repository)" -msgstr "開啟下載 Bluesky 帳戶數據(存儲庫)的彈窗" +msgstr "開啟下載 Bluesky 帳號數據(存儲庫)的彈窗" -#: src/view/screens/Settings/index.tsx:941 +#: src/view/screens/Settings/index.tsx:978 msgid "Opens modal for email verification" msgstr "開啟驗證電子郵件的彈窗" -#: src/view/com/modals/ChangeHandle.tsx:283 +#: src/view/com/modals/ChangeHandle.tsx:276 msgid "Opens modal for using custom domain" msgstr "開啟使用自訂網域的彈窗" -#: src/view/screens/Settings/index.tsx:547 +#: src/view/screens/Settings/index.tsx:549 msgid "Opens moderation settings" -msgstr "開啟限制設定" +msgstr "開啟內容管理設定" -#: src/screens/Login/LoginForm.tsx:219 +#: src/screens/Login/LoginForm.tsx:225 msgid "Opens password reset form" msgstr "開啟密碼重設表單" #: src/view/com/home/HomeHeaderLayout.web.tsx:77 -#: src/view/screens/Feeds.tsx:381 +#: src/view/screens/Feeds.tsx:416 msgid "Opens screen to edit Saved Feeds" -msgstr "開啟編輯已儲存動態源的畫面" +msgstr "開啟編輯已儲存的動態源之畫面" -#: src/view/screens/Settings/index.tsx:608 +#: src/view/screens/Settings/index.tsx:610 msgid "Opens screen with all saved feeds" -msgstr "開啟包含所有已儲存動態源的畫面" +msgstr "開啟包含所有已儲存的動態源之畫面" -#: src/view/screens/Settings/index.tsx:664 +#: src/view/screens/Settings/index.tsx:691 msgid "Opens the app password settings" msgstr "開啟應用程式專用密碼設定畫面" -#: src/view/screens/Settings/index.tsx:565 +#: src/view/screens/Settings/index.tsx:567 msgid "Opens the Following feed preferences" -msgstr "開啟跟隨動態源設定偏好" +msgstr "開啟「Following」動態源偏好" #: src/view/com/modals/LinkWarning.tsx:93 msgid "Opens the linked website" msgstr "開啟網站連結" -#: src/screens/Messages/List/index.tsx:63 -msgid "Opens the message settings page" -msgstr "打開私訊設定頁面" - -#: src/view/screens/Settings/index.tsx:804 -#: src/view/screens/Settings/index.tsx:814 +#: src/view/screens/Settings/index.tsx:831 +#: src/view/screens/Settings/index.tsx:841 msgid "Opens the storybook page" msgstr "開啟故事書頁面" -#: src/view/screens/Settings/index.tsx:792 +#: src/view/screens/Settings/index.tsx:819 msgid "Opens the system log page" msgstr "開啟系統日誌頁面" -#: src/view/screens/Settings/index.tsx:586 +#: src/view/screens/Settings/index.tsx:588 msgid "Opens the threads preferences" -msgstr "開啟對話串偏好" +msgstr "開啟討論串偏好" #: src/view/com/util/forms/DropdownButton.tsx:280 msgid "Option {0} of {numItems}" msgstr "{0} 選項,共 {numItems} 個" -#: src/components/ReportDialog/SubmitView.tsx:162 +#: src/components/dms/ReportDialog.tsx:181 +#: src/components/ReportDialog/SubmitView.tsx:163 msgid "Optionally provide additional information below:" msgstr "在以下提供額外訊息(可選):" @@ -3320,7 +3480,7 @@ msgstr "在以下提供額外訊息(可選):" msgid "Or combine these options:" msgstr "或者組合這些選項:" -#: src/lib/moderation/useReportOptions.ts:25 +#: src/lib/moderation/useReportOptions.ts:26 msgid "Other" msgstr "其他" @@ -3332,7 +3492,11 @@ msgstr "其他帳號" msgid "Other..." msgstr "其他…" -#: src/components/Lists.tsx:196 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:28 +msgid "Our moderators have reviewed reports and decided to disable your access to chats on Bluesky." +msgstr "我們的內容管理者已審核檢舉,並決定停用您在 Bluesky 上的對話功能。" + +#: src/components/Lists.tsx:208 #: src/view/screens/NotFound.tsx:45 msgid "Page not found" msgstr "頁面不存在" @@ -3341,10 +3505,10 @@ msgstr "頁面不存在" msgid "Page Not Found" msgstr "頁面不存在" -#: src/screens/Login/LoginForm.tsx:195 +#: src/screens/Login/LoginForm.tsx:201 #: src/screens/Signup/StepInfo/index.tsx:102 -#: src/view/com/modals/DeleteAccount.tsx:195 -#: src/view/com/modals/DeleteAccount.tsx:202 +#: src/view/com/modals/DeleteAccount.tsx:205 +#: src/view/com/modals/DeleteAccount.tsx:212 msgid "Password" msgstr "密碼" @@ -3366,7 +3530,7 @@ msgstr "暫停" #: src/view/screens/Search/Search.tsx:379 msgid "People" -msgstr "人物" +msgstr "用戶" #: src/Navigation.tsx:171 msgid "People followed by @{0}" @@ -3376,35 +3540,39 @@ msgstr "被 @{0} 跟隨的人" msgid "People following @{0}" msgstr "跟隨 @{0} 的人" -#: src/view/com/lightbox/Lightbox.tsx:66 +#: src/view/com/lightbox/Lightbox.tsx:67 msgid "Permission to access camera roll is required." -msgstr "需要相機權限。" +msgstr "需要相簿權限。" -#: src/view/com/lightbox/Lightbox.tsx:72 +#: src/view/com/lightbox/Lightbox.tsx:73 msgid "Permission to access camera roll was denied. Please enable it in your system settings." -msgstr "相機權限已遭拒絕,請在系統設定中啟用。" +msgstr "相簿權限已遭拒絕,請在系統設定中啟用。" -#: src/screens/Onboarding/index.tsx:31 +#: src/screens/Onboarding/index.tsx:43 msgid "Pets" msgstr "寵物" -#: src/view/com/modals/SelfLabel.tsx:121 +#: src/view/com/modals/SelfLabel.tsx:122 msgid "Pictures meant for adults." msgstr "適合成年人的圖像。" -#: src/view/screens/ProfileFeed.tsx:303 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:287 +#: src/view/screens/ProfileList.tsx:616 msgid "Pin to home" msgstr "釘選到首頁" -#: src/view/screens/ProfileFeed.tsx:306 +#: src/view/screens/ProfileFeed.tsx:290 msgid "Pin to Home" msgstr "釘選到首頁" -#: src/view/screens/SavedFeeds.tsx:89 +#: src/view/screens/SavedFeeds.tsx:102 msgid "Pinned Feeds" msgstr "釘選的動態源列表" +#: src/view/screens/ProfileList.tsx:288 +msgid "Pinned to your feeds" +msgstr "從您的動態中取消釘選" + #: src/view/com/util/post-embeds/GifEmbed.tsx:36 msgid "Play" msgstr "播放" @@ -3426,78 +3594,83 @@ msgstr "播放影片" msgid "Plays the GIF" msgstr "播放 GIF" -#: src/screens/Signup/state.ts:241 +#: src/screens/Signup/state.ts:234 msgid "Please choose your handle." msgstr "請設定您的帳號代碼。" -#: src/screens/Signup/state.ts:234 +#: src/screens/Signup/state.ts:227 msgid "Please choose your password." msgstr "請設定您的密碼。" -#: src/screens/Signup/state.ts:255 +#: src/screens/Signup/state.ts:248 msgid "Please complete the verification captcha." msgstr "請完成 Captcha 驗證。" -#: src/view/com/modals/ChangeEmail.tsx:69 +#: src/view/com/modals/ChangeEmail.tsx:65 msgid "Please confirm your email before changing it. This is a temporary requirement while email-updating tools are added, and it will soon be removed." msgstr "更改前請先確認您的電子郵件地址。這是電子郵件更新工具的臨時要求,此限制將很快被移除。" -#: src/view/com/modals/AddAppPasswords.tsx:91 +#: src/view/com/modals/AddAppPasswords.tsx:95 msgid "Please enter a name for your app password. All spaces is not allowed." msgstr "請輸入應用程式專用密碼的名稱。所有空格均不允許使用。" -#: src/view/com/modals/AddAppPasswords.tsx:146 +#: src/view/com/modals/AddAppPasswords.tsx:151 msgid "Please enter a unique name for this App Password or use our randomly generated one." msgstr "請輸入此應用程式專用密碼的唯一名稱,或使用我們提供的隨機生成名稱。" -#: src/components/dialogs/MutedWords.tsx:67 +#: src/components/dialogs/MutedWords.tsx:68 msgid "Please enter a valid word, tag, or phrase to mute" msgstr "請輸入有效的文字或標籤進行靜音" -#: src/screens/Signup/state.ts:220 +#: src/screens/Signup/state.ts:213 msgid "Please enter your email." msgstr "請輸入您的電子郵件。" -#: src/view/com/modals/DeleteAccount.tsx:191 +#: src/view/com/modals/DeleteAccount.tsx:201 msgid "Please enter your password as well:" msgstr "請輸入您的密碼:" -#: src/components/moderation/LabelsOnMeDialog.tsx:222 +#: src/components/moderation/LabelsOnMeDialog.tsx:258 msgid "Please explain why you think this label was incorrectly applied by {0}" msgstr "請解釋您認為 {0} 不正確套用此標記的原因" -#: src/lib/hooks/useAccountSwitcher.ts:48 -msgid "Please sign in as @{0}" -msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:110 +msgid "Please explain why you think your chats were incorrectly disabled" +msgstr "請解釋您認為我們不該停用您對話功能的原因" -#: src/view/com/modals/VerifyEmail.tsx:110 +#: src/lib/hooks/useAccountSwitcher.ts:48 +#: src/lib/hooks/useAccountSwitcher.ts:58 +msgid "Please sign in as @{0}" +msgstr "請以 @{0} 的身分登入" + +#: src/view/com/modals/VerifyEmail.tsx:109 msgid "Please Verify Your Email" msgstr "請驗證您的電子郵件地址" -#: src/view/com/composer/Composer.tsx:252 +#: src/view/com/composer/Composer.tsx:254 msgid "Please wait for your link card to finish loading" msgstr "請等待您的連結預覽載入完畢" -#: src/screens/Onboarding/index.tsx:37 +#: src/screens/Onboarding/index.tsx:49 msgid "Politics" msgstr "政治" -#: src/view/com/modals/SelfLabel.tsx:111 +#: src/view/com/modals/SelfLabel.tsx:112 msgid "Porn" msgstr "情色內容" -#: src/view/com/composer/Composer.tsx:437 -#: src/view/com/composer/Composer.tsx:445 +#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:443 msgctxt "action" msgid "Post" msgstr "發佈" -#: src/view/com/post-thread/PostThread.tsx:295 +#: src/view/com/post-thread/PostThread.tsx:331 msgctxt "description" msgid "Post" msgstr "發佈" -#: src/view/com/post-thread/PostThreadItem.tsx:176 +#: src/view/com/post-thread/PostThreadItem.tsx:175 msgid "Post by {0}" msgstr "{0} 的貼文" @@ -3511,7 +3684,7 @@ msgstr "@{0} 的貼文" msgid "Post deleted" msgstr "貼文已刪除" -#: src/view/com/post-thread/PostThread.tsx:157 +#: src/view/com/post-thread/PostThread.tsx:193 msgid "Post hidden" msgstr "貼文已隱藏" @@ -3533,8 +3706,8 @@ msgstr "貼文語言" msgid "Post Languages" msgstr "貼文語言" -#: src/view/com/post-thread/PostThread.tsx:152 -#: src/view/com/post-thread/PostThread.tsx:164 +#: src/view/com/post-thread/PostThread.tsx:188 +#: src/view/com/post-thread/PostThread.tsx:200 msgid "Post not found" msgstr "找不到貼文" @@ -3546,11 +3719,11 @@ msgstr "貼文" msgid "Posts" msgstr "貼文" -#: src/components/dialogs/MutedWords.tsx:89 +#: src/components/dialogs/MutedWords.tsx:90 msgid "Posts can be muted based on their text, their tags, or both." msgstr "可以靜音貼文所包含的文字和標籤。" -#: src/view/com/posts/FeedErrorMessage.tsx:64 +#: src/view/com/posts/FeedErrorMessage.tsx:69 msgid "Posts hidden" msgstr "貼文已隱藏" @@ -3558,22 +3731,21 @@ msgstr "貼文已隱藏" msgid "Potentially Misleading Link" msgstr "潛在誤導性連結" +#: src/screens/Messages/Conversation/MessageListError.tsx:19 +msgid "Press to attempt reconnection" +msgstr "點擊以重試連線" + #: src/components/forms/HostingProvider.tsx:46 msgid "Press to change hosting provider" msgstr "按下以更改託管服務供應商" #: src/components/Error.tsx:85 -#: src/components/Lists.tsx:83 -#: src/screens/Messages/Conversation/MessageListError.tsx:48 +#: src/components/Lists.tsx:93 +#: src/screens/Messages/Conversation/MessageListError.tsx:24 #: src/screens/Signup/index.tsx:200 msgid "Press to retry" msgstr "按下以重試" -#: src/screens/Messages/Conversation/MessagesList.tsx:47 -#: src/screens/Messages/Conversation/MessagesList.tsx:53 -msgid "Press to Retry" -msgstr "" - #: src/view/com/lightbox/Lightbox.web.tsx:150 msgid "Previous image" msgstr "上一張圖片" @@ -3586,7 +3758,7 @@ msgstr "主要語言" msgid "Prioritize Your Follows" msgstr "優先顯示跟隨者" -#: src/view/screens/Settings/index.tsx:620 +#: src/view/screens/Settings/index.tsx:647 #: src/view/shell/desktop/RightNav.tsx:76 msgid "Privacy" msgstr "隱私" @@ -3594,25 +3766,29 @@ msgstr "隱私" #: src/Navigation.tsx:238 #: src/screens/Signup/StepInfo/Policies.tsx:56 #: src/view/screens/PrivacyPolicy.tsx:29 -#: src/view/screens/Settings/index.tsx:890 -#: src/view/shell/Drawer.tsx:275 +#: src/view/screens/Settings/index.tsx:927 +#: src/view/shell/Drawer.tsx:284 msgid "Privacy Policy" msgstr "隱私政策" +#: src/components/dms/MessagesNUX.tsx:91 +msgid "Privately chat with other users." +msgstr "和其他用戶進行私人對話。" + #: src/screens/Login/ForgotPasswordForm.tsx:156 msgid "Processing..." msgstr "處理中…" -#: src/view/screens/DebugMod.tsx:889 +#: src/view/screens/DebugMod.tsx:894 #: src/view/screens/Profile.tsx:345 msgid "profile" msgstr "個人檔案" -#: src/view/shell/bottom-bar/BottomBar.tsx:303 -#: src/view/shell/desktop/LeftNav.tsx:415 -#: src/view/shell/Drawer.tsx:69 -#: src/view/shell/Drawer.tsx:551 -#: src/view/shell/Drawer.tsx:552 +#: src/view/shell/bottom-bar/BottomBar.tsx:272 +#: src/view/shell/desktop/LeftNav.tsx:381 +#: src/view/shell/Drawer.tsx:78 +#: src/view/shell/Drawer.tsx:541 +#: src/view/shell/Drawer.tsx:542 msgid "Profile" msgstr "個人檔案" @@ -3620,11 +3796,11 @@ msgstr "個人檔案" msgid "Profile updated" msgstr "個人檔案已更新" -#: src/view/screens/Settings/index.tsx:954 +#: src/view/screens/Settings/index.tsx:991 msgid "Protect your account by verifying your email." msgstr "通過驗證電子郵件地址來保護您的帳號。" -#: src/screens/Onboarding/StepFinished.tsx:107 +#: src/screens/Onboarding/StepFinished.tsx:204 msgid "Public" msgstr "公開內容" @@ -3636,11 +3812,11 @@ msgstr "公開且可共享的批量靜音或封鎖列表。" msgid "Public, shareable lists which can drive feeds." msgstr "公開且可共享的列表,可作為動態源使用。" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish post" msgstr "發佈貼文" -#: src/view/com/composer/Composer.tsx:422 +#: src/view/com/composer/Composer.tsx:420 msgid "Publish reply" msgstr "發佈回覆" @@ -3666,16 +3842,28 @@ msgstr "隨機顯示 (又名試試手氣)" msgid "Ratios" msgstr "比率" +#: src/components/dms/ReportDialog.tsx:172 +msgid "Reason:" +msgstr "原因:" + #: src/view/screens/Search/Search.tsx:886 msgid "Recent Searches" msgstr "最近的搜尋結果" -#: src/components/dialogs/MutedWords.tsx:286 -#: src/view/com/feeds/FeedSourceCard.tsx:283 +#: src/screens/Messages/Conversation/MessageListError.tsx:20 +msgid "Reconnect" +msgstr "重新連線" + +#: src/screens/Messages/List/index.tsx:200 +msgid "Reload conversations" +msgstr "重新載入對話" + +#: src/components/dialogs/MutedWords.tsx:288 +#: src/view/com/feeds/FeedSourceCard.tsx:285 #: src/view/com/modals/ListAddRemoveUsers.tsx:268 -#: src/view/com/modals/SelfLabel.tsx:83 +#: src/view/com/modals/SelfLabel.tsx:84 #: src/view/com/modals/UserAddRemoveLists.tsx:219 -#: src/view/com/posts/FeedErrorMessage.tsx:204 +#: src/view/com/posts/FeedErrorMessage.tsx:213 msgid "Remove" msgstr "移除" @@ -3683,7 +3871,7 @@ msgstr "移除" msgid "Remove account" msgstr "刪除帳號" -#: src/view/com/util/UserAvatar.tsx:369 +#: src/view/com/util/UserAvatar.tsx:370 msgid "Remove Avatar" msgstr "刪除頭像" @@ -3691,22 +3879,25 @@ msgstr "刪除頭像" msgid "Remove Banner" msgstr "刪除橫幅" -#: src/view/com/posts/FeedErrorMessage.tsx:160 +#: src/view/com/posts/FeedErrorMessage.tsx:169 +#: src/view/com/posts/FeedShutdownMsg.tsx:113 +#: src/view/com/posts/FeedShutdownMsg.tsx:117 msgid "Remove feed" msgstr "刪除動態源" -#: src/view/com/posts/FeedErrorMessage.tsx:201 +#: src/view/com/posts/FeedErrorMessage.tsx:210 msgid "Remove feed?" msgstr "刪除動態源?" -#: src/view/com/feeds/FeedSourceCard.tsx:172 -#: src/view/com/feeds/FeedSourceCard.tsx:232 -#: src/view/screens/ProfileFeed.tsx:346 -#: src/view/screens/ProfileFeed.tsx:352 +#: src/view/com/feeds/FeedSourceCard.tsx:174 +#: src/view/com/feeds/FeedSourceCard.tsx:234 +#: src/view/screens/ProfileFeed.tsx:330 +#: src/view/screens/ProfileFeed.tsx:336 +#: src/view/screens/ProfileList.tsx:442 msgid "Remove from my feeds" msgstr "從我的動態源中刪除" -#: src/view/com/feeds/FeedSourceCard.tsx:278 +#: src/view/com/feeds/FeedSourceCard.tsx:280 msgid "Remove from my feeds?" msgstr "從我的動態源中刪除?" @@ -3718,7 +3909,7 @@ msgstr "刪除圖片" msgid "Remove image preview" msgstr "刪除圖片預覽" -#: src/components/dialogs/MutedWords.tsx:329 +#: src/components/dialogs/MutedWords.tsx:331 msgid "Remove mute word from your list" msgstr "從您的列表中移除靜音文字" @@ -3730,22 +3921,24 @@ msgstr "刪除引用貼文" msgid "Remove repost" msgstr "刪除轉貼貼文" -#: src/view/com/posts/FeedErrorMessage.tsx:202 +#: src/view/com/posts/FeedErrorMessage.tsx:211 msgid "Remove this feed from your saved feeds" -msgstr "將這個動態源從儲存的動態源列表中刪除" +msgstr "將這個動態源從您已儲存之動態源列表中刪除" #: src/view/com/modals/ListAddRemoveUsers.tsx:199 #: src/view/com/modals/UserAddRemoveLists.tsx:152 msgid "Removed from list" msgstr "從列表中刪除" -#: src/view/com/feeds/FeedSourceCard.tsx:120 +#: src/view/com/feeds/FeedSourceCard.tsx:125 msgid "Removed from my feeds" -msgstr "從我的動態源中刪除" +msgstr "已從我的動態源中刪除" -#: src/view/screens/ProfileFeed.tsx:210 +#: src/view/com/posts/FeedShutdownMsg.tsx:44 +#: src/view/screens/ProfileFeed.tsx:191 +#: src/view/screens/ProfileList.tsx:319 msgid "Removed from your feeds" -msgstr "從您的動態源中刪除" +msgstr "從您的動態中刪除" #: src/view/com/composer/ExternalEmbed.tsx:88 msgid "Removes default thumbnail from {0}" @@ -3755,89 +3948,103 @@ msgstr "從 {0} 中刪除預設縮圖" msgid "Removes quoted post" msgstr "刪除已轉貼貼文" +#: src/view/com/posts/FeedShutdownMsg.tsx:126 +#: src/view/com/posts/FeedShutdownMsg.tsx:130 +msgid "Replace with Discover" +msgstr "用「Discover」動態源取代" + #: src/view/screens/Profile.tsx:194 msgid "Replies" msgstr "回覆" #: src/view/com/threadgate/WhoCanReply.tsx:98 msgid "Replies to this thread are disabled" -msgstr "對此對話串的回覆已停用" +msgstr "對此討論串的回覆已停用" -#: src/view/com/composer/Composer.tsx:435 +#: src/view/com/composer/Composer.tsx:433 msgctxt "action" msgid "Reply" msgstr "回覆" -#: src/view/screens/PreferencesFollowingFeed.tsx:142 +#: src/view/screens/PreferencesFollowingFeed.tsx:143 msgid "Reply Filters" msgstr "回覆過濾器" #: src/view/com/post/Post.tsx:176 -#: src/view/com/posts/FeedItem.tsx:336 +#: src/view/com/posts/FeedItem.tsx:421 msgctxt "description" msgid "Reply to <0><1/>" msgstr "對 <0><1/> 回覆" -#: src/components/dms/MessageMenu.tsx:109 +#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessagesListBlockedFooter.tsx:77 +#: src/components/dms/MessagesListBlockedFooter.tsx:84 msgid "Report" -msgstr "" - -#: src/components/dms/ConvoMenu.tsx:146 -#: src/components/dms/ConvoMenu.tsx:150 -msgid "Report account" -msgstr "" +msgstr "檢舉" #: src/view/com/profile/ProfileMenu.tsx:319 #: src/view/com/profile/ProfileMenu.tsx:322 msgid "Report Account" msgstr "檢舉帳號" +#: src/components/dms/ConvoMenu.tsx:195 +#: src/components/dms/ConvoMenu.tsx:198 +#: src/components/dms/ReportConversationPrompt.tsx:18 +msgid "Report conversation" +msgstr "檢舉對話" + #: src/components/ReportDialog/index.tsx:49 msgid "Report dialog" msgstr "檢舉對話框" -#: src/view/screens/ProfileFeed.tsx:363 -#: src/view/screens/ProfileFeed.tsx:365 +#: src/view/screens/ProfileFeed.tsx:347 +#: src/view/screens/ProfileFeed.tsx:349 msgid "Report feed" msgstr "檢舉動態源" -#: src/view/screens/ProfileList.tsx:431 +#: src/view/screens/ProfileList.tsx:484 msgid "Report List" msgstr "檢舉列表" -#: src/components/dms/MessageMenu.tsx:107 +#: src/components/dms/MessageMenu.tsx:105 msgid "Report message" -msgstr "" +msgstr "檢舉訊息" #: src/view/com/util/forms/PostDropdownBtn.tsx:363 #: src/view/com/util/forms/PostDropdownBtn.tsx:365 msgid "Report post" msgstr "檢舉貼文" -#: src/components/ReportDialog/SelectReportOptionView.tsx:42 +#: src/components/ReportDialog/SelectReportOptionView.tsx:43 msgid "Report this content" msgstr "檢舉這個內容" -#: src/components/ReportDialog/SelectReportOptionView.tsx:55 +#: src/components/ReportDialog/SelectReportOptionView.tsx:56 msgid "Report this feed" msgstr "檢舉這個動態源" -#: src/components/ReportDialog/SelectReportOptionView.tsx:52 +#: src/components/ReportDialog/SelectReportOptionView.tsx:53 msgid "Report this list" msgstr "檢舉這個列表" -#: src/components/ReportDialog/SelectReportOptionView.tsx:49 +#: src/components/dms/ReportDialog.tsx:47 +#: src/components/dms/ReportDialog.tsx:140 +#: src/components/ReportDialog/SelectReportOptionView.tsx:59 +msgid "Report this message" +msgstr "檢舉這個訊息" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:50 msgid "Report this post" msgstr "檢舉這則貼文" -#: src/components/ReportDialog/SelectReportOptionView.tsx:46 +#: src/components/ReportDialog/SelectReportOptionView.tsx:47 msgid "Report this user" msgstr "檢舉這個用戶" #: src/view/com/modals/Repost.tsx:44 #: src/view/com/modals/Repost.tsx:49 #: src/view/com/modals/Repost.tsx:54 -#: src/view/com/util/post-ctrls/RepostButton.tsx:60 +#: src/view/com/util/post-ctrls/RepostButton.tsx:61 msgctxt "action" msgid "Repost" msgstr "轉貼" @@ -3855,11 +4062,11 @@ msgstr "轉貼或引用貼文" msgid "Reposted By" msgstr "轉貼" -#: src/view/com/posts/FeedItem.tsx:248 +#: src/view/com/posts/FeedItem.tsx:243 msgid "Reposted by {0}" msgstr "由 {0} 轉貼" -#: src/view/com/posts/FeedItem.tsx:266 +#: src/view/com/posts/FeedItem.tsx:261 msgid "Reposted by <0><1/>" msgstr "由 <0><1/> 轉貼" @@ -3867,12 +4074,12 @@ msgstr "由 <0><1/> 轉貼" msgid "reposted your post" msgstr "轉貼您的貼文" -#: src/view/com/post-thread/PostThreadItem.tsx:188 +#: src/view/com/post-thread/PostThreadItem.tsx:187 msgid "Reposts of this post" msgstr "轉貼這則貼文" -#: src/view/com/modals/ChangeEmail.tsx:183 -#: src/view/com/modals/ChangeEmail.tsx:185 +#: src/view/com/modals/ChangeEmail.tsx:176 +#: src/view/com/modals/ChangeEmail.tsx:178 msgid "Request Change" msgstr "請求變更" @@ -3885,16 +4092,16 @@ msgstr "請求代碼" msgid "Require alt text before posting" msgstr "要求發佈前提供替代文字" -#: src/view/screens/Settings/Email2FAToggle.tsx:54 +#: src/view/screens/Settings/Email2FAToggle.tsx:51 msgid "Require email code to log into your account" -msgstr "需要電子郵件驗證碼才能登入您的帳戶" +msgstr "登入時要求電子郵件驗證碼" #: src/screens/Signup/StepInfo/index.tsx:69 msgid "Required for this provider" msgstr "此供應商要求必填" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:169 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:172 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:168 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:171 msgid "Resend email" msgstr "重發 email" @@ -3906,8 +4113,8 @@ msgstr "重設碼" msgid "Reset Code" msgstr "重設碼" -#: src/view/screens/Settings/index.tsx:833 -#: src/view/screens/Settings/index.tsx:836 +#: src/view/screens/Settings/index.tsx:870 +#: src/view/screens/Settings/index.tsx:873 msgid "Reset onboarding state" msgstr "重設初始設定進行狀態" @@ -3915,20 +4122,20 @@ msgstr "重設初始設定進行狀態" msgid "Reset password" msgstr "重設密碼" -#: src/view/screens/Settings/index.tsx:823 -#: src/view/screens/Settings/index.tsx:826 +#: src/view/screens/Settings/index.tsx:850 +#: src/view/screens/Settings/index.tsx:853 msgid "Reset preferences state" msgstr "重設偏好狀態" -#: src/view/screens/Settings/index.tsx:834 +#: src/view/screens/Settings/index.tsx:871 msgid "Resets the onboarding state" msgstr "重設初始設定狀態" -#: src/view/screens/Settings/index.tsx:824 +#: src/view/screens/Settings/index.tsx:851 msgid "Resets the preferences state" msgstr "重設偏好狀態" -#: src/screens/Login/LoginForm.tsx:283 +#: src/screens/Login/LoginForm.tsx:289 msgid "Retries login" msgstr "重試登入" @@ -3937,25 +4144,22 @@ msgstr "重試登入" msgid "Retries the last action, which errored out" msgstr "重試上次出錯的操作" -#: src/components/dms/MessageMenu.tsx:134 +#: src/components/dms/MessageItem.tsx:227 #: src/components/Error.tsx:90 -#: src/components/Lists.tsx:94 -#: src/screens/Login/LoginForm.tsx:282 -#: src/screens/Login/LoginForm.tsx:289 -#: src/screens/Onboarding/StepInterests/index.tsx:226 -#: src/screens/Onboarding/StepInterests/index.tsx:229 +#: src/components/Lists.tsx:104 +#: src/screens/Login/LoginForm.tsx:288 +#: src/screens/Login/LoginForm.tsx:295 +#: src/screens/Messages/Conversation/MessageListError.tsx:25 +#: src/screens/Onboarding/StepInterests/index.tsx:236 +#: src/screens/Onboarding/StepInterests/index.tsx:239 #: src/screens/Signup/index.tsx:207 #: src/view/com/util/error/ErrorMessage.tsx:55 #: src/view/com/util/error/ErrorScreen.tsx:72 msgid "Retry" msgstr "重試" -#: src/screens/Messages/Conversation/MessageListError.tsx:54 -msgid "Retry." -msgstr "" - #: src/components/Error.tsx:98 -#: src/view/screens/ProfileList.tsx:913 +#: src/view/screens/ProfileList.tsx:970 msgid "Return to previous page" msgstr "返回上一頁" @@ -3964,26 +4168,26 @@ msgid "Returns to home page" msgstr "返回首頁" #: src/view/screens/NotFound.tsx:58 -#: src/view/screens/ProfileFeed.tsx:113 +#: src/view/screens/ProfileFeed.tsx:112 msgid "Returns to previous page" msgstr "返回上一頁" #: src/components/dialogs/BirthDateSettings.tsx:125 -#: src/view/com/composer/GifAltText.tsx:162 -#: src/view/com/composer/GifAltText.tsx:168 -#: src/view/com/modals/ChangeHandle.tsx:175 +#: src/view/com/composer/GifAltText.tsx:163 +#: src/view/com/composer/GifAltText.tsx:169 +#: src/view/com/modals/ChangeHandle.tsx:168 #: src/view/com/modals/CreateOrEditList.tsx:340 #: src/view/com/modals/EditProfile.tsx:225 msgid "Save" msgstr "儲存" -#: src/view/com/lightbox/Lightbox.tsx:132 +#: src/view/com/lightbox/Lightbox.tsx:133 #: src/view/com/modals/CreateOrEditList.tsx:348 msgctxt "action" msgid "Save" msgstr "儲存" -#: src/view/com/modals/AltImage.tsx:131 +#: src/view/com/modals/AltImage.tsx:132 msgid "Save alt text" msgstr "儲存替代文字" @@ -3995,7 +4199,7 @@ msgstr "儲存生日" msgid "Save Changes" msgstr "儲存更改" -#: src/view/com/modals/ChangeHandle.tsx:172 +#: src/view/com/modals/ChangeHandle.tsx:165 msgid "Save handle change" msgstr "儲存帳號代碼更改" @@ -4003,24 +4207,21 @@ msgstr "儲存帳號代碼更改" msgid "Save image crop" msgstr "儲存圖片裁剪" -#: src/view/screens/ProfileFeed.tsx:347 -#: src/view/screens/ProfileFeed.tsx:353 +#: src/view/screens/ProfileFeed.tsx:331 +#: src/view/screens/ProfileFeed.tsx:337 msgid "Save to my feeds" msgstr "儲存到我的動態源" -#: src/view/screens/SavedFeeds.tsx:123 +#: src/view/screens/SavedFeeds.tsx:144 msgid "Saved Feeds" -msgstr "已儲存動態源" +msgstr "已儲存之動態源" -#: src/view/com/lightbox/Lightbox.tsx:81 +#: src/view/com/lightbox/Lightbox.tsx:82 msgid "Saved to your camera roll" -msgstr "" +msgstr "儲存至裝置相簿" -#: src/view/com/lightbox/Lightbox.tsx:81 -#~ msgid "Saved to your camera roll." -#~ msgstr "儲存到您的圖片庫。" - -#: src/view/screens/ProfileFeed.tsx:214 +#: src/view/screens/ProfileFeed.tsx:200 +#: src/view/screens/ProfileList.tsx:299 msgid "Saved to your feeds" msgstr "儲存到您的動態源" @@ -4028,7 +4229,7 @@ msgstr "儲存到您的動態源" msgid "Saves any changes to your profile" msgstr "儲存個人資料中所做的變更" -#: src/view/com/modals/ChangeHandle.tsx:173 +#: src/view/com/modals/ChangeHandle.tsx:166 msgid "Saves handle change to {handle}" msgstr "儲存帳號代碼更改至 {handle}" @@ -4036,16 +4237,20 @@ msgstr "儲存帳號代碼更改至 {handle}" msgid "Saves image crop settings" msgstr "保存圖片裁剪設定" -#: src/screens/Onboarding/index.tsx:36 +#: src/components/dms/ChatEmptyPill.tsx:33 +msgid "Say hello!" +msgstr "說句「你好!👋」" + +#: src/screens/Onboarding/index.tsx:48 msgid "Science" msgstr "科學" -#: src/view/screens/ProfileList.tsx:869 +#: src/view/screens/ProfileList.tsx:926 msgid "Scroll to top" msgstr "滾動到頂部" -#: src/components/dms/NewChat.tsx:184 -#: src/Navigation.tsx:502 +#: src/components/dms/NewChatDialog/index.tsx:270 +#: src/Navigation.tsx:505 #: src/view/com/auth/LoggedOut.tsx:123 #: src/view/com/modals/ListAddRemoveUsers.tsx:75 #: src/view/com/util/forms/SearchInput.tsx:67 @@ -4053,12 +4258,12 @@ msgstr "滾動到頂部" #: src/view/screens/Search/Search.tsx:444 #: src/view/screens/Search/Search.tsx:757 #: src/view/screens/Search/Search.tsx:785 -#: src/view/shell/bottom-bar/BottomBar.tsx:190 -#: src/view/shell/desktop/LeftNav.tsx:332 +#: src/view/shell/bottom-bar/BottomBar.tsx:179 +#: src/view/shell/desktop/LeftNav.tsx:343 #: src/view/shell/desktop/Search.tsx:194 #: src/view/shell/desktop/Search.tsx:203 -#: src/view/shell/Drawer.tsx:386 -#: src/view/shell/Drawer.tsx:387 +#: src/view/shell/Drawer.tsx:393 +#: src/view/shell/Drawer.tsx:394 msgid "Search" msgstr "搜尋" @@ -4078,10 +4283,6 @@ msgstr "搜尋所有由 @{authorHandle} 發佈並具有標籤 {displayTag} 的 msgid "Search for all posts with tag {displayTag}" msgstr "搜尋所有具有標籤 {displayTag} 的貼文" -#: src/components/dms/NewChat.tsx:226 -msgid "Search for someone to start a conversation with." -msgstr "" - #: src/view/com/auth/LoggedOut.tsx:105 #: src/view/com/auth/LoggedOut.tsx:106 #: src/view/com/modals/ListAddRemoveUsers.tsx:70 @@ -4092,40 +4293,41 @@ msgstr "搜尋用戶" msgid "Search GIFs" msgstr "搜尋 GIF" -#: src/components/dms/NewChat.tsx:183 +#: src/components/dms/NewChatDialog/index.tsx:290 +#: src/components/dms/NewChatDialog/index.tsx:291 msgid "Search profiles" -msgstr "" +msgstr "搜尋用戶" #: src/components/dialogs/GifSelect.tsx:159 msgid "Search Tenor" msgstr "搜尋 Tenor" -#: src/view/com/modals/ChangeEmail.tsx:112 +#: src/view/com/modals/ChangeEmail.tsx:105 msgid "Security Step Required" msgstr "所需的安全步驟" #: src/components/TagMenu/index.web.tsx:66 msgid "See {truncatedTag} posts" -msgstr "查看 {truncatedTag} 的貼文" +msgstr "搜尋 {truncatedTag}" #: src/components/TagMenu/index.web.tsx:83 msgid "See {truncatedTag} posts by user" -msgstr "查看用戶的 {truncatedTag} 貼文" +msgstr "查看該用戶包含 {truncatedTag} 的貼文" #: src/components/TagMenu/index.tsx:128 msgid "See <0>{displayTag} posts" -msgstr "查看 <0>{displayTag} 的貼文" +msgstr "搜尋 <0>{displayTag}" #: src/components/TagMenu/index.tsx:187 msgid "See <0>{displayTag} posts by this user" -msgstr "查看這個用戶的 <0>{displayTag} 貼文" +msgstr "查看該用戶包含 <0>{displayTag} 的貼文" #: src/view/com/notifications/FeedItem.tsx:411 -#: src/view/com/util/UserAvatar.tsx:400 +#: src/view/com/util/UserAvatar.tsx:402 msgid "See profile" msgstr "查看個人檔案" -#: src/view/screens/SavedFeeds.tsx:164 +#: src/view/screens/SavedFeeds.tsx:186 msgid "See this guide" msgstr "查看指南" @@ -4133,10 +4335,22 @@ msgstr "查看指南" msgid "Select {item}" msgstr "選擇 {item}" +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:67 +msgid "Select a color" +msgstr "選擇一個顏色" + #: src/screens/Login/ChooseAccountForm.tsx:85 msgid "Select account" msgstr "選擇帳號" +#: src/screens/Onboarding/StepProfile/AvatarCircle.tsx:66 +msgid "Select an avatar" +msgstr "選擇一個頭像" + +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:65 +msgid "Select an emoji" +msgstr "選擇一個 emoji" + #: src/screens/Login/index.tsx:120 msgid "Select from an existing account" msgstr "從現有帳號中選擇" @@ -4145,7 +4359,7 @@ msgstr "從現有帳號中選擇" msgid "Select GIF" msgstr "選擇 GIF" -#: src/components/dialogs/GifSelect.tsx:253 +#: src/components/dialogs/GifSelect.tsx:254 msgid "Select GIF \"{0}\"" msgstr "選擇 GIF「{0}」" @@ -4155,7 +4369,7 @@ msgstr "選擇語言" #: src/components/ReportDialog/SelectLabelerView.tsx:30 msgid "Select moderator" -msgstr "選擇限制服務提供者" +msgstr "選擇內容管理服務提供者" #: src/view/com/util/Selector.tsx:107 msgid "Select option {i} of {numItems}" @@ -4165,9 +4379,13 @@ msgstr "選擇 {numItems} 個項目中的第 {i} 項" msgid "Select some accounts below to follow" msgstr "在下面選擇一些帳號來跟隨" -#: src/components/ReportDialog/SubmitView.tsx:135 +#: src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx:83 +msgid "Select the {emojiName} emoji as your avatar" +msgstr "選擇 {emojiName} emoji 作為您的頭像" + +#: src/components/ReportDialog/SubmitView.tsx:136 msgid "Select the moderation service(s) to report to" -msgstr "選擇要檢舉的限制服務提供者" +msgstr "選擇要檢舉的內容管理服務提供者" #: src/view/com/auth/server-input/index.tsx:82 msgid "Select the service that hosts your data." @@ -4193,13 +4411,13 @@ msgstr "選擇應用程式中的預設語言。" msgid "Select your date of birth" msgstr "選擇您的出生日期" -#: src/screens/Onboarding/StepInterests/index.tsx:201 +#: src/screens/Onboarding/StepInterests/index.tsx:211 msgid "Select your interests from the options below" msgstr "從下面選擇您感興趣的選項" #: src/view/screens/LanguageSettings.tsx:190 msgid "Select your preferred language for translations in your feed." -msgstr "選擇您在動態源中翻譯的偏好的目標語言。" +msgstr "選擇您在動態中翻譯的偏好目標語言。" #: src/screens/Onboarding/StepAlgoFeeds/index.tsx:117 msgid "Select your primary algorithmic feeds" @@ -4209,32 +4427,38 @@ msgstr "選擇您的動態的主要算法" msgid "Select your secondary algorithmic feeds" msgstr "選擇您的動態的次要算法" -#: src/view/com/modals/VerifyEmail.tsx:211 -#: src/view/com/modals/VerifyEmail.tsx:213 +#: src/components/dms/ChatEmptyPill.tsx:38 +msgid "Send a neat website!" +msgstr "發送一個妙趣的網站!" + +#: src/view/com/modals/VerifyEmail.tsx:210 +#: src/view/com/modals/VerifyEmail.tsx:212 msgid "Send Confirmation Email" msgstr "發送確認電子郵件" -#: src/view/com/modals/DeleteAccount.tsx:131 +#: src/view/com/modals/DeleteAccount.tsx:141 msgid "Send email" msgstr "發送電子郵件" -#: src/view/com/modals/DeleteAccount.tsx:144 +#: src/view/com/modals/DeleteAccount.tsx:154 msgctxt "action" msgid "Send Email" msgstr "發送電子郵件" -#: src/view/shell/Drawer.tsx:319 -#: src/view/shell/Drawer.tsx:340 +#: src/view/shell/Drawer.tsx:328 +#: src/view/shell/Drawer.tsx:349 msgid "Send feedback" msgstr "提交意見" -#: src/screens/Messages/Conversation/MessageInput.tsx:96 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:144 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:145 msgid "Send message" -msgstr "" +msgstr "重送訊息" -#: src/components/ReportDialog/SubmitView.tsx:215 -#: src/components/ReportDialog/SubmitView.tsx:219 +#: src/components/dms/ReportDialog.tsx:232 +#: src/components/dms/ReportDialog.tsx:235 +#: src/components/ReportDialog/SubmitView.tsx:216 +#: src/components/ReportDialog/SubmitView.tsx:220 msgid "Send report" msgstr "提交檢舉" @@ -4242,12 +4466,12 @@ msgstr "提交檢舉" msgid "Send report to {0}" msgstr "將檢舉提交至 {0}" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:120 -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:123 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:119 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:122 msgid "Send verification email" msgstr "發送驗證電子郵件" -#: src/view/com/modals/DeleteAccount.tsx:133 +#: src/view/com/modals/DeleteAccount.tsx:143 msgid "Sends email with confirmation code for account deletion" msgstr "發送包含帳號刪除確認碼的電子郵件" @@ -4263,15 +4487,15 @@ msgstr "設定生日" msgid "Set new password" msgstr "設定新密碼" -#: src/view/screens/PreferencesFollowingFeed.tsx:223 +#: src/view/screens/PreferencesFollowingFeed.tsx:224 msgid "Set this setting to \"No\" to hide all quote posts from your feed. Reposts will still be visible." msgstr "將此設定設為「關」以隱藏動態中所有引用的貼文,但轉貼依然會顯示。" -#: src/view/screens/PreferencesFollowingFeed.tsx:120 +#: src/view/screens/PreferencesFollowingFeed.tsx:121 msgid "Set this setting to \"No\" to hide all replies from your feed." msgstr "將此設定設為「關」以隱藏動態中所有回覆貼文。" -#: src/view/screens/PreferencesFollowingFeed.tsx:189 +#: src/view/screens/PreferencesFollowingFeed.tsx:190 msgid "Set this setting to \"No\" to hide all reposts from your feed." msgstr "將此設定設為「關」以隱藏動態的所有轉貼貼文。" @@ -4279,35 +4503,35 @@ msgstr "將此設定設為「關」以隱藏動態的所有轉貼貼文。" msgid "Set this setting to \"Yes\" to show replies in a threaded view. This is an experimental feature." msgstr "將此設定項設為「開」以單頁顯示樹狀回覆,這是一項實驗性功能。" -#: src/view/screens/PreferencesFollowingFeed.tsx:259 +#: src/view/screens/PreferencesFollowingFeed.tsx:260 msgid "Set this setting to \"Yes\" to show samples of your saved feeds in your Following feed. This is an experimental feature." -msgstr "將此設定為「是」以在「Following 動態源」中顯示您追蹤的動態源中的選錄貼文,這是一個實驗性功能。" +msgstr "將此設定為「是」以在「Following」動態源中顯示您已儲存之動態源中的選錄貼文,這是一個實驗性功能。" #: src/screens/Onboarding/Layout.tsx:48 msgid "Set up your account" msgstr "設定您的帳號" -#: src/view/com/modals/ChangeHandle.tsx:268 +#: src/view/com/modals/ChangeHandle.tsx:261 msgid "Sets Bluesky username" msgstr "設定 Bluesky 帳號代碼" -#: src/view/screens/Settings/index.tsx:452 +#: src/view/screens/Settings/index.tsx:454 msgid "Sets color theme to dark" msgstr "將色彩主題設定為深色" -#: src/view/screens/Settings/index.tsx:445 +#: src/view/screens/Settings/index.tsx:447 msgid "Sets color theme to light" msgstr "將色彩主題設定為亮色" -#: src/view/screens/Settings/index.tsx:439 +#: src/view/screens/Settings/index.tsx:441 msgid "Sets color theme to system setting" msgstr "將色彩主題設定為跟隨系統" -#: src/view/screens/Settings/index.tsx:478 +#: src/view/screens/Settings/index.tsx:480 msgid "Sets dark theme to the dark theme" msgstr "將深色主題設定為深色" -#: src/view/screens/Settings/index.tsx:471 +#: src/view/screens/Settings/index.tsx:473 msgid "Sets dark theme to the dim theme" msgstr "將深色主題設定為昏暗" @@ -4328,15 +4552,14 @@ msgid "Sets image aspect ratio to wide" msgstr "將圖像的寬高比設定為寬" #: src/Navigation.tsx:146 -#: src/screens/Messages/Settings/index.tsx:21 -#: src/view/screens/Settings/index.tsx:322 -#: src/view/shell/desktop/LeftNav.tsx:433 -#: src/view/shell/Drawer.tsx:572 -#: src/view/shell/Drawer.tsx:573 +#: src/view/screens/Settings/index.tsx:325 +#: src/view/shell/desktop/LeftNav.tsx:389 +#: src/view/shell/Drawer.tsx:558 +#: src/view/shell/Drawer.tsx:559 msgid "Settings" msgstr "設定" -#: src/view/com/modals/SelfLabel.tsx:125 +#: src/view/com/modals/SelfLabel.tsx:126 msgid "Sexual activity or erotic nudity." msgstr "性行為或性暗示裸露。" @@ -4344,7 +4567,7 @@ msgstr "性行為或性暗示裸露。" msgid "Sexually Suggestive" msgstr "性暗示" -#: src/view/com/lightbox/Lightbox.tsx:141 +#: src/view/com/lightbox/Lightbox.tsx:142 msgctxt "action" msgid "Share" msgstr "分享" @@ -4354,18 +4577,26 @@ msgstr "分享" #: src/view/com/util/forms/PostDropdownBtn.tsx:266 #: src/view/com/util/forms/PostDropdownBtn.tsx:275 #: src/view/com/util/post-ctrls/PostCtrls.tsx:288 -#: src/view/screens/ProfileList.tsx:390 +#: src/view/screens/ProfileList.tsx:427 msgid "Share" msgstr "分享" +#: src/components/dms/ChatEmptyPill.tsx:37 +msgid "Share a cool story!" +msgstr "分享一個有趣的故事!" + +#: src/components/dms/ChatEmptyPill.tsx:36 +msgid "Share a fun fact!" +msgstr "分享一個趣聞!📰" + #: src/view/com/profile/ProfileMenu.tsx:373 #: src/view/com/util/forms/PostDropdownBtn.tsx:420 #: src/view/com/util/post-ctrls/PostCtrls.tsx:304 msgid "Share anyway" msgstr "仍然分享" -#: src/view/screens/ProfileFeed.tsx:373 -#: src/view/screens/ProfileFeed.tsx:375 +#: src/view/screens/ProfileFeed.tsx:357 +#: src/view/screens/ProfileFeed.tsx:359 msgid "Share feed" msgstr "分享動態源" @@ -4374,25 +4605,25 @@ msgstr "分享動態源" msgid "Share Link" msgstr "分享連結" +#: src/components/dms/ChatEmptyPill.tsx:34 +msgid "Share your favorite feed!" +msgstr "分享你喜愛的動態!" + #: src/view/com/modals/LinkWarning.tsx:92 msgid "Shares the linked website" msgstr "分享網站的連結" #: src/components/moderation/ContentHider.tsx:115 #: src/components/moderation/LabelPreference.tsx:136 -#: src/components/moderation/PostHider.tsx:116 +#: src/components/moderation/PostHider.tsx:118 #: src/screens/Onboarding/StepModeration/ModerationOption.tsx:54 -#: src/view/screens/Settings/index.tsx:372 +#: src/view/screens/Settings/index.tsx:374 msgid "Show" msgstr "顯示" -#: src/view/screens/PreferencesFollowingFeed.tsx:68 -#~ msgid "Show all replies" -#~ msgstr "顯示所有回覆貼文" - #: src/view/com/util/post-embeds/GifEmbed.tsx:167 msgid "Show alt text" -msgstr "" +msgstr "顯示替代文字" #: src/components/moderation/ScreenHider.tsx:169 #: src/components/moderation/ScreenHider.tsx:172 @@ -4408,47 +4639,55 @@ msgstr "顯示標記" msgid "Show badge and filter from feeds" msgstr "顯示標記並從動態源中篩選" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:200 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:207 msgid "Show follows similar to {0}" msgstr "顯示類似於 {0} 的跟隨者" +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show hidden replies" +msgstr "顯示隱藏回覆" + #: src/view/com/util/forms/PostDropdownBtn.tsx:305 #: src/view/com/util/forms/PostDropdownBtn.tsx:307 msgid "Show less like this" -msgstr "" +msgstr "顯示更少此類內容" #: src/view/com/post-thread/PostThreadItem.tsx:508 #: src/view/com/post/Post.tsx:213 -#: src/view/com/posts/FeedItem.tsx:417 +#: src/view/com/posts/FeedItem.tsx:386 msgid "Show More" msgstr "顯示更多" #: src/view/com/util/forms/PostDropdownBtn.tsx:297 #: src/view/com/util/forms/PostDropdownBtn.tsx:299 msgid "Show more like this" -msgstr "" +msgstr "顯示更多此類內容" -#: src/view/screens/PreferencesFollowingFeed.tsx:256 +#: src/view/com/post-thread/PostThreadShowHiddenReplies.tsx:21 +msgid "Show muted replies" +msgstr "顯示靜音回覆" + +#: src/view/screens/PreferencesFollowingFeed.tsx:257 msgid "Show Posts from My Feeds" -msgstr "顯示來自已儲存動態源的貼文" +msgstr "顯示來自我的動態源之貼文" -#: src/view/screens/PreferencesFollowingFeed.tsx:220 +#: src/view/screens/PreferencesFollowingFeed.tsx:221 msgid "Show Quote Posts" msgstr "顯示引用貼文" #: src/screens/Onboarding/StepFollowingFeed.tsx:119 msgid "Show quote-posts in Following feed" -msgstr "在訂閱的動態消息中顯示引用貼文" +msgstr "在「Following」動態源中顯示引用貼文" #: src/screens/Onboarding/StepFollowingFeed.tsx:135 msgid "Show quotes in Following" -msgstr "在跟隨中顯示引用貼文" +msgstr "在「Following」中顯示引用貼文" #: src/screens/Onboarding/StepFollowingFeed.tsx:95 msgid "Show re-posts in Following feed" -msgstr "在跟隨動態源中顯示轉貼貼文" +msgstr "在「Following」動態源中顯示轉貼貼文" -#: src/view/screens/PreferencesFollowingFeed.tsx:117 +#: src/view/screens/PreferencesFollowingFeed.tsx:118 msgid "Show Replies" msgstr "顯示回覆" @@ -4458,26 +4697,22 @@ msgstr "在所有其他回覆之前顯示您跟隨的人的回覆。" #: src/screens/Onboarding/StepFollowingFeed.tsx:87 msgid "Show replies in Following" -msgstr "在跟隨中顯示回覆" +msgstr "在「Following」中顯示回覆" #: src/screens/Onboarding/StepFollowingFeed.tsx:71 msgid "Show replies in Following feed" -msgstr "在跟隨動態源中顯示回覆" +msgstr "在「Following」動態源中顯示回覆" -#: src/view/screens/PreferencesFollowingFeed.tsx:70 -#~ msgid "Show replies with at least {value} {0}" -#~ msgstr "顯示至少包含 {value} 個 {0} 的回覆" - -#: src/view/screens/PreferencesFollowingFeed.tsx:186 +#: src/view/screens/PreferencesFollowingFeed.tsx:187 msgid "Show Reposts" msgstr "顯示轉貼貼文" #: src/screens/Onboarding/StepFollowingFeed.tsx:111 msgid "Show reposts in Following" -msgstr "在跟隨中顯示轉貼貼文" +msgstr "在「Following」中顯示轉貼貼文" #: src/components/moderation/ContentHider.tsx:68 -#: src/components/moderation/PostHider.tsx:73 +#: src/components/moderation/PostHider.tsx:75 msgid "Show the content" msgstr "顯示內容" @@ -4501,17 +4736,17 @@ msgstr "在您的動態中顯示來自 {0} 的貼文" #: src/components/dialogs/Signin.tsx:99 #: src/screens/Login/index.tsx:100 #: src/screens/Login/index.tsx:119 -#: src/screens/Login/LoginForm.tsx:148 +#: src/screens/Login/LoginForm.tsx:154 #: src/view/com/auth/SplashScreen.tsx:63 #: src/view/com/auth/SplashScreen.tsx:72 #: src/view/com/auth/SplashScreen.web.tsx:112 #: src/view/com/auth/SplashScreen.web.tsx:121 -#: src/view/shell/bottom-bar/BottomBar.tsx:343 -#: src/view/shell/bottom-bar/BottomBar.tsx:344 -#: src/view/shell/bottom-bar/BottomBar.tsx:346 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:196 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:197 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:199 +#: src/view/shell/bottom-bar/BottomBar.tsx:312 +#: src/view/shell/bottom-bar/BottomBar.tsx:313 +#: src/view/shell/bottom-bar/BottomBar.tsx:315 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:181 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:182 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:184 #: src/view/shell/NavSignupCard.tsx:69 #: src/view/shell/NavSignupCard.tsx:70 #: src/view/shell/NavSignupCard.tsx:72 @@ -4528,23 +4763,23 @@ msgstr "登入為…" #: src/components/dialogs/Signin.tsx:75 msgid "Sign in or create your account to join the conversation!" -msgstr "登入或建立您的帳戶即可加入對話!" +msgstr "登入或建立您的帳號即可加入對話!" #: src/components/dialogs/Signin.tsx:46 msgid "Sign into Bluesky or create a new account" -msgstr "登入 Bluesky 或建立新帳戶" +msgstr "登入 Bluesky 或建立新帳號" -#: src/view/screens/Settings/index.tsx:126 -#: src/view/screens/Settings/index.tsx:130 +#: src/view/screens/Settings/index.tsx:127 +#: src/view/screens/Settings/index.tsx:131 msgid "Sign out" msgstr "登出" -#: src/view/shell/bottom-bar/BottomBar.tsx:333 -#: src/view/shell/bottom-bar/BottomBar.tsx:334 -#: src/view/shell/bottom-bar/BottomBar.tsx:336 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:186 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:187 -#: src/view/shell/bottom-bar/BottomBarWeb.tsx:189 +#: src/view/shell/bottom-bar/BottomBar.tsx:302 +#: src/view/shell/bottom-bar/BottomBar.tsx:303 +#: src/view/shell/bottom-bar/BottomBar.tsx:305 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:171 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:172 +#: src/view/shell/bottom-bar/BottomBarWeb.tsx:174 #: src/view/shell/NavSignupCard.tsx:60 #: src/view/shell/NavSignupCard.tsx:61 #: src/view/shell/NavSignupCard.tsx:63 @@ -4560,7 +4795,7 @@ msgstr "註冊或登入即可參與對話" msgid "Sign-in Required" msgstr "需要登入" -#: src/view/screens/Settings/index.tsx:382 +#: src/view/screens/Settings/index.tsx:384 msgid "Signed in as" msgstr "登入身分" @@ -4569,27 +4804,35 @@ msgstr "登入身分" msgid "Signed in as @{0}" msgstr "以 @{0} 身分登入" -#: src/screens/Onboarding/StepInterests/index.tsx:240 +#: src/screens/Onboarding/StepInterests/index.tsx:250 #: src/screens/Onboarding/StepSuggestedAccounts/index.tsx:203 msgid "Skip" msgstr "跳過" -#: src/screens/Onboarding/StepInterests/index.tsx:237 +#: src/screens/Onboarding/StepInterests/index.tsx:247 msgid "Skip this flow" msgstr "跳過此流程" -#: src/screens/Onboarding/index.tsx:40 +#: src/screens/Onboarding/index.tsx:52 msgid "Software Dev" msgstr "軟體開發" +#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:45 +msgid "Some people can reply" +msgstr "僅部分人可以回覆" + +#: src/screens/Messages/Conversation/index.tsx:94 +msgid "Something went wrong" +msgstr "發生了一些問題" + #: src/components/ReportDialog/index.tsx:59 #: src/screens/Moderation/index.tsx:114 #: src/screens/Profile/Sections/Labels.tsx:87 msgid "Something went wrong, please try again." msgstr "發生了一些問題,請重試。" -#: src/App.native.tsx:84 -#: src/App.web.tsx:71 +#: src/App.native.tsx:85 +#: src/App.web.tsx:74 msgid "Sorry! Your session expired. Please log in again." msgstr "抱歉!您的登入會話已過期。請重新登入。" @@ -4601,19 +4844,20 @@ msgstr "排序回覆" msgid "Sort replies to the same post by:" msgstr "對同一貼文的回覆進行排序:" -#: src/components/moderation/LabelsOnMeDialog.tsx:146 -msgid "Source:" -msgstr "來源:" +#: src/components/moderation/LabelsOnMeDialog.tsx:170 +msgid "Source: <0>{0}" +msgstr "來源:<0>{0}" -#: src/lib/moderation/useReportOptions.ts:65 +#: src/lib/moderation/useReportOptions.ts:66 +#: src/lib/moderation/useReportOptions.ts:79 msgid "Spam" msgstr "垃圾訊息" -#: src/lib/moderation/useReportOptions.ts:53 +#: src/lib/moderation/useReportOptions.ts:54 msgid "Spam; excessive mentions or replies" msgstr "垃圾訊息、過多的提及或回覆" -#: src/screens/Onboarding/index.tsx:30 +#: src/screens/Onboarding/index.tsx:42 msgid "Sports" msgstr "運動" @@ -4621,49 +4865,51 @@ msgstr "運動" msgid "Square" msgstr "方塊" -#: src/components/dms/NewChat.tsx:178 +#: src/components/dms/NewChatDialog/index.tsx:467 msgid "Start a new chat" -msgstr "" +msgstr "開始新對話" -#: src/view/screens/Settings/index.tsx:862 -#~ msgid "Status page" -#~ msgstr "狀態頁" +#: src/components/dms/NewChatDialog/index.tsx:139 +msgid "Start chat with {displayName}" +msgstr "與 {displayName} 開始對話" -#: src/view/screens/Settings/index.tsx:896 +#: src/components/dms/MessagesNUX.tsx:161 +msgid "Start chatting" +msgstr "開始對話" + +#: src/view/screens/Settings/index.tsx:933 msgid "Status Page" -msgstr "" - -#: src/screens/Signup/index.tsx:145 -#~ msgid "Step" -#~ msgstr "步驟" +msgstr "服務運作狀態頁面" #: src/screens/Signup/index.tsx:154 msgid "Step {0} of {1}" -msgstr "" +msgstr "第 {0} 步(共 {1} 步)" -#: src/view/screens/Settings/index.tsx:301 +#: src/view/screens/Settings/index.tsx:302 msgid "Storage cleared, you need to restart the app now." msgstr "已清除儲存資料,您需要立即重啟應用程式。" #: src/Navigation.tsx:218 -#: src/view/screens/Settings/index.tsx:806 +#: src/view/screens/Settings/index.tsx:833 msgid "Storybook" msgstr "故事書" -#: src/components/moderation/LabelsOnMeDialog.tsx:256 -#: src/components/moderation/LabelsOnMeDialog.tsx:257 +#: src/components/moderation/LabelsOnMeDialog.tsx:292 +#: src/components/moderation/LabelsOnMeDialog.tsx:293 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:142 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:143 msgid "Submit" msgstr "提交" -#: src/view/screens/ProfileList.tsx:586 +#: src/view/screens/ProfileList.tsx:643 msgid "Subscribe" msgstr "訂閱" -#: src/screens/Profile/Sections/Labels.tsx:194 +#: src/screens/Profile/Sections/Labels.tsx:201 msgid "Subscribe to @{0} to use these labels:" msgstr "訂閱 @{0} 以使用這些標記:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:229 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:230 msgid "Subscribe to Labeler" msgstr "訂閱標記者" @@ -4672,11 +4918,11 @@ msgstr "訂閱標記者" msgid "Subscribe to the {0} feed" msgstr "訂閱 {0} 動態源" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:194 msgid "Subscribe to this labeler" msgstr "訂閱這個標記者" -#: src/view/screens/ProfileList.tsx:582 +#: src/view/screens/ProfileList.tsx:639 msgid "Subscribe to this list" msgstr "訂閱這個列表" @@ -4688,7 +4934,7 @@ msgstr "推薦的跟隨者" msgid "Suggested for you" msgstr "為您推薦" -#: src/view/com/modals/SelfLabel.tsx:95 +#: src/view/com/modals/SelfLabel.tsx:96 msgid "Suggestive" msgstr "暗示" @@ -4703,23 +4949,23 @@ msgstr "支援" msgid "Switch Account" msgstr "切換帳號" -#: src/view/screens/Settings/index.tsx:157 +#: src/view/screens/Settings/index.tsx:158 msgid "Switch to {0}" msgstr "切換到 {0}" -#: src/view/screens/Settings/index.tsx:158 +#: src/view/screens/Settings/index.tsx:159 msgid "Switches the account you are logged in to" msgstr "切換您登入的帳號" -#: src/view/screens/Settings/index.tsx:436 +#: src/view/screens/Settings/index.tsx:438 msgid "System" msgstr "系統" -#: src/view/screens/Settings/index.tsx:794 +#: src/view/screens/Settings/index.tsx:821 msgid "System log" msgstr "系統日誌" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "tag" msgstr "標籤" @@ -4735,41 +4981,47 @@ msgstr "高" msgid "Tap to view fully" msgstr "點擊查看完整內容" -#: src/screens/Onboarding/index.tsx:39 +#: src/screens/Onboarding/index.tsx:51 msgid "Tech" msgstr "科技" +#: src/components/dms/ChatEmptyPill.tsx:35 +msgid "Tell a joke!" +msgstr "說個笑話!🤡" + #: src/view/shell/desktop/RightNav.tsx:85 msgid "Terms" msgstr "條款" #: src/Navigation.tsx:243 #: src/screens/Signup/StepInfo/Policies.tsx:49 -#: src/view/screens/Settings/index.tsx:884 +#: src/view/screens/Settings/index.tsx:921 #: src/view/screens/TermsOfService.tsx:29 -#: src/view/shell/Drawer.tsx:269 +#: src/view/shell/Drawer.tsx:278 msgid "Terms of Service" msgstr "服務條款" -#: src/lib/moderation/useReportOptions.ts:58 -#: src/lib/moderation/useReportOptions.ts:79 -#: src/lib/moderation/useReportOptions.ts:87 +#: src/lib/moderation/useReportOptions.ts:59 +#: src/lib/moderation/useReportOptions.ts:93 +#: src/lib/moderation/useReportOptions.ts:101 msgid "Terms used violate community standards" msgstr "所使用的文字違反了社群標準" -#: src/components/dialogs/MutedWords.tsx:323 +#: src/components/dialogs/MutedWords.tsx:325 msgid "text" msgstr "文字" -#: src/components/moderation/LabelsOnMeDialog.tsx:220 +#: src/components/moderation/LabelsOnMeDialog.tsx:256 +#: src/screens/Messages/Conversation/ChatDisabled.tsx:108 msgid "Text input field" msgstr "文字輸入框" -#: src/components/ReportDialog/SubmitView.tsx:77 +#: src/components/dms/ReportDialog.tsx:132 +#: src/components/ReportDialog/SubmitView.tsx:78 msgid "Thank you. Your report has been sent." msgstr "謝謝,您的檢舉已提交。" -#: src/view/com/modals/ChangeHandle.tsx:466 +#: src/view/com/modals/ChangeHandle.tsx:459 msgid "That contains the following:" msgstr "其中包含以下內容:" @@ -4777,15 +5029,11 @@ msgstr "其中包含以下內容:" msgid "That handle is already taken." msgstr "這個帳號代碼已被使用。" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:282 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:291 #: src/view/com/profile/ProfileMenu.tsx:349 msgid "The account will be able to interact with you after unblocking." msgstr "解除封鎖後,該帳號將能夠與您互動。" -#: src/components/moderation/ModerationDetailsDialog.tsx:127 -#~ msgid "the author" -#~ msgstr "作者" - #: src/view/screens/CommunityGuidelines.tsx:36 msgid "The Community Guidelines have been moved to <0/>" msgstr "社群準則已移動到 <0/>" @@ -4794,11 +5042,15 @@ msgstr "社群準則已移動到 <0/>" msgid "The Copyright Policy has been moved to <0/>" msgstr "版權政策已移動到 <0/>" -#: src/components/moderation/LabelsOnMeDialog.tsx:48 -msgid "The following labels were applied to your account." -msgstr "以下標記已套用到您的帳戶。" +#: src/view/com/posts/FeedShutdownMsg.tsx:66 +msgid "The feed has been replaced with Discover." +msgstr "此動態源已由「Discover」取代。" -#: src/components/moderation/LabelsOnMeDialog.tsx:49 +#: src/components/moderation/LabelsOnMeDialog.tsx:66 +msgid "The following labels were applied to your account." +msgstr "以下標記已套用到您的帳號。" + +#: src/components/moderation/LabelsOnMeDialog.tsx:67 msgid "The following labels were applied to your content." msgstr "以下標記已套用到您的內容。" @@ -4806,8 +5058,8 @@ msgstr "以下標記已套用到您的內容。" msgid "The following steps will help customize your Bluesky experience." msgstr "以下步驟將幫助自訂您的 Bluesky 體驗。" -#: src/view/com/post-thread/PostThread.tsx:153 -#: src/view/com/post-thread/PostThread.tsx:165 +#: src/view/com/post-thread/PostThread.tsx:189 +#: src/view/com/post-thread/PostThread.tsx:201 msgid "The post may have been deleted." msgstr "這則貼文可能已被刪除。" @@ -4817,7 +5069,7 @@ msgstr "隱私政策已移動到 <0/>" #: src/view/screens/Support.tsx:36 msgid "The support form has been moved. If you need help, please <0/> or visit {HELP_DESK_URL} to get in touch with us." -msgstr "支援表單已移至別處。如果需協助,請點擊<0/>或前往 {HELP_DESK_URL} 與我們聯繫。" +msgstr "支援表單已移至別處。如果需協助,請<0/>或前往 {HELP_DESK_URL} 與我們聯繫。" #: src/view/screens/TermsOfService.tsx:33 msgid "The Terms of Service have been moved to" @@ -4827,37 +5079,36 @@ msgstr "服務條款已遷移到" msgid "There are many feeds to try:" msgstr "這裡有些動態源您可以嘗試:" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:114 -#: src/view/screens/ProfileFeed.tsx:560 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:115 +#: src/view/screens/ProfileFeed.tsx:541 msgid "There was an an issue contacting the server, please check your internet connection and try again." msgstr "連線至伺服器時出現問題,請檢查您的網路連線並重試。" -#: src/view/com/posts/FeedErrorMessage.tsx:138 +#: src/view/com/posts/FeedErrorMessage.tsx:146 msgid "There was an an issue removing this feed. Please check your internet connection and try again." msgstr "刪除動態源時出現問題,請檢查您的網路連線並重試。" -#: src/view/screens/ProfileFeed.tsx:219 +#: src/view/com/posts/FeedShutdownMsg.tsx:52 +#: src/view/com/posts/FeedShutdownMsg.tsx:70 +#: src/view/screens/ProfileFeed.tsx:205 msgid "There was an an issue updating your feeds, please check your internet connection and try again." -msgstr "更新動態源時出現問題,請檢查您的網路連線並重試。" +msgstr "更新動態時出現問題,請檢查您的網路連線並重試。" -#: src/components/dialogs/GifSelect.tsx:201 +#: src/components/dialogs/GifSelect.tsx:202 msgid "There was an issue connecting to Tenor." msgstr "連線到 Tenor 時出現問題。" -#: src/screens/Messages/Conversation/MessageListError.tsx:23 -msgid "There was an issue connecting to the chat." -msgstr "" - -#: src/view/screens/ProfileFeed.tsx:247 -#: src/view/screens/ProfileList.tsx:277 -#: src/view/screens/SavedFeeds.tsx:211 -#: src/view/screens/SavedFeeds.tsx:241 +#: src/view/screens/ProfileFeed.tsx:233 +#: src/view/screens/ProfileList.tsx:302 +#: src/view/screens/ProfileList.tsx:321 +#: src/view/screens/SavedFeeds.tsx:236 #: src/view/screens/SavedFeeds.tsx:262 +#: src/view/screens/SavedFeeds.tsx:288 msgid "There was an issue contacting the server" msgstr "連線伺服器時出現問題" -#: src/view/com/feeds/FeedSourceCard.tsx:109 -#: src/view/com/feeds/FeedSourceCard.tsx:122 +#: src/view/com/feeds/FeedSourceCard.tsx:114 +#: src/view/com/feeds/FeedSourceCard.tsx:127 msgid "There was an issue contacting your server" msgstr "連線伺服器時出現問題" @@ -4865,7 +5116,7 @@ msgstr "連線伺服器時出現問題" msgid "There was an issue fetching notifications. Tap here to try again." msgstr "取得通知時發生問題,點擊這裡重試。" -#: src/view/com/posts/Feed.tsx:289 +#: src/view/com/posts/Feed.tsx:298 msgid "There was an issue fetching posts. Tap here to try again." msgstr "取得貼文時發生問題,點擊這裡重試。" @@ -4878,7 +5129,8 @@ msgstr "取得列表時發生問題,點擊這裡重試。" msgid "There was an issue fetching your lists. Tap here to try again." msgstr "取得列表時發生問題,點擊這裡重試。" -#: src/components/ReportDialog/SubmitView.tsx:82 +#: src/components/dms/ReportDialog.tsx:220 +#: src/components/ReportDialog/SubmitView.tsx:83 msgid "There was an issue sending your report. Please check your internet connection." msgstr "提交您的檢舉時出現問題,請檢查您的網路連線。" @@ -4886,32 +5138,32 @@ msgstr "提交您的檢舉時出現問題,請檢查您的網路連線。" msgid "There was an issue syncing your preferences with the server" msgstr "與伺服器同步偏好時發生問題" -#: src/view/screens/AppPasswords.tsx:68 +#: src/view/screens/AppPasswords.tsx:70 msgid "There was an issue with fetching your app passwords" msgstr "取得應用程式專用密碼時發生問題" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:103 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:125 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:139 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:99 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:121 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:135 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:99 #: src/view/com/post-thread/PostThreadFollowBtn.tsx:111 -#: src/view/com/profile/ProfileMenu.tsx:106 -#: src/view/com/profile/ProfileMenu.tsx:117 -#: src/view/com/profile/ProfileMenu.tsx:132 -#: src/view/com/profile/ProfileMenu.tsx:143 -#: src/view/com/profile/ProfileMenu.tsx:157 -#: src/view/com/profile/ProfileMenu.tsx:170 +#: src/view/com/profile/ProfileMenu.tsx:107 +#: src/view/com/profile/ProfileMenu.tsx:118 +#: src/view/com/profile/ProfileMenu.tsx:133 +#: src/view/com/profile/ProfileMenu.tsx:144 +#: src/view/com/profile/ProfileMenu.tsx:158 +#: src/view/com/profile/ProfileMenu.tsx:171 msgid "There was an issue! {0}" -msgstr "發生問題了!{0}" +msgstr "發生問題!{0}" -#: src/view/screens/ProfileList.tsx:290 -#: src/view/screens/ProfileList.tsx:304 -#: src/view/screens/ProfileList.tsx:318 -#: src/view/screens/ProfileList.tsx:332 +#: src/view/screens/ProfileList.tsx:334 +#: src/view/screens/ProfileList.tsx:348 +#: src/view/screens/ProfileList.tsx:362 +#: src/view/screens/ProfileList.tsx:376 msgid "There was an issue. Please check your internet connection and try again." msgstr "發生問題了。請檢查您的網路連線並重試。" -#: src/components/dialogs/GifSelect.tsx:289 +#: src/components/dialogs/GifSelect.tsx:290 #: src/view/com/util/ErrorBoundary.tsx:57 msgid "There was an unexpected issue in the application. Please let us know if this happened to you!" msgstr "應用程式中發生了意外問題。請告訴我們是否發生在您身上!" @@ -4932,21 +5184,29 @@ msgstr "{screenDescription} 已被標記:" msgid "This account has requested that users sign in to view their profile." msgstr "此帳號要求使用者登入後才能查看其個人資料。" -#: src/components/moderation/LabelsOnMeDialog.tsx:205 +#: src/components/dms/BlockedByListDialog.tsx:34 +msgid "This account is blocked by one or more of your moderation lists. To unblock, please visit the lists directly and remove this user." +msgstr "此帳號已被一個或多個內容管理清單封鎖。若要解除封鎖,請直接瀏覽這些清單並刪除此使用者。" + +#: src/components/moderation/LabelsOnMeDialog.tsx:241 msgid "This appeal will be sent to <0>{0}." msgstr "此申訴將被提交至 <0>{0}。" -#: src/screens/Messages/Conversation/MessageListError.tsx:26 -msgid "This chat was disconnected due to a network error." -msgstr "" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:104 +msgid "This appeal will be sent to Bluesky's moderation service." +msgstr "此申訴將發送至 Bluesky 的內容管理服務。" + +#: src/screens/Messages/Conversation/MessageListError.tsx:18 +msgid "This chat was disconnected" +msgstr "對話已中斷連線" #: src/lib/moderation/useGlobalLabelStrings.ts:19 msgid "This content has been hidden by the moderators." -msgstr "此內容已被限制者隱藏。" +msgstr "此內容已被內容管理者隱藏。" #: src/lib/moderation/useGlobalLabelStrings.ts:24 msgid "This content has received a general warning from moderators." -msgstr "此內容已套用限制提供者所設定的一般警告。" +msgstr "此內容已套用內容管理提供者所標記的普通警告。" #: src/components/dialogs/EmbedConsent.tsx:64 msgid "This content is hosted by {0}. Do you want to enable external media?" @@ -4957,49 +5217,53 @@ msgstr "此內容由 {0} 託管。是否要啟用外部媒體?" msgid "This content is not available because one of the users involved has blocked the other." msgstr "由於其中一個用戶封鎖了另一個用戶,無法查看此內容。" -#: src/view/com/posts/FeedErrorMessage.tsx:108 +#: src/view/com/posts/FeedErrorMessage.tsx:115 msgid "This content is not viewable without a Bluesky account." msgstr "沒有 Bluesky 帳號,無法查看此內容。" -#: src/view/screens/Settings/ExportCarDialog.tsx:76 +#: src/view/screens/Settings/ExportCarDialog.tsx:94 msgid "This feature is in beta. You can read more about repository exports in <0>this blogpost." msgstr "此功能目前為測試版本。您可以在<0>這篇部落格文章中了解更多有關資訊。" -#: src/view/com/posts/FeedErrorMessage.tsx:114 +#: src/view/com/posts/FeedErrorMessage.tsx:121 msgid "This feed is currently receiving high traffic and is temporarily unavailable. Please try again later." msgstr "此動態源由於目前使用人數眾多而暫時無法使用。請稍後再試。" #: src/screens/Profile/Sections/Feed.tsx:59 -#: src/view/screens/ProfileFeed.tsx:490 -#: src/view/screens/ProfileList.tsx:671 +#: src/view/screens/ProfileFeed.tsx:471 +#: src/view/screens/ProfileList.tsx:728 msgid "This feed is empty!" -msgstr "這個動態源是空的!" +msgstr "這裡是空的!" #: src/view/com/posts/CustomFeedEmptyState.tsx:37 msgid "This feed is empty! You may need to follow more users or tune your language settings." msgstr "這個動態源是空的!您或許需要先跟隨更多的人或檢查您的語言設定。" +#: src/view/com/posts/FeedShutdownMsg.tsx:97 +msgid "This feed is no longer online. We are showing <0>Discover instead." +msgstr "此動態源已經下線。我們將展示「<0>Discover」動態源。" + #: src/components/dialogs/BirthDateSettings.tsx:41 msgid "This information is not shared with other users." msgstr "此資訊不會分享給其他用戶。" -#: src/view/com/modals/VerifyEmail.tsx:128 +#: src/view/com/modals/VerifyEmail.tsx:127 msgid "This is important in case you ever need to change your email or reset your password." msgstr "這很重要,以防您將來需要更改電子郵件地址或重設密碼。" -#: src/components/moderation/ModerationDetailsDialog.tsx:124 -#~ msgid "This label was applied by {0}." -#~ msgstr "此標記是由 {0} 套用的。" - #: src/components/moderation/ModerationDetailsDialog.tsx:127 msgid "This label was applied by <0>{0}." -msgstr "" +msgstr "此標記由 <0>{0} 添加。" #: src/components/moderation/ModerationDetailsDialog.tsx:125 msgid "This label was applied by the author." -msgstr "" +msgstr "此標記由發布者添加。" -#: src/screens/Profile/Sections/Labels.tsx:181 +#: src/components/moderation/LabelsOnMeDialog.tsx:168 +msgid "This label was applied by you." +msgstr "此標記由您添加。" + +#: src/screens/Profile/Sections/Labels.tsx:188 msgid "This labeler hasn't declared what labels it publishes, and may not be active." msgstr "此標記者尚未宣告它發佈的標記,而且可能不會生效。" @@ -5007,19 +5271,19 @@ msgstr "此標記者尚未宣告它發佈的標記,而且可能不會生效。 msgid "This link is taking you to the following website:" msgstr "此連結將帶您到以下網站:" -#: src/view/screens/ProfileList.tsx:849 +#: src/view/screens/ProfileList.tsx:906 msgid "This list is empty!" msgstr "此列表為空!" #: src/screens/Profile/ErrorState.tsx:40 msgid "This moderation service is unavailable. See below for more details. If this issue persists, contact us." -msgstr "此限制服務暫時無法使用,詳情請見下文。如果問題持續存在,請與我們聯絡。" +msgstr "此內容管理服務暫時無法使用,詳情請見下文。如果問題持續存在,請與我們聯絡。" -#: src/view/com/modals/AddAppPasswords.tsx:107 +#: src/view/com/modals/AddAppPasswords.tsx:111 msgid "This name is already in use" msgstr "此名稱已被使用" -#: src/view/com/post-thread/PostThreadItem.tsx:126 +#: src/view/com/post-thread/PostThreadItem.tsx:123 msgid "This post has been deleted." msgstr "這則貼文已被刪除。" @@ -5040,7 +5304,7 @@ msgstr "只有登入用戶能見到此個人資料。 未登入的人將看不 msgid "This service has not provided terms of service or a privacy policy." msgstr "此服務尚未提供服務條款或隱私政策。" -#: src/view/com/modals/ChangeHandle.tsx:446 +#: src/view/com/modals/ChangeHandle.tsx:439 msgid "This should create a domain record at:" msgstr "這應該在以下位置創建一個域記錄:" @@ -5048,6 +5312,10 @@ msgstr "這應該在以下位置創建一個域記錄:" msgid "This user doesn't have any followers." msgstr "此用戶沒有任何追隨者。" +#: src/components/dms/MessagesListBlockedFooter.tsx:60 +msgid "This user has blocked you" +msgstr "這個用戶已封鎖您" + #: src/components/moderation/ModerationDetailsDialog.tsx:72 #: src/lib/moderation/useModerationCauseDescription.ts:68 msgid "This user has blocked you. You cannot view their content." @@ -5069,22 +5337,18 @@ msgstr "此用戶包含在您已靜音的 <0>{0} 列表中。" msgid "This user isn't following anyone." msgstr "此用戶未跟隨任何人。" -#: src/view/com/modals/SelfLabel.tsx:137 -#~ msgid "This warning is only available for posts with media attached." -#~ msgstr "此警告僅適用於附帶媒體的貼文。" - -#: src/components/dialogs/MutedWords.tsx:283 +#: src/components/dialogs/MutedWords.tsx:285 msgid "This will delete {0} from your muted words. You can always add it back later." msgstr "這將從您的靜音文字中刪除 {0},您隨時可以在稍後添加回來。" -#: src/view/screens/Settings/index.tsx:585 +#: src/view/screens/Settings/index.tsx:587 msgid "Thread preferences" -msgstr "對話串偏好" +msgstr "討論串偏好" #: src/view/screens/PreferencesThreads.tsx:53 -#: src/view/screens/Settings/index.tsx:595 +#: src/view/screens/Settings/index.tsx:597 msgid "Thread Preferences" -msgstr "對話串偏好" +msgstr "討論串偏好" #: src/view/screens/PreferencesThreads.tsx:119 msgid "Threaded Mode" @@ -5092,17 +5356,21 @@ msgstr "樹狀顯示模式" #: src/Navigation.tsx:276 msgid "Threads Preferences" -msgstr "對話串偏好" +msgstr "討論串偏好" -#: src/view/screens/Settings/DisableEmail2FADialog.tsx:103 +#: src/view/screens/Settings/DisableEmail2FADialog.tsx:102 msgid "To disable the email 2FA method, please verify your access to the email address." msgstr "若要關閉電子郵件雙重驗證,請驗證您的電子郵件地址。" +#: src/components/dms/ReportConversationPrompt.tsx:20 +msgid "To report a conversation, please report one of its messages via the conversation screen. This lets our moderators understand the context of your issue." +msgstr "若要檢舉對話,請透過對話畫面檢舉其中一則訊息。這可以讓我們的內容管理者了解問題的來龍去脈。" + #: src/components/ReportDialog/SelectLabelerView.tsx:33 msgid "To whom would you like to send this report?" msgstr "您希望向誰提交此檢舉?" -#: src/components/dialogs/MutedWords.tsx:112 +#: src/components/dialogs/MutedWords.tsx:113 msgid "Toggle between muted word options." msgstr "在靜音文字選項之間切換。" @@ -5135,60 +5403,69 @@ msgctxt "action" msgid "Try again" msgstr "重試" -#: src/view/screens/Settings/index.tsx:711 +#: src/view/screens/Settings/index.tsx:738 msgid "Two-factor authentication" msgstr "雙重驗證" -#: src/screens/Messages/Conversation/MessageInput.tsx:80 +#: src/screens/Messages/Conversation/MessageInput.tsx:120 msgid "Type your message here" -msgstr "" +msgstr "在此輸入訊息" -#: src/view/com/modals/ChangeHandle.tsx:429 +#: src/view/com/modals/ChangeHandle.tsx:422 msgid "Type:" msgstr "類型:" -#: src/view/screens/ProfileList.tsx:478 +#: src/view/screens/ProfileList.tsx:534 msgid "Un-block list" msgstr "取消封鎖列表" -#: src/view/screens/ProfileList.tsx:463 +#: src/view/screens/ProfileList.tsx:519 msgid "Un-mute list" msgstr "取消靜音列表" #: src/screens/Login/ForgotPasswordForm.tsx:74 #: src/screens/Login/index.tsx:78 -#: src/screens/Login/LoginForm.tsx:136 +#: src/screens/Login/LoginForm.tsx:142 #: src/screens/Login/SetNewPasswordForm.tsx:77 #: src/screens/Signup/index.tsx:66 #: src/view/com/modals/ChangePassword.tsx:72 msgid "Unable to contact your service. Please check your Internet connection." msgstr "無法連線到服務,請檢查您的網路連線。" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:181 -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:286 +#: src/components/dms/MessagesListBlockedFooter.tsx:89 +#: src/components/dms/MessagesListBlockedFooter.tsx:96 +#: src/components/dms/MessagesListBlockedFooter.tsx:104 +#: src/components/dms/MessagesListBlockedFooter.tsx:111 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:184 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:295 #: src/view/com/profile/ProfileMenu.tsx:361 -#: src/view/screens/ProfileList.tsx:568 +#: src/view/screens/ProfileList.tsx:625 msgid "Unblock" -msgstr "取消封鎖" +msgstr "解除封鎖" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:186 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:189 msgctxt "action" msgid "Unblock" -msgstr "取消封鎖" +msgstr "解除封鎖" + +#: src/components/dms/ConvoMenu.tsx:186 +#: src/components/dms/ConvoMenu.tsx:190 +msgid "Unblock account" +msgstr "解除封鎖帳號" #: src/view/com/profile/ProfileMenu.tsx:299 #: src/view/com/profile/ProfileMenu.tsx:305 msgid "Unblock Account" -msgstr "取消封鎖" +msgstr "解除封鎖帳號" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:280 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:289 #: src/view/com/profile/ProfileMenu.tsx:343 msgid "Unblock Account?" -msgstr "取消封鎖?" +msgstr "解除封鎖?" #: src/view/com/modals/Repost.tsx:43 #: src/view/com/modals/Repost.tsx:56 -#: src/view/com/util/post-ctrls/RepostButton.tsx:59 +#: src/view/com/util/post-ctrls/RepostButton.tsx:60 #: src/view/com/util/post-ctrls/RepostButton.web.tsx:48 msgid "Undo repost" msgstr "取消轉貼" @@ -5202,7 +5479,7 @@ msgstr "取消跟隨" msgid "Unfollow" msgstr "取消跟隨" -#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:220 +#: src/screens/Profile/Header/ProfileHeaderStandard.tsx:229 msgid "Unfollow {0}" msgstr "取消跟隨 {0}" @@ -5211,16 +5488,12 @@ msgstr "取消跟隨 {0}" msgid "Unfollow Account" msgstr "取消跟隨" -#: src/view/com/util/post-ctrls/PostCtrls.tsx:197 -#~ msgid "Unlike" -#~ msgstr "取消喜歡" - -#: src/view/screens/ProfileFeed.tsx:589 +#: src/view/screens/ProfileFeed.tsx:570 msgid "Unlike this feed" msgstr "取消喜歡這個動態源" #: src/components/TagMenu/index.tsx:249 -#: src/view/screens/ProfileList.tsx:575 +#: src/view/screens/ProfileList.tsx:632 msgid "Unmute" msgstr "取消靜音" @@ -5237,45 +5510,50 @@ msgstr "取消靜音帳號" msgid "Unmute all {displayTag} posts" msgstr "取消對所有 {displayTag} 貼文的靜音" -#: src/components/dms/ConvoMenu.tsx:123 -msgid "Unmute notifications" -msgstr "" +#: src/components/dms/ConvoMenu.tsx:174 +msgid "Unmute conversation" +msgstr "取消靜音對話" #: src/view/com/util/forms/PostDropdownBtn.tsx:321 #: src/view/com/util/forms/PostDropdownBtn.tsx:326 msgid "Unmute thread" -msgstr "取消靜音對話串" +msgstr "取消靜音討論串" -#: src/view/screens/ProfileFeed.tsx:306 -#: src/view/screens/ProfileList.tsx:559 +#: src/view/screens/ProfileFeed.tsx:290 +#: src/view/screens/ProfileList.tsx:616 msgid "Unpin" msgstr "取消釘選" -#: src/view/screens/ProfileFeed.tsx:303 +#: src/view/screens/ProfileFeed.tsx:287 msgid "Unpin from home" msgstr "取消釘選在首頁" -#: src/view/screens/ProfileList.tsx:446 +#: src/view/screens/ProfileList.tsx:499 msgid "Unpin moderation list" -msgstr "取消釘選限制列表" +msgstr "取消釘選內容管理列表" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:227 +#: src/view/screens/ProfileList.tsx:289 +msgid "Unpinned from your feeds" +msgstr "已從您的動態源取消釘選" + +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:228 msgid "Unsubscribe" msgstr "取消訂閱" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:192 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:193 msgid "Unsubscribe from this labeler" msgstr "取消訂閱這個標記者" -#: src/lib/moderation/useReportOptions.ts:70 +#: src/lib/moderation/useReportOptions.ts:71 +#: src/lib/moderation/useReportOptions.ts:84 msgid "Unwanted Sexual Content" -msgstr "無關情色的內容" +msgstr "不受歡迎的情色內容" #: src/view/com/modals/UserAddRemoveLists.tsx:70 msgid "Update {displayName} in Lists" msgstr "更新列表中的 {displayName}" -#: src/view/com/modals/ChangeHandle.tsx:509 +#: src/view/com/modals/ChangeHandle.tsx:502 msgid "Update to {handle}" msgstr "更新至 {handle}" @@ -5283,42 +5561,46 @@ msgstr "更新至 {handle}" msgid "Updating..." msgstr "更新中…" -#: src/view/com/modals/ChangeHandle.tsx:455 +#: src/screens/Onboarding/StepProfile/index.tsx:284 +msgid "Upload a photo instead" +msgstr "或是上傳圖片" + +#: src/view/com/modals/ChangeHandle.tsx:448 msgid "Upload a text file to:" msgstr "上傳文字檔案至:" -#: src/view/com/util/UserAvatar.tsx:337 -#: src/view/com/util/UserAvatar.tsx:340 +#: src/view/com/util/UserAvatar.tsx:338 +#: src/view/com/util/UserAvatar.tsx:341 #: src/view/com/util/UserBanner.tsx:123 #: src/view/com/util/UserBanner.tsx:126 msgid "Upload from Camera" msgstr "從相機上傳" -#: src/view/com/util/UserAvatar.tsx:354 +#: src/view/com/util/UserAvatar.tsx:355 #: src/view/com/util/UserBanner.tsx:140 msgid "Upload from Files" msgstr "從檔案上傳" -#: src/view/com/util/UserAvatar.tsx:348 -#: src/view/com/util/UserAvatar.tsx:352 +#: src/view/com/util/UserAvatar.tsx:349 +#: src/view/com/util/UserAvatar.tsx:353 #: src/view/com/util/UserBanner.tsx:134 #: src/view/com/util/UserBanner.tsx:138 msgid "Upload from Library" msgstr "從圖片庫上傳" -#: src/view/com/modals/ChangeHandle.tsx:409 +#: src/view/com/modals/ChangeHandle.tsx:402 msgid "Use a file on your server" msgstr "使用您伺服器上的檔案" -#: src/view/screens/AppPasswords.tsx:197 +#: src/view/screens/AppPasswords.tsx:200 msgid "Use app passwords to login to other Bluesky clients without giving full access to your account or password." -msgstr "使用應用程式專用密碼登入到其他 Bluesky 客戶端,而無需提供完整的帳戶權限和密碼。" +msgstr "使用應用程式專用密碼登入到其他 Bluesky 客戶端,而無需提供完整的帳號權限和密碼。" -#: src/view/com/modals/ChangeHandle.tsx:520 +#: src/view/com/modals/ChangeHandle.tsx:513 msgid "Use bsky.social as hosting provider" msgstr "使用 bsky.social 作為託管服務供應商" -#: src/view/com/modals/ChangeHandle.tsx:519 +#: src/view/com/modals/ChangeHandle.tsx:512 msgid "Use default provider" msgstr "使用預設託管服務供應商" @@ -5332,11 +5614,15 @@ msgstr "使用內建瀏覽器" msgid "Use my default browser" msgstr "使用我的預設瀏覽器" -#: src/view/com/modals/ChangeHandle.tsx:401 +#: src/screens/Feeds/NoSavedFeedsOfAnyType.tsx:53 +msgid "Use recommended" +msgstr "使用推薦" + +#: src/view/com/modals/ChangeHandle.tsx:394 msgid "Use the DNS panel" msgstr "使用 DNS 控制台" -#: src/view/com/modals/AddAppPasswords.tsx:156 +#: src/view/com/modals/AddAppPasswords.tsx:206 msgid "Use this to sign into the other app along with your handle." msgstr "使用這個和您的帳號代碼一起登入其他應用程式。" @@ -5353,6 +5639,10 @@ msgstr "用戶被封鎖" msgid "User Blocked by \"{0}\"" msgstr "用戶被「{0}」封鎖" +#: src/components/dms/BlockedByListDialog.tsx:27 +msgid "User blocked by list" +msgstr "用戶已被列表封鎖" + #: src/components/moderation/ModerationDetailsDialog.tsx:53 msgid "User Blocked by List" msgstr "用戶被列表封鎖" @@ -5370,13 +5660,13 @@ msgstr "用戶封鎖了您" msgid "User list by {0}" msgstr "{0} 的用戶列表" -#: src/view/screens/ProfileList.tsx:773 +#: src/view/screens/ProfileList.tsx:830 msgid "User list by <0/>" msgstr "<0/> 的用戶列表" #: src/view/com/lists/ListCard.tsx:83 #: src/view/com/modals/UserAddRemoveLists.tsx:196 -#: src/view/screens/ProfileList.tsx:771 +#: src/view/screens/ProfileList.tsx:828 msgid "User list by you" msgstr "您的用戶列表" @@ -5392,17 +5682,24 @@ msgstr "已更新用戶列表" msgid "User Lists" msgstr "用戶列表" -#: src/screens/Login/LoginForm.tsx:168 +#: src/screens/Login/LoginForm.tsx:174 msgid "Username or email address" msgstr "帳號代碼或電子郵件地址" -#: src/view/screens/ProfileList.tsx:807 +#: src/view/screens/ProfileList.tsx:864 msgid "Users" msgstr "用戶" #: src/view/com/threadgate/WhoCanReply.tsx:143 msgid "users followed by <0/>" -msgstr "跟隨 <0/> 的用戶" +msgstr "被 <0/> 跟隨的用戶" + +#: src/components/dms/MessagesNUX.tsx:140 +#: src/components/dms/MessagesNUX.tsx:143 +#: src/screens/Messages/Settings.tsx:84 +#: src/screens/Messages/Settings.tsx:87 +msgid "Users I follow" +msgstr "我跟隨的用戶" #: src/view/com/modals/Threadgate.tsx:106 msgid "Users in \"{0}\"" @@ -5412,82 +5709,74 @@ msgstr "「{0}」中的用戶" msgid "Users that have liked this content or profile" msgstr "喜歡此內容或個人資料的用戶" -#: src/view/com/modals/ChangeHandle.tsx:437 +#: src/view/com/modals/ChangeHandle.tsx:430 msgid "Value:" msgstr "值:" -#: src/view/com/modals/ChangeHandle.tsx:510 -#~ msgid "Verify {0}" -#~ msgstr "驗證 {0}" - -#: src/view/com/modals/ChangeHandle.tsx:511 +#: src/view/com/modals/ChangeHandle.tsx:504 msgid "Verify DNS Record" -msgstr "" +msgstr "驗證 DNS 紀錄" -#: src/view/screens/Settings/index.tsx:915 +#: src/view/screens/Settings/index.tsx:952 msgid "Verify email" msgstr "驗證電子郵件" -#: src/view/screens/Settings/index.tsx:940 +#: src/view/screens/Settings/index.tsx:977 msgid "Verify my email" msgstr "驗證我的電子郵件" -#: src/view/screens/Settings/index.tsx:949 +#: src/view/screens/Settings/index.tsx:986 msgid "Verify My Email" msgstr "驗證我的電子郵件" -#: src/view/com/modals/ChangeEmail.tsx:207 -#: src/view/com/modals/ChangeEmail.tsx:209 +#: src/view/com/modals/ChangeEmail.tsx:200 +#: src/view/com/modals/ChangeEmail.tsx:202 msgid "Verify New Email" msgstr "驗證新的電子郵件" -#: src/view/com/modals/ChangeHandle.tsx:512 +#: src/view/com/modals/ChangeHandle.tsx:505 msgid "Verify Text File" -msgstr "" +msgstr "驗證文字檔案" -#: src/view/com/modals/VerifyEmail.tsx:112 +#: src/view/com/modals/VerifyEmail.tsx:111 msgid "Verify Your Email" msgstr "驗證您的電子郵件" -#: src/view/screens/Settings/index.tsx:852 -#~ msgid "Version {0}" -#~ msgstr "版本 {0}" - -#: src/view/screens/Settings/index.tsx:868 +#: src/view/screens/Settings/index.tsx:905 msgid "Version {appVersion} {bundleInfo}" -msgstr "" +msgstr "版本 {appVersion} {bundleInfo}" -#: src/screens/Onboarding/index.tsx:42 +#: src/screens/Onboarding/index.tsx:54 msgid "Video Games" msgstr "電子遊戲" -#: src/screens/Profile/Header/Shell.tsx:110 +#: src/screens/Profile/Header/Shell.tsx:111 msgid "View {0}'s avatar" -msgstr "查看{0}的頭貼" +msgstr "查看 {0} 的頭像" #: src/view/screens/Log.tsx:52 msgid "View debug entry" msgstr "查看偵錯項目" -#: src/components/ReportDialog/SelectReportOptionView.tsx:132 +#: src/components/ReportDialog/SelectReportOptionView.tsx:136 msgid "View details" msgstr "查看詳細資訊" -#: src/components/ReportDialog/SelectReportOptionView.tsx:127 +#: src/components/ReportDialog/SelectReportOptionView.tsx:131 msgid "View details for reporting a copyright violation" -msgstr "查看詳細資訊以檢舉侵權" +msgstr "查看詳細資訊以檢舉侵犯版權" -#: src/view/com/posts/FeedSlice.tsx:104 +#: src/view/com/posts/FeedSlice.tsx:112 msgid "View full thread" -msgstr "查看整個對話串" +msgstr "查看整個討論串" -#: src/components/moderation/LabelsOnMe.tsx:50 +#: src/components/moderation/LabelsOnMe.tsx:48 msgid "View information about these labels" msgstr "查看有關這些標記的資訊" -#: src/components/ProfileHoverCard/index.web.tsx:393 -#: src/components/ProfileHoverCard/index.web.tsx:426 -#: src/view/com/posts/FeedErrorMessage.tsx:166 +#: src/components/ProfileHoverCard/index.web.tsx:396 +#: src/components/ProfileHoverCard/index.web.tsx:429 +#: src/view/com/posts/FeedErrorMessage.tsx:175 msgid "View profile" msgstr "查看資料" @@ -5499,7 +5788,7 @@ msgstr "查看頭像" msgid "View the labeling service provided by @{0}" msgstr "查看由 @{0} 提供的標籤服務" -#: src/view/screens/ProfileFeed.tsx:601 +#: src/view/screens/ProfileFeed.tsx:582 msgid "View users who like this feed" msgstr "查看喜歡此動態源的用戶" @@ -5527,11 +5816,15 @@ msgstr "警告內容並從動態源中過濾" msgid "We couldn't find any results for that hashtag." msgstr "我們找不到任何與該標籤相關的結果。" +#: src/screens/Messages/Conversation/index.tsx:95 +msgid "We couldn't load this conversation" +msgstr "我們無法載入這個對話" + #: src/screens/Deactivated.tsx:139 msgid "We estimate {estimatedTime} until your account is ready." msgstr "我們估計還需要 {estimatedTime} 才能準備好您的帳號。" -#: src/screens/Onboarding/StepFinished.tsx:99 +#: src/screens/Onboarding/StepFinished.tsx:196 msgid "We hope you have a wonderful time. Remember, Bluesky is:" msgstr "我們希望您在此度過愉快的時光。請記住,Bluesky 是:" @@ -5539,7 +5832,7 @@ msgstr "我們希望您在此度過愉快的時光。請記住,Bluesky 是:" msgid "We ran out of posts from your follows. Here's the latest from <0/>." msgstr "您已看完了您跟隨的貼文。這是來自 <0/> 的最新貼文。" -#: src/components/dialogs/MutedWords.tsx:203 +#: src/components/dialogs/MutedWords.tsx:204 msgid "We recommend avoiding common words that appear in many posts, since it can result in no posts being shown." msgstr "我們建議避免新增在許多貼文中常用的文字,因為這可能令您看不到任何貼文。" @@ -5555,7 +5848,7 @@ msgstr "我們無法載入您的出生日期偏好,請再試一次。" msgid "We were unable to load your configured labelers at this time." msgstr "我們目前無法載入您已設定的標籤者。" -#: src/screens/Onboarding/StepInterests/index.tsx:138 +#: src/screens/Onboarding/StepInterests/index.tsx:148 msgid "We weren't able to connect. Please try again to continue setting up your account. If it continues to fail, you can skip this flow." msgstr "我們無法連線到網際網路,請重試以繼續設定您的帳號。如果仍繼續失敗,您可以選擇跳過此流程。" @@ -5563,10 +5856,14 @@ msgstr "我們無法連線到網際網路,請重試以繼續設定您的帳號 msgid "We will let you know when your account is ready." msgstr "我們會在您的帳號準備好時通知您。" -#: src/screens/Onboarding/StepInterests/index.tsx:143 +#: src/screens/Onboarding/StepInterests/index.tsx:153 msgid "We'll use this to help customize your experience." msgstr "我們將使用這些資訊來幫助定制您的體驗。" +#: src/components/dms/NewChatDialog/index.tsx:326 +msgid "We're having network issues, try again" +msgstr "我們遇到網路問題,請重試" + #: src/screens/Signup/index.tsx:142 msgid "We're so excited to have you join us!" msgstr "我們非常高興您加入我們!" @@ -5575,7 +5872,7 @@ msgstr "我們非常高興您加入我們!" msgid "We're sorry, but we were unable to resolve this list. If this persists, please contact the list creator, @{handleOrDid}." msgstr "很抱歉,我們無法解析此列表。如果問題持續發生,請聯繫列表建立者 @{handleOrDid}。" -#: src/components/dialogs/MutedWords.tsx:229 +#: src/components/dialogs/MutedWords.tsx:230 msgid "We're sorry, but we weren't able to load your muted words at this time. Please try again." msgstr "很抱歉,我們目前無法載入您的靜音文字。請稍後再試。" @@ -5583,22 +5880,22 @@ msgstr "很抱歉,我們目前無法載入您的靜音文字。請稍後再試 msgid "We're sorry, but your search could not be completed. Please try again in a few minutes." msgstr "很抱歉,無法完成您的搜尋請求。請稍後再試。" -#: src/components/Lists.tsx:200 +#: src/components/Lists.tsx:212 #: src/view/screens/NotFound.tsx:48 msgid "We're sorry! We can't find the page you were looking for." msgstr "很抱歉!我們找不到您正在尋找的頁面。" -#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:329 +#: src/screens/Profile/Header/ProfileHeaderLabeler.tsx:330 msgid "We're sorry! You can only subscribe to ten labelers, and you've reached your limit of ten." msgstr "抱歉!您只能訂閱十個標籤者,您已達到十個的限制。" -#: src/screens/Onboarding/StepInterests/index.tsx:135 +#: src/screens/Onboarding/StepInterests/index.tsx:145 msgid "What are your interests?" msgstr "您感興趣的是什麼?" #: src/view/com/auth/SplashScreen.tsx:40 #: src/view/com/auth/SplashScreen.web.tsx:86 -#: src/view/com/composer/Composer.tsx:324 +#: src/view/com/composer/Composer.tsx:326 msgid "What's up?" msgstr "發生了什麼新鮮事?" @@ -5610,28 +5907,41 @@ msgstr "這個貼文使用了哪些語言?" msgid "Which languages would you like to see in your algorithmic feeds?" msgstr "您想在演算法動態源中看到哪些語言?" -#: src/view/com/composer/threadgate/ThreadgateBtn.tsx:47 +#: src/components/dms/MessagesNUX.tsx:110 +#: src/components/dms/MessagesNUX.tsx:124 +msgid "Who can message you?" +msgstr "誰可以傳送訊息給您?" + #: src/view/com/modals/Threadgate.tsx:66 msgid "Who can reply" msgstr "誰可以回覆" -#: src/components/ReportDialog/SelectReportOptionView.tsx:43 +#: src/screens/Home/NoFeedsPinned.tsx:92 +#: src/screens/Messages/List/index.tsx:185 +msgid "Whoops!" +msgstr "哎呀!" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:44 msgid "Why should this content be reviewed?" msgstr "為什麼應該審查這個內容?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:56 +#: src/components/ReportDialog/SelectReportOptionView.tsx:57 msgid "Why should this feed be reviewed?" msgstr "為什麼應該審查這個動態源?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:53 +#: src/components/ReportDialog/SelectReportOptionView.tsx:54 msgid "Why should this list be reviewed?" msgstr "為什麼應該審查這個列表?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:50 +#: src/components/ReportDialog/SelectReportOptionView.tsx:60 +msgid "Why should this message be reviewed?" +msgstr "為什麼應該審查這則訊息?" + +#: src/components/ReportDialog/SelectReportOptionView.tsx:51 msgid "Why should this post be reviewed?" msgstr "為什麼應該審查這則貼文?" -#: src/components/ReportDialog/SelectReportOptionView.tsx:47 +#: src/components/ReportDialog/SelectReportOptionView.tsx:48 msgid "Why should this user be reviewed?" msgstr "為什麼應該審查這個用戶?" @@ -5639,37 +5949,37 @@ msgstr "為什麼應該審查這個用戶?" msgid "Wide" msgstr "寬" -#: src/screens/Messages/Conversation/MessageInput.tsx:81 -#: src/screens/Messages/Conversation/MessageInput.web.tsx:70 +#: src/screens/Messages/Conversation/MessageInput.tsx:121 +#: src/screens/Messages/Conversation/MessageInput.web.tsx:124 msgid "Write a message" -msgstr "" +msgstr "撰寫訊息" -#: src/view/com/composer/Composer.tsx:505 +#: src/view/com/composer/Composer.tsx:503 msgid "Write post" msgstr "撰寫貼文" -#: src/view/com/composer/Composer.tsx:323 +#: src/view/com/composer/Composer.tsx:325 #: src/view/com/composer/Prompt.tsx:37 msgid "Write your reply" msgstr "撰寫您的回覆" -#: src/screens/Onboarding/index.tsx:28 +#: src/screens/Onboarding/index.tsx:40 msgid "Writers" msgstr "作家" #: src/view/com/composer/select-language/SuggestedLanguage.tsx:77 -#: src/view/screens/PreferencesFollowingFeed.tsx:127 -#: src/view/screens/PreferencesFollowingFeed.tsx:199 -#: src/view/screens/PreferencesFollowingFeed.tsx:234 -#: src/view/screens/PreferencesFollowingFeed.tsx:269 +#: src/view/screens/PreferencesFollowingFeed.tsx:128 +#: src/view/screens/PreferencesFollowingFeed.tsx:200 +#: src/view/screens/PreferencesFollowingFeed.tsx:235 +#: src/view/screens/PreferencesFollowingFeed.tsx:270 #: src/view/screens/PreferencesThreads.tsx:106 #: src/view/screens/PreferencesThreads.tsx:129 msgid "Yes" msgstr "開" -#: src/components/dms/MessageItem.tsx:152 +#: src/components/dms/MessageItem.tsx:174 msgid "Yesterday, {time}" -msgstr "" +msgstr "昨天,{time}" #: src/screens/Deactivated.tsx:136 msgid "You are in line." @@ -5688,6 +5998,14 @@ msgstr "您也可以探索並跟隨新的自訂動態源。" msgid "You can change these settings later." msgstr "您可以往後在設定中更改。" +#: src/components/dms/MessagesNUX.tsx:119 +msgid "You can change this at any time." +msgstr "您可以隨時變更該設定。" + +#: src/screens/Messages/Settings.tsx:111 +msgid "You can continue ongoing conversations regardless of which setting you choose." +msgstr "無論選擇哪種設定,都不會影響已發起的對話。" + #: src/screens/Login/index.tsx:158 #: src/screens/Login/PasswordUpdatedForm.tsx:33 msgid "You can now sign in with your new password." @@ -5701,22 +6019,22 @@ msgstr "您沒有任何跟隨者。" msgid "You don't have any invite codes yet! We'll send you some when you've been on Bluesky for a little longer." msgstr "您目前還沒有邀請碼!當您持續使用 Bluesky 一段時間後,我們將提供一些新的邀請碼給您。" -#: src/view/screens/SavedFeeds.tsx:103 +#: src/view/screens/SavedFeeds.tsx:116 msgid "You don't have any pinned feeds." msgstr "您目前還沒有任何釘選的動態源。" -#: src/view/screens/Feeds.tsx:477 -msgid "You don't have any saved feeds!" -msgstr "您目前還沒有任何儲存的動態源!" - -#: src/view/screens/SavedFeeds.tsx:136 +#: src/view/screens/SavedFeeds.tsx:157 msgid "You don't have any saved feeds." -msgstr "您目前還沒有任何儲存的動態源。" +msgstr "您目前還沒有任何已儲存的動態源。" -#: src/view/com/post-thread/PostThread.tsx:159 +#: src/view/com/post-thread/PostThread.tsx:195 msgid "You have blocked the author or you have been blocked by the author." msgstr "您已封鎖該作者,或您已被該作者封鎖。" +#: src/components/dms/MessagesListBlockedFooter.tsx:58 +msgid "You have blocked this user" +msgstr "您已封鎖該用戶" + #: src/components/moderation/ModerationDetailsDialog.tsx:66 #: src/lib/moderation/useModerationCauseDescription.ts:50 #: src/lib/moderation/useModerationCauseDescription.ts:58 @@ -5747,36 +6065,44 @@ msgstr "您已隱藏這個帳號。" msgid "You have muted this user" msgstr "您已靜音這個用戶" +#: src/screens/Messages/List/index.tsx:225 +msgid "You have no conversations yet. Start one!" +msgstr "您還沒有對話,與其他用戶開始對話吧!" + #: src/view/com/feeds/ProfileFeedgens.tsx:144 msgid "You have no feeds." -msgstr "您沒有訂閱動態源。" +msgstr "您沒有建立任何動態源。" #: src/view/com/lists/MyLists.tsx:89 #: src/view/com/lists/ProfileLists.tsx:148 msgid "You have no lists." -msgstr "您沒有列表。" - -#: src/screens/Messages/List/index.tsx:176 -msgid "You have no messages yet. Start a conversation with someone!" -msgstr "您還沒有訊息。開始與其他人對話!" +msgstr "您沒有建立任何列表。" #: src/view/screens/ModerationBlockedAccounts.tsx:134 msgid "You have not blocked any accounts yet. To block an account, go to their profile and select \"Block account\" from the menu on their account." -msgstr "您還沒有封鎖任何帳號。要封鎖帳號,請轉到其個人資料並在其帳號上的選單中選擇「封鎖帳號」。" +msgstr "您還沒有封鎖任何帳號。要封鎖帳號,請前往其個人資料並在其帳號上的選單中選擇「封鎖帳號」。" -#: src/view/screens/AppPasswords.tsx:89 +#: src/view/screens/AppPasswords.tsx:91 msgid "You have not created any app passwords yet. You can create one by pressing the button below." msgstr "您還沒有建立任何應用程式專用密碼,如您想建立一個,按下面的按鈕。" #: src/view/screens/ModerationMutedAccounts.tsx:133 msgid "You have not muted any accounts yet. To mute an account, go to their profile and select \"Mute account\" from the menu on their account." -msgstr "您還沒有靜音任何帳號。要靜音帳號,請轉到其個人資料並在其帳號上的選單中選擇「靜音帳號」。" +msgstr "您還沒有靜音任何帳號。要靜音帳號,請前往其個人資料並在其帳號上的選單中選擇「靜音帳號」。" -#: src/components/dialogs/MutedWords.tsx:249 +#: src/components/Lists.tsx:52 +msgid "You have reached the end" +msgstr "已經到底部啦!" + +#: src/components/dialogs/MutedWords.tsx:250 msgid "You haven't muted any words or tags yet" msgstr "您還沒有隱藏任何文字或標籤" -#: src/components/moderation/LabelsOnMeDialog.tsx:68 +#: src/components/moderation/LabelsOnMeDialog.tsx:87 +msgid "You may appeal non-self labels if you feel they were placed in error." +msgstr "如果您認為非標記的放置有誤,且標記並非由您添加,您可以提出申訴。" + +#: src/components/moderation/LabelsOnMeDialog.tsx:92 msgid "You may appeal these labels if you feel they were placed in error." msgstr "如果您覺得這些標籤是錯誤的,您可以申訴這些標籤。" @@ -5788,25 +6114,25 @@ msgstr "您必須年滿 13 歲才能註冊。" msgid "You must be 18 years or older to enable adult content" msgstr "您必須年滿 18 歲才能啟用成人內容" -#: src/components/ReportDialog/SubmitView.tsx:205 +#: src/components/ReportDialog/SubmitView.tsx:206 msgid "You must select at least one labeler for a report" msgstr "您必須選擇至少一個標記者來提交檢舉" #: src/view/com/util/forms/PostDropdownBtn.tsx:158 msgid "You will no longer receive notifications for this thread" -msgstr "您將不再收到這條對話串的通知" +msgstr "您將不再收到這條討論串的通知" #: src/view/com/util/forms/PostDropdownBtn.tsx:161 msgid "You will now receive notifications for this thread" -msgstr "您將收到這條對話串的通知" +msgstr "您將收到這條討論串的通知" #: src/screens/Login/SetNewPasswordForm.tsx:104 msgid "You will receive an email with a \"reset code.\" Enter that code here, then enter your new password." msgstr "您將收到一封包含重設碼的電子郵件。請在此輸入該「重設碼」,然後輸入您的新密碼。" -#: src/screens/Messages/List/index.tsx:238 +#: src/screens/Messages/List/ChatListItem.tsx:101 msgid "You: {0}" -msgstr "" +msgstr "您:{0}" #: src/screens/Onboarding/StepModeration/index.tsx:60 msgid "You're in control" @@ -5818,7 +6144,7 @@ msgstr "盡在您的掌控" msgid "You're in line" msgstr "輪到您了" -#: src/screens/Onboarding/StepFinished.tsx:96 +#: src/screens/Onboarding/StepFinished.tsx:193 msgid "You're ready to go!" msgstr "您已設定完成!" @@ -5829,17 +6155,17 @@ msgstr "您選擇在這則貼文中隱藏文字或標籤。" #: src/view/com/posts/FollowingEndOfFeed.tsx:48 msgid "You've reached the end of your feed! Find some more accounts to follow." -msgstr "您已經瀏覽完您的訂閱動態源啦!跟隨其他帳號吧。" +msgstr "您已經瀏覽完貼文啦!跟隨其他帳號吧。" #: src/screens/Signup/index.tsx:164 msgid "Your account" msgstr "您的帳號" -#: src/view/com/modals/DeleteAccount.tsx:69 +#: src/view/com/modals/DeleteAccount.tsx:80 msgid "Your account has been deleted" msgstr "您的帳號已刪除" -#: src/view/screens/Settings/ExportCarDialog.tsx:48 +#: src/view/screens/Settings/ExportCarDialog.tsx:66 msgid "Your account repository, containing all public data records, can be downloaded as a \"CAR\" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately." msgstr "您可以將您的帳號存放庫下載為一個「CAR」檔案。該檔案包含了所有公開的資料紀錄,但不包括嵌入媒體,例如圖片或您的私人資料,目前這些資料必須另外擷取。" @@ -5847,6 +6173,10 @@ msgstr "您可以將您的帳號存放庫下載為一個「CAR」檔案。該檔 msgid "Your birth date" msgstr "您的生日" +#: src/screens/Messages/Conversation/ChatDisabled.tsx:25 +msgid "Your chats have been disabled" +msgstr "您的對話已被禁用" + #: src/view/com/modals/InAppBrowserConsent.tsx:47 msgid "Your choice will be saved, but can be changed later in settings." msgstr "您的選擇將被儲存,但可以稍後在設定中更改。" @@ -5856,32 +6186,32 @@ msgid "Your default feed is \"Following\"" msgstr "您的預設動態源為「Following」" #: src/screens/Login/ForgotPasswordForm.tsx:57 -#: src/screens/Signup/state.ts:227 +#: src/screens/Signup/state.ts:220 #: src/view/com/modals/ChangePassword.tsx:56 msgid "Your email appears to be invalid." msgstr "您的電子郵件地址似乎無效。" -#: src/view/com/modals/ChangeEmail.tsx:127 +#: src/view/com/modals/ChangeEmail.tsx:120 msgid "Your email has been updated but not verified. As a next step, please verify your new email." msgstr "您的電子郵件地址已更新但尚未驗證。作為下一步,請驗證您的新電子郵件地址。" -#: src/view/com/modals/VerifyEmail.tsx:123 +#: src/view/com/modals/VerifyEmail.tsx:122 msgid "Your email has not yet been verified. This is an important security step which we recommend." msgstr "您的電子郵件地址尚未驗證。這是一個我們建議的重要安全步驟。" #: src/view/com/posts/FollowingEmptyState.tsx:47 msgid "Your following feed is empty! Follow more users to see what's happening." -msgstr "您的跟隨動態源是空的!跟隨更多用戶來看看發生了什麼事情。" +msgstr "您的「Following」動態源是空的!跟隨更多用戶來看看發生了什麼事情。" #: src/screens/Signup/StepHandle.tsx:73 msgid "Your full handle will be" msgstr "您的完整帳號代碼將修改為" -#: src/view/com/modals/ChangeHandle.tsx:272 +#: src/view/com/modals/ChangeHandle.tsx:265 msgid "Your full handle will be <0>@{0}" msgstr "您的完整帳號代碼將修改為 <0>@{0}" -#: src/components/dialogs/MutedWords.tsx:220 +#: src/components/dialogs/MutedWords.tsx:221 msgid "Your muted words" msgstr "您的靜音文字" @@ -5889,22 +6219,26 @@ msgstr "您的靜音文字" msgid "Your password has been changed successfully!" msgstr "您的密碼已成功更改!" -#: src/view/com/composer/Composer.tsx:314 +#: src/view/com/composer/Composer.tsx:316 msgid "Your post has been published" msgstr "您的貼文已發佈" -#: src/screens/Onboarding/StepFinished.tsx:111 +#: src/screens/Onboarding/StepFinished.tsx:208 msgid "Your posts, likes, and blocks are public. Mutes are private." msgstr "您的貼文、按喜歡和封鎖是公開可見的,而靜音是私人的。" -#: src/view/screens/Settings/index.tsx:145 +#: src/view/screens/Settings/index.tsx:146 msgid "Your profile" msgstr "您的個人資料" -#: src/view/com/composer/Composer.tsx:313 +#: src/view/com/composer/Composer.tsx:315 msgid "Your reply has been published" msgstr "您的回覆已發佈" +#: src/components/dms/ReportDialog.tsx:160 +msgid "Your report will be sent to the Bluesky Moderation Service" +msgstr "您的檢舉將發送至 Bluesky 內容管理服務" + #: src/screens/Signup/index.tsx:166 msgid "Your user handle" msgstr "您的帳號代碼" diff --git a/src/platform/detection.ts b/src/platform/detection.ts index de4dfc07b9..fffde1be2d 100644 --- a/src/platform/detection.ts +++ b/src/platform/detection.ts @@ -1,4 +1,5 @@ import {Platform} from 'react-native' +import {isReducedMotion} from 'react-native-reanimated' import {getLocales} from 'expo-localization' import {dedupArray} from 'lib/functions' @@ -20,7 +21,4 @@ export const deviceLocales = dedupArray( .filter(code => typeof code === 'string'), ) as string[] -export const prefersReducedMotion = - isWeb && - // @ts-ignore we know window exists -prf - !global.window.matchMedia('(prefers-reduced-motion: no-preference)')?.matches +export const prefersReducedMotion = isReducedMotion() diff --git a/src/screens/Deactivated.tsx b/src/screens/Deactivated.tsx index 08a2232df2..c9e9f95254 100644 --- a/src/screens/Deactivated.tsx +++ b/src/screens/Deactivated.tsx @@ -24,7 +24,7 @@ export function Deactivated() { const {gtMobile} = useBreakpoints() const onboardingDispatch = useOnboardingDispatch() const {logout} = useSessionApi() - const {getAgent} = useAgent() + const agent = useAgent() const [isProcessing, setProcessing] = React.useState(false) const [estimatedTime, setEstimatedTime] = React.useState( @@ -37,11 +37,11 @@ export function Deactivated() { const checkStatus = React.useCallback(async () => { setProcessing(true) try { - const res = await getAgent().com.atproto.temp.checkSignupQueue() + const res = await agent.com.atproto.temp.checkSignupQueue() if (res.data.activated) { // ready to go, exchange the access token for a usable one and kick off onboarding - await getAgent().refreshSession() - if (!isSessionDeactivated(getAgent().session?.accessJwt)) { + await agent.refreshSession() + if (!isSessionDeactivated(agent.session?.accessJwt)) { onboardingDispatch({type: 'start'}) } } else { @@ -61,7 +61,7 @@ export function Deactivated() { setEstimatedTime, setPlaceInQueue, onboardingDispatch, - getAgent, + agent, ]) React.useEffect(() => { diff --git a/src/screens/Feeds/NoFollowingFeed.tsx b/src/screens/Feeds/NoFollowingFeed.tsx new file mode 100644 index 0000000000..fa48cca72c --- /dev/null +++ b/src/screens/Feeds/NoFollowingFeed.tsx @@ -0,0 +1,50 @@ +import React from 'react' +import {View} from 'react-native' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {TIMELINE_SAVED_FEED} from '#/lib/constants' +import {useAddSavedFeedsMutation} from '#/state/queries/preferences' +import {atoms as a, useTheme} from '#/alf' +import {InlineLinkText} from '#/components/Link' +import {Text} from '#/components/Typography' + +export function NoFollowingFeed() { + const t = useTheme() + const {_} = useLingui() + const {mutateAsync: addSavedFeeds} = useAddSavedFeedsMutation() + + const addRecommendedFeeds = React.useCallback( + (e: any) => { + e.preventDefault() + + addSavedFeeds([ + { + ...TIMELINE_SAVED_FEED, + pinned: true, + }, + ]) + + // prevent navigation + return false + }, + [addSavedFeeds], + ) + + return ( + + + + Looks like you're missing a following feed.{' '} + + Click here to add one. + + + + + ) +} diff --git a/src/screens/Feeds/NoSavedFeedsOfAnyType.tsx b/src/screens/Feeds/NoSavedFeedsOfAnyType.tsx new file mode 100644 index 0000000000..8f6bd9d2eb --- /dev/null +++ b/src/screens/Feeds/NoSavedFeedsOfAnyType.tsx @@ -0,0 +1,57 @@ +import React from 'react' +import {View} from 'react-native' +import {TID} from '@atproto/common-web' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {RECOMMENDED_SAVED_FEEDS} from '#/lib/constants' +import {useOverwriteSavedFeedsMutation} from '#/state/queries/preferences' +import {atoms as a, useTheme} from '#/alf' +import {Button, ButtonIcon, ButtonText} from '#/components/Button' +import {PlusLarge_Stroke2_Corner0_Rounded as Plus} from '#/components/icons/Plus' +import {Text} from '#/components/Typography' + +/** + * Explicitly named, since the CTA in this component will overwrite all saved + * feeds if pressed. It should only be presented to the user if they actually + * have no other feeds saved. + */ +export function NoSavedFeedsOfAnyType() { + const t = useTheme() + const {_} = useLingui() + const {isPending, mutateAsync: overwriteSavedFeeds} = + useOverwriteSavedFeedsMutation() + + const addRecommendedFeeds = React.useCallback(async () => { + await overwriteSavedFeeds( + RECOMMENDED_SAVED_FEEDS.map(f => ({ + ...f, + id: TID.nextStr(), + })), + ) + }, [overwriteSavedFeeds]) + + return ( + + + + Looks like you haven't saved any feeds! Use our recommendations or + browse more below. + + + + + + ) +} diff --git a/src/screens/Home/NoFeedsPinned.tsx b/src/screens/Home/NoFeedsPinned.tsx new file mode 100644 index 0000000000..e804e3e09f --- /dev/null +++ b/src/screens/Home/NoFeedsPinned.tsx @@ -0,0 +1,129 @@ +import React from 'react' +import {View} from 'react-native' +import {TID} from '@atproto/common-web' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' +import {useNavigation} from '@react-navigation/native' + +import {DISCOVER_SAVED_FEED, TIMELINE_SAVED_FEED} from '#/lib/constants' +import {isNative} from '#/platform/detection' +import {useOverwriteSavedFeedsMutation} from '#/state/queries/preferences' +import {UsePreferencesQueryResponse} from '#/state/queries/preferences' +import {NavigationProp} from 'lib/routes/types' +import {CenteredView} from '#/view/com/util/Views' +import {atoms as a} from '#/alf' +import {Button, ButtonIcon, ButtonText} from '#/components/Button' +import {useHeaderOffset} from '#/components/hooks/useHeaderOffset' +import {ListSparkle_Stroke2_Corner0_Rounded as ListSparkle} from '#/components/icons/ListSparkle' +import {PlusLarge_Stroke2_Corner0_Rounded as Plus} from '#/components/icons/Plus' +import {Link} from '#/components/Link' +import {Text} from '#/components/Typography' + +export function NoFeedsPinned({ + preferences, +}: { + preferences: UsePreferencesQueryResponse +}) { + const {_} = useLingui() + const headerOffset = useHeaderOffset() + const navigation = useNavigation() + const {isPending, mutateAsync: overwriteSavedFeeds} = + useOverwriteSavedFeedsMutation() + + const addRecommendedFeeds = React.useCallback(async () => { + let skippedTimeline = false + let skippedDiscover = false + let remainingSavedFeeds = [] + + // remove first instance of both timeline and discover, since we're going to overwrite them + for (const savedFeed of preferences.savedFeeds) { + if (savedFeed.type === 'timeline' && !skippedTimeline) { + skippedTimeline = true + } else if ( + savedFeed.value === DISCOVER_SAVED_FEED.value && + !skippedDiscover + ) { + skippedDiscover = true + } else { + remainingSavedFeeds.push(savedFeed) + } + } + + const toSave = [ + { + ...DISCOVER_SAVED_FEED, + pinned: true, + id: TID.nextStr(), + }, + { + ...TIMELINE_SAVED_FEED, + pinned: true, + id: TID.nextStr(), + }, + ...remainingSavedFeeds, + ] + + await overwriteSavedFeeds(toSave) + }, [overwriteSavedFeeds, preferences.savedFeeds]) + + const onPressFeedsLink = React.useCallback(() => { + if (isNative) { + // Hack that's necessary due to how our navigators are set up. + navigation.navigate('FeedsTab') + navigation.popToTop() + return false + } + }, [navigation]) + + return ( + + + + + Whoops! + + + + Looks like you unpinned all your feeds. But don't worry, you can + add some below 😄 + + + + + + + + + + {_(msg`Browse other feeds`)} + + + + + ) +} diff --git a/src/screens/Login/LoginForm.tsx b/src/screens/Login/LoginForm.tsx index 17fc323688..dfa10668b6 100644 --- a/src/screens/Login/LoginForm.tsx +++ b/src/screens/Login/LoginForm.tsx @@ -19,6 +19,8 @@ import {cleanError} from '#/lib/strings/errors' import {createFullHandle} from '#/lib/strings/handles' import {logger} from '#/logger' import {useSessionApi} from '#/state/session' +import {useLoggedOutViewControls} from '#/state/shell/logged-out' +import {useRequestNotificationsPermission} from 'lib/notifications/notifications' import {atoms as a, useTheme} from '#/alf' import {Button, ButtonIcon, ButtonText} from '#/components/Button' import {FormError} from '#/components/forms/FormError' @@ -65,6 +67,8 @@ export const LoginForm = ({ const passwordInputRef = useRef(null) const {_} = useLingui() const {login} = useSessionApi() + const requestNotificationsPermission = useRequestNotificationsPermission() + const {setShowLoggedOut} = useLoggedOutViewControls() const onPressSelectService = React.useCallback(() => { Keyboard.dismiss() @@ -111,6 +115,8 @@ export const LoginForm = ({ }, 'LoginForm', ) + setShowLoggedOut(false) + requestNotificationsPermission('Login') } catch (e: any) { const errMsg = e.toString() LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut) diff --git a/src/screens/Messages/Conversation/ChatDisabled.tsx b/src/screens/Messages/Conversation/ChatDisabled.tsx new file mode 100644 index 0000000000..5c6e615863 --- /dev/null +++ b/src/screens/Messages/Conversation/ChatDisabled.tsx @@ -0,0 +1,150 @@ +import React, {useCallback, useState} from 'react' +import {View} from 'react-native' +import {ComAtprotoModerationDefs} from '@atproto/api' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' +import {useMutation} from '@tanstack/react-query' + +import {logger} from '#/logger' +import {useAgent, useSession} from '#/state/session' +import * as Toast from '#/view/com/util/Toast' +import {atoms as a, useBreakpoints, useTheme} from '#/alf' +import {Button, ButtonIcon, ButtonText} from '#/components/Button' +import * as Dialog from '#/components/Dialog' +import {Loader} from '#/components/Loader' +import {Text} from '#/components/Typography' + +export function ChatDisabled() { + const t = useTheme() + return ( + + + + Your chats have been disabled + + + + Our moderators have reviewed reports and decided to disable your + access to chats on Bluesky. + + + + + + ) +} + +function AppealDialog() { + const control = Dialog.useDialogControl() + const {_} = useLingui() + + return ( + <> + + + + + + + + ) +} + +function DialogInner() { + const {_} = useLingui() + const control = Dialog.useDialogContext() + const [details, setDetails] = useState('') + const {gtMobile} = useBreakpoints() + const agent = useAgent() + const {currentAccount} = useSession() + + const {mutate, isPending} = useMutation({ + mutationFn: async () => { + if (!currentAccount) + throw new Error('No current account, should be unreachable') + await agent.createModerationReport({ + reasonType: ComAtprotoModerationDefs.REASONAPPEAL, + subject: { + $type: 'com.atproto.admin.defs#repoRef', + did: currentAccount.did, + }, + reason: details, + }) + }, + onError: err => { + logger.error('Failed to submit chat appeal', {message: err}) + Toast.show(_(msg`Failed to submit appeal, please try again.`)) + }, + onSuccess: () => { + control.close() + Toast.show(_(msg`Appeal submitted`)) + }, + }) + + const onSubmit = useCallback(() => mutate(), [mutate]) + const onBack = useCallback(() => control.close(), [control]) + + return ( + + + Appeal this decision + + + This appeal will be sent to Bluesky's moderation service. + + + + + + + + + + + + ) +} diff --git a/src/screens/Messages/Conversation/MessageInput.tsx b/src/screens/Messages/Conversation/MessageInput.tsx index 3de15e661d..c8229f95dc 100644 --- a/src/screens/Messages/Conversation/MessageInput.tsx +++ b/src/screens/Messages/Conversation/MessageInput.tsx @@ -1,81 +1,140 @@ import React from 'react' +import {Pressable, TextInput, useWindowDimensions, View} from 'react-native' import { - Dimensions, - Keyboard, - NativeSyntheticEvent, - Pressable, - TextInput, - TextInputContentSizeChangeEventData, - View, -} from 'react-native' + useFocusedInputHandler, + useReanimatedKeyboardAnimation, +} from 'react-native-keyboard-controller' +import Animated, { + measure, + useAnimatedProps, + useAnimatedRef, + useAnimatedStyle, + useSharedValue, +} from 'react-native-reanimated' import {useSafeAreaInsets} from 'react-native-safe-area-context' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' +import Graphemer from 'graphemer' -import {HITSLOP_10} from '#/lib/constants' -import {useHaptics} from 'lib/haptics' +import {HITSLOP_10, MAX_DM_GRAPHEME_LENGTH} from '#/lib/constants' +import {useHaptics} from '#/lib/haptics' +import { + useMessageDraft, + useSaveMessageDraft, +} from '#/state/messages/message-drafts' +import {isIOS} from 'platform/detection' +import * as Toast from '#/view/com/util/Toast' import {atoms as a, useTheme} from '#/alf' +import {useSharedInputStyles} from '#/components/forms/TextField' import {PaperPlane_Stroke2_Corner0_Rounded as PaperPlane} from '#/components/icons/PaperPlane' +import {useExtractEmbedFromFacets} from './MessageInputEmbed' + +const AnimatedTextInput = Animated.createAnimatedComponent(TextInput) export function MessageInput({ onSendMessage, - scrollToEnd, + hasEmbed, + setEmbed, + children, }: { onSendMessage: (message: string) => void - scrollToEnd: () => void + hasEmbed: boolean + setEmbed: (embedUrl: string | undefined) => void + children?: React.ReactNode }) { const {_} = useLingui() const t = useTheme() const playHaptic = useHaptics() - const [message, setMessage] = React.useState('') - const [maxHeight, setMaxHeight] = React.useState() - const [isInputScrollable, setIsInputScrollable] = React.useState(false) + const {getDraft, clearDraft} = useMessageDraft() + // Input layout const {top: topInset} = useSafeAreaInsets() + const {height: windowHeight} = useWindowDimensions() + const {height: keyboardHeight} = useReanimatedKeyboardAnimation() + const maxHeight = useSharedValue(undefined) + const isInputScrollable = useSharedValue(false) - const inputRef = React.useRef(null) + const inputStyles = useSharedInputStyles() + const [isFocused, setIsFocused] = React.useState(false) + const [message, setMessage] = React.useState(getDraft) + const inputRef = useAnimatedRef() + + useSaveMessageDraft(message) + useExtractEmbedFromFacets(message, setEmbed) const onSubmit = React.useCallback(() => { - if (message.trim() === '') { + if (!hasEmbed && message.trim() === '') { return } - onSendMessage(message.trimEnd()) + if (new Graphemer().countGraphemes(message) > MAX_DM_GRAPHEME_LENGTH) { + Toast.show(_(msg`Message is too long`)) + return + } + clearDraft() + onSendMessage(message) playHaptic() setMessage('') + setEmbed(undefined) + + // Pressing the send button causes the text input to lose focus, so we need to + // re-focus it after sending setTimeout(() => { inputRef.current?.focus() }, 100) - }, [message, onSendMessage, playHaptic]) + }, [ + hasEmbed, + message, + clearDraft, + onSendMessage, + playHaptic, + setEmbed, + _, + inputRef, + ]) - const onInputLayout = React.useCallback( - (e: NativeSyntheticEvent) => { - const keyboardHeight = Keyboard.metrics()?.height ?? 0 - const windowHeight = Dimensions.get('window').height + useFocusedInputHandler( + { + onChangeText: () => { + 'worklet' + const measurement = measure(inputRef) + if (!measurement) return - const max = windowHeight - keyboardHeight - topInset - 100 - const availableSpace = max - e.nativeEvent.contentSize.height + const max = windowHeight - -keyboardHeight.value - topInset - 150 + const availableSpace = max - measurement.height - setMaxHeight(max) - setIsInputScrollable(availableSpace < 30) - - scrollToEnd() + maxHeight.value = max + isInputScrollable.value = availableSpace < 30 + }, }, - [scrollToEnd, topInset], + [windowHeight, topInset], ) + const animatedStyle = useAnimatedStyle(() => ({ + maxHeight: maxHeight.value, + })) + + const animatedProps = useAnimatedProps(() => ({ + scrollEnabled: isInputScrollable.value, + })) + return ( - + + {children} - setIsFocused(true)} + onBlur={() => setIsFocused(false)} ref={inputRef} + hitSlop={HITSLOP_10} + animatedProps={animatedProps} /> void - scrollToEnd: () => void + hasEmbed: boolean + setEmbed: (embedUrl: string | undefined) => void + children?: React.ReactNode }) { + const {isTabletOrDesktop} = useWebMediaQueries() const {_} = useLingui() const t = useTheme() - const [message, setMessage] = React.useState('') + const {getDraft, clearDraft} = useMessageDraft() + const [message, setMessage] = React.useState(getDraft) + + const inputStyles = useSharedInputStyles() + const isComposing = React.useRef(false) + const [isFocused, setIsFocused] = React.useState(false) + const [isHovered, setIsHovered] = React.useState(false) + const [textAreaHeight, setTextAreaHeight] = React.useState(38) const onSubmit = React.useCallback(() => { - if (message.trim() === '') { + if (!hasEmbed && message.trim() === '') { return } - onSendMessage(message.trimEnd()) + if (new Graphemer().countGraphemes(message) > MAX_DM_GRAPHEME_LENGTH) { + Toast.show(_(msg`Message is too long`)) + return + } + clearDraft() + onSendMessage(message) setMessage('') - }, [message, onSendMessage]) + setEmbed(undefined) + }, [message, onSendMessage, _, clearDraft, hasEmbed, setEmbed]) const onKeyDown = React.useCallback( (e: React.KeyboardEvent) => { + // Don't submit the form when the Japanese or any other IME is composing + if (isComposing.current) return + + // see https://github.com/bluesky-social/social-app/issues/4178 + // see https://www.stum.de/2016/06/24/handling-ime-events-in-javascript/ + // see https://lists.w3.org/Archives/Public/www-dom/2010JulSep/att-0182/keyCode-spec.html + // + // On Safari, the final keydown event to dismiss the IME - which is the enter key - is also "Enter" below. + // Obviously, this causes problems because the final dismissal should _not_ submit the text, but should just + // stop the IME editing. This is the behavior of Chrome and Firefox, but not Safari. + // + // Keycode is deprecated, however the alternative seems to only be to compare the timestamp from the + // onCompositionEnd event to the timestamp of the keydown event, which is not reliable. For example, this hack + // uses that method: https://github.com/ProseMirror/prosemirror-view/pull/44. However, from my 500ms resulted in + // far too long of a delay, and a subsequent enter press would often just end up doing nothing. A shorter time + // frame was also not great, since it was too short to be reliable (i.e. an older system might have a larger + // time gap between the two events firing. + if (isSafari && e.key === 'Enter' && e.keyCode === 229) { + return + } + if (e.key === 'Enter') { if (e.shiftKey) return e.preventDefault() @@ -43,17 +94,30 @@ export function MessageInput({ [], ) + useSaveMessageDraft(message) + useExtractEmbedFromFacets(message, setEmbed) + return ( + {children} + { + paddingRight: a.p_sm.padding - 2, + paddingLeft: a.p_md.padding - 2, + borderWidth: 1, + borderRadius: 23, + borderColor: 'transparent', + height: textAreaHeight + 23, + }, + isHovered && inputStyles.chromeHover, + isFocused && inputStyles.chromeFocus, + ]} + // @ts-expect-error web only + onMouseEnter={() => setIsHovered(true)} + onMouseLeave={() => setIsHovered(false)}> setIsFocused(true)} + onBlur={() => setIsFocused(false)} + onCompositionStart={() => { + isComposing.current = true + }} + onCompositionEnd={() => { + isComposing.current = false + }} + onHeightChange={height => setTextAreaHeight(height)} onChange={onChange} - onKeyDown={onKeyDown} + // On mobile web phones, we want to keep the same behavior as the native app. Do not submit the message + // in these cases. + onKeyDown={isTouchDevice && isTabletOrDesktop ? undefined : onKeyDown} /> diff --git a/src/screens/Messages/Conversation/MessageInputEmbed.tsx b/src/screens/Messages/Conversation/MessageInputEmbed.tsx new file mode 100644 index 0000000000..4fdd31bcf1 --- /dev/null +++ b/src/screens/Messages/Conversation/MessageInputEmbed.tsx @@ -0,0 +1,231 @@ +import React, {useCallback, useEffect, useMemo, useState} from 'react' +import {LayoutAnimation, View} from 'react-native' +import { + AppBskyEmbedImages, + AppBskyEmbedRecordWithMedia, + AppBskyFeedPost, + AppBskyRichtextFacet, + AtUri, + RichText as RichTextAPI, +} from '@atproto/api' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' +import {RouteProp, useNavigation, useRoute} from '@react-navigation/native' + +import {moderatePost_wrapped as moderatePost} from '#/lib/moderatePost_wrapped' +import {makeProfileLink} from '#/lib/routes/links' +import {CommonNavigatorParams, NavigationProp} from '#/lib/routes/types' +import { + convertBskyAppUrlIfNeeded, + isBskyPostUrl, + makeRecordUri, +} from '#/lib/strings/url-helpers' +import {useModerationOpts} from '#/state/preferences/moderation-opts' +import {usePostQuery} from '#/state/queries/post' +import {ImageHorzList} from '#/view/com/util/images/ImageHorzList' +import {PostMeta} from '#/view/com/util/PostMeta' +import {atoms as a, useTheme} from '#/alf' +import {Button, ButtonIcon} from '#/components/Button' +import {TimesLarge_Stroke2_Corner0_Rounded as X} from '#/components/icons/Times' +import {Loader} from '#/components/Loader' +import {ContentHider} from '#/components/moderation/ContentHider' +import {PostAlerts} from '#/components/moderation/PostAlerts' +import {RichText} from '#/components/RichText' +import {Text} from '#/components/Typography' + +export function useMessageEmbed() { + const route = + useRoute>() + const navigation = useNavigation() + const embedFromParams = route.params.embed + + const [embedUri, setEmbed] = useState(embedFromParams) + + if (embedFromParams && embedUri !== embedFromParams) { + setEmbed(embedFromParams) + } + + return { + embedUri, + setEmbed: useCallback( + (embedUrl: string | undefined) => { + if (!embedUrl) { + navigation.setParams({embed: ''}) + setEmbed(undefined) + return + } + + if (embedFromParams) return + + const url = convertBskyAppUrlIfNeeded(embedUrl) + const [_0, user, _1, rkey] = url.split('/').filter(Boolean) + const uri = makeRecordUri(user, 'app.bsky.feed.post', rkey) + + setEmbed(uri) + }, + [embedFromParams, navigation], + ), + } +} + +export function useExtractEmbedFromFacets( + message: string, + setEmbed: (embedUrl: string | undefined) => void, +) { + const rt = new RichTextAPI({text: message}) + rt.detectFacetsWithoutResolution() + + let uriFromFacet: string | undefined + + for (const facet of rt.facets ?? []) { + for (const feature of facet.features) { + if (AppBskyRichtextFacet.isLink(feature) && isBskyPostUrl(feature.uri)) { + uriFromFacet = feature.uri + break + } + } + } + + useEffect(() => { + if (uriFromFacet) { + setEmbed(uriFromFacet) + } + }, [uriFromFacet, setEmbed]) +} + +export function MessageInputEmbed({ + embedUri, + setEmbed, +}: { + embedUri: string | undefined + setEmbed: (embedUrl: string | undefined) => void +}) { + const t = useTheme() + const {_} = useLingui() + + const {data: post, status} = usePostQuery(embedUri) + + const moderationOpts = useModerationOpts() + const moderation = useMemo( + () => + moderationOpts && post ? moderatePost(post, moderationOpts) : undefined, + [moderationOpts, post], + ) + + const {rt, record} = useMemo(() => { + if ( + post && + AppBskyFeedPost.isRecord(post.record) && + AppBskyFeedPost.validateRecord(post.record).success + ) { + return { + rt: new RichTextAPI({ + text: post.record.text, + facets: post.record.facets, + }), + record: post.record, + } + } + + return {rt: undefined, record: undefined} + }, [post]) + + if (!embedUri) { + return null + } + + let content = null + switch (status) { + case 'pending': + content = ( + + + + ) + break + case 'error': + content = ( + + Could not fetch post + + ) + break + case 'success': + const itemUrip = new AtUri(post.uri) + const itemHref = makeProfileLink(post.author, 'post', itemUrip.rkey) + + if (!post || !moderation || !rt || !record) { + return null + } + + const images = AppBskyEmbedImages.isView(post.embed) + ? post.embed.images + : AppBskyEmbedRecordWithMedia.isView(post.embed) && + AppBskyEmbedImages.isView(post.embed.media) + ? post.embed.media.images + : undefined + + content = ( + + + + + {rt.text && ( + + + + )} + {images && images?.length > 0 && ( + + )} + + + ) + break + } + + return ( + + {content} + + + ) +} diff --git a/src/screens/Messages/Conversation/MessageListError.tsx b/src/screens/Messages/Conversation/MessageListError.tsx index 5f5df4fc93..6f50948df9 100644 --- a/src/screens/Messages/Conversation/MessageListError.tsx +++ b/src/screens/Messages/Conversation/MessageListError.tsx @@ -9,50 +9,51 @@ import {CircleInfo_Stroke2_Corner0_Rounded as CircleInfo} from '#/components/ico import {InlineLinkText} from '#/components/Link' import {Text} from '#/components/Typography' -export function MessageListError({ - item, -}: { - item: ConvoItem & {type: 'error-recoverable'} -}) { +export function MessageListError({item}: {item: ConvoItem & {type: 'error'}}) { const t = useTheme() const {_} = useLingui() - const message = React.useMemo(() => { + const {description, help, cta} = React.useMemo(() => { return { - [ConvoItemError.Network]: _( - msg`There was an issue connecting to the chat.`, - ), - [ConvoItemError.HistoryFailed]: _(msg`Failed to load past messages.`), - [ConvoItemError.PollFailed]: _( - msg`This chat was disconnected due to a network error.`, - ), + [ConvoItemError.FirehoseFailed]: { + description: _(msg`This chat was disconnected`), + help: _(msg`Press to attempt reconnection`), + cta: _(msg`Reconnect`), + }, + [ConvoItemError.HistoryFailed]: { + description: _(msg`Failed to load past messages`), + help: _(msg`Press to retry`), + cta: _(msg`Retry`), + }, }[item.code] }, [_, item.code]) return ( - + - - - {message}{' '} - { - e.preventDefault() - item.retry() - return false - }}> - {_(msg`Retry.`)} - + + + + {description} ·{' '} + {item.retry && ( + { + e.preventDefault() + item.retry?.() + return false + }}> + {cta} + + )} diff --git a/src/screens/Messages/Conversation/MessagesList.tsx b/src/screens/Messages/Conversation/MessagesList.tsx index 1b07f88775..e6f657b497 100644 --- a/src/screens/Messages/Conversation/MessagesList.tsx +++ b/src/screens/Messages/Conversation/MessagesList.tsx @@ -1,28 +1,44 @@ import React, {useCallback, useRef} from 'react' -import {FlatList, View} from 'react-native' +import {FlatList, LayoutChangeEvent, View} from 'react-native' import { - KeyboardAvoidingView, + KeyboardStickyView, useKeyboardHandler, } from 'react-native-keyboard-controller' -import {runOnJS, useSharedValue} from 'react-native-reanimated' +import { + runOnJS, + scrollTo, + useAnimatedRef, + useAnimatedStyle, + useSharedValue, +} from 'react-native-reanimated' import {ReanimatedScrollEvent} from 'react-native-reanimated/lib/typescript/reanimated2/hook/commonTypes' import {useSafeAreaInsets} from 'react-native-safe-area-context' -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' +import {AppBskyEmbedRecord, AppBskyRichtextFacet, RichText} from '@atproto/api' -import {isIOS} from '#/platform/detection' -import {useConvo} from '#/state/messages/convo' +import {shortenLinks, stripInvalidMentions} from '#/lib/strings/rich-text-manip' +import { + convertBskyAppUrlIfNeeded, + isBskyPostUrl, +} from '#/lib/strings/url-helpers' +import {logger} from '#/logger' +import {isNative} from '#/platform/detection' +import {isConvoActive, useConvoActive} from '#/state/messages/convo' import {ConvoItem, ConvoStatus} from '#/state/messages/convo/types' +import {useGetPost} from '#/state/queries/post' +import {useAgent} from '#/state/session' +import {clamp} from 'lib/numbers' import {ScrollProvider} from 'lib/ScrollContext' import {isWeb} from 'platform/detection' import {List} from 'view/com/util/List' +import {ChatDisabled} from '#/screens/Messages/Conversation/ChatDisabled' import {MessageInput} from '#/screens/Messages/Conversation/MessageInput' import {MessageListError} from '#/screens/Messages/Conversation/MessageListError' -import {atoms as a, useBreakpoints} from '#/alf' -import {Button, ButtonText} from '#/components/Button' +import {ChatEmptyPill} from '#/components/dms/ChatEmptyPill' import {MessageItem} from '#/components/dms/MessageItem' +import {NewMessagesPill} from '#/components/dms/NewMessagesPill' import {Loader} from '#/components/Loader' import {Text} from '#/components/Typography' +import {MessageInputEmbed, useMessageEmbed} from './MessageInputEmbed' function MaybeLoader({isLoading}: {isLoading: boolean}) { return ( @@ -38,39 +54,12 @@ function MaybeLoader({isLoading}: {isLoading: boolean}) { ) } -function RetryButton({onPress}: {onPress: () => unknown}) { - const {_} = useLingui() - - return ( - - - - ) -} - function renderItem({item}: {item: ConvoItem}) { if (item.type === 'message' || item.type === 'pending-message') { - return ( - - ) + return } else if (item.type === 'deleted-message') { return Deleted message - } else if (item.type === 'pending-retry') { - return - } else if (item.type === 'error-recoverable') { + } else if (item.type === 'error') { return } @@ -85,27 +74,52 @@ function onScrollToIndexFailed() { // Placeholder function. You have to give FlatList something or else it will error. } -export function MessagesList() { - const convo = useConvo() - const flatListRef = useRef(null) +export function MessagesList({ + hasScrolled, + setHasScrolled, + blocked, + footer, +}: { + hasScrolled: boolean + setHasScrolled: React.Dispatch> + blocked?: boolean + footer?: React.ReactNode +}) { + const convoState = useConvoActive() + const agent = useAgent() + const getPost = useGetPost() + const {embedUri, setEmbed} = useMessageEmbed() + + const flatListRef = useAnimatedRef() + + const [newMessagesPill, setNewMessagesPill] = React.useState({ + show: false, + startContentOffset: 0, + }) // We need to keep track of when the scroll offset is at the bottom of the list to know when to scroll as new items // are added to the list. For example, if the user is scrolled up to 1iew older messages, we don't want to scroll to // the bottom. const isAtBottom = useSharedValue(true) - // This will be used on web to assist in determing if we need to maintain the content offset + // This will be used on web to assist in determining if we need to maintain the content offset const isAtTop = useSharedValue(true) // Used to keep track of the current content height. We'll need this in `onScroll` so we know when to start allowing // onStartReached to fire. - const contentHeight = useSharedValue(0) + const prevContentHeight = useRef(0) + const prevItemCount = useRef(0) - // We don't want to call `scrollToEnd` again if we are already scolling to the end, because this creates a bit of jank - // Instead, we use `onMomentumScrollEnd` and this value to determine if we need to start scrolling or not. - const isMomentumScrolling = useSharedValue(false) + // -- Keep track of background state and positioning for new pill + const layoutHeight = useSharedValue(0) + const didBackground = React.useRef(false) + React.useEffect(() => { + if (convoState.status === ConvoStatus.Backgrounded) { + didBackground.current = true + } + }, [convoState.status]) - const [hasInitiallyScrolled, setHasInitiallyScrolled] = React.useState(false) + // -- Scroll handling // Every time the content size changes, that means one of two things is happening: // 1. New messages are being added from the log or from a message you have sent @@ -120,58 +134,80 @@ export function MessagesList() { const onContentSizeChange = useCallback( (_: number, height: number) => { // Because web does not have `maintainVisibleContentPosition` support, we will need to manually scroll to the - // previous offset whenever we add new content to the previous offset whenever we add new content to the list. - if (isWeb && isAtTop.value && hasInitiallyScrolled) { + // previous off whenever we add new content to the previous offset whenever we add new content to the list. + if (isWeb && isAtTop.value && hasScrolled) { flatListRef.current?.scrollToOffset({ + offset: height - prevContentHeight.current, animated: false, - offset: height - contentHeight.value, }) } - contentHeight.value = height - // This number _must_ be the height of the MaybeLoader component - if (height <= 50 || !isAtBottom.value) { - return + if (height > 50 && isAtBottom.value) { + // If the size of the content is changing by more than the height of the screen, then we don't + // want to scroll further than the start of all the new content. Since we are storing the previous offset, + // we can just scroll the user to that offset and add a little bit of padding. We'll also show the pill + // that can be pressed to immediately scroll to the end. + if ( + didBackground.current && + hasScrolled && + height - prevContentHeight.current > layoutHeight.value - 50 && + convoState.items.length - prevItemCount.current > 1 + ) { + flatListRef.current?.scrollToOffset({ + offset: prevContentHeight.current - 65, + animated: true, + }) + setNewMessagesPill({ + show: true, + startContentOffset: prevContentHeight.current - 65, + }) + } else { + flatListRef.current?.scrollToOffset({ + offset: height, + animated: hasScrolled && height > prevContentHeight.current, + }) + + // HACK Unfortunately, we need to call `setHasScrolled` after a brief delay, + // because otherwise there is too much of a delay between the time the content + // scrolls and the time the screen appears, causing a flicker. + // We cannot actually use a synchronous scroll here, because `onContentSizeChange` + // is actually async itself - all the info has to come across the bridge first. + if (!hasScrolled && !convoState.isFetchingHistory) { + setTimeout(() => { + setHasScrolled(true) + }, 100) + } + } } - flatListRef.current?.scrollToOffset({ - animated: hasInitiallyScrolled, - offset: height, - }) - isMomentumScrolling.value = true + prevContentHeight.current = height + prevItemCount.current = convoState.items.length + didBackground.current = false }, [ - contentHeight, - hasInitiallyScrolled, - isAtBottom.value, + hasScrolled, + setHasScrolled, + convoState.isFetchingHistory, + convoState.items.length, + // these are stable + flatListRef, isAtTop.value, - isMomentumScrolling, + isAtBottom.value, + layoutHeight.value, ], ) - // The check for `hasInitiallyScrolled` prevents an initial fetch on mount. FlatList triggers `onStartReached` - // immediately on mount, since we are in fact at an offset of zero, so we have to ignore those initial calls. const onStartReached = useCallback(() => { - if (convo.status === ConvoStatus.Ready && hasInitiallyScrolled) { - convo.fetchMessageHistory() + if (hasScrolled && prevContentHeight.current > layoutHeight.value) { + convoState.fetchMessageHistory() } - }, [convo, hasInitiallyScrolled]) - - const onSendMessage = useCallback( - (text: string) => { - if (convo.status === ConvoStatus.Ready) { - convo.sendMessage({ - text, - }) - } - }, - [convo], - ) + }, [convoState, hasScrolled, layoutHeight.value]) const onScroll = React.useCallback( (e: ReanimatedScrollEvent) => { 'worklet' + layoutHeight.value = e.layoutMeasurement.height const bottomOffset = e.contentOffset.y + e.layoutMeasurement.height // Most apps have a little bit of space the user can scroll past while still automatically scrolling ot the bottom @@ -179,81 +215,230 @@ export function MessagesList() { isAtBottom.value = e.contentSize.height - 100 < bottomOffset isAtTop.value = e.contentOffset.y <= 1 - // This number _must_ be the height of the MaybeLoader component. - // We don't check for zero, because the `MaybeLoader` component is always present, even when not visible, which - // adds a 50 pixel offset. - if (contentHeight.value > 50 && !hasInitiallyScrolled) { - runOnJS(setHasInitiallyScrolled)(true) + if ( + newMessagesPill.show && + (e.contentOffset.y > newMessagesPill.startContentOffset + 200 || + isAtBottom.value) + ) { + runOnJS(setNewMessagesPill)({ + show: false, + startContentOffset: 0, + }) } }, - [contentHeight.value, hasInitiallyScrolled, isAtBottom, isAtTop], + [layoutHeight, newMessagesPill, isAtBottom, isAtTop], ) - const onMomentumEnd = React.useCallback(() => { - 'worklet' - isMomentumScrolling.value = false - }, [isMomentumScrolling]) + // -- Keyboard animation handling + const {bottom: bottomInset} = useSafeAreaInsets() + const bottomOffset = isWeb ? 0 : clamp(60 + bottomInset, 60, 75) - const scrollToEnd = React.useCallback(() => { - requestAnimationFrame(() => { - if (isMomentumScrolling.value) return + const keyboardHeight = useSharedValue(0) + const keyboardIsOpening = useSharedValue(false) - flatListRef.current?.scrollToEnd({animated: true}) - isMomentumScrolling.value = true - }) - }, [isMomentumScrolling]) - - const {bottom: bottomInset, top: topInset} = useSafeAreaInsets() - const {gtMobile} = useBreakpoints() - const bottomBarHeight = gtMobile ? 0 : isIOS ? 40 : 60 - - // This is only used inside the useKeyboardHandler because the worklet won't work with a ref directly. - const scrollToEndNow = React.useCallback(() => { - flatListRef.current?.scrollToEnd({animated: false}) - }, []) + // In some cases - like when the emoji piker opens - we don't want to animate the scroll in the list onLayout event. + // We use this value to keep track of when we want to disable the animation. + const layoutScrollWithoutAnimation = useSharedValue(false) useKeyboardHandler({ - onMove: () => { + onStart: e => { 'worklet' - runOnJS(scrollToEndNow)() + // Immediate updates - like opening the emoji picker - will have a duration of zero. In those cases, we should + // just update the height here instead of having the `onMove` event do it (that event will not fire!) + if (e.duration === 0) { + layoutScrollWithoutAnimation.value = true + keyboardHeight.value = e.height + } else { + keyboardIsOpening.value = true + } + }, + onMove: e => { + 'worklet' + keyboardHeight.value = e.height + if (e.height > bottomOffset) { + scrollTo(flatListRef, 0, 1e7, false) + } + }, + onEnd: () => { + 'worklet' + keyboardIsOpening.value = false }, }) + const animatedListStyle = useAnimatedStyle(() => ({ + marginBottom: + keyboardHeight.value > bottomOffset ? keyboardHeight.value : bottomOffset, + })) + + // -- Message sending + const onSendMessage = useCallback( + async (text: string) => { + let rt = new RichText({text: text.trimEnd()}, {cleanNewlines: true}) + + // detect facets without resolution first - this is used to see if there's + // any post links in the text that we can embed. We do this first because + // we want to remove the post link from the text, re-trim, then detect facets + rt.detectFacetsWithoutResolution() + + let embed: AppBskyEmbedRecord.Main | undefined + + if (embedUri) { + try { + const post = await getPost({uri: embedUri}) + if (post) { + embed = { + $type: 'app.bsky.embed.record', + record: { + uri: post.uri, + cid: post.cid, + }, + } + + // look for the embed uri in the facets, so we can remove it from the text + const postLinkFacet = rt.facets?.find(facet => { + return facet.features.find(feature => { + if (AppBskyRichtextFacet.isLink(feature)) { + if (isBskyPostUrl(feature.uri)) { + const url = convertBskyAppUrlIfNeeded(feature.uri) + const [_0, _1, _2, rkey] = url.split('/').filter(Boolean) + + // this might have a handle instead of a DID + // so just compare the rkey - not particularly dangerous + return post.uri.endsWith(rkey) + } + } + return false + }) + }) + + if (postLinkFacet) { + // remove the post link from the text + rt.delete( + postLinkFacet.index.byteStart, + postLinkFacet.index.byteEnd, + ) + + // re-trim the text, now that we've removed the post link + // + // if the post link is at the start of the text, we don't want to leave a leading space + // so trim on both sides + if (postLinkFacet.index.byteStart === 0) { + rt = new RichText({text: rt.text.trim()}, {cleanNewlines: true}) + } else { + // otherwise just trim the end + rt = new RichText( + {text: rt.text.trimEnd()}, + {cleanNewlines: true}, + ) + } + } + } + } catch (error) { + logger.error('Failed to get post as quote for DM', {error}) + } + } + + await rt.detectFacets(agent) + + rt = shortenLinks(rt) + rt = stripInvalidMentions(rt) + + if (!hasScrolled) { + setHasScrolled(true) + } + + convoState.sendMessage({ + text: rt.text, + facets: rt.facets, + embed, + }) + }, + [agent, convoState, embedUri, getPost, hasScrolled, setHasScrolled], + ) + + // -- List layout changes (opening emoji keyboard, etc.) + const onListLayout = React.useCallback( + (e: LayoutChangeEvent) => { + layoutHeight.value = e.nativeEvent.layout.height + + if (isWeb || !keyboardIsOpening.value) { + flatListRef.current?.scrollToEnd({ + animated: !layoutScrollWithoutAnimation.value, + }) + layoutScrollWithoutAnimation.value = false + } + }, + [ + flatListRef, + keyboardIsOpening.value, + layoutScrollWithoutAnimation, + layoutHeight, + ], + ) + + const scrollToEndOnPress = React.useCallback(() => { + flatListRef.current?.scrollToOffset({ + offset: prevContentHeight.current, + animated: true, + }) + }, [flatListRef]) + return ( - + <> {/* Custom scroll provider so that we can use the `onScroll` event in our custom List implementation */} - + + } - sideBorders={false} /> - - + + {convoState.status === ConvoStatus.Disabled ? ( + + ) : blocked ? ( + footer + ) : ( + <> + {isConvoActive(convoState) && + !convoState.isFetchingHistory && + convoState.items.length === 0 && } + + + + + )} + + + {newMessagesPill.show && } + ) } diff --git a/src/screens/Messages/Conversation/index.tsx b/src/screens/Messages/Conversation/index.tsx index af9064cc30..d21887de35 100644 --- a/src/screens/Messages/Conversation/index.tsx +++ b/src/screens/Messages/Conversation/index.tsx @@ -1,196 +1,192 @@ import React, {useCallback} from 'react' -import {TouchableOpacity, View} from 'react-native' -import {KeyboardProvider} from 'react-native-keyboard-controller' -import {AppBskyActorDefs} from '@atproto/api' -import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' +import {View} from 'react-native' +import {AppBskyActorDefs, moderateProfile, ModerationOpts} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {useFocusEffect, useNavigation} from '@react-navigation/native' +import {useFocusEffect} from '@react-navigation/native' import {NativeStackScreenProps} from '@react-navigation/native-stack' -import {CommonNavigatorParams, NavigationProp} from '#/lib/routes/types' -import {useGate} from '#/lib/statsig/statsig' +import {CommonNavigatorParams} from '#/lib/routes/types' import {useCurrentConvoId} from '#/state/messages/current-convo-id' -import {BACK_HITSLOP} from 'lib/constants' +import {useModerationOpts} from '#/state/preferences/moderation-opts' +import {useProfileQuery} from '#/state/queries/profile' import {isWeb} from 'platform/detection' -import {ConvoProvider, useConvo} from 'state/messages/convo' +import {useProfileShadow} from 'state/cache/profile-shadow' +import {ConvoProvider, isConvoActive, useConvo} from 'state/messages/convo' import {ConvoStatus} from 'state/messages/convo/types' -import {PreviewableUserAvatar} from 'view/com/util/UserAvatar' +import {useSetMinimalShellMode} from 'state/shell' import {CenteredView} from 'view/com/util/Views' import {MessagesList} from '#/screens/Messages/Conversation/MessagesList' import {atoms as a, useBreakpoints, useTheme} from '#/alf' -import {ConvoMenu} from '#/components/dms/ConvoMenu' +import {MessagesListBlockedFooter} from '#/components/dms/MessagesListBlockedFooter' +import {MessagesListHeader} from '#/components/dms/MessagesListHeader' import {Error} from '#/components/Error' -import {ListMaybePlaceholder} from '#/components/Lists' -import {Text} from '#/components/Typography' -import {ClipClopGate} from '../gate' +import {Loader} from '#/components/Loader' type Props = NativeStackScreenProps< CommonNavigatorParams, 'MessagesConversation' > export function MessagesConversationScreen({route}: Props) { - const gate = useGate() + const {gtMobile} = useBreakpoints() + const setMinimalShellMode = useSetMinimalShellMode() + const convoId = route.params.conversation const {setCurrentConvoId} = useCurrentConvoId() useFocusEffect( useCallback(() => { setCurrentConvoId(convoId) + + if (isWeb && !gtMobile) { + setMinimalShellMode(true) + } else { + setMinimalShellMode(false) + } + return () => { setCurrentConvoId(undefined) + setMinimalShellMode(false) } - }, [convoId, setCurrentConvoId]), + }, [gtMobile, convoId, setCurrentConvoId, setMinimalShellMode]), ) - if (!gate('dms')) return - return ( - + ) } function Inner() { - const convo = useConvo() + const t = useTheme() + const convoState = useConvo() const {_} = useLingui() - if ( - convo.status === ConvoStatus.Uninitialized || - convo.status === ConvoStatus.Initializing - ) { - return ( - -
- - - ) - } + const moderationOpts = useModerationOpts() + const {data: recipient} = useProfileQuery({ + did: convoState.recipients?.[0].did, + }) - if (convo.status === ConvoStatus.Error) { + // Because we want to give the list a chance to asynchronously scroll to the end before it is visible to the user, + // we use `hasScrolled` to determine when to render. With that said however, there is a chance that the chat will be + // empty. So, we also check for that possible state as well and render once we can. + const [hasScrolled, setHasScrolled] = React.useState(false) + const readyToShow = + hasScrolled || + (isConvoActive(convoState) && + !convoState.isFetchingHistory && + convoState.items.length === 0) + + // Any time that we re-render the `Initializing` state, we have to reset `hasScrolled` to false. After entering this + // state, we know that we're resetting the list of messages and need to re-scroll to the bottom when they get added. + React.useEffect(() => { + if (convoState.status === ConvoStatus.Initializing) { + setHasScrolled(false) + } + }, [convoState.status]) + + if (convoState.status === ConvoStatus.Error) { return ( -
+ convo.error.retry()} + onRetry={() => convoState.error.retry()} /> ) } - /* - * Any other convo states (atm) are "ready" states - */ - return ( - - -
- - - - ) -} - -let Header = ({ - profile, -}: { - profile?: AppBskyActorDefs.ProfileViewBasic -}): React.ReactNode => { - const t = useTheme() - const {_} = useLingui() - const {gtTablet} = useBreakpoints() - const navigation = useNavigation() - const convo = useConvo() - - const onPressBack = useCallback(() => { - if (isWeb) { - navigation.replace('Messages') - } else { - navigation.goBack() - } - }, [navigation]) - - const onUpdateConvo = useCallback(() => { - // TODO eric update muted state - }, []) - - return ( - - {!gtTablet ? ( - - + {!readyToShow && } + + {moderationOpts && recipient ? ( + - - ) : ( - - )} - - {profile ? ( - <> - - - {profile.displayName} - - ) : ( <> - - + )} + {!readyToShow && ( + + + + + + )} - {convo.status === ConvoStatus.Ready && profile ? ( - - ) : ( - - )} - + + ) +} + +function InnerReady({ + moderationOpts, + recipient: recipientUnshadowed, + hasScrolled, + setHasScrolled, +}: { + moderationOpts: ModerationOpts + recipient: AppBskyActorDefs.ProfileViewBasic + hasScrolled: boolean + setHasScrolled: React.Dispatch> +}) { + const convoState = useConvo() + const recipient = useProfileShadow(recipientUnshadowed) + + const moderation = React.useMemo(() => { + return moderateProfile(recipient, moderationOpts) + }, [recipient, moderationOpts]) + + const blockInfo = React.useMemo(() => { + const modui = moderation.ui('profileView') + const blocks = modui.alerts.filter(alert => alert.type === 'blocking') + const listBlocks = blocks.filter(alert => alert.source.type === 'list') + const userBlock = blocks.find(alert => alert.source.type === 'user') + return { + listBlocks, + userBlock, + } + }, [moderation]) + + return ( + <> + + {isConvoActive(convoState) && ( + 0} + blockInfo={blockInfo} + /> + } + /> + )} + ) } -Header = React.memo(Header) diff --git a/src/screens/Messages/List/ChatListItem.tsx b/src/screens/Messages/List/ChatListItem.tsx new file mode 100644 index 0000000000..d5658249d7 --- /dev/null +++ b/src/screens/Messages/List/ChatListItem.tsx @@ -0,0 +1,318 @@ +import React, {useCallback, useState} from 'react' +import {GestureResponderEvent, View} from 'react-native' +import { + AppBskyActorDefs, + ChatBskyConvoDefs, + moderateProfile, + ModerationOpts, +} from '@atproto/api' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {isNative} from '#/platform/detection' +import {useProfileShadow} from '#/state/cache/profile-shadow' +import {useModerationOpts} from '#/state/preferences/moderation-opts' +import {useSession} from '#/state/session' +import {useHaptics} from 'lib/haptics' +import {logEvent} from 'lib/statsig/statsig' +import {sanitizeDisplayName} from 'lib/strings/display-names' +import {TimeElapsed} from '#/view/com/util/TimeElapsed' +import {UserAvatar} from '#/view/com/util/UserAvatar' +import {atoms as a, useBreakpoints, useTheme, web} from '#/alf' +import {ConvoMenu} from '#/components/dms/ConvoMenu' +import {Bell2Off_Filled_Corner0_Rounded as BellStroke} from '#/components/icons/Bell2' +import {Link} from '#/components/Link' +import {useMenuControl} from '#/components/Menu' +import {PostAlerts} from '#/components/moderation/PostAlerts' +import {Text} from '#/components/Typography' + +export let ChatListItem = ({ + convo, +}: { + convo: ChatBskyConvoDefs.ConvoView +}): React.ReactNode => { + const {currentAccount} = useSession() + const moderationOpts = useModerationOpts() + + const otherUser = convo.members.find( + member => member.did !== currentAccount?.did, + ) + + if (!otherUser || !moderationOpts) { + return null + } + + return ( + + ) +} + +ChatListItem = React.memo(ChatListItem) + +function ChatListItemReady({ + convo, + profile: profileUnshadowed, + moderationOpts, +}: { + convo: ChatBskyConvoDefs.ConvoView + profile: AppBskyActorDefs.ProfileViewBasic + moderationOpts: ModerationOpts +}) { + const t = useTheme() + const {_} = useLingui() + const {currentAccount} = useSession() + const menuControl = useMenuControl() + const {gtMobile} = useBreakpoints() + const profile = useProfileShadow(profileUnshadowed) + const moderation = React.useMemo( + () => moderateProfile(profile, moderationOpts), + [profile, moderationOpts], + ) + const playHaptic = useHaptics() + + const blockInfo = React.useMemo(() => { + const modui = moderation.ui('profileView') + const blocks = modui.alerts.filter(alert => alert.type === 'blocking') + const listBlocks = blocks.filter(alert => alert.source.type === 'list') + const userBlock = blocks.find(alert => alert.source.type === 'user') + return { + listBlocks, + userBlock, + } + }, [moderation]) + + const isDeletedAccount = profile.handle === 'missing.invalid' + const displayName = isDeletedAccount + ? 'Deleted Account' + : sanitizeDisplayName( + profile.displayName || profile.handle, + moderation.ui('displayName'), + ) + + const isDimStyle = convo.muted || moderation.blocked || isDeletedAccount + + let lastMessage = _(msg`No messages yet`) + let lastMessageSentAt: string | null = null + if (ChatBskyConvoDefs.isMessageView(convo.lastMessage)) { + if (convo.lastMessage.sender?.did === currentAccount?.did) { + lastMessage = _(msg`You: ${convo.lastMessage.text}`) + } else { + lastMessage = convo.lastMessage.text + } + lastMessageSentAt = convo.lastMessage.sentAt + } + if (ChatBskyConvoDefs.isDeletedMessageView(convo.lastMessage)) { + lastMessage = isDeletedAccount + ? _(msg`Conversation deleted`) + : _(msg`Message deleted`) + } + + const [showActions, setShowActions] = useState(false) + + const onMouseEnter = useCallback(() => { + setShowActions(true) + }, []) + + const onMouseLeave = useCallback(() => { + setShowActions(false) + }, []) + + const onFocus = useCallback(e => { + if (e.nativeEvent.relatedTarget == null) return + setShowActions(true) + }, []) + + const onPress = useCallback( + (e: GestureResponderEvent) => { + if (isDeletedAccount) { + e.preventDefault() + return false + } else { + logEvent('chat:open', {logContext: 'ChatsList'}) + } + }, + [isDeletedAccount], + ) + + const onLongPress = useCallback(() => { + playHaptic() + menuControl.open() + }, [playHaptic, menuControl]) + + return ( + + + {({hovered, pressed, focused}) => ( + + + + + + + + {displayName} + + + {lastMessageSentAt && ( + + {({timeElapsed}) => ( + + {' '} + · {timeElapsed} + + )} + + )} + {(convo.muted || moderation.blocked) && ( + + {' '} + ·{' '} + + + )} + + + {!isDeletedAccount && ( + + @{profile.handle} + + )} + + 0 + ? a.font_bold + : t.atoms.text_contrast_high, + isDimStyle && t.atoms.text_contrast_medium, + ]}> + {lastMessage} + + + + + + {convo.unreadCount > 0 && ( + + )} + + )} + + + 0} + hideTrigger={isNative} + blockInfo={blockInfo} + style={[ + a.absolute, + a.h_full, + a.self_end, + a.justify_center, + { + right: a.px_lg.paddingRight, + opacity: !gtMobile || showActions || menuControl.isOpen ? 1 : 0, + }, + ]} + /> + + ) +} diff --git a/src/screens/Messages/List/index.tsx b/src/screens/Messages/List/index.tsx index 6c07073a8c..0b1fe2a958 100644 --- a/src/screens/Messages/List/index.tsx +++ b/src/screens/Messages/List/index.tsx @@ -1,45 +1,50 @@ -/* eslint-disable react/prop-types */ - -import React, {useCallback, useMemo, useState} from 'react' +import React, {useCallback, useEffect, useMemo, useState} from 'react' import {View} from 'react-native' -import {ChatBskyConvoDefs} from '@atproto-labs/api' +import {ChatBskyConvoDefs} from '@atproto/api' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {useNavigation} from '@react-navigation/native' +import {useFocusEffect} from '@react-navigation/native' import {NativeStackScreenProps} from '@react-navigation/native-stack' -import {sha256} from 'js-sha256' +import {useAppState} from '#/lib/hooks/useAppState' import {useInitialNumToRender} from '#/lib/hooks/useInitialNumToRender' -import {MessagesTabNavigatorParams, NavigationProp} from '#/lib/routes/types' -import {useGate} from '#/lib/statsig/statsig' +import {MessagesTabNavigatorParams} from '#/lib/routes/types' import {cleanError} from '#/lib/strings/errors' import {logger} from '#/logger' import {isNative} from '#/platform/detection' -import {useListConvos} from '#/state/queries/messages/list-converations' -import {useSession} from '#/state/session' +import {MESSAGE_SCREEN_POLL_INTERVAL} from '#/state/messages/convo/const' +import {useMessagesEventBus} from '#/state/messages/events' +import {useListConvosQuery} from '#/state/queries/messages/list-converations' import {List} from '#/view/com/util/List' -import {TimeElapsed} from '#/view/com/util/TimeElapsed' -import {UserAvatar} from '#/view/com/util/UserAvatar' import {ViewHeader} from '#/view/com/util/ViewHeader' import {CenteredView} from '#/view/com/util/Views' -import {ScrollView} from '#/view/com/util/Views' import {atoms as a, useBreakpoints, useTheme, web} from '#/alf' import {Button, ButtonIcon, ButtonText} from '#/components/Button' import {DialogControlProps, useDialogControl} from '#/components/Dialog' -import {ConvoMenu} from '#/components/dms/ConvoMenu' -import {NewChat} from '#/components/dms/NewChat' -import * as TextField from '#/components/forms/TextField' +import {NewChat} from '#/components/dms/dialogs/NewChatDialog' +import {MessagesNUX} from '#/components/dms/MessagesNUX' import {useRefreshOnFocus} from '#/components/hooks/useRefreshOnFocus' +import {ArrowRotateCounterClockwise_Stroke2_Corner0_Rounded as Retry} from '#/components/icons/ArrowRotateCounterClockwise' +import {CircleInfo_Stroke2_Corner0_Rounded as CircleInfo} from '#/components/icons/CircleInfo' +import {Message_Stroke2_Corner0_Rounded as Message} from '#/components/icons/Message' import {PlusLarge_Stroke2_Corner0_Rounded as Plus} from '#/components/icons/Plus' import {SettingsSliderVertical_Stroke2_Corner0_Rounded as SettingsSlider} from '#/components/icons/SettingsSlider' import {Link} from '#/components/Link' -import {ListFooter, ListMaybePlaceholder} from '#/components/Lists' -import {useMenuControl} from '#/components/Menu' +import {ListFooter} from '#/components/Lists' +import {Loader} from '#/components/Loader' import {Text} from '#/components/Typography' -import {ClipClopGate} from '../gate' -import {useDmServiceUrlStorage} from '../Temp/useDmServiceUrlStorage' +import {ChatListItem} from './ChatListItem' type Props = NativeStackScreenProps + +function renderItem({item}: {item: ChatBskyConvoDefs.ConvoView}) { + return +} + +function keyExtractor(item: ChatBskyConvoDefs.ConvoView) { + return item.id +} + export function MessagesScreen({navigation, route}: Props) { const {_} = useLingui() const t = useTheme() @@ -47,22 +52,11 @@ export function MessagesScreen({navigation, route}: Props) { const {gtMobile} = useBreakpoints() const pushToConversation = route.params?.pushToConversation - // TEMP - const {serviceUrl, setServiceUrl} = useDmServiceUrlStorage() - const [serviceUrlValue, setServiceUrlValue] = useState(serviceUrl) - const hasValidServiceUrl = useMemo(() => { - const hash = sha256(serviceUrl) - return ( - hash === - 'a32318b49dd3fe6aa6a35c66c13fcc4c1cb6202b24f5a852d9a2279acee4169f' - ) - }, [serviceUrl]) - // Whenever we have `pushToConversation` set, it means we pressed a notification for a chat without being on // this tab. We should immediately push to the conversation after pressing the notification. // After we push, reset with `setParams` so that this effect will fire next time we press a notification, even if // the conversation is the same as before - React.useEffect(() => { + useEffect(() => { if (pushToConversation) { navigation.navigate('MessagesConversation', { conversation: pushToConversation, @@ -71,18 +65,38 @@ export function MessagesScreen({navigation, route}: Props) { } }, [navigation, pushToConversation]) + // Request the poll interval to be 10s (or whatever the MESSAGE_SCREEN_POLL_INTERVAL is set to in the future) + // but only when the screen is active + const messagesBus = useMessagesEventBus() + const state = useAppState() + const isActive = state === 'active' + useFocusEffect( + useCallback(() => { + if (isActive) { + const unsub = messagesBus.requestPollInterval( + MESSAGE_SCREEN_POLL_INTERVAL, + ) + return () => unsub() + } + }, [messagesBus, isActive]), + ) + const renderButton = useCallback(() => { return ( - + label={_(msg`Chat settings`)} + size="small" + variant="ghost" + color="secondary" + shape="square" + style={[a.justify_center]}> + ) - }, [_, t.atoms.text]) + }, [_, t]) - const initialNumToRender = useInitialNumToRender() + const initialNumToRender = useInitialNumToRender(80) const [isPTRing, setIsPTRing] = useState(false) const { @@ -91,14 +105,13 @@ export function MessagesScreen({navigation, route}: Props) { isFetchingNextPage, hasNextPage, fetchNextPage, + isError, error, refetch, - } = useListConvos({refetchInterval: 15_000}) + } = useListConvosQuery() useRefreshOnFocus(refetch) - const isError = !!error - const conversations = useMemo(() => { if (data?.pages) { return data.pages.flatMap(page => page.convos) @@ -135,80 +148,99 @@ export function MessagesScreen({navigation, route}: Props) { navigation.navigate('MessagesSettings') }, [navigation]) - const renderItem = useCallback( - ({item}: {item: ChatBskyConvoDefs.ConvoView}) => { - return - }, - [], - ) - - const gate = useGate() - if (!gate('dms')) return - - if (!hasValidServiceUrl) { - return ( - - - Service URL - - setServiceUrlValue(text)} - autoCapitalize="none" - keyboardType="url" - label="https://" - /> - - - - - ) - } - if (conversations.length < 1) { return ( - {gtMobile ? ( - + + + + {gtMobile ? ( - - ) : ( - - )} - {!isError && } - )} - errorMessage={cleanError(error)} - onRetry={isError ? refetch : undefined} - hideBackButton - /> + + {isLoading ? ( + + + + ) : ( + <> + {isError ? ( + <> + + + + Whoops! + + + {cleanError(error)} + + + + + + ) : ( + <> + + + + Nothing here + + + You have no conversations yet. Start one! + + + + )} + + )} + + + {!isLoading && !isError && ( + + )} ) } return ( + {!gtMobile && ( item.id} + keyExtractor={keyExtractor} refreshing={isPTRing} onRefresh={onRefresh} onEndReached={onEndReached} @@ -237,9 +269,12 @@ export function MessagesScreen({navigation, route}: Props) { error={cleanError(error)} onRetry={fetchNextPage} style={{borderColor: 'transparent'}} + hasNextPage={hasNextPage} + showEndMessage={true} + endMessageText={_(msg`No more conversations to show`)} /> } - onEndReachedThreshold={3} + onEndReachedThreshold={isNative ? 1.5 : 0} initialNumToRender={initialNumToRender} windowSize={11} // @ts-ignore our .web version only -sfn @@ -249,150 +284,6 @@ export function MessagesScreen({navigation, route}: Props) { ) } -function ChatListItem({convo}: {convo: ChatBskyConvoDefs.ConvoView}) { - const t = useTheme() - const {_} = useLingui() - const {currentAccount} = useSession() - const menuControl = useMenuControl() - const {gtMobile} = useBreakpoints() - - let lastMessage = _(msg`No messages yet`) - let lastMessageSentAt: string | null = null - if (ChatBskyConvoDefs.isMessageView(convo.lastMessage)) { - if (convo.lastMessage.sender?.did === currentAccount?.did) { - lastMessage = _(msg`You: ${convo.lastMessage.text}`) - } else { - lastMessage = convo.lastMessage.text - } - lastMessageSentAt = convo.lastMessage.sentAt - } - if (ChatBskyConvoDefs.isDeletedMessageView(convo.lastMessage)) { - lastMessage = _(msg`Message deleted`) - } - - const otherUser = convo.members.find( - member => member.did !== currentAccount?.did, - ) - - const navigation = useNavigation() - const [showActions, setShowActions] = React.useState(false) - - const onMouseEnter = React.useCallback(() => { - setShowActions(true) - }, []) - - const onMouseLeave = React.useCallback(() => { - setShowActions(false) - }, []) - - const onFocus = React.useCallback(e => { - if (e.nativeEvent.relatedTarget == null) return - setShowActions(true) - }, []) - - const onPress = React.useCallback(() => { - navigation.push('MessagesConversation', { - conversation: convo.id, - }) - }, [convo.id, navigation]) - - if (!otherUser) { - return null - } - - return ( - - ) -} - function DesktopHeader({ newChatControl, onNavigateToSettings, @@ -412,37 +303,37 @@ function DesktopHeader({ Messages - + {gtTablet && ( - - - ) -} diff --git a/src/screens/Onboarding/StepFinished.tsx b/src/screens/Onboarding/StepFinished.tsx index e7054fb1ff..c75dd4fa74 100644 --- a/src/screens/Onboarding/StepFinished.tsx +++ b/src/screens/Onboarding/StepFinished.tsx @@ -2,24 +2,25 @@ import React from 'react' import {View} from 'react-native' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {useQueryClient} from '@tanstack/react-query' import {useAnalytics} from '#/lib/analytics/analytics' import {BSKY_APP_ACCOUNT_DID} from '#/lib/constants' import {logEvent} from '#/lib/statsig/statsig' import {logger} from '#/logger' -import {useSetSaveFeedsMutation} from '#/state/queries/preferences' +import {preferencesQueryKey} from '#/state/queries/preferences' +import {RQKEY as profileRQKey} from '#/state/queries/profile' import {useAgent} from '#/state/session' import {useOnboardingDispatch} from '#/state/shell' +import {uploadBlob} from 'lib/api' +import {useRequestNotificationsPermission} from 'lib/notifications/notifications' import { DescriptionText, OnboardingControls, TitleText, } from '#/screens/Onboarding/Layout' import {Context} from '#/screens/Onboarding/state' -import { - bulkWriteFollows, - sortPrimaryAlgorithmFeeds, -} from '#/screens/Onboarding/util' +import {bulkWriteFollows} from '#/screens/Onboarding/util' import {atoms as a, useTheme} from '#/alf' import {Button, ButtonIcon, ButtonText} from '#/components/Button' import {IconCircle} from '#/components/IconCircle' @@ -37,38 +38,43 @@ export function StepFinished() { const {state, dispatch} = React.useContext(Context) const onboardDispatch = useOnboardingDispatch() const [saving, setSaving] = React.useState(false) - const {mutateAsync: saveFeeds} = useSetSaveFeedsMutation() - const {getAgent} = useAgent() + const queryClient = useQueryClient() + const agent = useAgent() + const requestNotificationsPermission = useRequestNotificationsPermission() const finishOnboarding = React.useCallback(async () => { setSaving(true) - const { - interestsStepResults, - suggestedAccountsStepResults, - algoFeedsStepResults, - topicalFeedsStepResults, - } = state + const {interestsStepResults, profileStepResults} = state const {selectedInterests} = interestsStepResults - const selectedFeeds = [ - ...sortPrimaryAlgorithmFeeds(algoFeedsStepResults.feedUris), - ...topicalFeedsStepResults.feedUris, - ] - try { await Promise.all([ - bulkWriteFollows( - getAgent, - suggestedAccountsStepResults.accountDids.concat(BSKY_APP_ACCOUNT_DID), - ), - // these must be serial + bulkWriteFollows(agent, [BSKY_APP_ACCOUNT_DID]), (async () => { - await getAgent().setInterestsPref({tags: selectedInterests}) - await saveFeeds({ - saved: selectedFeeds, - pinned: selectedFeeds, + await agent.setInterestsPref({tags: selectedInterests}) + })(), + (async () => { + const {imageUri, imageMime} = profileStepResults + if (imageUri && imageMime) { + const blobPromise = uploadBlob(agent, imageUri, imageMime) + await agent.upsertProfile(async existing => { + existing = existing ?? {} + const res = await blobPromise + if (res.data.blob) { + existing.avatar = res.data.blob + } + return existing + }) + } + logEvent('onboarding:finished:avatarResult', { + avatarResult: profileStepResults.isCreatedAvatar + ? 'created' + : profileStepResults.image + ? 'uploaded' + : 'default', }) })(), + requestNotificationsPermission('AfterOnboarding'), ]) } catch (e: any) { logger.info(`onboarding: bulk save failed`) @@ -76,13 +82,34 @@ export function StepFinished() { // don't alert the user, just let them into their account } + // Try to ensure that prefs and profile are up-to-date by the time we render Home. + await Promise.all([ + queryClient.invalidateQueries({ + queryKey: preferencesQueryKey, + }), + queryClient.invalidateQueries({ + queryKey: profileRQKey(agent.session?.did ?? ''), + }), + ]).catch(e => { + logger.error(e) + // Keep going. + }) + setSaving(false) dispatch({type: 'finish'}) onboardDispatch({type: 'finish'}) track('OnboardingV2:StepFinished:End') track('OnboardingV2:Complete') logEvent('onboarding:finished:nextPressed', {}) - }, [state, dispatch, onboardDispatch, setSaving, saveFeeds, track, getAgent]) + }, [ + state, + queryClient, + agent, + dispatch, + onboardDispatch, + track, + requestNotificationsPermission, + ]) React.useEffect(() => { track('OnboardingV2:StepFinished:Start') diff --git a/src/screens/Onboarding/StepFollowingFeed.tsx b/src/screens/Onboarding/StepFollowingFeed.tsx deleted file mode 100644 index a1c7299f02..0000000000 --- a/src/screens/Onboarding/StepFollowingFeed.tsx +++ /dev/null @@ -1,161 +0,0 @@ -import React from 'react' -import {View} from 'react-native' -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' - -import {useAnalytics} from '#/lib/analytics/analytics' -import {logEvent} from '#/lib/statsig/statsig' -import { - usePreferencesQuery, - useSetFeedViewPreferencesMutation, -} from 'state/queries/preferences' -import { - DescriptionText, - OnboardingControls, - TitleText, -} from '#/screens/Onboarding/Layout' -import {Context} from '#/screens/Onboarding/state' -import {atoms as a} from '#/alf' -import {Button, ButtonIcon, ButtonText} from '#/components/Button' -import {Divider} from '#/components/Divider' -import * as Toggle from '#/components/forms/Toggle' -import {IconCircle} from '#/components/IconCircle' -import {ChevronRight_Stroke2_Corner0_Rounded as ChevronRight} from '#/components/icons/Chevron' -import {FilterTimeline_Stroke2_Corner0_Rounded as FilterTimeline} from '#/components/icons/FilterTimeline' -import {Text} from '#/components/Typography' - -export function StepFollowingFeed() { - const {_} = useLingui() - const {track} = useAnalytics() - const {dispatch} = React.useContext(Context) - - const {data: preferences} = usePreferencesQuery() - const {mutate: setFeedViewPref, variables} = - useSetFeedViewPreferencesMutation() - - const showReplies = !( - variables?.hideReplies ?? preferences?.feedViewPrefs.hideReplies - ) - const showReposts = !( - variables?.hideReposts ?? preferences?.feedViewPrefs.hideReposts - ) - const showQuotes = !( - variables?.hideQuotePosts ?? preferences?.feedViewPrefs.hideQuotePosts - ) - - const onContinue = React.useCallback(() => { - dispatch({type: 'next'}) - track('OnboardingV2:StepFollowingFeed:End') - logEvent('onboarding:followingFeed:nextPressed', {}) - }, [track, dispatch]) - - React.useEffect(() => { - track('OnboardingV2:StepFollowingFeed:Start') - }, [track]) - - return ( - // Hack for now to move the image container up - - - - - Your default feed is "Following" - - - It shows posts from the people you follow as they happen. - - - - { - setFeedViewPref({ - hideReplies: showReplies, - }) - }}> - - - Show replies in Following - - - - - - { - setFeedViewPref({ - hideReposts: showReposts, - }) - }}> - - - Show reposts in Following - - - - - - { - setFeedViewPref({ - hideQuotePosts: showQuotes, - }) - }}> - - - Show quotes in Following - - - - - - - - You can change these settings later. - - - - - - - ) -} diff --git a/src/screens/Onboarding/StepInterests/index.tsx b/src/screens/Onboarding/StepInterests/index.tsx index 174488a34f..866ea5c2f7 100644 --- a/src/screens/Onboarding/StepInterests/index.tsx +++ b/src/screens/Onboarding/StepInterests/index.tsx @@ -31,21 +31,21 @@ import {Text} from '#/components/Typography' export function StepInterests() { const {_} = useLingui() const t = useTheme() - const {track} = useAnalytics() const {gtMobile} = useBreakpoints() + const {track} = useAnalytics() + const {state, dispatch, interestsDisplayNames} = React.useContext(Context) const [saving, setSaving] = React.useState(false) const [interests, setInterests] = React.useState( state.interestsStepResults.selectedInterests.map(i => i), ) const onboardDispatch = useOnboardingDispatch() - const {getAgent} = useAgent() + const agent = useAgent() const {isLoading, isError, error, data, refetch, isFetching} = useQuery({ queryKey: ['interests'], queryFn: async () => { try { - const {data} = - await getAgent().app.bsky.unspecced.getTaggedSuggestions() + const {data} = await agent.app.bsky.unspecced.getTaggedSuggestions() return data.suggestions.reduce( (agg, s) => { const {tag, subject, subjectType} = s diff --git a/src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx b/src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx deleted file mode 100644 index 7563bece10..0000000000 --- a/src/screens/Onboarding/StepModeration/AdultContentEnabledPref.tsx +++ /dev/null @@ -1,131 +0,0 @@ -import React from 'react' -import {View} from 'react-native' -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' -import {UseMutateFunction} from '@tanstack/react-query' - -import {logger} from '#/logger' -import {isIOS} from '#/platform/detection' -import {usePreferencesQuery} from '#/state/queries/preferences' -import * as Toast from '#/view/com/util/Toast' -import {atoms as a, useTheme} from '#/alf' -import * as Toggle from '#/components/forms/Toggle' -import {CircleInfo_Stroke2_Corner0_Rounded as CircleInfo} from '#/components/icons/CircleInfo' -import * as Prompt from '#/components/Prompt' -import {Text} from '#/components/Typography' - -function Card({children}: React.PropsWithChildren<{}>) { - const t = useTheme() - return ( - - {children} - - ) -} - -export function AdultContentEnabledPref({ - mutate, - variables, -}: { - mutate: UseMutateFunction - variables: {enabled: boolean} | undefined -}) { - const {_} = useLingui() - const t = useTheme() - const prompt = Prompt.usePromptControl() - - // Reuse logic here form ContentFilteringSettings.tsx - const {data: preferences} = usePreferencesQuery() - - const onToggleAdultContent = React.useCallback(async () => { - if (isIOS) { - prompt.open() - return - } - - try { - mutate({ - enabled: !( - variables?.enabled ?? preferences?.moderationPrefs.adultContentEnabled - ), - }) - } catch (e) { - Toast.show( - _(msg`There was an issue syncing your preferences with the server`), - ) - logger.error('Failed to update preferences with server', {error: e}) - } - }, [variables, preferences, mutate, _, prompt]) - - if (!preferences) return null - - return ( - <> - {preferences.userAge && preferences.userAge >= 18 ? ( - - - - - Enable Adult Content - - - - - - ) : ( - - - - You must be 18 years or older to enable adult content - - - )} - - - - Adult Content - - - - Due to Apple policies, adult content can only be enabled on the web - after completing sign up. - - - - prompt.close()} cta={_(msg`OK`)} /> - - - - ) -} diff --git a/src/screens/Onboarding/StepModeration/ModerationOption.tsx b/src/screens/Onboarding/StepModeration/ModerationOption.tsx deleted file mode 100644 index d6334e6bda..0000000000 --- a/src/screens/Onboarding/StepModeration/ModerationOption.tsx +++ /dev/null @@ -1,99 +0,0 @@ -import React from 'react' -import {View} from 'react-native' -import {InterpretedLabelValueDefinition, LabelPreference} from '@atproto/api' -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' - -import {useGlobalLabelStrings} from '#/lib/moderation/useGlobalLabelStrings' -import { - usePreferencesQuery, - usePreferencesSetContentLabelMutation, -} from '#/state/queries/preferences' -import {atoms as a, useTheme} from '#/alf' -import * as ToggleButton from '#/components/forms/ToggleButton' -import {Text} from '#/components/Typography' - -export function ModerationOption({ - labelValueDefinition, - disabled, -}: { - labelValueDefinition: InterpretedLabelValueDefinition - disabled?: boolean -}) { - const {_} = useLingui() - const t = useTheme() - const {data: preferences} = usePreferencesQuery() - const {mutate, variables} = usePreferencesSetContentLabelMutation() - const label = labelValueDefinition.identifier - const visibility = - variables?.visibility ?? preferences?.moderationPrefs.labels?.[label] - - const allLabelStrings = useGlobalLabelStrings() - const labelStrings = - labelValueDefinition.identifier in allLabelStrings - ? allLabelStrings[labelValueDefinition.identifier] - : { - name: labelValueDefinition.identifier, - description: `Labeled "${labelValueDefinition.identifier}"`, - } - - const onChange = React.useCallback( - (vis: string[]) => { - mutate({ - label, - visibility: vis[0] as LabelPreference, - labelerDid: undefined, - }) - }, - [mutate, label], - ) - - const labels = { - hide: _(msg`Hide`), - warn: _(msg`Warn`), - show: _(msg`Show`), - } - - return ( - - - {labelStrings.name} - - {labelStrings.description} - - - - {disabled ? ( - - Hide - - ) : ( - - - {labels.show} - - - {labels.warn} - - - {labels.hide} - - - )} - - - ) -} diff --git a/src/screens/Onboarding/StepModeration/index.tsx b/src/screens/Onboarding/StepModeration/index.tsx deleted file mode 100644 index d494f48dd1..0000000000 --- a/src/screens/Onboarding/StepModeration/index.tsx +++ /dev/null @@ -1,110 +0,0 @@ -import React from 'react' -import {View} from 'react-native' -import {LABELS} from '@atproto/api' -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' - -import {useAnalytics} from '#/lib/analytics/analytics' -import {logEvent} from '#/lib/statsig/statsig' -import {usePreferencesQuery} from '#/state/queries/preferences' -import {usePreferencesSetAdultContentMutation} from 'state/queries/preferences' -import { - DescriptionText, - OnboardingControls, - TitleText, -} from '#/screens/Onboarding/Layout' -import {Context} from '#/screens/Onboarding/state' -import {AdultContentEnabledPref} from '#/screens/Onboarding/StepModeration/AdultContentEnabledPref' -import {ModerationOption} from '#/screens/Onboarding/StepModeration/ModerationOption' -import {atoms as a} from '#/alf' -import {Button, ButtonIcon, ButtonText} from '#/components/Button' -import {IconCircle} from '#/components/IconCircle' -import {ChevronRight_Stroke2_Corner0_Rounded as ChevronRight} from '#/components/icons/Chevron' -import {EyeSlash_Stroke2_Corner0_Rounded as EyeSlash} from '#/components/icons/EyeSlash' -import {Loader} from '#/components/Loader' - -export function StepModeration() { - const {_} = useLingui() - const {track} = useAnalytics() - const {state, dispatch} = React.useContext(Context) - const {data: preferences} = usePreferencesQuery() - const {mutate, variables} = usePreferencesSetAdultContentMutation() - - // We need to know if the screen is mounted so we know if we want to run entering animations - // https://github.com/software-mansion/react-native-reanimated/discussions/2513 - const isMounted = React.useRef(false) - React.useLayoutEffect(() => { - isMounted.current = true - }, []) - - const adultContentEnabled = !!( - (variables && variables.enabled) || - (!variables && preferences?.moderationPrefs.adultContentEnabled) - ) - - const onContinue = React.useCallback(() => { - dispatch({type: 'next'}) - track('OnboardingV2:StepModeration:End') - logEvent('onboarding:moderation:nextPressed', {}) - }, [track, dispatch]) - - React.useEffect(() => { - track('OnboardingV2:StepModeration:Start') - }, [track]) - - return ( - - - - - You're in control - - - - Select what you want to see (or not see), and we’ll handle the rest. - - - - {!preferences ? ( - - - - ) : ( - <> - - - - - - - - - - )} - - - - - - ) -} diff --git a/src/screens/Onboarding/StepProfile/AvatarCircle.tsx b/src/screens/Onboarding/StepProfile/AvatarCircle.tsx new file mode 100644 index 0000000000..1be38b0d5f --- /dev/null +++ b/src/screens/Onboarding/StepProfile/AvatarCircle.tsx @@ -0,0 +1,77 @@ +import React from 'react' +import {View} from 'react-native' +import {Image as ExpoImage} from 'expo-image' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {AvatarCreatorCircle} from '#/screens/Onboarding/StepProfile/AvatarCreatorCircle' +import {useAvatar} from '#/screens/Onboarding/StepProfile/index' +import {atoms as a, useTheme} from '#/alf' +import {Button, ButtonIcon} from '#/components/Button' +import {Pencil_Stroke2_Corner0_Rounded as Pencil} from '#/components/icons/Pencil' +import {StreamingLive_Stroke2_Corner0_Rounded as StreamingLive} from '#/components/icons/StreamingLive' + +export function AvatarCircle({ + openLibrary, + openCreator, +}: { + openLibrary: () => unknown + openCreator: () => unknown +}) { + const {_} = useLingui() + const t = useTheme() + const {avatar} = useAvatar() + + const styles = React.useMemo( + () => ({ + imageContainer: [ + a.rounded_full, + a.overflow_hidden, + a.align_center, + a.justify_center, + a.border, + t.atoms.border_contrast_low, + t.atoms.bg_contrast_25, + { + height: 200, + width: 200, + }, + ], + }), + [t.atoms.bg_contrast_25, t.atoms.border_contrast_low], + ) + + return ( + + {avatar.useCreatedAvatar ? ( + + ) : avatar.image ? ( + + ) : ( + + + + )} + + + + + ) +} diff --git a/src/screens/Onboarding/StepProfile/AvatarCreatorCircle.tsx b/src/screens/Onboarding/StepProfile/AvatarCreatorCircle.tsx new file mode 100644 index 0000000000..1cd68eb61b --- /dev/null +++ b/src/screens/Onboarding/StepProfile/AvatarCreatorCircle.tsx @@ -0,0 +1,43 @@ +import React from 'react' +import {View} from 'react-native' + +import {Avatar} from '#/screens/Onboarding/StepProfile/index' +import {atoms as a, useTheme} from '#/alf' + +export function AvatarCreatorCircle({ + avatar, + size = 125, +}: { + avatar: Avatar + size?: number +}) { + const t = useTheme() + const Icon = avatar.placeholder.component + + const styles = React.useMemo( + () => ({ + imageContainer: [ + a.rounded_full, + a.overflow_hidden, + a.align_center, + a.justify_center, + a.border, + t.atoms.border_contrast_high, + { + height: size, + width: size, + backgroundColor: avatar.backgroundColor, + }, + ], + }), + [avatar.backgroundColor, size, t.atoms.border_contrast_high], + ) + + return ( + + + + + + ) +} diff --git a/src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx b/src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx new file mode 100644 index 0000000000..98c01ce7dc --- /dev/null +++ b/src/screens/Onboarding/StepProfile/AvatarCreatorItems.tsx @@ -0,0 +1,145 @@ +import React from 'react' +import {View} from 'react-native' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {Avatar} from '#/screens/Onboarding/StepProfile/index' +import { + AvatarColor, + avatarColors, + emojiItems, + EmojiName, + emojiNames, +} from '#/screens/Onboarding/StepProfile/types' +import {atoms as a, useTheme} from '#/alf' +import {Button, ButtonIcon} from '#/components/Button' +import {Text} from '#/components/Typography' + +const ACTIVE_BORDER_WIDTH = 3 +const ACTIVE_BORDER_STYLES = { + top: -ACTIVE_BORDER_WIDTH, + bottom: -ACTIVE_BORDER_WIDTH, + left: -ACTIVE_BORDER_WIDTH, + right: -ACTIVE_BORDER_WIDTH, + opacity: 0.5, + borderWidth: 3, +} + +export function AvatarCreatorItems({ + type, + avatar, + setAvatar, +}: { + type: 'emojis' | 'colors' + avatar: Avatar + setAvatar: React.Dispatch> +}) { + const {_} = useLingui() + const t = useTheme() + const isEmojis = type === 'emojis' + + const onSelectEmoji = React.useCallback( + (emoji: EmojiName) => { + setAvatar(prev => ({ + ...prev, + placeholder: emojiItems[emoji], + })) + }, + [setAvatar], + ) + + const onSelectColor = React.useCallback( + (color: AvatarColor) => { + setAvatar(prev => ({ + ...prev, + backgroundColor: color, + })) + }, + [setAvatar], + ) + + return ( + + + {isEmojis ? ( + Select an emoji + ) : ( + Select a color + )} + + + + {isEmojis + ? emojiNames.map(emojiName => ( + + )) + : avatarColors.map(color => ( + + ))} + + + ) +} diff --git a/src/screens/Onboarding/StepProfile/PlaceholderCanvas.tsx b/src/screens/Onboarding/StepProfile/PlaceholderCanvas.tsx new file mode 100644 index 0000000000..29ba39a0b4 --- /dev/null +++ b/src/screens/Onboarding/StepProfile/PlaceholderCanvas.tsx @@ -0,0 +1,67 @@ +import React from 'react' +import {View} from 'react-native' +import ViewShot from 'react-native-view-shot' + +import {useAvatar} from '#/screens/Onboarding/StepProfile/index' +import {atoms as a} from '#/alf' + +const SIZE_MULTIPLIER = 1.5 + +export interface PlaceholderCanvasRef { + capture: () => Promise +} + +// This component is supposed to be invisible to the user. We only need this for ViewShot to have something to +// "screenshot". +export const PlaceholderCanvas = React.forwardRef( + function PlaceholderCanvas({}, ref) { + const {avatar} = useAvatar() + const viewshotRef = React.useRef() + const Icon = avatar.placeholder.component + + const styles = React.useMemo( + () => ({ + container: [a.absolute, {top: -2000}], + imageContainer: [ + a.align_center, + a.justify_center, + {height: 150 * SIZE_MULTIPLIER, width: 150 * SIZE_MULTIPLIER}, + ], + }), + [], + ) + + React.useImperativeHandle(ref, () => ({ + // @ts-ignore this library doesn't have types + capture: viewshotRef.current.capture, + })) + + return ( + + + + + + + + ) + }, +) diff --git a/src/screens/Onboarding/StepProfile/index.tsx b/src/screens/Onboarding/StepProfile/index.tsx new file mode 100644 index 0000000000..e0a10419d6 --- /dev/null +++ b/src/screens/Onboarding/StepProfile/index.tsx @@ -0,0 +1,334 @@ +import React from 'react' +import {View} from 'react-native' +import {Image as ExpoImage} from 'expo-image' +import { + ImagePickerOptions, + launchImageLibraryAsync, + MediaTypeOptions, +} from 'expo-image-picker' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {useAnalytics} from '#/lib/analytics/analytics' +import {logEvent, useGate} from '#/lib/statsig/statsig' +import {usePhotoLibraryPermission} from 'lib/hooks/usePermissions' +import {compressIfNeeded} from 'lib/media/manip' +import {openCropper} from 'lib/media/picker' +import {getDataUriSize} from 'lib/media/util' +import {useRequestNotificationsPermission} from 'lib/notifications/notifications' +import {isNative, isWeb} from 'platform/detection' +import { + DescriptionText, + OnboardingControls, + TitleText, +} from '#/screens/Onboarding/Layout' +import {Context} from '#/screens/Onboarding/state' +import {AvatarCircle} from '#/screens/Onboarding/StepProfile/AvatarCircle' +import {AvatarCreatorCircle} from '#/screens/Onboarding/StepProfile/AvatarCreatorCircle' +import {AvatarCreatorItems} from '#/screens/Onboarding/StepProfile/AvatarCreatorItems' +import { + PlaceholderCanvas, + PlaceholderCanvasRef, +} from '#/screens/Onboarding/StepProfile/PlaceholderCanvas' +import {atoms as a, useBreakpoints, useTheme} from '#/alf' +import {Button, ButtonIcon, ButtonText} from '#/components/Button' +import * as Dialog from '#/components/Dialog' +import {IconCircle} from '#/components/IconCircle' +import {ChevronRight_Stroke2_Corner0_Rounded as ChevronRight} from '#/components/icons/Chevron' +import {CircleInfo_Stroke2_Corner0_Rounded} from '#/components/icons/CircleInfo' +import {StreamingLive_Stroke2_Corner0_Rounded as StreamingLive} from '#/components/icons/StreamingLive' +import {Text} from '#/components/Typography' +import {AvatarColor, avatarColors, Emoji, emojiItems} from './types' + +export interface Avatar { + image?: { + path: string + mime: string + size: number + width: number + height: number + } + backgroundColor: AvatarColor + placeholder: Emoji + useCreatedAvatar: boolean +} + +interface IAvatarContext { + avatar: Avatar + setAvatar: React.Dispatch> +} + +const AvatarContext = React.createContext({} as IAvatarContext) +export const useAvatar = () => React.useContext(AvatarContext) + +const randomColor = + avatarColors[Math.floor(Math.random() * avatarColors.length)] + +export function StepProfile() { + const {_} = useLingui() + const t = useTheme() + const {gtMobile} = useBreakpoints() + const {track} = useAnalytics() + const {requestPhotoAccessIfNeeded} = usePhotoLibraryPermission() + const gate = useGate() + const requestNotificationsPermission = useRequestNotificationsPermission() + + const creatorControl = Dialog.useDialogControl() + const [error, setError] = React.useState('') + + const {state, dispatch} = React.useContext(Context) + const [avatar, setAvatar] = React.useState({ + image: state.profileStepResults?.image, + placeholder: state.profileStepResults.creatorState?.emoji || emojiItems.at, + backgroundColor: + state.profileStepResults.creatorState?.backgroundColor || randomColor, + useCreatedAvatar: state.profileStepResults.isCreatedAvatar, + }) + + const canvasRef = React.useRef(null) + + React.useEffect(() => { + track('OnboardingV2:StepProfile:Start') + }, [track]) + + React.useEffect(() => { + requestNotificationsPermission('StartOnboarding') + }, [gate, requestNotificationsPermission]) + + const openPicker = React.useCallback( + async (opts?: ImagePickerOptions) => { + const response = await launchImageLibraryAsync({ + exif: false, + mediaTypes: MediaTypeOptions.Images, + quality: 1, + ...opts, + }) + + return (response.assets ?? []) + .slice(0, 1) + .filter(asset => { + if ( + !asset.mimeType?.startsWith('image/') || + (!asset.mimeType?.endsWith('jpeg') && + !asset.mimeType?.endsWith('jpg') && + !asset.mimeType?.endsWith('png')) + ) { + setError(_(msg`Only .jpg and .png files are supported`)) + return false + } + return true + }) + .map(image => ({ + mime: 'image/jpeg', + height: image.height, + width: image.width, + path: image.uri, + size: getDataUriSize(image.uri), + })) + }, + [_, setError], + ) + + const onContinue = React.useCallback(async () => { + let imageUri = avatar?.image?.path + if (!imageUri || avatar.useCreatedAvatar) { + imageUri = await canvasRef.current?.capture() + } + + if (imageUri) { + dispatch({ + type: 'setProfileStepResults', + image: avatar.image, + imageUri, + imageMime: avatar.image?.mime ?? 'image/jpeg', + isCreatedAvatar: avatar.useCreatedAvatar, + creatorState: { + emoji: avatar.placeholder, + backgroundColor: avatar.backgroundColor, + }, + }) + } + + dispatch({type: 'next'}) + track('OnboardingV2:StepProfile:End') + logEvent('onboarding:profile:nextPressed', {}) + }, [avatar, dispatch, track]) + + const onDoneCreating = React.useCallback(() => { + setAvatar(prev => ({ + ...prev, + image: undefined, + useCreatedAvatar: true, + })) + creatorControl.close() + }, [creatorControl]) + + const openLibrary = React.useCallback(async () => { + if (!(await requestPhotoAccessIfNeeded())) { + return + } + + setError('') + + const items = await openPicker({ + aspect: [1, 1], + }) + let image = items[0] + if (!image) return + + if (!isWeb) { + image = await openCropper({ + mediaType: 'photo', + cropperCircleOverlay: true, + height: image.height, + width: image.width, + path: image.path, + }) + } + image = await compressIfNeeded(image, 1000000) + + // If we are on mobile, prefetching the image will load the image into memory before we try and display it, + // stopping any brief flickers. + if (isNative) { + await ExpoImage.prefetch(image.path) + } + + setAvatar(prev => ({ + ...prev, + image, + useCreatedAvatar: false, + })) + }, [requestPhotoAccessIfNeeded, setAvatar, openPicker, setError]) + + const onSecondaryPress = React.useCallback(() => { + if (avatar.useCreatedAvatar) { + openLibrary() + } else { + creatorControl.open() + } + }, [avatar.useCreatedAvatar, creatorControl, openLibrary]) + + const value = React.useMemo( + () => ({ + avatar, + setAvatar, + }), + [avatar], + ) + + return ( + + + + + Give your profile a face + + + + Help people know you're not a bot by uploading a picture or creating + an avatar. + + + + + + {error && ( + + + {error} + + )} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ) +} diff --git a/src/screens/Onboarding/StepProfile/types.ts b/src/screens/Onboarding/StepProfile/types.ts new file mode 100644 index 0000000000..92a82f101d --- /dev/null +++ b/src/screens/Onboarding/StepProfile/types.ts @@ -0,0 +1,148 @@ +import {Alien_Stroke2_Corner0_Rounded as Alien} from '#/components/icons/Alien' +import {Apple_Stroke2_Corner0_Rounded as Apple} from '#/components/icons/Apple' +import {At_Stroke2_Corner0_Rounded as At} from '#/components/icons/At' +import {Atom_Stroke2_Corner0_Rounded as Atom} from '#/components/icons/Atom' +import {Celebrate_Stroke2_Corner0_Rounded as Celebrate} from '#/components/icons/Celebrate' +import {Coffee_Stroke2_Corner0_Rounded as Coffee} from '#/components/icons/Coffee' +import { + EmojiArc_Stroke2_Corner0_Rounded as EmojiArc, + EmojiHeartEyes_Stroke2_Corner0_Rounded as EmojiHeartEyes, +} from '#/components/icons/Emoji' +import {Explosion_Stroke2_Corner0_Rounded as Explosion} from '#/components/icons/Explosion' +import {GameController_Stroke2_Corner0_Rounded as GameController} from '#/components/icons/GameController' +import {Lab_Stroke2_Corner0_Rounded as Lab} from '#/components/icons/Lab' +import {Leaf_Stroke2_Corner0_Rounded as Leaf} from '#/components/icons/Leaf' +import {MusicNote_Stroke2_Corner0_Rounded as MusicNote} from '#/components/icons/MusicNote' +import {PiggyBank_Stroke2_Corner0_Rounded as PiggyBank} from '#/components/icons/PiggyBank' +import {Pizza_Stroke2_Corner0_Rounded as Pizza} from '#/components/icons/Pizza' +import {Poop_Stroke2_Corner0_Rounded as Poop} from '#/components/icons/Poop' +import {Rose_Stroke2_Corner0_Rounded as Rose} from '#/components/icons/Rose' +import {Shaka_Stroke2_Corner0_Rounded as Shaka} from '#/components/icons/Shaka' +import {UFO_Stroke2_Corner0_Rounded as UFO} from '#/components/icons/UFO' +import {Zap_Stroke2_Corner0_Rounded as Zap} from '#/components/icons/Zap' + +/** + * If you want to add or remove icons from the selection, just add the name to the `emojiNames` array and + * add the item to the `emojiItems` record.. + */ + +export const emojiNames = [ + 'at', + 'arc', + 'heartEyes', + 'alien', + 'apple', + 'atom', + 'celebrate', + 'coffee', + 'gameController', + 'leaf', + 'musicNote', + 'pizza', + 'rose', + 'shaka', + 'ufo', + 'zap', + 'explosion', + 'lab', + 'piggyBank', + 'poop', +] as const +export type EmojiName = (typeof emojiNames)[number] + +export interface Emoji { + name: EmojiName + component: typeof EmojiArc +} +export const emojiItems: Record = { + at: { + name: 'at', + component: At, + }, + arc: { + name: 'arc', + component: EmojiArc, + }, + heartEyes: { + name: 'heartEyes', + component: EmojiHeartEyes, + }, + alien: { + name: 'alien', + component: Alien, + }, + apple: { + name: 'apple', + component: Apple, + }, + atom: { + name: 'atom', + component: Atom, + }, + celebrate: { + name: 'celebrate', + component: Celebrate, + }, + coffee: { + name: 'coffee', + component: Coffee, + }, + gameController: { + name: 'gameController', + component: GameController, + }, + leaf: { + name: 'leaf', + component: Leaf, + }, + musicNote: { + name: 'musicNote', + component: MusicNote, + }, + pizza: { + name: 'pizza', + component: Pizza, + }, + rose: { + name: 'rose', + component: Rose, + }, + shaka: { + name: 'shaka', + component: Shaka, + }, + ufo: { + name: 'ufo', + component: UFO, + }, + zap: { + name: 'zap', + component: Zap, + }, + explosion: { + name: 'explosion', + component: Explosion, + }, + lab: { + name: 'lab', + component: Lab, + }, + piggyBank: { + name: 'piggyBank', + component: PiggyBank, + }, + poop: { + name: 'poop', + component: Poop, + }, +} + +export const avatarColors = [ + '#FE8311', + '#FED811', + '#73DF84', + '#1185FE', + '#EF75EA', + '#F55454', +] as const +export type AvatarColor = (typeof avatarColors)[number] diff --git a/src/screens/Onboarding/StepSuggestedAccounts/SuggestedAccountCard.tsx b/src/screens/Onboarding/StepSuggestedAccounts/SuggestedAccountCard.tsx deleted file mode 100644 index f0ba36e39f..0000000000 --- a/src/screens/Onboarding/StepSuggestedAccounts/SuggestedAccountCard.tsx +++ /dev/null @@ -1,188 +0,0 @@ -import React from 'react' -import {View, ViewStyle} from 'react-native' -import {AppBskyActorDefs, moderateProfile} from '@atproto/api' - -import {useModerationOpts} from '#/state/preferences/moderation-opts' -import {UserAvatar} from '#/view/com/util/UserAvatar' -import {atoms as a, flatten, useTheme} from '#/alf' -import {useItemContext} from '#/components/forms/Toggle' -import {Check_Stroke2_Corner0_Rounded as Check} from '#/components/icons/Check' -import {RichText} from '#/components/RichText' -import {Text} from '#/components/Typography' - -export function SuggestedAccountCard({ - profile, - moderationOpts, -}: { - profile: AppBskyActorDefs.ProfileViewDetailed - moderationOpts: ReturnType -}) { - const t = useTheme() - const ctx = useItemContext() - const moderation = moderateProfile(profile, moderationOpts!) - - const styles = React.useMemo(() => { - const light = t.name === 'light' - const base: ViewStyle[] = [t.atoms.bg_contrast_50] - const hover: ViewStyle[] = [t.atoms.bg_contrast_25] - const selected: ViewStyle[] = [ - { - backgroundColor: light ? t.palette.primary_50 : t.palette.primary_950, - }, - ] - const selectedHover: ViewStyle[] = [ - { - backgroundColor: light ? t.palette.primary_25 : t.palette.primary_975, - }, - ] - const checkboxBase: ViewStyle[] = [t.atoms.bg] - const checkboxSelected: ViewStyle[] = [ - { - backgroundColor: t.palette.primary_500, - }, - ] - const avatarBase: ViewStyle[] = [t.atoms.bg_contrast_100] - const avatarSelected: ViewStyle[] = [ - { - backgroundColor: light ? t.palette.primary_100 : t.palette.primary_900, - }, - ] - - return { - base, - hover: flatten(hover), - selected: flatten(selected), - selectedHover: flatten(selectedHover), - checkboxBase: flatten(checkboxBase), - checkboxSelected: flatten(checkboxSelected), - avatarBase: flatten(avatarBase), - avatarSelected: flatten(avatarSelected), - } - }, [t]) - - return ( - - - - - - - - - {profile.displayName} - - {profile.handle} - - - - - {ctx.selected && } - - - - {profile.description && ( - <> - - - - - )} - - ) -} - -export function SuggestedAccountCardPlaceholder() { - const t = useTheme() - return ( - - - - - - - - - - ) -} diff --git a/src/screens/Onboarding/StepSuggestedAccounts/index.tsx b/src/screens/Onboarding/StepSuggestedAccounts/index.tsx deleted file mode 100644 index 7b2ad2b999..0000000000 --- a/src/screens/Onboarding/StepSuggestedAccounts/index.tsx +++ /dev/null @@ -1,210 +0,0 @@ -import React from 'react' -import {View} from 'react-native' -import {AppBskyActorDefs} from '@atproto/api' -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' - -import {useAnalytics} from '#/lib/analytics/analytics' -import {logEvent} from '#/lib/statsig/statsig' -import {capitalize} from '#/lib/strings/capitalize' -import {useModerationOpts} from '#/state/preferences/moderation-opts' -import {useProfilesQuery} from '#/state/queries/profile' -import { - DescriptionText, - OnboardingControls, - TitleText, -} from '#/screens/Onboarding/Layout' -import {Context} from '#/screens/Onboarding/state' -import { - SuggestedAccountCard, - SuggestedAccountCardPlaceholder, -} from '#/screens/Onboarding/StepSuggestedAccounts/SuggestedAccountCard' -import {aggregateInterestItems} from '#/screens/Onboarding/util' -import {atoms as a, useBreakpoints} from '#/alf' -import {Button, ButtonIcon, ButtonText} from '#/components/Button' -import * as Toggle from '#/components/forms/Toggle' -import {IconCircle} from '#/components/IconCircle' -import {At_Stroke2_Corner0_Rounded as At} from '#/components/icons/At' -import {PlusLarge_Stroke2_Corner0_Rounded as Plus} from '#/components/icons/Plus' -import {Loader} from '#/components/Loader' -import {Text} from '#/components/Typography' - -export function Inner({ - profiles, - onSelect, - moderationOpts, -}: { - profiles: AppBskyActorDefs.ProfileViewDetailed[] - onSelect: (dids: string[]) => void - moderationOpts: ReturnType -}) { - const {_} = useLingui() - const [dids, setDids] = React.useState(profiles.map(p => p.did)) - - React.useEffect(() => { - onSelect(dids) - }, [dids, onSelect]) - - return ( - - - {profiles.map(profile => ( - - - - ))} - - - ) -} - -export function StepSuggestedAccounts() { - const {_} = useLingui() - const {track} = useAnalytics() - const {state, dispatch, interestsDisplayNames} = React.useContext(Context) - const {gtMobile} = useBreakpoints() - const suggestedDids = React.useMemo(() => { - return aggregateInterestItems( - state.interestsStepResults.selectedInterests, - state.interestsStepResults.apiResponse.suggestedAccountDids, - state.interestsStepResults.apiResponse.suggestedAccountDids.default || [], - ) - }, [state.interestsStepResults]) - const moderationOpts = useModerationOpts() - const { - isLoading: isProfilesLoading, - isError, - data, - error, - } = useProfilesQuery({ - handles: suggestedDids, - }) - const [dids, setDids] = React.useState([]) - const [saving, setSaving] = React.useState(false) - - const interestsText = React.useMemo(() => { - const i = state.interestsStepResults.selectedInterests.map( - i => interestsDisplayNames[i] || capitalize(i), - ) - return i.join(', ') - }, [state.interestsStepResults.selectedInterests, interestsDisplayNames]) - - const handleContinue = React.useCallback(async () => { - setSaving(true) - - if (dids.length) { - dispatch({type: 'setSuggestedAccountsStepResults', accountDids: dids}) - } - - setSaving(false) - dispatch({type: 'next'}) - track('OnboardingV2:StepSuggestedAccounts:End', { - selectedAccountsLength: dids.length, - }) - logEvent('onboarding:suggestedAccounts:nextPressed', { - selectedAccountsLength: dids.length, - skipped: false, - }) - }, [dids, setSaving, dispatch, track]) - - const handleSkip = React.useCallback(() => { - // if a user comes back and clicks skip, erase follows - dispatch({type: 'setSuggestedAccountsStepResults', accountDids: []}) - dispatch({type: 'next'}) - logEvent('onboarding:suggestedAccounts:nextPressed', { - selectedAccountsLength: 0, - skipped: true, - }) - }, [dispatch]) - - const isLoading = isProfilesLoading && moderationOpts - - React.useEffect(() => { - track('OnboardingV2:StepSuggestedAccounts:Start') - }, [track]) - - return ( - - - - - Here are some accounts for you to follow - - - {state.interestsStepResults.selectedInterests.length ? ( - Based on your interest in {interestsText} - ) : ( - These are popular accounts you might like: - )} - - - - {isLoading ? ( - - {Array(10) - .fill(0) - .map((_, i) => ( - - ))} - - ) : isError || !data ? ( - {error?.toString()} - ) : ( - - )} - - - - - - - - - - ) -} diff --git a/src/screens/Onboarding/StepTopicalFeeds.tsx b/src/screens/Onboarding/StepTopicalFeeds.tsx deleted file mode 100644 index bfc9e91d1b..0000000000 --- a/src/screens/Onboarding/StepTopicalFeeds.tsx +++ /dev/null @@ -1,125 +0,0 @@ -import React from 'react' -import {View} from 'react-native' -import {msg, Trans} from '@lingui/macro' -import {useLingui} from '@lingui/react' - -import {useAnalytics} from '#/lib/analytics/analytics' -import {logEvent} from '#/lib/statsig/statsig' -import {capitalize} from '#/lib/strings/capitalize' -import {IS_TEST_USER} from 'lib/constants' -import {useSession} from 'state/session' -import { - DescriptionText, - OnboardingControls, - TitleText, -} from '#/screens/Onboarding/Layout' -import {Context} from '#/screens/Onboarding/state' -import {FeedCard} from '#/screens/Onboarding/StepAlgoFeeds/FeedCard' -import {aggregateInterestItems} from '#/screens/Onboarding/util' -import {atoms as a} from '#/alf' -import {Button, ButtonIcon, ButtonText} from '#/components/Button' -import * as Toggle from '#/components/forms/Toggle' -import {IconCircle} from '#/components/IconCircle' -import {ChevronRight_Stroke2_Corner0_Rounded as ChevronRight} from '#/components/icons/Chevron' -import {ListMagnifyingGlass_Stroke2_Corner0_Rounded as ListMagnifyingGlass} from '#/components/icons/ListMagnifyingGlass' -import {Loader} from '#/components/Loader' - -export function StepTopicalFeeds() { - const {_} = useLingui() - const {track} = useAnalytics() - const {currentAccount} = useSession() - const {state, dispatch, interestsDisplayNames} = React.useContext(Context) - const [selectedFeedUris, setSelectedFeedUris] = React.useState([]) - const [saving, setSaving] = React.useState(false) - const suggestedFeedUris = React.useMemo(() => { - if (IS_TEST_USER(currentAccount?.handle)) return [] - return aggregateInterestItems( - state.interestsStepResults.selectedInterests, - state.interestsStepResults.apiResponse.suggestedFeedUris, - state.interestsStepResults.apiResponse.suggestedFeedUris.default || [], - ).slice(0, 10) - }, [ - currentAccount?.handle, - state.interestsStepResults.apiResponse.suggestedFeedUris, - state.interestsStepResults.selectedInterests, - ]) - - const interestsText = React.useMemo(() => { - const i = state.interestsStepResults.selectedInterests.map( - i => interestsDisplayNames[i] || capitalize(i), - ) - return i.join(', ') - }, [state.interestsStepResults.selectedInterests, interestsDisplayNames]) - - const saveFeeds = React.useCallback(async () => { - setSaving(true) - - dispatch({type: 'setTopicalFeedsStepResults', feedUris: selectedFeedUris}) - - setSaving(false) - dispatch({type: 'next'}) - track('OnboardingV2:StepTopicalFeeds:End', { - selectedFeeds: selectedFeedUris, - selectedFeedsLength: selectedFeedUris.length, - }) - logEvent('onboarding:topicalFeeds:nextPressed', { - selectedFeeds: selectedFeedUris, - selectedFeedsLength: selectedFeedUris.length, - }) - }, [selectedFeedUris, dispatch, track]) - - React.useEffect(() => { - track('OnboardingV2:StepTopicalFeeds:Start') - }, [track]) - - return ( - - - - - Feeds can be topical as well! - - - {state.interestsStepResults.selectedInterests.length ? ( - - Here are some topical feeds based on your interests: {interestsText} - . You can choose to follow as many as you like. - - ) : ( - - Here are some popular topical feeds. You can choose to follow as - many as you like. - - )} - - - - - - {suggestedFeedUris.map(uri => ( - - ))} - - - - - - - - - ) -} diff --git a/src/screens/Onboarding/index.tsx b/src/screens/Onboarding/index.tsx index 4296491062..a5c423ca19 100644 --- a/src/screens/Onboarding/index.tsx +++ b/src/screens/Onboarding/index.tsx @@ -2,32 +2,18 @@ import React from 'react' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {useGate} from '#/lib/statsig/statsig' import {Layout, OnboardingControls} from '#/screens/Onboarding/Layout' -import { - Context, - initialState, - initialStateReduced, - reducer, - reducerReduced, -} from '#/screens/Onboarding/state' -import {StepAlgoFeeds} from '#/screens/Onboarding/StepAlgoFeeds' +import {Context, initialState, reducer} from '#/screens/Onboarding/state' import {StepFinished} from '#/screens/Onboarding/StepFinished' -import {StepFollowingFeed} from '#/screens/Onboarding/StepFollowingFeed' import {StepInterests} from '#/screens/Onboarding/StepInterests' -import {StepModeration} from '#/screens/Onboarding/StepModeration' -import {StepSuggestedAccounts} from '#/screens/Onboarding/StepSuggestedAccounts' -import {StepTopicalFeeds} from '#/screens/Onboarding/StepTopicalFeeds' +import {StepProfile} from '#/screens/Onboarding/StepProfile' import {Portal} from '#/components/Portal' export function Onboarding() { const {_} = useLingui() - const gate = useGate() - const isReducedOnboardingEnabled = gate('reduced_onboarding_and_home_algo') - const [state, dispatch] = React.useReducer( - isReducedOnboardingEnabled ? reducerReduced : reducer, - isReducedOnboardingEnabled ? {...initialStateReduced} : {...initialState}, - ) + const [state, dispatch] = React.useReducer(reducer, { + ...initialState, + }) const interestsDisplayNames = React.useMemo(() => { return { @@ -65,14 +51,8 @@ export function Onboarding() { [state, dispatch, interestsDisplayNames], )}> + {state.activeStep === 'profile' && } {state.activeStep === 'interests' && } - {state.activeStep === 'suggestedAccounts' && ( - - )} - {state.activeStep === 'followingFeed' && } - {state.activeStep === 'algoFeeds' && } - {state.activeStep === 'topicalFeeds' && } - {state.activeStep === 'moderation' && } {state.activeStep === 'finished' && } diff --git a/src/screens/Onboarding/state.ts b/src/screens/Onboarding/state.ts index d67dc88f3a..8f61cb22eb 100644 --- a/src/screens/Onboarding/state.ts +++ b/src/screens/Onboarding/state.ts @@ -1,32 +1,33 @@ import React from 'react' import {logger} from '#/logger' +import {AvatarColor, Emoji} from '#/screens/Onboarding/StepProfile/types' export type OnboardingState = { hasPrev: boolean totalSteps: number - activeStep: - | 'interests' - | 'suggestedAccounts' - | 'followingFeed' - | 'algoFeeds' - | 'topicalFeeds' - | 'moderation' - | 'finished' + activeStep: 'profile' | 'interests' | 'finished' activeStepIndex: number interestsStepResults: { selectedInterests: string[] apiResponse: ApiResponseMap } - suggestedAccountsStepResults: { - accountDids: string[] - } - algoFeedsStepResults: { - feedUris: string[] - } - topicalFeedsStepResults: { - feedUris: string[] + profileStepResults: { + isCreatedAvatar: boolean + image?: { + path: string + mime: string + size: number + width: number + height: number + } + imageUri?: string + imageMime?: string + creatorState?: { + emoji: Emoji + backgroundColor: AvatarColor + } } } @@ -46,16 +47,15 @@ export type OnboardingAction = apiResponse: ApiResponseMap } | { - type: 'setSuggestedAccountsStepResults' - accountDids: string[] - } - | { - type: 'setAlgoFeedsStepResults' - feedUris: string[] - } - | { - type: 'setTopicalFeedsStepResults' - feedUris: string[] + type: 'setProfileStepResults' + isCreatedAvatar: boolean + image?: OnboardingState['profileStepResults']['image'] + imageUri: string + imageMime: string + creatorState?: { + emoji: Emoji + backgroundColor: AvatarColor + } } export type ApiResponseMap = { @@ -68,31 +68,6 @@ export type ApiResponseMap = { } } -export const initialState: OnboardingState = { - hasPrev: false, - totalSteps: 7, - activeStep: 'interests', - activeStepIndex: 1, - - interestsStepResults: { - selectedInterests: [], - apiResponse: { - interests: [], - suggestedAccountDids: {}, - suggestedFeedUris: {}, - }, - }, - suggestedAccountsStepResults: { - accountDids: [], - }, - algoFeedsStepResults: { - feedUris: [], - }, - topicalFeedsStepResults: { - feedUris: [], - }, -} - export const INTEREST_TO_DISPLAY_NAME_DEFAULTS: { [key: string]: string } = { @@ -120,6 +95,28 @@ export const INTEREST_TO_DISPLAY_NAME_DEFAULTS: { cooking: 'Cooking', } +export const initialState: OnboardingState = { + hasPrev: false, + totalSteps: 3, + activeStep: 'profile', + activeStepIndex: 1, + + interestsStepResults: { + selectedInterests: [], + apiResponse: { + interests: [], + suggestedAccountDids: {}, + suggestedFeedUris: {}, + }, + }, + profileStepResults: { + isCreatedAvatar: false, + image: undefined, + imageUri: '', + imageMime: '', + }, +} + export const Context = React.createContext<{ state: OnboardingState dispatch: React.Dispatch @@ -138,46 +135,22 @@ export function reducer( switch (a.type) { case 'next': { - if (s.activeStep === 'interests') { - next.activeStep = 'suggestedAccounts' + if (s.activeStep === 'profile') { + next.activeStep = 'interests' next.activeStepIndex = 2 - } else if (s.activeStep === 'suggestedAccounts') { - next.activeStep = 'followingFeed' - next.activeStepIndex = 3 - } else if (s.activeStep === 'followingFeed') { - next.activeStep = 'algoFeeds' - next.activeStepIndex = 4 - } else if (s.activeStep === 'algoFeeds') { - next.activeStep = 'topicalFeeds' - next.activeStepIndex = 5 - } else if (s.activeStep === 'topicalFeeds') { - next.activeStep = 'moderation' - next.activeStepIndex = 6 - } else if (s.activeStep === 'moderation') { + } else if (s.activeStep === 'interests') { next.activeStep = 'finished' - next.activeStepIndex = 7 + next.activeStepIndex = 3 } break } case 'prev': { - if (s.activeStep === 'suggestedAccounts') { - next.activeStep = 'interests' + if (s.activeStep === 'interests') { + next.activeStep = 'profile' next.activeStepIndex = 1 - } else if (s.activeStep === 'followingFeed') { - next.activeStep = 'suggestedAccounts' - next.activeStepIndex = 2 - } else if (s.activeStep === 'algoFeeds') { - next.activeStep = 'followingFeed' - next.activeStepIndex = 3 - } else if (s.activeStep === 'topicalFeeds') { - next.activeStep = 'algoFeeds' - next.activeStepIndex = 4 - } else if (s.activeStep === 'moderation') { - next.activeStep = 'topicalFeeds' - next.activeStepIndex = 5 } else if (s.activeStep === 'finished') { - next.activeStep = 'moderation' - next.activeStepIndex = 6 + next.activeStep = 'interests' + next.activeStepIndex = 2 } break } @@ -192,23 +165,13 @@ export function reducer( } break } - case 'setSuggestedAccountsStepResults': { - next.suggestedAccountsStepResults = { - accountDids: next.suggestedAccountsStepResults.accountDids.concat( - a.accountDids, - ), - } - break - } - case 'setAlgoFeedsStepResults': { - next.algoFeedsStepResults = { - feedUris: a.feedUris, - } - break - } - case 'setTopicalFeedsStepResults': { - next.topicalFeedsStepResults = { - feedUris: next.topicalFeedsStepResults.feedUris.concat(a.feedUris), + case 'setProfileStepResults': { + next.profileStepResults = { + isCreatedAvatar: a.isCreatedAvatar, + image: a.image, + imageUri: a.imageUri, + imageMime: a.imageMime, + creatorState: a.creatorState, } break } @@ -216,7 +179,7 @@ export function reducer( const state = { ...next, - hasPrev: next.activeStep !== 'interests', + hasPrev: next.activeStep !== 'profile', } logger.debug(`onboarding`, { @@ -226,142 +189,7 @@ export function reducer( interestsStepResults: { selectedInterests: state.interestsStepResults.selectedInterests, }, - suggestedAccountsStepResults: state.suggestedAccountsStepResults, - algoFeedsStepResults: state.algoFeedsStepResults, - topicalFeedsStepResults: state.topicalFeedsStepResults, - }) - - if (s.activeStep !== state.activeStep) { - logger.debug(`onboarding: step changed`, {activeStep: state.activeStep}) - } - - return state -} - -export const initialStateReduced: OnboardingState = { - hasPrev: false, - totalSteps: 7, - activeStep: 'interests', - activeStepIndex: 1, - - interestsStepResults: { - selectedInterests: [], - apiResponse: { - interests: [], - suggestedAccountDids: {}, - suggestedFeedUris: {}, - }, - }, - suggestedAccountsStepResults: { - accountDids: [], - }, - algoFeedsStepResults: { - feedUris: [], - }, - topicalFeedsStepResults: { - feedUris: [], - }, -} - -export function reducerReduced( - s: OnboardingState, - a: OnboardingAction, -): OnboardingState { - let next = {...s} - - switch (a.type) { - case 'next': { - if (s.activeStep === 'interests') { - next.activeStep = 'suggestedAccounts' - next.activeStepIndex = 2 - } else if (s.activeStep === 'suggestedAccounts') { - next.activeStep = 'followingFeed' - next.activeStepIndex = 3 - } else if (s.activeStep === 'followingFeed') { - next.activeStep = 'algoFeeds' - next.activeStepIndex = 4 - } else if (s.activeStep === 'algoFeeds') { - next.activeStep = 'topicalFeeds' - next.activeStepIndex = 5 - } else if (s.activeStep === 'topicalFeeds') { - next.activeStep = 'moderation' - next.activeStepIndex = 6 - } else if (s.activeStep === 'moderation') { - next.activeStep = 'finished' - next.activeStepIndex = 7 - } - break - } - case 'prev': { - if (s.activeStep === 'suggestedAccounts') { - next.activeStep = 'interests' - next.activeStepIndex = 1 - } else if (s.activeStep === 'followingFeed') { - next.activeStep = 'suggestedAccounts' - next.activeStepIndex = 2 - } else if (s.activeStep === 'algoFeeds') { - next.activeStep = 'followingFeed' - next.activeStepIndex = 3 - } else if (s.activeStep === 'topicalFeeds') { - next.activeStep = 'algoFeeds' - next.activeStepIndex = 4 - } else if (s.activeStep === 'moderation') { - next.activeStep = 'topicalFeeds' - next.activeStepIndex = 5 - } else if (s.activeStep === 'finished') { - next.activeStep = 'moderation' - next.activeStepIndex = 6 - } - break - } - case 'finish': { - next = initialState - break - } - case 'setInterestsStepResults': { - next.interestsStepResults = { - selectedInterests: a.selectedInterests, - apiResponse: a.apiResponse, - } - break - } - case 'setSuggestedAccountsStepResults': { - next.suggestedAccountsStepResults = { - accountDids: next.suggestedAccountsStepResults.accountDids.concat( - a.accountDids, - ), - } - break - } - case 'setAlgoFeedsStepResults': { - next.algoFeedsStepResults = { - feedUris: a.feedUris, - } - break - } - case 'setTopicalFeedsStepResults': { - next.topicalFeedsStepResults = { - feedUris: next.topicalFeedsStepResults.feedUris.concat(a.feedUris), - } - break - } - } - - const state = { - ...next, - hasPrev: next.activeStep !== 'interests', - } - - logger.debug(`onboarding`, { - hasPrev: state.hasPrev, - activeStep: state.activeStep, - activeStepIndex: state.activeStepIndex, - interestsStepResults: { - selectedInterests: state.interestsStepResults.selectedInterests, - }, - suggestedAccountsStepResults: state.suggestedAccountsStepResults, - algoFeedsStepResults: state.algoFeedsStepResults, - topicalFeedsStepResults: state.topicalFeedsStepResults, + profileStepResults: state.profileStepResults, }) if (s.activeStep !== state.activeStep) { diff --git a/src/screens/Onboarding/util.ts b/src/screens/Onboarding/util.ts index fde4316e93..f3c800d053 100644 --- a/src/screens/Onboarding/util.ts +++ b/src/screens/Onboarding/util.ts @@ -5,72 +5,9 @@ import { } from '@atproto/api' import {until} from '#/lib/async/until' -import {PRIMARY_FEEDS} from './StepAlgoFeeds' -function shuffle(array: any) { - let currentIndex = array.length, - randomIndex - - // While there remain elements to shuffle. - while (currentIndex > 0) { - // Pick a remaining element. - randomIndex = Math.floor(Math.random() * currentIndex) - currentIndex-- - - // And swap it with the current element. - ;[array[currentIndex], array[randomIndex]] = [ - array[randomIndex], - array[currentIndex], - ] - } - - return array -} - -export function aggregateInterestItems( - interests: string[], - map: {[key: string]: string[]}, - fallbackItems: string[], -) { - const selected = interests.length - const all = interests - .map(i => { - // suggestions from server - const rawSuggestions = map[i] - - // safeguard against a missing interest->suggestion mapping - if (!rawSuggestions || !rawSuggestions.length) { - return [] - } - - const suggestions = shuffle(rawSuggestions) - - if (selected === 1) { - return suggestions // return all - } else if (selected === 2) { - return suggestions.slice(0, 5) // return 5 - } else { - return suggestions.slice(0, 3) // return 3 - } - }) - .flat() - // dedupe suggestions - const results = Array.from(new Set(all)) - - // backfill - if (results.length < 20) { - results.push(...shuffle(fallbackItems)) - } - - // dedupe and return 20 - return Array.from(new Set(results)).slice(0, 20) -} - -export async function bulkWriteFollows( - getAgent: () => BskyAgent, - dids: string[], -) { - const session = getAgent().session +export async function bulkWriteFollows(agent: BskyAgent, dids: string[]) { + const session = agent.session if (!session) { throw new Error(`bulkWriteFollows failed: no session`) @@ -89,19 +26,15 @@ export async function bulkWriteFollows( value: r, })) - await getAgent().com.atproto.repo.applyWrites({ + await agent.com.atproto.repo.applyWrites({ repo: session.did, writes: followWrites, }) - await whenFollowsIndexed( - getAgent, - session.did, - res => !!res.data.follows.length, - ) + await whenFollowsIndexed(agent, session.did, res => !!res.data.follows.length) } async function whenFollowsIndexed( - getAgent: () => BskyAgent, + agent: BskyAgent, actor: string, fn: (res: AppBskyGraphGetFollows.Response) => boolean, ) { @@ -110,25 +43,9 @@ async function whenFollowsIndexed( 1e3, // 1s delay between tries fn, () => - getAgent().app.bsky.graph.getFollows({ + agent.app.bsky.graph.getFollows({ actor, limit: 1, }), ) } - -/** - * Kinda hacky, but we want Discover to appear as the first pinned - * feed after Following - */ -export function sortPrimaryAlgorithmFeeds(uris: string[]) { - return uris.sort((a, b) => { - if (a === PRIMARY_FEEDS[0]?.uri) { - return -1 - } - if (b === PRIMARY_FEEDS[0]?.uri) { - return 1 - } - return a.localeCompare(b) - }) -} diff --git a/src/screens/Profile/Header/ProfileHeaderLabeler.tsx b/src/screens/Profile/Header/ProfileHeaderLabeler.tsx index 459bd0d958..64bf71027c 100644 --- a/src/screens/Profile/Header/ProfileHeaderLabeler.tsx +++ b/src/screens/Profile/Header/ProfileHeaderLabeler.tsx @@ -24,7 +24,7 @@ import {isIOS} from 'platform/detection' import {useProfileShadow} from 'state/cache/profile-shadow' import {ProfileMenu} from '#/view/com/profile/ProfileMenu' import * as Toast from '#/view/com/util/Toast' -import {atoms as a, tokens, useTheme} from '#/alf' +import {atoms as a, tokens, useBreakpoints, useTheme} from '#/alf' import {Button, ButtonText} from '#/components/Button' import {DialogOuterProps} from '#/components/Dialog' import { @@ -60,6 +60,7 @@ let ProfileHeaderLabeler = ({ const profile: Shadow = useProfileShadow(profileUnshadowed) const t = useTheme() + const {gtMobile} = useBreakpoints() const {_} = useLingui() const {currentAccount, hasSession} = useSession() const {openModal} = useModalControls() @@ -128,7 +129,7 @@ let ProfileHeaderLabeler = ({ const onPressSubscribe = React.useCallback( () => - requireAuth(async () => { + requireAuth(async (): Promise => { if (!canSubscribe) { cantSubscribePrompt.open() return @@ -197,7 +198,7 @@ let ProfileHeaderLabeler = ({ { requireAuth(async () => { try { @@ -94,9 +93,6 @@ let ProfileHeaderStandard = ({ )}`, ), ) - if (isWeb && gate('autoexpand_suggestions_on_profile_follow_v2')) { - setShowSuggestedFollows(true) - } } catch (e: any) { if (e?.name !== 'AbortError') { logger.error('Failed to follow', {message: String(e)}) @@ -156,7 +152,14 @@ let ProfileHeaderStandard = ({ style={[a.px_lg, a.pt_md, a.pb_sm]} pointerEvents={isIOS ? 'auto' : 'box-none'}> {isMe ? ( + label={_(msg`Show follows similar to ${profile.handle}`)} + style={{width: 36, height: 36}}> + + + )} ) : null} - + - - + - + ) }) +export function useComposerCancelRef() { + return useRef(null) +} + +function useAnimatedBorders() { + const t = useTheme() + const hasScrolledTop = useSharedValue(0) + const hasScrolledBottom = useSharedValue(0) + const contentOffset = useSharedValue(0) + const scrollViewHeight = useSharedValue(Infinity) + const contentHeight = useSharedValue(0) + + /** + * Make sure to run this on the UI thread! + */ + const showHideBottomBorder = useCallback( + ({ + newContentHeight, + newContentOffset, + newScrollViewHeight, + }: { + newContentHeight?: number + newContentOffset?: number + newScrollViewHeight?: number + }) => { + 'worklet' + + if (typeof newContentHeight === 'number') + contentHeight.value = newContentHeight + if (typeof newContentOffset === 'number') + contentOffset.value = newContentOffset + if (typeof newScrollViewHeight === 'number') + scrollViewHeight.value = newScrollViewHeight + + hasScrolledBottom.value = withTiming( + contentHeight.value - contentOffset.value >= scrollViewHeight.value + ? 1 + : 0, + ) + }, + [contentHeight, contentOffset, scrollViewHeight, hasScrolledBottom], + ) + + const scrollHandler = useAnimatedScrollHandler({ + onScroll: event => { + hasScrolledTop.value = withTiming(event.contentOffset.y > 0 ? 1 : 0) + + // already on UI thread + showHideBottomBorder({ + newContentOffset: event.contentOffset.y, + newContentHeight: event.contentSize.height, + newScrollViewHeight: event.layoutMeasurement.height, + }) + }, + }) + + const onScrollViewContentSizeChange = useCallback( + (_width: number, height: number) => { + runOnUI(showHideBottomBorder)({ + newContentHeight: height, + }) + }, + [showHideBottomBorder], + ) + + const onScrollViewLayout = useCallback( + (evt: LayoutChangeEvent) => { + runOnUI(showHideBottomBorder)({ + newScrollViewHeight: evt.nativeEvent.layout.height, + }) + }, + [showHideBottomBorder], + ) + + const topBarAnimatedStyle = useAnimatedStyle(() => { + return { + borderBottomWidth: hairlineWidth, + borderColor: interpolateColor( + hasScrolledTop.value, + [0, 1], + ['transparent', t.atoms.border_contrast_medium.borderColor], + ), + } + }) + const bottomBarAnimatedStyle = useAnimatedStyle(() => { + return { + borderTopWidth: hairlineWidth, + borderColor: interpolateColor( + hasScrolledBottom.value, + [0, 1], + ['transparent', t.atoms.border_contrast_medium.borderColor], + ), + } + }) + + return { + scrollHandler, + onScrollViewContentSizeChange, + onScrollViewLayout, + topBarAnimatedStyle, + bottomBarAnimatedStyle, + } +} + const styles = StyleSheet.create({ - outer: { - flexDirection: 'column', - flex: 1, - height: '100%', - }, - topbar: { - flexDirection: 'row', - alignItems: 'center', - paddingTop: 6, - paddingBottom: 4, - paddingHorizontal: 20, - height: 55, - gap: 4, - }, + topbar: {}, topbarDesktop: { paddingTop: 10, paddingBottom: 10, + height: 50, + }, + topbarInner: { + flexDirection: 'row', + alignItems: 'center', + paddingHorizontal: 16, + height: 54, + gap: 4, }, postBtn: { borderRadius: 20, @@ -608,22 +749,22 @@ const styles = StyleSheet.create({ flexDirection: 'row', backgroundColor: colors.red1, borderRadius: 6, - marginHorizontal: 15, + marginHorizontal: 16, paddingHorizontal: 8, paddingVertical: 6, - marginVertical: 6, + marginBottom: 8, }, reminderLine: { flexDirection: 'row', alignItems: 'center', borderRadius: 6, - marginHorizontal: 15, + marginHorizontal: 16, paddingHorizontal: 8, paddingVertical: 6, - marginBottom: 6, + marginBottom: 8, }, errorIcon: { - borderWidth: 1, + borderWidth: hairlineWidth, borderColor: colors.red4, color: colors.red4, borderRadius: 30, @@ -635,12 +776,11 @@ const styles = StyleSheet.create({ }, scrollView: { flex: 1, - paddingHorizontal: 15, + paddingHorizontal: 16, }, textInputLayout: { flexDirection: 'row', - borderTopWidth: 1, - paddingTop: 16, + paddingTop: 4, }, textInputLayoutMobile: { flex: 1, @@ -656,9 +796,10 @@ const styles = StyleSheet.create({ bottomBar: { flexDirection: 'row', paddingVertical: 4, - paddingLeft: 15, - paddingRight: 20, + // should be 8 but due to visual alignment we have to fudge it + paddingLeft: 7, + paddingRight: 16, alignItems: 'center', - borderTopWidth: 1, + borderTopWidth: hairlineWidth, }, }) diff --git a/src/view/com/composer/ComposerReplyTo.tsx b/src/view/com/composer/ComposerReplyTo.tsx index 7dc17fd4a7..6b38caff03 100644 --- a/src/view/com/composer/ComposerReplyTo.tsx +++ b/src/view/com/composer/ComposerReplyTo.tsx @@ -10,16 +10,16 @@ import { import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {usePalette} from 'lib/hooks/usePalette' import {sanitizeDisplayName} from 'lib/strings/display-names' import {sanitizeHandle} from 'lib/strings/handles' import {ComposerOptsPostRef} from 'state/shell/composer' import {QuoteEmbed} from 'view/com/util/post-embeds/QuoteEmbed' import {Text} from 'view/com/util/text/Text' import {PreviewableUserAvatar} from 'view/com/util/UserAvatar' +import {useTheme} from '#/alf' export function ComposerReplyTo({replyTo}: {replyTo: ComposerOptsPostRef}) { - const pal = usePalette('default') + const t = useTheme() const {_} = useLingui() const {embed} = replyTo @@ -75,7 +75,7 @@ export function ComposerReplyTo({replyTo}: {replyTo: ComposerOptsPostRef}) { return ( - + {sanitizeDisplayName( replyTo.author.displayName || sanitizeHandle(replyTo.author.handle), )} @@ -100,7 +100,7 @@ export function ComposerReplyTo({replyTo}: {replyTo: ComposerOptsPostRef}) { {replyTo.text} @@ -218,9 +218,10 @@ const styles = StyleSheet.create({ replyToLayout: { flexDirection: 'row', alignItems: 'flex-start', - borderTopWidth: 1, - paddingTop: 16, + borderBottomWidth: StyleSheet.hairlineWidth, + paddingTop: 4, paddingBottom: 16, + marginBottom: 12, }, replyToPost: { flex: 1, diff --git a/src/view/com/composer/GifAltText.tsx b/src/view/com/composer/GifAltText.tsx index b049bbcf71..cdef13352f 100644 --- a/src/view/com/composer/GifAltText.tsx +++ b/src/view/com/composer/GifAltText.tsx @@ -20,6 +20,7 @@ import * as Dialog from '#/components/Dialog' import * as TextField from '#/components/forms/TextField' import {Check_Stroke2_Corner0_Rounded as Check} from '#/components/icons/Check' import {PlusSmall_Stroke2_Corner0_Rounded as Plus} from '#/components/icons/Plus' +import {KeyboardPadding} from '#/components/KeyboardPadding' import {Text} from '#/components/Typography' import {GifEmbed} from '../util/post-embeds/GifEmbed' import {AltTextReminder} from './photos/Gallery' @@ -172,7 +173,7 @@ function AltTextInner({ {/* below the text input to force tab order */} - Add ALT text + Add alt text @@ -180,6 +181,7 @@ function AltTextInner({ + ) } diff --git a/src/view/com/composer/KeyboardAccessory.tsx b/src/view/com/composer/KeyboardAccessory.tsx new file mode 100644 index 0000000000..983a87dae9 --- /dev/null +++ b/src/view/com/composer/KeyboardAccessory.tsx @@ -0,0 +1,34 @@ +import React from 'react' +import {View} from 'react-native' +import {KeyboardStickyView} from 'react-native-keyboard-controller' +import {useSafeAreaInsets} from 'react-native-safe-area-context' + +import {isWeb} from '#/platform/detection' +import {atoms as a, useTheme} from '#/alf' + +export function KeyboardAccessory({children}: {children: React.ReactNode}) { + const t = useTheme() + const {bottom} = useSafeAreaInsets() + + const style = [ + a.flex_row, + a.py_xs, + a.pl_sm, + a.pr_xl, + a.align_center, + a.border_t, + t.atoms.border_contrast_medium, + t.atoms.bg, + ] + + // todo: when iPad support is added, it should also not use the KeyboardStickyView + if (isWeb) { + return {children} + } + + return ( + + {children} + + ) +} diff --git a/src/view/com/composer/Prompt.tsx b/src/view/com/composer/Prompt.tsx index 16d1b6fb9e..54defb101c 100644 --- a/src/view/com/composer/Prompt.tsx +++ b/src/view/com/composer/Prompt.tsx @@ -1,13 +1,15 @@ import React from 'react' import {StyleSheet, TouchableOpacity} from 'react-native' -import {UserAvatar} from '../util/UserAvatar' -import {Text} from '../util/text/Text' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {useProfileQuery} from '#/state/queries/profile' +import {useSession} from '#/state/session' import {usePalette} from 'lib/hooks/usePalette' import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {Trans, msg} from '@lingui/macro' -import {useLingui} from '@lingui/react' -import {useSession} from '#/state/session' -import {useProfileQuery} from '#/state/queries/profile' +import {Text} from '../util/text/Text' +import {UserAvatar} from '../util/UserAvatar' +import hairlineWidth = StyleSheet.hairlineWidth export function ComposePrompt({onPressCompose}: {onPressCompose: () => void}) { const {currentAccount} = useSession() @@ -47,7 +49,7 @@ const styles = StyleSheet.create({ paddingBottom: 10, flexDirection: 'row', alignItems: 'center', - borderTopWidth: 1, + borderTopWidth: hairlineWidth, }, labelMobile: { paddingLeft: 12, diff --git a/src/view/com/composer/labels/LabelsBtn.tsx b/src/view/com/composer/labels/LabelsBtn.tsx index b880dd3306..27e3813dc2 100644 --- a/src/view/com/composer/labels/LabelsBtn.tsx +++ b/src/view/com/composer/labels/LabelsBtn.tsx @@ -1,14 +1,15 @@ import React from 'react' import {Keyboard, StyleSheet} from 'react-native' -import {Button} from 'view/com/util/forms/Button' -import {usePalette} from 'lib/hooks/usePalette' -import {ShieldExclamation} from 'lib/icons' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {FontAwesomeIconStyle} from '@fortawesome/react-native-fontawesome' -import {isNative} from 'platform/detection' -import {useLingui} from '@lingui/react' import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + import {useModalControls} from '#/state/modals' +import {usePalette} from 'lib/hooks/usePalette' +import {ShieldExclamation} from 'lib/icons' +import {isNative} from 'platform/detection' +import {Button} from 'view/com/util/forms/Button' export function LabelsBtn({ labels, @@ -54,6 +55,7 @@ const styles = StyleSheet.create({ button: { flexDirection: 'row', alignItems: 'center', + paddingVertical: 2, paddingHorizontal: 6, }, dimmed: { diff --git a/src/view/com/composer/select-language/SelectLangBtn.tsx b/src/view/com/composer/select-language/SelectLangBtn.tsx index 7856222259..7a086789ac 100644 --- a/src/view/com/composer/select-language/SelectLangBtn.tsx +++ b/src/view/com/composer/select-language/SelectLangBtn.tsx @@ -1,27 +1,28 @@ import React, {useCallback, useMemo} from 'react' -import {StyleSheet, Keyboard} from 'react-native' +import {Keyboard, StyleSheet} from 'react-native' import { FontAwesomeIcon, FontAwesomeIconStyle, } from '@fortawesome/react-native-fontawesome' -import {Text} from 'view/com/util/text/Text' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {useModalControls} from '#/state/modals' +import { + hasPostLanguage, + toPostLanguages, + useLanguagePrefs, + useLanguagePrefsApi, +} from '#/state/preferences/languages' +import {usePalette} from 'lib/hooks/usePalette' +import {isNative} from 'platform/detection' import { DropdownButton, DropdownItem, DropdownItemButton, } from 'view/com/util/forms/DropdownButton' -import {usePalette} from 'lib/hooks/usePalette' -import {isNative} from 'platform/detection' +import {Text} from 'view/com/util/text/Text' import {codeToLanguageName} from '../../../../locale/helpers' -import {useModalControls} from '#/state/modals' -import { - useLanguagePrefs, - useLanguagePrefsApi, - toPostLanguages, - hasPostLanguage, -} from '#/state/preferences/languages' -import {msg} from '@lingui/macro' -import {useLingui} from '@lingui/react' export function SelectLangBtn() { const pal = usePalette('default') diff --git a/src/view/com/composer/threadgate/ThreadgateBtn.tsx b/src/view/com/composer/threadgate/ThreadgateBtn.tsx index ebbc613fff..2aefdfbbf3 100644 --- a/src/view/com/composer/threadgate/ThreadgateBtn.tsx +++ b/src/view/com/composer/threadgate/ThreadgateBtn.tsx @@ -1,28 +1,31 @@ import React from 'react' -import {TouchableOpacity, StyleSheet, Keyboard} from 'react-native' -import { - FontAwesomeIcon, - FontAwesomeIconStyle, -} from '@fortawesome/react-native-fontawesome' -import {usePalette} from 'lib/hooks/usePalette' -import {useAnalytics} from 'lib/analytics/analytics' -import {HITSLOP_10} from 'lib/constants' -import {useLingui} from '@lingui/react' +import {Keyboard, StyleProp, ViewStyle} from 'react-native' +import Animated, {AnimatedStyle} from 'react-native-reanimated' import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {isNative} from '#/platform/detection' import {useModalControls} from '#/state/modals' import {ThreadgateSetting} from '#/state/queries/threadgate' -import {isNative} from '#/platform/detection' +import {useAnalytics} from 'lib/analytics/analytics' +import {atoms as a, useTheme} from '#/alf' +import {Button, ButtonIcon, ButtonText} from '#/components/Button' +import {CircleBanSign_Stroke2_Corner0_Rounded as CircleBanSign} from '#/components/icons/CircleBanSign' +import {Earth_Stroke2_Corner0_Rounded as Earth} from '#/components/icons/Globe' +import {Group3_Stroke2_Corner0_Rounded as Group} from '#/components/icons/Group' export function ThreadgateBtn({ threadgate, onChange, + style, }: { threadgate: ThreadgateSetting[] onChange: (v: ThreadgateSetting[]) => void + style?: StyleProp> }) { - const pal = usePalette('default') const {track} = useAnalytics() const {_} = useLingui() + const t = useTheme() const {openModal} = useModalControls() const onPress = () => { @@ -37,36 +40,28 @@ export function ThreadgateBtn({ }) } + const isEverybody = threadgate.length === 0 + const isNobody = !!threadgate.find(gate => gate.type === 'nobody') + const label = isEverybody + ? _(msg`Everybody can reply`) + : isNobody + ? _(msg`Nobody can reply`) + : _(msg`Some people can reply`) + return ( - - - {threadgate.length ? ( - + + ) } - -const styles = StyleSheet.create({ - button: { - flexDirection: 'row', - alignItems: 'center', - paddingHorizontal: 6, - gap: 4, - }, -}) diff --git a/src/view/com/composer/useExternalLinkFetch.e2e.ts b/src/view/com/composer/useExternalLinkFetch.e2e.ts index 65ecb866e7..257a3e8e52 100644 --- a/src/view/com/composer/useExternalLinkFetch.e2e.ts +++ b/src/view/com/composer/useExternalLinkFetch.e2e.ts @@ -8,7 +8,7 @@ import {ComposerOpts} from 'state/shell/composer' export function useExternalLinkFetch({}: { setQuote: (opts: ComposerOpts['quote']) => void }) { - const {getAgent} = useAgent() + const agent = useAgent() const [extLink, setExtLink] = useState( undefined, ) @@ -22,7 +22,7 @@ export function useExternalLinkFetch({}: { return cleanup } if (!extLink.meta) { - getLinkMeta(getAgent(), extLink.uri).then(meta => { + getLinkMeta(agent, extLink.uri).then(meta => { if (aborted) { return } @@ -41,7 +41,7 @@ export function useExternalLinkFetch({}: { }) } return cleanup - }, [extLink, getAgent]) + }, [extLink, agent]) return {extLink, setExtLink} } diff --git a/src/view/com/composer/useExternalLinkFetch.ts b/src/view/com/composer/useExternalLinkFetch.ts index d51dec42b1..2e0297a475 100644 --- a/src/view/com/composer/useExternalLinkFetch.ts +++ b/src/view/com/composer/useExternalLinkFetch.ts @@ -31,7 +31,7 @@ export function useExternalLinkFetch({ ) const getPost = useGetPost() const fetchDid = useFetchDid() - const {getAgent} = useAgent() + const agent = useAgent() useEffect(() => { let aborted = false @@ -59,7 +59,7 @@ export function useExternalLinkFetch({ }, ) } else if (isBskyCustomFeedUrl(extLink.uri)) { - getFeedAsEmbed(getAgent(), fetchDid, extLink.uri).then( + getFeedAsEmbed(agent, fetchDid, extLink.uri).then( ({embed, meta}) => { if (aborted) { return @@ -77,7 +77,7 @@ export function useExternalLinkFetch({ }, ) } else if (isBskyListUrl(extLink.uri)) { - getListAsEmbed(getAgent(), fetchDid, extLink.uri).then( + getListAsEmbed(agent, fetchDid, extLink.uri).then( ({embed, meta}) => { if (aborted) { return @@ -95,7 +95,7 @@ export function useExternalLinkFetch({ }, ) } else { - getLinkMeta(getAgent(), extLink.uri).then(meta => { + getLinkMeta(agent, extLink.uri).then(meta => { if (aborted) { return } @@ -137,7 +137,7 @@ export function useExternalLinkFetch({ }) } return cleanup - }, [extLink, setQuote, getPost, fetchDid, getAgent]) + }, [extLink, setQuote, getPost, fetchDid, agent]) return {extLink, setExtLink} } diff --git a/src/view/com/feeds/FeedPage.tsx b/src/view/com/feeds/FeedPage.tsx index bb782809df..f1d03a7ca3 100644 --- a/src/view/com/feeds/FeedPage.tsx +++ b/src/view/com/feeds/FeedPage.tsx @@ -1,12 +1,13 @@ import React from 'react' -import {useWindowDimensions, View} from 'react-native' +import {View} from 'react-native' +import {AppBskyActorDefs} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {useNavigation} from '@react-navigation/native' +import {NavigationProp, useNavigation} from '@react-navigation/native' import {useQueryClient} from '@tanstack/react-query' import {getRootNavigation, getTabState, TabState} from '#/lib/routes/helpers' -import {logEvent, useGate} from '#/lib/statsig/statsig' +import {logEvent} from '#/lib/statsig/statsig' import {isNative} from '#/platform/detection' import {listenSoftReset} from '#/state/events' import {FeedFeedbackProvider, useFeedFeedback} from '#/state/feed-feedback' @@ -17,9 +18,10 @@ import {useSession} from '#/state/session' import {useSetMinimalShellMode} from '#/state/shell' import {useComposerControls} from '#/state/shell/composer' import {useAnalytics} from 'lib/analytics/analytics' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' import {ComposeIcon2} from 'lib/icons' +import {AllNavigatorParams} from 'lib/routes/types' import {s} from 'lib/styles' +import {useHeaderOffset} from '#/components/hooks/useHeaderOffset' import {Feed} from '../posts/Feed' import {FAB} from '../util/fab/FAB' import {ListMethods} from '../util/List' @@ -35,6 +37,7 @@ export function FeedPage({ feedParams, renderEmptyState, renderEndOfFeed, + savedFeedConfig, }: { testID?: string feed: FeedDescriptor @@ -42,10 +45,11 @@ export function FeedPage({ isPageFocused: boolean renderEmptyState: () => JSX.Element renderEndOfFeed?: () => JSX.Element + savedFeedConfig?: AppBskyActorDefs.SavedFeed }) { const {hasSession} = useSession() const {_} = useLingui() - const navigation = useNavigation() + const navigation = useNavigation>() const queryClient = useQueryClient() const {openComposer} = useComposerControls() const [isScrolledDown, setIsScrolledDown] = React.useState(false) @@ -55,7 +59,6 @@ export function FeedPage({ const feedFeedback = useFeedFeedback(feed, hasSession) const scrollElRef = React.useRef(null) const [hasNew, setHasNew] = React.useState(false) - const gate = useGate() const scrollToTop = React.useCallback(() => { scrollElRef.current?.scrollToOffset({ @@ -73,7 +76,7 @@ export function FeedPage({ scrollToTop() truncateAndInvalidate(queryClient, FEED_RQKEY(feed)) setHasNew(false) - logEvent('feed:refresh', { + logEvent('feed:refresh:sampled', { feedType: feed.split('|')[0], feedUrl: feed, reason: 'soft-reset', @@ -99,19 +102,13 @@ export function FeedPage({ scrollToTop() truncateAndInvalidate(queryClient, FEED_RQKEY(feed)) setHasNew(false) - logEvent('feed:refresh', { + logEvent('feed:refresh:sampled', { feedType: feed.split('|')[0], feedUrl: feed, reason: 'load-latest', }) }, [scrollToTop, feed, queryClient, setHasNew]) - const isDiscoverFeed = - feed === - 'feedgen|at://did:plc:z72i7hdynmk6r22z27h6tvur/app.bsky.feed.generator/whats-hot' - const adjustedHasNew = - hasNew && !(isDiscoverFeed && gate('disable_poll_on_discover_v2')) - return ( @@ -129,14 +126,15 @@ export function FeedPage({ renderEmptyState={renderEmptyState} renderEndOfFeed={renderEndOfFeed} headerOffset={headerOffset} + savedFeedConfig={savedFeedConfig} /> - {(isScrolledDown || adjustedHasNew) && ( + {(isScrolledDown || hasNew) && ( )} @@ -153,16 +151,3 @@ export function FeedPage({ ) } - -function useHeaderOffset() { - const {isDesktop, isTablet} = useWebMediaQueries() - const {fontScale} = useWindowDimensions() - if (isDesktop || isTablet) { - return 0 - } - const navBarHeight = 42 - const tabBarPad = 10 + 10 + 3 // padding + border - const normalLineHeight = 1.2 - const tabBarText = 16 * normalLineHeight * fontScale - return navBarHeight + tabBarPad + tabBarText -} diff --git a/src/view/com/feeds/FeedSourceCard.tsx b/src/view/com/feeds/FeedSourceCard.tsx index 8a21d86aef..589f674b44 100644 --- a/src/view/com/feeds/FeedSourceCard.tsx +++ b/src/view/com/feeds/FeedSourceCard.tsx @@ -1,29 +1,31 @@ import React from 'react' import {Pressable, StyleProp, StyleSheet, View, ViewStyle} from 'react-native' -import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' -import {Text} from '../util/text/Text' -import {RichText} from '#/components/RichText' -import {usePalette} from 'lib/hooks/usePalette' -import {s} from 'lib/styles' -import {UserAvatar} from '../util/UserAvatar' import {AtUri} from '@atproto/api' -import * as Toast from 'view/com/util/Toast' -import {sanitizeHandle} from 'lib/strings/handles' -import {logger} from '#/logger' -import {Trans, msg, Plural} from '@lingui/macro' +import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' +import {msg, Plural, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' + +import {logger} from '#/logger' +import {FeedSourceInfo, useFeedSourceInfoQuery} from '#/state/queries/feed' import { - usePinFeedMutation, - UsePreferencesQueryResponse, + useAddSavedFeedsMutation, usePreferencesQuery, - useSaveFeedMutation, + UsePreferencesQueryResponse, useRemoveFeedMutation, } from '#/state/queries/preferences' -import {useFeedSourceInfoQuery, FeedSourceInfo} from '#/state/queries/feed' -import {FeedLoadingPlaceholder} from '#/view/com/util/LoadingPlaceholder' -import {useTheme} from '#/alf' -import * as Prompt from '#/components/Prompt' import {useNavigationDeduped} from 'lib/hooks/useNavigationDeduped' +import {usePalette} from 'lib/hooks/usePalette' +import {sanitizeHandle} from 'lib/strings/handles' +import {s} from 'lib/styles' +import {FeedLoadingPlaceholder} from '#/view/com/util/LoadingPlaceholder' +import * as Toast from 'view/com/util/Toast' +import {useTheme} from '#/alf' +import {atoms as a} from '#/alf' +import * as Prompt from '#/components/Prompt' +import {RichText} from '#/components/RichText' +import {Text} from '../util/text/Text' +import {UserAvatar} from '../util/UserAvatar' +import hairlineWidth = StyleSheet.hairlineWidth export function FeedSourceCard({ feedUri, @@ -33,6 +35,7 @@ export function FeedSourceCard({ showLikes = false, pinOnSave = false, showMinimalPlaceholder, + hideTopBorder, }: { feedUri: string style?: StyleProp @@ -41,6 +44,7 @@ export function FeedSourceCard({ showLikes?: boolean pinOnSave?: boolean showMinimalPlaceholder?: boolean + hideTopBorder?: boolean }) { const {data: preferences} = usePreferencesQuery() const {data: feed} = useFeedSourceInfoQuery({uri: feedUri}) @@ -56,6 +60,7 @@ export function FeedSourceCard({ showLikes={showLikes} pinOnSave={pinOnSave} showMinimalPlaceholder={showMinimalPlaceholder} + hideTopBorder={hideTopBorder} /> ) } @@ -70,6 +75,7 @@ export function FeedSourceCardLoaded({ showLikes = false, pinOnSave = false, showMinimalPlaceholder, + hideTopBorder, }: { feedUri: string feed?: FeedSourceInfo @@ -80,6 +86,7 @@ export function FeedSourceCardLoaded({ showLikes?: boolean pinOnSave?: boolean showMinimalPlaceholder?: boolean + hideTopBorder?: boolean }) { const t = useTheme() const pal = usePalette('default') @@ -87,53 +94,54 @@ export function FeedSourceCardLoaded({ const removePromptControl = Prompt.usePromptControl() const navigation = useNavigationDeduped() - const {isPending: isSavePending, mutateAsync: saveFeed} = - useSaveFeedMutation() + const {isPending: isAddSavedFeedPending, mutateAsync: addSavedFeeds} = + useAddSavedFeedsMutation() const {isPending: isRemovePending, mutateAsync: removeFeed} = useRemoveFeedMutation() - const {isPending: isPinPending, mutateAsync: pinFeed} = usePinFeedMutation() - const isSaved = Boolean(preferences?.feeds?.saved?.includes(feed?.uri || '')) + const savedFeedConfig = preferences?.savedFeeds?.find( + f => f.value === feedUri, + ) + const isSaved = Boolean(savedFeedConfig) const onSave = React.useCallback(async () => { - if (!feed) return + if (!feed || isSaved) return try { - if (pinOnSave) { - await pinFeed({uri: feed.uri}) - } else { - await saveFeed({uri: feed.uri}) - } + await addSavedFeeds([ + { + type: 'feed', + value: feed.uri, + pinned: pinOnSave, + }, + ]) Toast.show(_(msg`Added to my feeds`)) } catch (e) { Toast.show(_(msg`There was an issue contacting your server`)) logger.error('Failed to save feed', {message: e}) } - }, [_, feed, pinFeed, pinOnSave, saveFeed]) + }, [_, feed, pinOnSave, addSavedFeeds, isSaved]) const onUnsave = React.useCallback(async () => { - if (!feed) return + if (!savedFeedConfig) return try { - await removeFeed({uri: feed.uri}) + await removeFeed(savedFeedConfig) // await item.unsave() Toast.show(_(msg`Removed from my feeds`)) } catch (e) { Toast.show(_(msg`There was an issue contacting your server`)) logger.error('Failed to unsave feed', {message: e}) } - }, [_, feed, removeFeed]) + }, [_, removeFeed, savedFeedConfig]) const onToggleSaved = React.useCallback(async () => { - // Only feeds can be un/saved, lists are handled elsewhere - if (feed?.type !== 'feed') return - if (isSaved) { removePromptControl.open() } else { await onSave() } - }, [feed?.type, isSaved, removePromptControl, onSave]) + }, [isSaved, removePromptControl, onSave]) /* * LOAD STATE @@ -147,7 +155,7 @@ export function FeedSourceCardLoaded({ style={[ pal.border, { - borderTopWidth: showMinimalPlaceholder ? 0 : 1, + borderTopWidth: showMinimalPlaceholder || hideTopBorder ? 0 : 1, flexDirection: 'row', alignItems: 'center', flex: 1, @@ -171,7 +179,7 @@ export function FeedSourceCardLoaded({ accessibilityRole="button" accessibilityLabel={_(msg`Remove from my feeds`)} accessibilityHint="" - onPress={onToggleSaved} + onPress={onUnsave} hitSlop={15} style={styles.btn}> { if (feed.type === 'feed') { navigation.push('ProfileFeed', { @@ -204,15 +217,15 @@ export function FeedSourceCardLoaded({ } }} key={feed.uri}> - + - + {feed.displayName} - + {feed.type === 'feed' ? ( Feed by {sanitizeHandle(feed.creatorHandle, '@')} ) : ( @@ -221,11 +234,11 @@ export function FeedSourceCardLoaded({ - {showSaveBtn && feed.type === 'feed' && ( - + {showSaveBtn && ( + { + ({item, index}: ListRenderItemInfo) => { if (item === EMPTY) { return ( - - - You have no feeds. - - + /> ) } else if (item === ERROR_ITEM) { return ( @@ -169,12 +166,13 @@ export const ProfileFeedgens = React.forwardRef< preferences={preferences} style={styles.item} showLikes + hideTopBorder={index === 0} /> ) } return null }, - [error, refetch, onPressRetryLoadMore, pal, preferences, _], + [error, refetch, onPressRetryLoadMore, preferences, _], ) React.useEffect(() => { diff --git a/src/view/com/home/HomeHeader.tsx b/src/view/com/home/HomeHeader.tsx index aa3ecb7fc2..b068484e8a 100644 --- a/src/view/com/home/HomeHeader.tsx +++ b/src/view/com/home/HomeHeader.tsx @@ -1,12 +1,14 @@ import React from 'react' -import {RenderTabBarFnProps} from 'view/com/pager/Pager' -import {HomeHeaderLayout} from './HomeHeaderLayout' -import {FeedSourceInfo} from '#/state/queries/feed' import {useNavigation} from '@react-navigation/native' + +import {usePalette} from '#/lib/hooks/usePalette' +import {FeedSourceInfo} from '#/state/queries/feed' +import {useSession} from '#/state/session' import {NavigationProp} from 'lib/routes/types' import {isWeb} from 'platform/detection' +import {RenderTabBarFnProps} from 'view/com/pager/Pager' import {TabBar} from '../pager/TabBar' -import {usePalette} from '#/lib/hooks/usePalette' +import {HomeHeaderLayout} from './HomeHeaderLayout' export function HomeHeader( props: RenderTabBarFnProps & { @@ -16,12 +18,17 @@ export function HomeHeader( }, ) { const {feeds} = props + const {hasSession} = useSession() const navigation = useNavigation() const pal = usePalette('default') const hasPinnedCustom = React.useMemo(() => { - return feeds.some(tab => tab.uri !== '') - }, [feeds]) + if (!hasSession) return false + return feeds.some(tab => { + const isFollowing = tab.uri === 'following' + return !isFollowing + }) + }, [feeds, hasSession]) const items = React.useMemo(() => { const pinnedNames = feeds.map(f => f.displayName) diff --git a/src/view/com/lightbox/Lightbox.tsx b/src/view/com/lightbox/Lightbox.tsx index fd4c486af4..a95a948357 100644 --- a/src/view/com/lightbox/Lightbox.tsx +++ b/src/view/com/lightbox/Lightbox.tsx @@ -1,22 +1,23 @@ import React from 'react' import {LayoutAnimation, StyleSheet, View} from 'react-native' -import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' -import ImageView from './ImageViewing' -import {shareImageModal, saveImageToMediaLibrary} from 'lib/media/manip' -import * as Toast from '../util/Toast' -import {Text} from '../util/text/Text' -import {s, colors} from 'lib/styles' -import {Button} from '../util/forms/Button' -import {isIOS} from 'platform/detection' import * as MediaLibrary from 'expo-media-library' +import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' + import { + ImagesLightbox, + ProfileImageLightbox, useLightbox, useLightboxControls, - ProfileImageLightbox, - ImagesLightbox, } from '#/state/lightbox' -import {Trans, msg} from '@lingui/macro' -import {useLingui} from '@lingui/react' +import {saveImageToMediaLibrary, shareImageModal} from 'lib/media/manip' +import {colors, s} from 'lib/styles' +import {isIOS} from 'platform/detection' +import {Button} from '../util/forms/Button' +import {Text} from '../util/text/Text' +import * as Toast from '../util/Toast' +import ImageView from './ImageViewing' export function Lightbox() { const {activeLightbox} = useLightbox() diff --git a/src/view/com/lists/ListCard.tsx b/src/view/com/lists/ListCard.tsx index 19842eb54d..3adf5c09da 100644 --- a/src/view/com/lists/ListCard.tsx +++ b/src/view/com/lists/ListCard.tsx @@ -1,18 +1,20 @@ import React from 'react' import {StyleProp, StyleSheet, View, ViewStyle} from 'react-native' -import {AtUri, AppBskyGraphDefs, RichText} from '@atproto/api' -import {Link} from '../util/Link' -import {Text} from '../util/text/Text' -import {RichText as RichTextCom} from '#/components/RichText' -import {UserAvatar} from '../util/UserAvatar' -import {s} from 'lib/styles' -import {usePalette} from 'lib/hooks/usePalette' +import {AppBskyGraphDefs, AtUri, RichText} from '@atproto/api' +import {Trans} from '@lingui/macro' + import {useSession} from '#/state/session' +import {usePalette} from 'lib/hooks/usePalette' +import {makeProfileLink} from 'lib/routes/links' import {sanitizeDisplayName} from 'lib/strings/display-names' import {sanitizeHandle} from 'lib/strings/handles' -import {makeProfileLink} from 'lib/routes/links' -import {Trans} from '@lingui/macro' +import {s} from 'lib/styles' import {atoms as a} from '#/alf' +import {RichText as RichTextCom} from '#/components/RichText' +import {Link} from '../util/Link' +import {Text} from '../util/text/Text' +import {UserAvatar} from '../util/UserAvatar' +import hairlineWidth = StyleSheet.hairlineWidth export const ListCard = ({ testID, @@ -132,7 +134,7 @@ export const ListCard = ({ const styles = StyleSheet.create({ outer: { - borderTopWidth: 1, + borderTopWidth: hairlineWidth, paddingHorizontal: 6, }, outerNoBorder: { diff --git a/src/view/com/lists/MyLists.tsx b/src/view/com/lists/MyLists.tsx index e9d2e4f0fe..472d2688c7 100644 --- a/src/view/com/lists/MyLists.tsx +++ b/src/view/com/lists/MyLists.tsx @@ -9,17 +9,19 @@ import { ViewStyle, } from 'react-native' import {AppBskyGraphDefs as GraphDefs} from '@atproto/api' -import {ListCard} from './ListCard' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {cleanError} from '#/lib/strings/errors' +import {logger} from '#/logger' import {MyListsFilter, useMyListsQuery} from '#/state/queries/my-lists' -import {ErrorMessage} from '../util/error/ErrorMessage' -import {Text} from '../util/text/Text' import {useAnalytics} from 'lib/analytics/analytics' import {usePalette} from 'lib/hooks/usePalette' -import {List} from '../util/List' import {s} from 'lib/styles' -import {logger} from '#/logger' -import {Trans} from '@lingui/macro' -import {cleanError} from '#/lib/strings/errors' +import {EmptyState} from 'view/com/util/EmptyState' +import {ErrorMessage} from '../util/error/ErrorMessage' +import {List} from '../util/List' +import {ListCard} from './ListCard' const LOADING = {_reactKey: '__loading__'} const EMPTY = {_reactKey: '__empty__'} @@ -40,6 +42,7 @@ export function MyLists({ }) { const pal = usePalette('default') const {track} = useAnalytics() + const {_} = useLingui() const [isPTRing, setIsPTRing] = React.useState(false) const {data, isFetching, isFetched, isError, error, refetch} = useMyListsQuery(filter) @@ -81,14 +84,12 @@ export function MyLists({ ({item, index}: {item: any; index: number}) => { if (item === EMPTY) { return ( - - - You have no lists. - - + /> ) } else if (item === ERROR_ITEM) { return ( @@ -116,7 +117,7 @@ export function MyLists({ /> ) }, - [error, onRefresh, renderItem, pal], + [error, onRefresh, renderItem, _], ) if (inline) { diff --git a/src/view/com/lists/ProfileLists.tsx b/src/view/com/lists/ProfileLists.tsx index 003d1c60e7..8c3a151fa8 100644 --- a/src/view/com/lists/ProfileLists.tsx +++ b/src/view/com/lists/ProfileLists.tsx @@ -1,12 +1,13 @@ import React from 'react' import { findNodeHandle, + ListRenderItemInfo, StyleProp, StyleSheet, View, ViewStyle, } from 'react-native' -import {msg, Trans} from '@lingui/macro' +import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' import {useQueryClient} from '@tanstack/react-query' @@ -16,12 +17,11 @@ import {logger} from '#/logger' import {isNative} from '#/platform/detection' import {RQKEY, useProfileListsQuery} from '#/state/queries/profile-lists' import {useAnalytics} from 'lib/analytics/analytics' -import {usePalette} from 'lib/hooks/usePalette' import {FeedLoadingPlaceholder} from '#/view/com/util/LoadingPlaceholder' +import {EmptyState} from 'view/com/util/EmptyState' import {ErrorMessage} from '../util/error/ErrorMessage' import {List, ListRef} from '../util/List' import {LoadMoreRetryBtn} from '../util/LoadMoreRetryBtn' -import {Text} from '../util/text/Text' import {ListCard} from './ListCard' const LOADING = {_reactKey: '__loading__'} @@ -48,7 +48,6 @@ export const ProfileLists = React.forwardRef( {did, scrollElRef, headerOffset, enabled, style, testID, setScrollViewTag}, ref, ) { - const pal = usePalette('default') const theme = useTheme() const {track} = useAnalytics() const {_} = useLingui() @@ -138,16 +137,14 @@ export const ProfileLists = React.forwardRef( // = const renderItemInner = React.useCallback( - ({item}: {item: any}) => { + ({item, index}: ListRenderItemInfo) => { if (item === EMPTY) { return ( - - - You have no lists. - - + /> ) } else if (item === ERROR_ITEM) { return ( @@ -173,10 +170,11 @@ export const ProfileLists = React.forwardRef( list={item} testID={`list-${item.name}`} style={styles.item} + noBorder={index === 0} /> ) }, - [error, refetch, onPressRetryLoadMore, pal, _], + [error, refetch, onPressRetryLoadMore, _], ) React.useEffect(() => { diff --git a/src/view/com/modals/AddAppPasswords.tsx b/src/view/com/modals/AddAppPasswords.tsx index e6f424ed0b..d6df12657e 100644 --- a/src/view/com/modals/AddAppPasswords.tsx +++ b/src/view/com/modals/AddAppPasswords.tsx @@ -8,20 +8,23 @@ import { import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {usePalette} from '#/lib/hooks/usePalette' +import {s} from '#/lib/styles' import {logger} from '#/logger' +import {isNative} from '#/platform/detection' import {useModalControls} from '#/state/modals' import { useAppPasswordCreateMutation, useAppPasswordsQuery, } from '#/state/queries/app-passwords' -import {usePalette} from 'lib/hooks/usePalette' -import {s} from 'lib/styles' -import {isNative} from 'platform/detection' -import {Button} from '../util/forms/Button' -import {Text} from '../util/text/Text' -import * as Toast from '../util/Toast' +import {Button} from '#/view/com/util/forms/Button' +import {Text} from '#/view/com/util/text/Text' +import * as Toast from '#/view/com/util/Toast' +import {atoms as a} from '#/alf' +import * as Toggle from '#/components/forms/Toggle' +import {KeyboardPadding} from '#/components/KeyboardPadding' -export const snapPoints = ['70%'] +export const snapPoints = ['90%'] const shadesOfBlue: string[] = [ 'AliceBlue', @@ -70,6 +73,7 @@ export function Component({}: {}) { ) const [appPassword, setAppPassword] = useState() const [wasCopied, setWasCopied] = useState(false) + const [privileged, setPrivileged] = useState(false) const onCopy = React.useCallback(() => { if (appPassword) { @@ -109,7 +113,7 @@ export function Component({}: {}) { } try { - const newPassword = await mutateAppPassword({name}) + const newPassword = await mutateAppPassword({name, privileged}) if (newPassword) { setAppPassword(newPassword.password) } else { @@ -140,86 +144,98 @@ export function Component({}: {}) { return ( - - {!appPassword ? ( - - - Please enter a unique name for this App Password or use our - randomly generated one. - - - ) : ( - - - Here is your app password. + {!appPassword ? ( + <> + + + + Please enter a unique name for this App Password or use our + randomly generated one. + - - Use this to sign into the other app along with your handle. - - - )} - {!appPassword ? ( - - - - ) : ( - - - {appPassword} - - {wasCopied ? ( - - Copied - - ) : ( - + - )} - - )} - - {appPassword ? ( - - - For security reasons, you won't be able to view this again. If you - lose this password, you'll need to generate a new one. - - + + + + + Can only contain letters, numbers, spaces, dashes, and + underscores. Must be at least 4 characters long, but no more than + 32 characters long. + + + setPrivileged(val)} + name="privileged" + style={a.my_md}> + + + Allow access to your direct messages + + + ) : ( - - - Can only contain letters, numbers, spaces, dashes, and underscores. - Must be at least 4 characters long, but no more than 32 characters - long. - - + <> + + + + Here is your app password. + + + Use this to sign into the other app along with your handle. + + + + + {appPassword} + + {wasCopied ? ( + + Copied + + ) : ( + + )} + + + + + For security reasons, you won't be able to view this again. If you + lose this password, you'll need to generate a new one. + + + )} + ) +} diff --git a/src/view/com/post/Post.tsx b/src/view/com/post/Post.tsx index 1a7185cd92..51a1381ec8 100644 --- a/src/view/com/post/Post.tsx +++ b/src/view/com/post/Post.tsx @@ -22,6 +22,7 @@ import {makeProfileLink} from 'lib/routes/links' import {countLines} from 'lib/strings/helpers' import {colors, s} from 'lib/styles' import {precacheProfile} from 'state/queries/profile' +import {AviFollowButton} from '#/view/com/posts/AviFollowButton' import {atoms as a} from '#/alf' import {ProfileHoverCard} from '#/components/ProfileHoverCard' import {RichText} from '#/components/RichText' @@ -35,14 +36,17 @@ import {PostMeta} from '../util/PostMeta' import {Text} from '../util/text/Text' import {PreviewableUserAvatar} from '../util/UserAvatar' import {UserInfoText} from '../util/UserInfoText' +import hairlineWidth = StyleSheet.hairlineWidth export function Post({ post, showReplyLine, + hideTopBorder, style, }: { post: AppBskyFeedDefs.PostView showReplyLine?: boolean + hideTopBorder?: boolean style?: StyleProp }) { const moderationOpts = useModerationOpts() @@ -80,6 +84,7 @@ export function Post({ richText={richText} moderation={moderation} showReplyLine={showReplyLine} + hideTopBorder={hideTopBorder} style={style} /> ) @@ -93,6 +98,7 @@ function PostInner({ richText, moderation, showReplyLine, + hideTopBorder, style, }: { post: Shadow @@ -100,6 +106,7 @@ function PostInner({ richText: RichTextAPI moderation: ModerationDecision showReplyLine?: boolean + hideTopBorder?: boolean style?: StyleProp }) { const queryClient = useQueryClient() @@ -141,17 +148,24 @@ function PostInner({ return ( {showReplyLine && } - + + + () + + const name = sanitizeDisplayName( + profile.displayName || profile.handle, + moderation.ui('displayName'), + ) + const isFollowing = + profile.viewer?.following || profile.did === currentAccount?.did + + function onPress() { + follow() + Toast.show(_(msg`Following ${name}`)) + } + + const items: DropdownItem[] = [ + { + label: _(msg`View profile`), + onPress: () => { + navigation.navigate('Profile', {name: profile.did}) + }, + icon: { + ios: { + name: 'arrow.up.right.square', + }, + android: '', + web: ['far', 'arrow-up-right-from-square'], + }, + }, + { + label: _(msg`Follow ${name}`), + onPress: onPress, + icon: { + ios: { + name: 'person.badge.plus', + }, + android: '', + web: ['far', 'user-plus'], + }, + }, + ] + + return hasSession && gate('show_avi_follow_button') ? ( + + {children} + + {!isFollowing && ( + + )} + + ) : ( + children + ) +} diff --git a/src/view/com/posts/AviFollowButton.web.tsx b/src/view/com/posts/AviFollowButton.web.tsx new file mode 100644 index 0000000000..90b2ddeec8 --- /dev/null +++ b/src/view/com/posts/AviFollowButton.web.tsx @@ -0,0 +1,5 @@ +import React from 'react' + +export function AviFollowButton({children}: {children: React.ReactNode}) { + return children +} diff --git a/src/view/com/posts/Feed.tsx b/src/view/com/posts/Feed.tsx index 8969f7cd2c..681670cf7b 100644 --- a/src/view/com/posts/Feed.tsx +++ b/src/view/com/posts/Feed.tsx @@ -3,16 +3,19 @@ import { ActivityIndicator, AppState, Dimensions, + ListRenderItemInfo, StyleProp, StyleSheet, View, ViewStyle, } from 'react-native' +import {AppBskyActorDefs} from '@atproto/api' import {msg} from '@lingui/macro' import {useLingui} from '@lingui/react' import {useQueryClient} from '@tanstack/react-query' import {FALLBACK_MARKER_POST} from '#/lib/api/feed/home' +import {KNOWN_SHUTDOWN_FEEDS} from '#/lib/constants' import {logEvent} from '#/lib/statsig/statsig' import {logger} from '#/logger' import {isWeb} from '#/platform/detection' @@ -29,18 +32,21 @@ import { import {useSession} from '#/state/session' import {useAnalytics} from 'lib/analytics/analytics' import {useInitialNumToRender} from 'lib/hooks/useInitialNumToRender' +import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' import {useTheme} from 'lib/ThemeContext' import {List, ListRef} from '../util/List' import {PostFeedLoadingPlaceholder} from '../util/LoadingPlaceholder' import {LoadMoreRetryBtn} from '../util/LoadMoreRetryBtn' import {DiscoverFallbackHeader} from './DiscoverFallbackHeader' import {FeedErrorMessage} from './FeedErrorMessage' +import {FeedShutdownMsg} from './FeedShutdownMsg' import {FeedSlice} from './FeedSlice' const LOADING_ITEM = {_reactKey: '__loading__'} const EMPTY_FEED_ITEM = {_reactKey: '__empty__'} const ERROR_ITEM = {_reactKey: '__error__'} const LOAD_MORE_ERROR_ITEM = {_reactKey: '__load_more_error__'} +const FEED_SHUTDOWN_MSG_ITEM = {_reactKey: '__feed_shutdown_msg_item__'} // DISABLED need to check if this is causing random feed refreshes -prf // const REFRESH_AFTER = STALE.HOURS.ONE @@ -64,6 +70,7 @@ let Feed = ({ desktopFixedHeightOffset, ListHeaderComponent, extraData, + savedFeedConfig, }: { feed: FeedDescriptor feedParams?: FeedParams @@ -82,6 +89,7 @@ let Feed = ({ desktopFixedHeightOffset?: number ListHeaderComponent?: () => JSX.Element extraData?: any + savedFeedConfig?: AppBskyActorDefs.SavedFeed }): React.ReactNode => { const theme = useTheme() const {track} = useAnalytics() @@ -93,7 +101,8 @@ let Feed = ({ const [isPTRing, setIsPTRing] = React.useState(false) const checkForNewRef = React.useRef<(() => void) | null>(null) const lastFetchRef = React.useRef(Date.now()) - const feedType = feed.split('|')[0] + const [feedType, feedUri] = feed.split('|') + const {isTabletOrMobile} = useWebMediaQueries() const opts = React.useMemo( () => ({enabled, ignoreFilterFor}), @@ -140,7 +149,6 @@ let Feed = ({ if ( data?.pages.length === 1 && (feed === 'following' || - feed === 'home' || feed === `author|${myDid}|posts_and_author_threads`) ) { queryClient.invalidateQueries({queryKey: RQKEY(feed)}) @@ -194,6 +202,9 @@ let Feed = ({ const feedItems = React.useMemo(() => { let arr: any[] = [] + if (KNOWN_SHUTDOWN_FEEDS.includes(feedUri)) { + arr = arr.concat([FEED_SHUTDOWN_MSG_ITEM]) + } if (isFetched) { if (isError && isEmpty) { arr = arr.concat([ERROR_ITEM]) @@ -211,14 +222,14 @@ let Feed = ({ arr.push(LOADING_ITEM) } return arr - }, [isFetched, isError, isEmpty, data]) + }, [isFetched, isError, isEmpty, data, feedUri]) // events // = const onRefresh = React.useCallback(async () => { track('Feed:onRefresh') - logEvent('feed:refresh', { + logEvent('feed:refresh:sampled', { feedType: feedType, feedUrl: feed, reason: 'pull-to-refresh', @@ -236,7 +247,7 @@ let Feed = ({ const onEndReached = React.useCallback(async () => { if (isFetching || !hasNextPage || isError) return - logEvent('feed:endReached', { + logEvent('feed:endReached:sampled', { feedType: feedType, feedUrl: feed, itemCount: feedItems.length, @@ -271,7 +282,7 @@ let Feed = ({ // = const renderItem = React.useCallback( - ({item}: {item: any}) => { + ({item, index}: ListRenderItemInfo) => { if (item === EMPTY_FEED_ITEM) { return renderEmptyState() } else if (item === ERROR_ITEM) { @@ -280,6 +291,7 @@ let Feed = ({ feedDesc={feed} error={error ?? undefined} onPressTryAgain={onPressTryAgain} + savedFeedConfig={savedFeedConfig} /> ) } else if (item === LOAD_MORE_ERROR_ITEM) { @@ -293,6 +305,8 @@ let Feed = ({ ) } else if (item === LOADING_ITEM) { return + } else if (item === FEED_SHUTDOWN_MSG_ITEM) { + return } else if (item.rootUri === FALLBACK_MARKER_POST.post.uri) { // HACK // tell the user we fell back to discover @@ -300,9 +314,24 @@ let Feed = ({ // -prf return } - return + return ( + + ) }, - [feed, error, onPressTryAgain, onPressRetryLoadMore, renderEmptyState, _], + [ + isTabletOrMobile, + renderEmptyState, + feed, + error, + onPressTryAgain, + savedFeedConfig, + _, + onPressRetryLoadMore, + feedUri, + ], ) const shouldRenderEndOfFeed = diff --git a/src/view/com/posts/FeedErrorMessage.tsx b/src/view/com/posts/FeedErrorMessage.tsx index d4ca38d07e..a152bc9095 100644 --- a/src/view/com/posts/FeedErrorMessage.tsx +++ b/src/view/com/posts/FeedErrorMessage.tsx @@ -1,21 +1,22 @@ import React from 'react' import {View} from 'react-native' -import {AppBskyFeedGetAuthorFeed, AtUri} from '@atproto/api' -import {Text} from '../util/text/Text' -import {Button} from '../util/forms/Button' -import * as Toast from '../util/Toast' -import {ErrorMessage} from '../util/error/ErrorMessage' -import {usePalette} from 'lib/hooks/usePalette' -import {useNavigation} from '@react-navigation/native' -import {NavigationProp} from 'lib/routes/types' -import {logger} from '#/logger' +import {AppBskyActorDefs, AppBskyFeedGetAuthorFeed, AtUri} from '@atproto/api' import {msg as msgLingui, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {FeedDescriptor} from '#/state/queries/post-feed' -import {EmptyState} from '../util/EmptyState' +import {useNavigation} from '@react-navigation/native' + import {cleanError} from '#/lib/strings/errors' +import {logger} from '#/logger' +import {FeedDescriptor} from '#/state/queries/post-feed' import {useRemoveFeedMutation} from '#/state/queries/preferences' +import {usePalette} from 'lib/hooks/usePalette' +import {NavigationProp} from 'lib/routes/types' import * as Prompt from '#/components/Prompt' +import {EmptyState} from '../util/EmptyState' +import {ErrorMessage} from '../util/error/ErrorMessage' +import {Button} from '../util/forms/Button' +import {Text} from '../util/text/Text' +import * as Toast from '../util/Toast' export enum KnownError { Block = 'Block', @@ -33,10 +34,12 @@ export function FeedErrorMessage({ feedDesc, error, onPressTryAgain, + savedFeedConfig, }: { feedDesc: FeedDescriptor error?: Error onPressTryAgain: () => void + savedFeedConfig?: AppBskyActorDefs.SavedFeed }) { const {_: _l} = useLingui() const knownError = React.useMemo( @@ -46,13 +49,15 @@ export function FeedErrorMessage({ if ( typeof knownError !== 'undefined' && knownError !== KnownError.Unknown && - (feedDesc.startsWith('feedgen') || knownError === KnownError.FeedNSFPublic) + (savedFeedConfig?.type === 'feed' || + knownError === KnownError.FeedNSFPublic) ) { return ( ) } @@ -79,10 +84,12 @@ function FeedgenErrorMessage({ feedDesc, knownError, rawError, + savedFeedConfig, }: { feedDesc: FeedDescriptor knownError: KnownError rawError?: Error + savedFeedConfig?: AppBskyActorDefs.SavedFeed }) { const pal = usePalette('default') const {_: _l} = useLingui() @@ -131,7 +138,8 @@ function FeedgenErrorMessage({ const onRemoveFeed = React.useCallback(async () => { try { - await removeFeed({uri}) + if (!savedFeedConfig) return + await removeFeed(savedFeedConfig) } catch (err) { Toast.show( _l( @@ -140,7 +148,7 @@ function FeedgenErrorMessage({ ) logger.error('Failed to remove feed', {message: err}) } - }, [uri, removeFeed, _l]) + }, [removeFeed, _l, savedFeedConfig]) const cta = React.useMemo(() => { switch (knownError) { @@ -154,13 +162,14 @@ function FeedgenErrorMessage({ case KnownError.FeedgenUnknown: { return ( - {knownError === KnownError.FeedgenDoesNotExist && ( - + {!hasDiscoverPinned && ( + + )} + + ) : undefined} + + ) +} diff --git a/src/view/com/posts/FeedSlice.tsx b/src/view/com/posts/FeedSlice.tsx index 27a9ff8c06..aeb24e8bbf 100644 --- a/src/view/com/posts/FeedSlice.tsx +++ b/src/view/com/posts/FeedSlice.tsx @@ -11,7 +11,13 @@ import {Link} from '../util/Link' import {Text} from '../util/text/Text' import {FeedItem} from './FeedItem' -let FeedSlice = ({slice}: {slice: FeedPostSlice}): React.ReactNode => { +let FeedSlice = ({ + slice, + hideTopBorder, +}: { + slice: FeedPostSlice + hideTopBorder?: boolean +}): React.ReactNode => { if (slice.isThread && slice.items.length > 3) { const last = slice.items.length - 1 return ( @@ -22,9 +28,12 @@ let FeedSlice = ({slice}: {slice: FeedPostSlice}): React.ReactNode => { record={slice.items[0].record} reason={slice.items[0].reason} feedContext={slice.items[0].feedContext} + parentAuthor={slice.items[0].parentAuthor} + showReplyTo={true} moderation={slice.items[0].moderation} isThreadParent={isThreadParentAt(slice.items, 0)} isThreadChild={isThreadChildAt(slice.items, 0)} + hideTopBorder={hideTopBorder} /> { record={slice.items[1].record} reason={slice.items[1].reason} feedContext={slice.items[1].feedContext} + parentAuthor={slice.items[1].parentAuthor} + showReplyTo={false} moderation={slice.items[1].moderation} isThreadParent={isThreadParentAt(slice.items, 1)} isThreadChild={isThreadChildAt(slice.items, 1)} @@ -43,6 +54,8 @@ let FeedSlice = ({slice}: {slice: FeedPostSlice}): React.ReactNode => { record={slice.items[last].record} reason={slice.items[last].reason} feedContext={slice.items[last].feedContext} + parentAuthor={slice.items[2].parentAuthor} + showReplyTo={false} moderation={slice.items[last].moderation} isThreadParent={isThreadParentAt(slice.items, last)} isThreadChild={isThreadChildAt(slice.items, last)} @@ -62,11 +75,14 @@ let FeedSlice = ({slice}: {slice: FeedPostSlice}): React.ReactNode => { reason={slice.items[i].reason} feedContext={slice.items[i].feedContext} moderation={slice.items[i].moderation} + parentAuthor={slice.items[i].parentAuthor} + showReplyTo={i === 0} isThreadParent={isThreadParentAt(slice.items, i)} isThreadChild={isThreadChildAt(slice.items, i)} isThreadLastChild={ isThreadChildAt(slice.items, i) && slice.items.length === i + 1 } + hideTopBorder={hideTopBorder && i === 0} /> ))} diff --git a/src/view/com/profile/ProfileCard.tsx b/src/view/com/profile/ProfileCard.tsx index 6c89789467..2b0790002d 100644 --- a/src/view/com/profile/ProfileCard.tsx +++ b/src/view/com/profile/ProfileCard.tsx @@ -25,6 +25,7 @@ import {Link} from '../util/Link' import {Text} from '../util/text/Text' import {PreviewableUserAvatar} from '../util/UserAvatar' import {FollowButton} from './FollowButton' +import hairlineWidth = StyleSheet.hairlineWidth export function ProfileCard({ testID, @@ -280,7 +281,7 @@ export function ProfileCardWithFollowBtn({ const styles = StyleSheet.create({ outer: { - borderTopWidth: 1, + borderTopWidth: hairlineWidth, paddingHorizontal: 6, paddingVertical: 4, }, diff --git a/src/view/com/profile/ProfileMenu.tsx b/src/view/com/profile/ProfileMenu.tsx index cb0b1d97c8..5d39e5f0f3 100644 --- a/src/view/com/profile/ProfileMenu.tsx +++ b/src/view/com/profile/ProfileMenu.tsx @@ -1,41 +1,44 @@ import React, {memo} from 'react' import {TouchableOpacity} from 'react-native' import {AppBskyActorDefs} from '@atproto/api' +import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {useQueryClient} from '@tanstack/react-query' -import * as Toast from 'view/com/util/Toast' -import {EventStopper} from 'view/com/util/EventStopper' -import {useSession} from 'state/session' -import * as Menu from '#/components/Menu' -import {useTheme} from '#/alf' -import {usePalette} from 'lib/hooks/usePalette' + +import {logger} from '#/logger' +import {useAnalytics} from 'lib/analytics/analytics' import {HITSLOP_10} from 'lib/constants' +import {usePalette} from 'lib/hooks/usePalette' +import {makeProfileLink} from 'lib/routes/links' import {shareUrl} from 'lib/sharing' import {toShareUrl} from 'lib/strings/url-helpers' -import {makeProfileLink} from 'lib/routes/links' -import {useAnalytics} from 'lib/analytics/analytics' +import {Shadow} from 'state/cache/types' import {useModalControls} from 'state/modals' -import {ReportDialog, useReportDialogControl} from '#/components/ReportDialog' import { RQKEY as profileQueryKey, useProfileBlockMutationQueue, useProfileFollowMutationQueue, useProfileMuteMutationQueue, } from 'state/queries/profile' +import {useSession} from 'state/session' +import {EventStopper} from 'view/com/util/EventStopper' +import * as Toast from 'view/com/util/Toast' +import {useTheme} from '#/alf' import {ArrowOutOfBox_Stroke2_Corner0_Rounded as Share} from '#/components/icons/ArrowOutOfBox' +import {Flag_Stroke2_Corner0_Rounded as Flag} from '#/components/icons/Flag' import {ListSparkle_Stroke2_Corner0_Rounded as List} from '#/components/icons/ListSparkle' import {Mute_Stroke2_Corner0_Rounded as Mute} from '#/components/icons/Mute' -import {SpeakerVolumeFull_Stroke2_Corner0_Rounded as Unmute} from '#/components/icons/Speaker' -import {Flag_Stroke2_Corner0_Rounded as Flag} from '#/components/icons/Flag' -import {PersonCheck_Stroke2_Corner0_Rounded as PersonCheck} from '#/components/icons/PersonCheck' -import {PersonX_Stroke2_Corner0_Rounded as PersonX} from '#/components/icons/PersonX' import {PeopleRemove2_Stroke2_Corner0_Rounded as UserMinus} from '#/components/icons/PeopleRemove2' +import { + PersonCheck_Stroke2_Corner0_Rounded as PersonCheck, + PersonX_Stroke2_Corner0_Rounded as PersonX, +} from '#/components/icons/Person' import {PlusLarge_Stroke2_Corner0_Rounded as Plus} from '#/components/icons/Plus' -import {logger} from '#/logger' -import {Shadow} from 'state/cache/types' +import {SpeakerVolumeFull_Stroke2_Corner0_Rounded as Unmute} from '#/components/icons/Speaker' +import * as Menu from '#/components/Menu' import * as Prompt from '#/components/Prompt' +import {ReportDialog, useReportDialogControl} from '#/components/ReportDialog' let ProfileMenu = ({ profile, @@ -192,9 +195,8 @@ let ProfileMenu = ({ flexDirection: 'row', alignItems: 'center', justifyContent: 'center', - paddingVertical: 10, + padding: 8, borderRadius: 50, - paddingHorizontal: 16, }, pal.btn, ]}> diff --git a/src/view/com/profile/ProfileSubpageHeader.tsx b/src/view/com/profile/ProfileSubpageHeader.tsx index eaf00f3e66..549fc5151a 100644 --- a/src/view/com/profile/ProfileSubpageHeader.tsx +++ b/src/view/com/profile/ProfileSubpageHeader.tsx @@ -1,24 +1,26 @@ import React from 'react' import {Pressable, StyleSheet, View} from 'react-native' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' import {useNavigation} from '@react-navigation/native' + +import {emitSoftReset} from '#/state/events' +import {ImagesLightbox, useLightboxControls} from '#/state/lightbox' +import {useSetDrawerOpen} from '#/state/shell' +import {BACK_HITSLOP} from 'lib/constants' import {usePalette} from 'lib/hooks/usePalette' import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {Text} from '../util/text/Text' -import {TextLink} from '../util/Link' -import {UserAvatar, UserAvatarType} from '../util/UserAvatar' -import {LoadingPlaceholder} from '../util/LoadingPlaceholder' -import {CenteredView} from '../util/Views' -import {sanitizeHandle} from 'lib/strings/handles' import {makeProfileLink} from 'lib/routes/links' import {NavigationProp} from 'lib/routes/types' -import {BACK_HITSLOP} from 'lib/constants' +import {sanitizeHandle} from 'lib/strings/handles' import {isNative} from 'platform/detection' -import {useLightboxControls, ImagesLightbox} from '#/state/lightbox' -import {useLingui} from '@lingui/react' -import {Trans, msg} from '@lingui/macro' -import {useSetDrawerOpen} from '#/state/shell' -import {emitSoftReset} from '#/state/events' +import {TextLink} from '../util/Link' +import {LoadingPlaceholder} from '../util/LoadingPlaceholder' +import {Text} from '../util/text/Text' +import {UserAvatar, UserAvatarType} from '../util/UserAvatar' +import {CenteredView} from '../util/Views' +import hairlineWidth = StyleSheet.hairlineWidth export function ProfileSubpageHeader({ isLoading, @@ -79,7 +81,7 @@ export function ProfileSubpageHeader({ { flexDirection: 'row', alignItems: 'center', - borderBottomWidth: 1, + borderBottomWidth: hairlineWidth, paddingTop: isNative ? 0 : 8, paddingBottom: 8, paddingHorizontal: isMobile ? 12 : 14, diff --git a/src/view/com/testing/TestCtrls.e2e.tsx b/src/view/com/testing/TestCtrls.e2e.tsx index 1eb99c4f5e..1291165b3d 100644 --- a/src/view/com/testing/TestCtrls.e2e.tsx +++ b/src/view/com/testing/TestCtrls.e2e.tsx @@ -1,11 +1,14 @@ import React from 'react' -import {Pressable, View} from 'react-native' -import {navigate} from '../../../Navigation' -import {useModalControls} from '#/state/modals' +import {LogBox, Pressable, View} from 'react-native' import {useQueryClient} from '@tanstack/react-query' + +import {useModalControls} from '#/state/modals' import {useSessionApi} from '#/state/session' -import {useSetFeedViewPreferencesMutation} from '#/state/queries/preferences' import {useLoggedOutViewControls} from '#/state/shell/logged-out' +import {useOnboardingDispatch} from '#/state/shell/onboarding' +import {navigate} from '../../../Navigation' + +LogBox.ignoreAllLogs() /** * This utility component is only included in the test simulator @@ -19,7 +22,7 @@ export function TestCtrls() { const queryClient = useQueryClient() const {logout, login} = useSessionApi() const {openModal} = useModalControls() - const {mutate: setFeedViewPref} = useSetFeedViewPreferencesMutation() + const onboardingDispatch = useOnboardingDispatch() const {setShowLoggedOut} = useLoggedOutViewControls() const onPressSignInAlice = async () => { await login( @@ -86,8 +89,8 @@ export function TestCtrls() { style={BTN} /> setFeedViewPref({lab_mergeFeedEnabled: true})} + testID="e2eGotoFeeds" + onPress={() => navigate('FeedsTab')} accessibilityRole="button" style={BTN} /> @@ -109,6 +112,23 @@ export function TestCtrls() { accessibilityRole="button" style={BTN} /> + { + onboardingDispatch({type: 'start'}) + }} + accessibilityRole="button" + style={BTN} + /> + {/* TODO remove this entire control when experiment is over */} + { + onboardingDispatch({type: 'start'}) + }} + accessibilityRole="button" + style={BTN} + /> ) } diff --git a/src/view/com/util/BottomSheetCustomBackdrop.tsx b/src/view/com/util/BottomSheetCustomBackdrop.tsx index 0d15c5e555..25e882e87a 100644 --- a/src/view/com/util/BottomSheetCustomBackdrop.tsx +++ b/src/view/com/util/BottomSheetCustomBackdrop.tsx @@ -1,7 +1,7 @@ import React, {useMemo} from 'react' import {TouchableWithoutFeedback} from 'react-native' import Animated, { - Extrapolate, + Extrapolation, interpolate, useAnimatedStyle, } from 'react-native-reanimated' @@ -21,7 +21,7 @@ export function createCustomBackdrop( animatedIndex.value, // current snap index [-1, 0], // input range [0, 0.5], // output range - Extrapolate.CLAMP, + Extrapolation.CLAMP, ), })) diff --git a/src/view/com/util/EmptyState.tsx b/src/view/com/util/EmptyState.tsx index 7486b212fa..150a16aaa3 100644 --- a/src/view/com/util/EmptyState.tsx +++ b/src/view/com/util/EmptyState.tsx @@ -8,6 +8,7 @@ import { import {Text} from './text/Text' import {UserGroupIcon} from 'lib/icons' import {usePalette} from 'lib/hooks/usePalette' +import {isWeb} from 'platform/detection' export function EmptyState({ testID, @@ -22,7 +23,9 @@ export function EmptyState({ }) { const pal = usePalette('default') return ( - + {icon === 'user-group' ? ( @@ -48,9 +51,9 @@ export function EmptyState({ const styles = StyleSheet.create({ container: { - paddingVertical: 20, + paddingVertical: 24, paddingHorizontal: 36, - borderTopWidth: 1, + borderTopWidth: isWeb ? 1 : undefined, }, iconContainer: { flexDirection: 'row', diff --git a/src/view/com/util/Link.tsx b/src/view/com/util/Link.tsx index df82124f92..ab6fd200fc 100644 --- a/src/view/com/util/Link.tsx +++ b/src/view/com/util/Link.tsx @@ -45,6 +45,7 @@ interface Props extends ComponentProps { hoverStyle?: StyleProp noFeedback?: boolean asAnchor?: boolean + dataSet?: Object | undefined anchorNoUnderline?: boolean navigationAction?: 'push' | 'replace' | 'navigate' onPointerEnter?: () => void @@ -63,6 +64,8 @@ export const Link = memo(function Link({ anchorNoUnderline, navigationAction, onBeforePress, + accessibilityActions, + onAccessibilityAction, ...props }: Props) { const t = useTheme() @@ -88,6 +91,11 @@ export const Link = memo(function Link({ [closeModal, navigation, navigationAction, href, openLink, onBeforePress], ) + const accessibilityActionsWithActivate = [ + ...(accessibilityActions || []), + {name: 'activate', label: title}, + ] + if (noFeedback) { return ( @@ -96,6 +104,14 @@ export const Link = memo(function Link({ onPress={onPress} accessible={accessible} accessibilityRole="link" + accessibilityActions={accessibilityActionsWithActivate} + onAccessibilityAction={e => { + if (e.nativeEvent.actionName === 'activate') { + onPress() + } else { + onAccessibilityAction?.(e) + } + }} {...props} android_ripple={{ color: t.atoms.bg_contrast_25.backgroundColor, diff --git a/src/view/com/util/List.tsx b/src/view/com/util/List.tsx index 0064a7b80c..22d0949129 100644 --- a/src/view/com/util/List.tsx +++ b/src/view/com/util/List.tsx @@ -26,6 +26,8 @@ export type ListProps = Omit< onItemSeen?: (item: ItemT) => void containWeb?: boolean sideBorders?: boolean + // Web only prop to disable a perf optimization (which would otherwise be on). + disableContentVisibility?: boolean } export type ListRef = React.MutableRefObject @@ -44,22 +46,29 @@ function ListImpl( ref: React.Ref, ) { const isScrolledDown = useSharedValue(false) - const contextScrollHandlers = useScrollHandlers() const pal = usePalette('default') function handleScrolledDownChange(didScrollDown: boolean) { onScrolledDownChange?.(didScrollDown) } + // Intentionally destructured outside the main thread closure. + // See https://github.com/bluesky-social/social-app/pull/4108. + const { + onBeginDrag: onBeginDragFromContext, + onEndDrag: onEndDragFromContext, + onScroll: onScrollFromContext, + onMomentumEnd: onMomentumEndFromContext, + } = useScrollHandlers() const scrollHandler = useAnimatedScrollHandler({ onBeginDrag(e, ctx) { - contextScrollHandlers.onBeginDrag?.(e, ctx) + onBeginDragFromContext?.(e, ctx) }, onEndDrag(e, ctx) { - contextScrollHandlers.onEndDrag?.(e, ctx) + onEndDragFromContext?.(e, ctx) }, onScroll(e, ctx) { - contextScrollHandlers.onScroll?.(e, ctx) + onScrollFromContext?.(e, ctx) const didScrollDown = e.contentOffset.y > SCROLLED_DOWN_LIMIT if (isScrolledDown.value !== didScrollDown) { @@ -72,7 +81,7 @@ function ListImpl( // Note: adding onMomentumBegin here makes simulator scroll // lag on Android. So either don't add it, or figure out why. onMomentumEnd(e, ctx) { - contextScrollHandlers.onMomentumEnd?.(e, ctx) + onMomentumEndFromContext?.(e, ctx) }, }) @@ -90,7 +99,7 @@ function ListImpl( }, { itemVisiblePercentThreshold: 40, - minimumViewTime: 2e3, + minimumViewTime: 1.5e3, }, ] }, [onItemSeen]) diff --git a/src/view/com/util/List.web.tsx b/src/view/com/util/List.web.tsx index a64f7acf31..d4bd1b0039 100644 --- a/src/view/com/util/List.web.tsx +++ b/src/view/com/util/List.web.tsx @@ -5,6 +5,7 @@ import {ReanimatedScrollEvent} from 'react-native-reanimated/lib/typescript/rean import {batchedUpdates} from '#/lib/batchedUpdates' import {useNonReactiveCallback} from '#/lib/hooks/useNonReactiveCallback' import {useScrollHandlers} from '#/lib/ScrollContext' +import {isSafari} from 'lib/browser' import {usePalette} from 'lib/hooks/usePalette' import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' import {addStyle} from 'lib/styles' @@ -24,10 +25,11 @@ export type ListProps = Omit< desktopFixedHeight: any // TODO: Better types. containWeb?: boolean sideBorders?: boolean + disableContentVisibility?: boolean } export type ListRef = React.MutableRefObject // TODO: Better types. -const ON_ITEM_SEEN_WAIT_DURATION = 2e3 // post must be "seen" 2 seconds before capturing +const ON_ITEM_SEEN_WAIT_DURATION = 1.5e3 // when we consider post to be "seen" const ON_ITEM_SEEN_INTERSECTION_OPTS = { rootMargin: '-200px 0px -200px 0px', } // post must be 200px visible to be "seen" @@ -55,6 +57,7 @@ function ListImpl( extraData, style, sideBorders = true, + disableContentVisibility, ...props }: ListProps, ref: React.Ref, @@ -338,6 +341,7 @@ function ListImpl( renderItem={renderItem} extraData={extraData} onItemSeen={onItemSeen} + disableContentVisibility={disableContentVisibility} /> ) })} @@ -386,6 +390,7 @@ let Row = function RowImpl({ renderItem, extraData: _unused, onItemSeen, + disableContentVisibility, }: { item: ItemT index: number @@ -395,6 +400,7 @@ let Row = function RowImpl({ | ((data: {index: number; item: any; separators: any}) => React.ReactNode) extraData: any onItemSeen: ((item: any) => void) | undefined + disableContentVisibility?: boolean }): React.ReactNode { const rowRef = React.useRef(null) const intersectionTimeout = React.useRef(undefined) @@ -443,8 +449,15 @@ let Row = function RowImpl({ return null } + const shouldDisableContentVisibility = disableContentVisibility || isSafari return ( - + {renderItem({item, index, separators: null as any})} ) @@ -503,7 +516,6 @@ export const List = memo(React.forwardRef(ListImpl)) as ( ) => React.ReactElement // https://stackoverflow.com/questions/7944460/detect-safari-browser -const isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent) const styles = StyleSheet.create({ sideBorders: { @@ -516,9 +528,9 @@ const styles = StyleSheet.create({ marginLeft: 'auto', marginRight: 'auto', }, - row: { + contentVisibilityAuto: { // @ts-ignore web only - contentVisibility: isSafari ? '' : 'auto', // Safari support for this is buggy. + contentVisibility: 'auto', }, minHeightViewport: { // @ts-ignore web only diff --git a/src/view/com/util/LoadingPlaceholder.tsx b/src/view/com/util/LoadingPlaceholder.tsx index 6dfe125985..adeefd4ddb 100644 --- a/src/view/com/util/LoadingPlaceholder.tsx +++ b/src/view/com/util/LoadingPlaceholder.tsx @@ -1,20 +1,23 @@ import React from 'react' import { - StyleSheet, + DimensionValue, StyleProp, + StyleSheet, View, ViewStyle, - DimensionValue, } from 'react-native' -import { - HeartIcon, - HeartIconSolid, - CommentBottomArrow, - RepostIcon, -} from 'lib/icons' + +import {usePalette} from 'lib/hooks/usePalette' import {s} from 'lib/styles' import {useTheme} from 'lib/ThemeContext' -import {usePalette} from 'lib/hooks/usePalette' +import {atoms as a, useTheme as useTheme_NEW} from '#/alf' +import {Bubble_Stroke2_Corner2_Rounded as Bubble} from '#/components/icons/Bubble' +import { + Heart2_Filled_Stroke2_Corner0_Rounded as HeartIconFilled, + Heart2_Stroke2_Corner0_Rounded as HeartIconOutline, +} from '#/components/icons/Heart2' +import {Repost_Stroke2_Corner2_Rounded as Repost} from '#/components/icons/Repost' +import hairlineWidth = StyleSheet.hairlineWidth export function LoadingPlaceholder({ width, @@ -46,7 +49,7 @@ export function PostLoadingPlaceholder({ }: { style?: StyleProp }) { - const theme = useTheme() + const t = useTheme_NEW() const pal = usePalette('default') return ( @@ -67,35 +70,47 @@ export function PostLoadingPlaceholder({ - - - + + - - - + @@ -126,14 +141,14 @@ export function NotificationLoadingPlaceholder({ const pal = usePalette('default') return ( - - + - + void profile: AppBskyActorDefs.ProfileViewBasic + disableHoverCard?: boolean + onBeforePress?: () => void + accessible?: boolean } const BLUR_AMOUNT = isWeb ? 5 : 100 @@ -383,7 +385,9 @@ export {EditableUserAvatar} let PreviewableUserAvatar = ({ moderation, profile, + disableHoverCard, onBeforePress, + accessible = true, ...rest }: PreviewableUserAvatarProps): React.ReactNode => { const {_} = useLingui() @@ -395,9 +399,14 @@ let PreviewableUserAvatar = ({ }, [profile, queryClient, onBeforePress]) return ( - + @@ -245,7 +246,7 @@ const styles = StyleSheet.create({ marginRight: 'auto', }, border: { - borderBottomWidth: 1, + borderBottomWidth: hairlineWidth, }, titleContainer: { marginLeft: 'auto', diff --git a/src/view/com/util/Views.d.ts b/src/view/com/util/Views.d.ts index 16713921fb..3f4905574b 100644 --- a/src/view/com/util/Views.d.ts +++ b/src/view/com/util/Views.d.ts @@ -6,5 +6,14 @@ export function CenteredView({ sideBorders, ...props }: React.PropsWithChildren< - ViewProps & {sideBorders?: boolean; topBorder?: boolean} + ViewProps & { + /** + * @platform web + */ + sideBorders?: boolean + /** + * @platform web + */ + topBorder?: boolean + } >) diff --git a/src/view/com/util/Views.jsx b/src/view/com/util/Views.jsx index 2984a2d2d1..02a2b407ee 100644 --- a/src/view/com/util/Views.jsx +++ b/src/view/com/util/Views.jsx @@ -1,12 +1,7 @@ -import React from 'react' import {View} from 'react-native' import Animated from 'react-native-reanimated' +// If you explode these into functions, don't forget to forwardRef! export const FlatList_INTERNAL = Animated.FlatList -export function CenteredView(props) { - return -} - -export function ScrollView(props) { - return -} +export const CenteredView = View +export const ScrollView = Animated.ScrollView diff --git a/src/view/com/util/Views.web.tsx b/src/view/com/util/Views.web.tsx index ae165077ca..ffea9fe2e6 100644 --- a/src/view/com/util/Views.web.tsx +++ b/src/view/com/util/Views.web.tsx @@ -14,22 +14,25 @@ import React from 'react' import { + FlatList, FlatListProps, ScrollViewProps, StyleSheet, View, ViewProps, } from 'react-native' -import {addStyle} from 'lib/styles' +import Animated from 'react-native-reanimated' + import {usePalette} from 'lib/hooks/usePalette' import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import Animated from 'react-native-reanimated' +import {addStyle} from 'lib/styles' +import hairlineWidth = StyleSheet.hairlineWidth interface AddedProps { desktopFixedHeight?: boolean | number } -export function CenteredView({ +export const CenteredView = React.forwardRef(function CenteredView({ style, sideBorders, topBorder, @@ -44,8 +47,8 @@ export function CenteredView({ } if (sideBorders) { style = addStyle(style, { - borderLeftWidth: 1, - borderRightWidth: 1, + borderLeftWidth: hairlineWidth, + borderRightWidth: hairlineWidth, }) style = addStyle(style, pal.border) } @@ -56,7 +59,7 @@ export function CenteredView({ style = addStyle(style, pal.border) } return -} +}) export const FlatList_INTERNAL = React.forwardRef(function FlatListImpl( { @@ -66,7 +69,7 @@ export const FlatList_INTERNAL = React.forwardRef(function FlatListImpl( desktopFixedHeight, ...props }: React.PropsWithChildren & AddedProps>, - ref: React.Ref>, + ref: React.Ref>, ) { const pal = usePalette('default') const {isMobile} = useWebMediaQueries() @@ -157,8 +160,8 @@ export const ScrollView = React.forwardRef(function ScrollViewImpl( const styles = StyleSheet.create({ contentContainer: { - borderLeftWidth: 1, - borderRightWidth: 1, + borderLeftWidth: hairlineWidth, + borderRightWidth: hairlineWidth, // @ts-ignore web only minHeight: '100vh', }, diff --git a/src/view/com/util/fab/FABInner.tsx b/src/view/com/util/fab/FABInner.tsx index a01756da06..c9443127b8 100644 --- a/src/view/com/util/fab/FABInner.tsx +++ b/src/view/com/util/fab/FABInner.tsx @@ -1,14 +1,15 @@ import React, {ComponentProps} from 'react' import {StyleSheet, TouchableWithoutFeedback} from 'react-native' -import Animated from 'react-native-reanimated' +import Animated, {useAnimatedStyle, withTiming} from 'react-native-reanimated' import {useSafeAreaInsets} from 'react-native-safe-area-context' import {LinearGradient} from 'expo-linear-gradient' +import {useMinimalShellMode} from '#/lib/hooks/useMinimalShellMode' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {clamp} from '#/lib/numbers' +import {gradients} from '#/lib/styles' import {isWeb} from '#/platform/detection' -import {useMinimalShellMode} from 'lib/hooks/useMinimalShellMode' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {clamp} from 'lib/numbers' -import {gradients} from 'lib/styles' +import {useInteractionState} from '#/components/hooks/useInteractionState' export interface FABProps extends ComponentProps { @@ -20,21 +21,28 @@ export function FABInner({testID, icon, ...props}: FABProps) { const insets = useSafeAreaInsets() const {isMobile, isTablet} = useWebMediaQueries() const {fabMinimalShellTransform} = useMinimalShellMode() + const { + state: pressed, + onIn: onPressIn, + onOut: onPressOut, + } = useInteractionState() - const size = React.useMemo(() => { - return isTablet ? styles.sizeLarge : styles.sizeRegular - }, [isTablet]) - const tabletSpacing = React.useMemo(() => { - return isTablet - ? {right: 50, bottom: 50} - : { - right: 24, - bottom: clamp(insets.bottom, 15, 60) + 15, - } - }, [insets.bottom, isTablet]) + const size = isTablet ? styles.sizeLarge : styles.sizeRegular + + const tabletSpacing = isTablet + ? {right: 50, bottom: 50} + : {right: 24, bottom: clamp(insets.bottom, 15, 60) + 15} + + const scale = useAnimatedStyle(() => ({ + transform: [{scale: withTiming(pressed ? 0.95 : 1)}], + })) return ( - + - - {icon} - + + + {icon} + + ) diff --git a/src/view/com/util/forms/DropdownButton.tsx b/src/view/com/util/forms/DropdownButton.tsx index 2285b0615a..bfbafcad9d 100644 --- a/src/view/com/util/forms/DropdownButton.tsx +++ b/src/view/com/util/forms/DropdownButton.tsx @@ -10,18 +10,22 @@ import { View, ViewStyle, } from 'react-native' -import {IconProp} from '@fortawesome/fontawesome-svg-core' +import Animated, {FadeIn, FadeInDown, FadeInUp} from 'react-native-reanimated' import RootSiblings from 'react-native-root-siblings' +import {IconProp} from '@fortawesome/fontawesome-svg-core' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' +import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + +import {HITSLOP_10} from 'lib/constants' +import {usePalette} from 'lib/hooks/usePalette' +import {colors} from 'lib/styles' +import {useTheme} from 'lib/ThemeContext' +import {isWeb} from 'platform/detection' +import {native} from '#/alf' +import {FullWindowOverlay} from '#/components/FullWindowOverlay' import {Text} from '../text/Text' import {Button, ButtonType} from './Button' -import {colors} from 'lib/styles' -import {usePalette} from 'lib/hooks/usePalette' -import {useTheme} from 'lib/ThemeContext' -import {HITSLOP_10} from 'lib/constants' -import {useLingui} from '@lingui/react' -import {msg} from '@lingui/macro' -import {isWeb} from 'platform/detection' const ESTIMATED_BTN_HEIGHT = 50 const ESTIMATED_SEP_HEIGHT = 16 @@ -124,6 +128,7 @@ export function DropdownButton({ pageY, menuWidth, items.filter(v => !!v) as DropdownItem[], + openUpwards, ) }, ) @@ -178,6 +183,7 @@ function createDropdownMenu( pageY: number, width: number, items: DropdownItem[], + opensUpwards = false, ): RootSiblings { const onPressItem = (index: number) => { sibling.destroy() @@ -197,6 +203,7 @@ function createDropdownMenu( width={width} items={items} onPressItem={onPressItem} + openUpwards={opensUpwards} /> ), ) @@ -211,6 +218,7 @@ type DropDownItemProps = { width: number items: DropdownItem[] onPressItem: (index: number) => void + openUpwards: boolean } const DropdownItems = ({ @@ -221,6 +229,7 @@ const DropdownItems = ({ width, items, onPressItem, + openUpwards, }: DropDownItemProps) => { const pal = usePalette('default') const theme = useTheme() @@ -239,13 +248,14 @@ const DropdownItems = ({ // - (On mobile) be buttons by default, accept `label` and `nativeID` // props, and always have an explicit label return ( - <> + {/* This TouchableWithoutFeedback renders the background so if the user clicks outside, the dropdown closes */} - - - + + ) } @@ -323,14 +336,12 @@ const styles = StyleSheet.create({ position: 'absolute', left: 0, width: '100%', - backgroundColor: '#000', - opacity: 0.1, + backgroundColor: 'rgba(0, 0, 0, 0.1)', }, menu: { position: 'absolute', backgroundColor: '#fff', borderRadius: 14, - opacity: 1, paddingVertical: 6, }, menuItem: { diff --git a/src/view/com/util/forms/PostDropdownBtn.tsx b/src/view/com/util/forms/PostDropdownBtn.tsx index 7a62ce7cbc..945cf5e596 100644 --- a/src/view/com/util/forms/PostDropdownBtn.tsx +++ b/src/view/com/util/forms/PostDropdownBtn.tsx @@ -1,5 +1,10 @@ import React, {memo} from 'react' -import {Pressable, PressableProps, StyleProp, ViewStyle} from 'react-native' +import { + Pressable, + type PressableProps, + type StyleProp, + type ViewStyle, +} from 'react-native' import * as Clipboard from 'expo-clipboard' import { AppBskyActorDefs, @@ -7,13 +12,12 @@ import { AtUri, RichText as RichTextAPI, } from '@atproto/api' -import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' -import {msg} from '@lingui/macro' +import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' import {useNavigation} from '@react-navigation/native' import {makeProfileLink} from '#/lib/routes/links' -import {CommonNavigatorParams} from '#/lib/routes/types' +import {CommonNavigatorParams, NavigationProp} from '#/lib/routes/types' import {richTextToString} from '#/lib/strings/rich-text-helpers' import {getTranslatorLink} from '#/locale/helpers' import {logger} from '#/logger' @@ -33,10 +37,12 @@ import {atoms as a, useBreakpoints, useTheme as useAlf} from '#/alf' import {useDialogControl} from '#/components/Dialog' import {useGlobalDialogsControlContext} from '#/components/dialogs/Context' import {EmbedDialog} from '#/components/dialogs/Embed' +import {SendViaChatDialog} from '#/components/dms/dialogs/ShareViaChatDialog' import {ArrowOutOfBox_Stroke2_Corner0_Rounded as Share} from '#/components/icons/ArrowOutOfBox' import {BubbleQuestion_Stroke2_Corner0_Rounded as Translate} from '#/components/icons/Bubble' import {Clipboard_Stroke2_Corner2_Rounded as ClipboardIcon} from '#/components/icons/Clipboard' import {CodeBrackets_Stroke2_Corner0_Rounded as CodeBrackets} from '#/components/icons/CodeBrackets' +import {DotGrid_Stroke2_Corner0_Rounded as DotsHorizontal} from '#/components/icons/DotGrid' import { EmojiSad_Stroke2_Corner0_Rounded as EmojiSad, EmojiSmile_Stroke2_Corner0_Rounded as EmojiSmile, @@ -44,12 +50,18 @@ import { import {EyeSlash_Stroke2_Corner0_Rounded as EyeSlash} from '#/components/icons/EyeSlash' import {Filter_Stroke2_Corner0_Rounded as Filter} from '#/components/icons/Filter' import {Mute_Stroke2_Corner0_Rounded as Mute} from '#/components/icons/Mute' +import {PaperPlane_Stroke2_Corner0_Rounded as Send} from '#/components/icons/PaperPlane' import {SpeakerVolumeFull_Stroke2_Corner0_Rounded as Unmute} from '#/components/icons/Speaker' import {Trash_Stroke2_Corner0_Rounded as Trash} from '#/components/icons/Trash' import {Warning_Stroke2_Corner0_Rounded as Warning} from '#/components/icons/Warning' import * as Menu from '#/components/Menu' import * as Prompt from '#/components/Prompt' import {ReportDialog, useReportDialogControl} from '#/components/ReportDialog' +import { + isAvailable as isNativeTranslationAvailable, + isLanguageSupported, + NativeTranslationModule, +} from '../../../../../modules/expo-bluesky-translate' import {EventStopper} from '../EventStopper' import * as Toast from '../Toast' @@ -63,6 +75,7 @@ let PostDropdownBtn = ({ richText, style, hitSlop, + size, timestamp, }: { testID: string @@ -74,6 +87,7 @@ let PostDropdownBtn = ({ richText: RichTextAPI style?: StyleProp hitSlop?: PressableProps['hitSlop'] + size?: 'lg' | 'md' | 'sm' timestamp: string }): React.ReactNode => { const {hasSession, currentAccount} = useSession() @@ -90,13 +104,14 @@ let PostDropdownBtn = ({ const {hidePost} = useHiddenPostsApi() const feedFeedback = useFeedFeedbackContext() const openLink = useOpenLink() - const navigation = useNavigation() + const navigation = useNavigation() const {mutedWordsDialogControl} = useGlobalDialogsControlContext() const reportDialogControl = useReportDialogControl() const deletePromptControl = useDialogControl() const hidePromptControl = useDialogControl() const loggedOutWarningPromptControl = useDialogControl() const embedPostControl = useDialogControl() + const sendViaChatControl = useDialogControl() const rootUri = record.reply?.root?.uri || postUri const isThreadMuted = mutedThreads.includes(rootUri) @@ -172,9 +187,17 @@ let PostDropdownBtn = ({ Toast.show(_(msg`Copied to clipboard`)) }, [_, richText]) - const onOpenTranslate = React.useCallback(() => { - openLink(translatorUrl) - }, [openLink, translatorUrl]) + const onPressTranslate = React.useCallback(() => { + if ( + isNativeTranslationAvailable && + isLanguageSupported(record?.langs?.at(0)) + ) { + const text = richTextToString(richText, true) + NativeTranslationModule.presentAsync(text) + } else { + openLink(translatorUrl) + } + }, [openLink, record?.langs, richText, translatorUrl]) const onHidePost = React.useCallback(() => { hidePost({uri: postUri}) @@ -209,6 +232,16 @@ let PostDropdownBtn = ({ Toast.show('Feedback sent!') }, [feedFeedback, postUri, postFeedContext]) + const onSelectChatToShareTo = React.useCallback( + (conversation: string) => { + navigation.navigate('MessagesConversation', { + conversation, + embed: postUri, + }) + }, + [navigation, postUri], + ) + const canEmbed = isWeb && gtMobile && !hideInPWI return ( @@ -225,14 +258,13 @@ let PostDropdownBtn = ({ style, a.rounded_full, (state.hovered || state.pressed) && [ - alf.atoms.bg_contrast_50, + alf.atoms.bg_contrast_25, ], ]}> - ) @@ -246,7 +278,7 @@ let PostDropdownBtn = ({ + onPress={onPressTranslate}> {_(msg`Translate`)} @@ -261,6 +293,18 @@ let PostDropdownBtn = ({ )} + {hasSession && ( + + + Send via direct message + + + + )} + )} + + ) } diff --git a/src/view/com/util/forms/RadioButton.tsx b/src/view/com/util/forms/RadioButton.tsx index 9d1cb47497..6cecd318e7 100644 --- a/src/view/com/util/forms/RadioButton.tsx +++ b/src/view/com/util/forms/RadioButton.tsx @@ -1,9 +1,10 @@ import React from 'react' import {StyleProp, StyleSheet, TextStyle, View, ViewStyle} from 'react-native' + +import {choose} from 'lib/functions' +import {useTheme} from 'lib/ThemeContext' import {Text} from '../text/Text' import {Button, ButtonType} from './Button' -import {useTheme} from 'lib/ThemeContext' -import {choose} from 'lib/functions' export function RadioButton({ testID, diff --git a/src/view/com/util/forms/RadioGroup.tsx b/src/view/com/util/forms/RadioGroup.tsx index 14599e6490..493c36a9d8 100644 --- a/src/view/com/util/forms/RadioGroup.tsx +++ b/src/view/com/util/forms/RadioGroup.tsx @@ -1,8 +1,9 @@ import React, {useState} from 'react' import {View} from 'react-native' -import {RadioButton} from './RadioButton' -import {ButtonType} from './Button' + import {s} from 'lib/styles' +import {ButtonType} from './Button' +import {RadioButton} from './RadioButton' export interface RadioGroupItem { label: string | JSX.Element diff --git a/src/view/com/util/images/Gallery.tsx b/src/view/com/util/images/Gallery.tsx index f6d2c7a1b0..8d23d258f5 100644 --- a/src/view/com/util/images/Gallery.tsx +++ b/src/view/com/util/images/Gallery.tsx @@ -74,12 +74,12 @@ const styles = StyleSheet.create({ position: 'absolute', // Related to margin/gap hack. This keeps the alt label in the same position // on all platforms - left: isWeb ? 8 : 5, + right: isWeb ? 8 : 5, bottom: isWeb ? 8 : 5, }, alt: { color: 'white', - fontSize: 10, + fontSize: 7, fontWeight: 'bold', }, }) diff --git a/src/view/com/util/images/Image.web.tsx b/src/view/com/util/images/Image.web.tsx index ecd9d730ab..a5200b3ea2 100644 --- a/src/view/com/util/images/Image.web.tsx +++ b/src/view/com/util/images/Image.web.tsx @@ -1,11 +1,3 @@ -import { - Image, - NativeSyntheticEvent, - ImageLoadEventData, - ImageSourcePropType, -} from 'react-native' -export default Image +import {Image} from 'react-native' + export const HighPriorityImage = Image -export type OnLoadEvent = NativeSyntheticEvent -export type Source = ImageSourcePropType -export type {ImageStyle} from 'react-native' diff --git a/src/view/com/util/images/ImageHorzList.tsx b/src/view/com/util/images/ImageHorzList.tsx index e37f8af1b7..12eef14f73 100644 --- a/src/view/com/util/images/ImageHorzList.tsx +++ b/src/view/com/util/images/ImageHorzList.tsx @@ -27,11 +27,14 @@ export function ImageHorzList({images, style}: Props) { } const styles = StyleSheet.create({ - flexRow: {flexDirection: 'row'}, + flexRow: { + flexDirection: 'row', + gap: 5, + }, image: { - width: 100, - height: 100, + maxWidth: 100, + aspectRatio: 1, + flex: 1, borderRadius: 4, - marginRight: 5, }, }) diff --git a/src/view/com/util/load-latest/LoadLatestBtn.tsx b/src/view/com/util/load-latest/LoadLatestBtn.tsx index f02e4a2bd7..a6b40f9f52 100644 --- a/src/view/com/util/load-latest/LoadLatestBtn.tsx +++ b/src/view/com/util/load-latest/LoadLatestBtn.tsx @@ -1,17 +1,22 @@ import React from 'react' import {StyleSheet, TouchableOpacity, View} from 'react-native' -import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import Animated from 'react-native-reanimated' +import {useSafeAreaInsets} from 'react-native-safe-area-context' +import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {useMediaQuery} from 'react-responsive' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {colors} from 'lib/styles' -import {HITSLOP_20} from 'lib/constants' -import {useMinimalShellMode} from 'lib/hooks/useMinimalShellMode' + +import {HITSLOP_20} from '#/lib/constants' +import {useMinimalShellMode} from '#/lib/hooks/useMinimalShellMode' +import {usePalette} from '#/lib/hooks/usePalette' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {clamp} from '#/lib/numbers' +import {colors} from '#/lib/styles' +import {isWeb} from '#/platform/detection' +import {useSession} from '#/state/session' +import hairlineWidth = StyleSheet.hairlineWidth + const AnimatedTouchableOpacity = Animated.createAnimatedComponent(TouchableOpacity) -import {isWeb} from 'platform/detection' -import {useSession} from 'state/session' export function LoadLatestBtn({ onPress, @@ -26,6 +31,7 @@ export function LoadLatestBtn({ const {hasSession} = useSession() const {isDesktop, isTablet, isMobile, isTabletOrMobile} = useWebMediaQueries() const {fabMinimalShellTransform} = useMinimalShellMode() + const insets = useSafeAreaInsets() // move button inline if it starts overlapping the left nav const isTallViewport = useMediaQuery({minHeight: 700}) @@ -34,6 +40,10 @@ export function LoadLatestBtn({ // it on both tablet and mobile since we are showing the bottom bar (see createNativeStackNavigatorWithAuth) const showBottomBar = hasSession ? isMobile : isTabletOrMobile + const bottomPosition = isTablet + ? {bottom: 50} + : {bottom: clamp(insets.bottom, 15, 60) + 15} + return ( Intl.NumberFormat('en-US', { notation: 'compact', maximumFractionDigits: 1, + // `1,953` shouldn't be rounded up to 2k, it should be truncated. + // @ts-expect-error: `roundingMode` doesn't seem to be in the typings yet + // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/NumberFormat#roundingmode + roundingMode: 'trunc', }).format(num) export function formatCountShortOnly(num: number): string { diff --git a/src/view/com/util/post-ctrls/PostCtrls.tsx b/src/view/com/util/post-ctrls/PostCtrls.tsx index b6c07d5735..d42590e905 100644 --- a/src/view/com/util/post-ctrls/PostCtrls.tsx +++ b/src/view/com/util/post-ctrls/PostCtrls.tsx @@ -1,10 +1,10 @@ import React, {memo, useCallback} from 'react' import { - StyleProp, - StyleSheet, - TouchableOpacity, + Pressable, + type PressableStateCallbackType, + type StyleProp, View, - ViewStyle, + type ViewStyle, } from 'react-native' import { AppBskyFeedDefs, @@ -16,24 +16,27 @@ import {msg, plural} from '@lingui/macro' import {useLingui} from '@lingui/react' import {HITSLOP_10, HITSLOP_20} from '#/lib/constants' -import {CommentBottomArrow, HeartIcon, HeartIconSolid} from '#/lib/icons' +import {useHaptics} from '#/lib/haptics' import {makeProfileLink} from '#/lib/routes/links' import {shareUrl} from '#/lib/sharing' import {toShareUrl} from '#/lib/strings/url-helpers' import {s} from '#/lib/styles' -import {useTheme} from '#/lib/ThemeContext' import {Shadow} from '#/state/cache/types' import {useFeedFeedbackContext} from '#/state/feed-feedback' -import {useModalControls} from '#/state/modals' import { usePostLikeMutationQueue, usePostRepostMutationQueue, } from '#/state/queries/post' import {useRequireAuth} from '#/state/session' import {useComposerControls} from '#/state/shell/composer' -import {useHaptics} from 'lib/haptics' +import {atoms as a, useTheme} from '#/alf' import {useDialogControl} from '#/components/Dialog' import {ArrowOutOfBox_Stroke2_Corner0_Rounded as ArrowOutOfBox} from '#/components/icons/ArrowOutOfBox' +import {Bubble_Stroke2_Corner2_Rounded as Bubble} from '#/components/icons/Bubble' +import { + Heart2_Filled_Stroke2_Corner0_Rounded as HeartIconFilled, + Heart2_Stroke2_Corner0_Rounded as HeartIconOutline, +} from '#/components/icons/Heart2' import * as Prompt from '#/components/Prompt' import {PostDropdownBtn} from '../forms/PostDropdownBtn' import {Text} from '../text/Text' @@ -58,10 +61,9 @@ let PostCtrls = ({ onPressReply: () => void logContext: 'FeedItem' | 'PostThreadItem' | 'Post' }): React.ReactNode => { - const theme = useTheme() + const t = useTheme() const {_} = useLingui() const {openComposer} = useComposerControls() - const {closeModal} = useModalControls() const [queueLike, queueUnlike] = usePostLikeMutationQueue(post, logContext) const [queueRepost, queueUnrepost] = usePostRepostMutationQueue( post, @@ -80,9 +82,9 @@ let PostCtrls = ({ const defaultCtrlColor = React.useMemo( () => ({ - color: theme.palette.default.postCtrl, + color: t.palette.contrast_500, }), - [theme], + [t], ) as StyleProp const onPressToggleLike = React.useCallback(async () => { @@ -114,10 +116,8 @@ let PostCtrls = ({ ]) const onRepost = useCallback(async () => { - closeModal() try { if (!post.viewer?.repost) { - playHaptic() sendInteraction({ item: post.uri, event: 'app.bsky.feed.defs#interactionRepost', @@ -133,10 +133,8 @@ let PostCtrls = ({ } } }, [ - closeModal, post.uri, post.viewer?.repost, - playHaptic, queueRepost, queueUnrepost, sendInteraction, @@ -144,7 +142,6 @@ let PostCtrls = ({ ]) const onQuote = useCallback(() => { - closeModal() sendInteraction({ item: post.uri, event: 'app.bsky.feed.defs#interactionQuote', @@ -159,16 +156,13 @@ let PostCtrls = ({ indexedAt: post.indexedAt, }, }) - playHaptic() }, [ - closeModal, openComposer, post.uri, post.cid, post.author, post.indexedAt, record.text, - playHaptic, sendInteraction, feedContext, ]) @@ -185,57 +179,70 @@ let PostCtrls = ({ }) }, [post.uri, post.author, sendInteraction, feedContext]) + const btnStyle = React.useCallback( + ({pressed, hovered}: PressableStateCallbackType) => [ + a.gap_xs, + a.rounded_full, + a.flex_row, + a.align_center, + a.justify_center, + {padding: 5}, + (pressed || hovered) && t.atoms.bg_contrast_25, + ], + [t.atoms.bg_contrast_25], + ) + return ( - + - { if (!post.viewer?.replyDisabled) { requireAuth(() => onPressReply()) } }} - accessibilityRole="button" accessibilityLabel={plural(post.replyCount || 0, { one: 'Reply (# reply)', other: 'Reply (# replies)', })} accessibilityHint="" hitSlop={big ? HITSLOP_20 : HITSLOP_10}> - {typeof post.replyCount !== 'undefined' && post.replyCount > 0 ? ( - + {post.replyCount} ) : undefined} - + - + - - + { - requireAuth(() => onPressToggleLike()) - }} - accessibilityRole="button" + style={btnStyle} + onPress={() => requireAuth(() => onPressToggleLike())} accessibilityLabel={ post.viewer?.like ? plural(post.likeCount || 0, { @@ -250,33 +257,36 @@ let PostCtrls = ({ accessibilityHint="" hitSlop={big ? HITSLOP_20 : HITSLOP_10}> {post.viewer?.like ? ( - + ) : ( - )} {typeof post.likeCount !== 'undefined' && post.likeCount > 0 ? ( + style={[ + [ + big ? a.text_md : {fontSize: 15}, + a.user_select_none, + post.viewer?.like + ? [a.font_bold, s.likeColor] + : defaultCtrlColor, + ], + ]}> {post.likeCount} ) : undefined} - + {big && ( <> - - + { if (shouldShowLoggedOutWarning) { loggedOutWarningPromptControl.open() @@ -284,15 +294,14 @@ let PostCtrls = ({ onShare() } }} - accessibilityRole="button" - accessibilityLabel={`${_(msg`Share`)}`} + accessibilityLabel={_(msg`Share`)} accessibilityHint="" hitSlop={big ? HITSLOP_20 : HITSLOP_10}> - + )} - + @@ -324,31 +333,3 @@ let PostCtrls = ({ } PostCtrls = memo(PostCtrls) export {PostCtrls} - -const styles = StyleSheet.create({ - ctrls: { - flexDirection: 'row', - justifyContent: 'space-between', - alignItems: 'center', - }, - ctrl: { - flex: 1, - alignItems: 'flex-start', - }, - ctrlBig: { - alignItems: 'center', - }, - btn: { - flexDirection: 'row', - alignItems: 'center', - }, - btnPad: { - paddingTop: 5, - paddingBottom: 5, - paddingLeft: 5, - paddingRight: 5, - }, - mt1: { - marginTop: 1, - }, -}) diff --git a/src/view/com/util/post-ctrls/RepostButton.tsx b/src/view/com/util/post-ctrls/RepostButton.tsx index c1af39a5dd..b1fe73d5b3 100644 --- a/src/view/com/util/post-ctrls/RepostButton.tsx +++ b/src/view/com/util/post-ctrls/RepostButton.tsx @@ -1,107 +1,144 @@ import React, {memo, useCallback} from 'react' -import {StyleProp, StyleSheet, TouchableOpacity, ViewStyle} from 'react-native' -import {RepostIcon} from 'lib/icons' -import {s, colors} from 'lib/styles' -import {useTheme} from 'lib/ThemeContext' -import {Text} from '../text/Text' -import {HITSLOP_10, HITSLOP_20} from 'lib/constants' -import {useModalControls} from '#/state/modals' -import {useRequireAuth} from '#/state/session' +import {View} from 'react-native' import {msg, plural} from '@lingui/macro' import {useLingui} from '@lingui/react' +import {useHaptics} from '#/lib/haptics' +import {useRequireAuth} from '#/state/session' +import {atoms as a, useTheme} from '#/alf' +import {Button, ButtonText} from '#/components/Button' +import * as Dialog from '#/components/Dialog' +import {CloseQuote_Stroke2_Corner1_Rounded as Quote} from '#/components/icons/Quote' +import {Repost_Stroke2_Corner2_Rounded as Repost} from '#/components/icons/Repost' +import {Text} from '#/components/Typography' + interface Props { isReposted: boolean repostCount?: number - big?: boolean onRepost: () => void onQuote: () => void + big?: boolean } let RepostButton = ({ isReposted, repostCount, - big, onRepost, onQuote, + big, }: Props): React.ReactNode => { - const theme = useTheme() + const t = useTheme() const {_} = useLingui() - const {openModal} = useModalControls() const requireAuth = useRequireAuth() + const dialogControl = Dialog.useDialogControl() + const playHaptic = useHaptics() - const defaultControlColor = React.useMemo( + const color = React.useMemo( () => ({ - color: theme.palette.default.postCtrl, + color: isReposted ? t.palette.positive_600 : t.palette.contrast_500, }), - [theme], + [t, isReposted], ) - const onPressToggleRepostWrapper = useCallback(() => { - openModal({ - name: 'repost', - onRepost: onRepost, - onQuote: onQuote, - isReposted, - }) - }, [onRepost, onQuote, isReposted, openModal]) + const close = useCallback(() => dialogControl.close(), [dialogControl]) return ( - { - requireAuth(() => onPressToggleRepostWrapper()) - }} - style={[styles.btn, !big && styles.btnPad]} - accessibilityRole="button" - accessibilityLabel={`${ - isReposted - ? _(msg`Undo repost`) - : _(msg({message: 'Repost', context: 'action'})) - } (${plural(repostCount || 0, {one: '# repost', other: '# reposts'})})`} - accessibilityHint="" - hitSlop={big ? HITSLOP_20 : HITSLOP_10}> - + + + + + + + + + + + + + + ) } RepostButton = memo(RepostButton) export {RepostButton} - -const styles = StyleSheet.create({ - btn: { - flexDirection: 'row', - alignItems: 'center', - }, - btnPad: { - paddingTop: 5, - paddingBottom: 5, - paddingLeft: 5, - paddingRight: 5, - }, - reposted: { - color: colors.green3, - }, - repostCount: { - color: 'currentColor', - }, -}) diff --git a/src/view/com/util/post-ctrls/RepostButton.web.tsx b/src/view/com/util/post-ctrls/RepostButton.web.tsx index bbe5869feb..0898981419 100644 --- a/src/view/com/util/post-ctrls/RepostButton.web.tsx +++ b/src/view/com/util/post-ctrls/RepostButton.web.tsx @@ -1,130 +1,134 @@ import React from 'react' -import {StyleProp, StyleSheet, View, ViewStyle, Pressable} from 'react-native' -import {RepostIcon} from 'lib/icons' -import {colors} from 'lib/styles' -import {useTheme} from 'lib/ThemeContext' -import {Text} from '../text/Text' - -import { - NativeDropdown, - DropdownItem as NativeDropdownItem, -} from '../forms/NativeDropdown' -import {EventStopper} from '../EventStopper' -import {useLingui} from '@lingui/react' +import {Pressable, View} from 'react-native' import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' + import {useRequireAuth} from '#/state/session' import {useSession} from '#/state/session' +import {atoms as a, useTheme} from '#/alf' +import {Button} from '#/components/Button' +import {CloseQuote_Stroke2_Corner1_Rounded as Quote} from '#/components/icons/Quote' +import {Repost_Stroke2_Corner2_Rounded as Repost} from '#/components/icons/Repost' +import * as Menu from '#/components/Menu' +import {Text} from '#/components/Typography' +import {EventStopper} from '../EventStopper' interface Props { isReposted: boolean repostCount?: number - big?: boolean onRepost: () => void onQuote: () => void - style?: StyleProp + big?: boolean } export const RepostButton = ({ isReposted, repostCount, - big, onRepost, onQuote, + big, }: Props) => { - const theme = useTheme() + const t = useTheme() const {_} = useLingui() const {hasSession} = useSession() const requireAuth = useRequireAuth() - const defaultControlColor = React.useMemo( + const color = React.useMemo( () => ({ - color: theme.palette.default.postCtrl, + color: isReposted ? t.palette.positive_600 : t.palette.contrast_500, }), - [theme], - ) - - const dropdownItems: NativeDropdownItem[] = [ - { - label: isReposted ? _(msg`Undo repost`) : _(msg`Repost`), - testID: 'repostDropdownRepostBtn', - icon: { - ios: {name: 'repeat'}, - android: '', - web: 'retweet', - }, - onPress: onRepost, - }, - { - label: _(msg`Quote post`), - testID: 'repostDropdownQuoteBtn', - icon: { - ios: {name: 'quote.bubble'}, - android: '', - web: 'quote-left', - }, - onPress: onQuote, - }, - ] - - const inner = ( - , - ]}> - - {typeof repostCount !== 'undefined' && repostCount > 0 ? ( - - {repostCount} - - ) : undefined} - + [t, isReposted], ) return hasSession ? ( - - - {inner} - + + + + {({props, state}) => { + return ( + + + + ) + }} + + + + + {isReposted ? _(msg`Undo repost`) : _(msg`Repost`)} + + + + + {_(msg`Quote post`)} + + + + ) : ( - { requireAuth(() => {}) }} - accessibilityLabel={_(msg`Repost or quote post`)} - accessibilityHint=""> - {inner} - + label={_(msg`Repost or quote post`)} + style={{padding: 0}} + hoverStyle={t.atoms.bg_contrast_25} + shape="round" + variant="ghost" + color="secondary"> + + ) } -const styles = StyleSheet.create({ - btn: { - flexDirection: 'row', - alignItems: 'center', - gap: 4, - }, - btnPad: { - paddingTop: 5, - paddingBottom: 5, - paddingLeft: 5, - paddingRight: 5, - }, - reposted: { - color: colors.green3, - }, - repostCount: { - color: 'currentColor', - }, -}) +const RepostInner = ({ + isReposted, + color, + repostCount, + big, +}: { + isReposted: boolean + color: {color: string} + repostCount?: number + big?: boolean +}) => ( + + + {typeof repostCount !== 'undefined' && repostCount > 0 ? ( + + {repostCount} + + ) : undefined} + +) diff --git a/src/view/com/util/post-embeds/GifEmbed.tsx b/src/view/com/util/post-embeds/GifEmbed.tsx index deb82655b5..1c0cf3d39d 100644 --- a/src/view/com/util/post-embeds/GifEmbed.tsx +++ b/src/view/com/util/post-embeds/GifEmbed.tsx @@ -5,7 +5,7 @@ import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {HITSLOP_10} from '#/lib/constants' +import {HITSLOP_20} from '#/lib/constants' import {parseAltFromGIFDescription} from '#/lib/gif-alt-text' import {isWeb} from '#/platform/detection' import {EmbedPlayerParams} from 'lib/strings/embed-player' @@ -166,7 +166,7 @@ function AltText({text}: {text: string}) { accessibilityRole="button" accessibilityLabel={_(msg`Show alt text`)} accessibilityHint="" - hitSlop={HITSLOP_10} + hitSlop={HITSLOP_20} onPress={control.open} style={styles.altContainer}> @@ -195,18 +195,18 @@ const styles = StyleSheet.create({ altContainer: { backgroundColor: 'rgba(0, 0, 0, 0.75)', borderRadius: 6, - paddingHorizontal: 6, - paddingVertical: 3, + paddingHorizontal: isWeb ? 8 : 6, + paddingVertical: isWeb ? 6 : 3, position: 'absolute', // Related to margin/gap hack. This keeps the alt label in the same position // on all platforms - left: isWeb ? 8 : 5, + right: isWeb ? 8 : 5, bottom: isWeb ? 8 : 5, zIndex: 2, }, alt: { color: 'white', - fontSize: 10, + fontSize: isWeb ? 10 : 7, fontWeight: 'bold', }, }) diff --git a/src/view/com/util/post-embeds/QuoteEmbed.tsx b/src/view/com/util/post-embeds/QuoteEmbed.tsx index 57f1d28ba6..cdbdafc9ba 100644 --- a/src/view/com/util/post-embeds/QuoteEmbed.tsx +++ b/src/view/com/util/post-embeds/QuoteEmbed.tsx @@ -2,6 +2,7 @@ import React from 'react' import { StyleProp, StyleSheet, + TextStyle, TouchableOpacity, View, ViewStyle, @@ -31,7 +32,7 @@ import {InfoCircleIcon} from 'lib/icons' import {makeProfileLink} from 'lib/routes/links' import {precacheProfile} from 'state/queries/profile' import {ComposerOptsQuote} from 'state/shell/composer' -import {atoms as a} from '#/alf' +import {atoms as a, flatten} from '#/alf' import {RichText} from '#/components/RichText' import {ContentHider} from '../../../../components/moderation/ContentHider' import {PostAlerts} from '../../../../components/moderation/PostAlerts' @@ -39,15 +40,18 @@ import {Link} from '../Link' import {PostMeta} from '../PostMeta' import {Text} from '../text/Text' import {PostEmbeds} from '.' +import hairlineWidth = StyleSheet.hairlineWidth export function MaybeQuoteEmbed({ embed, onOpen, style, + textStyle, }: { embed: AppBskyEmbedRecord.View onOpen?: () => void style?: StyleProp + textStyle?: StyleProp }) { const pal = usePalette('default') if ( @@ -61,6 +65,7 @@ export function MaybeQuoteEmbed({ postRecord={embed.record.value} onOpen={onOpen} style={style} + textStyle={textStyle} /> ) } else if (AppBskyEmbedRecord.isViewBlocked(embed.record)) { @@ -90,11 +95,13 @@ function QuoteEmbedModerated({ postRecord, onOpen, style, + textStyle, }: { viewRecord: AppBskyEmbedRecord.ViewRecord postRecord: AppBskyFeedPost.Record onOpen?: () => void style?: StyleProp + textStyle?: StyleProp }) { const moderationOpts = useModerationOpts() const moderation = React.useMemo(() => { @@ -119,6 +126,7 @@ function QuoteEmbedModerated({ moderation={moderation} onOpen={onOpen} style={style} + textStyle={textStyle} /> ) } @@ -128,11 +136,13 @@ export function QuoteEmbed({ moderation, onOpen, style, + textStyle, }: { quote: ComposerOptsQuote moderation?: ModerationDecision onOpen?: () => void style?: StyleProp + textStyle?: StyleProp }) { const queryClient = useQueryClient() const pal = usePalette('default') @@ -191,7 +201,7 @@ export function QuoteEmbed({ {richText ? ( @@ -247,12 +257,7 @@ const styles = StyleSheet.create({ marginTop: 8, paddingVertical: 12, paddingHorizontal: 12, - borderWidth: 1, - }, - quotePost: { - flex: 1, - paddingLeft: 13, - paddingRight: 8, + borderWidth: hairlineWidth, }, errorContainer: { flexDirection: 'row', @@ -262,7 +267,7 @@ const styles = StyleSheet.create({ marginTop: 8, paddingVertical: 14, paddingHorizontal: 14, - borderWidth: 1, + borderWidth: hairlineWidth, }, alert: { marginBottom: 6, diff --git a/src/view/com/util/post-embeds/index.tsx b/src/view/com/util/post-embeds/index.tsx index eb9732ee8e..962f3d8c51 100644 --- a/src/view/com/util/post-embeds/index.tsx +++ b/src/view/com/util/post-embeds/index.tsx @@ -4,6 +4,7 @@ import { StyleProp, StyleSheet, Text, + TextStyle, View, ViewStyle, } from 'react-native' @@ -27,6 +28,7 @@ import {ImageLayoutGrid} from '../images/ImageLayoutGrid' import {ExternalLinkEmbed} from './ExternalLinkEmbed' import {ListEmbed} from './ListEmbed' import {MaybeQuoteEmbed} from './QuoteEmbed' +import hairlineWidth = StyleSheet.hairlineWidth type Embed = | AppBskyEmbedRecord.View @@ -40,11 +42,13 @@ export function PostEmbeds({ moderation, onOpen, style, + quoteTextStyle, }: { embed?: Embed moderation?: ModerationDecision onOpen?: () => void style?: StyleProp + quoteTextStyle?: StyleProp }) { const pal = usePalette('default') const {openLightbox} = useLightboxControls() @@ -59,7 +63,11 @@ export function PostEmbeds({ moderation={moderation} onOpen={onOpen} /> - + ) } @@ -86,7 +94,14 @@ export function PostEmbeds({ // quote post // = - return + return ( + + ) } // image embed @@ -178,16 +193,16 @@ const styles = StyleSheet.create({ paddingHorizontal: 6, paddingVertical: 3, position: 'absolute', - left: 6, + right: 6, bottom: 6, }, alt: { color: 'white', - fontSize: 10, + fontSize: 7, fontWeight: 'bold', }, customFeedOuter: { - borderWidth: 1, + borderWidth: hairlineWidth, borderRadius: 8, marginTop: 4, paddingHorizontal: 12, diff --git a/src/view/icons/index.tsx b/src/view/icons/index.tsx index b9af6a519c..025b903b22 100644 --- a/src/view/icons/index.tsx +++ b/src/view/icons/index.tsx @@ -9,6 +9,7 @@ import {faCirclePlay} from '@fortawesome/free-regular-svg-icons/faCirclePlay' import {faCircleUser} from '@fortawesome/free-regular-svg-icons/faCircleUser' import {faClone as farClone} from '@fortawesome/free-regular-svg-icons/faClone' import {faComment} from '@fortawesome/free-regular-svg-icons/faComment' +import {faCommentDots} from '@fortawesome/free-regular-svg-icons/faCommentDots' import {faComments} from '@fortawesome/free-regular-svg-icons/faComments' import {faCompass} from '@fortawesome/free-regular-svg-icons/faCompass' import {faEyeSlash as farEyeSlash} from '@fortawesome/free-regular-svg-icons/faEyeSlash' @@ -142,6 +143,7 @@ library.add( faClone, farClone, faComment, + faCommentDots, faCommentSlash, faComments, faCompass, diff --git a/src/view/screens/AppPasswords.tsx b/src/view/screens/AppPasswords.tsx index 800216169b..65cbb7374e 100644 --- a/src/view/screens/AppPasswords.tsx +++ b/src/view/screens/AppPasswords.tsx @@ -5,32 +5,34 @@ import { TouchableOpacity, View, } from 'react-native' -import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {ScrollView} from 'react-native-gesture-handler' -import {Text} from '../com/util/text/Text' -import {Button} from '../com/util/forms/Button' -import * as Toast from '../com/util/Toast' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {NativeStackScreenProps} from '@react-navigation/native-stack' -import {CommonNavigatorParams} from 'lib/routes/types' -import {useAnalytics} from 'lib/analytics/analytics' -import {useFocusEffect} from '@react-navigation/native' -import {ViewHeader} from '../com/util/ViewHeader' -import {CenteredView} from 'view/com/util/Views' -import {Trans, msg} from '@lingui/macro' +import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' +import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {useSetMinimalShellMode} from '#/state/shell' +import {useFocusEffect} from '@react-navigation/native' +import {NativeStackScreenProps} from '@react-navigation/native-stack' + +import {useAnalytics} from '#/lib/analytics/analytics' +import {usePalette} from '#/lib/hooks/usePalette' +import {useWebMediaQueries} from '#/lib/hooks/useWebMediaQueries' +import {CommonNavigatorParams} from '#/lib/routes/types' +import {cleanError} from '#/lib/strings/errors' import {useModalControls} from '#/state/modals' import {useLanguagePrefs} from '#/state/preferences' import { - useAppPasswordsQuery, useAppPasswordDeleteMutation, + useAppPasswordsQuery, } from '#/state/queries/app-passwords' -import {ErrorScreen} from '../com/util/error/ErrorScreen' -import {cleanError} from '#/lib/strings/errors' -import * as Prompt from '#/components/Prompt' +import {useSetMinimalShellMode} from '#/state/shell' +import {ErrorScreen} from '#/view/com/util/error/ErrorScreen' +import {Button} from '#/view/com/util/forms/Button' +import {Text} from '#/view/com/util/text/Text' +import * as Toast from '#/view/com/util/Toast' +import {ViewHeader} from '#/view/com/util/ViewHeader' +import {CenteredView} from 'view/com/util/Views' +import {atoms as a} from '#/alf' import {useDialogControl} from '#/components/Dialog' +import * as Prompt from '#/components/Prompt' type Props = NativeStackScreenProps export function AppPasswords({}: Props) { @@ -135,6 +137,7 @@ export function AppPasswords({}: Props) { testID={`appPassword-${i}`} name={password.name} createdAt={password.createdAt} + privileged={password.privileged} /> ))} {isTabletOrDesktop && ( @@ -207,10 +210,12 @@ function AppPassword({ testID, name, createdAt, + privileged, }: { testID: string name: string createdAt: string + privileged?: boolean }) { const pal = usePalette('default') const {_} = useLingui() @@ -255,6 +260,18 @@ function AppPassword({ }).format(new Date(createdAt))} + {privileged && ( + + + + Allows access to direct messages + + + )} diff --git a/src/view/screens/DebugMod.tsx b/src/view/screens/DebugMod.tsx index 86c6321948..7d0d2fb03c 100644 --- a/src/view/screens/DebugMod.tsx +++ b/src/view/screens/DebugMod.tsx @@ -803,6 +803,8 @@ function MockPostFeedItem({ post={post} record={post.record as AppBskyFeedPost.Record} moderation={moderation} + parentAuthor={undefined} + showReplyTo={false} reason={undefined} feedContext={''} /> @@ -811,6 +813,7 @@ function MockPostFeedItem({ function MockPostThreadItem({ post, + moderation, reply, }: { post: AppBskyFeedDefs.PostView @@ -822,12 +825,14 @@ function MockPostThreadItem({ // @ts-ignore post={post} record={post.record as AppBskyFeedPost.Record} + moderation={moderation} depth={reply ? 1 : 0} isHighlightedPost={!reply} treeView={false} prevPost={undefined} nextPost={undefined} hasPrecedingItem={false} + overrideBlur={false} onPostReply={() => {}} /> ) diff --git a/src/view/screens/Feeds.tsx b/src/view/screens/Feeds.tsx index 78935edaea..837e58195e 100644 --- a/src/view/screens/Feeds.tsx +++ b/src/view/screens/Feeds.tsx @@ -6,6 +6,7 @@ import { StyleSheet, View, } from 'react-native' +import {AppBskyActorDefs} from '@atproto/api' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {FontAwesomeIconStyle} from '@fortawesome/react-native-fontawesome' import {msg, Trans} from '@lingui/macro' @@ -44,10 +45,14 @@ import { import {Text} from 'view/com/util/text/Text' import {UserAvatar} from 'view/com/util/UserAvatar' import {ViewHeader} from 'view/com/util/ViewHeader' +import {NoFollowingFeed} from '#/screens/Feeds/NoFollowingFeed' +import {NoSavedFeedsOfAnyType} from '#/screens/Feeds/NoSavedFeedsOfAnyType' import {atoms as a, useTheme} from '#/alf' import {IconCircle} from '#/components/IconCircle' +import {FilterTimeline_Stroke2_Corner0_Rounded as FilterTimeline} from '#/components/icons/FilterTimeline' import {ListMagnifyingGlass_Stroke2_Corner0_Rounded} from '#/components/icons/ListMagnifyingGlass' import {ListSparkle_Stroke2_Corner0_Rounded} from '#/components/icons/ListSparkle' +import hairlineWidth = StyleSheet.hairlineWidth type Props = NativeStackScreenProps @@ -74,6 +79,7 @@ type FlatlistSlice = type: 'savedFeed' key: string feedUri: string + savedFeedConfig: AppBskyActorDefs.SavedFeed } | { type: 'savedFeedsLoadMore' @@ -100,6 +106,10 @@ type FlatlistSlice = type: 'popularFeedsLoadingMore' key: string } + | { + type: 'noFollowingFeed' + key: string + } // HACK // the protocol doesn't yet tell us which feeds are personalized @@ -229,33 +239,54 @@ export function FeedsScreen(_props: Props) { error: cleanError(preferencesError.toString()), }) } else { - if (isPreferencesLoading || !preferences?.feeds?.saved) { + if (isPreferencesLoading || !preferences?.savedFeeds) { slices.push({ key: 'savedFeedsLoading', type: 'savedFeedsLoading', // pendingItems: this.rootStore.preferences.savedFeeds.length || 3, }) } else { - if (preferences?.feeds?.saved.length !== 0) { - const {saved, pinned} = preferences.feeds - - slices = slices.concat( - pinned.map(uri => ({ - key: `savedFeed:${uri}`, - type: 'savedFeed', - feedUri: uri, - })), + if (preferences.savedFeeds?.length) { + const noFollowingFeed = preferences.savedFeeds.every( + f => f.type !== 'timeline', ) slices = slices.concat( - saved - .filter(uri => !pinned.includes(uri)) - .map(uri => ({ - key: `savedFeed:${uri}`, + preferences.savedFeeds + .filter(f => { + return f.pinned + }) + .map(feed => ({ + key: `savedFeed:${feed.value}:${feed.id}`, type: 'savedFeed', - feedUri: uri, + feedUri: feed.value, + savedFeedConfig: feed, })), ) + slices = slices.concat( + preferences.savedFeeds + .filter(f => { + return !f.pinned + }) + .map(feed => ({ + key: `savedFeed:${feed.value}:${feed.id}`, + type: 'savedFeed', + feedUri: feed.value, + savedFeedConfig: feed, + })), + ) + + if (noFollowingFeed) { + slices.push({ + key: 'noFollowingFeed', + type: 'noFollowingFeed', + }) + } + } else { + slices.push({ + key: 'savedFeedNoResults', + type: 'savedFeedNoResults', + }) } } } @@ -323,7 +354,12 @@ export function FeedsScreen(_props: Props) { ) { return false } - return !preferences?.feeds?.saved.includes(feed.uri) + const alreadySaved = Boolean( + preferences?.savedFeeds?.find(f => { + return f.value === feed.uri + }), + ) + return !alreadySaved }) .map(feed => ({ key: `popularFeed:${feed.uri}`, @@ -463,23 +499,23 @@ export function FeedsScreen(_props: Props) { )} - {preferences?.feeds?.saved?.length !== 0 && } + ) } else if (item.type === 'savedFeedNoResults') { return ( - - You don't have any saved feeds! - + style={[ + pal.border, + { + borderBottomWidth: 1, + }, + ]}> + ) } else if (item.type === 'savedFeed') { - return + return } else if (item.type === 'popularFeedsHeader') { return ( <> @@ -521,6 +557,18 @@ export function FeedsScreen(_props: Props) { ) + } else if (item.type === 'noFollowingFeed') { + return ( + + + + ) } return null }, @@ -532,7 +580,6 @@ export function FeedsScreen(_props: Props) { pal.icon, pal.textLight, _, - preferences?.feeds?.saved?.length, query, onChangeQuery, onPressCancelSearch, @@ -585,16 +632,75 @@ export function FeedsScreen(_props: Props) { ) } -function SavedFeed({feedUri}: {feedUri: string}) { +function FeedOrFollowing({ + savedFeedConfig: feed, +}: { + savedFeedConfig: AppBskyActorDefs.SavedFeed +}) { + return feed.type === 'timeline' ? ( + + ) : ( + + ) +} + +function FollowingFeed() { + const pal = usePalette('default') + const t = useTheme() + const {isMobile} = useWebMediaQueries() + return ( + + + + + + + Following + + + + ) +} + +function SavedFeed({ + savedFeedConfig: feed, +}: { + savedFeedConfig: AppBskyActorDefs.SavedFeed +}) { const pal = usePalette('default') const {isMobile} = useWebMediaQueries() - const {data: info, error} = useFeedSourceInfoQuery({uri: feedUri}) - const typeAvatar = getAvatarTypeFromUri(feedUri) + const {data: info, error} = useFeedSourceInfoQuery({uri: feed.value}) + const typeAvatar = getAvatarTypeFromUri(feed.value) if (!info) return ( ) @@ -632,6 +738,7 @@ function SavedFeed({feedUri}: {feedUri: string}) { ) : null} + {isMobile && ( @@ -55,30 +56,20 @@ function HomeScreenReady({ pinnedFeedInfos, }: Props & { preferences: UsePreferencesQueryResponse - pinnedFeedInfos: FeedSourceInfo[] + pinnedFeedInfos: SavedFeedSourceInfo[] }) { - useOTAUpdates() - - const allFeeds = React.useMemo(() => { - const feeds: FeedDescriptor[] = [] - feeds.push('home') - for (const {uri} of pinnedFeedInfos) { - if (uri.includes('app.bsky.feed.generator')) { - feeds.push(`feedgen|${uri}`) - } else if (uri.includes('app.bsky.graph.list')) { - feeds.push(`list|${uri}`) - } - } - return feeds - }, [pinnedFeedInfos]) - - const rawSelectedFeed = useSelectedFeed() + const allFeeds = React.useMemo( + () => pinnedFeedInfos.map(f => f.feedDescriptor), + [pinnedFeedInfos], + ) + const rawSelectedFeed = useSelectedFeed() ?? allFeeds[0] const setSelectedFeed = useSetSelectedFeed() - const maybeFoundIndex = allFeeds.indexOf(rawSelectedFeed as FeedDescriptor) + const maybeFoundIndex = allFeeds.indexOf(rawSelectedFeed) const selectedIndex = Math.max(0, maybeFoundIndex) const selectedFeed = allFeeds[selectedIndex] useSetTitle(pinnedFeedInfos[selectedIndex]?.displayName) + useOTAUpdates() const pagerRef = React.useRef(null) const lastPagerReportedIndexRef = React.useRef(selectedIndex) @@ -107,27 +98,26 @@ function HomeScreenReady({ useFocusEffect( useNonReactiveCallback(() => { - logEvent('home:feedDisplayed', { - index: selectedIndex, - feedType: selectedFeed.split('|')[0], - feedUrl: selectedFeed, - reason: 'focus', - }) + if (selectedFeed) { + logEvent('home:feedDisplayed:sampled', { + index: selectedIndex, + feedType: selectedFeed.split('|')[0], + feedUrl: selectedFeed, + reason: 'focus', + }) + } }), ) - const gate = useGate() const mode = useMinimalShellMode() const {isMobile} = useWebMediaQueries() useFocusEffect( React.useCallback(() => { const listener = AppState.addEventListener('change', nextAppState => { if (nextAppState === 'active') { - if ( - isMobile && - mode.value === 1 && - gate('disable_min_shell_on_foregrounding_v3') - ) { + if (isMobile && mode.value === 1) { + // Reveal the bottom bar so you don't miss notifications or messages. + // TODO: Experiment with only doing it when unread > 0. setMinimalShellMode(false) } } @@ -135,7 +125,7 @@ function HomeScreenReady({ return () => { listener.remove() } - }, [setMinimalShellMode, mode, isMobile, gate]), + }, [setMinimalShellMode, mode, isMobile]), ) const onPageSelected = React.useCallback( @@ -150,9 +140,12 @@ function HomeScreenReady({ ) const onPageSelecting = React.useCallback( - (index: number, reason: LogEvents['home:feedDisplayed']['reason']) => { + ( + index: number, + reason: LogEvents['home:feedDisplayed:sampled']['reason'], + ) => { const feed = allFeeds[index] - logEvent('home:feedDisplayed', { + logEvent('home:feedDisplayed:sampled', { index, feedType: feed.split('|')[0], feedUrl: feed, @@ -198,12 +191,13 @@ function HomeScreenReady({ return }, []) - const [homeFeed, ...customFeeds] = allFeeds const homeFeedParams = React.useMemo(() => { return { mergeFeedEnabled: Boolean(preferences.feedViewPrefs.lab_mergeFeedEnabled), mergeFeedSources: preferences.feedViewPrefs.lab_mergeFeedEnabled - ? preferences.feeds.saved + ? preferences.savedFeeds + .filter(f => f.type === 'feed' || f.type === 'list') + .map(f => f.value) : [], } }, [preferences]) @@ -218,26 +212,37 @@ function HomeScreenReady({ onPageSelected={onPageSelected} onPageScrollStateChanged={onPageScrollStateChanged} renderTabBar={renderTabBar}> - - {customFeeds.map(feed => { - return ( - - ) - })} + {pinnedFeedInfos.length ? ( + pinnedFeedInfos.map(feedInfo => { + const feed = feedInfo.feedDescriptor + if (feed === 'following') { + return ( + + ) + } + const savedFeedConfig = feedInfo.savedFeed + return ( + + ) + }) + ) : ( + + )} ) : ( @@ -132,9 +133,10 @@ export function LanguageSettingsScreen(_props: Props) { paddingVertical: 8, borderRadius: 24, }, + inputWeb: { - // @ts-ignore web only cursor: 'pointer', + // @ts-ignore web only '-moz-appearance': 'none', '-webkit-appearance': 'none', appearance: 'none', @@ -224,8 +226,8 @@ export function LanguageSettingsScreen(_props: Props) { borderRadius: 24, }, inputWeb: { - // @ts-ignore web only cursor: 'pointer', + // @ts-ignore web only '-moz-appearance': 'none', '-webkit-appearance': 'none', appearance: 'none', diff --git a/src/view/screens/Lists.tsx b/src/view/screens/Lists.tsx index bdd5dd9b78..12ea6f48be 100644 --- a/src/view/screens/Lists.tsx +++ b/src/view/screens/Lists.tsx @@ -1,20 +1,22 @@ import React from 'react' -import {View} from 'react-native' -import {useFocusEffect, useNavigation} from '@react-navigation/native' -import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' +import {StyleSheet, View} from 'react-native' import {AtUri} from '@atproto/api' -import {NativeStackScreenProps, CommonNavigatorParams} from 'lib/routes/types' -import {MyLists} from '#/view/com/lists/MyLists' -import {Text} from 'view/com/util/text/Text' -import {Button} from 'view/com/util/forms/Button' -import {NavigationProp} from 'lib/routes/types' +import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' +import {Trans} from '@lingui/macro' +import {useFocusEffect, useNavigation} from '@react-navigation/native' + +import {useModalControls} from '#/state/modals' +import {useSetMinimalShellMode} from '#/state/shell' import {usePalette} from 'lib/hooks/usePalette' import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {SimpleViewHeader} from 'view/com/util/SimpleViewHeader' +import {CommonNavigatorParams, NativeStackScreenProps} from 'lib/routes/types' +import {NavigationProp} from 'lib/routes/types' import {s} from 'lib/styles' -import {useSetMinimalShellMode} from '#/state/shell' -import {useModalControls} from '#/state/modals' -import {Trans} from '@lingui/macro' +import {MyLists} from '#/view/com/lists/MyLists' +import {Button} from 'view/com/util/forms/Button' +import {SimpleViewHeader} from 'view/com/util/SimpleViewHeader' +import {Text} from 'view/com/util/text/Text' +import hairlineWidth = StyleSheet.hairlineWidth type Props = NativeStackScreenProps export function ListsScreen({}: Props) { @@ -50,9 +52,12 @@ export function ListsScreen({}: Props) { + style={[ + pal.border, + isMobile + ? {borderBottomWidth: hairlineWidth} + : {borderLeftWidth: hairlineWidth, borderRightWidth: hairlineWidth}, + ]}> User Lists diff --git a/src/view/screens/Notifications.tsx b/src/view/screens/Notifications.tsx index 48c834a28f..7e2fc68b37 100644 --- a/src/view/screens/Notifications.tsx +++ b/src/view/screens/Notifications.tsx @@ -1,37 +1,38 @@ import React from 'react' import {View} from 'react-native' +import {msg, Trans} from '@lingui/macro' +import {useLingui} from '@lingui/react' import {useFocusEffect, useIsFocused} from '@react-navigation/native' import {useQueryClient} from '@tanstack/react-query' -import { - NativeStackScreenProps, - NotificationsTabNavigatorParams, -} from 'lib/routes/types' -import {ViewHeader} from '../com/util/ViewHeader' -import {Feed} from '../com/notifications/Feed' -import {TextLink} from 'view/com/util/Link' -import {ListMethods} from 'view/com/util/List' -import {LoadLatestBtn} from 'view/com/util/load-latest/LoadLatestBtn' -import {MainScrollProvider} from '../com/util/MainScrollProvider' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {s, colors} from 'lib/styles' -import {useAnalytics} from 'lib/analytics/analytics' + +import {useNonReactiveCallback} from '#/lib/hooks/useNonReactiveCallback' import {logger} from '#/logger' -import {useSetMinimalShellMode} from '#/state/shell' -import {Trans, msg} from '@lingui/macro' -import {useLingui} from '@lingui/react' +import {isNative} from '#/platform/detection' +import {emitSoftReset, listenSoftReset} from '#/state/events' +import {RQKEY as NOTIFS_RQKEY} from '#/state/queries/notifications/feed' import { useUnreadNotifications, useUnreadNotificationsApi, } from '#/state/queries/notifications/unread' -import {RQKEY as NOTIFS_RQKEY} from '#/state/queries/notifications/feed' -import {listenSoftReset, emitSoftReset} from '#/state/events' import {truncateAndInvalidate} from '#/state/queries/util' -import {useNonReactiveCallback} from '#/lib/hooks/useNonReactiveCallback' -import {isNative} from '#/platform/detection' -import {FAB} from '../com/util/fab/FAB' -import {ComposeIcon2} from 'lib/icons' +import {useSetMinimalShellMode} from '#/state/shell' import {useComposerControls} from '#/state/shell/composer' +import {useAnalytics} from 'lib/analytics/analytics' +import {usePalette} from 'lib/hooks/usePalette' +import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' +import {ComposeIcon2} from 'lib/icons' +import { + NativeStackScreenProps, + NotificationsTabNavigatorParams, +} from 'lib/routes/types' +import {colors, s} from 'lib/styles' +import {TextLink} from 'view/com/util/Link' +import {ListMethods} from 'view/com/util/List' +import {LoadLatestBtn} from 'view/com/util/load-latest/LoadLatestBtn' +import {Feed} from '../com/notifications/Feed' +import {FAB} from '../com/util/fab/FAB' +import {MainScrollProvider} from '../com/util/MainScrollProvider' +import {ViewHeader} from '../com/util/ViewHeader' type Props = NativeStackScreenProps< NotificationsTabNavigatorParams, @@ -145,7 +146,11 @@ export function NotificationsScreen({}: Props) { return ( - + export function PostThreadScreen({route}: Props) { @@ -35,7 +33,6 @@ export function PostThreadScreen({route}: Props) { const {name, rkey} = route.params const {isMobile} = useWebMediaQueries() const uri = makeRecordUri(name, 'app.bsky.feed.post', rkey) - const {data: resolvedUri, error: uriError} = useResolveUriQuery(uri) const [canReply, setCanReply] = React.useState(false) useFocusEffect( @@ -45,12 +42,10 @@ export function PostThreadScreen({route}: Props) { ) const onPressReply = React.useCallback(() => { - if (!resolvedUri) { + if (!uri) { return } - const thread = queryClient.getQueryData( - POST_THREAD_RQKEY(resolvedUri.uri), - ) + const thread = queryClient.getQueryData(POST_THREAD_RQKEY(uri)) if (thread?.type !== 'post') { return } @@ -64,25 +59,19 @@ export function PostThreadScreen({route}: Props) { }, onPost: () => queryClient.invalidateQueries({ - queryKey: POST_THREAD_RQKEY(resolvedUri.uri || ''), + queryKey: POST_THREAD_RQKEY(uri), }), }) - }, [openComposer, queryClient, resolvedUri]) + }, [openComposer, queryClient, uri]) return ( - {uriError ? ( - - - - ) : ( - - )} + {isMobile && canReply && hasSession && ( new RichTextAPI({text})) const [resolvedRT, setResolvedRT] = React.useState(null) @@ -485,7 +485,7 @@ function useRichText(text: string): [RichTextAPI, boolean] { async function resolveRTFacets() { // new each time const resolvedRT = new RichTextAPI({text}) - await resolvedRT.detectFacets(getAgent()) + await resolvedRT.detectFacets(agent) if (!ignore) { setResolvedRT(resolvedRT) } @@ -494,7 +494,7 @@ function useRichText(text: string): [RichTextAPI, boolean] { return () => { ignore = true } - }, [text, getAgent]) + }, [text, agent]) const isResolving = resolvedRT === null return [resolvedRT ?? rawRT, isResolving] } diff --git a/src/view/screens/ProfileFeed.tsx b/src/view/screens/ProfileFeed.tsx index f66231ab54..3dd8c3ac85 100644 --- a/src/view/screens/ProfileFeed.tsx +++ b/src/view/screens/ProfileFeed.tsx @@ -16,12 +16,11 @@ import {useLikeMutation, useUnlikeMutation} from '#/state/queries/like' import {FeedDescriptor} from '#/state/queries/post-feed' import {RQKEY as FEED_RQKEY} from '#/state/queries/post-feed' import { - usePinFeedMutation, + useAddSavedFeedsMutation, usePreferencesQuery, UsePreferencesQueryResponse, useRemoveFeedMutation, - useSaveFeedMutation, - useUnpinFeedMutation, + useUpdateSavedFeedsMutation, } from '#/state/queries/preferences' import {useResolveUriQuery} from '#/state/queries/resolve-uri' import {truncateAndInvalidate} from '#/state/queries/util' @@ -163,37 +162,20 @@ export function ProfileFeedScreenInner({ const feedSectionRef = React.useRef(null) const isScreenFocused = useIsFocused() - const { - mutateAsync: saveFeed, - variables: savedFeed, - reset: resetSaveFeed, - isPending: isSavePending, - } = useSaveFeedMutation() - const { - mutateAsync: removeFeed, - variables: removedFeed, - reset: resetRemoveFeed, - isPending: isRemovePending, - } = useRemoveFeedMutation() - const { - mutateAsync: pinFeed, - variables: pinnedFeed, - reset: resetPinFeed, - isPending: isPinPending, - } = usePinFeedMutation() - const { - mutateAsync: unpinFeed, - variables: unpinnedFeed, - reset: resetUnpinFeed, - isPending: isUnpinPending, - } = useUnpinFeedMutation() + const {mutateAsync: addSavedFeeds, isPending: isAddSavedFeedPending} = + useAddSavedFeedsMutation() + const {mutateAsync: removeFeed, isPending: isRemovePending} = + useRemoveFeedMutation() + const {mutateAsync: updateSavedFeeds, isPending: isUpdateFeedPending} = + useUpdateSavedFeedsMutation() - const isSaved = - !removedFeed && - (!!savedFeed || preferences.feeds.saved.includes(feedInfo.uri)) - const isPinned = - !unpinnedFeed && - (!!pinnedFeed || preferences.feeds.pinned.includes(feedInfo.uri)) + const isPending = + isAddSavedFeedPending || isRemovePending || isUpdateFeedPending + const savedFeedConfig = preferences.savedFeeds.find( + f => f.value === feedInfo.uri, + ) + const isSaved = Boolean(savedFeedConfig) + const isPinned = Boolean(savedFeedConfig?.pinned) useSetTitle(feedInfo?.displayName) @@ -204,13 +186,17 @@ export function ProfileFeedScreenInner({ try { playHaptic() - if (isSaved) { - await removeFeed({uri: feedInfo.uri}) - resetRemoveFeed() + if (savedFeedConfig) { + await removeFeed(savedFeedConfig) Toast.show(_(msg`Removed from your feeds`)) } else { - await saveFeed({uri: feedInfo.uri}) - resetSaveFeed() + await addSavedFeeds([ + { + type: 'feed', + value: feedInfo.uri, + pinned: false, + }, + ]) Toast.show(_(msg`Saved to your feeds`)) } } catch (err) { @@ -221,27 +207,27 @@ export function ProfileFeedScreenInner({ ) logger.error('Failed up update feeds', {message: err}) } - }, [ - playHaptic, - isSaved, - removeFeed, - feedInfo, - resetRemoveFeed, - _, - saveFeed, - resetSaveFeed, - ]) + }, [_, playHaptic, feedInfo, removeFeed, addSavedFeeds, savedFeedConfig]) const onTogglePinned = React.useCallback(async () => { try { playHaptic() - if (isPinned) { - await unpinFeed({uri: feedInfo.uri}) - resetUnpinFeed() + if (savedFeedConfig) { + await updateSavedFeeds([ + { + ...savedFeedConfig, + pinned: !savedFeedConfig.pinned, + }, + ]) } else { - await pinFeed({uri: feedInfo.uri}) - resetPinFeed() + await addSavedFeeds([ + { + type: 'feed', + value: feedInfo.uri, + pinned: true, + }, + ]) } } catch (e) { Toast.show(_(msg`There was an issue contacting the server`)) @@ -249,13 +235,11 @@ export function ProfileFeedScreenInner({ } }, [ playHaptic, - isPinned, - unpinFeed, feedInfo, - resetUnpinFeed, - pinFeed, - resetPinFeed, _, + savedFeedConfig, + updateSavedFeeds, + addSavedFeeds, ]) const onPressShare = React.useCallback(() => { @@ -296,7 +280,7 @@ export function ProfileFeedScreenInner({ {feedInfo && hasSession && ( f.value === list.uri, + ) + const isPinned = Boolean(savedFeedConfig?.pinned) const onTogglePinned = React.useCallback(async () => { playHaptic() try { - if (isPinned) { - await unpinFeed({uri: list.uri}) + if (savedFeedConfig) { + const pinned = !savedFeedConfig.pinned + await updateSavedFeeds([ + { + ...savedFeedConfig, + pinned, + }, + ]) + Toast.show( + pinned + ? _(msg`Pinned to your feeds`) + : _(msg`Unpinned from your feeds`), + ) } else { - await pinFeed({uri: list.uri}) + await addSavedFeeds([ + { + type: 'list', + value: list.uri, + pinned: true, + }, + ]) + Toast.show(_(msg`Saved to your feeds`)) } } catch (e) { Toast.show(_(msg`There was an issue contacting the server`)) logger.error('Failed to toggle pinned feed', {message: e}) } - }, [playHaptic, isPinned, unpinFeed, list.uri, pinFeed, _]) + }, [ + playHaptic, + addSavedFeeds, + updateSavedFeeds, + list.uri, + _, + savedFeedConfig, + ]) + + const onRemoveFromSavedFeeds = React.useCallback(async () => { + playHaptic() + if (!savedFeedConfig) return + try { + await removeSavedFeed(savedFeedConfig) + Toast.show(_(msg`Removed from your feeds`)) + } catch (e) { + Toast.show(_(msg`There was an issue contacting the server`)) + logger.error('Failed to remove pinned list', {message: e}) + } + }, [playHaptic, removeSavedFeed, _, savedFeedConfig]) const onSubscribeMute = useCallback(async () => { try { @@ -345,13 +390,8 @@ function Header({rkey, list}: {rkey: string; list: AppBskyGraphDefs.ListView}) { const onPressDelete = useCallback(async () => { await listDeleteMutation.mutateAsync({uri: list.uri}) - if (isSaved || isPinned) { - const {saved, pinned} = preferences!.feeds - - setSavedFeeds({ - saved: isSaved ? saved.filter(uri => uri !== list.uri) : saved, - pinned: isPinned ? pinned.filter(uri => uri !== list.uri) : pinned, - }) + if (savedFeedConfig) { + await removeSavedFeed(savedFeedConfig) } Toast.show(_(msg`List deleted`)) @@ -367,10 +407,8 @@ function Header({rkey, list}: {rkey: string; list: AppBskyGraphDefs.ListView}) { navigation, track, _, - preferences, - isPinned, - isSaved, - setSavedFeeds, + removeSavedFeed, + savedFeedConfig, ]) const onPressReport = useCallback(() => { @@ -398,6 +436,22 @@ function Header({rkey, list}: {rkey: string; list: AppBskyGraphDefs.ListView}) { }, }, ] + + if (savedFeedConfig) { + items.push({ + testID: 'listHeaderDropdownRemoveFromFeedsBtn', + label: _(msg`Remove from my feeds`), + onPress: onRemoveFromSavedFeeds, + icon: { + ios: { + name: 'trash', + }, + android: '', + web: ['far', 'trash-can'], + }, + }) + } + if (isOwner) { items.push({label: 'separator'}) items.push({ @@ -444,7 +498,10 @@ function Header({rkey, list}: {rkey: string; list: AppBskyGraphDefs.ListView}) { items.push({ testID: 'listHeaderDropdownUnpinBtn', label: _(msg`Unpin moderation list`), - onPress: isPending ? undefined : () => unpinFeed({uri: list.uri}), + onPress: + isPending || !savedFeedConfig + ? undefined + : () => removeSavedFeed(savedFeedConfig), icon: { ios: { name: 'pin', @@ -499,12 +556,13 @@ function Header({rkey, list}: {rkey: string; list: AppBskyGraphDefs.ListView}) { deleteListPromptControl.open, onPressReport, isPending, - unpinFeed, - list.uri, isBlocking, isMuting, onUnsubscribeMute, onUnsubscribeBlock, + removeSavedFeed, + savedFeedConfig, + onRemoveFromSavedFeeds, ]) const subscribeDropdownItems: DropdownItem[] = useMemo(() => { @@ -745,7 +803,7 @@ const AboutSection = React.forwardRef( diff --git a/src/view/screens/SavedFeeds.tsx b/src/view/screens/SavedFeeds.tsx index 0003dbd5d9..a3aee19dc1 100644 --- a/src/view/screens/SavedFeeds.tsx +++ b/src/view/screens/SavedFeeds.tsx @@ -1,5 +1,6 @@ import React from 'react' import {ActivityIndicator, Pressable, StyleSheet, View} from 'react-native' +import {AppBskyActorDefs} from '@atproto/api' import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' @@ -9,11 +10,11 @@ import {NativeStackScreenProps} from '@react-navigation/native-stack' import {track} from '#/lib/analytics/analytics' import {logger} from '#/logger' import { - usePinFeedMutation, + useOverwriteSavedFeedsMutation, usePreferencesQuery, - useSetSaveFeedsMutation, - useUnpinFeedMutation, + useUpdateSavedFeedsMutation, } from '#/state/queries/preferences' +import {UsePreferencesQueryResponse} from '#/state/queries/preferences/types' import {useSetMinimalShellMode} from '#/state/shell' import {useAnalytics} from 'lib/analytics/analytics' import {useHaptics} from 'lib/haptics' @@ -27,6 +28,10 @@ import {Text} from 'view/com/util/text/Text' import * as Toast from 'view/com/util/Toast' import {ViewHeader} from 'view/com/util/ViewHeader' import {CenteredView, ScrollView} from 'view/com/util/Views' +import {NoFollowingFeed} from '#/screens/Feeds/NoFollowingFeed' +import {NoSavedFeedsOfAnyType} from '#/screens/Feeds/NoSavedFeedsOfAnyType' +import {atoms as a, useTheme} from '#/alf' +import {FilterTimeline_Stroke2_Corner0_Rounded as FilterTimeline} from '#/components/icons/FilterTimeline' const HITSLOP_TOP = { top: 20, @@ -50,23 +55,25 @@ export function SavedFeeds({}: Props) { const setMinimalShellMode = useSetMinimalShellMode() const {data: preferences} = usePreferencesQuery() const { - mutateAsync: setSavedFeeds, + mutateAsync: overwriteSavedFeeds, variables: optimisticSavedFeedsResponse, reset: resetSaveFeedsMutationState, - error: setSavedFeedsError, - } = useSetSaveFeedsMutation() + error: savedFeedsError, + } = useOverwriteSavedFeedsMutation() /* * Use optimistic data if exists and no error, otherwise fallback to remote * data */ const currentFeeds = - optimisticSavedFeedsResponse && !setSavedFeedsError + optimisticSavedFeedsResponse && !savedFeedsError ? optimisticSavedFeedsResponse - : preferences?.feeds || {saved: [], pinned: []} - const unpinned = currentFeeds.saved.filter(f => { - return !currentFeeds.pinned?.includes(f) - }) + : preferences?.savedFeeds || [] + const pinnedFeeds = currentFeeds.filter(f => f.pinned) + const unpinnedFeeds = currentFeeds.filter(f => !f.pinned) + const noSavedFeedsOfAnyType = pinnedFeeds.length + unpinnedFeeds.length === 0 + const noFollowingFeed = + currentFeeds.every(f => f.type !== 'timeline') && !noSavedFeedsOfAnyType useFocusEffect( React.useCallback(() => { @@ -84,14 +91,20 @@ export function SavedFeeds({}: Props) { ]}> + {noSavedFeedsOfAnyType && ( + + + + )} + Pinned Feeds - {preferences?.feeds ? ( - !currentFeeds.pinned.length ? ( + {preferences ? ( + !pinnedFeeds.length ? ( ) : ( - currentFeeds.pinned.map(uri => ( + pinnedFeeds.map(f => ( )) ) ) : ( )} + + {noFollowingFeed && ( + + + + )} + Saved Feeds - {preferences?.feeds ? ( - !unpinned.length ? ( + {preferences ? ( + !unpinnedFeeds.length ? ( ) : ( - unpinned.map(uri => ( + unpinnedFeeds.map(f => ( )) ) @@ -174,27 +196,29 @@ export function SavedFeeds({}: Props) { } function ListItem({ - feedUri, + feed, isPinned, currentFeeds, - setSavedFeeds, + overwriteSavedFeeds, resetSaveFeedsMutationState, }: { - feedUri: string // uri + feed: AppBskyActorDefs.SavedFeed isPinned: boolean - currentFeeds: {saved: string[]; pinned: string[]} - setSavedFeeds: ReturnType['mutateAsync'] + currentFeeds: AppBskyActorDefs.SavedFeed[] + overwriteSavedFeeds: ReturnType< + typeof useOverwriteSavedFeedsMutation + >['mutateAsync'] resetSaveFeedsMutationState: ReturnType< - typeof useSetSaveFeedsMutation + typeof useOverwriteSavedFeedsMutation >['reset'] + preferences: UsePreferencesQueryResponse }) { const pal = usePalette('default') const {_} = useLingui() const playHaptic = useHaptics() - const {isPending: isPinPending, mutateAsync: pinFeed} = usePinFeedMutation() - const {isPending: isUnpinPending, mutateAsync: unpinFeed} = - useUnpinFeedMutation() - const isPending = isPinPending || isUnpinPending + const {isPending: isUpdatePending, mutateAsync: updateSavedFeeds} = + useUpdateSavedFeedsMutation() + const feedUri = feed.value const onTogglePinned = React.useCallback(async () => { playHaptic() @@ -202,122 +226,194 @@ function ListItem({ try { resetSaveFeedsMutationState() - if (isPinned) { - await unpinFeed({uri: feedUri}) - } else { - await pinFeed({uri: feedUri}) - } + await updateSavedFeeds([ + { + ...feed, + pinned: !feed.pinned, + }, + ]) } catch (e) { Toast.show(_(msg`There was an issue contacting the server`)) logger.error('Failed to toggle pinned feed', {message: e}) } - }, [ - playHaptic, - resetSaveFeedsMutationState, - isPinned, - unpinFeed, - feedUri, - pinFeed, - _, - ]) + }, [_, playHaptic, feed, updateSavedFeeds, resetSaveFeedsMutationState]) const onPressUp = React.useCallback(async () => { if (!isPinned) return - // create new array, do not mutate - const pinned = [...currentFeeds.pinned] - const index = pinned.indexOf(feedUri) + const nextFeeds = currentFeeds.slice() + const ids = currentFeeds.map(f => f.id) + const index = ids.indexOf(feed.id) + const nextIndex = index - 1 if (index === -1 || index === 0) return - ;[pinned[index], pinned[index - 1]] = [pinned[index - 1], pinned[index]] + ;[nextFeeds[index], nextFeeds[nextIndex]] = [ + nextFeeds[nextIndex], + nextFeeds[index], + ] try { - await setSavedFeeds({saved: currentFeeds.saved, pinned}) + await overwriteSavedFeeds(nextFeeds) track('CustomFeed:Reorder', { - uri: feedUri, - index: pinned.indexOf(feedUri), + uri: feed.value, + index: nextIndex, }) } catch (e) { Toast.show(_(msg`There was an issue contacting the server`)) logger.error('Failed to set pinned feed order', {message: e}) } - }, [feedUri, isPinned, setSavedFeeds, currentFeeds, _]) + }, [feed, isPinned, overwriteSavedFeeds, currentFeeds, _]) const onPressDown = React.useCallback(async () => { if (!isPinned) return - const pinned = [...currentFeeds.pinned] - const index = pinned.indexOf(feedUri) + const nextFeeds = currentFeeds.slice() + const ids = currentFeeds.map(f => f.id) + const index = ids.indexOf(feed.id) + const nextIndex = index + 1 - if (index === -1 || index >= pinned.length - 1) return - ;[pinned[index], pinned[index + 1]] = [pinned[index + 1], pinned[index]] + if (index === -1 || index >= nextFeeds.length - 1) return + ;[nextFeeds[index], nextFeeds[nextIndex]] = [ + nextFeeds[nextIndex], + nextFeeds[index], + ] try { - await setSavedFeeds({saved: currentFeeds.saved, pinned}) + await overwriteSavedFeeds(nextFeeds) track('CustomFeed:Reorder', { - uri: feedUri, - index: pinned.indexOf(feedUri), + uri: feed.value, + index: nextIndex, }) } catch (e) { Toast.show(_(msg`There was an issue contacting the server`)) logger.error('Failed to set pinned feed order', {message: e}) } - }, [feedUri, isPinned, setSavedFeeds, currentFeeds, _]) + }, [feed, isPinned, overwriteSavedFeeds, currentFeeds, _]) return ( - + + {feed.type === 'timeline' ? ( + + ) : ( + + )} {isPinned ? ( - + <> ({ - opacity: state.hovered || state.focused || isPending ? 0.5 : 1, + backgroundColor: pal.viewLight.backgroundColor, + paddingHorizontal: 12, + paddingVertical: 10, + borderRadius: 4, + marginRight: 8, + opacity: + state.hovered || state.pressed || isUpdatePending ? 0.5 : 1, })}> ({ - opacity: state.hovered || state.focused || isPending ? 0.5 : 1, + backgroundColor: pal.viewLight.backgroundColor, + paddingHorizontal: 12, + paddingVertical: 10, + borderRadius: 4, + marginRight: 8, + opacity: + state.hovered || state.pressed || isUpdatePending ? 0.5 : 1, })}> - + - + ) : null} - - ({ - opacity: state.hovered || state.focused || isPending ? 0.5 : 1, - })}> - + ({ + backgroundColor: pal.viewLight.backgroundColor, + paddingHorizontal: 12, + paddingVertical: 10, + borderRadius: 4, + opacity: + state.hovered || state.focused || isUpdatePending ? 0.5 : 1, + })}> + + + + + ) +} + +function FollowingFeedCard() { + const t = useTheme() + return ( + + + - - + + + + Following + + + ) } @@ -345,15 +441,6 @@ const styles = StyleSheet.create({ flexDirection: 'row', alignItems: 'center', borderBottomWidth: 1, - paddingRight: 16, - }, - webArrowButtonsContainer: { - paddingLeft: 16, - flexDirection: 'column', - justifyContent: 'space-around', - }, - webArrowUpButton: { - marginBottom: 10, }, noTopBorder: { borderTopWidth: 0, diff --git a/src/view/screens/Search/Search.tsx b/src/view/screens/Search/Search.tsx index 9dd1c397f3..b6680176bf 100644 --- a/src/view/screens/Search/Search.tsx +++ b/src/view/screens/Search/Search.tsx @@ -739,8 +739,8 @@ let SearchInputBox = ({ style={[ {backgroundColor: pal.colors.backgroundLight}, styles.headerSearchContainer, + // @ts-expect-error web only isWeb && { - // @ts-ignore web only cursor: 'default', }, ]} diff --git a/src/view/screens/Settings/DisableEmail2FADialog.tsx b/src/view/screens/Settings/DisableEmail2FADialog.tsx index b52dcc7a36..a27cff9a3e 100644 --- a/src/view/screens/Settings/DisableEmail2FADialog.tsx +++ b/src/view/screens/Settings/DisableEmail2FADialog.tsx @@ -30,7 +30,7 @@ export function DisableEmail2FADialog({ const t = useTheme() const {gtMobile} = useBreakpoints() const {currentAccount} = useSession() - const {getAgent} = useAgent() + const agent = useAgent() const [stage, setStage] = useState(Stages.Email) const [confirmationCode, setConfirmationCode] = useState('') @@ -41,7 +41,7 @@ export function DisableEmail2FADialog({ setError('') setIsProcessing(true) try { - await getAgent().com.atproto.server.requestEmailUpdate() + await agent.com.atproto.server.requestEmailUpdate() setStage(Stages.ConfirmCode) } catch (e) { setError(cleanError(String(e))) @@ -55,12 +55,12 @@ export function DisableEmail2FADialog({ setIsProcessing(true) try { if (currentAccount?.email) { - await getAgent().com.atproto.server.updateEmail({ + await agent.com.atproto.server.updateEmail({ email: currentAccount!.email, token: confirmationCode.trim(), emailAuthFactor: false, }) - await getAgent().resumeSession(getAgent().session!) + await agent.resumeSession(agent.session!) Toast.show(_(msg`Email 2FA disabled`)) } control.close() diff --git a/src/view/screens/Settings/Email2FAToggle.tsx b/src/view/screens/Settings/Email2FAToggle.tsx index efeb7e4d7c..b5e7adddb2 100644 --- a/src/view/screens/Settings/Email2FAToggle.tsx +++ b/src/view/screens/Settings/Email2FAToggle.tsx @@ -13,17 +13,17 @@ export function Email2FAToggle() { const {currentAccount} = useSession() const {openModal} = useModalControls() const disableDialogCtrl = useDialogControl() - const {getAgent} = useAgent() + const agent = useAgent() const enableEmailAuthFactor = React.useCallback(async () => { if (currentAccount?.email) { - await getAgent().com.atproto.server.updateEmail({ + await agent.com.atproto.server.updateEmail({ email: currentAccount.email, emailAuthFactor: true, }) - await getAgent().resumeSession(getAgent().session!) + await agent.resumeSession(agent.session!) } - }, [currentAccount, getAgent]) + }, [currentAccount, agent]) const onToggle = React.useCallback(() => { if (!currentAccount) { diff --git a/src/view/screens/Settings/ExportCarDialog.tsx b/src/view/screens/Settings/ExportCarDialog.tsx index 1b8d430b2a..72d943bcf0 100644 --- a/src/view/screens/Settings/ExportCarDialog.tsx +++ b/src/view/screens/Settings/ExportCarDialog.tsx @@ -3,12 +3,16 @@ import {View} from 'react-native' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' -import {useAgent, useSession} from '#/state/session' -import {atoms as a, useBreakpoints, useTheme} from '#/alf' -import {Button, ButtonText} from '#/components/Button' +import {saveBytesToDisk} from '#/lib/media/manip' +import {logger} from '#/logger' +import {useAgent} from '#/state/session' +import * as Toast from '#/view/com/util/Toast' +import {atoms as a, useTheme} from '#/alf' +import {Button, ButtonIcon, ButtonText} from '#/components/Button' import * as Dialog from '#/components/Dialog' -import {InlineLinkText, Link} from '#/components/Link' -import {P, Text} from '#/components/Typography' +import {InlineLinkText} from '#/components/Link' +import {Loader} from '#/components/Loader' +import {Text} from '#/components/Typography' export function ExportCarDialog({ control, @@ -17,21 +21,34 @@ export function ExportCarDialog({ }) { const {_} = useLingui() const t = useTheme() - const {gtMobile} = useBreakpoints() - const {currentAccount} = useSession() - const {getAgent} = useAgent() + const agent = useAgent() + const [loading, setLoading] = React.useState(false) - const downloadUrl = React.useMemo(() => { - const agent = getAgent() - if (!currentAccount || !agent.session) { - return '' // shouldnt ever happen + const download = React.useCallback(async () => { + if (!agent.session) { + return // shouldnt ever happen } - // eg: https://bsky.social/xrpc/com.atproto.sync.getRepo?did=did:plc:ewvi7nxzyoun6zhxrhs64oiz - const url = new URL(agent.pdsUrl || agent.service) - url.pathname = '/xrpc/com.atproto.sync.getRepo' - url.searchParams.set('did', agent.session.did) - return url.toString() - }, [currentAccount, getAgent]) + try { + setLoading(true) + const did = agent.session.did + const downloadRes = await agent.com.atproto.sync.getRepo({did}) + const saveRes = await saveBytesToDisk( + 'repo.car', + downloadRes.data, + downloadRes.headers['content-type'], + ) + + if (saveRes) { + Toast.show(_(msg`File saved successfully!`)) + } + } catch (e) { + logger.error('Error occurred while downloading CAR file', {message: e}) + Toast.show(_(msg`Error occurred while saving file`)) + } finally { + setLoading(false) + control.close() + } + }, [_, control, agent]) return ( @@ -40,34 +57,34 @@ export function ExportCarDialog({ - + Export My Data -

+ Your account repository, containing all public data records, can be downloaded as a "CAR" file. This file does not include media embeds, such as images, or your private data, which must be fetched separately. -

+
- + disabled={loading} + onPress={download}> Download CAR file - + {loading && } + -

. -

- - - - - - {!gtMobile && } + diff --git a/src/view/screens/Settings/index.tsx b/src/view/screens/Settings/index.tsx index c3864e5a91..a647ea902d 100644 --- a/src/view/screens/Settings/index.tsx +++ b/src/view/screens/Settings/index.tsx @@ -26,6 +26,7 @@ import { useInAppBrowser, useSetInAppBrowser, } from '#/state/preferences/in-app-browser' +import {useDeleteActorDeclaration} from '#/state/queries/messages/actor-declaration' import {useClearPreferencesMutation} from '#/state/queries/preferences' import {RQKEY as RQKEY_PROFILE} from '#/state/queries/profile' import {useProfileQuery} from '#/state/queries/profile' @@ -65,6 +66,7 @@ import {BirthDateSettingsDialog} from '#/components/dialogs/BirthDateSettings' import {navigate, resetToTab} from '#/Navigation' import {Email2FAToggle} from './Email2FAToggle' import {ExportCarDialog} from './ExportCarDialog' +import hairlineWidth = StyleSheet.hairlineWidth function SettingsAccountCard({ account, @@ -101,10 +103,10 @@ function SettingsAccountCard({ />
- + {profile?.displayName || account.handle} - + {account.handle} @@ -305,6 +307,8 @@ export function SettingsScreen({}: Props) { Toast.show(_(msg`Legacy storage cleared, you need to restart the app now.`)) }, [_]) + const {mutate: onPressDeleteChatDeclaration} = useDeleteActorDeclaration() + return ( @@ -314,7 +318,7 @@ export function SettingsScreen({}: Props) { showBackButton={isMobile} style={[ pal.border, - {borderBottomWidth: 1}, + {borderBottomWidth: hairlineWidth}, !isMobile && {borderLeftWidth: 1, borderRightWidth: 1}, ]}> @@ -324,8 +328,7 @@ export function SettingsScreen({}: Props) {
@@ -378,7 +381,7 @@ export function SettingsScreen({}: Props) { {!currentAccount.emailConfirmed && } - + Signed in as @@ -613,6 +616,31 @@ export function SettingsScreen({}: Props) { My Saved Feeds + navigation.navigate('MessagesSettings') + } + accessibilityRole="button" + accessibilityLabel={_(msg`Chat settings`)} + accessibilityHint={_(msg`Opens chat settings`)}> + + + + + Chat Settings + + @@ -826,6 +854,16 @@ export function SettingsScreen({}: Props) { Reset preferences state + onPressDeleteChatDeclaration()} + accessibilityRole="button" + accessibilityLabel={_(msg`Delete chat declaration record`)} + accessibilityHint={_(msg`Deletes the chat declaration record`)}> + + Delete chat declaration record + + { - if (state) { - Animated.timing(initInterp, { - toValue: 1, - duration: 300, - easing: Easing.out(Easing.exp), - useNativeDriver: true, - }).start() - } else { - initInterp.setValue(0) - } - }, [initInterp, state]) - const wrapperAnimStyle = { - transform: [ - { - translateY: initInterp.interpolate({ - inputRange: [0, 1], - outputRange: [winHeight, 0], - }), - }, - ], - } - - // rendering - // = - - if (!state) { - return - } + const open = !!state return ( - - - + accessibilityViewIsModal + visible={open} + presentationStyle="formSheet" + animationType="slide" + onRequestClose={() => ref.current?.onPressCancel()}> + + + + + + ) }) -const styles = StyleSheet.create({ - wrapper: { - position: 'absolute', - top: 0, - bottom: 0, - width: '100%', - ...Platform.select({ - ios: { - paddingTop: 24, - }, - }), - }, -}) +function Providers({ + children, + open, +}: { + children: React.ReactNode + open: boolean +}) { + // on iOS, it's a native formSheet. We use FullWindowOverlay to make + // the dialogs appear over it + if (isIOS) { + return ( + <> + {children} + + + ) + } else { + // on Android we just nest the dialogs within it + return ( + + + + + {children} + + + + + + + ) + } +} + +// Generally, the backdrop of the app is the theme color, but when this is open +// we want it to be black due to the modal being a form sheet. +function IOSModalBackground({active}: {active: boolean}) { + const theme = useThemeName() + + useLayoutEffect(() => { + SystemUI.setBackgroundColorAsync('black') + + return () => { + SystemUI.setBackgroundColorAsync(getBackgroundColor(theme)) + } + }, [theme]) + + // Set the status bar to light - however, only if the modal is active + // If we rely on this component being mounted to set this, + // there'll be a delay before it switches back to default. + return active ? : null +} diff --git a/src/view/shell/Composer.web.tsx b/src/view/shell/Composer.web.tsx index 00233f66af..c9c604f114 100644 --- a/src/view/shell/Composer.web.tsx +++ b/src/view/shell/Composer.web.tsx @@ -1,15 +1,16 @@ import React from 'react' import {StyleSheet, View} from 'react-native' import Animated, {FadeIn, FadeInDown, FadeOut} from 'react-native-reanimated' -import {ComposePost} from '../com/composer/Composer' -import {useComposerState} from 'state/shell/composer' + +import {useWebBodyScrollLock} from '#/lib/hooks/useWebBodyScrollLock' import {usePalette} from 'lib/hooks/usePalette' import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {useWebBodyScrollLock} from '#/lib/hooks/useWebBodyScrollLock' +import {useComposerState} from 'state/shell/composer' import { EmojiPicker, EmojiPickerState, } from 'view/com/composer/text-input/web/EmojiPicker.web' +import {ComposePost} from '../com/composer/Composer' const BOTTOM_BAR_HEIGHT = 61 diff --git a/src/view/shell/Drawer.tsx b/src/view/shell/Drawer.tsx index b575692036..be35b314b4 100644 --- a/src/view/shell/Drawer.tsx +++ b/src/view/shell/Drawer.tsx @@ -27,19 +27,6 @@ import {useAnalytics} from 'lib/analytics/analytics' import {FEEDBACK_FORM_URL, HELP_DESK_URL} from 'lib/constants' import {useNavigationTabState} from 'lib/hooks/useNavigationTabState' import {usePalette} from 'lib/hooks/usePalette' -import { - BellIcon, - BellIconSolid, - CogIcon, - HashtagIcon, - HomeIcon, - HomeIconSolid, - ListIcon, - MagnifyingGlassIcon2, - MagnifyingGlassIcon2Solid, - UserIcon, - UserIconSolid, -} from 'lib/icons' import {getTabState, TabState} from 'lib/routes/helpers' import {NavigationProp} from 'lib/routes/types' import {colors, s} from 'lib/styles' @@ -50,8 +37,30 @@ import {formatCountShortOnly} from 'view/com/util/numeric/format' import {Text} from 'view/com/util/text/Text' import {UserAvatar} from 'view/com/util/UserAvatar' import {useTheme as useAlfTheme} from '#/alf' +import { + Bell_Filled_Corner0_Rounded as BellFilled, + Bell_Stroke2_Corner0_Rounded as Bell, +} from '#/components/icons/Bell' +import {BulletList_Stroke2_Corner0_Rounded as List} from '#/components/icons/BulletList' +import { + Hashtag_Filled_Corner0_Rounded as HashtagFilled, + Hashtag_Stroke2_Corner0_Rounded as Hashtag, +} from '#/components/icons/Hashtag' +import { + HomeOpen_Filled_Corner0_Rounded as HomeFilled, + HomeOpen_Stoke2_Corner0_Rounded as Home, +} from '#/components/icons/HomeOpen' +import {MagnifyingGlass_Filled_Stroke2_Corner0_Rounded as MagnifyingGlassFilled} from '#/components/icons/MagnifyingGlass' +import {MagnifyingGlass2_Stroke2_Corner0_Rounded as MagnifyingGlass} from '#/components/icons/MagnifyingGlass2' +import {SettingsGear2_Stroke2_Corner0_Rounded as Settings} from '#/components/icons/SettingsGear2' +import { + UserCircle_Filled_Corner0_Rounded as UserCircleFilled, + UserCircle_Stroke2_Corner0_Rounded as UserCircle, +} from '#/components/icons/UserCircle' import {TextLink} from '../com/util/Link' +const iconWidth = 28 + let DrawerProfileCard = ({ account, onPressProfile, @@ -370,16 +379,14 @@ let SearchMenuItem = ({ } - size={24} - strokeWidth={1.7} + width={iconWidth} /> ) : ( - } - size={24} - strokeWidth={1.7} + width={iconWidth} /> ) } @@ -406,17 +413,12 @@ let HomeMenuItem = ({ } - size="24" - strokeWidth={3.25} + width={iconWidth} /> ) : ( - } - size="24" - strokeWidth={3.25} - /> + } width={iconWidth} /> ) } label={_(msg`Home`)} @@ -443,17 +445,12 @@ let NotificationsMenuItem = ({ } - size="24" - strokeWidth={1.7} + width={iconWidth} /> ) : ( - } - size="24" - strokeWidth={1.7} - /> + } width={iconWidth} /> ) } label={_(msg`Notifications`)} @@ -484,17 +481,12 @@ let FeedsMenuItem = ({ ) : ( - + ) } label={_(msg`Feeds`)} @@ -512,7 +504,7 @@ let ListsMenuItem = ({onPress}: {onPress: () => void}): React.ReactNode => { const pal = usePalette('default') return ( } + icon={} label={_(msg`Lists`)} accessibilityLabel={_(msg`Lists`)} accessibilityHint="" @@ -535,16 +527,14 @@ let ProfileMenuItem = ({ } - size="26" - strokeWidth={1.5} + width={iconWidth} /> ) : ( - } - size="26" - strokeWidth={1.5} + width={iconWidth} /> ) } @@ -563,11 +553,7 @@ let SettingsMenuItem = ({onPress}: {onPress: () => void}): React.ReactNode => { return ( } - size="26" - strokeWidth={1.75} - /> + } width={iconWidth} /> } label={_(msg`Settings`)} accessibilityLabel={_(msg`Settings`)} diff --git a/src/view/shell/bottom-bar/BottomBar.tsx b/src/view/shell/bottom-bar/BottomBar.tsx index 0db8b242a1..0a7897f17e 100644 --- a/src/view/shell/bottom-bar/BottomBar.tsx +++ b/src/view/shell/bottom-bar/BottomBar.tsx @@ -13,18 +13,8 @@ import {useDedupe} from '#/lib/hooks/useDedupe' import {useMinimalShellMode} from '#/lib/hooks/useMinimalShellMode' import {useNavigationTabState} from '#/lib/hooks/useNavigationTabState' import {usePalette} from '#/lib/hooks/usePalette' -import { - BellIcon, - BellIconSolid, - HashtagIcon, - HomeIcon, - HomeIconSolid, - MagnifyingGlassIcon2, - MagnifyingGlassIcon2Solid, -} from '#/lib/icons' import {clamp} from '#/lib/numbers' import {getTabState, TabState} from '#/lib/routes/helpers' -import {useGate} from '#/lib/statsig/statsig' import {s} from '#/lib/styles' import {emitSoftReset} from '#/state/events' import {useUnreadMessageCount} from '#/state/queries/messages/list-converations' @@ -41,8 +31,20 @@ import {Logo} from '#/view/icons/Logo' import {Logotype} from '#/view/icons/Logotype' import {useDialogControl} from '#/components/Dialog' import {SwitchAccountDialog} from '#/components/dialogs/SwitchAccount' -import {Envelope_Stroke2_Corner0_Rounded as Envelope} from '#/components/icons/Envelope' -import {Envelope_Filled_Stroke2_Corner0_Rounded as EnvelopeFilled} from '#/components/icons/Envelope' +import { + Bell_Filled_Corner0_Rounded as BellFilled, + Bell_Stroke2_Corner0_Rounded as Bell, +} from '#/components/icons/Bell' +import { + HomeOpen_Filled_Corner0_Rounded as HomeFilled, + HomeOpen_Stoke2_Corner0_Rounded as Home, +} from '#/components/icons/HomeOpen' +import {MagnifyingGlass_Filled_Stroke2_Corner0_Rounded as MagnifyingGlassFilled} from '#/components/icons/MagnifyingGlass' +import {MagnifyingGlass2_Stroke2_Corner0_Rounded as MagnifyingGlass} from '#/components/icons/MagnifyingGlass2' +import { + Message_Stroke2_Corner0_Rounded as Message, + Message_Stroke2_Corner0_Rounded_Filled as MessageFilled, +} from '#/components/icons/Message' import {styles} from './BottomBarStyles' type TabOptions = @@ -60,14 +62,8 @@ export function BottomBar({navigation}: BottomTabBarProps) { const safeAreaInsets = useSafeAreaInsets() const {track} = useAnalytics() const {footerHeight} = useShellLayout() - const { - isAtHome, - isAtSearch, - isAtFeeds, - isAtNotifications, - isAtMyProfile, - isAtMessages, - } = useNavigationTabState() + const {isAtHome, isAtSearch, isAtNotifications, isAtMyProfile, isAtMessages} = + useNavigationTabState() const numUnreadNotifications = useUnreadNotifications() const numUnreadMessages = useUnreadMessageCount() const {footerMinimalShellTransform} = useMinimalShellMode() @@ -77,7 +73,7 @@ export function BottomBar({navigation}: BottomTabBarProps) { const dedupe = useDedupe() const accountSwitchControl = useDialogControl() const playHaptic = useHaptics() - const gate = useGate() + const iconWidth = 28 const showSignIn = React.useCallback(() => { closeAllActiveElements() @@ -110,10 +106,6 @@ export function BottomBar({navigation}: BottomTabBarProps) { () => onPressTab('Search'), [onPressTab], ) - const onPressFeeds = React.useCallback( - () => onPressTab('Feeds'), - [onPressTab], - ) const onPressNotifications = React.useCallback( () => onPressTab('Notifications'), [onPressTab], @@ -121,7 +113,6 @@ export function BottomBar({navigation}: BottomTabBarProps) { const onPressProfile = React.useCallback(() => { onPressTab('MyProfile') }, [onPressTab]) - const onPressMessages = React.useCallback(() => { onPressTab('Messages') }, [onPressTab]) @@ -152,15 +143,13 @@ export function BottomBar({navigation}: BottomTabBarProps) { testID="bottomBarHomeBtn" icon={ isAtHome ? ( - ) : ( - ) @@ -174,16 +163,14 @@ export function BottomBar({navigation}: BottomTabBarProps) { testID="bottomBarSearchBtn" icon={ isAtSearch ? ( - ) : ( - ) } @@ -193,40 +180,42 @@ export function BottomBar({navigation}: BottomTabBarProps) { accessibilityHint="" /> ) : ( - ) } - onPress={onPressFeeds} + onPress={onPressMessages} + notificationCount={numUnreadMessages.numUnread} + accessible={true} accessibilityRole="tab" - accessibilityLabel={_(msg`Feeds`)} - accessibilityHint="" + accessibilityLabel={_(msg`Chat`)} + accessibilityHint={ + numUnreadMessages.count > 0 + ? `${numUnreadMessages.numUnread} unread` + : '' + } /> ) : ( - ) @@ -242,34 +231,6 @@ export function BottomBar({navigation}: BottomTabBarProps) { : `${numUnreadNotifications} unread` } /> - {gate('dms') && ( - - ) : ( - - ) - } - onPress={onPressMessages} - notificationCount={numUnreadMessages.numUnread} - accessible={true} - accessibilityRole="tab" - accessibilityLabel={_(msg`Messages`)} - accessibilityHint={ - numUnreadMessages.count > 0 - ? `${numUnreadMessages.numUnread} unread` - : '' - } - /> - )} { closeAllActiveElements() @@ -72,11 +76,10 @@ export function BottomBarWeb() { <> {({isActive}) => { - const Icon = isActive ? HomeIconSolid : HomeIcon + const Icon = isActive ? HomeFilled : Home return ( ) @@ -84,14 +87,11 @@ export function BottomBarWeb() { {({isActive}) => { - const Icon = isActive - ? MagnifyingGlassIcon2Solid - : MagnifyingGlassIcon2 + const Icon = isActive ? MagnifyingGlassFilled : MagnifyingGlass return ( ) }} @@ -99,42 +99,28 @@ export function BottomBarWeb() { {hasSession && ( <> - + {({isActive}) => { + const Icon = isActive ? MessageFilled : Message return ( - ) }} {({isActive}) => { - const Icon = isActive ? BellIconSolid : BellIcon + const Icon = isActive ? BellFilled : Bell return ( ) }} - {gate('dms') && ( - - {({isActive}) => { - const Icon = isActive ? EnvelopeFilled : Envelope - return ( - - ) - }} - - )} {({isActive}) => { - const Icon = isActive ? UserIconSolid : UserIcon + const Icon = isActive ? UserCircleFilled : UserCircle return ( ) diff --git a/src/view/shell/desktop/Feeds.tsx b/src/view/shell/desktop/Feeds.tsx index f447490b36..72e34ac469 100644 --- a/src/view/shell/desktop/Feeds.tsx +++ b/src/view/shell/desktop/Feeds.tsx @@ -1,16 +1,16 @@ import React from 'react' -import {View, StyleSheet} from 'react-native' -import {useNavigationState, useNavigation} from '@react-navigation/native' -import {usePalette} from 'lib/hooks/usePalette' -import {TextLink} from 'view/com/util/Link' -import {getCurrentRoute} from 'lib/routes/helpers' -import {useLingui} from '@lingui/react' +import {StyleSheet, View} from 'react-native' import {msg} from '@lingui/macro' +import {useLingui} from '@lingui/react' +import {useNavigation, useNavigationState} from '@react-navigation/native' + +import {emitSoftReset} from '#/state/events' import {usePinnedFeedsInfos} from '#/state/queries/feed' import {useSelectedFeed, useSetSelectedFeed} from '#/state/shell/selected-feed' -import {FeedDescriptor} from '#/state/queries/post-feed' +import {usePalette} from 'lib/hooks/usePalette' +import {getCurrentRoute} from 'lib/routes/helpers' import {NavigationProp} from 'lib/routes/types' -import {emitSoftReset} from '#/state/events' +import {TextLink} from 'view/com/util/Link' export function DesktopFeeds() { const pal = usePalette('default') @@ -31,17 +31,7 @@ export function DesktopFeeds() { return ( {pinnedFeedInfos.map(feedInfo => { - const uri = feedInfo.uri - let feed: FeedDescriptor - if (!uri) { - feed = 'home' - } else if (uri.includes('app.bsky.feed.generator')) { - feed = `feedgen|${uri}` - } else if (uri.includes('app.bsky.graph.list')) { - feed = `list|${uri}` - } else { - return null - } + const feed = feedInfo.feedDescriptor return ( - + New Post @@ -270,14 +281,28 @@ function ComposeBtn() { ) } +function ChatNavItem() { + const pal = usePalette('default') + const {_} = useLingui() + const numUnreadMessages = useUnreadMessageCount() + + return ( + } + iconFilled={} + label={_(msg`Chat`)} + /> + ) +} + export function DesktopLeftNav() { const {hasSession, currentAccount} = useSession() const pal = usePalette('default') const {_} = useLingui() const {isDesktop, isTablet} = useWebMediaQueries() const numUnreadNotifications = useUnreadNotifications() - const numUnreadMessages = useUnreadMessageCount() - const gate = useGate() if (!hasSession && !isDesktop) { return null @@ -305,133 +330,61 @@ export function DesktopLeftNav() { } - iconFilled={ - - } + icon={} + iconFilled={} label={_(msg`Home`)} /> - } + icon={} iconFilled={ - + } label={_(msg`Search`)} /> - } - iconFilled={ - - } + icon={} + iconFilled={} label={_(msg`Notifications`)} /> - {gate('dms') && ( - } - iconFilled={ - - } - label={_(msg`Messages`)} - /> - )} + } iconFilled={ - } label={_(msg`Feeds`)} /> - } - iconFilled={ - - } + icon={} + iconFilled={} label={_(msg`Lists`)} /> - } + icon={} iconFilled={ - + } label={_(msg`Profile`)} /> - } + icon={} iconFilled={ - + } label={_(msg`Settings`)} /> @@ -494,7 +447,7 @@ const styles = StyleSheet.create({ alignItems: 'center', justifyContent: 'center', width: 28, - height: 28, + height: 24, marginTop: 2, zIndex: 1, }, diff --git a/src/view/shell/desktop/RightNav.tsx b/src/view/shell/desktop/RightNav.tsx index f0cd4f59ae..633f04932a 100644 --- a/src/view/shell/desktop/RightNav.tsx +++ b/src/view/shell/desktop/RightNav.tsx @@ -13,6 +13,7 @@ import {TextLink} from 'view/com/util/Link' import {Text} from 'view/com/util/text/Text' import {DesktopFeeds} from './Feeds' import {DesktopSearch} from './Search' +import hairlineWidth = StyleSheet.hairlineWidth export function DesktopRightNav({routeName}: {routeName: string}) { const pal = usePalette('default') @@ -130,8 +131,8 @@ const styles = StyleSheet.create({ marginBottom: 10, }, desktopFeedsContainer: { - borderTopWidth: 1, - borderBottomWidth: 1, + borderTopWidth: hairlineWidth, + borderBottomWidth: hairlineWidth, marginTop: 18, marginBottom: 18, }, diff --git a/src/view/shell/index.tsx b/src/view/shell/index.tsx index 425c1b3f80..317ac0bde4 100644 --- a/src/view/shell/index.tsx +++ b/src/view/shell/index.tsx @@ -13,7 +13,7 @@ import * as NavigationBar from 'expo-navigation-bar' import {StatusBar} from 'expo-status-bar' import {useNavigationState} from '@react-navigation/native' -import {useAgent, useSession} from '#/state/session' +import {useSession} from '#/state/session' import { useIsDrawerOpen, useIsDrawerSwipeDisabled, @@ -22,7 +22,7 @@ import { import {useCloseAnyActiveElement} from '#/state/util' import {useNotificationsHandler} from 'lib/hooks/useNotificationHandler' import {usePalette} from 'lib/hooks/usePalette' -import * as notifications from 'lib/notifications/notifications' +import {useNotificationsRegistration} from 'lib/notifications/notifications' import {isStateAtTabRoot} from 'lib/routes/helpers' import {useTheme} from 'lib/ThemeContext' import {isAndroid} from 'platform/detection' @@ -33,6 +33,7 @@ import {ErrorBoundary} from 'view/com/util/ErrorBoundary' import {MutedWordsDialog} from '#/components/dialogs/MutedWords' import {SigninDialog} from '#/components/dialogs/Signin' import {Outlet as PortalOutlet} from '#/components/Portal' +import {NativeTranslationView} from '../../../modules/expo-bluesky-translate' import {RoutesContainer, TabsNavigator} from '../../Navigation' import {Composer} from './Composer' import {DrawerContent} from './Drawer' @@ -57,13 +58,11 @@ function ShellInner() { [setIsDrawerOpen], ) const canGoBack = useNavigationState(state => !isStateAtTabRoot(state)) - const {hasSession, currentAccount} = useSession() - const {getAgent} = useAgent() + const {hasSession} = useSession() const closeAnyActiveElement = useCloseAnyActiveElement() const {importantForAccessibility} = useDialogStateContext() - // start undefined - const currentAccountDid = React.useRef(undefined) + useNotificationsRegistration() useNotificationsHandler() React.useEffect(() => { @@ -78,19 +77,6 @@ function ShellInner() { } }, [closeAnyActiveElement]) - React.useEffect(() => { - // only runs when did changes - if (currentAccount && currentAccountDid.current !== currentAccount.did) { - currentAccountDid.current = currentAccount.did - notifications.requestPermissionsAndRegisterToken(getAgent, currentAccount) - const unsub = notifications.registerTokenChangeHandler( - getAgent, - currentAccount, - ) - return unsub - } - }, [currentAccount, getAgent]) - return ( <> + diff --git a/yarn.lock b/yarn.lock index 4edc4ce430..ae18bfbec6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -34,10 +34,10 @@ jsonpointer "^5.0.0" leven "^3.1.0" -"@atproto-labs/api@^0.12.8-clipclops.0": - version "0.12.8-clipclops.0" - resolved "https://registry.yarnpkg.com/@atproto-labs/api/-/api-0.12.8-clipclops.0.tgz#1c5d41d3396e439a0b645f7e1ccf500cc4b42580" - integrity sha512-YYDtWWk6BR+aRBVja/1v+gceNK81lkmF5bi6O4pTmJhFt/321XATx/ql8uTWta4VnVThoFeNPG6nLr7hs8b9cA== +"@atproto/api@^0.12.14": + version "0.12.14" + resolved "https://registry.yarnpkg.com/@atproto/api/-/api-0.12.14.tgz#81252fd166ec8fe950056531e690d563437720fa" + integrity sha512-ZPh/afoRjFEQDQgMZW2FQiG5CDUifY7SxBqI0zVJUwed8Zi6fqYzGYM8fcDvD8yJfflRCqRxUE72g5fKiA1zAQ== dependencies: "@atproto/common-web" "^0.3.0" "@atproto/lexicon" "^0.4.0" @@ -58,18 +58,6 @@ multiformats "^9.9.0" tlds "^1.234.0" -"@atproto/api@^0.12.5": - version "0.12.5" - resolved "https://registry.yarnpkg.com/@atproto/api/-/api-0.12.5.tgz#3ed70990b27c468d9663ca71306039cab663ca96" - integrity sha512-xqdl/KrAK2kW6hN8+eSmKTWHgMNaPnDAEvZzo08Xbk/5jdRzjoEPS+p7k/wQ+ZefwOHL3QUbVPO4hMfmVxzO/Q== - dependencies: - "@atproto/common-web" "^0.3.0" - "@atproto/lexicon" "^0.4.0" - "@atproto/syntax" "^0.3.0" - "@atproto/xrpc" "^0.5.0" - multiformats "^9.9.0" - tlds "^1.234.0" - "@atproto/aws@^0.2.0": version "0.2.0" resolved "https://registry.yarnpkg.com/@atproto/aws/-/aws-0.2.0.tgz#17f3faf744824457cabd62f87be8bf08cacf8029" @@ -1067,6 +1055,14 @@ "@babel/highlight" "^7.22.13" chalk "^2.4.2" +"@babel/code-frame@^7.23.5", "@babel/code-frame@^7.24.2": + version "7.24.2" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.24.2.tgz#718b4b19841809a58b29b68cde80bc5e1aa6d9ae" + integrity sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ== + dependencies: + "@babel/highlight" "^7.24.2" + picocolors "^1.0.0" + "@babel/compat-data@^7.20.5", "@babel/compat-data@^7.22.5", "@babel/compat-data@^7.22.6", "@babel/compat-data@^7.22.9": version "7.22.9" resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.22.9.tgz#71cdb00a1ce3a329ce4cbec3a44f9fef35669730" @@ -1077,6 +1073,11 @@ resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.5.tgz#ffb878728bb6bdcb6f4510aa51b1be9afb8cfd98" integrity sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw== +"@babel/compat-data@^7.23.5": + version "7.24.4" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.24.4.tgz#6f102372e9094f25d908ca0d34fc74c74606059a" + integrity sha512-vg8Gih2MLK+kOkHJp4gBEIkyaIi00jgWot2D9QOmmfLC8jINSOzmCLta6Bvz/JSBCqnegV0L80jhxkol5GWNfQ== + "@babel/core@^7.1.0", "@babel/core@^7.11.1", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.13.16", "@babel/core@^7.14.0", "@babel/core@^7.16.0", "@babel/core@^7.20.0", "@babel/core@^7.20.2", "@babel/core@^7.7.2", "@babel/core@^7.8.0": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.22.10.tgz#aad442c7bcd1582252cb4576747ace35bc122f35" @@ -1119,6 +1120,27 @@ json5 "^2.2.3" semver "^6.3.1" +"@babel/core@^7.24.4": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.24.5.tgz#15ab5b98e101972d171aeef92ac70d8d6718f06a" + integrity sha512-tVQRucExLQ02Boi4vdPp49svNGcfL2GhdTCT9aldhXgCJVAI21EtRfBettiuLUwce/7r6bFdgs6JFkcdTiFttA== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.24.2" + "@babel/generator" "^7.24.5" + "@babel/helper-compilation-targets" "^7.23.6" + "@babel/helper-module-transforms" "^7.24.5" + "@babel/helpers" "^7.24.5" + "@babel/parser" "^7.24.5" + "@babel/template" "^7.24.0" + "@babel/traverse" "^7.24.5" + "@babel/types" "^7.24.5" + convert-source-map "^2.0.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.3" + semver "^6.3.1" + "@babel/eslint-parser@^7.16.3", "@babel/eslint-parser@^7.18.2": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/eslint-parser/-/eslint-parser-7.22.10.tgz#bfdf3d1b32ad573fe7c1c3447e0b485e3a41fd09" @@ -1128,6 +1150,17 @@ eslint-visitor-keys "^2.1.0" semver "^6.3.1" +"@babel/generator@7.2.0": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.2.0.tgz#eaf3821fa0301d9d4aef88e63d4bcc19b73ba16c" + integrity sha512-BA75MVfRlFQG2EZgFYIwyT1r6xSkwfP2bdkY/kLZusEYWiJs4xCowab/alaEaT0wSvmVuXGqiefeBlP+7V1yKg== + dependencies: + "@babel/types" "^7.2.0" + jsesc "^2.5.1" + lodash "^4.17.10" + source-map "^0.5.0" + trim-right "^1.0.1" + "@babel/generator@^7.20.0", "@babel/generator@^7.22.10", "@babel/generator@^7.7.2": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.22.10.tgz#c92254361f398e160645ac58831069707382b722" @@ -1158,6 +1191,16 @@ "@jridgewell/trace-mapping" "^0.3.17" jsesc "^2.5.1" +"@babel/generator@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.24.5.tgz#e5afc068f932f05616b66713e28d0f04e99daeb3" + integrity sha512-x32i4hEXvr+iI0NEoEfDKzlemF8AmtOP8CcrRaEcpzysWuoEb1KknpcvMsHKPONoKZiDuItklgWhB18xEhr9PA== + dependencies: + "@babel/types" "^7.24.5" + "@jridgewell/gen-mapping" "^0.3.5" + "@jridgewell/trace-mapping" "^0.3.25" + jsesc "^2.5.1" + "@babel/helper-annotate-as-pure@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz#e7f06737b197d580a01edf75d97e2c8be99d3882" @@ -1194,6 +1237,17 @@ lru-cache "^5.1.1" semver "^6.3.1" +"@babel/helper-compilation-targets@^7.23.6": + version "7.23.6" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz#4d79069b16cbcf1461289eccfbbd81501ae39991" + integrity sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ== + dependencies: + "@babel/compat-data" "^7.23.5" + "@babel/helper-validator-option" "^7.23.5" + browserslist "^4.22.2" + lru-cache "^5.1.1" + semver "^6.3.1" + "@babel/helper-create-class-features-plugin@^7.18.6", "@babel/helper-create-class-features-plugin@^7.22.10", "@babel/helper-create-class-features-plugin@^7.22.5": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz#dd2612d59eac45588021ac3d6fa976d08f4e95a3" @@ -1224,6 +1278,21 @@ "@babel/helper-split-export-declaration" "^7.22.6" semver "^6.3.1" +"@babel/helper-create-class-features-plugin@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.5.tgz#7d19da92c7e0cd8d11c09af2ce1b8e7512a6e723" + integrity sha512-uRc4Cv8UQWnE4NXlYTIIdM7wfFkOqlFztcC/gVXDKohKoVB3OyonfelUBaJzSwpBntZ2KYGF/9S7asCHsXwW6g== + dependencies: + "@babel/helper-annotate-as-pure" "^7.22.5" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-member-expression-to-functions" "^7.24.5" + "@babel/helper-optimise-call-expression" "^7.22.5" + "@babel/helper-replace-supers" "^7.24.1" + "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.24.5" + semver "^6.3.1" + "@babel/helper-create-regexp-features-plugin@^7.18.6", "@babel/helper-create-regexp-features-plugin@^7.22.5": version "7.22.9" resolved "https://registry.yarnpkg.com/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz#9d8e61a8d9366fe66198f57c40565663de0825f6" @@ -1254,6 +1323,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== +"@babel/helper-environment-visitor@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.6.tgz#ac7ad5517821641550f6698dd5468f8cef78620d" + integrity sha512-Y50Cg3k0LKLMjxdPjIl40SdJgMB85iXn27Vk/qbHZCFx/o5XO3PSnpi675h1KEmmDb6OFArfd5SCQEQ5Q4H88g== + "@babel/helper-function-name@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz#ede300828905bb15e582c037162f99d5183af1be" @@ -1291,6 +1365,13 @@ dependencies: "@babel/types" "^7.22.5" +"@babel/helper-member-expression-to-functions@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.5.tgz#5981e131d5c7003c7d1fa1ad49e86c9b097ec475" + integrity sha512-4owRteeihKWKamtqg4JmWSsEZU445xpFRXPEwp44HbgbxdWlUV1b4Agg4lkA806Lil5XM/e+FJyS0vj5T6vmcA== + dependencies: + "@babel/types" "^7.24.5" + "@babel/helper-module-imports@^7.10.4", "@babel/helper-module-imports@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz#1a8f4c9f4027d23f520bd76b364d44434a72660c" @@ -1305,6 +1386,20 @@ dependencies: "@babel/types" "^7.22.15" +"@babel/helper-module-imports@^7.24.3": + version "7.24.3" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.3.tgz#6ac476e6d168c7c23ff3ba3cf4f7841d46ac8128" + integrity sha512-viKb0F9f2s0BCS22QSF308z/+1YWKV/76mwt61NBzS5izMzDPwdq1pTrzf+Li3npBWX9KdQbkeCt1jSAM7lZqg== + dependencies: + "@babel/types" "^7.24.0" + +"@babel/helper-module-imports@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.24.6.tgz#65e54ffceed6a268dc4ce11f0433b82cfff57852" + integrity sha512-a26dmxFJBF62rRO9mmpgrfTLsAuyHk4e1hKTUkD/fcMfynt8gvEKwQPQDVxWhca8dHoDck+55DFt42zV0QMw5g== + dependencies: + "@babel/types" "^7.24.6" + "@babel/helper-module-transforms@^7.22.5", "@babel/helper-module-transforms@^7.22.9": version "7.22.9" resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.22.9.tgz#92dfcb1fbbb2bc62529024f72d942a8c97142129" @@ -1327,6 +1422,28 @@ "@babel/helper-split-export-declaration" "^7.22.6" "@babel/helper-validator-identifier" "^7.22.20" +"@babel/helper-module-transforms@^7.23.3": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.6.tgz#22346ed9df44ce84dee850d7433c5b73fab1fe4e" + integrity sha512-Y/YMPm83mV2HJTbX1Qh2sjgjqcacvOlhbzdCCsSlblOKjSYmQqEbO6rUniWQyRo9ncyfjT8hnUjlG06RXDEmcA== + dependencies: + "@babel/helper-environment-visitor" "^7.24.6" + "@babel/helper-module-imports" "^7.24.6" + "@babel/helper-simple-access" "^7.24.6" + "@babel/helper-split-export-declaration" "^7.24.6" + "@babel/helper-validator-identifier" "^7.24.6" + +"@babel/helper-module-transforms@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.24.5.tgz#ea6c5e33f7b262a0ae762fd5986355c45f54a545" + integrity sha512-9GxeY8c2d2mdQUP1Dye0ks3VDyIMS98kt/llQ2nUId8IsWqTF0l1LkSX0/uP7l7MCDrzXS009Hyhe2gzTiGW8A== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-module-imports" "^7.24.3" + "@babel/helper-simple-access" "^7.24.5" + "@babel/helper-split-export-declaration" "^7.24.5" + "@babel/helper-validator-identifier" "^7.24.5" + "@babel/helper-optimise-call-expression@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz#f21531a9ccbff644fdd156b4077c16ff0c3f609e" @@ -1339,6 +1456,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== +"@babel/helper-plugin-utils@^7.24.0", "@babel/helper-plugin-utils@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.5.tgz#a924607dd254a65695e5bd209b98b902b3b2f11a" + integrity sha512-xjNLDopRzW2o6ba0gKbkZq5YWEBaK3PCyTOY1K2P/O07LGMhMqlMXPxwN4S5/RhWuCobT8z0jrlKGlYmeR1OhQ== + "@babel/helper-remap-async-to-generator@^7.18.9", "@babel/helper-remap-async-to-generator@^7.22.5", "@babel/helper-remap-async-to-generator@^7.22.9": version "7.22.9" resolved "https://registry.yarnpkg.com/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz#53a25b7484e722d7efb9c350c75c032d4628de82" @@ -1366,6 +1488,15 @@ "@babel/helper-member-expression-to-functions" "^7.22.5" "@babel/helper-optimise-call-expression" "^7.22.5" +"@babel/helper-replace-supers@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.24.1.tgz#7085bd19d4a0b7ed8f405c1ed73ccb70f323abc1" + integrity sha512-QCR1UqC9BzG5vZl8BMicmZ28RuUBnHhAMddD8yHFHDRH9lLTZ9uUPehX8ctVPT8l0TKblJidqcgUUKGVrePleQ== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-member-expression-to-functions" "^7.23.0" + "@babel/helper-optimise-call-expression" "^7.22.5" + "@babel/helper-simple-access@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" @@ -1373,6 +1504,20 @@ dependencies: "@babel/types" "^7.22.5" +"@babel/helper-simple-access@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.5.tgz#50da5b72f58c16b07fbd992810be6049478e85ba" + integrity sha512-uH3Hmf5q5n7n8mz7arjUlDOCbttY/DW4DYhE6FUsjKJ/oYC1kQQUvwEQWxRwUpX9qQKRXeqLwWxrqilMrf32sQ== + dependencies: + "@babel/types" "^7.24.5" + +"@babel/helper-simple-access@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.24.6.tgz#1d6e04d468bba4fc963b4906f6dac6286cfedff1" + integrity sha512-nZzcMMD4ZhmB35MOOzQuiGO5RzL6tJbsT37Zx8M5L/i9KSrukGXWTjLe1knIbb/RmxoJE9GON9soq0c0VEMM5g== + dependencies: + "@babel/types" "^7.24.6" + "@babel/helper-skip-transparent-expression-wrappers@^7.20.0", "@babel/helper-skip-transparent-expression-wrappers@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz#007f15240b5751c537c40e77abb4e89eeaaa8847" @@ -1387,6 +1532,20 @@ dependencies: "@babel/types" "^7.22.5" +"@babel/helper-split-export-declaration@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.5.tgz#b9a67f06a46b0b339323617c8c6213b9055a78b6" + integrity sha512-5CHncttXohrHk8GWOFCcCl4oRD9fKosWlIRgWm4ql9VYioKm52Mk2xsmoohvm7f3JoiLSM5ZgJuRaf5QZZYd3Q== + dependencies: + "@babel/types" "^7.24.5" + +"@babel/helper-split-export-declaration@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.6.tgz#e830068f7ba8861c53b7421c284da30ae656d7a3" + integrity sha512-CvLSkwXGWnYlF9+J3iZUvwgAxKiYzK3BWuo+mLzD/MDGOZDj7Gq8+hqaOkMxmJwmlv0iu86uH5fdADd9Hxkymw== + dependencies: + "@babel/types" "^7.24.6" + "@babel/helper-string-parser@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" @@ -1397,6 +1556,16 @@ resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz#9478c707febcbbe1ddb38a3d91a2e054ae622d83" integrity sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ== +"@babel/helper-string-parser@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz#f99c36d3593db9540705d0739a1f10b5e20c696e" + integrity sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ== + +"@babel/helper-string-parser@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.24.6.tgz#28583c28b15f2a3339cfafafeaad42f9a0e828df" + integrity sha512-WdJjwMEkmBicq5T9fm/cHND3+UlFa2Yj8ALLgmoSQAJZysYbBjw+azChSGPN4DSPLXOcooGRvDwZWMcF/mLO2Q== + "@babel/helper-validator-identifier@^7.22.20": version "7.22.20" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" @@ -1407,6 +1576,16 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz#9544ef6a33999343c8740fa51350f30eeaaaf193" integrity sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ== +"@babel/helper-validator-identifier@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.5.tgz#918b1a7fa23056603506370089bd990d8720db62" + integrity sha512-3q93SSKX2TWCG30M2G2kwaKeTYgEUp5Snjuj8qm729SObL6nbtUldAi37qbxkD5gg3xnBio+f9nqpSepGZMvxA== + +"@babel/helper-validator-identifier@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.6.tgz#08bb6612b11bdec78f3feed3db196da682454a5e" + integrity sha512-4yA7s865JHaqUdRbnaxarZREuPTHrjpDT+pXoAZ1yhyo6uFnIEpS8VMu16siFOHDpZNKYv5BObhsB//ycbICyw== + "@babel/helper-validator-option@^7.22.15": version "7.22.15" resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" @@ -1417,6 +1596,11 @@ resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz#de52000a15a177413c8234fa3a8af4ee8102d0ac" integrity sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw== +"@babel/helper-validator-option@^7.23.5": + version "7.23.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz#907a3fbd4523426285365d1206c423c4c5520307" + integrity sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw== + "@babel/helper-wrap-function@^7.22.9": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz#d845e043880ed0b8c18bd194a12005cb16d2f614" @@ -1444,6 +1628,15 @@ "@babel/traverse" "^7.23.2" "@babel/types" "^7.23.0" +"@babel/helpers@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.24.5.tgz#fedeb87eeafa62b621160402181ad8585a22a40a" + integrity sha512-CiQmBMMpMQHwM5m01YnrM6imUG1ebgYJ+fAIW4FZe6m4qHTPaRHti+R8cggAwkdz4oXhtO4/K9JWlh+8hIfR2Q== + dependencies: + "@babel/template" "^7.24.0" + "@babel/traverse" "^7.24.5" + "@babel/types" "^7.24.5" + "@babel/highlight@^7.10.4", "@babel/highlight@^7.22.10": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.10.tgz#02a3f6d8c1cb4521b2fd0ab0da8f4739936137d7" @@ -1462,6 +1655,16 @@ chalk "^2.4.2" js-tokens "^4.0.0" +"@babel/highlight@^7.24.2": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.24.5.tgz#bc0613f98e1dd0720e99b2a9ee3760194a704b6e" + integrity sha512-8lLmua6AVh/8SLJRRVD6V8p73Hir9w5mJrhE+IPpILG31KKlI9iz5zmBYKcWPS59qSfgP9RaSBQSHHE81WKuEw== + dependencies: + "@babel/helper-validator-identifier" "^7.24.5" + chalk "^2.4.2" + js-tokens "^4.0.0" + picocolors "^1.0.0" + "@babel/parser@^7.1.0", "@babel/parser@^7.13.16", "@babel/parser@^7.14.7", "@babel/parser@^7.20.0", "@babel/parser@^7.20.7", "@babel/parser@^7.22.10", "@babel/parser@^7.22.5": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.22.10.tgz#e37634f9a12a1716136c44624ef54283cabd3f55" @@ -1472,6 +1675,11 @@ resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== +"@babel/parser@^7.24.0", "@babel/parser@^7.24.4", "@babel/parser@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.24.5.tgz#4a4d5ab4315579e5398a82dcf636ca80c3392790" + integrity sha512-EOv5IK8arwh3LI47dz1b0tKUb/1uhHAnHJOrjgtQMIpu1uXd9mlFrJg9IUgGUgZ41Ch0K8REPTYpO7B76b4vJg== + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz#87245a21cd69a73b0b81bcda98d443d6df08f05e" @@ -1525,6 +1733,14 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-export-default-from" "^7.22.5" +"@babel/plugin-proposal-logical-assignment-operators@^7.18.0": + version "7.20.7" + resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.20.7.tgz#dfbcaa8f7b4d37b51e8bfb46d94a5aea2bb89d83" + integrity sha512-y7C7cZgpMIjWlKE5T7eJwp+tnRYM89HmRvWM5EQuB5BoHEONjmQ8lSNmBUwOyy/GFRsohJED51YBF79hE1djug== + dependencies: + "@babel/helper-plugin-utils" "^7.20.2" + "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" + "@babel/plugin-proposal-nullish-coalescing-operator@^7.0.0", "@babel/plugin-proposal-nullish-coalescing-operator@^7.13.8", "@babel/plugin-proposal-nullish-coalescing-operator@^7.16.0", "@babel/plugin-proposal-nullish-coalescing-operator@^7.18.0": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.18.6.tgz#fdd940a99a740e577d6c753ab6fbb43fdb9467e1" @@ -1569,7 +1785,7 @@ "@babel/helper-skip-transparent-expression-wrappers" "^7.20.0" "@babel/plugin-syntax-optional-chaining" "^7.8.3" -"@babel/plugin-proposal-private-methods@^7.16.0": +"@babel/plugin-proposal-private-methods@^7.16.0", "@babel/plugin-proposal-private-methods@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.18.6.tgz#5209de7d213457548a98436fa2882f52f4be6bea" integrity sha512-nutsvktDItsNn4rpGItSNV2sz1XwS+nfU0Rg8aCx3W3NOKVzdMjJRu0O5OkgDp3ZGICSTbgRpxZoWsxoKRvbeA== @@ -1596,7 +1812,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-class-properties@^7.0.0", "@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": +"@babel/plugin-syntax-class-properties@^7.12.13", "@babel/plugin-syntax-class-properties@^7.8.3": version "7.12.13" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== @@ -1638,7 +1854,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.3" -"@babel/plugin-syntax-flow@^7.0.0", "@babel/plugin-syntax-flow@^7.12.1", "@babel/plugin-syntax-flow@^7.18.0", "@babel/plugin-syntax-flow@^7.22.5": +"@babel/plugin-syntax-flow@^7.12.1", "@babel/plugin-syntax-flow@^7.18.0", "@babel/plugin-syntax-flow@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.22.5.tgz#163b820b9e7696ce134df3ee716d9c0c98035859" integrity sha512-9RdCl0i+q0QExayk2nOS7853w08yLucnnPML6EN9S8fgMPVtdLDCdx/cOQ/i44Lb9UeQX9A35yaqBBOMMZxPxQ== @@ -1673,7 +1889,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.8.0" -"@babel/plugin-syntax-jsx@^7.0.0", "@babel/plugin-syntax-jsx@^7.22.5", "@babel/plugin-syntax-jsx@^7.7.2": +"@babel/plugin-syntax-jsx@^7.22.5", "@babel/plugin-syntax-jsx@^7.7.2": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz#a6b68e84fb76e759fc3b93e901876ffabbe1d918" integrity sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg== @@ -1687,6 +1903,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" +"@babel/plugin-syntax-jsx@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.24.1.tgz#3f6ca04b8c841811dbc3c5c5f837934e0d626c10" + integrity sha512-2eCtxZXf+kbkMIsXS4poTvT4Yu5rXiRa+9xGVT56raghjmBTKMpFNc9R4IDiB4emao9eO22Ox7CxuJG7BgExqA== + dependencies: + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/plugin-syntax-logical-assignment-operators@^7.10.4", "@babel/plugin-syntax-logical-assignment-operators@^7.8.3": version "7.10.4" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" @@ -1708,7 +1931,7 @@ dependencies: "@babel/helper-plugin-utils" "^7.10.4" -"@babel/plugin-syntax-object-rest-spread@^7.0.0", "@babel/plugin-syntax-object-rest-spread@^7.8.3": +"@babel/plugin-syntax-object-rest-spread@^7.8.3": version "7.8.3" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== @@ -1750,6 +1973,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" +"@babel/plugin-syntax-typescript@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.24.1.tgz#b3bcc51f396d15f3591683f90239de143c076844" + integrity sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw== + dependencies: + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/plugin-syntax-unicode-sets-regex@^7.18.6": version "7.18.6" resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz#d49a3b3e6b52e5be6740022317580234a6a47357" @@ -1765,6 +1995,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" +"@babel/plugin-transform-arrow-functions@^7.0.0-0": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.1.tgz#2bf263617060c9cc45bcdbf492b8cc805082bf27" + integrity sha512-ngT/3NkRhsaep9ck9uj2Xhv9+xB1zShY3tM3g6om4xxCELwCDN4g4Aq5dRn48+0hasAql7s2hdBOysCfNpr4fw== + dependencies: + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/plugin-transform-async-generator-functions@^7.22.10": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz#45946cd17f915b10e65c29b8ed18a0a50fc648c8" @@ -1784,7 +2021,7 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-remap-async-to-generator" "^7.22.5" -"@babel/plugin-transform-block-scoped-functions@^7.0.0", "@babel/plugin-transform-block-scoped-functions@^7.22.5": +"@babel/plugin-transform-block-scoped-functions@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz#27978075bfaeb9fa586d3cb63a3d30c1de580024" integrity sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA== @@ -1900,7 +2137,7 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-flow" "^7.22.5" -"@babel/plugin-transform-for-of@^7.0.0", "@babel/plugin-transform-for-of@^7.22.5": +"@babel/plugin-transform-for-of@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz#ab1b8a200a8f990137aff9a084f8de4099ab173f" integrity sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A== @@ -1939,7 +2176,7 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-logical-assignment-operators" "^7.10.4" -"@babel/plugin-transform-member-expression-literals@^7.0.0", "@babel/plugin-transform-member-expression-literals@^7.22.5": +"@babel/plugin-transform-member-expression-literals@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz#4fcc9050eded981a468347dd374539ed3e058def" integrity sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew== @@ -1963,6 +2200,15 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/helper-simple-access" "^7.22.5" +"@babel/plugin-transform-modules-commonjs@^7.24.1": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.1.tgz#e71ba1d0d69e049a22bf90b3867e263823d3f1b9" + integrity sha512-szog8fFTUxBfw0b98gEWPaEqF42ZUD/T3bkynW/wtgx2p/XCP55WEsb+VosKceRSd6njipdZvNogqdtI4Q0chw== + dependencies: + "@babel/helper-module-transforms" "^7.23.3" + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-simple-access" "^7.22.5" + "@babel/plugin-transform-modules-systemjs@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz#18c31410b5e579a0092638f95c896c2a98a5d496" @@ -1996,6 +2242,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" +"@babel/plugin-transform-nullish-coalescing-operator@^7.0.0-0": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.1.tgz#0cd494bb97cb07d428bd651632cb9d4140513988" + integrity sha512-iQ+caew8wRrhCikO5DrUYx0mrmdhkaELgFa+7baMcVuhxIkN7oxt06CZ51D65ugIb1UWRQ8oQe+HXAVM6qHFjw== + dependencies: + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-transform-nullish-coalescing-operator@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz#f8872c65776e0b552e0849d7596cddd416c3e381" @@ -2012,13 +2266,6 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-numeric-separator" "^7.10.4" -"@babel/plugin-transform-object-assign@^7.16.7": - version "7.22.5" - resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-assign/-/plugin-transform-object-assign-7.22.5.tgz#290c1b9555dcea48bb2c29ad94237777600d04f9" - integrity sha512-iDhx9ARkXq4vhZ2CYOSnQXkmxkDgosLi3J8Z17mKz7LyzthtkdVchLD7WZ3aXeCuvJDOW3+1I5TpJmwIbF9MKQ== - dependencies: - "@babel/helper-plugin-utils" "^7.22.5" - "@babel/plugin-transform-object-rest-spread@^7.12.13": version "7.23.4" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.23.4.tgz#2b9c2d26bf62710460bdc0d1730d4f1048361b83" @@ -2041,7 +2288,7 @@ "@babel/plugin-syntax-object-rest-spread" "^7.8.3" "@babel/plugin-transform-parameters" "^7.22.5" -"@babel/plugin-transform-object-super@^7.0.0", "@babel/plugin-transform-object-super@^7.22.5": +"@babel/plugin-transform-object-super@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz#794a8d2fcb5d0835af722173c1a9d704f44e218c" integrity sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw== @@ -2057,6 +2304,15 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" +"@babel/plugin-transform-optional-chaining@^7.0.0-0": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.5.tgz#a6334bebd7f9dd3df37447880d0bd64b778e600f" + integrity sha512-xWCkmwKT+ihmA6l7SSTpk8e4qQl/274iNbSKRRS8mpqFR32ksy36+a+LWY8OXCCEefF8WFlnOHVsaDI2231wBg== + dependencies: + "@babel/helper-plugin-utils" "^7.24.5" + "@babel/helper-skip-transparent-expression-wrappers" "^7.22.5" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-transform-optional-chaining@^7.22.10", "@babel/plugin-transform-optional-chaining@^7.22.5": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz#076d28a7e074392e840d4ae587d83445bac0372a" @@ -2108,7 +2364,7 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-private-property-in-object" "^7.14.5" -"@babel/plugin-transform-property-literals@^7.0.0", "@babel/plugin-transform-property-literals@^7.22.5": +"@babel/plugin-transform-property-literals@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz#b5ddabd73a4f7f26cd0e20f5db48290b88732766" integrity sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ== @@ -2229,6 +2485,13 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" +"@babel/plugin-transform-shorthand-properties@^7.0.0-0": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.1.tgz#ba9a09144cf55d35ec6b93a32253becad8ee5b55" + integrity sha512-LyjVB1nsJ6gTTUKRjRWx9C1s9hE7dLfP/knKdrfeH9UPtAGjYGgxIbFfx7xyLIEWs7Xe1Gnf8EWiUqfjLhInZA== + dependencies: + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/plugin-transform-spread@^7.0.0", "@babel/plugin-transform-spread@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz#6487fd29f229c95e284ba6c98d65eafb893fea6b" @@ -2244,7 +2507,14 @@ dependencies: "@babel/helper-plugin-utils" "^7.22.5" -"@babel/plugin-transform-template-literals@^7.0.0", "@babel/plugin-transform-template-literals@^7.22.5": +"@babel/plugin-transform-template-literals@^7.0.0-0": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.1.tgz#15e2166873a30d8617e3e2ccadb86643d327aab7" + integrity sha512-WRkhROsNzriarqECASCNu/nojeXCDTE/F2HmRgOzi7NGvyfYGq1NEjKBK3ckLfRgGc6/lPAqP0vDOSw3YtG34g== + dependencies: + "@babel/helper-plugin-utils" "^7.24.0" + +"@babel/plugin-transform-template-literals@^7.22.5": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz#8f38cf291e5f7a8e60e9f733193f0bcc10909bff" integrity sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA== @@ -2268,6 +2538,16 @@ "@babel/helper-plugin-utils" "^7.22.5" "@babel/plugin-syntax-typescript" "^7.22.5" +"@babel/plugin-transform-typescript@^7.24.1": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.24.5.tgz#bcba979e462120dc06a75bd34c473a04781931b8" + integrity sha512-E0VWu/hk83BIFUWnsKZ4D81KXjN5L3MobvevOHErASk9IPwKHOkTgvqzvNo1yP/ePJWqqK2SpUR5z+KQbl6NVw== + dependencies: + "@babel/helper-annotate-as-pure" "^7.22.5" + "@babel/helper-create-class-features-plugin" "^7.24.5" + "@babel/helper-plugin-utils" "^7.24.5" + "@babel/plugin-syntax-typescript" "^7.24.1" + "@babel/plugin-transform-unicode-escapes@^7.22.10": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.10.tgz#c723f380f40a2b2f57a62df24c9005834c8616d9" @@ -2438,6 +2718,17 @@ "@babel/plugin-transform-modules-commonjs" "^7.22.5" "@babel/plugin-transform-typescript" "^7.22.5" +"@babel/preset-typescript@^7.23.0": + version "7.24.1" + resolved "https://registry.yarnpkg.com/@babel/preset-typescript/-/preset-typescript-7.24.1.tgz#89bdf13a3149a17b3b2a2c9c62547f06db8845ec" + integrity sha512-1DBaMmRDpuYQBPWD8Pf/WEwCrtgRHxsZnP4mIy9G/X+hFfbI47Q2G4t1Paakld84+qsk2fSsUPMKg71jkoOOaQ== + dependencies: + "@babel/helper-plugin-utils" "^7.24.0" + "@babel/helper-validator-option" "^7.23.5" + "@babel/plugin-syntax-jsx" "^7.24.1" + "@babel/plugin-transform-modules-commonjs" "^7.24.1" + "@babel/plugin-transform-typescript" "^7.24.1" + "@babel/register@^7.13.16": version "7.22.5" resolved "https://registry.yarnpkg.com/@babel/register/-/register-7.22.5.tgz#e4d8d0f615ea3233a27b5c6ada6750ee59559939" @@ -2486,6 +2777,15 @@ "@babel/parser" "^7.22.15" "@babel/types" "^7.22.15" +"@babel/template@^7.24.0": + version "7.24.0" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.24.0.tgz#c6a524aa93a4a05d66aaf31654258fae69d87d50" + integrity sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA== + dependencies: + "@babel/code-frame" "^7.23.5" + "@babel/parser" "^7.24.0" + "@babel/types" "^7.24.0" + "@babel/traverse@^7.20.0", "@babel/traverse@^7.22.10", "@babel/traverse@^7.7.2", "@babel/traverse@^7.7.4": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.22.10.tgz#20252acb240e746d27c2e82b4484f199cf8141aa" @@ -2518,6 +2818,22 @@ debug "^4.1.0" globals "^11.1.0" +"@babel/traverse@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.24.5.tgz#972aa0bc45f16983bf64aa1f877b2dd0eea7e6f8" + integrity sha512-7aaBLeDQ4zYcUFDUD41lJc1fG8+5IU9DaNSJAgal866FGvmD5EbWQgnEC6kO1gGLsX0esNkfnJSndbTXA3r7UA== + dependencies: + "@babel/code-frame" "^7.24.2" + "@babel/generator" "^7.24.5" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.24.5" + "@babel/parser" "^7.24.5" + "@babel/types" "^7.24.5" + debug "^4.3.1" + globals "^11.1.0" + "@babel/types@^7.0.0", "@babel/types@^7.12.6", "@babel/types@^7.20.0", "@babel/types@^7.20.7", "@babel/types@^7.22.10", "@babel/types@^7.22.5", "@babel/types@^7.3.3", "@babel/types@^7.4.4": version "7.22.10" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.22.10.tgz#4a9e76446048f2c66982d1a989dd12b8a2d2dc03" @@ -2527,6 +2843,15 @@ "@babel/helper-validator-identifier" "^7.22.5" to-fast-properties "^2.0.0" +"@babel/types@^7.19.0", "@babel/types@^7.2.0", "@babel/types@^7.24.0", "@babel/types@^7.24.5": + version "7.24.5" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.5.tgz#7661930afc638a5383eb0c4aee59b74f38db84d7" + integrity sha512-6mQNsaLeXTw0nxYUYu+NSa4Hx4BlF1x1x8/PMFbiR+GBSr+2DkECc69b8hgy2frEodNcvPffeH8YfWd3LI6jhQ== + dependencies: + "@babel/helper-string-parser" "^7.24.1" + "@babel/helper-validator-identifier" "^7.24.5" + to-fast-properties "^2.0.0" + "@babel/types@^7.21.2", "@babel/types@^7.22.15", "@babel/types@^7.23.0": version "7.23.0" resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb" @@ -2545,6 +2870,15 @@ "@babel/helper-validator-identifier" "^7.22.20" to-fast-properties "^2.0.0" +"@babel/types@^7.24.6": + version "7.24.6" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.24.6.tgz#ba4e1f59870c10dc2fa95a274ac4feec23b21912" + integrity sha512-WaMsgi6Q8zMgMth93GvWPXkhAIEobfsIkLTacoVZoK1J0CevIPGYY2Vo5YvJGqyHqXM6P4ppOYGsIRU8MM9pFQ== + dependencies: + "@babel/helper-string-parser" "^7.24.6" + "@babel/helper-validator-identifier" "^7.24.6" + to-fast-properties "^2.0.0" + "@bam.tech/react-native-image-resizer@^3.0.4": version "3.0.5" resolved "https://registry.yarnpkg.com/@bam.tech/react-native-image-resizer/-/react-native-image-resizer-3.0.5.tgz#6661ba020de156268f73bdc92fbb93ef86f88a13" @@ -2779,7 +3113,7 @@ "@discord/bottom-sheet@bluesky-social/react-native-bottom-sheet": version "4.6.1" - resolved "https://codeload.github.com/bluesky-social/react-native-bottom-sheet/tar.gz/2b3f77e04a25c454e70d893a2692e8c03aced06b" + resolved "https://codeload.github.com/bluesky-social/react-native-bottom-sheet/tar.gz/28a87d1bb55e10fc355fa1455545a30734995908" dependencies: "@gorhom/portal" "1.0.14" invariant "^2.2.4" @@ -2958,40 +3292,41 @@ mv "~2" safe-json-stringify "~1" -"@expo/cli@0.17.10": - version "0.17.10" - resolved "https://registry.yarnpkg.com/@expo/cli/-/cli-0.17.10.tgz#7dd5e2b4a01f5d29698c431729a19878fbd806f5" - integrity sha512-Jw2wY+lsavP9GRqwwLqF/SvB7w2GZ4sWBMcBKTZ8F0lWjwmLGAUt4WYquf20agdmnY/oZUHvWNkrz/t3SflhnA== +"@expo/cli@0.18.13": + version "0.18.13" + resolved "https://registry.yarnpkg.com/@expo/cli/-/cli-0.18.13.tgz#b3a6aa1d4cfa78720ba86f73ded7c2c93f4805a9" + integrity sha512-ZO1fpDK8z6mLeQGuFP6e3cZyCHV55ohZY7/tEyhpft3bwysS680eyFg5SFe+tWNFesnziFrbtI8JaUyhyjqovA== dependencies: "@babel/runtime" "^7.20.0" "@expo/code-signing-certificates" "0.0.5" - "@expo/config" "~8.5.0" - "@expo/config-plugins" "~7.9.0" - "@expo/devcert" "^1.0.0" - "@expo/env" "~0.2.2" - "@expo/image-utils" "^0.4.0" - "@expo/json-file" "^8.2.37" - "@expo/metro-config" "~0.17.0" + "@expo/config" "~9.0.0" + "@expo/config-plugins" "~8.0.0" + "@expo/devcert" "^1.1.2" + "@expo/env" "~0.3.0" + "@expo/image-utils" "^0.5.0" + "@expo/json-file" "^8.3.0" + "@expo/metro-config" "~0.18.0" "@expo/osascript" "^2.0.31" - "@expo/package-manager" "^1.1.1" + "@expo/package-manager" "^1.5.0" "@expo/plist" "^0.1.0" - "@expo/prebuild-config" "6.8.1" + "@expo/prebuild-config" "7.0.4" "@expo/rudder-sdk-node" "1.1.1" - "@expo/spawn-async" "1.5.0" + "@expo/spawn-async" "^1.7.2" "@expo/xcpretty" "^4.3.0" - "@react-native/dev-middleware" "^0.73.6" + "@react-native/dev-middleware" "~0.74.75" "@urql/core" "2.3.6" "@urql/exchange-retry" "0.3.0" accepts "^1.3.8" arg "5.0.2" better-opn "~3.0.2" bplist-parser "^0.3.1" - cacache "^15.3.0" + cacache "^18.0.2" chalk "^4.0.0" ci-info "^3.3.0" connect "^3.7.0" debug "^4.3.4" env-editor "^0.4.1" + fast-glob "^3.3.2" find-yarn-workspace-root "~2.0.0" form-data "^3.0.1" freeport-async "2.0.0" @@ -3009,7 +3344,6 @@ lodash.debounce "^4.0.8" md5hex "^1.0.0" minimatch "^3.0.4" - minipass "3.3.6" node-fetch "^2.6.7" node-forge "^1.3.1" npm-package-arg "^7.0.0" @@ -3025,7 +3359,7 @@ resolve "^1.22.2" resolve-from "^5.0.0" resolve.exports "^2.0.2" - semver "^7.5.3" + semver "^7.6.0" send "^0.18.0" slugify "^1.3.4" source-map-support "~0.5.21" @@ -3070,24 +3404,22 @@ xcode "^3.0.1" xml2js "0.6.0" -"@expo/config-plugins@7.9.1", "@expo/config-plugins@~7.9.0": - version "7.9.1" - resolved "https://registry.yarnpkg.com/@expo/config-plugins/-/config-plugins-7.9.1.tgz#fe4f7e4f9d4e87f2dcf2344ffdc59eb466dd5d2e" - integrity sha512-ICt6Jed1J0tPYMQrJ8K5Qusgih2I6pZ2PU4VSvxsN3T4n97L13XpYV1vyq1Uc/HMl3UhOwldipmgpEbCfeDqsQ== +"@expo/config-plugins@8.0.4", "@expo/config-plugins@~8.0.0", "@expo/config-plugins@~8.0.0-beta.0": + version "8.0.4" + resolved "https://registry.yarnpkg.com/@expo/config-plugins/-/config-plugins-8.0.4.tgz#1e781cd971fab27409ed2f8d621db6d29cce3036" + integrity sha512-Hi+xuyNWE2LT4LVbGttHJgl9brnsdWAhEB42gWKb5+8ae86Nr/KwUBQJsJppirBYTeLjj5ZlY0glYnAkDa2jqw== dependencies: - "@expo/config-types" "^50.0.0-alpha.1" - "@expo/fingerprint" "^0.6.0" + "@expo/config-types" "^51.0.0-unreleased" "@expo/json-file" "~8.3.0" "@expo/plist" "^0.1.0" "@expo/sdk-runtime-versions" "^1.0.0" - "@react-native/normalize-color" "^2.0.0" chalk "^4.1.2" debug "^4.3.1" find-up "~5.0.0" getenv "^1.0.0" glob "7.1.6" resolve-from "^5.0.0" - semver "^7.5.3" + semver "^7.5.4" slash "^3.0.0" slugify "^1.6.6" xcode "^3.0.1" @@ -3119,25 +3451,30 @@ resolved "https://registry.yarnpkg.com/@expo/config-types/-/config-types-47.0.0.tgz#99eeabe0bba7a776e0f252b78beb0c574692c38d" integrity sha512-r0pWfuhkv7KIcXMUiNACJmJKKwlTBGMw9VZHNdppS8/0Nve8HZMTkNRFQzTHW1uH3pBj8jEXpyw/2vSWDHex9g== -"@expo/config-types@^50.0.0", "@expo/config-types@^50.0.0-alpha.1": +"@expo/config-types@^50.0.0-alpha.1": version "50.0.0" resolved "https://registry.yarnpkg.com/@expo/config-types/-/config-types-50.0.0.tgz#b534d3ec997ec60f8af24f6ad56244c8afc71a0b" integrity sha512-0kkhIwXRT6EdFDwn+zTg9R2MZIAEYGn1MVkyRohAd+C9cXOb5RA8WLQi7vuxKF9m1SMtNAUrf0pO+ENK0+/KSw== -"@expo/config@8.5.6": - version "8.5.6" - resolved "https://registry.yarnpkg.com/@expo/config/-/config-8.5.6.tgz#e37ba437a1718ed4629e1dd130a7aace25312b89" - integrity sha512-wF5awSg6MNn1cb1lIgjnhOn5ov2TEUTnkAVCsOl0QqDwcP+YIerteSFwjn9V52UZvg58L+LKxpCuGbw5IHavbg== +"@expo/config-types@^51.0.0-unreleased": + version "51.0.0" + resolved "https://registry.yarnpkg.com/@expo/config-types/-/config-types-51.0.0.tgz#f5df238cd1237d7e4d9cc8217cdef3383c2a00cf" + integrity sha512-acn03/u8mQvBhdTQtA7CNhevMltUhbSrpI01FYBJwpVntufkU++ncQujWKlgY/OwIajcfygk1AY4xcNZ5ImkRA== + +"@expo/config@9.0.2", "@expo/config@~9.0.0": + version "9.0.2" + resolved "https://registry.yarnpkg.com/@expo/config/-/config-9.0.2.tgz#112b93436dbca8aa3da73a46329e5b58fdd435d2" + integrity sha512-BKQ4/qBf3OLT8hHp5kjObk2vxwoRQ1yYQBbG/OM9Jdz32yYtrU8opTbKRAxfZEWH5i3ZHdLrPdC1rO0I6WxtTw== dependencies: "@babel/code-frame" "~7.10.4" - "@expo/config-plugins" "~7.9.0" - "@expo/config-types" "^50.0.0" - "@expo/json-file" "^8.2.37" + "@expo/config-plugins" "~8.0.0" + "@expo/config-types" "^51.0.0-unreleased" + "@expo/json-file" "^8.3.0" getenv "^1.0.0" glob "7.1.6" require-from-string "^2.0.2" resolve-from "^5.0.0" - semver "7.5.3" + semver "^7.6.0" slugify "^1.3.4" sucrase "3.34.0" @@ -3175,10 +3512,27 @@ slugify "^1.3.4" sucrase "^3.20.0" -"@expo/devcert@^1.0.0": - version "1.1.0" - resolved "https://registry.yarnpkg.com/@expo/devcert/-/devcert-1.1.0.tgz#d148eb9180db6753c438192e73a123fb13b662ac" - integrity sha512-ghUVhNJQOCTdQckSGTHctNp/0jzvVoMMkVh+6SHn+TZj8sU15U/npXIDt8NtQp0HedlPaCgkVdMu8Sacne0aEA== +"@expo/config@~9.0.0-beta.0": + version "9.0.1" + resolved "https://registry.yarnpkg.com/@expo/config/-/config-9.0.1.tgz#e7b79de5af29d5ab2a98a62c3cda31f03bd75827" + integrity sha512-0tjaXBstTbXmD4z+UMFBkh2SZFwilizSQhW6DlaTMnPG5ezuw93zSFEWAuEC3YzkpVtNQTmYzxAYjxwh6seOGg== + dependencies: + "@babel/code-frame" "~7.10.4" + "@expo/config-plugins" "~8.0.0-beta.0" + "@expo/config-types" "^51.0.0-unreleased" + "@expo/json-file" "^8.3.0" + getenv "^1.0.0" + glob "7.1.6" + require-from-string "^2.0.2" + resolve-from "^5.0.0" + semver "^7.6.0" + slugify "^1.3.4" + sucrase "3.34.0" + +"@expo/devcert@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@expo/devcert/-/devcert-1.1.2.tgz#a4923b8ea5b34fde31d6e006a40d0f594096a0ed" + integrity sha512-FyWghLu7rUaZEZSTLt/XNRukm0c9GFfwP0iFaswoDWpV6alvVg+zRAfCLdIVQEz1SVcQ3zo1hMZFDrnKGvkCuQ== dependencies: application-config-path "^0.1.0" command-exists "^1.2.4" @@ -3186,7 +3540,7 @@ eol "^0.9.1" get-port "^3.2.0" glob "^7.1.2" - lodash "^4.17.4" + lodash "^4.17.21" mkdirp "^0.5.1" password-prompt "^1.0.4" rimraf "^2.6.2" @@ -3194,26 +3548,15 @@ tmp "^0.0.33" tslib "^2.4.0" -"@expo/env@~0.2.0": - version "0.2.0" - resolved "https://registry.yarnpkg.com/@expo/env/-/env-0.2.0.tgz#59964a52b92e0582cc8dd0e87bcd8967d019c809" - integrity sha512-NgcU8oxWCL0xEoOmFc6bHmKq0/sYma7AUARgas8X9wbXz4tfH9SmKrRntDdez33Yw2tarBsQ14MjZD2iJLj7xA== +"@expo/env@~0.3.0": + version "0.3.0" + resolved "https://registry.yarnpkg.com/@expo/env/-/env-0.3.0.tgz#a66064e5656e0e48197525f47f3398034fdf579e" + integrity sha512-OtB9XVHWaXidLbHvrVDeeXa09yvTl3+IQN884sO6PhIi2/StXfgSH/9zC7IvzrDB8kW3EBJ1PPLuCUJ2hxAT7Q== dependencies: chalk "^4.0.0" debug "^4.3.4" - dotenv "~16.0.3" - dotenv-expand "~10.0.0" - getenv "^1.0.0" - -"@expo/env@~0.2.2": - version "0.2.2" - resolved "https://registry.yarnpkg.com/@expo/env/-/env-0.2.2.tgz#49f589f32e9bae279a6509d7a02218c0f4e32a60" - integrity sha512-m9nGuaSpzdvMzevQ1H60FWgf4PG5s4J0dfKUzdAGnDu7sMUerY/yUeDaA4+OBo3vBwGVQ+UHcQS9vPSMBNaPcg== - dependencies: - chalk "^4.0.0" - debug "^4.3.4" - dotenv "~16.0.3" - dotenv-expand "~10.0.0" + dotenv "~16.4.5" + dotenv-expand "~11.0.6" getenv "^1.0.0" "@expo/fingerprint@^0.6.0": @@ -3229,6 +3572,20 @@ p-limit "^3.1.0" resolve-from "^5.0.0" +"@expo/fingerprint@^0.8.0": + version "0.8.0" + resolved "https://registry.yarnpkg.com/@expo/fingerprint/-/fingerprint-0.8.0.tgz#631a64c5db23e121228546502ae6a0eeab19aaf7" + integrity sha512-LBNweJnpG16p7SbvFGINF5Q44bDErIcm1li9SuvYQgrrSey3ErIPmZsiMsNBxlvVie6eTp4wmFO6IFmeaqEhbg== + dependencies: + "@expo/spawn-async" "^1.7.2" + chalk "^4.1.2" + debug "^4.3.4" + find-up "^5.0.0" + minimatch "^3.0.4" + p-limit "^3.1.0" + resolve-from "^5.0.0" + semver "^7.6.0" + "@expo/html-elements@^0.4.2": version "0.4.3" resolved "https://registry.yarnpkg.com/@expo/html-elements/-/html-elements-0.4.3.tgz#32b4ca05dd13582164ed1be34ae87e22adfd1d5b" @@ -3268,6 +3625,22 @@ semver "7.3.2" tempy "0.3.0" +"@expo/image-utils@^0.5.0": + version "0.5.1" + resolved "https://registry.yarnpkg.com/@expo/image-utils/-/image-utils-0.5.1.tgz#06fade141facebcd8431355923d30f3839309942" + integrity sha512-U/GsFfFox88lXULmFJ9Shfl2aQGcwoKPF7fawSCLixIKtMCpsI+1r0h+5i0nQnmt9tHuzXZDL8+Dg1z6OhkI9A== + dependencies: + "@expo/spawn-async" "^1.7.2" + chalk "^4.0.0" + fs-extra "9.0.0" + getenv "^1.0.0" + jimp-compact "0.16.1" + node-fetch "^2.6.0" + parse-png "^2.1.0" + resolve-from "^5.0.0" + semver "^7.6.0" + tempy "0.3.0" + "@expo/json-file@8.2.36": version "8.2.36" resolved "https://registry.yarnpkg.com/@expo/json-file/-/json-file-8.2.36.tgz#62a505cb7f30a34d097386476794680a3f7385ff" @@ -3286,6 +3659,15 @@ json5 "^2.2.2" write-file-atomic "^2.3.0" +"@expo/json-file@^8.3.0": + version "8.3.3" + resolved "https://registry.yarnpkg.com/@expo/json-file/-/json-file-8.3.3.tgz#7926e3592f76030ce63d6b1308ac8f5d4d9341f4" + integrity sha512-eZ5dld9AD0PrVRiIWpRkm5aIoWBw3kAyd8VkuWEy92sEthBKDDDHAnK2a0dw0Eil6j7rK7lS/Qaq/Zzngv2h5A== + dependencies: + "@babel/code-frame" "~7.10.4" + json5 "^2.2.2" + write-file-atomic "^2.3.0" + "@expo/json-file@~8.3.0": version "8.3.0" resolved "https://registry.yarnpkg.com/@expo/json-file/-/json-file-8.3.0.tgz#fc84af77b532a4e9bfb5beafd0e3b7f692b6bd7e" @@ -3295,20 +3677,19 @@ json5 "^2.2.2" write-file-atomic "^2.3.0" -"@expo/metro-config@0.17.7": - version "0.17.7" - resolved "https://registry.yarnpkg.com/@expo/metro-config/-/metro-config-0.17.7.tgz#c877a9558f3b97447cc9cf382971403834d84b46" - integrity sha512-3vAdinAjMeRwdhGWWLX6PziZdAPvnyJ6KVYqnJErHHqH0cA6dgAENT3Vq6PEM1H2HgczKr2d5yG9AMgwy848ow== +"@expo/metro-config@0.18.4": + version "0.18.4" + resolved "https://registry.yarnpkg.com/@expo/metro-config/-/metro-config-0.18.4.tgz#bc298e21637a3007f3c31c238525d3bef17e823b" + integrity sha512-vh9WDf/SzE+NYCn6gqbzLKiXtENFlFZdAqyj9nI38RvQ4jw6TJIQ8+ExcdLDT3MOG36Ytg44XX9Zb3OWF6LVxw== dependencies: "@babel/core" "^7.20.0" "@babel/generator" "^7.20.5" "@babel/parser" "^7.20.0" "@babel/types" "^7.20.0" - "@expo/config" "~8.5.0" - "@expo/env" "~0.2.2" + "@expo/config" "~9.0.0" + "@expo/env" "~0.3.0" "@expo/json-file" "~8.3.0" "@expo/spawn-async" "^1.7.2" - babel-preset-fbjs "^3.4.0" chalk "^4.1.0" debug "^4.3.2" find-yarn-workspace-root "~2.0.0" @@ -3319,22 +3700,20 @@ lightningcss "~1.19.0" postcss "~8.4.32" resolve-from "^5.0.0" - sucrase "3.34.0" -"@expo/metro-config@~0.17.0": - version "0.17.1" - resolved "https://registry.yarnpkg.com/@expo/metro-config/-/metro-config-0.17.1.tgz#8e1cd7b9f63ea84cc18696807cf23560d010e5d8" - integrity sha512-ZOE0Jx0YTZyPpsGiiE09orGEFgZ5sMrOOFSgOe8zrns925g/uCuEbowyNq38IfQt//3xSl5mW3z0l4rxgi7hHQ== +"@expo/metro-config@~0.18.0": + version "0.18.3" + resolved "https://registry.yarnpkg.com/@expo/metro-config/-/metro-config-0.18.3.tgz#fa198b9bf806df44fd7684f1df9af2535c107aa8" + integrity sha512-E4iW+VT/xHPPv+t68dViOsW7egtGIr+sRElcym0iGpC4goLz9WBux/xGzWgxvgvvHEWa21uSZQPM0jWla0OZXg== dependencies: "@babel/core" "^7.20.0" "@babel/generator" "^7.20.5" "@babel/parser" "^7.20.0" "@babel/types" "^7.20.0" - "@expo/config" "~8.5.0" - "@expo/env" "~0.2.0" + "@expo/config" "~9.0.0-beta.0" + "@expo/env" "~0.3.0" "@expo/json-file" "~8.3.0" "@expo/spawn-async" "^1.7.2" - babel-preset-fbjs "^3.4.0" chalk "^4.1.0" debug "^4.3.2" find-yarn-workspace-root "~2.0.0" @@ -3343,9 +3722,8 @@ glob "^7.2.3" jsc-safe-url "^0.2.4" lightningcss "~1.19.0" - postcss "~8.4.21" + postcss "~8.4.32" resolve-from "^5.0.0" - sucrase "^3.20.0" "@expo/osascript@^2.0.31": version "2.0.33" @@ -3355,13 +3733,13 @@ "@expo/spawn-async" "^1.5.0" exec-async "^2.2.0" -"@expo/package-manager@^1.1.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@expo/package-manager/-/package-manager-1.1.2.tgz#e58c9bed4cbb829ebf2cbb80b8542600a6609bd1" - integrity sha512-JI9XzrxB0QVXysyuJ996FPCJGDCYRkbUvgG4QmMTTMFA1T+mv8YzazC3T9C1pHQUAAveVCre1+Pqv0nZXN24Xg== +"@expo/package-manager@^1.5.0": + version "1.5.2" + resolved "https://registry.yarnpkg.com/@expo/package-manager/-/package-manager-1.5.2.tgz#6015963669977a188bbbac930aa0dc103162ee73" + integrity sha512-IuA9XtGBilce0q8cyxtWINqbzMB1Fia0Yrug/O53HNuRSwQguV/iqjV68bsa4z8mYerePhcFgtvISWLAlNEbUA== dependencies: - "@expo/json-file" "^8.2.37" - "@expo/spawn-async" "^1.5.0" + "@expo/json-file" "^8.3.0" + "@expo/spawn-async" "^1.7.2" ansi-regex "^5.0.0" chalk "^4.0.0" find-up "^5.0.0" @@ -3369,6 +3747,7 @@ js-yaml "^3.13.1" micromatch "^4.0.2" npm-package-arg "^7.0.0" + ora "^3.4.0" split "^1.0.1" sudo-prompt "9.1.1" @@ -3406,36 +3785,38 @@ semver "7.5.3" xml2js "0.6.0" -"@expo/prebuild-config@6.7.4": - version "6.7.4" - resolved "https://registry.yarnpkg.com/@expo/prebuild-config/-/prebuild-config-6.7.4.tgz#b3e4c8545d7a101bf1fc263c5b7290abc4635e69" - integrity sha512-x8EUdCa8DTMZ/dtEXjHAdlP+ljf6oSeSKNzhycXiHhpMSMG9jEhV28ocCwc6cKsjK5GziweEiHwvrj6+vsBlhA== +"@expo/prebuild-config@7.0.3": + version "7.0.3" + resolved "https://registry.yarnpkg.com/@expo/prebuild-config/-/prebuild-config-7.0.3.tgz#d7f66745de6f0b17b15ed2f1417f91c6ba0b591b" + integrity sha512-Kvxy/oQzkxwXLvAmwb+ygxuRn4xUUN2+mVJj3KDe4bRVCNyDPs7wlgdokF3twnWjzRZssUzseMkhp+yHPjAEhA== dependencies: - "@expo/config" "~8.5.0" - "@expo/config-plugins" "~7.8.0" - "@expo/config-types" "^50.0.0-alpha.1" - "@expo/image-utils" "^0.4.0" - "@expo/json-file" "^8.2.37" + "@expo/config" "~9.0.0-beta.0" + "@expo/config-plugins" "~8.0.0-beta.0" + "@expo/config-types" "^51.0.0-unreleased" + "@expo/image-utils" "^0.5.0" + "@expo/json-file" "^8.3.0" + "@react-native/normalize-colors" "~0.74.83" debug "^4.3.1" fs-extra "^9.0.0" resolve-from "^5.0.0" - semver "7.5.3" + semver "^7.6.0" xml2js "0.6.0" -"@expo/prebuild-config@6.8.1": - version "6.8.1" - resolved "https://registry.yarnpkg.com/@expo/prebuild-config/-/prebuild-config-6.8.1.tgz#5d562b1d6b2e5e4727a3c61acf1a4ed6117b94d8" - integrity sha512-ptK9e0dcj1eYlAWV+fG+QkuAWcLAT1AmtEbj++tn7ZjEj8+LkXRM73LCOEGaF0Er8i8ZWNnaVsgGW4vjgP5ZsA== +"@expo/prebuild-config@7.0.4": + version "7.0.4" + resolved "https://registry.yarnpkg.com/@expo/prebuild-config/-/prebuild-config-7.0.4.tgz#cf2d001792d69e652ad4cec9830c8bd4905f0e7a" + integrity sha512-E2n3QbwgV8Qa0CBw7BHrWBDWD7l8yw+N/yjvXpSPFFtoZLMSKyegdkJFACh2u+UIRKUSZm8zQwHeZR0rqAxV9g== dependencies: - "@expo/config" "~8.5.0" - "@expo/config-plugins" "~7.9.0" - "@expo/config-types" "^50.0.0-alpha.1" - "@expo/image-utils" "^0.4.0" - "@expo/json-file" "^8.2.37" + "@expo/config" "~9.0.0" + "@expo/config-plugins" "~8.0.0" + "@expo/config-types" "^51.0.0-unreleased" + "@expo/image-utils" "^0.5.0" + "@expo/json-file" "^8.3.0" + "@react-native/normalize-colors" "~0.74.83" debug "^4.3.1" fs-extra "^9.0.0" resolve-from "^5.0.0" - semver "7.5.3" + semver "^7.6.0" xml2js "0.6.0" "@expo/rudder-sdk-node@1.1.1": @@ -3523,11 +3904,6 @@ resolved "https://registry.yarnpkg.com/@fastify/deepmerge/-/deepmerge-1.3.0.tgz#8116858108f0c7d9fd460d05a7d637a13fe3239a" integrity sha512-J8TOSBq3SoZbDhM9+R/u77hP93gz/rajSA+K2kGyijPpORPWUXHUpTaleoj+92As0S9uPRP7Oi8IqMf0u+ro6A== -"@flatten-js/interval-tree@^1.1.2": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@flatten-js/interval-tree/-/interval-tree-1.1.2.tgz#fcc891da48bc230392884be01c26fe8c625702e8" - integrity sha512-OwLoV9E/XM6b7bes2rSFnGNjyRy7vcoIHFTnmBR2WAaZTf0Fe4EX4GdA65vU1KgFAasti7iRSg2dZfYd1Zt00Q== - "@floating-ui/core@^1.0.0": version "1.6.0" resolved "https://registry.yarnpkg.com/@floating-ui/core/-/core-1.6.0.tgz#fa41b87812a16bf123122bf945946bae3fdf7fc1" @@ -3656,19 +4032,14 @@ dependencies: "@fortawesome/fontawesome-common-types" "6.4.2" -"@fortawesome/react-native-fontawesome@^0.3.0": - version "0.3.0" - resolved "https://registry.yarnpkg.com/@fortawesome/react-native-fontawesome/-/react-native-fontawesome-0.3.0.tgz#b59c45cdae2451d15f826f937d6e1a6e9dca0c74" - integrity sha512-wSfetdK4+b/pvPbM2v+bZ5hfNlwtk9l3QuJo59sbMrxJalfX7BuF2WsSIWMSxfWwSsbOtY4+TUs6uw/rE59NJA== +"@fortawesome/react-native-fontawesome@^0.3.2": + version "0.3.2" + resolved "https://registry.yarnpkg.com/@fortawesome/react-native-fontawesome/-/react-native-fontawesome-0.3.2.tgz#cb822733a334b35f44a2650532b6cb50772d904e" + integrity sha512-CiWfJWSZHRg12VXlaeFnaa5yJVPOrjsSFEvF6ntz3cnjg4oN3cvauL+JATacMCl0v9xzib32qC1WZAvvGkfB4w== dependencies: humps "^2.0.1" prop-types "^15.7.2" -"@gar/promisify@^1.0.1": - version "1.1.3" - resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" - integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== - "@gorhom/portal@1.0.14": version "1.0.14" resolved "https://registry.yarnpkg.com/@gorhom/portal/-/portal-1.0.14.tgz#1953edb76aaba80fb24021dc774550194a18e111" @@ -4225,6 +4596,15 @@ slash "^3.0.0" write-file-atomic "^4.0.2" +"@jest/types@^24.9.0": + version "24.9.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" + integrity sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^1.1.1" + "@types/yargs" "^13.0.0" + "@jest/types@^26.6.2": version "26.6.2" resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" @@ -4280,6 +4660,15 @@ "@jridgewell/sourcemap-codec" "^1.4.10" "@jridgewell/trace-mapping" "^0.3.9" +"@jridgewell/gen-mapping@^0.3.5": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz#dcce6aff74bdf6dad1a95802b69b04a2fcb1fb36" + integrity sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg== + dependencies: + "@jridgewell/set-array" "^1.2.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.24" + "@jridgewell/resolve-uri@^3.0.3", "@jridgewell/resolve-uri@^3.1.0": version "3.1.1" resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" @@ -4290,6 +4679,11 @@ resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== +"@jridgewell/set-array@^1.2.1": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.2.1.tgz#558fb6472ed16a4c850b889530e6b36438c49280" + integrity sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A== + "@jridgewell/source-map@^0.3.3": version "0.3.5" resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.5.tgz#a3bb4d5c6825aab0d281268f47f6ad5853431e91" @@ -4319,6 +4713,14 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" +"@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.25": + version "0.3.25" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz#15f190e98895f3fc23276ee14bc76b675c2e50f0" + integrity sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + "@leichtgewicht/ip-codec@^2.0.1": version "2.0.4" resolved "https://registry.yarnpkg.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz#b2ac626d6cb9c8718ab459166d4bb405b8ffa78b" @@ -4433,12 +4835,12 @@ dependencies: "@lukeed/csprng" "^1.1.0" -"@mattermost/react-native-paste-input@^0.6.4": - version "0.6.4" - resolved "https://registry.yarnpkg.com/@mattermost/react-native-paste-input/-/react-native-paste-input-0.6.4.tgz#0b51dacc525849c3f8350d43bf7057d17724b9b5" - integrity sha512-EJ/CTm97pe7u1GnrUFaVaP5j6i57GHPFpnUDdc+r7tLYa2T4LN0oR09KYbr1INcTMz//MqVMz4GYUVFMMN0Xmw== +"@mattermost/react-native-paste-input@^0.7.1": + version "0.7.1" + resolved "https://registry.yarnpkg.com/@mattermost/react-native-paste-input/-/react-native-paste-input-0.7.1.tgz#f14585030b992cf7c9bbd0921225eefa501756ba" + integrity sha512-kY8LKtqRX2T/rtn/HNrzTitijuATvyzd6yl5WNWOsszmyzNcssKStjjCTBup04CyMxfwutUU1CWrYUb3hQO7oA== dependencies: - semver "7.5.4" + semver "7.6.0" "@messageformat/parser@^5.0.0": version "5.1.0" @@ -4497,22 +4899,13 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@npmcli/fs@^1.0.0": - version "1.1.1" - resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" - integrity sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ== +"@npmcli/fs@^3.1.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-3.1.1.tgz#59cdaa5adca95d135fc00f2bb53f5771575ce726" + integrity sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg== dependencies: - "@gar/promisify" "^1.0.1" semver "^7.3.5" -"@npmcli/move-file@^1.0.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" - integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== - dependencies: - mkdirp "^1.0.4" - rimraf "^3.0.2" - "@pkgjs/parseargs@^0.11.0": version "0.11.0" resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" @@ -4905,50 +5298,51 @@ dependencies: merge-options "^3.0.4" -"@react-native-community/cli-clean@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-12.3.0.tgz#667b32daa58b4d11d5b5ab9eb0a2e216d500c90b" - integrity sha512-iAgLCOWYRGh9ukr+eVQnhkV/OqN3V2EGd/in33Ggn/Mj4uO6+oUncXFwB+yjlyaUNz6FfjudhIz09yYGSF+9sg== +"@react-native-community/cli-clean@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-13.6.6.tgz#87c7ad8746c38dab0fe7b3c6ff89d44351d5d943" + integrity sha512-cBwJTwl0NyeA4nyMxbhkWZhxtILYkbU3TW3k8AXLg+iGphe0zikYMGB3T+haTvTc6alTyEFwPbimk9bGIqkjAQ== dependencies: - "@react-native-community/cli-tools" "12.3.0" + "@react-native-community/cli-tools" "13.6.6" chalk "^4.1.2" execa "^5.0.0" + fast-glob "^3.3.2" -"@react-native-community/cli-config@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-config/-/cli-config-12.3.0.tgz#255b4e5391878937a25888f452f50a968d053e3e" - integrity sha512-BrTn5ndFD9uOxO8kxBQ32EpbtOvAsQExGPI7SokdI4Zlve70FziLtTq91LTlTUgMq1InVZn/jJb3VIDk6BTInQ== +"@react-native-community/cli-config@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-config/-/cli-config-13.6.6.tgz#69f590694b3a079c74f781baab3b762db74f5dbd" + integrity sha512-mbG425zCKr8JZhv/j11382arezwS/70juWMsn8j2lmrGTrP1cUdW0MF15CCIFtJsqyK3Qs+FTmqttRpq81QfSg== dependencies: - "@react-native-community/cli-tools" "12.3.0" + "@react-native-community/cli-tools" "13.6.6" chalk "^4.1.2" cosmiconfig "^5.1.0" deepmerge "^4.3.0" - glob "^7.1.3" + fast-glob "^3.3.2" joi "^17.2.1" -"@react-native-community/cli-debugger-ui@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-12.3.0.tgz#75bbb2082a369b3559e0dffa8bfeebf2a9107e3e" - integrity sha512-w3b0iwjQlk47GhZWHaeTG8kKH09NCMUJO729xSdMBXE8rlbm4kHpKbxQY9qKb6NlfWSJN4noGY+FkNZS2rRwnQ== +"@react-native-community/cli-debugger-ui@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-debugger-ui/-/cli-debugger-ui-13.6.6.tgz#ac021ebd795b0fd66fb52a8987d1d41c5a4b8cb3" + integrity sha512-Vv9u6eS4vKSDAvdhA0OiQHoA7y39fiPIgJ6biT32tN4avHDtxlc6TWZGiqv7g98SBvDWvoVAmdPLcRf3kU+c8g== dependencies: serve-static "^1.13.1" -"@react-native-community/cli-doctor@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-12.3.0.tgz#420eb4e80d482f16d431c4df33fbc203862508af" - integrity sha512-BPCwNNesoQMkKsxB08Ayy6URgGQ8Kndv6mMhIvJSNdST3J1+x3ehBHXzG9B9Vfi+DrTKRb8lmEl/b/7VkDlPkA== +"@react-native-community/cli-doctor@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-doctor/-/cli-doctor-13.6.6.tgz#ac0febff05601d9b86af3e03460e1a6b0a1d33a5" + integrity sha512-TWZb5g6EmQe2Ua2TEWNmyaEayvlWH4GmdD9ZC+p8EpKFpB1NpDGMK6sXbpb42TDvwZg5s4TDRplK0PBEA/SVDg== dependencies: - "@react-native-community/cli-config" "12.3.0" - "@react-native-community/cli-platform-android" "12.3.0" - "@react-native-community/cli-platform-ios" "12.3.0" - "@react-native-community/cli-tools" "12.3.0" + "@react-native-community/cli-config" "13.6.6" + "@react-native-community/cli-platform-android" "13.6.6" + "@react-native-community/cli-platform-apple" "13.6.6" + "@react-native-community/cli-platform-ios" "13.6.6" + "@react-native-community/cli-tools" "13.6.6" chalk "^4.1.2" command-exists "^1.2.8" deepmerge "^4.3.0" envinfo "^7.10.0" execa "^5.0.0" hermes-profile-transformer "^0.0.6" - ip "^1.1.5" node-stream-zip "^1.9.1" ora "^5.4.1" semver "^7.5.2" @@ -4956,68 +5350,70 @@ wcwidth "^1.0.1" yaml "^2.2.1" -"@react-native-community/cli-hermes@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-12.3.0.tgz#c302acbfb07e1f4e73e76e3150c32f0e4f54e9ed" - integrity sha512-G6FxpeZBO4AimKZwtWR3dpXRqTvsmEqlIkkxgwthdzn3LbVjDVIXKpVYU9PkR5cnT+KuAUxO0WwthrJ6Nmrrlg== +"@react-native-community/cli-hermes@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-hermes/-/cli-hermes-13.6.6.tgz#590f55f151fec23b55498228f92d100a0e71d474" + integrity sha512-La5Ie+NGaRl3klei6WxKoOxmCUSGGxpOk6vU5pEGf0/O7ky+Ay0io+zXYUZqlNMi/cGpO7ZUijakBYOB/uyuFg== dependencies: - "@react-native-community/cli-platform-android" "12.3.0" - "@react-native-community/cli-tools" "12.3.0" + "@react-native-community/cli-platform-android" "13.6.6" + "@react-native-community/cli-tools" "13.6.6" chalk "^4.1.2" hermes-profile-transformer "^0.0.6" - ip "^1.1.5" -"@react-native-community/cli-platform-android@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-12.3.0.tgz#eafa5fb12ebc25f716aea18cd55039c19fbedca6" - integrity sha512-VU1NZw63+GLU2TnyQ919bEMThpHQ/oMFju9MCfrd3pyPJz4Sn+vc3NfnTDUVA5Z5yfLijFOkHIHr4vo/C9bjnw== +"@react-native-community/cli-platform-android@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-android/-/cli-platform-android-13.6.6.tgz#9e3863cb092709021f11848890bff0fc16fc1609" + integrity sha512-/tMwkBeNxh84syiSwNlYtmUz/Ppc+HfKtdopL/5RB+fd3SV1/5/NPNjMlyLNgFKnpxvKCInQ7dnl6jGHJjeHjg== dependencies: - "@react-native-community/cli-tools" "12.3.0" + "@react-native-community/cli-tools" "13.6.6" chalk "^4.1.2" execa "^5.0.0" + fast-glob "^3.3.2" fast-xml-parser "^4.2.4" - glob "^7.1.3" logkitty "^0.7.1" -"@react-native-community/cli-platform-ios@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-12.3.0.tgz#42a9185bb51f35a7eb9c5818b2f0072846945ef5" - integrity sha512-H95Sgt3wT7L8V75V0syFJDtv4YgqK5zbu69ko4yrXGv8dv2EBi6qZP0VMmkqXDamoPm9/U7tDTdbcf26ctnLfg== +"@react-native-community/cli-platform-apple@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-apple/-/cli-platform-apple-13.6.6.tgz#d445fd6ed02c5ae2f43f9c45501e04fee53a2790" + integrity sha512-bOmSSwoqNNT3AmCRZXEMYKz1Jf1l2F86Nhs7qBcXdY/sGiJ+Flng564LOqvdAlVLTbkgz47KjNKCS2pP4Jg0Mg== dependencies: - "@react-native-community/cli-tools" "12.3.0" + "@react-native-community/cli-tools" "13.6.6" chalk "^4.1.2" execa "^5.0.0" + fast-glob "^3.3.2" fast-xml-parser "^4.0.12" - glob "^7.1.3" ora "^5.4.1" -"@react-native-community/cli-plugin-metro@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-plugin-metro/-/cli-plugin-metro-12.3.0.tgz#b4ea8da691d294aee98ccfcd1162bcd958cae834" - integrity sha512-tYNHIYnNmxrBcsqbE2dAnLMzlKI3Cp1p1xUgTrNaOMsGPDN1epzNfa34n6Nps3iwKElSL7Js91CzYNqgTalucA== - -"@react-native-community/cli-server-api@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-12.3.0.tgz#0460472d44c121d1db8a98ad1df811200c074fb3" - integrity sha512-Rode8NrdyByC+lBKHHn+/W8Zu0c+DajJvLmOWbe2WY/ECvnwcd9MHHbu92hlT2EQaJ9LbLhGrSbQE3cQy9EOCw== +"@react-native-community/cli-platform-ios@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-platform-ios/-/cli-platform-ios-13.6.6.tgz#0cd700f36483ca37dda7ec044377f8a926b1df1f" + integrity sha512-vjDnRwhlSN5ryqKTas6/DPkxuouuyFBAqAROH4FR1cspTbn6v78JTZKDmtQy9JMMo7N5vZj1kASU5vbFep9IOQ== dependencies: - "@react-native-community/cli-debugger-ui" "12.3.0" - "@react-native-community/cli-tools" "12.3.0" + "@react-native-community/cli-platform-apple" "13.6.6" + +"@react-native-community/cli-server-api@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-server-api/-/cli-server-api-13.6.6.tgz#467993006ef82361cdf7a9817999d5a09e85ca6a" + integrity sha512-ZtCXxoFlM7oDv3iZ3wsrT3SamhtUJuIkX2WePLPlN5bcbq7zimbPm2lHyicNJtpcGQ5ymsgpUWPCNZsWQhXBqQ== + dependencies: + "@react-native-community/cli-debugger-ui" "13.6.6" + "@react-native-community/cli-tools" "13.6.6" compression "^1.7.1" connect "^3.6.5" errorhandler "^1.5.1" nocache "^3.0.1" pretty-format "^26.6.2" serve-static "^1.13.1" - ws "^7.5.1" + ws "^6.2.2" -"@react-native-community/cli-tools@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-12.3.0.tgz#d459a116e1a95034d3c9a6385069c9e2049fb2a6" - integrity sha512-2GafnCr8D88VdClwnm9KZfkEb+lzVoFdr/7ybqhdeYM0Vnt/tr2N+fM1EQzwI1DpzXiBzTYemw8GjRq+Utcz2Q== +"@react-native-community/cli-tools@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-tools/-/cli-tools-13.6.6.tgz#55c40cbabafbfc56cfb95a4d5fbf73ef60ec3cbc" + integrity sha512-ptOnn4AJczY5njvbdK91k4hcYazDnGtEPrqIwEI+k/CTBHNdb27Rsm2OZ7ye6f7otLBqF8gj/hK6QzJs8CEMgw== dependencies: appdirsjs "^1.2.4" chalk "^4.1.2" + execa "^5.0.0" find-up "^5.0.0" mime "^2.4.1" node-fetch "^2.6.0" @@ -5027,27 +5423,26 @@ shell-quote "^1.7.3" sudo-prompt "^9.0.0" -"@react-native-community/cli-types@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-12.3.0.tgz#2d21a1f93aefbdb34a04311d68097aef0388704f" - integrity sha512-MgOkmrXH4zsGxhte4YqKL7d+N8ZNEd3w1wo56MZlhu5WabwCJh87wYpU5T8vyfujFLYOFuFK5jjlcbs8F4/WDw== +"@react-native-community/cli-types@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli-types/-/cli-types-13.6.6.tgz#b45af119d61888fea1074a7c32ddb093e3f119a9" + integrity sha512-733iaYzlmvNK7XYbnWlMjdE+2k0hlTBJW071af/xb6Bs+hbJqBP9c03FZuYH2hFFwDDntwj05bkri/P7VgSxug== dependencies: joi "^17.2.1" -"@react-native-community/cli@12.3.0": - version "12.3.0" - resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-12.3.0.tgz#c89aacc3973943bf24002255d7d0859b511d88a1" - integrity sha512-XeQohi2E+S2+MMSz97QcEZ/bWpi8sfKiQg35XuYeJkc32Til2g0b97jRpn0/+fV0BInHoG1CQYWwHA7opMsrHg== +"@react-native-community/cli@13.6.6": + version "13.6.6" + resolved "https://registry.yarnpkg.com/@react-native-community/cli/-/cli-13.6.6.tgz#b929c8668e88344c03a46a3e635cb382dba16773" + integrity sha512-IqclB7VQ84ye8Fcs89HOpOscY4284VZg2pojHNl8H0Lzd4DadXJWQoxC7zWm8v2f8eyeX2kdhxp2ETD5tceIgA== dependencies: - "@react-native-community/cli-clean" "12.3.0" - "@react-native-community/cli-config" "12.3.0" - "@react-native-community/cli-debugger-ui" "12.3.0" - "@react-native-community/cli-doctor" "12.3.0" - "@react-native-community/cli-hermes" "12.3.0" - "@react-native-community/cli-plugin-metro" "12.3.0" - "@react-native-community/cli-server-api" "12.3.0" - "@react-native-community/cli-tools" "12.3.0" - "@react-native-community/cli-types" "12.3.0" + "@react-native-community/cli-clean" "13.6.6" + "@react-native-community/cli-config" "13.6.6" + "@react-native-community/cli-debugger-ui" "13.6.6" + "@react-native-community/cli-doctor" "13.6.6" + "@react-native-community/cli-hermes" "13.6.6" + "@react-native-community/cli-server-api" "13.6.6" + "@react-native-community/cli-tools" "13.6.6" + "@react-native-community/cli-types" "13.6.6" chalk "^4.1.2" commander "^9.4.1" deepmerge "^4.3.0" @@ -5087,49 +5482,38 @@ resolved "https://registry.yarnpkg.com/@react-native-masked-view/masked-view/-/masked-view-0.3.0.tgz#bd29fae18d148a685331910a3c7b766ce87eafcc" integrity sha512-qLyoObcjzrkpNcoJjXquUePXfL1dXjHtuv+yX0zZ0Q4kG5yvVqd620+tSh7WbRoHkjpXhFBfLwvGhcWB2I0Lpw== -"@react-native-menu/menu@^0.8.0": - version "0.8.0" - resolved "https://registry.yarnpkg.com/@react-native-menu/menu/-/menu-0.8.0.tgz#dbf227c2081e5ffd3d2073ee68ecc84cf8639727" - integrity sha512-kxiT6ySZsDbBvNWovrKVAfs4AQvAytKIf0f8KQLkVO6eNYMUmONBQPzi6onTTbVujXtZHambo7qr/PcedaR8Tg== +"@react-native-menu/menu@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@react-native-menu/menu/-/menu-1.1.0.tgz#e89c0850f7e5aa4c671c44a9c10edafadb23c35a" + integrity sha512-vf9zp0M4nbAFnSKz5NJYKUPM5UzXWmLyGcjtuPaKWYxxloz9C0Pp6XdZRJnoOSlfRShE8NksX3bVY8W4wGnlCQ== "@react-native-picker/picker@2.6.1": version "2.6.1" resolved "https://registry.yarnpkg.com/@react-native-picker/picker/-/picker-2.6.1.tgz#3b20ddd1385fab0487db103dc6519570f8892e6d" integrity sha512-oJftvmLOj6Y6/bF4kPcK6L83yNBALGmqNYugf94BzP0FQGpHBwimVN2ygqkQ2Sn2ZU3pGUZMs0jV6+Gku2GyYg== -"@react-native-picker/picker@^1.8.3": - version "1.16.8" - resolved "https://registry.yarnpkg.com/@react-native-picker/picker/-/picker-1.16.8.tgz#2126ca54d4a5a3e9ea5e3f39ad1e6643f8e4b3d4" - integrity sha512-pacdQDX6V6EmjF+HoiIh6u++qx4mTK0WnhgUHRc01B+Qt5eoeUwseBqmqfTSXTx/aHDEd6PiIw7UGvKgFoqgFQ== +"@react-native/assets-registry@0.74.83", "@react-native/assets-registry@~0.74.83": + version "0.74.83" + resolved "https://registry.yarnpkg.com/@react-native/assets-registry/-/assets-registry-0.74.83.tgz#c1815dc10f9e1075e0d03b4c8a9619145969522e" + integrity sha512-2vkLMVnp+YTZYTNSDIBZojSsjz8sl5PscP3j4GcV6idD8V978SZfwFlk8K0ti0BzRs11mzL0Pj17km597S/eTQ== -"@react-native/assets-registry@0.73.1", "@react-native/assets-registry@~0.73.1": - version "0.73.1" - resolved "https://registry.yarnpkg.com/@react-native/assets-registry/-/assets-registry-0.73.1.tgz#e2a6b73b16c183a270f338dc69c36039b3946e85" - integrity sha512-2FgAbU7uKM5SbbW9QptPPZx8N9Ke2L7bsHb+EhAanZjFZunA9PaYtyjUQ1s7HD+zDVqOQIvjkpXSv7Kejd2tqg== - -"@react-native/babel-plugin-codegen@*": - version "0.74.0" - resolved "https://registry.yarnpkg.com/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.74.0.tgz#01ba90840e23c6d1fbf739f75cce1d0f5be97bfa" - integrity sha512-xAM/eVSb5LBkKue3bDZgt76bdsGGzKeF/iEzUNbDTwRQrB3Q5GoceGNM/zVlF+z1xGAkr3jhL+ZyITZGSoIlgw== +"@react-native/babel-plugin-codegen@0.74.1": + version "0.74.1" + resolved "https://registry.yarnpkg.com/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.74.1.tgz#b8dfd2aac48241a2bb1db4a4fb6921eaabb2d2f8" + integrity sha512-v8T79fEn49cuDVCyUNXsgXZ/ydN8s6ydAruasVCh0VyMzaPVJvuOQhaLW6JL+ysDTN/CnjraTv0oqYnaKoZgvQ== dependencies: - "@react-native/codegen" "*" + "@react-native/codegen" "0.74.1" -"@react-native/babel-plugin-codegen@0.73.2": - version "0.73.2" - resolved "https://registry.yarnpkg.com/@react-native/babel-plugin-codegen/-/babel-plugin-codegen-0.73.2.tgz#447656cde437b71dc3ef0af3f8a5b215653d5d07" - integrity sha512-PadyFZWVaWXIBP7Q5dgEL7eAd7tnsgsLjoHJB1hIRZZuVUg1Zqe3nULwC7RFAqOtr5Qx7KXChkFFcKQ3WnZzGw== - dependencies: - "@react-native/codegen" "0.73.2" - -"@react-native/babel-preset@0.73.19": - version "0.73.19" - resolved "https://registry.yarnpkg.com/@react-native/babel-preset/-/babel-preset-0.73.19.tgz#a6c0587651804f8f01d6f3b7729f1d4a2d469691" - integrity sha512-ujon01uMOREZecIltQxPDmJ6xlVqAUFGI/JCSpeVYdxyXBoBH5dBb0ihj7h6LKH1q1jsnO9z4MxfddtypKkIbg== +"@react-native/babel-preset@0.74.1", "@react-native/babel-preset@0.74.83", "@react-native/babel-preset@^0.73.18", "@react-native/babel-preset@~0.74.83": + version "0.74.1" + resolved "https://registry.yarnpkg.com/@react-native/babel-preset/-/babel-preset-0.74.1.tgz#96813549cac768b5ff59c9b74f51acf80909e707" + integrity sha512-c7xbLs0/fjDmORYs86xz3syTFiJhtRb6JzXpGes04ZNdY7NWdz7aqEfeleyBJbmCfDOr16WZJRy4JcPLvNKjZg== dependencies: "@babel/core" "^7.20.0" "@babel/plugin-proposal-async-generator-functions" "^7.0.0" "@babel/plugin-proposal-class-properties" "^7.18.0" "@babel/plugin-proposal-export-default-from" "^7.0.0" + "@babel/plugin-proposal-logical-assignment-operators" "^7.18.0" "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.0" "@babel/plugin-proposal-numeric-separator" "^7.0.0" "@babel/plugin-proposal-object-rest-spread" "^7.20.0" @@ -5165,217 +5549,175 @@ "@babel/plugin-transform-typescript" "^7.5.0" "@babel/plugin-transform-unicode-regex" "^7.0.0" "@babel/template" "^7.0.0" - "@react-native/babel-plugin-codegen" "0.73.2" + "@react-native/babel-plugin-codegen" "0.74.1" babel-plugin-transform-flow-enums "^0.0.2" react-refresh "^0.14.0" -"@react-native/babel-preset@^0.73.18": - version "0.73.18" - resolved "https://registry.yarnpkg.com/@react-native/babel-preset/-/babel-preset-0.73.18.tgz#0ff24ba35102d9ac071de8ab10706ccaee5e3e6f" - integrity sha512-FzPasmazoX9WZnmwotk6SK9ydiExdqS4Xt5VaukPoY9u8u3AUUODzqjTsWSOxjFD9eRF3Knyg5H8JMDe6pj5wQ== - dependencies: - "@babel/core" "^7.20.0" - "@babel/plugin-proposal-async-generator-functions" "^7.0.0" - "@babel/plugin-proposal-class-properties" "^7.18.0" - "@babel/plugin-proposal-export-default-from" "^7.0.0" - "@babel/plugin-proposal-nullish-coalescing-operator" "^7.18.0" - "@babel/plugin-proposal-numeric-separator" "^7.0.0" - "@babel/plugin-proposal-object-rest-spread" "^7.20.0" - "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" - "@babel/plugin-proposal-optional-chaining" "^7.20.0" - "@babel/plugin-syntax-dynamic-import" "^7.8.0" - "@babel/plugin-syntax-export-default-from" "^7.0.0" - "@babel/plugin-syntax-flow" "^7.18.0" - "@babel/plugin-syntax-nullish-coalescing-operator" "^7.0.0" - "@babel/plugin-syntax-optional-chaining" "^7.0.0" - "@babel/plugin-transform-arrow-functions" "^7.0.0" - "@babel/plugin-transform-async-to-generator" "^7.20.0" - "@babel/plugin-transform-block-scoping" "^7.0.0" - "@babel/plugin-transform-classes" "^7.0.0" - "@babel/plugin-transform-computed-properties" "^7.0.0" - "@babel/plugin-transform-destructuring" "^7.20.0" - "@babel/plugin-transform-flow-strip-types" "^7.20.0" - "@babel/plugin-transform-function-name" "^7.0.0" - "@babel/plugin-transform-literals" "^7.0.0" - "@babel/plugin-transform-modules-commonjs" "^7.0.0" - "@babel/plugin-transform-named-capturing-groups-regex" "^7.0.0" - "@babel/plugin-transform-parameters" "^7.0.0" - "@babel/plugin-transform-private-methods" "^7.22.5" - "@babel/plugin-transform-private-property-in-object" "^7.22.11" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-react-jsx-self" "^7.0.0" - "@babel/plugin-transform-react-jsx-source" "^7.0.0" - "@babel/plugin-transform-runtime" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.0.0" - "@babel/plugin-transform-spread" "^7.0.0" - "@babel/plugin-transform-sticky-regex" "^7.0.0" - "@babel/plugin-transform-typescript" "^7.5.0" - "@babel/plugin-transform-unicode-regex" "^7.0.0" - "@babel/template" "^7.0.0" - "@react-native/babel-plugin-codegen" "*" - babel-plugin-transform-flow-enums "^0.0.2" - react-refresh "^0.14.0" - -"@react-native/codegen@*", "@react-native/codegen@0.73.2": - version "0.73.2" - resolved "https://registry.yarnpkg.com/@react-native/codegen/-/codegen-0.73.2.tgz#58af4e4c3098f0e6338e88ec64412c014dd51519" - integrity sha512-lfy8S7umhE3QLQG5ViC4wg5N1Z+E6RnaeIw8w1voroQsXXGPB72IBozh8dAHR3+ceTxIU0KX3A8OpJI8e1+HpQ== +"@react-native/codegen@0.74.1": + version "0.74.1" + resolved "https://registry.yarnpkg.com/@react-native/codegen/-/codegen-0.74.1.tgz#d20d0a8cd612fd927604fd1bfc8d18f2a231c270" + integrity sha512-Wup76wd01GnHvnyW8DGTOQDbbw6W4xBkqfzdTyCSue6cGpCasqNQAf4okuDJKwcSbgpVkNcJdbGuGtz4RTA65Q== dependencies: "@babel/parser" "^7.20.0" - flow-parser "^0.206.0" glob "^7.1.1" + hermes-parser "0.19.1" invariant "^2.2.4" jscodeshift "^0.14.0" mkdirp "^0.5.1" nullthrows "^1.1.1" -"@react-native/community-cli-plugin@0.73.12": - version "0.73.12" - resolved "https://registry.yarnpkg.com/@react-native/community-cli-plugin/-/community-cli-plugin-0.73.12.tgz#3a72a8cbae839a0382d1a194a7067d4ffa0da04c" - integrity sha512-xWU06OkC1cX++Duh/cD/Wv+oZ0oSY3yqbtxAqQA2H3Q+MQltNNJM6MqIHt1VOZSabRf/LVlR1JL6U9TXJirkaw== +"@react-native/codegen@0.74.83": + version "0.74.83" + resolved "https://registry.yarnpkg.com/@react-native/codegen/-/codegen-0.74.83.tgz#7c56a82fe7603f0867f0d80ff29db3757b71be55" + integrity sha512-GgvgHS3Aa2J8/mp1uC/zU8HuTh8ZT5jz7a4mVMWPw7+rGyv70Ba8uOVBq6UH2Q08o617IATYc+0HfyzAfm4n0w== dependencies: - "@react-native-community/cli-server-api" "12.3.0" - "@react-native-community/cli-tools" "12.3.0" - "@react-native/dev-middleware" "0.73.7" - "@react-native/metro-babel-transformer" "0.73.13" + "@babel/parser" "^7.20.0" + glob "^7.1.1" + hermes-parser "0.19.1" + invariant "^2.2.4" + jscodeshift "^0.14.0" + mkdirp "^0.5.1" + nullthrows "^1.1.1" + +"@react-native/community-cli-plugin@0.74.83": + version "0.74.83" + resolved "https://registry.yarnpkg.com/@react-native/community-cli-plugin/-/community-cli-plugin-0.74.83.tgz#58808a58a5288895627548338731e72ebb5b507c" + integrity sha512-7GAFjFOg1mFSj8bnFNQS4u8u7+QtrEeflUIDVZGEfBZQ3wMNI5ycBzbBGycsZYiq00Xvoc6eKFC7kvIaqeJpUQ== + dependencies: + "@react-native-community/cli-server-api" "13.6.6" + "@react-native-community/cli-tools" "13.6.6" + "@react-native/dev-middleware" "0.74.83" + "@react-native/metro-babel-transformer" "0.74.83" chalk "^4.0.0" execa "^5.1.1" metro "^0.80.3" metro-config "^0.80.3" metro-core "^0.80.3" node-fetch "^2.2.0" + querystring "^0.2.1" readline "^1.3.0" -"@react-native/debugger-frontend@0.73.3", "@react-native/debugger-frontend@^0.73.3": - version "0.73.3" - resolved "https://registry.yarnpkg.com/@react-native/debugger-frontend/-/debugger-frontend-0.73.3.tgz#033757614d2ada994c68a1deae78c1dd2ad33c2b" - integrity sha512-RgEKnWuoo54dh7gQhV7kvzKhXZEhpF9LlMdZolyhGxHsBqZ2gXdibfDlfcARFFifPIiaZ3lXuOVVa4ei+uPgTw== +"@react-native/debugger-frontend@0.74.83": + version "0.74.83" + resolved "https://registry.yarnpkg.com/@react-native/debugger-frontend/-/debugger-frontend-0.74.83.tgz#48050afa4e086438073b95f041c0cc84fe3f20de" + integrity sha512-RGQlVUegBRxAUF9c1ss1ssaHZh6CO+7awgtI9sDeU0PzDZY/40ImoPD5m0o0SI6nXoVzbPtcMGzU+VO590pRfA== -"@react-native/dev-middleware@0.73.7": - version "0.73.7" - resolved "https://registry.yarnpkg.com/@react-native/dev-middleware/-/dev-middleware-0.73.7.tgz#61d2bf08973d9a537fa3f2a42deeb13530d721ae" - integrity sha512-BZXpn+qKp/dNdr4+TkZxXDttfx8YobDh8MFHsMk9usouLm22pKgFIPkGBV0X8Do4LBkFNPGtrnsKkWk/yuUXKg== +"@react-native/dev-middleware@0.74.83", "@react-native/dev-middleware@~0.74.75": + version "0.74.83" + resolved "https://registry.yarnpkg.com/@react-native/dev-middleware/-/dev-middleware-0.74.83.tgz#9d09cfdb763e8ef81c003b0f99ae4ed1a3539639" + integrity sha512-UH8iriqnf7N4Hpi20D7M2FdvSANwTVStwFCSD7VMU9agJX88Yk0D1T6Meh2RMhUu4kY2bv8sTkNRm7LmxvZqgA== dependencies: "@isaacs/ttlcache" "^1.4.1" - "@react-native/debugger-frontend" "0.73.3" + "@react-native/debugger-frontend" "0.74.83" + "@rnx-kit/chromium-edge-launcher" "^1.0.0" chrome-launcher "^0.15.2" - chromium-edge-launcher "^1.0.0" connect "^3.6.5" debug "^2.2.0" node-fetch "^2.2.0" + nullthrows "^1.1.1" open "^7.0.3" + selfsigned "^2.4.1" serve-static "^1.13.1" temp-dir "^2.0.0" + ws "^6.2.2" -"@react-native/dev-middleware@^0.73.6": - version "0.73.6" - resolved "https://registry.yarnpkg.com/@react-native/dev-middleware/-/dev-middleware-0.73.6.tgz#19ee210fddc3abb8eeb3da5f98711719ad032323" - integrity sha512-9SD7gIso+hO1Jy1Y/Glbd+JWQwyH7Xjnwebtkxdm5TMB51LQPjaGtMcwEigbIZyAtvoaDGmhWmudwbKpDlS+gA== - dependencies: - "@isaacs/ttlcache" "^1.4.1" - "@react-native/debugger-frontend" "^0.73.3" - chrome-launcher "^0.15.2" - chromium-edge-launcher "^1.0.0" - connect "^3.6.5" - debug "^2.2.0" - node-fetch "^2.2.0" - open "^7.0.3" - serve-static "^1.13.1" - temp-dir "^2.0.0" +"@react-native/gradle-plugin@0.74.83": + version "0.74.83" + resolved "https://registry.yarnpkg.com/@react-native/gradle-plugin/-/gradle-plugin-0.74.83.tgz#4ac60a6d6295d5b920173cbf184ee32e53690810" + integrity sha512-Pw2BWVyOHoBuJVKxGVYF6/GSZRf6+v1Ygc+ULGz5t20N8qzRWPa2fRZWqoxsN7TkNLPsECYY8gooOl7okOcPAQ== -"@react-native/gradle-plugin@0.73.4": - version "0.73.4" - resolved "https://registry.yarnpkg.com/@react-native/gradle-plugin/-/gradle-plugin-0.73.4.tgz#aa55784a8c2b471aa89934db38c090d331baf23b" - integrity sha512-PMDnbsZa+tD55Ug+W8CfqXiGoGneSSyrBZCMb5JfiB3AFST3Uj5e6lw8SgI/B6SKZF7lG0BhZ6YHZsRZ5MlXmg== +"@react-native/js-polyfills@0.74.83": + version "0.74.83" + resolved "https://registry.yarnpkg.com/@react-native/js-polyfills/-/js-polyfills-0.74.83.tgz#0e189ce3ab0efecd00223f3bfc53663ce08ba013" + integrity sha512-/t74n8r6wFhw4JEoOj3bN71N1NDLqaawB75uKAsSjeCwIR9AfCxlzZG0etsXtOexkY9KMeZIQ7YwRPqUdNXuqw== -"@react-native/js-polyfills@0.73.1": - version "0.73.1" - resolved "https://registry.yarnpkg.com/@react-native/js-polyfills/-/js-polyfills-0.73.1.tgz#730b0a7aaab947ae6f8e5aa9d995e788977191ed" - integrity sha512-ewMwGcumrilnF87H4jjrnvGZEaPFCAC4ebraEK+CurDDmwST/bIicI4hrOAv+0Z0F7DEK4O4H7r8q9vH7IbN4g== - -"@react-native/metro-babel-transformer@0.73.13": - version "0.73.13" - resolved "https://registry.yarnpkg.com/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.73.13.tgz#81cb6dd8d5140c57f5595183fd6857feb8b7f5d7" - integrity sha512-k9AQifogQfgUXPlqQSoMtX2KUhniw4XvJl+nZ4hphCH7qiMDAwuP8OmkJbz5E/N+Ro9OFuLE7ax4GlwxaTsAWg== +"@react-native/metro-babel-transformer@0.74.83": + version "0.74.83" + resolved "https://registry.yarnpkg.com/@react-native/metro-babel-transformer/-/metro-babel-transformer-0.74.83.tgz#ba87c3cf041f4c0d2b991231af1a6b4a216e9b5d" + integrity sha512-hGdx5N8diu8y+GW/ED39vTZa9Jx1di2ZZ0aapbhH4egN1agIAusj5jXTccfNBwwWF93aJ5oVbRzfteZgjbutKg== dependencies: "@babel/core" "^7.20.0" - "@react-native/babel-preset" "0.73.19" - hermes-parser "0.15.0" + "@react-native/babel-preset" "0.74.83" + hermes-parser "0.19.1" nullthrows "^1.1.1" -"@react-native/normalize-color@^2.0.0", "@react-native/normalize-color@^2.1.0": +"@react-native/normalize-color@^2.0.0": version "2.1.0" resolved "https://registry.yarnpkg.com/@react-native/normalize-color/-/normalize-color-2.1.0.tgz#939b87a9849e81687d3640c5efa2a486ac266f91" integrity sha512-Z1jQI2NpdFJCVgpY+8Dq/Bt3d+YUi1928Q+/CZm/oh66fzM0RUl54vvuXlPJKybH4pdCZey1eDTPaLHkMPNgWA== -"@react-native/normalize-colors@0.73.2", "@react-native/normalize-colors@^0.73.0": +"@react-native/normalize-colors@0.74.83", "@react-native/normalize-colors@^0.74.1", "@react-native/normalize-colors@~0.74.83": + version "0.74.83" + resolved "https://registry.yarnpkg.com/@react-native/normalize-colors/-/normalize-colors-0.74.83.tgz#86ef925bacf219d74df115bcfb615f62d8142e85" + integrity sha512-jhCY95gRDE44qYawWVvhTjTplW1g+JtKTKM3f8xYT1dJtJ8QWv+gqEtKcfmOHfDkSDaMKG0AGBaDTSK8GXLH8Q== + +"@react-native/normalize-colors@^0.73.0": version "0.73.2" resolved "https://registry.yarnpkg.com/@react-native/normalize-colors/-/normalize-colors-0.73.2.tgz#cc8e48fbae2bbfff53e12f209369e8d2e4cf34ec" integrity sha512-bRBcb2T+I88aG74LMVHaKms2p/T8aQd8+BZ7LuuzXlRfog1bMWWn/C5i0HVuvW4RPtXQYgIlGiXVDy9Ir1So/w== -"@react-native/typescript-config@^0.74.0": - version "0.74.0" - resolved "https://registry.yarnpkg.com/@react-native/typescript-config/-/typescript-config-0.74.0.tgz#cb2cb58e4e424593c4ff5859e50d24dd54b14a63" - integrity sha512-Nt7AkbuLXIfoWmUrlTp06UTUj6LrMhwJhf/ReEHVpiaVJRjuqfjmwelvW/6dGSJjPFtYvziC+iaLLeyv2oBV7w== +"@react-native/typescript-config@^0.74.1": + version "0.74.83" + resolved "https://registry.yarnpkg.com/@react-native/typescript-config/-/typescript-config-0.74.83.tgz#7a25567f565cf582419df7d2c038c8d2bd321b33" + integrity sha512-UTcZZYkSD+vv2O67bL/wu0GCGJP3BCbIxXd9ZewNkJmiWl5BbfoNl23+EjmDwM2V66gu24VB/RsSMn0TdmFs8Q== -"@react-native/virtualized-lists@0.73.4": - version "0.73.4" - resolved "https://registry.yarnpkg.com/@react-native/virtualized-lists/-/virtualized-lists-0.73.4.tgz#640e594775806f63685435b5d9c3d05c378ccd8c" - integrity sha512-HpmLg1FrEiDtrtAbXiwCgXFYyloK/dOIPIuWW3fsqukwJEWAiTzm1nXGJ7xPU5XTHiWZ4sKup5Ebaj8z7iyWog== +"@react-native/virtualized-lists@0.74.83": + version "0.74.83" + resolved "https://registry.yarnpkg.com/@react-native/virtualized-lists/-/virtualized-lists-0.74.83.tgz#5595d6aefd9679d1295c56a1d1653b1fb261bd62" + integrity sha512-rmaLeE34rj7py4FxTod7iMTC7BAsm+HrGA8WxYmEJeyTV7WSaxAkosKoYBz8038mOiwnG9VwA/7FrB6bEQvn1A== dependencies: invariant "^2.2.4" nullthrows "^1.1.1" -"@react-navigation/bottom-tabs@^6.5.7": - version "6.5.8" - resolved "https://registry.yarnpkg.com/@react-navigation/bottom-tabs/-/bottom-tabs-6.5.8.tgz#9536c6e45154abc183c363d07c94991e10b14856" - integrity sha512-0aa/jXea+LyBgR5NoRNWGKw0aFhjHwCkusigMRXIrCA4kINauDcAO0w0iFbZeKfaTCVAix5kK5UxDJJ2aJpevg== +"@react-navigation/bottom-tabs@^6.5.20": + version "6.5.20" + resolved "https://registry.yarnpkg.com/@react-navigation/bottom-tabs/-/bottom-tabs-6.5.20.tgz#5335e75b02c527ef0569bd97d4f9185d65616e49" + integrity sha512-ow6Z06iS4VqBO8d7FP+HsGjJLWt2xTWIvuWjpoCvsM/uQXzCRDIjBv9HaKcXbF0yTW7IMir0oDAbU5PFzEDdgA== dependencies: - "@react-navigation/elements" "^1.3.18" + "@react-navigation/elements" "^1.3.30" color "^4.2.3" warn-once "^0.1.0" -"@react-navigation/core@^6.4.9": - version "6.4.9" - resolved "https://registry.yarnpkg.com/@react-navigation/core/-/core-6.4.9.tgz#aa09ce534f5393427cb993cf242abdbd848fb2c7" - integrity sha512-G9GH7bP9x0qqupxZnkSftnkn4JoXancElTvFc8FVGfEvxnxP+gBo3wqcknyBi7M5Vad4qecsYjCOa9wqsftv9g== +"@react-navigation/core@^6.4.16": + version "6.4.16" + resolved "https://registry.yarnpkg.com/@react-navigation/core/-/core-6.4.16.tgz#f9369a134805174536b9aa0f0f483b930511caf9" + integrity sha512-UDTJBsHxnzgFETR3ZxhctP+RWr4SkyeZpbhpkQoIGOuwSCkt1SE0qjU48/u6r6w6XlX8OqVudn1Ab0QFXTHxuQ== dependencies: "@react-navigation/routers" "^6.1.9" escape-string-regexp "^4.0.0" nanoid "^3.1.23" query-string "^7.1.3" react-is "^16.13.0" - use-latest-callback "^0.1.5" + use-latest-callback "^0.1.9" -"@react-navigation/drawer@^6.6.2": - version "6.6.3" - resolved "https://registry.yarnpkg.com/@react-navigation/drawer/-/drawer-6.6.3.tgz#ad48b3e0a2d2771e7fc8bc46a8b269ef2ae11e54" - integrity sha512-oQzHqH6svtSIun6+rikQtku6ye2CyyxT4xf3RQLVsBvK7+g4tDdKKLcjgoJmuT1zBZC3SSu3wNeqp8cg4cr2PQ== +"@react-navigation/drawer@^6.6.15": + version "6.6.15" + resolved "https://registry.yarnpkg.com/@react-navigation/drawer/-/drawer-6.6.15.tgz#fcedba68f735103dbc035911f5959ce926081d62" + integrity sha512-GLkFQNxjtmxB/qXSHmu1DfoB89jCzW64tmX68iPndth+9U+0IP27GcCCaMZxQfwj+nI8Kn2zlTlXAZDIIHE+DQ== dependencies: - "@react-navigation/elements" "^1.3.18" + "@react-navigation/elements" "^1.3.30" color "^4.2.3" warn-once "^0.1.0" -"@react-navigation/elements@^1.3.18": - version "1.3.18" - resolved "https://registry.yarnpkg.com/@react-navigation/elements/-/elements-1.3.18.tgz#d8364b40276f3efb9c229c39da3b8b465f18f0a2" - integrity sha512-/0hwnJkrr415yP0Hf4PjUKgGyfshrvNUKFXN85Mrt1gY49hy9IwxZgrrxlh0THXkPeq8q4VWw44eHDfAcQf20Q== +"@react-navigation/elements@^1.3.30": + version "1.3.30" + resolved "https://registry.yarnpkg.com/@react-navigation/elements/-/elements-1.3.30.tgz#a81371f599af1070b12014f05d6c09b1a611fd9a" + integrity sha512-plhc8UvCZs0UkV+sI+3bisIyn78wz9O/BiWZXpounu72k/R/Sj5PuZYFJ1fi6psvriUveMCGh4LeZckAZu2qiQ== -"@react-navigation/native-stack@^6.9.12": - version "6.9.13" - resolved "https://registry.yarnpkg.com/@react-navigation/native-stack/-/native-stack-6.9.13.tgz#f308c398ee18fcd45de8ec7c04fe0641735feb31" - integrity sha512-ejlepMrvFneewL+XlXHHhn+6y3lwvavM4/R7XwBV0XJxCymujexK+7Vkg7UcvJ1lx4CRhOcyBSNfGmdNIHREyQ== +"@react-navigation/native-stack@^6.9.26": + version "6.9.26" + resolved "https://registry.yarnpkg.com/@react-navigation/native-stack/-/native-stack-6.9.26.tgz#90facf7783c9927f094bc9f01c613af75b6c241e" + integrity sha512-++dueQ+FDj2XkZ902DVrK79ub1vp19nSdAZWxKRgd6+Bc0Niiesua6rMCqymYOVaYh+dagwkA9r00bpt/U5WLw== dependencies: - "@react-navigation/elements" "^1.3.18" + "@react-navigation/elements" "^1.3.30" warn-once "^0.1.0" -"@react-navigation/native@^6.1.6": - version "6.1.7" - resolved "https://registry.yarnpkg.com/@react-navigation/native/-/native-6.1.7.tgz#968ef85b76d35f63111890668836fe2f125bbf90" - integrity sha512-W6E3+AtTombMucCRo6q7vPmluq8hSjS+IxfazJ/SokOe7ChJX7eLvvralIsJkjFj3iWV1KgOSnHxa6hdiFasBw== +"@react-navigation/native@^6.1.17": + version "6.1.17" + resolved "https://registry.yarnpkg.com/@react-navigation/native/-/native-6.1.17.tgz#439f15a99809d26ea4682d2a3766081cf2ca31cf" + integrity sha512-mer3OvfwWOHoUSMJyLa4vnBH3zpFmCwuzrBPlw7feXklurr/ZDiLjLxUScOot6jLRMz/67GyilEYMmP99LL0RQ== dependencies: - "@react-navigation/core" "^6.4.9" + "@react-navigation/core" "^6.4.16" escape-string-regexp "^4.0.0" fast-deep-equal "^3.1.3" nanoid "^3.1.23" @@ -5418,6 +5760,18 @@ dependencies: type-fest "^2.19.0" +"@rnx-kit/chromium-edge-launcher@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@rnx-kit/chromium-edge-launcher/-/chromium-edge-launcher-1.0.0.tgz#c0df8ea00a902c7a417cd9655aab06de398b939c" + integrity sha512-lzD84av1ZQhYUS+jsGqJiCMaJO2dn9u+RTT9n9q6D3SaKVwWqv+7AoRKqBu19bkwyE+iFRl1ymr40QS90jVFYg== + dependencies: + "@types/node" "^18.0.0" + escape-string-regexp "^4.0.0" + is-wsl "^2.2.0" + lighthouse-logger "^1.0.0" + mkdirp "^1.0.4" + rimraf "^3.0.2" + "@rollup/plugin-babel@^5.2.0": version "5.3.1" resolved "https://registry.yarnpkg.com/@rollup/plugin-babel/-/plugin-babel-5.3.1.tgz#04bc0608f4aa4b2e4b1aebf284344d0f68fda283" @@ -7632,6 +7986,14 @@ dependencies: "@types/istanbul-lib-coverage" "*" +"@types/istanbul-reports@^1.1.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz#e875cc689e47bce549ec81f3df5e6f6f11cfaeb2" + integrity sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw== + dependencies: + "@types/istanbul-lib-coverage" "*" + "@types/istanbul-lib-report" "*" + "@types/istanbul-reports@^3.0.0": version "3.0.1" resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" @@ -7756,11 +8118,25 @@ resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-5.1.2.tgz#07508b45797cb81ec3f273011b054cd0755eddca" integrity sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA== +"@types/node-forge@^1.3.0": + version "1.3.11" + resolved "https://registry.yarnpkg.com/@types/node-forge/-/node-forge-1.3.11.tgz#0972ea538ddb0f4d9c2fa0ec5db5724773a604da" + integrity sha512-FQx220y22OKNTqaByeBGqHWYz4cl94tpcxeFdvBo3wjG6XPBuZ0BNgNZRV5J5TFmmcsJ4IzsLkmGRiQbnYsBEQ== + dependencies: + "@types/node" "*" + "@types/node@*": version "20.5.1" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.5.1.tgz#178d58ee7e4834152b0e8b4d30cbfab578b9bb30" integrity sha512-4tT2UrL5LBqDwoed9wZ6N3umC4Yhz3W3FloMmiiG4JwmUJWpie0c7lcnUNd4gtMKuDEO4wRVS8B6Xa0uMRsMKg== +"@types/node@^18.0.0": + version "18.19.33" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.19.33.tgz#98cd286a1b8a5e11aa06623210240bcc28e95c48" + integrity sha512-NR9+KrpSajr2qBVp/Yt5TU/rp+b5Mayi3+OlMlcg2cVCfRmcG5PWZ7S4+MG9PZ5gWBoc9Pd0BKSRViuBCRPu0A== + dependencies: + undici-types "~5.26.4" + "@types/node@^18.16.2": version "18.17.6" resolved "https://registry.yarnpkg.com/@types/node/-/node-18.17.6.tgz#0296e9a30b22d2a8fcaa48d3c45afe51474ca55b" @@ -7933,6 +8309,13 @@ resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.0.tgz#0c60e537fa790f5f9472ed2776c2b71ec117351b" integrity sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA== +"@types/yargs@^13.0.0": + version "13.0.12" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-13.0.12.tgz#d895a88c703b78af0465a9de88aa92c61430b092" + integrity sha512-qCxJE1qgz2y0hA4pIxjBR+PelCH0U5CK1XJXFwCNqfmliatKp47UCXXE9Dyk1OXBDLvsCF57TqQEJaeLfDYEOQ== + dependencies: + "@types/yargs-parser" "*" + "@types/yargs@^15.0.0": version "15.0.15" resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.15.tgz#e609a2b1ef9e05d90489c2f5f45bbfb2be092158" @@ -8378,7 +8761,7 @@ ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.0.0, ajv@^8.10.0, ajv@^8.11.0, ajv@^8.6.0, ajv@^8.6.3, ajv@^8.9.0: +ajv@^8.0.0, ajv@^8.10.0, ajv@^8.11.0, ajv@^8.6.0, ajv@^8.9.0: version "8.12.0" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== @@ -8433,7 +8816,7 @@ ansi-regex@5.0.1, ansi-regex@^5.0.0, ansi-regex@^5.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== -ansi-regex@^4.1.0: +ansi-regex@^4.0.0, ansi-regex@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.1.tgz#164daac87ab2d6f6db3a29875e2d1766582dabed" integrity sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g== @@ -8953,15 +9336,28 @@ babel-plugin-polyfill-regenerator@^0.5.2: dependencies: "@babel/helper-define-polyfill-provider" "^0.4.2" +babel-plugin-react-compiler@^0.0.0-experimental-592953e-20240517: + version "0.0.0-experimental-592953e-20240517" + resolved "https://registry.yarnpkg.com/babel-plugin-react-compiler/-/babel-plugin-react-compiler-0.0.0-experimental-592953e-20240517.tgz#e800fa1550d03573cd5637218dc711f12f642249" + integrity sha512-OjG1SVaeQZaJrqkMFJatg8W/MTow8Ak5rx2SI0ETQBO1XvOk/XZGMbltNCPdFJLKghBYoBjC+Y3Ap/Xr7B01mA== + dependencies: + "@babel/generator" "7.2.0" + "@babel/types" "^7.19.0" + chalk "4" + invariant "^2.2.4" + pretty-format "^24" + zod "^3.22.4" + zod-validation-error "^2.1.0" + babel-plugin-react-native-web@^0.18.12, babel-plugin-react-native-web@~0.18.10: version "0.18.12" resolved "https://registry.yarnpkg.com/babel-plugin-react-native-web/-/babel-plugin-react-native-web-0.18.12.tgz#3e9764484492ea612a16b40135b07c2d05b7969d" integrity sha512-4djr9G6fMdwQoD6LQ7hOKAm39+y12flWgovAqS1k5O8f42YQ3A1FFMyV5kKfetZuGhZO5BmNmOdRRZQ1TixtDw== -babel-plugin-syntax-trailing-function-commas@^7.0.0-beta.0: - version "7.0.0-beta.0" - resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz#aa213c1435e2bffeb6fca842287ef534ad05d5cf" - integrity sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ== +babel-plugin-react-native-web@~0.19.10: + version "0.19.11" + resolved "https://registry.yarnpkg.com/babel-plugin-react-native-web/-/babel-plugin-react-native-web-0.19.11.tgz#32316f51de0053bba6815f6522bf7b17c483bf17" + integrity sha512-0sHf8GgDhsRZxGwlwHHdfL3U8wImFaLw4haEa60U9M3EiO3bg6u3BJ+1vXhwgrevqSq76rMb5j1HJs+dNvMj5g== babel-plugin-transform-flow-enums@^0.0.2: version "0.0.2" @@ -9013,53 +9409,20 @@ babel-preset-expo@^10.0.0: babel-plugin-react-native-web "~0.18.10" react-refresh "0.14.0" -babel-preset-expo@~10.0.2: - version "10.0.2" - resolved "https://registry.yarnpkg.com/babel-preset-expo/-/babel-preset-expo-10.0.2.tgz#5aae992b8c85dce6cf98334c9991d3052c567950" - integrity sha512-hg06qdSTK7MjKmFXSiq6cFoIbI3n3uT8a3NI2EZoISWhu+tedCj4DQduwi+3adFuRuYvAwECI0IYn/5iGh5zWQ== +babel-preset-expo@~11.0.6: + version "11.0.6" + resolved "https://registry.yarnpkg.com/babel-preset-expo/-/babel-preset-expo-11.0.6.tgz#b1ea2bd9f13338a9f7ca8d7089b5d6d6c7c03f79" + integrity sha512-jRi9I5/jT+dnIiNJDjDg+I/pV+AlxrIW/DNbdqYoRWPZA/LHDqD6IJnJXLxbuTcQ+llp+0LWcU7f/kC/PgGpkw== dependencies: "@babel/plugin-proposal-decorators" "^7.12.9" "@babel/plugin-transform-export-namespace-from" "^7.22.11" "@babel/plugin-transform-object-rest-spread" "^7.12.13" "@babel/plugin-transform-parameters" "^7.22.15" - "@babel/preset-env" "^7.20.0" "@babel/preset-react" "^7.22.15" - "@react-native/babel-preset" "^0.73.18" - babel-plugin-react-native-web "~0.18.10" - react-refresh "0.14.0" - -babel-preset-fbjs@^3.4.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/babel-preset-fbjs/-/babel-preset-fbjs-3.4.0.tgz#38a14e5a7a3b285a3f3a86552d650dca5cf6111c" - integrity sha512-9ywCsCvo1ojrw0b+XYk7aFvTH6D9064t0RIL1rtMf3nsa02Xw41MS7sZw216Im35xj/UY0PDBQsa1brUDDF1Ow== - dependencies: - "@babel/plugin-proposal-class-properties" "^7.0.0" - "@babel/plugin-proposal-object-rest-spread" "^7.0.0" - "@babel/plugin-syntax-class-properties" "^7.0.0" - "@babel/plugin-syntax-flow" "^7.0.0" - "@babel/plugin-syntax-jsx" "^7.0.0" - "@babel/plugin-syntax-object-rest-spread" "^7.0.0" - "@babel/plugin-transform-arrow-functions" "^7.0.0" - "@babel/plugin-transform-block-scoped-functions" "^7.0.0" - "@babel/plugin-transform-block-scoping" "^7.0.0" - "@babel/plugin-transform-classes" "^7.0.0" - "@babel/plugin-transform-computed-properties" "^7.0.0" - "@babel/plugin-transform-destructuring" "^7.0.0" - "@babel/plugin-transform-flow-strip-types" "^7.0.0" - "@babel/plugin-transform-for-of" "^7.0.0" - "@babel/plugin-transform-function-name" "^7.0.0" - "@babel/plugin-transform-literals" "^7.0.0" - "@babel/plugin-transform-member-expression-literals" "^7.0.0" - "@babel/plugin-transform-modules-commonjs" "^7.0.0" - "@babel/plugin-transform-object-super" "^7.0.0" - "@babel/plugin-transform-parameters" "^7.0.0" - "@babel/plugin-transform-property-literals" "^7.0.0" - "@babel/plugin-transform-react-display-name" "^7.0.0" - "@babel/plugin-transform-react-jsx" "^7.0.0" - "@babel/plugin-transform-shorthand-properties" "^7.0.0" - "@babel/plugin-transform-spread" "^7.0.0" - "@babel/plugin-transform-template-literals" "^7.0.0" - babel-plugin-syntax-trailing-function-commas "^7.0.0-beta.0" + "@babel/preset-typescript" "^7.23.0" + "@react-native/babel-preset" "~0.74.83" + babel-plugin-react-native-web "~0.19.10" + react-refresh "^0.14.2" babel-preset-jest@^27.5.1: version "27.5.1" @@ -9114,6 +9477,11 @@ base-64@0.1.0, base-64@^0.1.0: resolved "https://registry.yarnpkg.com/base-64/-/base-64-0.1.0.tgz#780a99c84e7d600260361511c4877613bf24f6bb" integrity sha512-Y5gU45svrR5tI2Vt/X9GPd3L0HNIKzGu202EjxrXMpuc2V2CiKgemAbUUsqYmZJvPtCXoUKjNZwBJzsNScUbXA== +base64-arraybuffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz#1c37589a7c4b0746e34bd1feb951da2df01c1bdc" + integrity sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ== + base64-js@^1.0.2, base64-js@^1.2.3, base64-js@^1.3.1, base64-js@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" @@ -9185,16 +9553,11 @@ bl@^4.0.3, bl@^4.1.0: inherits "^2.0.4" readable-stream "^3.4.0" -bluebird@^3.5.4, bluebird@^3.5.5: +bluebird@^3.5.5: version "3.7.2" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== -blueimp-md5@^2.10.0: - version "2.19.0" - resolved "https://registry.yarnpkg.com/blueimp-md5/-/blueimp-md5-2.19.0.tgz#b53feea5498dcb53dc6ec4b823adb84b729c4af0" - integrity sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w== - bn.js@^4.0.0, bn.js@^4.11.8, bn.js@^4.11.9: version "4.12.0" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" @@ -9306,6 +9669,16 @@ browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.18.1, browserslist@^4 node-releases "^2.0.13" update-browserslist-db "^1.0.11" +browserslist@^4.22.2: + version "4.23.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.23.0.tgz#8f3acc2bbe73af7213399430890f86c63a5674ab" + integrity sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ== + dependencies: + caniuse-lite "^1.0.30001587" + electron-to-chromium "^1.4.668" + node-releases "^2.0.14" + update-browserslist-db "^1.0.13" + bser@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" @@ -9375,45 +9748,6 @@ builtins@^1.0.3: resolved "https://registry.yarnpkg.com/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" integrity sha512-uYBjakWipfaO/bXI7E8rq6kpwHRZK5cNYrUv2OzZSI/FvmdMyXJ2tG9dKcjEC5YHmHpUAwsargWIZNWdxb/bnQ== -bunyamin@^1.5.0: - version "1.5.1" - resolved "https://registry.yarnpkg.com/bunyamin/-/bunyamin-1.5.1.tgz#14df1b2f0b82d781d8f8d81eb2e83542353ac8d7" - integrity sha512-VgWWb3G3HwajZF8fFM8TJjkWOqeDBZgzWBeQb7EhKQTQd33Zri0nghLeg4r86kQqqNlo/p9Jjgwh/O7Q6XpZIg== - dependencies: - "@flatten-js/interval-tree" "^1.1.2" - multi-sort-stream "^1.0.4" - stream-json "^1.7.5" - trace-event-lib "^1.3.1" - -bunyan-debug-stream@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/bunyan-debug-stream/-/bunyan-debug-stream-3.1.0.tgz#78309c67ad85cfb8f011155334152c49209dcda8" - integrity sha512-VaFYbDVdiSn3ZpdozrjZ8mFpxHXl26t11C1DKRQtbo0EgffqeFNrRLOGIESKVeGEvVu4qMxMSSxzNlSw7oTj7w== - dependencies: - chalk "^4.1.2" - -bunyan@^1.8.12: - version "1.8.15" - resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.15.tgz#8ce34ca908a17d0776576ca1b2f6cbd916e93b46" - integrity sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig== - optionalDependencies: - dtrace-provider "~0.8" - moment "^2.19.3" - mv "~2" - safe-json-stringify "~1" - -bunyan@^2.0.5: - version "2.0.5" - resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-2.0.5.tgz#9dd056755220dddd8b5bb9cf76f3d0d766e96e71" - integrity sha512-Jvl74TdxCN6rSP9W1I6+UOUtwslTDqsSFkDqZlFb/ilaSvQ+bZAnXT/GT97IZ5L+Vph0joPZPhxUyn6FLNmFAA== - dependencies: - exeunt "1.1.0" - optionalDependencies: - dtrace-provider "~0.8" - moment "^2.19.3" - mv "~2" - safe-json-stringify "~1" - bytes@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" @@ -9424,34 +9758,23 @@ bytes@3.1.2, bytes@^3.1.2: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== -cacache@^15.3.0: - version "15.3.0" - resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" - integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== +cacache@^18.0.2: + version "18.0.3" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-18.0.3.tgz#864e2c18414e1e141ae8763f31e46c2cb96d1b21" + integrity sha512-qXCd4rh6I07cnDqh8V48/94Tc/WSfj+o3Gn6NZ0aZovS255bUx8O13uKxRFd2eWG0xgsco7+YItQNPaa5E85hg== dependencies: - "@npmcli/fs" "^1.0.0" - "@npmcli/move-file" "^1.0.1" - chownr "^2.0.0" - fs-minipass "^2.0.0" - glob "^7.1.4" - infer-owner "^1.0.4" - lru-cache "^6.0.0" - minipass "^3.1.1" - minipass-collect "^1.0.2" + "@npmcli/fs" "^3.1.0" + fs-minipass "^3.0.0" + glob "^10.2.2" + lru-cache "^10.0.1" + minipass "^7.0.3" + minipass-collect "^2.0.1" minipass-flush "^1.0.5" - minipass-pipeline "^1.2.2" - mkdirp "^1.0.3" + minipass-pipeline "^1.2.4" p-map "^4.0.0" - promise-inflight "^1.0.1" - rimraf "^3.0.2" - ssri "^8.0.1" - tar "^6.0.2" - unique-filename "^1.1.1" - -caf@^15.0.1: - version "15.0.1" - resolved "https://registry.yarnpkg.com/caf/-/caf-15.0.1.tgz#28f1f17bd93dc4b5d95207ad07066eddf4768160" - integrity sha512-Xp/IK6vMwujxWZXra7djdYzPdPnEQKa7Mudu2wZgDQ3TJry1I0TgtjEgwZHpoBcMp68j4fb0/FZ1SJyMEgJrXQ== + ssri "^10.0.0" + tar "^6.1.11" + unique-filename "^3.0.0" call-bind@^1.0.0, call-bind@^1.0.2: version "1.0.2" @@ -9503,7 +9826,7 @@ camelcase@^5.0.0, camelcase@^5.3.1: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.0.0, camelcase@^6.2.0, camelcase@^6.2.1: +camelcase@^6.2.0, camelcase@^6.2.1: version "6.3.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== @@ -9523,6 +9846,11 @@ caniuse-lite@^1.0.0, caniuse-lite@^1.0.30001517, caniuse-lite@^1.0.30001520: resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001596.tgz" integrity sha512-zpkZ+kEr6We7w63ORkoJ2pOfBwBkY/bJrG/UZ90qNb45Isblu8wzDgevEOrRL1r9dWayHjYiiyCMEXPn4DweGQ== +caniuse-lite@^1.0.30001587: + version "1.0.30001620" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001620.tgz#78bb6f35b8fe315b96b8590597094145d0b146b4" + integrity sha512-WJvYsOjd1/BYUY6SNGUosK9DUidBPDTnOARHp3fSmFO1ekdxaY6nKRttEVrfMmYi80ctS0kz1wiWmm14fVc3ew== + case-anything@^2.1.13: version "2.1.13" resolved "https://registry.yarnpkg.com/case-anything/-/case-anything-2.1.13.tgz#0cdc16278cb29a7fcdeb072400da3f342ba329e9" @@ -9559,6 +9887,14 @@ cborg@^1.6.0: resolved "https://registry.yarnpkg.com/cborg/-/cborg-1.10.2.tgz#83cd581b55b3574c816f82696307c7512db759a1" integrity sha512-b3tFPA9pUr2zCUiCfRd2+wok2/LBSNUMKOuRRok+WlvvAgEt/PlbgPTsZUcwCOs53IJvLgTp0eotwtosE6njug== +chalk@4, chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + chalk@5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.3.0.tgz#67c20a7ebef70e7f3970a01f90fa210cb6860385" @@ -9581,14 +9917,6 @@ chalk@^3.0.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -chalk@^4.0.0, chalk@^4.0.2, chalk@^4.1.0, chalk@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" - char-regex@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" @@ -9614,15 +9942,6 @@ check-types@^11.1.1: resolved "https://registry.yarnpkg.com/check-types/-/check-types-11.2.2.tgz#7afc0b6a860d686885062f2dba888ba5710335b4" integrity sha512-HBiYvXvn9Z70Z88XKjz3AEKd4HJhBXsa3j7xFnITAzoS8+q6eIGi8qDB8FKPBAjtuxjI/zFpwuiCb8oDtKOYrA== -child-process-promise@^2.2.0: - version "2.2.1" - resolved "https://registry.yarnpkg.com/child-process-promise/-/child-process-promise-2.2.1.tgz#4730a11ef610fad450b8f223c79d31d7bdad8074" - integrity sha512-Fi4aNdqBsr0mv+jgWxcZ/7rAIC2mgihrptyVI4foh/rrjY/3BNjfP9+oaiFx/fzim+1ZyCNBae0DlyfQhSugog== - dependencies: - cross-spawn "^4.0.2" - node-version "^1.0.0" - promise-polyfill "^6.0.1" - chokidar@3.5.1: version "3.5.1" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" @@ -9678,18 +9997,6 @@ chrome-trace-event@^1.0.2: resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== -chromium-edge-launcher@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/chromium-edge-launcher/-/chromium-edge-launcher-1.0.0.tgz#0443083074715a13c669530b35df7bfea33b1509" - integrity sha512-pgtgjNKZ7i5U++1g1PWv75umkHvhVTDOQIZ+sjeUX9483S7Y6MUvO0lrd7ShGlQlFHMN4SwKTCq/X8hWrbv2KA== - dependencies: - "@types/node" "*" - escape-string-regexp "^4.0.0" - is-wsl "^2.2.0" - lighthouse-logger "^1.0.0" - mkdirp "^1.0.4" - rimraf "^3.0.2" - ci-info@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" @@ -9967,13 +10274,6 @@ commondir@^1.0.1: resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== -compare-urls@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/compare-urls/-/compare-urls-2.0.0.tgz#9b378c4abd43980a8700fffec9afb85de4df9075" - integrity sha512-eCJcWn2OYFEIqbm70ta7LQowJOOZZqq1a2YbbFCFI1uwSvj+TWMwXVn7vPR1ceFNcAIt5RSTDbwdlX82gYLTkA== - dependencies: - normalize-url "^2.0.1" - component-type@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/component-type/-/component-type-1.2.1.tgz#8a47901700238e4fc32269771230226f24b415a9" @@ -10170,14 +10470,6 @@ cross-fetch@^3.1.5: dependencies: node-fetch "^2.6.12" -cross-spawn@^4.0.2: - version "4.0.2" - resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-4.0.2.tgz#7b9247621c23adfdd3856004a823cbe397424d41" - integrity sha512-yAXz/pA1tD8Gtg2S98Ekf/sewp3Lcp3YoFKJ4Hkp5h5yLWnKVTDU0kwjKJ8NDCYcfTLfyGkzTikst+jWypT1iA== - dependencies: - lru-cache "^4.0.1" - which "^1.2.9" - cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" @@ -10239,6 +10531,13 @@ css-in-js-utils@^3.1.0: dependencies: hyphenate-style-name "^1.0.3" +css-line-break@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/css-line-break/-/css-line-break-2.1.0.tgz#bfef660dfa6f5397ea54116bb3cb4873edbc4fa0" + integrity sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w== + dependencies: + utrie "^1.0.2" + css-loader@^6.5.1: version "6.8.1" resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-6.8.1.tgz#0f8f52699f60f5e679eab4ec0fcd68b8e8a50a88" @@ -10507,17 +10806,12 @@ decamelize@^1.2.0: resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== -decamelize@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-4.0.0.tgz#aa472d7bf660eb15f3494efd531cab7f2a709837" - integrity sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ== - decimal.js@^10.2.1, decimal.js@^10.4.2: version "10.4.3" resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== -decode-uri-component@^0.2.0, decode-uri-component@^0.2.2: +decode-uri-component@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== @@ -10707,47 +11001,6 @@ detect-port-alt@^1.1.6: address "^1.0.1" debug "^2.6.0" -detox@^20.14.8: - version "20.14.8" - resolved "https://registry.yarnpkg.com/detox/-/detox-20.14.8.tgz#0a550cf677fc98a68d56d162e1c5caad317de9ca" - integrity sha512-3E/0/7Cb7x+wcBsZpCxD8FykZUsFnfVT00d6PWH940boc0Mo1Kzabh+I151X/On4qZMqVdUzgwmap/z8g/kmaw== - dependencies: - ajv "^8.6.3" - bunyan "^1.8.12" - bunyan-debug-stream "^3.1.0" - caf "^15.0.1" - chalk "^4.0.0" - child-process-promise "^2.2.0" - execa "^5.1.1" - find-up "^5.0.0" - fs-extra "^11.0.0" - funpermaproxy "^1.1.0" - glob "^8.0.3" - ini "^1.3.4" - jest-environment-emit "^1.0.5" - json-cycle "^1.3.0" - lodash "^4.17.11" - multi-sort-stream "^1.0.3" - multipipe "^4.0.0" - node-ipc "9.2.1" - proper-lockfile "^3.0.2" - resolve-from "^5.0.0" - sanitize-filename "^1.6.1" - semver "^7.0.0" - serialize-error "^8.0.1" - shell-quote "^1.7.2" - signal-exit "^3.0.3" - stream-json "^1.7.4" - strip-ansi "^6.0.1" - telnet-client "1.2.8" - tempfile "^2.0.0" - trace-event-lib "^1.3.1" - which "^1.3.1" - ws "^7.0.0" - yargs "^17.0.0" - yargs-parser "^21.0.0" - yargs-unparser "^2.0.0" - didyoumean@^1.2.2: version "1.2.2" resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.2.tgz#989346ffe9e839b4555ecf5666edea0d3e8ad037" @@ -10921,10 +11174,12 @@ dotenv-expand@^5.1.0: resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== -dotenv-expand@~10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-10.0.0.tgz#12605d00fb0af6d0a592e6558585784032e4ef37" - integrity sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A== +dotenv-expand@~11.0.6: + version "11.0.6" + resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-11.0.6.tgz#f2c840fd924d7c77a94eff98f153331d876882d3" + integrity sha512-8NHi73otpWsZGBSZwwknTXS5pqMOrk9+Ssrna8xCaxkzEpU9OTf9R5ArQGVw03//Zmk9MOwLPng9WwndvpAJ5g== + dependencies: + dotenv "^16.4.4" dotenv@^10.0.0: version "10.0.0" @@ -10936,30 +11191,16 @@ dotenv@^16.0.3, dotenv@^16.3.1: resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.3.1.tgz#369034de7d7e5b120972693352a3bf112172cc3e" integrity sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ== -dotenv@~16.0.3: - version "16.0.3" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.0.3.tgz#115aec42bac5053db3c456db30cc243a5a836a07" - integrity sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ== +dotenv@^16.4.4, dotenv@~16.4.5: + version "16.4.5" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.4.5.tgz#cdd3b3b604cb327e286b4762e13502f717cb099f" + integrity sha512-ZmdL2rui+eB2YwhsWzjInR8LldtZHGDoQ1ugH85ppHKwpUHL7j7rN0Ti9NCnGiQbhaZ11FpR+7ao1dNsmduNUg== dset@^3.1.1, dset@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/dset/-/dset-3.1.2.tgz#89c436ca6450398396dc6538ea00abc0c54cd45a" integrity sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q== -dtrace-provider@~0.8: - version "0.8.8" - resolved "https://registry.yarnpkg.com/dtrace-provider/-/dtrace-provider-0.8.8.tgz#2996d5490c37e1347be263b423ed7b297fb0d97e" - integrity sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg== - dependencies: - nan "^2.14.0" - -duplexer2@^0.1.2: - version "0.1.4" - resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.1.4.tgz#8b12dab878c0d69e3e7891051662a32fc6bddcc1" - integrity sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA== - dependencies: - readable-stream "^2.0.2" - duplexer@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" @@ -10970,11 +11211,6 @@ eastasianwidth@^0.2.0: resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== -easy-stack@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/easy-stack/-/easy-stack-1.0.1.tgz#8afe4264626988cabb11f3c704ccd0c835411066" - integrity sha512-wK2sCs4feiiJeFXn3zvY0p41mdU5VUgbgs1rNsc/y5ngFUijdWd+iIN8eoyuZHKB8xN6BL4PdWmzqFmxNg6V2w== - ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" @@ -10992,6 +11228,11 @@ electron-to-chromium@^1.4.477: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.498.tgz#cef35341123f62a35ba7084e439c911d25e0d81b" integrity sha512-4LODxAzKGVy7CJyhhN5mebwe7U2L29P+0G+HUriHnabm0d7LSff8Yn7t+Wq+2/9ze2Fu1dhX7mww090xfv7qXQ== +electron-to-chromium@^1.4.668: + version "1.4.777" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.777.tgz#f846fbba23fd11b3c6f97848cdda94896fdb8baf" + integrity sha512-n02NCwLJ3wexLfK/yQeqfywCblZqLcXphzmid5e8yVPdtEcida7li0A5WQKghHNG0FeOMCzeFOzEbtAh5riXFw== + elliptic@^6.4.1: version "6.5.4" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" @@ -11305,6 +11546,11 @@ escalade@^3.1.1: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== +escalade@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.2.tgz#54076e9ab29ea5bf3d8f1ed62acffbb88272df27" + integrity sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA== + escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" @@ -11381,13 +11627,6 @@ eslint-module-utils@^2.8.0: version "0.0.0" uid "" -eslint-plugin-detox@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-detox/-/eslint-plugin-detox-1.0.0.tgz#2d9c0130e8ebc4ced56efb6eeaf0d0f5c163398d" - integrity sha512-Dd+Cwyap5IO9DBKXOKrQTE1RQk9hvSSi+qsS1cMVPZY37mojz2PvriEOfGhKj5XN1G14lJ8TArf+6Y+Np2ZsoQ== - dependencies: - requireindex "~1.1.0" - eslint-plugin-eslint-comments@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-3.2.0.tgz#9e1cd7b4413526abb313933071d7aba05ca12ffa" @@ -11485,6 +11724,18 @@ eslint-plugin-prettier@^4.2.1: dependencies: prettier-linter-helpers "^1.0.0" +eslint-plugin-react-compiler@^0.0.0-experimental-c8b3f72-20240517: + version "0.0.0-experimental-c8b3f72-20240517" + resolved "https://registry.yarnpkg.com/eslint-plugin-react-compiler/-/eslint-plugin-react-compiler-0.0.0-experimental-c8b3f72-20240517.tgz#56b512aa0d6dbf051be0d297bde1d696e412bc50" + integrity sha512-cxUTFNMEKiLX6uFaRfrr2GHnB7KUHDMYLjEGzDec82ka6WyBCHg906nGSf3JvVnQKHaBDfUk7Mmv/JMvdgQB8Q== + dependencies: + "@babel/core" "^7.24.4" + "@babel/parser" "^7.24.4" + "@babel/plugin-proposal-private-methods" "^7.18.6" + hermes-parser "^0.20.1" + zod "^3.22.4" + zod-validation-error "^3.0.3" + eslint-plugin-react-hooks@^4.3.0, eslint-plugin-react-hooks@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz#4c3e697ad95b77e93f8646aaa1630c1ba607edd3" @@ -11679,11 +11930,6 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== -event-pubsub@4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/event-pubsub/-/event-pubsub-4.3.0.tgz#f68d816bc29f1ec02c539dc58c8dd40ce72cb36e" - integrity sha512-z7IyloorXvKbFx9Bpie2+vMJKKx1fH1EN5yiTfp8CiLOTptSYy1g8H4yDpGlEdshL1PBiFtBHepF2cNsqeEeFQ== - event-target-shim@^5.0.0, event-target-shim@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" @@ -11752,11 +11998,6 @@ execa@^5.0.0, execa@^5.1.1: signal-exit "^3.0.3" strip-final-newline "^2.0.0" -exeunt@1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/exeunt/-/exeunt-1.1.0.tgz#af72db6f94b3cb75e921aee375d513049843d284" - integrity sha512-dd++Yn/0Fp+gtJ04YHov7MeAii+LFivJc6KqnJNfplzLVUkUDrfKoQDTLlCgzcW15vY5hKlHasWeIsQJ8agHsw== - exit@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" @@ -11799,47 +12040,40 @@ expect@^29.7.0: jest-message-util "^29.7.0" jest-util "^29.7.0" -expo-application@^5.8.3: - version "5.8.3" - resolved "https://registry.yarnpkg.com/expo-application/-/expo-application-5.8.3.tgz#43991bd81d05c987b07b2f430c036cda1572bc62" - integrity sha512-IISxzpPX+Xe4ynnwX8yY52T6dm1g9sME1GCj4lvUlrdc5xeTPM6U35x7Wj82V7lLWBaVGe+/Tg9EeKqfylCEwA== +expo-application@^5.9.1, expo-application@~5.9.0: + version "5.9.1" + resolved "https://registry.yarnpkg.com/expo-application/-/expo-application-5.9.1.tgz#a12e0cf2741b6f084cc49cd0121ad0a70c770459" + integrity sha512-uAfLBNZNahnDZLRU41ZFmNSKtetHUT9Ua557/q189ua0AWV7pQjoVAx49E4953feuvqc9swtU3ScZ/hN1XO/FQ== -expo-application@~5.8.0: - version "5.8.0" - resolved "https://registry.yarnpkg.com/expo-application/-/expo-application-5.8.0.tgz#b82cb98a08f91d61f047f6578e883e0deb9661f2" - integrity sha512-nNQ/ayC4P1ue0ZQSmUlG/K2ZHTPwHyYGsb0QtEmCFUCitsjPKIx4coNvAreZMuELvY7pD1zKr+pdtN/ULnljBA== - -expo-asset@~9.0.2: - version "9.0.2" - resolved "https://registry.yarnpkg.com/expo-asset/-/expo-asset-9.0.2.tgz#e8a6b6da356d5fc97955599d2fa49af78c7f0bfd" - integrity sha512-PzYKME1MgUOoUvwtdzhAyXkjXOXGiSYqGKG/MsXwWr0Ef5wlBaBm2DCO9V6KYbng5tBPFu6hTjoRNil1tBOSow== +expo-asset@~10.0.6: + version "10.0.6" + resolved "https://registry.yarnpkg.com/expo-asset/-/expo-asset-10.0.6.tgz#0894c4e824ce90e130852e6eecaba386e9f2e5aa" + integrity sha512-waP73/ccn/HZNNcGM4/s3X3icKjSSbEQ9mwc6tX34oYNg+XE5WdwOuZ9wgVVFrU7wZMitq22lQXd2/O0db8bxg== dependencies: - "@react-native/assets-registry" "~0.73.1" - blueimp-md5 "^2.10.0" - expo-constants "~15.4.0" - expo-file-system "~16.0.0" + "@react-native/assets-registry" "~0.74.83" + expo-constants "~16.0.0" invariant "^2.2.4" md5-file "^3.2.3" -expo-build-properties@^0.11.1: - version "0.11.1" - resolved "https://registry.yarnpkg.com/expo-build-properties/-/expo-build-properties-0.11.1.tgz#dc9ab9fb1ac989b97da500b3ec75139c961d8b26" - integrity sha512-m4j4aEjFaDuBE6KWYMxDhWgLzzSmpE7uHKAwtvXyNmRK+6JKF0gjiXi0sXgI5ngNppDQpsyPFMvqG7uQpRuCuw== +expo-build-properties@^0.12.1: + version "0.12.1" + resolved "https://registry.yarnpkg.com/expo-build-properties/-/expo-build-properties-0.12.1.tgz#8d11759b8f382e4654e2482ddcec4f9ad4530aad" + integrity sha512-gn8sngNmOHkbJ5Kt3mKcKg+Wl6+d0m70gg9OllRIVeDkvZqCObKfnSM4tAQWiJhm62sHnL8udfYnuArnKhQd/g== dependencies: ajv "^8.11.0" - semver "^7.5.3" + semver "^7.6.0" -expo-camera@~14.0.4: - version "14.0.6" - resolved "https://registry.yarnpkg.com/expo-camera/-/expo-camera-14.0.6.tgz#4d02ae2c7d734b2256111fa17a3b2c46fa712c78" - integrity sha512-PBkbAR0g/rFO9A01CmOoPHknXBBfJ1rXFm75XQY6kmMNH9BHJ89yAtlOaYJy/fw5xVxJkyVG+6uVGgbBeu7dyw== +expo-camera@~15.0.9: + version "15.0.9" + resolved "https://registry.yarnpkg.com/expo-camera/-/expo-camera-15.0.9.tgz#a6a175638bdd9914aca061c6090001452329fcea" + integrity sha512-xH+y8gA/3rNLostIw+z4kDGA+AYzsI9+QYb7G1uCFyxr3SxUGhapz+oMBFDU++vmyo9G7Ax0n52nghqIrNBJxQ== dependencies: invariant "^2.2.4" -expo-clipboard@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/expo-clipboard/-/expo-clipboard-5.0.1.tgz#a62a021a9444740d180d60f915cca8242a323716" - integrity sha512-JH853QJPr5W3h87If3aDTnMK+ESSIrwzU2TdfZrqZttVDY2pMIf/w37mVHHNYodXM4ATHXadtOkjKbAa0DWwUg== +expo-clipboard@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/expo-clipboard/-/expo-clipboard-6.0.3.tgz#dfea74d4a004dce59ecefd063d6fb9f1c356a03f" + integrity sha512-RIKDsuHkYfaspifbFpVC8sBVFKR05L7Pj7mU2/XkbrW9m01OBNvdpGraXEMsTFCx97xMGsZpEw9pPquL4j4xVg== expo-constants@^13.0.2: version "13.2.4" @@ -11849,61 +12083,47 @@ expo-constants@^13.0.2: "@expo/config" "~7.0.0" uuid "^3.3.2" -expo-constants@~15.4.0: - version "15.4.1" - resolved "https://registry.yarnpkg.com/expo-constants/-/expo-constants-15.4.1.tgz#f76f347cf687b6630e1e3b9a385a4e42771671a4" - integrity sha512-aLAN7HOMRFQ5dVduDLPxSlAhsA5OubDxFeM1uo3CHQoaXZfxyJv6g64zjLsOBzVSEIRmNQZl7+1mc5rujZDU2w== +expo-constants@~16.0.0, expo-constants@~16.0.1: + version "16.0.1" + resolved "https://registry.yarnpkg.com/expo-constants/-/expo-constants-16.0.1.tgz#1285e29c85513c6e88e118289e2baab72596d3f7" + integrity sha512-s6aTHtglp926EsugWtxN7KnpSsE9FCEjb7CgEjQQ78Gpu4btj4wB+IXot2tlqNwqv+x7xFe5veoPGfJDGF/kVg== dependencies: - "@expo/config" "~8.5.0" + "@expo/config" "~9.0.0-beta.0" -expo-constants@~15.4.3: - version "15.4.3" - resolved "https://registry.yarnpkg.com/expo-constants/-/expo-constants-15.4.3.tgz#e6080323e3651e98c1433ba0d06d1352cfbd2203" - integrity sha512-iOLIB0ckJFSzsH68FoYp9f8FB0CjKViuLnRID+OhiF3IGL1ja9IZdfvtZgkGJ27Az79yThX/9ktlw77+5ejGbA== +expo-dev-client@^4.0.14: + version "4.0.14" + resolved "https://registry.yarnpkg.com/expo-dev-client/-/expo-dev-client-4.0.14.tgz#73d2f8b6f173d01f07af3e01cf8d5acdc6e05c01" + integrity sha512-s5/FZZdgvoxBGA35QgNet61Dc1jh+8u375uaYkH9pUvfKFXURd9PDDAWvtAnOo+QYg9WwgiHPo7dKeCdN6pOPA== dependencies: - "@expo/config" "~8.5.0" + expo-dev-launcher "4.0.15" + expo-dev-menu "5.0.14" + expo-dev-menu-interface "1.8.3" + expo-manifests "~0.14.0" + expo-updates-interface "~0.16.2" -expo-constants@~15.4.5: - version "15.4.5" - resolved "https://registry.yarnpkg.com/expo-constants/-/expo-constants-15.4.5.tgz#81756a4c4e1c020f840a419cd86a124a6d1fb35b" - integrity sha512-1pVVjwk733hbbIjtQcvUFCme540v4gFemdNlaxM2UXKbfRCOh2hzgKN5joHMOysoXQe736TTUrRj7UaZI5Yyhg== - dependencies: - "@expo/config" "~8.5.0" - -expo-dev-client@~3.3.8: - version "3.3.11" - resolved "https://registry.yarnpkg.com/expo-dev-client/-/expo-dev-client-3.3.11.tgz#f2541ccbcfc2ba32bcea47293bc9beae4e10db60" - integrity sha512-9nhhbfbskfmjp/tlRS5KvDpCoW0BREJBxpu2GyjKu7nDB33W8fJLL0wXgNhP+QEb93r37o3uezKmUm2kibOvTw== - dependencies: - expo-dev-launcher "3.6.9" - expo-dev-menu "4.5.8" - expo-dev-menu-interface "1.7.2" - expo-manifests "~0.13.0" - expo-updates-interface "~0.15.1" - -expo-dev-launcher@3.6.9: - version "3.6.9" - resolved "https://registry.yarnpkg.com/expo-dev-launcher/-/expo-dev-launcher-3.6.9.tgz#5e104e0533a46f3614c1691673da3351092e8d1d" - integrity sha512-MBDMAqjCMVYt1Zv47u2dJTp4d8gCZMfM4GWAFhfQy3G6XzkUlFtewaQefAqy93FcYOv6BYdC9yZOLOb06tqTfA== +expo-dev-launcher@4.0.15: + version "4.0.15" + resolved "https://registry.yarnpkg.com/expo-dev-launcher/-/expo-dev-launcher-4.0.15.tgz#cd36f10b7e534e5caa176a5718381ccfa73b0b8c" + integrity sha512-avl4NTwFwalZjojFAXvINPgxAlcAxfdwy9PSsAq5KAkl9Vv+Vr8O2gI3nfrPwtqAA0iOIES/EKN0YFCiQuuvvg== dependencies: ajv "8.11.0" - expo-dev-menu "4.5.8" - expo-manifests "~0.13.0" + expo-dev-menu "5.0.14" + expo-manifests "~0.14.0" resolve-from "^5.0.0" - semver "^7.5.3" + semver "^7.6.0" -expo-dev-menu-interface@1.7.2: - version "1.7.2" - resolved "https://registry.yarnpkg.com/expo-dev-menu-interface/-/expo-dev-menu-interface-1.7.2.tgz#772fb97c6b0a44c27965cdfcfa078f316b0930ca" - integrity sha512-V/geSB9rW0IPTR+d7E5CcvkV0uVUCE7SMHZqE/J0/dH06Wo8AahB16fimXeh5/hTL2Qztq8CQ41xpFUBoA9TEw== +expo-dev-menu-interface@1.8.3: + version "1.8.3" + resolved "https://registry.yarnpkg.com/expo-dev-menu-interface/-/expo-dev-menu-interface-1.8.3.tgz#8c1262e29e0124fc5932a129c95b36de56656b20" + integrity sha512-QM0LRozeFT5Ek0N7XpV93M+HMdEKRLEOXn0aW5M3uoUlnqC1+PLtF3HMy3k3hMKTTE/kJ1y1Z7akH07T0lunCQ== -expo-dev-menu@4.5.8: - version "4.5.8" - resolved "https://registry.yarnpkg.com/expo-dev-menu/-/expo-dev-menu-4.5.8.tgz#21940385124c7d2745066bbcb42185ebd35f66bc" - integrity sha512-GXfI0CmYlqjOqyFjtplXO9PSoJQoy89+50lbUSNZykDsGyvzCPzl4txdQcdHHSglKYr7lWV7aeMVeehuSct60w== +expo-dev-menu@5.0.14: + version "5.0.14" + resolved "https://registry.yarnpkg.com/expo-dev-menu/-/expo-dev-menu-5.0.14.tgz#7d54fc51b42217588cb9c5f2049bcf857d6e0b3d" + integrity sha512-zPXBMCyjptn4Aw7D2Z8FEqndED33g1ryChN0nyTA1zHzckDNwnGuLdTWTsNFrqmFqyqjRJgG5xFVJmnsDO8WyQ== dependencies: - expo-dev-menu-interface "1.7.2" - semver "^7.5.3" + expo-dev-menu-interface "1.8.3" + semver "^7.5.4" expo-device@~4.1.1: version "4.1.1" @@ -11912,148 +12132,142 @@ expo-device@~4.1.1: dependencies: ua-parser-js "^0.7.19" -expo-device@~5.9.3: - version "5.9.3" - resolved "https://registry.yarnpkg.com/expo-device/-/expo-device-5.9.3.tgz#0ad61da681424aa682fa03001d0344394c01f8a1" - integrity sha512-azH5rz8krDZUJb/arqkcA6oZGaX2T5s4aaXIMFsDDzvq8TW0CttZZy2HFp6itmFdiKGdRpFX3/Gj0n6ZmPoJ/w== +expo-device@~6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/expo-device/-/expo-device-6.0.2.tgz#9bc3eccd16509c2819c225cc2ca8f7c3e3bdd11e" + integrity sha512-sCt91CuTmAuMXX4SlFOn4lIos2UIr8vb0jDstDDZXys6kErcj0uynC7bQAMreU5uRUTKMAl4MAMpKt9ufCXPBw== dependencies: ua-parser-js "^0.7.33" -expo-eas-client@~0.11.0: - version "0.11.0" - resolved "https://registry.yarnpkg.com/expo-eas-client/-/expo-eas-client-0.11.0.tgz#0f25aa497849cade7ebef55c0631093a87e58b07" - integrity sha512-99W0MUGe3U4/MY1E9UeJ4uKNI39mN8/sOGA0Le8XC47MTbwbLoVegHR3C5y2fXLwLn7EpfNxAn5nlxYjY3gD2A== +expo-eas-client@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/expo-eas-client/-/expo-eas-client-0.12.0.tgz#e8b6f7d33873e6f630f37f7bfc41646ae7b0b2a9" + integrity sha512-Jkww9Cwpv0z7DdLYiRX0r4fqBEcI9cKqTn7cHx63S09JaZ2rcwEE4zYHgrXwjahO+tU2VW8zqH+AJl6RhhW4zA== -expo-file-system@^16.0.9, expo-file-system@~16.0.9: - version "16.0.9" - resolved "https://registry.yarnpkg.com/expo-file-system/-/expo-file-system-16.0.9.tgz#cbd6c4b228b60a6b6c71fd1b91fe57299fb24da7" - integrity sha512-3gRPvKVv7/Y7AdD9eHMIdfg5YbUn2zbwKofjsloTI5sEC57SLUFJtbLvUCz9Pk63DaSQ7WIE1JM0EASyvuPbuw== +expo-file-system@^17.0.1, expo-file-system@~17.0.1: + version "17.0.1" + resolved "https://registry.yarnpkg.com/expo-file-system/-/expo-file-system-17.0.1.tgz#b9f8af8c1c06ec71d96fd7a0d2567fa9e1c88f15" + integrity sha512-dYpnZJqTGj6HCYJyXAgpFkQWsiCH3HY1ek2cFZVHFoEc5tLz9gmdEgTF6nFHurvmvfmXqxi7a5CXyVm0aFYJBw== -expo-file-system@~16.0.0: - version "16.0.1" - resolved "https://registry.yarnpkg.com/expo-file-system/-/expo-file-system-16.0.1.tgz#326b7c2f6e53e1a0eaafc9769578aafb3f9c9f43" - integrity sha512-/U6ufN2wRPgg4m2a9sqbL3dThqQsysT022qulEXWnUTmNaqnzYSk9ihjDWqoqjXLi9slQLsyok5t6CNzhM7HPw== - -expo-font@~11.10.3: - version "11.10.3" - resolved "https://registry.yarnpkg.com/expo-font/-/expo-font-11.10.3.tgz#a3115ebda8e09bd7cb8052619a4bbe606f0c17f4" - integrity sha512-q1Td2zUvmLbCA9GV4OG4nLPw5gJuNY1VrPycsnemN1m8XWTzzs8nyECQQqrcBhgulCgcKZZJJ6U0kC2iuSoQHQ== +expo-font@~12.0.5: + version "12.0.5" + resolved "https://registry.yarnpkg.com/expo-font/-/expo-font-12.0.5.tgz#3451c2bd3f98859b127a6484d3474a292889b93f" + integrity sha512-h/VkN4jlHYDJ6T6pPgOYTVoDEfBY0CTKQe4pxnPDGQiE6H+DFdDgk+qWVABGpRMH0+zXoHB+AEi3OoQjXIynFA== dependencies: fontfaceobserver "^2.1.0" -expo-haptics@^12.8.1: - version "12.8.1" - resolved "https://registry.yarnpkg.com/expo-haptics/-/expo-haptics-12.8.1.tgz#42b996763be33d661bd33bbc3b3958c3f2734b9d" - integrity sha512-ntLsHkfle8K8w9MW8pZEw92ZN3sguaGUSSIxv30fPKNeQFu7Cq/h47Qv3tONv2MO3wU48N9FbKnant6XlfptpA== +expo-haptics@^13.0.1: + version "13.0.1" + resolved "https://registry.yarnpkg.com/expo-haptics/-/expo-haptics-13.0.1.tgz#35679c7fde4ae1c21ae3bc2d2cb34c266049dc2c" + integrity sha512-qG0EOLDE4bROVT3DtUSyV9g3iB3YFu9j3711X7SNNEnBDXc+2/p3wGDPTnJvPW0ao6HG3/McAOrBQA5hVSdWng== -expo-image-loader@~4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/expo-image-loader/-/expo-image-loader-4.6.0.tgz#ca7d4fdf53125bff2091d3a2c34a3155f10df147" - integrity sha512-RHQTDak7/KyhWUxikn2yNzXL7i2cs16cMp6gEAgkHOjVhoCJQoOJ0Ljrt4cKQ3IowxgCuOrAgSUzGkqs7omj8Q== +expo-image-loader@~4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/expo-image-loader/-/expo-image-loader-4.7.0.tgz#d403106822de80bda12d644c82b7a3b7983c0f0b" + integrity sha512-cx+MxxsAMGl9AiWnQUzrkJMJH4eNOGlu7XkLGnAXSJrRoIiciGaKqzeaD326IyCTV+Z1fXvIliSgNW+DscvD8g== -expo-image-manipulator@^11.8.0: - version "11.8.0" - resolved "https://registry.yarnpkg.com/expo-image-manipulator/-/expo-image-manipulator-11.8.0.tgz#e52351728619e534c949ae4b394af2c7c5d16702" - integrity sha512-ZWVrHnYmwJq6h7auk+ropsxcNi+LyZcPFKQc8oy+JA0SaJosfShvkCm7RADWAunHmfPCmjHrhwPGEu/rs7WG/A== +expo-image-manipulator@^12.0.5: + version "12.0.5" + resolved "https://registry.yarnpkg.com/expo-image-manipulator/-/expo-image-manipulator-12.0.5.tgz#e3dd2810d27025705f73523cd4ba47b0d091a662" + integrity sha512-zJ8yINjckYw/yfoSuICt4yJ9xr112+W9e5QVXwK3nCAHr7sv45RQ5sxte0qppf594TPl+UoV6Tjim7WpoKipRQ== dependencies: - expo-image-loader "~4.6.0" + expo-image-loader "~4.7.0" -expo-image-picker@~14.7.1: - version "14.7.1" - resolved "https://registry.yarnpkg.com/expo-image-picker/-/expo-image-picker-14.7.1.tgz#c51faff3a3fbffc6ae93d7155370beb1a2d2baea" - integrity sha512-ILQVOJgI3aEzrDmCFGDPtpAepYkn8mot8G7vfQ51BfFdQbzL6N3Wm1fS/ofdWlAZJl/qT2DwaIh5xYmf3SyGZA== +expo-image-picker@~15.0.5: + version "15.0.5" + resolved "https://registry.yarnpkg.com/expo-image-picker/-/expo-image-picker-15.0.5.tgz#8a3d4c3ecdb5bcf58f09e024597dd69edf7baa9c" + integrity sha512-Qqp16udsadx/YpNcNaWzfbmO0tbMxyX9bS1aFiDVC+Zffh8LY8S4HJJcnWqSC2TeuAl+9SxUwTloJagvPeMBBw== dependencies: - expo-image-loader "~4.6.0" + expo-image-loader "~4.7.0" -expo-image@~1.10.6: - version "1.10.6" - resolved "https://registry.yarnpkg.com/expo-image/-/expo-image-1.10.6.tgz#b0e54d31d97742505296c076a5f18d094ba9a8cc" - integrity sha512-vcnAIym1eU8vQgV1re1E7rVQZStJimBa4aPDhjFfzMzbddAF7heJuagyewiUkTzbZUwYzPaZAie6VJPyWx9Ueg== +expo-image@~1.12.9: + version "1.12.9" + resolved "https://registry.yarnpkg.com/expo-image/-/expo-image-1.12.9.tgz#b6354ab1dcff65df596399a538e6985c44aacc0b" + integrity sha512-WnC3Z3vsOTJLWE9FGB0a0GANmkpfBCqTf9bSLXXl50hEYiRcfwrAYZ/87oswAhggMGbJqOuLKZxt5rtuij1xcQ== dependencies: - "@react-native/assets-registry" "~0.73.1" + "@react-native/assets-registry" "~0.74.83" -expo-json-utils@~0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/expo-json-utils/-/expo-json-utils-0.12.0.tgz#15ad797e9518a6a47eae9b95599e6373e641f8f2" - integrity sha512-xsUsPUZcXZWoT4RY3FhEPYGYvr2iThMNNU5drdmkC/vmkePvqy5kK4aIqlIKzQboXxj7k1dXoNSSLg5mKy8uKg== +expo-json-utils@~0.13.0: + version "0.13.1" + resolved "https://registry.yarnpkg.com/expo-json-utils/-/expo-json-utils-0.13.1.tgz#e49b697198e11c573d346f08ab91c467095934a9" + integrity sha512-mlfaSArGVb+oJmUcR22jEONlgPp0wj4iNIHfQ2je9Q8WTOqMc0Ws9tUciz3JdJnhffdHqo/k8fpvf0IRmN5HPA== -expo-keep-awake@~12.8.2: - version "12.8.2" - resolved "https://registry.yarnpkg.com/expo-keep-awake/-/expo-keep-awake-12.8.2.tgz#6cfdf8ad02b5fa130f99d4a1eb98e459d5b4332e" - integrity sha512-uiQdGbSX24Pt8nGbnmBtrKq6xL/Tm3+DuDRGBk/3ZE/HlizzNosGRIufIMJ/4B4FRw4dw8KU81h2RLuTjbay6g== +expo-keep-awake@~13.0.2: + version "13.0.2" + resolved "https://registry.yarnpkg.com/expo-keep-awake/-/expo-keep-awake-13.0.2.tgz#5ef31311a339671eec9921b934fdd90ab9652b0e" + integrity sha512-kKiwkVg/bY0AJ5q1Pxnm/GvpeB6hbNJhcFsoOWDh2NlpibhCLaHL826KHUM+WsnJRbVRxJ+K9vbPRHEMvFpVyw== -expo-linear-gradient@^12.7.2: - version "12.7.2" - resolved "https://registry.yarnpkg.com/expo-linear-gradient/-/expo-linear-gradient-12.7.2.tgz#2ff9593eae8448ac5630be1a36ce6133c4a6f074" - integrity sha512-Wwb2EF18ywgrlTodcXJ6Yt/UEcKitRMdXPNyP/IokmeKh4emoq9DxZJpZdkXm3HUTLlbRpi6/t32jrFVqXB9AQ== +expo-linear-gradient@^13.0.2: + version "13.0.2" + resolved "https://registry.yarnpkg.com/expo-linear-gradient/-/expo-linear-gradient-13.0.2.tgz#21bd7bc7c71ef4f7c089521daa16db729d2aec5f" + integrity sha512-EDcILUjRKu4P1rtWcwciN6CSyGtH7Bq4ll3oTRV7h3h8oSzSilH1g6z7kTAMlacPBKvMnkkWOGzW6KtgMKEiTg== -expo-linking@^6.2.2: - version "6.2.2" - resolved "https://registry.yarnpkg.com/expo-linking/-/expo-linking-6.2.2.tgz#b7e148068ae49fd9ad814428c16fdf7a236e8aca" - integrity sha512-FEe6lP4f7xFT/vjoHRG+tt6EPVtkEGaWNK1smpaUevmNdyCJKqW0PDB8o8sfG6y7fly8ULe8qg3HhKh5J7aqUQ== +expo-linking@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/expo-linking/-/expo-linking-6.3.1.tgz#05aef8a42bd310391d0b00644be40d80ece038d9" + integrity sha512-xuZCntSBGWCD/95iZ+mTUGTwHdy8Sx+immCqbUBxdvZ2TN61P02kKg7SaLS8A4a/hLrSCwrg5tMMwu5wfKr35g== dependencies: - expo-constants "~15.4.3" + expo-constants "~16.0.0" invariant "^2.2.4" -expo-localization@~14.8.3: - version "14.8.3" - resolved "https://registry.yarnpkg.com/expo-localization/-/expo-localization-14.8.3.tgz#c1efa8a314b6bfe38425bbc6bcce9cf9b84a802d" - integrity sha512-leg1e+7ocUgfNWa7Men/g16waXtdSpBMR9tCdv3CG4wztmFU8C+87VAnnVkvHi4CCUkTLzhP3y0FcE6KIWTwdw== +expo-localization@~15.0.3: + version "15.0.3" + resolved "https://registry.yarnpkg.com/expo-localization/-/expo-localization-15.0.3.tgz#772c89b3ab9c925b7eca6911a11ca33980c2b674" + integrity sha512-IfcmlKuKRlowR9qIzL0e+nGHBeNoF7l2GQaOJstc7HZiPjNJ4J1R4D53ZNf483dt7JSkTRJBihdTadOtOEjRdg== dependencies: rtl-detect "^1.0.2" -expo-manifests@~0.13.0: - version "0.13.0" - resolved "https://registry.yarnpkg.com/expo-manifests/-/expo-manifests-0.13.0.tgz#20f163f84a414c6c50b8079e5fd0685d7c5b8ce2" - integrity sha512-N3adl3edSga3jdatLXjXiltdSwQkB1rOI5uyGEE5OwR/bpxc/5OUgHdRZjJgY6jJmVY4BCAiw0RXFoVRBbgE0Q== +expo-manifests@~0.14.0: + version "0.14.2" + resolved "https://registry.yarnpkg.com/expo-manifests/-/expo-manifests-0.14.2.tgz#431a235f21ca667ea8f8642819fbc414a8473174" + integrity sha512-hFrwIGr76/zGVhZ+vcjDZpOePd7uYNB6yCaiJcm7/bcrt2ne7cHyKQ8l+3n26/v1OuXfBfjxNH+PHIpkClszoQ== dependencies: - "@expo/config" "~8.5.0" - expo-json-utils "~0.12.0" + "@expo/config" "~9.0.0-beta.0" + expo-json-utils "~0.13.0" -expo-media-library@~15.9.1: - version "15.9.1" - resolved "https://registry.yarnpkg.com/expo-media-library/-/expo-media-library-15.9.1.tgz#1eaf5a0c8f51669f6f86d385a8fa411226042216" - integrity sha512-Y29uKFJ3qWwNejIrjoCppXp3OgIFs/RYHWXkF9xey6evpNrUlHoP1WHG2jYAMSrss6aIRVt3tO7EtYUCZxz50Q== +expo-media-library@~16.0.3: + version "16.0.3" + resolved "https://registry.yarnpkg.com/expo-media-library/-/expo-media-library-16.0.3.tgz#789277a827b9c04e59eef84aa11f4edcf5f1cfce" + integrity sha512-E++h+ZyVOXhGOKddeg/wjoEFH+JAGazcAsMpjAOT+/F69nrIEl27Fymi9XVAzooazp38dKrDBNeOJuWoXUdUAw== -expo-modules-autolinking@1.10.3: - version "1.10.3" - resolved "https://registry.yarnpkg.com/expo-modules-autolinking/-/expo-modules-autolinking-1.10.3.tgz#19f349884a90f3f27ec9d64e8f2fa6be609558c5" - integrity sha512-pn4n2Dl4iRh/zUeiChjRIe1C7EqOw1qhccr85viQV7W6l5vgRpY0osE51ij5LKg/kJmGRcJfs12+PwbdTplbKw== +expo-modules-autolinking@1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/expo-modules-autolinking/-/expo-modules-autolinking-1.11.1.tgz#4a867f727d9dfde07de8dde14b333a3cbf82ce3c" + integrity sha512-2dy3lTz76adOl7QUvbreMCrXyzUiF8lygI7iFJLjgIQIVH+43KnFWE5zBumpPbkiaq0f0uaFpN9U0RGQbnKiMw== dependencies: - "@expo/config" "~8.5.0" chalk "^4.1.0" commander "^7.2.0" fast-glob "^3.2.5" find-up "^5.0.0" fs-extra "^9.1.0" -expo-modules-core@1.11.13: - version "1.11.13" - resolved "https://registry.yarnpkg.com/expo-modules-core/-/expo-modules-core-1.11.13.tgz#a8e63ad844e966dce78dea40b50839af6c3bc518" - integrity sha512-2H5qrGUvmLzmJNPDOnovH1Pfk5H/S/V0BifBmOQyDc9aUh9LaDwkqnChZGIXv8ZHDW8JRlUW0QqyWxTggkbw1A== +expo-modules-core@1.12.11: + version "1.12.11" + resolved "https://registry.yarnpkg.com/expo-modules-core/-/expo-modules-core-1.12.11.tgz#71d7efb2f6a2a4d3b96defad52fc799b9804f829" + integrity sha512-CF5G6hZo/6uIUz6tj4dNRlvE5L4lakYukXPqz5ZHQ+6fLk1NQVZbRdpHjMkxO/QSBQcKUzG/ngeytpoJus7poQ== dependencies: invariant "^2.2.4" -expo-navigation-bar@~2.8.1: - version "2.8.1" - resolved "https://registry.yarnpkg.com/expo-navigation-bar/-/expo-navigation-bar-2.8.1.tgz#c4152f878d9fb6ca74c90b80e934af76c29b5377" - integrity sha512-aT5G+7SUsXDVPsRwp8fF940ycka1ABb4g3QKvTZN3YP6kMWvsiYEmRqMIJVy0zUr/i6bxBG1ZergkXimWrFt3w== +expo-navigation-bar@~3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/expo-navigation-bar/-/expo-navigation-bar-3.0.4.tgz#c122194f720f0fb03430fa8a34c15980fc0a169f" + integrity sha512-hlnYnoFX3L1hHZxcnTVwAQW3AM5xf3clWYjqB2UMSIfTxCaE2PU8aHtAztLBQANrQhEvnbiwNcrkzfnWU2WWCQ== dependencies: - "@react-native/normalize-color" "^2.0.0" + "@react-native/normalize-colors" "~0.74.83" debug "^4.3.2" -expo-notifications@~0.27.6: - version "0.27.6" - resolved "https://registry.yarnpkg.com/expo-notifications/-/expo-notifications-0.27.6.tgz#ef7c95504034ac8b5fa360e13f5b037c5bf7e80d" - integrity sha512-F2iu/lzsrvfMyHA5BfnbZfE8fVLV8aQmNLk3NPztZ0g7911QEriZzH7BK/NKOZ5UHhJYI+hhYvcZCq2nFm1NLA== +expo-notifications@~0.28.3: + version "0.28.3" + resolved "https://registry.yarnpkg.com/expo-notifications/-/expo-notifications-0.28.3.tgz#9076c2bd69c3de3338a2e2161c8bd5f18cb440cb" + integrity sha512-Xaj82eQUJzJXa8+giZr708ih86GGtkGS8N01epoiDkTKC8Z9783UJ8Pf8+PSFSfHsY3Sd8TJpQrD9n7QnGHwGQ== dependencies: - "@expo/image-utils" "^0.4.0" + "@expo/image-utils" "^0.5.0" "@ide/backoff" "^1.0.0" abort-controller "^3.0.0" assert "^2.0.0" badgin "^1.1.5" - expo-application "~5.8.0" - expo-constants "~15.4.0" + expo-application "~5.9.0" + expo-constants "~16.0.0" fs-extra "^9.1.0" expo-pwa@0.0.127: @@ -12066,91 +12280,92 @@ expo-pwa@0.0.127: commander "2.20.0" update-check "1.5.3" -expo-sharing@^11.10.0: - version "11.10.0" - resolved "https://registry.yarnpkg.com/expo-sharing/-/expo-sharing-11.10.0.tgz#0e85197ee4d2634b00fe201e571fbdc64cf83eef" - integrity sha512-/64RyyKlZ25WfnMXa87HbPXhIIqWwNbIku/RaIYAq4SE0XTRC+KTH3v0XFkfDa+SCG/jKsAr1pJ3vQvsNo1sCQ== +expo-sharing@^12.0.1: + version "12.0.1" + resolved "https://registry.yarnpkg.com/expo-sharing/-/expo-sharing-12.0.1.tgz#6c4d951beda47dac47112e679d60fc06c233b7aa" + integrity sha512-wBT+WeXwapj/9NWuLJO01vi9bdlchYu/Q/xD8slL/Ls4vVYku8CPqzkTtDFcjLrjtlJqyeHsdQXwKLvORmBIew== -expo-splash-screen@~0.26.4: - version "0.26.4" - resolved "https://registry.yarnpkg.com/expo-splash-screen/-/expo-splash-screen-0.26.4.tgz#bc1fb226c6eae03ee351a3ebe5521a37f868cbc7" - integrity sha512-2DwofTQ0FFQCsvDysm/msENsbyNsJiAJwK3qK/oXeizECAPqD7bK19J4z9kuEbr7ORPX9MLnTQYKl6kmX3keUg== +expo-splash-screen@~0.27.4: + version "0.27.4" + resolved "https://registry.yarnpkg.com/expo-splash-screen/-/expo-splash-screen-0.27.4.tgz#d7a86a2a1a87824ed47388aa8836e91b61268c62" + integrity sha512-JwepK1FjbwiOK2nwIFanfzj9s7UXYnpTwLX8A9v7Ec3K4V28yu8HooSc9X60cftBw9UZrs8Gwj4PgTpQabBS9A== dependencies: - "@expo/prebuild-config" "6.7.4" + "@expo/prebuild-config" "7.0.3" -expo-status-bar@~1.11.1: - version "1.11.1" - resolved "https://registry.yarnpkg.com/expo-status-bar/-/expo-status-bar-1.11.1.tgz#a11318741d361048c11db2b16c4364a79a74af30" - integrity sha512-ddQEtCOgYHTLlFUe/yH67dDBIoct5VIULthyT3LRJbEwdpzAgueKsX2FYK02ldh440V87PWKCamh7R9evk1rrg== +expo-status-bar@~1.12.1: + version "1.12.1" + resolved "https://registry.yarnpkg.com/expo-status-bar/-/expo-status-bar-1.12.1.tgz#52ce594aab5064a0511d14375364d718ab78aa66" + integrity sha512-/t3xdbS8KB0prj5KG5w7z+wZPFlPtkgs95BsmrP/E7Q0xHXTcDcQ6Cu2FkFuRM+PKTb17cJDnLkawyS5vDLxMA== -expo-structured-headers@~3.7.0: - version "3.7.0" - resolved "https://registry.yarnpkg.com/expo-structured-headers/-/expo-structured-headers-3.7.0.tgz#69b752cf43515535eccd30513da428688634a7ec" - integrity sha512-uGcU65gzP4trfmVtntAg3rU/pytTGpCUXN+hQmCwCCvQb9qK1aoCXvVlqlW5zP8SZ04tzF1WXKR+P8RSEn5rSw== +expo-structured-headers@~3.8.0: + version "3.8.0" + resolved "https://registry.yarnpkg.com/expo-structured-headers/-/expo-structured-headers-3.8.0.tgz#11797a4c3a7a6770b21126cecffcda148030e361" + integrity sha512-R+gFGn0x5CWl4OVlk2j1bJTJIz4KO8mPoCHpRHmfqMjmrMvrOM0qQSY3V5NHXwp1yT/L2v8aUmFQsBRIdvi1XA== -expo-system-ui@~2.9.3: - version "2.9.3" - resolved "https://registry.yarnpkg.com/expo-system-ui/-/expo-system-ui-2.9.3.tgz#845c7615a6ede9d959dff1719df3d9392a43c080" - integrity sha512-RNFNBLJ9lhnjOGrHhtfDc15Ry/lF+SA4kwulmHzYGqaTeYvsL9q0K0+m9qmxuDdrbKJkuurvzvjVylDNnKNFVg== +expo-system-ui@~3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/expo-system-ui/-/expo-system-ui-3.0.4.tgz#5ace49d38eb03c09a8041b3b82c581a6b974741a" + integrity sha512-v1n6hBO30k9qw6RE8/au4yNoovs71ExGuXizJUlR5KSo4Ruogpb+0/2q3uRZMDIYWWCANvms8L0UOh6fQJ5TXg== dependencies: - "@react-native/normalize-color" "^2.0.0" + "@react-native/normalize-colors" "~0.74.83" debug "^4.3.2" -expo-task-manager@~11.7.2: - version "11.7.2" - resolved "https://registry.yarnpkg.com/expo-task-manager/-/expo-task-manager-11.7.2.tgz#db09ee5ed4adf1ea586c131a60196cb387a7eb4a" - integrity sha512-cmn7xg8+mGP7gX6deYZhvrCkKMkoBRJ+E4o5aL17Z/4ihXMfo/PFcQsrpuSYRLXzgidEw0kpppxhmYm21Jswwg== +expo-task-manager@~11.8.1: + version "11.8.1" + resolved "https://registry.yarnpkg.com/expo-task-manager/-/expo-task-manager-11.8.1.tgz#33089e78ee3fbd83327fb403bce12d69baf7d21b" + integrity sha512-oGOUI8Cz9us1xFvWFftbMEvFGOIFYLa2xVguSGL7G+6ys0f+ozlkgT42KgG5qSwtDoqQ6+LMh9TJLLJUg1sVZw== dependencies: - unimodules-app-loader "~4.5.0" + unimodules-app-loader "~4.6.0" -expo-updates-interface@~0.15.1: - version "0.15.1" - resolved "https://registry.yarnpkg.com/expo-updates-interface/-/expo-updates-interface-0.15.1.tgz#b0242fa7ba05768ada2f0faf83b90aa8b8fa65d7" - integrity sha512-B42oOB0pw4TaPoOGE/yzt9ggwNNxo3PEJRU0kIOurQ8hW5UEUC8cAbGQDYWGbTyNGp8gLBG+T2MCg+YYaCYJUw== +expo-updates-interface@~0.16.2: + version "0.16.2" + resolved "https://registry.yarnpkg.com/expo-updates-interface/-/expo-updates-interface-0.16.2.tgz#ad1ac2ca8ee5a8cc84052ea3c18a11da64da569b" + integrity sha512-929XBU70q5ELxkKADj1xL0UIm3HvhYhNAOZv5DSk7rrKvLo7QDdPyl+JVnwZm9LrkNbH4wuE2rLoKu1KMgZ+9A== -expo-updates@~0.24.10: - version "0.24.12" - resolved "https://registry.yarnpkg.com/expo-updates/-/expo-updates-0.24.12.tgz#17a708f52f999d0a7dcbf3d4401b5a481ab12730" - integrity sha512-35ZpAMSqHIyVGT5mEptaZJBxytu0mv4PIG28i3BQe+GG4ifQtY94aCOCrUwZe8Myzaf4dNVGEUXWTPo+JPCgcw== +expo-updates@~0.25.14: + version "0.25.14" + resolved "https://registry.yarnpkg.com/expo-updates/-/expo-updates-0.25.14.tgz#d0838780d0fa91558df72ca0f8b25b02466da11c" + integrity sha512-taYa6Q/882MxPaMZEoU0Tr4Ivtq0B0XUmCgj7GcKv0pDDhB7vuQ4uxXhWYn5udX+nJM0KH+dtEVFNVyeucVArg== dependencies: "@expo/code-signing-certificates" "0.0.5" - "@expo/config" "~8.5.0" - "@expo/config-plugins" "~7.8.0" + "@expo/config" "~9.0.0" + "@expo/config-plugins" "~8.0.0" + "@expo/fingerprint" "^0.8.0" + "@expo/spawn-async" "^1.7.2" arg "4.1.0" chalk "^4.1.2" - expo-eas-client "~0.11.0" - expo-manifests "~0.13.0" - expo-structured-headers "~3.7.0" - expo-updates-interface "~0.15.1" + expo-eas-client "~0.12.0" + expo-manifests "~0.14.0" + expo-structured-headers "~3.8.0" + expo-updates-interface "~0.16.2" + fast-glob "^3.3.2" fbemitter "^3.0.0" + ignore "^5.3.1" resolve-from "^5.0.0" -expo-web-browser@~12.8.2: - version "12.8.2" - resolved "https://registry.yarnpkg.com/expo-web-browser/-/expo-web-browser-12.8.2.tgz#f34fb85c80031e0dddd4f9b9efd03cb60333b089" - integrity sha512-Mw8WoFMSADecNjtC4PZVsVj1/lYdxIAH1jOVV+F8v8SEWYxORWofoShfXg7oUxRLu0iUG8JETfO5y4m8+fOgdg== - dependencies: - compare-urls "^2.0.0" - url "^0.11.0" +expo-web-browser@~13.0.3: + version "13.0.3" + resolved "https://registry.yarnpkg.com/expo-web-browser/-/expo-web-browser-13.0.3.tgz#dceb05dbc187b498ca937b02adf385b0232a4e92" + integrity sha512-HXb7y82ApVJtqk8tManyudtTrCtx8xcUnVzmJECeHCB0SsWSQ+penVLZxJkcyATWoJOsFMnfVSVdrTcpKKGszQ== -expo@^50.0.17: - version "50.0.17" - resolved "https://registry.yarnpkg.com/expo/-/expo-50.0.17.tgz#ab0998d7e7c18e8d12efd9091f9688978b0e89ed" - integrity sha512-eD8Nh10BgVwecU7EVyogx7X314ajxVpJdFwkXhi341AD61S2WPX31NMHW82XGXas6dbDjdbgtaOMo5H/vylB7Q== +expo@^51.0.8: + version "51.0.8" + resolved "https://registry.yarnpkg.com/expo/-/expo-51.0.8.tgz#a7981e86ee20eac4b847c7c8cc5799d9c6b1508d" + integrity sha512-bdTOiMb1f3PChtuqEZ9czUm2gMTmS0r1+H+Pkm2O3PsuLnOgxfIBzL6S37+J4cUocLBaENrmx9SOGKpzhBqXpg== dependencies: "@babel/runtime" "^7.20.0" - "@expo/cli" "0.17.10" - "@expo/config" "8.5.6" - "@expo/config-plugins" "7.9.1" - "@expo/metro-config" "0.17.7" + "@expo/cli" "0.18.13" + "@expo/config" "9.0.2" + "@expo/config-plugins" "8.0.4" + "@expo/metro-config" "0.18.4" "@expo/vector-icons" "^14.0.0" - babel-preset-expo "~10.0.2" - expo-asset "~9.0.2" - expo-file-system "~16.0.9" - expo-font "~11.10.3" - expo-keep-awake "~12.8.2" - expo-modules-autolinking "1.10.3" - expo-modules-core "1.11.13" + babel-preset-expo "~11.0.6" + expo-asset "~10.0.6" + expo-file-system "~17.0.1" + expo-font "~12.0.5" + expo-keep-awake "~13.0.2" + expo-modules-autolinking "1.11.1" + expo-modules-core "1.12.11" fbemitter "^3.0.0" whatwg-url-without-unicode "8.0.0-3" @@ -12236,6 +12451,17 @@ fast-glob@^3.2.12, fast-glob@^3.2.5, fast-glob@^3.2.7, fast-glob@^3.2.9: merge2 "^1.3.0" micromatch "^4.0.4" +fast-glob@^3.3.2: + version "3.3.2" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.3.2.tgz#a904501e57cfdd2ffcded45e99a54fef55e46129" + integrity sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" @@ -12528,11 +12754,6 @@ flat-cache@^3.0.4: flatted "^3.1.0" rimraf "^3.0.2" -flat@^5.0.2: - version "5.0.2" - resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241" - integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ== - flatted@^3.1.0: version "3.2.7" resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" @@ -12548,11 +12769,6 @@ flow-parser@0.*: resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.215.0.tgz#9b153fa27ab238bcc0bb1ff73b63bdb15d3f277d" integrity sha512-8bjwzy8vi+fNDy8YoTBNtQUSZa53i7UWJJTunJojOtjab9cMNhOCwohionuMgDQUU0y21QTTtPOX6OQEOQT72A== -flow-parser@^0.206.0: - version "0.206.0" - resolved "https://registry.yarnpkg.com/flow-parser/-/flow-parser-0.206.0.tgz#f4f794f8026535278393308e01ea72f31000bfef" - integrity sha512-HVzoK3r6Vsg+lKvlIZzaWNBVai+FXTX1wdYhz/wVlH13tb/gOdLXmlTqy6odmTBhT5UoWUbq0k8263Qhr9d88w== - follow-redirects@^1.0.0, follow-redirects@^1.14.9, follow-redirects@^1.15.0: version "1.15.2" resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" @@ -12664,15 +12880,6 @@ fs-extra@^10.0.0: jsonfile "^6.0.1" universalify "^2.0.0" -fs-extra@^11.0.0: - version "11.1.1" - resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-11.1.1.tgz#da69f7c39f3b002378b0954bb6ae7efdc0876e2d" - integrity sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ== - dependencies: - graceful-fs "^4.2.0" - jsonfile "^6.0.1" - universalify "^2.0.0" - fs-extra@^8.1.0, fs-extra@~8.1.0: version "8.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" @@ -12699,6 +12906,13 @@ fs-minipass@^2.0.0: dependencies: minipass "^3.0.0" +fs-minipass@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-3.0.3.tgz#79a85981c4dc120065e96f62086bf6f9dc26cc54" + integrity sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw== + dependencies: + minipass "^7.0.3" + fs-monkey@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/fs-monkey/-/fs-monkey-1.0.4.tgz#ee8c1b53d3fe8bb7e5d2c5c5dfc0168afdd2f747" @@ -12744,11 +12958,6 @@ functions-have-names@^1.2.2, functions-have-names@^1.2.3: resolved "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz#0404fe4ee2ba2f607f0e0ec3c80bae994133b834" integrity sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ== -funpermaproxy@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/funpermaproxy/-/funpermaproxy-1.1.0.tgz#39cb0b8bea908051e4608d8a414f1d87b55bf557" - integrity sha512-2Sp1hWuO8m5fqeFDusyhKqYPT+7rGLw34N3qonDcdRP8+n7M7Gl/yKp/q7oCxnnJ6pWCectOmLFJpsMU/++KrQ== - gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" @@ -12867,6 +13076,17 @@ glob@7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" +glob@^10.2.2: + version "10.4.1" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.4.1.tgz#0cfb01ab6a6b438177bfe6a58e2576f6efe909c2" + integrity sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw== + dependencies: + foreground-child "^3.1.0" + jackspeak "^3.1.2" + minimatch "^9.0.4" + minipass "^7.1.2" + path-scurry "^1.11.1" + glob@^10.3.10: version "10.3.12" resolved "https://registry.yarnpkg.com/glob/-/glob-10.3.12.tgz#3a65c363c2e9998d220338e88a5f6ac97302960b" @@ -13099,22 +13319,20 @@ he@1.2.0, he@^1.2.0: resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== -hermes-estree@0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.15.0.tgz#e32f6210ab18c7b705bdcb375f7700f2db15d6ba" - integrity sha512-lLYvAd+6BnOqWdnNbP/Q8xfl8LOGw4wVjfrNd9Gt8eoFzhNBRVD95n4l2ksfMVOoxuVyegs85g83KS9QOsxbVQ== - hermes-estree@0.18.2: version "0.18.2" resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.18.2.tgz#fd450fa1659cf074ceaa2ddeeb21674f3b2342f3" integrity sha512-KoLsoWXJ5o81nit1wSyEZnWUGy9cBna9iYMZBR7skKh7okYAYKqQ9/OczwpMHn/cH0hKDyblulGsJ7FknlfVxQ== -hermes-parser@0.15.0: - version "0.15.0" - resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.15.0.tgz#f611a297c2a2dbbfbce8af8543242254f604c382" - integrity sha512-Q1uks5rjZlE9RjMMjSUCkGrEIPI5pKJILeCtK1VmTj7U4pf3wVPoo+cxfu+s4cBAPy2JzikIIdCZgBoR6x7U1Q== - dependencies: - hermes-estree "0.15.0" +hermes-estree@0.19.1: + version "0.19.1" + resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.19.1.tgz#d5924f5fac2bf0532547ae9f506d6db8f3c96392" + integrity sha512-daLGV3Q2MKk8w4evNMKwS8zBE/rcpA800nu1Q5kM08IKijoSnPe9Uo1iIxzPKRkn95IxxsgBMPeYHt3VG4ej2g== + +hermes-estree@0.20.1: + version "0.20.1" + resolved "https://registry.yarnpkg.com/hermes-estree/-/hermes-estree-0.20.1.tgz#0b9a544cf883a779a8e1444b915fa365bef7f72d" + integrity sha512-SQpZK4BzR48kuOg0v4pb3EAGNclzIlqMj3Opu/mu7bbAoFw6oig6cEt/RAi0zTFW/iW6Iz9X9ggGuZTAZ/yZHg== hermes-parser@0.18.2: version "0.18.2" @@ -13123,6 +13341,20 @@ hermes-parser@0.18.2: dependencies: hermes-estree "0.18.2" +hermes-parser@0.19.1: + version "0.19.1" + resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.19.1.tgz#1044348097165b7c93dc198a80b04ed5130d6b1a" + integrity sha512-Vp+bXzxYJWrpEuJ/vXxUsLnt0+y4q9zyi4zUlkLqD8FKv4LjIfOvP69R/9Lty3dCyKh0E2BU7Eypqr63/rKT/A== + dependencies: + hermes-estree "0.19.1" + +hermes-parser@^0.20.1: + version "0.20.1" + resolved "https://registry.yarnpkg.com/hermes-parser/-/hermes-parser-0.20.1.tgz#ad10597b99f718b91e283f81cbe636c50c3cff92" + integrity sha512-BL5P83cwCogI8D7rrDCgsFY0tdYUtmFP9XaXtl2IQjC+2Xo+4okjfXintlTxcIwl4qeGddEl28Z11kbVIw0aNA== + dependencies: + hermes-estree "0.20.1" + hermes-profile-transformer@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/hermes-profile-transformer/-/hermes-profile-transformer-0.0.6.tgz#bd0f5ecceda80dd0ddaae443469ab26fb38fc27b" @@ -13233,6 +13465,14 @@ html-webpack-plugin@^5.5.0: pretty-error "^4.0.0" tapable "^2.0.0" +html2canvas@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/html2canvas/-/html2canvas-1.4.1.tgz#7cef1888311b5011d507794a066041b14669a543" + integrity sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA== + dependencies: + css-line-break "^2.1.0" + text-segmentation "^1.0.3" + htmlparser2@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" @@ -13396,6 +13636,11 @@ ignore@^5.0.5, ignore@^5.1.9, ignore@^5.2.0: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" integrity sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ== +ignore@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.3.1.tgz#5073e554cd42c5b33b394375f538b8593e34d4ef" + integrity sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw== + image-size@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/image-size/-/image-size-1.0.2.tgz#d778b6d0ab75b2737c1556dd631652eb963bc486" @@ -13447,11 +13692,6 @@ indent-string@^4.0.0: resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== -infer-owner@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" - integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -13470,7 +13710,7 @@ inherits@2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" integrity sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw== -ini@^1.3.4, ini@^1.3.5, ini@~1.3.0: +ini@^1.3.5, ini@~1.3.0: version "1.3.8" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== @@ -13551,11 +13791,6 @@ ip-regex@^2.1.0: resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" integrity sha512-58yWmlHpp7VYfcdTwMTvwMmqx/Elfxjd9RXTDyMsbL7lLWmhMylLEqiYVLKuLzOZqVgiWXD9MfR62Vv89VRxkw== -ip@^1.1.5: - version "1.1.8" - resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.8.tgz#ae05948f6b075435ed3307acce04629da8cdbf48" - integrity sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg== - ipaddr.js@1.9.1, ipaddr.js@^1.9.0: version "1.9.1" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" @@ -13811,11 +14046,6 @@ is-path-inside@^3.0.2, is-path-inside@^3.0.3: resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== -is-plain-obj@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" - integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== - is-plain-obj@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" @@ -14056,6 +14286,15 @@ jackspeak@^2.3.6: optionalDependencies: "@pkgjs/parseargs" "^0.11.0" +jackspeak@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.1.2.tgz#eada67ea949c6b71de50f1b09c92a961897b90ab" + integrity sha512-kWmLKn2tRtfYMF/BakihVVRzBKOxz4gJMiL2Rj91WnAB5TPZumSH99R/Yf1qE1u4uRimvCSJfm6hnxohXeEXjQ== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + jake@^10.8.5: version "10.8.7" resolved "https://registry.yarnpkg.com/jake/-/jake-10.8.7.tgz#63a32821177940c33f356e0ba44ff9d34e1c7d8f" @@ -14294,20 +14533,6 @@ jest-each@^29.7.0: jest-util "^29.7.0" pretty-format "^29.7.0" -jest-environment-emit@^1.0.5: - version "1.0.5" - resolved "https://registry.yarnpkg.com/jest-environment-emit/-/jest-environment-emit-1.0.5.tgz#e6f33451f98b88ccd48e9e1188bb535880f03c1b" - integrity sha512-OsQ08AhYxkkyDBTIow+9ogNmJheQIGWQKp0Nku+1ToLWjAj2Pd6LmypN8HgUIqYHs4HFcqkQ25kaf1qExmoZpg== - dependencies: - bunyamin "^1.5.0" - bunyan "^2.0.5" - bunyan-debug-stream "^3.1.0" - funpermaproxy "^1.1.0" - lodash.merge "^4.6.2" - node-ipc "9.2.1" - strip-ansi "^6.0.0" - tslib "^2.5.3" - jest-environment-jsdom@^27.5.1: version "27.5.1" resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-27.5.1.tgz#ea9ccd1fc610209655a77898f86b2b559516a546" @@ -15148,18 +15373,6 @@ js-cookie@3.0.1: resolved "https://registry.yarnpkg.com/js-cookie/-/js-cookie-3.0.1.tgz#9e39b4c6c2f56563708d7d31f6f5f21873a92414" integrity sha512-+0rgsUXZu4ncpPxRL+lNEptWMOWl9etvPHc/koSRp6MPwpRYAhmk0dUG00J4bxVV3r9uUzfo24wW0knS07SKSw== -js-message@1.0.7: - version "1.0.7" - resolved "https://registry.yarnpkg.com/js-message/-/js-message-1.0.7.tgz#fbddd053c7a47021871bb8b2c95397cc17c20e47" - integrity sha512-efJLHhLjIyKRewNS9EGZ4UpI8NguuL6fKkhRxVuMmrGV2xN/0APGdQYwLFky5w9naebSZ0OwAGp0G6/2Cg90rA== - -js-queue@2.0.2: - version "2.0.2" - resolved "https://registry.yarnpkg.com/js-queue/-/js-queue-2.0.2.tgz#0be590338f903b36c73d33c31883a821412cd482" - integrity sha512-pbKLsbCfi7kriM3s1J4DDCo7jQkI58zPLHi0heXPzPlj0hjUsm+FesPUbE0DSbIVIK503A36aUBoCN7eMFedkA== - dependencies: - easy-stack "^1.0.1" - js-sha256@^0.10.1: version "0.10.1" resolved "https://registry.yarnpkg.com/js-sha256/-/js-sha256-0.10.1.tgz#b40104ba1368e823fdd5f41b66b104b15a0da60d" @@ -15300,11 +15513,6 @@ jsesc@~0.5.0: resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" integrity sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA== -json-cycle@^1.3.0: - version "1.5.0" - resolved "https://registry.yarnpkg.com/json-cycle/-/json-cycle-1.5.0.tgz#b1f1d976eee16cef51d5f3d3b3caece3e90ba23a" - integrity sha512-GOehvd5PO2FeZ5T4c+RxobeT5a1PiGpF4u9/3+UvrMU4bhnVqzJY7hm39wg8PDCqkU91fWGH8qjWR4bn+wgq9w== - json-parse-better-errors@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" @@ -15680,6 +15888,11 @@ lodash.isequal@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" integrity sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ== +lodash.isobject@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/lodash.isobject/-/lodash.isobject-3.0.2.tgz#3c8fb8d5b5bf4bf90ae06e14f2a530a4ed935e1d" + integrity sha512-3/Qptq2vr7WeJbB4KHUSKlq8Pl7ASXi3UG6CMbBm8WRtXi8+GHm7mKaU3urfpSEzWe2wCIChs6/sdocUsTKJiA== + lodash.memoize@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" @@ -15735,7 +15948,7 @@ lodash.uniq@^4.5.0: resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ== -lodash@^4.17.11, lodash@^4.17.13, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.17.4, lodash@^4.7.0: +lodash@^4.17.10, lodash@^4.17.13, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.21, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -15789,19 +16002,16 @@ lower-case@^2.0.2: dependencies: tslib "^2.0.3" +lru-cache@^10.0.1: + version "10.2.2" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.2.tgz#48206bc114c1252940c41b25b41af5b545aca878" + integrity sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ== + lru-cache@^10.2.0: version "10.2.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.2.0.tgz#0bd445ca57363465900f4d1f9bd8db343a4d95c3" integrity sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q== -lru-cache@^4.0.1: - version "4.1.5" - resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" - integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== - dependencies: - pseudomap "^1.0.2" - yallist "^2.1.2" - lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -16047,16 +16257,17 @@ metro-minify-terser@0.80.4: dependencies: terser "^5.15.0" -metro-react-native-babel-preset@^0.73.7: - version "0.73.10" - resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.73.10.tgz#304b24bb391537d2c987732cc0a9774be227d3f6" - integrity sha512-1/dnH4EHwFb2RKEKx34vVDpUS3urt2WEeR8FYim+ogqALg4sTpG7yeQPxWpbgKATezt4rNfqAANpIyH19MS4BQ== +metro-react-native-babel-preset@^0.74.1: + version "0.74.1" + resolved "https://registry.yarnpkg.com/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.74.1.tgz#81c1c30f13f543c5848049e46e1afbc81df87de6" + integrity sha512-DjsG9nqm5C7cjB2SlgbcNJOn9y5MBUd3bRlCfnoj8CxAeGTGkS+yXd183lHR3C1bhmQNjuUE0abzzpE1CFh6JQ== dependencies: "@babel/core" "^7.20.0" "@babel/plugin-proposal-async-generator-functions" "^7.0.0" "@babel/plugin-proposal-class-properties" "^7.0.0" "@babel/plugin-proposal-export-default-from" "^7.0.0" "@babel/plugin-proposal-nullish-coalescing-operator" "^7.0.0" + "@babel/plugin-proposal-numeric-separator" "^7.0.0" "@babel/plugin-proposal-object-rest-spread" "^7.0.0" "@babel/plugin-proposal-optional-catch-binding" "^7.0.0" "@babel/plugin-proposal-optional-chaining" "^7.0.0" @@ -16085,7 +16296,6 @@ metro-react-native-babel-preset@^0.73.7: "@babel/plugin-transform-shorthand-properties" "^7.0.0" "@babel/plugin-transform-spread" "^7.0.0" "@babel/plugin-transform-sticky-regex" "^7.0.0" - "@babel/plugin-transform-template-literals" "^7.0.0" "@babel/plugin-transform-typescript" "^7.5.0" "@babel/plugin-transform-unicode-regex" "^7.0.0" "@babel/template" "^7.0.0" @@ -16301,7 +16511,7 @@ minimatch@^5.0.1: dependencies: brace-expansion "^2.0.1" -minimatch@^9.0.1: +minimatch@^9.0.1, minimatch@^9.0.4: version "9.0.4" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.4.tgz#8e49c731d1749cbec05050ee5145147b32496a51" integrity sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw== @@ -16313,12 +16523,12 @@ minimist@^1.2.0, minimist@^1.2.3, minimist@^1.2.5, minimist@^1.2.6: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== -minipass-collect@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" - integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== +minipass-collect@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-2.0.1.tgz#1621bc77e12258a12c60d34e2276ec5c20680863" + integrity sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw== dependencies: - minipass "^3.0.0" + minipass "^7.0.3" minipass-flush@^1.0.5: version "1.0.5" @@ -16327,14 +16537,14 @@ minipass-flush@^1.0.5: dependencies: minipass "^3.0.0" -minipass-pipeline@^1.2.2: +minipass-pipeline@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== dependencies: minipass "^3.0.0" -minipass@3.3.6, minipass@^3.0.0, minipass@^3.1.1: +minipass@^3.0.0: version "3.3.6" resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== @@ -16351,6 +16561,11 @@ minipass@^5.0.0: resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.0.4.tgz#dbce03740f50a4786ba994c1fb908844d27b038c" integrity sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ== +minipass@^7.0.3, minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + minizlib@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" @@ -16391,11 +16606,6 @@ mobx@^6.6.1: resolved "https://registry.yarnpkg.com/mobx/-/mobx-6.10.0.tgz#3537680fe98d45232cc19cc8f76280bd8bb6b0b7" integrity sha512-WMbVpCMFtolbB8swQ5E2YRrU+Yu8iLozCVx3CdGjbBKlP7dFiCSuiG06uea3JCFN5DnvtAX7+G5Bp82e2xu0ww== -moment@^2.19.3: - version "2.29.4" - resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.4.tgz#3dbe052889fe7c1b2ed966fcb3a77328964ef108" - integrity sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w== - moo@^0.5.1: version "0.5.2" resolved "https://registry.yarnpkg.com/moo/-/moo-0.5.2.tgz#f9fe82473bc7c184b0d32e2215d3f6e67278733c" @@ -16421,11 +16631,6 @@ ms@2.1.3, ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -multi-sort-stream@^1.0.3, multi-sort-stream@^1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/multi-sort-stream/-/multi-sort-stream-1.0.4.tgz#e4348edc9edc36e16333e531a90c0f166235cc99" - integrity sha512-hAZ8JOEQFbgdLe8HWZbb7gdZg0/yAIHF00Qfo3kd0rXFv96nXe+/bPTrKHZ2QMHugGX4FiAyET1Lt+jiB+7Qlg== - multicast-dns@^7.2.5: version "7.2.5" resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-7.2.5.tgz#77eb46057f4d7adbd16d9290fa7299f6fa64cced" @@ -16439,14 +16644,6 @@ multiformats@^9.4.2, multiformats@^9.5.4, multiformats@^9.6.4, multiformats@^9.9 resolved "https://registry.yarnpkg.com/multiformats/-/multiformats-9.9.0.tgz#c68354e7d21037a8f1f8833c8ccd68618e8f1d37" integrity sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg== -multipipe@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-4.0.0.tgz#d302554ae664c1157dbfd1e8f98f03c517b3948a" - integrity sha512-jzcEAzFXoWwWwUbvHCNPwBlTz3WCWe/jPcXSmTfbo/VjRwRTfvLZ/bdvtiTdqCe8d4otCSsPCbhGYcX+eggpKQ== - dependencies: - duplexer2 "^0.1.2" - object-assign "^4.1.0" - mute-stream@0.0.8: version "0.0.8" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" @@ -16470,11 +16667,6 @@ mz@^2.7.0: object-assign "^4.0.1" thenify-all "^1.0.0" -nan@^2.14.0: - version "2.17.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.17.0.tgz#c0150a2368a182f033e9aa5195ec76ea41a199cb" - integrity sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ== - nanoid@^3.1.23, nanoid@^3.3.1, nanoid@^3.3.6: version "3.3.6" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" @@ -16604,30 +16796,21 @@ node-int64@^0.4.0: resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== -node-ipc@9.2.1: - version "9.2.1" - resolved "https://registry.yarnpkg.com/node-ipc/-/node-ipc-9.2.1.tgz#b32f66115f9d6ce841dc4ec2009d6a733f98bb6b" - integrity sha512-mJzaM6O3xHf9VT8BULvJSbdVbmHUKRNOH7zDDkCrA1/T+CVjq2WVIDfLt0azZRXpgArJtl3rtmEozrbXPZ9GaQ== - dependencies: - event-pubsub "4.3.0" - js-message "1.0.7" - js-queue "2.0.2" - node-releases@^2.0.13: version "2.0.13" resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== +node-releases@^2.0.14: + version "2.0.14" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.14.tgz#2ffb053bceb8b2be8495ece1ab6ce600c4461b0b" + integrity sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw== + node-stream-zip@^1.9.1: version "1.15.0" resolved "https://registry.yarnpkg.com/node-stream-zip/-/node-stream-zip-1.15.0.tgz#158adb88ed8004c6c49a396b50a6a5de3bca33ea" integrity sha512-LN4fydt9TqhZhThkZIVQnF9cwjU3qmUH9h78Mx/K7d3VvfRqqwthLwJEUOEL0QPZ0XQmNN7be5Ggit5+4dq3Bw== -node-version@^1.0.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/node-version/-/node-version-1.2.0.tgz#34fde3ffa8e1149bd323983479dda620e1b5060d" - integrity sha512-ma6oU4Sk0qOoKEAymVoTvk8EdXEobdS7m/mAGhDJ8Rouugho48crHBORAmy5BoOcv8wraPM6xumapQp5hl4iIQ== - nodemailer-html-to-text@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/nodemailer-html-to-text/-/nodemailer-html-to-text-3.2.0.tgz#91b959491fef8f7d91796047abb728aa86d4a12b" @@ -16650,15 +16833,6 @@ normalize-range@^0.1.2: resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" integrity sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA== -normalize-url@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-2.0.1.tgz#835a9da1551fa26f70e92329069a23aa6574d7e6" - integrity sha512-D6MUW4K/VzoJ4rJ01JFKxDrtY1v9wrgzCX5f2qj/lzH1m/lW6MhUZFKerVsnyjOhOsYzI9Kqqak+10l4LvLpMw== - dependencies: - prepend-http "^2.0.0" - query-string "^5.0.1" - sort-keys "^2.0.0" - normalize-url@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" @@ -16945,7 +17119,7 @@ optionator@^0.9.3: prelude-ls "^1.2.1" type-check "^0.4.0" -ora@3.4.0: +ora@3.4.0, ora@^3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/ora/-/ora-3.4.0.tgz#bf0752491059a3ef3ed4c85097531de9fdbcd318" integrity sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg== @@ -17247,6 +17421,14 @@ path-scurry@^1.10.2: lru-cache "^10.2.0" minipass "^5.0.0 || ^6.0.2 || ^7.0.0" +path-scurry@^1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-to-regexp@0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" @@ -17340,6 +17522,11 @@ picocolors@^1.0.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== +picocolors@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.1.tgz#a8ad579b571952f0e5d25892de5445bcfe25aaa1" + integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== + picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1, picomatch@^2.2.2, picomatch@^2.2.3, picomatch@^2.3.1: version "2.3.1" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" @@ -18046,15 +18233,6 @@ postcss@^8.3.5, postcss@^8.4.21, postcss@^8.4.23, postcss@^8.4.4: picocolors "^1.0.0" source-map-js "^1.0.2" -postcss@~8.4.21: - version "8.4.29" - resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.29.tgz#33bc121cf3b3688d4ddef50be869b2a54185a1dd" - integrity sha512-cbI+jaqIeu/VGqXEarWkRCCffhjgXc0qjBtXpqJhTBohMUjUQnbBr0xqX3vEKudc4iviTewcJo5ajcec5+wdJw== - dependencies: - nanoid "^3.3.6" - picocolors "^1.0.0" - source-map-js "^1.0.2" - postcss@~8.4.32: version "8.4.38" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.38.tgz#b387d533baf2054288e337066d81c6bee9db9e0e" @@ -18114,11 +18292,6 @@ prelude-ls@^1.2.1: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== -prepend-http@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" - integrity sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA== - prettier-linter-helpers@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" @@ -18144,6 +18317,16 @@ pretty-error@^4.0.0: lodash "^4.17.20" renderkid "^3.0.0" +pretty-format@^24: + version "24.9.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-24.9.0.tgz#12fac31b37019a4eea3c11aa9a959eb7628aa7c9" + integrity sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA== + dependencies: + "@jest/types" "^24.9.0" + ansi-regex "^4.0.0" + ansi-styles "^3.2.0" + react-is "^16.8.4" + pretty-format@^26.5.2, pretty-format@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" @@ -18211,16 +18394,6 @@ progress@2.0.3, progress@^2.0.3: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -promise-inflight@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" - integrity sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g== - -promise-polyfill@^6.0.1: - version "6.1.0" - resolved "https://registry.yarnpkg.com/promise-polyfill/-/promise-polyfill-6.1.0.tgz#dfa96943ea9c121fca4de9b5868cb39d3472e057" - integrity sha512-g0LWaH0gFsxovsU7R5LrrhHhWAWiHRnh1GPrhXnPgYsDkIqjRYUYSZEsej/wtleDrz5xVSIDbeKfidztp2XHFQ== - promise@^7.1.1: version "7.3.1" resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" @@ -18252,15 +18425,6 @@ prop-types@^15.6.1, prop-types@^15.7.2, prop-types@^15.8.1: object-assign "^4.1.1" react-is "^16.13.1" -proper-lockfile@^3.0.2: - version "3.2.0" - resolved "https://registry.yarnpkg.com/proper-lockfile/-/proper-lockfile-3.2.0.tgz#89ca420eea1d55d38ca552578851460067bcda66" - integrity sha512-iMghHHXv2bsxl6NchhEaFck8tvX3F9cknEEh1SUpguUOBjN7PAAW9BLzmbc1g/mCD1gY3EE2EABBHPJfFdHFmA== - dependencies: - graceful-fs "^4.1.11" - retry "^0.12.0" - signal-exit "^3.0.2" - prosemirror-changeset@^2.2.0: version "2.2.1" resolved "https://registry.yarnpkg.com/prosemirror-changeset/-/prosemirror-changeset-2.2.1.tgz#dae94b63aec618fac7bb9061648e6e2a79988383" @@ -18435,11 +18599,6 @@ pseudolocale@^2.0.0: dependencies: commander "^10.0.0" -pseudomap@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" - integrity sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ== - psl@^1.1.33, psl@^1.9.0: version "1.9.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" @@ -18453,11 +18612,6 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" -punycode@^1.4.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" - integrity sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ== - punycode@^2.1.0, punycode@^2.1.1: version "2.3.0" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" @@ -18485,22 +18639,13 @@ qs@6.11.0: dependencies: side-channel "^1.0.4" -qs@^6.11.2, qs@^6.5.1: +qs@^6.5.1: version "6.11.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.11.2.tgz#64bea51f12c1f5da1bc01496f48ffcff7c69d7d9" integrity sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA== dependencies: side-channel "^1.0.4" -query-string@^5.0.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/query-string/-/query-string-5.1.1.tgz#a78c012b71c17e05f2e3fa2319dd330682efb3cb" - integrity sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw== - dependencies: - decode-uri-component "^0.2.0" - object-assign "^4.1.0" - strict-uri-encode "^1.0.0" - query-string@^7.1.3: version "7.1.3" resolved "https://registry.yarnpkg.com/query-string/-/query-string-7.1.3.tgz#a1cf90e994abb113a325804a972d98276fe02328" @@ -18511,6 +18656,11 @@ query-string@^7.1.3: split-on-first "^1.0.0" strict-uri-encode "^2.0.0" +querystring@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.1.tgz#40d77615bb09d16902a85c3e38aa8b5ed761c2dd" + integrity sha512-wkvS7mL/JMugcup3/rMitHmd9ecIGd2lhFhK9N3UUQ450h66d1r3Y9nvXzQAW1Lq+wyx61k/1pfKS5KuKiyEbg== + querystringify@^2.1.1: version "2.2.0" resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" @@ -18608,6 +18758,9 @@ react-avatar-editor@^13.0.0: "@babel/runtime" "^7.12.5" prop-types "^15.7.2" +"react-compiler-runtime@file:./lib/react-compiler-runtime": + version "0.0.1" + react-dev-utils@^12.0.1: version "12.0.1" resolved "https://registry.yarnpkg.com/react-dev-utils/-/react-dev-utils-12.0.1.tgz#ba92edb4a1f379bd46ccd6bcd4e7bc398df33e73" @@ -18638,10 +18791,10 @@ react-dev-utils@^12.0.1: strip-ansi "^6.0.1" text-table "^0.2.0" -react-devtools-core@^4.27.7: - version "4.28.5" - resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-4.28.5.tgz#c8442b91f068cdf0c899c543907f7f27d79c2508" - integrity sha512-cq/o30z9W2Wb4rzBefjv5fBalHU0rJGZCHAkf/RHSBWSSYwh8PlQTqqOJmgIIbBtpj27T6FIPXeomIjZtCNVqA== +react-devtools-core@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/react-devtools-core/-/react-devtools-core-5.2.0.tgz#072ecd2d84d3653817cc11e4b16f60a3c2b705f9" + integrity sha512-vZK+/gvxxsieAoAyYaiRIVFxlajb7KXhgBDV7OsoMzaAE+IqGpoxusBjIgq5ibqA2IloKu0p9n7tE68z1xs18A== dependencies: shell-quote "^1.6.1" ws "^7" @@ -18669,7 +18822,7 @@ react-freeze@^1.0.0: resolved "https://registry.yarnpkg.com/react-is/-/react-is-18.2.0.tgz#199431eeaaa2e09f86427efbb4f1473edb47609b" integrity sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w== -react-is@^16.13.0, react-is@^16.13.1, react-is@^16.7.0: +react-is@^16.13.0, react-is@^16.13.1, react-is@^16.7.0, react-is@^16.8.4: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== @@ -18686,10 +18839,10 @@ react-keyed-flatten-children@^3.0.0: dependencies: react-is "^18.2.0" -react-native-date-picker@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/react-native-date-picker/-/react-native-date-picker-4.4.0.tgz#fe5b6eb8d85a4a30b2991ada5169a30ce5023ead" - integrity sha512-Axx3byihwwhKRLRVjPAr/UaEysapkRcKmjjM8/05UaVm4Q0xDn2RFUcRdy1QAahhRcjLjlVYhepxvU5bdgy7ZQ== +react-native-date-picker@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/react-native-date-picker/-/react-native-date-picker-4.4.2.tgz#f7bb9daa8559237e08bd30f907ee8487a6e2a6ec" + integrity sha512-wYKN8nYWhETVHJV/+Im30JOdzkFRwYRrDlEOyyYesOjt+1JTFJh9M7K5CqePLOIB4Nxlf2f2lRSI0VoUyFIovA== react-native-dotenv@^3.3.1: version "3.4.9" @@ -18713,10 +18866,10 @@ react-native-fs@^2.20.0: base-64 "^0.1.0" utf8 "^3.0.0" -react-native-gesture-handler@~2.14.0: - version "2.14.0" - resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-2.14.0.tgz#d6aec0d8b2e55c67557fd6107e828c0a1a248be8" - integrity sha512-cOmdaqbpzjWrOLUpX3hdSjsMby5wq3PIEdMq7okJeg9DmCzanysHSrktw1cXWNc/B5MAgxAn9J7Km0/4UIqKAQ== +react-native-gesture-handler@~2.16.2: + version "2.16.2" + resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-2.16.2.tgz#032bd2a07334292d7f6cff1dc9d1ec928f72e26d" + integrity sha512-vGFlrDKlmyI+BT+FemqVxmvO7nqxU33cgXVsn6IKAFishvlG3oV2Ds67D5nPkHMea8T+s1IcuMm0bF8ntZtAyg== dependencies: "@egjs/hammerjs" "^2.0.17" hoist-non-react-statics "^3.3.0" @@ -18738,10 +18891,10 @@ react-native-get-random-values@~1.11.0: dependencies: fast-base64-decode "^1.0.0" -react-native-image-crop-picker@^0.38.1: - version "0.38.1" - resolved "https://registry.yarnpkg.com/react-native-image-crop-picker/-/react-native-image-crop-picker-0.38.1.tgz#5973b4a8b55835b987e6be2064de411e849ac005" - integrity sha512-cF5UQnWplzHCeiCO+aiGS/0VomWaLmFf3nSsgTMPfY+8+99h8N/eHQvVdSF7RsGw50B8394wGeGyqHjjp8YRWw== +react-native-image-crop-picker@0.40.3: + version "0.40.3" + resolved "https://registry.yarnpkg.com/react-native-image-crop-picker/-/react-native-image-crop-picker-0.40.3.tgz#a6b135cd1218a33ad126c1a148ec5a1bd01737ff" + integrity sha512-45PKcTnsnLS+E36YwoXutllQdRSOuOsMN0IRcAcwsFXOuAQIOtugXlAuGGL28JHKb/ATaSSPvqCSrdG65Jv3GA== react-native-ios-context-menu@^1.15.3: version "1.15.3" @@ -18750,23 +18903,23 @@ react-native-ios-context-menu@^1.15.3: dependencies: "@dominicstop/ts-event-emitter" "^1.1.0" -react-native-keyboard-controller@^1.11.7: - version "1.11.7" - resolved "https://registry.yarnpkg.com/react-native-keyboard-controller/-/react-native-keyboard-controller-1.11.7.tgz#85640374e4c3627c3b667256a1d308698ff80393" - integrity sha512-K2zlqVyWX4QO7r+dHMQgZT41G2dSEWtDYgBdht1WVyTaMQmwTMalZcHCWBVOnzyGaJq/hMKhF1kSPqJP1xqSFA== +react-native-keyboard-controller@^1.12.1: + version "1.12.1" + resolved "https://registry.yarnpkg.com/react-native-keyboard-controller/-/react-native-keyboard-controller-1.12.1.tgz#6de22ed4d060528a0dd25621eeaa7f71772ce35f" + integrity sha512-2OpQcesiYsMilrTzgcTafSGexd9UryRQRuHudIcOn0YaqvvzNpnhVZMVuJMH93fJv/iaZYp3138rgUKOdHhtSw== react-native-pager-view@6.2.3: version "6.2.3" resolved "https://registry.yarnpkg.com/react-native-pager-view/-/react-native-pager-view-6.2.3.tgz#698f6387fdf06cecc3d8d4792604419cb89cb775" integrity sha512-dqVpXWFtPNfD3D2QQQr8BP+ullS5MhjRJuF8Z/qml4QTILcrWaW8F5iAxKkQR3Jl0ikcEryG/+SQlNcwlo0Ggg== -react-native-picker-select@^8.1.0: - version "8.1.0" - resolved "https://registry.yarnpkg.com/react-native-picker-select/-/react-native-picker-select-8.1.0.tgz#667a5442f783f4bcfd3f65880c6926155fd2c39c" - integrity sha512-iLsLv2OEWpXnQMDYJS6du5Cl1HTHy887n60Yp5OOiMny0TDB9w5CfxTUYWtpsvJJrUa/Yrv+1NMQiJy7IA4ETw== +react-native-picker-select@^9.1.3: + version "9.1.3" + resolved "https://registry.yarnpkg.com/react-native-picker-select/-/react-native-picker-select-9.1.3.tgz#eaa052c483a7935def8fb28e5ffdf1537b37ded2" + integrity sha512-O2EmlY4Mg5fZWxECTQJBDhO61as6RDbPYYiNoryaa0gmIkWxhANLsZI+ElEVru1h0Fp9UlCFtBDI5MwhHR9AxA== dependencies: - "@react-native-picker/picker" "^1.8.3" lodash.isequal "^4.5.0" + lodash.isobject "^3.0.2" react-native-progress@bluesky-social/react-native-progress: version "5.0.0" @@ -18774,12 +18927,16 @@ react-native-progress@bluesky-social/react-native-progress: dependencies: prop-types "^15.7.2" -react-native-reanimated@^3.6.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-3.6.0.tgz#d2ca5f4c234f592af3d63bc749806e36d6e0a755" - integrity sha512-eDdhZTRYofrIqFB/Z5xLTWxcB7wDj4ifrNm+gZ2xHSZPjAQ747ukDdH9rglPyPmi+GcmDH7Wff411Xsw5fm45Q== +react-native-reanimated@^3.11.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/react-native-reanimated/-/react-native-reanimated-3.11.0.tgz#d4265d4e0232623f5958ed60e1686ca884fc3452" + integrity sha512-BNw/XDgUfs8UhfY1X6IniU8kWpnotWGyt8qmQviaHisTi5lvwnaOdXQKfN1KGONx6ekdFRHRP5EFwLi0UajwKA== dependencies: - "@babel/plugin-transform-object-assign" "^7.16.7" + "@babel/plugin-transform-arrow-functions" "^7.0.0-0" + "@babel/plugin-transform-nullish-coalescing-operator" "^7.0.0-0" + "@babel/plugin-transform-optional-chaining" "^7.0.0-0" + "@babel/plugin-transform-shorthand-properties" "^7.0.0-0" + "@babel/plugin-transform-template-literals" "^7.0.0-0" "@babel/preset-typescript" "^7.16.7" convert-source-map "^2.0.0" invariant "^2.2.4" @@ -18789,31 +18946,31 @@ react-native-root-siblings@^4.1.1: resolved "https://registry.yarnpkg.com/react-native-root-siblings/-/react-native-root-siblings-4.1.1.tgz#b7742db7634a87f507eb99a5fd699c4f10c46ab0" integrity sha512-sdmLElNs5PDWqmZmj4/aNH4anyxreaPm61c4ZkRiR8SO/GzLg6KjAbb0e17RmMdnBdD0AIQbS38h/l55YKN4ZA== -react-native-safe-area-context@4.8.2: - version "4.8.2" - resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-4.8.2.tgz#e6b3d8acf3c6afcb4b5db03a97f9c37df7668f65" - integrity sha512-ffUOv8BJQ6RqO3nLml5gxJ6ab3EestPiyWekxdzO/1MQ7NF8fW1Mzh1C5QE9yq573Xefnc7FuzGXjtesZGv7cQ== +react-native-safe-area-context@4.10.1: + version "4.10.1" + resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-4.10.1.tgz#29fb27395ff7dfa2fa38788a27226330d73a81cc" + integrity sha512-w8tCuowDorUkPoWPXmhqosovBr33YsukkwYCDERZFHAxIkx6qBadYxfeoaJ91nCQKjkNzGrK5qhoNOeSIcYSpA== -react-native-screens@~3.29.0: - version "3.29.0" - resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-3.29.0.tgz#1dee0326defbc1d4ef4e68287abb32a8e6b76b29" - integrity sha512-yB1GoAMamFAcYf4ku94uBPn0/ani9QG7NdI98beJ5cet2YFESYYzuEIuU+kt+CNRcO8qqKeugxlfgAa3HyTqlg== +react-native-screens@~3.31.1: + version "3.31.1" + resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-3.31.1.tgz#909a890f669e32b0fb1b1410278b71ad2f8238f6" + integrity sha512-8fRW362pfZ9y4rS8KY5P3DFScrmwo/vu1RrRMMx0PNHbeC9TLq0Kw1ubD83591yz64gLNHFLTVkTJmWeWCXKtQ== dependencies: react-freeze "^1.0.0" warn-once "^0.1.0" -react-native-svg@14.1.0: - version "14.1.0" - resolved "https://registry.yarnpkg.com/react-native-svg/-/react-native-svg-14.1.0.tgz#7903bddd3c71bf3a8a503918253c839e6edaa724" - integrity sha512-HeseElmEk+AXGwFZl3h56s0LtYD9HyGdrpg8yd9QM26X+d7kjETrRQ9vCjtxuT5dCZEIQ5uggU1dQhzasnsCWA== +react-native-svg@^15.3.0: + version "15.3.0" + resolved "https://registry.yarnpkg.com/react-native-svg/-/react-native-svg-15.3.0.tgz#e24b833fe330714c99f1dd894bb0da52ad859a4c" + integrity sha512-mBHu/fdlzUbpGX8SZFxgbKvK/sgqLfDLP8uh8G7Us+zJgdjO8OSEeqHQs+kPRdQmdLJQiqPJX2WXgCl7ToTWqw== dependencies: css-select "^5.1.0" css-tree "^1.1.3" -react-native-uitextview@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/react-native-uitextview/-/react-native-uitextview-1.1.6.tgz#a70d039f415158445c90de8e8e546a7c3b251d6d" - integrity sha512-OTGTw4Y2DDn4dHTwN7aKOndXP6NoS/AS35Rj/Rsss+KRsGHToiv2g3ZdzQ0ZhZabhwl1u+Oht+wSU/FU+SoJ+Q== +react-native-uitextview@^1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/react-native-uitextview/-/react-native-uitextview-1.1.7.tgz#ee60ca279b0f4d081451f0df707b0ceac4580de1" + integrity sha512-7NaeizflafRvdsuomR6F4UxGV3XY8ilgntX0npLkE3YyH0YJTikBAHunrRWEPtj1vjybYN2DuThMYRELcVqyuA== react-native-url-polyfill@^1.3.0: version "1.3.0" @@ -18822,10 +18979,17 @@ react-native-url-polyfill@^1.3.0: dependencies: whatwg-url-without-unicode "8.0.0-3" -react-native-uuid@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/react-native-uuid/-/react-native-uuid-2.0.1.tgz#ed4e2dfb1683eddb66967eb5dca140dfe1abddb9" - integrity sha512-cptnoIbL53GTCrWlb/+jrDC6tvb7ypIyzbXNJcpR3Vab0mkeaaVd5qnB3f0whXYzS+SMoSQLcUUB0gEWqkPC0g== +react-native-uuid@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/react-native-uuid/-/react-native-uuid-2.0.2.tgz#3da192e342ef35ee95a7def676ab41c1256dfd66" + integrity sha512-5ypj/hV58P+6VREdjkW0EudSibsH3WdqDERoHKnD9syFWjF+NfRWWrJb2sa3LIwI5zpzMvUiabs+DX40WHpEMw== + +react-native-view-shot@^3.8.0: + version "3.8.0" + resolved "https://registry.yarnpkg.com/react-native-view-shot/-/react-native-view-shot-3.8.0.tgz#1aa1905f0e79428ca32bf80c16fd4abc719c600b" + integrity sha512-4cU8SOhMn3YQIrskh+5Q8VvVRxQOu8/s1M9NAL4z5BY1Rm0HXMWkQJ4N0XsZ42+Yca+y86ISF3LC5qdLPvPuiA== + dependencies: + html2canvas "^1.4.1" react-native-web-webview@^1.0.2: version "1.0.2" @@ -18834,13 +18998,13 @@ react-native-web-webview@^1.0.2: dependencies: qs "^6.5.1" -react-native-web@~0.19.6: - version "0.19.8" - resolved "https://registry.yarnpkg.com/react-native-web/-/react-native-web-0.19.8.tgz#46127f8b310148fde11e4fef67fe625603599d47" - integrity sha512-anqGGHowJdfkYqRxzoQj6DeetJf5hyBlahN6rwksw54gXxgjbsUOe4/PyxqvjwxYafgbVo0oow23BwpsRFdrpw== +react-native-web@~0.19.11: + version "0.19.11" + resolved "https://registry.yarnpkg.com/react-native-web/-/react-native-web-0.19.11.tgz#1b96ac3cea9af4e1280fd5fa3b606b471f66edc3" + integrity sha512-51Qcjr0AtIgskwLqLsBByUMPs2nAWZ+6QF7x/siC72svNPcJ1/daXoPTNuHR2fX4oOrDATC4Vmc/SXOYPH19rw== dependencies: "@babel/runtime" "^7.18.6" - "@react-native/normalize-color" "^2.1.0" + "@react-native/normalize-colors" "^0.74.1" fbjs "^3.0.4" inline-style-prefixer "^6.0.1" memoize-one "^6.0.0" @@ -18848,35 +19012,35 @@ react-native-web@~0.19.6: postcss-value-parser "^4.2.0" styleq "^0.1.3" -react-native-webview@13.6.4: - version "13.6.4" - resolved "https://registry.yarnpkg.com/react-native-webview/-/react-native-webview-13.6.4.tgz#6ef66db9dd78b2a2ae1b4fe79e1e3597aa29186e" - integrity sha512-AdgmaMBHPcyERTvng9eSGgHX6AleyUlSusWAxngSOSdiYGgHW81T6C5A8j/ImJAF9oZg0bQDxp43Hu56tzENZQ== +react-native-webview@13.10.2: + version "13.10.2" + resolved "https://registry.yarnpkg.com/react-native-webview/-/react-native-webview-13.10.2.tgz#0f9b84ab38cca022d5b1c4e77c100f4d9591e7af" + integrity sha512-rjrTuPBtpHbI3owoyvSR+bRJqHfsdo5V3nVfU+G65CotkSLewEcGfA9cq7Qv3nzm5t0KEDIt0G/n7hQFjsXihQ== dependencies: escape-string-regexp "2.0.0" invariant "2.2.4" -react-native@0.73.2: - version "0.73.2" - resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.73.2.tgz#74ee163c8189660d41d1da6560411da7ce41a608" - integrity sha512-7zj9tcUYpJUBdOdXY6cM8RcXYWkyql4kMyGZflW99E5EuFPoC7Ti+ZQSl7LP9ZPzGD0vMfslwyDW0I4tPWUCFw== +react-native@0.74.1: + version "0.74.1" + resolved "https://registry.yarnpkg.com/react-native/-/react-native-0.74.1.tgz#8f5f59636242eb1b90ff675d9fcc7f5b8b1c9913" + integrity sha512-0H2XpmghwOtfPpM2LKqHIN7gxy+7G/r1hwJHKLV6uoyXGC/gCojRtoo5NqyKrWpFC8cqyT6wTYCLuG7CxEKilg== dependencies: "@jest/create-cache-key-function" "^29.6.3" - "@react-native-community/cli" "12.3.0" - "@react-native-community/cli-platform-android" "12.3.0" - "@react-native-community/cli-platform-ios" "12.3.0" - "@react-native/assets-registry" "0.73.1" - "@react-native/codegen" "0.73.2" - "@react-native/community-cli-plugin" "0.73.12" - "@react-native/gradle-plugin" "0.73.4" - "@react-native/js-polyfills" "0.73.1" - "@react-native/normalize-colors" "0.73.2" - "@react-native/virtualized-lists" "0.73.4" + "@react-native-community/cli" "13.6.6" + "@react-native-community/cli-platform-android" "13.6.6" + "@react-native-community/cli-platform-ios" "13.6.6" + "@react-native/assets-registry" "0.74.83" + "@react-native/codegen" "0.74.83" + "@react-native/community-cli-plugin" "0.74.83" + "@react-native/gradle-plugin" "0.74.83" + "@react-native/js-polyfills" "0.74.83" + "@react-native/normalize-colors" "0.74.83" + "@react-native/virtualized-lists" "0.74.83" abort-controller "^3.0.0" anser "^1.4.9" ansi-regex "^5.0.0" base64-js "^1.5.1" - deprecated-react-native-prop-types "^5.0.0" + chalk "^4.0.0" event-target-shim "^5.0.1" flow-enums-runtime "^0.0.6" invariant "^2.2.4" @@ -18889,7 +19053,7 @@ react-native@0.73.2: nullthrows "^1.1.1" pretty-format "^26.5.2" promise "^8.3.0" - react-devtools-core "^4.27.7" + react-devtools-core "^5.0.0" react-refresh "^0.14.0" react-shallow-renderer "^16.15.0" regenerator-runtime "^0.13.2" @@ -18909,6 +19073,11 @@ react-refresh@^0.11.0: resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.11.0.tgz#77198b944733f0f1f1a90e791de4541f9f074046" integrity sha512-F27qZr8uUqwhWZboondsPx8tnC3Ct3SxZA3V5WyEvujRyyNv0VYPhoBg1gZ8/MV5tubQp76Trw8lTv9hzRBa+A== +react-refresh@^0.14.2: + version "0.14.2" + resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.14.2.tgz#3833da01ce32da470f1f936b9d477da5c7028bf9" + integrity sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA== + react-refresh@^0.4.0: version "0.4.3" resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.4.3.tgz#966f1750c191672e76e16c2efa569150cc73ab53" @@ -19047,7 +19216,7 @@ read-cache@^1.0.0: dependencies: pify "^2.3.0" -readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@~2.3.6: +readable-stream@^2.0.1, readable-stream@~2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== @@ -19298,11 +19467,6 @@ requireg@^0.2.2: rc "~1.2.7" resolve "~1.7.1" -requireindex@~1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/requireindex/-/requireindex-1.1.0.tgz#e5404b81557ef75db6e49c5a72004893fe03e162" - integrity sha512-LBnkqsDE7BZKvqylbmn7lTIVdpx4K/QCduRATpO5R+wtPmky/a8pN1bO2D6wXppn1497AJF9mNjqAXr6bdl9jg== - requires-port@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" @@ -19405,11 +19569,6 @@ restore-cursor@^4.0.0: onetime "^5.1.0" signal-exit "^3.0.2" -retry@^0.12.0: - version "0.12.0" - resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" - integrity sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow== - retry@^0.13.1: version "0.13.1" resolved "https://registry.yarnpkg.com/retry/-/retry-0.13.1.tgz#185b1587acf67919d63b357349e03537b2484658" @@ -19580,13 +19739,6 @@ safe-stable-stringify@^2.3.1, safe-stable-stringify@^2.4.3: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -sanitize-filename@^1.6.1: - version "1.6.3" - resolved "https://registry.yarnpkg.com/sanitize-filename/-/sanitize-filename-1.6.3.tgz#755ebd752045931977e30b2025d340d7c9090378" - integrity sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg== - dependencies: - truncate-utf8-bytes "^1.0.0" - sanitize.css@*: version "13.0.0" resolved "https://registry.yarnpkg.com/sanitize.css/-/sanitize.css-13.0.0.tgz#2675553974b27964c75562ade3bd85d79879f173" @@ -19682,6 +19834,14 @@ selfsigned@^2.1.1: dependencies: node-forge "^1" +selfsigned@^2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/selfsigned/-/selfsigned-2.4.1.tgz#560d90565442a3ed35b674034cec4e95dceb4ae0" + integrity sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q== + dependencies: + "@types/node-forge" "^1.3.0" + node-forge "^1" + semver-compare@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" @@ -19699,10 +19859,10 @@ semver@7.5.3: dependencies: lru-cache "^6.0.0" -semver@7.5.4, semver@^7.0.0, semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.5.2, semver@^7.5.3, semver@^7.5.4: - version "7.5.4" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" - integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== +semver@7.6.0: + version "7.6.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.0.tgz#1a46a4db4bffcccd97b743b5005c8325f23d4e2d" + integrity sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg== dependencies: lru-cache "^6.0.0" @@ -19716,6 +19876,18 @@ semver@^6.0.0, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== +semver@^7.3.2, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.5.2, semver@^7.5.3, semver@^7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + +semver@^7.6.0: + version "7.6.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.6.2.tgz#1e3b34759f896e8f14d6134732ce798aeb0c6e13" + integrity sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w== + semver@~7.3.2: version "7.3.8" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" @@ -19760,13 +19932,6 @@ serialize-error@^2.1.0: resolved "https://registry.yarnpkg.com/serialize-error/-/serialize-error-2.1.0.tgz#50b679d5635cdf84667bdc8e59af4e5b81d5f60a" integrity sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw== -serialize-error@^8.0.1: - version "8.1.0" - resolved "https://registry.yarnpkg.com/serialize-error/-/serialize-error-8.1.0.tgz#3a069970c712f78634942ddd50fbbc0eaebe2f67" - integrity sha512-3NnuWfM6vBYoy5gZFvHiYsVbafvI9vZv/+jlIigFn4oP4zjNPK3LhcY0xSCgeb1a5L8jO71Mit9LlNoi2UfDDQ== - dependencies: - type-fest "^0.20.2" - serialize-javascript@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-4.0.0.tgz#b525e1238489a5ecfc42afacc3fe99e666f4b1aa" @@ -19898,7 +20063,7 @@ shell-quote@1.8.0: resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.0.tgz#20d078d0eaf71d54f43bd2ba14a1b5b9bfa5c8ba" integrity sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ== -shell-quote@^1.6.1, shell-quote@^1.7.2, shell-quote@^1.7.3: +shell-quote@^1.6.1, shell-quote@^1.7.3: version "1.8.1" resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.8.1.tgz#6dbf4db75515ad5bac63b4f1894c3a154c766680" integrity sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA== @@ -20024,13 +20189,6 @@ sonic-boom@^3.1.0: dependencies: atomic-sleep "^1.0.0" -sort-keys@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" - integrity sha512-/dPCrG1s3ePpWm6yBbxZq5Be1dXGLyLn9Z791chDC3NFrpkVbWGzkBwPN1knaciexFXgRJ7hzdnwZ4stHSDmjg== - dependencies: - is-plain-obj "^1.0.0" - source-list-map@^2.0.0, source-list-map@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" @@ -20081,7 +20239,7 @@ source-map@0.6.1, source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, sourc resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@^0.5.6: +source-map@^0.5.0, source-map@^0.5.6: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== @@ -20153,12 +20311,12 @@ sprintf-js@~1.0.2: resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== -ssri@^8.0.1: - version "8.0.1" - resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" - integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== +ssri@^10.0.0: + version "10.0.6" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-10.0.6.tgz#a8aade2de60ba2bce8688e3fa349bad05c7dc1e5" + integrity sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ== dependencies: - minipass "^3.1.1" + minipass "^7.0.3" stable@^0.1.8: version "0.1.8" @@ -20264,18 +20422,6 @@ stream-buffers@2.2.x: resolved "https://registry.yarnpkg.com/stream-buffers/-/stream-buffers-2.2.0.tgz#91d5f5130d1cef96dcfa7f726945188741d09ee4" integrity sha512-uyQK/mx5QjHun80FLJTfaWE7JtwfRMKBLkMne6udYOmvH0CawotVa7TfgYHzAnpphn4+TweIx1QKMnRIbipmUg== -stream-chain@^2.2.5: - version "2.2.5" - resolved "https://registry.yarnpkg.com/stream-chain/-/stream-chain-2.2.5.tgz#b30967e8f14ee033c5b9a19bbe8a2cba90ba0d09" - integrity sha512-1TJmBx6aSWqZ4tx7aTpBDXK0/e2hhcNSTV8+CbFJtDjbb+I1mZ8lHit0Grw9GRT+6JbIrrDd8esncgBi8aBXGA== - -stream-json@^1.7.4, stream-json@^1.7.5: - version "1.8.0" - resolved "https://registry.yarnpkg.com/stream-json/-/stream-json-1.8.0.tgz#53f486b2e3b4496c506131f8d7260ba42def151c" - integrity sha512-HZfXngYHUAr1exT4fxlbc1IOce1RYxp2ldeaf97LYCOPSoOqY/1Psp7iGvpb+6JIOgkra9zDYnPX01hGAHzEPw== - dependencies: - stream-chain "^2.2.5" - streamx@^2.15.0: version "2.15.5" resolved "https://registry.yarnpkg.com/streamx/-/streamx-2.15.5.tgz#87bcef4dc7f0b883f9359671203344a4e004c7f1" @@ -20284,11 +20430,6 @@ streamx@^2.15.0: fast-fifo "^1.1.0" queue-tick "^1.0.1" -strict-uri-encode@^1.0.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" - integrity sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ== - strict-uri-encode@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" @@ -20719,7 +20860,7 @@ tar-stream@^3.1.5: fast-fifo "^1.2.0" streamx "^2.15.0" -tar@^6.0.2, tar@^6.0.5: +tar@^6.0.5: version "6.1.15" resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.15.tgz#c9738b0b98845a3b344d334b8fa3041aaba53a69" integrity sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A== @@ -20731,12 +20872,17 @@ tar@^6.0.2, tar@^6.0.5: mkdirp "^1.0.3" yallist "^4.0.0" -telnet-client@1.2.8: - version "1.2.8" - resolved "https://registry.yarnpkg.com/telnet-client/-/telnet-client-1.2.8.tgz#946c0dadc8daa3f19bb40a3e898cb870403a4ca4" - integrity sha512-W+w4k3QAmULVNhBVT2Fei369kGZCh/TH25M7caJAXW+hLxwoQRuw0di3cX4l0S9fgH3Mvq7u+IFMoBDpEw/eIg== +tar@^6.1.11: + version "6.2.1" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a" + integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A== dependencies: - bluebird "^3.5.4" + chownr "^2.0.0" + fs-minipass "^2.0.0" + minipass "^5.0.0" + minizlib "^2.1.1" + mkdirp "^1.0.3" + yallist "^4.0.0" temp-dir@^1.0.0: version "1.0.0" @@ -20755,14 +20901,6 @@ temp@^0.8.4: dependencies: rimraf "~2.6.2" -tempfile@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/tempfile/-/tempfile-2.0.0.tgz#6b0446856a9b1114d1856ffcbe509cccb0977265" - integrity sha512-ZOn6nJUgvgC09+doCEF3oB+r3ag7kUvlsXEGX069QRD60p+P3uP7XG9N2/at+EyIRGSN//ZY3LyEotA1YpmjuA== - dependencies: - temp-dir "^1.0.0" - uuid "^3.0.1" - tempy@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/tempy/-/tempy-0.3.0.tgz#6f6c5b295695a16130996ad5ab01a8bd726e8bf8" @@ -20831,6 +20969,13 @@ test-exclude@^6.0.0: glob "^7.1.4" minimatch "^3.0.4" +text-segmentation@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/text-segmentation/-/text-segmentation-1.0.3.tgz#52a388159efffe746b24a63ba311b6ac9f2d7943" + integrity sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw== + dependencies: + utrie "^1.0.2" + text-table@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" @@ -20990,24 +21135,15 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== -trace-event-lib@^1.3.1: - version "1.4.1" - resolved "https://registry.yarnpkg.com/trace-event-lib/-/trace-event-lib-1.4.1.tgz#a749b8141650f56dcdecea760df4735f28d1ac6b" - integrity sha512-TOgFolKG8JFY+9d5EohGWMvwvteRafcyfPWWNIqcuD1W/FUvxWcy2MSCZ/beYHM63oYPHYHCd3tkbgCctHVP7w== - dependencies: - browser-process-hrtime "^1.0.0" - traverse@~0.6.6: version "0.6.7" resolved "https://registry.yarnpkg.com/traverse/-/traverse-0.6.7.tgz#46961cd2d57dd8706c36664acde06a248f1173fe" integrity sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg== -truncate-utf8-bytes@^1.0.0: - version "1.0.2" - resolved "https://registry.yarnpkg.com/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz#405923909592d56f78a5818434b0b78489ca5f2b" - integrity sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ== - dependencies: - utf8-byte-length "^1.0.1" +trim-right@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" + integrity sha512-WZGXGstmCWgeevgTL54hrCuw1dyMQIzWy7ZfqRJfSmJZBwklI15egmQytFP6bPidmw3M8d5yEowl1niq4vmqZw== tryer@^1.0.1: version "1.0.1" @@ -21053,7 +21189,7 @@ tslib@^1.11.1, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.3.1, tslib@^2.4.0, tslib@^2.4.1, tslib@^2.5.0, tslib@^2.5.3: +tslib@^2.0.0, tslib@^2.0.1, tslib@^2.0.3, tslib@^2.1.0, tslib@^2.3.1, tslib@^2.4.0, tslib@^2.4.1, tslib@^2.5.0: version "2.6.2" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== @@ -21232,6 +21368,11 @@ unbox-primitive@^1.0.2: has-symbols "^1.0.3" which-boxed-primitive "^1.0.2" +undici-types@~5.26.4: + version "5.26.5" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.26.5.tgz#bcd539893d00b56e964fd2657a4866b221a65617" + integrity sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== + undici@^5.28.2: version "5.28.2" resolved "https://registry.yarnpkg.com/undici/-/undici-5.28.2.tgz#fea200eac65fc7ecaff80a023d1a0543423b4c91" @@ -21272,22 +21413,22 @@ unicode-property-aliases-ecmascript@^2.0.0: resolved "https://registry.yarnpkg.com/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz#43d41e3be698bd493ef911077c9b131f827e8ccd" integrity sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w== -unimodules-app-loader@~4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/unimodules-app-loader/-/unimodules-app-loader-4.5.0.tgz#5ec66088d740bd17dc5c94b88c91f21249d9f0ba" - integrity sha512-q/Xug4K6/20876Xac+tjOLOOAeHEu2zF66LNN/5c8EV4WPEe/+RYZEljN/woQt17KPIB2eyel9dc+d6qUMjUOg== +unimodules-app-loader@~4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/unimodules-app-loader/-/unimodules-app-loader-4.6.0.tgz#8836040b3acbf605fc4c2c6f6feb6dd9084ea0d4" + integrity sha512-FRNIlx7sLBDVPG117JnEBhnzZkTIgZTEwYW2rzrY9HdvLBTpRN+k0dxY50U/CAhFHW3zMD0OP5JAlnSQRhx5HA== -unique-filename@^1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" - integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== +unique-filename@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-3.0.0.tgz#48ba7a5a16849f5080d26c760c86cf5cf05770ea" + integrity sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g== dependencies: - unique-slug "^2.0.0" + unique-slug "^4.0.0" -unique-slug@^2.0.0: - version "2.0.2" - resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" - integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== +unique-slug@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-4.0.0.tgz#6bae6bb16be91351badd24cdce741f892a6532e3" + integrity sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ== dependencies: imurmurhash "^0.1.4" @@ -21353,6 +21494,14 @@ update-browserslist-db@^1.0.11: escalade "^3.1.1" picocolors "^1.0.0" +update-browserslist-db@^1.0.13: + version "1.0.16" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.16.tgz#f6d489ed90fb2f07d67784eb3f53d7891f736356" + integrity sha512-KVbTxlBYlckhF5wgfyZXTWnMn7MMZjMu9XG8bPlliUOP9ThaF4QnhP8qrjrH7DRzHfSk0oQv1wToW+iA5GajEQ== + dependencies: + escalade "^3.1.2" + picocolors "^1.0.1" + update-check@1.5.3: version "1.5.3" resolved "https://registry.yarnpkg.com/update-check/-/update-check-1.5.3.tgz#45240fcfb8755a7c7fa68bbdd9eda026a41639ed" @@ -21390,14 +21539,6 @@ url-parse@^1.5.3: querystringify "^2.1.1" requires-port "^1.0.0" -url@^0.11.0: - version "0.11.3" - resolved "https://registry.yarnpkg.com/url/-/url-0.11.3.tgz#6f495f4b935de40ce4a0a52faee8954244f3d3ad" - integrity sha512-6hxOLGfZASQK/cijlZnZJTq8OXAkt/3YGfQX45vvMYXpZoo8NdWZcY73K108Jf759lS1Bv/8wXnHDTSz17dSRw== - dependencies: - punycode "^1.4.1" - qs "^6.11.2" - use-callback-ref@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/use-callback-ref/-/use-callback-ref-1.3.0.tgz#772199899b9c9a50526fedc4993fc7fa1f7e32d5" @@ -21415,11 +21556,6 @@ use-isomorphic-layout-effect@^1.1.1: resolved "https://registry.yarnpkg.com/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz#497cefb13d863d687b08477d9e5a164ad8c1a6fb" integrity sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA== -use-latest-callback@^0.1.5: - version "0.1.6" - resolved "https://registry.yarnpkg.com/use-latest-callback/-/use-latest-callback-0.1.6.tgz#3fa6e7babbb5f9bfa24b5094b22939e1e92ebcf6" - integrity sha512-VO/P91A/PmKH9bcN9a7O3duSuxe6M14ZoYXgA6a8dab8doWNdhiIHzEkX/jFeTTRBsX0Ubk6nG4q2NIjNsj+bg== - use-latest-callback@^0.1.9: version "0.1.9" resolved "https://registry.yarnpkg.com/use-latest-callback/-/use-latest-callback-0.1.9.tgz#10191dc54257e65a8e52322127643a8940271e2a" @@ -21440,11 +21576,6 @@ use-sidecar@^1.1.2: detect-node-es "^1.1.0" tslib "^2.0.0" -utf8-byte-length@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz#f45f150c4c66eee968186505ab93fcbb8ad6bf61" - integrity sha512-4+wkEYLBbWxqTahEsWrhxepcoVOJ+1z5PGIjPZxRkytcdSUaNjIjBM7Xn8E+pdSuV7SzvWovBFA54FO0JSoqhA== - utf8@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/utf8/-/utf8-3.0.0.tgz#f052eed1364d696e769ef058b183df88c87f69d1" @@ -21486,7 +21617,14 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== -uuid@^3.0.1, uuid@^3.3.2: +utrie@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/utrie/-/utrie-1.0.2.tgz#d42fe44de9bc0119c25de7f564a6ed1b2c87a645" + integrity sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw== + dependencies: + base64-arraybuffer "^1.0.2" + +uuid@^3.3.2: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== @@ -22215,7 +22353,7 @@ ws@^6.2.2: dependencies: async-limiter "~1.0.0" -ws@^7, ws@^7.0.0, ws@^7.3.1, ws@^7.4.6, ws@^7.5.1: +ws@^7, ws@^7.3.1, ws@^7.4.6, ws@^7.5.1: version "7.5.9" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== @@ -22299,11 +22437,6 @@ y18n@^5.0.5: resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== -yallist@^2.1.2: - version "2.1.2" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - integrity sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A== - yallist@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" @@ -22342,21 +22475,11 @@ yargs-parser@^20.2.2: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs-parser@^21.0.0, yargs-parser@^21.1.1: +yargs-parser@^21.1.1: version "21.1.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz#9096bceebf990d21bb31fa9516e0ede294a77d35" integrity sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw== -yargs-unparser@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/yargs-unparser/-/yargs-unparser-2.0.0.tgz#f131f9226911ae5d9ad38c432fe809366c2325eb" - integrity sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA== - dependencies: - camelcase "^6.0.0" - decamelize "^4.0.0" - flat "^5.0.2" - is-plain-obj "^2.1.0" - yargs@^15.1.0: version "15.4.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" @@ -22387,7 +22510,7 @@ yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" -yargs@^17.0.0, yargs@^17.3.1, yargs@^17.6.2: +yargs@^17.3.1, yargs@^17.6.2: version "17.7.2" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.7.2.tgz#991df39aca675a192b816e1e0363f9d75d2aa269" integrity sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w== @@ -22431,7 +22554,22 @@ zeego@^1.6.2: "@radix-ui/react-dropdown-menu" "^2.0.1" sf-symbols-typescript "^1.0.0" -zod@^3.14.2, zod@^3.20.2, zod@^3.21.4: +zod-validation-error@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-2.1.0.tgz#208eac75237dfed47c0018d2fe8fd03501bfc9ac" + integrity sha512-VJh93e2wb4c3tWtGgTa0OF/dTt/zoPCPzXq4V11ZjxmEAFaPi/Zss1xIZdEB5RD8GD00U0/iVXgqkF77RV7pdQ== + +zod-validation-error@^3.0.3: + version "3.3.0" + resolved "https://registry.yarnpkg.com/zod-validation-error/-/zod-validation-error-3.3.0.tgz#2cfe81b62d044e0453d1aa3ae7c32a2f36dde9af" + integrity sha512-Syib9oumw1NTqEv4LT0e6U83Td9aVRk9iTXPUQr1otyV1PuXQKOvOwhMNqZIq5hluzHP2pMgnOmHEo7kPdI2mw== + +zod@^3.14.2, zod@^3.20.2: version "3.22.2" resolved "https://registry.yarnpkg.com/zod/-/zod-3.22.2.tgz#3add8c682b7077c05ac6f979fea6998b573e157b" integrity sha512-wvWkphh5WQsJbVk1tbx1l1Ly4yg+XecD+Mq280uBGt9wa5BKSWf4Mhp6GmrkPixhMxmabYY7RbzlwVP32pbGCg== + +zod@^3.21.4, zod@^3.22.4: + version "3.23.8" + resolved "https://registry.yarnpkg.com/zod/-/zod-3.23.8.tgz#e37b957b5d52079769fb8097099b592f0ef4067d" + integrity sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==