diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile
new file mode 100644
index 0000000000..9ae47b9375
--- /dev/null
+++ b/.devcontainer/Dockerfile
@@ -0,0 +1,2 @@
+ARG BASEIMAGE=mcr.microsoft.com/devcontainers/typescript-node:22@sha256:9791f4aa527774bc370c6bd2f6705ce5a686f1e6f204badd8dfaacce28c631ae
+FROM ${BASEIMAGE}
diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
new file mode 100644
index 0000000000..b297f9a2d8
--- /dev/null
+++ b/.devcontainer/devcontainer.json
@@ -0,0 +1,20 @@
+{
+ "name": "Immich devcontainers",
+ "build": {
+ "dockerfile": "Dockerfile",
+ "args": {
+ "BASEIMAGE": "mcr.microsoft.com/devcontainers/typescript-node:22"
+ }
+ },
+ "customizations": {
+ "vscode": {
+ "extensions": [
+ "svelte.svelte-vscode"
+ ]
+ }
+ },
+ "forwardPorts": [],
+ "postCreateCommand": "make install-all",
+ "remoteUser": "node"
+}
+
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
deleted file mode 100644
index 2c7d170839..0000000000
--- a/.github/dependabot.yml
+++ /dev/null
@@ -1,7 +0,0 @@
-version: 2
-updates:
- # Maintain dependencies for GitHub Actions
- - package-ecosystem: "github-actions"
- directory: "/"
- schedule:
- interval: "daily"
diff --git a/.github/release.yml b/.github/release.yml
index 1d9764194c..c549ead475 100644
--- a/.github/release.yml
+++ b/.github/release.yml
@@ -4,6 +4,10 @@ changelog:
labels:
- changelog:breaking-change
+ - title: 🫥 Deprecated Changes
+ labels:
+ - changelog:deprecated
+
- title: 🔒 Security
labels:
- changelog:security
diff --git a/.github/workflows/cli.yml b/.github/workflows/cli.yml
index 5292075cce..e3b2d68435 100644
--- a/.github/workflows/cli.yml
+++ b/.github/workflows/cli.yml
@@ -59,7 +59,7 @@ jobs:
uses: docker/setup-qemu-action@v3.2.0
- name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v3.6.1
+ uses: docker/setup-buildx-action@v3.8.0
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
@@ -88,7 +88,7 @@ jobs:
type=raw,value=latest,enable=${{ github.event_name == 'release' }}
- name: Build and push image
- uses: docker/build-push-action@v6.7.0
+ uses: docker/build-push-action@v6.10.0
with:
file: cli/Dockerfile
platforms: linux/amd64,linux/arm64
diff --git a/.github/workflows/docker-cleanup.yml b/.github/workflows/docker-cleanup.yml
index bd0ec91d14..29b518e0a5 100644
--- a/.github/workflows/docker-cleanup.yml
+++ b/.github/workflows/docker-cleanup.yml
@@ -22,7 +22,7 @@ concurrency:
jobs:
cleanup-images:
name: Cleanup Stale Images Tags for ${{ matrix.primary-name }}
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
@@ -35,7 +35,7 @@ jobs:
steps:
- name: Clean temporary images
if: "${{ env.TOKEN != '' }}"
- uses: stumpylog/image-cleaner-action/ephemeral@v0.8.0
+ uses: stumpylog/image-cleaner-action/ephemeral@v0.9.0
with:
token: "${{ env.TOKEN }}"
owner: "immich-app"
@@ -48,7 +48,7 @@ jobs:
cleanup-untagged-images:
name: Cleanup Untagged Images Tags for ${{ matrix.primary-name }}
- runs-on: ubuntu-22.04
+ runs-on: ubuntu-24.04
needs:
- cleanup-images
strategy:
@@ -64,7 +64,7 @@ jobs:
steps:
- name: Clean untagged images
if: "${{ env.TOKEN != '' }}"
- uses: stumpylog/image-cleaner-action/untagged@v0.8.0
+ uses: stumpylog/image-cleaner-action/untagged@v0.9.0
with:
token: "${{ env.TOKEN }}"
owner: "immich-app"
diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml
index bf393bbcf6..2fac92c4e8 100644
--- a/.github/workflows/docker.yml
+++ b/.github/workflows/docker.yml
@@ -33,6 +33,7 @@ jobs:
- 'server/**'
- 'openapi/**'
- 'web/**'
+ - 'i18n/**'
machine-learning:
- 'machine-learning/**'
@@ -124,7 +125,7 @@ jobs:
uses: docker/setup-qemu-action@v3.2.0
- name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v3.6.1
+ uses: docker/setup-buildx-action@v3.8.0
- name: Login to Docker Hub
# Only push to Docker Hub when making a release
@@ -173,7 +174,7 @@ jobs:
fi
- name: Build and push image
- uses: docker/build-push-action@v6.7.0
+ uses: docker/build-push-action@v6.10.0
with:
context: ${{ env.context }}
file: ${{ env.file }}
@@ -215,7 +216,7 @@ jobs:
uses: docker/setup-qemu-action@v3.2.0
- name: Set up Docker Buildx
- uses: docker/setup-buildx-action@v3.6.1
+ uses: docker/setup-buildx-action@v3.8.0
- name: Login to Docker Hub
# Only push to Docker Hub when making a release
@@ -264,7 +265,7 @@ jobs:
fi
- name: Build and push image
- uses: docker/build-push-action@v6.7.0
+ uses: docker/build-push-action@v6.10.0
with:
context: ${{ env.context }}
file: ${{ env.file }}
diff --git a/.github/workflows/docs-build.yml b/.github/workflows/docs-build.yml
index 387d8e0424..efb84d510e 100644
--- a/.github/workflows/docs-build.yml
+++ b/.github/workflows/docs-build.yml
@@ -27,7 +27,7 @@ jobs:
- 'docs/**'
- name: Check if we should force jobs to run
id: should_force
- run: echo "should_force=${{ github.event_name == 'release' }}" >> "$GITHUB_OUTPUT"
+ run: echo "should_force=${{ github.event_name == 'release' || github.ref_name == 'main' }}" >> "$GITHUB_OUTPUT"
build:
name: Docs Build
diff --git a/.github/workflows/docs-destroy.yml b/.github/workflows/docs-destroy.yml
index 8070056924..f9e69b135a 100644
--- a/.github/workflows/docs-destroy.yml
+++ b/.github/workflows/docs-destroy.yml
@@ -23,7 +23,7 @@ jobs:
tg_version: "0.58.12"
tofu_version: "1.7.1"
tg_dir: "deployment/modules/cloudflare/docs"
- tg_command: "destroy"
+ tg_command: "destroy -refresh=false"
- name: Comment
uses: actions-cool/maintain-one-comment@v3
diff --git a/.github/workflows/fix-format.yml b/.github/workflows/fix-format.yml
new file mode 100644
index 0000000000..0c630c9e4b
--- /dev/null
+++ b/.github/workflows/fix-format.yml
@@ -0,0 +1,52 @@
+name: Fix formatting
+
+on:
+ pull_request:
+ types: [labeled]
+
+jobs:
+ fix-formatting:
+ runs-on: ubuntu-latest
+ if: ${{ github.event.label.name == 'fix:formatting' }}
+ permissions:
+ pull-requests: write
+ steps:
+ - name: Generate a token
+ id: generate-token
+ uses: actions/create-github-app-token@v1
+ with:
+ app-id: ${{ secrets.PUSH_O_MATIC_APP_ID }}
+ private-key: ${{ secrets.PUSH_O_MATIC_APP_KEY }}
+
+ - name: 'Checkout'
+ uses: actions/checkout@v4
+ with:
+ ref: ${{ github.event.pull_request.head.ref }}
+ token: ${{ steps.generate-token.outputs.token }}
+
+ - name: Setup Node
+ uses: actions/setup-node@v4
+ with:
+ node-version-file: './server/.nvmrc'
+
+ - name: Fix formatting
+ run: make install-all && make format-all
+
+ - name: Commit and push
+ uses: EndBug/add-and-commit@v9
+ with:
+ default_author: github_actions
+ message: 'chore: fix formatting'
+
+ - name: Remove label
+ uses: actions/github-script@v7
+ if: always()
+ with:
+ script: |
+ github.rest.issues.removeLabel({
+ issue_number: context.payload.pull_request.number,
+ owner: context.repo.owner,
+ repo: context.repo.repo,
+ name: 'fix:formatting'
+ })
+
diff --git a/.github/workflows/pr-label-validation.yml b/.github/workflows/pr-label-validation.yml
index 1557b3d15c..0abbc01afd 100644
--- a/.github/workflows/pr-label-validation.yml
+++ b/.github/workflows/pr-label-validation.yml
@@ -9,7 +9,7 @@ jobs:
runs-on: ubuntu-latest
permissions:
issues: write
- pull-requests: read
+ pull-requests: write
steps:
- name: Require PR to have a changelog label
uses: mheap/github-action-required-labels@v5
@@ -19,3 +19,4 @@ jobs:
use_regex: true
labels: "changelog:.*"
add_comment: true
+ message: "Label error. Requires {{errorString}} {{count}} of: {{ provided }}. Found: {{ applied }}. A maintainer will add the required label."
diff --git a/.github/workflows/pr-require-conventional-commit.yml b/.github/workflows/pr-require-conventional-commit.yml
index 4899031249..d4bd44ec43 100644
--- a/.github/workflows/pr-require-conventional-commit.yml
+++ b/.github/workflows/pr-require-conventional-commit.yml
@@ -9,7 +9,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: PR Conventional Commit Validation
- uses: ytanikin/PRConventionalCommits@1.2.0
+ uses: ytanikin/PRConventionalCommits@1.3.0
with:
task_types: '["feat","fix","docs","test","ci","refactor","perf","chore","revert"]'
add_label: 'false'
diff --git a/.github/workflows/static_analysis.yml b/.github/workflows/static_analysis.yml
index 94567c1cd5..196f8faf59 100644
--- a/.github/workflows/static_analysis.yml
+++ b/.github/workflows/static_analysis.yml
@@ -56,6 +56,10 @@ jobs:
run: dart format lib/ --set-exit-if-changed
working-directory: ./mobile
+ - name: Run dart custom_lint
+ run: dart run custom_lint
+ working-directory: ./mobile
+
# Enable after riverpod generator migration is completed
# - name: Run dart custom lint
# run: dart run custom_lint
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 24e3e08623..52e0ba7b07 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -30,6 +30,7 @@ jobs:
filters: |
web:
- 'web/**'
+ - 'i18n/**'
- 'open-api/typescript-sdk/**'
server:
- 'server/**'
@@ -80,7 +81,7 @@ jobs:
run: npm run check
if: ${{ !cancelled() }}
- - name: Run unit tests & coverage
+ - name: Run small tests & coverage
run: npm run test:cov
if: ${{ !cancelled() }}
@@ -243,6 +244,26 @@ jobs:
run: npm run check
if: ${{ !cancelled() }}
+ medium-tests-server:
+ name: Medium Tests (Server)
+ needs: pre-job
+ if: ${{ needs.pre-job.outputs.should_run_server == 'true' }}
+ runs-on: mich
+
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v4
+ with:
+ submodules: 'recursive'
+
+ - name: Production build
+ if: ${{ !cancelled() }}
+ run: docker compose -f e2e/docker-compose.yml build
+
+ - name: Run medium tests
+ if: ${{ !cancelled() }}
+ run: make test-medium
+
e2e-tests-server-cli:
name: End-to-End Tests (Server & CLI)
needs: pre-job
diff --git a/.gitignore b/.gitignore
index 537e048be2..e0544ad8d5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -21,3 +21,5 @@ mobile/openapi/.openapi-generator/FILES
open-api/typescript-sdk/build
mobile/android/fastlane/report.xml
mobile/ios/fastlane/report.xml
+
+vite.config.js.timestamp-*
diff --git a/.vscode/launch.json b/.vscode/launch.json
index 7a88b7f3e1..ed3da9f667 100644
--- a/.vscode/launch.json
+++ b/.vscode/launch.json
@@ -5,8 +5,8 @@
"type": "node",
"request": "attach",
"restart": true,
- "port": 9230,
- "name": "Immich Server",
+ "port": 9231,
+ "name": "Immich API Server",
"remoteRoot": "/usr/src/app",
"localRoot": "${workspaceFolder}/server"
},
@@ -14,8 +14,8 @@
"type": "node",
"request": "attach",
"restart": true,
- "port": 9231,
- "name": "Immich Microservices",
+ "port": 9230,
+ "name": "Immich Workers",
"remoteRoot": "/usr/src/app",
"localRoot": "${workspaceFolder}/server"
}
diff --git a/.vscode/settings.json b/.vscode/settings.json
index a8661326a0..49dbf3944c 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -41,4 +41,4 @@
"explorer.fileNesting.patterns": {
"*.ts": "${capture}.spec.ts,${capture}.mock.ts"
}
-}
+}
\ No newline at end of file
diff --git a/Makefile b/Makefile
index 349a5c5e92..0899d82d24 100644
--- a/Makefile
+++ b/Makefile
@@ -39,7 +39,7 @@ attach-server:
renovate:
LOG_LEVEL=debug npx renovate --platform=local --repository-cache=reset
-MODULES = e2e server web cli sdk
+MODULES = e2e server web cli sdk docs
audit-%:
npm --prefix $(subst sdk,open-api/typescript-sdk,$*) audit fix
@@ -48,11 +48,9 @@ install-%:
build-cli: build-sdk
build-web: build-sdk
build-%: install-%
- npm --prefix $(subst sdk,open-api/typescript-sdk,$*) run | grep 'build' >/dev/null \
- && npm --prefix $(subst sdk,open-api/typescript-sdk,$*) run build || true
+ npm --prefix $(subst sdk,open-api/typescript-sdk,$*) run build
format-%:
- npm --prefix $(subst sdk,open-api/typescript-sdk,$*) run | grep 'format:fix' >/dev/null \
- && npm --prefix $(subst sdk,open-api/typescript-sdk,$*) run format:fix || true
+ npm --prefix $* run format:fix
lint-%:
npm --prefix $* run lint:fix
check-%:
@@ -66,15 +64,27 @@ test-e2e:
docker compose -f ./e2e/docker-compose.yml build
npm --prefix e2e run test
npm --prefix e2e run test:web
+test-medium:
+ docker run \
+ --rm \
+ -v ./server/src:/usr/src/app/src \
+ -v ./server/test:/usr/src/app/test \
+ -v ./server/vitest.config.medium.mjs:/usr/src/app/vitest.config.medium.mjs \
+ -v ./server/tsconfig.json:/usr/src/app/tsconfig.json \
+ -e NODE_ENV=development \
+ immich-server:latest \
+ -c "npm ci && npm run test:medium -- --run"
+test-medium-dev:
+ docker exec -it immich_server /bin/sh -c "npm run test:medium"
-build-all: $(foreach M,$(MODULES),build-$M) ;
+build-all: $(foreach M,$(filter-out e2e,$(MODULES)),build-$M) ;
install-all: $(foreach M,$(MODULES),install-$M) ;
-check-all: $(foreach M,$(MODULES),check-$M) ;
-lint-all: $(foreach M,$(MODULES),lint-$M) ;
-format-all: $(foreach M,$(MODULES),format-$M) ;
+check-all: $(foreach M,$(filter-out sdk cli docs,$(MODULES)),check-$M) ;
+lint-all: $(foreach M,$(filter-out sdk docs,$(MODULES)),lint-$M) ;
+format-all: $(foreach M,$(filter-out sdk,$(MODULES)),format-$M) ;
audit-all: $(foreach M,$(MODULES),audit-$M) ;
hygiene-all: lint-all format-all check-all sql audit-all;
-test-all: $(foreach M,$(MODULES),test-$M) ;
+test-all: $(foreach M,$(filter-out sdk docs,$(MODULES)),test-$M) ;
clean:
find . -name "node_modules" -type d -prune -exec rm -rf '{}' +
diff --git a/README.md b/README.md
index 44c38e6d14..0c7b1252ab 100644
--- a/README.md
+++ b/README.md
@@ -17,23 +17,24 @@
+
- -Català -Español -Français -Italiano -日本語 -한국어 -Deutsch -Nederlands -Türkçe -中文 -Русский -Português Brasileiro -Svenska -العربية - + Català + Español + Français + Italiano + 日本語 + 한국어 + Deutsch + Nederlands + Türkçe + 中文 + Русский + Português Brasileiro + Svenska + العربية + Tiếng Việt + ภาษาไทย
## Disclaimer @@ -101,6 +102,8 @@ For the mobile app, you can use `https://demo.immich.app/api` for the `Server En | Offline support | Yes | No | | Read-only gallery | Yes | Yes | | Stacked Photos | Yes | Yes | +| Tags | No | Yes | +| Folder View | No | Yes | ## Translations diff --git a/cli/.nvmrc b/cli/.nvmrc index 3516580bbb..1d9b7831ba 100644 --- a/cli/.nvmrc +++ b/cli/.nvmrc @@ -1 +1 @@ -20.17.0 +22.12.0 diff --git a/cli/Dockerfile b/cli/Dockerfile index b08aba9d3c..31dd8576e2 100644 --- a/cli/Dockerfile +++ b/cli/Dockerfile @@ -1,4 +1,4 @@ -FROM node:20.17.0-alpine3.20@sha256:2d07db07a2df6830718ae2a47db6fedce6745f5bcd174c398f2acdda90a11c03 AS core +FROM node:22.12.0-alpine3.20@sha256:96cc8323e25c8cc6ddcb8b965e135cfd57846e8003ec0d7bcec16c5fd5f6d39f AS core WORKDIR /usr/src/open-api/typescript-sdk COPY open-api/typescript-sdk/package*.json open-api/typescript-sdk/tsconfig*.json ./ diff --git a/cli/package-lock.json b/cli/package-lock.json index 3c18729552..af339110d0 100644 --- a/cli/package-lock.json +++ b/cli/package-lock.json @@ -1,12 +1,12 @@ { "name": "@immich/cli", - "version": "2.2.19", + "version": "2.2.37", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@immich/cli", - "version": "2.2.19", + "version": "2.2.37", "license": "GNU Affero General Public License version 3", "dependencies": { "fast-glob": "^3.3.2", @@ -24,17 +24,17 @@ "@types/cli-progress": "^3.11.0", "@types/lodash-es": "^4.17.12", "@types/mock-fs": "^4.13.1", - "@types/node": "^20.16.5", - "@typescript-eslint/eslint-plugin": "^8.0.0", - "@typescript-eslint/parser": "^8.0.0", + "@types/node": "^22.10.2", + "@typescript-eslint/eslint-plugin": "^8.15.0", + "@typescript-eslint/parser": "^8.15.0", "@vitest/coverage-v8": "^2.0.5", "byte-size": "^9.0.0", "cli-progress": "^3.12.0", "commander": "^12.0.0", - "eslint": "^9.0.0", + "eslint": "^9.14.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-prettier": "^5.1.3", - "eslint-plugin-unicorn": "^55.0.0", + "eslint-plugin-unicorn": "^56.0.1", "globals": "^15.9.0", "mock-fs": "^5.2.0", "prettier": "^3.2.5", @@ -43,7 +43,7 @@ "vite": "^5.0.12", "vite-tsconfig-paths": "^5.0.0", "vitest": "^2.0.5", - "vitest-fetch-mock": "^0.3.0", + "vitest-fetch-mock": "^0.4.0", "yaml": "^2.3.1" }, "engines": { @@ -52,14 +52,14 @@ }, "../open-api/typescript-sdk": { "name": "@immich/sdk", - "version": "1.115.0", + "version": "1.123.0", "dev": true, "license": "GNU Affero General Public License version 3", "dependencies": { "@oazapfts/runtime": "^1.0.2" }, "devDependencies": { - "@types/node": "^20.16.5", + "@types/node": "^22.10.2", "typescript": "^5.3.3" } }, @@ -173,19 +173,21 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.24.8", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", - "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-validator-identifier": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", - "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=6.9.0" } @@ -276,12 +278,13 @@ } }, "node_modules/@babel/parser": { - "version": "7.25.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.3.tgz", - "integrity": "sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==", + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz", + "integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/types": "^7.25.2" + "@babel/types": "^7.26.0" }, "bin": { "parser": "bin/babel-parser.js" @@ -291,14 +294,14 @@ } }, "node_modules/@babel/types": { - "version": "7.25.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz", - "integrity": "sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==", + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz", + "integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.24.8", - "@babel/helper-validator-identifier": "^7.24.7", - "to-fast-properties": "^2.0.0" + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" }, "engines": { "node": ">=6.9.0" @@ -717,9 +720,9 @@ } }, "node_modules/@eslint-community/regexpp": { - "version": "4.11.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz", - "integrity": "sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==", + "version": "4.12.1", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz", + "integrity": "sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==", "dev": true, "license": "MIT", "engines": { @@ -765,10 +768,20 @@ "node": "*" } }, + "node_modules/@eslint/core": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.7.0.tgz", + "integrity": "sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, "node_modules/@eslint/eslintrc": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz", - "integrity": "sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.2.0.tgz", + "integrity": "sha512-grOjVNN8P3hjJn/eIETF1wwd12DdnwFDoyceUJLYYdkpbwq3nLi+4fqrTAONx7XDALqlL220wC/RHSC/QTI/0w==", "dev": true, "license": "MIT", "dependencies": { @@ -794,6 +807,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dev": true, + "license": "MIT", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -817,6 +831,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dev": true, + "license": "ISC", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -825,9 +840,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.9.1", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.9.1.tgz", - "integrity": "sha512-xIDQRsfg5hNBqHz04H1R3scSVwmI+KUbqjsQKHKQ1DAUSaUjYPReZZmS/5PNiKu1fUvzDd6H7DEDKACSEhu+TQ==", + "version": "9.15.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.15.0.tgz", + "integrity": "sha512-tMTqrY+EzbXmKJR5ToI8lxu7jaN5EdmrBFJpQk5JmSlyLsx6o4t27r883K5xsLuCYCpfKBCGswMSWXsM+jB7lg==", "dev": true, "license": "MIT", "engines": { @@ -844,6 +859,57 @@ "node": "^18.18.0 || ^20.9.0 || >=21.1.0" } }, + "node_modules/@eslint/plugin-kit": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.3.tgz", + "integrity": "sha512-2b/g5hRmpbb1o4GnTZax9N9m0FXzz9OV42ZzI4rDDMDuHUqigAiQCEWChBWCY4ztAGVRjoWT19v0yMmc5/L5kA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "levn": "^0.4.1" + }, + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/@humanfs/core": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.1.tgz", + "integrity": "sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node": { + "version": "0.16.6", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.6.tgz", + "integrity": "sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@humanfs/core": "^0.19.1", + "@humanwhocodes/retry": "^0.3.0" + }, + "engines": { + "node": ">=18.18.0" + } + }, + "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz", + "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=18.18" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", @@ -858,9 +924,9 @@ } }, "node_modules/@humanwhocodes/retry": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.0.tgz", - "integrity": "sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.1.tgz", + "integrity": "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==", "dev": true, "license": "Apache-2.0", "engines": { @@ -1299,6 +1365,13 @@ "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", "dev": true }, + "node_modules/@types/json-schema": { + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/lodash": { "version": "4.17.0", "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.0.tgz", @@ -1324,13 +1397,13 @@ } }, "node_modules/@types/node": { - "version": "20.16.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.16.5.tgz", - "integrity": "sha512-VwYCweNo3ERajwy0IUlqqcyZ8/A7Zwa9ZP3MnENWcB11AejO+tLy3pu850goUW2FC/IJMdZUfKpX/yxL1gymCA==", + "version": "22.10.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.2.tgz", + "integrity": "sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==", "dev": true, "license": "MIT", "dependencies": { - "undici-types": "~6.19.2" + "undici-types": "~6.20.0" } }, "node_modules/@types/normalize-package-data": { @@ -1340,17 +1413,17 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.3.0.tgz", - "integrity": "sha512-FLAIn63G5KH+adZosDYiutqkOkYEx0nvcwNNfJAf+c7Ae/H35qWwTYvPZUKFj5AS+WfHG/WJJfWnDnyNUlp8UA==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.15.0.tgz", + "integrity": "sha512-+zkm9AR1Ds9uLWN3fkoeXgFppaQ+uEVtfOV62dDmsy9QCNqlRHWNEck4yarvRNrvRcHQLGfqBNui3cimoz8XAg==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.10.0", - "@typescript-eslint/scope-manager": "8.3.0", - "@typescript-eslint/type-utils": "8.3.0", - "@typescript-eslint/utils": "8.3.0", - "@typescript-eslint/visitor-keys": "8.3.0", + "@typescript-eslint/scope-manager": "8.15.0", + "@typescript-eslint/type-utils": "8.15.0", + "@typescript-eslint/utils": "8.15.0", + "@typescript-eslint/visitor-keys": "8.15.0", "graphemer": "^1.4.0", "ignore": "^5.3.1", "natural-compare": "^1.4.0", @@ -1374,16 +1447,16 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.3.0.tgz", - "integrity": "sha512-h53RhVyLu6AtpUzVCYLPhZGL5jzTD9fZL+SYf/+hYOx2bDkyQXztXSc4tbvKYHzfMXExMLiL9CWqJmVz6+78IQ==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.15.0.tgz", + "integrity": "sha512-7n59qFpghG4uazrF9qtGKBZXn7Oz4sOMm8dwNWDQY96Xlm2oX67eipqcblDj+oY1lLCbf1oltMZFpUso66Kl1A==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "@typescript-eslint/scope-manager": "8.3.0", - "@typescript-eslint/types": "8.3.0", - "@typescript-eslint/typescript-estree": "8.3.0", - "@typescript-eslint/visitor-keys": "8.3.0", + "@typescript-eslint/scope-manager": "8.15.0", + "@typescript-eslint/types": "8.15.0", + "@typescript-eslint/typescript-estree": "8.15.0", + "@typescript-eslint/visitor-keys": "8.15.0", "debug": "^4.3.4" }, "engines": { @@ -1403,14 +1476,14 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.3.0.tgz", - "integrity": "sha512-mz2X8WcN2nVu5Hodku+IR8GgCOl4C0G/Z1ruaWN4dgec64kDBabuXyPAr+/RgJtumv8EEkqIzf3X2U5DUKB2eg==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.15.0.tgz", + "integrity": "sha512-QRGy8ADi4J7ii95xz4UoiymmmMd/zuy9azCaamnZ3FM8T5fZcex8UfJcjkiEZjJSztKfEBe3dZ5T/5RHAmw2mA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.3.0", - "@typescript-eslint/visitor-keys": "8.3.0" + "@typescript-eslint/types": "8.15.0", + "@typescript-eslint/visitor-keys": "8.15.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1421,14 +1494,14 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.3.0.tgz", - "integrity": "sha512-wrV6qh//nLbfXZQoj32EXKmwHf4b7L+xXLrP3FZ0GOUU72gSvLjeWUl5J5Ue5IwRxIV1TfF73j/eaBapxx99Lg==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.15.0.tgz", + "integrity": "sha512-UU6uwXDoI3JGSXmcdnP5d8Fffa2KayOhUUqr/AiBnG1Gl7+7ut/oyagVeSkh7bxQ0zSXV9ptRh/4N15nkCqnpw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/typescript-estree": "8.3.0", - "@typescript-eslint/utils": "8.3.0", + "@typescript-eslint/typescript-estree": "8.15.0", + "@typescript-eslint/utils": "8.15.0", "debug": "^4.3.4", "ts-api-utils": "^1.3.0" }, @@ -1439,6 +1512,9 @@ "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, + "peerDependencies": { + "eslint": "^8.57.0 || ^9.0.0" + }, "peerDependenciesMeta": { "typescript": { "optional": true @@ -1446,9 +1522,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.3.0.tgz", - "integrity": "sha512-y6sSEeK+facMaAyixM36dQ5NVXTnKWunfD1Ft4xraYqxP0lC0POJmIaL/mw72CUMqjY9qfyVfXafMeaUj0noWw==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.15.0.tgz", + "integrity": "sha512-n3Gt8Y/KyJNe0S3yDCD2RVKrHBC4gTUcLTebVBXacPy091E6tNspFLKRXlk3hwT4G55nfr1n2AdFqi/XMxzmPQ==", "dev": true, "license": "MIT", "engines": { @@ -1460,14 +1536,14 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.3.0.tgz", - "integrity": "sha512-Mq7FTHl0R36EmWlCJWojIC1qn/ZWo2YiWYc1XVtasJ7FIgjo0MVv9rZWXEE7IK2CGrtwe1dVOxWwqXUdNgfRCA==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.15.0.tgz", + "integrity": "sha512-1eMp2JgNec/niZsR7ioFBlsh/Fk0oJbhaqO0jRyQBMgkz7RrFfkqF9lYYmBoGBaSiLnu8TAPQTwoTUiSTUW9dg==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "@typescript-eslint/types": "8.3.0", - "@typescript-eslint/visitor-keys": "8.3.0", + "@typescript-eslint/types": "8.15.0", + "@typescript-eslint/visitor-keys": "8.15.0", "debug": "^4.3.4", "fast-glob": "^3.3.2", "is-glob": "^4.0.3", @@ -1489,16 +1565,16 @@ } }, "node_modules/@typescript-eslint/utils": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.3.0.tgz", - "integrity": "sha512-F77WwqxIi/qGkIGOGXNBLV7nykwfjLsdauRB/DOFPdv6LTF3BHHkBpq81/b5iMPSF055oO2BiivDJV4ChvNtXA==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.15.0.tgz", + "integrity": "sha512-k82RI9yGhr0QM3Dnq+egEpz9qB6Un+WLYhmoNcvl8ltMEededhh7otBVVIDDsEEttauwdY/hQoSsOv13lxrFzQ==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", - "@typescript-eslint/scope-manager": "8.3.0", - "@typescript-eslint/types": "8.3.0", - "@typescript-eslint/typescript-estree": "8.3.0" + "@typescript-eslint/scope-manager": "8.15.0", + "@typescript-eslint/types": "8.15.0", + "@typescript-eslint/typescript-estree": "8.15.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1509,17 +1585,22 @@ }, "peerDependencies": { "eslint": "^8.57.0 || ^9.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.3.0.tgz", - "integrity": "sha512-RmZwrTbQ9QveF15m/Cl28n0LXD6ea2CjkhH5rQ55ewz3H24w+AMCJHPVYaZ8/0HoG8Z3cLLFFycRXxeO2tz9FA==", + "version": "8.15.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.15.0.tgz", + "integrity": "sha512-h8vYOulWec9LhpwfAdZf2bjr8xIp0KNKnpgqSz0qqYYKAW/QZKw3ktRndbiAtUz4acH4QLQavwZBYCc0wulA/Q==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.3.0", - "eslint-visitor-keys": "^3.4.3" + "@typescript-eslint/types": "8.15.0", + "eslint-visitor-keys": "^4.2.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1529,22 +1610,36 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@vitest/coverage-v8": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-2.0.5.tgz", - "integrity": "sha512-qeFcySCg5FLO2bHHSa0tAZAOnAUbp4L6/A5JDuj9+bt53JREl8hpLjLHEWF0e/gWc8INVpJaqA7+Ene2rclpZg==", + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@vitest/coverage-v8": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-2.1.5.tgz", + "integrity": "sha512-/RoopB7XGW7UEkUndRXF87A9CwkoZAJW01pj8/3pgmDVsjMH2IKy6H1A38po9tmUlwhSyYs0az82rbKd9Yaynw==", + "dev": true, + "license": "MIT", "dependencies": { "@ampproject/remapping": "^2.3.0", "@bcoe/v8-coverage": "^0.2.3", - "debug": "^4.3.5", + "debug": "^4.3.7", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-report": "^3.0.1", "istanbul-lib-source-maps": "^5.0.6", "istanbul-reports": "^3.1.7", - "magic-string": "^0.30.10", - "magicast": "^0.3.4", - "std-env": "^3.7.0", + "magic-string": "^0.30.12", + "magicast": "^0.3.5", + "std-env": "^3.8.0", "test-exclude": "^7.0.1", "tinyrainbow": "^1.2.0" }, @@ -1552,29 +1647,64 @@ "url": "https://opencollective.com/vitest" }, "peerDependencies": { - "vitest": "2.0.5" + "@vitest/browser": "2.1.5", + "vitest": "2.1.5" + }, + "peerDependenciesMeta": { + "@vitest/browser": { + "optional": true + } } }, "node_modules/@vitest/expect": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.0.5.tgz", - "integrity": "sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.1.5.tgz", + "integrity": "sha512-nZSBTW1XIdpZvEJyoP/Sy8fUg0b8od7ZpGDkTUcfJ7wz/VoZAFzFfLyxVxGFhUjJzhYqSbIpfMtl/+k/dpWa3Q==", "dev": true, + "license": "MIT", "dependencies": { - "@vitest/spy": "2.0.5", - "@vitest/utils": "2.0.5", - "chai": "^5.1.1", + "@vitest/spy": "2.1.5", + "@vitest/utils": "2.1.5", + "chai": "^5.1.2", "tinyrainbow": "^1.2.0" }, "funding": { "url": "https://opencollective.com/vitest" } }, - "node_modules/@vitest/pretty-format": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.0.5.tgz", - "integrity": "sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==", + "node_modules/@vitest/mocker": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-2.1.5.tgz", + "integrity": "sha512-XYW6l3UuBmitWqSUXTNXcVBUCRytDogBsWuNXQijc00dtnU/9OqpXWp4OJroVrad/gLIomAq9aW8yWDBtMthhQ==", "dev": true, + "license": "MIT", + "dependencies": { + "@vitest/spy": "2.1.5", + "estree-walker": "^3.0.3", + "magic-string": "^0.30.12" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "msw": "^2.4.9", + "vite": "^5.0.0" + }, + "peerDependenciesMeta": { + "msw": { + "optional": true + }, + "vite": { + "optional": true + } + } + }, + "node_modules/@vitest/pretty-format": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.5.tgz", + "integrity": "sha512-4ZOwtk2bqG5Y6xRGHcveZVr+6txkH7M2e+nPFd6guSoN638v/1XQ0K06eOpi0ptVU/2tW/pIU4IoPotY/GZ9fw==", + "dev": true, + "license": "MIT", "dependencies": { "tinyrainbow": "^1.2.0" }, @@ -1583,12 +1713,13 @@ } }, "node_modules/@vitest/runner": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.0.5.tgz", - "integrity": "sha512-TfRfZa6Bkk9ky4tW0z20WKXFEwwvWhRY+84CnSEtq4+3ZvDlJyY32oNTJtM7AW9ihW90tX/1Q78cb6FjoAs+ig==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-2.1.5.tgz", + "integrity": "sha512-pKHKy3uaUdh7X6p1pxOkgkVAFW7r2I818vHDthYLvUyjRfkKOU6P45PztOch4DZarWQne+VOaIMwA/erSSpB9g==", "dev": true, + "license": "MIT", "dependencies": { - "@vitest/utils": "2.0.5", + "@vitest/utils": "2.1.5", "pathe": "^1.1.2" }, "funding": { @@ -1596,13 +1727,14 @@ } }, "node_modules/@vitest/snapshot": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.0.5.tgz", - "integrity": "sha512-SgCPUeDFLaM0mIUHfaArq8fD2WbaXG/zVXjRupthYfYGzc8ztbFbu6dUNOblBG7XLMR1kEhS/DNnfCZ2IhdDew==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-2.1.5.tgz", + "integrity": "sha512-zmYw47mhfdfnYbuhkQvkkzYroXUumrwWDGlMjpdUr4jBd3HZiV2w7CQHj+z7AAS4VOtWxI4Zt4bWt4/sKcoIjg==", "dev": true, + "license": "MIT", "dependencies": { - "@vitest/pretty-format": "2.0.5", - "magic-string": "^0.30.10", + "@vitest/pretty-format": "2.1.5", + "magic-string": "^0.30.12", "pathe": "^1.1.2" }, "funding": { @@ -1610,26 +1742,27 @@ } }, "node_modules/@vitest/spy": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.0.5.tgz", - "integrity": "sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.1.5.tgz", + "integrity": "sha512-aWZF3P0r3w6DiYTVskOYuhBc7EMc3jvn1TkBg8ttylFFRqNN2XGD7V5a4aQdk6QiUzZQ4klNBSpCLJgWNdIiNw==", "dev": true, + "license": "MIT", "dependencies": { - "tinyspy": "^3.0.0" + "tinyspy": "^3.0.2" }, "funding": { "url": "https://opencollective.com/vitest" } }, "node_modules/@vitest/utils": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.0.5.tgz", - "integrity": "sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.5.tgz", + "integrity": "sha512-yfj6Yrp0Vesw2cwJbP+cl04OC+IHFsuQsrsJBL9pyGeQXE56v1UAOQco+SR55Vf1nQzfV0QJg1Qum7AaWUwwYg==", "dev": true, + "license": "MIT", "dependencies": { - "@vitest/pretty-format": "2.0.5", - "estree-walker": "^3.0.3", - "loupe": "^3.1.1", + "@vitest/pretty-format": "2.1.5", + "loupe": "^3.1.2", "tinyrainbow": "^1.2.0" }, "funding": { @@ -1637,9 +1770,9 @@ } }, "node_modules/acorn": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", - "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", "dev": true, "license": "MIT", "bin": { @@ -1710,6 +1843,7 @@ "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", "dev": true, + "license": "MIT", "engines": { "node": ">=12" } @@ -1742,9 +1876,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz", - "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==", + "version": "4.24.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.3.tgz", + "integrity": "sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA==", "dev": true, "funding": [ { @@ -1760,11 +1894,12 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001587", - "electron-to-chromium": "^1.4.668", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.0.13" + "caniuse-lite": "^1.0.30001688", + "electron-to-chromium": "^1.5.73", + "node-releases": "^2.0.19", + "update-browserslist-db": "^1.1.1" }, "bin": { "browserslist": "cli.js" @@ -1800,6 +1935,7 @@ "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", "dev": true, + "license": "MIT", "engines": { "node": ">=8" } @@ -1814,9 +1950,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001597", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001597.tgz", - "integrity": "sha512-7LjJvmQU6Sj7bL0j5b5WY/3n7utXUJvAe1lxhsHDbLmwX9mdL86Yjtr+5SRCyf8qME4M7pU2hswj0FpyBVCv9w==", + "version": "1.0.30001689", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001689.tgz", + "integrity": "sha512-CmeR2VBycfa+5/jOfnp/NpWPGd06nf1XYiefUvhXFfZE4GkRc9jv+eGPS4nT558WS/8lYCzV8SlANCIPvbWP1g==", "dev": true, "funding": [ { @@ -1831,13 +1967,15 @@ "type": "github", "url": "https://github.com/sponsors/ai" } - ] + ], + "license": "CC-BY-4.0" }, "node_modules/chai": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.1.tgz", - "integrity": "sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.2.tgz", + "integrity": "sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==", "dev": true, + "license": "MIT", "dependencies": { "assertion-error": "^2.0.1", "check-error": "^2.1.1", @@ -1870,6 +2008,7 @@ "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz", "integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==", "dev": true, + "license": "MIT", "engines": { "node": ">= 16" } @@ -1954,35 +2093,29 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/core-js-compat": { - "version": "3.37.1", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.1.tgz", - "integrity": "sha512-9TNiImhKvQqSUkOvk/mMRZzOANTiEVC7WaBNhHcKM7x+/5E1l5NvsysR19zuDQScE8k+kfQXWRN3AtS/eOSHpg==", + "version": "3.39.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.39.0.tgz", + "integrity": "sha512-VgEUx3VwlExr5no0tXlBt+silBvhTryPwCXRI2Id1PN8WTKu7MreethvddqOubrYxkFdv/RnYrqlv1sFNAUelw==", "dev": true, + "license": "MIT", "dependencies": { - "browserslist": "^4.23.0" + "browserslist": "^4.24.2" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/core-js" } }, - "node_modules/cross-fetch": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-4.0.0.tgz", - "integrity": "sha512-e4a5N8lVvuLgAWgnCrLr2PP0YyDOTHa9H/Rj54dirp61qXnNq46m82bRhNqIA5VccJtWBvPTFRV3TtvHUKPB1g==", - "dev": true, - "dependencies": { - "node-fetch": "^2.6.12" - } - }, "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, + "license": "MIT", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -1993,12 +2126,13 @@ } }, "node_modules/debug": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", - "integrity": "sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", "dev": true, + "license": "MIT", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -2014,6 +2148,7 @@ "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -2031,10 +2166,11 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.705", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.705.tgz", - "integrity": "sha512-LKqhpwJCLhYId2VVwEzFXWrqQI5n5zBppz1W9ehhTlfYU8CUUW6kClbN8LHF/v7flMgRdETS772nqywJ+ckVAw==", - "dev": true + "version": "1.5.74", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.74.tgz", + "integrity": "sha512-ck3//9RC+6oss/1Bh9tiAVFy5vfSKbRHAFh7Z3/eTRkEqJeWgymloShB17Vg3Z4nmDNp35vAd1BZ6CMW4Wt6Iw==", + "dev": true, + "license": "ISC" }, "node_modules/emoji-regex": { "version": "8.0.0", @@ -2051,6 +2187,13 @@ "is-arrayish": "^0.2.1" } }, + "node_modules/es-module-lexer": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz", + "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==", + "dev": true, + "license": "MIT" + }, "node_modules/esbuild": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", @@ -2091,10 +2234,11 @@ } }, "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, + "license": "MIT", "engines": { "node": ">=6" } @@ -2112,28 +2256,32 @@ } }, "node_modules/eslint": { - "version": "9.9.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.9.1.tgz", - "integrity": "sha512-dHvhrbfr4xFQ9/dq+jcVneZMyRYLjggWjk6RVsIiHsP8Rz6yZ8LvZ//iU4TrZF+SXWG+JkNF2OyiZRvzgRDqMg==", + "version": "9.14.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.14.0.tgz", + "integrity": "sha512-c2FHsVBr87lnUtjP4Yhvk4yEhKrQavGafRA/Se1ouse8PfbfC/Qh9Mxa00yWsZRlqeUB9raXip0aiiUZkgnr9g==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.11.0", + "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.18.0", + "@eslint/core": "^0.7.0", "@eslint/eslintrc": "^3.1.0", - "@eslint/js": "9.9.1", + "@eslint/js": "9.14.0", + "@eslint/plugin-kit": "^0.2.0", + "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", - "@humanwhocodes/retry": "^0.3.0", - "@nodelib/fs.walk": "^1.2.8", + "@humanwhocodes/retry": "^0.4.0", + "@types/estree": "^1.0.6", + "@types/json-schema": "^7.0.15", "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^8.0.2", - "eslint-visitor-keys": "^4.0.0", - "espree": "^10.1.0", + "eslint-scope": "^8.2.0", + "eslint-visitor-keys": "^4.2.0", + "espree": "^10.3.0", "esquery": "^1.5.0", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -2143,14 +2291,11 @@ "ignore": "^5.2.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", - "is-path-inside": "^3.0.3", "json-stable-stringify-without-jsonify": "^1.0.1", - "levn": "^0.4.1", "lodash.merge": "^4.6.2", "minimatch": "^3.1.2", "natural-compare": "^1.4.0", "optionator": "^0.9.3", - "strip-ansi": "^6.0.1", "text-table": "^0.2.0" }, "bin": { @@ -2215,19 +2360,19 @@ } }, "node_modules/eslint-plugin-unicorn": { - "version": "55.0.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-55.0.0.tgz", - "integrity": "sha512-n3AKiVpY2/uDcGrS3+QsYDkjPfaOrNrsfQxU9nt5nitd9KuvVXrfAvgCO9DYPSfap+Gqjw9EOrXIsBp5tlHZjA==", + "version": "56.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-56.0.1.tgz", + "integrity": "sha512-FwVV0Uwf8XPfVnKSGpMg7NtlZh0G0gBarCaFcMUOoqPxXryxdYxTRRv4kH6B9TFCVIrjRXG+emcxIk2ayZilog==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-validator-identifier": "^7.24.5", + "@babel/helper-validator-identifier": "^7.24.7", "@eslint-community/eslint-utils": "^4.4.0", "ci-info": "^4.0.0", "clean-regexp": "^1.0.0", - "core-js-compat": "^3.37.0", - "esquery": "^1.5.0", - "globals": "^15.7.0", + "core-js-compat": "^3.38.1", + "esquery": "^1.6.0", + "globals": "^15.9.0", "indent-string": "^4.0.0", "is-builtin-module": "^3.2.1", "jsesc": "^3.0.2", @@ -2235,7 +2380,7 @@ "read-pkg-up": "^7.0.1", "regexp-tree": "^0.1.27", "regjsparser": "^0.10.0", - "semver": "^7.6.1", + "semver": "^7.6.3", "strip-indent": "^3.0.0" }, "engines": { @@ -2249,9 +2394,9 @@ } }, "node_modules/eslint-scope": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.0.2.tgz", - "integrity": "sha512-6E4xmrTw5wtxnLA5wYL3WDfhZ/1bUBGOXV0zQvVRDOtrR8D0p6W7fs3JweNYhwRYeGvd/1CKX2se0/2s7Q/nJA==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.2.0.tgz", + "integrity": "sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -2277,6 +2422,23 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/eslint/node_modules/@eslint/js": { + "version": "9.14.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.14.0.tgz", + "integrity": "sha512-pFoEtFWCPyDOl+C6Ift+wC7Ro89otjigCf5vcuWqWgqNSQbRrpjSvdeE6ofLz4dHmyxD5f7gIdGT4+p36L6Twg==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^18.18.0 || ^20.9.0 || >=21.1.0" + } + }, + "node_modules/eslint/node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, + "license": "MIT" + }, "node_modules/eslint/node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -2289,9 +2451,9 @@ } }, "node_modules/eslint/node_modules/eslint-visitor-keys": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", - "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", "dev": true, "license": "Apache-2.0", "engines": { @@ -2315,15 +2477,15 @@ } }, "node_modules/espree": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz", - "integrity": "sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA==", + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.3.0.tgz", + "integrity": "sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==", "dev": true, "license": "BSD-2-Clause", "dependencies": { - "acorn": "^8.12.0", + "acorn": "^8.14.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^4.0.0" + "eslint-visitor-keys": "^4.2.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -2333,9 +2495,9 @@ } }, "node_modules/espree/node_modules/eslint-visitor-keys": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz", - "integrity": "sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.0.tgz", + "integrity": "sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==", "dev": true, "license": "Apache-2.0", "engines": { @@ -2346,10 +2508,11 @@ } }, "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz", + "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==", "dev": true, + "license": "BSD-3-Clause", "dependencies": { "estraverse": "^5.1.0" }, @@ -2362,6 +2525,7 @@ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, + "license": "BSD-2-Clause", "dependencies": { "estraverse": "^5.2.0" }, @@ -2383,6 +2547,7 @@ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", "dev": true, + "license": "MIT", "dependencies": { "@types/estree": "^1.0.0" } @@ -2396,27 +2561,14 @@ "node": ">=0.10.0" } }, - "node_modules/execa": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", - "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", + "node_modules/expect-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.1.0.tgz", + "integrity": "sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==", "dev": true, - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^8.0.1", - "human-signals": "^5.0.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^4.1.0", - "strip-final-newline": "^3.0.0" - }, + "license": "Apache-2.0", "engines": { - "node": ">=16.17" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "node": ">=12.0.0" } }, "node_modules/fast-deep-equal": { @@ -2435,6 +2587,7 @@ "version": "3.3.2", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "license": "MIT", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -2577,27 +2730,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/get-stream": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", - "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", - "dev": true, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/glob": { "version": "10.4.5", "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", @@ -2631,9 +2763,9 @@ } }, "node_modules/globals": { - "version": "15.9.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-15.9.0.tgz", - "integrity": "sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA==", + "version": "15.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-15.12.0.tgz", + "integrity": "sha512-1+gLErljJFhbOVyaetcwJiJ4+eLe45S2E7P5UiZ9xGfeq3ATQf5DOv9G7MH3gGbKQLkzmNh2DxfZwLdw+j6oTQ==", "dev": true, "license": "MIT", "engines": { @@ -2688,15 +2820,6 @@ "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, - "node_modules/human-signals": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", - "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", - "dev": true, - "engines": { - "node": ">=16.17.0" - } - }, "node_modules/ignore": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", @@ -2809,27 +2932,6 @@ "node": ">=0.12.0" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-stream": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", - "dev": true, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -3012,13 +3114,11 @@ "dev": true }, "node_modules/loupe": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.1.tgz", - "integrity": "sha512-edNu/8D5MKVfGVFRhFf8aAxiTM6Wumfz5XsaatSxlD3w4R1d/WEKUTydCdPGbl9K7QG/Ca3GnDV2sIKIpXRQcw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.2.tgz", + "integrity": "sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==", "dev": true, - "dependencies": { - "get-func-name": "^2.0.1" - } + "license": "MIT" }, "node_modules/lru-cache": { "version": "10.4.3", @@ -3027,22 +3127,24 @@ "dev": true }, "node_modules/magic-string": { - "version": "0.30.11", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", - "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", + "version": "0.30.12", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.12.tgz", + "integrity": "sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==", "dev": true, + "license": "MIT", "dependencies": { "@jridgewell/sourcemap-codec": "^1.5.0" } }, "node_modules/magicast": { - "version": "0.3.4", - "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.4.tgz", - "integrity": "sha512-TyDF/Pn36bBji9rWKHlZe+PZb6Mx5V8IHCSxk7X4aljM4e/vyDvZZYwHewdVaqiA0nb3ghfHU/6AUpDxWoER2Q==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.5.tgz", + "integrity": "sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==", "dev": true, + "license": "MIT", "dependencies": { - "@babel/parser": "^7.24.4", - "@babel/types": "^7.24.0", + "@babel/parser": "^7.25.4", + "@babel/types": "^7.25.4", "source-map-js": "^1.2.0" } }, @@ -3061,12 +3163,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/merge-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true - }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -3087,18 +3183,6 @@ "node": ">=8.6" } }, - "node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/min-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", @@ -3134,19 +3218,21 @@ } }, "node_modules/mock-fs": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-5.2.0.tgz", - "integrity": "sha512-2dF2R6YMSZbpip1V1WHKGLNjr/k48uQClqMVb5H3MOvwc9qhYis3/IWbj02qIg/Y8MDXKFF4c5v0rxx2o6xTZw==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/mock-fs/-/mock-fs-5.4.1.tgz", + "integrity": "sha512-sz/Q8K1gXXXHR+qr0GZg2ysxCRr323kuN10O7CtQjraJsFDJ4SJ+0I5MzALz7aRp9lHk8Cc/YdsT95h9Ka1aFw==", "dev": true, + "license": "MIT", "engines": { "node": ">=12.0.0" } }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" }, "node_modules/nanoid": { "version": "3.3.7", @@ -3172,31 +3258,12 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, - "node_modules/node-fetch": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", - "dev": true, - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true + "version": "2.0.19", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz", + "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==", + "dev": true, + "license": "MIT" }, "node_modules/normalize-package-data": { "version": "2.5.0", @@ -3219,48 +3286,6 @@ "semver": "bin/semver" } }, - "node_modules/npm-run-path": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", - "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", - "dev": true, - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/npm-run-path/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dev": true, - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/optionator": { "version": "0.9.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.3.tgz", @@ -3397,21 +3422,23 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/pathval": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz", "integrity": "sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==", "dev": true, + "license": "MIT", "engines": { "node": ">= 14.16" } }, "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", "dev": true, "license": "ISC" }, @@ -3436,9 +3463,9 @@ } }, "node_modules/postcss": { - "version": "8.4.41", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.41.tgz", - "integrity": "sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==", + "version": "8.4.47", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", + "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", "dev": true, "funding": [ { @@ -3457,8 +3484,8 @@ "license": "MIT", "dependencies": { "nanoid": "^3.3.7", - "picocolors": "^1.0.1", - "source-map-js": "^1.2.0" + "picocolors": "^1.1.0", + "source-map-js": "^1.2.1" }, "engines": { "node": "^10 || ^12 || >=14" @@ -3502,21 +3529,17 @@ } }, "node_modules/prettier-plugin-organize-imports": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/prettier-plugin-organize-imports/-/prettier-plugin-organize-imports-4.0.0.tgz", - "integrity": "sha512-vnKSdgv9aOlqKeEFGhf9SCBsTyzDSyScy1k7E0R1Uo4L0cTcOV7c1XQaT7jfXIOc/p08WLBfN2QUQA9zDSZMxA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/prettier-plugin-organize-imports/-/prettier-plugin-organize-imports-4.1.0.tgz", + "integrity": "sha512-5aWRdCgv645xaa58X8lOxzZoiHAldAPChljr/MT0crXVOWTZ+Svl4hIWlz+niYSlO6ikE5UXkN1JrRvIP2ut0A==", "dev": true, "license": "MIT", "peerDependencies": { - "@vue/language-plugin-pug": "^2.0.24", "prettier": ">=2.0", "typescript": ">=2.9", - "vue-tsc": "^2.0.24" + "vue-tsc": "^2.1.0" }, "peerDependenciesMeta": { - "@vue/language-plugin-pug": { - "optional": true - }, "vue-tsc": { "optional": true } @@ -3776,10 +3799,11 @@ } }, "node_modules/semver": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz", - "integrity": "sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "dev": true, + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -3827,10 +3851,11 @@ } }, "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "dev": true, + "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } @@ -3874,10 +3899,11 @@ "dev": true }, "node_modules/std-env": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", - "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==", - "dev": true + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.8.0.tgz", + "integrity": "sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==", + "dev": true, + "license": "MIT" }, "node_modules/string-width": { "version": "4.2.3", @@ -3933,18 +3959,6 @@ "node": ">=8" } }, - "node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", - "dev": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/strip-indent": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", @@ -4028,19 +4042,29 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/tinybench": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.8.0.tgz", - "integrity": "sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==", - "dev": true + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz", + "integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==", + "dev": true, + "license": "MIT" + }, + "node_modules/tinyexec": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.1.tgz", + "integrity": "sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==", + "dev": true, + "license": "MIT" }, "node_modules/tinypool": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.0.tgz", - "integrity": "sha512-KIKExllK7jp3uvrNtvRBYBWBOAXSX8ZvoaD8T+7KB/QHIuoJW3Pmr60zucywjAlMb5TeXUkcs/MWeWLu0qvuAQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-1.0.1.tgz", + "integrity": "sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA==", "dev": true, + "license": "MIT", "engines": { "node": "^18.0.0 || >=20.0.0" } @@ -4055,23 +4079,15 @@ } }, "node_modules/tinyspy": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.0.tgz", - "integrity": "sha512-q5nmENpTHgiPVd1cJDDc9cVoYN5x4vCvwT3FMilvKPKneCBZAxn2YWQjDF0UMcE9k0Cay1gBiDfTMU0g+mPMQA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz", + "integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==", "dev": true, + "license": "MIT", "engines": { "node": ">=14.0.0" } }, - "node_modules/to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", @@ -4083,12 +4099,6 @@ "node": ">=8.0" } }, - "node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, "node_modules/ts-api-utils": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz", @@ -4140,9 +4150,9 @@ } }, "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", + "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", "dev": true, "license": "Apache-2.0", "bin": { @@ -4154,16 +4164,16 @@ } }, "node_modules/undici-types": { - "version": "6.19.8", - "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", - "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", + "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==", "dev": true, "license": "MIT" }, "node_modules/update-browserslist-db": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", - "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "dev": true, "funding": [ { @@ -4179,9 +4189,10 @@ "url": "https://github.com/sponsors/ai" } ], + "license": "MIT", "dependencies": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" }, "bin": { "update-browserslist-db": "cli.js" @@ -4210,14 +4221,14 @@ } }, "node_modules/vite": { - "version": "5.4.2", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.2.tgz", - "integrity": "sha512-dDrQTRHp5C1fTFzcSaMxjk6vdpKvT+2/mIdE07Gw2ykehT49O0z/VHS3zZ8iV/Gh8BJJKHWOe5RjaNrW5xf/GA==", + "version": "5.4.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz", + "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==", "dev": true, "license": "MIT", "dependencies": { "esbuild": "^0.21.3", - "postcss": "^8.4.41", + "postcss": "^8.4.43", "rollup": "^4.20.0" }, "bin": { @@ -4270,15 +4281,16 @@ } }, "node_modules/vite-node": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.0.5.tgz", - "integrity": "sha512-LdsW4pxj0Ot69FAoXZ1yTnA9bjGohr2yNBU7QKRxpz8ITSkhuDl6h3zS/tvgz4qrNjeRnvrWeXQ8ZF7Um4W00Q==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-2.1.5.tgz", + "integrity": "sha512-rd0QIgx74q4S1Rd56XIiL2cYEdyWn13cunYBIuqh9mpmQr7gGS0IxXoP8R6OaZtNQQLyXSWbd4rXKYUbhFpK5w==", "dev": true, + "license": "MIT", "dependencies": { "cac": "^6.7.14", - "debug": "^4.3.5", + "debug": "^4.3.7", + "es-module-lexer": "^1.5.4", "pathe": "^1.1.2", - "tinyrainbow": "^1.2.0", "vite": "^5.0.0" }, "bin": { @@ -4292,9 +4304,9 @@ } }, "node_modules/vite-tsconfig-paths": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.0.1.tgz", - "integrity": "sha512-yqwv+LstU7NwPeNqajZzLEBVpUFU6Dugtb2P84FXuvaoYA+/70l9MHE+GYfYAycVyPSDYZ7mjOFuYBRqlEpTig==", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.2.tgz", + "integrity": "sha512-gEIbKfJzSEv0yR3XS2QEocKetONoWkbROj6hGx0FHM18qKUojhvcokQsxQx5nMkelZq2n37zbSGCJn+FSODSjA==", "dev": true, "license": "MIT", "dependencies": { @@ -4312,29 +4324,31 @@ } }, "node_modules/vitest": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.0.5.tgz", - "integrity": "sha512-8GUxONfauuIdeSl5f9GTgVEpg5BTOlplET4WEDaeY2QBiN8wSm68vxN/tb5z405OwppfoCavnwXafiaYBC/xOA==", + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-2.1.5.tgz", + "integrity": "sha512-P4ljsdpuzRTPI/kbND2sDZ4VmieerR2c9szEZpjc+98Z9ebvnXmM5+0tHEKqYZumXqlvnmfWsjeFOjXVriDG7A==", "dev": true, + "license": "MIT", "dependencies": { - "@ampproject/remapping": "^2.3.0", - "@vitest/expect": "2.0.5", - "@vitest/pretty-format": "^2.0.5", - "@vitest/runner": "2.0.5", - "@vitest/snapshot": "2.0.5", - "@vitest/spy": "2.0.5", - "@vitest/utils": "2.0.5", - "chai": "^5.1.1", - "debug": "^4.3.5", - "execa": "^8.0.1", - "magic-string": "^0.30.10", + "@vitest/expect": "2.1.5", + "@vitest/mocker": "2.1.5", + "@vitest/pretty-format": "^2.1.5", + "@vitest/runner": "2.1.5", + "@vitest/snapshot": "2.1.5", + "@vitest/spy": "2.1.5", + "@vitest/utils": "2.1.5", + "chai": "^5.1.2", + "debug": "^4.3.7", + "expect-type": "^1.1.0", + "magic-string": "^0.30.12", "pathe": "^1.1.2", - "std-env": "^3.7.0", - "tinybench": "^2.8.0", - "tinypool": "^1.0.0", + "std-env": "^3.8.0", + "tinybench": "^2.9.0", + "tinyexec": "^0.3.1", + "tinypool": "^1.0.1", "tinyrainbow": "^1.2.0", "vite": "^5.0.0", - "vite-node": "2.0.5", + "vite-node": "2.1.5", "why-is-node-running": "^2.3.0" }, "bin": { @@ -4349,8 +4363,8 @@ "peerDependencies": { "@edge-runtime/vm": "*", "@types/node": "^18.0.0 || >=20.0.0", - "@vitest/browser": "2.0.5", - "@vitest/ui": "2.0.5", + "@vitest/browser": "2.1.5", + "@vitest/ui": "2.1.5", "happy-dom": "*", "jsdom": "*" }, @@ -4376,36 +4390,18 @@ } }, "node_modules/vitest-fetch-mock": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/vitest-fetch-mock/-/vitest-fetch-mock-0.3.0.tgz", - "integrity": "sha512-g6upWcL8/32fXL43/5f4VHcocuwQIi9Fj5othcK9gPO8XqSEGtnIZdenr2IaipDr61ReRFt+vaOEgo8jiUUX5w==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/vitest-fetch-mock/-/vitest-fetch-mock-0.4.2.tgz", + "integrity": "sha512-MuN/TCAvvUs9sLMdOPKqdXEUOD0E5cNW/LN7Tro3KkrLBsvUaH7iQWcznNUU4ml+GqX6ZbNguDmFQ2tliKqhCg==", "dev": true, - "dependencies": { - "cross-fetch": "^4.0.0" - }, + "license": "MIT", "engines": { - "node": ">=14.14.0" + "node": ">=18.0.0" }, "peerDependencies": { "vitest": ">=2.0.0" } }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dev": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -4535,9 +4531,9 @@ } }, "node_modules/yaml": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.0.tgz", - "integrity": "sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.6.0.tgz", + "integrity": "sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==", "dev": true, "license": "ISC", "bin": { diff --git a/cli/package.json b/cli/package.json index 287974e49b..bdfaa0f528 100644 --- a/cli/package.json +++ b/cli/package.json @@ -1,6 +1,6 @@ { "name": "@immich/cli", - "version": "2.2.19", + "version": "2.2.37", "description": "Command Line Interface (CLI) for Immich", "type": "module", "exports": "./dist/index.js", @@ -20,17 +20,17 @@ "@types/cli-progress": "^3.11.0", "@types/lodash-es": "^4.17.12", "@types/mock-fs": "^4.13.1", - "@types/node": "^20.16.5", - "@typescript-eslint/eslint-plugin": "^8.0.0", - "@typescript-eslint/parser": "^8.0.0", + "@types/node": "^22.10.2", + "@typescript-eslint/eslint-plugin": "^8.15.0", + "@typescript-eslint/parser": "^8.15.0", "@vitest/coverage-v8": "^2.0.5", "byte-size": "^9.0.0", "cli-progress": "^3.12.0", "commander": "^12.0.0", - "eslint": "^9.0.0", + "eslint": "^9.14.0", "eslint-config-prettier": "^9.1.0", "eslint-plugin-prettier": "^5.1.3", - "eslint-plugin-unicorn": "^55.0.0", + "eslint-plugin-unicorn": "^56.0.1", "globals": "^15.9.0", "mock-fs": "^5.2.0", "prettier": "^3.2.5", @@ -39,7 +39,7 @@ "vite": "^5.0.12", "vite-tsconfig-paths": "^5.0.0", "vitest": "^2.0.5", - "vitest-fetch-mock": "^0.3.0", + "vitest-fetch-mock": "^0.4.0", "yaml": "^2.3.1" }, "scripts": { @@ -67,6 +67,6 @@ "lodash-es": "^4.17.21" }, "volta": { - "node": "20.17.0" + "node": "22.12.0" } } diff --git a/cli/src/commands/asset.ts b/cli/src/commands/asset.ts index 9c1a503cda..4cf6742f24 100644 --- a/cli/src/commands/asset.ts +++ b/cli/src/commands/asset.ts @@ -1,5 +1,6 @@ import { Action, + AssetBulkUploadCheckItem, AssetBulkUploadCheckResult, AssetMediaResponseDto, AssetMediaStatus, @@ -11,7 +12,7 @@ import { getSupportedMediaTypes, } from '@immich/sdk'; import byteSize from 'byte-size'; -import { Presets, SingleBar } from 'cli-progress'; +import { MultiBar, Presets, SingleBar } from 'cli-progress'; import { chunk } from 'lodash-es'; import { Stats, createReadStream } from 'node:fs'; import { stat, unlink } from 'node:fs/promises'; @@ -90,23 +91,23 @@ export const checkForDuplicates = async (files: string[], { concurrency, skipHas return { newFiles: files, duplicates: [] }; } - const progressBar = new SingleBar( - { format: 'Checking files | {bar} | {percentage}% | ETA: {eta}s | {value}/{total} assets' }, + const multiBar = new MultiBar( + { format: '{message} | {bar} | {percentage}% | ETA: {eta}s | {value}/{total} assets' }, Presets.shades_classic, ); - progressBar.start(files.length, 0); + const hashProgressBar = multiBar.create(files.length, 0, { message: 'Hashing files ' }); + const checkProgressBar = multiBar.create(files.length, 0, { message: 'Checking for duplicates' }); const newFiles: string[] = []; const duplicates: Asset[] = []; - const queue = new Queue
+You can use [this guide](/docs/guides/smtp-gmail) to use Gmail's SMTP server.
## User's notifications settings
Users can manage their email notification settings from their account settings page on the web. They can choose to turn email notifications on or off for the following events:
+
+## Notification templates
+
+You can override the default notification text with custom templates in HTML format. You can use tags to show dynamic tags in your templates.
+
+
diff --git a/docs/docs/administration/img/email-settings.png b/docs/docs/administration/img/email-settings.png
deleted file mode 100644
index a0d7135426..0000000000
Binary files a/docs/docs/administration/img/email-settings.png and /dev/null differ
diff --git a/docs/docs/administration/img/user-notifications-templates.png b/docs/docs/administration/img/user-notifications-templates.png
new file mode 100644
index 0000000000..150d39b7a6
Binary files /dev/null and b/docs/docs/administration/img/user-notifications-templates.png differ
diff --git a/docs/docs/administration/jobs-workers.md b/docs/docs/administration/jobs-workers.md
index fb5ca7c059..fde39a2e3a 100644
--- a/docs/docs/administration/jobs-workers.md
+++ b/docs/docs/administration/jobs-workers.md
@@ -22,7 +22,7 @@ Copy the entire `immich-server` block as a new service and make the following ch
- container_name: immich_server
...
- ports:
-- - 2283:3001
+- - 2283:2283
+ immich-microservices:
+ container_name: immich_microservices
```
diff --git a/docs/docs/administration/oauth.md b/docs/docs/administration/oauth.md
index 12cd7502a5..2dc6990944 100644
--- a/docs/docs/administration/oauth.md
+++ b/docs/docs/administration/oauth.md
@@ -11,7 +11,7 @@ Unable to set `app.immich:///oauth-callback` as a valid redirect URI? See [Mobil
Immich supports 3rd party authentication via [OpenID Connect][oidc] (OIDC), an identity layer built on top of OAuth2. OIDC is supported by most identity providers, including:
- [Authentik](https://goauthentik.io/integrations/sources/oauth/#openid-connect)
-- [Authelia](https://www.authelia.com/configuration/identity-providers/openid-connect/clients/)
+- [Authelia](https://www.authelia.com/integration/openid-connect/immich/)
- [Okta](https://www.okta.com/openid-connect/)
- [Google](https://developers.google.com/identity/openid-connect/openid-connect)
diff --git a/docs/docs/administration/postgres-standalone.md b/docs/docs/administration/postgres-standalone.md
index b5028c788e..798555975f 100644
--- a/docs/docs/administration/postgres-standalone.md
+++ b/docs/docs/administration/postgres-standalone.md
@@ -13,9 +13,9 @@ Running with a pre-existing Postgres server can unlock powerful administrative f
You must install pgvecto.rs into your instance of Postgres using their [instructions][vectors-install]. After installation, add `shared_preload_libraries = 'vectors.so'` to your `postgresql.conf`. If you already have some `shared_preload_libraries` set, you can separate each extension with a comma. For example, `shared_preload_libraries = 'pg_stat_statements, vectors.so'`.
:::note
-Immich is known to work with Postgres versions 14, 15, and 16. Earlier versions are unsupported.
+Immich is known to work with Postgres versions 14, 15, and 16. Earlier versions are unsupported. Postgres 17 is nominally compatible, but pgvecto.rs does not have prebuilt images or packages for it as of writing.
-Make sure the installed version of pgvecto.rs is compatible with your version of Immich. For example, if your Immich version uses the dedicated database image `tensorchord/pgvecto-rs:pg14-v0.2.1`, you must install pgvecto.rs `>= 0.2.1, < 0.3.0`.
+Make sure the installed version of pgvecto.rs is compatible with your version of Immich. The current accepted range for pgvecto.rs is `>= 0.2.0, < 0.4.0`.
:::
## Specifying the connection URL
diff --git a/docs/docs/administration/repair-page.md b/docs/docs/administration/repair-page.md
index f230c6d582..4246c7e39c 100644
--- a/docs/docs/administration/repair-page.md
+++ b/docs/docs/administration/repair-page.md
@@ -1,5 +1,9 @@
# Repair Page
+:::warning
+This feature is currently disabled and will be reworked in the near future.
+:::
+
The repair page is designed to give information to the system administrator about files that are not tracked, or offline paths.
## Natural State
diff --git a/docs/docs/administration/reverse-proxy.md b/docs/docs/administration/reverse-proxy.md
index 1d2488f119..25762ad7f1 100644
--- a/docs/docs/administration/reverse-proxy.md
+++ b/docs/docs/administration/reverse-proxy.md
@@ -40,6 +40,26 @@ server {
}
```
+#### Compatibility with Let's Encrypt
+
+In the event that your nginx configuration includes a section for Let's Encrypt, it's likely that you have a segment similar to the following:
+
+```nginx
+location ~ /.well-known {
+ ...
+}
+```
+
+This particular `location` directive can inadvertently prevent mobile clients from reaching the `/.well-known/immich` path, which is crucial for discovery. Usual error message for this case is: "Your app major version is not compatible with the server". To remedy this, you should introduce an additional location block specifically for this path, ensuring that requests are correctly proxied to the Immich server:
+
+```nginx
+location = /.well-known/immich {
+ proxy_pass http://
diff --git a/docs/docs/administration/system-integrity.md b/docs/docs/administration/system-integrity.md
new file mode 100644
index 0000000000..2b373134a9
--- /dev/null
+++ b/docs/docs/administration/system-integrity.md
@@ -0,0 +1,49 @@
+# System Integrity
+
+## Folder checks
+
+:::info
+The folders considered for these checks include: `upload/`, `library/`, `thumbs/`, `encoded-video/`, `profile/`, `backups/`
+:::
+
+When Immich starts, it performs a series of checks in order to validate that it can read and write files to the volume mounts used by the storage system. If it cannot perform all the required operations, it will fail to start. The checks include:
+
+- Creating an initial hidden file (`.immich`) in each folder
+- Reading a hidden file (`.immich`) in each folder
+- Overwriting a hidden file (`.immich`) in each folder
+
+The checks are designed to catch the following situations:
+
+- Incorrect permissions (cannot read/write files)
+- Missing volume mount (`.immich` files should exist, but are missing)
+
+### Common issues
+
+:::note
+`.immich` files serve as markers and help keep track of volume mounts being used by Immich. Except for the situations listed below, they should never be manually created or deleted.
+:::
+
+#### Missing `.immich` files
+
+```
+Verifying system mount folder checks (enabled=true)
+...
+ENOENT: no such file or directory, open 'upload/encoded-video/.immich'
+```
+
+The above error messages show that the server has previously (successfully) written `.immich` files to each folder, but now does not detect them. This could be because any of the following:
+
+- Permission error - unable to read the file, but it exists
+- File does not exist - volume mount has changed and should be corrected
+- File does not exist - user manually deleted it and should be manually re-created (`touch .immich`)
+- File does not exist - user restored from a backup, but did not restore each folder (user should restore all folders or manually create `.immich` in any missing folders)
+
+### Ignoring the checks
+
+:::warning
+The checks are designed to catch common problems that we have seen users have in the past, and often indicate there's something wrong that you should solve. If you know what you're doing and you want to disable them you can set the following environment variable:
+:::
+
+```
+IMMICH_IGNORE_MOUNT_CHECK_ERRORS=true
+```
diff --git a/docs/docs/administration/system-settings.md b/docs/docs/administration/system-settings.md
index 9f35ed1010..d6c219a168 100644
--- a/docs/docs/administration/system-settings.md
+++ b/docs/docs/administration/system-settings.md
@@ -157,6 +157,10 @@ Immich supports [Reverse Geocoding](/docs/features/reverse-geocoding) using data
SMTP server setup, for user creation notifications, new albums, etc. More information can be found [here](/docs/administration/email-notification)
+## Notification Templates
+
+Override the default notifications text with notification templates. More information can be found [here](/docs/administration/email-notification)
+
## Server Settings
### External Domain
@@ -205,4 +209,68 @@ When this option is enabled the `immich-server` will periodically make requests
## Video Transcoding Settings
-The system administrator can define parameters according to which video files will be converted to different formats (depending on the settings). The settings can be changed in depth, to learn more about the terminology used here, refer to FFmpeg documentation for [H.264](https://trac.ffmpeg.org/wiki/Encode/H.264) codec, [HEVC](https://trac.ffmpeg.org/wiki/Encode/H.265) codec and [VP9](https://trac.ffmpeg.org/wiki/Encode/VP9) codec.
+The system administrator can configure which video files will be converted to different formats. The settings can be changed in depth, to learn more about the terminology used here, refer to FFmpeg documentation for [H.264](https://trac.ffmpeg.org/wiki/Encode/H.264) codec, [HEVC](https://trac.ffmpeg.org/wiki/Encode/H.265) codec and [VP9](https://trac.ffmpeg.org/wiki/Encode/VP9) codec.
+
+Which streams of a video file will be transcoded is determined by the [Transcode Policy](#ffmpeg.transcode). Streams that are transcoded use the following settings (config file name in brackets). Streams that are not transcoded are untouched and preserve their original settings.
+
+### Accepted containers (`ffmpeg.acceptedContainers`) {#ffmpeg.acceptedContainers}
+
+If the video asset's container format is not in this list, it will be remuxed to MP4 even if no streams need to be transcoded.
+
+The default set of accepted container formats is `mov`, `ogg` and `webm`.
+
+### Preset (`ffmpeg.preset`) {#ffmpeg.preset}
+
+The amount of "compute effort" to put into transcoding. These use [the preset names from h264](https://trac.ffmpeg.org/wiki/Encode/H.264#Preset) and will be converted to appropriate values for encoders that configure effort in different ways.
+
+The default value is `ultrafast`.
+
+### Audio codec (`ffmpeg.targetAudioCodec`) {#ffmpeg.targetAudioCodec}
+
+Which audio codec to use when the audio stream is being transcoded. Can be one of `mp3`, `aac`, `libopus`.
+
+The default value is `aac`.
+
+### Video Codec (`ffmpeg.targetVideoCodec`) {#ffmpeg.targetVideoCodec}
+
+Which video codec to use when the video stream is being transcoded. Can be one of `h264`, `hevc`, `vp9` or `av1`.
+
+The default value is `h264`.
+
+### Target resolution (`ffmpeg.targetResolution`) {#ffmpeg.targetResolution}
+
+When transcoding a video stream, downscale the largest dimension to this value while preserving aspect ratio. Videos are never upscaled.
+
+The default value is `720`.
+
+### Transcode policy (`ffmpeg.transcode`) {#ffmpeg.transcode}
+
+The transcoding policy configures which streams of a video asset will be transcoded. The transcoding decision is made independently for video streams and audio streams. This means that if a video stream needs to be transcoded, but an audio stream does not, then the video stream will be transcoded while the audio stream will be copied. If the transcoding policy does not require any stream to be transcoded and does not require the video to be remuxed, then no separate video file will be created.
+
+The default policy is `required`.
+
+#### All videos (`all`) {#ffmpeg.transcode-all}
+
+Videos are always transcoded. This ensures consistency during video playback.
+
+#### Don't transcode any videos (`disabled`) {#ffmpeg.transcode-disabled}
+
+Videos are never transcoded. This saves space and resources on the server, but may prevent playback on devices that don't support the source format (especially web browsers) or result in high bandwidth usage when playing high-bitrate files.
+
+#### Only videos not in an accepted format (`required`) {#ffmpeg.transcode-required}
+
+Video streams are transcoded when any of the following conditions are met:
+
+- The video is HDR.
+- The video is not in the yuv420p pixel format.
+- The video codec is not in `acceptedVideoCodecs`.
+
+Audio is transcoded if the audio codec is not in `acceptedAudioCodecs`.
+
+#### Videos higher than max bitrate or not in an accepted format (`bitrate`) {#ffmpeg.transcode-bitrate}
+
+In addition to the conditions in `required`, video streams are also transcoded if their bitrate is over `maxBitrate`.
+
+#### Videos higher than target resolution or not in an accepted format (`optimal`) {#ffmpeg.transcode-optimal}
+
+In addition to the conditions in `required`, video streams are also transcoded if the horizontal **and** vertical dimensions are higher than [`targetResolution`](#ffmpeg.targetResolution).
diff --git a/docs/docs/developer/architecture.mdx b/docs/docs/developer/architecture.mdx
index cf004a1119..7b5debef4c 100644
--- a/docs/docs/developer/architecture.mdx
+++ b/docs/docs/developer/architecture.mdx
@@ -3,6 +3,7 @@ sidebar_position: 1
---
import AppArchitecture from './img/app-architecture.png';
+import MobileArchitecture from './img/immich_mobile_architecture.svg';
# Architecture
@@ -28,7 +29,14 @@ All three clients use [OpenAPI](./open-api.md) to auto-generate rest clients for
### Mobile App
-The mobile app is written in [Flutter](https://flutter.dev/). It uses [Isar Database](https://isar.dev/) for a local database and [Riverpod](https://riverpod.dev/) for state management.
+The mobile app is written in [Dart](https://dart.dev/) using [Flutter](https://flutter.dev/). Below is an architecture overview:
+
+
+
### Set Custom Scan Interval
:::note
diff --git a/docs/docs/features/ml-hardware-acceleration.md b/docs/docs/features/ml-hardware-acceleration.md
index 9f2d33cc35..ca1cb8edb1 100644
--- a/docs/docs/features/ml-hardware-acceleration.md
+++ b/docs/docs/features/ml-hardware-acceleration.md
@@ -53,6 +53,12 @@ You do not need to redo any machine learning jobs after enabling hardware accele
3. Still in `immich-machine-learning`, add one of -[armnn, cuda, openvino] to the `image` section's tag at the end of the line.
4. Redeploy the `immich-machine-learning` container with these updated settings.
+### Confirming Device Usage
+
+You can confirm the device is being recognized and used by checking its utilization. There are many tools to display this, such as `nvtop` for NVIDIA or Intel and `intel_gpu_top` for Intel.
+
+You can also check the logs of the `immich-machine-learning` container. When a Smart Search or Face Detection job begins, or when you search with text in Immich, you should either see a log for `Available ORT providers` containing the relevant provider (e.g. `CUDAExecutionProvider` in the case of CUDA), or a `Loaded ANN model` log entry without errors in the case of ARM NN.
+
#### Single Compose File
Some platforms, including Unraid and Portainer, do not support multiple Compose files as of writing. As an alternative, you can "inline" the relevant contents of the [`hwaccel.ml.yml`][hw-file] file into the `immich-machine-learning` service directly.
@@ -95,9 +101,22 @@ immich-machine-learning:
Once this is done, you can redeploy the `immich-machine-learning` container.
-:::info
-You can confirm the device is being recognized and used by checking its utilization (via `nvtop` for CUDA, `intel_gpu_top` for OpenVINO, etc.). You can also enable debug logging by setting `IMMICH_LOG_LEVEL=debug` in the `.env` file and restarting the `immich-machine-learning` container. When a Smart Search or Face Detection job begins, you should see a log for `Available ORT providers` containing the relevant provider. In the case of ARM NN, the absence of a `Could not load ANN shared libraries` log entry means it loaded successfully.
-:::
+#### Multi-GPU
+
+If you want to utilize multiple NVIDIA or Intel GPUs, you can set the `MACHINE_LEARNING_DEVICE_IDS` environmental variable to a comma-separated list of device IDs and set `MACHINE_LEARNING_WORKERS` to the number of listed devices. You can run a command such as `nvidia-smi -L` or `glxinfo -B` to see the currently available devices and their corresponding IDs.
+
+For example, if you have devices 0 and 1, set the values as follows:
+
+```
+MACHINE_LEARNING_DEVICE_IDS=0,1
+MACHINE_LEARNING_WORKERS=2
+```
+
+In this example, the machine learning service will spawn two workers, one of which will allocate models to device 0 and the other to device 1. Different requests will be processed by one worker or the other.
+
+This approach can be used to simply specify a particular device as well. For example, setting `MACHINE_LEARNING_DEVICE_IDS=1` will ensure device 1 is always used instead of device 0.
+
+Note that you should increase job concurrencies to increase overall utilization and more effectively distribute work across multiple GPUs. Additionally, each GPU must be able to load all models. It is not possible to distribute a single model to multiple GPUs that individually have insufficient VRAM, or to delegate a specific model to one GPU.
[hw-file]: https://github.com/immich-app/immich/releases/latest/download/hwaccel.ml.yml
[nvct]: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html
diff --git a/docs/docs/features/mobile-app.mdx b/docs/docs/features/mobile-app.mdx
index 2019f8cbcf..3b7f2bb9e2 100644
--- a/docs/docs/features/mobile-app.mdx
+++ b/docs/docs/features/mobile-app.mdx
@@ -1,6 +1,9 @@
+import Icon from '@mdi/react';
+import { mdiCloudOffOutline, mdiCloudCheckOutline } from '@mdi/js';
import MobileAppDownload from '/docs/partials/_mobile-app-download.md';
import MobileAppLogin from '/docs/partials/_mobile-app-login.md';
import MobileAppBackup from '/docs/partials/_mobile-app-backup.md';
+import { cloudDonePath, cloudOffPath } from '@site/src/components/svg-paths';
# Mobile App
@@ -27,3 +30,63 @@ The beta release channel allows users to test upcoming changes before they are o
:::info
You can enable automatic backup on supported devices. For more information see [Automatic Backup](/docs/features/automatic-backup.md).
:::
+
+## Sync only selected photos
+
+If you have a large number of photos on the device, and you would prefer not to backup all the photos, then it might be prudent to only backup selected photos from device to the Immich server.
+
+First, you need to enable the Storage Indicator in your app's settings. Navigate to **Settings -> Photo Grid** and enable **"Show Storage indicator on asset tiles"**; this makes it easy to distinguish local-only assets and synced assets.
+:::note
+This will enable a small cloud icon on the bottom right corner of the asset tile, indicating that the asset is synced to the server:
+
+1.
+
+
+## Album Sync
+
+You can sync or mirror an album from your phone to the Immich server on your account. For example, if you select Recents, Camera and Videos album for backup, the corresponding album with the same name will be created on the server. Once the assets from those albums are uploaded, they will be put into the target albums automatically.
+
+### Album Synchronization Highlights
+
+- **One-Way Sync:** Synchronization is one-way, from the device to the server.
+
+- **Name Matching:** If an album on the server has the same name as the album on the device, images from the device will be merged with the existing images in the server album.
+
+- **Shared Albums:** If the matching album on the server is shared, the new photos merged into the album will also be shared.
+
+- **Album Structure:** When an album is created for the first time, its structure is based on the initial state. Future updates made on the phone (such as deleting or repositioning photos) will not be reflected in Immich.
+
+- **User-Specific Sync:** Album synchronization is unique to each server user and does not sync between different users or partners.
+
+- **Mobile-Only Feature:** Album synchronization is currently only available on mobile. For similar options on a computer, refer to [Libraries](/docs/features/libraries) for further details.
+
+### Synchronizing albums from the past
+
+Albums can be synchronized to the server even if they did not exist on the server before. In order to apply this setting you have to:
+Enter the cloud on the top right -> cog wheel on the top right -> select the sync option under Sync albums.
+
+:::info Sync albums delete/move photos
+If you delete/move photos in the local album on your device, it will not be reflected in the album on the server **even if** you click Sync albums
+It will only reflect files you add.
+:::
+
+If the same asset is in more than one album it will only sync to the first album it's in, after that it won't sync again even if the user clicks sync albums manually.
+To overcome this limitation, the files must be removed from the blacklist by
+App settings -> Advanced -> Duplicate Assets -> Clear
+
+:::info
+Cleaning duplicate assets from the list will cause all the previously uploaded duplicate files to be re-uploaded, the files will not actually be uploaded and will be rejected on the server side (due to duplication) but will be synchronized to the album and at the end will be added to the black list again at the end of the synchronization.
+:::
diff --git a/docs/docs/features/monitoring.md b/docs/docs/features/monitoring.md
index 9de3feb7f6..184394abd0 100644
--- a/docs/docs/features/monitoring.md
+++ b/docs/docs/features/monitoring.md
@@ -25,10 +25,10 @@ The metrics in immich are grouped into API (endpoint calls and response times),
### Configuration
-Immich will not expose an endpoint for metrics by default. To enable this endpoint, you can add the `IMMICH_METRICS=true` environmental variable to your `.env` file. Note that only the server and microservices containers currently use this variable.
+Immich will not expose an endpoint for metrics by default. To enable this endpoint, you can add the `IMMICH_TELEMETRY_INCLUDE=all` environmental variable to your `.env` file. Note that only the server container currently use this variable.
:::tip
-`IMMICH_METRICS` enables all metrics, but there are also [environmental variables](/docs/install/environment-variables.md#prometheus) to toggle specific metric groups. If you'd like to only expose certain kinds of metrics, you can set only those environmental variables to `true`. Explicitly setting the environmental variable for a metric group overrides `IMMICH_METRICS` for that group. For example, setting `IMMICH_METRICS=true` and `IMMICH_API_METRICS=false` will enable all metrics except API metrics.
+`IMMICH_TELEMETRY_INCLUDE=all` enables all metrics. For a more granular configuration you can enumerate the telemetry metrics that should be included as a comma separated list (e.g. `IMMICH_TELEMETRY_INCLUDE=repo,api`). Alternatively, you can also exclude specific metrics with `IMMICH_TELEMETRY_EXCLUDE`. For more information refer to the [environment section](/docs/install/environment-variables.md#prometheus).
:::
The next step is to configure a new or existing Prometheus instance to scrape this endpoint. The following steps assume that you do not have an existing Prometheus instance, but the steps will be similar either way.
diff --git a/docs/docs/guides/custom-locations.md b/docs/docs/guides/custom-locations.md
index b364cccf83..514008611d 100644
--- a/docs/docs/guides/custom-locations.md
+++ b/docs/docs/guides/custom-locations.md
@@ -1,15 +1,15 @@
# Files Custom Locations
-This guide explains storing generated and raw files with docker's volume mount in different locations.
+This guide explains how to store generated and raw files with docker's volume mount in different locations.
:::caution Backup
It is important to remember to update the backup settings after following the guide to back up the new backup paths if using automatic backup tools, especially `profile/`.
:::
-In our `.env` file, we will define variables that will help us in the future when we want to move to a more advanced server in the future
+In our `.env` file, we will define variables that will help us in the future when we want to move to a more advanced server
```diff title=".env"
-# You can find documentation for all the supported env variables [here](/docs/install/environment-variables)
+# You can find documentation for all the supported environment variables [here](/docs/install/environment-variables)
# Custom location where your uploaded, thumbnails, and transcoded video files are stored
- UPLOAD_LOCATION=./library
@@ -17,10 +17,11 @@ In our `.env` file, we will define variables that will help us in the future whe
+ THUMB_LOCATION=/custom/path/immich/thumbs
+ ENCODED_VIDEO_LOCATION=/custom/path/immich/encoded-video
+ PROFILE_LOCATION=/custom/path/immich/profile
++ BACKUP_LOCATION=/custom/path/immich/backups
...
```
-After defining the locations for these files, we will edit the `docker-compose.yml` file accordingly and add the new variables to the `immich-server` container.
+After defining the locations of these files, we will edit the `docker-compose.yml` file accordingly and add the new variables to the `immich-server` container.
```diff title="docker-compose.yml"
services:
@@ -30,6 +31,7 @@ services:
+ - ${THUMB_LOCATION}:/usr/src/app/upload/thumbs
+ - ${ENCODED_VIDEO_LOCATION}:/usr/src/app/upload/encoded-video
+ - ${PROFILE_LOCATION}:/usr/src/app/upload/profile
++ - ${BACKUP_LOCATION}:/usr/src/app/upload/backups
- /etc/localtime:/etc/localtime:ro
```
@@ -41,12 +43,11 @@ docker compose up -d
:::note
Because of the underlying properties of docker bind mounts, it is not recommended to mount the `upload/` and `library/` folders as separate bind mounts if they are on the same device.
-For this reason, we mount the HDD or network storage to `/usr/src/app/upload` and then mount the folders we want quick access to below this folder.
+For this reason, we mount the HDD or the network storage (NAS) to `/usr/src/app/upload` and then mount the folders we want to access under that folder.
-The `thumbs/` folder contains both the small thumbnails shown in the timeline, and the larger previews shown when clicking into an image. These cannot be split up.
+The `thumbs/` folder contains both the small thumbnails displayed in the timeline and the larger previews shown when clicking into an image. These cannot be separated.
-The storage metrics of the Immich server will track the storage available at `UPLOAD_LOCATION`,
-so the administrator should setup some kind of monitoring to make sure the SSD does not run out of space. The `profile/` folder is much smaller, typically less than 1 MB.
+The storage metrics of the Immich server will track available storage at `UPLOAD_LOCATION`, so the administrator must set up some sort of monitoring to ensure the storage does not run out of space. The `profile/` folder is much smaller, usually less than 1 MB.
:::
Thanks to [Jrasm91](https://github.com/immich-app/immich/discussions/2110#discussioncomment-5477767) for writing the guide.
diff --git a/docs/docs/guides/database-queries.md b/docs/docs/guides/database-queries.md
index 2b4f27cfce..0e58d84f90 100644
--- a/docs/docs/guides/database-queries.md
+++ b/docs/docs/guides/database-queries.md
@@ -98,6 +98,10 @@ SELECT * FROM "move_history";
SELECT * FROM "users";
```
+```sql title="Get owner info from asset ID"
+SELECT "users".* FROM "users" JOIN "assets" ON "users"."id" = "assets"."ownerId" WHERE "assets"."id" = 'fa310b01-2f26-4b7a-9042-d578226e021f';
+```
+
## System Config
```sql title="Custom settings"
diff --git a/docs/docs/guides/remote-access.md b/docs/docs/guides/remote-access.md
index 1ea068c3a0..6f401dfc5a 100644
--- a/docs/docs/guides/remote-access.md
+++ b/docs/docs/guides/remote-access.md
@@ -27,7 +27,7 @@ You may use a VPN service to open an encrypted connection to your Immich instanc
If you are unable to open a port on your router for Wireguard or OpenVPN to your server, [Tailscale](https://tailscale.com/) is a good option. Tailscale mediates a peer-to-peer wireguard tunnel between your server and remote device, even if one or both of them are behind a [NAT firewall](https://en.wikipedia.org/wiki/Network_address_translation).
-:::tip Video toturial
+:::tip Video tutorial
You can learn how to set up Tailscale together with Immich with the [tutorial video](https://www.youtube.com/watch?v=Vt4PDUXB_fg) they created.
:::
diff --git a/docs/docs/guides/remote-machine-learning.md b/docs/docs/guides/remote-machine-learning.md
index 4dbb72a408..1abf7d4e54 100644
--- a/docs/docs/guides/remote-machine-learning.md
+++ b/docs/docs/guides/remote-machine-learning.md
@@ -1,18 +1,20 @@
# Remote Machine Learning
-To alleviate [performance issues on low-memory systems](/docs/FAQ.mdx#why-is-immich-slow-on-low-memory-systems-like-the-raspberry-pi) like the Raspberry Pi, you may also host Immich's machine-learning container on a more powerful system (e.g. your laptop or desktop computer):
-
-- Set the URL in Machine Learning Settings on the Admin Settings page to point to the designated ML system, e.g. `http://workstation:3003`.
-- Copy the following `docker-compose.yml` to your ML system.
- - If using [hardware acceleration](/docs/features/ml-hardware-acceleration), the [hwaccel.ml.yml](https://github.com/immich-app/immich/releases/latest/download/hwaccel.ml.yml) file also needs to be added
-- Start the container by running `docker compose up -d`.
+To alleviate [performance issues on low-memory systems](/docs/FAQ.mdx#why-is-immich-slow-on-low-memory-systems-like-the-raspberry-pi) like the Raspberry Pi, you may also host Immich's machine learning container on a more powerful system, such as your laptop or desktop computer. The server container will send requests containing the image preview to the remote machine learning container for processing. The machine learning container does not persist this data or associate it with a particular user.
:::info
-Smart Search and Face Detection will use this feature, but Facial Recognition is handled in the server.
+Smart Search and Face Detection will use this feature, but Facial Recognition will not. This is because Facial Recognition uses the _outputs_ of these models that have already been saved to the database. As such, its processing is between the server container and the database.
:::
:::danger
-When using remote machine learning, the thumbnails are sent to the remote machine learning container. Use this option carefully when running this on a public computer or a paid processing cloud.
+Image previews are sent to the remote machine learning container. Use this option carefully when running this on a public computer or a paid processing cloud. Additionally, as an internal service, the machine learning container has no security measures whatsoever. Please be mindful of where it's deployed and who can access it.
+:::
+
+1. Ensure the remote server has Docker installed
+2. Copy the following `docker-compose.yml` to the remote server
+
+:::info
+If using hardware acceleration, the [hwaccel.ml.yml](https://github.com/immich-app/immich/releases/latest/download/hwaccel.ml.yml) file also needs to be added and the `docker-compose.yml` needs to be configured as described in the [hardware acceleration documentation](/docs/features/ml-hardware-acceleration)
:::
```yaml
@@ -37,8 +39,26 @@ volumes:
model-cache:
```
-Please note that version mismatches between both hosts may cause instabilities and bugs, so make sure to always perform updates together.
+3. Start the remote machine learning container by running `docker compose up -d`
-:::caution
-As an internal service, the machine learning container has no security measures whatsoever. Please be mindful of where it's deployed and who can access it.
+:::info
+Version mismatches between both hosts may cause bugs and instability, so remember to update this container as well when updating the local Immich instance.
+:::
+
+4. Navigate to the [Machine Learning Settings](https://my.immich.app/admin/system-settings?isOpen=machine-learning)
+5. Click _Add URL_
+6. Fill the new field with the URL to the remote machine learning container, e.g. `http://ip:port`
+
+## Forcing remote processing
+
+Adding a new URL to the settings is recommended over replacing the existing URL. This is because it will allow machine learning tasks to be processed successfully when the remote server is down by falling back to the local machine learning container. If you do not want machine learning tasks to be processed locally when the remote server is not available, you can instead replace the existing URL and only provide the remote container's URL. If doing this, you can remove the `immich-machine-learning` section of the local `docker-compose.yml` file to save resources, as this service will never be used.
+
+Do note that this will mean that Smart Search and Face Detection jobs will fail to be processed when the remote instance is not available. This in turn means that tasks dependent on these features—Duplicate Detection and Facial Recognition—will not run for affected assets. If this occurs, you must manually click the _Missing_ button next to Smart Search and Face Detection in the [Job Status](http://my.immich.app/admin/jobs-status) page for the jobs to be retried.
+
+## Load balancing
+
+While several URLs can be provided in the settings, they are tried sequentially; there is no attempt to distribute load across multiple containers. It is recommended to use a dedicated load balancer for such use-cases and specify it as the only URL. Among other things, it may enable the use of different APIs on the same server by running multiple containers with different configurations. For example, one might run an OpenVINO container in addition to a CUDA container, or run a standard release container to maximize both CPU and GPU utilization.
+
+:::tip
+The machine learning container can be shared among several Immich instances regardless of the models a particular instance uses. However, using different models will lead to higher peak memory usage.
:::
diff --git a/docs/docs/guides/template-backup-script.md b/docs/docs/guides/template-backup-script.md
index 03c1a7a02b..dd0b94ebb1 100644
--- a/docs/docs/guides/template-backup-script.md
+++ b/docs/docs/guides/template-backup-script.md
@@ -6,10 +6,19 @@ This script assumes you have a second hard drive connected to your server for on
The database is saved to your Immich upload folder in the `database-backup` subdirectory. The database is then backed up and versioned with your assets by Borg. This ensures that the database backup is in sync with your assets in every snapshot.
+:::info
+This script makes backups of your database along with your photo/video library. This is redundant with the [automatic database backup tool](https://immich.app/docs/administration/backup-and-restore#automatic-database-backups) built into Immich. Using this script to backup your database has two advantages over the built-in backup tool:
+
+- This script uses storage more efficiently by versioning your backups instead of making multiple copies.
+- The database backups are performed at the same time as the library backup, ensuring that the backups of your database and the library are always in sync.
+
+If you are using this script, it is therefore safe to turn off the built-in automatic database backups from your admin panel to save storage space.
+:::
+
### Prerequisites
- Borg needs to be installed on your server as well as the remote machine. You can find instructions to install Borg [here](https://borgbackup.readthedocs.io/en/latest/installation.html).
-- (Optional) To run this sript as a non-root user, you should [add your username to the docker group](https://docs.docker.com/engine/install/linux-postinstall/).
+- (Optional) To run this script as a non-root user, you should [add your username to the docker group](https://docs.docker.com/engine/install/linux-postinstall/).
- To run this script non-interactively, set up [passwordless ssh](https://www.redhat.com/sysadmin/passwordless-ssh) to your remote machine from your server. If you skipped the previous step, make sure this step is done from your root account.
To initialize the borg repository, run the following commands once.
diff --git a/docs/docs/install/config-file.md b/docs/docs/install/config-file.md
index abbba8c6b3..f5d2680658 100644
--- a/docs/docs/install/config-file.md
+++ b/docs/docs/install/config-file.md
@@ -19,20 +19,28 @@ The default configuration looks like this:
"targetVideoCodec": "h264",
"acceptedVideoCodecs": ["h264"],
"targetAudioCodec": "aac",
- "acceptedAudioCodecs": ["aac", "mp3", "libopus"],
+ "acceptedAudioCodecs": ["aac", "mp3", "libopus", "pcm_s16le"],
+ "acceptedContainers": ["mov", "ogg", "webm"],
"targetResolution": "720",
"maxBitrate": "0",
"bframes": -1,
"refs": 0,
"gopSize": 0,
- "npl": 0,
"temporalAQ": false,
"cqMode": "auto",
"twoPass": false,
"preferredHwDevice": "auto",
"transcode": "required",
"tonemap": "hable",
- "accel": "disabled"
+ "accel": "disabled",
+ "accelDecode": false
+ },
+ "backup": {
+ "database": {
+ "enabled": true,
+ "cronExpression": "0 02 * * *",
+ "keepLastAmount": 14
+ }
},
"job": {
"backgroundTask": {
@@ -60,10 +68,13 @@ The default configuration looks like this:
"concurrency": 5
},
"thumbnailGeneration": {
- "concurrency": 5
+ "concurrency": 3
},
"videoConversion": {
"concurrency": 1
+ },
+ "notifications": {
+ "concurrency": 5
}
},
"logging": {
@@ -72,46 +83,52 @@ The default configuration looks like this:
},
"machineLearning": {
"enabled": true,
- "url": "http://immich-machine-learning:3003",
+ "urls": ["http://immich-machine-learning:3003"],
"clip": {
"enabled": true,
"modelName": "ViT-B-32__openai"
},
"duplicateDetection": {
- "enabled": false,
- "maxDistance": 0.03
+ "enabled": true,
+ "maxDistance": 0.01
},
"facialRecognition": {
"enabled": true,
"modelName": "buffalo_l",
"minScore": 0.7,
- "maxDistance": 0.6,
+ "maxDistance": 0.5,
"minFaces": 3
}
},
"map": {
"enabled": true,
- "lightStyle": "",
- "darkStyle": ""
+ "lightStyle": "https://tiles.immich.cloud/v1/style/light.json",
+ "darkStyle": "https://tiles.immich.cloud/v1/style/dark.json"
},
"reverseGeocoding": {
"enabled": true
},
+ "metadata": {
+ "faces": {
+ "import": false
+ }
+ },
"oauth": {
- "enabled": false,
- "issuerUrl": "",
+ "autoLaunch": false,
+ "autoRegister": true,
+ "buttonText": "Login with OAuth",
"clientId": "",
"clientSecret": "",
+ "defaultStorageQuota": 0,
+ "enabled": false,
+ "issuerUrl": "",
+ "mobileOverrideEnabled": false,
+ "mobileRedirectUri": "",
"scope": "openid email profile",
"signingAlgorithm": "RS256",
+ "profileSigningAlgorithm": "none",
"storageLabelClaim": "preferred_username",
- "storageQuotaClaim": "immich_quota",
- "defaultStorageQuota": 0,
- "buttonText": "Login with OAuth",
- "autoRegister": true,
- "autoLaunch": false,
- "mobileOverrideEnabled": false,
- "mobileRedirectUri": ""
+ "storageQuotaClaim": "immich_quota"
},
"passwordLogin": {
"enabled": true
@@ -122,11 +139,16 @@ The default configuration looks like this:
"template": "{{y}}/{{y}}-{{MM}}-{{dd}}/{{filename}}"
},
"image": {
- "thumbnailFormat": "webp",
- "thumbnailSize": 250,
- "previewFormat": "jpeg",
- "previewSize": 1440,
- "quality": 80,
+ "thumbnail": {
+ "format": "webp",
+ "size": 250,
+ "quality": 80
+ },
+ "preview": {
+ "format": "jpeg",
+ "size": 1440,
+ "quality": 80
+ },
"colorspace": "p3",
"extractEmbedded": false
},
@@ -140,23 +162,35 @@ The default configuration looks like this:
"theme": {
"customCss": ""
},
- "user": {
- "deleteDelay": 7
- },
"library": {
"scan": {
"enabled": true,
"cronExpression": "0 0 * * *"
},
"watch": {
- "enabled": false,
- "usePolling": false,
- "interval": 10000
+ "enabled": false
}
},
"server": {
"externalDomain": "",
"loginPageMessage": ""
+ },
+ "notifications": {
+ "smtp": {
+ "enabled": false,
+ "from": "",
+ "replyTo": "",
+ "transport": {
+ "ignoreCert": false,
+ "host": "",
+ "port": 587,
+ "username": "",
+ "password": ""
+ }
+ }
+ },
+ "user": {
+ "deleteDelay": 7
}
}
```
diff --git a/docs/docs/install/docker-compose.mdx b/docs/docs/install/docker-compose.mdx
index 9ef63523a0..e3d5dd6864 100644
--- a/docs/docs/install/docker-compose.mdx
+++ b/docs/docs/install/docker-compose.mdx
@@ -7,10 +7,9 @@ import ExampleEnv from '!!raw-loader!../../../docker/example.env';
# Docker Compose [Recommended]
-Docker Compose is the recommended method to run Immich in production. Below are the steps to deploy Immich with Docker Compose.
-Immich requires Docker Compose version 2.x.
+Docker Compose is the recommended method to run Immich in production. Below are the steps to deploy Immich with Docker Compose.
-### Step 1 - Download the required files
+## Step 1 - Download the required files
Create a directory of your choice (e.g. `./immich-app`) to hold the `docker-compose.yml` and `.env` files.
@@ -19,7 +18,7 @@ mkdir ./immich-app
cd ./immich-app
```
-Download [`docker-compose.yml`][compose-file] and [`example.env`][env-file], either by running the following commands:
+Download [`docker-compose.yml`][compose-file] and [`example.env`][env-file] by running the following commands:
```bash title="Get docker-compose.yml file"
wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
@@ -29,6 +28,11 @@ wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/
wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env
```
+You can alternatively download these two files from your browser and move them to the directory that you created, in which case ensure that you rename `example.env` to `.env`.
+
+:::info Optional Features
+If you intend to use hardware acceleration for transcoding or machine learning (ML), you can download now the config files you'll need, in the same way:
+
```bash title="(Optional) Get hwaccel.transcoding.yml file"
wget -O hwaccel.transcoding.yml https://github.com/immich-app/immich/releases/latest/download/hwaccel.transcoding.yml
```
@@ -37,15 +41,9 @@ wget -O hwaccel.transcoding.yml https://github.com/immich-app/immich/releases/la
wget -O hwaccel.ml.yml https://github.com/immich-app/immich/releases/latest/download/hwaccel.ml.yml
```
-or by downloading from your browser and moving the files to the directory that you created.
-
-Note: If you downloaded the files from your browser, also ensure that you rename `example.env` to `.env`.
-
-:::info
-Optionally, you can enable hardware acceleration for machine learning and transcoding. See the [Hardware Transcoding](/docs/features/hardware-transcoding.md) and [Hardware-Accelerated Machine Learning](/docs/features/ml-hardware-acceleration.md) guides for info on how to set these up.
:::
-### Step 2 - Populate the .env file with custom values
+## Step 2 - Populate the .env file with custom values
.default})
-Accept the default values in **Application Name** and **Version**.
+Accept the default value or enter a name in **Application Name** field.
+In most cases use the default name, but if adding a second deployment of the application you must change this name.
+
+Accept the default version number in **Version**.
+When a new version becomes available, the application has an update badge.
+The **Installed Applications** screen shows the option to update applications.
+
+### Immich Configuration
+
+
-You can select which album(s) you want to back up to the Immich server from the backup screen.
+2. You can select which album(s) you want to back up to the Immich server from the backup screen.
-Scroll down to the bottom and press "**Start Backup**" to start the backup process.
+3. Scroll down to the bottom and press "**Start Backup**" to start the backup process. This will upload all the assets in the selected albums.
diff --git a/docs/docs/partials/_storage-template.md b/docs/docs/partials/_storage-template.md
index b6dcd5ad77..0c668d0a3e 100644
--- a/docs/docs/partials/_storage-template.md
+++ b/docs/docs/partials/_storage-template.md
@@ -31,5 +31,5 @@ Immich also provides a mechanism to migrate between templates so that if the tem
If you want to store assets in album folders, but you also have assets that do not belong to any album, you can use `{{#if album}}`, `{{else}}` and `{{/if}}` to create a conditional statement. For example, the following template will store assets in album folders if they belong to an album, and in a folder named "Other/Month" if they do not belong to an album:
```
-{{y}}/{{#if album}}{{album}}{{else}}Other/{{MM}}{{/if}}/{{filename}}
+{{y}}/{{#if album}}{{album}}{{else}}Other{{/if}}/{{MM}}/{{filename}}
```
diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js
index a94a54b60c..16d654b46b 100644
--- a/docs/docusaurus.config.js
+++ b/docs/docusaurus.config.js
@@ -72,14 +72,9 @@ const config = {
themeConfig:
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
({
- colorMode: {
- defaultMode: 'dark',
- },
announcementBar: {
id: 'site_announcement_immich',
content: `⚠️ The project is under very active development. Expect bugs and changes. Do not use it as the only way to store your photos and videos!`,
- backgroundColor: '#593f00',
- textColor: '#ffefc9',
isCloseable: false,
},
docs: {
@@ -201,7 +196,7 @@ const config = {
darkTheme: prism.themes.dracula,
additionalLanguages: ['sql', 'diff', 'bash', 'powershell', 'nginx'],
},
- image: 'overview/img/feature-panel.png',
+ image: 'img/feature-panel.png',
}),
};
diff --git a/docs/package-lock.json b/docs/package-lock.json
index 05417ce127..ca80d15fd0 100644
--- a/docs/package-lock.json
+++ b/docs/package-lock.json
@@ -8,8 +8,8 @@
"name": "documentation",
"version": "0.0.0",
"dependencies": {
- "@docusaurus/core": "^3.2.1",
- "@docusaurus/preset-classic": "^3.2.1",
+ "@docusaurus/core": "~3.5.2",
+ "@docusaurus/preset-classic": "~3.5.2",
"@mdi/js": "^7.3.67",
"@mdi/react": "^1.6.1",
"@mdx-js/react": "^3.0.0",
@@ -27,7 +27,7 @@
"url": "^0.11.0"
},
"devDependencies": {
- "@docusaurus/module-type-aliases": "^3.1.0",
+ "@docusaurus/module-type-aliases": "~3.5.2",
"@tsconfig/docusaurus": "^2.0.2",
"prettier": "^3.2.4",
"typescript": "^5.1.6"
@@ -3006,9 +3006,10 @@
}
},
"node_modules/@mdx-js/react": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.0.1.tgz",
- "integrity": "sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.1.0.tgz",
+ "integrity": "sha512-QjHtSaoameoalGnKDT3FoIl4+9RwyTmo9ZJGBdLOks/YOiWHoRDI3PUwEzOE7kEmGcV3AFcp9K6dYu9rEuKLAQ==",
+ "license": "MIT",
"dependencies": {
"@types/mdx": "^2.0.0"
},
@@ -6068,9 +6069,10 @@
}
},
"node_modules/docusaurus-lunr-search": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/docusaurus-lunr-search/-/docusaurus-lunr-search-3.4.0.tgz",
- "integrity": "sha512-GfllnNXCLgTSPH9TAKWmbn8VMfwpdOAZ1xl3T2GgX8Pm26qSDLfrrdVwjguaLfMJfzciFL97RKrAJlgrFM48yw==",
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/docusaurus-lunr-search/-/docusaurus-lunr-search-3.5.0.tgz",
+ "integrity": "sha512-k3zN4jYMi/prWInJILGKOxE+BVcgYinwj9+gcECsYm52tS+4ZKzXQzbPnVJAEXmvKOfFMcDFvS3MSmm6cEaxIQ==",
+ "license": "MIT",
"dependencies": {
"autocomplete.js": "^0.37.0",
"clsx": "^1.2.1",
@@ -6097,14 +6099,16 @@
}
},
"node_modules/docusaurus-lunr-search/node_modules/@types/unist": {
- "version": "2.0.10",
- "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.10.tgz",
- "integrity": "sha512-IfYcSBWE3hLpBg8+X2SEa8LVkJdJEkT2Ese2aaLs3ptGdVtABxndrMaxuFlQ1qdFf9Q5rDvDpxI3WwgvKFAsQA=="
+ "version": "2.0.11",
+ "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.11.tgz",
+ "integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==",
+ "license": "MIT"
},
"node_modules/docusaurus-lunr-search/node_modules/bail": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz",
"integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==",
+ "license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
@@ -6114,6 +6118,7 @@
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz",
"integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==",
+ "license": "MIT",
"engines": {
"node": ">=6"
}
@@ -6122,6 +6127,7 @@
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
"integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
+ "license": "MIT",
"engines": {
"node": ">=8"
}
@@ -6130,6 +6136,7 @@
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz",
"integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==",
+ "license": "MIT",
"funding": {
"type": "github",
"url": "https://github.com/sponsors/wooorm"
@@ -6139,6 +6146,7 @@
"version": "9.2.2",
"resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz",
"integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==",
+ "license": "MIT",
"dependencies": {
"bail": "^1.0.0",
"extend": "^3.0.0",
@@ -6156,6 +6164,7 @@
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz",
"integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==",
+ "license": "MIT",
"dependencies": {
"@types/unist": "^2.0.2"
},
@@ -6168,6 +6177,7 @@
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz",
"integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==",
+ "license": "MIT",
"dependencies": {
"@types/unist": "^2.0.0",
"is-buffer": "^2.0.0",
@@ -6183,6 +6193,7 @@
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz",
"integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==",
+ "license": "MIT",
"dependencies": {
"@types/unist": "^2.0.0",
"unist-util-stringify-position": "^2.0.0"
@@ -12705,9 +12716,9 @@
}
},
"node_modules/picocolors": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz",
- "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==",
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz",
+ "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==",
"license": "ISC"
},
"node_modules/picomatch": {
@@ -12819,9 +12830,9 @@
}
},
"node_modules/postcss": {
- "version": "8.4.40",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.40.tgz",
- "integrity": "sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q==",
+ "version": "8.4.47",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz",
+ "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==",
"funding": [
{
"type": "opencollective",
@@ -12839,8 +12850,8 @@
"license": "MIT",
"dependencies": {
"nanoid": "^3.3.7",
- "picocolors": "^1.0.1",
- "source-map-js": "^1.2.0"
+ "picocolors": "^1.1.0",
+ "source-map-js": "^1.2.1"
},
"engines": {
"node": "^10 || ^12 || >=14"
@@ -15660,9 +15671,10 @@
}
},
"node_modules/source-map-js": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
- "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
+ "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
+ "license": "BSD-3-Clause",
"engines": {
"node": ">=0.10.0"
}
@@ -16081,9 +16093,9 @@
}
},
"node_modules/tailwindcss": {
- "version": "3.4.10",
- "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.10.tgz",
- "integrity": "sha512-KWZkVPm7yJRhdu4SRSl9d4AK2wM3a50UsvgHZO7xY77NQr2V+fIrEuoDGQcbvswWvFGbS2f6e+jC/6WJm1Dl0w==",
+ "version": "3.4.14",
+ "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.14.tgz",
+ "integrity": "sha512-IcSvOcTRcUtQQ7ILQL5quRDg7Xs93PdJEk1ZLbhhvJc7uj/OAhYOnruEiwnGgBvUtaUAJ8/mhSw1o8L2jCiENA==",
"license": "MIT",
"dependencies": {
"@alloc/quick-lru": "^5.2.0",
@@ -16443,9 +16455,9 @@
}
},
"node_modules/typescript": {
- "version": "5.5.4",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz",
- "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==",
+ "version": "5.6.3",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz",
+ "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==",
"license": "Apache-2.0",
"bin": {
"tsc": "bin/tsc",
diff --git a/docs/package.json b/docs/package.json
index cdcdf53446..e739cd68c7 100644
--- a/docs/package.json
+++ b/docs/package.json
@@ -16,8 +16,8 @@
"write-heading-ids": "docusaurus write-heading-ids"
},
"dependencies": {
- "@docusaurus/core": "^3.2.1",
- "@docusaurus/preset-classic": "^3.2.1",
+ "@docusaurus/core": "~3.5.2",
+ "@docusaurus/preset-classic": "~3.5.2",
"@mdi/js": "^7.3.67",
"@mdi/react": "^1.6.1",
"@mdx-js/react": "^3.0.0",
@@ -35,8 +35,7 @@
"url": "^0.11.0"
},
"devDependencies": {
- "@docusaurus/module-type-aliases": "^3.1.0",
- "@tsconfig/docusaurus": "^2.0.2",
+ "@docusaurus/module-type-aliases": "~3.5.2",
"prettier": "^3.2.4",
"typescript": "^5.1.6"
},
@@ -56,6 +55,6 @@
"node": ">=20"
},
"volta": {
- "node": "20.17.0"
+ "node": "22.12.0"
}
}
diff --git a/docs/src/components/community-guides.tsx b/docs/src/components/community-guides.tsx
index 6982853fad..17fe562317 100644
--- a/docs/src/components/community-guides.tsx
+++ b/docs/src/components/community-guides.tsx
@@ -35,37 +35,42 @@ const guides: CommunityGuidesProps[] = [
},
{
title: 'Google Photos import + albums',
- description: 'Import your Google Photos files into Immich and add your albums',
+ description: 'Import your Google Photos files into Immich and add your albums.',
url: 'https://github.com/immich-app/immich/discussions/1340',
},
{
title: 'Access Immich with custom domain',
- description: 'Access your local Immich installation over the internet using your own domain',
+ description: 'Access your local Immich installation over the internet using your own domain.',
url: 'https://github.com/ppr88/immich-guides/blob/main/open-immich-custom-domain.md',
},
{
title: 'Nginx caching map server',
- description: 'Increase privacy by using nginx as a caching proxy in front of a map tile server',
+ description: 'Increase privacy by using nginx as a caching proxy in front of a map tile server.',
url: 'https://github.com/pcouy/pcouy.github.io/blob/main/_posts/2024-08-30-proxying-a-map-tile-server-for-increased-privacy.md',
},
+ {
+ title: 'fail2ban setup instructions',
+ description: 'How to configure an existing fail2ban installation to block incorrect login attempts.',
+ url: 'https://github.com/immich-app/immich/discussions/3243#discussioncomment-6681948',
+ },
];
function CommunityGuide({ title, description, url }: CommunityGuidesProps): JSX.Element {
return (
- - Self-hosted photo and - video management solution +
+ Self-hosted{' '} + + photo and + video management{' '} + + solution +
+ ++ Easily back up, organize, and manage your photos on your own server. Immich helps you + browse, search and organize your photos and videos with ease, without + sacrificing your privacy.
+
+ Download mobile app
++ Download Immich app and start backing up your photos and videos securely to your own server +
+This project is available under GNU AGPL v3 license.
Privacy should not be a luxury
- A list of future plans and goals, as well as past achievements and milestones. -
+{description}
{label} هو تسمية التخزين الخاصة بالمستخدم",
"system_settings": "إعدادات النظام",
+ "tag_cleanup_job": "تنظيف العلامة",
"theme_custom_css_settings": "CSS مخصص",
"theme_custom_css_settings_description": "أوراق الأنماط المتتالية تسمح بتخصيص تصميم Immich.",
"theme_settings": "إعدادات السمة",
@@ -241,7 +256,6 @@
"these_files_matched_by_checksum": "تتم مطابقة هذه الملفات من خلال المجاميع الاختبارية الخاصة بهم",
"thumbnail_generation_job": "إنشاء الصور المصغرة",
"thumbnail_generation_job_description": "إنشاء صور مصغرة كبيرة وصغيرة وغير واضحة لكل أصل، بالإضافة إلى صور مصغرة لكل شخص",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "واجهة برمجة التطبيقات للتسريع",
"transcoding_acceleration_api_description": "الواجهة البرمجية التي ستتفاعل مع جهازك لتسريع التحويل. هذا الإعداد هو \"أفضل محاولة\": سيعود إلى التحويل البرمجي في حالة الفشل. قد لا يعمل VP9 اعتمادًا على عتادك.",
"transcoding_acceleration_nvenc": "NVENC (يتطلب GPU من NVIDIA)",
@@ -293,8 +307,6 @@
"transcoding_threads_description": "تؤدي القيم الأعلى إلى تشفير أسرع، ولكنها تترك مساحة أقل للخادم لمعالجة المهام الأخرى أثناء النشاط. يجب ألا تزيد هذه القيمة عن عدد مراكز وحدة المعالجة المركزية. يزيد من الإستغلال إذا تم ضبطه على 0.",
"transcoding_tone_mapping": "رسم الخرائط النغمية",
"transcoding_tone_mapping_description": "تحاول الحفاظ على مظهر مقاطع الفيديو HDR عند تحويلها إلى SDR. يقدم كل خوارزمية تنازلات مختلفة بين اللون والتفاصيل والسطوع. Hable تحافظ على التفاصيل، Mobius تحافظ على الألوان، و Reinhard تحافظ على السطوع.",
- "transcoding_tone_mapping_npl": "تحويل الصور من نطاق الإضاءة العالية",
- "transcoding_tone_mapping_npl_description": "سيتم ضبط الألوان لتبدو طبيعية على شاشة بهذه السطوع. على عكس المتوقع، تزيد القيم الأقل من سطوع الفيديو والعكس بسبب تعويضها لسطوع الشاشة. قيمة 0 تضبط هذه القيمة تلقائيًا.",
"transcoding_transcode_policy": "سياسة الترميز",
"transcoding_transcode_policy_description": "سياسة تحديد متى يجب ترميز الفيديو. سيتم دائمًا ترميز مقاطع الفيديو HDR (ما لم يتم تعطيل الترميز).",
"transcoding_two_pass_encoding": "الترميز بمرورين",
@@ -308,6 +320,7 @@
"trash_settings_description": "إدارة إعدادات سلة المهملات",
"untracked_files": "الملفات التي لم يتم تعقبها",
"untracked_files_description": "لا يتم تعقب هذه الملفات بواسطة التطبيق. يمكن أن تكون نتيجة لعمليات نقل فاشلة، أو عمليات تحميل متقطعة، أو يتم تركها في الخلف بسبب خطأ ما",
+ "user_cleanup_job": "تنظيف المستخدم",
"user_delete_delay": "سيتم جدولة حساب {user} ومحتوياته للحذف النهائي في غضون {delay, plural, one {# يوم} other {# أيام}}.",
"user_delete_delay_settings": "فترة التأخير قبل الحذف",
"user_delete_delay_settings_description": "عدد الأيام بعد الإزالة لحذف حساب المستخدم ومحتوياته بشكل دائم. تقوم وظيفة حذف المستخدم بالتشغيل في منتصف الليل للتحقق من المستخدمين الجاهزين للحذف. سيتم تقييم التغييرات على هذا الإعداد في التنفيذ القادم.",
@@ -374,7 +387,6 @@
"archive_or_unarchive_photo": "أرشفة الصورة أو إلغاء أرشفتها",
"archive_size": "حجم الأرشيف",
"archive_size_description": "تكوين حجم الأرشيف للتنزيلات (بالجيجابايت)",
- "archived": "",
"archived_count": "{count, plural, other {الأرشيف #}}",
"are_these_the_same_person": "هل هؤلاء هم نفس الشخص؟",
"are_you_sure_to_do_this": "هل انت متأكد من أنك تريد أن تفعل هذا؟",
@@ -384,9 +396,10 @@
"asset_filename_is_offline": "الأصل {filename} غير متصل",
"asset_has_unassigned_faces": "يحتوي الأصل على وجوه غير مخصصة",
"asset_hashing": "التجزئة...",
- "asset_offline": "المحتوى دون اتصال",
- "asset_offline_description": "هذا الأصل غير متصل. لا يستطيع Immic الوصول إلى موقع الملف الخاص به. يرجى التأكد من توفر الأصل ثم إعادة فحص المكتبة.",
+ "asset_offline": "المحتوى غير اتصال",
+ "asset_offline_description": "لم يعد هذا الأصل الخارجي موجودًا على القرص. يرجى الاتصال بمسؤول Immich للحصول على المساعدة.",
"asset_skipped": "تم تخطيه",
+ "asset_skipped_in_trash": "في سلة المهملات",
"asset_uploaded": "تم الرفع",
"asset_uploading": "جارٍ الرفع...",
"assets": "المحتويات",
@@ -397,7 +410,7 @@
"assets_moved_to_trash_count": "تم نقل {count, plural, one {# محتوى} other {# محتويات}} إلى سلة المهملات",
"assets_permanently_deleted_count": "تم حذف {count, plural, one {# هذا المحتوى} other {# هذه المحتويات}} بشكل دائم",
"assets_removed_count": "تمت إزالة {count, plural, one {# محتوى} other {# محتويات}}",
- "assets_restore_confirmation": "هل أنت متأكد أنك تريد استعادة كافة المحتويات المحذوفة؟ لا يمكنك التراجع عن هذا الإجراء!",
+ "assets_restore_confirmation": "هل أنت متأكد من أنك تريد استعادة جميع الأصول المحذوفة؟ لا يمكنك التراجع عن هذا الإجراء! لاحظ أنه لا يمكن استعادة أي أصول غير متصلة بهذه الطريقة.",
"assets_restored_count": "تمت استعادة {count, plural, one {# محتوى} other {# محتويات}}",
"assets_trashed_count": "تم إرسال {count, plural, one {# محتوى} other {# محتويات}} إلى سلة المهملات",
"assets_were_part_of_album_count": "{count, plural, one {هذا المحتوى} other {هذه المحتويات}} في الألبوم بالفعل",
@@ -408,6 +421,7 @@
"birthdate_saved": "تم حفظ تاريخ الميلاد بنجاح",
"birthdate_set_description": "يتم استخدام تاريخ الميلاد لحساب عمر هذا الشخص وقت التقاط الصورة.",
"blurred_background": "خلفية مشوشة",
+ "bugs_and_feature_requests": "الأخطاء وطلبات الميزات",
"build": "يبني",
"build_image": "بناء الصورة",
"bulk_delete_duplicates_confirmation": "هل أنت متأكد من أنك تريد حذف {count, plural, one {# محتوى مكرر} other {# محتويات مكررة}} بالجملة؟ سيحتفظ هذا بأكبر محتوى من كل مجموعة ويحذف جميع النسخ المكررة الأخرى بشكل دائم. لا يمكنك التراجع عن هذا الإجراء!",
@@ -422,10 +436,6 @@
"cannot_merge_people": "لا يمكن دمج الأشخاص",
"cannot_undo_this_action": "لا يمكنك التراجع عن هذا الإجراء!",
"cannot_update_the_description": "لا يمكن تحديث الوصف",
- "cant_apply_changes": "",
- "cant_get_faces": "",
- "cant_search_people": "",
- "cant_search_places": "",
"change_date": "غيّر التاريخ",
"change_expiration_time": "تغيير وقت انتهاء الصلاحية",
"change_location": "غيّر الموقع",
@@ -457,6 +467,7 @@
"confirm": "تأكيد",
"confirm_admin_password": "تأكيد كلمة مرور المسؤول",
"confirm_delete_shared_link": "هل أنت متأكد أنك تريد حذف هذا الرابط المشترك؟",
+ "confirm_keep_this_delete_others": "سيتم حذف جميع الأصول الأخرى في المجموعة باستثناء هذا الأصل. هل أنت متأكد من أنك تريد المتابعة؟",
"confirm_password": "تأكيد كلمة المرور",
"contain": "محتواة",
"context": "السياق",
@@ -506,16 +517,19 @@
"delete_key": "حذف المفتاح",
"delete_library": "حذف المكتبة",
"delete_link": "حذف الرابط",
+ "delete_others": "حذف الأخرى",
"delete_shared_link": "حذف الرابط المشترك",
"delete_tag": "حذف العلامة",
"delete_tag_confirmation_prompt": "هل أنت متأكد أنك تريد حذف العلامة {tagName}؟",
"delete_user": "حذف المستخدم",
"deleted_shared_link": "تم حذف الرابط المشارك",
+ "deletes_missing_assets": "حذف الأصول المفقودة من القرص",
"description": "وصف",
"details": "تفاصيل",
"direction": "الإتجاه",
"disabled": "معطل",
"disallow_edits": "منع التعديلات",
+ "discord": "Discord",
"discover": "اكتشف",
"dismiss_all_errors": "تجاهل كافة الأخطاء",
"dismiss_error": "تجاهل الخطأ",
@@ -524,6 +538,7 @@
"display_original_photos": "عرض الصور الأصلية",
"display_original_photos_setting_description": "فضل عرض الصورة الأصلية عند عرض المحتويات بدلاً من الصور المصغرة عندما يكون المحتوى الأصلي متوافقًا مع الويب. قد يؤدي ذلك إلى بطءٍ في سرعات عرض الصور.",
"do_not_show_again": "لا تُظهر هذه الرسالة مرة آخرى",
+ "documentation": "الوثائق",
"done": "تم",
"download": "تنزيل",
"download_include_embedded_motion_videos": "مقاطع الفيديو المدمجة",
@@ -536,13 +551,6 @@
"duplicates": "التكرارات",
"duplicates_description": "قم بحل كل مجموعة من خلال الإشارة إلى التكرارات، إن وجدت",
"duration": "المدة",
- "durations": {
- "days": "",
- "hours": "",
- "minutes": "",
- "months": "",
- "years": ""
- },
"edit": "تعديل",
"edit_album": "تعديل الألبوم",
"edit_avatar": "تعديل الصورة الشخصية",
@@ -567,8 +575,6 @@
"editor_crop_tool_h2_aspect_ratios": "نسب العرض إلى الارتفاع",
"editor_crop_tool_h2_rotation": "التدوير",
"email": "البريد الإلكتروني",
- "empty": "",
- "empty_album": "",
"empty_trash": "أفرغ سلة المهملات",
"empty_trash_confirmation": "هل أنت متأكد أنك تريد إفراغ سلة المهملات؟ سيؤدي هذا إلى إزالة جميع المحتويات الموجودة في سلة المهملات بشكل نهائي من Immich.\nلا يمكنك التراجع عن هذا الإجراء!",
"enable": "تفعيل",
@@ -602,6 +608,7 @@
"failed_to_create_shared_link": "فشل إنشاء رابط مشترك",
"failed_to_edit_shared_link": "فشل تعديل الرابط المشترك",
"failed_to_get_people": "فشل في الحصول على الناس",
+ "failed_to_keep_this_delete_others": "فشل في الاحتفاظ بهذا الأصل وحذف الأصول الأخرى",
"failed_to_load_asset": "فشل تحميل المحتوى",
"failed_to_load_assets": "فشل تحميل المحتويات",
"failed_to_load_people": "فشل تحميل الأشخاص",
@@ -629,8 +636,6 @@
"unable_to_change_location": "غير قادر على تغيير الموقع",
"unable_to_change_password": "غير قادر على تغيير كلمة المرور",
"unable_to_change_visibility": "غير قادر على تغيير الظهور لـ {count, plural, one {# شخص} other {# أشخاص}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "غير قادر على إكمال تسجيل الدخول عبر OAuth",
"unable_to_connect": "غير قادر على الإتصال",
"unable_to_connect_to_server": "غير قادر على الإتصال بالسيرفر",
@@ -655,6 +660,7 @@
"unable_to_get_comments_number": "غير قادر على الحصول على عدد التعليقات",
"unable_to_get_shared_link": "فشل الحصول على الرابط المشترك",
"unable_to_hide_person": "غير قادر على إخفاء الشخص",
+ "unable_to_link_motion_video": "غير قادر على ربط فيديو الحركة",
"unable_to_link_oauth_account": "غير قادر على ربط حساب OAuth",
"unable_to_load_album": "غير قادر على تحميل الألبوم",
"unable_to_load_asset_activity": "غير قادر على تحميل نشاط المحتويات",
@@ -670,12 +676,10 @@
"unable_to_remove_album_users": "تعذر إزالة المستخدمين من الألبوم",
"unable_to_remove_api_key": "تعذر إزالة مفتاح API",
"unable_to_remove_assets_from_shared_link": "غير قادر على إزالة المحتويات من الرابط المشترك",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "غير قادر على إزالة الملفات غير المتصلة",
"unable_to_remove_library": "غير قادر على إزالة المكتبة",
- "unable_to_remove_offline_files": "غير قادر على إزالة الملفات غير المتصلة",
"unable_to_remove_partner": "غير قادر على إزالة الشريك",
"unable_to_remove_reaction": "غير قادر على إزالة رد الفعل",
- "unable_to_remove_user": "",
"unable_to_repair_items": "غير قادر على إصلاح العناصر",
"unable_to_reset_password": "غير قادر على إعادة تعيين كلمة المرور",
"unable_to_resolve_duplicate": "غير قادر على حل التكرارات",
@@ -695,6 +699,7 @@
"unable_to_submit_job": "غير قادر على تقديم الوظيفة",
"unable_to_trash_asset": "غير قادر على نقل المحتويات إلى سلة المهملات",
"unable_to_unlink_account": "غير قادر على إلغاء ربط الحساب",
+ "unable_to_unlink_motion_video": "غير قادر على إلغاء ربط فيديو الحركة",
"unable_to_update_album_cover": "غير قادر على تحديث غلاف الألبوم",
"unable_to_update_album_info": "غير قادر على تحديث معلومات الألبوم",
"unable_to_update_library": "غير قادر على تحديث المكتبة",
@@ -704,10 +709,6 @@
"unable_to_update_user": "غير قادر على تحديث المستخدم",
"unable_to_upload_file": "تعذر رفع الملف"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Exif (صيغة ملف صوري قابل للتبادل)",
"exit_slideshow": "خروج من العرض التقديمي",
"expand_all": "توسيع الكل",
@@ -722,33 +723,27 @@
"external": "خارجي",
"external_libraries": "المكتبات الخارجية",
"face_unassigned": "غير معين",
- "failed_to_get_people": "",
"favorite": "مفضل",
"favorite_or_unfavorite_photo": "تفضيل أو إلغاء تفضيل الصورة",
"favorites": "المفضلة",
- "feature": "",
"feature_photo_updated": "تم تحديث الصورة المميزة",
- "featurecollection": "",
"features": "الميزات",
"features_setting_description": "إدارة ميزات التطبيق",
"file_name": "إسم الملف",
"file_name_or_extension": "اسم الملف أو امتداده",
"filename": "اسم الملف",
- "files": "",
"filetype": "نوع الملف",
"filter_people": "تصفية الاشخاص",
"find_them_fast": "يمكنك العثور عليها بسرعة بالاسم من خلال البحث",
"fix_incorrect_match": "إصلاح المطابقة غير الصحيحة",
"folders": "المجلدات",
"folders_feature_description": "تصفح عرض المجلد للصور ومقاطع الفيديو الموجودة على نظام الملفات",
- "force_re-scan_library_files": "فرض إعادة فحص جميع ملفات المكتبة",
"forward": "إلى الأمام",
"general": "عام",
"get_help": "الحصول على المساعدة",
"getting_started": "البدء",
"go_back": "الرجوع للخلف",
"go_to_search": "اذهب إلى البحث",
- "go_to_share_page": "انتقل إلى صفحة المشاركة",
"group_albums_by": "تجميع الألبومات حسب...",
"group_no": "بدون تجميع",
"group_owner": "تجميع حسب المالك",
@@ -774,10 +769,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Image}} تم التقاطها في {city}، {country} مع {person1} و{person2} في {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Image}} تم التقاطها في {city}، {country} مع {person1}، {person2}، و{person3} في {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Image}} تم التقاطها في {city}, {country} with {person1}, {person2}, مع {additionalCount, number} آخرين في {date}",
- "image_alt_text_people": "{count, plural, =1 {مع {person1}} =2 {مع {person1} و {person2}} =3 {مع {person1} و {person2} و {person3}} other {مع {person1} و {person2} و {others, number} آخرين}}",
- "image_alt_text_place": "في {city}, {country}",
- "image_taken": "{isVideo, select, true {تم التقاط الفيديو} other {تم التقاط الصورة}}",
- "img": "",
"immich_logo": "شعار immich",
"immich_web_interface": "واجهة ويب immich",
"import_from_json": "استيراد من JSON",
@@ -798,10 +789,11 @@
"invite_people": "دعوة الأشخاص",
"invite_to_album": "دعوة إلى الألبوم",
"items_count": "{count, plural, one {# عنصر} other {# عناصر}}",
- "job_settings_description": "",
"jobs": "الوظائف",
"keep": "احتفظ",
"keep_all": "احتفظ بالكل",
+ "keep_this_delete_others": "احتفظ بهذا، واحذف الآخرين",
+ "kept_this_deleted_others": "تم الاحتفاظ بهذا الأصل وحذف {count, plural, one {# asset} other {# assets}}",
"keyboard_shortcuts": "اختصارات لوحة المفاتيح",
"language": "اللغة",
"language_setting_description": "اختر لغتك المفضلة",
@@ -813,33 +805,9 @@
"level": "المستوى",
"library": "مكتبة",
"library_options": "خيارات المكتبة",
- "license_account_info": "حسابك مرخص",
- "license_activated_subtitle": "شكرا بدعمك لـ Immich وبرمجيات المصدر المفتوح",
- "license_activated_title": "رخصتك نُشطت بنجاح",
- "license_button_activate": "تنشيط",
- "license_button_buy": "شراء",
- "license_button_buy_license": "اشتر رخصة",
- "license_button_select": "إختر",
- "license_failed_activation": "فشل في تفعيل الترخيص. يرجى التحقق من بريدك الإلكتروني للحصول على مفتاح الترخيص الصحيح!",
- "license_individual_description_1": "رخصة واحدة لكل مستخدم على أي خادم",
- "license_individual_title": "رخصة فردية",
- "license_info_licensed": "مُرَخص",
- "license_info_unlicensed": "غير مُرَخص",
- "license_input_suggestion": "لديك رخصة؟ أدخِل الرمز بالأسفل",
- "license_license_subtitle": "اشتر رخصةً لدعم Immich",
- "license_license_title": "الرخصة",
- "license_lifetime_description": "رخصة مدى الحياة",
- "license_per_server": "لكل خادم",
- "license_per_user": "لكل مستحدم",
- "license_server_description_1": "رخصة واحدة لكل خادم",
- "license_server_description_2": "رخصة لكل المستخدمين على الخادم",
- "license_server_title": "رخصة خادم",
- "license_trial_info_1": "أنت تستخدم نسخةً غير مرخصة ل Immich",
- "license_trial_info_2": "لقد استخدمتَ Immich تقريبا لمدة",
- "license_trial_info_3": "{accountAge, plural, one {# يوم} other {# أيام}}",
- "license_trial_info_4": "يُرجى التفكير في شراء رخصة لدعم التطوير المستمر للخدمة",
"light": "المضيئ",
"like_deleted": "تم حذف الإعجاب",
+ "link_motion_video": "رابط فيديو الحركة",
"link_options": "خيارات الرابط",
"link_to_oauth": "الربط مع OAuth",
"linked_oauth_account": "حساب مرتبط بـ OAuth",
@@ -858,6 +826,7 @@
"look": "الشكل",
"loop_videos": "تكرار مقاطع الفيديو",
"loop_videos_description": "فَعْل لتكرار مقطع فيديو تلقائيًا في عارض التفاصيل.",
+ "main_branch_warning": "أنت تستخدم إصداراً تطويرياً؛ ونحن نوصي بشدة باستخدام إصدار النشر!",
"make": "صنع",
"manage_shared_links": "إدارة الروابط المشتركة",
"manage_sharing_with_partners": "إدارة المشاركة مع الشركاء",
@@ -927,6 +896,7 @@
"notifications": "إشعارات",
"notifications_setting_description": "إدارة الإشعارات",
"oauth": "OAuth",
+ "official_immich_resources": "الموارد الرسمية لشركة Immich",
"offline": "غير متصل",
"offline_paths": "مسارات غير متصلة",
"offline_paths_description": "قد تكون هذه النتائج بسبب الحذف اليدوي للملفات التي لا تشكل جزءًا من مكتبة خارجية.",
@@ -939,7 +909,6 @@
"onboarding_welcome_user": "مرحبا، {user}",
"online": "متصل",
"only_favorites": "المفضلة فقط",
- "only_refreshes_modified_files": "تحديث الملفات المعدلة فقط",
"open_in_map_view": "فتح في عرض الخريطة",
"open_in_openstreetmap": "فتح في OpenStreetMap",
"open_the_search_filters": "افتح مرشحات البحث",
@@ -977,7 +946,6 @@
"people_edits_count": "تم تعديل {count, plural, one {# شخص } other {# أشخاص }}",
"people_feature_description": "تصفح الصور ومقاطع الفيديو المجمعة حسب الأشخاص",
"people_sidebar_description": "عرض رابط للأشخاص في الشريط الجانبي",
- "perform_library_tasks": "",
"permanent_deletion_warning": "تحذير الحذف الدائم",
"permanent_deletion_warning_setting_description": "إظهار تحذير عند حذف المحتويات نهائيًا",
"permanently_delete": "حذف بشكل دائم",
@@ -999,7 +967,6 @@
"play_memories": "تشغيل الذكريات",
"play_motion_photo": "تشغيل الصور المتحركة",
"play_or_pause_video": "تشغيل الفيديو أو إيقافه مؤقتًا",
- "point": "",
"port": "المنفذ",
"preset": "الإعداد المسبق",
"preview": "معاينة",
@@ -1044,12 +1011,10 @@
"purchase_server_description_2": "حالة الداعم",
"purchase_server_title": "الخادم",
"purchase_settings_server_activated": "يتم إدارة مفتاح منتج الخادم من قبل مدير النظام",
- "range": "",
"rating": "تقييم نجمي",
"rating_clear": "مسح التقييم",
"rating_count": "{count, plural, one {# نجمة} other {# نجوم}}",
"rating_description": "اعرض تقييم EXIF في لوحة المعلومات",
- "raw": "",
"reaction_options": "خيارات رد الفعل",
"read_changelog": "قراءة سجل التغيير",
"reassign": "إعادة التعيين",
@@ -1060,11 +1025,13 @@
"recent_searches": "عمليات البحث الأخيرة",
"refresh": "تحديث",
"refresh_encoded_videos": "تحديث مقاطع الفيديو المشفرة",
+ "refresh_faces": "تحديث الوجوه",
"refresh_metadata": "تحديث البيانات الوصفية",
"refresh_thumbnails": "تحديث الصور المصغرة",
"refreshed": "تم التحديث",
- "refreshes_every_file": "تحديث جميع الملفات",
+ "refreshes_every_file": "إعادة قراءة كافة الملفات الموجودة والجديدة",
"refreshing_encoded_video": "جارٍ تحديث الفيديو المرمز",
+ "refreshing_faces": "جاري تحديث الوجوه",
"refreshing_metadata": "جارٍ تحديث البيانات الوصفية",
"regenerating_thumbnails": "جارٍ تجديد الصور المصغرة",
"remove": "إزالة",
@@ -1072,10 +1039,10 @@
"remove_assets_shared_link_confirmation": "هل أنت متأكد أنك تريد إزالة {count, plural, one {# المحتوى} other {# المحتويات}} من رابط المشاركة هذا؟",
"remove_assets_title": "هل تريد إزالة المحتويات؟",
"remove_custom_date_range": "إزالة النطاق الزمني المخصص",
+ "remove_deleted_assets": "إزالة الملفات الغير متصلة",
"remove_from_album": "إزالة من الألبوم",
"remove_from_favorites": "إزالة من المفضلة",
"remove_from_shared_link": "إزالة من الرابط المشترك",
- "remove_offline_files": "إزالة الملفات الغير متصلة",
"remove_user": "إزالة المستخدم",
"removed_api_key": "تم إزالة مفتاح API: {name}",
"removed_from_archive": "تمت إزالتها من الأرشيف",
@@ -1092,7 +1059,6 @@
"reset": "إعادة ضبط",
"reset_password": "إعادة تعيين كلمة المرور",
"reset_people_visibility": "إعادة ضبط ظهور الأشخاص",
- "reset_settings_to_default": "",
"reset_to_default": "إعادة التعيين إلى الافتراضي",
"resolve_duplicates": "معالجة النسخ المكررة",
"resolved_all_duplicates": "تم حل جميع التكرارات",
@@ -1112,8 +1078,7 @@
"saved_settings": "تم حفظ الإعدادات",
"say_something": "قل شيئًا",
"scan_all_libraries": "فحص كل المكتبات",
- "scan_all_library_files": "إعادة فحص كافة ملفات المكتبة",
- "scan_new_library_files": "فحص ملفات المكتبة الجديدة",
+ "scan_library": "مسح",
"scan_settings": "إعدادات الفحص",
"scanning_for_album": "جارٍ الفحص عن ألبوم...",
"search": "بحث",
@@ -1128,8 +1093,10 @@
"search_for_existing_person": "البحث عن شخص موجود",
"search_no_people": "لا يوجد أشخاص",
"search_no_people_named": "لا يوجد أشخاص بالاسم \"{name}\"",
+ "search_options": "خيارات البحث",
"search_people": "البحث عن الأشخاص",
"search_places": "البحث عن الأماكن",
+ "search_settings": "إعدادات البحث",
"search_state": "البحث حسب الولاية...",
"search_tags": "البحث عن العلامات...",
"search_timezone": "البحث حسب المنطقة الزمنية...",
@@ -1154,7 +1121,6 @@
"selected_count": "{count, plural, other {# محددة }}",
"send_message": "أرسل رسالة",
"send_welcome_email": "أرسل بريدًا إلكترونيًا ترحيبيًا",
- "server": "الخادم",
"server_offline": "الخادم غير متصل",
"server_online": "الخادم متصل",
"server_stats": "إحصائيات الخادم",
@@ -1173,6 +1139,7 @@
"shared_by_user": "تمت المشاركة بواسطة {user}",
"shared_by_you": "تمت مشاركته من قِبلك",
"shared_from_partner": "صور من {partner}",
+ "shared_link_options": "خيارات الرابط المشترك",
"shared_links": "روابط مشتركة",
"shared_photos_and_videos_count": "{assetCount, plural, other {# الصور ومقاطع الفيديو المُشارَكة.}}",
"shared_with_partner": "تمت المشاركة مع {partner}",
@@ -1196,13 +1163,18 @@
"show_person_options": "إظهار خيارات الشخص",
"show_progress_bar": "إظهار شريط التقدم",
"show_search_options": "إظهار خيارات البحث",
+ "show_slideshow_transition": "إظهار انتقال عرض الشرائح",
"show_supporter_badge": "شارة المؤيد",
"show_supporter_badge_description": "إظهار شارة المؤيد",
"shuffle": "خلط",
+ "sidebar": "الشريط الجانبي",
+ "sidebar_display_description": "عرض رابط للعرض في الشريط الجانبي",
"sign_out": "خروج",
"sign_up": "تسجيل",
"size": "الحجم",
"skip_to_content": "تخطي إلى المحتوى",
+ "skip_to_folders": "تخطي إلى المجلدات",
+ "skip_to_tags": "تخطي إلى العلامات",
"slideshow": "عرض الشرائح",
"slideshow_settings": "إعدادات عرض الشرائح",
"sort_albums_by": "رتب الألبومات حسب...",
@@ -1233,23 +1205,37 @@
"submit": "إرسال",
"suggestions": "اقتراحات",
"sunrise_on_the_beach": "شروق الشمس على الشاطئ",
+ "support": "الدعم",
+ "support_and_feedback": "الدعم والتعليقات",
+ "support_third_party_description": "تم حزم تثبيت immich الخاص بك بواسطة جهة خارجية. قد تكون المشكلات التي تواجهها ناجمة عن هذه الحزمة، لذا يرجى طرح المشكلات معهم في المقام الأول باستخدام الروابط أدناه.",
"swap_merge_direction": "تبديل اتجاه الدمج",
"sync": "مزامنة",
+ "tag": "العلامة",
+ "tag_assets": "أصول العلامة",
+ "tag_created": "تم إنشاء العلامة: {tag}",
+ "tag_feature_description": "تصفح الصور ومقاطع الفيديو المجمعة حسب مواضيع العلامات المنطقية",
+ "tag_not_found_question": "لا يمكن العثور على علامة؟ قم بإنشاء علامة جديدة.",
+ "tag_updated": "تم تحديث العلامة: {tag}",
+ "tagged_assets": "تم وضع علامة {count, plural, one {# asset} other {# assets}}",
+ "tags": "العلامات",
"template": "النموذج",
"theme": "مظهر",
"theme_selection": "اختيار السمة",
"theme_selection_description": "قم بتعيين السمة تلقائيًا على اللون الفاتح أو الداكن بناءً على تفضيلات نظام المتصفح الخاص بك",
"they_will_be_merged_together": "سيتم دمجهم معًا",
+ "third_party_resources": "موارد الطرف الثالث",
"time_based_memories": "ذكريات استنادًا للوقت",
+ "timeline": "الخط الزمني",
"timezone": "المنطقة الزمنية",
"to_archive": "أرشفة",
"to_change_password": "تغيير كلمة المرور",
"to_favorite": "تفضيل",
"to_login": "تسجيل الدخول",
+ "to_parent": "انتقل إلى الوالد",
"to_trash": "حذف",
"toggle_settings": "الإعدادات",
- "toggle_theme": "تبديل السمة",
- "toggle_visibility": "تبديل الرؤية",
+ "toggle_theme": "تبديل المظهر الداكن",
+ "total": "الإجمالي",
"total_usage": "الاستخدام الإجمالي",
"trash": "المهملات",
"trash_all": "نقل الكل إلى سلة المهملات",
@@ -1259,14 +1245,13 @@
"trashed_items_will_be_permanently_deleted_after": "سيتم حذفُ العناصر المحذوفة نِهائيًا بعد {days, plural, one {# يوم} other {# أيام }}.",
"type": "النوع",
"unarchive": "أخرج من الأرشيف",
- "unarchived": "",
"unarchived_count": "{count, plural, other {غير مؤرشفة #}}",
"unfavorite": "أزل التفضيل",
"unhide_person": "أظهر الشخص",
"unknown": "غير معروف",
- "unknown_album": "",
"unknown_year": "سنة غير معروفة",
"unlimited": "غير محدود",
+ "unlink_motion_video": "إلغاء ربط فيديو الحركة",
"unlink_oauth": "إلغاء ربط OAuth",
"unlinked_oauth_account": "تم إلغاء ربط حساب OAuth",
"unnamed_album": "ألبوم بلا إسم",
@@ -1295,13 +1280,13 @@
"use_custom_date_range": "استخدم النطاق الزمني المخصص بدلاً من ذلك",
"user": "مستخدم",
"user_id": "معرف المستخدم",
- "user_license_settings": "رخصة",
- "user_license_settings_description": "ادر رخصتك",
"user_liked": "قام {user} بالإعجاب {type, select, photo {بهذه الصورة} video {بهذا الفيديو} asset {بهذا المحتوى} other {بها}}",
"user_purchase_settings": "الشراء",
"user_purchase_settings_description": "إدارة عملية الشراء الخاصة بك",
"user_role_set": "قم بتعيين {user} كـ {role}",
"user_usage_detail": "تفاصيل استخدام المستخدم",
+ "user_usage_stats": "إحصائيات استخدام الحساب",
+ "user_usage_stats_description": "عرض إحصائيات استخدام الحساب",
"username": "اسم المستخدم",
"users": "المستخدمين",
"utilities": "أدوات",
@@ -1309,7 +1294,9 @@
"variables": "المتغيرات",
"version": "الإصدار",
"version_announcement_closing": "صديقك، أليكس",
- "version_announcement_message": "مرحباً يا صديقي، هنالك نسخة جديدة من التطبيق. خذ وقتك لزيارة ملاحظات الإصدار والتأكد من أن ملف docker-compose.yml وإعداد .env مُحدّثين لتجنب أي إعدادات خاطئة، خاصةً إذا كنت تستخدم WatchTower أو أي آلية تقوم بتحديث التطبيق تلقائياً.",
+ "version_announcement_message": "مرحبًا! يتوفر إصدار جديد من Immich. يُرجى تخصيص بعض الوقت لقراءة ملاحظات الإصدار للتأكد من تحديث إعداداتك لمنع أي أخطاء في التكوين، خاصة إذا كنت تستخدم WatchTower أو أي آلية تتولى تحديث مثيل Immich الخاص بك تلقائيًا.",
+ "version_history": "تاريخ الإصدار",
+ "version_history_item": "تم تثبيت {version} في {date}",
"video": "فيديو",
"video_hover_setting": "تشغيل الصورة المصغرة للفيديو عند التمرير",
"video_hover_setting_description": "تشغيل الصورة المصغرة للفيديو عند تحريك الماوس فوق العنصر. حتى عند التعطيل، يمكن بدء التشغيل عن طريق التمرير فوق رمز التشغيل.",
@@ -1319,11 +1306,12 @@
"view_album": "عرض الألبوم",
"view_all": "عرض الكل",
"view_all_users": "عرض كافة المستخدمين",
+ "view_in_timeline": "عرض في الجدول الزمني",
"view_links": "عرض الروابط",
+ "view_name": "عرض",
"view_next_asset": "عرض المحتوى التالي",
"view_previous_asset": "عرض المحتوى السابق",
"view_stack": "عرض التكديس",
- "viewer": "",
"visibility_changed": "الرؤية تغيرت لـ {count, plural, one {شخص واحد} other {# عدة أشخاص}}",
"waiting": "في الانتظار",
"warning": "تحذير",
diff --git a/i18n/az.json b/i18n/az.json
new file mode 100644
index 0000000000..7848462414
--- /dev/null
+++ b/i18n/az.json
@@ -0,0 +1,92 @@
+{
+ "about": "Yenilə",
+ "account": "Hesab",
+ "account_settings": "Hesab parametrləri",
+ "acknowledge": "Təsdiq et",
+ "action": "Əməliyyat",
+ "actions": "Əməliyyatlar",
+ "active": "Aktiv",
+ "activity": "Fəaliyyət",
+ "add": "Əlavə et",
+ "add_a_description": "Təsviri əlavə et",
+ "add_a_location": "Məkan əlavə et",
+ "add_a_name": "Ad əlavə et",
+ "add_a_title": "Başlıq əlavə et",
+ "add_exclusion_pattern": "İstisna nümunəsi əlavə et",
+ "add_import_path": "Import yolunu əlavə et",
+ "add_location": "Məkanı əlavə et",
+ "add_more_users": "Daha çox istifadəçi əlavə et",
+ "add_partner": "Partnyor əlavə et",
+ "add_path": "Yol əlavə et",
+ "add_photos": "Şəkilləri əlavə et",
+ "add_to": "... əlavə et",
+ "add_to_album": "Albom əlavə et",
+ "add_to_shared_album": "Paylaşılan alboma əlavə et",
+ "added_to_archive": "Arxivə əlavə edildi",
+ "added_to_favorites": "Sevimlilələrə əlavə edildi",
+ "added_to_favorites_count": "{count, number} şəkil sevimlilələrə əlavə edildi",
+ "admin": {
+ "authentication_settings": "Səlahiyyətləndirmə parametrləri",
+ "authentication_settings_description": "Şifrə, OAuth və digər səlahiyyətləndirmə parametrləri",
+ "authentication_settings_disable_all": "Bütün giriş etmə metodlarını söndürmək istədiyinizdən əminsinizmi? Giriş etmə funksiyası tamamilə söndürüləcəkdir.",
+ "authentication_settings_reenable": "Yenidən aktiv etmək üçün Server Əmri -ni istifadə edin.",
+ "background_task_job": "Arxa plan tapşırıqları",
+ "backup_database_enable_description": "Verilənlər bazasının ehtiyat nüsxələrini aktiv et",
+ "backup_settings": "Ehtiyat Nüsxə Parametrləri",
+ "backup_settings_description": "Verilənlər bazasının ehtiyat nüsxə parametrlərini idarə et",
+ "check_all": "Hamısını yoxla",
+ "config_set_by_file": "Konfiqurasiya hal-hazırda konfiqurasiya faylı ilə təyin olunub",
+ "confirm_delete_library": "{library} kitabxanasını silmək istədiyinizdən əminmisiniz?",
+ "confirm_email_below": "Təsdiqləmək üçün aşağıya {email} yazın",
+ "confirm_user_password_reset": "{user} adlı istifadəçinin şifrəsini sıfırlamaq istədiyinizdən əminmisiniz?",
+ "disable_login": "Giriş etməni söndür",
+ "duplicate_detection_job_description": "Bənzər şəkilləri tapmaq üçün maşın öyrənməsini işə salın. Bu prosses Smart Search funksiyasına əsaslanır",
+ "external_library_created_at": "Xarici kitabxana ({date} (tarixində yaradıldı)",
+ "external_library_management": "Xarici kitabxana idarəetməsi",
+ "face_detection": "Üz tanıma",
+ "force_delete_user_warning": "XƏBƏRDARLIQ: Bu əməliyyat istifadəçi və bütün məlumatları siləcəkdir. Bu prossesi və silinən faylları geri qaytarmaq olmaz.",
+ "forcing_refresh_library_files": "Bütün kitabxana fayllarını məcburi yeniləmə",
+ "image_format_description": "WebP, JPEG faylına görə daha kiçik həcmə sahibdir, lakin onu kodlaşdırmaq daha çox vaxt alır.",
+ "image_preview_title": "Önizləmə parametrləri",
+ "image_quality": "Keyfiyyət",
+ "image_resolution": "Çözümlülük",
+ "image_resolution_description": "Yüksək çözümlülükdə daha çox detallar vardır, lakin onları kodlaşdırmaq da daha çox vaxt alır, daha böyük həcmə sahib olurlar və tətbiqin işləmə sürətini yavaşladır.",
+ "image_settings": "Şəklin parametrləri",
+ "image_settings_description": "Hazırlanan şəkillərin keyfiyyətini və çözümlülüyünü idarə et",
+ "image_thumbnail_title": "Önizləmə parametrləri",
+ "job_concurrency": "{job}paralellik",
+ "job_created": "Tapşırıq yaradıldı",
+ "job_not_concurrency_safe": "Bu tapşırıq parallel fəaliyyət üçün uyğun deyil",
+ "job_settings": "Tapşırıq parametrləri",
+ "job_settings_description": "Parallel şəkildə fəaliyyət göstərən tapşırıqları idarə et",
+ "job_status": "Tapşırıq statusu",
+ "jobs_delayed": "{jobCount, plural, other {# gecikməli}}",
+ "jobs_failed": "{jobCount, plural, other {# uğursuz}}",
+ "library_created": "{library} kitabxanası yaradıldı",
+ "library_deleted": "Kitabxana silindi",
+ "library_import_path_description": "İdxal olunacaq qovluöu seçin. Bu qovluq, alt qovluqlar daxil olmaqla şəkil və videolar üçün skan ediləcəkdir.",
+ "library_scanning": "Periodik skan",
+ "library_scanning_description": "Periodik kitabxana skanını confiqurasiya et",
+ "library_scanning_enable_description": "Periodik kitabxana skanını aktivləşdir",
+ "library_settings": "Xarici kitabxana",
+ "library_settings_description": "Xarici kitabxana parametrlərini idarə et",
+ "library_tasks_description": "Kitabxana tapşırıqlarını yerinə yetir",
+ "library_watching_enable_description": "Fayl dəyişiklikləri üçün xarici kitabxanalara baxış keçirin",
+ "library_watching_settings": "Kitabxana nəzarəti (EKSPERİMENTAL)",
+ "library_watching_settings_description": "Dəyişdirilən faylları avtomatik olaraq yoxla",
+ "logging_enable_description": "Jurnalı aktivləşdir",
+ "logging_level_description": "Aktiv edildikdə hansı jurnal səviyyəsi istifadə olunur.",
+ "logging_settings": "",
+ "machine_learning_clip_model": "CLIP modeli",
+ "machine_learning_clip_model_description": "Buradaqeyd olunan CLIP modelinin adı. Modeli dəyişdirdikdən sonra bütün şəkillər üçün 'Ağıllı Axtarış' funksiyasını yenidən işə salmalısınız.",
+ "machine_learning_duplicate_detection": "Dublikat Aşkarlama",
+ "machine_learning_duplicate_detection_enabled": "Dublikat aşkarlamanı aktiv etmək",
+ "machine_learning_duplicate_detection_enabled_description": "Əgər deaktiv edilibsə, birə-bir eyni fayllar yenədə silinəcək.",
+ "machine_learning_duplicate_detection_setting_description": "Bir-birinin dublikatı olan faylları tapmaq üçün CLIP-dən istifadə edin",
+ "machine_learning_enabled": "Maşın öyrənməsini aktiv edin",
+ "machine_learning_enabled_description": "Əgər deaktiv edilərsə, aşağıdakı parametrlərdən asılı olmayaq, bütün Maşın Öyrənmə funksiyaları deaktiv ediləcək.",
+ "machine_learning_facial_recognition": "Üz Tanıma",
+ "machine_learning_facial_recognition_description": "Şəkillərdəki üzləri aşkarla, tanı və qruplaşdır",
+ "machine_learning_facial_recognition_model": "Üz tanıma modeli"
+ }
+}
diff --git a/i18n/be.json b/i18n/be.json
new file mode 100644
index 0000000000..8377ec5383
--- /dev/null
+++ b/i18n/be.json
@@ -0,0 +1,115 @@
+{
+ "about": "Аб",
+ "account": "Уліковы запіс",
+ "account_settings": "Налады ўліковага запісу",
+ "acknowledge": "Пацвердзіць",
+ "action": "Дзеянне",
+ "actions": "Дзеянні",
+ "active": "Актыўны",
+ "activity": "Актыўнасць",
+ "activity_changed": "Актыўнасць {enabled, select, true {уключана} other {адключана}}",
+ "add": "Дадаць",
+ "add_a_description": "Дадаць апісанне",
+ "add_a_location": "Дадаць месца",
+ "add_a_name": "Дадаць імя",
+ "add_a_title": "Дадаць загаловак",
+ "add_exclusion_pattern": "Дадаць шаблон выключэння",
+ "add_import_path": "Дадаць шлях імпарту",
+ "add_location": "Дадайце месца",
+ "add_more_users": "Дадаць больш карыстальнікаў",
+ "add_partner": "Дадаць партнёра",
+ "add_path": "Дадаць шлях",
+ "add_photos": "Дадаць фота",
+ "add_to": "Дадаць у...",
+ "add_to_album": "Дадаць у альбом",
+ "add_to_shared_album": "Дадаць у агульны альбом",
+ "add_url": "Дадаць URL",
+ "added_to_archive": "Дададзена ў архіў",
+ "added_to_favorites": "Дададзена ў абраныя",
+ "added_to_favorites_count": "Дададзена {count, number} да абранага",
+ "admin": {
+ "add_exclusion_pattern_description": "Дадайце шаблоны выключэнняў. Падтрымліваецца выкарыстанне сімвалаў * , ** і ?. Каб ігнараваць усе файлы ў любой дырэкторыі з назвай \"Raw\", выкарыстоўвайце \"**/Raw/**\". Каб ігнараваць усе файлы, якія заканчваюцца на \".tif\", выкарыстоўвайце \"**/.tif\". Каб ігнараваць абсолютны шлях, выкарыстоўвайце \"/path/to/ignore/**\".",
+ "asset_offline_description": "Гэты знешні бібліятэчны актыў больш не знойдзены на дыску і быў перамешчаны ў сметніцу. Калі файл быў перамешчаны ў межах бібліятэкі, праверце вашу хроніку для новага адпаведнага актыва. Каб аднавіць гэты актыў, пераканайцеся, што шлях да файла ніжэй даступны для Immich і адскануйце бібліятэку.",
+ "authentication_settings": "Налады праверкі сапраўднасці",
+ "authentication_settings_description": "Кіраванне паролямі, OAuth, і іншыя налады праверкі сапраўднасці",
+ "authentication_settings_disable_all": "Вы ўпэўнены, што жадаеце адключыць усе спосабы логіну? Логін будзе цалкам адключаны.",
+ "authentication_settings_reenable": "Каб зноў уключыць, выкарыстайце Каманду сервера.",
+ "background_task_job": "Фонавыя заданні",
+ "backup_database": "Рэзервовая копія базы даных",
+ "backup_database_enable_description": "Уключыць рэзерваванне базы даных",
+ "backup_keep_last_amount": "Колькасць папярэдніх рэзервовых копій для захавання",
+ "backup_settings": "Налады рэзервовага капіявання",
+ "backup_settings_description": "Кіраванне наладкамі рэзервовага капіявання базы даных",
+ "check_all": "Праверыць усе",
+ "cleared_jobs": "Ачышчаны заданні для: {job}",
+ "config_set_by_file": "Канфігурацыя ў зараз усталявана праз файл канфігурацыі",
+ "confirm_delete_library": "Вы ўпэўнены што жадаеце выдаліць {library} бібліятэку?",
+ "confirm_delete_library_assets": "Вы ўпэўнены, што хочаце выдаліць гэтую бібліятэку? Гэта прывядзе да выдалення {count, plural, one {# актыву} other {усіх # актываў}}, якія змяшчаюцца ў Immich, і гэта дзеянне немагчыма будзе адмяніць. Файлы застануцца на дыску.",
+ "confirm_email_below": "Каб пацвердзіць, увядзіце \"{email}\" ніжэй",
+ "confirm_reprocess_all_faces": "Вы ўпэўнены, што хочаце пераапрацаваць усе твары? Гэта таксама прывядзе да выдалення імя людзей.",
+ "confirm_user_password_reset": "Вы ўпэўнены ў тым, што жадаеце скінуць пароль {user}?",
+ "create_job": "Стварыць заданне",
+ "cron_expression": "Выраз Cron",
+ "cron_expression_description": "Усталюйце інтэрвал сканавання, выкарыстоўваючы фармат cron. Для атрымання дадатковай інфармацыі, калі ласка, звярніцеся, напрыклад, да Crontab Guru",
+ "cron_expression_presets": "Прадустановкі выразаў Cron",
+ "disable_login": "Адключыць уваход",
+ "duplicate_detection_job_description": "Запусціць машыннае навучанне на актывах для выяўлення падобных выяў. Залежыць ад Smart Search",
+ "exclusion_pattern_description": "Шаблоны выключэння дазваляюць ігнараваць файлы і папкі пры сканаванні вашай бібліятэкі. Гэта карысна, калі ў вас ёсць папкі, якія змяшчаюць файлы, якія вы не хочаце імпартаваць, напрыклад, файлы RAW.",
+ "external_library_created_at": "Знешняя бібліятэка (створана {date})",
+ "external_library_management": "Кіраванне знешняй бібліятэкай",
+ "face_detection": "Выяўленне твараў",
+ "force_delete_user_warning": "ПАПЯРЭДЖАННЕ: Гэта дзеянне неадкладна выдаліць карыстальніка і ўсе аб'екты. Гэта дзеянне не можа быць адроблена і файлы немагчыма будзе аднавіць.",
+ "image_format": "Фармат",
+ "image_preview_title": "Налады папярэдняга прагляду",
+ "image_quality": "Якасць",
+ "image_resolution": "Раздзяляльнасць",
+ "image_settings": "Налады відарыса",
+ "image_settings_description": "Кіруйце якасцю і раздзяляльнасцю сгенерыраваных відарысаў"
+ },
+ "timeline": "Хроніка",
+ "total": "Усяго",
+ "user": "Карыстальнік",
+ "user_id": "ID карыстальніка",
+ "user_purchase_settings": "Купля",
+ "user_purchase_settings_description": "Кіруйце пакупкамі",
+ "user_role_set": "Прызначыць {user} як {role}",
+ "user_usage_detail": "Падрабязнасці выкарыстання карыстальнікам",
+ "user_usage_stats": "Статыстыка карыстання ўліковага запісу",
+ "user_usage_stats_description": "Прагледзець статыстыку карыстання ўліковага запісу",
+ "username": "Імя карыстальніка",
+ "users": "Карыстальнікі",
+ "utilities": "Утыліты",
+ "validate": "Праверыць",
+ "variables": "Пераменныя",
+ "version": "Версія",
+ "version_announcement_closing": "Твой сябар, Алекс",
+ "version_announcement_message": "Вітаем! Даступная новая версія Immich. Калі ласка, знайдзіце час, каб прачытаць нататкі да выпуску, каб пераканацца, што ваша налада актуальная і пазбегнуць магчымых памылак канфігурацыі, асабліва калі вы карыстаецеся WatchTower або іншымі механізмамі, якія аўтаматычна абнаўляюць вашу інстанцыю Immich.",
+ "version_history": "Гісторыя версій",
+ "version_history_item": "Усталявана версія {version} на {date}",
+ "video": "Відэа",
+ "video_hover_setting": "Прайграванне мініяцюры відэа пры навядзенні курсора",
+ "video_hover_setting_description": "Прайграванне мініяцюры відэа пры навядзенні курсора на элемент. Нават калі функцыя адключана, прайграванне можна пачаць, навёўшы курсор на значок прайгравання.",
+ "videos": "Відэа",
+ "videos_count": "{count, plural, one {# відэа} астатнія {# відэа}}",
+ "view": "Прагляд",
+ "view_album": "Праглядзець альбом",
+ "view_all": "Праглядзець усё",
+ "view_all_users": "Праглядзець усех карыстальнікаў",
+ "view_in_timeline": "Паглядзець хроніку",
+ "view_links": "Праглядзець спасылкі",
+ "view_name": "Прагледзець",
+ "view_next_asset": "Паказаць наступны аб'ект",
+ "view_previous_asset": "Праглядзець папярэдні аб'ект",
+ "view_stack": "Прагляд стэка",
+ "visibility_changed": "Відзімасць змянілася для {count, plural, one {# чалавек(-аў)} астатніх {# чалавек}}",
+ "waiting": "Чакаюць",
+ "warning": "Папярэджанне",
+ "week": "Тыдзень",
+ "welcome": "Вітаем",
+ "welcome_to_immich": "Вітаем у Immich",
+ "year": "Год",
+ "years_ago": "{years, plural, one {# год} other {# гадоў}} таму",
+ "yes": "Так",
+ "you_dont_have_any_shared_links": "У вас няма абагуленых спасылак",
+ "zoom_image": "Павялічыць відарыс"
+}
diff --git a/web/src/lib/i18n/bg.json b/i18n/bg.json
similarity index 81%
rename from web/src/lib/i18n/bg.json
rename to i18n/bg.json
index 492a888f62..b0ab195289 100644
--- a/web/src/lib/i18n/bg.json
+++ b/i18n/bg.json
@@ -12,27 +12,34 @@
"add_a_description": "Добави описание",
"add_a_location": "Добави местоположение",
"add_a_name": "Добави име",
- "add_a_title": "Добави заглавие",
+ "add_a_title": "Добавете заглавие",
"add_exclusion_pattern": "Добави модел за изключване",
"add_import_path": "Добави път за импортиране",
- "add_location": "Добави местоположение",
- "add_more_users": "Добави още потребители",
- "add_partner": "Добави партньор",
+ "add_location": "Добавете местоположение",
+ "add_more_users": "Добавете още потребители",
+ "add_partner": "Добавете партньор",
"add_path": "Добави път",
- "add_photos": "Добави снимки",
+ "add_photos": "Добавете снимки",
"add_to": "Добави към...",
"add_to_album": "Добави към албум",
"add_to_shared_album": "Добави към споделен албум",
- "added_to_archive": "Добавено в архива",
- "added_to_favorites": "Добавено към любими",
+ "add_url": "Добави URL",
+ "added_to_archive": "Добавено към архива",
+ "added_to_favorites": "Добавени към любимите ви",
"added_to_favorites_count": "Добавени {count, number} към любими",
"admin": {
"add_exclusion_pattern_description": "Добави модели за изключване. Поддържа се \"globbing\" с помощта на *, ** и ?. За да игнорирате всички файлове в директория с име \"Raw\", използвайте \"**/Raw/**\". За да игнорирате всички файлове, завършващи на \".tif\", използвайте \"**/*.tif\". За да игнорирате абсолютен път, използвайте \"/path/to/ignore/**\".",
+ "asset_offline_description": "Този външен библиотечен елемент не може да бъде открит на диска и е преместен в кошчето за боклук. Ако файлът е преместен в библиотеката, проверете вашата история за нов съответстващ елемент. За да възстановите елемента, моля проверете дали файловият път отдолу може да бъде достъпен от Immich и сканирайте библиотеката.",
"authentication_settings": "Настройки за удостоверяване",
"authentication_settings_description": "Управление на парола, OAuth и други настройки за удостоверяване",
"authentication_settings_disable_all": "Сигурни ли сте, че искате да деактивирате всички методи за вписване? Вписването ще бъде напълно деактивирано.",
"authentication_settings_reenable": "За да реактивирате, изполвайте Server Command.",
"background_task_job": "Процеси на заден фон",
+ "backup_database": "Резервна База данни",
+ "backup_database_enable_description": "Разрешаване на резервни копия на базата данни",
+ "backup_keep_last_amount": "Брой резервни копия за запазване",
+ "backup_settings": "Настройка на резервни копия",
+ "backup_settings_description": "Управление на настройките за резервно копие на базата данни",
"check_all": "Провери всичко",
"cleared_jobs": "Изчистени задачи от тип: {job}",
"config_set_by_file": "Конфигурацията е зададена от файл",
@@ -41,6 +48,10 @@
"confirm_email_below": "За потвърждение, моля въведете \"{email}\" отдолу",
"confirm_reprocess_all_faces": "Сигурни ли сте, че искате да се обработят лицата отново? Това ще изчисти всички именувани хора.",
"confirm_user_password_reset": "Сигурни ли сте, че искате да нулирате паролата на {user}?",
+ "create_job": "Създайте задача",
+ "cron_expression": "Cron израз",
+ "cron_expression_description": "Настрой интервала на сканиране използвайки cron формата. За повече информация Crontab Guru",
+ "cron_expression_presets": "Примерни Cron изрази",
"disable_login": "Изключете вписването",
"duplicate_detection_job_description": "Стартиране машинно обучение на ресурси, за откриване на подобни изображения. Разчита на Интелигентно Търсене",
"exclusion_pattern_description": "Модели за изключване позволяват да игнорирате файлове и папки, когато сканирате вашата библиотека. Това е потребно, ако имате папки, които съдържат файлове, които не искате да импортирате. Примерно - RAW файлове.",
@@ -52,22 +63,25 @@
"failed_job_command": "Командата {command} е неуспешна за задача: {job}",
"force_delete_user_warning": "ВНИМАНИЕ: Това веднага ще изтрие потребителя и всичките му ресурси. Действието е необратимо и файловете не могат да бъдат възстановени.",
"forcing_refresh_library_files": "Принуждаване обновяване на всички файлове в библиотеката",
+ "image_format": "Формат",
"image_format_description": "WebP създава по-малки файлове от JPEG, но ги кодира по-бавно.",
"image_prefer_embedded_preview": "Предпочитане на вградените прегледи",
"image_prefer_embedded_preview_setting_description": "Използване на вградените прегледи в RAW снимките като вход за обработка на изображенията, когато има такива. Това може да доведе до по-точни цветове за някои изображения, но качеството на прегледите зависи от камерата и изображението може да има повече компресионни артефакти.",
"image_prefer_wide_gamut": "Предпочитане на широка гама",
"image_prefer_wide_gamut_setting_description": "Използване на Display P3 за миниатюри. Това запазва по-добре жизнеността на изображенията с широки цветови пространства, но изображенията може да изглеждат по различен начин на стари устройства със стара версия на браузъра. sRGB изображенията се запазват като sRGB, за да се избегнат цветови промени.",
- "image_preview_format": "Формат на прегледите",
- "image_preview_resolution": "Резолюция на прегледите",
- "image_preview_resolution_description": "Използва се при разглеждане на единична снимка и за машинно обучение. По-високите резолюции могат да запазят повече детайли, но отнемат повече време за кодиране, имат по-големи размери на файловете и могат да намалят отзивчивостта на приложението.",
+ "image_preview_description": "Среден размер на изображението с премахнати метаданни, използвано при преглед на един актив и за машинно обучение",
+ "image_preview_quality_description": "Качество на предварителния преглед от 1 до 100. По-високата стойност е по-добра, но води до по-големи файлове и може да намали бързодействието на приложението. Задаването на ниска стойност може да повлияе на качеството на машинното обучение.",
+ "image_preview_title": "Настойки на прегледа",
"image_quality": "Качество",
- "image_quality_description": "Качество на изображението от 1-100. По-голяма стойност води до по-добро качество, но създава по-големи файлове. Тази настройка засяга изображенията от тип преглед и миниатюра.",
+ "image_resolution": "Резолюция",
+ "image_resolution_description": "По-високите резолюции могат да запазят повече детайли, но изискват повече време за кодиране, имат по-големи размери на файловете и могат да намалят бързодействието на приложението.",
"image_settings": "Настройки за изображенията",
"image_settings_description": "Управляване качеството и резолюцията на създадените изображения",
- "image_thumbnail_format": "Формат на миниатюрните изображения",
- "image_thumbnail_resolution": "Резолюция на миниатюрните изображения",
- "image_thumbnail_resolution_description": "Използва се при разглеждане на групи от снимки (основна времева линия, изглед на албум и др.). По-високите резолюции могат да запазят повече детайли, но отнемат повече време за кодиране, имат по-големи размери на файловете и могат да намалят отзивчивостта на приложението.",
+ "image_thumbnail_description": "Малка миниатюра с премахнати метаданни, използвана при преглед на групи снимки, като основния екран",
+ "image_thumbnail_quality_description": "Качество на миниатюрата от 1 до 100. По-високата стойност е по-добра, но води до по-големи файлове и може да намали бързодействието на приложението.",
+ "image_thumbnail_title": "Настройки на миниатюрите",
"job_concurrency": "Паралелност на {job}",
+ "job_created": "Задачата е създадена",
"job_not_concurrency_safe": "Тази задача не е безопасна за паралелно изпълнение.",
"job_settings": "Настройки за задачите",
"job_settings_description": "Управление на паралелността на задачите",
@@ -75,9 +89,6 @@
"jobs_delayed": "{jobCount, plural, other {# delayed}}",
"jobs_failed": "{jobCount, plural, other {# failed}}",
"library_created": "Създадена библиотека: {library}",
- "library_cron_expression": "Cron израз",
- "library_cron_expression_description": "Задайте интервала за сканиране чрез cron интервал. За повече информация, вижте например Crontab Guru",
- "library_cron_expression_presets": "Предварителни настройки на Cron израза",
"library_deleted": "Библиотека е изтрита",
"library_import_path_description": "Посочете папка за импортиране. Тази папка, включително подпапките, ще бъдат сканирани за изображения и видеоклипове.",
"library_scanning": "Периодично сканиране",
@@ -120,7 +131,7 @@
"machine_learning_smart_search_description": "Семантично търсене на изображения с помощта на CLIP вграждания",
"machine_learning_smart_search_enabled": "Включване на Интелигентно Търсене",
"machine_learning_smart_search_enabled_description": "Ако е деактивирано, изображенията няма да бъдат кодирани за Интелигентно Търсене.",
- "machine_learning_url_description": "URL адрес на сървъра за машинно обучение",
+ "machine_learning_url_description": "URL на сървъра за машинно обучение. Ако са предоставени повече от един URL, всеки сървър ще бъде опитан един по един, докато един не отговори успешно, в реда от първия до последния",
"manage_concurrency": "Управление на паралелност",
"manage_log_settings": "Управление на настройките на записване",
"map_dark_style": "Тъмен стил",
@@ -137,7 +148,7 @@
"map_settings_description": "Управление на настройките на картата",
"map_style_description": "URL адрес към файл \"style.json\" за задаване на стил на картата",
"metadata_extraction_job": "Извличане на метаданни",
- "metadata_extraction_job_description": "Извличане на метаданни от всеки ресурс, като GPS и резолюция",
+ "metadata_extraction_job_description": "Извличане на метаданни от всеки от ресурсите, като GPS локация, лица и резолюция на файловете",
"metadata_faces_import_setting": "Включи импорт на лице",
"metadata_faces_import_setting_description": "Импортирай лица от EXIF данни и помощни файлове",
"metadata_settings": "Опции за метаданни",
@@ -150,7 +161,7 @@
"note_cannot_be_changed_later": "ВНИМАНИЕ: Това не може да бъде променено по-късно!",
"note_unlimited_quota": "Бележка: Въведете 0 за да нямате лимит на квотата",
"notification_email_from_address": "От адрес",
- "notification_email_from_address_description": "Електронна поща на изпращача, например: \"Immich Photo Server {label} е етикетът за съхранение на потребителя",
"system_settings": "Системни настройки",
+ "tag_cleanup_job": "Почистване на тагове",
+ "template_email_available_tags": "Можете да използвате следните променливи в шаблона си: {tags}",
+ "template_email_if_empty": "Ако шаблонът е празен, ще се използва имейлът по подразбиране.",
+ "template_email_invite_album": "Шаблон за покана за албум",
+ "template_email_preview": "Преглед",
+ "template_email_settings": "Шаблони за имейли",
+ "template_email_settings_description": "Управление на шаблони за имейл известия",
+ "template_email_update_album": "Шаблон за актуализация на албум",
+ "template_email_welcome": "Шаблон за приветстващ имейл",
+ "template_settings": "Шаблони за известия",
+ "template_settings_description": "Управление на шаблони за известия.",
"theme_custom_css_settings": "Персонализиран CSS",
"theme_custom_css_settings_description": "Каскадните стилови таблици позволяват персонализиране на дизайна на Immich.",
"theme_settings": "Настройки на темата",
@@ -244,7 +268,7 @@
"thumbnail_generation_job": "Генериране на миниатюри",
"thumbnail_generation_job_description": "Генерирайте големи, малки и замъглени миниатюри за всеки актив, както и миниатюри за всеки човек",
"transcoding_acceleration_api": "API за ускоряване",
- "transcoding_acceleration_api_description": "API, който ще взаимодейства с вашето устройство, за да ускори транскодирането. Тази настройка е „best effort“: тя ще се върне към софтуерно транскодиране при повреда. VP9 може или не може да работи в зависимост от вашия хардуер.",
+ "transcoding_acceleration_api_description": "API интерфейсът, който ще взаимодейства с вашето устройство, за да ускори транскодирането. Тази настройка е „възможно най-доброто“: тя ще се върне към софтуерно транскодиране при повреда. VP9 може и да не работи в зависимост от вашия хардуер.",
"transcoding_acceleration_nvenc": "NVENC (необходим NVIDIA GPU)",
"transcoding_acceleration_qsv": "Quick Sync (необходим 7th поколение Intel CPU или по-ново)",
"transcoding_acceleration_rkmpp": "RKMPP (само на Rockchip SOCs)",
@@ -252,9 +276,9 @@
"transcoding_accepted_audio_codecs": "Допустими аудио кодеци",
"transcoding_accepted_audio_codecs_description": "Изберете кои аудио кодеци не са нужни за разкодиране. Използва се само за определени правила за разкодиране.",
"transcoding_accepted_containers": "Приети контейнери",
- "transcoding_accepted_containers_description": "Изберете кои формати на контейнери не трябва да се пренасочват към MP4. Използва се само за определени правила за разкодиране.",
+ "transcoding_accepted_containers_description": "Изберете кои формати на контейнери не е нужно да бъдат преобразувани в MP4 формат. Използва се само за определени правила за разкодиране.",
"transcoding_accepted_video_codecs": "Приети видео кодеци",
- "transcoding_accepted_video_codecs_description": "Изберете кои видео кодеци не трябва да се разкодиране. Използва се само за определени правила за разкодиране.",
+ "transcoding_accepted_video_codecs_description": "Изберете кои видео кодеци не трябват за разкодиране. Използва се само за определени правила за разкодиране.",
"transcoding_advanced_options_description": "Опции, които повечето потребители не трябва да променят",
"transcoding_audio_codec": "Аудио кодек",
"transcoding_audio_codec_description": "Opus е опцията с най-високо качество, но има по-ниска съвместимост със стари устройства или софтуер.",
@@ -292,10 +316,8 @@
"transcoding_temporal_aq_description": "Само за NVENC. Повишава качеството на сцени с висока детайлност и ниско ниво на движение. Може да не е съвместимо с по-стари устройства.",
"transcoding_threads": "Нишки",
"transcoding_threads_description": "По-високите стойности водят до по-бързо разкодиране, но оставят по-малко място за сървъра да обработва други задачи, докато е активен. Тази стойност не трябва да надвишава броя на процесорните ядра. Увеличава максимално използването, ако е зададено на 0.",
- "transcoding_tone_mapping": "",
+ "transcoding_tone_mapping": "Tone-mapping",
"transcoding_tone_mapping_description": "Опитва се да запази външния вид на HDR видеоклипове, когато се преобразува в SDR. Всеки алгоритъм прави различни компромиси за цвят, детайлност и яркост. Hable запазва детайлите, Mobius запазва цвета, а Reinhard запазва яркостта.",
- "transcoding_tone_mapping_npl": "",
- "transcoding_tone_mapping_npl_description": "Цветовете ще бъдат коригирани, за да изглеждат нормално за дисплей с тази яркост. Противоинтуитивно, по-ниските стойности увеличават яркостта на видеото и обратно, тъй като компенсират яркостта на дисплея. 0 задава тази стойност автоматично.",
"transcoding_transcode_policy": "Правила за транскодиране",
"transcoding_transcode_policy_description": "Правила за това кога видеоклипът трябва да бъде транскодиран. HDR видеоклиповете винаги ще бъдат транскодирани (освен ако транскодирането е деактивирано).",
"transcoding_two_pass_encoding": "Кодиране с двойно минаване",
@@ -309,6 +331,7 @@
"trash_settings_description": "Управление на настройките на кошчето",
"untracked_files": "Непроследени файлове",
"untracked_files_description": "Тези файлове не се проследяват от приложението. Те могат да бъдат резултат от неуспешни премествания, прекъснати качвания или оставени поради грешка",
+ "user_cleanup_job": "Почистване на потребители",
"user_delete_delay": "{user} aкаунтът и файловете на потребителя ще бъдат планирани за постоянно изтриване след {delay, plural, one {# ден} other {# дни}}.",
"user_delete_delay_settings": "Забавяне на изтриване",
"user_delete_delay_settings_description": "Брой дни след окончателно изтриване акаунта на потребителя. Задачата за изтриване на потребител се изпълнява в полунощ, за да се провери за потребители, които са готови за изтриване. Промените на тази настройка ще влязат в сила при следващото изпълнение.",
@@ -333,6 +356,9 @@
"admin_password": "Администраторска парола",
"administration": "Администрация",
"advanced": "Разширено",
+ "age_months": "Възраст {months, plural, one {# month} other {# months}}",
+ "age_year_months": "Възраст 1 година, {months, plural, one {# month} other {# months}}",
+ "age_years": "{years, plural, other {Age #}}",
"album_added": "Албумът е добавен",
"album_added_notification_setting_description": "Получавайте известие по имейл, когато бъдете добавени към споделен албум",
"album_cover_updated": "Обложката на албума е актуализирана",
@@ -352,7 +378,7 @@
"album_user_removed": "Премахнат {user}",
"album_with_link_access": "Нека всеки с линк вижда снимки и хора в този албум.",
"albums": "Албуми",
- "albums_count": "",
+ "albums_count": "{count, plural, one {{count, number} Album} other {{count, number} Albums}}",
"all": "Всички",
"all_albums": "Всички албуми",
"all_people": "Всички хора",
@@ -361,24 +387,44 @@
"allow_edits": "Позволяване на редакции",
"allow_public_user_to_download": "Позволете на публичен потребител да може да изтегля",
"allow_public_user_to_upload": "Позволете на публичния потребител да може да качва",
+ "anti_clockwise": "Обратно на часовниковата стрелка",
"api_key": "API ключ",
"api_key_description": "Тази стойност ще бъде показана само веднъж. Моля, не забравяйте да го копирате, преди да затворите прозореца.",
"api_key_empty": "Името на вашия API ключ не трябва да е празно",
"api_keys": "API ключове",
"app_settings": "Настройки ма приложението",
- "appears_in": "",
+ "appears_in": "Излиза в",
"archive": "Архив",
"archive_or_unarchive_photo": "Архивиране или деархивиране на снимка",
"archive_size": "Размер на архива",
"archive_size_description": "Конфигурирайте размера на архива за изтегляния (в GiB)",
- "archived": "",
+ "archived_count": "{count, plural, other {Archived #}}",
"are_these_the_same_person": "Това едно и също лице ли е?",
+ "are_you_sure_to_do_this": "Сигурни ли сте, че искате да направите това?",
+ "asset_added_to_album": "Добавено в албум",
+ "asset_adding_to_album": "Добавяне в албум...",
+ "asset_description_updated": "Описание на актива е обновено",
+ "asset_filename_is_offline": "Активът {filename} е офлайн",
+ "asset_has_unassigned_faces": "Активът има неразпределени лица",
+ "asset_hashing": "Хеширане...",
"asset_offline": "Ресурсът е офлайн",
+ "asset_offline_description": "Този външен актив вече не се намира на диска. Моля, свържете се с администратора на Immich за помощ.",
"asset_skipped": "Пропуснато",
+ "asset_skipped_in_trash": "В кошчето",
"asset_uploaded": "Качено",
"asset_uploading": "Качване...",
"assets": "Ресурси",
- "assets_moved_to_trash": "",
+ "assets_added_count": "Добавено {count, plural, one {# asset} other {# assets}}",
+ "assets_added_to_album_count": "Добавен(и) са {count, plural, one {# актив} other {# актива}} в албума",
+ "assets_added_to_name_count": "Добавен(и) са {count, plural, one {# актив} other {# актива}} към {hasName, select, true {{name}} other {нов албум}}",
+ "assets_count": "{count, plural, one {# актив} other {# актива}}",
+ "assets_moved_to_trash_count": "Преместен(и) са {count, plural, one {# актив} other {# актива}} в кошчето",
+ "assets_permanently_deleted_count": "Постоянно изтрит(и) са {count, plural, one {# актив} other {# актива}}",
+ "assets_removed_count": "Премахнат(и) са {count, plural, one {# актив} other {# актива}}",
+ "assets_restore_confirmation": "Сигурни ли сте, че искате да възстановите всички активи в кошчето? Не можете да отмените това действие! Имайте предвид, че активи, които са офлайн, не могат да бъдат възстановени по този начин.",
+ "assets_restored_count": "Възстановен(и) са {count, plural, one {# актив} other {# актива}}",
+ "assets_trashed_count": "Възстановен(и) са {count, plural, one {# файл} other {# файла}}",
+ "assets_were_part_of_album_count": "{count, plural, one {Файлът е} other {Файловете са}} вече част от албума",
"authorized_devices": "Удостоверени устройства",
"back": "Назад",
"back_close_deselect": "Назад, затваряне или премахване на избора",
@@ -386,9 +432,12 @@
"birthdate_saved": "Датата на раждане е запазена успешно",
"birthdate_set_description": "Датата на раждане се използва за изчисляване на възрастта на този човек към момента на снимката.",
"blurred_background": "Замъглен заден фон",
- "bulk_delete_duplicates_confirmation": "",
- "bulk_keep_duplicates_confirmation": "",
- "bulk_trash_duplicates_confirmation": "",
+ "bugs_and_feature_requests": "Бъгове и заявки за функции",
+ "build": "Build",
+ "build_image": "Build Image",
+ "bulk_delete_duplicates_confirmation": "Сигурни ли сте, че искате да изтриете масово {count, plural, one {# дублиран файл} other {# дублирани файла}}? Това ще запази най-големия файл от всяка група и ще изтрие трайно всички други дубликати. Не можете да отмените това действие!",
+ "bulk_keep_duplicates_confirmation": "Сигурни ли сте, че искате да запазите {count, plural, one {# дублиран файл} other {# дублирани файла}}? Това ще потвърди всички групи дубликати, без да изтрива нищо.",
+ "bulk_trash_duplicates_confirmation": "Сигурни ли сте, че искате да преместите в кошчето масово {count, plural, one {# дублиран файл} other {# дублирани файла}}? Това ще запази най-големия файл от всяка група и ще премести в кошчето всички други дубликати.",
"buy": "Купете Immich",
"camera": "Камера",
"camera_brand": "Марка на камерата",
@@ -398,10 +447,6 @@
"cannot_merge_people": "Не може да обединява хора",
"cannot_undo_this_action": "Не можете да отмените това действие!",
"cannot_update_the_description": "Описанието не може да бъде актуализирано",
- "cant_apply_changes": "",
- "cant_get_faces": "",
- "cant_search_people": "",
- "cant_search_places": "",
"change_date": "Промени датата",
"change_expiration_time": "Променете времето на изтичане",
"change_location": "Промени локацията",
@@ -420,9 +465,11 @@
"clear_all_recent_searches": "Изчистете всички скорошни търсения",
"clear_message": "Изчисти съобщението",
"clear_value": "Изчисти стойността",
+ "clockwise": "По часовниковата стрелка",
"close": "Затвори",
"collapse": "Свиване",
"collapse_all": "Свиване на всичко",
+ "color": "Цвят",
"color_theme": "Цветова тема",
"comment_deleted": "Коментарът е изтрит",
"comment_options": "Опции за коментар",
@@ -431,8 +478,9 @@
"confirm": "Потвърди",
"confirm_admin_password": "Потвърждаване на паролата на администратора",
"confirm_delete_shared_link": "Сигурни ли сте, че искате да изтриете тази споделена връзка?",
+ "confirm_keep_this_delete_others": "Всички останали файлове в стека ще бъдат изтрити, с изключение на този файл. Сигурни ли сте, че искате да продължите?",
"confirm_password": "Потвърдете паролата",
- "contain": "",
+ "contain": "В рамките на",
"context": "Контекст",
"continue": "Продължи",
"copied_image_to_clipboard": "Изображението е копирано в клипборда.",
@@ -445,8 +493,8 @@
"copy_password": "Копиране на парола",
"copy_to_clipboard": "Копиране в клипборда",
"country": "Държава",
- "cover": "",
- "covers": "",
+ "cover": "Cover",
+ "covers": "Обложка",
"create": "Създай",
"create_album": "Създай албум",
"create_library": "Създай библиотека",
@@ -454,7 +502,10 @@
"create_link_to_share": "Създаване на линк за споделяне",
"create_link_to_share_description": "Позволете на всеки, който има линк, да види избраната(ите) снимка(и)",
"create_new_person": "Създаване на ново лице",
+ "create_new_person_hint": "Присвойте избраните файлове на нов човек",
"create_new_user": "Създаване на нов потребител",
+ "create_tag": "Създай таг",
+ "create_tag_description": "Създайте нов таг. За вложени тагове, моля, въведете пълния път на тага, включително наклонените черти.",
"create_user": "Създай потребител",
"created": "Създадено",
"current_device": "Текущо устройство",
@@ -468,7 +519,7 @@
"date_range": "Период от време",
"day": "Ден",
"deduplicate_all": "Дедупликиране на всички",
- "default_locale": "",
+ "default_locale": "Локализация по подразбиране",
"default_locale_description": "Форматиране на дати и числа в зависимост от местоположението на браузъра",
"delete": "Изтрий",
"delete_album": "Изтрий албум",
@@ -477,14 +528,19 @@
"delete_key": "Изтрий ключ",
"delete_library": "Изтрий библиотека",
"delete_link": "Изтрий линк",
+ "delete_others": "Изтрий останалите",
"delete_shared_link": "Изтриване на споделен линк",
+ "delete_tag": "Изтрий таг",
+ "delete_tag_confirmation_prompt": "Сигурни ли сте, че искате да изтриете таг {tagName}?",
"delete_user": "Изтрий потребител",
"deleted_shared_link": "Изтрит споделен линк",
+ "deletes_missing_assets": "Изтрива файлове, които липсват на диска",
"description": "Описание",
"details": "Детайли",
"direction": "Посока",
"disabled": "Изключено",
"disallow_edits": "Забраняване на редакциите",
+ "discord": "Discord",
"discover": "Открий",
"dismiss_all_errors": "Отхвърляне на всички грешки",
"dismiss_error": "Отхвърляне на грешка",
@@ -493,15 +549,18 @@
"display_original_photos": "Показване на оригинални снимки",
"display_original_photos_setting_description": "Показване на оригиналната снимка вместо миниатюри, когато оригиналният актив е съвместим с мрежата. Това може да доведе до по-бавни скорости на показване на снимки.",
"do_not_show_again": "Не показвайте това съобщение отново",
+ "documentation": "Документация",
"done": "Готово",
"download": "Изтегли",
+ "download_include_embedded_motion_videos": "Вградени видеа",
+ "download_include_embedded_motion_videos_description": "Включете видеата, вградени в динамични снимки, като отделен файл",
"download_settings": "Изтегли",
"download_settings_description": "Управление на настройките, свързани с изтеглянето на файлове",
"downloading": "Изтегляне",
"downloading_asset_filename": "Изтегляне на файл {filename}",
"drop_files_to_upload": "Пуснете файловете, за да ги качите",
"duplicates": "Дубликати",
- "duplicates_description": "",
+ "duplicates_description": "Изберете всяка група, като посочите кои, ако има такива, са дубликати",
"duration": "Продължителност",
"edit": "Редактиране",
"edit_album": "Редактиране на албум",
@@ -517,10 +576,15 @@
"edit_location": "Редактиране на местоположението",
"edit_name": "Редактиране на име",
"edit_people": "Редактиране на хора",
+ "edit_tag": "Редактирай таг",
"edit_title": "Редактиране на заглавието",
"edit_user": "Редактиране на потребител",
"edited": "Редактирано",
- "editor": "",
+ "editor": "Редактор",
+ "editor_close_without_save_prompt": "Промените няма да бъдат запазени",
+ "editor_close_without_save_title": "Затваряне на редактора?",
+ "editor_crop_tool_h2_aspect_ratios": "Съотношения на страните",
+ "editor_crop_tool_h2_rotation": "Завъртане",
"email": "Имейл",
"empty_trash": "Изпразване на кош",
"empty_trash_confirmation": "Сигурни ли сте, че искате да изпразните кошчето? Това ще премахне всичко в кошчето за постоянно от Immich.\nНе можете да отмените това действие!",
@@ -534,7 +598,9 @@
"cannot_navigate_next_asset": "Не можете да преминете към следващия файл",
"cannot_navigate_previous_asset": "Не можете да преминете към предишния актив",
"cant_apply_changes": "Не могат да се приложат промение",
+ "cant_change_activity": "Не може {enabled, select, true {да се деактивира} other {да се активира}} дейността",
"cant_change_asset_favorite": "Не може да промени любими за файл",
+ "cant_change_metadata_assets_count": "Не може да се промени метаданните на {count, plural, one {# обект} other {# обекта}}",
"cant_get_faces": "Не мога да намеря лица",
"cant_get_number_of_comments": "Не може да получи броя на коментарите",
"cant_search_people": "Не може да търси хора",
@@ -553,19 +619,28 @@
"failed_to_create_shared_link": "Неуспешно създаване на споделена връзка",
"failed_to_edit_shared_link": "Неуспешно редактиране на споделена връзка",
"failed_to_get_people": "Неуспешно зареждане на хора",
+ "failed_to_keep_this_delete_others": "Неуспешно запазване на този обект и изтриване на останалите обекти",
"failed_to_load_asset": "Неуспешно зареждане на файл",
"failed_to_load_assets": "Неуспешно зареждане на файлове",
- "import_path_already_exists": "",
+ "failed_to_load_people": "Неуспешно зареждане на хора",
+ "failed_to_remove_product_key": "Неуспешно премахване на продуктовия ключ",
+ "failed_to_stack_assets": "Неуспешно подреждане на обекти",
+ "failed_to_unstack_assets": "Неуспешно премахване на подредбата на обекти",
+ "import_path_already_exists": "Този път за импортиране вече съществува.",
"incorrect_email_or_password": "Неправилен имейл или парола",
- "paths_validation_failed": "",
+ "paths_validation_failed": "{paths, plural, one {# път} other {# пътища}} не преминаха валидация",
"profile_picture_transparent_pixels": "Профилните снимки не могат да имат прозрачни пиксели. Моля, увеличете и/или преместете изображението.",
"quota_higher_than_disk_size": "Зададена е квота, по-голяма от размера на диска",
- "repair_unable_to_check_items": "",
- "unable_to_add_album_users": "",
- "unable_to_add_comment": "",
- "unable_to_add_exclusion_pattern": "",
- "unable_to_add_import_path": "",
- "unable_to_add_partners": "",
+ "repair_unable_to_check_items": "Неуспешно проверяване на {count, select, one {обект} other {обекти}}",
+ "unable_to_add_album_users": "Неуспешно добавяне на потребители в албум",
+ "unable_to_add_assets_to_shared_link": "Неуспешно добавяне на обекти в споделен линк",
+ "unable_to_add_comment": "Неуспешно добавяне на коментар",
+ "unable_to_add_exclusion_pattern": "Неуспешно добавяне на шаблон за изключение",
+ "unable_to_add_import_path": "Неуспешно добавяне на път за импортиране",
+ "unable_to_add_partners": "Неуспешно добавяне на партньори",
+ "unable_to_add_remove_archive": "Неуспешно {archived, select, true {премахване на обект от} other {добавяне на обект в}} архива",
+ "unable_to_add_remove_favorites": "Неуспешно {favorite, select, true {добавяне на обект в} other {премахване на обект от}} любими",
+ "unable_to_archive_unarchive": "Неуспешно {archived, select, true {архивиране} other {разархивиране}}",
"unable_to_change_album_user_role": "Не може да се промени ролята на потребителя на албума",
"unable_to_change_date": "Не може да се промени датата",
"unable_to_change_favorite": "Не може да промени фаворит за актив",
@@ -596,17 +671,18 @@
"unable_to_get_comments_number": "Не може да получи брой коментари",
"unable_to_get_shared_link": "Неуспешно създаване на споделена връзка",
"unable_to_hide_person": "Не може да скрие човек",
- "unable_to_link_oauth_account": "",
- "unable_to_load_album": "",
- "unable_to_load_asset_activity": "",
- "unable_to_load_items": "",
- "unable_to_load_liked_status": "",
+ "unable_to_link_motion_video": "Неуспешно свързване на видео с движение",
+ "unable_to_link_oauth_account": "Неуспешно свързване на OAuth акаунт",
+ "unable_to_load_album": "Неуспешно зареждане на албум",
+ "unable_to_load_asset_activity": "Неуспешно зареждане на активност на обект",
+ "unable_to_load_items": "Неуспешно зареждане на обекти",
+ "unable_to_load_liked_status": "Неуспешно зареждане на статус на харесване",
"unable_to_play_video": "",
"unable_to_refresh_user": "",
"unable_to_remove_album_users": "",
"unable_to_remove_api_key": "",
+ "unable_to_remove_deleted_assets": "",
"unable_to_remove_library": "",
- "unable_to_remove_offline_files": "",
"unable_to_remove_partner": "",
"unable_to_remove_reaction": "",
"unable_to_repair_items": "",
@@ -645,7 +721,6 @@
"external": "Външно",
"external_libraries": "Външни библиотеки",
"face_unassigned": "Незададено",
- "failed_to_get_people": "",
"favorite": "Любим",
"favorite_or_unfavorite_photo": "",
"favorites": "Любими",
@@ -657,14 +732,12 @@
"filter_people": "Филтриране на хора",
"find_them_fast": "Намерете ги бързо по име с търсене",
"fix_incorrect_match": "Поправяне на неправилно съвпадение",
- "force_re-scan_library_files": "Принудително повторно сканиране на всички библиотечни файлове",
"forward": "Напред",
"general": "Общи",
"get_help": "Помощ",
"getting_started": "",
"go_back": "Връщане назад",
"go_to_search": "Преминаване към търсене",
- "go_to_share_page": "",
"group_albums_by": "Групирай албум по...",
"group_owner": "Групиране по собственик",
"group_year": "Групиране по година",
@@ -680,7 +753,6 @@
"hour": "Час",
"image": "Изображение",
"image_alt_text_date": "на {date}",
- "image_alt_text_place": "в {city}, {country}",
"immich_logo": "Immich лого",
"immich_web_interface": "",
"import_from_json": "Импортиране от JSON",
@@ -713,29 +785,6 @@
"level": "Ниво",
"library": "Библиотека",
"library_options": "Опции на библиотеката",
- "license_account_info": "Вашият акаунт е лицензиран",
- "license_activated_title": "Вашият лиценз е активиран успешно",
- "license_button_activate": "Активирай",
- "license_button_buy": "Купи",
- "license_button_buy_license": "Купи лиценз",
- "license_button_select": "Избери",
- "license_failed_activation": "Неуспешно активиране на лиценз. Моля, проверете имейла си за правилния лицензен ключ!",
- "license_individual_description_1": "1 лиценз за потребител на всеки сървър",
- "license_individual_title": "Индивидуален лиценз",
- "license_info_licensed": "Лицензиран",
- "license_info_unlicensed": "Не лицензиран",
- "license_input_suggestion": "Имате лиценз? Въведете ключа по-долу",
- "license_license_subtitle": "Купете лиценз, за да подкрепите Immich",
- "license_license_title": "ЛИЦЕНЗ",
- "license_lifetime_description": "Доживотен лиценз",
- "license_per_server": "За сървър",
- "license_per_user": "За потребител",
- "license_server_description_1": "1 лиценз за сървър",
- "license_server_description_2": "Лиценз за всички потребители на сървъра",
- "license_server_title": "Лиценз за сървър",
- "license_trial_info_1": "Работите с нелицензирана версия на Immich",
- "license_trial_info_2": "Използвали сте Immich за приблизително",
- "license_trial_info_4": "Моля, помислете за закупуване на лиценз, за да подкрепите по-нататъшното развитие на услугата",
"light": "Светло",
"link_options": "Опции на линк за споделяне",
"link_to_oauth": "",
@@ -827,7 +876,6 @@
"onboarding_welcome_user": "Добре дошъл, {user}",
"online": "Онлайн",
"only_favorites": "Само любими",
- "only_refreshes_modified_files": "Опреснява само модифицирани файлове",
"open_the_search_filters": "Отваряне на филтрите за търсене",
"options": "Настройки",
"or": "или",
@@ -865,7 +913,6 @@
"permanent_deletion_warning_setting_description": "Показване на предупреждение при трайно изтриване на активи",
"permanently_delete": "Трайно изтриване",
"permanently_deleted_asset": "",
- "permanently_deleted_assets": "",
"person": "Човек",
"photos": "Снимки",
"photos_count": "",
@@ -895,10 +942,10 @@
"refreshed": "Опреснено",
"refreshes_every_file": "",
"remove": "Премахни",
+ "remove_deleted_assets": "",
"remove_from_album": "",
"remove_from_favorites": "",
"remove_from_shared_link": "",
- "remove_offline_files": "",
"removed_api_key": "",
"rename": "Преименувай",
"repair": "Поправи",
@@ -926,8 +973,6 @@
"saved_settings": "",
"say_something": "",
"scan_all_libraries": "",
- "scan_all_library_files": "",
- "scan_new_library_files": "",
"scan_settings": "",
"scanning_for_album": "",
"search": "Търсене",
@@ -938,19 +983,22 @@
"search_city": "",
"search_country": "",
"search_for_existing_person": "",
- "search_people": "",
- "search_places": "",
+ "search_people": "Търсете на хора",
+ "search_places": "Търсене на места",
"search_state": "",
- "search_timezone": "",
- "search_type": "",
- "search_your_photos": "",
+ "search_tags": "Търсене на етикети...",
+ "search_timezone": "Търсене на часова зона...",
+ "search_type": "Тип на търсене",
+ "search_your_photos": "Търсете вашите снимки",
"searching_locales": "",
"second": "Секунда",
- "select_album_cover": "",
- "select_all": "",
- "select_avatar_color": "",
- "select_face": "",
+ "see_all_people": "Вижте всички хора",
+ "select_album_cover": "Изберете обложка на албум",
+ "select_all": "Изберете всички",
+ "select_avatar_color": "Изберете цвят на аватара",
+ "select_face": "Изберете лице",
"select_featured_photo": "",
+ "select_from_computer": "Изберете от компютъра",
"select_keep_all": "",
"select_library_owner": "Изберете собственик на библиотека",
"select_new_face": "Изберете ново лице",
@@ -959,7 +1007,6 @@
"selected": "Избрано",
"send_message": "Изпратете съобщение",
"send_welcome_email": "Изпратете имейл за добре дошли",
- "server": "Сървър",
"server_offline": "Сървър офлайн",
"server_online": "Сървър онлайн",
"server_stats": "Статус на сървъра",
@@ -998,28 +1045,40 @@
"show_metadata": "Покажи метаданни",
"show_or_hide_info": "Покажи или скрий информацията",
"show_password": "Покажи паролата",
- "show_person_options": "",
- "show_progress_bar": "",
- "show_search_options": "",
+ "show_person_options": "Показване на опции за лица",
+ "show_progress_bar": "Показване на прогрес бара",
+ "show_search_options": "Показване на опциите за търсене",
+ "show_supporter_badge": "Значка поддръжник",
+ "show_supporter_badge_description": "Покажи значка поддръжник",
"shuffle": "Разбъркване",
- "sign_out": "",
- "sign_up": "",
+ "sidebar": "Странична лента",
+ "sidebar_display_description": "Показване на връзка към изгледа в страничната лента",
+ "sign_out": "Отписване",
+ "sign_up": "Запиши се",
"size": "Размер",
- "skip_to_content": "",
+ "skip_to_content": "Премини към съдържанието",
+ "skip_to_folders": "Премини към папките",
+ "skip_to_tags": "Премини към етикетите",
"slideshow": "Слайдшоу",
- "slideshow_settings": "",
- "sort_albums_by": "",
+ "slideshow_settings": "Настройки за слайдшоу",
+ "sort_albums_by": "Сортиране на албуми по...",
+ "sort_created": "Дата на създаване",
+ "sort_items": "Брой елементи",
+ "sort_modified": "Дата на промяна",
+ "sort_oldest": "Най-старата снимка",
+ "sort_recent": "Най-новата снимка",
"sort_title": "Заглавие",
"source": "Източник",
"stack": "",
- "stack_selected_photos": "",
+ "stack_duplicates": "Подреждане на дубликати",
+ "stack_selected_photos": "Подреждане на избрани снимки",
"stacktrace": "",
"start": "Старт",
- "start_date": "",
+ "start_date": "Начална дата",
"state": "",
"status": "Статус",
"stop_motion_photo": "",
- "stop_photo_sharing": "Да спрете ли споделянето на вашите снимки?",
+ "stop_photo_sharing": "Да спра ли споделянето на вашите снимки?",
"stop_photo_sharing_description": "{partner} вече няма достъп до вашите снимки.",
"stop_sharing_photos_with_user": "Прекратете споделянето на снимки с този потребител",
"storage": "Пространство на хранилището",
@@ -1030,6 +1089,12 @@
"sunrise_on_the_beach": "Изгрев на плажа",
"swap_merge_direction": "Размяна посоката на сливане",
"sync": "Синхронизиране",
+ "tag": "Таг",
+ "tag_created": "Създаден етикет: {tag}",
+ "tag_feature_description": "Разглеждане на снимки и видеоклипове, групирани по теми с логически тагове",
+ "tag_not_found_question": "Не можете да намерите етикет? Създайте такъв тук",
+ "tag_updated": "Актуализиран етикет: {tag}",
+ "tags": "Етикет",
"template": "Шаблон",
"theme": "Тема",
"theme_selection": "Избор на тема",
@@ -1044,16 +1109,14 @@
"to_trash": "Кошче",
"toggle_settings": "Превключване на настройките",
"toggle_theme": "Превключване на тема",
- "toggle_visibility": "",
"total_usage": "Общо използвано",
"trash": "кошче",
"trash_all": "Изхвърли всички",
- "trash_count": "",
+ "trash_count": "Кошче {count, number}",
"trash_no_results_message": "Изтритите снимки и видеоклипове ще се показват тук.",
"trashed_items_will_be_permanently_deleted_after": "Изхвърлените в кошчето елементи ще бъдат изтрити за постоянно след {days, plural, one {# day} other {# days}}.",
"type": "Тип",
"unarchive": "Разархивирай",
- "unarchived": "",
"unfavorite": "Премахване от любимите",
"unhide_person": "",
"unknown": "Неизвестно",
@@ -1062,6 +1125,7 @@
"unlink_oauth": "",
"unlinked_oauth_account": "",
"unnamed_album": "Албум без име",
+ "unnamed_album_delete_confirmation": "Сигурни ли сте, че искате да изтриете този албум?",
"unnamed_share": "Споделяне без име",
"unsaved_change": "Незапазена промяна",
"unselect_all": "Деселектирайте всички",
@@ -1085,7 +1149,9 @@
"user_purchase_settings": "Покупка",
"user_purchase_settings_description": "Управлявай покупката си",
"user_role_set": "Задай {user} като {role}",
- "user_usage_detail": "",
+ "user_usage_detail": "Подробности за използването на потребителя",
+ "user_usage_stats": "Статистика за използването на акаунта",
+ "user_usage_stats_description": "Преглед на статистиката за използването на акаунта",
"username": "Потребителско име",
"users": "Потребители",
"utilities": "Инструменти",
@@ -1098,20 +1164,22 @@
"video_hover_setting": "Възпроизвеждане на видеоклип при посочване с мишката",
"video_hover_setting_description": "Възпроизвеждане на видеоклипа, когато мишката се движи над елемента. Дори когато е деактивирано, възпроизвеждането може да бъде стартирано чрез задържане на курсора на мишката върху иконата за възпроизвеждане.",
"videos": "Видеоклипове",
- "videos_count": "",
+ "videos_count": "{count, plural, one {# Видео} other {# Видеа}}",
"view": "Преглед",
"view_album": "Разгледай албума",
"view_all": "Преглед на всички",
"view_all_users": "Преглед на всички потребители",
+ "view_in_timeline": "Покажи във времева линия",
"view_links": "Преглед на връзките",
"view_next_asset": "Преглед на следващия файл",
"view_previous_asset": "Преглед на предишния файл",
- "viewer": "",
+ "view_stack": "Покажи в стек",
+ "visibility_changed": "Видимостта е променена за {count, plural, one {# person} other {# people}}",
"waiting": "в изчакване",
"warning": "Внимание",
"week": "Седмица",
"welcome": "Добре дошли",
- "welcome_to_immich": "Добре дошли в immich",
+ "welcome_to_immich": "Добре дошли в Immich",
"year": "Година",
"yes": "Да",
"you_dont_have_any_shared_links": "Нямате споделени връзки",
diff --git a/web/src/lib/i18n/bi.json b/i18n/bi.json
similarity index 95%
rename from web/src/lib/i18n/bi.json
rename to i18n/bi.json
index 7d70cb8434..dfcc614bea 100644
--- a/web/src/lib/i18n/bi.json
+++ b/i18n/bi.json
@@ -33,7 +33,6 @@
"confirm_email_below": "",
"confirm_reprocess_all_faces": "",
"confirm_user_password_reset": "",
- "crontab_guru": "",
"disable_login": "",
"duplicate_detection_job_description": "",
"exclusion_pattern_description": "",
@@ -49,16 +48,9 @@
"image_prefer_embedded_preview_setting_description": "",
"image_prefer_wide_gamut": "",
"image_prefer_wide_gamut_setting_description": "",
- "image_preview_format": "",
- "image_preview_resolution": "",
- "image_preview_resolution_description": "",
"image_quality": "",
- "image_quality_description": "",
"image_settings": "",
"image_settings_description": "",
- "image_thumbnail_format": "",
- "image_thumbnail_resolution": "",
- "image_thumbnail_resolution_description": "",
"job_concurrency": "",
"job_not_concurrency_safe": "",
"job_settings": "",
@@ -67,8 +59,6 @@
"jobs_delayed": "",
"jobs_failed": "",
"library_created": "",
- "library_cron_expression": "",
- "library_cron_expression_presets": "",
"library_deleted": "",
"library_import_path_description": "",
"library_scanning": "",
@@ -172,15 +162,12 @@
"paths_validated_successfully": "",
"quota_size_gib": "",
"refreshing_all_libraries": "",
- "removing_offline_files": "",
"repair_all": "",
"repair_matched_items": "",
"repaired_items": "",
"require_password_change_on_login": "",
"reset_settings_to_default": "",
"reset_settings_to_recent_saved": "",
- "scanning_library_for_changed_files": "",
- "scanning_library_for_new_files": "",
"send_welcome_email": "",
"server_external_domain_settings": "",
"server_external_domain_settings_description": "",
@@ -255,8 +242,6 @@
"transcoding_threads_description": "",
"transcoding_tone_mapping": "",
"transcoding_tone_mapping_description": "",
- "transcoding_tone_mapping_npl": "",
- "transcoding_tone_mapping_npl_description": "",
"transcoding_transcode_policy": "",
"transcoding_transcode_policy_description": "",
"transcoding_two_pass_encoding": "",
@@ -308,7 +293,6 @@
"appears_in": "",
"archive": "",
"archive_or_unarchive_photo": "",
- "archived": "",
"asset_offline": "",
"assets": "",
"authorized_devices": "",
@@ -322,10 +306,6 @@
"cancel_search": "",
"cannot_merge_people": "",
"cannot_update_the_description": "",
- "cant_apply_changes": "",
- "cant_get_faces": "",
- "cant_search_people": "",
- "cant_search_places": "",
"change_date": "",
"change_expiration_time": "",
"change_location": "",
@@ -411,13 +391,6 @@
"download": "",
"downloading": "",
"duration": "",
- "durations": {
- "days": "",
- "hours": "",
- "minutes": "",
- "months": "",
- "years": ""
- },
"edit_album": "",
"edit_avatar": "",
"edit_date": "",
@@ -436,7 +409,6 @@
"edited": "",
"editor": "",
"email": "",
- "empty_album": "",
"empty_trash": "",
"enable": "",
"enabled": "",
@@ -485,8 +457,8 @@
"unable_to_refresh_user": "",
"unable_to_remove_album_users": "",
"unable_to_remove_api_key": "",
+ "unable_to_remove_deleted_assets": "",
"unable_to_remove_library": "",
- "unable_to_remove_offline_files": "",
"unable_to_remove_partner": "",
"unable_to_remove_reaction": "",
"unable_to_repair_items": "",
@@ -522,7 +494,6 @@
"extension": "",
"external": "",
"external_libraries": "",
- "failed_to_get_people": "",
"favorite": "",
"favorite_or_unfavorite_photo": "",
"favorites": "",
@@ -534,14 +505,12 @@
"filter_people": "",
"find_them_fast": "",
"fix_incorrect_match": "",
- "force_re-scan_library_files": "",
"forward": "",
"general": "",
"get_help": "",
"getting_started": "",
"go_back": "",
"go_to_search": "",
- "go_to_share_page": "",
"group_albums_by": "",
"has_quota": "",
"hide_gallery": "",
@@ -656,7 +625,6 @@
"oldest_first": "",
"online": "",
"only_favorites": "",
- "only_refreshes_modified_files": "",
"open_the_search_filters": "",
"options": "",
"organize_your_library": "",
@@ -718,10 +686,10 @@
"refreshed": "",
"refreshes_every_file": "",
"remove": "",
+ "remove_deleted_assets": "",
"remove_from_album": "",
"remove_from_favorites": "",
"remove_from_shared_link": "",
- "remove_offline_files": "",
"removed_api_key": "",
"rename": "",
"repair": "",
@@ -745,8 +713,6 @@
"saved_settings": "",
"say_something": "",
"scan_all_libraries": "",
- "scan_all_library_files": "",
- "scan_new_library_files": "",
"scan_settings": "",
"search": "",
"search_albums": "",
@@ -777,7 +743,6 @@
"selected": "",
"send_message": "",
"send_welcome_email": "",
- "server": "",
"server_stats": "",
"set": "",
"set_as_album_cover": "",
@@ -847,7 +812,6 @@
"to_favorite": "",
"toggle_settings": "",
"toggle_theme": "",
- "toggle_visibility": "",
"total_usage": "",
"trash": "",
"trash_all": "",
@@ -855,11 +819,9 @@
"trashed_items_will_be_permanently_deleted_after": "",
"type": "",
"unarchive": "",
- "unarchived": "",
"unfavorite": "",
"unhide_person": "",
"unknown": "",
- "unknown_album": "",
"unknown_year": "",
"unlimited": "",
"unlink_oauth": "",
@@ -893,7 +855,6 @@
"view_links": "",
"view_next_asset": "",
"view_previous_asset": "",
- "viewer": "",
"waiting": "",
"week": "",
"welcome_to_immich": "",
diff --git a/web/src/lib/i18n/af.json b/i18n/bn.json
similarity index 100%
rename from web/src/lib/i18n/af.json
rename to i18n/bn.json
diff --git a/web/src/lib/i18n/ca.json b/i18n/ca.json
similarity index 87%
rename from web/src/lib/i18n/ca.json
rename to i18n/ca.json
index a0fd6ff437..a38e9e4743 100644
--- a/web/src/lib/i18n/ca.json
+++ b/i18n/ca.json
@@ -1,38 +1,45 @@
{
- "about": "Quant a",
+ "about": "Sobre",
"account": "Compte",
"account_settings": "Configuració del compte",
- "acknowledge": "Reconeix",
+ "acknowledge": "Confirmar",
"action": "Acció",
"actions": "Accions",
"active": "Actiu",
"activity": "Activitat",
"activity_changed": "L'activitat està {enabled, select, true {activada} other {desactivada}}",
- "add": "Afig",
+ "add": "Afegir",
"add_a_description": "Afegiu una descripció",
"add_a_location": "Afegiu una ubicació",
"add_a_name": "Afegir un nom",
"add_a_title": "Afegir un títol",
"add_exclusion_pattern": "Afegir un patró d'exclusió",
- "add_import_path": "Afegir un camí d'importació",
+ "add_import_path": "Afegir una ruta d'importació",
"add_location": "Afegir la ubicació",
"add_more_users": "Afegir més usuaris",
"add_partner": "Afegir company/a",
- "add_path": "Afegir un camí",
+ "add_path": "Afegir una ruta",
"add_photos": "Afegir fotografies",
"add_to": "Afegir a...",
"add_to_album": "Afegir a un l'àlbum",
"add_to_shared_album": "Afegir a un àlbum compartit",
+ "add_url": "Afegir URL",
"added_to_archive": "Afegit als arxivats",
"added_to_favorites": "Afegit als preferits",
"added_to_favorites_count": "{count, number} afegits als preferits",
"admin": {
- "add_exclusion_pattern_description": "Afegeix patrons d'eclusió. És permès de l'ús de *, **, i ? (globbing). Per a ignorar els fitxers de qualsevol directori anomenat \"Raw\" introduïu \"**/Raw/**\". Per a ignorar els fitxers acabats en \".tif\" introduïu \"**/*.tif\". Per a ignorar un camí absolut, utilitzeu \"/camí/a/ignorar/**\".",
+ "add_exclusion_pattern_description": "Afegeix patrons d'exclusió. Es permet englobar fent ús de *, **, i ?. Per a ignorar els fitxers de qualsevol directori anomenat \"Raw\" introduïu \"**/Raw/**\". Per a ignorar els fitxers acabats en \".tif\" introduïu \"**/*.tif\". Per a ignorar una ruta absoluta, utilitzeu \"/ruta/a/ignorar/**\".",
+ "asset_offline_description": "Aquest recurs de la biblioteca externa ja no es troba al disc i s'ha mogut a la paperera. Si el fitxer s'ha mogut dins de la biblioteca, comproveu la vostra línia de temps per trobar el nou recurs corresponent. Per restaurar aquest recurs, assegureu-vos que Immich pugui accedir a la ruta del fitxer següent i escanegeu la biblioteca.",
"authentication_settings": "Configuració de l'autenticació",
"authentication_settings_description": "Gestiona la contrasenya, OAuth i altres configuracions de l'autenticació",
"authentication_settings_disable_all": "Estàs segur que vols desactivar tots els mètodes d'inici de sessió? L'inici de sessió quedarà completament desactivat.",
"authentication_settings_reenable": "Per a tornar a habilitar, empra una Comanda de Servidor.",
"background_task_job": "Tasques en segon pla",
+ "backup_database": "Còpia de la base de dades",
+ "backup_database_enable_description": "Habilitar còpies de la base de dades",
+ "backup_keep_last_amount": "Quantitat de còpies de seguretat anteriors per conservar",
+ "backup_settings": "Ajustes de les còpies de seguretat",
+ "backup_settings_description": "Gestionar la configuració de la còpia de seguretat de la base de dades",
"check_all": "Marca-ho tot",
"cleared_jobs": "Tasques esborrades per a: {job}",
"config_set_by_file": "La configuració està definida per un fitxer de configuració",
@@ -41,35 +48,40 @@
"confirm_email_below": "Per a confirmar, escriviu \"{email}\" a sota",
"confirm_reprocess_all_faces": "Esteu segur que voleu reprocessar totes les cares? Això també esborrarà la gent que heu anomenat.",
"confirm_user_password_reset": "Esteu segur que voleu reinicialitzar la contrasenya de l'usuari {user}?",
- "crontab_guru": "Crontab Guru",
+ "create_job": "Crear tasca",
+ "cron_expression": "Expressió Cron",
+ "cron_expression_description": "Estableix l'interval d'escaneig amb el format cron. Per obtenir més informació, consulteu, p.e Crontab Guru",
+ "cron_expression_presets": "Ajustos predefinits d'expressions Cron",
"disable_login": "Deshabiliteu l'inici de sessió",
- "disabled": "Deshabilitat",
"duplicate_detection_job_description": "Executa l'aprenentatge automàtic en els elements per a detectar imatges semblants. Fa servir l'Smart Search",
"exclusion_pattern_description": "Els patrons d'exclusió permeten ignorar fitxers i carpetes quan escanegeu una llibreria. Això és útil si teniu carpetes que contenen fitxer que no voleu importar, com els fitxers RAW.",
"external_library_created_at": "Llibreria externa (creada el {date})",
"external_library_management": "Gestió de llibreries externes",
"face_detection": "Detecció de cares",
- "face_detection_description": "Detecta les cares fent servir aprenentatge automàtic. Per a videos només és té en compte la miniatura. \"Tot\" reprocessa tots els elements. \"Pendent\" encua els elements que encar no han estat processats. Les cares detectades s'encuaran per al Reconeixement Facial després de completar la Detecció Facial, tot agrupant-les entre noves persones o les ja existents.",
- "facial_recognition_job_description": "Agrupa les cares detectades per persona. Aquest pas s'executa després de completar la detecció de cares. \"Tot\" reagrupa totes les cares. \"Pendent\" encua les cares que no tenen cap persona assignada.",
+ "face_detection_description": "Detecta les cares fent servir aprenentatge automàtic. Per a videos només és té en compte la miniatura. \"Actualitzar\" reprocessa tots els elements. \"Resetejar\" esborra tota la informació de cares actuals. \"Pendent\" afegeix a la cua els elements que encara no han estat processats. Les cares detectades s'afegiran a la cua per al Reconeixement Facial després de completar la Detecció Facial, tot agrupant-les entre noves persones o les ja existents.",
+ "facial_recognition_job_description": "Agrupa les cares detectades per persona. Aquest pas s'executa després de completar la detecció de cares. \"Resetejar\" reagrupa totes les cares. \"Pendent\" afegeix a la cua les cares que no tenen cap persona assignada.",
"failed_job_command": "La comanda {command} ha fallat per la tasca: {job}",
"force_delete_user_warning": "COMPTE: Aquesta acció eliminara immediatament l'usuari i els seus elements. Aquesta acció és irreversible i els fitxers no es poden recuperar.",
"forcing_refresh_library_files": "Força l'actualització de tots els fitxers de les biblioteques",
+ "image_format": "Format",
"image_format_description": "WebP genera fitxers més petits que JPEG, però codifica més lentament.",
"image_prefer_embedded_preview": "Prefereix vista prèvia incrustada",
"image_prefer_embedded_preview_setting_description": "Empra vista prèvia incrustada en les fotografies RAW com a entrada per al processament d'imatge, quan sigui possible. Aquesta acció pot produir colors més acurats en algunes imatges, però la qualitat de la vista prèvia depèn de la càmera i la imatge pot tenir més artefactes de compressió.",
"image_prefer_wide_gamut": "Prefereix àmplia gamma",
"image_prefer_wide_gamut_setting_description": "Uitlitza Display P3 per a les miniatures. Això preserva més bé la vitalitat de les imatges amb espais de color àmplis, però les imatges es poden veure diferent en aparells antics amb una versió antiga del navegador. Les imatges sRGB romandran com a sRGB per a evitar canvis de color.",
- "image_preview_format": "Format de previsualització",
- "image_preview_resolution": "Resolució de previsualització",
- "image_preview_resolution_description": "S'empra al visualitzar una única fotografia i per a l'Aprenentatge Automàtic. L'alta resolució por preservar més detalls però es triga més a codificar, té fitxers més pesats i pot reduir la resposta de l'aplicació.",
+ "image_preview_description": "Imatge de mida mitjana amb metadades eliminades, que s'utilitza quan es visualitza un sol recurs i per a l'aprenentatge automàtic",
+ "image_preview_quality_description": "Vista prèvia de la qualitat de l'1 al 100. Més alt és millor, però produeix fitxers més grans i pot reduir la capacitat de resposta de l'aplicació. Establir un valor baix pot afectar la qualitat de l'aprenentatge automàtic.",
+ "image_preview_title": "Paràmetres de previsualització",
"image_quality": "Qualitat",
- "image_quality_description": "Qualitat d'imatge de 1 a 100. Un valor més alt millora la qualitat però genera fitxers més pesats.",
+ "image_resolution": "Resolució",
+ "image_resolution_description": "Les resolucions més altes poden conservar més detalls però triguen més a codificar-se, tenen mides de fitxer més grans i poden reduir la capacitat de resposta de l'aplicació.",
"image_settings": "Configuració d'imatges",
"image_settings_description": "Gestiona la qualitat i resolució de les imatges generades",
- "image_thumbnail_format": "Format de la miniatura",
- "image_thumbnail_resolution": "Resolució de la miniatura",
- "image_thumbnail_resolution_description": "S'empra per a veure grups de fotos (cronologia, vista d'àlbum, etc.). L'alta resolució pot preservar més detalls però triguen més en codificar-se, tenen fitxers més pesats i poden reduir la reactivitat de l'aplicació.",
+ "image_thumbnail_description": "Miniatura petita amb metadades eliminades, que s'utilitza quan es visualitzen grups de fotos com la línia de temps principal",
+ "image_thumbnail_quality_description": "Qualitat de miniatura d'1 a 100. Més alt és millor, però produeix fitxers més grans i pot reduir la capacitat de resposta de l'aplicació.",
+ "image_thumbnail_title": "Configuració de miniatures",
"job_concurrency": "{job} concurrència",
+ "job_created": "Tasca creada",
"job_not_concurrency_safe": "Aquesta tasca no és segura per a la conconcurrència.",
"job_settings": "Configuració de les tasques",
"job_settings_description": "Gestiona la concurrència de tasques",
@@ -77,9 +89,6 @@
"jobs_delayed": "{jobCount, plural, other {# posposades}}",
"jobs_failed": "{jobCount, plural, other {# fallides}}",
"library_created": "Bilbioteca creada: {library}",
- "library_cron_expression": "Expressió cron",
- "library_cron_expression_description": "Estableix l'interval d'escaneig utilitzant el format cron. Per a més informació, consulta per exemple, Crontab Guru",
- "library_cron_expression_presets": "Expressions cron predeterminades",
"library_deleted": "Bilbioteca eliminada",
"library_import_path_description": "Especifiqueu una carpeta a importar. Aquesta carpeta, incloses les seves subcarpetes, serà escanejada per cercar-hi imatges i vídeos.",
"library_scanning": "Escaneig periòdic",
@@ -129,25 +138,30 @@
"map_enable_description": "Habilita característiques del mapa",
"map_gps_settings": "Configuració de mapa i GPS",
"map_gps_settings_description": "Gestiona la configuració de mapa i GPS (Geocodificació inversa)",
+ "map_implications": "La funció mapa depèn del servei extern de tesel·les (tiles.immich.cloud)",
"map_light_style": "Tema clar",
"map_manage_reverse_geocoding_settings": "Gestiona els paràmetres de geocodificació inversa",
"map_reverse_geocoding": "Geocodificació inversa",
"map_reverse_geocoding_enable_description": "Habilita la geocodificació inversa",
"map_reverse_geocoding_settings": "Configuració de Geocodificació Inversa",
- "map_settings": "Configuració del mapa i GPS",
+ "map_settings": "Mapa",
"map_settings_description": "Gestiona la configuració del mapa",
"map_style_description": "URL a un tema del mapa style.json",
"metadata_extraction_job": "Extreure metadades",
"metadata_extraction_job_description": "Extreu la informació de metadades de cada element, com per exemple el GPS i la resolució",
+ "metadata_faces_import_setting": "Activar la importació de cares",
+ "metadata_faces_import_setting_description": "Importar cares des de les metadades EXIF de les imatges i arxius auxiliars",
+ "metadata_settings": "Configuració de les metadades",
+ "metadata_settings_description": "Administrar la configuració de les metadades",
"migration_job": "Migració",
"migration_job_description": "Migra les miniatures d'elements i cares cap a la nova estructura de carpetes",
- "no_paths_added": "Cap camí afegit",
+ "no_paths_added": "No s'ha afegit cap ruta",
"no_pattern_added": "Cap patró aplicat",
"note_apply_storage_label_previous_assets": "Nota: Per aplicar l'etiquetatge d'emmagatzematge a elements pujats prèviament, executeu la",
"note_cannot_be_changed_later": "NOTA: Això és irreversible!",
"note_unlimited_quota": "Nota: Intruduïu 0 per a quota il·limitada",
"notification_email_from_address": "Des de l'adreça",
- "notification_email_from_address_description": "Adreça de correu electrònic del remitent, per exemple: \"Immich Photo Server {label} és l'etiqueta d'emmagatzematge de l'usuari",
"system_settings": "Configuració del sistema",
+ "tag_cleanup_job": "Neteja d'etiqueta",
"theme_custom_css_settings": "CSS personalitzat",
"theme_custom_css_settings_description": "Els Fulls d'Estil en Cascada permeten personalitzar el disseny d'Immich.",
"theme_settings": "Configuració del tema",
@@ -240,7 +255,6 @@
"these_files_matched_by_checksum": "Aquests fitxers coincideixen amb els seus checksums",
"thumbnail_generation_job": "Generar miniatures",
"thumbnail_generation_job_description": "Genera miniatures grans, petites i borroses per a cada element, així com miniatures per a cada persona",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "API d'acceleració",
"transcoding_acceleration_api_description": "L'API que interactuarà amb el vostre dispositiu per accelerar la transcodificació. Aquesta configuració és \"millor esforç\": tornarà a la transcodificació del programari en cas d'error. VP9 pot funcionar o no depenent del vostre maquinari.",
"transcoding_acceleration_nvenc": "NVENC (requereix GPU d'NVIDIA)",
@@ -266,7 +280,7 @@
"transcoding_hardware_acceleration": "Acceleració de maquinari",
"transcoding_hardware_acceleration_description": "Experimental. Molt més ràpid, però tindrà una qualitat més baixa amb la mateixa taxa de bits",
"transcoding_hardware_decoding": "Descodificació de maquinari",
- "transcoding_hardware_decoding_setting_description": "S'aplica només a NVENC, QSV i RKMPP. Permet l'acceleració d'extrem a extrem en lloc d'accelerar només la codificació. És possible que no funcioni en tots els vídeos.",
+ "transcoding_hardware_decoding_setting_description": "Habilita l'acceleració d'extrem a extrem en lloc d'accelerar només la codificació. És possible que no funcioni en tots els vídeos.",
"transcoding_hevc_codec": "Còdec HEVC",
"transcoding_max_b_frames": "Nombre màxim de B-frames",
"transcoding_max_b_frames_description": "Els valors més alts milloren l'eficiència de la compressió, però alenteixen la codificació. És possible que no sigui compatible amb l'acceleració de maquinari en dispositius antics. 0 desactiva els B-frames, mentre que -1 estableix aquest valor automàticament.",
@@ -278,7 +292,7 @@
"transcoding_preferred_hardware_device": "Dispositiu de maquinari preferit",
"transcoding_preferred_hardware_device_description": "S'aplica només a VAAPI i QSV. Estableix el node dri utilitzat per a la transcodificació de maquinari.",
"transcoding_preset_preset": "Preestablert (-preset)",
- "transcoding_preset_preset_description": "Velocitat de compressió. Els valors predefinits més lents produeixen fitxers més petits i augmenten la qualitat quan s'orienta a una taxa de bits determinada. VP9 ignora les velocitats superiors a \"més ràpides\".",
+ "transcoding_preset_preset_description": "Velocitat de compressió. Els valors predefinits més lents produeixen fitxers més petits i augmenten la qualitat quan s'orienta a una taxa de bits determinada. VP9 ignora les velocitats superiors a 'més ràpides'.",
"transcoding_reference_frames": "Fotogrames de referència",
"transcoding_reference_frames_description": "El nombre de fotogrames a fer referència en comprimir un fotograma determinat. Els valors més alts milloren l'eficiència de la compressió, però alenteixen la codificació. 0 estableix aquest valor automàticament.",
"transcoding_required_description": "Només vídeos que no tenen un format acceptat",
@@ -292,8 +306,6 @@
"transcoding_threads_description": "Els valors més alts condueixen a una codificació més ràpida, però deixen menys espai perquè el servidor processi altres tasques mentre està actiu. Aquest valor no hauria de ser superior al nombre de nuclis de CPU. Maximitza la utilització si s'estableix a 0.",
"transcoding_tone_mapping": "Mapeig de to",
"transcoding_tone_mapping_description": "Intenta preservar l'aspecte dels vídeos HDR quan es converteixen a SDR. Cada algorisme fa diferents compensacions pel color, el detall i la brillantor. Hable conserva els detalls, Mobius conserva el color i Reinhard conserva la brillantor.",
- "transcoding_tone_mapping_npl": "NPL de mapatge de to",
- "transcoding_tone_mapping_npl_description": "Els colors s'ajustaran perquè semblin normals per a exposicions amb aquesta brillantor. Contra intuïtivament, els valors més baixos augmenten la brillantor del vídeo i viceversa, ja que compensa la brillantor de la pantalla. 0 estableix aquest valor automàticament.",
"transcoding_transcode_policy": "Política de transcodificació",
"transcoding_transcode_policy_description": "Política sobre quan s'ha de transcodificar un vídeo. Els vídeos HDR sempre es transcodificaran (excepte si la transcodificació està desactivada).",
"transcoding_two_pass_encoding": "Codificació de dues passades",
@@ -307,6 +319,7 @@
"trash_settings_description": "Gestiona la configuració de la paperera",
"untracked_files": "Fitxers sense seguiment",
"untracked_files_description": "L'aplicació no fa un seguiment d'aquests fitxers. Poden ser el resultat de moviments fallits, càrregues interrompudes o deixades enrere a causa d'un error",
+ "user_cleanup_job": "Neteja d'usuari",
"user_delete_delay": "El compte i els recursos de {user} es programaran per a la supressió permanent en {delay, plural, one {# dia} other {# dies}}.",
"user_delete_delay_settings": "Retard de la supressió",
"user_delete_delay_settings_description": "Nombre de dies després de la supressió per eliminar permanentment el compte i els elements d'un usuari. El treball de supressió d'usuaris s'executa a mitjanit per comprovar si hi ha usuaris preparats per eliminar. Els canvis en aquesta configuració s'avaluaran en la propera execució.",
@@ -320,7 +333,8 @@
"user_settings": "Configuració d'usuaris",
"user_settings_description": "Gestiona la configuració dels usuaris",
"user_successfully_removed": "L'usuari {email} s'ha eliminat correctament.",
- "version_check_enabled_description": "Activa sol·licituds periòdiques a GitHub per comprovar si hi ha versions noves",
+ "version_check_enabled_description": "Activa la comprovació de la versió",
+ "version_check_implications": "La funció de comprovació de versions depèn de comunicacions periòdiques amb github.com",
"version_check_settings": "Comprovació de versió",
"version_check_settings_description": "Activa/desactiva la notificació de nova versió",
"video_conversion_job": "Transcodificació de vídeos",
@@ -336,7 +350,8 @@
"album_added": "Àlbum afegit",
"album_added_notification_setting_description": "Rep una notificació per correu quan siguis afegit a un àlbum compartit",
"album_cover_updated": "Portada de l'àlbum actualitzada",
- "album_delete_confirmation": "N'esteu segur que voleu suprimir l'àlbum {album}?\nSi aquest àlbum és compartit, altres usuaris no hi podran accedir més.",
+ "album_delete_confirmation": "Esteu segur que voleu suprimir l'àlbum {album}?",
+ "album_delete_confirmation_description": "Si aquest àlbum es comparteix, els altres usuaris ja no podran accedir-hi.",
"album_info_updated": "Informació de l'àlbum actualitzada",
"album_leave": "Sortir de l'àlbum?",
"album_leave_confirmation": "N'esteu segur que voleu sortir de {album}?",
@@ -360,6 +375,7 @@
"allow_edits": "Permet editar",
"allow_public_user_to_download": "Permet que l'usuari públic pugui descarregar",
"allow_public_user_to_upload": "Permet que l'usuari públic pugui carregar",
+ "anti_clockwise": "En sentit antihorari",
"api_key": "Clau API",
"api_key_description": "Aquest valor només es mostrarà una vegada. Assegureu-vos de copiar-lo abans de tancar la finestra.",
"api_key_empty": "El nom de la clau de l'API no pot estar buit",
@@ -370,7 +386,6 @@
"archive_or_unarchive_photo": "Arxivar o desarxivar fotografia",
"archive_size": "Mida de l'arxiu",
"archive_size_description": "Configureu la mida de l'arxiu de les descàrregues (en GiB)",
- "archived": "Arxivat",
"archived_count": "{count, plural, one {Arxivat #} other {Arxivats #}}",
"are_these_the_same_person": "Són la mateixa persona?",
"are_you_sure_to_do_this": "Esteu segurs que voleu fer-ho?",
@@ -381,8 +396,9 @@
"asset_has_unassigned_faces": "L'element té cares no assignades",
"asset_hashing": "Hashing...",
"asset_offline": "Element fora de línia",
- "asset_offline_description": "Aquest element està fora de línia. L'Immich no pot accedir a la seva ubicació. Si us plau, assegureu-vos que l'actiu està disponible i després torneu la llibreria.",
+ "asset_offline_description": "Aquest recurs extern ja no es troba al disc. Poseu-vos en contacte amb el vostre administrador d'Immich per obtenir ajuda.",
"asset_skipped": "Saltat",
+ "asset_skipped_in_trash": "A la paperera",
"asset_uploaded": "Carregat",
"asset_uploading": "S'està carregant...",
"assets": "Elements",
@@ -393,7 +409,7 @@
"assets_moved_to_trash_count": "{count, plural, one {# recurs mogut} other {# recursos moguts}} a la paperera",
"assets_permanently_deleted_count": "{count, plural, one {# recurs esborrat} other {# recursos esborrats}} permanentment",
"assets_removed_count": "{count, plural, one {# element eliminat} other {# elements eliminats}}",
- "assets_restore_confirmation": "Esteu segurs que voleu restaurar tots els teus actius? Aquesta acció no es pot desfer!",
+ "assets_restore_confirmation": "Esteu segurs que voleu restaurar tots els teus actius? Aquesta acció no es pot desfer! Tingueu en compte que els recursos fora de línia no es poden restaurar d'aquesta manera.",
"assets_restored_count": "{count, plural, one {# element restaurat} other {# elements restaurats}}",
"assets_trashed_count": "{count, plural, one {# element enviat} other {# elements enviats}} a la paperera",
"assets_were_part_of_album_count": "{count, plural, one {L'element ja és} other {Els elements ja són}} part de l'àlbum",
@@ -404,6 +420,7 @@
"birthdate_saved": "Data de naixement guardada amb èxit",
"birthdate_set_description": "La data de naixement s'utilitza per calcular l'edat d'aquesta persona en el moment d'una foto.",
"blurred_background": "Fons difuminat",
+ "bugs_and_feature_requests": "Errors i sol·licituds de funcions",
"build": "Construeix",
"build_image": "Construeix la imatge",
"bulk_delete_duplicates_confirmation": "Esteu segur que voleu suprimir de manera massiva {count, plural, one {# recurs duplicat} other {# recursos duplicats}}? Això mantindrà el recurs més gran de cada grup i esborrarà permanentment tots els altres duplicats. No podeu desfer aquesta acció!",
@@ -418,10 +435,6 @@
"cannot_merge_people": "No es pot fusionar gent",
"cannot_undo_this_action": "Aquesta acció no es pot desfer!",
"cannot_update_the_description": "No es pot actualitzar la descripció",
- "cant_apply_changes": "No es poden aplicar els canvis",
- "cant_get_faces": "No es poden obtenir les cares",
- "cant_search_people": "No es pot buscar gent",
- "cant_search_places": "No es poden cercar llocs",
"change_date": "Canvia la data",
"change_expiration_time": "Canvia la data d'expiració",
"change_location": "Canvia la ubicació",
@@ -440,9 +453,11 @@
"clear_all_recent_searches": "Esborra totes les cerques recents",
"clear_message": "Neteja el missatge",
"clear_value": "Neteja el valor",
+ "clockwise": "En sentit horari",
"close": "Tanca",
"collapse": "Tanca",
"collapse_all": "Redueix-ho tot",
+ "color": "Color",
"color_theme": "Tema de color",
"comment_deleted": "Comentari esborrat",
"comment_options": "Opcions de comentari",
@@ -451,6 +466,7 @@
"confirm": "Confirmar",
"confirm_admin_password": "Confirmeu la contrasenya d'administrador",
"confirm_delete_shared_link": "Esteu segurs que voleu eliminar aquest enllaç compartit?",
+ "confirm_keep_this_delete_others": "Excepte aquest element, tots els altres de la pila se suprimiran. Esteu segur que voleu continuar?",
"confirm_password": "Confirmació de contrasenya",
"contain": "Contingut",
"context": "Context",
@@ -476,6 +492,8 @@
"create_new_person": "Crea una nova persona",
"create_new_person_hint": "Assigna els elements seleccionats a una persona nova",
"create_new_user": "Crea un usuari nou",
+ "create_tag": "Crear etiqueta",
+ "create_tag_description": "Crear una nova etiqueta. Per les etiquetes aniuades, escriu la ruta comperta de l'etiqueta, incloses les barres diagonals.",
"create_user": "Crea un usuari",
"created": "Creat",
"current_device": "Dispositiu actual",
@@ -496,16 +514,21 @@
"delete_api_key_prompt": "Esteu segurs que voleu eliminar aquesta clau API?",
"delete_duplicates_confirmation": "Esteu segurs que voleu eliminar aquests duplicats permanentment?",
"delete_key": "Suprimeix la clau",
- "delete_library": "Suprimeix la llibreria",
+ "delete_library": "Suprimeix la Llibreria",
"delete_link": "Esborra l'enllaç",
+ "delete_others": "Suprimeix altres",
"delete_shared_link": "Odstranit sdílený odkaz",
+ "delete_tag": "Eliminar etiqueta",
+ "delete_tag_confirmation_prompt": "Estàs segur que vols eliminar l'etiqueta {tagName}?",
"delete_user": "Suprimeix l'usuari",
"deleted_shared_link": "Suprimeix l'enllaç compartit",
+ "deletes_missing_assets": "Elimina els actius que falten del disc",
"description": "Descripció",
"details": "Detalls",
"direction": "Direcció",
"disabled": "Desactivat",
"disallow_edits": "No permetre les edicions",
+ "discord": "Discord",
"discover": "Descobreix",
"dismiss_all_errors": "Descarta tots els errors",
"dismiss_error": "Descarta l'error",
@@ -514,8 +537,11 @@
"display_original_photos": "Mostra les fotografies originals",
"display_original_photos_setting_description": "Preferiu mostrar la foto original quan visualitzeu un recurs en lloc de miniatures quan el recurs original és compatible amb el web. Això pot provocar una velocitat de visualització de fotos més lenta.",
"do_not_show_again": "No tornis a mostrar aquest missatge",
+ "documentation": "Documentació",
"done": "Fet",
"download": "Descarregar",
+ "download_include_embedded_motion_videos": "Vídeos incrustats",
+ "download_include_embedded_motion_videos_description": "Incloure vídeos incrustats en fotografies en moviment com un arxiu separat",
"download_settings": "Descarregar",
"download_settings_description": "Gestioneu la configuració relacionada amb la descàrrega de recursos",
"downloading": "Baixant",
@@ -524,13 +550,6 @@
"duplicates": "Duplicats",
"duplicates_description": "Resol cada grup indicant quins, si n'hi ha, són duplicats",
"duration": "Duració",
- "durations": {
- "days": "",
- "hours": "",
- "minutes": "",
- "months": "",
- "years": ""
- },
"edit": "Editar",
"edit_album": "Edita l'àlbum",
"edit_avatar": "Edita l'avatar",
@@ -538,20 +557,23 @@
"edit_date_and_time": "Edita data i hora",
"edit_exclusion_pattern": "Edita patró d'exclusió",
"edit_faces": "Edita les cares",
- "edit_import_path": "Edita el camí d'importació",
- "edit_import_paths": "Edita camins d'importació",
+ "edit_import_path": "Edita la ruta d'importació",
+ "edit_import_paths": "Edita les rutes d'importació",
"edit_key": "Edita clau",
"edit_link": "Edita enllaç",
"edit_location": "Edita ubicació",
"edit_name": "Edita el nom",
"edit_people": "Edita la gent",
+ "edit_tag": "Editar etiqueta",
"edit_title": "Edita títol",
"edit_user": "Edita l'usuari",
"edited": "Editat",
"editor": "Editor",
+ "editor_close_without_save_prompt": "No es desaran els canvis",
+ "editor_close_without_save_title": "Tancar l'editor?",
+ "editor_crop_tool_h2_aspect_ratios": "Relació d'aspecte",
+ "editor_crop_tool_h2_rotation": "Rotació",
"email": "Correu electrònic",
- "empty": "",
- "empty_album": "",
"empty_trash": "Buidar la paperera",
"empty_trash_confirmation": "Esteu segur que voleu buidar la paperera? Això eliminarà tots els recursos a la paperera permanentment d'Immich.\nNo podeu desfer aquesta acció!",
"enable": "Activar",
@@ -585,13 +607,14 @@
"failed_to_create_shared_link": "No s'ha pogut crear l'enllaç compartit",
"failed_to_edit_shared_link": "No s'ha pogut editar l'enllaç compartit",
"failed_to_get_people": "No s'han pogut aconseguir persones",
+ "failed_to_keep_this_delete_others": "No s'ha pogut conservar aquest element i suprimir els altres",
"failed_to_load_asset": "No s'ha pogut carregar l'element",
"failed_to_load_assets": "No s'han pogut carregar els elements",
"failed_to_load_people": "No s'han pogut carregar les persones",
"failed_to_remove_product_key": "No s'ha pogut eliminar la clau del producte",
"failed_to_stack_assets": "No s'han pogut apilar els elements",
"failed_to_unstack_assets": "No s'han pogut desapilar els elements",
- "import_path_already_exists": "Aquest camí d'importació ja existeix.",
+ "import_path_already_exists": "Aquesta ruta d'importació ja existeix.",
"incorrect_email_or_password": "Correu electrònic o contrasenya incorrectes",
"paths_validation_failed": "{paths, plural, one {# ruta} other {# rutes}} no ha pogut validar",
"profile_picture_transparent_pixels": "Les fotos de perfil no poden tenir píxels transparents. Per favor, feu zoom in, mogueu la imatge o ambdues.",
@@ -601,7 +624,7 @@
"unable_to_add_assets_to_shared_link": "No s'han pogut afegir els elements a l'enllaç compartit",
"unable_to_add_comment": "No es pot afegir el comentari",
"unable_to_add_exclusion_pattern": "No s'ha pogut afegir el patró d’exclusió",
- "unable_to_add_import_path": "No s'ha pogut afegir el camí d'importació",
+ "unable_to_add_import_path": "No s'ha pogut afegir la ruta d'importació",
"unable_to_add_partners": "No es poden afegir companys",
"unable_to_add_remove_archive": "No s'ha pogut {archived, select, true {eliminar l'element de} other {afegir l'element a}} l'arxiu",
"unable_to_add_remove_favorites": "No s'ha pogut {favorite, select, true {afegir l'element als} other {eliminar l'element dels}} preferits",
@@ -612,8 +635,6 @@
"unable_to_change_location": "No es pot canviar la ubicació",
"unable_to_change_password": "No es pot canviar la contrasenya",
"unable_to_change_visibility": "No es pot canviar la visibilitat de {count, plural, one {# persona} other {# persones}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "No es pot completar l'inici de sessió OAuth",
"unable_to_connect": "No pot connectar",
"unable_to_connect_to_server": "No es pot connectar al servidor",
@@ -638,6 +659,7 @@
"unable_to_get_comments_number": "No es pot obtenir el nombre de comentaris",
"unable_to_get_shared_link": "No s'ha pogut obtenir l'enllaç compartit",
"unable_to_hide_person": "No es pot amagar la persona",
+ "unable_to_link_motion_video": "No es pot enllaçar el vídeo en moviment",
"unable_to_link_oauth_account": "No es pot enllaçar el compte OAuth",
"unable_to_load_album": "No es pot carregar l'àlbum",
"unable_to_load_asset_activity": "No es pot carregar l'activitat dels recursos",
@@ -653,12 +675,10 @@
"unable_to_remove_album_users": "No es poden eliminar usuaris de l'àlbum",
"unable_to_remove_api_key": "No es pot eliminar la clau de l'API",
"unable_to_remove_assets_from_shared_link": "No es poden eliminar recursos de l'enllaç compartit",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "No es poden eliminar els fitxers fora de línia",
"unable_to_remove_library": "No es pot eliminar la biblioteca",
- "unable_to_remove_offline_files": "No es poden eliminar els fitxers fora de línia",
"unable_to_remove_partner": "No es pot eliminar company/a",
"unable_to_remove_reaction": "No es pot eliminar la reacció",
- "unable_to_remove_user": "",
"unable_to_repair_items": "No es poden reparar els elements",
"unable_to_reset_password": "No es pot restablir la contrasenya",
"unable_to_resolve_duplicate": "No es pot resoldre el duplicat",
@@ -678,6 +698,7 @@
"unable_to_submit_job": "No es pot enviar la tasca",
"unable_to_trash_asset": "No es pot eliminar el recurs a la paperera",
"unable_to_unlink_account": "No es pot desenllaçar el compte",
+ "unable_to_unlink_motion_video": "No es pot desvincular el vídeo en moviment",
"unable_to_update_album_cover": "No es pot actualitzar la portada de l'àlbum",
"unable_to_update_album_info": "No es pot actualitzar la informació de l'àlbum",
"unable_to_update_library": "No es pot actualitzar la biblioteca",
@@ -687,10 +708,6 @@
"unable_to_update_user": "No es pot actualitzar l'usuari",
"unable_to_upload_file": "No es pot carregar el fitxer"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Exif",
"exit_slideshow": "Surt de la presentació de diapositives",
"expand_all": "Ampliar-ho tot",
@@ -698,35 +715,34 @@
"expired": "Caducat",
"expires_date": "Caduca el {date}",
"explore": "Explorar",
+ "explorer": "Explorador",
"export": "Exporta",
"export_as_json": "Exportar com a JSON",
"extension": "Extensió",
"external": "Extern",
"external_libraries": "Llibreries externes",
"face_unassigned": "Sense assignar",
- "failed_to_get_people": "",
"favorite": "Preferit",
"favorite_or_unfavorite_photo": "Foto preferida o no preferida",
"favorites": "Preferits",
- "feature": "",
"feature_photo_updated": "Foto destacada actualitzada",
- "featurecollection": "",
+ "features": "Característiques",
+ "features_setting_description": "Administrar les funcions de l'aplicació",
"file_name": "Nom de l'arxiu",
"file_name_or_extension": "Nom de l'arxiu o extensió",
"filename": "Nom del fitxer",
- "files": "",
"filetype": "Tipus d'arxiu",
"filter_people": "Filtra persones",
"find_them_fast": "Trobeu-los ràpidament pel nom amb la cerca",
"fix_incorrect_match": "Corregiu la coincidència incorrecta",
- "force_re-scan_library_files": "Força a tornar a escanejar tots els fitxers de la biblioteca",
+ "folders": "Carpetes",
+ "folders_feature_description": "Explorar la vista de carpetes per les fotos i vídeos del sistema d'arxius",
"forward": "Endavant",
"general": "General",
"get_help": "Aconseguir ajuda",
"getting_started": "Començant",
"go_back": "Torna",
"go_to_search": "Vés a cercar",
- "go_to_share_page": "Vés a la pàgina de compartir",
"group_albums_by": "Agrupa àlbums per...",
"group_no": "Cap agrupació",
"group_owner": "Agrupar per propietari",
@@ -752,7 +768,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Image}} pres/a a {city}, {country} amb {person1} i {person2} el {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Image}} pres/a a {city}, {country} amb {person1}, {person2}, i {person3} el {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Image}} pres/a a {city}, {country} amb {person1}, {person2}, i {additionalCount, number} altres el {date}",
- "img": "",
"immich_logo": "Logotip d'Immich",
"immich_web_interface": "Interfície web Immich",
"import_from_json": "Importar des de JSON",
@@ -773,10 +788,11 @@
"invite_people": "Convida gent",
"invite_to_album": "Convida a l'àlbum",
"items_count": "{count, plural, one {# element} other {# elements}}",
- "job_settings_description": "",
"jobs": "Tasques",
"keep": "Mantenir",
"keep_all": "Mantenir-ho tot",
+ "keep_this_delete_others": "Conserveu-ho, suprimiu-ne els altres",
+ "kept_this_deleted_others": "S'ha conservat aquest element i s'han suprimit {count, plural, one {# asset} other {# assets}}",
"keyboard_shortcuts": "Dreceres de teclat",
"language": "Idioma",
"language_setting_description": "Seleccioneu el vostre idioma",
@@ -788,21 +804,9 @@
"level": "Nivell",
"library": "Bibilioteca",
"library_options": "Opcions de biblioteca",
- "license_activated_title": "La vostra llicència ha estat activada amb èxit",
- "license_button_activate": "Activar",
- "license_button_buy": "Comprar",
- "license_button_select": "Seleccionar",
- "license_individual_title": "Llicència individual",
- "license_info_unlicensed": "Sense llicència",
- "license_license_title": "LLICÈNCIA",
- "license_per_server": "Per servidor",
- "license_per_user": "Per usuari",
- "license_server_description_1": "1 llicència per servidor",
- "license_server_title": "Llicència de servidor",
- "license_trial_info_2": "Heu utilitzat l'Immich durant uns",
- "license_trial_info_3": "{accountAge, plural, one {# dia} other {# dies}}",
"light": "Llum",
"like_deleted": "M'agrada suprimit",
+ "link_motion_video": "Enllaçar vídeo en moviment",
"link_options": "Opcions d'enllaç",
"link_to_oauth": "Enllaç a OAuth",
"linked_oauth_account": "Compte OAuth enllaçat",
@@ -821,8 +825,9 @@
"look": "Aspecte",
"loop_videos": "Vídeos en bucle",
"loop_videos_description": "Habilita la reproducció en bucle del vídeo en els detalls.",
+ "main_branch_warning": "Esteu usant una versió de desenvolupaent. Recomanem fer servir una versió publicada!",
"make": "Fabricant",
- "manage_shared_links": "Spravovat sdílené odkazy",
+ "manage_shared_links": "Administrar enllaços compartits",
"manage_sharing_with_partners": "Gestiona la compartició amb els companys",
"manage_the_app_settings": "Gestioneu la configuració de l'aplicació",
"manage_your_account": "Gestiona el teu compte",
@@ -890,18 +895,20 @@
"notifications": "Notificacions",
"notifications_setting_description": "Gestiona les notificacions",
"oauth": "OAuth",
+ "official_immich_resources": "Recursos oficials d'Immich",
"offline": "Fora de línia",
"offline_paths": "Rutes fora de línia",
"offline_paths_description": "Aquests resultats poden ser deguts a la supressió manual de fitxers que no formen part d'una biblioteca externa.",
"ok": "D'acord",
"oldest_first": "El més vell primer",
- "onboarding": "Onboarding",
+ "onboarding": "Incorporació",
+ "onboarding_privacy_description": "Les següents funcions (opcionals) depenen de serveis externs i poden desactivarse en qualsevol moment de dels ajustos.",
"onboarding_theme_description": "Trieu un tema de color per a la vostra instància. Podeu canviar-ho més endavant a la vostra configuració.",
"onboarding_welcome_description": "Configurem la vostra instància amb alguns paràmetres habituals.",
"onboarding_welcome_user": "Benvingut, {user}",
"online": "En línia",
"only_favorites": "Només preferits",
- "only_refreshes_modified_files": "Només actualitza els fitxers modificats",
+ "open_in_map_view": "Obrir a la vista del mapa",
"open_in_openstreetmap": "Obre a OpenStreetMap",
"open_the_search_filters": "Obriu els filtres de cerca",
"options": "Opcions",
@@ -936,8 +943,8 @@
"pending": "Pendent",
"people": "Persones",
"people_edits_count": "{count, plural, one {# persona editada} other {# persones editades}}",
+ "people_feature_description": "Explorar fotos i vídeos agrupades per persona",
"people_sidebar_description": "Mostrar un enllaç a Persones a la barra lateral",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Avís d'eliminació permanent",
"permanent_deletion_warning_setting_description": "Mostrar un avís quan s'eliminin els elements permanentment",
"permanently_delete": "Eliminar permanentment",
@@ -959,7 +966,6 @@
"play_memories": "Reproduir records",
"play_motion_photo": "Reproduir Fotos en Moviment",
"play_or_pause_video": "Reproduir o posar en pausa el vídeo",
- "point": "",
"port": "Port",
"preset": "Preestablert",
"preview": "Previsualització",
@@ -967,6 +973,7 @@
"previous_memory": "Memòria anterior",
"previous_or_next_photo": "Foto anterior o següent",
"primary": "Primària",
+ "privacy": "Privacitat",
"profile_image_of_user": "Imatge de perfil de {user}",
"profile_picture_set": "Imatge de perfil configurada.",
"public_album": "Àlbum públic",
@@ -1003,8 +1010,10 @@
"purchase_server_description_2": "Estat del contribuent",
"purchase_server_title": "Servidor",
"purchase_settings_server_activated": "La clau de producte del servidor la gestiona l'administrador",
- "range": "",
- "raw": "",
+ "rating": "Valoració",
+ "rating_clear": "Esborrar valoració",
+ "rating_count": "{count, plural, one {# estrella} other {# estrelles}}",
+ "rating_description": "Mostrar la valoració EXIF al panell d'informació",
"reaction_options": "Opcions de reacció",
"read_changelog": "Llegeix el registre de canvis",
"reassign": "Reassignar",
@@ -1015,11 +1024,13 @@
"recent_searches": "Cerques recents",
"refresh": "Actualitzar",
"refresh_encoded_videos": "Actualitza vídeos codificats",
+ "refresh_faces": "Actualitzar cares",
"refresh_metadata": "Actualitzar les metadades",
"refresh_thumbnails": "Actualitzar la miniatura",
"refreshed": "Actualitzat",
- "refreshes_every_file": "Actualitza tots els fitxers",
+ "refreshes_every_file": "Torna a llegir tots els fitxers existents i nous",
"refreshing_encoded_video": "S'està actualitzant el vídeo codificat",
+ "refreshing_faces": "Refrescant cares",
"refreshing_metadata": "Actualitzant les metadades",
"regenerating_thumbnails": "Regenerant les miniatures",
"remove": "Eliminar",
@@ -1027,15 +1038,16 @@
"remove_assets_shared_link_confirmation": "Esteu segur que voleu eliminar {count, plural, one {# recurs} other {# recursos}} d'aquest enllaç compartit?",
"remove_assets_title": "Eliminar els elements?",
"remove_custom_date_range": "Elimina l'interval de dates personalitzat",
+ "remove_deleted_assets": "Suprimeix fitxers fora de línia",
"remove_from_album": "Treu de l'àlbum",
"remove_from_favorites": "Eliminar dels preferits",
"remove_from_shared_link": "Eliminar de l'enllaç compartit",
- "remove_offline_files": "Suprimeix fitxers fora de línia",
"remove_user": "Eliminar l'usuari",
"removed_api_key": "Eliminada la clau d'API: {name}",
"removed_from_archive": "Eliminat de l'arxiu",
"removed_from_favorites": "Eliminat dels preferits",
"removed_from_favorites_count": "{count, plural, other {# eliminats}} dels preferits",
+ "removed_tagged_assets": "Etiqueta eliminada de {count, plural, one {# actiu} other {# actius}}",
"rename": "Canviar nom",
"repair": "Reparació",
"repair_no_results_message": "Els fitxers sense seguiment i que falten es mostraran aquí",
@@ -1046,7 +1058,6 @@
"reset": "Restablir",
"reset_password": "Restablir contrasenya",
"reset_people_visibility": "Restablir la visibilitat de les persones",
- "reset_settings_to_default": "",
"reset_to_default": "Restableix els valors predeterminats",
"resolve_duplicates": "Resoldre duplicats",
"resolved_all_duplicates": "Tots els duplicats resolts",
@@ -1066,15 +1077,14 @@
"saved_settings": "Configuració guardada",
"say_something": "Digues quelcom",
"scan_all_libraries": "Escanejar totes les llibreries",
- "scan_all_library_files": "Re-escanejar tots els fitxers de la llibreria",
- "scan_new_library_files": "Escanejar nous fitxers de la llibreria",
+ "scan_library": "Escaneja",
"scan_settings": "Configuració d'escaneig",
"scanning_for_album": "S'està buscant l'àlbum...",
"search": "Cerca",
"search_albums": "Buscar àlbums",
"search_by_context": "Buscar per context",
"search_by_filename": "Cerca per nom de fitxer o extensió",
- "search_by_filename_example": "i.e. IMG_1234.JPG or PNG",
+ "search_by_filename_example": "per exemple IMG_1234.JPG o PNG",
"search_camera_make": "Buscar per fabricant de càmara...",
"search_camera_model": "Buscar per model de càmera...",
"search_city": "Buscar per ciutat...",
@@ -1082,9 +1092,12 @@
"search_for_existing_person": "Busca una persona existent",
"search_no_people": "Cap persona",
"search_no_people_named": "Cap persona anomenada \"{name}\"",
+ "search_options": "Opcions de cerca",
"search_people": "Buscar persones",
"search_places": "Buscar llocs",
+ "search_settings": "Configuració de cerca",
"search_state": "Buscar per regió...",
+ "search_tags": "Cercant etiquetes...",
"search_timezone": "Buscar per fus horari...",
"search_type": "Buscar per tipus",
"search_your_photos": "Cerca les teves fotos",
@@ -1107,7 +1120,6 @@
"selected_count": "{count, plural, one {# seleccionat} other {# seleccionats}}",
"send_message": "Envia missatge",
"send_welcome_email": "Envia correu de benvinguda",
- "server": "Servidor",
"server_offline": "Servidor fora de línia",
"server_online": "Servidor en línia",
"server_stats": "Estadístiques del servidor",
@@ -1126,6 +1138,7 @@
"shared_by_user": "Compartit per {user}",
"shared_by_you": "Compartit per tu",
"shared_from_partner": "Fotos de {partner}",
+ "shared_link_options": "Opcions d'enllaços compartits",
"shared_links": "Enllaços compartits",
"shared_photos_and_videos_count": "{assetCount, plural, other {# fotos i vídeos compartits.}}",
"shared_with_partner": "Compartit amb {partner}",
@@ -1134,6 +1147,7 @@
"sharing_sidebar_description": "Mostra un enllaç a Compartit a la barra lateral",
"shift_to_permanent_delete": "premeu ⇧ per suprimir el recurs permanentment",
"show_album_options": "Mostra les opcions d'àlbum",
+ "show_albums": "Mostrar àlbums",
"show_all_people": "Veure totes les persones",
"show_and_hide_people": "Mostra i amaga persones",
"show_file_location": "Mostra l'ubicació del fitxer",
@@ -1148,13 +1162,18 @@
"show_person_options": "Mostra opcions de la persona",
"show_progress_bar": "Mostra barra de progrés",
"show_search_options": "Mostra opcions de cerca",
+ "show_slideshow_transition": "Mostra la transició de la presentació de diapositives",
"show_supporter_badge": "Insígnia de contribuent",
"show_supporter_badge_description": "Mostra una insígnia de contributor",
"shuffle": "Mescla",
+ "sidebar": "Barra lateral",
+ "sidebar_display_description": "Mostra un enllaç a la vista a la barra lateral",
"sign_out": "Tanca sessió",
"sign_up": "Registrar-se",
"size": "Mida",
"skip_to_content": "Salta al contingut",
+ "skip_to_folders": "Anar a carpetes",
+ "skip_to_tags": "Anar a etiquetes",
"slideshow": "Diapositives",
"slideshow_settings": "Configuració de diapositives",
"sort_albums_by": "Ordena àlbums per...",
@@ -1166,6 +1185,8 @@
"sort_title": "Títol",
"source": "Font",
"stack": "Apila",
+ "stack_duplicates": "Aplicar duplicats",
+ "stack_select_one_photo": "Selecciona una imatge principal per la pila",
"stack_selected_photos": "Apila les fotos seleccionades",
"stacked_assets_count": "Apilats {count, plural, one {# element} other {# elements}}",
"stacktrace": "Traça de pila",
@@ -1183,23 +1204,35 @@
"submit": "Envia",
"suggestions": "Suggeriments",
"sunrise_on_the_beach": "Albada a la platja",
+ "support": "Suport",
+ "support_and_feedback": "Suport i comentaris",
+ "support_third_party_description": "La vostra instal·lació immich la va empaquetar un tercer. Els problemes que experimenteu poden ser causats per aquest paquet així que, si us plau, plantegeu els poblemes amb ells en primer lloc mitjançant els enllaços següents.",
"swap_merge_direction": "Canvia la direcció d'unió",
"sync": "Sincronitza",
+ "tag": "Etiqueta",
+ "tag_assets": "Etiquetar actius",
+ "tag_created": "Etiqueta creada: {tag}",
+ "tag_feature_description": "Exploreu fotos i vídeos agrupats per temes d'etiquetes lògiques",
+ "tag_not_found_question": "No trobeu una etiqueta? Crear una nova etiqueta",
+ "tag_updated": "Etiqueta actualizada: {tag}",
+ "tagged_assets": "{count, plural, one {#Etiquetat} other {#Etiquetats}} {count, plural, one {# actiu} other {# actius}}",
+ "tags": "Etiquetes",
"template": "Plantilla",
"theme": "Tema",
"theme_selection": "Selecció de tema",
"theme_selection_description": "Activa automàticament el tema fosc o clar en funció de les preferències del sistema del navegador",
"they_will_be_merged_together": "Es combinaran",
+ "third_party_resources": "Recursos de tercers",
"time_based_memories": "Records basats en el temps",
"timezone": "Fus horari",
"to_archive": "Arxivar",
"to_change_password": "Canviar la contrasenya",
"to_favorite": "Prefereix",
"to_login": "Iniciar sessió",
+ "to_parent": "Anar als pares",
"to_trash": "Paperera",
"toggle_settings": "Canvia configuració",
- "toggle_theme": "Canvia tema",
- "toggle_visibility": "Canvia visibilitat",
+ "toggle_theme": "Alternar tema",
"total_usage": "Ús total",
"trash": "Paperera",
"trash_all": "Envia-ho tot a la paperera",
@@ -1209,17 +1242,17 @@
"trashed_items_will_be_permanently_deleted_after": "Els elements que s'enviïn a la paperera s'eliminaran permanentment després de {days, plural, one {# dia} other {# dies}}.",
"type": "Tipus",
"unarchive": "Desarxivar",
- "unarchived": "Desarxivat",
"unarchived_count": "{count, plural, other {# elements desarxivats}}",
"unfavorite": "Reverteix preferit",
"unhide_person": "Mostra persona",
"unknown": "Desconegut",
- "unknown_album": "Àlbum desconegut",
"unknown_year": "Any desconegut",
"unlimited": "Il·limitat",
+ "unlink_motion_video": "Desvincular vídeo en moviment",
"unlink_oauth": "Desvincula OAuth",
"unlinked_oauth_account": "Compte Oauth desvinculat",
"unnamed_album": "Àlbum sense nom",
+ "unnamed_album_delete_confirmation": "Segur que voleu esborrar aquest àlbum?",
"unnamed_share": "Compartit sense nom",
"unsaved_change": "Canvi no desat",
"unselect_all": "Deselecciona-ho tot",
@@ -1244,12 +1277,13 @@
"use_custom_date_range": "Fes servir un rang de dates personalitzat",
"user": "Usuari",
"user_id": "ID d'usuari",
- "user_license_settings": "Llicència",
"user_liked": "A {user} li ha agradat {type, select, photo {aquesta foto} video {aquest vídeo} asset {aquest recurs} other {}}",
"user_purchase_settings": "Compra",
"user_purchase_settings_description": "Gestiona la teva compra",
"user_role_set": "Establir {user} com a {role}",
"user_usage_detail": "Detall d'ús d'usuari",
+ "user_usage_stats": "Estadístiques d'ús de del compte",
+ "user_usage_stats_description": "Veure les estadístiques d'ús del compte",
"username": "Nom d'usuari",
"users": "Usuaris",
"utilities": "Utilitats",
@@ -1257,7 +1291,9 @@
"variables": "Variables",
"version": "Versió",
"version_announcement_closing": "El teu amic Alex",
- "version_announcement_message": "Hola amic, hi ha una nova versió de l'aplicació, si us plau, preneu-vos el temps per visitar les release notes i assegureu-vos que el vostre docker-compose.yml i .env estàn actualitzats per evitar qualsevol configuració incorrecta, especialment si utilitzeu WatchTower o qualsevol mecanisme que gestioni l'actualització automàtica de la vostra aplicació.",
+ "version_announcement_message": "Hola! Hi ha una nova versió d'Immich, si us plau, preneu-vos una estona per llegir les notes de llançament per assegurar que la teva configuració estigui actualitzada per evitar qualsevol error de configuració, especialment si utilitzeu WatchTower o qualsevol mecanisme que gestioni l'actualització automàtica de la vostra instància Immich.",
+ "version_history": "Historial de versions",
+ "version_history_item": "Instal·lat {version} el {date}",
"video": "Vídeo",
"video_hover_setting": "Reprodueix la miniatura en passar el ratolí",
"video_hover_setting_description": "Reprodueix la miniatura quan el ratolí plana sobre l'element. Fins i tot quan estigui deshabilitat, la reproducció s'iniciarà planant sobre el botó de reproducció.",
@@ -1267,11 +1303,11 @@
"view_album": "Veure l'àlbum",
"view_all": "Veure tot",
"view_all_users": "Mostra tot els usuaris",
+ "view_in_timeline": "Mostrar a la línia de temps",
"view_links": "Mostra enllaços",
"view_next_asset": "Mostra el següent element",
"view_previous_asset": "Mostra l'element anterior",
"view_stack": "Veure la pila",
- "viewer": "Visualitzador",
"visibility_changed": "La visibilitat ha canviat per {count, plural, one {# persona} other {# persones}}",
"waiting": "Esperant",
"warning": "Avís",
diff --git a/web/src/lib/i18n/cs.json b/i18n/cs.json
similarity index 89%
rename from web/src/lib/i18n/cs.json
rename to i18n/cs.json
index ec97fe01b2..a762f26b9a 100644
--- a/web/src/lib/i18n/cs.json
+++ b/i18n/cs.json
@@ -23,16 +23,23 @@
"add_to": "Přidat do...",
"add_to_album": "Přidat do alba",
"add_to_shared_album": "Přidat do sdíleného alba",
+ "add_url": "Přidat URL",
"added_to_archive": "Přidáno do archivu",
"added_to_favorites": "Přidáno do oblíbených",
"added_to_favorites_count": "Přidáno {count, number} do oblíbených",
"admin": {
"add_exclusion_pattern_description": "Přidání vzorů vyloučení. Podporováno je globování pomocí *, ** a ?. Chcete-li ignorovat všechny soubory v jakémkoli adresáři s názvem \"Raw\", použijte \"**/Raw/**\". Chcete-li ignorovat všechny soubory končící na \".tif\", použijte \"**/*.tif\". Chcete-li ignorovat absolutní cestu, použijte příkaz \"/path/to/ignore/**\".",
+ "asset_offline_description": "Tato položka externí knihovny se již na disku nenachází a byla přesunuta do koše. Pokud byl soubor přesunut v rámci knihovny, zkontrolujte časovou osu a vyhledejte nové odpovídající položku. Chcete-li tuto položku obnovit, ujistěte se, že je cesta k níže uvedenému souboru přístupná pomocí aplikace Immich a prohledejte knihovnu.",
"authentication_settings": "Přihlašování",
"authentication_settings_description": "Správa hesel, OAuth a dalších nastavení ověření",
"authentication_settings_disable_all": "Opravdu chcete zakázat všechny metody přihlášení? Přihlašování bude úplně zakázáno.",
"authentication_settings_reenable": "Pro opětovné povolení použijte příkaz Příkaz serveru.",
"background_task_job": "Úkoly na pozadí",
+ "backup_database": "Zálohování databáze",
+ "backup_database_enable_description": "Povolit zálohování databáze",
+ "backup_keep_last_amount": "Počet předchozích záloh k uchování",
+ "backup_settings": "Nastavení zálohování",
+ "backup_settings_description": "Správa nastavení zálohování databáze",
"check_all": "Vše zkontrolovat",
"cleared_jobs": "Hotové úlohy pro: {job}",
"config_set_by_file": "Konfigurace je aktuálně prováděna konfiguračním souborem",
@@ -41,35 +48,40 @@
"confirm_email_below": "Pro potvrzení zadejte níže \"{email}\"",
"confirm_reprocess_all_faces": "Opravdu chcete znovu zpracovat všechny obličeje? Tím se vymažou i pojmenované osoby.",
"confirm_user_password_reset": "Opravdu chcete obnovit heslo uživatele {user}?",
- "crontab_guru": "Crontab Guru",
+ "create_job": "Vytvořit úlohu",
+ "cron_expression": "Výraz cron",
+ "cron_expression_description": "Nastavte interval prohledávání pomocí cron formátu. Další informace naleznete např. v Crontab Guru",
+ "cron_expression_presets": "Předvolby výrazů cron",
"disable_login": "Zakázat přihlášení",
- "disabled": "Zakázáno",
"duplicate_detection_job_description": "Spuštění strojového učení na položkách za účelem detekce podobných obrázků. Spoléhá na Chytré vyhledávání",
"exclusion_pattern_description": "Vzory vyloučení umožňují při prohledávání knihovny ignorovat soubory a složky. To je užitečné, pokud máte složky obsahující soubory, které nechcete importovat, například RAW soubory.",
"external_library_created_at": "Externí knihovna (vytvořena {date})",
"external_library_management": "Správa externích knihoven",
"face_detection": "Detekce obličejů",
- "face_detection_description": "Detekce obličejů v obrázcích pomocí strojového učení. U videí se bere v úvahu pouze miniatura. \"Vše\" znovu zpracovává všechny položky. \"Chybějící\" zařadí do fronty položky, které ještě nebyly zpracovány. Zjištěné obličeje budou po dokončení funkce Rozpoznávání obličejů zařazeny do fronty a seskupeny do stávajících nebo nových osob.",
- "facial_recognition_job_description": "Seskupí nalezené obličeje do osob. Tento krok se spustí po dokončení detekce obličejů. \"Vše\" znovu seskupí všechny obličeje. \"Chybějící\" zpracuje obličeje, které nemají přiřazenou osobu.",
+ "face_detection_description": "Detekce obličejů v obrázcích pomocí strojového učení. U videí se bere v úvahu pouze miniatura. „Obnovit“ znovu zpracuje všechny položky. „Resetovat“ navíc vymaže všechna aktuální data obličejů. „Chybějící“ zařadí do fronty položky, které ještě nebyly zpracovány. Zjištěné obličeje budou po dokončení funkce Rozpoznávání obličejů zařazeny do fronty a seskupeny do stávajících nebo nových osob.",
+ "facial_recognition_job_description": "Seskupí nalezené obličeje do osob. Tento krok se spustí po dokončení detekce obličejů. „Resetovat“ znovu seskupí všechny obličeje. „Chybějící“ zpracuje obličeje, které nemají přiřazenou osobu.",
"failed_job_command": "Příkaz {command} se nezdařil pro úlohu: {job}",
"force_delete_user_warning": "UPOZORNĚNÍ: Tímto okamžitě odstraníte uživatele a všechny jeho položky. Tento krok nelze vrátit zpět a soubory nelze obnovit.",
"forcing_refresh_library_files": "Vynucení obnovy všech souborů knihovny",
+ "image_format": "Formát",
"image_format_description": "WebP vytváří menší soubory než JPEG, ale je pomalejší při kódování.",
"image_prefer_embedded_preview": "Preferovat vložený náhled",
"image_prefer_embedded_preview_setting_description": "Použít vložené náhledy z RAW fotografií jako vstup pro zpracování snímků, pokud jsou k dispozici. U některých snímků tak lze dosáhnout přesnějších barev, ale kvalita náhledu závisí na fotoaparátu a snímek může obsahovat více kompresních artefaktů.",
"image_prefer_wide_gamut": "Preferovat široký gamut",
"image_prefer_wide_gamut_setting_description": "Použít Display P3 pro miniatury. To lépe zachovává živost obrázků s širokým barevným prostorem, ale obrázky se mohou na starých zařízeních se starou verzí prohlížeče zobrazovat jinak. sRGB obrázky jsou ponechány jako sRGB, aby se zabránilo posunům barev.",
- "image_preview_format": "Formát náhledů",
- "image_preview_resolution": "Rozlišení náhledů",
- "image_preview_resolution_description": "Používá se při prohlížení jedné fotografie a pro strojové učení. Vyšší rozlišení mohou zachovat více detailů, ale jejich kódování trvá déle, mají větší velikost souboru a mohou snížit odezvu aplikace.",
+ "image_preview_description": "Středně velký obrázek se zbavenými metadaty, který se používá při prohlížení jedné položky a pro strojové učení",
+ "image_preview_quality_description": "Kvalita náhledu od 1 do 100. Vyšší je lepší, ale vytváří větší soubory a může snížit responzivitu aplikace. Nastavení nízké hodnoty může ovlivnit kvalitu strojového učení.",
+ "image_preview_title": "Náhledy",
"image_quality": "Kvalita",
- "image_quality_description": "Kvalita obrazu od 1 do 100. Vyšší kvalita je lepší, ale vytváří větší soubory, tato volba ovlivňuje náhled a miniatury obrázků.",
+ "image_resolution": "Rozlišení",
+ "image_resolution_description": "Vyšší rozlišení mohou zachovat více detailů, ale jejich kódování trvá déle, mají větší velikost souboru a mohou snížit odezvu aplikace.",
"image_settings": "Obrázky",
"image_settings_description": "Správa kvality a rozlišení generovaných obrázků",
- "image_thumbnail_format": "Formát miniatur",
- "image_thumbnail_resolution": "Rozlišení miniatur",
- "image_thumbnail_resolution_description": "Používá se při prohlížení skupin fotografií (hlavní časová osa, zobrazení alba atd.). Vyšší rozlišení může zachovat více detailů, ale trvá déle, než se zakóduje, má větší velikost souboru a může snížit odezvu aplikace.",
- "job_concurrency": "Souběžnost {job}",
+ "image_thumbnail_description": "Malá miniatura s odstraněnými metadaty, který se používá při prohlížení skupin fotografií, jako je hlavní časová osa",
+ "image_thumbnail_quality_description": "Kvalita miniatur od 1 do 100. Vyšší je lepší, ale vytváří větší soubory a může snížit odezvu aplikace.",
+ "image_thumbnail_title": "Miniatury",
+ "job_concurrency": "Souběžnost úlohy {job}",
+ "job_created": "Úloha vytvořena",
"job_not_concurrency_safe": "Tato úloha není bezpečená pro souběh.",
"job_settings": "Úlohy",
"job_settings_description": "Správa souběžnosti úloh",
@@ -77,9 +89,6 @@
"jobs_delayed": "{jobCount, plural, one {# zpožděný} few {# zpožděné} other {# zpožděných}}",
"jobs_failed": "{jobCount, plural, one {# neúspěšný} few {# neúspěšné} other {# neúspěšných}}",
"library_created": "Vytvořena knihovna: {library}",
- "library_cron_expression": "Výraz pro Cron",
- "library_cron_expression_description": "Nastavte interval prohledávání pomocí formátu cron. Další informace naleznete např. v Crontab Guru",
- "library_cron_expression_presets": "Předvolby výrazu pro Cron",
"library_deleted": "Knihovna smazána",
"library_import_path_description": "Zadejte složku, kterou chcete importovat. Tato složka bude prohledána včetně podsložek a budou v ní hledány obrázky a videa.",
"library_scanning": "Pravidelné prohledávání",
@@ -98,7 +107,7 @@
"machine_learning_clip_model_description": "Název CLIP modelu je uvedený zde. Pamatujte, že při změně modelu je nutné znovu spustit úlohu 'Chytré vyhledávání' pro všechny obrázky.",
"machine_learning_duplicate_detection": "Kontrola duplicit",
"machine_learning_duplicate_detection_enabled": "Povolit kontrolu duplicit",
- "machine_learning_duplicate_detection_enabled_description": "Pokud je tato funkce vypnuta, budou identické položky stále duplikovány.",
+ "machine_learning_duplicate_detection_enabled_description": "Pokud je tato funkce vypnuta, budou identické položky stále deduplikovány.",
"machine_learning_duplicate_detection_setting_description": "Použít CLIP embeddings k nalezení pravděpodobných duplicit",
"machine_learning_enabled": "Povolit strojové učení",
"machine_learning_enabled_description": "Pokud je vypnuto, budou všechny funkce strojového učení vypnuty bez ohledu na níže uvedená nastavení.",
@@ -122,7 +131,7 @@
"machine_learning_smart_search_description": "Sémantické vyhledávání obrázků pomocí CLIP embeddings",
"machine_learning_smart_search_enabled": "Povolit chytré vyhledávání",
"machine_learning_smart_search_enabled_description": "Pokud je vypnuto, obrázky nebudou kódovány pro inteligentní vyhledávání.",
- "machine_learning_url_description": "URL serveru pro strojové učení",
+ "machine_learning_url_description": "URL serveru strojového učení. Pokud je zadáno více URL adres, budou jednotlivé servery zkoušeny postupně, dokud jeden z nich neodpoví úspěšně, a to v pořadí od prvního k poslednímu.",
"manage_concurrency": "Správa souběžnosti",
"manage_log_settings": "Správa nastavení protokolu",
"map_dark_style": "Tmavý motiv",
@@ -148,11 +157,11 @@
"migration_job_description": "Migrace miniatur snímků a obličejů do nejnovější struktury složek",
"no_paths_added": "Nebyly přidány žádné cesty",
"no_pattern_added": "Nebyl přidán žádný vzor",
- "note_apply_storage_label_previous_assets": "Upozornění: Pro uplatnění Štítku úložiště na dříve nahrané položky, spusťte",
+ "note_apply_storage_label_previous_assets": "Upozornění: Pro uplatnění Štítku úložiště na dříve nahrané položky spusťte",
"note_cannot_be_changed_later": "UPOZORNĚNÍ: Toto nelze později změnit!",
"note_unlimited_quota": "Upozornění: Pro neomezenou kvótu zadejte 0",
"notification_email_from_address": "Adresa Od",
- "notification_email_from_address_description": "E-mailová adresa odesílatele, např.: \"Immich Photo Server {label} je štítek úložiště uživatele",
"system_settings": "Systémová nastavení",
+ "tag_cleanup_job": "Promazání značek",
+ "template_email_available_tags": "V šabloně můžete použít následující proměnné: {tags}",
+ "template_email_if_empty": "Pokud je šablona prázdná, použije se výchozí e-mail.",
+ "template_email_invite_album": "Šablona pozvánky do alba",
+ "template_email_preview": "Náhled",
+ "template_email_settings": "Šablony e-mailů",
+ "template_email_settings_description": "Správa vlastních šablon e-mailových oznámení",
+ "template_email_update_album": "Šablona aktualizace alba",
+ "template_email_welcome": "Šablona uvítacího e-mailu",
+ "template_settings": "Šablony oznámení",
+ "template_settings_description": "Správa vlastních šablon oznámení.",
"theme_custom_css_settings": "Vlastní CSS",
"theme_custom_css_settings_description": "Kaskádové styly umožňují přizpůsobit design aplikace Immich.",
"theme_settings": "Motivy",
"theme_settings_description": "Správa přizpůsobení webového rozhraní Immich",
"these_files_matched_by_checksum": "Tyto soubory jsou porovnávány podle jejich kontrolních součtů",
"thumbnail_generation_job": "Generování miniatur",
- "thumbnail_generation_job_description": "Generování velkých, malých a rozmazaných náhledů pro každý obrázek a náhledů pro každou osobu",
- "transcode_policy_description": "Zásady, kdy má být video překódováno. Videa HDR budou překódována vždy (kromě případů, kdy je překódování zakázáno).",
+ "thumbnail_generation_job_description": "Generování velkých, malých a rozmazaných miniatur pro každý obrázek a miniatur pro každou osobu",
"transcoding_acceleration_api": "API pro akceleraci",
"transcoding_acceleration_api_description": "Rozhraní, které bude komunikovat se zařízením a urychlovat překódování. Toto nastavení je 'best effort': při selhání se vrátí k softwarovému překódování. VP9 může, ale nemusí fungovat v závislosti na vašem hardwaru.",
"transcoding_acceleration_nvenc": "NVENC (vyžaduje NVIDIA GPU)",
@@ -271,7 +292,7 @@
"transcoding_hardware_acceleration": "Hardwarová akcelerace",
"transcoding_hardware_acceleration_description": "Experimentální; mnohem rychlejší, ale při stejném datovém toku bude mít nižší kvalitu",
"transcoding_hardware_decoding": "Hardwarové dekódování",
- "transcoding_hardware_decoding_setting_description": "Platí pouze pro NVENC, QSV a RKMPP. Povoluje kompletní akceleraci namísto akcelerace pouze kódování. Nemusí fungovat u všech videí.",
+ "transcoding_hardware_decoding_setting_description": "Povoluje kompletní akceleraci namísto akcelerace pouze kódování. Nemusí fungovat u všech videí.",
"transcoding_hevc_codec": "Kodek HEVC",
"transcoding_max_b_frames": "Maximální počet B-snímků",
"transcoding_max_b_frames_description": "Vyšší hodnoty zvyšují účinnost komprese, ale zpomalují kódování. Nemusí být kompatibilní s hardwarovou akcelerací na starších zařízeních. Hodnota 0 zakáže B-snímky, zatímco -1 tuto hodnotu nastaví automaticky.",
@@ -297,8 +318,6 @@
"transcoding_threads_description": "Vyšší hodnoty vedou k rychlejšímu kódování, ale ponechávají serveru méně prostoru pro zpracování jiných úloh. Tato hodnota by neměla být vyšší než počet jader procesoru. Maximalizuje využití, pokud je nastavena na 0.",
"transcoding_tone_mapping": "Tone-mapping",
"transcoding_tone_mapping_description": "Snaží se zachovat vzhled videí HDR při převodu na SDR. Každý algoritmus dělá různé kompromisy v oblasti barev, detailů a jasu. Hable zachovává detaily, Mobius zachovává barvy a Reinhard zachovává jas.",
- "transcoding_tone_mapping_npl": "Tone-mapping NPL",
- "transcoding_tone_mapping_npl_description": "Barvy budou upraveny tak, aby vypadaly normálně pro displej s tímto jasem. Nižší hodnoty naopak zvyšují jas videa a naopak, protože kompenzují jas displeje. Hodnota 0 nastavuje tuto hodnotu automaticky.",
"transcoding_transcode_policy": "Zásady překódování",
"transcoding_transcode_policy_description": "Zásady, kdy má být video překódováno. Videa HDR budou překódována vždy (kromě případů, kdy je překódování zakázáno).",
"transcoding_two_pass_encoding": "Dvouprůchodové kódování",
@@ -312,6 +331,7 @@
"trash_settings_description": "Správa nastavení koše",
"untracked_files": "Neznámé soubory",
"untracked_files_description": "Tyto soubory nejsou aplikaci známy. Mohou být výsledkem neúspěšných přesunů, přerušeného nahrávání nebo mohou zůstat pozadu kvůli chybě",
+ "user_cleanup_job": "Promazání uživatelů",
"user_delete_delay": "Účet a položky uživatele {user} budou trvale smazány za {delay, plural, one {# den} few {# dny} other {# dní}}.",
"user_delete_delay_settings": "Odložení odstranění",
"user_delete_delay_settings_description": "Počet dní po odstranění, po kterých bude odstraněn účet a položky uživatele. Úloha odstraňování uživatelů se spouští o půlnoci a kontroluje uživatele, kteří jsou připraveni k odstranění. Změny tohoto nastavení se vyhodnotí při dalším spuštění.",
@@ -365,7 +385,7 @@
"all_videos": "Všechna videa",
"allow_dark_mode": "Povolit tmavý režim",
"allow_edits": "Povolit úpravy",
- "allow_public_user_to_download": "Povolit veřejnosti stahování",
+ "allow_public_user_to_download": "Povolit veřejnosti stahovat",
"allow_public_user_to_upload": "Povolit veřejnosti nahrávat",
"anti_clockwise": "Proti směru hodinových ručiček",
"api_key": "API klíč",
@@ -378,7 +398,6 @@
"archive_or_unarchive_photo": "Archivovat nebo odarchivovat fotku",
"archive_size": "Velikost archivu",
"archive_size_description": "Nastavte velikost archivu pro stahování (v GiB)",
- "archived": "Archivováno",
"archived_count": "{count, plural, other {Archivováno #}}",
"are_these_the_same_person": "Jedná se o stejnou osobu?",
"are_you_sure_to_do_this": "Opravdu to chcete udělat?",
@@ -389,7 +408,7 @@
"asset_has_unassigned_faces": "Položka má nepřiřazené obličeje",
"asset_hashing": "Hashování...",
"asset_offline": "Offline položka",
- "asset_offline_description": "Tato položka je offline. Immich nemá přístup k jejímu umístění. Zkontrolujte, zda je položka dostupná, a poté knihovnu znovu prohledejte.",
+ "asset_offline_description": "Toto externí položka se již na disku nenachází. Obraťte se na Immich správce a požádejte o pomoc.",
"asset_skipped": "Přeskočeno",
"asset_skipped_in_trash": "V koši",
"asset_uploaded": "Nahráno",
@@ -399,11 +418,10 @@
"assets_added_to_album_count": "Do alba {count, plural, one {byla přidána # položka} few {byly přidány # položky} other {bylo přidáno # položek}}",
"assets_added_to_name_count": "{count, plural, one {Přidána # položka} few {Přidány # položky} other {Přidáno # položek}} do {hasName, select, true {alba {name}} other {nového alba}}",
"assets_count": "{count, plural, one {# položka} few {# položky} other {# položek}}",
- "assets_moved_to_trash": "{count, plural, one {# položka přesunuta} few {# položky přesunuty} other {# položek přesunuto}} do koše",
"assets_moved_to_trash_count": "Do koše {count, plural, one {přesunuta # položka} few {přesunuty # položky} other {přesunuto # položek}}",
"assets_permanently_deleted_count": "Trvale {count, plural, one {smazána # položka} few {smazány # položky} other {smazáno # položek}}",
"assets_removed_count": "{count, plural, one {Odstraněna # položka} few {Odstraněny # položky} other {Odstraněno # položek}}",
- "assets_restore_confirmation": "Opravdu chcete obnovit všechny vyhozené položky? Tuto akci nelze vrátit zpět!",
+ "assets_restore_confirmation": "Opravdu chcete obnovit všechny vyhozené položky? Tuto akci nelze vrátit zpět! Upozorňujeme, že tímto způsobem nelze obnovit žádné offline položky.",
"assets_restored_count": "{count, plural, one {Obnovena # položka} few {Obnoveny # položky} other {Obnoveno # položek}}",
"assets_trashed_count": "{count, plural, one {Vyhozena # položka} few {Vyhozeny # položky} other {Vyhozeno # položek}}",
"assets_were_part_of_album_count": "{count, plural, one {Položka byla} other {Položky byly}} součástí alba",
@@ -414,6 +432,7 @@
"birthdate_saved": "Datum narození úspěšně uloženo",
"birthdate_set_description": "Datum narození se používá k výpočtu věku osoby v době pořízení fotografie.",
"blurred_background": "Rozmazané pozadí",
+ "bugs_and_feature_requests": "Chyby a návrhy na funkce",
"build": "Sestavení",
"build_image": "Sestavení obrazu",
"bulk_delete_duplicates_confirmation": "Opravdu chcete hromadně odstranit {count, plural, one {# duplicitní položku} few {# duplicitní položky} other {# duplicitních položek}}? Tím se zachová největší položka z každé skupiny a všechny ostatní duplicity se trvale odstraní. Tuto akci nelze vrátit zpět!",
@@ -428,10 +447,6 @@
"cannot_merge_people": "Nelze sloučit osoby",
"cannot_undo_this_action": "Tuto akci nelze vrátit zpět!",
"cannot_update_the_description": "Nelze aktualizovat popis",
- "cant_apply_changes": "Nelze uplatnit změny",
- "cant_get_faces": "Nelze získat obličeje",
- "cant_search_people": "Nelze vyhledávat lidi",
- "cant_search_places": "Nelze vyhledávat místa",
"change_date": "Změnit datum",
"change_expiration_time": "Změna konce platnosti",
"change_location": "Změna polohy",
@@ -463,6 +478,7 @@
"confirm": "Potvrdit",
"confirm_admin_password": "Potvrzení hesla správce",
"confirm_delete_shared_link": "Opravdu chcete odstranit tento sdílený odkaz?",
+ "confirm_keep_this_delete_others": "Všechny ostatní položky v tomto uskupení mimo této budou odstraněny. Opravdu chcete pokračovat?",
"confirm_password": "Potvrzení hesla",
"contain": "Obsah",
"context": "Kontext",
@@ -512,16 +528,19 @@
"delete_key": "Smazat klíč",
"delete_library": "Smazat knihovnu",
"delete_link": "Smazat odkaz",
+ "delete_others": "Odstranit ostatní",
"delete_shared_link": "Smazat sdílený odkaz",
"delete_tag": "Smazat značku",
"delete_tag_confirmation_prompt": "Opravdu chcete odstranit značku {tagName}?",
"delete_user": "Odstranit uživatele",
"deleted_shared_link": "Smazat sdílený odkaz",
+ "deletes_missing_assets": "Odstraní položky chybějící na disku",
"description": "Popis",
"details": "Podrobnosti",
"direction": "Směr",
"disabled": "Zakázáno",
"disallow_edits": "Zakázat úpravy",
+ "discord": "Discord",
"discover": "Objevit",
"dismiss_all_errors": "Zrušit všechny chyby",
"dismiss_error": "Zrušit chybu",
@@ -530,6 +549,7 @@
"display_original_photos": "Zobrazit originální fotky",
"display_original_photos_setting_description": "Preferovat zobrazení původních fotek při prohlížení položek namísto miniatur, pokud je originální položka kompatibilní s webem. To může mít za následek nižší rychlost zobrazení fotek.",
"do_not_show_again": "Tuto zprávu již nezobrazovat",
+ "documentation": "Dokumentace",
"done": "Hotovo",
"download": "Stáhnout",
"download_include_embedded_motion_videos": "Vložená videa",
@@ -542,13 +562,6 @@
"duplicates": "Duplicity",
"duplicates_description": "Vyřešte každou skupinu tak, že uvedete, které skupiny jsou duplicitní",
"duration": "Doba trvání",
- "durations": {
- "days": "{days, plural, one {den} few {{days, number} dny} other {{days, number} dní}}",
- "hours": "{hours, plural, one {hodina} few {{hours, number} hodiny} other {{hours, number} hodin}}",
- "minutes": "{minutes, plural, one {minuta} few {{minutes, number} minuty} other {{minutes, number} minut}}",
- "months": "{months, plural, one {měsíc} few {{months, number} měsíce} other {{months, number} měsíců}}",
- "years": "{years, plural, one {rok} few {{years, number} roky} other {{years, number} let}}"
- },
"edit": "Upravit",
"edit_album": "Upravit album",
"edit_avatar": "Upravit avatar",
@@ -573,8 +586,6 @@
"editor_crop_tool_h2_aspect_ratios": "Poměr stran",
"editor_crop_tool_h2_rotation": "Otočení",
"email": "E-mail",
- "empty": "Prázdné",
- "empty_album": "Prázdné album",
"empty_trash": "Vyprázdnit koš",
"empty_trash_confirmation": "Opravdu chcete vysypat koš? Tím se z Immiche trvale odstraní všechny položky v koši.\nTuto akci nelze vrátit zpět!",
"enable": "Povolit",
@@ -608,6 +619,7 @@
"failed_to_create_shared_link": "Nepodařilo se vytvořit sdílený odkaz",
"failed_to_edit_shared_link": "Nepodařilo se upravit sdílený odkaz",
"failed_to_get_people": "Nepodařilo se načíst lidi",
+ "failed_to_keep_this_delete_others": "Nepodařilo se zachovat tuto položku a odstranit ostatní položky",
"failed_to_load_asset": "Nepodařilo se načíst položku",
"failed_to_load_assets": "Nepodařilo se načíst položky",
"failed_to_load_people": "Chyba načítání osob",
@@ -635,8 +647,6 @@
"unable_to_change_location": "Nelze změnit polohu",
"unable_to_change_password": "Nelze změnit heslo",
"unable_to_change_visibility": "Nelze změnit viditelnost u {count, plural, one {# osoby} few {# osob} other {# lidí}}",
- "unable_to_check_item": "Nelze zkontrolovat položku",
- "unable_to_check_items": "Nelze zkontrolovat položky",
"unable_to_complete_oauth_login": "Nelze dokončit OAuth přihlášení",
"unable_to_connect": "Nelze se připojit",
"unable_to_connect_to_server": "Nepodařilo se připojit k serveru",
@@ -661,6 +671,7 @@
"unable_to_get_comments_number": "Nelze načíst počet komentářů",
"unable_to_get_shared_link": "Nepodařilo se získat sdílený odkaz",
"unable_to_hide_person": "Nelze skrýt osobu",
+ "unable_to_link_motion_video": "Nelze připojit pohyblivé video",
"unable_to_link_oauth_account": "Nelze propojit OAuth účet",
"unable_to_load_album": "Nelze načíst album",
"unable_to_load_asset_activity": "Nelze načíst aktivitu položky",
@@ -676,12 +687,10 @@
"unable_to_remove_album_users": "Nelze odebrat uživatele z alba",
"unable_to_remove_api_key": "Nelze odstranit API klíč",
"unable_to_remove_assets_from_shared_link": "Nelze odstranit položky ze sdíleného odkazu",
- "unable_to_remove_comment": "Nelze odstranit komentář",
+ "unable_to_remove_deleted_assets": "Nelze odstranit offline soubory",
"unable_to_remove_library": "Nelze odstranit knihovnu",
- "unable_to_remove_offline_files": "Nelze odstranit offline soubory",
"unable_to_remove_partner": "Nelze odebrat partnera",
"unable_to_remove_reaction": "Nelze odstranit reakci",
- "unable_to_remove_user": "Nelze odebrat uživatele",
"unable_to_repair_items": "Nelze opravit položky",
"unable_to_reset_password": "Nelze obnovit heslo",
"unable_to_resolve_duplicate": "Nelze vyřešit duplicitu",
@@ -701,6 +710,7 @@
"unable_to_submit_job": "Nelze odeslat úlohu",
"unable_to_trash_asset": "Nelze vyhodit položku do koše",
"unable_to_unlink_account": "Nelze zrušit propojení účtu",
+ "unable_to_unlink_motion_video": "Nelze odpojit pohyblivé video",
"unable_to_update_album_cover": "Nelze aktualizovat obal alba",
"unable_to_update_album_info": "Nelze aktualizovat informace o albu",
"unable_to_update_library": "Nelze aktualizovat knihovnu",
@@ -710,10 +720,6 @@
"unable_to_update_user": "Nelze aktualizovat uživatele",
"unable_to_upload_file": "Nepodařilo se nahrát soubor"
},
- "every_day_at_onepm": "Každý den ve 13:00",
- "every_night_at_midnight": "Každý den o půlnoci",
- "every_night_at_twoam": "Každou noc ve 2:00",
- "every_six_hours": "Každých 6 hodin",
"exif": "Exif",
"exit_slideshow": "Ukončit prezentaci",
"expand_all": "Rozbalit vše",
@@ -728,33 +734,28 @@
"external": "Externí",
"external_libraries": "Externí knihovny",
"face_unassigned": "Nepřiřazena",
- "failed_to_get_people": "Nepodařilo se načíst lidi",
+ "failed_to_load_assets": "Nepodařilo se načíst položky",
"favorite": "Oblíbit",
"favorite_or_unfavorite_photo": "Oblíbit nebo zrušit oblíbení fotky",
"favorites": "Oblíbené",
- "feature": "Funkce",
"feature_photo_updated": "Hlavní fotka aktualizována",
- "featurecollection": "Kolekce Funkcí",
"features": "Funkce",
"features_setting_description": "Správa funkcí aplikace",
"file_name": "Název souboru",
"file_name_or_extension": "Název nebo přípona souboru",
"filename": "Filename",
- "files": "",
"filetype": "Filetype",
"filter_people": "Filtrovat lidi",
"find_them_fast": "Najděte je rychle vyhledáním jejich jména",
"fix_incorrect_match": "Opravit nesprávnou shodu",
"folders": "Složky",
"folders_feature_description": "Procházení zobrazení složek s fotografiemi a videi v souborovém systému",
- "force_re-scan_library_files": "Vynucené prohledání všech souborů knihovny",
"forward": "Dopředu",
"general": "Obecné",
"get_help": "Získat pomoc",
"getting_started": "Začínáme",
"go_back": "Přejít zpět",
"go_to_search": "Přejít na vyhledávání",
- "go_to_share_page": "Přejít na stránku sdílení",
"group_albums_by": "Seskupit alba podle...",
"group_no": "Neseskupovat",
"group_owner": "Seskupit podle uživatele",
@@ -780,10 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video pořízeno} other {Obrázek požízen}} {date} v místě {city}, {country} uživateli {person1} a {person2}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video pořízeno} other {Obrázek požízen}} {date} v místě {city}, {country} uživateli {person1}, {person2} a {person3}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video pořízeno} other {Obrázek požízen}} {date} v místě {city}, {country} uživateli {person1}, {person2} a {additionalCount, plural, one {dalším # uživatelem} other {dalšími # uživateli}}",
- "image_alt_text_people": "{count, plural, =1 {a {person1}} =2 {s {person1} a {person2}} =3 {s {person1}, {person2}, a {person3}} other {s {person1}, {person2}, a {others, number} dalšími}}",
- "image_alt_text_place": "v {city}, {country}",
- "image_taken": "{isVideo, select, true {Video pořízeno} other {Obrázek požízen}}",
- "img": "Img",
"immich_logo": "Immich Logo",
"immich_web_interface": "Webové rozhraní Immich",
"import_from_json": "Import z JSONu",
@@ -804,10 +801,11 @@
"invite_people": "Pozvat lidi",
"invite_to_album": "Pozvat do alba",
"items_count": "{count, plural, one {# položka} few {# položky} other {# položek}}",
- "job_settings_description": "Správa souběhu úloh",
"jobs": "Úlohy",
"keep": "Ponechat",
"keep_all": "Ponechat vše",
+ "keep_this_delete_others": "Ponechat tuto, odstranit ostatní",
+ "kept_this_deleted_others": "Ponechána tato položka a {count, plural, one {odstraněna # položka} few {odstraněny # položky} other {odstraněno # položek}}",
"keyboard_shortcuts": "Klávesové zkratky",
"language": "Jazyk",
"language_setting_description": "Vyberte upřednostňovaný jazyk",
@@ -819,31 +817,6 @@
"level": "Úroveň",
"library": "Knihovna",
"library_options": "Možnosti knihovny",
- "license_account_info": "Váš účet je licencován",
- "license_activated_subtitle": "Děkujeme vám za podporu aplikace Immich a open-source softwaru",
- "license_activated_title": "Vaše licence byla úspěšně aktivována",
- "license_button_activate": "Aktivovat",
- "license_button_buy": "Koupit",
- "license_button_buy_license": "Koupit licenci",
- "license_button_select": "Vybrat",
- "license_failed_activation": "Nepodařilo se aktivovat licenci. Zkontrolujte prosím svůj e-mail pro správný licenční klíč!",
- "license_individual_description_1": "1 licence za uživatele na libovolném serveru",
- "license_individual_title": "Individuální licence",
- "license_info_licensed": "Licencováno",
- "license_info_unlicensed": "Nelicencováno",
- "license_input_suggestion": "Máte licenci? Zadejte klíč níže",
- "license_license_subtitle": "Koupí licence podpoříte Immich",
- "license_license_title": "LICENCE",
- "license_lifetime_description": "Doživotní licence",
- "license_per_server": "Za server",
- "license_per_user": "Za uživatele",
- "license_server_description_1": "1 licence za každý server",
- "license_server_description_2": "Licence za všechny uživatele na serveru",
- "license_server_title": "Serverová licence",
- "license_trial_info_1": "Používáte nelicencovanou verzi aplikace Immich",
- "license_trial_info_2": "Immich používáte přibližně",
- "license_trial_info_3": "{accountAge, plural, one {# den} few {# dny} other {# dní}}",
- "license_trial_info_4": "Zvažte prosím zakoupení licence na podporu dalšího rozvoje služby",
"light": "Světlý",
"like_deleted": "Lajk smazán",
"link_motion_video": "Připojit pohyblivé video",
@@ -865,6 +838,7 @@
"look": "Zobrazení",
"loop_videos": "Videa ve smyčce",
"loop_videos_description": "Povolit automatickou smyčku videa v prohlížeči.",
+ "main_branch_warning": "Používáte vývojovou verzi; důrazně doporučujeme používat verzi z vydání!",
"make": "Výrobce",
"manage_shared_links": "Spravovat sdílené odkazy",
"manage_sharing_with_partners": "Správa sdílení s partnery",
@@ -934,6 +908,7 @@
"notifications": "Oznámení",
"notifications_setting_description": "Správa oznámení",
"oauth": "OAuth",
+ "official_immich_resources": "Oficiální zdroje Immich",
"offline": "Offline",
"offline_paths": "Offline cesty",
"offline_paths_description": "Tyto výsledky mohou být způsobeny ručním odstraněním souborů, které nejsou součástí externí knihovny.",
@@ -941,13 +916,11 @@
"oldest_first": "Nejstarší první",
"onboarding": "Zahájení",
"onboarding_privacy_description": "Následující (volitelné) funkce jsou závislé na externích službách a lze je kdykoli zakázat v nastavení správy.",
- "onboarding_storage_template_description": "Pokud je tato funkce povolena, automaticky uspořádá soubory na základě uživatelem definované šablony. Vzhledem k problémům se stabilitou byla tato funkce ve výchozím nastavení vypnuta. Další informace naleznete v [dokumentaci].",
"onboarding_theme_description": "Zvolte si barevné téma pro svou instanci. Můžete to později změnit v nastavení.",
"onboarding_welcome_description": "Nastavíme vaši instanci pomocí několika běžných nastavení.",
"onboarding_welcome_user": "Vítej, {user}",
"online": "Online",
"only_favorites": "Pouze oblíbené",
- "only_refreshes_modified_files": "Obnovuje pouze změněné soubory",
"open_in_map_view": "Otevřít v zobrazení mapy",
"open_in_openstreetmap": "Otevřít v OpenStreetMap",
"open_the_search_filters": "Otevřít vyhledávací filtry",
@@ -964,7 +937,7 @@
"partner_can_access": "{partner} má přístup",
"partner_can_access_assets": "Všechny vaše fotky a videa kromě těch, které jsou v sekcích Archivováno a Smazáno",
"partner_can_access_location": "Místo, kde byly vaše fotografie pořízeny",
- "partner_sharing": "Sdílení partnerů",
+ "partner_sharing": "Sdílení mezi partnery",
"partners": "Partneři",
"password": "Heslo",
"password_does_not_match": "Heslo se neshoduje",
@@ -985,14 +958,12 @@
"people_edits_count": "Upraveno {count, plural, one {# osoba} few {# osoby} other {# lidí}}",
"people_feature_description": "Procházení fotografií a videí seskupených podle osob",
"people_sidebar_description": "Zobrazit sekci Lidé v postranním panelu",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Upozornění na trvalé smazání",
"permanent_deletion_warning_setting_description": "Zobrazit varování při trvalém odstranění položek",
"permanently_delete": "Trvale odstranit",
- "permanently_delete_assets_count": "Trvale vymazat {count, plural, one {položku} other {položky}}",
+ "permanently_delete_assets_count": "Trvale smazat {count, plural, one {položku} other {položky}}",
"permanently_delete_assets_prompt": "Opravdu chcete trvale smazat {count, plural, one {tuto položku} few {tyto # položky} other {těchto # položek}}? Tím {count, plural, one {ji také odstraníte z jejích} other {je také odstraníte z jejich}} alb.",
"permanently_deleted_asset": "Položka trvale odstraněna",
- "permanently_deleted_assets": "Trvale {count, plural, one {odstraněna # položka} few {odstraněny # položky} other {odstraněno # položek}}",
"permanently_deleted_assets_count": "{count, plural, one {Položka trvale vymazána} other {Položky trvale vymazány}}",
"person": "Osoba",
"person_hidden": "{name}{hidden, select, true { (skryto)} other {}}",
@@ -1008,7 +979,6 @@
"play_memories": "Přehrát vzpomníky",
"play_motion_photo": "Přehrát pohybovou fotografii",
"play_or_pause_video": "Přehrát nebo pozastavit video",
- "point": "Bod",
"port": "Port",
"preset": "Přednastavení",
"preview": "Náhled",
@@ -1032,19 +1002,19 @@
"purchase_button_reminder": "Připomenout za 30 dní",
"purchase_button_remove_key": "Odstranit klíč",
"purchase_button_select": "Vybrat",
- "purchase_failed_activation": "Aktivace se nezdařila! Zkontrolujte prosím svůj e-mail pro správný produktový klíč!",
+ "purchase_failed_activation": "Aktivace se nezdařila! Zkontrolujte prosím svůj e-mail zda je zadaný produktový klíč bez chyb!",
"purchase_individual_description_1": "Pro jednotlivce",
"purchase_individual_description_2": "Stav podporovatele",
"purchase_individual_title": "Individuální",
- "purchase_input_suggestion": "Máte produktový klíč? Zadejte klíč níže",
- "purchase_license_subtitle": "Koupit Immich na podporu dalšího rozvoje služby",
+ "purchase_input_suggestion": "Máte produktový klíč? Zadejte ho níže",
+ "purchase_license_subtitle": "Koupit Immich a podpořit další rozvoj služby",
"purchase_lifetime_description": "Doživotní platnost",
- "purchase_option_title": "MOŽNOSTI NÁKUPU",
+ "purchase_option_title": "MOŽNOSTI ZAKOUPENÍ",
"purchase_panel_info_1": "Tvorba aplikace Immich vyžaduje spoustu času a úsilí, a proto na ní pracují vývojáři na plný úvazek, aby byla co nejlepší. Naším cílem je, aby se software s otevřeným zdrojovým kódem a etické obchodní postupy staly udržitelným zdrojem příjmů pro vývojáře a aby vznikl ekosystém respektující soukromí se skutečnými alternativami k ziskuchtivým službám.",
"purchase_panel_info_2": "Protože jsme se zavázali, že nebudeme zavádět paywally, nezískáte tímto nákupem žádné další funkce v aplikaci Immich. Spoléháme na uživatele, jako jste vy, že podpoří neustálý vývoj aplikace.",
- "purchase_panel_title": "Podpora projektu",
- "purchase_per_server": "Na server",
- "purchase_per_user": "Na uživatele",
+ "purchase_panel_title": "Podpořit projekt",
+ "purchase_per_server": "Za server",
+ "purchase_per_user": "Za uživatele",
"purchase_remove_product_key": "Odstranění produktového klíče",
"purchase_remove_product_key_prompt": "Opravdu chcete odebrat produktový klíč?",
"purchase_remove_server_product_key": "Odstranění serverového produktového klíče",
@@ -1053,12 +1023,10 @@
"purchase_server_description_2": "Stav podporovatele",
"purchase_server_title": "Server",
"purchase_settings_server_activated": "Produktový klíč serveru spravuje správce",
- "range": "Rozsah",
"rating": "Hodnocení hvězdičkami",
"rating_clear": "Vyčistit hodnocení",
"rating_count": "{count, plural, one {# hvězdička} few {# hvězdičky} other {# hvězdček}}",
"rating_description": "Zobrazit EXIF hodnocení v informačním panelu",
- "raw": "Raw",
"reaction_options": "Možnosti reakce",
"read_changelog": "Přečtěte si seznam změn",
"reassign": "Přeřadit",
@@ -1066,25 +1034,29 @@
"reassigned_assets_to_new_person": "{count, plural, one {Přeřazena # položka} few {Přeřazeny # položky} other {Přeřazeno # položek}} na novou osobu",
"reassing_hint": "Přiřazení vybraných položek existující osobě",
"recent": "Nedávné",
+ "recent-albums": "Nedávná alba",
"recent_searches": "Nedávná vyhledávání",
"refresh": "Obnovit",
"refresh_encoded_videos": "Obnovit kódovaná videa",
+ "refresh_faces": "Obnovit obličeje",
"refresh_metadata": "Obnovit metadata",
- "refresh_thumbnails": "Obnovit náhledy",
+ "refresh_thumbnails": "Obnovit miniatury",
"refreshed": "Obnoveno",
- "refreshes_every_file": "Obnoví každý soubor",
+ "refreshes_every_file": "Znovu načte všechny stávající a nové soubory",
"refreshing_encoded_video": "Obnovování kódovaného videa",
+ "refreshing_faces": "Obnovování obličejů",
"refreshing_metadata": "Obnovování metadat",
- "regenerating_thumbnails": "Regenerace náhledů",
+ "regenerating_thumbnails": "Regenerace miniatur",
"remove": "Odstranit",
"remove_assets_album_confirmation": "Opravdu chcete z alba odstranit {count, plural, one {# položku} few {# položky} other {# položek}}?",
"remove_assets_shared_link_confirmation": "Opravdu chcete ze sdíleného odkazu odstranit {count, plural, one {# položku} few {# položky} other {# položek}}?",
"remove_assets_title": "Odstranit položky?",
"remove_custom_date_range": "Odstranit vlastní rozsah datumů",
+ "remove_deleted_assets": "Odstranit offline soubory",
"remove_from_album": "Odstranit z alba",
"remove_from_favorites": "Odstranit z oblíbených",
"remove_from_shared_link": "Odstranit ze sdíleného odkazu",
- "remove_offline_files": "Odstranit offline soubory",
+ "remove_url": "Odstranit URL",
"remove_user": "Odebrat uživatele",
"removed_api_key": "Odstraněn API klíč: {name}",
"removed_from_archive": "Odstraněno z archivu",
@@ -1101,7 +1073,6 @@
"reset": "Výchozí",
"reset_password": "Obnovit heslo",
"reset_people_visibility": "Obnovit viditelnost lidí",
- "reset_settings_to_default": "Obnovit výchozí nastavení",
"reset_to_default": "Obnovit výchozí nastavení",
"resolve_duplicates": "Vyřešit duplicity",
"resolved_all_duplicates": "Vyřešeny všechny duplicity",
@@ -1121,8 +1092,7 @@
"saved_settings": "Nastavení uloženo",
"say_something": "Řekněte něco",
"scan_all_libraries": "Prohledat všechny knihovny",
- "scan_all_library_files": "Prohledání všech souborů knihovny",
- "scan_new_library_files": "Hledat nové soubory v knihovně",
+ "scan_library": "Prohledat",
"scan_settings": "Nastavení prohledávání",
"scanning_for_album": "Prohledávání alba...",
"search": "Hledat",
@@ -1140,6 +1110,7 @@
"search_options": "Možnosti vyhledávání",
"search_people": "Vyhledat lidi",
"search_places": "Vyhledat místa",
+ "search_settings": "Hledat nastavení",
"search_state": "Vyhledat stát...",
"search_tags": "Vyhledávat značky...",
"search_timezone": "Vyhledat časové pásmo...",
@@ -1164,9 +1135,8 @@
"selected_count": "{count, plural, one {# vybraný} few {# vybrané} other {# vybraných}}",
"send_message": "Odeslat zprávu",
"send_welcome_email": "Poslat uvítací e-mail",
- "server": "Server",
- "server_offline": "Server Offline",
- "server_online": "Server Online",
+ "server_offline": "Server offline",
+ "server_online": "Server online",
"server_stats": "Statistiky serveru",
"server_version": "Verze serveru",
"set": "Nastavit",
@@ -1179,8 +1149,8 @@
"settings_saved": "Nastavení uloženo",
"share": "Sdílet",
"shared": "Sdílené",
- "shared_by": "Sdílel",
- "shared_by_user": "Sdíleno uživatelem {user}",
+ "shared_by": "Sdílel(a)",
+ "shared_by_user": "Sdílel(a) {user}",
"shared_by_you": "Sdíleli jste",
"shared_from_partner": "Fotky od {partner}",
"shared_link_options": "Možnosti sdíleného odkazu",
@@ -1207,6 +1177,7 @@
"show_person_options": "Zobrazit možnosti osoby",
"show_progress_bar": "Zobrazit ukazatel průběhu",
"show_search_options": "Zobrazit možnosti vyhledávání",
+ "show_slideshow_transition": "Zobrazit přechod prezentace",
"show_supporter_badge": "Odznak podporovatele",
"show_supporter_badge_description": "Zobrazit odznak podporovatele",
"shuffle": "Náhodný výběr",
@@ -1248,13 +1219,16 @@
"submit": "Odeslat",
"suggestions": "Návrhy",
"sunrise_on_the_beach": "Východ slunce na pláži",
+ "support": "Podpora",
+ "support_and_feedback": "Podpora a zpětná vazba",
+ "support_third_party_description": "Vaše Immich instalace byla připravena třetí stranou. Problémy, které se u vás vyskytly, mohou být způsobeny tímto balíčkem, proto se na ně obraťte v první řadě pomocí níže uvedených odkazů.",
"swap_merge_direction": "Obrátit směr sloučení",
"sync": "Synchronizovat",
"tag": "Značka",
"tag_assets": "Přiřadit značku",
"tag_created": "Vytvořena značka: {tag}",
"tag_feature_description": "Procházení fotografií a videí seskupených podle témat logických značek",
- "tag_not_found_question": "Nemůžete najít značku? Vytvořte ji zde",
+ "tag_not_found_question": "Nemůžete najít značku? Vytvořte novou.",
"tag_updated": "Aktualizována značka: {tag}",
"tagged_assets": "Přiřazena značka {count, plural, one {# položce} other {# položkám}}",
"tags": "Značky",
@@ -1263,18 +1237,19 @@
"theme_selection": "Výběr motivu",
"theme_selection_description": "Automatické nastavení světlého nebo tmavého motivu podle systémových preferencí prohlížeče",
"they_will_be_merged_together": "Budou sloučeny dohromady",
+ "third_party_resources": "Zdroje třetích stran",
"time_based_memories": "Časové vzpomínky",
+ "timeline": "Časová osa",
"timezone": "Časové pásmo",
"to_archive": "Archivovat",
"to_change_password": "Změnit heslo",
"to_favorite": "Oblíbit",
"to_login": "Přihlásit",
"to_parent": "Přejít k rodiči",
- "to_root": "Přejít ke kořenu",
"to_trash": "Vyhodit",
"toggle_settings": "Přepnout nastavení",
"toggle_theme": "Přepnout tmavý motiv",
- "toggle_visibility": "Přepnout viditelnost",
+ "total": "Celkem",
"total_usage": "Celkové využití",
"trash": "Koš",
"trash_all": "Vyhodit vše",
@@ -1284,19 +1259,18 @@
"trashed_items_will_be_permanently_deleted_after": "Smazané položky budou trvale odstraněny po {days, plural, one {# dni} other {# dnech}}.",
"type": "Typ",
"unarchive": "Odarchivovat",
- "unarchived": "Odarchivováno",
"unarchived_count": "{count, plural, one {Odarchivována #} few {Odarchivovány #} other {Odarchivováno #}}",
"unfavorite": "Zrušit oblíbení",
"unhide_person": "Zrušit skrytí osoby",
"unknown": "Neznámý",
- "unknown_album": "Neznámé album",
"unknown_year": "Neznámý rok",
"unlimited": "Neomezeně",
+ "unlink_motion_video": "Odpojit pohyblivé video",
"unlink_oauth": "Zrušit OAuth propojení",
"unlinked_oauth_account": "OAuth účet odpojen",
"unnamed_album": "Nepojmenované album",
"unnamed_album_delete_confirmation": "Opravdu chcete toto album smazat?",
- "unnamed_share": "Nejmenované sdílení",
+ "unnamed_share": "Nepojmenované sdílení",
"unsaved_change": "Neuložená změna",
"unselect_all": "Zrušit výběr všech",
"unselect_all_duplicates": "Zrušit výběr všech duplicit",
@@ -1320,13 +1294,13 @@
"use_custom_date_range": "Použít vlastní rozsah dat",
"user": "Uživatel",
"user_id": "ID uživatele",
- "user_license_settings": "Licence",
- "user_license_settings_description": "Správa licence",
"user_liked": "Uživateli {user} se {type, select, photo {líbila tato fotka} video {líbilo toto video} asset {líbila tato položka} other {to líbilo}}",
"user_purchase_settings": "Nákup",
"user_purchase_settings_description": "Správa vašeho nákupu",
"user_role_set": "Uživatel {user} nastaven jako {role}",
"user_usage_detail": "Podrobnosti využití uživatelů",
+ "user_usage_stats": "Statistiky používání účtu",
+ "user_usage_stats_description": "Zobrazit statistiky používání účtu",
"username": "Uživateleské jméno",
"users": "Uživatelé",
"utilities": "Nástroje",
@@ -1334,7 +1308,9 @@
"variables": "Proměnné",
"version": "Verze",
"version_announcement_closing": "Váš přítel Alex",
- "version_announcement_message": "Ahoj příteli, je tu nová verze aplikace, věnuj prosím čas přečtení poznámek k vydání a zajisti si, aby docker-compose.yml a nastavení .env bylo aktuální, a aby nedošlo k chybné konfiguraci, zejména pokud používáš WatchTower nebo jiný mechanismus, který se stará o automatickou aktualizaci aplikace.",
+ "version_announcement_message": "Ahoj! K dispozici je nová verze aplikace Immich. Věnujte prosím chvíli přečtení poznámek k vydání a ujistěte se, že je vaše nastavení aktuální, abyste předešli případným chybným konfiguracím, zejména pokud používáte WatchTower nebo jiný mechanismus, který se stará o automatickou aktualizaci instance aplikace Immich.",
+ "version_history": "Historie verzí",
+ "version_history_item": "Nainstalováno {version} dne {date}",
"video": "Video",
"video_hover_setting": "Přehrávat miniaturu videa po najetí myší",
"video_hover_setting_description": "Přehrát miniaturu videa při najetí myší na položku. I když je přehrávání vypnuto, lze jej spustit najetím na ikonu přehrávání.",
@@ -1346,10 +1322,10 @@
"view_all_users": "Zobrazit všechny uživatele",
"view_in_timeline": "Zobrazit na časové ose",
"view_links": "Zobrazit odkazy",
+ "view_name": "Zobrazit",
"view_next_asset": "Zobrazit další položku",
"view_previous_asset": "Zobrazit předchozí položku",
"view_stack": "Zobrazit seskupení",
- "viewer": "Prohlížeč",
"visibility_changed": "Viditelnost změněna u {count, plural, one {# osoby} few {# osob} other {# lidí}}",
"waiting": "Čekající",
"warning": "Upozornění",
diff --git a/i18n/cv.json b/i18n/cv.json
new file mode 100644
index 0000000000..61dcb12b8d
--- /dev/null
+++ b/i18n/cv.json
@@ -0,0 +1,52 @@
+{
+ "about": "Ҫинчен",
+ "account": "Шута ҫырни",
+ "account_settings": "Шута ҫырни ӗнерленӳ",
+ "acknowledge": "Çирӗплет",
+ "action": "Ӗçлени",
+ "actions": "Ӗҫсем",
+ "active": "Хастар",
+ "activity": "Хастарлӑх",
+ "activity_changed": "Хастарлӑха {enabled, select, true {кӗртнӗ} other {сӳнтернӗ}}",
+ "add": "Хуш",
+ "add_a_description": "Ҫырса кӑтартни хуш",
+ "add_a_location": "Вырӑн хуш",
+ "add_a_name": "Ятне хуш",
+ "add_a_title": "Ят хуш",
+ "add_exclusion_pattern": "Кӑларса пӑрахмалли йӗрке хуш",
+ "add_import_path": "Импорт ҫулне хуш",
+ "add_location": "Вырӑн хуш",
+ "add_more_users": "Усӑҫсем ытларах хуш",
+ "add_partner": "Мӑшӑр хуш",
+ "add_path": "Ҫулне хуш",
+ "add_photos": "Сӑнӳкерчӗксем хуш",
+ "add_to": "Мӗн те пулин хуш...",
+ "add_to_album": "Альбома хуш",
+ "add_to_shared_album": "Пӗрлехи альбома хуш",
+ "add_url": "URL хушӑр",
+ "added_to_archive": "Архива хушнӑ",
+ "added_to_favorites": "Суйласа илнине хушнӑ",
+ "added_to_favorites_count": "Суйласа илнине {count, number} хушнӑ",
+ "admin": {
+ "asset_offline_description": "Библиотекӑн ҫак тулаш файлне дискра урӑх тупайман, карҫинккана куҫарнӑ. Енчен те файла вулавӑш ӑшне куҫарнӑ пулсан, тивӗҫлӗ ҫӗнӗ ресурс тупас тесен хӑвӑрӑн вӑхӑтлӑх шкалӑна тӗрӗслӗр. Ҫак файла ҫӗнӗрен чӗртес тесен файл патне каймалли ҫула Immich валли аяларах ҫитернине курса ӗненӗр, библиотекӑна сканерланине пурнӑҫлӑр.",
+ "authentication_settings_disable_all": "Эсир кӗмелли пур меслетсене те чарса лартасшӑн тесе шутлатӑр-и? Кӗмелли шӑтӑка пӗтӗмпех уҫаҫҫӗ.",
+ "background_task_job": "Курăнман ӗҫсем",
+ "check_all": "Пурне те тӗрӗслӗр",
+ "cleared_jobs": "Ӗҫсене тасатнӑ:{job}",
+ "confirm_email_below": "Ҫирӗплетес тесен, аяларах «{email}» кӗртӗр",
+ "confirm_reprocess_all_faces": "Пӗтӗм сӑнӗсене тепӗр хут палӑртас килет тесе шанатӑр-и? Ҫавӑн пекех ятсене пур ҫынран та хуратӗҫ.",
+ "create_job": "Ӗҫе ту",
+ "disable_login": "Кӗме чарӑр",
+ "duplicate_detection_job_description": "Пӗр пек ӳкерчӗксене тупма машинӑллӑ вӗренӗве ӗҫлеттерӗр. Ӑслӑ шыравпа усӑ кураҫҫӗ",
+ "face_detection": "Пит-куҫа тупасси",
+ "force_delete_user_warning": "ПУЛТАРУЛӐХ: Ку усӑ куракана тата мӗнпур ресурса ҫийӗнчех кӑларса пӑрахасси патне илсе ҫитерӗ. Кӑна пӑрахӑҫлама май ҫук, файлсене те юсаса пӗтереймеҫҫӗ.",
+ "image_format": "Тулашлăх",
+ "image_preview_description": "Вӑтам пысӑкӑш ӳкерчӗк, уйрӑм метаданнӑйсем, пӗр объекта пӑхнӑ чухне тата машинӑллӑ вӗренӳре усӑ кураҫҫӗ",
+ "image_preview_quality_description": "1-100 таран малтанхи пахалӑх. Ҫӳллӗреххи лайӑхрах, анчах та пысӑкрах файлсем туса кӑларать тата приложенисен хуравлӑхне чакарма пултарать. Пӗчӗк хак лартни машинӑллӑ вӗренӳ пахалӑхне витӗм кӳме пултарать.",
+ "image_preview_title": "Малтанлӑха пӑхмалли ӗнерлевсем",
+ "image_quality": "Пахалӑх",
+ "image_resolution": "Виҫе"
+ },
+ "user_usage_stats": "Шута ҫырни усӑ курмалли статистика",
+ "user_usage_stats_description": "Шута ҫырни усӑ курмалли статистикӑна пӑхасси"
+}
diff --git a/web/src/lib/i18n/da.json b/i18n/da.json
similarity index 87%
rename from web/src/lib/i18n/da.json
rename to i18n/da.json
index eb9d99d074..e455c4d567 100644
--- a/web/src/lib/i18n/da.json
+++ b/i18n/da.json
@@ -2,12 +2,12 @@
"about": "Om",
"account": "Konto",
"account_settings": "Kontoindstillinger",
- "acknowledge": "Anerkend",
+ "acknowledge": "Godkend",
"action": "Handling",
"actions": "Handlinger",
"active": "Aktive",
"activity": "Aktivitet",
- "activity_changed": "Aktivitet er {enabled, select, true {aktiveret} other {deaktiveret}}",
+ "activity_changed": "Aktivitet er {aktiveret, valg, sand {aktiveret} andet {deaktiveret}}",
"add": "Tilføj",
"add_a_description": "Tilføj en beskrivelse",
"add_a_location": "Tilføj en placering",
@@ -23,16 +23,23 @@
"add_to": "Tilføj til...",
"add_to_album": "Tilføj til album",
"add_to_shared_album": "Tilføj til delt album",
+ "add_url": "Tilføj URL",
"added_to_archive": "Tilføjet til arkiv",
"added_to_favorites": "Tilføjet til favoritter",
"added_to_favorites_count": "Tilføjet {count, number} til favoritter",
"admin": {
"add_exclusion_pattern_description": "Tilføj udelukkelsesmønstre. Globbing ved hjælp af *, ** og ? understøttes. For at ignorere alle filer i enhver mappe med navnet \"Raw\", brug \"**/Raw/**\". For at ignorere alle filer, der slutter på \".tif\", brug \"**/*.tif\". For at ignorere en absolut sti, brug \"/sti/til/ignoreret/**\".",
+ "asset_offline_description": "Denne eksterne biblioteksressource findes ikke længere på disken og er blevet flyttet til papirkurven. Hvis filen blev flyttet inde i biblioteket, skal du tjekke din tidslinje for den nye tilsvarende ressource. For at gendanne denne ressource skal du sikre, at filstien nedenfor kan tilgås af Immich og scanne biblioteket.",
"authentication_settings": "Godkendelsesindstillinger",
"authentication_settings_description": "Administrer adgangskode, OAuth og andre godkendelsesindstillinger",
"authentication_settings_disable_all": "Er du sikker på at du vil deaktivere alle loginmuligheder? Login vil blive helt deaktiveret.",
"authentication_settings_reenable": "Brug en server-kommando for at genaktivere.",
"background_task_job": "Baggrundsopgaver",
+ "backup_database": "Backup Database",
+ "backup_database_enable_description": "Slå database-backup til",
+ "backup_keep_last_amount": "Mængde af tidligere backups, der skal gemmes",
+ "backup_settings": "Backup-indstillinger",
+ "backup_settings_description": "Administrer backupindstillinger for database",
"check_all": "Tjek Alle",
"cleared_jobs": "Ryddet jobs til: {job}",
"config_set_by_file": "konfigurationen er i øjeblikket indstillet af en konfigurations fil",
@@ -41,9 +48,10 @@
"confirm_email_below": "For at bekræfte, skriv \"{email}\" herunder",
"confirm_reprocess_all_faces": "Er du sikker på, at du vil genbehandle alle ansigter? Dette vil også rydde navngivne personer.",
"confirm_user_password_reset": "Er du sikker på, at du vil nulstille {user}s adgangskode?",
- "crontab_guru": "Crontab Guru",
+ "create_job": "Opret job",
+ "cron_expression": "Cron formel",
+ "cron_expression_description": "Indstil skannings intervallet i cron format. For mere information se: Crontab Guru",
"disable_login": "Deaktiver login",
- "disabled": "",
"duplicate_detection_job_description": "Kør maskinlæring på mediefiler for at opdage lignende billeder. Er afhængig af Smart Søgning",
"exclusion_pattern_description": "Ekskluderingsmønstre lader dig ignorere filer og mapper, når du scanner dit bibliotek. Dette er nyttigt, hvis du har mapper, der indeholder filer, du ikke vil importere, såsom RAW-filer.",
"external_library_created_at": "Eksternt bibliotek (oprettet {date})",
@@ -54,21 +62,20 @@
"failed_job_command": "Kommando {command} mislykkedes for job: {job}",
"force_delete_user_warning": "ADVARSEL: Dette vil øjeblikkeligt fjerne brugeren og alle Billeder/Videoer. Dette kan ikke fortrydes, og filerne kan ikke gendannes.",
"forcing_refresh_library_files": "Tvinger genopfriskning af alle biblioteksfiler",
+ "image_format": "Format",
"image_format_description": "WebP producerer mindre filer end JPEG, men er langsommere at komprimere.",
"image_prefer_embedded_preview": "Foretræk indlejret forhåndsvisning",
"image_prefer_embedded_preview_setting_description": "Brug indlejrede forhåndsvisninger i RAW fotos som input til billedbehandling, når det er tilgængeligt. Dette kan give mere nøjagtige farver for nogle billeder, men kvaliteten af forhåndsvisningen er kameraafhængig, og billedet kan have flere komprimeringsartefakter.",
"image_prefer_wide_gamut": "Foretrækker bred farveskala",
"image_prefer_wide_gamut_setting_description": "Brug Display P3 til miniaturebilleder. Dette bevarer billeder med brede farveskalaers dynamik bedre, men billeder kan komme til at se anderledes ud på gamle enheder med en gammel browserversion. sRGB-billeder bliver beholdt som sRGB for at undgå farveskift.",
- "image_preview_format": "Forhåndsvisningsformat",
- "image_preview_resolution": "Forhåndsvisnings opløsning",
- "image_preview_resolution_description": "Bliver brugt når et enkelt billede betragtes og ved maskinlæring. Højere opløsninger kan bevare flere detaljer, men tager længere tid at indkode, har større filstørrelser, og kan gøre appoplevelsen sløvere.",
+ "image_preview_description": "Mellemstørrelse billede med fjernet metadata, der bruges, når du ser en enkelt mediefil og til machine learning",
+ "image_preview_quality_description": "Kvalitet af forhåndsvisning fra 1-100. Højere er bedre, men producerer større filer og kan reducere apprespons. Valg af en lav værdi kan påvirke kvaliteten af machine learning.",
+ "image_preview_title": "Indstillinger for forhåndsvisning",
"image_quality": "Kvalitet",
- "image_quality_description": "Billedkvalitet fra 1-100. Højere er bedre for kvaliteten, men producerer større filer. Denne indstilling påvirker forhåndsvisningen og miniaturebillederne.",
+ "image_resolution": "Opløsning",
"image_settings": "Billedindstillinger",
"image_settings_description": "Administrer kvaliteten og opløsningen af genererede billeder",
- "image_thumbnail_format": "Miniatureformat",
- "image_thumbnail_resolution": "Miniature opløsning",
- "image_thumbnail_resolution_description": "Bruges ved visning af grupper af billeder (hovedtidslinje, albumvisning osv.). Højere opløsninger kan bevare flere detaljer, men det tager længere tid at kode, har større filstørrelser og kan reducere appens reaktionsevne.",
+ "image_thumbnail_title": "Thumbnail-indstillinger",
"job_concurrency": "{job} samtidighed",
"job_not_concurrency_safe": "Denne opgave er ikke sikker at køre samtidigt med andre.",
"job_settings": "Jobindstillinger",
@@ -77,9 +84,6 @@
"jobs_delayed": "{jobCount, plural, one {# forsinket} other {# forsinkede}}",
"jobs_failed": "{jobCount, plural, one {# fejlet} other {# fejlede}}",
"library_created": "Skabte bibliotek: {library}",
- "library_cron_expression": "Cron-udtryk",
- "library_cron_expression_description": "Sæt skannings interval ved at bruge cron formatet. For mere information se dokumentation her Crontab Guru",
- "library_cron_expression_presets": "Cron-udtryksforudindstillinger",
"library_deleted": "Bibliotek slettet",
"library_import_path_description": "Angiv en mappe, der skal importeres. Denne mappe, inklusive undermapper, vil blive scannet for billeder og videoer.",
"library_scanning": "Periodisk scanning",
@@ -140,6 +144,10 @@
"map_style_description": "URL til en style.json for et korttema",
"metadata_extraction_job": "Udtræk metadata",
"metadata_extraction_job_description": "Udtræk metadataoplysninger fra hvert Billede/Video, såsom GPS og opløsning",
+ "metadata_faces_import_setting": "Aktivér for at importere ansigter",
+ "metadata_faces_import_setting_description": "Importerer ansigter fra billed EXIF-data og forbandt filer",
+ "metadata_settings": "Metadatainstillinger",
+ "metadata_settings_description": "Håndtér metadataindstillinger",
"migration_job": "Migrering",
"migration_job_description": "Migrér miniaturebilleder for aktiver og ansigter til den seneste mappestruktur",
"no_paths_added": "Ingen stier tilføjet",
@@ -148,7 +156,7 @@
"note_cannot_be_changed_later": "BEMÆRK: Dette kan ikke ændres senere!",
"note_unlimited_quota": "Bemærk: Indsæt 0 for uendelig kvote",
"notification_email_from_address": "Fra adressse",
- "notification_email_from_address_description": "Afsenderemailadresse, for eksempel: \"Immich Billedserver {label} is das Speicher-Label des Benutzers",
+ "storage_template_user_label": "{label} is die Speicherpfadbezeichnung des Benutzers",
"system_settings": "Systemeinstellungen",
+ "tag_cleanup_job": "Tags aufräumen",
+ "template_email_available_tags": "In deiner Vorlage kannst du die folgenden Variablen verwenden: {tags}",
+ "template_email_if_empty": "Wenn die Vorlage leer ist, wird die Standard-E-Mail verwendet.",
+ "template_email_invite_album": "E-Mail-Vorlage: Einladung zu Album",
+ "template_email_preview": "Vorschau",
+ "template_email_settings": "E-Mail Vorlagen",
+ "template_email_settings_description": "Benutzerdefinierte E-Mail Benachrichtigungsvorlagen verwalten",
+ "template_email_update_album": "Album Vorlage aktualisieren",
+ "template_email_welcome": "Willkommen bei den E-Mail Vorlagen",
+ "template_settings": "Benachrichtigungsvorlagen",
+ "template_settings_description": "Benutzerdefinierte Vorlagen für Benachrichtigungen verwalten",
"theme_custom_css_settings": "Benutzerdefiniertes CSS",
"theme_custom_css_settings_description": "Mit Cascading Style Sheets (CSS) kann das Design von Immich angepasst werden.",
"theme_settings": "Theme-Einstellungen",
@@ -245,7 +267,6 @@
"these_files_matched_by_checksum": "Diese Dateien wurden anhand ihrer Prüfsummen abgeglichen",
"thumbnail_generation_job": "Miniaturansichten generieren",
"thumbnail_generation_job_description": "Diese Aufgabe erzeugt große, kleine und unscharfe Miniaturansichten für jede einzelne Datei, sowie Miniaturansichten für jede Person",
- "transcode_policy_description": "Richtlinien, wann ein Video transkodiert werden soll. HDR-Videos werden immer transkodiert (außer wenn die Transkodierung deaktiviert ist).",
"transcoding_acceleration_api": "Beschleunigungs-API",
"transcoding_acceleration_api_description": "Die Schnittstelle welche mit dem Gerät interagiert, um die Transkodierung zu beschleunigen. Bei dieser Einstellung handelt es sich um die \"bestmögliche Lösung\": Bei einem Fehler wird auf die Software-Transkodierung zurückgegriffen. Abhängig von der verwendeten Hardware kann VP9 funktionieren oder auch nicht.",
"transcoding_acceleration_nvenc": "NVENC (NVIDIA-GPU erforderlich)",
@@ -271,7 +292,7 @@
"transcoding_hardware_acceleration": "Hardware-Beschleunigung",
"transcoding_hardware_acceleration_description": "Experimentell; viel schneller, aber bei gleicher Bitrate mit geringerer Qualität",
"transcoding_hardware_decoding": "Hardware-Dekodierung",
- "transcoding_hardware_decoding_setting_description": "Nur gültig für NVENC, QSV und RKMPP. Ermöglicht eine Ende-zu-Ende-Beschleunigung, anstatt nur die Codierung zu beschleunigen. Dies funktioniert möglicherweise nicht bei allen Videos.",
+ "transcoding_hardware_decoding_setting_description": "Ermöglicht eine Ende-zu-Ende-Beschleunigung, anstatt nur die Codierung zu beschleunigen. Dies funktioniert möglicherweise nicht bei allen Videos.",
"transcoding_hevc_codec": "HEVC-Codec",
"transcoding_max_b_frames": "Maximale B-Frames",
"transcoding_max_b_frames_description": "Höhere Werte verbessern die Komprimierungseffizienz, verlangsamen aber die Kodierung. Ist möglicherweise nicht mit der Hardware-Beschleunigung älterer Geräte kompatibel. 0 deaktiviert die B-Frames, während -1 diesen Wert automatisch setzt.",
@@ -297,8 +318,6 @@
"transcoding_threads_description": "Höhere Werte führen zu einer schnelleren Codierung, lassen dem Server aber weniger Spielraum für die Verarbeitung anderer Aufgaben, solange dies aktiv ist. Dieser Wert sollte nicht höher sein als die Anzahl der CPU-Kerne. Nutzt die maximale Auslastung, wenn der Wert auf 0 gesetzt ist.",
"transcoding_tone_mapping": "Farbton-Mapping",
"transcoding_tone_mapping_description": "Versucht, das Aussehen von HDR-Videos bei der Konvertierung in SDR beizubehalten. Jeder Algorithmus geht unterschiedliche Kompromisse bei Farbe, Details und Helligkeit ein. Hable bewahrt Details, Mobius bewahrt die Farbe und Reinhard bewahrt die Helligkeit.",
- "transcoding_tone_mapping_npl": "Farbton-Mapping NPL",
- "transcoding_tone_mapping_npl_description": "Die Farben werden so angepasst, dass sie für einen Bildschirm mit entsprechender Helligkeit normal aussehen. Entgegen der Annahme, dass niedrigere Werte die Helligkeit des Videos erhöhen und umgekehrt, wird die Helligkeit des Bildschirms ausgeglichen. Mit 0 wird dieser Wert automatisch eingestellt.",
"transcoding_transcode_policy": "Transcodierungsrichtlinie",
"transcoding_transcode_policy_description": "Richtlinie, wann ein Video transkodiert werden soll. HDR-Videos werden immer transkodiert (außer wenn die Transkodierung deaktiviert ist).",
"transcoding_two_pass_encoding": "Two-Pass Codierung",
@@ -311,7 +330,8 @@
"trash_settings": "Papierkorb-Einstellungen",
"trash_settings_description": "Papierkorb-Einstellungen verwalten",
"untracked_files": "Unverfolgte Dateien",
- "untracked_files_description": "Diese Dateien werden nicht von der Application getrackt. Sie können das Ergebnis fehlgeschlagener Verschiebungen, unterbrochener Uploads oder aufgrund eines Fehlers sein",
+ "untracked_files_description": "Diese Dateien werden nicht von der Anwendung getrackt. Sie können das Ergebnis fehlgeschlagener Verschiebungen, unterbrochener Uploads oder aufgrund eines Fehlers sein",
+ "user_cleanup_job": "Benutzer aufräumen",
"user_delete_delay": "Das Konto und die Dateien von {user} werden in {delay, plural, one {einem Tag} other {# Tagen}} für eine permanente Löschung geplant.",
"user_delete_delay_settings": "Verzögerung für das Löschen von Benutzern",
"user_delete_delay_settings_description": "Gibt die Anzahl der Tage bis zur endgültigen Löschung eines Kontos und seiner Dateien an. Der Benutzerlöschauftrag wird täglich um Mitternacht ausgeführt, um zu überprüfen, ob Nutzer zur Löschung bereit sind. Änderungen an dieser Einstellung werden erst bei der nächsten Ausführung berücksichtigt.",
@@ -343,12 +363,12 @@
"album_added_notification_setting_description": "Erhalte eine E-Mail-Benachrichtigung, wenn du zu einem freigegebenen Album hinzugefügt wurdest",
"album_cover_updated": "Album-Cover aktualisiert",
"album_delete_confirmation": "Bist du sicher, dass du das Album {album} löschen willst?",
- "album_delete_confirmation_description": "Wenn dieses Album geteilt wurde, können andere Benutzer nicht mehr darauf zugreifen.",
+ "album_delete_confirmation_description": "Falls dieses Album geteilt wurde, können andere Benutzer nicht mehr darauf zugreifen.",
"album_info_updated": "Album-Infos aktualisiert",
"album_leave": "Album verlassen?",
"album_leave_confirmation": "Bist du sicher, dass du das Album {album} verlassen willst?",
- "album_name": "Album Name",
- "album_options": "Album Optionen",
+ "album_name": "Albumname",
+ "album_options": "Albumoptionen",
"album_remove_user": "Nutzer entfernen?",
"album_remove_user_confirmation": "Bist du sicher, dass du {user} entfernen willst?",
"album_share_no_users": "Es sieht so aus, als hättest du dieses Album mit allen Benutzern geteilt oder du hast keine Benutzer, mit denen du teilen kannst.",
@@ -356,7 +376,7 @@
"album_updated_setting_description": "Erhalte eine E-Mail-Benachrichtigung, wenn ein freigegebenes Album neue Dateien enthält",
"album_user_left": "{album} verlassen",
"album_user_removed": "{user} entfernt",
- "album_with_link_access": "Lass jeden mit dem Link Fotos und Personen in diesem Album sehen.",
+ "album_with_link_access": "Lass jeden mit dem Link die Fotos und Personen in diesem Album sehen.",
"albums": "Alben",
"albums_count": "{count, plural, one {{count, number} Album} other {{count, number} Alben}}",
"all": "Alle",
@@ -378,8 +398,7 @@
"archive_or_unarchive_photo": "Foto archivieren bzw. Archivierung aufheben",
"archive_size": "Archivgröße",
"archive_size_description": "Archivgröße für Downloads konfigurieren (in GiB)",
- "archived": "Archiviert",
- "archived_count": "{count, plural, other {# Archiviert}}",
+ "archived_count": "{count, plural, other {# archiviert}}",
"are_these_the_same_person": "Ist das dieselbe Person?",
"are_you_sure_to_do_this": "Bist du sicher, dass du das tun willst?",
"asset_added_to_album": "Zum Album hinzugefügt",
@@ -389,7 +408,7 @@
"asset_has_unassigned_faces": "Datei hat nicht zugewiesene Gesichter",
"asset_hashing": "Berechnung des Hashwerts...",
"asset_offline": "Datei offline",
- "asset_offline_description": "Diese Datei ist nicht erreichbar. Immich kann nicht auf ihren Speicherort zugreifen. Bitte stelle sicher, dass die Datei verfügbar ist und scanne die Bibliothek erneut.",
+ "asset_offline_description": "Diese externe Datei ist nicht mehr auf dem Datenträger vorhanden. Bitte wende dich an deinen Immich-Administrator, um Hilfe zu erhalten.",
"asset_skipped": "Übersprungen",
"asset_skipped_in_trash": "Im Papierkorb",
"asset_uploaded": "Hochgeladen",
@@ -397,28 +416,28 @@
"assets": "Dateien",
"assets_added_count": "{count, plural, one {# Datei} other {# Dateien}} hinzugefügt",
"assets_added_to_album_count": "{count, plural, one {# Datei} other {# Dateien}} zum Album hinzugefügt",
- "assets_added_to_name_count": "{count, plural, one {# Element} other {# Elemente}} zu {hasName, select, true {{name}} other {neuen Album}} hinzugefügt",
+ "assets_added_to_name_count": "{count, plural, one {# Element} other {# Elemente}} zu {hasName, select, true {{name}} other {neuem Album}} hinzugefügt",
"assets_count": "{count, plural, one {# Datei} other {# Dateien}}",
- "assets_moved_to_trash": "{count, plural, one {# Datei} other {# Dateien}} in den Papierkorb verschoben",
"assets_moved_to_trash_count": "{count, plural, one {# Datei} other {# Dateien}} in den Papierkorb verschoben",
- "assets_permanently_deleted_count": "{count, plural, one {# Datei} other {# Dateien}} dauerhaft gelöscht",
+ "assets_permanently_deleted_count": "{count, plural, one {# Datei} other {# Dateien}} endgültig gelöscht",
"assets_removed_count": "{count, plural, one {# Datei} other {# Dateien}} entfernt",
- "assets_restore_confirmation": "Bist du sicher, dass du alle Dateien aus dem Papierkorb wiederherstellen willst? Diese Aktion kann nicht rückgängig gemacht werden!",
+ "assets_restore_confirmation": "Bist du sicher, dass du alle Dateien aus dem Papierkorb wiederherstellen willst? Diese Aktion kann nicht rückgängig gemacht werden! Beachte, dass Offline-Dateien auf diese Weise nicht wiederhergestellt werden können.",
"assets_restored_count": "{count, plural, one {# Datei} other {# Dateien}} wiederhergestellt",
"assets_trashed_count": "{count, plural, one {# Datei} other {# Dateien}} in den Papierkorb verschoben",
"assets_were_part_of_album_count": "{count, plural, one {# Datei ist} other {# Dateien sind}} bereits im Album vorhanden",
"authorized_devices": "Verwendete Geräte",
"back": "Zurück",
"back_close_deselect": "Zurück, Schließen oder Abwählen",
- "backward": "Zurück",
+ "backward": "Rückwärts",
"birthdate_saved": "Geburtsdatum erfolgreich gespeichert",
"birthdate_set_description": "Das Geburtsdatum wird verwendet, um das Alter dieser Person zum Zeitpunkt eines Fotos zu berechnen.",
"blurred_background": "Unscharfer Hintergrund",
+ "bugs_and_feature_requests": "Fehler & Verbesserungsvorschläge",
"build": "Build",
"build_image": "Build Abbild",
- "bulk_delete_duplicates_confirmation": "Bist du sicher, dass du {count, plural, one {# duplizierte Datei} other {# duplizierte Dateien}} gemeinsam löschen möchtest? Dabei wird die größte Datei jeder Gruppe behalten und alle anderen Duplikate dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden!",
+ "bulk_delete_duplicates_confirmation": "Bist du sicher, dass du {count, plural, one {# duplizierte Datei} other {# duplizierte Dateien gemeinsam}} löschen möchtest? Dabei wird die größte Datei jeder Gruppe behalten und alle anderen Duplikate endgültig gelöscht. Diese Aktion kann nicht rückgängig gemacht werden!",
"bulk_keep_duplicates_confirmation": "Bist du sicher, dass du {count, plural, one {# duplizierte Datei} other {# duplizierte Dateien}} behalten möchtest? Dies wird alle Duplikat-Gruppen auflösen ohne etwas zu löschen.",
- "bulk_trash_duplicates_confirmation": "Bist du sicher, dass du {count, plural, one {# duplizierte Datei} other {# duplizierte Dateien}} gemeinsam in den Papierkorb verschieben möchtest? Dies wird die größte Datei jeder Gruppe behalten und alle anderen Duplikate in den Papierkorb verschieben.",
+ "bulk_trash_duplicates_confirmation": "Bist du sicher, dass du {count, plural, one {# duplizierte Datei} other {# duplizierte Dateien gemeinsam}} in den Papierkorb verschieben möchtest? Dies wird die größte Datei jeder Gruppe behalten und alle anderen Duplikate in den Papierkorb verschieben.",
"buy": "Immich erwerben",
"camera": "Kamera",
"camera_brand": "Kamera-Marke",
@@ -428,16 +447,12 @@
"cannot_merge_people": "Personen können nicht zusammengeführt werden",
"cannot_undo_this_action": "Diese Aktion kann nicht rückgängig gemacht werden!",
"cannot_update_the_description": "Beschreibung kann nicht aktualisiert werden",
- "cant_apply_changes": "Änderungen können nicht übernommen werden",
- "cant_get_faces": "Es konnten keine Gesichter festgestellt werden",
- "cant_search_people": "Es konnte nicht nach Personen gesucht werden",
- "cant_search_places": "Es konnte nicht nach Orten gesucht werden",
"change_date": "Datum ändern",
"change_expiration_time": "Verfallszeitpunkt ändern",
"change_location": "Ort ändern",
"change_name": "Name ändern",
"change_name_successfully": "Name wurde erfolgreich geändert",
- "change_password": "Passwort Ändern",
+ "change_password": "Passwort ändern",
"change_password_description": "Dies ist entweder das erste Mal, dass du dich im System anmeldest, oder es wurde eine Anfrage zur Änderung deines Passworts gestellt. Bitte gib unten dein neues Passwort ein.",
"change_your_password": "Ändere dein Passwort",
"changed_visibility_successfully": "Die Sichtbarkeit wurde erfolgreich geändert",
@@ -453,22 +468,23 @@
"clockwise": "Im Uhrzeigersinn",
"close": "Schließen",
"collapse": "Zusammenklappen",
- "collapse_all": "Alles aufklappen",
+ "collapse_all": "Alle zusammenklappen",
"color": "Farbe",
"color_theme": "Farb-Theme",
"comment_deleted": "Kommentar gelöscht",
- "comment_options": "Kommentar-Optionen",
+ "comment_options": "Kommentaroptionen",
"comments_and_likes": "Kommentare & Likes",
"comments_are_disabled": "Kommentare sind deaktiviert",
"confirm": "Bestätigen",
"confirm_admin_password": "Administrator Passwort bestätigen",
"confirm_delete_shared_link": "Bist du sicher, dass du diesen geteilten Link löschen willst?",
+ "confirm_keep_this_delete_others": "Alle anderen Dateien im Stapel bis auf diese werden gelöscht. Bist du sicher, dass du fortfahren möchten?",
"confirm_password": "Passwort bestätigen",
"contain": "Vollständig",
"context": "Kontext",
"continue": "Fortsetzen",
"copied_image_to_clipboard": "Das Bild wurde in die Zwischenablage kopiert.",
- "copied_to_clipboard": "In Zwischenablage kopiert!",
+ "copied_to_clipboard": "In die Zwischenablage kopiert!",
"copy_error": "Kopier-Fehler",
"copy_file_path": "Dateipfad kopieren",
"copy_image": "Bild kopieren",
@@ -489,7 +505,7 @@
"create_new_person_hint": "Ausgewählte Dateien einer neuen Person zuweisen",
"create_new_user": "Neuen Nutzer erstellen",
"create_tag": "Tag erstellen",
- "create_tag_description": "Erstelle einen neuen Tag. Für verschachtelte Tags, gib den gesamten Pfad inklusive Slash an.",
+ "create_tag_description": "Erstelle einen neuen Tag. Für verschachtelte Tags, gib den gesamten Pfad inklusive Schrägstrich an.",
"create_user": "Nutzer erstellen",
"created": "Erstellt",
"current_device": "Aktuelles Gerät",
@@ -508,47 +524,44 @@
"delete": "Löschen",
"delete_album": "Album löschen",
"delete_api_key_prompt": "Bist du sicher, dass du diesen API-Schlüssel löschen willst?",
- "delete_duplicates_confirmation": "Bist du sicher, dass du diese Duplikate dauerhaft löschen willst?",
+ "delete_duplicates_confirmation": "Bist du sicher, dass du diese Duplikate endgültig löschen willst?",
"delete_key": "Schlüssel löschen",
"delete_library": "Bibliothek löschen",
"delete_link": "Link löschen",
+ "delete_others": "Andere löschen",
"delete_shared_link": "geteilten Link löschen",
"delete_tag": "Tag löschen",
"delete_tag_confirmation_prompt": "Bist du sicher, dass der Tag {tagName} gelöscht werden soll?",
"delete_user": "Nutzer löschen",
"deleted_shared_link": "Geteilten Link gelöscht",
+ "deletes_missing_assets": "Löscht Dateien, die auf der Festplatte fehlen",
"description": "Beschreibung",
"details": "Details",
"direction": "Richtung",
"disabled": "Deaktiviert",
"disallow_edits": "Bearbeitungen verbieten",
+ "discord": "Discord",
"discover": "Entdecken",
"dismiss_all_errors": "Alle Fehler ignorieren",
"dismiss_error": "Fehler ignorieren",
"display_options": "Anzeigeoptionen",
"display_order": "Anzeigereihenfolge",
"display_original_photos": "Originale Fotos anzeigen",
- "display_original_photos_setting_description": "Bei der Anzeige eines Bildes wird bevorzugt das Originalfoto statt der Miniaturansicht angezeigt, sofern das Original webkompatibel ist. Dies kann zu einer langsameren Ladezeit der Fotos führen.",
+ "display_original_photos_setting_description": "Bei der Anzeige eines Bildes wird bevorzugt das Originalfoto statt der Miniaturansicht angezeigt, sofern das Original webkompatibel ist. Dies kann zu einer längeren Ladezeit der Fotos führen.",
"do_not_show_again": "Diese Nachricht nicht erneut anzeigen",
- "done": "Erledigt",
- "download": "Download",
+ "documentation": "Dokumentation",
+ "done": "Fertig",
+ "download": "Herunterladen",
"download_include_embedded_motion_videos": "Eingebettete Videos",
"download_include_embedded_motion_videos_description": "Videos, die in Bewegungsfotos eingebettet sind, als separate Datei einfügen",
"download_settings": "Download",
- "download_settings_description": "Einstellungen für den Dateidownload verwalten",
- "downloading": "Downloaden",
+ "download_settings_description": "Einstellungen für das Herunterladen von Dateien verwalten",
+ "downloading": "Herunterladen",
"downloading_asset_filename": "Datei {filename} wird heruntergeladen",
"drop_files_to_upload": "Lade Dateien hoch, indem du sie hierhin ziehst",
"duplicates": "Duplikate",
"duplicates_description": "Löse jede Gruppe auf, indem du angibst, welche, wenn überhaupt, Duplikate sind",
"duration": "Dauer",
- "durations": {
- "days": "{days, plural, one {Tag} other {{days, number} Tage}}",
- "hours": "{hours, plural, one {eine Stunde} other {{hours, number} Stunden}}",
- "minutes": "{minutes, plural, one {eine minute} other {{minutes, number} minuten}}",
- "months": "{months, plural, one {ein Monat} other {{months, number} Monate}}",
- "years": "{years, plural, one {ein Jahr} other {{years, number} Jahre}}"
- },
"edit": "Bearbeiten",
"edit_album": "Album bearbeiten",
"edit_avatar": "Avatar bearbeiten",
@@ -568,15 +581,13 @@
"edit_user": "Nutzer bearbeiten",
"edited": "Bearbeitet",
"editor": "Bearbeiter",
- "editor_close_without_save_prompt": "Diese Änderungen werden nicht gespeichert",
+ "editor_close_without_save_prompt": "Die Änderungen werden nicht gespeichert",
"editor_close_without_save_title": "Editor schließen?",
"editor_crop_tool_h2_aspect_ratios": "Seitenverhältnisse",
- "editor_crop_tool_h2_rotation": "Rotation",
+ "editor_crop_tool_h2_rotation": "Drehung",
"email": "E-Mail",
- "empty": "Leer",
- "empty_album": "Leeres Album",
"empty_trash": "Papierkorb leeren",
- "empty_trash_confirmation": "Bist du sicher, dass du den Papierkorb leeren willst?\nDies entfernt alle Dateien im Papierkorb permanent aus Immich und kann nicht rückgängig gemacht werden!",
+ "empty_trash_confirmation": "Bist du sicher, dass du den Papierkorb leeren willst?\nDies entfernt alle Dateien im Papierkorb endgültig aus Immich und kann nicht rückgängig gemacht werden!",
"enable": "Aktivieren",
"enabled": "Aktiviert",
"end_date": "Enddatum",
@@ -608,6 +619,7 @@
"failed_to_create_shared_link": "Geteilter Link konnte nicht erstellt werden",
"failed_to_edit_shared_link": "Geteilter Link konnte nicht bearbeitet werden",
"failed_to_get_people": "Personen konnten nicht abgerufen werden",
+ "failed_to_keep_this_delete_others": "Fehler beim Löschen der anderen Dateien",
"failed_to_load_asset": "Fehler beim Laden der Datei",
"failed_to_load_assets": "Fehler beim Laden der Dateien",
"failed_to_load_people": "Fehler beim Laden von Personen",
@@ -618,7 +630,7 @@
"incorrect_email_or_password": "Ungültige E-Mail oder Passwort",
"paths_validation_failed": "{paths, plural, one {# Pfad konnte} other {# Pfade konnten}} nicht validiert werden",
"profile_picture_transparent_pixels": "Profilbilder dürfen keine transparenten Pixel haben. Bitte zoome heran und/oder verschiebe das Bild.",
- "quota_higher_than_disk_size": "Dein festgelegtes Kontingent ist grösser als der verfügbare Speicher",
+ "quota_higher_than_disk_size": "Dein festgelegtes Kontingent ist größer als der verfügbare Speicher",
"repair_unable_to_check_items": "{count, select, one {Eintrag konnte} other {Einträge konnten}} nicht überprüft werden",
"unable_to_add_album_users": "Benutzer konnten nicht zum Album hinzugefügt werden",
"unable_to_add_assets_to_shared_link": "Datei konnte nicht zum geteilten Link hinzugefügt werden",
@@ -635,12 +647,10 @@
"unable_to_change_location": "Ort kann nicht verändert werden",
"unable_to_change_password": "Passwort konnte nicht geändert werden",
"unable_to_change_visibility": "Sichtbarkeit von {count, plural, one {einer Person} other {# Personen}} konnte nicht geändert werden",
- "unable_to_check_item": "Objekt kann nicht überprüft werden",
- "unable_to_check_items": "Objekte konnten nicht überprüft werden",
"unable_to_complete_oauth_login": "OAuth-Anmeldung konnte nicht abgeschlossen werden",
"unable_to_connect": "Verbindung konnte nicht hergestellt werden",
"unable_to_connect_to_server": "Verbindung zum Server konnte nicht hergestellt werden",
- "unable_to_copy_to_clipboard": "Konnte nicht in die Zwischenablage kopieren, stelle sicher, dass du per https auf die Seite zugreiffst",
+ "unable_to_copy_to_clipboard": "Konnte nicht in die Zwischenablage kopieren, stelle sicher, dass du per https auf die Seite zugreifst",
"unable_to_create_admin_account": "Administratorkonto konnte nicht erstellt werden",
"unable_to_create_api_key": "Es konnte kein API-Schlüssel erstellt werden",
"unable_to_create_library": "Bibliothek konnte nicht erstellt werden",
@@ -661,7 +671,7 @@
"unable_to_get_comments_number": "Anzahl der Kommentare konnte nicht abgerufen werden",
"unable_to_get_shared_link": "Fehler beim Abrufen des Freigabelinks",
"unable_to_hide_person": "Person kann nicht versteckt werden",
- "unable_to_link_motion_video": "Bewegungsvideo kann nicht verlinkt werden",
+ "unable_to_link_motion_video": "Bewegungsvideo kann nicht verknüpft werden",
"unable_to_link_oauth_account": "OAuth-Konto kann nicht verknüpft werden",
"unable_to_load_album": "Album kann nicht geladen werden",
"unable_to_load_asset_activity": "Foto-Aktivität konnte nicht geladen werden",
@@ -677,12 +687,10 @@
"unable_to_remove_album_users": "Mitglieder der Alben können nicht entfernt werden",
"unable_to_remove_api_key": "API-Schlüssel konnte nicht entfernt werden",
"unable_to_remove_assets_from_shared_link": "Dateien konnten nicht von geteiltem Link entfernt werden",
- "unable_to_remove_comment": "Kommentar kann nicht entfernt werden",
+ "unable_to_remove_deleted_assets": "Offline-Dateien konnten nicht entfernt werden",
"unable_to_remove_library": "Bibliothek kann nicht entfernt werden",
- "unable_to_remove_offline_files": "Offline-Dateien konnten nicht entfernt werden",
"unable_to_remove_partner": "Partner kann nicht entfernt werden",
"unable_to_remove_reaction": "Reaktion kann nicht entfernt werden",
- "unable_to_remove_user": "Benutzer kann nicht entfernt werden",
"unable_to_repair_items": "Objekte können nicht repariert werden",
"unable_to_reset_password": "Passwort kann nicht zurückgesetzt werden",
"unable_to_resolve_duplicate": "Duplikate können nicht aufgelöst werden",
@@ -699,10 +707,10 @@
"unable_to_scan_library": "Bibliothek konnte nicht gescannt werden",
"unable_to_set_feature_photo": "Hauptfoto konnte nicht festgelegt werden",
"unable_to_set_profile_picture": "Profilbild konnte nicht gesetzt werden",
- "unable_to_submit_job": "Auftrag konnte nicht übermittelt werden",
+ "unable_to_submit_job": "Aufgabe konnte nicht eingereicht werden",
"unable_to_trash_asset": "Objekte konnten nicht gelöscht werden",
"unable_to_unlink_account": "Die Verknüpfung des Kontos kann nicht aufgehoben werden",
- "unable_to_unlink_motion_video": "Verlinkung zum Bewegungsvideo kann nicht aufgehoben werden",
+ "unable_to_unlink_motion_video": "Verknüpfung zum Bewegungsvideo kann nicht aufgehoben werden",
"unable_to_update_album_cover": "Album-Cover konnte nicht aktualisiert werden",
"unable_to_update_album_info": "Album-Info konnte nicht aktualisiert werden",
"unable_to_update_library": "Die Bibliothek konnte nicht aktualisiert werden",
@@ -712,16 +720,12 @@
"unable_to_update_user": "Der Nutzer konnte nicht aktualisiert werden",
"unable_to_upload_file": "Datei konnte nicht hochgeladen werden"
},
- "every_day_at_onepm": "Täglich 13.00 Uhr",
- "every_night_at_midnight": "Täglich um Mitternacht",
- "every_night_at_twoam": "Jede Nacht um 2.00 Uhr",
- "every_six_hours": "Alle 6 Stunden",
"exif": "EXIF",
"exit_slideshow": "Diashow beenden",
- "expand_all": "Alle erweitern",
+ "expand_all": "Alle aufklappen",
"expire_after": "Verfällt nach",
"expired": "Verfallen",
- "expires_date": "Läuft am {date} ab",
+ "expires_date": "Läuft {date} ab",
"explore": "Erkunden",
"explorer": "Datei-Explorer",
"export": "Exportieren",
@@ -730,33 +734,28 @@
"external": "Extern",
"external_libraries": "Externe Bibliotheken",
"face_unassigned": "Nicht zugewiesen",
- "failed_to_get_people": "Personen konnten nicht ermittelt werden",
+ "failed_to_load_assets": "Laden der Assets fehlgeschlagen",
"favorite": "Favorit",
"favorite_or_unfavorite_photo": "Favorisiertes oder nicht favorisiertes Foto",
"favorites": "Favoriten",
- "feature": "Funktion",
"feature_photo_updated": "Profilbild aktualisiert",
- "featurecollection": "Funktionssammlung",
"features": "Funktionen",
"features_setting_description": "Funktionen der App verwalten",
"file_name": "Dateiname",
"file_name_or_extension": "Dateiname oder -erweiterung",
"filename": "Dateiname",
- "files": "",
"filetype": "Dateityp",
"filter_people": "Personen filtern",
"find_them_fast": "Finde sie schneller mit der Suche nach Namen",
"fix_incorrect_match": "Fehlerhafte Übereinstimmung beheben",
"folders": "Ordner",
"folders_feature_description": "Durchsuchen der Ordneransicht für Fotos und Videos im Dateisystem",
- "force_re-scan_library_files": "Erzwingen des erneuten Scannens aller Bibliotheksdateien",
- "forward": "Weiterleiten",
+ "forward": "Vorwärts",
"general": "Allgemein",
- "get_help": "Erhalte Hilfe",
+ "get_help": "Hilfe erhalten",
"getting_started": "Erste Schritte",
"go_back": "Zurück",
"go_to_search": "Zur Suche gehen",
- "go_to_share_page": "Zur Freigabeseite gehen",
"group_albums_by": "Alben gruppieren nach...",
"group_no": "Keine Gruppierung",
"group_owner": "Gruppierung nach Besitzer",
@@ -782,12 +781,8 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Bild}} aufgenommen in {city}, {country} mit {person1} und {person2} am {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Bild}} aufgenommen in {city}, {country} mit {person1}, {person2}, und {person3} am {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Bild}} aufgenommen in {city}, {country} mit {person1}, {person2}, und {additionalCount, number} anderen am {date}",
- "image_alt_text_people": "{count, plural, =1 {mit {person1}} =2 {mit {person1} und {person2}} =3 {mit {person1}, {person2} und {person3}} other {mit {person1}, {person2} und {others, number} anderen}}",
- "image_alt_text_place": "in {city}, {country}",
- "image_taken": "{isVideo, select, true {Video aufgenommen} other {Bild aufgenommen}}",
- "img": "Img",
"immich_logo": "Immich-Logo",
- "immich_web_interface": "Immich Webschnittstelle",
+ "immich_web_interface": "Immich-Web-Oberfläche",
"import_from_json": "Aus JSON importieren",
"import_path": "Importpfad",
"in_albums": "In {count, plural, one {# Album} other {# Alben}}",
@@ -798,18 +793,19 @@
"individual_share": "Individuelle Freigabe",
"info": "Info",
"interval": {
- "day_at_onepm": "Täglich 13.00 Uhr",
+ "day_at_onepm": "Täglich um 13:00 Uhr",
"hours": "{hours, plural, one {Jede Stunde} other {Alle {hours, number} Stunden}}",
"night_at_midnight": "Täglich um Mitternacht",
- "night_at_twoam": "Täglich Nachts um 2.00 Uhr"
+ "night_at_twoam": "Täglich nachts um 2:00 Uhr"
},
"invite_people": "Personen einladen",
"invite_to_album": "Zum Album einladen",
"items_count": "{count, plural, one {# Eintrag} other {# Einträge}}",
- "job_settings_description": "Parallelität von Jobs verwalten",
"jobs": "Aufgaben",
"keep": "Behalten",
"keep_all": "Alle behalten",
+ "keep_this_delete_others": "Dieses behalten, andere löschen",
+ "kept_this_deleted_others": "Diese Datei behalten und {count, plural, one {# Datei} other {# Dateien}} gelöscht",
"keyboard_shortcuts": "Tastenkürzel",
"language": "Sprache",
"language_setting_description": "Wähle deine bevorzugte Sprache",
@@ -821,34 +817,9 @@
"level": "Level",
"library": "Bibliothek",
"library_options": "Bibliotheksoptionen",
- "license_account_info": "Dein Account ist lizensiert",
- "license_activated_subtitle": "Wir danken dir für die Unterstützung von Immich und Open-Source-Software",
- "license_activated_title": "Deine Lizenz wurde erfolgreich aktiviert",
- "license_button_activate": "Aktivieren",
- "license_button_buy": "Kaufen",
- "license_button_buy_license": "Lizenz erwerben",
- "license_button_select": "Auswählen",
- "license_failed_activation": "Die Aktivierung der Lizenz ist fehlgeschlagen. Bitte überprüfe deine E-Mail, um den korrekten Lizenzschlüssel zu finden!",
- "license_individual_description_1": "1 Lizenz pro Benutzer auf einem beliebigen Server",
- "license_individual_title": "Individuelle Lizenz",
- "license_info_licensed": "Lizensiert",
- "license_info_unlicensed": "Unlizensiert",
- "license_input_suggestion": "Hast du bereits eine Lizenz? Gib den Key unten ein",
- "license_license_subtitle": "Erwerbe eine Lizenz zur Unterstützung von Immich",
- "license_license_title": "LIZENZ",
- "license_lifetime_description": "Lebenslange Lizenz",
- "license_per_server": "Pro Server",
- "license_per_user": "Pro Nutzer",
- "license_server_description_1": "1 Lizenz pro Server",
- "license_server_description_2": "Lizenz für alle Nutzer des Servers",
- "license_server_title": "Serverlizenz",
- "license_trial_info_1": "Du verwendest eine unlizenzierte Version von Immich",
- "license_trial_info_2": "Du benutzt Immich seit ungefähr",
- "license_trial_info_3": "{accountAge, plural, one {# Tag} other {# Tage}}",
- "license_trial_info_4": "Bitte erwäge den Kauf einer Lizenz, um die kontinuierliche Weiterentwicklung des Dienstes zu unterstützen",
"light": "Hell",
"like_deleted": "Like gelöscht",
- "link_motion_video": "Link Bewegungsvideo",
+ "link_motion_video": "Bewegungsvideo verknüpfen",
"link_options": "Link-Optionen",
"link_to_oauth": "Link zu OAuth",
"linked_oauth_account": "Verknüpftes OAuth-Konto",
@@ -867,6 +838,7 @@
"look": "Erscheinungsbild",
"loop_videos": "Loop-Videos",
"loop_videos_description": "Aktiviere diese Option, um eine automatische Videoschleife in der Detailansicht zu erstellen.",
+ "main_branch_warning": "Du benutzt eine Entwicklungsversion. Wir empfehlen dringend, eine Release-Version zu verwenden!",
"make": "Marke",
"manage_shared_links": "Freigegebene Links verwalten",
"manage_sharing_with_partners": "Gemeinsame Nutzung mit Partnern verwalten",
@@ -876,8 +848,8 @@
"manage_your_devices": "Deine eingeloggten Geräte verwalten",
"manage_your_oauth_connection": "Deine OAuth-Verbindung verwalten",
"map": "Karte",
- "map_marker_for_images": "Kartemarkierung für Bilder, die in {city}, {country} aufgenommen wurden",
- "map_marker_with_image": "Kartenmarker mit Bild",
+ "map_marker_for_images": "Kartenmarkierung für Bilder, die in {city}, {country} aufgenommen wurden",
+ "map_marker_with_image": "Kartenmarkierung mit Bild",
"map_settings": "Karteneinstellungen",
"matches": "Treffer",
"media_type": "Medientyp",
@@ -918,9 +890,9 @@
"no_albums_yet": "Es sieht so aus, als hättest du noch keine Alben.",
"no_archived_assets_message": "Archiviere Fotos und Videos, um sie aus deiner Fotoansicht zu entfernen",
"no_assets_message": "KLICKE, UM DEIN ERSTES FOTO HOCHZULADEN",
- "no_duplicates_found": "Keine Duplikate wurden gefunden.",
- "no_exif_info_available": "Keine Exif-Informationen vorhanden",
- "no_explore_results_message": "Lade weitere Fotos hoch, um deine Sammlung zu vergrößern.",
+ "no_duplicates_found": "Es wurden keine Duplikate gefunden.",
+ "no_exif_info_available": "Keine EXIF-Informationen vorhanden",
+ "no_explore_results_message": "Lade weitere Fotos hoch, um deine Sammlung zu erkunden.",
"no_favorites_message": "Füge Favoriten hinzu, um deine besten Bilder und Videos schnell zu finden",
"no_libraries_message": "Eine externe Bibliothek erstellen, um deine Fotos und Videos anzusehen",
"no_name": "Kein Name",
@@ -929,13 +901,14 @@
"no_results_description": "Versuche es mit einem Synonym oder einem allgemeineren Stichwort",
"no_shared_albums_message": "Erstelle ein Album, um Fotos und Videos mit Personen in deinem Netzwerk zu teilen",
"not_in_any_album": "In keinem Album",
- "note_apply_storage_label_to_previously_uploaded assets": "Hinweis: Um ein Storage-Label zu verwenden, starte den",
+ "note_apply_storage_label_to_previously_uploaded assets": "Hinweis: Um eine Speicherpfadbezeichnung anzuwenden, starte den",
"note_unlimited_quota": "Hinweis: Verwende 0 für ein unlimitiertes Kontingent",
"notes": "Notizen",
"notification_toggle_setting_description": "E-Mail-Benachrichtigungen aktivieren",
"notifications": "Benachrichtigungen",
"notifications_setting_description": "Benachrichtigungen verwalten",
"oauth": "OAuth",
+ "official_immich_resources": "Offizielle Immich Quellen",
"offline": "Offline",
"offline_paths": "Offline-Pfade",
"offline_paths_description": "Diese Ergebnisse können auf das manuelle Löschen von Dateien zurückzuführen sein, die nicht Teil einer externen Bibliothek sind.",
@@ -948,7 +921,6 @@
"onboarding_welcome_user": "Willkommen, {user}",
"online": "Online",
"only_favorites": "Nur Favoriten",
- "only_refreshes_modified_files": "Nur geänderte Dateien aktualisieren",
"open_in_map_view": "In Kartenansicht öffnen",
"open_in_openstreetmap": "In OpenStreetMap öffnen",
"open_the_search_filters": "Die Suchfilter öffnen",
@@ -957,7 +929,7 @@
"organize_your_library": "Organisiere deine Bibliothek",
"original": "Original",
"other": "Sonstiges",
- "other_devices": "Sonstige Geräte",
+ "other_devices": "Andere Geräte",
"other_variables": "Sonstige Variablen",
"owned": "Eigenes",
"owner": "Besitzer",
@@ -984,17 +956,15 @@
"pending": "Ausstehend",
"people": "Personen",
"people_edits_count": "{count, plural, one {# Person} other {# Personen}} bearbeitet",
- "people_feature_description": "Durchsuchen von Fotos und Videos nach Personen gruppiert",
+ "people_feature_description": "Fotos und Videos nach Personen gruppiert durchsuchen",
"people_sidebar_description": "Eine Verknüpfung zu Personen in der Seitenleiste anzeigen",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Warnung vor endgültiger Löschung",
- "permanent_deletion_warning_setting_description": "Anzeige einer Warnung beim permanenten Löschen von Objekten",
- "permanently_delete": "Dauerhaft löschen",
- "permanently_delete_assets_count": "{count, plural, one {Datei} other {Dateien}} dauerhaft gelöscht",
- "permanently_delete_assets_prompt": "Bist du sicher, dass {count, plural, one {diese Datei} other {diese # Dateien}} dauerhaft gelöscht werden soll? Dadurch werden diese auch aus deinen Alben entfernt.",
- "permanently_deleted_asset": "Dauerhaft gelöschtes Objekt",
- "permanently_deleted_assets": "{count, plural, one {# Objekt} other {# Objekte}} dauerhaft gelöscht",
- "permanently_deleted_assets_count": "{count, plural, one {# Datei} other {# Dateien}} dauerhaft gelöscht",
+ "permanent_deletion_warning_setting_description": "Anzeige einer Warnung beim endgültigen Löschen von Objekten",
+ "permanently_delete": "Endgültig löschen",
+ "permanently_delete_assets_count": "{count, plural, one {Datei} other {Dateien}} endgültig löschen",
+ "permanently_delete_assets_prompt": "Bist du sicher, dass {count, plural, one {diese Datei} other {diese # Dateien}} endgültig gelöscht werden soll? Dadurch {count, plural, one {wird} other {werden}} diese auch aus deinen Alben entfernt.",
+ "permanently_deleted_asset": "Endgültig gelöschtes Objekt",
+ "permanently_deleted_assets_count": "{count, plural, one {# Datei} other {# Dateien}} endgültig gelöscht",
"person": "Person",
"person_hidden": "{name}{hidden, select, true { (verborgen)} other {}}",
"photo_shared_all_users": "Es sieht so aus, als hättest du deine Fotos mit allen Benutzern geteilt oder du hast keine Benutzer, mit denen du teilen kannst.",
@@ -1002,14 +972,13 @@
"photos_and_videos": "Fotos & Videos",
"photos_count": "{count, plural, one {{count, number} Foto} other {{count, number} Fotos}}",
"photos_from_previous_years": "Fotos von vorherigen Jahren",
- "pick_a_location": "Wählen einen Ort",
+ "pick_a_location": "Wähle einen Ort",
"place": "Ort",
"places": "Orte",
"play": "Abspielen",
"play_memories": "Erinnerungen abspielen",
"play_motion_photo": "Bewegte Bilder abspielen",
- "play_or_pause_video": "Video Abspielen oder Pausieren",
- "point": "Hinweis",
+ "play_or_pause_video": "Video abspielen oder pausieren",
"port": "Port",
"preset": "Voreinstellung",
"preview": "Vorschau",
@@ -1021,7 +990,7 @@
"profile_image_of_user": "Profilbild von {user}",
"profile_picture_set": "Profilbild gesetzt.",
"public_album": "Öffentliches Album",
- "public_share": "Öffentliche Teilung",
+ "public_share": "Öffentliche Freigabe",
"purchase_account_info": "Unterstützer",
"purchase_activated_subtitle": "Danke für die Unterstützung von Immich und Open-Source Software",
"purchase_activated_time": "Aktiviert am {date, date}",
@@ -1038,43 +1007,44 @@
"purchase_individual_description_2": "Unterstützerstatus",
"purchase_individual_title": "Einzelperson",
"purchase_input_suggestion": "Besitzen Sie bereits einen Produktschlüssel? Bitte geben Sie diesen unten ein",
- "purchase_license_subtitle": "Kaufe Immich um eine fortlaufende Entwicklung zu unterstützen",
+ "purchase_license_subtitle": "Kaufe Immich, um die fortlaufende Entwicklung zu unterstützen",
"purchase_lifetime_description": "Lebenslange Gültigkeit",
- "purchase_option_title": "KAUF OPTIONEN",
- "purchase_panel_info_1": "Die Entwicklung von Immich erfordert viel Zeit und Mühe, und wir haben Vollzeit- Entwickler, die so gut wie möglich daran arbeiten. Unser Ziel ist es, dass Open-Source-Software und moralische Geschäftsmethoden zu einer nachhaltigen Einkommensquelle für Entwickler werden und ein datenschutzfreundliches Ökosystem mit echten Alternativen zu ausbeuterischen Cloud-Diensten geschaffen wird.",
- "purchase_panel_info_2": "Weil wir davon überzeugt sind keine Paywalls zu haben, wird dieser Kauf keine zusätzlichen Funktionen in Immich freischalten. Wir verlassen uns auf Nutzende wie dich, um Entwicklung von Immich zu unterstützen.",
+ "purchase_option_title": "KAUFOPTIONEN",
+ "purchase_panel_info_1": "Die Entwicklung von Immich erfordert viel Zeit und Mühe, und wir haben Vollzeit-Entwickler, die daran arbeiten es möglichst perfekt zu machen. Unser Ziel ist es, dass Open-Source-Software und moralische Geschäftsmethoden zu einer nachhaltigen Einkommensquelle für Entwickler werden und ein datenschutzfreundliches Ökosystem mit echten Alternativen zu ausbeuterischen Cloud-Diensten geschaffen wird.",
+ "purchase_panel_info_2": "Weil wir davon überzeugt sind keine Paywalls zu haben, wird dieser Kauf keine zusätzlichen Funktionen in Immich freischalten. Wir verlassen uns auf Nutzende wie dich, um die Entwicklung von Immich zu unterstützen.",
"purchase_panel_title": "Das Projekt unterstützen",
"purchase_per_server": "Pro Server",
"purchase_per_user": "Pro Benutzer",
"purchase_remove_product_key": "Produktschlüssel entfernen",
"purchase_remove_product_key_prompt": "Sicher, dass der Produktschlüssel entfernt werden soll?",
- "purchase_remove_server_product_key": "Server Produktschlüssel entfernen",
- "purchase_remove_server_product_key_prompt": "Sicher, dass der Server Produktschlüssel entfernt werden soll?",
+ "purchase_remove_server_product_key": "Server-Produktschlüssel entfernen",
+ "purchase_remove_server_product_key_prompt": "Sicher, dass der Server-Produktschlüssel entfernt werden soll?",
"purchase_server_description_1": "Für den gesamten Server",
"purchase_server_description_2": "Unterstützerstatus",
"purchase_server_title": "Server",
- "purchase_settings_server_activated": "Der Server Produktschlüssel wird durch den Administrator verwaltet",
- "range": "Reichweite",
+ "purchase_settings_server_activated": "Der Server-Produktschlüssel wird durch den Administrator verwaltet",
"rating": "Bewertung",
"rating_clear": "Bewertung löschen",
"rating_count": "{count, plural, one {# Stern} other {# Sterne}}",
"rating_description": "Stellt die EXIF-Bewertung im Informationsbereich dar",
- "raw": "RAW",
"reaction_options": "Reaktionsmöglichkeiten",
"read_changelog": "Changelog lesen",
"reassign": "Neu zuweisen",
- "reassigned_assets_to_existing_person": "{count, plural, one {# Datei} other {# Dateien}} wurden {name, select, null {einer vorhandenen Person} other {{name}}} zugewiesen",
- "reassigned_assets_to_new_person": "{count, plural, one {# Datei} other {# Dateien}} wurden einer neuen Person zugewiesen",
+ "reassigned_assets_to_existing_person": "{count, plural, one {# Datei wurde} other {# Dateien wurden}} {name, select, null {einer vorhandenen Person} other {{name}}} zugewiesen",
+ "reassigned_assets_to_new_person": "{count, plural, one {# Datei wurde} other {# Dateien wurden}} einer neuen Person zugewiesen",
"reassing_hint": "Markierte Dateien einer vorhandenen Person zuweisen",
"recent": "Neuste",
+ "recent-albums": "Neuste Alben",
"recent_searches": "Letzte Suchen",
"refresh": "Aktualisieren",
- "refresh_encoded_videos": "Codierte Videos aktualisieren",
+ "refresh_encoded_videos": "Kodierte Videos aktualisieren",
+ "refresh_faces": "Gesichter aktualisieren",
"refresh_metadata": "Metadaten aktualisieren",
"refresh_thumbnails": "Miniaturansichten aktualisieren",
"refreshed": "Aktualisiert",
- "refreshes_every_file": "Jede Datei aktualisieren",
- "refreshing_encoded_video": "Codierte Videos werden aktualisiert",
+ "refreshes_every_file": "Alle bestehenden und neuen Dateien erneut einlesen",
+ "refreshing_encoded_video": "Kodierte Videos werden aktualisiert",
+ "refreshing_faces": "Gesichter werden aktualisiert",
"refreshing_metadata": "Metadaten werden aktualisiert",
"regenerating_thumbnails": "Miniaturansichten werden neu erstellt",
"remove": "Entfernen",
@@ -1082,15 +1052,16 @@
"remove_assets_shared_link_confirmation": "Bist du sicher, dass du {count, plural, one {# Datei} other {# Dateien}} von diesem geteilten Link entfernen willst?",
"remove_assets_title": "Dateien entfernen?",
"remove_custom_date_range": "Benutzerdefinierten Datumsbereich entfernen",
+ "remove_deleted_assets": "Offline-Dateien entfernen",
"remove_from_album": "Aus Album entfernen",
"remove_from_favorites": "Aus Favoriten entfernen",
- "remove_from_shared_link": "Aus geteilten Link entfernen",
- "remove_offline_files": "Offline-Dateien entfernen",
+ "remove_from_shared_link": "Aus geteiltem Link entfernen",
+ "remove_url": "URL entfernen",
"remove_user": "Nutzer entfernen",
"removed_api_key": "API-Schlüssel {name} wurde entfernt",
"removed_from_archive": "Aus dem Archiv entfernt",
- "removed_from_favorites": "Von Favoriten entfernt",
- "removed_from_favorites_count": "{count, plural, other {#}} von Favoriten entfernt",
+ "removed_from_favorites": "Aus den Favoriten entfernt",
+ "removed_from_favorites_count": "{count, plural, other {#}} aus den Favoriten entfernt",
"removed_tagged_assets": "Tag von {count, plural, one {# Datei} other {# Dateien}} entfernt",
"rename": "Umbenennen",
"repair": "Reparatur",
@@ -1102,7 +1073,6 @@
"reset": "Zurücksetzen",
"reset_password": "Passwort zurücksetzen",
"reset_people_visibility": "Sichtbarkeit von Personen zurücksetzen",
- "reset_settings_to_default": "Einstellungen auf Standardwerte zurücksetzen",
"reset_to_default": "Auf Standard zurücksetzen",
"resolve_duplicates": "Duplikate entfernen",
"resolved_all_duplicates": "Alle Duplikate aufgelöst",
@@ -1122,8 +1092,7 @@
"saved_settings": "Einstellungen gespeichert",
"say_something": "Etwas sagen",
"scan_all_libraries": "Alle Bibliotheken scannen",
- "scan_all_library_files": "Alle Bibliotheksdateien erneut scannen",
- "scan_new_library_files": "Neue Bibliotheksdateien scannen",
+ "scan_library": "Scannen",
"scan_settings": "Scan-Einstellungen",
"scanning_for_album": "Nach Alben scannen...",
"search": "Suche",
@@ -1141,6 +1110,7 @@
"search_options": "Suchoptionen",
"search_people": "Suche nach Personen",
"search_places": "Suche nach Orten",
+ "search_settings": "Suche nach Einstellungen",
"search_state": "Suche nach Bundesland / Provinz...",
"search_tags": "Sache nach Tags...",
"search_timezone": "Suche nach Zeitzone...",
@@ -1160,18 +1130,17 @@
"select_library_owner": "Bibliotheksbesitzer auswählen",
"select_new_face": "Neues Gesicht auswählen",
"select_photos": "Fotos auswählen",
- "select_trash_all": "Alle Löschen",
+ "select_trash_all": "Alle löschen",
"selected": "Ausgewählt",
"selected_count": "{count, plural, other {# ausgewählt}}",
"send_message": "Nachricht senden",
"send_welcome_email": "Begrüssungsmail senden",
- "server": "Server",
- "server_offline": "Server Offline",
- "server_online": "Server Online",
+ "server_offline": "Server offline",
+ "server_online": "Server online",
"server_stats": "Server-Statistiken",
"server_version": "Server-Version",
"set": "Speichern",
- "set_as_album_cover": "Als Albumcover gesetzt",
+ "set_as_album_cover": "Als Albumcover festlegen",
"set_as_profile_picture": "Als Profilbild festlegen",
"set_date_of_birth": "Geburtsdatum festlegen",
"set_profile_picture": "Profilbild einstellen",
@@ -1182,7 +1151,7 @@
"shared": "Geteilt",
"shared_by": "Geteilt von",
"shared_by_user": "Von {user} geteilt",
- "shared_by_you": "Geteilt von dir",
+ "shared_by_you": "Von dir geteilt",
"shared_from_partner": "Fotos von {partner}",
"shared_link_options": "Optionen für geteilten Link",
"shared_links": "Geteilte Links",
@@ -1200,7 +1169,7 @@
"show_gallery": "Galerie anzeigen",
"show_hidden_people": "Ausgeblendete Personen anzeigen",
"show_in_timeline": "In Zeitleiste anzeigen",
- "show_in_timeline_setting_description": "Fotos und Videos dieses Benutzers in deiner Timeline anzeigen",
+ "show_in_timeline_setting_description": "Fotos und Videos dieses Benutzers in deiner Zeitleiste anzeigen",
"show_keyboard_shortcuts": "Tastaturkürzel anzeigen",
"show_metadata": "Metadaten anzeigen",
"show_or_hide_info": "Informationen ein- oder ausblenden",
@@ -1208,11 +1177,12 @@
"show_person_options": "Personen-Optionen anzeigen",
"show_progress_bar": "Fortschrittsbalken anzeigen",
"show_search_options": "Suchoptionen anzeigen",
+ "show_slideshow_transition": "Slideshow-Übergang anzeigen",
"show_supporter_badge": "Unterstützerabzeichen",
"show_supporter_badge_description": "Zeige Unterstützerabzeichen",
"shuffle": "Durchmischen",
"sidebar": "Seitenleiste",
- "sidebar_display_description": "Zeigt einen Link zu der Ansicht in der Seitenleiste an",
+ "sidebar_display_description": "Zeige einen Link zu der Ansicht in der Seitenleiste an",
"sign_out": "Abmelden",
"sign_up": "Registrieren",
"size": "Größe",
@@ -1220,7 +1190,7 @@
"skip_to_folders": "Springe zu Ordnern",
"skip_to_tags": "Springe zu Tags",
"slideshow": "Diashow",
- "slideshow_settings": "Diashow Einstellungen",
+ "slideshow_settings": "Diashow-Einstellungen",
"sort_albums_by": "Alben sortieren nach...",
"sort_created": "Erstellungsdatum",
"sort_items": "Anzahl der Einträge",
@@ -1228,7 +1198,7 @@
"sort_oldest": "Ältestes Foto",
"sort_recent": "Neustes Foto",
"sort_title": "Titel",
- "source": "Quelle",
+ "source": "Quellcode",
"stack": "Stapel",
"stack_duplicates": "Duplikate stapeln",
"stack_select_one_photo": "Hauptfoto für den Stapel auswählen",
@@ -1243,19 +1213,22 @@
"stop_photo_sharing": "Deine Fotos nicht mehr teilen?",
"stop_photo_sharing_description": "{partner} wird keinen Zugriff mehr auf deine Fotos haben.",
"stop_sharing_photos_with_user": "Aufhören Fotos mit diesem Benutzer zu teilen",
- "storage": "Speicher",
+ "storage": "Speicherplatz",
"storage_label": "Speicherpfad",
"storage_usage": "{used} von {available} verwendet",
"submit": "Bestätigen",
"suggestions": "Vorschläge",
"sunrise_on_the_beach": "Sonnenaufgang am Strand",
+ "support": "Unterstützung",
+ "support_and_feedback": "Unterstützung & Feedback",
+ "support_third_party_description": "Deine Immich-Installation wurde von einem Drittanbieter zusammengestellt. Probleme, die bei dir auftreten, können durch dieses Paket verursacht werden. Bitte wende dich daher in erster Linie an diesen Anbieter, indem du die unten stehenden Links verwendest.",
"swap_merge_direction": "Vertauschen der Zusammenführungsrichtung",
"sync": "Synchronisieren",
"tag": "Tag",
"tag_assets": "Dateien taggen",
"tag_created": "Tag erstellt: {tag}",
"tag_feature_description": "Durchsuchen von Fotos und Videos, gruppiert nach logischen Tag-Themen",
- "tag_not_found_question": "Kein Tag zu finden? Erstelle einen hier",
+ "tag_not_found_question": "Kein Tag zu finden? Erstelle einen neuen Tag.",
"tag_updated": "Tag aktualisiert: {tag}",
"tagged_assets": "{count, plural, one {# Datei} other {# Dateien}} getagged",
"tags": "Tags",
@@ -1264,41 +1237,40 @@
"theme_selection": "Themenauswahl",
"theme_selection_description": "Automatische Einstellung des Themes auf Hell oder Dunkel, je nach Systemeinstellung des Browsers",
"they_will_be_merged_together": "Sie werden zusammengeführt",
+ "third_party_resources": "Drittanbieter-Quellen",
"time_based_memories": "Zeitbasierte Erinnerungen",
+ "timeline": "Zeitleiste",
"timezone": "Zeitzone",
"to_archive": "Archivieren",
"to_change_password": "Passwort ändern",
"to_favorite": "Zu Favoriten hinzufügen",
"to_login": "Anmelden",
"to_parent": "Gehe zum Übergeordneten",
- "to_root": "Zur Wurzel",
- "to_trash": "Zum Papierkorb verschieben",
+ "to_trash": "In den Papierkorb verschieben",
"toggle_settings": "Einstellungen umschalten",
"toggle_theme": "Dunkles Theme umschalten",
- "toggle_visibility": "Sichtbarkeit umschalten",
+ "total": "Gesamt",
"total_usage": "Gesamtnutzung",
"trash": "Papierkorb",
- "trash_all": "Alles im Papierkorb",
+ "trash_all": "Alle löschen",
"trash_count": "Papierkorb {count, number}",
"trash_delete_asset": "Datei löschen/in den Papierkorb verschieben",
"trash_no_results_message": "Gelöschte Fotos und Videos werden hier angezeigt.",
"trashed_items_will_be_permanently_deleted_after": "Gelöschte Objekte werden nach {days, plural, one {# Tag} other {# Tagen}} endgültig gelöscht.",
"type": "Typ",
- "unarchive": "Unarchivieren",
- "unarchived": "Unarchiviert",
- "unarchived_count": "{count, plural, other {# Entarchiviert}}",
+ "unarchive": "Entarchivieren",
+ "unarchived_count": "{count, plural, other {# entarchiviert}}",
"unfavorite": "Entfavorisieren",
"unhide_person": "Person einblenden",
"unknown": "Unbekannt",
- "unknown_album": "Unbekanntes Album",
"unknown_year": "Unbekanntes Jahr",
"unlimited": "Unlimitiert",
- "unlink_motion_video": "Verlinkung zum Bewegungsvideo aufheben",
+ "unlink_motion_video": "Verknüpfung zum Bewegungsvideo aufheben",
"unlink_oauth": "OAuth entfernen",
"unlinked_oauth_account": "Nicht verknüpftes OAuth-Konto",
"unnamed_album": "Unbenanntes Album",
"unnamed_album_delete_confirmation": "Bist du sicher, dass du dieses Album löschen willst?",
- "unnamed_share": "Unbenannte Teilung",
+ "unnamed_share": "Unbenannte Freigabe",
"unsaved_change": "Ungespeicherte Änderung",
"unselect_all": "Alles abwählen",
"unselect_all_duplicates": "Alle Duplikate abwählen",
@@ -1310,7 +1282,7 @@
"updated_password": "Passwort aktualisiert",
"upload": "Hochladen",
"upload_concurrency": "Parallelität beim Hochladen",
- "upload_errors": "Hochladen abgeschlossen mit {count, plural, one {# Fehler} other {# Fehlern}}, aktualisiere die Seite, um neu hochgeladene Dateien zu sehen.",
+ "upload_errors": "Hochladen mit {count, plural, one {# Fehler} other {# Fehlern}} abgeschlossen, aktualisiere die Seite, um neu hochgeladene Dateien zu sehen.",
"upload_progress": "{remaining, number} verbleibend - {processed, number}/{total, number} verarbeitet",
"upload_skipped_duplicates": "{count, plural, one {# doppelte Datei} other {# doppelte Dateien}} ausgelassen",
"upload_status_duplicates": "Duplikate",
@@ -1322,13 +1294,13 @@
"use_custom_date_range": "Stattdessen einen benutzerdefinierten Datumsbereich verwenden",
"user": "Nutzer",
"user_id": "Nutzer-ID",
- "user_license_settings": "Lizenz",
- "user_license_settings_description": "Verwalte deine Lizenz",
"user_liked": "{type, select, photo {Dieses Foto} video {Dieses Video} asset {Diese Datei} other {Dies}} gefällt {user}",
"user_purchase_settings": "Kauf",
"user_purchase_settings_description": "Kauf verwalten",
"user_role_set": "{user} als {role} festlegen",
"user_usage_detail": "Nutzungsdetails der Nutzer",
+ "user_usage_stats": "Statistiken zur Kontonutzung",
+ "user_usage_stats_description": "Statistiken zur Kontonutzung anzeigen",
"username": "Nutzername",
"users": "Benutzer",
"utilities": "Hilfsmittel",
@@ -1336,7 +1308,9 @@
"variables": "Variablen",
"version": "Version",
"version_announcement_closing": "Dein Freund, Alex",
- "version_announcement_message": "Hallo Freund, es gibt eine neue Version dieser Anwendung. Bitte nimm dir Zeit, die Versionshinweise zu lesen und stelle sicher, dass deine docker-compose.yml- und .env-Konfiguration auf dem neuesten Stand ist, um Fehlkonfigurationen zu vermeiden, insbesondere wenn du WatchTower oder ein anderes Verfahren verwendest, das deine Anwendung automatisch aktualisiert.",
+ "version_announcement_message": "Hi! Es gibt eine neue Version von Immich. Bitte nimm dir Zeit, die Versionshinweise zu lesen, um Fehlkonfigurationen zu vermeiden, insbesondere wenn du WatchTower oder ein anderes Verfahren verwendest, das Immich automatisch aktualisiert.",
+ "version_history": "Versionshistorie",
+ "version_history_item": "{version} am {date} installiert",
"video": "Video",
"video_hover_setting": "Videovorschau beim Hovern abspielen",
"video_hover_setting_description": "Video-Miniaturansicht wiedergeben, wenn der Mauszeiger über dem Element verweilt. Auch wenn diese Funktion deaktiviert ist, kann die Wiedergabe gestartet werden, indem der Mauszeiger auf das Wiedergabesymbol bewegt wird.",
@@ -1348,12 +1322,12 @@
"view_all_users": "Alle Nutzer anzeigen",
"view_in_timeline": "In Zeitleiste anzeigen",
"view_links": "Links anzeigen",
+ "view_name": "Ansicht",
"view_next_asset": "Nächste Datei anzeigen",
"view_previous_asset": "Vorherige Datei anzeigen",
"view_stack": "Stapel anzeigen",
- "viewer": "Zuschauer",
"visibility_changed": "Sichtbarkeit für {count, plural, one {# Person} other {# Personen}} geändert",
- "waiting": "Warte",
+ "waiting": "Wartend",
"warning": "Warnung",
"week": "Woche",
"welcome": "Willkommen",
diff --git a/i18n/el.json b/i18n/el.json
new file mode 100644
index 0000000000..daad424022
--- /dev/null
+++ b/i18n/el.json
@@ -0,0 +1,1340 @@
+{
+ "about": "Σχετικά",
+ "account": "Λογαριασμός",
+ "account_settings": "Ρυθμίσεις Λογαριασμού",
+ "acknowledge": "Έλαβα γνώση",
+ "action": "Ενέργεια",
+ "actions": "Ενέργειες",
+ "active": "Ενεργά",
+ "activity": "Δραστηριότητα",
+ "activity_changed": "Η δραστηριότητα είναι {enabled, select, true {ενεργοποιημένη} other {απενεργοποιημένη}}",
+ "add": "Προσθήκη",
+ "add_a_description": "Προσθήκη περιγραφής",
+ "add_a_location": "Προσθήκη μίας τοποθεσίας",
+ "add_a_name": "Προσθήκη ονόματος",
+ "add_a_title": "Προσθήκη τίτλου",
+ "add_exclusion_pattern": "Προσθήκη μοτίβου αποκλεισμού",
+ "add_import_path": "Προσθήκη μονοπατιού εισαγωγής",
+ "add_location": "Προσθήκη τοποθεσίας",
+ "add_more_users": "Προσθήκη επιπλέον χρηστών",
+ "add_partner": "Προσθήκη συνεργάτη",
+ "add_path": "Προσθήκη διαδρομής",
+ "add_photos": "Προσθήκη φωτογραφιών",
+ "add_to": "Προσθήκη σε...",
+ "add_to_album": "Προσθήκη σε άλμπουμ",
+ "add_to_shared_album": "Προσθήκη σε κοινόχρηστο άλμπουμ",
+ "add_url": "Προσθήκη Συνδέσμου",
+ "added_to_archive": "Προστέθηκε στο αρχείο",
+ "added_to_favorites": "Προστέθηκε στα αγαπημένα",
+ "added_to_favorites_count": "Προστέθηκαν {count, number} στα αγαπημένα",
+ "admin": {
+ "add_exclusion_pattern_description": "Προσθέστε μοτίβα αποκλεισμού. Υποστηρίζεται η επιλογή πολλών με *, **, και ?. Για να αγνοηθούν όλα τα αρχεία σε έναν φάκελο με το όνομα \"Raw\", χρησιμοποιήστε \"**/Raw/**\". Για να αγνοηθούν όλα τα αρχεία με κατάληξη \".tif\", χρησιμοποιήστε \"**/*.tif\". Για να αγνοηθεί μία απόλυτη διαδρομή, χρησιμοποιήστε \"/path/to/ignore/**\".",
+ "asset_offline_description": "Αυτό το στοιχείο εξωτερικής βιβλιοθήκης δε βρίσκεται πλέον στο δίσκο και έχει μεταφερθεί στα απορρίμματα. Εάν το αρχείο έχει μετακινηθεί εντός της βιβλιοθήκης, ελέγξτε το χρονολόγιο φωτογραφιών σας για το νέο αντίστοιχο στοιχείο. Για να επαναφέρετε αυτό το στοιχείο, βεβαιωθείτε ότι το παρακάτω μονοπάτι αρχείου είναι προσβάσιμο από το Immich και σαρώστε τη βιβλιοθήκη.",
+ "authentication_settings": "Ρυθμίσεις Ελέγχου Ταυτότητας",
+ "authentication_settings_description": "Διαχείριση κωδικού πρόσβασης, OAuth και άλλων ρυθμίσεων ελέγχου ταυτότητας",
+ "authentication_settings_disable_all": "Είστε βέβαιοι ότι θέλετε να απενεργοποιήσετε όλες τις μεθόδους σύνδεσης; Η σύνδεση θα απενεργοποιηθεί πλήρως.",
+ "authentication_settings_reenable": "Για επανενεργοποίηση, χρησιμοποιήστε μία Εντολή Διακομιστή.",
+ "background_task_job": "Εργασίες Παρασκηνίου",
+ "backup_database": "Δημιουργία Αντιγράφου Ασφαλείας της Βάσης Δεδομένων",
+ "backup_database_enable_description": "Ενεργοποίηση αντιγράφων ασφαλείας της βάσης δεδομένων",
+ "backup_keep_last_amount": "Αριθμός προηγούμενων αντιγράφων ασφαλείας για διατήρηση",
+ "backup_settings": "Ρυθμίσεις Αντιγράφων Ασφαλείας",
+ "backup_settings_description": "Διαχείρηση ρυθμίσεων των αντιγράφων ασφαλείας της βάσης δεδομένων",
+ "check_all": "Έλεγχος Όλων",
+ "cleared_jobs": "Εκκαθαρίστηκαν οι εργασίες για: {job}",
+ "config_set_by_file": "Η παραμετροποίηση γίνεται, προς το παρόν, μέσω ενός αρχείου παραμέτρων",
+ "confirm_delete_library": "Είστε βέβαιοι ότι θέλετε να διαγράψετε τη βιβλιοθήκη {library};",
+ "confirm_delete_library_assets": "Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτή τη βιβλιοθήκη; Αυτό θα διαγράψει τα {count, plural, one {# contained asset} other {all # contained assets}} από το Immich και δεν μπορεί να αναιρεθεί. Τα αρχεία θα παραμείνουν στον δίσκο.",
+ "confirm_email_below": "Για επιβεβαίωση, πληκτρολογήστε \"{email}\" παρακάτω",
+ "confirm_reprocess_all_faces": "Είστε βέβαιοι ότι θέλετε να επεξεργαστείτε ξανά όλα τα πρόσωπα; Αυτό θα εκκαθαρίσει ακόμα και τα άτομα στα οποία έχετε ήδη ορίσει το όνομα.",
+ "confirm_user_password_reset": "Είστε βέβαιοι ότι θέλετε να επαναφέρετε τον κωδικό πρόσβασης του χρήστη {user};",
+ "create_job": "Δημιουργία εργασίας",
+ "cron_expression": "Σύνταξη Cron",
+ "cron_expression_description": "Ορίστε το διάστημα σάρωσης χρησιμοποιώντας τη μορφή cron. Για περισσότερες πληροφορίες, ανατρέξτε π.χ. στο Crontab Guru",
+ "cron_expression_presets": "Προκαθορισμένες εκφράσεις cron",
+ "disable_login": "Απενεργοποίηση σύνδεσης",
+ "duplicate_detection_job_description": "Εκτελέστε μηχανική μάθηση σε στοιχεία για να εντοπίσετε παρόμοιες εικόνες. Βασίζεται στην Έξυπνη Αναζήτηση",
+ "exclusion_pattern_description": "Τα μοτίβα αποκλεισμού σας επιτρέπουν να αγνοείται αρχεία και φακέλους κατά τη σάρωση της βιβλιοθήκης σας. Αυτό είναι χρήσιμο εάν εχετε φακέλους που περιέχουν αρχεία που δεν θέλετε να εισάγετε, όπως αρχεία RAW.",
+ "external_library_created_at": "Εξωτερική βιβλιοθήκη (δημιουργήθηκε {date})",
+ "external_library_management": "Διαχείριση Εξωτερικών Βιβλιοθηκών",
+ "face_detection": "Ανίχνευση προσώπου",
+ "face_detection_description": "Ανιχνεύστε τα πρόσωπα σε στοιχεία χρησιμοποιώντας μηχανική μάθηση. Για βίντεο, λαμβάνεται υπόψη μόνο η μικρογραφία. Η επιλογή \"Ανανέωση\" επεξεργάζεται εκ νέου όλα τα στοιχεία. Η επιλογή \"Επαναφορά\", επιπλέον εκκαθαρίζει όλα τα δεδομένα προσώπου. Η επιλογή \"Ελλείποντα\" προσθέτει στην ουρά στοιχεία που δεν έχουν υποστεί ακόμη επεξεργασία. Τα πρόσωπα που έχουν εντοπιστεί θα μπουν στην ουρά για την Αναγνώριση Προσώπου μετά την ολοκλήρωση της Ανίχνευσης Προσώπου, ομαδοποιώντας τα σε υπάρχοντα ή νέα άτομα.",
+ "facial_recognition_job_description": "Ομαδοποιήστε ανιχνευμένα πρόσωπα σε άτομα. Αυτό το βήμα εκτελείται αφού ολοκληρωθεί η Ανίχνευση Προσώπου. Η επιλογή \"Επαναφορά\" ομαδοποιεί εκ νέου όλα τα πρόσωπα. Η επιλογή \"Ελλείποντα\" βάζει στην ουρά για ομαδοποίηση πρόσωπα που δεν έχουν αντιστοιχηθεί σε κάποιο άτομο.",
+ "failed_job_command": "Η εντολή {command} απέτυχε για την εργασία: {job}",
+ "force_delete_user_warning": "ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Αυτό θα αφαιρέσει άμεσα τον χρήστη και όλα τα στοιχεία. Αυτό δεν μπορεί να αναιρεθεί και τα αρχεία δεν μπορούν να ανακτηθούν.",
+ "forcing_refresh_library_files": "Εξαναγκαστική ανανέωση όλων των αρχείων της βιβλιοθήκης",
+ "image_format": "Μορφή",
+ "image_format_description": "Η μορφή WebP παράγει μικρότερα αρχεία από τη μορφή JPEG, αλλά είναι πιο αργή στην κωδικοποίηση.",
+ "image_prefer_embedded_preview": "Προτίμηση ενσωματωμένης προεπισκόπησης",
+ "image_prefer_embedded_preview_setting_description": "Χρήση ενσωματωμένων προεπισκοπίσεων σε RAW εικόνες ως είσοδο για την επεξεργασία εικόνας εφόσον είναι διαθέσιμες. Αυτό μπορεί να δημιουργήσει πιο ακριβή χρώματα για κάποιες εικόνες, αλλά η ποιότητα των προεπισκοπίσεων εξαρτάται από την κάμερα και ενδέχεται να υπάρχουν περισσότερες αλλοιώσεις στην εικόνα λόγω συμπίεσης.",
+ "image_prefer_wide_gamut": "Προτίμηση ευρέος φάσματος",
+ "image_prefer_wide_gamut_setting_description": "Χρήση Display P3 για τις μικρογραφίες. Αυτό διατηρεί καλύτερα την ζωντάνια των χρωμάτων σε εικόνες μεγάλου χρωματικού εύρους, αλλά ενδέχεται να εμφανίζονται αλλιώς σε παλαιότερες συσκευές με παλαιότερες εκδόσεις περιηγητών. Οι εικόνες sRGB μένουν ως έχουν για να αποφευχθούν χρωματικές αλλαγές.",
+ "image_preview_description": "Μεσαίου μεγέθους εικόνες, χωρίς μεταδεδομένα, οι οποίες χρησιμοποιούνται στην προβολή ενός αντικειμένου και για μηχανική μάθηση",
+ "image_preview_quality_description": "Ποιότητα προεπισκόπησης από 1 έως 100. Όσο μεγαλύτερη τιμή τόσο καλύτερη η ποιότητα, αλλά παράγονται μεγαλύτερα αρχεία που ενδέχεται να μειώσουν την ταχύτητα απόκρισης της εφαρμογής. Οι χαμηλές τιμές μπορεί να επηρεάσουν τη ποιότητα της μηχανικής μάθησης.",
+ "image_preview_title": "Ρυθμίσεις Προεπισκόπισης",
+ "image_quality": "Ποιότητα",
+ "image_resolution": "Ανάλυση",
+ "image_resolution_description": "Υψηλότερες αναλύσεις μπορούν να διατηρήσουν περισσότερες λεπτομέρειες, αλλά χρειάζονται περισσότερο χρόνο να κωδικοποιηθούν, έχουν μεγαλύτερα μεγέθη αρχείων και μπορούν να μειώσουν την απόκριση της εφαρμογής.",
+ "image_settings": "Ρυθμίσεις Εικόνας",
+ "image_settings_description": "Διαχείριση της ποιότητας και της ανάλυσης των παραγόμενων εικόνων",
+ "image_thumbnail_description": "Μικρογραφία εικόνας χωρίς μεταδεδομένα, που χρησιμοποιείται όταν προβάλλονται ομάδες φωτογραφιών όπως το κύριο χρονολόγιο",
+ "image_thumbnail_quality_description": "Ποιότητα μικρογραφίας από 1 έως 100. Υψηλότερες τιμές είναι καλύτερες, αλλά παράγουν μεγαλύτερα αρχεία που μπορεί να μειώσουν την ταχύτητα απόκρισης της εφαρμογής.",
+ "image_thumbnail_title": "Ρυθμίσεις Μικρογραφίας",
+ "job_concurrency": "Ταυτόχρονη εκτέλεση {job}",
+ "job_created": "Εργασία δημιουργήθηκε",
+ "job_not_concurrency_safe": "Αυτή η εργασία δεν είναι ασφαλής για ταυτόχρονη εκτέλεση.",
+ "job_settings": "Ρυθμίσεις Εργασίας",
+ "job_settings_description": "Διαχείριση ταυτόχρονης εκτέλεσης εργασίας",
+ "job_status": "Κατάσταση Εργασίας",
+ "jobs_delayed": "{jobCount, plural, one {# καθυστέρησε} other {# καθυστέρησαν}}",
+ "jobs_failed": "{jobCount, plural, one {# απέτυχε} other {# απέτυχαν}}",
+ "library_created": "Δημιουργήθηκε η βιβλιοθήκη: {library}",
+ "library_deleted": "Η βιβλιοθήκη διαγράφηκε",
+ "library_import_path_description": "Καθορίστε έναν φάκελο για εισαγωγή. Αυτός ο φάκελος, συμπεριλαμβανομένων των υποφακέλων του, θα σαρωθεί για εικόνες και βίντεο.",
+ "library_scanning": "Περιοδική Σάρωση",
+ "library_scanning_description": "Ρύθμιση περιοδικής σάρωσης βιβλιοθήκης",
+ "library_scanning_enable_description": "Ενεργοποίηση περιοδικής σάρωσης βιβλιοθήκης",
+ "library_settings": "Εξωτερική Βιβλιοθήκη",
+ "library_settings_description": "Διαχείριση ρυθμίσεων εξωτερικής βιβλιοθήκης",
+ "library_tasks_description": "Εκτελούν εργασίες της βιβλιοθήκης",
+ "library_watching_enable_description": "Παρακολούθηση εξωτερικών βιβλιοθηκών για τροποποιήσεις αρχείων",
+ "library_watching_settings": "Παρακολούθηση βιβλιοθήκης (ΠΕΙΡΑΜΑΤΙΚΟ)",
+ "library_watching_settings_description": "Αυτόματη παρακολούθηση για τροποποιημένα αρχεία",
+ "logging_enable_description": "Ενεργοποίηση καταγραφής συμβάντων",
+ "logging_level_description": "Το επίπεδο καταγραφής συμβάντων που θα εφαρμοστεί, όταν αυτή είναι ενεργοποιημένη.",
+ "logging_settings": "Καταγραφή Συμβάντων",
+ "machine_learning_clip_model": "Μοντέλο CLIP",
+ "machine_learning_clip_model_description": "Το όνομα ενός μοντέλου CLIP που αναφέρεται εδώ. Σημειώστε ότι πρέπει να επανεκτελέσετε την εργασία 'Έξυπνη Αναζήτηση' για όλες τις εικόνες μετά την αλλαγή μοντέλου.",
+ "machine_learning_duplicate_detection": "Εντοπισμός Διπλότυπων",
+ "machine_learning_duplicate_detection_enabled": "Ενεργοποίηση εντοπισμού διπλότυπων",
+ "machine_learning_duplicate_detection_enabled_description": "Εάν απενεργοποιηθεί, απολύτως παρόμοια στοιχεία θα συνεχίσουν να εκκαθαρίζονται από διπλότυπα.",
+ "machine_learning_duplicate_detection_setting_description": "Χρησιμοποιήστε τις ενσωματώσεις CLIP για να βρείτε πιθανά διπλότυπα",
+ "machine_learning_enabled": "Ενεργοποίηση μηχανικής μάθησης",
+ "machine_learning_enabled_description": "Εάν απενεργοποιηθεί, όλες οι λειτουργίες μηχανικής μάθησης θα απενεργοποιηθούν, ανεξάρτητα από τις παρακάτω ρυθμίσεις.",
+ "machine_learning_facial_recognition": "Αναγνώριση Προσώπου",
+ "machine_learning_facial_recognition_description": "Εντοπισμός, αναγνώριση και ομαδοποίηση προσώπων που υπάρχουν σε εικόνες",
+ "machine_learning_facial_recognition_model": "Μοντέλο αναγνώρισης προσώπου",
+ "machine_learning_facial_recognition_model_description": "Τα μοντέλα παρατίθενται με φθίνουσα σειρά μεγέθους. Τα μεγαλύτερα μοντέλα είναι πιο αργά και χρησιμοποιούν περισσότερη μνήμη, αλλά παράγουν καλύτερα αποτελέσματα. Σημειώστε ότι πρέπει να εκτελέσετε ξανά την εργασία Ανίχνευση προσώπου για όλες τις εικόνες κατά την αλλαγή ενός μοντέλου.",
+ "machine_learning_facial_recognition_setting": "Ενεργοποίηση αναγνώρισης προσώπου",
+ "machine_learning_facial_recognition_setting_description": "Αν απενεργοποιηθεί, οι εικόνες δεν θα κωδικοποιούνται για αναγνώριση προσώπου και δεν θα συμπληρώνουν την ενότητα Άτομα στη σελίδα Περιήγησης.",
+ "machine_learning_max_detection_distance": "Μέγιστη απόσταση ανίχνευσης",
+ "machine_learning_max_detection_distance_description": "Η μέγιστη απόσταση μεταξύ δύο εικόνων για να θεωρηθούν διπλότυπες, που κυμαίνεται από 0,001-0,1. Οι υψηλότερες τιμές θα εντοπίσουν περισσότερες διπλότυπες, αλλά μπορεί να οδηγήσουν σε ψευδώς θετικά αποτελέσματα.",
+ "machine_learning_max_recognition_distance": "Μέγιστη απόσταση αναγνώρισης",
+ "machine_learning_max_recognition_distance_description": "Η μέγιστη απόσταση μεταξύ δύο προσώπων για να θεωρείται το ίδιο άτομο, που κυμαίνεται από 0-2. Η μείωση αυτή μπορεί να αποτρέψει την επισήμανση δύο ατόμων ως το ίδιο άτομο, ενώ η αύξηση της μπορεί να αποτρέψει την επισήμανση του ίδιου ατόμου ως δύο διαφορετικών ατόμων. Λάβετε υπόψη ότι είναι πιο εύκολο να συγχωνεύσετε δύο άτομα παρά να χωρίσετε ένα άτομο στα δύο, οπότε προτιμήστε ένα χαμηλότερο όριο, όταν αυτό είναι δυνατό.",
+ "machine_learning_min_detection_score": "Ελάχιστο σκορ ανίχνευσης",
+ "machine_learning_min_detection_score_description": "Ελάχιστο σκορ εμπιστοσύνης για ανίχνευση προσώπου από 0-1. Οι χαμηλότερες τιμές θα εντοπίσουν περισσότερα πρόσωπα, αλλά μπορεί να οδηγήσουν σε ψευδώς θετικά αποτελέσματα.",
+ "machine_learning_min_recognized_faces": "Ελάχιστα αναγνωρισμένα πρόσωπα",
+ "machine_learning_min_recognized_faces_description": "Ο ελάχιστος αριθμός αναγνωρισμένων προσώπων για ένα άτομο που θα δημιουργηθεί. Η αύξηση αυτή καθιστά την Αναγνώριση Προσώπου πιο ακριβή με το κόστος να αυξηθεί η πιθανότητα να μην εκχωρηθεί ένα πρόσωπο σε ένα άτομο.",
+ "machine_learning_settings": "Ρυθμίσεις Μηχανικής Εκμάθησης",
+ "machine_learning_settings_description": "Διαχειριστείτε τις λειτουργίες και τις ρυθμίσεις μηχανικής εκμάθησης",
+ "machine_learning_smart_search": "Έξυπνη Αναζήτηση",
+ "machine_learning_smart_search_description": "Αναζητήστε εικόνες σημασιολογικά χρησιμοποιώντας ενσωματώσεις CLIP",
+ "machine_learning_smart_search_enabled": "Ενεργοποίηση έξυπνης αναζήτησης",
+ "machine_learning_smart_search_enabled_description": "Αν απενεργοποιηθεί, οι εικόνες δεν θα κωδικοποιούνται για έξυπνη αναζήτηση.",
+ "machine_learning_url_description": "Η διεύθυνση URL του διακομιστή μηχανικής εκμάθησης. Αν παρέχονται περισσότερες από μία διευθύνσεις URL, τότε, κάθε διακομιστής θα προσπαθήσει να συνδεθεί διαδοχικά, από την πρώτη μέχρι την τελευταία, έως ότου απαντήσει επιτυχώς.",
+ "manage_concurrency": "Διαχείριση ταυτόχρονη εκτέλεσης",
+ "manage_log_settings": "Διαχείριση ρυθμίσεων αρχείου καταγραφής",
+ "map_dark_style": "Σκούρο Θέμα",
+ "map_enable_description": "Ενεργοποίηση λειτουργιών χάρτη",
+ "map_gps_settings": "Ρυθμίσεις Χάρτη & GPS",
+ "map_gps_settings_description": "Διαχείριση Ρυθμίσεων Χάρτη & GPS (Αντίστροφη γεωκωδικοποίηση)",
+ "map_implications": "Η λειτουργία χάρτη βασίζεται σε εξωτερικές υπηρεσίες για τα πλακίδια (tiles.immich.cloud)",
+ "map_light_style": "Φωτεινό Θέμα",
+ "map_manage_reverse_geocoding_settings": "Διαχείριση ρυθμίσεων Αντίστροφης Γεωκωδικοποίησης",
+ "map_reverse_geocoding": "Αντίστροφη Γεωκωδικοποίηση",
+ "map_reverse_geocoding_enable_description": "Ενεργοποίηση Αντίστροφης Γεωκωδικοποίησης",
+ "map_reverse_geocoding_settings": "Ρυθμίσεις Αντίστροφης Γεωκωδικοποίησης",
+ "map_settings": "Χάρτης",
+ "map_settings_description": "Διαχείριση ρυθμίσεων χάρτη",
+ "map_style_description": "URL προς αρχείο θέματος του χάρτη style.json",
+ "metadata_extraction_job": "Εξαγωγή μεταδεδομένων",
+ "metadata_extraction_job_description": "Εξαγωγή μεταδεδομένων από κάθε αρχείο, όπως τοποθεσία, πρόσωπα και ανάλυση",
+ "metadata_faces_import_setting": "Ενεργοποίηση εισαγωγής προσώπων",
+ "metadata_faces_import_setting_description": "Εισαγωγή προσώπων από EXIF εικόνων και παρόμοια αρχεία ( sidecar files)",
+ "metadata_settings": "Ρυθμίσεις μεταδεδομένων",
+ "metadata_settings_description": "Διαχείρηση ρυθμίσεων μεταδεδομένων",
+ "migration_job": "Μεταφορά δεδομένων (Migration)",
+ "migration_job_description": "Μεταφορά των εικονιδίων για αρχεία και πρόσωπα στην πιο πρόσφατη δομή αρχείων",
+ "no_paths_added": "Δεν προστέθηκαν διαδρομές",
+ "no_pattern_added": "Δεν προστέθηκε μοτίβο",
+ "note_apply_storage_label_previous_assets": "Σημείωση: Για να εφαρμοστεί η Ετικέτα Αποθήκευσης σε στοιχεία που είχαν αναρτηθεί παλαιότερα, εκτέλεσε το",
+ "note_cannot_be_changed_later": "ΣΗΜΕΊΩΣΗ: Αυτό δεν μπορεί να τροποποιηθεί αργότερα!",
+ "note_unlimited_quota": "Σημείωση: Εισαγάγετε 0 για απεριόριστο όριο",
+ "notification_email_from_address": "Διεύθυνση αποστολέα",
+ "notification_email_from_address_description": "Διεύθυνση αποστολέα, πχ: \"Immich Photo Server {label} είναι η Ετικέτα Αποθήκευσης του χρήστη",
+ "system_settings": "Ρυθμίσεις Συστήματος",
+ "tag_cleanup_job": "Καθαρισμός ετικετών",
+ "template_email_available_tags": "Μπορείτε να χρησιμοποιήσετε τις εξής μεταβλητές στο πρότυπό σας: {tags}",
+ "template_email_if_empty": "Αν το πρότυπο είναι κενό, θα χρησιμοποιηθεί το προεπιλεγμένο email.",
+ "template_email_invite_album": "Πρότυπο άλμπουμ πρόσκλησης",
+ "template_email_preview": "Προεπισκόπηση",
+ "template_email_settings": "Πρότυπα Email",
+ "template_email_settings_description": "Διαχείριση προσαρμοσμένων προτύπων ειδοποιήσεων email",
+ "template_email_update_album": "Ενημέρωση πρότυπου Άλμπουμ",
+ "template_email_welcome": "Πρότυπο email καλωσορίσματος",
+ "template_settings": "Πρότυπα ειδοποιήσεων",
+ "template_settings_description": "Διαχείριση προσαρμοσμένων προτύπων για ειδοποιήσεις.",
+ "theme_custom_css_settings": "Προσαρμοσμένο CSS",
+ "theme_custom_css_settings_description": "Τα Cascading Style Sheets(CSS) επιτρέπει την προσαρμογή του σχεδιασμού του Immich.",
+ "theme_settings": "Ρυθμίσεις Θέματος",
+ "theme_settings_description": "Διαχείριση της προσαρμογής του ιστότοπου του Immich",
+ "these_files_matched_by_checksum": "Αυτά τα αρχεία αντιστοιχίζονται με βάση τα checksums(μοναδικές αλγοριθμικές τιμές των περιεχομένων ενός αρχείου) τους",
+ "thumbnail_generation_job": "Δημιουργία Μικρογραφιών",
+ "thumbnail_generation_job_description": "Δημιουργία μεγάλων, μικρών και θολών μικρογραφιών για κάθε αρχείο, καθώς και μικρογραφιών για κάθε άτομο",
+ "transcoding_acceleration_api": "Επιτάχυνση API",
+ "transcoding_acceleration_api_description": "Το API που θα αλληλεπιδράσει με τη συσκευή σας για να επιταχύνει τη διαδικασία μετατροπής των δεδομένων. Αυτή η ρύθμιση είναι \"κατά το καλύτερο δυνατόν\": σε περίπτωση αποτυχίας, θα επιστραφεί στη μετατροπή δεομένων μέσω λογισμικού. Το VP9 ενδέχεται να λειτουργεί ή να μην λειτουργεί, ανάλογα με το υλικό σας.",
+ "transcoding_acceleration_nvenc": "NVENC (απαιτεί NVIDIA GPU)",
+ "transcoding_acceleration_qsv": "Quick Sync (απαιτεί επεξεργαστή Intel 7ης γενιάς ή νεότερο)",
+ "transcoding_acceleration_rkmpp": "RKMPP (μόνο σε Rockchip SOCs)",
+ "transcoding_acceleration_vaapi": "VAAPI",
+ "transcoding_accepted_audio_codecs": "Αποδεκτοί κωδικοποιητές ήχου",
+ "transcoding_accepted_audio_codecs_description": "Επιλέξτε ποιοι κωδικοποιητές ήχου δεν χρειάζεται να μετατραπούν. Χρησιμοποιείται μόνο για ορισμένες πολιτικές μετατροπής.",
+ "transcoding_accepted_containers": "Αποδεκτά κοντέινερ",
+ "transcoding_accepted_containers_description": "Επιλέξτε ποιοι τύποι κοντέινερ δεν χρειάζονται ανασυγκρότηση σε MP4. Χρησιμοποιείται μόνο για ορισμένες πολιτικές μετατροπής.",
+ "transcoding_accepted_video_codecs": "Αποδεκτοί κωδικοποιητές βίντεο",
+ "transcoding_accepted_video_codecs_description": "Επιλέξτε ποιοι κωδικοποιητές βίντεο δεν χρειάζεται να μετατραπούν. Χρησιμοποιείται μόνο για ορισμένες πολιτικές μετατροπής.",
+ "transcoding_advanced_options_description": "Επιλογές που οι περισσότεροι χρήστες δεν χρειάζεται να αλλάξουν",
+ "transcoding_audio_codec": "Κωδικοποιητής ήχου",
+ "transcoding_audio_codec_description": "Το Opus είναι η επιλογή για την υψηλότερη ποιότητα, αλλά έχει χαμηλότερη συμβατότητα με παλιές συσκευές ή λογισμικό.",
+ "transcoding_bitrate_description": "Βίντεο με ρυθμό μετάδοσης μεγαλύτερο από το μέγιστο ή που δεν είναι σε αποδεκτή μορφή",
+ "transcoding_codecs_learn_more": "Για να μάθετε περισσότερα για την ορολογία που χρησιμοποιείται εδώ, ανατρέξτε στην τεκμηρίωση του FFmpeg για τους κωδικοποιητές {label} is the user's Storage Label",
"system_settings": "System Settings",
+ "tag_cleanup_job": "Tag cleanup",
+ "template_email_available_tags": "You can use the following variables in your template: {tags}",
+ "template_email_if_empty": "If the template is empty, the default email will be used.",
+ "template_email_invite_album": "Invite Album Template",
+ "template_email_preview": "Preview",
+ "template_email_settings": "Email Templates",
+ "template_email_settings_description": "Manage custom email notification templates",
+ "template_email_update_album": "Update Album Template",
+ "template_email_welcome": "Welcome email template",
+ "template_settings": "Notification Templates",
+ "template_settings_description": "Manage custom templates for notifications.",
"theme_custom_css_settings": "Custom CSS",
"theme_custom_css_settings_description": "Cascading Style Sheets allow the design of Immich to be customized.",
"theme_settings": "Theme Settings",
@@ -268,7 +292,7 @@
"transcoding_hardware_acceleration": "Hardware Acceleration",
"transcoding_hardware_acceleration_description": "Experimental; much faster, but will have lower quality at the same bitrate",
"transcoding_hardware_decoding": "Hardware decoding",
- "transcoding_hardware_decoding_setting_description": "Applies only to NVENC, QSV and RKMPP. Enables end-to-end acceleration instead of only accelerating encoding. May not work on all videos.",
+ "transcoding_hardware_decoding_setting_description": "Enables end-to-end acceleration instead of only accelerating encoding. May not work on all videos.",
"transcoding_hevc_codec": "HEVC codec",
"transcoding_max_b_frames": "Maximum B-frames",
"transcoding_max_b_frames_description": "Higher values improve compression efficiency, but slow down encoding. May not be compatible with hardware acceleration on older devices. 0 disables B-frames, while -1 sets this value automatically.",
@@ -294,8 +318,6 @@
"transcoding_threads_description": "Higher values lead to faster encoding, but leave less room for the server to process other tasks while active. This value should not be more than the number of CPU cores. Maximizes utilization if set to 0.",
"transcoding_tone_mapping": "Tone-mapping",
"transcoding_tone_mapping_description": "Attempts to preserve the appearance of HDR videos when converted to SDR. Each algorithm makes different tradeoffs for color, detail and brightness. Hable preserves detail, Mobius preserves color, and Reinhard preserves brightness.",
- "transcoding_tone_mapping_npl": "Tone-mapping NPL",
- "transcoding_tone_mapping_npl_description": "Colors will be adjusted to look normal for a display of this brightness. Counter-intuitively, lower values increase the brightness of the video and vice versa since it compensates for the brightness of the display. 0 sets this value automatically.",
"transcoding_transcode_policy": "Transcode policy",
"transcoding_transcode_policy_description": "Policy for when a video should be transcoded. HDR videos will always be transcoded (except if transcoding is disabled).",
"transcoding_two_pass_encoding": "Two-pass encoding",
@@ -309,6 +331,7 @@
"trash_settings_description": "Manage trash settings",
"untracked_files": "Untracked Files",
"untracked_files_description": "These files are not tracked by the application. They can be the results of failed moves, interrupted uploads, or left behind due to a bug",
+ "user_cleanup_job": "User cleanup",
"user_delete_delay": "{user}'s account and assets will be scheduled for permanent deletion in {delay, plural, one {# day} other {# days}}.",
"user_delete_delay_settings": "Delete delay",
"user_delete_delay_settings_description": "Number of days after removal to permanently delete a user's account and assets. The user deletion job runs at midnight to check for users that are ready for deletion. Changes to this setting will be evaluated at the next execution.",
@@ -384,8 +407,8 @@
"asset_filename_is_offline": "Asset {filename} is offline",
"asset_has_unassigned_faces": "Asset has unassigned faces",
"asset_hashing": "Hashing...",
- "asset_offline": "Asset offline",
- "asset_offline_description": "This asset is offline. Immich can not access its file location. Please ensure the asset is available and then rescan the library.",
+ "asset_offline": "Asset Offline",
+ "asset_offline_description": "This external asset is no longer found on disk. Please contact your Immich administrator for help.",
"asset_skipped": "Skipped",
"asset_skipped_in_trash": "In trash",
"asset_uploaded": "Uploaded",
@@ -398,7 +421,7 @@
"assets_moved_to_trash_count": "Moved {count, plural, one {# asset} other {# assets}} to trash",
"assets_permanently_deleted_count": "Permanently deleted {count, plural, one {# asset} other {# assets}}",
"assets_removed_count": "Removed {count, plural, one {# asset} other {# assets}}",
- "assets_restore_confirmation": "Are you sure you want to restore all your trashed assets? You cannot undo this action!",
+ "assets_restore_confirmation": "Are you sure you want to restore all your trashed assets? You cannot undo this action! Note that any offline assets cannot be restored this way.",
"assets_restored_count": "Restored {count, plural, one {# asset} other {# assets}}",
"assets_trashed_count": "Trashed {count, plural, one {# asset} other {# assets}}",
"assets_were_part_of_album_count": "{count, plural, one {Asset was} other {Assets were}} already part of the album",
@@ -409,6 +432,7 @@
"birthdate_saved": "Date of birth saved successfully",
"birthdate_set_description": "Date of birth is used to calculate the age of this person at the time of a photo.",
"blurred_background": "Blurred background",
+ "bugs_and_feature_requests": "Bugs & Feature Requests",
"build": "Build",
"build_image": "Build Image",
"bulk_delete_duplicates_confirmation": "Are you sure you want to bulk delete {count, plural, one {# duplicate asset} other {# duplicate assets}}? This will keep the largest asset of each group and permanently delete all other duplicates. You cannot undo this action!",
@@ -454,6 +478,7 @@
"confirm": "Confirm",
"confirm_admin_password": "Confirm Admin Password",
"confirm_delete_shared_link": "Are you sure you want to delete this shared link?",
+ "confirm_keep_this_delete_others": "All other assets in the stack will be deleted except for this asset. Are you sure you want to continue?",
"confirm_password": "Confirm password",
"contain": "Contain",
"context": "Context",
@@ -501,18 +526,21 @@
"delete_api_key_prompt": "Are you sure you want to delete this API key?",
"delete_duplicates_confirmation": "Are you sure you want to permanently delete these duplicates?",
"delete_key": "Delete key",
- "delete_library": "Delete library",
+ "delete_library": "Delete Library",
"delete_link": "Delete link",
+ "delete_others": "Delete others",
"delete_shared_link": "Delete shared link",
"delete_tag": "Delete tag",
"delete_tag_confirmation_prompt": "Are you sure you want to delete {tagName} tag?",
"delete_user": "Delete user",
"deleted_shared_link": "Deleted shared link",
+ "deletes_missing_assets": "Deletes assets missing from disk",
"description": "Description",
"details": "Details",
"direction": "Direction",
"disabled": "Disabled",
"disallow_edits": "Disallow edits",
+ "discord": "Discord",
"discover": "Discover",
"dismiss_all_errors": "Dismiss all errors",
"dismiss_error": "Dismiss error",
@@ -521,6 +549,7 @@
"display_original_photos": "Display original photos",
"display_original_photos_setting_description": "Prefer to display the original photo when viewing an asset rather than thumbnails when the original asset is web-compatible. This may result in slower photo display speeds.",
"do_not_show_again": "Do not show this message again",
+ "documentation": "Documentation",
"done": "Done",
"download": "Download",
"download_include_embedded_motion_videos": "Embedded videos",
@@ -590,6 +619,7 @@
"failed_to_create_shared_link": "Failed to create shared link",
"failed_to_edit_shared_link": "Failed to edit shared link",
"failed_to_get_people": "Failed to get people",
+ "failed_to_keep_this_delete_others": "Failed to keep this asset and delete the other assets",
"failed_to_load_asset": "Failed to load asset",
"failed_to_load_assets": "Failed to load assets",
"failed_to_load_people": "Failed to load people",
@@ -657,8 +687,8 @@
"unable_to_remove_album_users": "Unable to remove users from album",
"unable_to_remove_api_key": "Unable to remove API Key",
"unable_to_remove_assets_from_shared_link": "Unable to remove assets from shared link",
+ "unable_to_remove_deleted_assets": "Unable to remove offline files",
"unable_to_remove_library": "Unable to remove library",
- "unable_to_remove_offline_files": "Unable to remove offline files",
"unable_to_remove_partner": "Unable to remove partner",
"unable_to_remove_reaction": "Unable to remove reaction",
"unable_to_repair_items": "Unable to repair items",
@@ -704,6 +734,7 @@
"external": "External",
"external_libraries": "External Libraries",
"face_unassigned": "Unassigned",
+ "failed_to_load_assets": "Failed to load assets",
"favorite": "Favorite",
"favorite_or_unfavorite_photo": "Favorite or unfavorite photo",
"favorites": "Favorites",
@@ -719,7 +750,6 @@
"fix_incorrect_match": "Fix incorrect match",
"folders": "Folders",
"folders_feature_description": "Browsing the folder view for the photos and videos on the file system",
- "force_re-scan_library_files": "Force Re-scan All Library Files",
"forward": "Forward",
"general": "General",
"get_help": "Get Help",
@@ -774,6 +804,8 @@
"jobs": "Jobs",
"keep": "Keep",
"keep_all": "Keep All",
+ "keep_this_delete_others": "Keep this, delete others",
+ "kept_this_deleted_others": "Kept this asset and deleted {count, plural, one {# asset} other {# assets}}",
"keyboard_shortcuts": "Keyboard shortcuts",
"language": "Language",
"language_setting_description": "Select your preferred language",
@@ -806,6 +838,7 @@
"look": "Look",
"loop_videos": "Loop videos",
"loop_videos_description": "Enable to automatically loop a video in the detail viewer.",
+ "main_branch_warning": "You’re using a development version; we strongly recommend using a release version!",
"make": "Make",
"manage_shared_links": "Manage shared links",
"manage_sharing_with_partners": "Manage sharing with partners",
@@ -875,6 +908,7 @@
"notifications": "Notifications",
"notifications_setting_description": "Manage notifications",
"oauth": "OAuth",
+ "official_immich_resources": "Official Immich Resources",
"offline": "Offline",
"offline_paths": "Offline paths",
"offline_paths_description": "These results may be due to manual deletion of files that are not part of an external library.",
@@ -887,7 +921,6 @@
"onboarding_welcome_user": "Welcome, {user}",
"online": "Online",
"only_favorites": "Only favorites",
- "only_refreshes_modified_files": "Only refreshes modified files",
"open_in_map_view": "Open in map view",
"open_in_openstreetmap": "Open in OpenStreetMap",
"open_the_search_filters": "Open the search filters",
@@ -1001,14 +1034,17 @@
"reassigned_assets_to_new_person": "Re-assigned {count, plural, one {# asset} other {# assets}} to a new person",
"reassing_hint": "Assign selected assets to an existing person",
"recent": "Recent",
+ "recent-albums": "Recent albums",
"recent_searches": "Recent searches",
"refresh": "Refresh",
"refresh_encoded_videos": "Refresh encoded videos",
+ "refresh_faces": "Refresh faces",
"refresh_metadata": "Refresh metadata",
"refresh_thumbnails": "Refresh thumbnails",
"refreshed": "Refreshed",
- "refreshes_every_file": "Refreshes every file",
+ "refreshes_every_file": "Re-reads all existing and new files",
"refreshing_encoded_video": "Refreshing encoded video",
+ "refreshing_faces": "Refreshing faces",
"refreshing_metadata": "Refreshing metadata",
"regenerating_thumbnails": "Regenerating thumbnails",
"remove": "Remove",
@@ -1016,10 +1052,11 @@
"remove_assets_shared_link_confirmation": "Are you sure you want to remove {count, plural, one {# asset} other {# assets}} from this shared link?",
"remove_assets_title": "Remove assets?",
"remove_custom_date_range": "Remove custom date range",
+ "remove_deleted_assets": "Remove Deleted Assets",
"remove_from_album": "Remove from album",
"remove_from_favorites": "Remove from favorites",
"remove_from_shared_link": "Remove from shared link",
- "remove_offline_files": "Remove Offline Files",
+ "remove_url": "Remove URL",
"remove_user": "Remove user",
"removed_api_key": "Removed API Key: {name}",
"removed_from_archive": "Removed from archive",
@@ -1055,8 +1092,7 @@
"saved_settings": "Saved settings",
"say_something": "Say something",
"scan_all_libraries": "Scan All Libraries",
- "scan_all_library_files": "Re-scan All Library Files",
- "scan_new_library_files": "Scan New Library Files",
+ "scan_library": "Scan",
"scan_settings": "Scan Settings",
"scanning_for_album": "Scanning for album...",
"search": "Search",
@@ -1074,6 +1110,7 @@
"search_options": "Search options",
"search_people": "Search people",
"search_places": "Search places",
+ "search_settings": "Search settings",
"search_state": "Search state...",
"search_tags": "Search tags...",
"search_timezone": "Search timezone...",
@@ -1105,6 +1142,7 @@
"set": "Set",
"set_as_album_cover": "Set as album cover",
"set_as_profile_picture": "Set as profile picture",
+ "set_as_featured_photo": "Set as featured photo",
"set_date_of_birth": "Set date of birth",
"set_profile_picture": "Set profile picture",
"set_slideshow_to_fullscreen": "Set Slideshow to fullscreen",
@@ -1140,6 +1178,7 @@
"show_person_options": "Show person options",
"show_progress_bar": "Show Progress Bar",
"show_search_options": "Show search options",
+ "show_slideshow_transition": "Show slideshow transition",
"show_supporter_badge": "Supporter badge",
"show_supporter_badge_description": "Show a supporter badge",
"shuffle": "Shuffle",
@@ -1158,6 +1197,7 @@
"sort_items": "Number of items",
"sort_modified": "Date modified",
"sort_oldest": "Oldest photo",
+ "sort_people_by_similarity": "Sort people by similarity",
"sort_recent": "Most recent photo",
"sort_title": "Title",
"source": "Source",
@@ -1181,13 +1221,16 @@
"submit": "Submit",
"suggestions": "Suggestions",
"sunrise_on_the_beach": "Sunrise on the beach",
+ "support": "Support",
+ "support_and_feedback": "Support & Feedback",
+ "support_third_party_description": "Your Immich installation was packaged by a third-party. Issues you experience may be caused by that package, so please raise issues with them in the first instance using the links below.",
"swap_merge_direction": "Swap merge direction",
"sync": "Sync",
"tag": "Tag",
"tag_assets": "Tag assets",
"tag_created": "Created tag: {tag}",
"tag_feature_description": "Browsing photos and videos grouped by logical tag topics",
- "tag_not_found_question": "Cannot find a tag? Create one here",
+ "tag_not_found_question": "Cannot find a tag? Create a new tag.",
"tag_updated": "Updated tag: {tag}",
"tagged_assets": "Tagged {count, plural, one {# asset} other {# assets}}",
"tags": "Tags",
@@ -1196,7 +1239,9 @@
"theme_selection": "Theme selection",
"theme_selection_description": "Automatically set the theme to light or dark based on your browser's system preference",
"they_will_be_merged_together": "They will be merged together",
+ "third_party_resources": "Third-Party Resources",
"time_based_memories": "Time-based memories",
+ "timeline": "Timeline",
"timezone": "Timezone",
"to_archive": "Archive",
"to_change_password": "Change password",
@@ -1206,6 +1251,7 @@
"to_trash": "Trash",
"toggle_settings": "Toggle settings",
"toggle_theme": "Toggle dark theme",
+ "total": "Total",
"total_usage": "Total usage",
"trash": "Trash",
"trash_all": "Trash All",
@@ -1255,6 +1301,8 @@
"user_purchase_settings_description": "Manage your purchase",
"user_role_set": "Set {user} as {role}",
"user_usage_detail": "User usage detail",
+ "user_usage_stats": "Account usage statistics",
+ "user_usage_stats_description": "View account usage statistics",
"username": "Username",
"users": "Users",
"utilities": "Utilities",
@@ -1262,7 +1310,9 @@
"variables": "Variables",
"version": "Version",
"version_announcement_closing": "Your friend, Alex",
- "version_announcement_message": "Hi friend, there is a new version of the application please take your time to visit the release notes and ensure your docker-compose.yml, and .env setup is up-to-date to prevent any misconfigurations, especially if you use WatchTower or any mechanism that handles updating your application automatically.",
+ "version_announcement_message": "Hi there! A new version of Immich is available. Please take some time to read the release notes to ensure your setup is up-to-date to prevent any misconfigurations, especially if you use WatchTower or any mechanism that handles updating your Immich instance automatically.",
+ "version_history": "Version History",
+ "version_history_item": "Installed {version} on {date}",
"video": "Video",
"video_hover_setting": "Play video thumbnail on hover",
"video_hover_setting_description": "Play video thumbnail when mouse is hovering over item. Even when disabled, playback can be started by hovering over the play icon.",
@@ -1274,6 +1324,7 @@
"view_all_users": "View all users",
"view_in_timeline": "View in timeline",
"view_links": "View links",
+ "view_name": "View",
"view_next_asset": "View next asset",
"view_previous_asset": "View previous asset",
"view_stack": "View Stack",
@@ -1282,8 +1333,12 @@
"warning": "Warning",
"week": "Week",
"welcome": "Welcome",
+<<<<<<< HEAD:web/src/lib/i18n/en.json
"welcome_to_immich": "Welcome to immich",
"workflows": "Workflows",
+=======
+ "welcome_to_immich": "Welcome to Immich",
+>>>>>>> 34ce61d03a206f616325491281882afff4b617f8:i18n/en.json
"year": "Year",
"years_ago": "{years, plural, one {# year} other {# years}} ago",
"yes": "Yes",
diff --git a/web/src/lib/i18n/es.json b/i18n/es.json
similarity index 81%
rename from web/src/lib/i18n/es.json
rename to i18n/es.json
index f0c89ffb46..10a0085f25 100644
--- a/web/src/lib/i18n/es.json
+++ b/i18n/es.json
@@ -1,5 +1,5 @@
{
- "about": "Acerca de",
+ "about": "Acercade",
"account": "Cuenta",
"account_settings": "Ajustes de la cuenta",
"acknowledge": "De acuerdo",
@@ -7,69 +7,81 @@
"actions": "Acciones",
"active": "Activo",
"activity": "Actividad",
- "activity_changed": "La actividad {enabled, select, true {activada} other {desactivada}}",
- "add": "Añadir",
- "add_a_description": "Añadir una descripción",
- "add_a_location": "Añadir una ubicación",
- "add_a_name": "Añadir un nombre",
- "add_a_title": "Añadir un título",
- "add_exclusion_pattern": "Añadir patrón de exclusión",
- "add_import_path": "Añadir ruta de importación",
- "add_location": "Añadir ubicación",
- "add_more_users": "Añadir más usuarios",
- "add_partner": "Añadir invitado",
- "add_path": "Añadir ruta",
- "add_photos": "Añadir fotos",
- "add_to": "Añadir a...",
- "add_to_album": "Añadir a un álbum",
- "add_to_shared_album": "Añadir a un álbum compartido",
- "added_to_archive": "Archivar",
- "added_to_favorites": "Añadido a favoritos",
- "added_to_favorites_count": "Añadido {count, number} a favoritos",
+ "activity_changed": "La actividad está {enabled, select, true {activada} other {desactivada}}",
+ "add": "Agregar",
+ "add_a_description": "Agregar descripción",
+ "add_a_location": "Agregar ubicación",
+ "add_a_name": "Agregar nombre",
+ "add_a_title": "Agregar título",
+ "add_exclusion_pattern": "Agregar patrón de exclusión",
+ "add_import_path": "Agregar ruta de importación",
+ "add_location": "Agregar ubicación",
+ "add_more_users": "Agregar más usuarios",
+ "add_partner": "Agregar compañero",
+ "add_path": "Agregar carpeta",
+ "add_photos": "Agregar fotos",
+ "add_to": "Agregar a...",
+ "add_to_album": "Incluir en álbum",
+ "add_to_shared_album": "Incluir en álbum compartido",
+ "add_url": "Añadir URL",
+ "added_to_archive": "Archivado",
+ "added_to_favorites": "Agregado a favoritos",
+ "added_to_favorites_count": "Agregado {count, number} a favoritos",
"admin": {
- "add_exclusion_pattern_description": "Añade patrones de exclusión. Puedes utilizar los caracteres *, ** y ? (globbing). Para ignorar los archivos en cualquier ruta llamada \"Raw\", utiliza \"**/Raw/**\". Para ignorar todos los archivos que terminan en \".tif\", utiliza \"**/*.tif\". Para ignorar una ruta desde la raíz, utiliza \"/carpeta/a/ignorar/**\".",
- "authentication_settings": "Configuración de autenticación",
- "authentication_settings_description": "Gestionar clave, Oauth y otros configuraciones de autenticación",
- "authentication_settings_disable_all": "¿Estás seguro de que deseas desactivar todos los métodos de inicio de sesión? Se desactivará el inicio de sesión.",
- "authentication_settings_reenable": "Para volver a habilitar, utilice un Comando del servidor .",
+ "add_exclusion_pattern_description": "Agrega patrones de exclusión. Puedes utilizar los caracteres *, ** y ? (globbing). Ejemplos: para ignorar todos los archivos en cualquier directorio llamado \"Raw\", utiliza \"**/Raw/**\". Para ignorar todos los archivos que terminan en \".tif\", utiliza \"**/*.tif\". Para ignorar una ruta absoluta, utiliza \"/carpeta/a/ignorar/**\".",
+ "asset_offline_description": "Este recurso externo de la biblioteca ya no se encuentra en el disco y se ha movido a la papelera. Si el archivo se movió dentro de la biblioteca, comprueba la línea temporal para el nuevo recurso correspondiente. Para restaurar este recurso, asegúrate de que Immich puede acceder a la siguiente ruta de archivo y escanear la biblioteca.",
+ "authentication_settings": "Parámetros de autenticación",
+ "authentication_settings_description": "Gestionar contraseñas, OAuth y otros parámetros de autenticación",
+ "authentication_settings_disable_all": "¿Estás seguro de que deseas desactivar todos los métodos de inicio de sesión? Esto desactivará por completo el inicio de sesión.",
+ "authentication_settings_reenable": "Para reactivarlo, utiliza un Comando del servidor.",
"background_task_job": "Tareas en segundo plano",
- "check_all": "Comprobar todo",
- "cleared_jobs": "Trabajos realizados para: {job}",
- "config_set_by_file": "La configuración está fijada actualmente en base a un archivo",
+ "backup_database": "Respaldar base de datos",
+ "backup_database_enable_description": "Activar respaldo de base de datos",
+ "backup_keep_last_amount": "Cantidad de respaldos previos a mantener",
+ "backup_settings": "Ajustes de respaldo",
+ "backup_settings_description": "Administrar configuración de respaldo de base de datos",
+ "check_all": "Verificar todo",
+ "cleared_jobs": "Trabajos borrados para: {job}",
+ "config_set_by_file": "La configuración está definida por un archivo de configuración",
"confirm_delete_library": "¿Estás seguro de que quieres eliminar la biblioteca {library}?",
- "confirm_delete_library_assets": "¿Estás seguro de que quieras eliminar esta biblioteca? Esto eliminará los {count, plural, one {# contained asset} other {all # contained assets}} elementos en Immich y no puede deshacerse. Los archivos permanecerán en tu almacenamiento.",
- "confirm_email_below": "Para confirmar, escribe \"{email}\" debajo",
- "confirm_reprocess_all_faces": "¿Estás seguro de que quieres volver a procesar todas las caras? Esto también eliminará las personas a las que le hayas asignado nombre.",
- "confirm_user_password_reset": "¿Estás seguro de que quieres resetear la contraseña de {user}?",
- "crontab_guru": "Crontab Guru",
+ "confirm_delete_library_assets": "¿Estás seguro de que quieras eliminar esta biblioteca? Esto eliminará los {count, plural, one {# contained asset} other {all # contained assets}} elementos en Immich y no puede deshacerse. Los archivos permanecerán en disco.",
+ "confirm_email_below": "Para confirmar, escribe \"{email}\" a continuación",
+ "confirm_reprocess_all_faces": "¿Estás seguro de que deseas reprocesar todas las caras? Esto borrará a todas las personas que nombraste.",
+ "confirm_user_password_reset": "¿Estás seguro de que quieres restablecer la contraseña de {user}?",
+ "create_job": "Crear trabajo",
+ "cron_expression": "Expresión CRON",
+ "cron_expression_description": "Establece el intervalo de escaneo utilizando el formato CRON. Para más información puedes consultar, por ejemplo, Crontab Guru",
+ "cron_expression_presets": "Valores predefinidos de expresión CRON",
"disable_login": "Deshabilitar inicio de sesión",
- "disabled": "Deshabilitado",
- "duplicate_detection_job_description": "Lanza el aprendizaje automático para detectar imágenes similares. Necesita que esté activa la Búsqueda Inteligente",
- "exclusion_pattern_description": "Los patrones de exclusión te permiten ignorar archivos y carpetas al escanear tu biblioteca. Esto es útil hay carpetas que contienen archivos que no quieres importar (por ejemplo los ficheros RAW).",
- "external_library_created_at": "Biblioteca externa (creado el {date})",
+ "duplicate_detection_job_description": "Lanza el aprendizaje automático para detectar imágenes similares. Necesita tener activado \"Búsqueda Inteligente\"",
+ "exclusion_pattern_description": "Los patrones de exclusión te permiten ignorar archivos y carpetas al escanear tu biblioteca. Es útil si tienes carpetas que contienen archivos que no deseas importar, por ejemplo archivos RAW.",
+ "external_library_created_at": "Biblioteca externa (creada el {date})",
"external_library_management": "Gestión de bibliotecas externas",
"face_detection": "Detección de caras",
- "face_detection_description": "Detecta las caras usando aprendizaje automático. Para los vídeos sólo se tiene en cuenta la imagen de previsualización. \"Todo\" implica volver a procesar todos los elementos. \"Missing\" pone en la cola los elementos que aún no han sido procesados. Las caras detectadas serán añadidas a la cola para ser procesadas posteriormente mediante Reconocimiento Facial y agrupadas en las personas que ya existan o en nuevas personas detectadas.",
- "facial_recognition_job_description": "Agrupa las caras detectadas en las personas. Este paso se lanza tras las Detección de Caras. \"All\" reagrupa todas las caras. \"Pendiente\" añade a la colas aquellas caras que no fueron asignadas a ninguna persona.",
+ "face_detection_description": "Detecta las caras en los activos mediante aprendizaje automático. En el caso de los vídeos, solo se tiene en cuenta la miniatura. \"Actualizar\" (re)procesará todos los elementos. \"Restablecer\" borra además todos los datos de caras actuales. \"Falta\" pone en cola los elementos que aún no se han procesado. Las caras detectadas se pondrán en cola para el reconocimiento facial una vez finalizada la detección, agrupándolos en personas existentes o nuevas.",
+ "facial_recognition_job_description": "Agrupa las caras detectadas en personas. Este paso se ejecuta una vez finalizada la detección de caras. \"Restablecer\" (re)agrupa todas las caras. \"Falta\" pone en cola las caras que no tienen asignada una persona.",
"failed_job_command": "El comando {command} ha fallado para la tarea: {job}",
- "force_delete_user_warning": "CUIDADO: Esta acción eliminará inmediatamente el usuario y los elementos. Esta accion no se puede deshacer y los archivos no pueden ser recuperados.",
- "forcing_refresh_library_files": "Forzar la recarga de todos los archivos de la biblioteca",
- "image_format_description": "WebP genera archivos más pequeños que JPEG, pero es más lento al codificar.",
- "image_prefer_embedded_preview": "Preferir vista previa incrustada",
- "image_prefer_embedded_preview_setting_description": "Usar vistas previas incrustadas en fotos RAW como entrada para el procesamiento de imágenes cuando estén disponibles. Esto puede producir colores más precisos en algunas imágenes, pero la calidad de la vista previa depende de la cámara y la imagen puede tener más artefactos de compresión.",
- "image_prefer_wide_gamut": "Preferir gama amplia",
- "image_prefer_wide_gamut_setting_description": "Usar \"Display P3\" para las miniaturas. Esto preserva mejor la vivacidad de las imágenes con espacios de color amplios, pero las imágenes pueden aparecer de manera diferente en dispositivos antiguos con una versión antigua del navegador. Las imágenes sRGB se mantienen como sRGB para evitar cambios de color.",
- "image_preview_format": "Formato de previsualización",
- "image_preview_resolution": "Resolución de previsualización",
- "image_preview_resolution_description": "Se utiliza al ver una sola foto y para el aprendizaje automático. Las resoluciones más altas pueden preservar más detalles, pero tardan más en codificarse, tienen tamaños de archivo más grandes y pueden reducir la capacidad de respuesta de la aplicación.",
+ "force_delete_user_warning": "CUIDADO: Esta acción eliminará inmediatamente el usuario y todos los elementos. Esta accion no se puede deshacer y los archivos no pueden ser recuperados.",
+ "forcing_refresh_library_files": "Forzando la recarga de todos los elementos en la biblioteca",
+ "image_format": "Formato",
+ "image_format_description": "WebP genera archivos más pequeños que JPEG, pero es más lento al codificarlos.",
+ "image_prefer_embedded_preview": "Preferir vista previa embebida",
+ "image_prefer_embedded_preview_setting_description": "Usar vistas previas embebidas en fotos RAW como entrada para el procesamiento de imágenes cuando estén disponibles. Esto puede producir colores más precisos en algunas imágenes, pero la calidad de la vista previa depende de la cámara y la imagen puede tener más artefactos de compresión.",
+ "image_prefer_wide_gamut": "Preferir 'gamut' amplio",
+ "image_prefer_wide_gamut_setting_description": "Usar \"Display P3\" para las miniaturas. Preserva mejor la vivacidad de las imágenes con espacios de color amplios pero las imágenes pueden aparecer de manera diferente en dispositivos antiguos con una versión antigua del navegador. Las imágenes sRGB se mantienen como sRGB para evitar cambios de color.",
+ "image_preview_description": "Imagen de tamaño mediano con metadatos eliminados. Es utilizado al visualizar un solo activo y para el aprendizaje automático",
+ "image_preview_quality_description": "Calidad de vista previa de 1 a 100. Es mejor cuanto más alta sea la calidad pero genera archivos más grandes y puede reducir la capacidad de respuesta de la aplicación. Establecer un valor bajo puede afectar la calidad del aprendizaje automático.",
+ "image_preview_title": "Ajustes de la vista previa",
"image_quality": "Calidad",
- "image_quality_description": "Calidad de imagen de 1 a 100. Un valor más alto mejora la calidad pero genera archivos más grandes.",
+ "image_resolution": "Resolución",
+ "image_resolution_description": "Las resoluciones más altas pueden conservar más detalles pero requieren más tiempo para codificar, tienen tamaños de archivo más grandes y pueden afectar la capacidad de respuesta de la aplicación.",
"image_settings": "Ajustes de imagen",
"image_settings_description": "Administrar la calidad y resolución de las imágenes generadas",
- "image_thumbnail_format": "Formato de las miniaturas",
- "image_thumbnail_resolution": "Resolución de las miniaturas",
- "image_thumbnail_resolution_description": "Se utiliza para ver grupos de fotos (cronología, vista de álbum, etc.). Las resoluciones más altas pueden conservar más detalles, pero tardan más en codificarse, tienen archivos de mayor tamaño y pueden reducir la reactividad de la aplicación.",
+ "image_thumbnail_description": "Miniatura pequeña con metadatos eliminados. Se utiliza al visualizar grupos de fotos como la línea temporal principal",
+ "image_thumbnail_quality_description": "Calidad de miniatura de 1 a 100. Es mejor cuanto más alto es el valor pero genera archivos más grandes y puede reducir la capacidad de respuesta de la aplicación.",
+ "image_thumbnail_title": "Ajustes de las miniaturas",
"job_concurrency": "{job}: Procesos simultáneos",
+ "job_created": "Trabajo creado",
"job_not_concurrency_safe": "Esta tarea no es segura para la simultaneidad.",
"job_settings": "Configuración tareas",
"job_settings_description": "Administrar tareas simultáneas",
@@ -77,52 +89,49 @@
"jobs_delayed": "{jobCount, plural, one {# retrasado} other {# retrasados}}",
"jobs_failed": "{jobCount, plural, one {# fallido} other {# fallidos}}",
"library_created": "La biblioteca ha sido creada: {library}",
- "library_cron_expression": "Expresión cron",
- "library_cron_expression_description": "Establece el intervalo de escaneo utilizando el formato cron. Para más información puede consultar, por ejemplo, Crontab Guru",
- "library_cron_expression_presets": "Valores predefinidos de expresión cron",
"library_deleted": "Biblioteca eliminada",
- "library_import_path_description": "Indica una carpeta para importar. Esta carpeta, incluidas las subcarpetas, serán escaneadas en busca de multimedia.",
- "library_scanning": "Escaneado periódico",
- "library_scanning_description": "Configura el escaneo periódico de la biblioteca",
+ "library_import_path_description": "Indica una carpeta para importar. Esta carpeta y sus subcarpetas serán escaneadas en busca de elementos multimedia.",
+ "library_scanning": "Escaneo periódico",
+ "library_scanning_description": "Configurar el escaneo periódico de la biblioteca",
"library_scanning_enable_description": "Activar el escaneo periódico de la biblioteca",
"library_settings": "Biblioteca externa",
"library_settings_description": "Administrar configuración biblioteca externa",
"library_tasks_description": "Realizar tareas de biblioteca",
- "library_watching_enable_description": "Ver las bibliotecas externas para detectar cambios en los archivos",
+ "library_watching_enable_description": "Vigilar las bibliotecas externas para detectar cambios en los archivos",
"library_watching_settings": "Vigilancia de la biblioteca (EXPERIMENTAL)",
"library_watching_settings_description": "Vigilar automaticamente en busca de archivos modificados",
"logging_enable_description": "Habilitar registro",
- "logging_level_description": "Cuando está habilitado, qué nivel de registro utilizar.",
+ "logging_level_description": "Indica el nivel de registro a utilizar cuando está habilitado.",
"logging_settings": "Registro",
- "machine_learning_clip_model": "Modelo de CLIP",
- "machine_learning_clip_model_description": "El nombre de un modelo CLIP listado aquí. Tenga en cuenta que debe volver a ejecutar el trabajo 'Smart Search' para todas las imágenes al cambiar un modelo.",
- "machine_learning_duplicate_detection": "Detección duplicados",
+ "machine_learning_clip_model": "Modelo CLIP (Contrastive Language-Image Pre-Training)",
+ "machine_learning_clip_model_description": "El nombre de un modelo CLIP listado aquí. Tendrás que relanzar el trabajo 'Búsqueda Inteligente' para todos los elementos al cambiar de modelo.",
+ "machine_learning_duplicate_detection": "Detección de duplicados",
"machine_learning_duplicate_detection_enabled": "Habilitar detección de duplicados",
"machine_learning_duplicate_detection_enabled_description": "Si está deshabilitado, los activos exactamente idénticos seguirán siendo eliminados.",
- "machine_learning_duplicate_detection_setting_description": "Utilice incrustaciones de CLIP para encontrar posibles duplicados",
+ "machine_learning_duplicate_detection_setting_description": "Usa incrustaciones de CLIP (Contrastive Language-Image Pre-Training) para encontrar posibles duplicados",
"machine_learning_enabled": "Habilitar aprendizaje automático",
- "machine_learning_enabled_description": "Si está deshabilitada, todas las funciones de ML se deshabilitarán independientemente de la configuración a continuación.",
+ "machine_learning_enabled_description": "Al desactivarla todas las funciones de ML se deshabilitarán independientemente de la configuración a continuación.",
"machine_learning_facial_recognition": "Reconocimiento facial",
- "machine_learning_facial_recognition_description": "Detecta, reconoce y agrupa las caras en imágenes",
+ "machine_learning_facial_recognition_description": "Detecta, reconoce y agrupa las caras en las imágenes",
"machine_learning_facial_recognition_model": "Modelo de reconocimiento facial",
- "machine_learning_facial_recognition_model_description": "Los modelos se enumeran en orden descendente de tamaño. Los modelos más grandes son más lentos y utilizan más memoria, pero producen mejores resultados. Tenga en cuenta que debe volver a ejecutar la tarea de reconocimiento facial para todas las imágenes al cambiar un modelo.",
- "machine_learning_facial_recognition_setting": "Habilitar reconocimiento de caras",
- "machine_learning_facial_recognition_setting_description": "Si está deshabilitada, las imágenes no se procesarán para el reconocimiento facial y no se incluirán en la sección Personas en la página Explorar.",
- "machine_learning_max_detection_distance": "Distancia máxima de detección",
- "machine_learning_max_detection_distance_description": "Distancia máxima entre dos imágenes para considerarlas duplicadas, oscilando entre 0,001-0,1. Los valores más altos detectarán más duplicados, pero pueden generar falsos positivos.",
- "machine_learning_max_recognition_distance": "Distancia máxima de reconocimiento",
- "machine_learning_max_recognition_distance_description": "Distancia máxima entre dos rostros para que se consideren una misma persona, oscilando entre 0-2. Reducirlo puede evitar etiquetar a dos personas como la misma persona, mientras que aumentarlo puede evitar etiquetar a la misma persona como dos personas diferentes. Tenga en cuenta que es más fácil fusionar a dos personas que dividir a una en dos, así que opte por un umbral más bajo cuando sea posible.",
+ "machine_learning_facial_recognition_model_description": "Los modelos se muestran en orden descendente de tamaño. Los modelos más grandes son más lentos y utilizan más memoria pero producen mejores resultados. Ten en cuenta que debes volver a ejecutar la tarea de reconocimiento facial para todas las imágenes al cambiar de modelo.",
+ "machine_learning_facial_recognition_setting": "Habilitar reconocimiento facial",
+ "machine_learning_facial_recognition_setting_description": "Cuando está desactivado no se utlizará reconocimiento facial y no aparecerán nuevas caras en la sección Personas en la página Explorar.",
+ "machine_learning_max_detection_distance": "Máxima distancia de detección",
+ "machine_learning_max_detection_distance_description": "Distancia máxima entre dos imágenes para considerarlas duplicadas, oscilando entre 0,001-0,1. Los valores más altos detectarán más duplicados pero pueden generar falsos positivos.",
+ "machine_learning_max_recognition_distance": "Máxima distancia de reconocimiento",
+ "machine_learning_max_recognition_distance_description": "Distancia máxima entre dos caras para que se consideren una misma persona, oscilando entre 0-2. Reducirlo puede evitar etiquetar a dos personas como la misma persona, mientras que aumentarlo puede evitar etiquetar a la misma persona como dos personas diferentes. Ten en cuenta que es más fácil fusionar a dos personas que dividir a una en dos, así que opta por un umbral más bajo cuando sea posible.",
"machine_learning_min_detection_score": "Puntuación mínima de detección",
- "machine_learning_min_detection_score_description": "Puntuación de confianza mínima para que se detecte una cara de 0 a 1. Los valores más bajos detectarán más rostros, pero pueden generar falsos positivos.",
+ "machine_learning_min_detection_score_description": "Puntuación de confianza mínima para que se detecte una cara de 0 a 1. Los valores más bajos detectarán más rostros pero pueden generar falsos positivos.",
"machine_learning_min_recognized_faces": "Rostros mínimos reconocidos",
- "machine_learning_min_recognized_faces_description": "El número mínimo de rostros reconocidos para que se cree una persona. Aumentar esto hace que el reconocimiento facial sea más preciso a costa de aumentar la posibilidad de que no se asigne una cara a una persona.",
+ "machine_learning_min_recognized_faces_description": "El número mínimo de rostros reconocidos para que se cree una persona. Aumentar esto permite que el reconocimiento facial sea más preciso a costa de aumentar la posibilidad de que no se asigne una cara a una persona.",
"machine_learning_settings": "Configuración de aprendizaje automático",
"machine_learning_settings_description": "Administrar funciones y configuraciones de aprendizaje automático",
"machine_learning_smart_search": "Busqueda inteligente",
- "machine_learning_smart_search_description": "Busque imágenes semánticamente utilizando incrustaciones CLIP",
+ "machine_learning_smart_search_description": "Busque imágenes semánticamente utilizando incrustaciones CLIP (Contrastive Language-Image Pre-Training)",
"machine_learning_smart_search_enabled": "Habilitar búsqueda inteligente",
- "machine_learning_smart_search_enabled_description": "Si está deshabilitado, las imágenes no se codificarán para la búsqueda inteligente.",
- "machine_learning_url_description": "URL del servidor de aprendizaje automático",
+ "machine_learning_smart_search_enabled_description": "Al desactivarlo las imágenes no se procesarán para usar la búsqueda inteligente.",
+ "machine_learning_url_description": "La URL del servidor de aprendizaje automático. Si se proporciona más de una URL se intentará acceder a cada servidor sucesivamente hasta que uno responda correctamente en el orden especificado.",
"manage_concurrency": "Ajustes de concurrencia",
"manage_log_settings": "Administrar la configuración de los registros",
"map_dark_style": "Estilo oscuro",
@@ -152,7 +161,7 @@
"note_cannot_be_changed_later": "NOTA: No se puede cambiar posteriormente!",
"note_unlimited_quota": "Nota: usa 0 para espacio sin límites",
"notification_email_from_address": "Desde",
- "notification_email_from_address_description": "Dirección de correo electrónico del remitente, por ejemplo: \"Immich Photo Server {label} es la etiqueta de almacenamiento del usuario",
"system_settings": "Ajustes del Sistema",
+ "tag_cleanup_job": "Limpieza de etiquetas",
+ "template_email_available_tags": "Puede utilizar las siguientes variables en su plantilla: {tags}",
+ "template_email_if_empty": "Si la plantilla está vacía, se utilizará el correo electrónico predeterminado.",
+ "template_email_invite_album": "Plantilla de álbum de invitaciones",
+ "template_email_preview": "Vista previa",
+ "template_email_settings": "Modelos de correo electrónico",
+ "template_email_settings_description": "Gestionar plantillas de notificación por correo electrónico personalizadas",
+ "template_email_update_album": "Actualizar plantilla del álbum",
+ "template_email_welcome": "Plantilla de correo electrónico de bienvenida",
+ "template_settings": "Plantillas de notificación",
+ "template_settings_description": "Gestione plantillas personalizadas para las notificaciones.",
"theme_custom_css_settings": "CSS Personalizado",
"theme_custom_css_settings_description": "Las Hojas de Estilo (CSS) permiten personalizar el diseño de Immich.",
"theme_settings": "Ajustes Tema",
@@ -245,7 +267,6 @@
"these_files_matched_by_checksum": "Estos archivos coinciden con sus checksums",
"thumbnail_generation_job": "Generar Miniaturas",
"thumbnail_generation_job_description": "Genere miniaturas grandes, pequeñas y borrosas para cada archivo, así como miniaturas para cada persona",
- "transcode_policy_description": "Política sobre cuándo se debe transcodificar un vídeo. Los vídeos HDR siempre se transcodificarán (excepto si la transcodificación está desactivada).",
"transcoding_acceleration_api": "API Aceleración",
"transcoding_acceleration_api_description": "La API que interactuará con su dispositivo para acelerar la transcodificación. Esta configuración es el \"mejor esfuerzo\": recurrirá a la transcodificación del software en caso de error. VP9 puede funcionar o no dependiendo de su hardware.",
"transcoding_acceleration_nvenc": "NVENC (requiere GPU NVIDIA)",
@@ -262,7 +283,7 @@
"transcoding_audio_codec": "Codec de audio",
"transcoding_audio_codec_description": "Opus es la opción de mayor calidad, pero tiene menor compatibilidad con dispositivos o software antiguos.",
"transcoding_bitrate_description": "Vídeos con una tasa de bits superior a la máxima o que no están en un formato aceptado",
- "transcoding_codecs_learn_more": "Para obtener más información sobre la terminología utilizada aquí, consulte la documentación de FFmpeg para docker-compose.yml, y la configuración .env esté actualizada para evitar cualquier configuración incorrecta, especialmente si usas WatchTower o cualquier mecanismo que maneje la actualización automática de tu aplicación.",
+ "version_announcement_message": "¡Hola! Hay una nueva versión de Immich disponible. Tómese un tiempo para leer las notas de la versión para asegurarse de que su configuración esté actualizada y evitar errores de configuración, especialmente si utiliza WatchTower o cualquier mecanismo que se encargue de actualizar su instancia de Immich automáticamente.",
+ "version_history": "Historial de versiones",
+ "version_history_item": "Instalada la {version} el {date}",
"video": "Vídeo",
"video_hover_setting": "Iniciar vídeo al pasar por encima",
"video_hover_setting_description": "Reproducir el vídeo cuando el ratón está encima de un vídeo. Aunque esté desactivado, se iniciará cuando el cursor del ratón esté sobre el icono de \"reproducir\".",
@@ -1343,18 +1322,18 @@
"view_all_users": "Mostrar todos los usuarios",
"view_in_timeline": "Mostrar en la línea de tiempo",
"view_links": "Mostrar enlaces",
+ "view_name": "Ver",
"view_next_asset": "Mostrar siguiente elemento",
"view_previous_asset": "Mostrar elemento anterior",
"view_stack": "Ver Pila",
- "viewer": "Visualizador",
- "visibility_changed": "Visibilidad cambiada para {count, plural, one {# person} other {# people}}",
+ "visibility_changed": "Visibilidad cambiada para {count, plural, one {# persona} other {# personas}}",
"waiting": "Esperando",
"warning": "Advertencia",
"week": "Semana",
"welcome": "Bienvenido",
- "welcome_to_immich": "Bienvenido a immich",
+ "welcome_to_immich": "Bienvenido a Immich",
"year": "Año",
- "years_ago": "Hace {years, plural, one {# year} other {# years}}",
+ "years_ago": "Hace {years, plural, one {# año} other {# años}}",
"yes": "Sí",
"you_dont_have_any_shared_links": "No tienes ningún enlace compartido",
"zoom_image": "Acercar Imagen"
diff --git a/web/src/lib/i18n/et.json b/i18n/et.json
similarity index 68%
rename from web/src/lib/i18n/et.json
rename to i18n/et.json
index 25cdba4cb4..fc2cc3de93 100644
--- a/web/src/lib/i18n/et.json
+++ b/i18n/et.json
@@ -1,5 +1,5 @@
{
- "about": "Teave",
+ "about": "Värskenda",
"account": "Konto",
"account_settings": "Konto seaded",
"acknowledge": "Sain aru",
@@ -23,16 +23,23 @@
"add_to": "Lisa kohta...",
"add_to_album": "Lisa albumisse",
"add_to_shared_album": "Lisa jagatud albumisse",
+ "add_url": "Lisa URL",
"added_to_archive": "Lisatud arhiivi",
"added_to_favorites": "Lisatud lemmikutesse",
"added_to_favorites_count": "{count, number} pilti lisatud lemmikutesse",
"admin": {
"add_exclusion_pattern_description": "Lisa välistamismustreid. Toetatud on metamärgid *, ** ja ?. Kõikide kataloogis nimega \"Raw\" olevate failide ignoreerimiseks kasuta \"**/Raw/**\". Kõikide .tif failide ignoreerimiseks kasuta \"**/*.tif\". Absouutse tee ignoreerimiseks kasuta \"/path/to/ignore/**\".",
+ "asset_offline_description": "Seda välise kogu üksust ei leitud kettalt ning see liigutati prügikasti. Kui faili asukoht kogu siseselt muutus, leiad vastava uue üksuse oma ajajoonelt. Üksuse taastamiseks veendu, et allpool toodud failitee on Immich'ile kättesaadav ning skaneeri kogu uuesti.",
"authentication_settings": "Autentimise seaded",
"authentication_settings_description": "Halda parooli, OAuth ja muid autentimise seadeid",
"authentication_settings_disable_all": "Kas oled kindel, et soovid kõik sisselogimismeetodid välja lülitada? Sisselogimine lülitatakse täielikult välja.",
"authentication_settings_reenable": "Et taas lubada, kasuta serveri käsku.",
"background_task_job": "Tausttegumid",
+ "backup_database": "Varunda andmebaas",
+ "backup_database_enable_description": "Luba andmebaasi varundamine",
+ "backup_keep_last_amount": "Varukoopiate arv, mida alles hoida",
+ "backup_settings": "Varundamise seaded",
+ "backup_settings_description": "Halda andmebaasi varundamise seadeid",
"check_all": "Märgi kõik",
"cleared_jobs": "Tööted eemaldatud: {job}",
"config_set_by_file": "Konfiguratsioon on määratud konfifaili abil",
@@ -41,39 +48,47 @@
"confirm_email_below": "Kinnitamiseks sisesta allpool \"{email}\"",
"confirm_reprocess_all_faces": "Kas oled kindel, et soovid kõik näod uuesti töödelda? See eemaldab kõik nimega isikud.",
"confirm_user_password_reset": "Kas oled kindel, et soovid kasutaja {user} parooli lähtestada?",
+ "create_job": "Lisa tööde",
+ "cron_expression": "Cron avaldis",
+ "cron_expression_description": "Sea skaneerimise intervall cron formaadis. Rohkema info jaoks vaata nt. Crontab Guru",
+ "cron_expression_presets": "Eelseadistatud cron avaldised",
"disable_login": "Keela sisselogimine",
- "duplicate_detection_job_description": "Rakenda üksustele masinõpet, et tuvastada sarnaseid pilte. Kasutab nutiotsingut",
+ "duplicate_detection_job_description": "Rakenda üksustele masinõpet, et leida sarnaseid pilte. Kasutab nutiotsingut",
"exclusion_pattern_description": "Välistamismustrid võimaldavad ignoreerida faile ja kaustu kogu skaneerimisel. See on kasulik, kui sul on kaustu, mis sisaldavad faile, mida sa ei soovi importida, nagu RAW failid.",
"external_library_created_at": "Väline kogu (lisatud {date})",
"external_library_management": "Väliste kogude haldus",
- "face_detection": "Näotuvastus",
- "face_detection_description": "Otsi üksustest nägusid masinõppe abil. Videote puhul kasutatakse ainult pisipilti. \"Kõik\" töötleb kõik üksused uuesti. \"Puuduvad\" võtab ette üksused, mida pole veel töödeldud. Leitud näod suunatakse näotuvastusse, et grupeerida nad olemasolevateks või uuteks isikuteks.",
- "facial_recognition_job_description": "Grupeeri leitud näod inimesteks. See samm käivitub siis, kui näotuvastus on lõppenud. \"Kõik\" grupeerib kõik näod uuesti. \"Puuduvad\" võtab ette näod, mida pole isikuga seostatud.",
+ "face_detection": "Näoavastus",
+ "face_detection_description": "Avasta üksustest nägusid masinõppe abil. Videote puhul kasutatakse ainult pisipilti. \"Värskenda\" töötleb kõik üksused uuesti. \"Lähtesta\" kustutab lisaks kõik seni leitud näed. \"Puuduvad\" võtab ette üksused, mida pole veel töödeldud. Avastatud näod suunatakse näotuvastusse, et grupeerida nad olemasolevateks või uuteks isikuteks.",
+ "facial_recognition_job_description": "Grupeeri avastatud näod inimesteks. See samm käivitub siis, kui näoavastus on lõppenud. \"Lähtesta\" grupeerib kõik näod uuesti. \"Puuduvad\" võtab ette näod, mida pole isikuga seostatud.",
"failed_job_command": "Käsk {command} ebaõnnestus töötes: {job}",
"force_delete_user_warning": "HOIATUS: See kustutab koheselt kasutaja ja kõik üksused. Seda ei saa tagasi võtta ja faile ei saa taastada.",
"forcing_refresh_library_files": "Kogu kõigi failide sundvärskendamine",
+ "image_format": "Formaat",
"image_format_description": "WebP failid on väiksemad kui JPEG, aga kodeerimine on aeglasem.",
"image_prefer_embedded_preview": "Eelista manustatud eelvaadet",
"image_prefer_embedded_preview_setting_description": "Kasuta pilditöötluse sisendina võimalusel RAW fotodesse manustatud eelvaateid. See võib mõnede piltide puhul anda tulemuseks täpsemad värvid, aga eelvaate kvaliteet sõltub konkreetsest kaamerast ning pildis võib olla rohkem tihendusmüra.",
+ "image_prefer_wide_gamut": "Eelista laia värvigammat",
"image_prefer_wide_gamut_setting_description": "Kasuta pisipiltide jaoks Display P3. See säilitab paremini laia värviruumiga piltide erksuse, aga vanematel seadmetel ja vanemate brauseritega võivad pildid teistsugused välja näha. sRGB pildid säilitatakse värvinihete vältimiseks.",
- "image_preview_format": "Eelvaate formaat",
- "image_preview_resolution": "Eelvaate resolutsioon",
- "image_preview_resolution_description": "Kasutusel üksiku foto vaatamisel ja masinõppe jaoks. Kõrgem resolutsioon säilitab rohkem detaile, aga kodeerimine võtab rohkem aega, tekitab suurema faili ning võib mõjutada rakenduse töökiirust.",
+ "image_preview_description": "Keskmise suurusega pilt ilma metaandmeteta, kasutusel üksiku üksuse vaatamise ja masinõppe jaoks",
+ "image_preview_quality_description": "Eelvaate kvaliteet vahemikus 1-100. Kõrgem väärtus on parem, aga tekitab suuremaid faile ning võib mõjutada rakenduse töökiirust. Madala väärtuse seadmine võib mõjutada masinõppe kvaliteeti.",
+ "image_preview_title": "Eelvaate seaded",
"image_quality": "Kvaliteet",
- "image_quality_description": "Pildikvaliteet vahemikus 1-100. Kõrgem väärtus tähendab paremat kvaliteeti ja suuremaid faile. See valik mõjutab eelvaateid ja pisipilte.",
+ "image_resolution": "Resolutsioon",
+ "image_resolution_description": "Kõrgemad resolutsioonid säilitavad rohkem detaile, aga kodeerimine võtab kauem aega, tekitab suuremaid faile ning võib mõjutada rakenduse töökiirust.",
"image_settings": "Pildi seaded",
"image_settings_description": "Halda genereeritud piltide kvaliteeti ja resolutsiooni",
- "image_thumbnail_format": "Pisipildi formaat",
- "image_thumbnail_resolution": "Pisipildi resolutsioon",
- "image_thumbnail_resolution_description": "Kasutusel fotode mitmekaupa vaatamisel (ajajoon, albumi vaade, jne). Kõrgem resolutsioon säilitab rohkem detaile, aga kodeerimine võtab rohkem aega, tekitab suurema faili ning võib mõjutada rakenduse töökiirust.",
+ "image_thumbnail_description": "Väike pisipilt ilma metaandmeteta, kasutusel fotode grupikaupa vaatamisel, näiteks ajajoonel",
+ "image_thumbnail_quality_description": "Pisipildi kvaliteet vahemikus 1-100. Kõrgem väärtus on parem, aga tekitab suuremaid faile ning võib mõjutada rakenduse töökiirust.",
+ "image_thumbnail_title": "Pisipildi seaded",
"job_concurrency": "{job} samaaegsus",
+ "job_created": "Tööde lisatud",
+ "job_not_concurrency_safe": "Seda töödet pole ohutu samaaegselt käivitada.",
"job_settings": "Tööte seaded",
"job_settings_description": "Halda töödete samaaegsust",
"job_status": "Tööte seisund",
+ "jobs_delayed": "{jobCount, plural, other {# edasi lükatud}}",
+ "jobs_failed": "{jobCount, plural, other {# ebaõnnestus}}",
"library_created": "Lisatud kogu: {library}",
- "library_cron_expression": "Cron avaldis",
- "library_cron_expression_description": "Sea skaneerimise intervall cron formaadis. Rohkema info jaoks vaata nt. Crontab Guru",
- "library_cron_expression_presets": "Eelseadistatud cron avaldised",
"library_deleted": "Kogu kustutatud",
"library_import_path_description": "Määra kaust, mida importida. Sellest kaustast ning alamkaustadest otsitakse pilte ja videosid.",
"library_scanning": "Perioodiline skaneerimine",
@@ -81,6 +96,7 @@
"library_scanning_enable_description": "Luba kogu perioodiline skaneerimine",
"library_settings": "Väline kogu",
"library_settings_description": "Halda välise kogu seadeid",
+ "library_tasks_description": "Soorita kogu toiminguid",
"library_watching_enable_description": "Jälgi välises kogus failide muudatusi",
"library_watching_settings": "Kogu jälgimine (EKSPERIMENTAALNE)",
"library_watching_settings_description": "Jälgi automaatselt muutunud faile",
@@ -89,43 +105,63 @@
"logging_settings": "Logimine",
"machine_learning_clip_model": "CLIP mudel",
"machine_learning_clip_model_description": "CLIP mudeli nimi, mis on loetletud siin. Pane tähele, et mudeli muutmisel pead kõigi piltide peal nutiotsingu tööte uuesti käivitama.",
- "machine_learning_duplicate_detection": "Duplikaatide tuvastus",
- "machine_learning_duplicate_detection_enabled": "Luba duplikaatide tuvastus",
+ "machine_learning_duplicate_detection": "Duplikaatide leidmine",
+ "machine_learning_duplicate_detection_enabled": "Luba duplikaatide leidmine",
"machine_learning_duplicate_detection_enabled_description": "Kui keelatud, dedubleeritakse siiski täpselt identsed üksused.",
"machine_learning_duplicate_detection_setting_description": "Kasuta CLIP-manuseid, et leida tõenäoliseid duplikaate",
"machine_learning_enabled": "Luba masinõpe",
"machine_learning_enabled_description": "Kui keelatud, lülitatakse kõik masinõppe funktsioonid välja, sõltumata allolevatest seadetest.",
"machine_learning_facial_recognition": "Näotuvastus",
- "machine_learning_facial_recognition_description": "Otsi, tuvasta ja grupeeri piltidel näod",
+ "machine_learning_facial_recognition_description": "Avasta, tuvasta ja grupeeri piltidel näod",
"machine_learning_facial_recognition_model": "Näotuvastuse mudel",
- "machine_learning_facial_recognition_model_description": "Mudelid on järjestatud suuruse järgi kahanevalt. Suuremad mudelid on aeglasemad ja kasutavad rohkem mälu, kuid annavad parema tulemuse. Mudeli muutmisel tuleb näotuvastuse tööde kõigi piltide peal uuesti käivitada.",
+ "machine_learning_facial_recognition_model_description": "Mudelid on järjestatud suuruse järgi kahanevalt. Suuremad mudelid on aeglasemad ja kasutavad rohkem mälu, kuid annavad parema tulemuse. Mudeli muutmisel tuleb näoavastuse tööde kõigi piltide peal uuesti käivitada.",
"machine_learning_facial_recognition_setting": "Luba näotuvastus",
- "machine_learning_max_detection_distance": "Maksimaalne tuvastuskaugus",
- "machine_learning_max_detection_distance_description": "Maksimaalne kaugus kahe pildi vahel, mille puhul loetakse nad duplikaatideks, vahemikus 0.001-0.1. Kõrgemad väärtused tuvastavad rohkem duplikaate, aga võivad anda valepositiivseid.",
+ "machine_learning_facial_recognition_setting_description": "Kui keelatud, siis ei kodeerita pilte näotuvastuse jaoks ning isikute sektsioon Avasta lehel jääb tühjaks.",
+ "machine_learning_max_detection_distance": "Maksimaalne avastuskaugus",
+ "machine_learning_max_detection_distance_description": "Maksimaalne kaugus kahe pildi vahel, mille puhul loetakse nad duplikaatideks, vahemikus 0.001-0.1. Kõrgemad väärtused leiavad rohkem duplikaate, aga võib esineda valepositiivseid.",
+ "machine_learning_max_recognition_distance": "Maksimaalne tuvastuskaugus",
"machine_learning_max_recognition_distance_description": "Maksimaalne kaugus kahe näo vahel, mida tuleks lugeda samaks isikuks, vahemikus 0-2. Selle vähendamine aitab vältida erinevate inimeste samaks isikuks märkimist ja tõstmine aitab vältida sama inimese kaheks erinevaks isikuks märkimist. Pane tähele, et kaht isikut ühendada on lihtsam kui üht isikut kaheks eraldada, seega võimalusel kasuta madalamat lävendit.",
- "machine_learning_min_detection_score_description": "Minimaalne usaldusskoor näo tuvastamiseks, vahemikus 0-1. Madalamad väärtused leiavad rohkem nägusid, kuid võib esineda valepositiivseid.",
- "machine_learning_min_recognized_faces": "Minimaalne leitud nägude arv",
- "machine_learning_min_recognized_faces_description": "Minimaalne leitud nägude arv, mida saab isikuks grupeerida. Selle suurendamine teeb näotuvastuse täpsemaks, kuid suureneb tõenäosus, et nägu ei seostata ühegi isikuga.",
+ "machine_learning_min_detection_score": "Minimaalne avastusskoor",
+ "machine_learning_min_detection_score_description": "Minimaalne usaldusskoor näo avastamiseks, vahemikus 0-1. Madalamad väärtused leiavad rohkem nägusid, kuid võib esineda valepositiivseid.",
+ "machine_learning_min_recognized_faces": "Minimaalne tuvastatud nägude arv",
+ "machine_learning_min_recognized_faces_description": "Minimaalne tuvastatud nägude arv, mida saab isikuks grupeerida. Selle suurendamine teeb näotuvastuse täpsemaks, kuid suureneb tõenäosus, et nägu ei seostata ühegi isikuga.",
"machine_learning_settings": "Masinõppe seaded",
"machine_learning_settings_description": "Halda masinõppe funktsioone ja seadeid",
"machine_learning_smart_search": "Nutiotsing",
"machine_learning_smart_search_description": "Otsi pilte semantiliselt CLIP-manuste abil",
"machine_learning_smart_search_enabled": "Luba nutiotsing",
"machine_learning_smart_search_enabled_description": "Kui keelatud, siis ei kodeerita pilte nutiotsingu jaoks.",
- "machine_learning_url_description": "Masinõppe serveri URL",
+ "machine_learning_url_description": "Masinõppe serveri URL. Kui ette on antud rohkem kui üks URL, proovitakse neid järjest ükshaaval, kuni üks edukalt vastab.",
+ "manage_concurrency": "Halda samaaegsust",
"manage_log_settings": "Halda logi seadeid",
"map_dark_style": "Tume stiil",
+ "map_enable_description": "Luba kaardi funktsioonid",
"map_gps_settings": "Kaardi ja GPS-i seaded",
+ "map_gps_settings_description": "Halda kaardi ja GPS-i (pöördgeokodeerimise) seadeid",
+ "map_implications": "Kaardifunktsioon kasutab välist kaarditeenust (tiles.immich.cloud)",
"map_light_style": "Hele stiil",
+ "map_manage_reverse_geocoding_settings": "Halda pöördgeokodeerimise seadeid",
+ "map_reverse_geocoding": "Pöördgeokodeerimine",
+ "map_reverse_geocoding_enable_description": "Luba pöördgeokodeerimine",
+ "map_reverse_geocoding_settings": "Pöördgeokodeerimise seaded",
"map_settings": "Kaart",
"map_settings_description": "Halda kaardi seadeid",
+ "map_style_description": "Kaarditeema style.json URL",
"metadata_extraction_job": "Metaandmete eraldamine",
"metadata_extraction_job_description": "Eralda igast üksusest metaandmed, nagu GPS-koordinaadid, näod ja resolutsioon",
+ "metadata_faces_import_setting": "Luba nägude import",
+ "metadata_faces_import_setting_description": "Impordi näod piltide EXIF andmetest ja välistest failidest",
+ "metadata_settings": "Metaandmete seaded",
+ "metadata_settings_description": "Halda metaandmete seadeid",
"migration_job": "Migratsioon",
"migration_job_description": "Migreeri üksuste ja nägude pisipildid uusimale kaustastruktuurile",
+ "no_paths_added": "Ühtegi teed pole",
+ "no_pattern_added": "Mustreid ei ole",
+ "note_apply_storage_label_previous_assets": "Märkus: Et rakendada talletussilt varem üleslaaditud üksustele, käivita",
"note_cannot_be_changed_later": "MÄRKUS: Seda ei saa hiljem muuta!",
+ "note_unlimited_quota": "Märkus: Piiramatu kvoodi jaoks sisesta 0",
"notification_email_from_address": "Saatja aadress",
- "notification_email_from_address_description": "Saatja e-posti aadress, näiteks: \"Immich Photo Server {label} on kasutaja talletussilt",
"system_settings": "Süsteemi seaded",
+ "tag_cleanup_job": "Siltide korrastamine",
+ "template_email_available_tags": "Saad mallis kasutada järgmisi muutujaid: {tags}",
+ "template_email_if_empty": "Kui mall on tühi, kasutatakse vaikimisi e-kirja.",
+ "template_email_invite_album": "Albumisse kutse mall",
+ "template_email_preview": "Eelvaade",
+ "template_email_settings": "E-posti mallid",
+ "template_email_settings_description": "Halda e-posti teavitusmalle",
+ "template_email_update_album": "Albumi muutmise mall",
+ "template_email_welcome": "Tervituskirja mall",
+ "template_settings": "Teavituse mallid",
+ "template_settings_description": "Teavituste mallide haldamine.",
+ "theme_custom_css_settings": "Kohandatud CSS",
+ "theme_custom_css_settings_description": "Cascading Style Sheets lubab Immich'i kujunduse kohandamist.",
+ "theme_settings": "Teema seaded",
"theme_settings_description": "Halda Immich'i veebiliidese kohandamist",
- "thumbnail_generation_job": "Genereeri pisipildid",
+ "these_files_matched_by_checksum": "Need failid ühtivad kontrollsumma alusel",
+ "thumbnail_generation_job": "Pisipiltide genereerimine",
"thumbnail_generation_job_description": "Genereeri iga üksuse kohta suur, väike ja udustatud pisipilt ning iga isiku kohta pisipilt",
+ "transcoding_acceleration_api": "Kiirenduse API",
"transcoding_acceleration_api_description": "API, mis suhtleb su seadmega transkodeerimise kiirendamiseks. See seadistus on 'anname parima': ebaõnnestumisel kasutatakse tarkvaralist transkodeerimist. VP9 ei pruugi töötada, sõltuvalt riistvarast.",
"transcoding_acceleration_nvenc": "NVENC (vajab NVIDIA GPU-d)",
"transcoding_acceleration_qsv": "Quick Sync (vajab Inteli 7. põlvkonna või uuemat CPU-d)",
@@ -192,13 +286,16 @@
"transcoding_codecs_learn_more": "Siin kasutatud terminoloogia kohta rohkem teada saamiseks loe FFmpeg-i dokumentatsiooni {label} on käyttäjän Tallennustilan Tunniste",
"system_settings": "Järjestelmäasetukset",
+ "tag_cleanup_job": "Merkintäpuhdistus",
+ "template_email_preview": "Esikatselu",
"theme_custom_css_settings": "Mukautettu CSS",
- "theme_custom_css_settings_description": "Kustomoi Immichin ulkoasua Cascading Style Sheets:llä.",
+ "theme_custom_css_settings_description": "Mukauta Immichin ulkoasua CSS:llä.",
"theme_settings": "Teeman asetukset",
"theme_settings_description": "Kustomoi Immichin web-käyttöliittymää",
"these_files_matched_by_checksum": "Näillä tiedostoilla on yhteinen tarkistussumma",
"thumbnail_generation_job": "Generoi pikkukuvat",
"thumbnail_generation_job_description": "Generoi isot, pienet sekä sumeat pikkukuvat jokaisesta aineistosta, kuten myös henkilöistä",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "Kiihdytysrajapinta",
"transcoding_acceleration_api_description": "Rajapinta, jolla keskustellaan laittesi kanssa nopeuttaaksemme koodausta. Tämä asetus on paras mahdollinen: Mikäli ongelmia ilmenee, palataan käyttämään ohjelmistopohjaista koodausta. VP9 voi toimia tai ei, riippuen laitteistosi kokoonpanosta.",
"transcoding_acceleration_nvenc": "NVENC (vaatii NVIDIA:n grafiikkasuorittimen)",
@@ -258,16 +274,16 @@
"transcoding_audio_codec": "Äänikoodekki",
"transcoding_audio_codec_description": "Opus on paras laadultaan, mutta ei välttämättä ole yhteensopiva vanhempien laitteiden tai sovellusten kanssa.",
"transcoding_bitrate_description": "Videot, jotka ylittävät enimmäisbittinopeuden tai eivät ole hyväksytyssä muodossa",
- "transcoding_codecs_learn_more": "Oppiaksesi lisää tässä käytetystä terminologiasta, tutustu FFmpeg- dokumentaatioon docker-compose.yml ja .env määritykset ovat ajan tasalla. Näin varmistat järjestelmän toimivuuden, varsinkin jos käytät WatchToweria tai muuta automaattista päivitysjärjestelmää.",
+ "version_announcement_message": "Hei! Sovelluksen uusi versio on saatavilla. Käythän vilkaisemassa julkaisun tiedot ja varmistathan, että ohjelman määritykset ovat ajan tasalla. Erityisesti, jos käytössä on Watchtower tai jokin muu mekanismi Immich-sovelluksen automaattista päivitystä varten.",
+ "version_history": "Versiohistoria",
+ "version_history_item": "Asennettu {version} päivänä {date}",
"video": "Video",
"video_hover_setting": "Toista esikatselun video kun kursori viedään sen päälle",
"video_hover_setting_description": "Toista videon esikatselukuva kun kursori on kuvan päällä. Vaikka toiminto on pois käytöstä, toiston voi aloittaa viemällä kursori toistokuvakkeen päälle.",
@@ -1113,11 +1308,12 @@
"view_album": "Näytä albumi",
"view_all": "Näytä kaikki",
"view_all_users": "Näytä kaikki käyttäjät",
+ "view_in_timeline": "Näytä aikajanalla",
"view_links": "Näytä linkit",
+ "view_name": "Näkymä",
"view_next_asset": "Näytä seuraava",
"view_previous_asset": "Näytä edellinen",
"view_stack": "Näytä pinona",
- "viewer": "",
"visibility_changed": "{count, plural, one {# henkilön} other {# henkilöiden}} näkyvyys vaihdettu",
"waiting": "Odottaa",
"warning": "Varoitus",
diff --git a/i18n/fil.json b/i18n/fil.json
new file mode 100644
index 0000000000..c296e59dd1
--- /dev/null
+++ b/i18n/fil.json
@@ -0,0 +1,25 @@
+{
+ "about": "I-refresh",
+ "account": "Account",
+ "account_settings": "Mga Setting ng Account",
+ "acknowledge": "Tanggapin",
+ "action": "Aksyon",
+ "actions": "Mga Aksyon",
+ "active": "Tumatakbo",
+ "activity": "Mga Aktibidad",
+ "activity_changed": "Ang aktibidad ay {enabled, select, true {naka-enable} other {hindi naka-enable}}",
+ "add": "Mag dagdag",
+ "add_a_description": "Dagdagan ng deskripsyon",
+ "add_a_location": "Dagdagan ng lugar",
+ "add_a_name": "Dagdagan ng pangalan",
+ "add_a_title": "Dagdagan ng pamagat",
+ "add_location": "Magdagdag ng lugar",
+ "add_more_users": "Magdagdag ng mga user",
+ "add_photos": "Magdagdag ng litrato",
+ "add_to": "Idagdag sa...",
+ "add_to_album": "Idagdag sa album",
+ "add_to_shared_album": "Idagdag sa shared album",
+ "added_to_archive": "Idinagdag sa archive",
+ "added_to_favorites": "Idinagdag sa mga paborito",
+ "added_to_favorites_count": "Idinagdag ang {count, number} sa mga paborito"
+}
diff --git a/web/src/lib/i18n/fr.json b/i18n/fr.json
similarity index 84%
rename from web/src/lib/i18n/fr.json
rename to i18n/fr.json
index 9edcb1fdd2..ad141208c6 100644
--- a/web/src/lib/i18n/fr.json
+++ b/i18n/fr.json
@@ -5,16 +5,16 @@
"acknowledge": "Compris",
"action": "Action",
"actions": "Actions",
- "active": "En cours d'exécution",
+ "active": "En cours",
"activity": "Activité",
"activity_changed": "Activité {enabled, select, true {autorisée} other {interdite}}",
"add": "Ajouter",
"add_a_description": "Ajouter une description",
- "add_a_location": "Ajouter un emplacement",
+ "add_a_location": "Ajouter une localisation",
"add_a_name": "Ajouter un nom",
"add_a_title": "Ajouter un titre",
"add_exclusion_pattern": "Ajouter un schéma d'exclusion",
- "add_import_path": "Ajouter un chemin d'importation",
+ "add_import_path": "Ajouter un chemin à importer",
"add_location": "Ajouter un lieu",
"add_more_users": "Ajouter plus d'utilisateurs",
"add_partner": "Ajouter un partenaire",
@@ -23,53 +23,65 @@
"add_to": "Ajouter à…",
"add_to_album": "Ajouter à l'album",
"add_to_shared_album": "Ajouter à l'album partagé",
+ "add_url": "Ajouter l'URL",
"added_to_archive": "Ajouté à l'archive",
"added_to_favorites": "Ajouté aux favoris",
"added_to_favorites_count": "{count, number} ajouté(s) aux favoris",
"admin": {
"add_exclusion_pattern_description": "Ajouter des schémas d'exclusion. Les caractères génériques *, ** et ? sont pris en charge. Pour ignorer tous les fichiers dans un répertoire nommé « Raw », utilisez « **/Raw/** ». Pour ignorer tous les fichiers se terminant par « .tif », utilisez « **/*.tif ». Pour ignorer un chemin absolu, utilisez « /chemin/à/ignorer/** ».",
+ "asset_offline_description": "Ce média de la bibliothèque externe n'est plus présent sur le disque et a été déplacé vers la corbeille. Si le fichier a été déplacé dans la bibliothèque, vérifiez votre chronologie pour le nouveau média correspondant. Pour restaurer ce média, veuillez vous assurer que le chemin du fichier ci-dessous peut être accédé par Immich et lancez l'analyse de la bibliothèque.",
"authentication_settings": "Paramètres d'authentification",
- "authentication_settings_description": "Gérer le mot de passe, la délégation d'authentification OAuth et d'autres paramètres d'authentification",
+ "authentication_settings_description": "Gérer le mot de passe, l'authentification OAuth et d'autres paramètres d'authentification",
"authentication_settings_disable_all": "Êtes-vous sûr de vouloir désactiver toutes les méthodes de connexion ? La connexion sera complètement désactivée.",
"authentication_settings_reenable": "Pour réactiver, utilisez une Commande Serveur.",
"background_task_job": "Tâches de fond",
- "check_all": "Vérifier tout",
- "cleared_jobs": "Tâches supprimées pour : {job}",
+ "backup_database": "Sauvegarde de la base de données",
+ "backup_database_enable_description": "Activer la sauvegarde",
+ "backup_keep_last_amount": "Nombre de sauvegardes à conserver",
+ "backup_settings": "Paramètres de la sauvegarde",
+ "backup_settings_description": "Gérer les paramètres de la sauvegarde",
+ "check_all": "Tout cocher",
+ "cleared_jobs": "Tâches supprimées pour : {job}",
"config_set_by_file": "La configuration est actuellement définie par un fichier de configuration",
"confirm_delete_library": "Êtes-vous sûr de vouloir supprimer la bibliothèque {library} ?",
"confirm_delete_library_assets": "Êtes-vous sûr de vouloir supprimer cette bibliothèque ? Cette opération supprimera d'Immich {count, plural, one {le média} other {les # médias}} qu'elle contient et ne pourra pas être annulée. Les fichiers resteront sur le disque.",
"confirm_email_below": "Pour confirmer, tapez « {email} » ci-dessous",
"confirm_reprocess_all_faces": "Êtes-vous sûr de vouloir retraiter tous les visages ? Cela effacera également les personnes déjà identifiées.",
"confirm_user_password_reset": "Êtes-vous sûr de vouloir réinitialiser le mot de passe de {user} ?",
- "crontab_guru": "Générateur de règles Cron",
+ "create_job": "Créer une tâche",
+ "cron_expression": "Expression cron",
+ "cron_expression_description": "Définir l'intervalle d'analyse à l'aide d'une expression cron. Pour plus d'informations, voir Crontab Guru",
+ "cron_expression_presets": "Préréglages d'expression cron",
"disable_login": "Désactiver la connexion",
- "disabled": "Désactivé",
- "duplicate_detection_job_description": "Exécution de l'apprentissage automatique sur les médias pour détecter les images similaires. S'appuie sur la recherche intelligente",
+ "duplicate_detection_job_description": "Lancement de l'apprentissage automatique sur les médias pour détecter les images similaires. Se base sur la recherche intelligente",
"exclusion_pattern_description": "Les schémas d'exclusion vous permettent d'ignorer des fichiers et des dossiers lors de l'analyse de votre bibliothèque. Cette fonction est utile si des dossiers contiennent des fichiers que vous ne souhaitez pas importer, tels que des fichiers RAW.",
"external_library_created_at": "Bibliothèque externe (créée le {date})",
"external_library_management": "Gestion de la bibliothèque externe",
"face_detection": "Détection des visages",
- "face_detection_description": "Détection des visages dans les médias à l'aide de l'apprentissage automatique. Pour les vidéos, seule la miniature est prise en compte. « Tout » (re)traite tous les médias. « Manquant » met en file d'attente les médias qui n'ont pas encore été traités. Les visages détectés seront mis en file d'attente pour la reconnaissance faciale une fois la détection des visages terminée, les regroupant en personnes existantes ou nouvelles.",
- "facial_recognition_job_description": "Regrouper les visages détectés en personnes. Cette étape est exécutée une fois la détection des visages terminée. « Tout » (re)regroupe tous les visages. « Manquant » met en file d'attente les visages auxquels aucune personne n'a été attribuée.",
+ "face_detection_description": "Détection des visages dans les médias à l'aide de l'apprentissage automatique. Pour les vidéos, seule la miniature est prise en compte. « Actualiser » (re)traite tous les médias. « Réinitialiser » efface en plus toutes les données actuelles de visages. « Manquants » Les visages détectés seront mis en file d'attente pour la reconnaissance faciale. Une fois la détection des visages terminée, les regroupant en personnes existantes ou nouvelles.",
+ "facial_recognition_job_description": "Regrouper les visages détectés en personnes. Cette étape est exécutée une fois la détection des visages terminée. « Rafraichir» (re)regroupe tous les visages. « Manquant» met en file d'attente les visages auxquels aucune personne n'a été attribuée.",
"failed_job_command": "La commande {command} a échoué pour la tâche : {job}",
"force_delete_user_warning": "ATTENTION : Cette opération entraîne la suppression immédiate de l'utilisateur et de tous ses médias. Cette opération ne peut être annulée et les fichiers ne peuvent être récupérés.",
"forcing_refresh_library_files": "Forcer le rafraîchissement de tous les fichiers de la bibliothèque",
+ "image_format": "Format",
"image_format_description": "WebP produit des fichiers plus petits que JPEG, mais son encodage est plus lent.",
"image_prefer_embedded_preview": "Préférer l'aperçu intégré",
"image_prefer_embedded_preview_setting_description": "Utiliser les miniatures intégrées dans les photos au format RAW comme entrées pour le traitement d'image quand elles sont disponibles. Cela peut donner des couleurs plus justes pour certaines images, mais la qualité des miniatures est dépendant de l'appareil photo et l'image peut avoir des artéfacts de compression.",
"image_prefer_wide_gamut": "Préférer une gamme de couleurs étendue",
- "image_prefer_wide_gamut_setting_description": "Utiliser Display P3 pour les miniatures. Cela préserve mieux la vibrance des images avec des espaces colorimétriques étendus, mais les images peuvent apparaître différemment sur les anciens appareils avec une ancienne version du navigateur. Conserver les images sRGB en sRGB pour éviter les décalages de couleur.",
- "image_preview_format": "Format des aperçus",
- "image_preview_resolution": "Résolution des aperçus",
- "image_preview_resolution_description": "Utilisé lors de l'affichage d'une seule photo et pour l'apprentissage automatique. Des résolutions plus élevées peuvent préserver plus de détails mais prennent plus de temps à encoder, ont des tailles de fichiers plus importantes et peuvent réduire la réactivité de l'application.",
+ "image_prefer_wide_gamut_setting_description": "Utiliser Display P3 pour les miniatures. Cela préserve mieux la vivacité des images avec des espaces colorimétriques étendus, mais les images peuvent apparaître différemment sur les anciens appareils avec une ancienne version du navigateur. Conserver les images sRGB en sRGB pour éviter les décalages de couleur.",
+ "image_preview_description": "Image de taille moyenne avec métadonnées retirées, utilisée lors de la visualisation d'un seul média et pour l'apprentissage automatique",
+ "image_preview_quality_description": "Qualité de l'aperçu : de 1 à 100. Une valeur plus élevée produit de meilleurs résultats, mais elle produit des fichiers plus volumineux et peut réduire la réactivité de l'application. Une valeur trop basse peut affecter la qualité de l'apprentissage automatique.",
+ "image_preview_title": "Paramètres de prévisualisation",
"image_quality": "Qualité",
- "image_quality_description": "Qualité d'image de 1 à 100. Une valeur plus élevée offre une meilleure qualité mais produit des fichiers plus volumineux. Cette option affecte les images d'aperçu et de miniature.",
+ "image_resolution": "Résolution",
+ "image_resolution_description": "Les résolutions plus élevées permettent de préserver davantage de détails, mais l'encodage est plus long, les fichiers sont plus volumineux et la réactivité de l'application peut s'en trouver réduite.",
"image_settings": "Paramètres d'image",
- "image_settings_description": "Gérer la qualité et la résolution des images générées",
- "image_thumbnail_format": "Format des miniatures",
- "image_thumbnail_resolution": "Résolution des miniatures",
- "image_thumbnail_resolution_description": "Utilisée lors du visionnage de groupes de photos (vue principale, albums, etc.). Une résolution plus élevée préserve davantage de détails, mais est plus longue à encoder, produit des fichiers plus lourds, et peut réduire la réactivité de l'application.",
+ "image_settings_description": "Gestion de la qualité et résolution des images générées",
+ "image_thumbnail_description": "Petite vignette avec métadonnées retirées, utilisée lors de la visualisation de groupes de photos comme sur la vue chronologique principale",
+ "image_thumbnail_quality_description": "Qualité des vignettes : de 1 à 100. Une valeur élevée produit de meilleurs résultats, mais elle produit des fichiers plus volumineux et peut réduire la réactivité de l'application.",
+ "image_thumbnail_title": "Paramètres des vignettes",
"job_concurrency": "{job} : nombre de tâches simultanées",
+ "job_created": "Tâche créée",
"job_not_concurrency_safe": "Cette tâche ne peut pas être exécutée en multitâche de façon sûre.",
"job_settings": "Paramètres des tâches",
"job_settings_description": "Gestion des tâches simultanées",
@@ -77,16 +89,13 @@
"jobs_delayed": "{jobCount, plural, other {# retardés}}",
"jobs_failed": "{jobCount, plural, other {# en échec}}",
"library_created": "Bibliothèque créée : {library}",
- "library_cron_expression": "Expression Cron",
- "library_cron_expression_description": "Réglez l'intervalle d'analyse en utilisant le format cron. Pour plus d'informations, veuillez consulter par exemple Crontab Guru",
- "library_cron_expression_presets": "Expressions Cron enregistrées",
"library_deleted": "Bibliothèque supprimée",
- "library_import_path_description": "Spécifier un dossier à importer. Ce dossier, y compris les sous-dossiers, sera analysé à la recherche d'images et de vidéos.",
+ "library_import_path_description": "Spécifier un dossier à importer. Ce dossier, y compris ses sous-dossiers, sera analysé à la recherche d'images et de vidéos.",
"library_scanning": "Analyse périodique",
"library_scanning_description": "Configurer l'analyse périodique de la bibliothèque",
"library_scanning_enable_description": "Activer l'analyse périodique de la bibliothèque",
"library_settings": "Bibliothèque externe",
- "library_settings_description": "Gérer les paramètres de bibliothèque externe",
+ "library_settings_description": "Gestion des paramètres des bibliothèques externes",
"library_tasks_description": "Exécution d'actions sur la bibliothèque",
"library_watching_enable_description": "Surveiller les modifications de fichiers dans les bibliothèques externes",
"library_watching_settings": "Surveillance de bibliothèque (EXPÉRIMENTAL)",
@@ -122,7 +131,7 @@
"machine_learning_smart_search_description": "Rechercher des images de manière sémantique en utilisant les intégrations CLIP",
"machine_learning_smart_search_enabled": "Activer la recherche intelligente",
"machine_learning_smart_search_enabled_description": "Si cette option est désactivée, les images ne seront pas encodées pour la recherche intelligente.",
- "machine_learning_url_description": "URL du serveur d'apprentissage automatique",
+ "machine_learning_url_description": "L’URL du serveur d'apprentissage automatique. Si plusieurs URL sont fournies, chaque serveur sera essayé un par un jusqu’à ce que l’un d’eux réponde avec succès, dans l’ordre de la première à la dernière.",
"manage_concurrency": "Gérer du multitâche",
"manage_log_settings": "Gérer les paramètres de journalisation",
"map_dark_style": "Thème sombre",
@@ -148,11 +157,11 @@
"migration_job_description": "Migration des miniatures pour les médias et les visages vers la dernière structure de dossiers",
"no_paths_added": "Aucun chemin n'a été ajouté",
"no_pattern_added": "Aucun schéma d'exclusion n'a été ajouté",
- "note_apply_storage_label_previous_assets": "Remarque : pour appliquer l'étiquette de stockage à des médias précédemment téléversés, exécutez la commande",
+ "note_apply_storage_label_previous_assets": "Remarque : pour appliquer l'étiquette de stockage à des médias précédemment envoyés, exécutez la commande",
"note_cannot_be_changed_later": "REMARQUE : Il n'est pas possible de modifier ce paramètre ultérieurement !",
"note_unlimited_quota": "Note : saisir 0 pour un quota illimité",
"notification_email_from_address": "Depuis l'adresse",
- "notification_email_from_address_description": "Adresse courriel de l'expéditeur, par exemple : « Serveur de photos Immich {label} est l'étiquette de stockage de l'utilisateur",
"system_settings": "Paramètres du système",
+ "tag_cleanup_job": "Nettoyage des étiquettes",
+ "template_email_available_tags": "Vous pouvez utiliser les variables suivantes dans votre modèle : {tags}",
+ "template_email_if_empty": "Si le modèle est vide, l’e-mail par défaut sera utilisé.",
+ "template_email_invite_album": "Modèle d'invitation à un album",
+ "template_email_preview": "Prévisualiser",
+ "template_email_settings": "Modèles de courriel",
+ "template_email_settings_description": "Gérer les modèles de notifications par courriel personnalisés",
+ "template_email_update_album": "Mettre à jour le modèle d’album",
+ "template_email_welcome": "Modèle de courriel de bienvenue",
+ "template_settings": "Modèles de notifications",
+ "template_settings_description": "Gérer les modèles personnalisés pour les notifications.",
"theme_custom_css_settings": "CSS personnalisé",
"theme_custom_css_settings_description": "Les feuilles de style en cascade (CSS) permettent de personnaliser l'apparence d'Immich.",
"theme_settings": "Paramètres du thème",
"theme_settings_description": "Gérer la personnalisation de l'interface web d'Immich",
- "these_files_matched_by_checksum": "Ces fichiers correspondent par leur somme de contrôle",
+ "these_files_matched_by_checksum": "Ces fichiers sont identiques d'après leur somme de contrôle",
"thumbnail_generation_job": "Génération des miniatures",
"thumbnail_generation_job_description": "Génération des miniatures pour chaque média ainsi que pour les visages détectés",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "API d'accélération",
"transcoding_acceleration_api_description": "Il s'agit de l'API qui interagira avec votre appareil pour accélérer le transcodage. Ce paramètre fait au mieux : il basculera vers le transcodage logiciel en cas d'échec. Le codec vidéo VP9 peut fonctionner ou non selon votre matériel.",
"transcoding_acceleration_nvenc": "NVENC (nécessite un GPU NVIDIA)",
@@ -254,7 +275,7 @@
"transcoding_acceleration_vaapi": "VAAPI",
"transcoding_accepted_audio_codecs": "Codecs audio acceptés",
"transcoding_accepted_audio_codecs_description": "Sélectionnez les codecs audio qui n'ont pas besoin d'être transcodés. Utilisé uniquement pour certaines politiques de transcodage.",
- "transcoding_accepted_containers": "Containers acceptés",
+ "transcoding_accepted_containers": "Conteneurs acceptés",
"transcoding_accepted_containers_description": "Sélectionnez les formats de conteneurs qui n'ont pas besoin d'être remuxés en MP4. Utilisé uniquement pour certaines politiques de transcodage.",
"transcoding_accepted_video_codecs": "Codecs vidéo acceptés",
"transcoding_accepted_video_codecs_description": "Sélectionnez les codecs vidéo qui n'ont pas besoin d'être transcodés. Utilisé uniquement pour certaines politiques de transcodage.",
@@ -271,7 +292,7 @@
"transcoding_hardware_acceleration": "Accélération matérielle",
"transcoding_hardware_acceleration_description": "Expérimental ; beaucoup plus rapide, mais aura une qualité inférieure pour un même débit binaire",
"transcoding_hardware_decoding": "Décodage matériel",
- "transcoding_hardware_decoding_setting_description": "S'applique uniquement à NVENC, QSV et RKMPP. Active l'accélération de bout en bout au lieu d'accélérer uniquement l'encodage. Peut ne pas fonctionner sur toutes les vidéos.",
+ "transcoding_hardware_decoding_setting_description": "Active l'accélération de bout en bout au lieu d'accélérer uniquement l'encodage. Peut ne pas fonctionner sur toutes les vidéos.",
"transcoding_hevc_codec": "Codec HEVC",
"transcoding_max_b_frames": "Nombre maximum de trames B",
"transcoding_max_b_frames_description": "Des valeurs plus élevées améliorent l'efficacité de la compression, mais ralentissent l'encodage. Elles peuvent ne pas être compatibles avec l'accélération matérielle sur les anciens appareils. Une valeur de 0 désactive les trames B, tandis qu'une valeur de -1 définit automatiquement ce paramètre.",
@@ -291,14 +312,12 @@
"transcoding_settings_description": "Gérer les informations de résolution et d'encodage des fichiers vidéo",
"transcoding_target_resolution": "Résolution cible",
"transcoding_target_resolution_description": "Des résolutions plus élevées peuvent préserver plus de détails, mais prennent plus de temps à encoder, ont de plus grandes tailles de fichiers, et peuvent réduire la réactivité de l'application.",
- "transcoding_temporal_aq": "AQ temporelle",
+ "transcoding_temporal_aq": "Quantification adaptative temporelle (temporal AQ)",
"transcoding_temporal_aq_description": "S'applique uniquement à NVENC. Améliore la qualité des scènes riches en détails et à faible mouvement. Peut ne pas être compatible avec les anciens appareils.",
"transcoding_threads": "Processus",
"transcoding_threads_description": "Une valeur plus élevée entraîne un encodage plus rapide, mais laisse moins de place au serveur pour traiter d'autres tâches pendant son activité. Cette valeur ne doit pas être supérieure au nombre de cœurs de CPU. Une valeur égale à 0 maximise l'utilisation.",
"transcoding_tone_mapping": "Mappage tonal",
"transcoding_tone_mapping_description": "Tente de préserver l'apparence des vidéos HDR lorsqu'elles sont converties en SDR. Chaque algorithme effectue différents compromis pour la couleur, les détails et la luminosité. Hable préserve les détails, Mobius préserve la couleur, et Reinhard préserve la luminosité.",
- "transcoding_tone_mapping_npl": "Mappage tonal NPL",
- "transcoding_tone_mapping_npl_description": "Les couleurs seront ajustées pour paraître normales sur un écran de cette luminosité. De manière contre-intuitive, des valeurs plus basses augmentent la luminosité de la vidéo et vice versa, car cela compense la luminosité de l'écran. 0 configure cette valeur automatiquement.",
"transcoding_transcode_policy": "Politique de transcodage",
"transcoding_transcode_policy_description": "Politique indiquant quand une vidéo doit être transcodée. Les vidéos HDR seront toujours transcodées (sauf si le transcodage est désactivé).",
"transcoding_two_pass_encoding": "Encodage en deux passes",
@@ -311,7 +330,8 @@
"trash_settings": "Corbeille",
"trash_settings_description": "Gérer les paramètres de la corbeille",
"untracked_files": "Fichiers non suivis",
- "untracked_files_description": "Ces fichiers ne sont pas suivis par l'application. Ils peuvent être le résultat d'erreurs de déplacement, téléchargements interrompus, ou abandons en raison d'un bug",
+ "untracked_files_description": "Ces fichiers ne sont pas suivis par l'application. Ils peuvent être le résultat d'erreurs de déplacement, d'envois interrompus, ou d'abandons en raison d'un bug",
+ "user_cleanup_job": "Nettoyage des utilisateurs",
"user_delete_delay": "La suppression définitive du compte et des médias de {user} sera programmée dans {delay, plural, one {# jour} other {# jours}}.",
"user_delete_delay_settings": "Délai de suppression",
"user_delete_delay_settings_description": "Nombre de jours après la validation pour supprimer définitivement le compte et les médias d'un utilisateur. La suppression des utilisateurs se lance à minuit. Les modifications apportées à ce paramètre seront pris en compte lors de la prochaine exécution.",
@@ -319,7 +339,7 @@
"user_delete_immediately_checkbox": "Mise en file d'attente d'un utilisateur et de médias en vue d'une suppression immédiate",
"user_management": "Gestion des utilisateurs",
"user_password_has_been_reset": "Le mot de passe de l'utilisateur a été réinitialisé :",
- "user_password_reset_description": "Veuillez saisir un mot de passe temporaire à l'utilisateur et informez-le qu'il devra le changer à sa première connexion.",
+ "user_password_reset_description": "Veuillez fournir le mot de passe temporaire à l'utilisateur et informez-le qu'il devra le changer à sa première connexion.",
"user_restore_description": "Le compte de {user} sera restauré.",
"user_restore_scheduled_removal": "Restaurer l'utilisateur - suppression programmée le {date, date, long}",
"user_settings": "Paramètres utilisateur",
@@ -343,7 +363,7 @@
"album_added_notification_setting_description": "Recevoir une notification par courriel lorsque vous êtes ajouté(e) à un album partagé",
"album_cover_updated": "Couverture de l'album mise à jour",
"album_delete_confirmation": "Êtes-vous sûr de vouloir supprimer l'album {album} ?",
- "album_delete_confirmation_description": "Si cet album est partagé, d'autres utilisateurs ne pourront plus y accéder.",
+ "album_delete_confirmation_description": "Si cet album est partagé, les autres utilisateurs ne pourront plus y accéder.",
"album_info_updated": "Détails de l'album mis à jour",
"album_leave": "Quitter l'album ?",
"album_leave_confirmation": "Êtes-vous sûr de vouloir quitter l'album {album} ?",
@@ -366,7 +386,7 @@
"allow_dark_mode": "Autoriser le mode sombre",
"allow_edits": "Autoriser les modifications",
"allow_public_user_to_download": "Permettre aux utilisateurs non connectés de télécharger",
- "allow_public_user_to_upload": "Permettre aux utilisateurs non connectés de téléverser",
+ "allow_public_user_to_upload": "Permettre l'envoi aux utilisateurs non connectés",
"anti_clockwise": "Sens anti-horaire",
"api_key": "Clé API",
"api_key_description": "Cette valeur ne sera affichée qu'une seule fois. Assurez-vous de la copier avant de fermer la fenêtre.",
@@ -378,7 +398,6 @@
"archive_or_unarchive_photo": "Archiver ou désarchiver une photo",
"archive_size": "Taille de l'archive",
"archive_size_description": "Configurer la taille de l'archive maximale pour les téléchargements (en Go)",
- "archived": "Archivé",
"archived_count": "{count, plural, one {# archivé} other {# archivés}}",
"are_these_the_same_person": "Est-ce la même personne ?",
"are_you_sure_to_do_this": "Êtes-vous sûr de vouloir faire ceci ?",
@@ -386,23 +405,23 @@
"asset_adding_to_album": "Ajout à l'album...",
"asset_description_updated": "La description du média a été mise à jour",
"asset_filename_is_offline": "Le média {filename} est hors ligne",
- "asset_has_unassigned_faces": "Le média a des visages non assignés",
+ "asset_has_unassigned_faces": "Le média a des visages non attribués",
"asset_hashing": "Hachage...",
"asset_offline": "Média hors ligne",
- "asset_offline_description": "Ce média est hors ligne. Immich ne peut pas accéder à son emplacement physique. Veuillez vous assurez que le média est disponible, puis relancez l'analyse de la bibliothèque.",
+ "asset_offline_description": "Ce média externe n'est plus accessible sur le disque. Veuillez contacter votre administrateur Immich pour obtenir de l'aide.",
"asset_skipped": "Sauté",
- "asset_uploaded": "Téléversé",
- "asset_uploading": "Chargement...",
+ "asset_skipped_in_trash": "À la corbeille",
+ "asset_uploaded": "Envoyé",
+ "asset_uploading": "Envoi...",
"assets": "Médias",
"assets_added_count": "{count, plural, one {# média ajouté} other {# médias ajoutés}}",
"assets_added_to_album_count": "{count, plural, one {# média ajouté} other {# médias ajoutés}} à l'album",
"assets_added_to_name_count": "{count, plural, one {# média ajouté} other {# médias ajoutés}} à {hasName, select, true {{name}} other {new album}}",
"assets_count": "{count, plural, one {# média} other {# médias}}",
- "assets_moved_to_trash": "{count, plural, one {# média déplacé} other {# médias déplacés}} vers la corbeille",
"assets_moved_to_trash_count": "{count, plural, one {# média déplacé} other {# médias déplacés}} dans la corbeille",
"assets_permanently_deleted_count": "{count, plural, one {# média supprimé} other {# médias supprimés}} définitivement",
"assets_removed_count": "{count, plural, one {# média supprimé} other {# médias supprimés}}",
- "assets_restore_confirmation": "Êtes-vous sûr de vouloir restaurer tous vos médias de la corbeille ? Vous ne pouvez pas annuler cette action !",
+ "assets_restore_confirmation": "Êtes-vous sûr de vouloir restaurer tous vos médias de la corbeille ? Vous ne pouvez pas annuler cette action ! Notez que les médias hors ligne ne peuvent être restaurés de cette façon.",
"assets_restored_count": "{count, plural, one {# média restauré} other {# médias restaurés}}",
"assets_trashed_count": "{count, plural, one {# média} other {# médias}} mis à la corbeille",
"assets_were_part_of_album_count": "{count, plural, one {Un média est} other {Des médias sont}} déjà dans l'album",
@@ -413,6 +432,7 @@
"birthdate_saved": "Date de naissance sauvée avec succès",
"birthdate_set_description": "La date de naissance est utilisée pour calculer l'âge de cette personne au moment où la photo a été prise.",
"blurred_background": "Arrière-plan flouté",
+ "bugs_and_feature_requests": "Bugs & demandes d'évolutions",
"build": "Version",
"build_image": "Image de la version",
"bulk_delete_duplicates_confirmation": "Êtes-vous sûr de vouloir supprimer {count, plural, one {# doublon} other {# doublons}} ? Cette opération conservera le plus grand média de chaque groupe et supprimera définitivement tous les autres doublons. Vous ne pouvez pas annuler cette action !",
@@ -427,10 +447,6 @@
"cannot_merge_people": "Impossible de fusionner les personnes",
"cannot_undo_this_action": "Vous ne pouvez pas annuler cette action !",
"cannot_update_the_description": "Impossible de mettre à jour la description",
- "cant_apply_changes": "Impossible d'enregistrer les changements",
- "cant_get_faces": "Aucun visage détecté",
- "cant_search_people": "Impossible de rechercher des personnes",
- "cant_search_places": "Impossible de rechercher des lieux",
"change_date": "Changer la date",
"change_expiration_time": "Modifier le délai d'expiration",
"change_location": "Changer la localisation",
@@ -462,6 +478,7 @@
"confirm": "Confirmer",
"confirm_admin_password": "Confirmer le mot de passe Admin",
"confirm_delete_shared_link": "Voulez-vous vraiment supprimer ce lien partagé ?",
+ "confirm_keep_this_delete_others": "Tous les autres médias dans la pile seront supprimés sauf celui-ci. Êtes-vous sûr de vouloir continuer ?",
"confirm_password": "Confirmer le mot de passe",
"contain": "Contenu",
"context": "Contexte",
@@ -487,8 +504,8 @@
"create_new_person": "Créer une nouvelle personne",
"create_new_person_hint": "Attribuer les médias sélectionnés à une nouvelle personne",
"create_new_user": "Créer un nouvel utilisateur",
- "create_tag": "Créer un tag",
- "create_tag_description": "Créer un nouveau tag. Pour les tags imbriqués, veuillez entrer le chemin complet du tag, y compris les \"/\" avant.",
+ "create_tag": "Créer une étiquette",
+ "create_tag_description": "Créer une nouvelle étiquette. Pour les étiquettes imbriquées, veuillez entrer le chemin complet de l'étiquette, y compris les caractères \"/\".",
"create_user": "Créer un utilisateur",
"created": "Créé",
"current_device": "Appareil actuel",
@@ -511,43 +528,40 @@
"delete_key": "Supprimer la clé",
"delete_library": "Supprimer la bibliothèque",
"delete_link": "Supprimer le lien",
+ "delete_others": "Supprimer les autres",
"delete_shared_link": "Supprimer le lien partagé",
- "delete_tag": "Supprimer le tag",
- "delete_tag_confirmation_prompt": "Êtes-vous sûr de vouloir supprimer le tag {tagName} ?",
+ "delete_tag": "Supprimer l'étiquette",
+ "delete_tag_confirmation_prompt": "Êtes-vous sûr de vouloir supprimer l'étiquette {tagName} ?",
"delete_user": "Supprimer l'utilisateur",
"deleted_shared_link": "Lien partagé supprimé",
+ "deletes_missing_assets": "Supprimer les médias manquants du disque",
"description": "Description",
"details": "Détails",
"direction": "Direction",
"disabled": "Désactivé",
"disallow_edits": "Ne pas autoriser les modifications",
+ "discord": "Discord",
"discover": "Découvrir",
"dismiss_all_errors": "Ignorer toutes les erreurs",
"dismiss_error": "Ignorer l'erreur",
"display_options": "Afficher les options",
"display_order": "Ordre d'affichage",
"display_original_photos": "Afficher les photos originales",
- "display_original_photos_setting_description": "Préférer afficher la photo originale lors de la visualisation d'un média plutôt que sa miniature lorsque cela est possible. Cela peut entraîner des vitesses d'affichage plus lentes.",
+ "display_original_photos_setting_description": "Afficher de préférence la photo originale lors de la visualisation d'un média plutôt que sa miniature lorsque cela est possible. Cela peut entraîner des vitesses d'affichage plus lentes.",
"do_not_show_again": "Ne plus afficher ce message",
+ "documentation": "Documentation",
"done": "Terminé",
"download": "Télécharger",
- "download_include_embedded_motion_videos": "Vidéos embarquées",
+ "download_include_embedded_motion_videos": "Vidéos intégrées",
"download_include_embedded_motion_videos_description": "Inclure des vidéos intégrées dans les photos de mouvement comme un fichier séparé",
"download_settings": "Télécharger",
"download_settings_description": "Gérer les paramètres de téléchargement des médias",
"downloading": "Téléchargement",
"downloading_asset_filename": "Téléchargement du média {filename}",
- "drop_files_to_upload": "Déposer des fichiers n'importe où pour téléverser",
+ "drop_files_to_upload": "Déposez les fichiers n'importe où pour envoyer",
"duplicates": "Doublons",
"duplicates_description": "Examiner chaque groupe et indiquer s'il y a des doublons",
"duration": "Durée",
- "durations": {
- "days": "{days, plural, one {jour} other {{days, number} jours}}",
- "hours": "{hours, plural, one{une heure} other {{hours, number} heures}}",
- "minutes": "{minutes, plural, one {minute} other {{minutes, number} minutes}}",
- "months": "{months, plural, one {mois} other {{months, number} mois}}",
- "years": "{years, plural, one {an} other {{years, number} ans}}"
- },
"edit": "Modifier",
"edit_album": "Modifier l'album",
"edit_avatar": "Modifier l'avatar",
@@ -562,8 +576,8 @@
"edit_location": "Modifier la localisation",
"edit_name": "Modifier le nom",
"edit_people": "Modifier les personnes",
- "edit_tag": "Modifier le tag",
- "edit_title": "Modifier le title",
+ "edit_tag": "Modifier l'étiquette",
+ "edit_title": "Modifier le titre",
"edit_user": "Modifier l'utilisateur",
"edited": "Modifié",
"editor": "Editeur",
@@ -572,8 +586,6 @@
"editor_crop_tool_h2_aspect_ratios": "Rapports hauteur/largeur",
"editor_crop_tool_h2_rotation": "Rotation",
"email": "Courriel",
- "empty": "",
- "empty_album": "Album vide",
"empty_trash": "Vider la corbeille",
"empty_trash_confirmation": "Êtes-vous sûr de vouloir vider la corbeille ? Cela supprimera définitivement de Immich tous les médias qu'elle contient.\nVous ne pouvez pas annuler cette action !",
"enable": "Active",
@@ -588,15 +600,15 @@
"cant_apply_changes": "Impossible d'appliquer les changements",
"cant_change_activity": "Impossible {enabled, select, true {d'interdire} other {d'autoriser}} l'activité",
"cant_change_asset_favorite": "Impossible de changer le favori du média",
- "cant_change_metadata_assets_count": "Impossible de modifier les métadonnées de {count, plural, one {# média} other {# médias}}",
- "cant_get_faces": "Impossible d'obtenir de visages",
+ "cant_change_metadata_assets_count": "Impossible de modifier les métadonnées {count, plural, one {d'un média} other {de # médias}}",
+ "cant_get_faces": "Impossible d'obtenir des visages",
"cant_get_number_of_comments": "Impossible d'obtenir le nombre de commentaires",
"cant_search_people": "Impossible de rechercher des personnes",
"cant_search_places": "Impossible de rechercher des lieux",
"cleared_jobs": "Tâches supprimées pour : {job}",
"error_adding_assets_to_album": "Erreur lors de l'ajout des médias à l'album",
"error_adding_users_to_album": "Erreur lors de l'ajout d'utilisateurs à l'album",
- "error_deleting_shared_user": "Erreur lors de la suppression l'utilisateur partagé",
+ "error_deleting_shared_user": "Erreur lors de la suppression de l'utilisateur partagé",
"error_downloading": "Erreur lors du téléchargement de {filename}",
"error_hiding_buy_button": "Impossible de masquer le bouton d'achat",
"error_removing_assets_from_album": "Erreur lors de la suppression des médias de l'album, vérifier la console pour plus de détails",
@@ -607,13 +619,14 @@
"failed_to_create_shared_link": "Impossible de créer le lien partagé",
"failed_to_edit_shared_link": "Impossible de modifier le lien partagé",
"failed_to_get_people": "Impossible d'obtenir les personnes",
+ "failed_to_keep_this_delete_others": "Impossible de conserver ce média et de supprimer les autres médias",
"failed_to_load_asset": "Impossible de charger le média",
"failed_to_load_assets": "Impossible de charger les médias",
"failed_to_load_people": "Impossible de charger les personnes",
"failed_to_remove_product_key": "Échec de suppression de la clé du produit",
"failed_to_stack_assets": "Impossible d'empiler les médias",
"failed_to_unstack_assets": "Impossible de dépiler les médias",
- "import_path_already_exists": "Ce chemin d'import existe déjà.",
+ "import_path_already_exists": "Ce chemin d'importation existe déjà.",
"incorrect_email_or_password": "Courriel ou mot de passe incorrect",
"paths_validation_failed": "Validation échouée pour {paths, plural, one {# un chemin} other {# plusieurs chemins}}",
"profile_picture_transparent_pixels": "Les images de profil ne peuvent pas avoir de pixels transparents. Veuillez agrandir et/ou déplacer l'image.",
@@ -623,7 +636,7 @@
"unable_to_add_assets_to_shared_link": "Impossible d'ajouter des médias au lien partagé",
"unable_to_add_comment": "Impossible d'ajouter un commentaire",
"unable_to_add_exclusion_pattern": "Impossible d'ajouter un schéma d'exclusion",
- "unable_to_add_import_path": "Impossible d'ajouter un chemin d'import",
+ "unable_to_add_import_path": "Impossible d'ajouter le chemin d'importation",
"unable_to_add_partners": "Impossible d'ajouter des partenaires",
"unable_to_add_remove_archive": "Impossible {archived, select, true {de supprimer des médias de} other {d'ajouter des médias à}} l'archive",
"unable_to_add_remove_favorites": "Impossible {favorite, select, true {d'ajouter des médias aux} other {de supprimer des médias des}} favoris",
@@ -634,32 +647,31 @@
"unable_to_change_location": "Impossible de changer la localisation",
"unable_to_change_password": "Impossible de changer le mot de passe",
"unable_to_change_visibility": "Impossible de changer la visibilité pour {count, plural, one {# personne} other {# personnes}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "Impossible de terminer la connexion OAuth",
"unable_to_connect": "Impossible de se connecter",
"unable_to_connect_to_server": "Impossible de se connecter au serveur",
"unable_to_copy_to_clipboard": "Impossible de copier dans le presse-papiers, assurez-vous que vous accédez à la page via https",
"unable_to_create_admin_account": "Impossible de créer le compte administrateur",
"unable_to_create_api_key": "Impossible de créer une nouvelle clé API",
- "unable_to_create_library": "Création de bibliothèque impossible",
- "unable_to_create_user": "Création de l'utilisateur impossible",
- "unable_to_delete_album": "Suppression de l'album impossible",
- "unable_to_delete_asset": "Suppression du média impossible",
+ "unable_to_create_library": "Impossible de créer la bibliothèque",
+ "unable_to_create_user": "Impossible de créer l'utilisateur",
+ "unable_to_delete_album": "Impossible de supprimer l'album",
+ "unable_to_delete_asset": "Impossible de supprimer le média",
"unable_to_delete_assets": "Erreur lors de la suppression des médias",
- "unable_to_delete_exclusion_pattern": "Suppression du modèle d'exclusion impossible",
- "unable_to_delete_import_path": "Suppression du chemin d'import impossible",
- "unable_to_delete_shared_link": "Suppression du lien de partage impossible",
- "unable_to_delete_user": "Suppression de l'utilisateur impossible",
+ "unable_to_delete_exclusion_pattern": "Impossible de supprimer le modèle d'exclusion",
+ "unable_to_delete_import_path": "Impossible de supprimer le chemin d'importation",
+ "unable_to_delete_shared_link": "Impossible de supprimer le lien de partage",
+ "unable_to_delete_user": "Impossible de supprimer l'utilisateur",
"unable_to_download_files": "Impossible de télécharger les fichiers",
- "unable_to_edit_exclusion_pattern": "Modification du modèle d'exclusion impossible",
- "unable_to_edit_import_path": "Modification du chemin d'import impossible",
+ "unable_to_edit_exclusion_pattern": "Impossible de modifier le modèle d'exclusion",
+ "unable_to_edit_import_path": "Impossible de modifier le chemin d'importation",
"unable_to_empty_trash": "Impossible de vider la corbeille",
"unable_to_enter_fullscreen": "Mode plein écran indisponible",
- "unable_to_exit_fullscreen": "Sortie du mode plein écran impossible",
+ "unable_to_exit_fullscreen": "Impossible de sortir du mode plein écran",
"unable_to_get_comments_number": "Impossible d'obtenir le nombre de commentaires",
"unable_to_get_shared_link": "Échec de la récupération du lien partagé",
"unable_to_hide_person": "Impossible de cacher la personne",
+ "unable_to_link_motion_video": "Impossible de lier la photo animée",
"unable_to_link_oauth_account": "Impossible de lier le compte OAuth",
"unable_to_load_album": "Impossible de charger l'album",
"unable_to_load_asset_activity": "Impossible de charger l'activité du média",
@@ -669,18 +681,16 @@
"unable_to_log_out_device": "Impossible de déconnecter l'appareil",
"unable_to_login_with_oauth": "Impossible de se connecter avec OAuth",
"unable_to_play_video": "Impossible de jouer la vidéo",
- "unable_to_reassign_assets_existing_person": "Incapable de réaffecter des médias à {name, select, null {une personne existante} other {{name}}}",
- "unable_to_reassign_assets_new_person": "Impossible de réaffecter les médias à une nouvelle personne",
+ "unable_to_reassign_assets_existing_person": "Impossible de réattribuer les médias à {name, select, null {une personne existante} other {{name}}}",
+ "unable_to_reassign_assets_new_person": "Impossible de réattribuer les médias à une nouvelle personne",
"unable_to_refresh_user": "Impossible d'actualiser l'utilisateur",
"unable_to_remove_album_users": "Impossible de supprimer les utilisateurs de l'album",
"unable_to_remove_api_key": "Impossible de supprimer la clé API",
"unable_to_remove_assets_from_shared_link": "Impossible de supprimer des médias du lien partagé",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "Impossible de supprimer les fichiers hors ligne",
"unable_to_remove_library": "Impossible de supprimer la bibliothèque",
- "unable_to_remove_offline_files": "Impossible de supprimer les fichiers hors ligne",
"unable_to_remove_partner": "Impossible de supprimer le partenaire",
"unable_to_remove_reaction": "Impossible de supprimer la réaction",
- "unable_to_remove_user": "",
"unable_to_repair_items": "Impossible de réparer les éléments",
"unable_to_reset_password": "Impossible de réinitialiser le mot de passe",
"unable_to_resolve_duplicate": "Impossible de résoudre le doublon",
@@ -691,7 +701,7 @@
"unable_to_save_api_key": "Impossible de sauvegarder la clé API",
"unable_to_save_date_of_birth": "Impossible de sauvegarder la date de naissance",
"unable_to_save_name": "Impossible de sauvegarder le nom",
- "unable_to_save_profile": "Impossible de sauvegarder le profile",
+ "unable_to_save_profile": "Impossible de sauvegarder le profil",
"unable_to_save_settings": "Impossible d'enregistrer les préférences",
"unable_to_scan_libraries": "Impossible de scanner les bibliothèques",
"unable_to_scan_library": "Impossible de scanner la bibliothèque",
@@ -700,19 +710,16 @@
"unable_to_submit_job": "Impossible d'exécuter la tâche",
"unable_to_trash_asset": "Impossible de mettre le média à la corbeille",
"unable_to_unlink_account": "Impossible de détacher le compte",
+ "unable_to_unlink_motion_video": "Impossible de détacher la photo animée",
"unable_to_update_album_cover": "Impossible de mettre à jour la couverture de l'album",
"unable_to_update_album_info": "Impossible de mettre à jour les informations de l'album",
"unable_to_update_library": "Impossible de mettre à jour la bibliothèque",
"unable_to_update_location": "Impossible de mettre à jour la localisation",
"unable_to_update_settings": "Impossible de mettre à jour les paramètres",
- "unable_to_update_timeline_display_status": "Impossible de mettre à jour le statut d'affichage de la timeline",
+ "unable_to_update_timeline_display_status": "Impossible de mettre à jour le statut d'affichage de la vue chronologique",
"unable_to_update_user": "Impossible de mettre à jour l'utilisateur",
- "unable_to_upload_file": "Impossible de téléverser le fichier"
+ "unable_to_upload_file": "Impossible d'envoyer le fichier"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Exif",
"exit_slideshow": "Quitter le diaporama",
"expand_all": "Tout développer",
@@ -727,33 +734,28 @@
"external": "Externe",
"external_libraries": "Bibliothèques externes",
"face_unassigned": "Non attribué",
- "failed_to_get_people": "Impossible d'obtenir les personnes",
+ "failed_to_load_assets": "Échec du chargement des ressources",
"favorite": "Favori",
"favorite_or_unfavorite_photo": "Ajouter ou supprimer des favoris",
"favorites": "Favoris",
- "feature": "",
"feature_photo_updated": "Photo de la personne mise à jour",
- "featurecollection": "",
"features": "Fonctionnalités",
"features_setting_description": "Gérer les fonctionnalités de l'application",
"file_name": "Nom du fichier",
"file_name_or_extension": "Nom du fichier ou extension",
"filename": "Nom du fichier",
- "files": "",
"filetype": "Type de fichier",
"filter_people": "Filtrer les personnes",
"find_them_fast": "Pour les retrouver rapidement par leur nom",
"fix_incorrect_match": "Corriger une association incorrecte",
"folders": "Dossiers",
"folders_feature_description": "Parcourir l'affichage par dossiers pour les photos et les vidéos sur le système de fichiers",
- "force_re-scan_library_files": "Forcer la réactualisation de tous les fichiers de la bibliothèque",
"forward": "Avant",
"general": "Général",
"get_help": "Obtenir de l'aide",
"getting_started": "Commencer",
"go_back": "Retour",
"go_to_search": "Faire une recherche",
- "go_to_share_page": "Aller sur la page des Partages",
"group_albums_by": "Grouper les albums par...",
"group_no": "Pas de groupe",
"group_owner": "Groupe par propriétaire",
@@ -779,10 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Image}} prise à {city}, {country} avec {person1} et {person2} le {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Image}} prise à {city}, {country} avec {person1}, {person2}, et {person3} le {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Image}} prise à {city}, {country} avec {person1}, {person2} et {additionalCount, number} autres personnes le {date}",
- "image_alt_text_people": "{count, plural, =1 {with {person1}} =2 {with {person1} and {person2}} =3 {with {person1}, {person2}, and {person3}} other {with {person1}, {person2}, and {others, number} others}}",
- "image_alt_text_place": "à {city}, {country}",
- "image_taken": "{isVideo, select, true {Video prise} other {Image prise}}",
- "img": "",
"immich_logo": "Logo Immich",
"immich_web_interface": "Interface Web Immich",
"import_from_json": "Importer depuis un fichier JSON",
@@ -803,10 +801,11 @@
"invite_people": "Inviter une personne",
"invite_to_album": "Inviter à l'album",
"items_count": "{count, plural, one {# élément} other {# éléments}}",
- "job_settings_description": "",
"jobs": "Tâches",
"keep": "Conserver",
"keep_all": "Les conserver tous",
+ "keep_this_delete_others": "Conserver celui-ci, supprimer les autres",
+ "kept_this_deleted_others": "Ce média a été conservé, et {count, plural, one {un autre a été supprimé} other {# autres ont été supprimés}}",
"keyboard_shortcuts": "Raccourcis clavier",
"language": "Langue",
"language_setting_description": "Sélectionnez votre langue préférée",
@@ -818,33 +817,9 @@
"level": "Niveau",
"library": "Bibliothèque",
"library_options": "Options de bibliothèque",
- "license_account_info": "Ton compte a une licence",
- "license_activated_subtitle": "Merci de soutenir Immich ainsi que les logiciels open source",
- "license_activated_title": "Votre licence a été activée avec succès",
- "license_button_activate": "Activer",
- "license_button_buy": "Acheter",
- "license_button_buy_license": "Acheter une licence",
- "license_button_select": "Sélectionner",
- "license_failed_activation": "Echec lors de l'activation de la licence. Merci de vérifier la clef reçu par mail !",
- "license_individual_description_1": "1 licence par utilisateur sur n'importe quel serveur",
- "license_individual_title": "Licence individuelle",
- "license_info_licensed": "Licence active",
- "license_info_unlicensed": "Sans licence",
- "license_input_suggestion": "Vous avez une licence ? Renseignez la clef ci-dessous",
- "license_license_subtitle": "Acheter une licence pour soutenir Immich",
- "license_license_title": "LICENCE",
- "license_lifetime_description": "Licence à vie",
- "license_per_server": "Par serveur",
- "license_per_user": "Par utilisateur",
- "license_server_description_1": "1 licence par serveur",
- "license_server_description_2": "Licence pour tous les utilisateurs du serveur",
- "license_server_title": "Licence serveur",
- "license_trial_info_1": "Vous utilisez une version Sans Licence de Immich",
- "license_trial_info_2": "Vous utilisez Immich depuis approximativement",
- "license_trial_info_3": "{accountAge, plural, one {# jour} other {# jours}}",
- "license_trial_info_4": "Pensez à acheter une licence pour soutenir le développement du service",
"light": "Clair",
"like_deleted": "Réaction « j'aime » supprimée",
+ "link_motion_video": "Lier la photo animée",
"link_options": "Options de lien",
"link_to_oauth": "Lien au service OAuth",
"linked_oauth_account": "Compte OAuth rattaché",
@@ -863,6 +838,7 @@
"look": "Regarder",
"loop_videos": "Vidéos en boucle",
"loop_videos_description": "Activer pour voir la vidéo en boucle dans le lecteur détaillé.",
+ "main_branch_warning": "Vous utilisez une version de développement. Nous vous recommandons fortement d'utiliser une version stable !",
"make": "Marque",
"manage_shared_links": "Gérer les liens partagés",
"manage_sharing_with_partners": "Gérer le partage avec les partenaires",
@@ -879,7 +855,7 @@
"media_type": "Type de média",
"memories": "Souvenirs",
"memories_setting_description": "Gérer ce que vous voyez dans vos souvenirs",
- "memory": "Mémoire",
+ "memory": "Souvenir",
"memory_lane_title": "Fil de souvenirs {title}",
"menu": "Menu",
"merge": "Fusionner",
@@ -913,10 +889,10 @@
"no_albums_with_name_yet": "Il semble que vous n'ayez pas encore d'albums avec ce nom.",
"no_albums_yet": "Il semble que vous n'ayez pas encore d'album.",
"no_archived_assets_message": "Archiver des photos et vidéos pour les masquer dans votre bibliothèque",
- "no_assets_message": "CLIQUER ICI POUR IMPORTER VOTRE PREMIÈRE PHOTO",
+ "no_assets_message": "CLIQUER ICI POUR ENVOYER VOTRE PREMIÈRE PHOTO",
"no_duplicates_found": "Aucun doublon n'a été trouvé.",
"no_exif_info_available": "Aucune information exif disponible",
- "no_explore_results_message": "Importer plus de photos pour explorer votre collection.",
+ "no_explore_results_message": "Envoyez plus de photos pour explorer votre collection.",
"no_favorites_message": "Ajouter des photos et vidéos à vos favoris pour les retrouver plus rapidement",
"no_libraries_message": "Créer une bibliothèque externe pour voir vos photos et vidéos dans un autre espace de stockage",
"no_name": "Pas de nom",
@@ -925,13 +901,14 @@
"no_results_description": "Essayez un synonyme ou un mot-clé plus général",
"no_shared_albums_message": "Créer un album pour partager vos photos et vidéos avec les personnes de votre réseau",
"not_in_any_album": "Dans aucun album",
- "note_apply_storage_label_to_previously_uploaded assets": "Note : Pour appliquer l'étiquette de stockage aux médias déjà importés, lancer la",
+ "note_apply_storage_label_to_previously_uploaded assets": "Note : Pour appliquer l'étiquette de stockage aux médias déjà envoyés, lancer la",
"note_unlimited_quota": "Note : Saisir 0 pour définir un quota illimité",
"notes": "Notes",
"notification_toggle_setting_description": "Activer les notifications par courriel",
"notifications": "Notifications",
"notifications_setting_description": "Gérer les notifications",
"oauth": "OAuth",
+ "official_immich_resources": "Ressources Immich officielles",
"offline": "Hors ligne",
"offline_paths": "Chemins hors ligne",
"offline_paths_description": "Ces résultats peuvent être causés par la suppression manuelle de fichiers qui n'étaient pas dans une bibliothèque externe.",
@@ -944,7 +921,6 @@
"onboarding_welcome_user": "Bienvenue {user}",
"online": "En ligne",
"only_favorites": "Uniquement les favoris",
- "only_refreshes_modified_files": "Actualise les fichiers modifiés uniquement",
"open_in_map_view": "Montrer sur la carte",
"open_in_openstreetmap": "Ouvrir dans OpenStreetMap",
"open_the_search_filters": "Ouvrir les filtres de recherche",
@@ -982,14 +958,12 @@
"people_edits_count": "{count, plural, one {# personne éditée} other {# personnes éditées}}",
"people_feature_description": "Parcourir les photos et vidéos groupées par personnes",
"people_sidebar_description": "Afficher le menu Personnes dans la barre latérale",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Avertissement avant suppression définitive",
"permanent_deletion_warning_setting_description": "Afficher un avertissement avant la suppression définitive d'un média",
"permanently_delete": "Supprimer définitivement",
- "permanently_delete_assets_count": "Suppression définitive de {count, plural, one {média} other {médias}}",
+ "permanently_delete_assets_count": "Suppression définitive {count, plural, one {du média} other {des médias}}",
"permanently_delete_assets_prompt": "Êtes-vous sûr de vouloir supprimer définitivement {count, plural, one {ce média ?} other {ces # médias ?}} Cela {count, plural, one {le} other {les}} supprimera aussi de {count, plural, one {son (ses)} other {leur(s)}} album(s).",
"permanently_deleted_asset": "Média supprimé définitivement",
- "permanently_deleted_assets": "{count, plural, one {# média supprimé} other {# médias supprimés}} définitivement",
"permanently_deleted_assets_count": "{count, plural, one {# média définitivement supprimé} other {# médias définitivement supprimés}}",
"person": "Personne",
"person_hidden": "{name}{hidden, select, true { (caché)} other {}}",
@@ -1005,7 +979,6 @@
"play_memories": "Lancer les souvenirs",
"play_motion_photo": "Jouer la photo animée",
"play_or_pause_video": "Jouer ou mettre en pause la vidéo",
- "point": "",
"port": "Port",
"preset": "Préréglage",
"preview": "Aperçu",
@@ -1019,7 +992,7 @@
"public_album": "Album public",
"public_share": "Partage public",
"purchase_account_info": "Contributeur",
- "purchase_activated_subtitle": "Merci d'avoir apporté votre soutien à Immich et les logiciels open source",
+ "purchase_activated_subtitle": "Merci d'avoir apporté votre soutien à Immich et aux logiciels open source",
"purchase_activated_time": "Activé le {date, date}",
"purchase_activated_title": "Votre clé a été activée avec succès",
"purchase_button_activate": "Activer",
@@ -1029,7 +1002,7 @@
"purchase_button_reminder": "Me le rappeler dans 30 jours",
"purchase_button_remove_key": "Supprimer la clé",
"purchase_button_select": "Sélectionner",
- "purchase_failed_activation": "Erreur à l'activation. Veuillez vérifier votre e-mail pour obtenir la clé du produit correcte !",
+ "purchase_failed_activation": "Erreur à l'activation. Veuillez vérifier votre courriel pour obtenir la clé du produit correcte !",
"purchase_individual_description_1": "Pour un utilisateur",
"purchase_individual_description_2": "Statut de contributeur",
"purchase_individual_title": "Utilisateur",
@@ -1038,50 +1011,52 @@
"purchase_lifetime_description": "Achat à vie",
"purchase_option_title": "OPTIONS D'ACHAT",
"purchase_panel_info_1": "Développer Immich nécessite du temps et de l'énergie, et nous avons des ingénieurs qui travaillent à plein temps pour en faire le meilleur produit possible. Notre mission est de générer, pour les logiciels open source et les pratiques de travail éthique, une source de revenus suffisante pour les développeurs et de créer un écosystème respectueux de la vie privée grâce a des alternatives crédibles aux services cloud peu scrupuleux.",
- "purchase_panel_info_2": "Étant donné que nous nous engageons à ne pas ajouter de murs de paiement, cet achat ne vous donnera pas de fonctionnalités supplémentaires dans Immich. Nous comptons sur des utilisateurs comme vous pour soutenir le développement continu d'Immich.",
+ "purchase_panel_info_2": "Étant donné que nous nous engageons à ne pas ajouter de fonctionnalités payantes, cet achat ne vous donnera pas de fonctionnalités supplémentaires dans Immich. Nous comptons sur des utilisateurs comme vous pour soutenir le développement continu d'Immich.",
"purchase_panel_title": "Soutenir le projet",
"purchase_per_server": "Par serveur",
"purchase_per_user": "Par utilisateur",
"purchase_remove_product_key": "Supprimer la clé du produit",
"purchase_remove_product_key_prompt": "Êtes-vous sûr de vouloir supprimer la clé du produit ?",
"purchase_remove_server_product_key": "Supprimer la clé du produit pour le Serveur",
- "purchase_remove_server_product_key_prompt": "Êtes-vous sûr de vouloir supprimer la clé du produit pour le serveur ?",
+ "purchase_remove_server_product_key_prompt": "Êtes-vous sûr de vouloir supprimer la clé du produit pour le Serveur ?",
"purchase_server_description_1": "Pour l'ensemble du serveur",
"purchase_server_description_2": "Statut de contributeur",
"purchase_server_title": "Serveur",
"purchase_settings_server_activated": "La clé du produit pour le Serveur est gérée par l'administrateur",
- "range": "",
"rating": "Étoile d'évaluation",
"rating_clear": "Effacer l'évaluation",
"rating_count": "{count, plural, one {# étoile} other {# étoiles}}",
"rating_description": "Afficher l'évaluation EXIF dans le panneau d'information",
- "raw": "",
"reaction_options": "Options de réaction",
"read_changelog": "Lire les changements",
- "reassign": "Réaffecter",
- "reassigned_assets_to_existing_person": "{count, plural, one {# média réaffecté} other {# médias réaffectés}} à {name, select, null {une personne existante} other {{name}}}",
- "reassigned_assets_to_new_person": "{count, plural, one {# média réassigné} other {# médias réassignés}} à une nouvelle personne",
+ "reassign": "Réattribuer",
+ "reassigned_assets_to_existing_person": "{count, plural, one {# média réattribué} other {# médias réattribués}} à {name, select, null {une personne existante} other {{name}}}",
+ "reassigned_assets_to_new_person": "{count, plural, one {# média réattribué} other {# médias réattribués}} à une nouvelle personne",
"reassing_hint": "Attribuer ces médias à une personne existante",
"recent": "Récent",
+ "recent-albums": "Albums récents",
"recent_searches": "Recherches récentes",
"refresh": "Actualiser",
"refresh_encoded_videos": "Actualiser les vidéos encodées",
+ "refresh_faces": "Actualiser les visages",
"refresh_metadata": "Actualiser les métadonnées",
"refresh_thumbnails": "Actualiser les vignettes",
"refreshed": "Actualisé",
- "refreshes_every_file": "Actualise tous les fichiers",
+ "refreshes_every_file": "Actualise tous les fichiers (existants et nouveaux)",
"refreshing_encoded_video": "Actualisation de la vidéo encodée",
+ "refreshing_faces": "Actualisation des visages",
"refreshing_metadata": "Actualisation des métadonnées",
- "regenerating_thumbnails": "Régénération des vignettes",
+ "regenerating_thumbnails": "Regénération des vignettes",
"remove": "Supprimer",
"remove_assets_album_confirmation": "Êtes-vous sûr de vouloir supprimer {count, plural, one {# média} other {# médias}} de l'album ?",
"remove_assets_shared_link_confirmation": "Êtes-vous sûr de vouloir supprimer {count, plural, one {# média} other {# médias}} de ce lien partagé ?",
"remove_assets_title": "Supprimer les médias ?",
"remove_custom_date_range": "Supprimer la plage de date personnalisée",
+ "remove_deleted_assets": "Supprimer les fichiers hors ligne",
"remove_from_album": "Supprimer de l'album",
"remove_from_favorites": "Supprimer des favoris",
"remove_from_shared_link": "Supprimer des liens partagés",
- "remove_offline_files": "Supprimer les fichiers hors ligne",
+ "remove_url": "Supprimer l'URL",
"remove_user": "Supprimer l'utilisateur",
"removed_api_key": "Clé API supprimée : {name}",
"removed_from_archive": "Supprimé de l'archive",
@@ -1098,7 +1073,6 @@
"reset": "Réinitialiser",
"reset_password": "Réinitialiser le mot de passe",
"reset_people_visibility": "Réinitialiser la visibilité des personnes",
- "reset_settings_to_default": "",
"reset_to_default": "Rétablir les valeurs par défaut",
"resolve_duplicates": "Résoudre les doublons",
"resolved_all_duplicates": "Résolution de tous les doublons",
@@ -1118,8 +1092,7 @@
"saved_settings": "Paramètres enregistrés",
"say_something": "Réagir",
"scan_all_libraries": "Analyser toutes les bibliothèques",
- "scan_all_library_files": "Analyser tous les fichiers",
- "scan_new_library_files": "Analyser les nouveaux fichiers",
+ "scan_library": "Analyser",
"scan_settings": "Paramètres d'analyse",
"scanning_for_album": "Recherche d'albums en cours...",
"search": "Recherche",
@@ -1134,10 +1107,12 @@
"search_for_existing_person": "Rechercher une personne existante",
"search_no_people": "Aucune personne",
"search_no_people_named": "Aucune personne nommée « {name} »",
+ "search_options": "Rechercher une option",
"search_people": "Rechercher une personne",
"search_places": "Rechercher un lieu",
+ "search_settings": "Paramètres de recherche",
"search_state": "Rechercher par état/région...",
- "search_tags": "Recherche de tags...",
+ "search_tags": "Recherche d'étiquettes...",
"search_timezone": "Rechercher par fuseau horaire...",
"search_type": "Rechercher par type",
"search_your_photos": "Rechercher vos photos",
@@ -1160,10 +1135,9 @@
"selected_count": "{count, plural, one {# sélectionné} other {# sélectionnés}}",
"send_message": "Envoyer un message",
"send_welcome_email": "Envoyer un courriel de bienvenue",
- "server": "Serveur",
"server_offline": "Serveur hors ligne",
"server_online": "Serveur en ligne",
- "server_stats": "Statistiques Serveur",
+ "server_stats": "Statistiques du serveur",
"server_version": "Version du serveur",
"set": "Définir",
"set_as_album_cover": "Définir comme couverture d'album",
@@ -1185,17 +1159,17 @@
"shared_with_partner": "Partagé avec {partner}",
"sharing": "Partage",
"sharing_enter_password": "Veuillez saisir le mot de passe pour visualiser cette page.",
- "sharing_sidebar_description": "Afficher un lien vers Partage dans la barre latérale",
+ "sharing_sidebar_description": "Afficher un lien vers Partager dans la barre latérale",
"shift_to_permanent_delete": "appuyez sur ⇧ pour supprimer définitivement le média",
"show_album_options": "Afficher les options de l'album",
"show_albums": "Montrer les albums",
"show_all_people": "Montrer toutes les personnes",
"show_and_hide_people": "Afficher / Masquer les personnes",
"show_file_location": "Afficher l'emplacement du fichier",
- "show_gallery": "Afficher la gallerie",
+ "show_gallery": "Afficher la galerie",
"show_hidden_people": "Afficher les personnes masquées",
- "show_in_timeline": "Afficher dans la chronologie",
- "show_in_timeline_setting_description": "Afficher les photos et vidéos de cet utilisateur dans votre timeline",
+ "show_in_timeline": "Afficher dans la vue chronologique",
+ "show_in_timeline_setting_description": "Afficher les photos et vidéos de cet utilisateur dans votre vue chronologique",
"show_keyboard_shortcuts": "Afficher les raccourcis clavier",
"show_metadata": "Afficher les métadonnées",
"show_or_hide_info": "Afficher ou masquer les informations",
@@ -1203,6 +1177,7 @@
"show_person_options": "Afficher les options de personnes",
"show_progress_bar": "Afficher la barre de progression",
"show_search_options": "Afficher les options de recherche",
+ "show_slideshow_transition": "Afficher la transition du diaporama",
"show_supporter_badge": "Badge de contributeur",
"show_supporter_badge_description": "Afficher le badge de contributeur",
"shuffle": "Mélanger",
@@ -1213,7 +1188,7 @@
"size": "Taille",
"skip_to_content": "Passer",
"skip_to_folders": "Passer vers les dossiers",
- "skip_to_tags": "Passer vers les tags",
+ "skip_to_tags": "Passer vers les étiquettes",
"slideshow": "Diaporama",
"slideshow_settings": "Paramètres du diaporama",
"sort_albums_by": "Trier les albums par...",
@@ -1225,7 +1200,7 @@
"sort_title": "Titre",
"source": "Source",
"stack": "Empiler",
- "stack_duplicates": "Empiler les duplications",
+ "stack_duplicates": "Empiler les doublons",
"stack_select_one_photo": "Sélectionnez une photo principale pour la pile",
"stack_selected_photos": "Empiler les photos sélectionnées",
"stacked_assets_count": "{count, plural, one {# média empilé} other {# médias empilés}}",
@@ -1243,51 +1218,54 @@
"storage_usage": "{used} sur {available} utilisé",
"submit": "Soumettre",
"suggestions": "Suggestions",
- "sunrise_on_the_beach": "Aurore sur la plage",
+ "sunrise_on_the_beach": "Lever de soleil sur la plage",
+ "support": "Support",
+ "support_and_feedback": "Support & Retours",
+ "support_third_party_description": "Votre installation d'Immich est packagée via une application tierce. Si vous rencontrez des anomalies, elles peuvent venir de ce packaging tiers, merci de créer les anomalies avec ces tiers en premier lieu en utilisant les liens ci-dessous.",
"swap_merge_direction": "Inverser la direction de fusion",
"sync": "Synchroniser",
- "tag": "Tag",
- "tag_assets": "Taguer les médias",
- "tag_created": "Tag créé : {tag}",
+ "tag": "Étiquette",
+ "tag_assets": "Étiqueter les médias",
+ "tag_created": "Étiquette créée : {tag}",
"tag_feature_description": "Parcourir les photos et vidéos groupées par thèmes logiques",
- "tag_not_found_question": "Vous ne trouvez pas un tag ? Créez-en un ici",
- "tag_updated": "Tag mis à jour : {tag}",
- "tagged_assets": "Tag ajouté à {count, plural, one {# média} other {# médias}}",
- "tags": "Tags",
+ "tag_not_found_question": "Vous ne trouvez pas une étiquette ? Créer une nouvelle étiquette.",
+ "tag_updated": "Étiquette mise à jour : {tag}",
+ "tagged_assets": "Étiquette ajoutée à {count, plural, one {# média} other {# médias}}",
+ "tags": "Étiquettes",
"template": "Modèle",
"theme": "Thème",
"theme_selection": "Sélection du thème",
"theme_selection_description": "Ajuster automatiquement le thème clair ou sombre via les préférences système",
"they_will_be_merged_together": "Elles seront fusionnées ensemble",
+ "third_party_resources": "Ressources tierces",
"time_based_memories": "Souvenirs basés sur la date",
+ "timeline": "Vue chronologique",
"timezone": "Fuseau horaire",
"to_archive": "Archiver",
"to_change_password": "Modifier le mot de passe",
"to_favorite": "Ajouter aux favoris",
"to_login": "Se connecter",
"to_parent": "Aller au dossier parent",
- "to_root": "Vers la racine",
"to_trash": "Corbeille",
"toggle_settings": "Inverser les paramètres",
"toggle_theme": "Inverser le thème sombre",
- "toggle_visibility": "Modifier la visibilité",
+ "total": "Total",
"total_usage": "Utilisation globale",
"trash": "Corbeille",
"trash_all": "Tout supprimer",
"trash_count": "Corbeille {count, number}",
- "trash_delete_asset": "Corbeille/Suppression d'un média",
+ "trash_delete_asset": "Mettre à la corbeille/Supprimer un média",
"trash_no_results_message": "Les photos et vidéos supprimées s'afficheront ici.",
"trashed_items_will_be_permanently_deleted_after": "Les éléments dans la corbeille seront supprimés définitivement après {days, plural, one {# jour} other {# jours}}.",
"type": "Type",
"unarchive": "Désarchiver",
- "unarchived": "Non archivé",
"unarchived_count": "{count, plural, one {# supprimé} other {# supprimés}} de l'archive",
"unfavorite": "Enlever des favoris",
"unhide_person": "Afficher la personne",
"unknown": "Inconnu",
- "unknown_album": "",
"unknown_year": "Année inconnue",
"unlimited": "Illimité",
+ "unlink_motion_video": "Détacher la photo animée",
"unlink_oauth": "Déconnecter OAuth",
"unlinked_oauth_account": "Compte OAuth non connecté",
"unnamed_album": "Album sans nom",
@@ -1299,30 +1277,30 @@
"unstack": "Désempiler",
"unstacked_assets_count": "{count, plural, one {# média dépilé} other {# médias dépilés}}",
"untracked_files": "Fichiers non suivis",
- "untracked_files_decription": "Ces fichiers ne sont pas suivis par l'application. Ils peuvent être le résultat de déplacements échoués, de téléchargements interrompus ou laissés pour compte à cause d'un bug",
+ "untracked_files_decription": "Ces fichiers ne sont pas suivis par l'application. Ils peuvent être le résultat de déplacements échoués, d'envois interrompus ou laissés pour compte à cause d'un bug",
"up_next": "Suite",
"updated_password": "Mot de passe mis à jour",
- "upload": "Téléverser",
- "upload_concurrency": "Envoi simultané",
- "upload_errors": "Le téléversement s'est achevé avec {count, plural, one {# erreur} other {# erreurs}}. Rafraîchir la page pour voir les nouveaux médias téléversés.",
+ "upload": "Envoyer",
+ "upload_concurrency": "Envois simultanés",
+ "upload_errors": "L'envoi s'est achevé avec {count, plural, one {# erreur} other {# erreurs}}. Rafraîchir la page pour voir les nouveaux médias envoyés.",
"upload_progress": "{remaining, number} restant(s) - {processed, number} traité(s)/{total, number}",
"upload_skipped_duplicates": "{count, plural, one {# doublon ignoré} other {# doublons ignorés}}",
"upload_status_duplicates": "Doublons",
"upload_status_errors": "Erreurs",
- "upload_status_uploaded": "Téléversé",
- "upload_success": "Téléversement réussi. Rafraîchir la page pour voir les nouveaux médias téléversés.",
+ "upload_status_uploaded": "Envoyé",
+ "upload_success": "Envoi réussi. Rafraîchir la page pour voir les nouveaux médias envoyés.",
"url": "URL",
"usage": "Utilisation",
"use_custom_date_range": "Utilisez une plage de date personnalisée à la place",
"user": "Utilisateur",
"user_id": "ID Utilisateur",
- "user_license_settings": "Licence",
- "user_license_settings_description": "Gérer votre licence",
"user_liked": "{user} a aimé {type, select, photo {cette photo} video {cette vidéo} asset {ce média} other {ceci}}",
"user_purchase_settings": "Achat",
"user_purchase_settings_description": "Gérer votre achat",
"user_role_set": "Définir {user} comme {role}",
"user_usage_detail": "Détail de l'utilisation des utilisateurs",
+ "user_usage_stats": "Statistiques d'utilisation du compte",
+ "user_usage_stats_description": "Voir les statistiques d'utilisation du compte",
"username": "Nom d'utilisateur",
"users": "Utilisateurs",
"utilities": "Utilitaires",
@@ -1330,7 +1308,9 @@
"variables": "Variables",
"version": "Version",
"version_announcement_closing": "Ton ami, Alex",
- "version_announcement_message": "Bonjour, il y a une nouvelle version de l'application. Prenez le temps de consulter les notes de version et assurez-vous que vos fichiers docker-compose.yml et .env sont à jour pour éviter toute erreur de configuration, surtout si vous utilisez WatchTower ou tout autre mécanisme qui gère la mise à jour de votre application automatiquement.",
+ "version_announcement_message": "Bonjour, il y a une nouvelle version de l'application. Prenez le temps de consulter les notes de version et assurez vous que votre installation est à jour pour éviter toute erreur de configuration, surtout si vous utilisez WatchTower ou tout autre mécanisme qui gère automatiquement la mise à jour de votre application.",
+ "version_history": "Historique de version",
+ "version_history_item": "Version {version} installée le {date}",
"video": "Vidéo",
"video_hover_setting": "Lire la miniature des vidéos au survol",
"video_hover_setting_description": "Jouer la prévisualisation vidéo au survol. Si désactivé, la lecture peut quand même être démarrée en survolant le bouton Play.",
@@ -1340,18 +1320,18 @@
"view_album": "Afficher l'album",
"view_all": "Voir tout",
"view_all_users": "Voir tous les utilisateurs",
- "view_in_timeline": "Voir dans la timeline",
+ "view_in_timeline": "Voir dans la vue chronologique",
"view_links": "Voir les liens",
+ "view_name": "Vue",
"view_next_asset": "Voir le média suivant",
"view_previous_asset": "Voir le média précédent",
"view_stack": "Afficher la pile",
- "viewer": "Vue",
"visibility_changed": "Visibilité changée pour {count, plural, one {# personne} other {# personnes}}",
"waiting": "En attente",
"warning": "Attention",
"week": "Semaine",
"welcome": "Bienvenue",
- "welcome_to_immich": "Bienvenue sur immich",
+ "welcome_to_immich": "Bienvenue sur Immich",
"year": "Année",
"years_ago": "Il y a {years, plural, one {# an} other {# ans}}",
"yes": "Oui",
diff --git a/web/src/lib/i18n/he.json b/i18n/he.json
similarity index 90%
rename from web/src/lib/i18n/he.json
rename to i18n/he.json
index aefa831897..71b6ab3c91 100644
--- a/web/src/lib/i18n/he.json
+++ b/i18n/he.json
@@ -23,16 +23,23 @@
"add_to": "הוסף ל..",
"add_to_album": "הוסף לאלבום",
"add_to_shared_album": "הוסף לאלבום משותף",
+ "add_url": "הוספת קישור",
"added_to_archive": "נוסף לארכיון",
"added_to_favorites": "נוסף למועדפים",
"added_to_favorites_count": "{count, number} נוספו למועדפים",
"admin": {
"add_exclusion_pattern_description": "הוסף דפוסי החרגה. נתמכת התאמת דפוסים באמצעות *, ** ו-?. כדי להתעלם מכל הקבצים בתיקיה כלשהי בשם \"Raw\", השתמש ב \"**/Raw/**\". כדי להתעלם מכל הקבצים המסתיימים ב \"tif.\", השתמש ב \"tif.*/**\". כדי להתעלם מנתיב מוחלט, השתמש ב \"**/נתיב/להתעלמות\".",
- "authentication_settings": "הגדרות אימות",
- "authentication_settings_description": "נהל סיסמה, OAuth, והגדרות אימות אחרות",
- "authentication_settings_disable_all": "האם את/ה בטוח/ה שברצונך להשבית את כל שיטות ההתחברות? כניסה למערכת תהיה מושבתת לחלוטין.",
+ "asset_offline_description": "נכס ספרייה חיצונית זה לא נמצא יותר בדיסק והועבר לאשפה. אם הקובץ הועבר מתוך הספרייה, בדוק את ציר הזמן שלך עבור הנכס המקביל החדש. כדי לשחזר נכס זה, נא לוודא ש-Immich יכול לגשת אל נתיב הקובץ למטה וסרוק מחדש את הספרייה.",
+ "authentication_settings": "הגדרות התחברות",
+ "authentication_settings_description": "נהל סיסמה, OAuth, והגדרות התחברות אחרות",
+ "authentication_settings_disable_all": "האם ברצונך להשבית את כל שיטות ההתחברות? כניסה למערכת תהיה מושבתת לחלוטין.",
"authentication_settings_reenable": "כדי לאפשר מחדש, השתמש בפקודת שרת.",
"background_task_job": "משימות רקע",
+ "backup_database": "גיבוי מסד נתונים",
+ "backup_database_enable_description": "אפשר גיבויי מסד נתונים",
+ "backup_keep_last_amount": "כמות של גיבויים קודמים שיש לשמור",
+ "backup_settings": "הגדרות גיבוי",
+ "backup_settings_description": "נהל הגדרות גיבוי מסד נתונים",
"check_all": "סמן הכל",
"cleared_jobs": "נוקו משימות עבור: {job}",
"config_set_by_file": "התצורה מוגדרת כעת על ידי קובץ תצורה",
@@ -41,35 +48,40 @@
"confirm_email_below": "כדי לאשר, יש להקליד \"{email}\" למטה",
"confirm_reprocess_all_faces": "האם את/ה בטוח/ה שברצונך לעבד מחדש את כל הפנים? זה גם ינקה אנשים בעלי שם.",
"confirm_user_password_reset": "האם את/ה בטוח/ה שברצונך לאפס את הסיסמה של המשתמש {user}?",
- "crontab_guru": "Crontab Guru",
+ "create_job": "צור עבודה",
+ "cron_expression": "ביטוי cron",
+ "cron_expression_description": "הגדר את מרווח הסריקה באמצעות תבנית ה- cron. למידע נוסף נא לפנות למשל אל Crontab Guru",
+ "cron_expression_presets": "הגדרות קבועות מראש של ביטוי cron",
"disable_login": "השבת כניסה",
- "disabled": "מושבת",
"duplicate_detection_job_description": "הפעל למידת מכונה על נכסים כדי לזהות תמונות דומות. נשען על חיפוש חכם",
"exclusion_pattern_description": "דפוסי החרגה מאפשרים לך להתעלם מקבצים ומתיקיות בעת סריקת הספרייה שלך. זה שימושי אם יש לך תיקיות המכילות קבצים שאינך רוצה לייבא, כגון קובצי RAW.",
"external_library_created_at": "ספרייה חיצונית (נוצרה ב-{date})",
"external_library_management": "ניהול ספרייה חיצונית",
"face_detection": "איתור פנים",
- "face_detection_description": "אתר את הפנים בנכסים באמצעות למידת מכונה. עבור סרטונים, רק התמונה הממוזערת נלקחת בחשבון. \"הכל\" מעבד (מחדש) את כל הנכסים. \"חסרים\" מוסיף לתור נכסים שלא עובדו עדיין. לאחר שאיתור הפנים הושלם, פנים שאותרו יעמדו בתור לזיהוי פנים המשייך אותן לאנשים קיימים או חדשים.",
- "facial_recognition_job_description": "קבץ פנים שאותרו לתוך אנשים. שלב זה מורץ לאחר השלמת איתור פנים. \"הכל\" מקבץ (מחדש) את כל הפרצופים. \"חסרים\" מוסיף לתור פנים שלא הוקצה להם אדם.",
+ "face_detection_description": "אתר את הפנים בנכסים באמצעות למידת מכונה. עבור סרטונים, רק התמונה הממוזערת נלקחת בחשבון. \"רענון\" מעבד (מחדש) את כל הנכסים. \"איפוס\" מנקה בנוסף את כל נתוני הפנים הנוכחיים. \"חסרים\" מוסיף לתור נכסים שלא עובדו עדיין. לאחר שאיתור הפנים הושלם, פנים שאותרו יעמדו בתור לזיהוי פנים המשייך אותן לאנשים קיימים או חדשים.",
+ "facial_recognition_job_description": "קבץ פנים שאותרו לתוך אנשים. שלב זה מורץ לאחר השלמת איתור פנים. \"איפוס\" מקבץ (מחדש) את כל הפרצופים. \"חסרים\" מוסיף לתור פנים שלא הוקצה להם אדם.",
"failed_job_command": "הפקודה {command} נכשלה עבור המשימה: {job}",
"force_delete_user_warning": "אזהרה: פעולה זו תסיר מיד את המשתמש ואת כל הנכסים. לא ניתן לבטל פעולה זו והקבצים לא ניתנים לשחזור.",
"forcing_refresh_library_files": "כפיית רענון של כל קבצי הספרייה",
+ "image_format": "פורמט",
"image_format_description": "WebP מפיק קבצים קטנים יותר מ JPEG, אך הוא איטי יותר לקידוד.",
"image_prefer_embedded_preview": "העדף תצוגה מקדימה מוטמעת",
"image_prefer_embedded_preview_setting_description": "השתמש בתצוגות מקדימות מוטמעות בתמונות RAW כקלט לעיבוד תמונה כאשר זמינות. זה יכול להפיק צבעים מדויקים יותר עבור תמונות מסוימות, אבל האיכות של התצוגה המקדימה היא תלוית מצלמה ולתמונה עשויים להיות יותר פגמי דחיסה.",
"image_prefer_wide_gamut": "העדף סולם צבעים רחב",
"image_prefer_wide_gamut_setting_description": "השתמש ב-Display P3 לתמונות ממוזערות. זה משמר טוב יותר את החיוניות של תמונות עם מרחבי צבע רחבים, אבל תמונות עשויות להופיע אחרת במכשירים ישנים עם גרסת דפדפן ישנה. תמונות sRGB נשמרות כ-sRGB כדי למנוע שינויי צבע.",
- "image_preview_format": "פורמט תצוגה מקדימה",
- "image_preview_resolution": "רזולוציית תצוגה מקדימה",
- "image_preview_resolution_description": "משמש בעת צפייה בתמונה בודדת ועבור למידת מכונה. רזולוציות גבוהות יותר יכולות לשמר פירוט רב יותר אך לוקחות יותר זמן לקידוד, יש להן גדלי קבצים גדולים יותר, ויכולות להפחית את תגובתיות היישום.",
+ "image_preview_description": "תמונה בגודל בינוני עם מטא-נתונים שהוסרו, משמשת בעת צפייה בנכס בודד ועבור למידת מכונה",
+ "image_preview_quality_description": "איכות תצוגה מקדימה בין 1-100. גבוה יותר הוא טוב יותר, אבל מייצר קבצים גדולים יותר ויכול להפחית את תגובתיות היישום. הגדרת ערך נמוך עשויה להשפיע על איכות תוצאות של למידת מכונה.",
+ "image_preview_title": "הגדרות תצוגה מקדימה",
"image_quality": "איכות",
- "image_quality_description": "איכות תמונה מ-1 עד 100. ערך גבוה יותר עדיף לאיכות אך מייצר קבצים גדולים יותר, אפשרות זו משפיעה על התצוגה המקדימה ותמונות ממוזערות.",
+ "image_resolution": "רזולוציה",
+ "image_resolution_description": "רזולוציות גבוהות יותר יכולות לשמר פרטים רבים יותר אך לוקחות זמן רב יותר לקידוד, יש להן גדלי קבצים גדולים יותר ויכולות להפחית את תגובתיות היישום.",
"image_settings": "הגדרות תמונה",
"image_settings_description": "נהל את האיכות והרזולוציה של תמונות שנוצרו",
- "image_thumbnail_format": "פורמט תמונה ממוזערת",
- "image_thumbnail_resolution": "רזולוציית תמונה ממוזערת",
- "image_thumbnail_resolution_description": "משמש בעת צפייה בקבוצות של תמונות (ציר זמן ראשי, תצוגת אלבום וכו'). רזולוציות גבוהות יותר יכולות לשמר פירוט רב יותר אך לוקחות יותר זמן לקידוד, יש להן גדלי קבצים גדולים יותר, ויכולות להפחית את תגובתיות היישום.",
+ "image_thumbnail_description": "תמונה ממוזערת קטנה עם מטא-נתונים שהוסרו, משמשת בעת צפייה בקבוצות של תמונות כמו ציר הזמן הראשי",
+ "image_thumbnail_quality_description": "איכות תמונה ממוזערת בין 1-100. גבוה יותר הוא טוב יותר, אבל מייצר קבצים גדולים יותר ויכול להפחית את תגובתיות היישום.",
+ "image_thumbnail_title": "הגדרות תמונה ממוזערת",
"job_concurrency": "בו-זמניות של {job}",
+ "job_created": "עבודה נוצרה",
"job_not_concurrency_safe": "משימה זו אינה בטוחה במקביל.",
"job_settings": "הגדרות משימה",
"job_settings_description": "ניהול בו-זמניות של משימה",
@@ -77,9 +89,6 @@
"jobs_delayed": "{jobCount, plural, other {# עוכבו}}",
"jobs_failed": "{jobCount, plural, other {# נכשלו}}",
"library_created": "נוצרה ספרייה: {library}",
- "library_cron_expression": "ביטוי cron",
- "library_cron_expression_description": "הגדר את מרווח הסריקה באמצעות פורמט ה-cron. למידע נוסף אנא פנה למשל אל Crontab Guru",
- "library_cron_expression_presets": "הגדרות ביטוי cron קבועות מראש",
"library_deleted": "ספרייה נמחקה",
"library_import_path_description": "ציין תיקיה לייבוא. תיקייה זו, כולל תיקיות משנה, תיסרק עבור תמונות וסרטונים.",
"library_scanning": "סריקה תקופתית",
@@ -122,7 +131,7 @@
"machine_learning_smart_search_description": "חפש תמונות באופן סמנטי באמצעות הטמעות של CLIP",
"machine_learning_smart_search_enabled": "אפשר חיפוש חכם",
"machine_learning_smart_search_enabled_description": "אם מושבת, תמונות לא יקודדו לחיפוש חכם.",
- "machine_learning_url_description": "כתובת האתר של שרת למידת המכונה",
+ "machine_learning_url_description": "כתובת האתר של שרת למידת המכונה. אם ניתן יותר מכתובת אחת, כל שרת ינסה בתורו עד אשר יענה בחיוב, בסדר התחלתי.",
"manage_concurrency": "נהל בו-זמניות",
"manage_log_settings": "נהל הגדרות רישום ביומן",
"map_dark_style": "עיצוב כהה",
@@ -139,7 +148,11 @@
"map_settings_description": "נהל הגדרות מפה",
"map_style_description": "כתובת אתר לערכת נושא של מפה style.json",
"metadata_extraction_job": "חלץ מטא-נתונים",
- "metadata_extraction_job_description": "חלץ מידע מטא-נתונים מכל נכס, כגון GPS ורזולוציה",
+ "metadata_extraction_job_description": "חלץ מידע מטא-נתונים מכל נכס, כגון GPS, פנים ורזולוציה",
+ "metadata_faces_import_setting": "אפשר יבוא פנים",
+ "metadata_faces_import_setting_description": "יבא פנים מנתוני EXIF של תמונה ומקבצים נלווים",
+ "metadata_settings": "הגדרות מטא-נתונים",
+ "metadata_settings_description": "נהל הגדרות מטא-נתונים",
"migration_job": "העברה",
"migration_job_description": "העבר תמונות ממוזערות של נכסים ופנים למבנה התיקיות העדכני ביותר",
"no_paths_added": "לא נוספו נתיבים",
@@ -148,7 +161,7 @@
"note_cannot_be_changed_later": "הערה: אי אפשר לשנות זאת מאוחר יותר!",
"note_unlimited_quota": "הערה: הזן 0 עבור מכסת אחסון בלתי מוגבלת",
"notification_email_from_address": "מכתובת",
- "notification_email_from_address_description": "כתובת דוא\"ל של השולח, לדוגמה: \"Immich שרת תמונות {label} היא תווית האחסון של המשתמש",
"system_settings": "הגדרות מערכת",
+ "tag_cleanup_job": "ניקוי תגים",
+ "template_email_available_tags": "ניתן להשתמש במשתנים הבאים בתבנית שלך: {tags}",
+ "template_email_if_empty": "אם התבנית ריקה, ייעשה שימוש בדוא\"ל ברירת המחדל.",
+ "template_email_invite_album": "תבנית הזמנת אלבום",
+ "template_email_preview": "תצוגה מקדימה",
+ "template_email_settings": "תבניות דוא\"ל",
+ "template_email_settings_description": "נהל תבניות התראת דוא\"ל מותאמות אישית",
+ "template_email_update_album": "עדכון תבנית אלבום",
+ "template_email_welcome": "תבנית דוא\"ל ברוכים הבאים",
+ "template_settings": "תבניות התראה",
+ "template_settings_description": "נהל תבניות מותאמות אישית עבור התראות.",
"theme_custom_css_settings": "CSS בהתאמה אישית",
"theme_custom_css_settings_description": "גיליונות סגנון מדורגים (CSS) מאפשרים התאמה אישית של העיצוב של Immich.",
"theme_settings": "הגדרות ערכת נושא",
@@ -241,7 +267,6 @@
"these_files_matched_by_checksum": "קבצים אלה תואמים לפי סיכומי הביקורת שלהם",
"thumbnail_generation_job": "צור תמונות ממוזערות",
"thumbnail_generation_job_description": "יוצר תמונות ממוזערות גדולות, קטנות ומטושטשות עבור כל נכס, כמו גם תמונות ממוזערות עבור כל אדם",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "API האצה",
"transcoding_acceleration_api_description": "ה-API שייצור אינטראקציה עם המכשיר שלך כדי להאיץ את המרת הקידוד. הגדרה זו היא 'המאמץ הטוב ביותר': היא תחזור לקידוד תוכנה במקרה של כשל. VP9 עשוי לעבוד או לא, תלוי בחומרה שלך.",
"transcoding_acceleration_nvenc": "NVENC (דורש כרטיס מסך של NVIDIA)",
@@ -262,12 +287,12 @@
"transcoding_constant_quality_mode": "מצב איכות קבועה",
"transcoding_constant_quality_mode_description": "ICQ טוב יותר מ-CQP, אך חלק מהתקני האצת החומרה אינם תומכים במצב זה. הגדרת אפשרות זו תעדיף את המצב שצוין בעת שימוש בקידוד מבוסס איכות. בהתעלמות מצד NVENC מכיוון שהוא אינו תומך ב-ICQ.",
"transcoding_constant_rate_factor": "גורם קצב קבוע (-crf)",
- "transcoding_constant_rate_factor_description": "רמת איכות וידאו. ערכים אופייניים הם הערך 23 עבור H.264, הערך 28 עבור HEVC, הערך 31 עבור VP9, והערך 35 עבור AV1. נמוך יותר טוב יותר, אבל מייצר קבצים גדולים יותר.",
+ "transcoding_constant_rate_factor_description": "רמת איכות וידאו. ערכים אופייניים הם הערך 23 עבור H.264, הערך 28 עבור HEVC, הערך 31 עבור VP9, והערך 35 עבור AV1. נמוך יותר הוא טוב יותר, אבל מייצר קבצים גדולים יותר.",
"transcoding_disabled_description": "אין להמיר את הקידוד של שום סרטון, עלול לגרום לכך שהניגון לא יפעל במכשירים מסוימים",
"transcoding_hardware_acceleration": "האצת חומרה",
"transcoding_hardware_acceleration_description": "ניסיוני; המרה הרבה יותר מהירה, אבל תהיה באיכות נמוכה יותר באותו קצב סיביות",
"transcoding_hardware_decoding": "פענוח חומרה",
- "transcoding_hardware_decoding_setting_description": "חל רק על NVENC, QSV ו-RKMPP. מאפשר האצה מקצה לקצה במקום רק להאיץ קידוד. ייתכן שלא יפעל על כל הסרטונים.",
+ "transcoding_hardware_decoding_setting_description": "מאפשר האצה מקצה לקצה במקום רק האצת קידוד. ייתכן שלא יפעל על כל הסרטונים.",
"transcoding_hevc_codec": "קידוד HEVC",
"transcoding_max_b_frames": "B-פריימים מרביים",
"transcoding_max_b_frames_description": "ערכים גבוהים יותר משפרים את יעילות הדחיסה, אך מאטים את הקידוד. ייתכן שלא יהיה תואם עם האצת חומרה במכשירים ישנים יותר. 0 משבית את B-פריימים, בעוד ש1- מגדיר את הערך זה באופן אוטומטי.",
@@ -293,8 +318,6 @@
"transcoding_threads_description": "ערכים גבוהים יותר מובילים לקידוד מהיר יותר, אך משאירים פחות מקום לשרת לעבד משימות אחרות בעודו פעיל. ערך זה לא אמור להיות יותר ממספר ליבות המעבד. ממקסם את הניצול אם מוגדר ל-0.",
"transcoding_tone_mapping": "מיפוי גוונים",
"transcoding_tone_mapping_description": "מנסה לשמר את המראה של סרטוני HDR כשהם מומרים ל-SDR. כל אלגוריתם עושה פשרות שונות עבור צבע, פירוט ובהירות. Hable משמר פרטים, Mobius משמר צבע, ו-Reinhard משמר בהירות.",
- "transcoding_tone_mapping_npl": "בהירות שיא נומינלית למיפוי גוונים",
- "transcoding_tone_mapping_npl_description": "הצבעים יותאמו כך שיראו נורמליים לתצוגה של בהירות זו. באופן מנוגד לאינטואיציה, ערכים נמוכים מגבירים את בהירות הווידאו ולהפך מכיוון שזה מפצה על בהירות התצוגה. 0 מגדיר ערך זה באופן אוטומטי.",
"transcoding_transcode_policy": "מדיניות המרת קידוד",
"transcoding_transcode_policy_description": "מדיניות לגבי מתי יש להמיר קידוד של סרטון. תמיד יומר הקידוד של סרטוני HDR (למעט אם המרת קידוד מושבתת).",
"transcoding_two_pass_encoding": "קידוד בשני מעברים",
@@ -308,6 +331,7 @@
"trash_settings_description": "נהל את הגדרות האשפה",
"untracked_files": "קבצים ללא מעקב",
"untracked_files_description": "קבצים אלה אינם נמצאים במעקב של היישום. הם יכולים להיות תוצאות של העברות כושלות, העלאות שנקטעו, או שנותרו מאחור בגלל שיבוש בתוכנה",
+ "user_cleanup_job": "ניקוי משתמשים",
"user_delete_delay": "החשבון והנכסים של {user} יתוזמנו למחיקה לצמיתות בעוד {delay, plural, one {יום #} other {# ימים}}.",
"user_delete_delay_settings": "עיכוב מחיקה",
"user_delete_delay_settings_description": "מספר הימים לאחר ההסרה עד מחיקה לצמיתות של החשבון והנכסים של המשתמש. משימת מחיקת המשתמש פועלת בחצות כדי לבדוק אם יש משתמשים שמוכנים למחיקה. שינויים בהגדרה זו יוערכו בביצוע הבא.",
@@ -374,7 +398,6 @@
"archive_or_unarchive_photo": "העבר תמונה לארכיון או הוצא אותה משם",
"archive_size": "גודל הארכיון",
"archive_size_description": "הגדר את גודל הארכיון להורדות (ב-GiB)",
- "archived": "בארכיון",
"archived_count": "{count, plural, other {# הועברו לארכיון}}",
"are_these_the_same_person": "האם אלה אותו האדם?",
"are_you_sure_to_do_this": "האם את/ה בטוח/ה שברצונך לעשות את זה?",
@@ -385,8 +408,9 @@
"asset_has_unassigned_faces": "לנכס יש פנים שלא הוקצו",
"asset_hashing": "מגבב...",
"asset_offline": "נכס לא מקוון",
- "asset_offline_description": "הנכס הזה אינו מקוון. Immich לא יכול לגשת למיקום הקובץ שלו. נא לוודא שהנכס זמין ואז סרוק מחדש את הספרייה.",
+ "asset_offline_description": "הנכס החיצוני הזה כבר לא נמצא בדיסק. אנא צור קשר עם מנהל Immich שלך לקבלת עזרה.",
"asset_skipped": "דילג",
+ "asset_skipped_in_trash": "באשפה",
"asset_uploaded": "הועלה",
"asset_uploading": "מעלה...",
"assets": "נכסים",
@@ -394,11 +418,10 @@
"assets_added_to_album_count": "{count, plural, one {נוסף נכס #} other {נוספו # נכסים}} לאלבום",
"assets_added_to_name_count": "{count, plural, one {נכס # נוסף} other {# נכסים נוספו}} אל {hasName, select, true {{name}} other {אלבום חדש}}",
"assets_count": "{count, plural, one {נכס #} other {# נכסים}}",
- "assets_moved_to_trash": "Moved {count, plural, one {# asset} other {# assets}} to trash",
"assets_moved_to_trash_count": "{count, plural, one {נכס # הועבר} other {# נכסים הועברו}} לאשפה",
"assets_permanently_deleted_count": "{count, plural, one {נכס # נמחק} other {# נכסים נמחקו}} לצמיתות",
"assets_removed_count": "{count, plural, one {נכס # הוסר} other {# נכסים הוסרו}}",
- "assets_restore_confirmation": "האם את/ה בטוח/ה שברצונך לשחזר את כל הנכסים שבאשפה? את/ה לא יכול/ה לבטל את הפעולה הזו!",
+ "assets_restore_confirmation": "האם את/ה בטוח/ה שברצונך לשחזר את כל הנכסים שבאשפה? את/ה לא יכול/ה לבטל את הפעולה הזו! שים לב שלא ניתן לשחזר נכסים לא מקוונים בדרך זו.",
"assets_restored_count": "{count, plural, one {נכס # שוחזר} other {# נכסים שוחזרו}}",
"assets_trashed_count": "{count, plural, one {נכס # הושלך} other {# נכסים הושלכו}} לאשפה",
"assets_were_part_of_album_count": "{count, plural, one {נכס היה} other {נכסים היו}} כבר חלק מהאלבום",
@@ -409,6 +432,7 @@
"birthdate_saved": "תאריך לידה נשמר בהצלחה",
"birthdate_set_description": "תאריך לידה משמש לחישוב הגיל של האדם הזה בזמן תצלום.",
"blurred_background": "רקע מטושטש",
+ "bugs_and_feature_requests": "באגים & בקשות לתכונות",
"build": "Build",
"build_image": "Build Image",
"bulk_delete_duplicates_confirmation": "האם את/ה בטוח/ה שברצונך למחוק בכמות גדולה {count, plural, one {נכס # כפול} other {# נכסים כפולים}}? זה ישמור על הנכס הכי גדול של כל קבוצה וימחק לצמיתות את כל שאר הכפילויות. את/ה לא יכול/ה לבטל את הפעולה הזו!",
@@ -423,10 +447,6 @@
"cannot_merge_people": "לא ניתן למזג אנשים",
"cannot_undo_this_action": "את/ה לא יכול/ה לבטל את הפעולה הזו!",
"cannot_update_the_description": "לא ניתן לעדכן את התיאור",
- "cant_apply_changes": "לא ניתן להחיל שינויים",
- "cant_get_faces": "לא ניתן לאחזר פרצופים",
- "cant_search_people": "לא ניתן לחפש אנשים",
- "cant_search_places": "לא ניתן לחפש מקומות",
"change_date": "שנה תאריך",
"change_expiration_time": "שנה את זמן התפוגה",
"change_location": "שנה מיקום",
@@ -458,6 +478,7 @@
"confirm": "אישור",
"confirm_admin_password": "אשר סיסמת מנהל",
"confirm_delete_shared_link": "האם את/ה בטוח/ה שברצונך למחוק את הקישור המשותף הזה?",
+ "confirm_keep_this_delete_others": "כל שאר הנכסים בערימה יימחקו למעט נכס זה. האם את/ה בטוח/ה שברצונך להמשיך?",
"confirm_password": "אשר סיסמה",
"contain": "מכיל",
"context": "הקשר",
@@ -507,16 +528,19 @@
"delete_key": "מחק מפתח",
"delete_library": "מחק ספרייה",
"delete_link": "מחק קישור",
+ "delete_others": "מחק אחרים",
"delete_shared_link": "מחק קישור משותף",
"delete_tag": "מחק תג",
"delete_tag_confirmation_prompt": "האם את/ה בטוח/ה שברצונך למחוק תג {tagName}?",
"delete_user": "מחק משתמש",
"deleted_shared_link": "קישור משותף נמחק",
+ "deletes_missing_assets": "מוחק נכסים שחסרים בדיסק",
"description": "תיאור",
"details": "פרטים",
"direction": "כיוון",
"disabled": "מושבת",
"disallow_edits": "אל תאפשר עריכות",
+ "discord": "דיסקורד",
"discover": "גלה",
"dismiss_all_errors": "התעלם מכל השגיאות",
"dismiss_error": "התעלם מהשגיאה",
@@ -525,6 +549,7 @@
"display_original_photos": "הצג תמונות מקוריות",
"display_original_photos_setting_description": "העדף להציג את התמונה המקורית בעת צפיית נכס במקום תמונות ממוזערות כאשר הנכס המקורי תומך בתצוגה בדפדפן. זה עלול לגרום לתמונות להיות מוצגות באיטיות.",
"do_not_show_again": "אל תציג את ההודעה הזאת שוב",
+ "documentation": "תיעוד",
"done": "סיום",
"download": "הורדה",
"download_include_embedded_motion_videos": "סרטונים מוטמעים",
@@ -537,13 +562,6 @@
"duplicates": "כפילויות",
"duplicates_description": "הפרד כל קבוצה על ידי ציון אילו, אם בכלל, הן כפילויות",
"duration": "משך זמן",
- "durations": {
- "days": "{days, plural, one {day} other {{days, number} days}}",
- "hours": "{hours, plural, one {hour} other {{hours, number} hours}}",
- "minutes": "{minutes, plural, one {minute} other {{minutes, number} minutes}}",
- "months": "{months, plural, one {month} other {{months, number} months}}",
- "years": "{years, plural, one {year} other {{years, number} years}}"
- },
"edit": "ערוך",
"edit_album": "ערוך אלבום",
"edit_avatar": "ערוך תמונת פרופיל",
@@ -568,8 +586,6 @@
"editor_crop_tool_h2_aspect_ratios": "יחסי רוחב גובה",
"editor_crop_tool_h2_rotation": "סיבוב",
"email": "דוא\"ל",
- "empty": "",
- "empty_album": "אלבום ריק",
"empty_trash": "רוקן אשפה",
"empty_trash_confirmation": "האם את/ה בטוח/ה שברצונך לרוקן את האשפה? זה יסיר לצמיתות את כל הנכסים באשפה מImmich.\nאת/ה לא יכול/ה לבטל פעולה זו!",
"enable": "אפשר",
@@ -603,6 +619,7 @@
"failed_to_create_shared_link": "יצירת קישור משותף נכשלה",
"failed_to_edit_shared_link": "עריכת קישור משותף נכשלה",
"failed_to_get_people": "קבלת אנשים נכשלה",
+ "failed_to_keep_this_delete_others": "נכשל לשמור את הנכס הזה ולמחוק את הנכסים האחרים",
"failed_to_load_asset": "טעינת נכס נכשלה",
"failed_to_load_assets": "טעינת נכסים נכשלה",
"failed_to_load_people": "נכשל באחזור אנשים",
@@ -630,8 +647,6 @@
"unable_to_change_location": "לא ניתן לשנות מיקום",
"unable_to_change_password": "לא ניתן לשנות סיסמה",
"unable_to_change_visibility": "לא ניתן לשנות את הנראות עבור {count, plural, one {אדם #} other {# אנשים}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "לא ניתן להשלים התחברות OAuth",
"unable_to_connect": "לא ניתן להתחבר",
"unable_to_connect_to_server": "לא ניתן להתחבר לשרת",
@@ -656,6 +671,7 @@
"unable_to_get_comments_number": "לא ניתן להשיג את מספר התגובות",
"unable_to_get_shared_link": "קבלת קישור משותף נכשלה",
"unable_to_hide_person": "לא ניתן להסתיר אדם",
+ "unable_to_link_motion_video": "לא ניתן לקשר סרטון תנועה",
"unable_to_link_oauth_account": "לא ניתן לקשר חשבון OAuth",
"unable_to_load_album": "לא ניתן לטעון אלבום",
"unable_to_load_asset_activity": "לא ניתן לטעון את פעילות הנכס",
@@ -671,12 +687,10 @@
"unable_to_remove_album_users": "לא ניתן להסיר משתמשים מהאלבום",
"unable_to_remove_api_key": "לא ניתן להסיר מפתח API",
"unable_to_remove_assets_from_shared_link": "לא ניתן להסיר נכסים מקישור משותף",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "לא ניתן להסיר קבצים לא מקוונים",
"unable_to_remove_library": "לא ניתן להסיר ספרייה",
- "unable_to_remove_offline_files": "לא ניתן להסיר קבצים לא מקוונים",
"unable_to_remove_partner": "לא ניתן להסיר שותף",
"unable_to_remove_reaction": "לא ניתן להסיר תגובה",
- "unable_to_remove_user": "",
"unable_to_repair_items": "לא ניתן לתקן פריטים",
"unable_to_reset_password": "לא ניתן לאפס סיסמה",
"unable_to_resolve_duplicate": "לא ניתן לפתור כפילות",
@@ -696,6 +710,7 @@
"unable_to_submit_job": "לא ניתן לשלוח משימה",
"unable_to_trash_asset": "לא ניתן להעביר נכס לאשפה",
"unable_to_unlink_account": "לא ניתן לבטל קישור חשבון",
+ "unable_to_unlink_motion_video": "לא ניתן לבטל קישור סרטון תנועה",
"unable_to_update_album_cover": "לא ניתן לעדכן עטיפת אלבום",
"unable_to_update_album_info": "לא ניתן לעדכן פרטי אלבום",
"unable_to_update_library": "לא ניתן לעדכן ספרייה",
@@ -705,10 +720,6 @@
"unable_to_update_user": "לא ניתן לעדכן משתמש",
"unable_to_upload_file": "לא ניתן להעלות קובץ"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Exif",
"exit_slideshow": "צא ממצגת שקופיות",
"expand_all": "הרחב הכל",
@@ -723,33 +734,28 @@
"external": "חיצוני",
"external_libraries": "ספריות חיצוניות",
"face_unassigned": "לא מוקצה",
- "failed_to_get_people": "נכשל באחזור אנשים",
+ "failed_to_load_assets": "טעינת נכסים נכשלה",
"favorite": "מועדף",
"favorite_or_unfavorite_photo": "הוסף או הסר תמונה מהמועדפים",
"favorites": "מועדפים",
- "feature": "",
"feature_photo_updated": "תמונה מייצגת עודכנה",
- "featurecollection": "",
"features": "תכונות",
"features_setting_description": "נהל את תכונות היישום",
"file_name": "שם הקובץ",
"file_name_or_extension": "שם קובץ או סיומת",
"filename": "שם קובץ",
- "files": "",
"filetype": "סוג קובץ",
"filter_people": "סנן אנשים",
"find_them_fast": "מצא אותם מהר לפי שם עם חיפוש",
"fix_incorrect_match": "תקן התאמה שגויה",
"folders": "תיקיות",
"folders_feature_description": "עיון בתצוגת התיקייה עבור התמונות והסרטונים שבמערכת הקבצים",
- "force_re-scan_library_files": "כפה סריקה מחדש של כל קבצי הספרייה",
"forward": "קדימה",
"general": "כללי",
"get_help": "קבל עזרה",
"getting_started": "תחילת העבודה",
"go_back": "חזור",
"go_to_search": "עבור לחיפוש",
- "go_to_share_page": "עבור לדף השיתוף",
"group_albums_by": "קבץ אלבומים לפי..",
"group_no": "אין קיבוץ",
"group_owner": "קבץ לפי בעלים",
@@ -775,10 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {סרטון שצולם} other {תמונה שצולמה}} ב-{city}, {country} עם {person1} ו-{person2} ב-{date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {סרטון שצולם} other {תמונה שצולמה}} ב-{city}, {country} עם {person1}, {person2}, ו-{person3} ב-{date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {סרטון שצולם} other {תמונה שצולמה}} ב-{city}, {country} עם {person1}, {person2}, ו-{additionalCount, number} אחרים ב-{date}",
- "image_alt_text_people": "{count, plural, =1 {עם {person1}} =2 {עם {person1} ו{person2}} =3 {עם {person1}, {person2}, ו{person3}} other {עם {person1}, {person2}, ו{others, number} אחרים}}",
- "image_alt_text_place": "ב{city}, {country}",
- "image_taken": "{isVideo, select, true {סרטון שצולם} other {תמונה שצולמה}}",
- "img": "",
"immich_logo": "הלוגו של Immich",
"immich_web_interface": "ממשק האינטרנט של Immich",
"import_from_json": "ייבוא מ-JSON",
@@ -799,10 +801,11 @@
"invite_people": "הזמן אנשים",
"invite_to_album": "הזמן לאלבום",
"items_count": "{count, plural, one {פריט #} other {# פריטים}}",
- "job_settings_description": "",
"jobs": "משימות",
"keep": "שמור",
"keep_all": "שמור הכל",
+ "keep_this_delete_others": "שמור על זה, מחק אחרים",
+ "kept_this_deleted_others": "נכס זה נשמר ונמחקו {count, plural, one {נכס #} other {# נכסים}}",
"keyboard_shortcuts": "קיצורי מקלדת",
"language": "שפה",
"language_setting_description": "בחר/י את השפה המועדפת עליך",
@@ -814,33 +817,9 @@
"level": "רמה",
"library": "ספרייה",
"library_options": "אפשרויות ספרייה",
- "license_account_info": "החשבון שלך מורשה",
- "license_activated_subtitle": "תודה לך על התמיכה ב-Immich ובתוכנות קוד פתוח",
- "license_activated_title": "הרישיון שלך הופעל בהצלחה",
- "license_button_activate": "הפעל",
- "license_button_buy": "קנה",
- "license_button_buy_license": "קנה רישיון",
- "license_button_select": "בחר",
- "license_failed_activation": "הפעלת הרישיון נכשלה. נא לבדוק את הדוא\"ל שלך כדי למצוא את מפתח הרישיון הנכון!",
- "license_individual_description_1": "רישיון 1 למשתמש בכל שרת",
- "license_individual_title": "רישיון אישי",
- "license_info_licensed": "מורשה",
- "license_info_unlicensed": "ללא רשיון",
- "license_input_suggestion": "יש לך רישיון? הזן את המפתח למטה",
- "license_license_subtitle": "רכוש רישיון כדי לתמוך ב Immich",
- "license_license_title": "רישיון",
- "license_lifetime_description": "רישיון לכל החיים",
- "license_per_server": "עבור שרת",
- "license_per_user": "עבור משתמש",
- "license_server_description_1": "רישיון 1 עבור שרת",
- "license_server_description_2": "רישיון לכל המשתמשים בשרת",
- "license_server_title": "רישיון שרת",
- "license_trial_info_1": "אתה מפעיל גרסה ללא רישיון של Immich",
- "license_trial_info_2": "אתה משתמש ב Immich קרוב ל",
- "license_trial_info_3": "{accountAge, plural, one {יום #} other {# ימים}}",
- "license_trial_info_4": "אנא שקול לרכוש רישיון כדי לתמוך בפיתוח המתמשך של השירות",
"light": "בהיר",
"like_deleted": "לייק נמחק",
+ "link_motion_video": "קשר סרטון תנועה",
"link_options": "אפשרויות קישור",
"link_to_oauth": "קישור ל-OAuth",
"linked_oauth_account": "חשבון OAuth מקושר",
@@ -859,6 +838,7 @@
"look": "מראה",
"loop_videos": "הפעלה חוזרת של סרטונים",
"loop_videos_description": "אפשר הפעלה חוזרת אוטומטית של סרטון במציג הפרטים.",
+ "main_branch_warning": "את/ה משתמש/ת בגרסת פיתוח; אנחנו ממליצים בחום להשתמש בגרסה יציבה!",
"make": "תוצרת",
"manage_shared_links": "נהל קישורים משותפים",
"manage_sharing_with_partners": "נהל שיתוף עם שותפים",
@@ -928,6 +908,7 @@
"notifications": "התראות",
"notifications_setting_description": "נהל התראות",
"oauth": "OAuth",
+ "official_immich_resources": "משאבי Immich רשמיים",
"offline": "לא מקוון",
"offline_paths": "נתיבים לא מקוונים",
"offline_paths_description": "תוצאות אלו עשויות להיות עקב מחיקה ידנית של קבצים שאינם חלק מספרייה חיצונית.",
@@ -940,7 +921,6 @@
"onboarding_welcome_user": "ברוכ/ה הבא/ה, {user}",
"online": "מקוון",
"only_favorites": "רק מועדפים",
- "only_refreshes_modified_files": "מרענן רק קבצים שהשתנו",
"open_in_map_view": "פתח בתצוגת מפה",
"open_in_openstreetmap": "פתח ב-OpenStreetMap",
"open_the_search_filters": "פתח את מסנני החיפוש",
@@ -978,14 +958,12 @@
"people_edits_count": "{count, plural, one {אדם # נערך} other {# אנשים נערכו}}",
"people_feature_description": "עיון בתמונות וסרטונים שקובצו על ידי אנשים",
"people_sidebar_description": "הצג קישור אל אנשים בסרגל הצד",
- "perform_library_tasks": "",
"permanent_deletion_warning": "אזהרת מחיקה לצמיתות",
"permanent_deletion_warning_setting_description": "הצג אזהרה בעת מחיקת נכסים לצמיתות",
"permanently_delete": "מחק לצמיתות",
"permanently_delete_assets_count": "מחק לצמיתות {count, plural, one {נכס} other {נכסים}}",
"permanently_delete_assets_prompt": "האם את/ה בטוח/ה שברצונך למחוק לצמיתות {count, plural, one {נכס זה?} other {# נכסים אלה?}}זה גם יסיר {count, plural, one {אותו מאלבומו} other {אותם מאלבומם}}.",
"permanently_deleted_asset": "נכס נמחק לצמיתות",
- "permanently_deleted_assets": "Permanently deleted {count, plural, one {# asset} other {# assets}}",
"permanently_deleted_assets_count": "{count, plural, one {נכס # נמחק} other {# נכסים נמחקו}} לצמיתות",
"person": "אדם",
"person_hidden": "{name}{hidden, select, true { (מוסתר)} other {}}",
@@ -1001,7 +979,6 @@
"play_memories": "נגן זכרונות",
"play_motion_photo": "הפעל תמונה עם תנועה",
"play_or_pause_video": "הפעל או השהה סרטון",
- "point": "",
"port": "יציאה",
"preset": "הגדרות קבועות מראש",
"preview": "תצוגה מקדימה",
@@ -1046,12 +1023,10 @@
"purchase_server_description_2": "מעמד תומך",
"purchase_server_title": "שרת",
"purchase_settings_server_activated": "מפתח המוצר של השרת מנוהל על ידי מנהל המערכת",
- "range": "",
"rating": "דירוג כוכב",
"rating_clear": "נקה דירוג",
"rating_count": "{count, plural, one {כוכב #} other {# כוכבים}}",
"rating_description": "הצג את דירוג ה-EXIF בלוח המידע",
- "raw": "",
"reaction_options": "אפשרויות הגבה",
"read_changelog": "קרא את יומן השינויים",
"reassign": "הקצה מחדש",
@@ -1059,14 +1034,17 @@
"reassigned_assets_to_new_person": "{count, plural, one {נכס # הוקצה} other {# נכסים הוקצו}} מחדש לאדם חדש",
"reassing_hint": "הקצה נכסים שנבחרו לאדם קיים",
"recent": "חדש",
+ "recent-albums": "אלבומים אחרונים",
"recent_searches": "חיפושים אחרונים",
"refresh": "רענן",
"refresh_encoded_videos": "רענן סרטונים מקודדים",
+ "refresh_faces": "רענן פנים",
"refresh_metadata": "רענן מטא-נתונים",
"refresh_thumbnails": "רענן תמונות ממוזערות",
"refreshed": "רוענן",
- "refreshes_every_file": "מרענן כל קובץ",
+ "refreshes_every_file": "קורא מחדש את כל הקבצים הקיימים והחדשים",
"refreshing_encoded_video": "מרענן סרטון מקודד",
+ "refreshing_faces": "מרענן פרצופים",
"refreshing_metadata": "מרענן מטא-נתונים",
"regenerating_thumbnails": "מחדש תמונות ממוזערות",
"remove": "הסר",
@@ -1074,10 +1052,11 @@
"remove_assets_shared_link_confirmation": "האם את/ה בטוח/ה שברצונך להסיר {count, plural, one {נכס #} other {# נכסים}} מהקישור המשותף הזה?",
"remove_assets_title": "הסר נכסים?",
"remove_custom_date_range": "הסר טווח תאריכים מותאם",
+ "remove_deleted_assets": "הסר קבצים לא מקוונים",
"remove_from_album": "הסר מאלבום",
"remove_from_favorites": "הסר מהמועדפים",
"remove_from_shared_link": "הסר מקישור משותף",
- "remove_offline_files": "הסר קבצים לא מקוונים",
+ "remove_url": "הסר URL",
"remove_user": "הסר משתמש",
"removed_api_key": "מפתח API הוסר: {name}",
"removed_from_archive": "הוסר מארכיון",
@@ -1094,7 +1073,6 @@
"reset": "איפוס",
"reset_password": "איפוס סיסמה",
"reset_people_visibility": "אפס את נראות האנשים",
- "reset_settings_to_default": "",
"reset_to_default": "אפס לברירת מחדל",
"resolve_duplicates": "פתור כפילויות",
"resolved_all_duplicates": "כל הכפילויות נפתרו",
@@ -1114,8 +1092,7 @@
"saved_settings": "הגדרות שמורות",
"say_something": "תגיד/י משהו",
"scan_all_libraries": "סרוק את כל הספריות",
- "scan_all_library_files": "סרוק מחדש את כל קבצי הספרייה",
- "scan_new_library_files": "סרוק קבצי ספרייה חדשים",
+ "scan_library": "סרוק",
"scan_settings": "הגדרות סריקה",
"scanning_for_album": "סורק אחר אלבום...",
"search": "חפש",
@@ -1130,8 +1107,10 @@
"search_for_existing_person": "חפש אדם קיים",
"search_no_people": "אין אנשים",
"search_no_people_named": "אין אנשים בשם \"{name}\"",
+ "search_options": "אפשרויות חיפוש",
"search_people": "חפש אנשים",
"search_places": "חפש מקומות",
+ "search_settings": "הגדרות חיפוש",
"search_state": "חפש מדינה...",
"search_tags": "חיפוש תגים...",
"search_timezone": "חפש אזור זמן...",
@@ -1156,7 +1135,6 @@
"selected_count": "{count, plural, other {# נבחרו}}",
"send_message": "שלח הודעה",
"send_welcome_email": "שלח דוא\"ל קבלת פנים",
- "server": "שרת",
"server_offline": "שרת לא מקוון",
"server_online": "שרת מקוון",
"server_stats": "סטטיסטיקות שרת",
@@ -1199,6 +1177,7 @@
"show_person_options": "הצג אפשרויות אדם",
"show_progress_bar": "הצג סרגל התקדמות",
"show_search_options": "הצג אפשרויות חיפוש",
+ "show_slideshow_transition": "הצג מעבר מצגת",
"show_supporter_badge": "תג תומך",
"show_supporter_badge_description": "הצג תג תומך",
"shuffle": "ערבוב",
@@ -1208,6 +1187,8 @@
"sign_up": "הרשמה",
"size": "גודל",
"skip_to_content": "דלג לתוכן",
+ "skip_to_folders": "דלג לתיקיות",
+ "skip_to_tags": "דלג לתגים",
"slideshow": "מצגת שקופיות",
"slideshow_settings": "הגדרות מצגת שקופיות",
"sort_albums_by": "מיין אלבומים לפי...",
@@ -1238,13 +1219,16 @@
"submit": "שלח",
"suggestions": "הצעות",
"sunrise_on_the_beach": "Sunrise on the beach (מומלץ לחפש באנגלית לתוצאות טובות יותר)",
+ "support": "תמיכה",
+ "support_and_feedback": "תמיכה & משוב",
+ "support_third_party_description": "התקנת ה-Immich שלך נארזה על ידי צד שלישי. בעיות שאתה חווה עשויות להיגרם על ידי חבילה זו, אז בבקשה תעלה בעיות איתם ראשית כל באמצעות הקישורים למטה.",
"swap_merge_direction": "החלף כיוון מיזוג",
"sync": "סנכרן",
"tag": "תג",
"tag_assets": "תיוג נכסים",
"tag_created": "נוצר תג: {tag}",
"tag_feature_description": "עיון בתמונות וסרטונים שקובצו על ידי נושאי תג לוגיים",
- "tag_not_found_question": "לא מצליח למצוא תג? צור אחד כאן",
+ "tag_not_found_question": "לא מצליח למצוא תג? צור תג חדש",
"tag_updated": "תג מעודכן: {tag}",
"tagged_assets": "תויגו {count, plural, one {נכס #} other {# נכסים}}",
"tags": "תגים",
@@ -1253,18 +1237,19 @@
"theme_selection": "בחירת ערכת נושא",
"theme_selection_description": "הגדר אוטומטית את ערכת הנושא לבהיר או כהה בהתבסס על העדפת המערכת של הדפדפן שלך",
"they_will_be_merged_together": "הם יתמזגו יחד",
+ "third_party_resources": "משאבי צד שלישי",
"time_based_memories": "זכרונות מבוססי זמן",
+ "timeline": "ציר זמן",
"timezone": "אזור זמן",
"to_archive": "העבר לארכיון",
"to_change_password": "שנה סיסמה",
"to_favorite": "מועדף",
"to_login": "כניסה",
"to_parent": "לך להורה",
- "to_root": "לשורש",
"to_trash": "אשפה",
"toggle_settings": "החלף מצב הגדרות",
"toggle_theme": "החלף ערכת נושא כהה",
- "toggle_visibility": "החלף נראות",
+ "total": "סה\"כ",
"total_usage": "שימוש כולל",
"trash": "אשפה",
"trash_all": "העבר הכל לאשפה",
@@ -1274,14 +1259,13 @@
"trashed_items_will_be_permanently_deleted_after": "פריטים באשפה ימחקו לצמיתות לאחר {days, plural, one {יום #} other {# ימים}}.",
"type": "סוג",
"unarchive": "הוצא מארכיון",
- "unarchived": "הוצא מהארכיון",
"unarchived_count": "{count, plural, other {# הוצאו מהארכיון}}",
"unfavorite": "לא מועדף",
"unhide_person": "בטל הסתרת אדם",
"unknown": "לא ידוע",
- "unknown_album": "אלבום לא ידוע",
"unknown_year": "שנה לא ידועה",
"unlimited": "בלתי מוגבל",
+ "unlink_motion_video": "בטל קישור סרטון תנועה",
"unlink_oauth": "בטל קישור OAuth",
"unlinked_oauth_account": "בוטל קישור חשבון OAuth",
"unnamed_album": "אלבום ללא שם",
@@ -1310,13 +1294,13 @@
"use_custom_date_range": "השתמש בטווח תאריכים מותאם במקום",
"user": "משתמש",
"user_id": "מזהה משתמש",
- "user_license_settings": "רישיון",
- "user_license_settings_description": "נהל את הרישיון שלך",
"user_liked": "{user} אהב את {type, select, photo {התמונה הזאת} video {הסרטון הזה} asset {הנכס הזה} other {זה}}",
"user_purchase_settings": "רכישה",
"user_purchase_settings_description": "נהל את הרכישה שלך",
"user_role_set": "הגדר את {user} בתור {role}",
"user_usage_detail": "פרטי השימוש של המשתמש",
+ "user_usage_stats": "סטטיסטיקות שימוש בחשבון",
+ "user_usage_stats_description": "הצג סטטיסטיקות שימוש בחשבון",
"username": "שם משתמש",
"users": "משתמשים",
"utilities": "כלים",
@@ -1324,7 +1308,9 @@
"variables": "משתנים",
"version": "גרסה",
"version_announcement_closing": "החבר שלך, אלכס",
- "version_announcement_message": "הי חבר/ה, יש מהדורה חדשה של היישום, אנא קח/י את הזמן שלך לבקר ב הערות פרסום ולוודא שמבנה ה-docker-compose.yml, וה-.env שלך עדכני כדי למנוע תצורות שגויות, במיוחד אם את/ה משתמש/ת ב-WatchTower או בכל מנגנון שמטפל בעדכון היישום שלך באופן אוטומטי.",
+ "version_announcement_message": "שלום לך! זמינה גרסה חדשה של Immich. אנא קח/י זמן מה לקרוא את הערות הפרסום כדי לוודא שההתקנה שלך עדכנית על מנת למנוע תצורות שגויות, במיוחד אם את/ה משתמש/ת ב-WatchTower או בכל מנגנון שמטפל בעדכון מופע ה-Immich שלך באופן אוטומטי.",
+ "version_history": "היסטוריית גרסאות",
+ "version_history_item": "{version} הותקנה ב-{date}",
"video": "סרטון",
"video_hover_setting": "הפעל תצוגת סרטון מקדימה בעת ריחוף",
"video_hover_setting_description": "הפעל תצוגת סרטון מקדימה כאשר העכבר מרחף מעל פריט. אפילו כשהגדרה זו מושבתת, ניתן להתחיל את הניגון על ידי ריחוף מעל סמל ההפעלה.",
@@ -1336,10 +1322,10 @@
"view_all_users": "הצג את כל המשתמשים",
"view_in_timeline": "ראה בציר הזמן",
"view_links": "הצג קישורים",
+ "view_name": "הצג",
"view_next_asset": "הצג את הנכס הבא",
"view_previous_asset": "הצג את הנכס הקודם",
"view_stack": "הצג ערימה",
- "viewer": "מציג",
"visibility_changed": "הנראות השתנתה עבור {count, plural, one {אדם #} other {# אנשים}}",
"waiting": "ממתין",
"warning": "אזהרה",
@@ -1350,5 +1336,5 @@
"years_ago": "לפני {years, plural, one {שנה #} other {# שנים}}",
"yes": "כן",
"you_dont_have_any_shared_links": "אין לך קישורים משותפים",
- "zoom_image": "התקרב לתמונה"
+ "zoom_image": "זום לתמונה"
}
diff --git a/web/src/lib/i18n/hi.json b/i18n/hi.json
similarity index 95%
rename from web/src/lib/i18n/hi.json
rename to i18n/hi.json
index 2f2aabfb7e..5df14e7296 100644
--- a/web/src/lib/i18n/hi.json
+++ b/i18n/hi.json
@@ -23,6 +23,7 @@
"add_to": "इसमें जोड़ें..।",
"add_to_album": "एल्बम में जोड़ें",
"add_to_shared_album": "साझा एल्बम में जोड़ें",
+ "add_url": "URL जोड़ें",
"added_to_archive": "संग्रहीत कर दिया गया है",
"added_to_favorites": "पसंदीदा में जोड़ा गया",
"added_to_favorites_count": "पसंदीदा में {count, number} जोड़ा गया",
@@ -41,9 +42,7 @@
"confirm_email_below": "पुष्टि करने के लिए नीचे \"{email}\" टाइप करें",
"confirm_reprocess_all_faces": "क्या आप वाकई सभी चेहरों को दोबारा संसाधित करना चाहते हैं? इससे नामित लोग भी साफ हो जायेंगे।",
"confirm_user_password_reset": "क्या आप वाकई {user} का पासवर्ड रीसेट करना चाहते हैं?",
- "crontab_guru": "",
"disable_login": "लॉगिन अक्षम करें",
- "disabled": "",
"duplicate_detection_job_description": "समान छवियों का पता लगाने के लिए संपत्तियों पर मशीन लर्निंग चलाएं। यह कार्यक्षमता स्मार्ट खोज पर निर्भर करती है",
"exclusion_pattern_description": "Exclusion पैटर्न आपको अपनी लाइब्रेरी को स्कैन करते समय फ़ाइलों और फ़ोल्डरों को अनदेखा करने देता है। यह उपयोगी है यदि आपके पास ऐसे फ़ोल्डर हैं जिनमें ऐसी फ़ाइलें हैं जिन्हें आप आयात नहीं करना चाहते हैं, जैसे RAW फ़ाइलें।",
"external_library_created_at": "बाहरी लाइब्रेरी ({date} को बनाई गई)",
@@ -59,16 +58,9 @@
"image_prefer_embedded_preview_setting_description": "जब उपलब्ध हो तो RAW फ़ोटो में एम्बेडेड पूर्वावलोकन का उपयोग इमेज प्रोसेसिंग के इनपुट के रूप में करें। यह कुछ छवियों के लिए अधिक सटीक रंग उत्पन्न कर सकता है, लेकिन पूर्वावलोकन की गुणवत्ता कैमरे पर निर्भर करती है और छवि में अधिक संपीड़न कलाकृतियाँ हो सकती हैं।",
"image_prefer_wide_gamut": "विस्तृत सरगम को प्राथमिकता दें",
"image_prefer_wide_gamut_setting_description": "थंबनेल के लिए डिस्प्ले P3 का उपयोग करें। यह विस्तृत कलरस्पेस वाली छवियों की जीवंतता को बेहतर ढंग से संरक्षित करता है, लेकिन पुराने ब्राउज़र संस्करण वाले पुराने डिवाइस पर छवियां अलग-अलग दिखाई दे सकती हैं। रंग परिवर्तन से बचने के लिए sRGB छवियों को sRGB के रूप में रखा जाता है।",
- "image_preview_format": "पूर्वावलोकन प्रारूप",
- "image_preview_resolution": "पूर्वावलोकन रिज़ॉल्यूशन",
- "image_preview_resolution_description": "एकल फ़ोटो देखते समय और मशीन लर्निंग के लिए उपयोग किया जाता है। उच्च रिज़ॉल्यूशन अधिक विवरण को संरक्षित कर सकता है लेकिन एन्कोड करने में अधिक समय लेता है, फ़ाइल आकार बड़ा होता है, और ऐप की प्रतिक्रियाशीलता कम हो सकती है।",
"image_quality": "गुणवत्ता",
- "image_quality_description": "छवि गुणवत्ता 1-100 तक। उच्च गुणवत्ता बेहतर है लेकिन बड़ी फ़ाइलें बनाती है, यह विकल्प पूर्वावलोकन और थंबनेल छवियों को प्रभावित करता है।",
"image_settings": "छवि सेटिंग्स",
"image_settings_description": "उत्पन्न छवियों की गुणवत्ता और रिज़ॉल्यूशन प्रबंधित करें",
- "image_thumbnail_format": "थंबनेल प्रारूप",
- "image_thumbnail_resolution": "थंबनेल रिज़ॉल्यूशन",
- "image_thumbnail_resolution_description": "फ़ोटो के समूह (मुख्य टाइमलाइन, एल्बम दृश्य, आदि) देखते समय उपयोग किया जाता है। उच्च रिज़ॉल्यूशन अधिक विवरण को संरक्षित कर सकता है लेकिन एन्कोड करने में अधिक समय लेता है, फ़ाइल आकार बड़ा होता है, और ऐप की प्रतिक्रियाशीलता कम हो सकती है।",
"job_concurrency": "{job} समरूपता",
"job_not_concurrency_safe": "यह कार्य (जॉब) समवर्ती-सुरक्षित नहीं है।",
"job_settings": "कार्य (जॉब) सेटिंग्स",
@@ -77,9 +69,6 @@
"jobs_delayed": "{jobCount, plural, other {# विलंबित}}",
"jobs_failed": "{jobCount, plural, other {# असफल}}",
"library_created": "निर्मित संग्रह: {library}",
- "library_cron_expression": "क्रॉन व्यंजक",
- "library_cron_expression_description": "क्रॉन प्रारूप का उपयोग करके स्कैनिंग अंतराल सेट करें। अधिक जानकारी के लिए कृपया उदाहरण के लिए Crontab Guru देखें",
- "library_cron_expression_presets": "क्रॉन व्यंजक प्रीसेट",
"library_deleted": "संग्रह हटा दिया गया",
"library_import_path_description": "आयात करने के लिए एक फ़ोल्डर निर्दिष्ट करें। सबफ़ोल्डर्स सहित इस फ़ोल्डर को छवियों और वीडियो के लिए स्कैन किया जाएगा।",
"library_scanning": "सामयिक स्कैनिंग",
@@ -147,7 +136,7 @@
"note_cannot_be_changed_later": "नोट: इसे बाद में बदला नहीं जा सकता!",
"note_unlimited_quota": "नोट: असीमित कोटा के लिए 0 दर्ज करें",
"notification_email_from_address": "इस पते से",
- "notification_email_from_address_description": "प्रेषक का ईमेल पता, उदाहरण के लिए: \"इमिच फोटो सर्वर {label} je korisnička oznaka za pohranu",
+ "system_settings": "Postavke Sustava",
+ "tag_cleanup_job": "Čišćenje oznaka",
+ "theme_custom_css_settings": "Prilagođeni CSS",
+ "theme_custom_css_settings_description": "Kaskadni listovi stilova (CSS) omogućuju prilagođavanje dizajna Immicha.",
+ "theme_settings": "Postavke tema",
+ "theme_settings_description": "Upravljajte prilagodbom Immich web sučelja",
+ "these_files_matched_by_checksum": "Ove datoteke se podudaraju prema njihovim kontrolnim zbrojevima",
+ "thumbnail_generation_job": "Generirajte sličice",
+ "thumbnail_generation_job_description": "Generirajte velike, male i zamućene sličice za svaki materijal, kao i sličice za svaku osobu",
+ "transcoding_acceleration_api": "API ubrzanja",
+ "transcoding_acceleration_api_description": "API koji će komunicirati s vašim uređajem radi ubrzanja transkodiranja. Ova postavka je 'najveći trud': vratit će se na softversko transkodiranje u slučaju kvara. VP9 može ili ne mora raditi ovisno o vašem hardveru.",
+ "transcoding_acceleration_nvenc": "NVENC (zahtjeva NVIDIA GPU)",
+ "transcoding_acceleration_qsv": "Quick Sync (zahtjeva Intel CPU sedme ili veće generacije)",
+ "transcoding_acceleration_rkmpp": "RKMPP (samo na Rockchip SOCima)",
+ "transcoding_acceleration_vaapi": "VAAPI",
+ "transcoding_accepted_audio_codecs": "Prihvačeni audio kodeci",
+ "transcoding_accepted_audio_codecs_description": "Odaberite koji audio kodeci ne trebaju biti transkodirani. Samo korišteno za neka pravila za transkodiranje.",
+ "transcoding_accepted_containers": "Prihvaćeni kontenjeri",
+ "transcoding_accepted_containers_description": "Odaberite koji formati spremnika ne moraju biti remulksirani u MP4. Koristi se samo za određena pravila transkodiranja.",
+ "transcoding_accepted_video_codecs": "Prihvaćeni video kodeci",
+ "transcoding_accepted_video_codecs_description": "Odaberite koje video kodeke nije potrebno transkodirati. Koristi se samo za određena pravila transkodiranja.",
+ "transcoding_advanced_options_description": "Postavke većina korisnika ne treba mjenjati",
+ "transcoding_audio_codec": "Audio kodek",
+ "transcoding_audio_codec_description": "Opus je opcija s najvećom kvalitetom, no ima manju podršku s starim uređajima i softverima.",
+ "transcoding_bitrate_description": "Videozapisi veći od maksimalne brzine prijenosa ili nisu u prihvatljivom formatu",
+ "transcoding_codecs_learn_more": "Da biste saznali više o terminologiji koja se ovdje koristi, pogledajte FFmpeg dokumentaciju za {label}",
+ "system_settings": "Rendszerbeállítások",
+ "tag_cleanup_job": "Címkék kipucolása",
+ "template_email_available_tags": "Használthatod a következő változókat a sablonodban: {tags}",
+ "template_email_if_empty": "Ha a sablon üres, akkor az alapértelmezett email lesz használva.",
+ "template_email_invite_album": "Album meghívás sablon",
+ "template_email_preview": "Előnézet",
+ "template_email_settings": "Email sablonok",
+ "template_email_settings_description": "Saját email értesítések kezelése",
+ "template_email_update_album": "Album frissítve sablon",
+ "template_email_welcome": "Üdvözlő email sablon",
+ "template_settings": "Értesítés sablon",
+ "template_settings_description": "Egyéni sablonok kezelése az értesítésekhez.",
+ "theme_custom_css_settings": "Egyedi CSS",
+ "theme_custom_css_settings_description": "CSS Stíluslapokkal az Immich stílusa megváltoztatható.",
+ "theme_settings": "Téma Beállítások",
+ "theme_settings_description": "Az Immich webes felület testreszabásának kezelése",
+ "these_files_matched_by_checksum": "Ezek a fájlok egyeznek az ellenőrző összegük alapján",
+ "thumbnail_generation_job": "Bélyegképek Generálása",
+ "thumbnail_generation_job_description": "Nagy, kicsi és elmosódott bélyegképek létrehozása minden elemhez, valamint bélyegképek generálása minden személyhez",
+ "transcoding_acceleration_api": "Gyorsító API",
+ "transcoding_acceleration_api_description": "Az átkódolás felgyorsításához használt eszközödhöz tartozó API. Ez a beállítás „legtöbb, amit megtehetünk” alapon működik: probléma esetén visszaáll szoftveres átkódolásra. A VP9 a hardvertől függően vagy működik, vagy nem.",
+ "transcoding_acceleration_nvenc": "NVENC (NVIDIA GPU-t igényel)",
+ "transcoding_acceleration_qsv": "Gyors Szinkronizálás (7. generációs vagy újabb Intel CPU-t igényel)",
+ "transcoding_acceleration_rkmpp": "RKMPP (csak Rockchip SOC-on)",
+ "transcoding_acceleration_vaapi": "VAAPI",
+ "transcoding_accepted_audio_codecs": "Elfogadott audio kodekek",
+ "transcoding_accepted_audio_codecs_description": "Válaszd ki, hogy melyik audio kodekeket nem kell átkódolni. Csak bizonyos átkódolási szabályzatokhoz használt.",
+ "transcoding_accepted_containers": "Elfogadott tárolók",
+ "transcoding_accepted_containers_description": "Válaszd ki, hogy melyik tároló formátumokat nem szükséges átkódolni MP4 formátumba. Csak bizonyos átkódolási szabályzatokhoz használt.",
+ "transcoding_accepted_video_codecs": "Elfogadott videó kodekek",
+ "transcoding_accepted_video_codecs_description": "Válaszd ki, hogy mely videó kodekeket nem kell átkódolni. Csak bizonyos átkódolási szabályzatokhoz használt.",
+ "transcoding_advanced_options_description": "Ezeket az opciókat a legtöbb felhasználónak nem kell módosítania",
+ "transcoding_audio_codec": "Audio kodek",
+ "transcoding_audio_codec_description": "Az Opus a legjobb minőségű opció (jobb hangminőség ugyanakkora tárhelyen), de kevésbé kompatibilis a régi eszközökkel vagy szoftverekkel.",
+ "transcoding_bitrate_description": "A maximum bitrátát meghaladó vagy nem megfelelő formátumú videókat",
+ "transcoding_codecs_learn_more": "Hogy többet tudj meg az itt felhasznált kifejezésekről, nézd meg az FFmpeg dokumentációt a {label} adalah Label Penyimpanan pengguna",
"system_settings": "Pengaturan Sistem",
+ "tag_cleanup_job": "Pembersihan tag",
+ "template_email_available_tags": "Anda dapat menggunakan variabel berikut dalam templat Anda: {tags}",
+ "template_email_if_empty": "Jika templat kosong, surel bawaan akan digunakan.",
+ "template_email_invite_album": "Templat Undangan Album",
+ "template_email_preview": "Pratinjau",
+ "template_email_settings": "Templat Surel",
+ "template_email_settings_description": "Kelola templat notifikasi surel kustom",
+ "template_email_update_album": "Perbarui Templat Album",
+ "template_email_welcome": "Templat surel selamat datang",
+ "template_settings": "Templat Notifikasi",
+ "template_settings_description": "Kelola templat kustom untuk notifikasi.",
"theme_custom_css_settings": "CSS Kustom",
"theme_custom_css_settings_description": "CSS memungkinkan desain Immich untuk diubah.",
"theme_settings": "Pengaturan Tema",
@@ -268,7 +292,7 @@
"transcoding_hardware_acceleration": "Akselerasi Perangkat Keras",
"transcoding_hardware_acceleration_description": "Uji coba; lebih cepat, tetapi akan memiliki kualitas lebih rendah pada kecepatan bit yang sama",
"transcoding_hardware_decoding": "Dekode perangkat keras",
- "transcoding_hardware_decoding_setting_description": "Hanya diterapkan pada NVENC dan RKMPP. Mengaktifkan akselerasi ujung ke ujung daripada hanya mengakselerasi pengodean. Mungkin tidak berfungsi pada semua video.",
+ "transcoding_hardware_decoding_setting_description": "Mengaktifkan akselerasi ujung ke ujung daripada hanya mengakselerasi pengodean. Mungkin tidak berfungsi pada semua video.",
"transcoding_hevc_codec": "Kodek HEVC",
"transcoding_max_b_frames": "Bingkai B maksimum",
"transcoding_max_b_frames_description": "Nilai yang lebih tinggi meningkatkan efisiensi kompresi, tetapi membuat pengodean lebih lambat. Mungkin tidak kompatibel dengan akselerasi perangkat keras pada perangkat lawas. 0 menonaktifkan bingkai B, sedangkan -1 mengatur nilai ini secara otomatis.",
@@ -294,8 +318,6 @@
"transcoding_threads_description": "Nilai yang lebih tinggi dapat mengode dengan cepat, tetapi mengurangi ruang bagi server untuk memproses tugas lain selagi aktif. Nilai ini seharusnya tidak lebih dari jumlah inti CPU. Memaksimalkan pemakaian jika ditetapkan ke 0.",
"transcoding_tone_mapping": "Pemetaan nada",
"transcoding_tone_mapping_description": "Mencoba menjaga tampilan video HDR ketika dikonversikan ke SDR. Setiap algoritma memiliki kekurangan pada warna, detail, dan kecerahan. Hable menjaga detail, Mobius menjaga warna, dan Reinhard menjada kecerahan.",
- "transcoding_tone_mapping_npl": "NPL pemetaan nada",
- "transcoding_tone_mapping_npl_description": "Warna akan disesuaikan agar terlihat normal untuk tampilan kecerahan ini. Nilai yang lebih rendah meningkatkan kecerahan video dan sebaliknya, karena nilai ini mengimbangi kecerahan tampilan. 0 menetapkan nilai ini secara otomatis.",
"transcoding_transcode_policy": "Kebijakan transkode",
"transcoding_transcode_policy_description": "Kebijakan untuk kapan sebuah video harus ditranskode. Video HDR akan selalu ditranskode (kecuali jika transkode dinonaktifkan).",
"transcoding_two_pass_encoding": "Pengodean dua arah",
@@ -309,6 +331,7 @@
"trash_settings_description": "Kelola pengaturan sampah",
"untracked_files": "Berkas yang Belum Dilacak",
"untracked_files_description": "Berkas ini tidak dilacak oleh aplikasi. Mereka dapat diakibatkan oleh pemindahan gagal, pengunggahan terganggu, atau tertinggal karena oleh kutu",
+ "user_cleanup_job": "Pembersihan data pengguna",
"user_delete_delay": "Akun dan aset {user} akan dijadwalkan untuk penghapusan permanen dalam {delay, plural, one {# hari} other {# hari}}.",
"user_delete_delay_settings": "Jeda penghapusan",
"user_delete_delay_settings_description": "Jumlah hari setelah penghapusan untuk menghapus akun dan aset pengguna secara permanen. Tugas penghapusan pengguna berjalan pada tengah malam untuk memeriksa pengguna yang siap untuk dihapus. Perubahan pengaturan ini akan dievaluasi pada eksekusi berikutnya.",
@@ -375,7 +398,6 @@
"archive_or_unarchive_photo": "Arsipkan atau batalkan pengarsipan foto",
"archive_size": "Ukuran arsip",
"archive_size_description": "Atur ukuran arsip untuk unduhan (dalam GiB)",
- "archived": "",
"archived_count": "{count, plural, other {# terarsip}}",
"are_these_the_same_person": "Apakah ini adalah orang yang sama?",
"are_you_sure_to_do_this": "Apakah Anda yakin ingin melakukan ini?",
@@ -385,8 +407,8 @@
"asset_filename_is_offline": "Aset {filename} sedang luring",
"asset_has_unassigned_faces": "Aset memiliki wajah yang belum ditetapkan",
"asset_hashing": "Memilah...",
- "asset_offline": "Aset luring",
- "asset_offline_description": "Aset ini sedang luring. Immich tidak dapat mengakses lokasi berkasnya. Pastikan aset tersebut tersedia lalu pindai ulang pustaka.",
+ "asset_offline": "Aset Luring",
+ "asset_offline_description": "Aset eksternal ini tidak ada lagi di diska. Silakan hubungi administrator Immich Anda untuk bantuan.",
"asset_skipped": "Dilewati",
"asset_skipped_in_trash": "Dalam sampah",
"asset_uploaded": "Sudah diunggah",
@@ -396,11 +418,10 @@
"assets_added_to_album_count": "Ditambahkan {count, plural, one {# aset} other {# aset}} ke album",
"assets_added_to_name_count": "Ditambahkan {count, plural, one {# aset} other {# aset}} ke {hasName, select, true {{name}} other {album baru}}",
"assets_count": "{count, plural, one {# aset} other {# aset}}",
- "assets_moved_to_trash": "",
"assets_moved_to_trash_count": "Dipindahkan {count, plural, one {# aset} other {# aset}} ke sampah",
"assets_permanently_deleted_count": "{count, plural, one {# aset} other {# aset}} dihapus secara permanen",
"assets_removed_count": "{count, plural, one {# aset} other {# aset}} dihapus",
- "assets_restore_confirmation": "Apakah Anda yakin ingin memulihkan semua aset yang dibuang? Anda tidak dapat mengurungkan tindakan ini!",
+ "assets_restore_confirmation": "Apakah Anda yakin ingin memulihkan semua aset yang dibuang? Anda tidak dapat mengurungkan tindakan ini! Perlu diingat bahwa aset luring tidak dapat dipulihkan.",
"assets_restored_count": "{count, plural, one {# aset} other {# aset}} dipulihkan",
"assets_trashed_count": "{count, plural, one {# aset} other {# aset}} dibuang ke sampah",
"assets_were_part_of_album_count": "{count, plural, one {Aset telah} other {Aset telah}} menjadi bagian dari album",
@@ -411,6 +432,7 @@
"birthdate_saved": "Tanggal lahir berhasil disimpan",
"birthdate_set_description": "Tanggal lahir digunakan untuk menghitung umur orang ini pada saat foto diambil.",
"blurred_background": "Latar belakang buram",
+ "bugs_and_feature_requests": "Permintaan Kutu dan Fitur",
"build": "Versi",
"build_image": "Versi Citra",
"bulk_delete_duplicates_confirmation": "Apakah Anda yakin ingin menghapus {count, plural, one {# aset duplikat} other {# aset duplikat}} secara bersamaan? Ini akan menjaga aset terbesar dari setiap kelompok dan menghapus semua duplikat lain secara permanen. Anda tidak dapat mengurungkan tindakan ini!",
@@ -425,10 +447,6 @@
"cannot_merge_people": "Tidak dapat menggabungkan orang",
"cannot_undo_this_action": "Anda tidak dapat mengurungkan tindakan ini!",
"cannot_update_the_description": "Tidak dapat memperbarui deskripsi",
- "cant_apply_changes": "",
- "cant_get_faces": "",
- "cant_search_people": "",
- "cant_search_places": "",
"change_date": "Ubah tanggal",
"change_expiration_time": "Ubah waktu kedaluwarsa",
"change_location": "Ubah lokasi",
@@ -460,6 +478,7 @@
"confirm": "Konfirmasi",
"confirm_admin_password": "Konfirmasi Kata Sandi Admin",
"confirm_delete_shared_link": "Apakah Anda yakin ingin menghapus tautan terbagi ini?",
+ "confirm_keep_this_delete_others": "Semua aset lain di dalam stack akan dihapus kecuali aset ini. Anda yakin untuk melanjutkan?",
"confirm_password": "Konfirmasi kata sandi",
"contain": "Berisi",
"context": "Konteks",
@@ -507,18 +526,21 @@
"delete_api_key_prompt": "Apakah Anda yakin ingin menghapus kunci API ini?",
"delete_duplicates_confirmation": "Apakah Anda yakin ingin menghapus duplikat ini secara permanen?",
"delete_key": "Hapus kunci",
- "delete_library": "Hapus pustaka",
+ "delete_library": "Hapus Pustaka",
"delete_link": "Hapus tautan",
+ "delete_others": "Hapus lainnya",
"delete_shared_link": "Hapus tautan terbagi",
"delete_tag": "Hapus tag",
"delete_tag_confirmation_prompt": "Apakah Anda yakin ingin menghapus label tag {tagName}?",
"delete_user": "Hapus pengguna",
"deleted_shared_link": "Tautan terbagi dihapus",
+ "deletes_missing_assets": "Menghapus aset yang hilang dari diska",
"description": "Deskripsi",
"details": "Detail",
"direction": "Arah",
"disabled": "Dinonaktifkan",
"disallow_edits": "Jangan perbolehkan penyuntingan",
+ "discord": "Discord",
"discover": "Jelajahi",
"dismiss_all_errors": "Abaikan semua eror",
"dismiss_error": "Abaikan eror",
@@ -527,6 +549,7 @@
"display_original_photos": "Tampilkan foto asli",
"display_original_photos_setting_description": "Lebih suka menampilkan foto ketika menampilkan aset daripada gambar kecil ketika aset asli kompatibel dengan web. Ini dapat mengakibatkan kecepatan pemuatan foto yang lebih lambat.",
"do_not_show_again": "Jangan tampilkan pesan ini lagi",
+ "documentation": "Dokumentasi",
"done": "Selesai",
"download": "Unduh",
"download_include_embedded_motion_videos": "Video tersematkan",
@@ -596,6 +619,7 @@
"failed_to_create_shared_link": "Gagal membuat tautan terbagi",
"failed_to_edit_shared_link": "Gagal menyunting tautan terbagi",
"failed_to_get_people": "Gagal mendapatkan orang",
+ "failed_to_keep_this_delete_others": "Gagal mempertahankan aset ini dan hapus aset-aset lainnya",
"failed_to_load_asset": "Gagal membuka aset",
"failed_to_load_assets": "Gagal membuka aset-aset",
"failed_to_load_people": "Gagal mengunggah orang",
@@ -663,8 +687,8 @@
"unable_to_remove_album_users": "Tidak dapat mengeluarkan pengguna dari album",
"unable_to_remove_api_key": "Tidak dapat menghapus Kunci API",
"unable_to_remove_assets_from_shared_link": "Tidak dapat menghapus aset dari tautan terbagi",
+ "unable_to_remove_deleted_assets": "Tidak dapat menghapus berkas luring",
"unable_to_remove_library": "Tidak dapat menghapus pustaka",
- "unable_to_remove_offline_files": "Tidak dapat menghapus berkas luring",
"unable_to_remove_partner": "Tidak dapat menghapus partner",
"unable_to_remove_reaction": "Tidak dapat menghapus reaksi",
"unable_to_repair_items": "Tidak dapat memperbaiki item",
@@ -710,7 +734,7 @@
"external": "Eksternal",
"external_libraries": "Pustaka Eksternal",
"face_unassigned": "Tidak ada nama",
- "failed_to_get_people": "",
+ "failed_to_load_assets": "Gagal memuat aset",
"favorite": "Favorit",
"favorite_or_unfavorite_photo": "Favorit atau batalkan pemfavoritan foto",
"favorites": "Favorit",
@@ -726,14 +750,12 @@
"fix_incorrect_match": "Perbaiki pencocokan salah",
"folders": "Berkas",
"folders_feature_description": "Menjelajahi tampilan folder untuk foto dan video pada sistem file",
- "force_re-scan_library_files": "Paksa Pindai Ulang Semua Berkas Pustaka",
"forward": "Maju",
"general": "Umum",
"get_help": "Dapatkan Bantuan",
"getting_started": "Memulai",
"go_back": "Kembali",
"go_to_search": "Pergi ke pencarian",
- "go_to_share_page": "Pergi ke laman pembagian",
"group_albums_by": "Kelompokkan album berdasarkan...",
"group_no": "Tidak ada pengelompokan",
"group_owner": "Kelompokkan berdasarkan pemilik",
@@ -759,9 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Image}} diambil di {city}, {country} oleh {person1} dan {person2} pada {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Image}} diambil di {city}, {country} oleh {person1}, {person2}, dan {person3} pada {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Image}} diambil di {city}, {country} oleh {person1}, {person2}, dan {additionalCount, number} lainnya pada {date}",
- "image_alt_text_people": "{count, plural, =1 {dengan {person1}} =2 {dengan {person1} dan {person2}} =3 {dengan {person1}, {person2}, dan {person3}} other {dengan {person1}, {person2}, dan {others, number} lainnya}}",
- "image_alt_text_place": "di {city}, {country}",
- "image_taken": "{isVideo, select, true {Video diambil} other {Gambar diambil}}",
"immich_logo": "Logo Immich",
"immich_web_interface": "Antarmuka Web Immich",
"import_from_json": "Impor dari JSON",
@@ -785,6 +804,8 @@
"jobs": "Tugas",
"keep": "Simpan",
"keep_all": "Simpan Semua",
+ "keep_this_delete_others": "Pertahankan ini, hapus lainnya",
+ "kept_this_deleted_others": "Aset ini dipertahankan dan {count, plural, one {# asset} other {# assets}} dihapus",
"keyboard_shortcuts": "Pintasan papan ketik",
"language": "Bahasa",
"language_setting_description": "Pilih bahasa Anda yang disukai",
@@ -796,31 +817,6 @@
"level": "Tingkat",
"library": "Pustaka",
"library_options": "Opsi pustaka",
- "license_account_info": "Akun Anda sudah berlisensi",
- "license_activated_subtitle": "Terima kasih atas dukungan Immich dan perangkat lunak bersumber terbuka",
- "license_activated_title": "Lisensi Anda berhasil diaktifkan",
- "license_button_activate": "Aktivasikan",
- "license_button_buy": "Beli",
- "license_button_buy_license": "Beli Lisensi",
- "license_button_select": "Pilih",
- "license_failed_activation": "Gagal mengaktivasi lisensi. Silakan periksa surel Anda untuk mendapatkan kunci yang benar!",
- "license_individual_description_1": "1 lisensi per pengguna di server mana pun",
- "license_individual_title": "Lisensi Individu",
- "license_info_licensed": "Berlisensi",
- "license_info_unlicensed": "Tidak Berlisensi",
- "license_input_suggestion": "Ada lisensi? Masukan kuncinya di bawah",
- "license_license_subtitle": "Beli lisensi untuk mendukung Immich",
- "license_license_title": "LISENSI",
- "license_lifetime_description": "Lisensi seumur hidup",
- "license_per_server": "Per server",
- "license_per_user": "Per pengguna",
- "license_server_description_1": "1 lisensi per server",
- "license_server_description_2": "Lisensi untuk semua pengguna di server",
- "license_server_title": "Lisensi Server",
- "license_trial_info_1": "Anda menjalankan versi Immich yang Tidak Berlisensi",
- "license_trial_info_2": "Anda telah menggunakan Immich sekitar",
- "license_trial_info_3": "{accountAge, plural, one {# hari} other {# hari}}",
- "license_trial_info_4": "Pertimbangkan membeli lisensi untuk mendukung keberlanjutan pengembangan layanan",
"light": "Terang",
"like_deleted": "Suka dihapus",
"link_motion_video": "Tautan video gerak",
@@ -842,6 +838,7 @@
"look": "Tampilan",
"loop_videos": "Ulangi video",
"loop_videos_description": "Aktifkan untuk mengulangi video secara otomatis dalam penampil detail.",
+ "main_branch_warning": "Anda menggunakan versi pengembangan; kami sangat menyarankan menggunakan versi rilis!",
"make": "Merek",
"manage_shared_links": "Kelola tautan terbagi",
"manage_sharing_with_partners": "Kelola pembagian dengan partner",
@@ -911,6 +908,7 @@
"notifications": "Notifikasi",
"notifications_setting_description": "Kelola notifikasi",
"oauth": "OAuth",
+ "official_immich_resources": "Sumber Daya Immich Resmi",
"offline": "Luring",
"offline_paths": "Jalur luring",
"offline_paths_description": "Hasil berikut dapat diakibatkan oleh penghapusan berkas manual yang bukan bagian dari pustaka eksternal.",
@@ -923,7 +921,6 @@
"onboarding_welcome_user": "Selamat datang, {user}",
"online": "Daring",
"only_favorites": "Hanya favorit",
- "only_refreshes_modified_files": "Hanya menyegarkan berkas yang diubah",
"open_in_map_view": "Buka dalam tampilan peta",
"open_in_openstreetmap": "Buka di OpenStreetMap",
"open_the_search_filters": "Buka saringan pencarian",
@@ -967,7 +964,6 @@
"permanently_delete_assets_count": "Hapus {count, plural, one {aset} other {aset}} secara permanen",
"permanently_delete_assets_prompt": "Apakah Anda yakin untuk menghapus {count, plural, one {aset ini secara permanen?} other {sebanyak # aset-aset berikut secara permanen?}} Ini juga akan menghapus {count, plural, one {ini dari} other {semua dari}} album-albumnya.",
"permanently_deleted_asset": "Aset dihapus secara permanen",
- "permanently_deleted_assets": "",
"permanently_deleted_assets_count": "{count, plural, one {# aset} other {# aset}} dihapus secara permanen",
"person": "Orang",
"person_hidden": "{name}{hidden, select, true { (tersembunyi)} other {}}",
@@ -1038,14 +1034,17 @@
"reassigned_assets_to_new_person": "Menetapkan ulang {count, plural, one {# aset} other {# aset}} kepada orang baru",
"reassing_hint": "Tetapkan aset yang dipilih ke orang yang sudah ada",
"recent": "Terkini",
+ "recent-albums": "Album terkini",
"recent_searches": "Pencarian terkini",
"refresh": "Segarkan",
"refresh_encoded_videos": "Segarkan video terenkode",
+ "refresh_faces": "Segarkan wajah",
"refresh_metadata": "Segarkan metadata",
"refresh_thumbnails": "Segarkan gambar kecil",
"refreshed": "Disegarkan",
- "refreshes_every_file": "Menyegarkan setiap berkas",
+ "refreshes_every_file": "Membaca ulang semua berkas yang sudah ada dan yang baru",
"refreshing_encoded_video": "Menyegarkan video terenkode",
+ "refreshing_faces": "Menyegarkan wajah",
"refreshing_metadata": "Menyegarkan metadata",
"regenerating_thumbnails": "Membuat ulang gambar kecil",
"remove": "Hapus",
@@ -1053,10 +1052,11 @@
"remove_assets_shared_link_confirmation": "Apakah Anda yakin ingin menghapus {count, plural, one {# aset} other {# aset}} dari tautan terbagi ini?",
"remove_assets_title": "Hapus aset?",
"remove_custom_date_range": "Hapus jangka tanggal khusus",
+ "remove_deleted_assets": "Hapus Berkas Luring",
"remove_from_album": "Hapus dari album",
"remove_from_favorites": "Hapus dari favorit",
"remove_from_shared_link": "Hapus dari tautan terbagi",
- "remove_offline_files": "Hapus Berkas Luring",
+ "remove_url": "Hapus URL",
"remove_user": "Keluarkan pengguna",
"removed_api_key": "Kunci API Dihapus: {name}",
"removed_from_archive": "Dihapus dari arsip",
@@ -1092,8 +1092,7 @@
"saved_settings": "Pengaturan disimpan",
"say_something": "Ucapkan sesuatu",
"scan_all_libraries": "Pindai Semua Pustaka",
- "scan_all_library_files": "Pindai Ulang Semua Berkas Pustaka",
- "scan_new_library_files": "Pindai Berkas Pustaka Baru",
+ "scan_library": "Pindai",
"scan_settings": "Pengaturan Pemindaian",
"scanning_for_album": "Memindai album...",
"search": "Cari",
@@ -1111,6 +1110,7 @@
"search_options": "Pilihan pencarian",
"search_people": "Cari orang",
"search_places": "Cari tempat",
+ "search_settings": "Pengaturan pencarian",
"search_state": "Cari negara bagian...",
"search_tags": "Cari tag...",
"search_timezone": "Cari zona waktu...",
@@ -1135,7 +1135,6 @@
"selected_count": "{count, plural, other {# dipilih}}",
"send_message": "Kirim pesan",
"send_welcome_email": "Kirim surel selamat datang",
- "server": "Server",
"server_offline": "Server Luring",
"server_online": "Server Daring",
"server_stats": "Statistik Server",
@@ -1178,6 +1177,7 @@
"show_person_options": "Tampilkan opsi orang",
"show_progress_bar": "Tampilkan Bilah Progres",
"show_search_options": "Tampilkan opsi pencarian",
+ "show_slideshow_transition": "Tampilkan transisi salindia",
"show_supporter_badge": "Lencana suporter",
"show_supporter_badge_description": "Tampilkan lencana suporter",
"shuffle": "Acak",
@@ -1219,13 +1219,16 @@
"submit": "Kirim",
"suggestions": "Saran",
"sunrise_on_the_beach": "Matahari terbit di pantai",
+ "support": "Dukungan",
+ "support_and_feedback": "Dukungan & Masukan",
+ "support_third_party_description": "Pemasangan Immich Anda telah dipaketkan oleh pihak ketiga. Masalah yang Anda alami dapat disebabkan oleh paket tersebut, jadi silakan ajukan isu dengan masalah tersebut menggunakan tautan di bawah.",
"swap_merge_direction": "Ganti arah penggabungan",
"sync": "Sinkronisasikan",
"tag": "Tag",
"tag_assets": "Tag aset",
"tag_created": "Tag yang di buat: {tag}",
"tag_feature_description": "Menjelajahi foto dan video yang dikelompokkan berdasarkan topik tag logis",
- "tag_not_found_question": "Tidak dapat menemukan tag? Buat satu disini",
+ "tag_not_found_question": "Tidak dapat menemukan tag? Buat tag baru.",
"tag_updated": "Tag yang diperbarui: {tag}",
"tagged_assets": "Ditandai {count, plural, one {# aset} other {# aset}}",
"tags": "Tag",
@@ -1234,18 +1237,19 @@
"theme_selection": "Pemilihan tema",
"theme_selection_description": "Tetapkan tema ke terang atau gelap secara otomatis berdasarkan preferensi sistem peramban Anda",
"they_will_be_merged_together": "Mereka akan digabungkan bersama",
+ "third_party_resources": "Sumber Daya Pihak Ketiga",
"time_based_memories": "Kenangan berbasis waktu",
+ "timeline": "Lini masa",
"timezone": "Zona waktu",
"to_archive": "Arsipkan",
"to_change_password": "Ubah kata sandi",
"to_favorite": "Favorit",
"to_login": "Log masuk",
"to_parent": "Ke induk",
- "to_root": "Untuk melakukan root",
"to_trash": "Sampah",
"toggle_settings": "Saklar pengaturan",
"toggle_theme": "Beralih tema gelap",
- "toggle_visibility": "Saklar keterlihatan",
+ "total": "Jumlah",
"total_usage": "Jumlah penggunaan",
"trash": "Sampah",
"trash_all": "Buang Semua",
@@ -1255,7 +1259,6 @@
"trashed_items_will_be_permanently_deleted_after": "Item yang dibuang akan dihapus secara permanen setelah {days, plural, one {# hari} other {# hari}}.",
"type": "Jenis",
"unarchive": "Keluarkan dari arsip",
- "unarchived": "",
"unarchived_count": "{count, plural, other {# dipindahkan dari arsip}}",
"unfavorite": "Hapus favorit",
"unhide_person": "Munculkan orang",
@@ -1291,13 +1294,13 @@
"use_custom_date_range": "Gunakan jangka tanggal khusus saja",
"user": "Pengguna",
"user_id": "ID Pengguna",
- "user_license_settings": "Lisensi",
- "user_license_settings_description": "Kelola lisensi Anda",
"user_liked": "{user} menyukai {type, select, photo {foto ini} video {tayangan ini} asset {aset ini} other {ini}}",
"user_purchase_settings": "Pembelian",
"user_purchase_settings_description": "Atur pembelian kamu",
"user_role_set": "Tetapkan {user} sebagai {role}",
"user_usage_detail": "Detail penggunaan pengguna",
+ "user_usage_stats": "Statistik penggunaan akun",
+ "user_usage_stats_description": "Tampilkan statistik penggunaan akun",
"username": "Nama pengguna",
"users": "Pengguna",
"utilities": "Peralatan",
@@ -1305,7 +1308,9 @@
"variables": "Variabel",
"version": "Versi",
"version_announcement_closing": "Temanmu, Alex",
- "version_announcement_message": "Halo, ada versi aplikasi yang baru. Silakan luangkan waktu Anda untuk mengunjungi catatan rilis dan pastikan pengaturan docker-compose.yml dan .env Anda sudah terkini untuk menghindari kesalahan dalam pengaturan, terutama jika Anda menggunakan WatchTower atau mekanisme lain yang menangani pembaruan aplikasi Anda secara otomatis.",
+ "version_announcement_message": "Hai! Versi baru Immich telah tersedia. Harap luangkan waktu untuk membaca catatan rilis untuk memastikan pengaturan Anda terkini untuk mencegah kesalahan konfigurasi, terutama jika Anda menggunakan WatchTower atau mekanisme apa pun yang menangani pembaruan server Immich secara otomatis.",
+ "version_history": "Riwayat Versi",
+ "version_history_item": "Terpasang {version} pada {date}",
"video": "Video",
"video_hover_setting": "Putar gambar kecil video saat kursor di atas",
"video_hover_setting_description": "Putar gambar kecil video ketika tetikus berada di atas item. Bahkan saat dinonaktifkan, pemutaran dapat dimulai dengan mengambang di atas ikon putar.",
@@ -1317,16 +1322,16 @@
"view_all_users": "Tampilkan semua pengguna",
"view_in_timeline": "Lihat di timeline",
"view_links": "Tampilkan tautan",
+ "view_name": "Tampilkan",
"view_next_asset": "Tampilkan aset berikutnya",
"view_previous_asset": "Tampilkan aset sebelumnya",
"view_stack": "Tampilkan Tumpukan",
- "viewer": "",
"visibility_changed": "Keterlihatan diubah untuk {count, plural, one {# orang} other {# orang}}",
"waiting": "Menunggu",
"warning": "Peringatan",
"week": "Pekan",
"welcome": "Selamat datang",
- "welcome_to_immich": "Selamat datang di immich",
+ "welcome_to_immich": "Selamat datang di Immich",
"year": "Tahun",
"years_ago": "{years, plural, one {# tahun} other {# tahun}} yang lalu",
"yes": "Ya",
diff --git a/web/src/lib/i18n/it.json b/i18n/it.json
similarity index 89%
rename from web/src/lib/i18n/it.json
rename to i18n/it.json
index 6782b8fbb9..57e6fc1ab7 100644
--- a/web/src/lib/i18n/it.json
+++ b/i18n/it.json
@@ -1,8 +1,8 @@
{
- "about": "Informazioni",
+ "about": "Informazioni su",
"account": "Profilo",
"account_settings": "Impostazioni Account",
- "acknowledge": "Ho capito",
+ "acknowledge": "Acconsento",
"action": "Azione",
"actions": "Azioni",
"active": "Attivi",
@@ -23,16 +23,23 @@
"add_to": "Aggiungi a...",
"add_to_album": "Aggiungi all'album",
"add_to_shared_album": "Aggiungi all'album condiviso",
+ "add_url": "Aggiungi URL",
"added_to_archive": "Aggiunto all'archivio",
"added_to_favorites": "Aggiunto ai preferiti",
"added_to_favorites_count": "Aggiunti {count, number} ai preferiti",
"admin": {
"add_exclusion_pattern_description": "Aggiungi modelli di esclusione. È supportato il globbing utilizzando *, ** e ?. Per ignorare tutti i file in qualsiasi directory denominata \"Raw\", usa \"**/Raw/**\". Per ignorare tutti i file con estensione \".tif\", usa \"**/*.tif\". Per ignorare un percorso assoluto, usa \"/percorso/da/ignorare/**\".",
+ "asset_offline_description": "Questa risorsa della libreria esterna non si trova più sul disco ed è stata spostata nel cestino. Se il file è stato spostato all'interno della libreria, controlla la timeline per la nuova risorsa corrispondente. Per ripristinare questa risorsa, assicurati che Immich possa accedere al percorso del file seguente ed esegui la scansione della libreria.",
"authentication_settings": "Autenticazione",
"authentication_settings_description": "Gestisci password, OAuth e altre impostazioni di autenticazione",
"authentication_settings_disable_all": "Sei sicuro di voler disabilitare tutte le modalità di accesso? Il login verrà disabilitato completamente.",
"authentication_settings_reenable": "Per riabilitare, utilizza un Comando Server.",
"background_task_job": "Attività in Background",
+ "backup_database": "Backup Database",
+ "backup_database_enable_description": "Abilita i backup del database",
+ "backup_keep_last_amount": "Quantità di backup precedenti da mantenere",
+ "backup_settings": "Impostazioni backup",
+ "backup_settings_description": "Gestisci le impostazioni dei backup",
"check_all": "Controlla Tutto",
"cleared_jobs": "Cancellati i processi per: {job}",
"config_set_by_file": "La configurazione è attualmente impostata da un file di configurazione",
@@ -41,35 +48,40 @@
"confirm_email_below": "Per confermare, scrivi \"{email}\" qui sotto",
"confirm_reprocess_all_faces": "Sei sicuro di voler riprocessare tutti i volti? Questo cancellerà tutte le persone nominate.",
"confirm_user_password_reset": "Sei sicuro di voler resettare la password di {user}?",
- "crontab_guru": "Crontab Guru",
+ "create_job": "creare lavoro",
+ "cron_expression": "Espressione Cron",
+ "cron_expression_description": "Imposta il tempo di scansione utilizzando il formato Cron. Per ulteriori informazioni fare riferimento a Crontab Guru",
+ "cron_expression_presets": "Espressione Cron preimpostata",
"disable_login": "Disabilita login",
- "disabled": "Disattivato",
"duplicate_detection_job_description": "Esegui il machine learning sugli assets per rilevare immagini simili. Basato su Ricerca Intelligente",
"exclusion_pattern_description": "I modelli di esclusione ti permettono di ignorare file e cartelle durante la scansione della tua libreria. Questo è utile se hai cartelle che contengono file che non vuoi importare, come ad esempio, i file RAW.",
"external_library_created_at": "Libreria esterna (creata il {date})",
"external_library_management": "Gestione Librerie Esterne",
"face_detection": "Rilevamento Volti",
- "face_detection_description": "Rileva i volti presenti negli assets utilizzando il machine learning. Per i video, viene presa in considerazione solo la miniatura. \"Tutto\" (ri-)processerà tutti gli assets. \"Mancanti\" seleziona solo gli assets che non sono ancora stati processati. I volti rilevati verranno selezionati per il riconoscimento facciale dopo che il rilevamento dei volti sarà stato completato, raggruppandoli in persone esistenti e/o nuove.",
- "facial_recognition_job_description": "Raggruppa i volti rilevati in persone. Questo processo viene eseguito dopo che il rilevamento volti è stato completato. \"Tutti\" (ri-)unisce tutti i volti. \"Mancanti\" processa i volti che non hanno una persona assegnata.",
+ "face_detection_description": "Rileva i volti presenti negli assets utilizzando il machine learning. Per i video, viene presa in considerazione solo la miniatura. \"Aggiorna\" (ri-)processerà tutti gli assets. \"Reset\" inoltre elimina tutti i dati dei volti correnti. \"Mancanti\" seleziona solo gli assets che non sono ancora stati processati. I volti rilevati verranno selezionati per il riconoscimento facciale dopo che il rilevamento dei volti sarà stato completato, raggruppandoli in persone esistenti e/o nuove.",
+ "facial_recognition_job_description": "Raggruppa i volti rilevati in persone. Questo processo viene eseguito dopo che il rilevamento volti è stato completato. \"Reset\" (ri-)unisce tutti i volti. \"Mancanti\" processa i volti che non hanno una persona assegnata.",
"failed_job_command": "Il comando {command} è fallito per il processo: {job}",
"force_delete_user_warning": "ATTENZIONE: Questo rimuoverà immediatamente l'utente e tutti i suoi assets. Non è possibile tornare indietro e i file non potranno essere recuperati.",
"forcing_refresh_library_files": "Forzando l'aggiornamento completo della libreria",
+ "image_format": "formato",
"image_format_description": "WebP produce file più piccoli rispetto a JPEG, ma l'encoding è più lento.",
"image_prefer_embedded_preview": "Preferisci l'anteprima integrata",
"image_prefer_embedded_preview_setting_description": "Usa l'anteprima integrata nelle foto RAW come input per l'elaborazione delle immagini, se disponibile. Questo permette un miglioramento dei colori per alcune immagini, ma la qualità delle anteprime dipende dalla macchina fotografica. Inoltre le immagini potrebbero presentare artefatti di compressione.",
"image_prefer_wide_gamut": "Preferisci gamut più ampio",
"image_prefer_wide_gamut_setting_description": "Usa lo spazio colore Display P3 per le anteprime. Questo aiuta a mantenere la vivacità delle immagini con spazi colore più ampi, tuttavia potrebbe non mostrare correttamente le immagini con dispositivi e browser obsoleti. Le immagini sRGB vengono preservate per evitare alterazioni del colore.",
- "image_preview_format": "Formato anteprima",
- "image_preview_resolution": "Risoluzione anteprima",
- "image_preview_resolution_description": "Usata per visualizzazione individuale di foto e per machine learning. Risoluzioni più alte possono preservare più dettagli ma richiedono un encoding più lento, occupano più spazio, e possono ridurre la responsività della app.",
+ "image_preview_description": "Immagine di medie dimensioni con metadati eliminati, utilizzata durante la visualizzazione di una singola risorsa e per l'apprendimento automatico",
+ "image_preview_quality_description": "Qualità dell'anteprima da 1 a 100. Elevata è migliore ma produce file più pesanti e può ridurre la reattività dell'app. Impostare un valore basso può influenzare negativamente la qualità del machine learning.",
+ "image_preview_title": "Impostazioni dell'anteprima",
"image_quality": "Qualità",
- "image_quality_description": "Qualità dell'immagine da 1 a 100. Un valore più alto risulta in una migliore qualità, ma produce file più grandi.",
+ "image_resolution": "Risoluzione",
+ "image_resolution_description": "Risoluzioni più elevate possono preservare più dettagli ma richiedere più tempo per la codifica, avere dimensioni di file più grandi e possono ridurre la reattività dell'app.",
"image_settings": "Impostazioni delle immagini",
"image_settings_description": "Gestisci qualità e risoluzione delle immagini generate",
- "image_thumbnail_format": "Formato miniatura",
- "image_thumbnail_resolution": "Risoluzione miniatura",
- "image_thumbnail_resolution_description": "Utilizzato per vedere gruppi di foto (linea temporale, vista album, etc.). Risoluzioni più alte possono mantenere più dettaglio però l'encoding sarà più lungo, i file avranno dimensioni maggiori e potrebbero causare una riduzione nella responsività dell'applicazione.",
+ "image_thumbnail_description": "Miniatura piccola senza metadati, utilizzata durante la visualizzazione di gruppi di foto come la sequenza temporale principale",
+ "image_thumbnail_quality_description": "Qualità delle miniature da 1 a 100. Un valore più alto è migliore, ma produce file più grandi e può ridurre la reattività dell'app.",
+ "image_thumbnail_title": "Impostazioni della copertina",
"job_concurrency": "Concorrenza {job}",
+ "job_created": "Lavoro creato",
"job_not_concurrency_safe": "Questo processo non è eseguibile in maniera concorrente.",
"job_settings": "Impostazioni dei processi",
"job_settings_description": "Gestisci la concorrenza dei processi",
@@ -77,9 +89,6 @@
"jobs_delayed": "{jobCount, plural, one {# posticipato} other {# posticipati}}",
"jobs_failed": "{jobCount, plural, one {# fallito} other {# falliti}}",
"library_created": "Creata libreria: {library}",
- "library_cron_expression": "Espressione cron",
- "library_cron_expression_description": "Imposta l'intervallo di rilevazione utilizzando il formato cron. Per più informazioni consulta es. Crontab Guru",
- "library_cron_expression_presets": "Espressioni cron preimpostate",
"library_deleted": "Libreria eliminata",
"library_import_path_description": "Specifica una cartella da importare. Questa cartella e le sue sottocartelle, verranno analizzate per cercare immagini e video.",
"library_scanning": "Scansione periodica",
@@ -122,7 +131,7 @@
"machine_learning_smart_search_description": "Cerca immagini semanticamente utilizzato gli embedding CLIP",
"machine_learning_smart_search_enabled": "Attiva ricerca intelligente",
"machine_learning_smart_search_enabled_description": "Se disabilitato le immagini non saranno codificate per la ricerca intelligente.",
- "machine_learning_url_description": "URL del server machine learning",
+ "machine_learning_url_description": "URL del server machine learning. Se sono stati forniti più di un URL, verrà testato un server alla volta finché uno non risponderà, in ordine dal primo all'ultimo.",
"manage_concurrency": "Gestisci Concorrenza",
"manage_log_settings": "Gestisci le impostazioni dei log",
"map_dark_style": "Tema scuro",
@@ -152,7 +161,7 @@
"note_cannot_be_changed_later": "NOTA: Non potrà essere modificato in futuro!",
"note_unlimited_quota": "Nota: Inserisci 0 per una quota illimitata",
"notification_email_from_address": "Indirizzo mittente",
- "notification_email_from_address_description": "Indirizzo email mittente, ad esempio: \"Server Foto Immich {label} è l'etichetta di archiviazione dell'utente",
"system_settings": "Impostazioni di sistema",
+ "tag_cleanup_job": "Pulisci Tag",
+ "template_email_available_tags": "Puoi usare le seguenti variabili nel tuo modello: {tags}",
+ "template_email_if_empty": "Se il modello è vuoto, verrà usata l'email di default.",
+ "template_email_invite_album": "Modello di invito all'album",
+ "template_email_preview": "Anteprima",
+ "template_email_settings": "Template Email",
+ "template_email_settings_description": "Gestisci i modelli personalizzati di notifiche email",
+ "template_email_update_album": "Modello di aggiornamento dell'album",
+ "template_email_welcome": "Modello di email di benvenuto",
+ "template_settings": "Templates Notifiche",
+ "template_settings_description": "Gestisci i modelli personalizzati per le notifiche.",
"theme_custom_css_settings": "CSS Personalizzato",
"theme_custom_css_settings_description": "I Cascading Style Sheets (CSS) permettono di personalizzare l'interfaccia di Immich.",
"theme_settings": "Impostazioni Tema",
@@ -245,7 +267,6 @@
"these_files_matched_by_checksum": "File abbinati per checksum",
"thumbnail_generation_job": "Generazione Miniature",
"thumbnail_generation_job_description": "Genera miniature grandi, piccole e sfocate per ogni asset, oltre a miniature per ogni persona",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "API di accelerazione",
"transcoding_acceleration_api_description": "L'API che interagirà con il tuo dispositivo per accelerare la transcodifica. Questa impostazione è \"best effort\": ripiegherà sulla transcodifica software in caso di fallimento. VP9 potrebbe funzionare o meno a seconda del tuo hardware.",
"transcoding_acceleration_nvenc": "NVENC (richiede GPU NVIDIA)",
@@ -271,7 +292,7 @@
"transcoding_hardware_acceleration": "Accelerazione Hardware",
"transcoding_hardware_acceleration_description": "Sperimentale; molto più veloce, ma avrà una qualità inferiore allo stesso bitrate",
"transcoding_hardware_decoding": "Decodifica hardware",
- "transcoding_hardware_decoding_setting_description": "Si applica solo a NVENC, QSV e RKMPP. Abilita l'accelerazione end-to-end anziché solo l'accelerazione dell'encoding. Potrebbe non funzionare su tutti i video.",
+ "transcoding_hardware_decoding_setting_description": "Abilita l'accelerazione end-to-end anziché accelerare solo la codifica. Potrebbe non funzionare su tutti i video.",
"transcoding_hevc_codec": "Codec HEVC",
"transcoding_max_b_frames": "B-frames Massimi",
"transcoding_max_b_frames_description": "Valori più alti migliorano l'efficienza di compressione, ma rallentano l'encoding. Potrebbero non essere compatibili con l'accelerazione hardware su dispositivi più vecchi. 0 disabilita i B-frames, mentre -1 imposta questo valore automaticamente.",
@@ -297,8 +318,6 @@
"transcoding_threads_description": "Valori più alti portano a una codifica più veloce, ma lasciano meno spazio al server per elaborare altre attività durante l'attività. Questo valore non dovrebbe essere superiore al numero di core CPU. Massimizza l'utilizzo se impostato su 0.",
"transcoding_tone_mapping": "Mappatura della tonalità",
"transcoding_tone_mapping_description": "Tenta di preservare l'aspetto dei video HDR quando convertiti in SDR. Ciascun algoritmo fa diversi compromessi per colore, dettaglio e luminosità. Hable conserva il dettaglio, Mobius conserva il colore e Reinhard conserva la luminosità.",
- "transcoding_tone_mapping_npl": "Mappatura della tonalità NPL",
- "transcoding_tone_mapping_npl_description": "I colori verranno regolati per apparire normali su uno schermo di questa luminosità. Contrariamente all'intuito, valori più bassi aumentano la luminosità del video e viceversa poiché compensano la luminosità dello schermo. 0 imposta questo valore automaticamente.",
"transcoding_transcode_policy": "Politica di transcodifica",
"transcoding_transcode_policy_description": "Politica che determina quando un video deve essere trascodificato. I video HDR verranno sempre trascodificati (eccetto quando la trascodifica è disabilitata).",
"transcoding_two_pass_encoding": "Codifica a due passaggi",
@@ -312,6 +331,7 @@
"trash_settings_description": "Gestisci impostazioni cestino",
"untracked_files": "File non tracciati",
"untracked_files_description": "Questi file non sono tracciati dall'applicazione. Potrebbero essere il risultato di spostamenti falliti, caricamenti interrotti o abbandonati a causa di un bug",
+ "user_cleanup_job": "Pulizia Utente",
"user_delete_delay": "L'account e gli asset dell'utente {user} verranno programmati per la cancellazione definitiva tra {delay, plural, one {# giorno} other {# giorni}}.",
"user_delete_delay_settings": "Ritardo eliminazione",
"user_delete_delay_settings_description": "Numero di giorni dopo l'eliminazione per cancellare in modo definitivo l'account e gli asset di un utente. Il processo di cancellazione dell'utente viene eseguito a mezzanotte per verificare se esistono utenti pronti a essere eliminati. Le modifiche a questa impostazioni saranno prese in considerazione dalla prossima esecuzione.",
@@ -363,22 +383,21 @@
"all_albums": "Tutti gli album",
"all_people": "Tutte le persone",
"all_videos": "Tutti i video",
- "allow_dark_mode": "Permetti tema scuro",
- "allow_edits": "Permetti modifiche",
- "allow_public_user_to_download": "Permetti di scaricare agli utenti pubblici",
- "allow_public_user_to_upload": "Permetti di caricare agli utenti pubblici",
- "anti_clockwise": "Senso antiorario",
+ "allow_dark_mode": "Permetti Tema Scuro",
+ "allow_edits": "Permetti Modifiche",
+ "allow_public_user_to_download": "Permetti agli utenti pubblici di scaricare",
+ "allow_public_user_to_upload": "Permetti agli utenti pubblici di caricare",
+ "anti_clockwise": "Senso Anti-Orario",
"api_key": "Chiave API",
"api_key_description": "Il campo verrà mostrato solo una volta. Abbi cura di copiarlo prima di chiudere la finestra.",
- "api_key_empty": "Il valore del nome dell'API Key non può essere vuoto",
+ "api_key_empty": "Il Nome dell'API Key non può essere vuoto",
"api_keys": "Chiavi API",
"app_settings": "Impostazioni Applicazione",
"appears_in": "Compare in",
"archive": "Archivio",
"archive_or_unarchive_photo": "Archivia o ripristina foto",
- "archive_size": "Dimensioni archivio",
+ "archive_size": "Dimensioni Archivio",
"archive_size_description": "Imposta le dimensioni dell'archivio per i download (in GiB)",
- "archived": "Archiviato",
"archived_count": "{count, plural, other {Archiviati #}}",
"are_these_the_same_person": "Sono la stessa persona?",
"are_you_sure_to_do_this": "Sei sicuro di voler procedere?",
@@ -387,9 +406,9 @@
"asset_description_updated": "La descrizione del media non è stata aggiornata",
"asset_filename_is_offline": "Il media {filename} è offline",
"asset_has_unassigned_faces": "Il media ha dei volti non categorizzati",
- "asset_hashing": "Hashing...",
- "asset_offline": "Risorsa offline",
- "asset_offline_description": "Il media è offline. Immich non è in grado di accedere al percorso del file. Assicurarsi che il media sia disponibile e riscansionare la libreria.",
+ "asset_hashing": "Hashing in corso ...",
+ "asset_offline": "Risorsa Offline",
+ "asset_offline_description": "Questo media non è stato trovato nel disco. Contatta il tuo amministratore di Immich per assistenza.",
"asset_skipped": "Saltato",
"asset_skipped_in_trash": "In cestino",
"asset_uploaded": "Caricato",
@@ -399,11 +418,10 @@
"assets_added_to_album_count": "{count, plural, one {# asset aggiunto} other {# asset aggiunti}} all'album",
"assets_added_to_name_count": "Aggiunti {count, plural, one {# asset} other {# assets}} a {hasName, select, true {{name}} other {new album}}",
"assets_count": "{count, plural, other {# asset}}",
- "assets_moved_to_trash": "{count, plural, one {Spostato # asset} other {Spostati # asset}} nel cestino",
"assets_moved_to_trash_count": "{count, plural, one {# asset spostato} other {# asset spostati}} nel cestino",
"assets_permanently_deleted_count": "{count, plural, one {# asset cancellato} other {# asset cancellati}} definitivamente",
"assets_removed_count": "{count, plural, one {# asset rimosso} other {# asset rimossi}}",
- "assets_restore_confirmation": "Sei sicuro di voler ripristinare tutti gli asset cancellati? Non puoi annullare questa azione!",
+ "assets_restore_confirmation": "Sei sicuro di voler ripristinare tutti gli asset cancellati? Non puoi annullare questa azione! Tieni presente che eventuali risorse offline NON possono essere ripristinate in questo modo.",
"assets_restored_count": "{count, plural, one {# asset ripristinato} other {# asset ripristinati}}",
"assets_trashed_count": "{count, plural, one {Spostato # asset} other {Spostati # assets}} nel cestino",
"assets_were_part_of_album_count": "{count, plural, one {L'asset era} other {Gli asset erano}} già parte dell'album",
@@ -414,6 +432,7 @@
"birthdate_saved": "Data di nascita salvata con successo",
"birthdate_set_description": "La data di nascita è usata per calcolare l'età di questa persona nel momento dello scatto della foto.",
"blurred_background": "Sfondo sfocato",
+ "bugs_and_feature_requests": "Bug & Richieste di nuove funzionalità",
"build": "Compilazione",
"build_image": "Compila Immagine",
"bulk_delete_duplicates_confirmation": "Sei sicuro di voler cancellare {count, plural, one {# asset duplicato} other {# assets duplicati}}? Questa operazione manterrà l'asset più pesante di ogni gruppo e cancellerà permanentemente tutti gli altri duplicati. Non puoi annullare questa operazione!",
@@ -428,10 +447,6 @@
"cannot_merge_people": "Impossibile unire le persone",
"cannot_undo_this_action": "Non puoi annullare questa azione!",
"cannot_update_the_description": "Impossibile aggiornare la descrizione",
- "cant_apply_changes": "Impossibile applicare le modifiche",
- "cant_get_faces": "Impossibile caricare i volti",
- "cant_search_people": "Impossibile cercare le persone",
- "cant_search_places": "Impossibile cercare i luoghi",
"change_date": "Modifica data",
"change_expiration_time": "Modifica tempo di scadenza",
"change_location": "Modifica posizione",
@@ -463,6 +478,7 @@
"confirm": "Conferma",
"confirm_admin_password": "Conferma password amministratore",
"confirm_delete_shared_link": "Sei sicuro di voler eliminare questo link condiviso?",
+ "confirm_keep_this_delete_others": "Tutti gli altri asset nello stack saranno eliminati, eccetto questo asset. Vuoi continuare?",
"confirm_password": "Conferma password",
"contain": "Adatta",
"context": "Contesto",
@@ -510,45 +526,42 @@
"delete_api_key_prompt": "Sei sicuro di voler eliminare questa chiave API?",
"delete_duplicates_confirmation": "Sei sicuro di voler eliminare questi duplicati per sempre?",
"delete_key": "Elimina chiave",
- "delete_library": "Elimina libreria",
+ "delete_library": "Elimina Libreria",
"delete_link": "Elimina link",
+ "delete_others": "Elimina gli altri",
"delete_shared_link": "Elimina link condiviso",
"delete_tag": "Elimina tag",
"delete_tag_confirmation_prompt": "Sei sicuro di voler cancellare il tag {tagName}?",
"delete_user": "Elimina utente",
"deleted_shared_link": "Elimina link condiviso",
+ "deletes_missing_assets": "Cancella gli asset mancanti dal disco",
"description": "Descrizione",
"details": "Dettagli",
"direction": "Direzione",
"disabled": "Disabilitato",
"disallow_edits": "Blocca modifiche",
+ "discord": "Discord",
"discover": "Scopri",
"dismiss_all_errors": "Ignora tutti gli errori",
"dismiss_error": "Ignora errore",
"display_options": "Impostazioni visualizzazione",
- "display_order": "Ordine visualizzazione",
+ "display_order": "Ordine di visualizzazione",
"display_original_photos": "Visualizza foto originali",
"display_original_photos_setting_description": "Visualizza la foto originale anziché le miniature quando l'asset originale è compatibile con il web. Questo potrebbe causare un ritardo nella visualizzazione delle foto.",
- "do_not_show_again": "Non mostrare questo messaggio di nuovo",
+ "do_not_show_again": "Non mostrare più questo messaggio",
+ "documentation": "Documentazione",
"done": "Fatto",
"download": "Scarica",
"download_include_embedded_motion_videos": "Video incorporati",
"download_include_embedded_motion_videos_description": "Includere i video incorporati nelle foto in movimento come file separato",
"download_settings": "Scarica",
- "download_settings_description": "Gestisci le impostazioni relative al download degli asset",
+ "download_settings_description": "Gestisci le impostazioni relative al download delle risorse",
"downloading": "Scaricando",
- "downloading_asset_filename": "Scaricando l'asset {filename}",
+ "downloading_asset_filename": "Scaricando la risorsa {filename}",
"drop_files_to_upload": "Rilascia i file ovunque per caricarli",
"duplicates": "Duplicati",
"duplicates_description": "Risolvi ciascun gruppo indicando quali sono, se esistono, i duplicati",
"duration": "Durata",
- "durations": {
- "days": "{days, plural, one {giorno} other {{days, number} giorni}}",
- "hours": "{hours, plural, one {ora} other {{hours, number} ore}}",
- "minutes": "{minutes, plural, one {minuto} other {{minutes, number} minuti}}",
- "months": "{months, plural, one {mese} other {{months, number} mesi}}",
- "years": "{years, plural, one {anno} other {{years, number} anni}}"
- },
"edit": "Modifica",
"edit_album": "Modifica album",
"edit_avatar": "Modifica avatar",
@@ -573,10 +586,8 @@
"editor_crop_tool_h2_aspect_ratios": "Proporzioni",
"editor_crop_tool_h2_rotation": "Rotazione",
"email": "Email",
- "empty": "",
- "empty_album": "Album Vuoto",
"empty_trash": "Svuota cestino",
- "empty_trash_confirmation": "Sei sicuro di volere svuotare il cestino? Questo rimuoverà tutti gli asset nel cestino in modo permanente da Immich.\nNon puoi annullare questa azione!",
+ "empty_trash_confirmation": "Sei sicuro di volere svuotare il cestino? Questo rimuoverà tutte le risorse nel cestino in modo permanente da Immich.\nNon puoi annullare questa azione!",
"enable": "Abilita",
"enabled": "Abilitato",
"end_date": "Data Fine",
@@ -584,8 +595,8 @@
"error_loading_image": "Errore nel caricamento dell'immagine",
"error_title": "Errore - Qualcosa è andato storto",
"errors": {
- "cannot_navigate_next_asset": "Impossibile passare all'asset successivo",
- "cannot_navigate_previous_asset": "Impossibile passare all'asset precedente",
+ "cannot_navigate_next_asset": "Impossibile passare alla risorsa successiva",
+ "cannot_navigate_previous_asset": "Impossibile passare alla risorsa precedente",
"cant_apply_changes": "Impossibile applicare le modifiche",
"cant_change_activity": "Impossibile {enabled, select, true {disabilitare} other {abilitare}} l'attività",
"cant_change_asset_favorite": "Impossibile cambiare il preferito per l'asset",
@@ -593,24 +604,25 @@
"cant_get_faces": "Impossibile ottenere i volti",
"cant_get_number_of_comments": "Impossibile ottenere il numero di commenti",
"cant_search_people": "Impossibile cercare persone",
- "cant_search_places": "Impossibile cercare posti",
- "cleared_jobs": "Puliti i processi per: {job}",
- "error_adding_assets_to_album": "Errore aggiungendo gli asset all'album",
+ "cant_search_places": "Impossibile cercare luoghi",
+ "cleared_jobs": "Eliminati i processi per: {job}",
+ "error_adding_assets_to_album": "Errore aggiungendo le risorse all'album",
"error_adding_users_to_album": "Errore aggiungendo gli utenti all'album",
"error_deleting_shared_user": "Errore durante la cancellazione dell'utente condiviso",
"error_downloading": "Errore scaricando {filename}",
"error_hiding_buy_button": "Errore nel nascondere il pulsante di acquisto",
- "error_removing_assets_from_album": "Errore rimuovendo gli asset dall'album, controlla la console per ulteriori dettagli",
- "error_selecting_all_assets": "Errore selezionando tutti gli asset",
- "exclusion_pattern_already_exists": "Questo pattern di esclusione già esiste.",
+ "error_removing_assets_from_album": "Errore rimuovendo le risorse dall'album, controlla la console per ulteriori dettagli",
+ "error_selecting_all_assets": "Errore selezionando tutte le risorse",
+ "exclusion_pattern_already_exists": "Questo pattern di esclusione è già presente.",
"failed_job_command": "Il comando {command} è fallito per il processo: {job}",
"failed_to_create_album": "Creazione dell'album non riuscita",
- "failed_to_create_shared_link": "Creazione del link condiviso non riuscita",
- "failed_to_edit_shared_link": "Errore durante la modifica del link condiviso",
+ "failed_to_create_shared_link": "Creazione del link condivisibile non riuscita",
+ "failed_to_edit_shared_link": "Errore durante la modifica del link condivisibile",
"failed_to_get_people": "Impossibile ottenere le persone",
- "failed_to_load_asset": "Errore durante il caricamento dell'asset",
- "failed_to_load_assets": "Errore durante il caricamento degli assets",
- "failed_to_load_people": "Caricamento delle persone fallito",
+ "failed_to_keep_this_delete_others": "Impossibile conservare questa risorsa ed eliminare le altre risorse",
+ "failed_to_load_asset": "Errore durante il caricamento della risorsa",
+ "failed_to_load_assets": "Errore durante il caricamento delle risorse",
+ "failed_to_load_people": "Caricamento delle persone non riuscito",
"failed_to_remove_product_key": "Rimozione del codice del prodotto fallita",
"failed_to_stack_assets": "Errore durante il raggruppamento degli assets",
"failed_to_unstack_assets": "Errore durante la separazione degli assets",
@@ -635,8 +647,6 @@
"unable_to_change_location": "Impossibile modificare posizione",
"unable_to_change_password": "Impossibile modificare password",
"unable_to_change_visibility": "Errore durante la modifica della visibilità per {count, plural, one {# persona} other {# persone}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "Errore durante l'accesso tramite OAuth",
"unable_to_connect": "Impossibile connettersi",
"unable_to_connect_to_server": "Impossibile connettersi al server",
@@ -661,6 +671,7 @@
"unable_to_get_comments_number": "Impossibile ottenere il numero di commenti",
"unable_to_get_shared_link": "Impossibile ottenere il link condiviso",
"unable_to_hide_person": "Impossibile nascondere persona",
+ "unable_to_link_motion_video": "Impossibile collegare video in movimento",
"unable_to_link_oauth_account": "Impossibile collegare l'account OAuth",
"unable_to_load_album": "Impossibile caricare l'album",
"unable_to_load_asset_activity": "Impossibile caricare l'attività dell'asset",
@@ -676,12 +687,10 @@
"unable_to_remove_album_users": "Impossibile rimuovere gli utenti dall'album",
"unable_to_remove_api_key": "Impossibile rimuovere la chiave API",
"unable_to_remove_assets_from_shared_link": "Errore durante la rimozione degli assets da un link condiviso",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "Impossibile rimuovere i file offline",
"unable_to_remove_library": "Impossibile rimuovere libreria",
- "unable_to_remove_offline_files": "Impossibile rimuovere i file offline",
"unable_to_remove_partner": "Impossibile rimuovere compagno",
"unable_to_remove_reaction": "Impossibile rimuovere reazione",
- "unable_to_remove_user": "",
"unable_to_repair_items": "Impossibile riparare elementi",
"unable_to_reset_password": "Impossibile reimpostare la password",
"unable_to_resolve_duplicate": "Impossibile risolvere duplicato",
@@ -701,6 +710,7 @@
"unable_to_submit_job": "Impossibile eseguire l'attività",
"unable_to_trash_asset": "Impossibile cestinare l'asset",
"unable_to_unlink_account": "Impossibile scollegare l'account",
+ "unable_to_unlink_motion_video": "Impossibile scollegare video in movimento",
"unable_to_update_album_cover": "Errore durante l'aggiornamento della copertina dell'album",
"unable_to_update_album_info": "Impossibile aggiornare le informazioni sull'album",
"unable_to_update_library": "Impossibile aggiornare la libreria",
@@ -710,10 +720,6 @@
"unable_to_update_user": "Impossibile aggiornare l'utente",
"unable_to_upload_file": "Impossibile caricare il file"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Exif",
"exit_slideshow": "Esci dalla presentazione",
"expand_all": "Espandi tutto",
@@ -728,33 +734,28 @@
"external": "Esterno",
"external_libraries": "Librerie esterne",
"face_unassigned": "Non assegnata",
- "failed_to_get_people": "Impossibile recuperare persone",
+ "failed_to_load_assets": "Impossibile caricare gli asset",
"favorite": "Preferito",
"favorite_or_unfavorite_photo": "Aggiungi o rimuovi foto da preferiti",
"favorites": "Preferiti",
- "feature": "",
"feature_photo_updated": "Foto in evidenza aggiornata",
- "featurecollection": "",
"features": "Funzionalità",
"features_setting_description": "Gestisci le funzionalità dell'app",
"file_name": "Nome file",
"file_name_or_extension": "Nome file o estensione",
"filename": "Nome file",
- "files": "",
"filetype": "Tipo file",
"filter_people": "Filtra persone",
"find_them_fast": "Trovale velocemente con la ricerca",
"fix_incorrect_match": "Correggi corrispondenza errata",
"folders": "Cartelle",
"folders_feature_description": "Navigare la visualizzazione a cartelle per le foto e i video sul file system",
- "force_re-scan_library_files": "Forza nuova scansione di tutti i file della libreria",
"forward": "Avanti",
"general": "Generale",
"get_help": "Chiedi Aiuto",
"getting_started": "Iniziamo",
"go_back": "Torna indietro",
"go_to_search": "Vai alla ricerca",
- "go_to_share_page": "Vai alla pagina condivisione",
"group_albums_by": "Raggruppa album in base a...",
"group_no": "Nessun raggruppamento",
"group_owner": "Raggruppa in base al proprietario",
@@ -780,10 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video girato} other {Foto scattata}} a {city}, {country} con {person1} e {person2} il giorno {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video girato} other {Foto scattata}} a {city}, {country} con {person1}, {person2}, e {person3} il giorno {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video girato} other {Foto scattata}} a {city}, {country} con {person1}, {person2} e {additionalCount, number} altre persone il {date}",
- "image_alt_text_people": "{count, plural, =1 {con {person1}} =2 {con {person1} e {person2}} =3 {con {person1}, {person2} e {person3}} other {con {person1}, {person2} e {others, number} altri}}",
- "image_alt_text_place": "a {city}, {country}",
- "image_taken": "{isVideo, select, true {Video registrato} other {Immagine scattata}}",
- "img": "",
"immich_logo": "Logo Immich",
"immich_web_interface": "Interfaccia Web Immich",
"import_from_json": "Importa da JSON",
@@ -804,10 +801,11 @@
"invite_people": "Invita Persone",
"invite_to_album": "Invita nell'album",
"items_count": "{count, plural, one {# elemento} other {# elementi}}",
- "job_settings_description": "",
"jobs": "Processi",
"keep": "Mantieni",
"keep_all": "Tieni tutto",
+ "keep_this_delete_others": "Tieni questo, elimina gli altri",
+ "kept_this_deleted_others": "Mantenuto questo asset ed eliminati {count, plural, one {# asset} other {# assets}}",
"keyboard_shortcuts": "Scorciatoie da tastiera",
"language": "Lingua",
"language_setting_description": "Seleziona la tua lingua predefinita",
@@ -819,31 +817,6 @@
"level": "Livello",
"library": "Libreria",
"library_options": "Impostazioni Libreria",
- "license_account_info": "Il tuo account è attivo",
- "license_activated_subtitle": "Grazie per supportare Immich e il software open-source",
- "license_activated_title": "La tua licenza è stata attivata con successo",
- "license_button_activate": "Attiva",
- "license_button_buy": "Sborsa",
- "license_button_buy_license": "Sborsa per la Licenza",
- "license_button_select": "Seleziona",
- "license_failed_activation": "Attivazione licenza fallita. Per favore controlla la tua email per la chiave di licenza corretta!",
- "license_individual_description_1": "1 licenza per utente su qualsiasi server",
- "license_individual_title": "Licenza Individuale",
- "license_info_licensed": "Con Licenza",
- "license_info_unlicensed": "Senza Licenza",
- "license_input_suggestion": "Hai una licenza? Inserisci la chiave qua sotto",
- "license_license_subtitle": "Sborsa per una licenza per sopportare Immich",
- "license_license_title": "LICENZA",
- "license_lifetime_description": "Licenza Lifetime",
- "license_per_server": "Per server",
- "license_per_user": "Per utente",
- "license_server_description_1": "1 licenza per server",
- "license_server_description_2": "Licenza per tutti gli utenti sul server",
- "license_server_title": "Licenza Server",
- "license_trial_info_1": "Stai eseguendo una versione di Immich senza licenza",
- "license_trial_info_2": "Stai usando Immich basatamente da circa",
- "license_trial_info_3": "{accountAge, plural, one {# day} other {# days}}",
- "license_trial_info_4": "Per favore considera sborsare soldi per una licenza e per sopportare il continuo sviluppo del servizio",
"light": "Chiaro",
"like_deleted": "Mi piace rimosso",
"link_motion_video": "Collega video in movimento",
@@ -865,6 +838,7 @@
"look": "Guarda",
"loop_videos": "Riproduci video in loop",
"loop_videos_description": "Abilita per riprodurre automaticamente un video in loop nella vista dettagli.",
+ "main_branch_warning": "Stai usando una versione di sviluppo. Consigliamo vivamente di utilizzare una versione di rilascio!",
"make": "Produttore",
"manage_shared_links": "Gestisci link condivisi",
"manage_sharing_with_partners": "Gestisci la condivisione con i compagni",
@@ -934,6 +908,7 @@
"notifications": "Notifiche",
"notifications_setting_description": "Gestisci notifiche",
"oauth": "OAuth",
+ "official_immich_resources": "Risorse Ufficiali Immich",
"offline": "Offline",
"offline_paths": "Percorsi offline",
"offline_paths_description": "Questi risultati potrebbero essere causati dall'eliminazione manuale di file che non fanno parte di una libreria esterna.",
@@ -946,7 +921,6 @@
"onboarding_welcome_user": "Benvenuto, {user}",
"online": "Online",
"only_favorites": "Solo preferiti",
- "only_refreshes_modified_files": "Aggiorna solo i file modificati",
"open_in_map_view": "Apri nella visualizzazione mappa",
"open_in_openstreetmap": "Apri su OpenStreetMap",
"open_the_search_filters": "Apri filtri di ricerca",
@@ -984,29 +958,27 @@
"people_edits_count": "{count, plural, one {Modificata # persona} other {Modificate # persone}}",
"people_feature_description": "Navigare foto e video raggruppati da persone",
"people_sidebar_description": "Mostra un link alle persone nella barra laterale",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Avviso eliminazione permanente",
"permanent_deletion_warning_setting_description": "Mostra un avviso all'eliminazione definitiva di un asset",
"permanently_delete": "Elimina definitivamente",
"permanently_delete_assets_count": "Cancella definitivamente {count, plural, one {l'asset} other {gli assets}}",
"permanently_delete_assets_prompt": "Sei sicuro di voler cancellare definitivamente {count, plural, one {questo asset?} other {# assets?}} Questa operazione {count, plural, one {lo cancellerà dal suo} other {li cancellerà dai loro}} album.",
- "permanently_deleted_asset": "Elimina asset definitivamente",
+ "permanently_deleted_asset": "Asset eliminato definitivamente",
"permanently_deleted_assets_count": "Cancellati {count, plural, one {# asset} other {# assets}} definitivamente",
"person": "Persona",
"person_hidden": "{name}{hidden, select, true { (nascosto)} other {}}",
- "photo_shared_all_users": "Sembra che tu abbia condiviso le foto con tutti gli utenti (oppure non hai utenti con cui condividerle).",
+ "photo_shared_all_users": "Sembra che tu abbia condiviso le foto con tutti gli utenti, oppure che non ci siano utenti con i quali condividerle.",
"photos": "Foto",
"photos_and_videos": "Foto & Video",
"photos_count": "{count, plural, one {{count, number} Foto} other {{count, number} Foto}}",
"photos_from_previous_years": "Foto degli anni scorsi",
"pick_a_location": "Scegli una posizione",
"place": "Posizione",
- "places": "Location",
+ "places": "Luoghi",
"play": "Avvia",
"play_memories": "Avvia ricordi",
"play_motion_photo": "Avvia Foto in movimento",
"play_or_pause_video": "Avvia o metti in pausa il video",
- "point": "",
"port": "Porta",
"preset": "Preimpostazione",
"preview": "Anteprima",
@@ -1051,12 +1023,10 @@
"purchase_server_description_2": "Stato di Contributore",
"purchase_server_title": "Server",
"purchase_settings_server_activated": "La chiave del prodotto del server è gestita dall'amministratore",
- "range": "",
"rating": "Valutazione a stelle",
"rating_clear": "Crea valutazione",
"rating_count": "{count, plural, one {# stella} other {# stelle}}",
"rating_description": "Visualizza la valutazione EXIF nel pannello informazioni",
- "raw": "",
"reaction_options": "Impostazioni Reazioni",
"read_changelog": "Leggi Riepilogo Modifiche",
"reassign": "Riassegna",
@@ -1064,14 +1034,17 @@
"reassigned_assets_to_new_person": "{count, plural, one {Riassegnato # asset} other {Riassegnati # assets}} ad una nuova persona",
"reassing_hint": "Assegna gli assets selezionati ad una persona esistente",
"recent": "Recenti",
+ "recent-albums": "Album recenti",
"recent_searches": "Ricerche recenti",
"refresh": "Aggiorna",
"refresh_encoded_videos": "Ricarica video codificati",
+ "refresh_faces": "Aggiorna facce",
"refresh_metadata": "Ricarica metadati",
"refresh_thumbnails": "Ricarica anteprime",
"refreshed": "Aggiornato",
- "refreshes_every_file": "Aggiorna ogni file",
+ "refreshes_every_file": "Rilegge tutti i file esistenti e nuovi",
"refreshing_encoded_video": "Ricaricando il video codificato",
+ "refreshing_faces": "Aggiorna Facce",
"refreshing_metadata": "Ricaricando i metadati",
"regenerating_thumbnails": "Rigenerando le anteprime",
"remove": "Rimuovi",
@@ -1079,10 +1052,11 @@
"remove_assets_shared_link_confirmation": "Sei sicuro di voler rimuovere {count, plural, one {# asset} other {# asset}} da questo link condiviso?",
"remove_assets_title": "Rimuovere asset?",
"remove_custom_date_range": "Rimuovi intervallo data personalizzato",
+ "remove_deleted_assets": "Rimuovi file offline",
"remove_from_album": "Rimuovere dall'album",
"remove_from_favorites": "Rimuovi dai preferiti",
"remove_from_shared_link": "Rimuovi dal link condiviso",
- "remove_offline_files": "Rimuovi file offline",
+ "remove_url": "Rimuovi URL",
"remove_user": "Rimuovi utente",
"removed_api_key": "Rimossa chiave API: {name}",
"removed_from_archive": "Rimosso dall'archivio",
@@ -1099,7 +1073,6 @@
"reset": "Ripristina",
"reset_password": "Ripristina password",
"reset_people_visibility": "Ripristina visibilità persone",
- "reset_settings_to_default": "",
"reset_to_default": "Ripristina i valori predefiniti",
"resolve_duplicates": "Risolvi duplicati",
"resolved_all_duplicates": "Tutti i duplicati sono stati risolti",
@@ -1119,8 +1092,7 @@
"saved_settings": "Impostazioni salvate",
"say_something": "Dici qualcosa",
"scan_all_libraries": "Analizza tutte le librerie",
- "scan_all_library_files": "Scansiona nuovamente tutti i file della libreria",
- "scan_new_library_files": "Analizza i File Nuovi della Libreria",
+ "scan_library": "Scansione",
"scan_settings": "Impostazioni Analisi",
"scanning_for_album": "Sto cercando l'album...",
"search": "Cerca",
@@ -1138,6 +1110,7 @@
"search_options": "Opzioni Ricerca",
"search_people": "Cerca persone",
"search_places": "Cerca luoghi",
+ "search_settings": "Cerca Impostazioni",
"search_state": "Cerca stato...",
"search_tags": "Cerca tag...",
"search_timezone": "Cerca fuso orario...",
@@ -1162,7 +1135,6 @@
"selected_count": "{count, plural, one {# selezionato} other {# selezionati}}",
"send_message": "Manda messaggio",
"send_welcome_email": "Invia email di benvenuto",
- "server": "Server",
"server_offline": "Server Offline",
"server_online": "Server Online",
"server_stats": "Statistiche Server",
@@ -1205,6 +1177,7 @@
"show_person_options": "Mostra opzioni persona",
"show_progress_bar": "Mostra Barra Avanzamento",
"show_search_options": "Mostra impostazioni di ricerca",
+ "show_slideshow_transition": "Mostra la transizione della presentazione",
"show_supporter_badge": "Medaglia di Contributore",
"show_supporter_badge_description": "Mostra la medaglia di contributore",
"shuffle": "Casuale",
@@ -1246,13 +1219,16 @@
"submit": "Invia",
"suggestions": "Suggerimenti",
"sunrise_on_the_beach": "Tramonto sulla spiaggia",
+ "support": "Supporto",
+ "support_and_feedback": "Supporto & Feedback",
+ "support_third_party_description": "La tua installazione di Immich è stata costruita da terze parti. I problemi che riscontri potrebbero essere causati da altri pacchetti, quindi ti preghiamo di sollevare il problema in prima istanza utilizzando i link sottostanti.",
"swap_merge_direction": "Scambia direzione di unione",
"sync": "Sincronizza",
"tag": "Tag",
"tag_assets": "Tagga risorse",
"tag_created": "Tag creata: {tag}",
"tag_feature_description": "Navigazione foto e video raggruppati per argomenti tag logici",
- "tag_not_found_question": "Non riesci a trovare una tag? Creane una qui",
+ "tag_not_found_question": "Non riesci a trovare un tag? Creane uno nuovo.",
"tag_updated": "Tag {tag} aggiornata",
"tagged_assets": "{count, plural, one {# asset etichettato} other {# asset etichettati}}",
"tags": "Tag",
@@ -1261,18 +1237,19 @@
"theme_selection": "Selezione tema",
"theme_selection_description": "Imposta automaticamente il tema chiaro o scuro in base all'impostazione del tuo browser",
"they_will_be_merged_together": "Verranno uniti insieme",
+ "third_party_resources": "Risorse di Terze Parti",
"time_based_memories": "Ricordi basati sul tempo",
+ "timeline": "Linea temporale",
"timezone": "Fuso orario",
"to_archive": "Archivio",
"to_change_password": "Modifica password",
"to_favorite": "Preferito",
"to_login": "Login",
"to_parent": "Sali di un livello",
- "to_root": "Alla radice",
"to_trash": "Cancella",
"toggle_settings": "Attiva/disattiva impostazioni",
"toggle_theme": "Abilita tema scuro",
- "toggle_visibility": "Cambia visibilità",
+ "total": "Totale",
"total_usage": "Utilizzo totale",
"trash": "Cestino",
"trash_all": "Cestina Tutto",
@@ -1282,14 +1259,13 @@
"trashed_items_will_be_permanently_deleted_after": "Gli elementi cestinati saranno eliminati definitivamente dopo {days, plural, one {# giorno} other {# giorni}}.",
"type": "Tipo",
"unarchive": "Annulla l'archiviazione",
- "unarchived": "Rimosso dall'archivio",
"unarchived_count": "{count, plural, other {Non archiviati #}}",
"unfavorite": "Rimuovi preferito",
"unhide_person": "Mostra persona",
"unknown": "Sconosciuto",
- "unknown_album": "Album sconosciuto",
"unknown_year": "Anno sconosciuto",
"unlimited": "Illimitato",
+ "unlink_motion_video": "Scollega video in movimento",
"unlink_oauth": "Scollega OAuth",
"unlinked_oauth_account": "Scollega account OAuth",
"unnamed_album": "Album senza nome",
@@ -1318,13 +1294,13 @@
"use_custom_date_range": "Altrimenti utilizza un intervallo date personalizzato",
"user": "Utente",
"user_id": "ID utente",
- "user_license_settings": "Licenza",
- "user_license_settings_description": "Gestisci la tua licenza",
"user_liked": "A {user} piace {type, select, photo {questa foto} video {questo video} asset {questo asset} other {questo elemento}}",
"user_purchase_settings": "Acquisto",
"user_purchase_settings_description": "Gestisci il tuo acquisto",
"user_role_set": "Imposta {user} come {role}",
"user_usage_detail": "Dettagli utilizzo utente",
+ "user_usage_stats": "Statistiche d'uso",
+ "user_usage_stats_description": "Consulta le statistiche d'uso dell'account",
"username": "Nome utente",
"users": "Utenti",
"utilities": "Utilità",
@@ -1332,7 +1308,9 @@
"variables": "Variabili",
"version": "Versione",
"version_announcement_closing": "Il tuo amico, Alex",
- "version_announcement_message": "Ehilà! È stata rilasciata una nuova versione dell'applicazione. Leggi le note di rilascio e assicurati che i tuoi file docker-compose.yml/.env siano aggiornati per evitare problemi e incongruenze, soprattutto se utilizzi WatchTower o altri strumenti per aggiornare l'applicazione in automatico.",
+ "version_announcement_message": "Ehilà! È stata rilasciata una nuova versione di Immich. Leggi le note di rilascio e assicurati che i tuoi file docker-compose.yml/.env siano aggiornati per evitare problemi e incongruenze, soprattutto se utilizzi WatchTower o altri strumenti per aggiornare Immich in automatico.",
+ "version_history": "Storico delle Versioni",
+ "version_history_item": "Versione installata {version} il {date}",
"video": "Video",
"video_hover_setting": "Riproduci l'anteprima del video al passaggio del mouse",
"video_hover_setting_description": "Riproduci miniatura video quando il mouse passa sopra l'elemento. Anche se disabilitato, la riproduzione può essere avviata passando con il mouse sopra l'icona riproduci.",
@@ -1344,16 +1322,16 @@
"view_all_users": "Visualizza tutti gli utenti",
"view_in_timeline": "Visualizza in timeline",
"view_links": "Visualizza i link",
+ "view_name": "Visualizza",
"view_next_asset": "Visualizza risorsa successiva",
"view_previous_asset": "Visualizza risorsa precedente",
"view_stack": "Visualizza Raggruppamento",
- "viewer": "Visualizzatore",
"visibility_changed": "Visibilità modificata per {count, plural, one {# persona} other {# persone}}",
"waiting": "In Attesa",
"warning": "Attenzione",
"week": "Settimana",
"welcome": "Benvenuto",
- "welcome_to_immich": "Benvenuto in immich",
+ "welcome_to_immich": "Benvenuto in Immich",
"year": "Anno",
"years_ago": "{years, plural, one {# anno} other {# anni}} fa",
"yes": "Si",
diff --git a/web/src/lib/i18n/ja.json b/i18n/ja.json
similarity index 95%
rename from web/src/lib/i18n/ja.json
rename to i18n/ja.json
index 017d52fb30..0eb2c880f1 100644
--- a/web/src/lib/i18n/ja.json
+++ b/i18n/ja.json
@@ -41,9 +41,7 @@
"confirm_email_below": "確認のため、以下に \"{email}\" と入力してください",
"confirm_reprocess_all_faces": "本当にすべての顔を再処理しますか? これにより名前が付けられた人物も消去されます。",
"confirm_user_password_reset": "本当に {user} のパスワードをリセットしますか?",
- "crontab_guru": "Crontab Guru",
"disable_login": "ログインを無効にする",
- "disabled": "",
"duplicate_detection_job_description": "機械学習を用いて類似画像の検出を行います。(スマートサーチに依存)",
"exclusion_pattern_description": "除外パターンを使用すると、ライブラリをスキャンする際にファイルやフォルダを無視することができます。RAWファイルなど、インポートしたくないファイルを含むフォルダがある場合に便利です。",
"external_library_created_at": "外部ライブラリ(作成日:{date})",
@@ -59,16 +57,9 @@
"image_prefer_embedded_preview_setting_description": "RAW写真の埋め込みプレビューが利用可能な場合に画像処理の入力として使用します。これにより、いくつかの画像でより正確な色を得ることができますが、プレビューの品質はカメラによって異なり、画像により多くの圧縮アーティファクトが含まれる場合があります。",
"image_prefer_wide_gamut": "広色域に対応させる",
"image_prefer_wide_gamut_setting_description": "サムネイルにはDisplay P3を使用します。これにより、広色域の画像の鮮やかさをよりよく保つことができますが、古いデバイスや古いブラウザバージョンでは画像が異なって見える場合があります。sRGBの画像は、色の変化を避けるためにsRGBのままにします。",
- "image_preview_format": "プレビューのファイル形式",
- "image_preview_resolution": "プレビュー解像度",
- "image_preview_resolution_description": "単一写真のプレビューや機械学習で使用する解像度を設定します。解像度を高くすると細かなディテールを保持できますが、エンコードに時間がかかり、ファイルサイズが大きくなり、アプリの応答性が低下する可能性があります。",
"image_quality": "品質",
- "image_quality_description": "画像の品質を1から100の範囲で設定します。数値が高いほど品質が良くなりますが、ファイルサイズも大きくなります。このオプションは、プレビュー画像とサムネイル画像に影響します。",
"image_settings": "画像設定",
"image_settings_description": "生成される画像の品質と解像度の設定",
- "image_thumbnail_format": "サムネイルフォーマット",
- "image_thumbnail_resolution": "サムネイル解像度",
- "image_thumbnail_resolution_description": "複数の写真を閲覧する際(タイムライン、アルバムビューなど)に使用されます。解像度を高くすると細かなディテールを保持できますが、エンコードに時間がかかり、ファイルサイズが大きくなり、アプリの応答性が低下する可能性があります。",
"job_concurrency": "{job} の同時実行数",
"job_not_concurrency_safe": "このジョブは安全に同時実行できません。",
"job_settings": "ジョブ設定",
@@ -77,9 +68,6 @@
"jobs_delayed": "{jobCount, plural, other {#件}}の遅延",
"jobs_failed": "{jobCount, plural, other {#件}}の失敗",
"library_created": "作成されたライブラリ:{library}",
- "library_cron_expression": "Cron表記",
- "library_cron_expression_description": "cron形式を使用してスキャン間隔を設定します。 詳細については、Crontab Guru などを参照してください",
- "library_cron_expression_presets": "Cron表記プリセット",
"library_deleted": "ライブラリは削除されました",
"library_import_path_description": "インポートするフォルダを指定します。このフォルダはサブフォルダを含めて、画像と動画のスキャンが行われます。",
"library_scanning": "定期スキャン",
@@ -148,7 +136,7 @@
"note_cannot_be_changed_later": "注意: 後から変更できません!",
"note_unlimited_quota": "注意: 無制限にする場合は0を入力してください",
"notification_email_from_address": "送信メールアドレス",
- "notification_email_from_address_description": "送信メールアドレスを設定します(例: \"Immich Photo Server {label}",
"system_settings": "시스템 설정",
+ "tag_cleanup_job": "태그 정리",
"theme_custom_css_settings": "사용자 정의 CSS",
"theme_custom_css_settings_description": "Immich에 적용할 사용자 정의 CSS(Cascading Style Sheets) 설정",
"theme_settings": "테마 설정",
"theme_settings_description": "Immich 웹 인터페이스 사용자 정의",
- "these_files_matched_by_checksum": "동일한 체크섬을 가진 파일 목록입니다.",
+ "these_files_matched_by_checksum": "체크섬이 동일한 파일 목록입니다.",
"thumbnail_generation_job": "섬네일 생성",
"thumbnail_generation_job_description": "각 항목에 대한 큰 섬네일, 작은 섬네일, 흐린 섬네일 및 인물 섬네일 생성",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "가속 API",
"transcoding_acceleration_api_description": "트랜스코딩 가속을 위해 기기와 상호 작용할 API입니다. 이 설정은 '최선의 노력'으로, 실패 시 소프트웨어 트랜스코딩을 사용합니다. VP9의 작동 여부는 하드웨어에 따라 달라질 수 있습니다.",
"transcoding_acceleration_nvenc": "NVENC (NVIDIA GPU 필요)",
@@ -258,7 +270,7 @@
"transcoding_audio_codec": "오디오 코덱",
"transcoding_audio_codec_description": "Opus는 가장 좋은 품질의 옵션이지만 기기 및 소프트웨어가 오래된 경우 호환되지 않을 수 있습니다.",
"transcoding_bitrate_description": "최대 비트레이트를 초과하는 동영상 또는 허용되지 않는 형식의 동영상",
- "transcoding_codecs_learn_more": "이곳에서 사용되는 용어에 대한 자세한 내용은 FFmpeg 문서의 docker-compose.yml 및 .env 구성이 최신인지 확인하세요.",
+ "version_history": "버전 기록",
+ "version_history_item": "{date} 버전 {version} 설치",
"video": "동영상",
"video_hover_setting": "마우스 오버 재생",
"video_hover_setting_description": "마우스를 동영상 위에 올리면 재생이 시작됩니다. 비활성화된 경우에도 재생 아이콘에 마우스를 올리면 재생이 시작됩니다.",
@@ -1316,12 +1296,11 @@
"view_all": "모두 보기",
"view_all_users": "모든 사용자 보기",
"view_in_timeline": "타임라인에서 보기",
- "view_links": "링크 보기",
+ "view_links": "링크 확인",
"view_next_asset": "다음 항목 보기",
"view_previous_asset": "이전 항목 보기",
"view_stack": "스택 보기",
- "viewer": "뷰어",
- "visibility_changed": "인물 {count, plural, one {#명} other {#명}}의 숨김 여부가 변경되었습니다.",
+ "visibility_changed": "인물 {count, plural, one {#명} other {#명}}의 표시 여부가 변경됨",
"waiting": "대기",
"warning": "경고",
"week": "주",
@@ -1331,5 +1310,5 @@
"years_ago": "{years, plural, one {#년} other {#년}} 전",
"yes": "네",
"you_dont_have_any_shared_links": "생성한 공유 링크가 없습니다.",
- "zoom_image": "확대"
+ "zoom_image": "이미지 확대"
}
diff --git a/web/src/lib/i18n/az.json b/i18n/lb.json
similarity index 100%
rename from web/src/lib/i18n/az.json
rename to i18n/lb.json
diff --git a/web/src/lib/i18n/lt.json b/i18n/lt.json
similarity index 77%
rename from web/src/lib/i18n/lt.json
rename to i18n/lt.json
index 18f4ee7c7f..cfb9701c16 100644
--- a/web/src/lib/i18n/lt.json
+++ b/i18n/lt.json
@@ -1,5 +1,5 @@
{
- "about": "Apie",
+ "about": "Atnaujinti",
"account": "Paskyra",
"account_settings": "Paskyros nustatymai",
"acknowledge": "Patvirtinti",
@@ -16,62 +16,60 @@
"add_exclusion_pattern": "Pridėti išimčių šabloną",
"add_import_path": "Pridėti importavimo kelią",
"add_location": "Pridėti vietovę",
- "add_more_users": "Pridėti daugiau vartotojų",
+ "add_more_users": "Pridėti daugiau naudotojų",
"add_partner": "Pridėti partnerį",
"add_path": "Pridėti kelią",
"add_photos": "Pridėti nuotraukų",
"add_to": "Pridėti į ...",
"add_to_album": "Pridėti į albumą",
"add_to_shared_album": "Pridėti į bendrinamą albumą",
+ "add_url": "Pridėti URL",
"added_to_archive": "Pridėta į archyvą",
"added_to_favorites": "Pridėta prie mėgstamiausių",
- "added_to_favorites_count": "{count, number} pridėta prie mėgstamiausių",
+ "added_to_favorites_count": "{count, plural, one {# pridėtas} few {# pridėti} other {# pridėta}} prie mėgstamiausių",
"admin": {
"authentication_settings": "Autentifikavimo nustatymai",
"authentication_settings_description": "Tvarkyti slaptažodžių, OAuth ir kitus autentifikavimo parametrus",
"authentication_settings_disable_all": "Ar tikrai norite išjungti visus prisijungimo būdus? Prisijungimas bus visiškai išjungtas.",
+ "authentication_settings_reenable": "Norėdami vėl įjungti, naudokite Serverio komandą.",
"background_task_job": "Foninės užduotys",
+ "backup_database": "Duomenų bazės atsarginė kopija",
+ "backup_database_enable_description": "Įgalinti duomenų bazės atsarginė kopijas",
+ "backup_keep_last_amount": "Išsaugomų ankstesnių atsarginių duomenų bazės kopijų skaičius",
+ "backup_settings": "Atsarginės kopijos nustatymai",
"check_all": "Pažymėti viską",
"config_set_by_file": "Konfigūracija dabar nustatyta konfigūracinio failo",
"confirm_delete_library": "Ar tikrai norite ištrinti {library} biblioteką?",
"confirm_email_below": "Patvirtinimui įveskite \"{email}\" žemiau",
"confirm_reprocess_all_faces": "Ar tikrai norite iš naujo apdoroti visus veidus? Tai taip pat ištrins įvardytus asmenis.",
"confirm_user_password_reset": "Ar tikrai norite iš naujo nustatyti {user} slaptažodį?",
- "crontab_guru": "",
"disable_login": "Išjungti prisijungimą",
- "disabled": "",
"duplicate_detection_job_description": "Vykdykite mašininį mokymąsi tam, kad aptiktumėte panašius vaizdus. Nuo šios funkcijos priklauso išmanioji paieška",
"exclusion_pattern_description": "Išimčių šablonai leidžia nepaisyti failų ir aplankų skenuojant jūsų biblioteką. Tai yra naudinga, jei turite aplankų su failais, kurių nenorite importuoti, pavyzdžiui, RAW failai.",
"external_library_created_at": "Išorinė biblioteka (sukurta {date})",
"external_library_management": "Išorinių bibliotekų tvarkymas",
- "face_detection": "Veido atpažinimas",
+ "face_detection": "Veidų aptikimas",
+ "face_detection_description": "Veidų aptikimas bibliotekos elementuose naudojant mašininį mokymąsi. Vaizdo įrašų atveju naudojama tik miniatiūra. \"Atnaujinti\" iš naujo nuskaito visus bibliotekos elementus. \"Atstatyti\" ne tik atnaujina, bet ir išvalo visus esamus veidų duomenis. \"Trūkstami\" nuskaito tik dar nenuskaitytus bibliotekos elementus. Veidų aptikimo darbui pasibaigus, aptikti veidai patenka į veidų atpažinimo darbų eilę, kur jie priskiriami jau esamiems ar naujai atpažintiems žmonėms.",
+ "facial_recognition_job_description": "Aptiktų veidų atpažinimas ir priskyrimas žmonėms. Šis darbas vykdomas pasibaigus \"veidų aptikimo\" darbui. \"Atstatyti\" (per)grupuoja visus aptiktus veidus. \"Trūkstami\" apdoroja jokiam žmogui dar nepriskirtus aptiktus veidus.",
"failed_job_command": "Darbo {job} komanda {command} nepavyko",
"force_delete_user_warning": "ĮSPĖJIMAS: Šis veiksmas iš karto pašalins naudotoją ir visą jo informaciją. Šis žingsnis nesugrąžinamas ir failų nebus galima atkurti.",
"forcing_refresh_library_files": "Priverstinai atnaujinami visi failai bilbiotekoje",
+ "image_format": "Formatas",
"image_format_description": "WebP sukuria mažesnius failus nei JPEG, bet lėčiau juos apdoroja.",
"image_prefer_embedded_preview": "Pageidautinai rodyti įterptą peržiūrą",
"image_prefer_embedded_preview_setting_description": "",
"image_prefer_wide_gamut": "Teikti pirmenybę plačiai gamai",
"image_prefer_wide_gamut_setting_description": "",
- "image_preview_format": "Peržiūros formatas",
- "image_preview_resolution": "Peržiūros rezoliucija",
- "image_preview_resolution_description": "Naudojama peržiūrint vieną nuotrauką ir mašininiam mokymui. Didesnė rezoliucija gali išsaugoti daugiau detalių, bet ilgiau užtrukti apdoroti ir sumažinti programos greitumą.",
"image_quality": "Kokybė",
- "image_quality_description": "Vaizdo kokybė nuo 1 iki 100. Aukštesnė kokybė yra geresnė, tačiau sukuriami didesni failai. Ši parinktis turi įtakos peržiūros ir miniatiūrų vaizdams.",
+ "image_resolution": "Rezoliucija",
"image_settings": "Nuotraukos nustatymai",
"image_settings_description": "Keisti sugeneruotų nuotraukų kokybę ir rezoliuciją",
- "image_thumbnail_format": "Miniatūros formatas",
- "image_thumbnail_resolution": "Miniatūros rezoliucija",
- "image_thumbnail_resolution_description": "Naudojama žiūrint nuotraukų grupes (pagrindinis nuotraukų puslapis, albumų peržiūra ir t.t.). Aukštesnė rezoliucija gali išlaikyti daugiau detalių, bet užtrunka ilgiau apdoroti, gali turėti didesnius failų dydžius ir gali sumažinti programos greitumą.",
"job_concurrency": "{job} lygiagretumas",
"job_not_concurrency_safe": "Šis darbas nėra saugus apdoroti lygiagrečiai.",
- "job_settings": "Darbo nustatymai",
+ "job_settings": "Darbų nustatymai",
"job_settings_description": "Keisti darbų lygiagretumą",
"job_status": "Darbų būsenos",
"library_created": "Sukurta biblioteka: {library}",
- "library_cron_expression": "Cron išraiška",
- "library_cron_expression_description": "Nustatykite nuskaitymo intervalą naudodami „cron“ formatą. Daugiau informacijos rasite pvz. Crontab Guru",
- "library_cron_expression_presets": "",
"library_deleted": "Biblioteka ištrinta",
"library_import_path_description": "Nurodykite aplanką, kurį norite importuoti. Šiame aplanke, įskaitant poaplankius, bus nuskaityti vaizdai ir vaizdo įrašai.",
"library_scanning": "Periodinis skanavimas",
@@ -93,19 +91,19 @@
"machine_learning_duplicate_detection_setting_description": "",
"machine_learning_enabled": "Įgalinti mašininį mokymąsi",
"machine_learning_enabled_description": "Jei išjungta, visos „ML“ funkcijos bus išjungtos, nepaisant toliau pateiktų nustatymų.",
- "machine_learning_facial_recognition": "Veido atpažinimas",
+ "machine_learning_facial_recognition": "Veidų atpažinimas",
"machine_learning_facial_recognition_description": "Aptikti, atpažinti ir sugrupuoti veidus nuotraukose",
- "machine_learning_facial_recognition_model": "Veido atpažinimo modelis",
+ "machine_learning_facial_recognition_model": "Veidų atpažinimo modelis",
"machine_learning_facial_recognition_model_description": "",
- "machine_learning_facial_recognition_setting": "Įgalinti veido atpažinimą",
+ "machine_learning_facial_recognition_setting": "Įgalinti veidų atpažinimą",
"machine_learning_facial_recognition_setting_description": "",
- "machine_learning_max_detection_distance": "",
+ "machine_learning_max_detection_distance": "Maksimalus aptikimo atstumas",
"machine_learning_max_detection_distance_description": "Didžiausias atstumas tarp dviejų vaizdų, kad jie būtų laikomi dublikatais, svyruoja nuo 0,001 iki 0,1. Didesnės vertės aptiks daugiau dublikatų, tačiau gali būti klaidingai teigiami.",
"machine_learning_max_recognition_distance": "Maksimalus atpažinimo atstumas",
"machine_learning_max_recognition_distance_description": "",
"machine_learning_min_detection_score": "",
"machine_learning_min_detection_score_description": "",
- "machine_learning_min_recognized_faces": "",
+ "machine_learning_min_recognized_faces": "Mažiausias atpažintų veidų skaičius",
"machine_learning_min_recognized_faces_description": "Mažiausias atpažintų veidų skaičius asmeniui, kurį reikia sukurti. Tai padidinus, veido atpažinimas tampa tikslesnis, bet padidėja tikimybė, kad veidas žmogui nepriskirtas.",
"machine_learning_settings": "Mašininio mokymosi nustatymai",
"machine_learning_settings_description": "Tvarkyti mašininio mokymosi funkcijas ir nustatymus",
@@ -114,20 +112,29 @@
"machine_learning_smart_search_enabled": "Įjungti išmaniąją paiešką",
"machine_learning_smart_search_enabled_description": "Jei išjungta, vaizdai nebus užkoduoti išmaniajai paieškai.",
"machine_learning_url_description": "Mašininio mokymosi serverio URL",
+ "manage_concurrency": "Tvarkyti lygiagretumą",
"manage_log_settings": "",
"map_dark_style": "Tamsioji tema",
- "map_enable_description": "",
+ "map_enable_description": "Įgalinti žemėlapio funkcijas",
+ "map_gps_settings": "Žemėlapio ir GPS nustatymai",
+ "map_gps_settings_description": "Tvarkyti žemėlapio ir GPS (atvirkštinio geokodavimo) nustatymus",
"map_light_style": "Šviesioji tema",
+ "map_manage_reverse_geocoding_settings": "Tvarkyti atvirkštinio geokodavimo nustatymus",
"map_reverse_geocoding": "Atvirkštinis geokodavimas",
- "map_reverse_geocoding_enable_description": "",
+ "map_reverse_geocoding_enable_description": "Įjungti atvirkštinį geokodavimą",
"map_reverse_geocoding_settings": "Atvirkštinio geokodavimo nustatymai",
- "map_settings": "Žemėlapio nustatymai",
+ "map_settings": "Žemėlapis",
"map_settings_description": "Tvarkyti žemėlapio parametrus",
"map_style_description": "",
- "metadata_extraction_job_description": "",
+ "metadata_extraction_job": "Metaduomenų nuskaitymas",
+ "metadata_extraction_job_description": "Kiekvieno bibliotekos elemento metaduomenų nuskaitymas, tokių kaip GPS koordinatės, veidai ar rezoliucija",
+ "metadata_settings": "Metaduomenų nustatymai",
+ "metadata_settings_description": "Tvarkyti metaduomenų nustatymus",
+ "migration_job": "Migracija",
"migration_job_description": "",
"no_paths_added": "Keliai nepridėti",
"no_pattern_added": "Šablonas nepridėtas",
+ "note_cannot_be_changed_later": "PASTABA: Vėliau to pakeisti negalima!",
"notification_email_from_address": "",
"notification_email_from_address_description": "",
"notification_email_host_description": "",
@@ -141,7 +148,7 @@
"notification_email_test_email_failed": "Nepavyko išsiųsti bandomojo el. laiško, patikrinkite savo nustatymus",
"notification_email_test_email_sent": "Bandomasis el. laiškas buvo išsiųstas į {email}. Patikrinkite savo pašto dėžutę.",
"notification_email_username_description": "",
- "notification_enable_email_notifications": "",
+ "notification_enable_email_notifications": "Įgalinti el. pašto pranešimus",
"notification_settings": "Pranešimų nustatymai",
"notification_settings_description": "Tvarkyti pranešimų nustatymus, įskaitant el. pašto",
"oauth_auto_launch": "Paleisti automatiškai",
@@ -172,19 +179,22 @@
"password_settings_description": "Tvarkyti prisijungimo slaptažodžiu nustatymus",
"paths_validated_successfully": "Visi keliai patvirtinti sėkmingai",
"refreshing_all_libraries": "Perkraunamos visos bibliotekos",
- "registration_description": "Kadangi esate pirmasis šio sistemos vartotojas, jums bus priskirta administratorius rolė, ir būsite atsakingas už administracines užduotis ir papildomų vartotojų kūrimą.",
+ "registration": "Administratoriaus registracija",
+ "registration_description": "Kadangi esate pirmasis šio sistemos naudotojas, jums bus priskirta administratoriaus rolė, ir būsite atsakingas už administracines užduotis ir papildomų naudotojų kūrimą.",
"repair_all": "Pataisyti visus",
- "require_password_change_on_login": "Reikalauti, kad vartotojas pasikeistų slaptažodį po pirmojo prisijungimo",
+ "require_password_change_on_login": "Reikalauti, kad naudotojas pasikeistų slaptažodį po pirmojo prisijungimo",
"reset_settings_to_default": "Atstatyti nustatymus į numatytuosius",
+ "reset_settings_to_recent_saved": "Nustatymų atstatymas į neseniai išsaugotus nustatymus",
+ "send_welcome_email": "Siųsti sveikinimo el. laišką",
"server_external_domain_settings": "Išorinis domenas",
"server_external_domain_settings_description": "",
"server_settings": "Serverio nustatymai",
"server_settings_description": "Tvarkyti serverio nustatymus",
- "server_welcome_message": "",
+ "server_welcome_message": "Sveikinimo pranešimas",
"server_welcome_message_description": "Žinutė, rodoma prisijungimo puslapyje.",
"sidecar_job_description": "",
"slideshow_duration_description": "",
- "smart_search_job_description": "",
+ "smart_search_job_description": "Vykdykite mašininį mokymąsi bibliotekos elementų išmaniajai paieškai",
"storage_template_enable_description": "",
"storage_template_hash_verification_enabled": "",
"storage_template_hash_verification_enabled_description": "",
@@ -192,13 +202,13 @@
"storage_template_settings": "",
"storage_template_settings_description": "",
"system_settings": "Sistemos nustatymai",
- "theme_custom_css_settings": "",
+ "tag_cleanup_job": "Žymų išvalymas",
+ "theme_custom_css_settings": "Individualizuotas CSS",
"theme_custom_css_settings_description": "",
"theme_settings": "Temos nustatymai",
"theme_settings_description": "",
"thumbnail_generation_job": "Generuoti miniatiūras",
- "thumbnail_generation_job_description": "",
- "transcode_policy_description": "",
+ "thumbnail_generation_job_description": "Didelių, mažų ir neryškių miniatiūrų generavimas kiekvienam bibliotekos elementui, taip pat miniatiūrų generavimas kiekvienam asmeniui",
"transcoding_acceleration_api": "Spartinimo API",
"transcoding_acceleration_api_description": "",
"transcoding_acceleration_nvenc": "NVENC (reikalinga NVIDIA GPU)",
@@ -210,7 +220,7 @@
"transcoding_accepted_containers": "Priimami konteineriai",
"transcoding_accepted_video_codecs": "",
"transcoding_accepted_video_codecs_description": "",
- "transcoding_advanced_options_description": "Parinktys, kurių daugelis vartotojų keisti neturėtų",
+ "transcoding_advanced_options_description": "Parinktys, kurių daugelis naudotojų keisti neturėtų",
"transcoding_audio_codec": "Garso kodekas",
"transcoding_audio_codec_description": "Opus yra aukščiausios kokybės variantas, tačiau turi mažesnį suderinamumą su senesniais įrenginiais ar programine įranga.",
"transcoding_bitrate_description": "Vaizdo įrašai viršija maksimalią leistiną bitų spartą arba nėra priimtino formato",
@@ -219,9 +229,9 @@
"transcoding_constant_rate_factor": "",
"transcoding_constant_rate_factor_description": "",
"transcoding_disabled_description": "",
- "transcoding_hardware_acceleration": "",
+ "transcoding_hardware_acceleration": "Techninės įrangos spartinimas",
"transcoding_hardware_acceleration_description": "",
- "transcoding_hardware_decoding": "",
+ "transcoding_hardware_decoding": "Aparatinis dekodavimas",
"transcoding_hardware_decoding_setting_description": "",
"transcoding_hevc_codec": "HEVC kodekas",
"transcoding_max_b_frames": "",
@@ -241,21 +251,19 @@
"transcoding_settings": "",
"transcoding_settings_description": "",
"transcoding_target_resolution": "",
- "transcoding_target_resolution_description": "",
+ "transcoding_target_resolution_description": "Didesnės skiriamosios gebos gali išsaugoti daugiau detalių, tačiau jas koduoti užtrunka ilgiau, failų dydžiai yra didesni ir gali sumažėti programos jautrumas.",
"transcoding_temporal_aq": "",
"transcoding_temporal_aq_description": "",
"transcoding_threads": "",
"transcoding_threads_description": "",
"transcoding_tone_mapping": "",
"transcoding_tone_mapping_description": "",
- "transcoding_tone_mapping_npl": "",
- "transcoding_tone_mapping_npl_description": "",
"transcoding_transcode_policy": "",
"transcoding_two_pass_encoding": "",
"transcoding_two_pass_encoding_setting_description": "",
"transcoding_video_codec": "Video kodekas",
"transcoding_video_codec_description": "",
- "trash_enabled_description": "",
+ "trash_enabled_description": "Įgalinti šiukšliadėžės funkcijas",
"trash_number_of_days": "Dienų skaičius",
"trash_number_of_days_description": "",
"trash_settings": "Šiukšliadėžės nustatymai",
@@ -263,15 +271,17 @@
"untracked_files": "Nesekami failai",
"user_delete_delay_settings": "Ištrynimo delsa",
"user_delete_delay_settings_description": "",
- "user_password_has_been_reset": "Vartotojo slaptažodis buvo iš naujo nustatytas:",
- "user_restore_description": "Vartotojo {user} paskyra bus atkurta.",
- "user_settings": "Vartotojo nustatymai",
- "user_settings_description": "Valdyti vartotojo nustatymus",
- "user_successfully_removed": "Vartotojas {email} sėkmingai pašalintas.",
+ "user_management": "Naudotojų valdymas",
+ "user_password_has_been_reset": "Naudotojo slaptažodis buvo iš naujo nustatytas:",
+ "user_restore_description": "Naudotojo {user} paskyra bus atkurta.",
+ "user_settings": "Naudotojo nustatymai",
+ "user_settings_description": "Valdyti naudotojo nustatymus",
+ "user_successfully_removed": "Naudotojas {email} sėkmingai pašalintas.",
"version_check_enabled_description": "",
"version_check_settings": "Versijos tikrinimas",
"version_check_settings_description": "Įjungti/išjungti naujos versijos pranešimus",
- "video_conversion_job_description": ""
+ "video_conversion_job": "Vaizdo įrašų konvertavimas",
+ "video_conversion_job_description": "Vaizdo įrašų konvertavimas platesniam suderinamumui su naršyklėmis ir įrenginiais"
},
"admin_email": "Administratoriaus el. paštas",
"admin_password": "Administratoriaus slaptažodis",
@@ -280,20 +290,21 @@
"album_added": "Albumas pridėtas",
"album_added_notification_setting_description": "Gauti el. pašto pranešimą, kai būsite pridėtas prie bendrinamo albumo",
"album_cover_updated": "Albumo viršelis atnaujintas",
- "album_delete_confirmation": "Ar tikrai norite ištrinti albumą {album}?\nJei šis albumas yra bendrinamas, kiti vartotojai nebegalės jo pasiekti.",
+ "album_delete_confirmation": "Ar tikrai norite ištrinti albumą {album}?",
"album_info_updated": "Albumo informacija atnaujinta",
"album_leave": "Palikti albumą?",
"album_leave_confirmation": "Ar tikrai norite palikti albumą {album}?",
"album_name": "Albumo pavadinimas",
"album_options": "Albumo parinktys",
- "album_remove_user": "Pašalinti vartotoją?",
- "album_remove_user_confirmation": "Ar tikrai norite pašalinti vartotoją {user}?",
- "album_share_no_users": "Atrodo, kad bendrinate šį albumą su visais vartotojais, arba neturite vartotojų, su kuriais galėtumėte bendrinti.",
+ "album_remove_user": "Pašalinti naudotoją?",
+ "album_remove_user_confirmation": "Ar tikrai norite pašalinti naudotoją {user}?",
+ "album_share_no_users": "Atrodo, kad bendrinate šį albumą su visais naudotojais, arba neturite naudotojų, su kuriais galėtumėte bendrinti.",
"album_updated": "Albumas atnaujintas",
"album_updated_setting_description": "Gauti pranešimą el. paštu, kai bendrinamas albumas turi naujų elementų",
"album_user_removed": "Pašalintas {user}",
"album_with_link_access": "Tegul visi, turintys nuorodą, mato šio albumo nuotraukas ir žmones.",
"albums": "Albumai",
+ "albums_count": "{count, plural, one {# albumas} few {# albumai} other {# albumų}}",
"all": "Visi",
"all_albums": "Visi albumai",
"all_people": "Visi žmonės",
@@ -307,11 +318,11 @@
"api_keys": "API raktai",
"app_settings": "Programos nustatymai",
"appears_in": "",
- "archive": "",
+ "archive": "Archyvas",
"archive_or_unarchive_photo": "Archyvuoti arba išarchyvuoti nuotrauką",
"archive_size": "Archyvo dydis",
"archive_size_description": "Konfigūruoti archyvo dydį atsisiuntimams (GiB)",
- "archived": "",
+ "archived_count": "{count, plural, other {# suarchyvuota}}",
"are_these_the_same_person": "Ar tai tas pats asmuo?",
"are_you_sure_to_do_this": "Ar tikrai norite tai daryti?",
"asset_added_to_album": "Pridėta į albumą",
@@ -320,13 +331,23 @@
"asset_offline": "",
"asset_uploaded": "Įkelta",
"asset_uploading": "Įkeliama...",
- "assets": "",
+ "assets": "Elementai",
+ "assets_added_count": "{count, plural, one {Pridėtas # elementas} few {Pridėti # elementai} other {Pridėta # elementų}}",
+ "assets_added_to_album_count": "Į albumą {count, plural, one {įtrauktas # elementas} few {įtraukti # elementai} other {įtraukta # elementų}}",
+ "assets_added_to_name_count": "Į {hasName, select, true {{name}} other {naują}} albumą {count, plural, one {įtrauktas # elementas} few {įtraukti # elementai} other {įtraukta # elementų}}",
+ "assets_count": "{count, plural, one {# elementas} few {# elementai} other {# elementų}}",
+ "assets_moved_to_trash_count": "{count, plural, one {# elementas perkeltas} few {# elementai perkelti} other {# elementų perkelta}} į šiukšliadėžę",
+ "assets_permanently_deleted_count": "{count, plural, one {# elementas ištrintas} few {# elementai ištrinti} other {# elementų ištrinta}} visam laikui",
+ "assets_removed_count": "{count, plural, one {Pašalintas # elementas} few {Pašalinti # elementai} other {Pašalinta # elementų}}",
+ "assets_restored_count": "{count, plural, one {Atkurtas # elementas} few {Atkurti # elementai} other {Atkurta # elementų}}",
+ "assets_were_part_of_album_count": "{count, plural, one {# elementas} few {# elementai} other {# elementų}} jau prieš tai buvo albume",
"authorized_devices": "Autorizuoti įrenginiai",
"back": "Atgal",
"back_close_deselect": "Atgal, uždaryti arba atžymėti",
"backward": "",
"birthdate_saved": "Sėkmingai išsaugota gimimo data",
"blurred_background": "Neryškus fonas",
+ "bugs_and_feature_requests": "Klaidų ir funkcijų užklausos",
"buy": "Įsigyti Immich",
"camera": "Fotoaparatas",
"camera_brand": "Fotoaparato prekės ženklas",
@@ -335,10 +356,6 @@
"cancel_search": "Atšaukti paiešką",
"cannot_merge_people": "Negalima sujungti asmenų",
"cannot_update_the_description": "Negalima atnaujinti aprašymo",
- "cant_apply_changes": "",
- "cant_get_faces": "",
- "cant_search_people": "",
- "cant_search_places": "",
"change_date": "Pakeisti datą",
"change_expiration_time": "Pakeisti galiojimo trukmę",
"change_location": "Pakeisti vietovę",
@@ -391,7 +408,9 @@
"create_new_person": "Sukurti naują žmogų",
"create_new_person_hint": "Priskirti pasirinktus elementus naujam žmogui",
"create_new_user": "Sukurti naują varotoją",
- "create_user": "Sukurti vartotoją",
+ "create_tag": "Sukurti žymą",
+ "create_tag_description": "Sukurti naują žymą. Įdėtinėms žymoms įveskite pilną kelią, įskaitant pasviruosius brūkšnius.",
+ "create_user": "Sukurti naudotoją",
"created": "Sukurta",
"current_device": "Dabartinis įrenginys",
"custom_locale": "",
@@ -413,7 +432,9 @@
"delete_library": "Ištrinti biblioteką",
"delete_link": "Ištrinti nuorodą",
"delete_shared_link": "Ištrinti bendrinamą nuorodą",
- "delete_user": "Ištrinti vartotoją",
+ "delete_tag": "Ištrinti žymą",
+ "delete_tag_confirmation_prompt": "Ar tikrai norite ištrinti žymą {tagName}?",
+ "delete_user": "Ištrinti naudotoją",
"deleted_shared_link": "Bendrinama nuoroda ištrinta",
"description": "Aprašymas",
"details": "Detalės",
@@ -428,19 +449,13 @@
"display_original_photos": "Rodyti originalias nuotraukas",
"display_original_photos_setting_description": "",
"do_not_show_again": "Daugiau nerodyti šio pranešimo",
+ "documentation": "Dokumentacija",
"done": "",
"download": "Atsisiųsti",
"download_settings": "Atsisiųsti",
"downloading": "Siunčiama",
"duplicates": "Dublikatai",
"duration": "Trukmė",
- "durations": {
- "days": "",
- "hours": "",
- "minutes": "",
- "months": "",
- "years": ""
- },
"edit": "Redaguoti",
"edit_album": "Redaguoti albumą",
"edit_avatar": "Redaguoti avatarą",
@@ -455,13 +470,12 @@
"edit_location": "Redaguoti vietovę",
"edit_name": "Redaguoti vardą",
"edit_people": "Redaguoti žmones",
+ "edit_tag": "Redaguoti žymą",
"edit_title": "Redaguoti antraštę",
- "edit_user": "Redaguoti vartotoją",
+ "edit_user": "Redaguoti naudotoją",
"edited": "Redaguota",
"editor": "",
"email": "El. paštas",
- "empty": "",
- "empty_album": "",
"empty_trash": "Ištuštinti šiukšliadėžę",
"enable": "Įgalinti",
"enabled": "Įgalintas",
@@ -472,7 +486,7 @@
"errors": {
"cant_apply_changes": "Negalima taikyti pakeitimų",
"error_adding_assets_to_album": "Klaida pridedant elementus į albumą",
- "error_adding_users_to_album": "Klaida pridedant vartotojus prie albumo",
+ "error_adding_users_to_album": "Klaida pridedant naudotojus prie albumo",
"error_downloading": "Klaida atsisiunčiant {filename}",
"error_hiding_buy_button": "Klaida slepiant pirkimo mygtuką",
"error_removing_assets_from_album": "Klaida šalinant elementus iš albumo, patikrinkite konsolę dėl išsamesnės informacijos",
@@ -482,34 +496,34 @@
"failed_to_edit_shared_link": "Nepavyko redaguoti bendrinamos nuorodos",
"failed_to_load_people": "Nepavyko užkrauti žmonių",
"failed_to_remove_product_key": "Nepavyko pašalinti produkto rakto",
+ "failed_to_stack_assets": "Nepavyko sugrupuoti elementų",
+ "failed_to_unstack_assets": "Nepavyko išgrupuoti elementų",
"import_path_already_exists": "Šis importavimo kelias jau egzistuoja.",
"incorrect_email_or_password": "Neteisingas el. pašto adresas arba slaptažodis",
"profile_picture_transparent_pixels": "Profilio nuotrauka negali turėti permatomų pikselių. Prašome priartinti ir/arba perkelkite nuotrauką.",
"quota_higher_than_disk_size": "Nustatyta kvota, viršija disko dydį",
- "unable_to_add_album_users": "Nepavyksta pridėti vartotojų prie albumo",
+ "unable_to_add_album_users": "Nepavyksta pridėti naudotojų prie albumo",
"unable_to_add_comment": "Nepavyksta pridėti komentaro",
"unable_to_add_exclusion_pattern": "Nepavyksta pridėti išimčių šablono",
"unable_to_add_import_path": "Nepavyksta pridėti importavimo kelio",
"unable_to_add_partners": "Nepavyksta pridėti partnerių",
- "unable_to_change_album_user_role": "Nepavyksta pakeisti albumo vartoto rolės",
+ "unable_to_change_album_user_role": "Nepavyksta pakeisti albumo naudotojo rolės",
"unable_to_change_date": "Negalima pakeisti datos",
"unable_to_change_location": "Negalima pakeisti vietos",
"unable_to_change_password": "Negalima pakeisti slaptažodžio",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_connect": "Nepavyko prisijungti",
"unable_to_connect_to_server": "Nepavyko prisijungti prie serverio",
"unable_to_copy_to_clipboard": "Negalima kopijuoti į iškarpinę, įsitikinkite, kad prie puslapio prieinate per https",
"unable_to_create_admin_account": "Nepavyko sukurti administratoriaus paskyros",
"unable_to_create_api_key": "Nepavyko sukurti naujo API rakto",
"unable_to_create_library": "Nepavyko sukurti bibliotekos",
- "unable_to_create_user": "Nepavyko sukurti vartotojo",
+ "unable_to_create_user": "Nepavyko sukurti naudotojo",
"unable_to_delete_album": "Nepavyksta ištrinti albumo",
"unable_to_delete_asset": "",
"unable_to_delete_exclusion_pattern": "Nepavyksta ištrinti išimčių šablono",
"unable_to_delete_import_path": "Nepavyksta ištrinti importavimo kelio",
"unable_to_delete_shared_link": "Nepavyksta ištrinti bendrinimo nuorodos",
- "unable_to_delete_user": "Nepavyksta ištrinti vartotojo",
+ "unable_to_delete_user": "Nepavyksta ištrinti naudotojo",
"unable_to_edit_exclusion_pattern": "Nepavyksta redaguoti išimčių šablono",
"unable_to_edit_import_path": "Nepavyksta redaguoti išimčių kelio",
"unable_to_empty_trash": "",
@@ -525,14 +539,12 @@
"unable_to_log_out_device": "Nepavyksta atjungti įrenginio",
"unable_to_login_with_oauth": "Nepavyksta prisijungti su OAuth",
"unable_to_play_video": "Nepavyksta paleisti vaizdo įrašo",
- "unable_to_refresh_user": "Nepavyksta atnaujinti vartotojo",
+ "unable_to_refresh_user": "Nepavyksta atnaujinti naudotojo",
"unable_to_remove_album_users": "",
"unable_to_remove_api_key": "Nepavyko pašalinti API rakto",
- "unable_to_remove_comment": "",
"unable_to_remove_library": "Nepavyksta pašalinti bibliotekos",
"unable_to_remove_partner": "Nepavyksta pašalinti partnerio",
"unable_to_remove_reaction": "Nepavyksta pašalinti reakcijos",
- "unable_to_remove_user": "",
"unable_to_repair_items": "",
"unable_to_reset_password": "",
"unable_to_resolve_duplicate": "",
@@ -556,10 +568,6 @@
"unable_to_update_user": "",
"unable_to_upload_file": "Nepavyksta įkelti failo"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Exif",
"exit_slideshow": "",
"expand_all": "Išskleisti viską",
@@ -573,28 +581,23 @@
"external": "Išorinis",
"external_libraries": "Išorinės bibliotekos",
"face_unassigned": "Nepriskirta",
- "failed_to_get_people": "",
- "favorite": "Mėgstamiausias",
- "favorite_or_unfavorite_photo": "",
+ "favorite": "Mėgstamiausi",
+ "favorite_or_unfavorite_photo": "Įtraukti prie arba pašalinti iš mėgstamiausių",
"favorites": "Mėgstamiausi",
- "feature": "",
"feature_photo_updated": "",
- "featurecollection": "",
"file_name": "Failo pavadinimas",
"file_name_or_extension": "Failo pavadinimas arba plėtinys",
"filename": "",
- "files": "",
"filetype": "Failo tipas",
"filter_people": "Filtruoti žmones",
"fix_incorrect_match": "",
- "force_re-scan_library_files": "",
+ "folders": "Aplankai",
"forward": "",
"general": "",
"get_help": "Gauti pagalbos",
"getting_started": "",
"go_back": "",
"go_to_search": "",
- "go_to_share_page": "",
"group_albums_by": "Grupuoti albumus pagal...",
"group_no": "Negrupuoti",
"group_owner": "Grupuoti pagal savininką",
@@ -610,7 +613,6 @@
"host": "",
"hour": "Valanda",
"image": "Nuotrauka",
- "img": "",
"immich_logo": "Immich logotipas",
"import_from_json": "Importuoti iš JSON",
"import_path": "Importavimo kelias",
@@ -628,7 +630,7 @@
},
"invite_people": "Kviesti žmones",
"invite_to_album": "Pakviesti į albumą",
- "job_settings_description": "",
+ "items_count": "{count, plural, one {# elementas} few {# elementai} other {# elementų}}",
"jobs": "Darbai",
"keep": "Palikti",
"keep_all": "Palikti visus",
@@ -683,6 +685,7 @@
"merge_people_limit": "Vienu metu galite sujungti tik iki 5 veidų",
"merge_people_prompt": "Ar norite sujungti šiuos asmenis? Šis veiksmas yra negrįžtamas.",
"merge_people_successfully": "Asmenys sėkmingai sujungti",
+ "merged_people_count": "{count, plural, one {Sujungtas # asmuo} few {Sujungti # asmenys} other {Sujungta # asmenų}}",
"minimize": "Sumažinti",
"minute": "Minutė",
"missing": "Trūkstami",
@@ -694,11 +697,11 @@
"name": "Vardas",
"name_or_nickname": "Vardas arba slapyvardis",
"never": "Niekada",
- "new_album": "",
+ "new_album": "Naujas albumas",
"new_api_key": "Naujas API raktas",
"new_password": "Naujas slaptažodis",
"new_person": "Naujas asmuo",
- "new_user_created": "Sukurtas naujas vartotojas",
+ "new_user_created": "Naujas naudotojas sukurtas",
"new_version_available": "PRIEINAMA NAUJA VERSIJA",
"newest_first": "Pirmiausia naujausi",
"next": "Sekantis",
@@ -726,13 +729,13 @@
"notifications": "Pranešimai",
"notifications_setting_description": "Tvarkyti pranešimus",
"oauth": "",
+ "official_immich_resources": "Oficialūs Immich ištekliai",
"offline": "Neprisijungęs",
"ok": "Ok",
"oldest_first": "Seniausias pirmas",
"onboarding_welcome_user": "Sveiki atvykę, {user}",
"online": "Prisijungęs",
"only_favorites": "Tik mėgstamiausi",
- "only_refreshes_modified_files": "Atnaujina tik modifikuotus failus",
"open_the_search_filters": "Atidaryti paieškos filtrus",
"options": "Pasirinktys",
"or": "arba",
@@ -765,12 +768,14 @@
"paused": "Sustabdyta",
"pending": "Laukiama",
"people": "Asmenys",
+ "people_edits_count": "{count, plural, one {Redaguotas # asmuo} few {Redaguoti # asmenys} other {Redaguota # asmenų}}",
"people_sidebar_description": "",
- "perform_library_tasks": "",
"permanent_deletion_warning": "",
"permanent_deletion_warning_setting_description": "",
"permanently_delete": "Ištrinti visam laikui",
+ "permanently_delete_assets_count": "Visam laikui ištrinti {count, plural, one {# elementą} few {# elementus} other {# elementų}}",
"permanently_deleted_asset": "",
+ "permanently_deleted_assets_count": "Visam laikui {count, plural, one {ištrintas # elementas} few {ištrinti # elementai} other {ištrinta # elementų}}",
"photos": "Nuotraukos",
"photos_and_videos": "Nuotraukos ir vaizdo įrašai",
"photos_count": "{count, plural, one {{count, number} nuotrauka} few {{count, number} nuotraukos} other {{count, number} nuotraukų}}",
@@ -782,7 +787,6 @@
"play_memories": "",
"play_motion_photo": "",
"play_or_pause_video": "",
- "point": "",
"port": "",
"preset": "",
"preview": "",
@@ -811,8 +815,8 @@
"purchase_license_subtitle": "Įsigykite „Immich“, kad palaikytumėte tolesnį paslaugos vystymą",
"purchase_lifetime_description": "Pirkimas visam gyvenimui",
"purchase_option_title": "PIRKIMO PASIRINKIMAS",
- "purchase_panel_info_1": "„Immich“ kūrimas užima daug laiko ir pastangų, o visą darbo dieną dirba inžinieriai, kad jis būtų kuo geresnis. Mūsų misija yra, kad atvirojo kodo programinė įranga ir etiška verslo praktika taptų tvariu programuotojų pajamų šaltiniu ir sukurtų privatumą gerbiančią ekosistemą su realiomis alternatyvomis išnaudojamoms debesijos paslaugoms.",
- "purchase_panel_info_2": "Kadangi esame įsipareigoję nepridėti mokamų sienų, šis pirkinys nesuteiks jums jokių papildomų „Immich“ funkcijų. Mes tikime, kad tokie vartotojai kaip jūs palaikys nuolatinį „Immich“ vystymąsi.",
+ "purchase_panel_info_1": "„Immich“ kūrimas užima daug laiko ir pastangų, o visą darbo dieną dirba inžinieriai, kad jis būtų kuo geresnis. Mūsų misija yra, kad atvirojo kodo programinė įranga ir etiška verslo praktika taptų tvariu kūrėjų pajamų šaltiniu ir sukurtų privatumą gerbiančią ekosistemą su realiomis alternatyvomis išnaudojamoms debesijos paslaugoms.",
+ "purchase_panel_info_2": "Kadangi esame įsipareigoję nepridėti mokamų sienų, šis pirkinys nesuteiks jums jokių papildomų „Immich“ funkcijų. Mes tikime, kad tokie naudotojai kaip jūs palaikys nuolatinį „Immich“ vystymąsi.",
"purchase_panel_title": "Palaikykite projektą",
"purchase_per_server": "Vienam serveriui",
"purchase_per_user": "Vienam naudotojui",
@@ -824,36 +828,38 @@
"purchase_server_description_2": "Rėmėjo statusas",
"purchase_server_title": "Serveris",
"purchase_settings_server_activated": "Serverio produkto raktas yra tvarkomas administratoriaus",
- "range": "",
"rating": "Įvertinimas žvaigždutėmis",
- "raw": "",
+ "rating_count": "{count, plural, one {# įvertinimas} few {# įvertinimai} other {# įvertinimų}}",
"reaction_options": "",
"read_changelog": "",
"recent": "",
"recent_searches": "",
- "refresh": "",
- "refreshed": "",
+ "refresh": "Atnaujinti",
+ "refreshed": "Atnaujinta",
"refreshes_every_file": "",
"remove": "Pašalinti",
+ "remove_deleted_assets": "",
"remove_from_album": "Pašalinti iš albumo",
"remove_from_favorites": "Pašalinti iš mėgstamiausių",
"remove_from_shared_link": "",
- "remove_offline_files": "",
- "remove_user": "Pašalinti vartotoją",
+ "remove_user": "Pašalinti naudotoją",
"removed_api_key": "Pašalintas API Raktas: {name}",
+ "removed_from_archive": "Pašalinta iš archyvo",
+ "removed_from_favorites": "Pašalinta iš mėgstamiausių",
+ "removed_from_favorites_count": "{count, plural, one {# pašalintas} few {# pašalinti} other {# pašalinta}} iš mėgstamiausių",
+ "removed_tagged_assets": "Žyma pašalinta iš {count, plural, one {# elemento} other {# elementų}}",
"rename": "Pervadinti",
"repair": "Pataisyti",
"repair_no_results_message": "",
"replace_with_upload": "",
"require_password": "Reikalauti slaptažodžio",
- "reset": "",
+ "reset": "Atstatyti",
"reset_password": "",
"reset_people_visibility": "",
- "reset_settings_to_default": "",
"resolved_all_duplicates": "Išspręsti visi dublikatai",
"restore": "Atkurti",
"restore_all": "Atkurti visus",
- "restore_user": "Atkurti vartotoją",
+ "restore_user": "Atkurti naudotoją",
"retry_upload": "",
"review_duplicates": "",
"role": "",
@@ -863,9 +869,8 @@
"saved_settings": "Išsaugoti nustatymai",
"say_something": "Ką nors pasakykite",
"scan_all_libraries": "Skenuoti visas bibliotekas",
- "scan_all_library_files": "",
- "scan_new_library_files": "",
- "scan_settings": "",
+ "scan_library": "Skenuoti",
+ "scan_settings": "Skenavimo nustatymai",
"search": "Ieškoti",
"search_albums": "",
"search_by_context": "Ieškoti pagal kontekstą",
@@ -874,12 +879,14 @@
"search_camera_make": "",
"search_camera_model": "",
"search_city": "",
- "search_country": "",
+ "search_country": "Ieškoti šalies...",
"search_for_existing_person": "",
"search_no_people_named": "Nėra žmonių vardu „{name}“",
- "search_people": "",
- "search_places": "",
+ "search_people": "Ieškoti žmonių",
+ "search_places": "Ieškoti vietų",
+ "search_settings": "Ieškoti nustatymų",
"search_state": "",
+ "search_tags": "Ieškoti žymų...",
"search_timezone": "",
"search_type": "Paieškos tipas",
"search_your_photos": "Ieškoti nuotraukų",
@@ -890,14 +897,16 @@
"select_all_duplicates": "Pasirinkti visus dublikatus",
"select_avatar_color": "Pasirinkti avataro spalvą",
"select_face": "Pasirinkti veidą",
- "select_featured_photo": "",
- "select_library_owner": "",
+ "select_featured_photo": "Pasirinkti rodomą nuotrauką",
+ "select_library_owner": "Pasirinkti bibliotekos savininką",
"select_new_face": "",
"select_photos": "",
"selected": "Pasirinkta",
+ "selected_count": "{count, plural, one {# pasirinktas} few {# pasirinkti} other {# pasirinktų}}",
"send_message": "Siųsti žinutę",
"send_welcome_email": "Siųsti sveikinimo el. laišką",
- "server": "Serveris",
+ "server_offline": "Serveris nepasiekiamas",
+ "server_online": "Serveris pasiekiamas",
"server_stats": "Serverio statistika",
"server_version": "Serverio versija",
"set": "Nustatyti",
@@ -913,6 +922,7 @@
"shared_by": "",
"shared_by_you": "",
"shared_links": "",
+ "shared_photos_and_videos_count": "{assetCount, plural, one {# bendrinama nuotrauka ir vaizdo įrašas} few {# bendrinamos nuotraukos ir vaizdo įrašai} other {# bendrinamų nuotraukų ir vaizdo įrašų}}",
"shared_with_partner": "Pasidalinta su {partner}",
"sharing": "Dalijimasis",
"sharing_enter_password": "Norėdami peržiūrėti šį puslapį, įveskite slaptažodį.",
@@ -930,6 +940,8 @@
"show_person_options": "",
"show_progress_bar": "",
"show_search_options": "Rodyti paieškos parinktis",
+ "show_supporter_badge": "Rėmėjo ženklelis",
+ "show_supporter_badge_description": "Rodyti rėmėjo ženklelį",
"shuffle": "",
"sign_out": "Atsijungti",
"sign_up": "Užsiregistruoti",
@@ -944,9 +956,13 @@
"sort_recent": "Naujausia nuotrauka",
"sort_title": "Pavadinimas",
"source": "Šaltinis",
- "stack": "",
- "stack_selected_photos": "",
+ "stack": "Grupuoti",
+ "stack_duplicates": "Grupuoti dublikatus",
+ "stack_select_one_photo": "Pasirinkti pagrindinę grupės nuotrauką",
+ "stack_selected_photos": "Grupuoti pasirinktas nuotraukas",
+ "stacked_assets_count": "{count, plural, one {Sugrupuotas # elementas} few {Sugrupuoti # elementai} other {Sugrupuota # elementų}}",
"stacktrace": "",
+ "start": "Pradėti",
"start_date": "Pradžios data",
"state": "",
"status": "Statusas",
@@ -957,38 +973,47 @@
"submit": "Pateikti",
"suggestions": "",
"sunrise_on_the_beach": "Saulėtekis paplūdimyje",
+ "support_and_feedback": "Palaikymas ir atsiliepimai",
"swap_merge_direction": "",
"sync": "Sinchronizuoti",
+ "tag": "Žyma",
+ "tag_created": "Sukurta žyma: {tag}",
+ "tag_not_found_question": "Nerandate žymos? Sukurti naują žymą.",
+ "tag_updated": "Atnaujinta žyma: {tag}",
+ "tagged_assets": "Žyma pridėta prie {count, plural, one {# elemento} other {# elementų}}",
+ "tags": "Žymos",
"template": "Šablonas",
"theme": "Tema",
"theme_selection": "",
"theme_selection_description": "",
"time_based_memories": "",
"timezone": "Laiko juosta",
- "to_archive": "Archyvas",
+ "to_archive": "Archyvuoti",
"to_change_password": "Pakeisti slaptažodį",
- "to_favorite": "Mėgstamiausi",
+ "to_favorite": "Įtraukti prie mėgstamiausių",
"toggle_settings": "",
"toggle_theme": "",
- "toggle_visibility": "",
"total_usage": "",
"trash": "Šiukšliadėžė",
"trash_all": "Ištrinti visus",
"trash_count": "Šiukšliadėžė {count, number}",
"trash_no_results_message": "",
- "type": "",
+ "trashed_items_will_be_permanently_deleted_after": "Į šiukšliadėžę perkelti elementai bus visam laikui ištrinti po {days, plural, one {# dienos} other {# dienų}}.",
+ "type": "Tipas",
"unarchive": "Išarchyvuoti",
- "unarchived": "",
- "unfavorite": "",
+ "unarchived_count": "{count, plural, other {# išarchyvuota}}",
+ "unfavorite": "Pašalinti iš mėgstamiausių",
"unhide_person": "",
"unknown": "",
- "unknown_album": "",
"unknown_year": "Nežinomi metai",
"unlink_oauth": "",
"unlinked_oauth_account": "",
+ "unnamed_album_delete_confirmation": "Ar tikrai norite ištrinti šį albumą?",
"unsaved_change": "Neišsaugoti pakeitimai",
"unselect_all": "",
- "unstack": "",
+ "unselect_all_duplicates": "Atžymėti visus dublikatus",
+ "unstack": "Išgrupuoti",
+ "unstacked_assets_count": "{count, plural, one {Išgrupuotas # elementas} few {Išgrupuoti # elementai} other {Išgrupuota # elementų}}",
"up_next": "",
"updated_password": "Slaptažodis atnaujintas",
"upload": "Įkelti",
@@ -997,33 +1022,38 @@
"upload_status_duplicates": "Dublikatai",
"upload_status_errors": "Klaidos",
"upload_status_uploaded": "Įkelta",
- "url": "",
+ "url": "URL",
"usage": "",
- "user": "Vartotojas",
- "user_id": "Vartotojo ID",
+ "user": "Naudotojas",
+ "user_id": "Naudotojo ID",
"user_usage_detail": "",
- "username": "Vartotojo vardas",
- "users": "Vartotojai",
- "utilities": "",
- "validate": "",
+ "user_usage_stats": "Paskyros naudojimo statistika",
+ "user_usage_stats_description": "Žiūrėti paskyros naudojimo statistiką",
+ "username": "Naudotojo vardas",
+ "users": "Naudotojai",
+ "utilities": "Priemonės",
+ "validate": "Validuoti",
"variables": "Kintamieji",
"version": "Versija",
"version_announcement_closing": "Tavo draugas, Alex",
+ "version_history": "Versijų istorija",
+ "version_history_item": "Versija {version} įdiegta {date}",
"video": "Vaizdo įrašas",
- "video_hover_setting_description": "",
+ "video_hover_setting_description": "Atkurti vaizdo įrašo miniatiūrą, kai pelė užvedama ant elemento. Net ir išjungus, atkūrimą galima pradėti užvedus pelės žymeklį ant atkūrimo piktogramos.",
"videos": "Video",
+ "videos_count": "{count, plural, one {# vaizdo įrašas} few {# vaizdo įrašai} other {# vaizdo įrašų}}",
"view": "Rodyti",
"view_album": "Rodyti albumą",
- "view_all": "",
- "view_all_users": "Rodyti visus vartotojus",
+ "view_all": "Peržiūrėti viską",
+ "view_all_users": "Peržiūrėti visus naudotojus",
"view_links": "Rodyti nuorodas",
"view_next_asset": "",
"view_previous_asset": "",
- "viewer": "",
+ "view_stack": "Peržiūrėti grupę",
"waiting": "Laukiama",
"warning": "Įspėjimas",
"week": "Savaitė",
- "welcome_to_immich": "",
+ "welcome_to_immich": "Sveiki atvykę į Immich",
"year": "Metai",
"yes": "Taip",
"zoom_image": "Priartinti vaizdą"
diff --git a/web/src/lib/i18n/lv.json b/i18n/lv.json
similarity index 57%
rename from web/src/lib/i18n/lv.json
rename to i18n/lv.json
index bf17ccb813..c6cbc9c3b7 100644
--- a/web/src/lib/i18n/lv.json
+++ b/i18n/lv.json
@@ -2,7 +2,7 @@
"about": "Par",
"account": "Konts",
"account_settings": "Konta iestatījumi",
- "acknowledge": "Atzīt",
+ "acknowledge": "Pieņemt",
"action": "Darbība",
"actions": "Darbības",
"active": "Aktīvs",
@@ -23,9 +23,10 @@
"add_to": "Pievienot ..",
"add_to_album": "Pievienot albumam",
"add_to_shared_album": "Pievienot koplietotam albumam",
+ "add_url": "Pievienot URL",
"added_to_archive": "Pievienots arhīvam",
"added_to_favorites": "Pievienots izlasei",
- "added_to_favorites_count": "Pievienots {count} izlasei",
+ "added_to_favorites_count": "Pievienots {count, number} izlasei",
"admin": {
"add_exclusion_pattern_description": "Pievienojiet izlaišanas shēmas. Aizstājējzīmju izmantoša *, **, un ? tiek atbalstīta. Lai ignorētu visus failus jebkurā direktorijā ar nosaukumu “RAW”, izmantojiet “**/RAW/**”. Lai ignorētu visus failus, kas beidzas ar “. tif”, izmantojiet “**/*. tif”. Lai ignorētu absolūto ceļu, izmantojiet “/path/to/ignore/**”.",
"authentication_settings": "Autentifikācijas iestatījumi",
@@ -40,29 +41,29 @@
"confirm_email_below": "Lai apstiprinātu, zemāk ierakstiet “{email}”",
"confirm_reprocess_all_faces": "Vai tiešām vēlaties atkārtoti apstrādāt visas sejas? Tas arī atiestatīs cilvēkus ar vārdiem.",
"confirm_user_password_reset": "Vai tiešām vēlaties atiestatīt lietotāja {user} paroli?",
- "crontab_guru": "",
+ "create_job": "Izveidot darbu",
+ "cron_expression": "Cron izteiksme",
"disable_login": "Atspējot pieteikšanos",
- "disabled": "",
"duplicate_detection_job_description": "Palaidiet mašīnmācīšanos uz līdzekļiem, lai noteiktu līdzīgus attēlus. Paļaujas uz Viedo Meklēšanu",
+ "external_library_created_at": "Ārēja bibliotēka (izveidota {date})",
+ "external_library_management": "Ārējo bibliotēku pārvaldība",
+ "face_detection": "Seju noteikšana",
+ "image_format": "Formāts",
"image_format_description": "",
"image_prefer_embedded_preview": "",
"image_prefer_embedded_preview_setting_description": "",
"image_prefer_wide_gamut": "",
"image_prefer_wide_gamut_setting_description": "",
- "image_preview_format": "Priekšskatījuma formāts",
- "image_preview_resolution": "Priekšskatījuma izšķirtspēja",
- "image_preview_resolution_description": "",
"image_quality": "Kvalitāte",
- "image_quality_description": "Attēla kvalitāte no 1 līdz 100. Augstāka kvalitāte ir labāka, bet veido lielākus failus. Šī opcija ietekmē Priekšskatījums un Sīktēls attēlus.",
+ "image_resolution": "Izšķirtspēja",
"image_settings": "Attēla Iestatījumi",
"image_settings_description": "Ģenerēto attēlu kvalitātes un izšķirtspējas pārvaldība",
- "image_thumbnail_format": "Sīktēlu formāts",
- "image_thumbnail_resolution": "Sīktēlu izšķirtspēja",
- "image_thumbnail_resolution_description": "",
+ "image_thumbnail_title": "Sīktēlu iestatījumi",
+ "job_created": "Darbs izveidots",
"job_settings": "",
"job_settings_description": "",
- "library_cron_expression": "",
- "library_cron_expression_presets": "",
+ "job_status": "Darbu statuss",
+ "library_deleted": "Bibliotēka dzēsta",
"library_scanning": "",
"library_scanning_description": "",
"library_scanning_enable_description": "",
@@ -75,14 +76,14 @@
"logging_enable_description": "",
"logging_level_description": "",
"logging_settings": "",
- "machine_learning_clip_model": "",
- "machine_learning_duplicate_detection": "",
+ "machine_learning_clip_model": "CLIP modelis",
+ "machine_learning_duplicate_detection": "Dublikātu noteikšana",
"machine_learning_duplicate_detection_enabled_description": "",
"machine_learning_duplicate_detection_setting_description": "",
"machine_learning_enabled_description": "",
- "machine_learning_facial_recognition": "",
+ "machine_learning_facial_recognition": "Seju atpazīšana",
"machine_learning_facial_recognition_description": "",
- "machine_learning_facial_recognition_model": "",
+ "machine_learning_facial_recognition_model": "Seju atpazīšanas modelis",
"machine_learning_facial_recognition_model_description": "",
"machine_learning_facial_recognition_setting_description": "",
"machine_learning_max_detection_distance": "",
@@ -93,68 +94,83 @@
"machine_learning_min_detection_score_description": "",
"machine_learning_min_recognized_faces": "",
"machine_learning_min_recognized_faces_description": "",
- "machine_learning_settings": "",
+ "machine_learning_settings": "Mašīnmācīšanās iestatījumi",
"machine_learning_settings_description": "",
- "machine_learning_smart_search": "",
+ "machine_learning_smart_search": "Viedā meklēšana",
"machine_learning_smart_search_description": "",
"machine_learning_smart_search_enabled_description": "",
- "machine_learning_url_description": "",
+ "machine_learning_url_description": "Mašīnmācīšanās servera URL",
"manage_log_settings": "",
"map_dark_style": "",
"map_enable_description": "",
+ "map_gps_settings": "Kartes un GPS iestatījumi",
+ "map_gps_settings_description": "Pārvaldīt karšu un GPS (apgrieztās ģeokodēšanas) iestatījumus",
"map_light_style": "",
"map_reverse_geocoding": "",
"map_reverse_geocoding_enable_description": "",
"map_reverse_geocoding_settings": "",
- "map_settings": "",
+ "map_settings": "Karte",
"map_settings_description": "",
"map_style_description": "",
+ "metadata_extraction_job": "Metadatu iegūšana",
"metadata_extraction_job_description": "",
+ "metadata_settings": "Metadatu iestatījumi",
+ "migration_job": "Migrācija",
"migration_job_description": "",
- "notification_email_from_address": "",
- "notification_email_from_address_description": "",
+ "note_cannot_be_changed_later": "PIEZĪME: Vēlāk to vairs nevar mainīt!",
+ "notification_email_from_address": "No adreses",
+ "notification_email_from_address_description": "Sūtītāja e-pasta adrese, piemēram: “Immich foto serveris {label} is het opslaglabel van de gebruiker",
"system_settings": "Systeeminstellingen",
+ "tag_cleanup_job": "Tag opschoning",
+ "template_email_available_tags": "Je kan de volgende tags gebruiken in een template: {tags}",
+ "template_email_if_empty": "Wanneer het sjabloon leeg is, wordt de standaard mail gebruikt.",
+ "template_email_invite_album": "Uitgenodigd in album sjabloon",
+ "template_email_preview": "Voorbeeld",
+ "template_email_settings": "Email",
+ "template_email_settings_description": "Beheer aangepaste email melding sjablonen",
+ "template_email_update_album": "Update in album sjabloon",
+ "template_email_welcome": "Welkom email sjabloon",
+ "template_settings": "Melding sjablonen",
+ "template_settings_description": "Beheer aangepast sjablonen voor meldingen.",
"theme_custom_css_settings": "Aangepaste CSS",
"theme_custom_css_settings_description": "Met Cascading Style Sheets kan het ontwerp van Immich worden aangepast.",
"theme_settings": "Thema instellingen",
@@ -245,7 +267,6 @@
"these_files_matched_by_checksum": "Deze bestanden worden gematcht op basis van hun checksums",
"thumbnail_generation_job": "Thumbnail genereren",
"thumbnail_generation_job_description": "Genereer grote, kleine en vervaagde thumbnails voor iedere asset, en genereer thumbnails voor iedere persoon",
- "transcode_policy_description": "Beleid voor wanneer een video moet worden getranscodeerd. HDR-video's worden altijd getranscodeerd (behalve als transcodering is uitgeschakeld).",
"transcoding_acceleration_api": "Acceleration API",
"transcoding_acceleration_api_description": "De API die met je apparaat zal communiceren om transcodering te versnellen. Deze instelling is 'best effort': wanneer fouten optreden wordt teruggevallen op softwaretranscodering. VP9 kan wel of niet werken, afhankelijk van je hardware.",
"transcoding_acceleration_nvenc": "NVENC (vereist NVIDIA GPU)",
@@ -271,7 +292,7 @@
"transcoding_hardware_acceleration": "Hardware acceleratie",
"transcoding_hardware_acceleration_description": "Experimenteel; veel sneller, maar zal een lagere kwaliteit hebben bij dezelfde bitrate",
"transcoding_hardware_decoding": "Hardware decodering",
- "transcoding_hardware_decoding_setting_description": "Geldt alleen voor NVENC, QSV en RKMPP. Maakt end-to-end versnelling mogelijk in plaats van alleen de codering te versnellen. Werkt mogelijk niet op alle video's.",
+ "transcoding_hardware_decoding_setting_description": "Maakt end-to-end versnelling mogelijk in plaats van alleen de codering te versnellen. Werkt mogelijk niet op alle video's.",
"transcoding_hevc_codec": "HEVC codec",
"transcoding_max_b_frames": "Maximum B-Frames",
"transcoding_max_b_frames_description": "Hogere waarden verbeteren de compressie efficiëntie, maar vertragen de codering. Is mogelijk niet compatibel met hardwareversnelling op oudere apparaten. 0 schakelt B-frames uit, terwijl -1 deze waarde automatisch instelt.",
@@ -284,7 +305,7 @@
"transcoding_preferred_hardware_device_description": "Geldt alleen voor VAAPI en QSV. Stelt de dri node in die wordt gebruikt voor hardwaretranscodering.",
"transcoding_preset_preset": "Preset (-preset)",
"transcoding_preset_preset_description": "Compressiesnelheid. Langzamere presets produceren kleinere bestanden en verhogen de kwaliteit bij het targeten van een bepaalde bitrate. VP9 negeert snelheden boven 'faster'.",
- "transcoding_reference_frames": "Reference frames",
+ "transcoding_reference_frames": "Referentie frames",
"transcoding_reference_frames_description": "Het aantal frames om naar te verwijzen bij het comprimeren van een bepaald frame. Hogere waarden verbeteren de compressie-efficiëntie, maar vertragen de codering. Bij 0 wordt deze waarde automatisch ingesteld.",
"transcoding_required_description": "Alleen video's die geen geaccepteerd formaat hebben",
"transcoding_settings": "Instellingen voor videotranscodering",
@@ -297,11 +318,9 @@
"transcoding_threads_description": "Hogere waarden leiden tot snellere codering, maar laten minder ruimte over voor de server om andere taken te verwerken terwijl deze actief is. Deze waarde mag niet groter zijn dan het aantal CPU cores. Maximaliseert het gebruik als deze is ingesteld op 0.",
"transcoding_tone_mapping": "Tone-mapping",
"transcoding_tone_mapping_description": "Probeert het uiterlijk van HDR-video's te behouden wanneer ze worden geconverteerd naar SDR. Elk algoritme maakt verschillende afwegingen voor kleur, detail en helderheid. Hable behoudt detail, Mobius behoudt kleur en Reinhard behoudt helderheid.",
- "transcoding_tone_mapping_npl": "Tone-mapping NPL",
- "transcoding_tone_mapping_npl_description": "Kleuren zullen aangepast worden om normaal te lijken voor een display van deze helderheid. Contra-intuïtief, lagere waarden verhogen de helderheid van de video en vice versa sinds het compenseert voor de helderheid van de tentoonstelling. 0 zet deze waarde automatisch.",
"transcoding_transcode_policy": "Transcodeerbeleid",
"transcoding_transcode_policy_description": "Beleid voor wanneer een video getranscodeerd moet worden. HDR-video's worden altijd getranscodeerd (behalve als transcodering is uitgeschakeld).",
- "transcoding_two_pass_encoding": "Two-pass encoding",
+ "transcoding_two_pass_encoding": "Two-pass encodering",
"transcoding_two_pass_encoding_setting_description": "Transcodeer in twee passes om beter gecodeerde video's te produceren. Wanneer de maximale bitrate is ingeschakeld (vereist om te werken met H.264 en HEVC), gebruikt deze modus een bitraterange op basis van de maximale bitrate en negeert CRF. Voor VP9 kan CRF worden gebruikt als de maximale bitrate is uitgeschakeld.",
"transcoding_video_codec": "Video codec",
"transcoding_video_codec_description": "VP9 heeft een hoge efficiëntie en webcompatibiliteit, maar duurt langer om te transcoderen. HEVC presteert vergelijkbaar, maar heeft een lagere webcompatibiliteit. H.264 is breed compatibel en snel om te transcoderen, maar produceert veel grotere bestanden. AV1 is de meest efficiënte codec, maar mist ondersteuning op oudere apparaten.",
@@ -312,6 +331,7 @@
"trash_settings_description": "Beheer prullenbak instellingen",
"untracked_files": "Niet bijgehouden bestanden",
"untracked_files_description": "Deze bestanden worden niet bijgehouden door de applicatie. Dit kan het resultaat zijn van een mislukte verplaatsing, onderbroken upload of een bug",
+ "user_cleanup_job": "Gebruiker opschoning",
"user_delete_delay": "Het account en de assets van {user} worden over {delay, plural, one {# dag} other {# dagen}} permanent verwijderd.",
"user_delete_delay_settings": "Verwijder vertraging",
"user_delete_delay_settings_description": "Aantal dagen na verwijdering om het account en de assets van een gebruiker permanent te verwijderen. De taak voor het verwijderen van gebruikers wordt om middernacht uitgevoerd om te controleren of gebruikers verwijderd kunnen worden. Wijzigingen in deze instelling worden bij de volgende uitvoering meegenomen.",
@@ -378,7 +398,6 @@
"archive_or_unarchive_photo": "Foto archiveren of uit het archief halen",
"archive_size": "Archiefgrootte",
"archive_size_description": "Configureer de archiefgrootte voor downloads (in GiB)",
- "archived": "Gearchiveerd",
"archived_count": "{count, plural, other {# gearchiveerd}}",
"are_these_the_same_person": "Zijn dit dezelfde personen?",
"are_you_sure_to_do_this": "Weet je zeker dat je dit wilt doen?",
@@ -389,8 +408,9 @@
"asset_has_unassigned_faces": "Asset heeft niet-toegewezen gezichten",
"asset_hashing": "Hashen...",
"asset_offline": "Asset offline",
- "asset_offline_description": "Deze asset is offline. Immich kan de bestandslocatie niet openen. Controleer of de asset beschikbaar is en scan de bibliotheek opnieuw.",
+ "asset_offline_description": "Deze externe asset is niet meer op de schijf te vinden. Neem contact op met de Immich beheerder voor hulp.",
"asset_skipped": "Overgeslagen",
+ "asset_skipped_in_trash": "In prullenbak",
"asset_uploaded": "Geüpload",
"asset_uploading": "Uploaden...",
"assets": "Assets",
@@ -398,11 +418,10 @@
"assets_added_to_album_count": "{count, plural, one {# asset} other {# assets}} aan het album toegevoegd",
"assets_added_to_name_count": "{count, plural, one {# asset} other {# assets}} toegevoegd aan {hasName, select, true {{name}} other {nieuw album}}",
"assets_count": "{count, plural, one {# asset} other {# assets}}",
- "assets_moved_to_trash": "{count, plural, one {# asset} other {# assets}} naar de prullenbak verplaatst",
"assets_moved_to_trash_count": "{count, plural, one {# asset} other {# assets}} verplaatst naar prullenbak",
"assets_permanently_deleted_count": "{count, plural, one {# asset} other {# assets}} permanent verwijderd",
"assets_removed_count": "{count, plural, one {# asset} other {# assets}} verwijderd",
- "assets_restore_confirmation": "Weet je zeker dat je alle verwijderde assets wilt herstellen? Je kunt deze actie niet ongedaan maken!",
+ "assets_restore_confirmation": "Weet je zeker dat je alle verwijderde assets wilt herstellen? Je kunt deze actie niet ongedaan maken! Offline assets kunnen op deze manier niet worden hersteld.",
"assets_restored_count": "{count, plural, one {# asset} other {# assets}} hersteld",
"assets_trashed_count": "{count, plural, one {# asset} other {# assets}} naar prullenbak verplaatst",
"assets_were_part_of_album_count": "{count, plural, one {Asset was} other {Assets waren}} al onderdeel van het album",
@@ -413,6 +432,7 @@
"birthdate_saved": "Geboortedatum succesvol opgeslagen",
"birthdate_set_description": "De geboortedatum wordt gebruikt om de leeftijd van deze persoon op het moment van de foto te berekenen.",
"blurred_background": "Vervaagde achtergrond",
+ "bugs_and_feature_requests": "Bugs & functieverzoeken",
"build": "Build",
"build_image": "Build image",
"bulk_delete_duplicates_confirmation": "Weet je zeker dat je {count, plural, one {# duplicate asset} other {# duplicate assets}} in bulk wilt verwijderen? Dit zal de grootste asset van elke groep behouden en alle andere duplicaten permanent verwijderen. Je kunt deze actie niet ongedaan maken!",
@@ -427,10 +447,6 @@
"cannot_merge_people": "Kan mensen niet samenvoegen",
"cannot_undo_this_action": "Je kunt deze actie niet ongedaan maken!",
"cannot_update_the_description": "Kan de beschrijving niet bijwerken",
- "cant_apply_changes": "Kan wijzigingen niet toepassen",
- "cant_get_faces": "Kan gezichten niet ophalen",
- "cant_search_people": "Kan mensen niet zoeken",
- "cant_search_places": "Kan plaatsen niet zoeken",
"change_date": "Wijzig datum",
"change_expiration_time": "Wijzig verlooptijd",
"change_location": "Wijzig locatie",
@@ -462,6 +478,7 @@
"confirm": "Bevestigen",
"confirm_admin_password": "Bevestig beheerder wachtwoord",
"confirm_delete_shared_link": "Weet je zeker dat je deze gedeelde link wilt verwijderen?",
+ "confirm_keep_this_delete_others": "Alle andere assets in de stack worden verwijderd, behalve deze. Weet je zeker dat je wilt doorgaan?",
"confirm_password": "Bevestig wachtwoord",
"contain": "Bevat",
"context": "Context",
@@ -511,16 +528,19 @@
"delete_key": "Verwijder sleutel",
"delete_library": "Verwijder bibliotheek",
"delete_link": "Verwijder link",
+ "delete_others": "Andere verwijderen",
"delete_shared_link": "Verwijder gedeelde link",
"delete_tag": "Tag verwijderen",
"delete_tag_confirmation_prompt": "Weet je zeker dat je de tag {tagName} wilt verwijderen?",
"delete_user": "Verwijder gebruiker",
"deleted_shared_link": "Gedeelde link verwijderd",
+ "deletes_missing_assets": "Verwijdert assets die ontbreken op de schijf",
"description": "Beschrijving",
"details": "Details",
"direction": "Richting",
"disabled": "Uitgeschakeld",
"disallow_edits": "Geen bewerkingen toestaan",
+ "discord": "Discord",
"discover": "Zoeken",
"dismiss_all_errors": "Negeer alle fouten",
"dismiss_error": "Negeer fout",
@@ -529,6 +549,7 @@
"display_original_photos": "Toon originele foto's",
"display_original_photos_setting_description": "Geef de voorkeur aan het weergeven van de originele foto bij het bekijken van een asset in plaats van thumbnails wanneer de originele asset webcompatibel is. Dit kan resulteren in lagere weergavesnelheid van foto's.",
"do_not_show_again": "Laat dit bericht niet meer zien",
+ "documentation": "Documentatie",
"done": "Klaar",
"download": "Downloaden",
"download_include_embedded_motion_videos": "Ingesloten video's",
@@ -541,13 +562,6 @@
"duplicates": "Duplicaten",
"duplicates_description": "Kies voor iedere groep welke, indien aanwezig, duplicaten zijn",
"duration": "Tijdsduur",
- "durations": {
- "days": "{days, plural, one {dag} other {{days, number} dagen}}",
- "hours": "{hours, plural, one {uur} other {{hours, number} uren}}",
- "minutes": "{minutes, plural, one {minuut} other {{minutes, number} minuten}}",
- "months": "{months, plural, one {maand} other {{months, number} maanden}}",
- "years": "{years, plural, one {jaar} other {{years, number} jaren}}"
- },
"edit": "Bewerken",
"edit_album": "Album bewerken",
"edit_avatar": "Avatar bewerken",
@@ -572,8 +586,6 @@
"editor_crop_tool_h2_aspect_ratios": "Beeldverhoudingen",
"editor_crop_tool_h2_rotation": "Rotatie",
"email": "E-mailadres",
- "empty": "",
- "empty_album": "Leeg album",
"empty_trash": "Prullenbak leegmaken",
"empty_trash_confirmation": "Weet je zeker dat je de prullenbak wilt legen? Hiermee worden alle assets in de prullenbak permanent uit Immich verwijderd.\nJe kunt deze actie niet ongedaan maken!",
"enable": "Inschakelen",
@@ -607,6 +619,7 @@
"failed_to_create_shared_link": "Fout bij maken van gedeelde link",
"failed_to_edit_shared_link": "Fout bij bewerken van gedeelde link",
"failed_to_get_people": "Fout bij ophalen van mensen",
+ "failed_to_keep_this_delete_others": "Het is niet gelukt om dit asset te behouden en de andere assets te verwijderen",
"failed_to_load_asset": "Kan asset niet laden",
"failed_to_load_assets": "Kan assets niet laden",
"failed_to_load_people": "Kan mensen niet laden",
@@ -634,8 +647,6 @@
"unable_to_change_location": "Kan locatie niet wijzigen",
"unable_to_change_password": "Kan wachtwoord niet veranderen",
"unable_to_change_visibility": "Kan de zichtbaarheid van {count, plural, one {# persoon} other {# mensen}} niet wijzigen",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "Kan inloggen met OAuth niet voltooie",
"unable_to_connect": "Kan niet verbinden",
"unable_to_connect_to_server": "Kan geen verbinding maken met server",
@@ -657,9 +668,10 @@
"unable_to_empty_trash": "Kan prullenbak niet legen",
"unable_to_enter_fullscreen": "Kan volledig scherm niet openen",
"unable_to_exit_fullscreen": "Kan volledig scherm niet afsluiten",
- "unable_to_get_comments_number": "Kan het aantal opmerkingen niet ophalen",
+ "unable_to_get_comments_number": "Niet mogelijk om het aantal opmerkingen op te halen",
"unable_to_get_shared_link": "Kan gedeelde link niet ophalen",
"unable_to_hide_person": "Kan persoon niet verbergen",
+ "unable_to_link_motion_video": "Kan bewegende video niet verbinden",
"unable_to_link_oauth_account": "Kan OAuth account niet koppelen",
"unable_to_load_album": "Kan album niet laden",
"unable_to_load_asset_activity": "Kan asset activiteit niet laden",
@@ -675,12 +687,10 @@
"unable_to_remove_album_users": "Kan gebruiker niet van album verwijderen",
"unable_to_remove_api_key": "Kan API sleutel niet verwijderen",
"unable_to_remove_assets_from_shared_link": "Kan assets niet verwijderen uit gedeelde link",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "Kan offline bestanden niet verwijderen",
"unable_to_remove_library": "Kan bibliotheek niet verwijderen",
- "unable_to_remove_offline_files": "Kan offline bestanden niet verwijderen",
"unable_to_remove_partner": "Kan partner niet verwijderen",
"unable_to_remove_reaction": "Kan reactie niet verwijderen",
- "unable_to_remove_user": "",
"unable_to_repair_items": "Kan items niet repareren",
"unable_to_reset_password": "Kan wachtwoord niet resetten",
"unable_to_resolve_duplicate": "Kan duplicaat niet oplossen",
@@ -700,6 +710,7 @@
"unable_to_submit_job": "Kan taak niet uitvoeren",
"unable_to_trash_asset": "Kan asset niet naar prullenbak verplaatsen",
"unable_to_unlink_account": "Kan account niet ontkoppelen",
+ "unable_to_unlink_motion_video": "Kan bewegende video niet los maken",
"unable_to_update_album_cover": "Kan album cover niet bijwerken",
"unable_to_update_album_info": "Kan albumgegevens niet bijwerken",
"unable_to_update_library": "Kan bibliotheek niet bijwerken",
@@ -709,10 +720,6 @@
"unable_to_update_user": "Kan gebruiker niet bijwerken",
"unable_to_upload_file": "Kan bestand niet uploaden"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Exif",
"exit_slideshow": "Diavoorstelling sluiten",
"expand_all": "Alles uitvouwen",
@@ -727,33 +734,28 @@
"external": "Extern",
"external_libraries": "Externe bibliotheken",
"face_unassigned": "Niet toegewezen",
- "failed_to_get_people": "Kan mensen niet ophalen",
+ "failed_to_load_assets": "Kan assets niet laden",
"favorite": "Favoriet",
"favorite_or_unfavorite_photo": "Foto markeren als of verwijderen uit favorieten",
"favorites": "Favorieten",
- "feature": "",
"feature_photo_updated": "Uitgelichte afbeelding bijgewerkt",
- "featurecollection": "",
"features": "Functies",
"features_setting_description": "Beheer de app functies",
"file_name": "Bestandsnaam",
"file_name_or_extension": "Bestandsnaam of extensie",
"filename": "Bestandsnaam",
- "files": "",
"filetype": "Bestandstype",
"filter_people": "Filter op mensen",
"find_them_fast": "Vind ze snel op naam door te zoeken",
"fix_incorrect_match": "Onjuiste overeenkomst corrigeren",
"folders": "Mappen",
"folders_feature_description": "Bladeren door de mapweergave van de foto's en video's op het bestandssysteem",
- "force_re-scan_library_files": "Forceer herscan van alle bibliotheekbestanden",
"forward": "Vooruit",
"general": "Algemeen",
"get_help": "Krijg hulp",
"getting_started": "Aan de slag",
"go_back": "Ga terug",
"go_to_search": "Ga naar zoeken",
- "go_to_share_page": "Ga naar de deelpagina",
"group_albums_by": "Groepeer albums op...",
"group_no": "Niet groeperen",
"group_owner": "Groeperen op eigenaar",
@@ -779,10 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Image}} genomen in {city}, {country} met {person1} en {person2} op {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Image}} genomen in {city}, {country} met {person1}, {person2}, en {person3} op {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Image}} genomen in {city}, {country} met {person1}, {person2}, en {additionalCount, number} anderen op {date}",
- "image_alt_text_people": "{count, plural, =1 {met {person1}} =2 {met {person1} en {person2}} =3 {met {person1}, {person2} en {person3}} other {met {person1}, {person2} en {others, number} anderen}}",
- "image_alt_text_place": "in {city}, {country}",
- "image_taken": "{isVideo, select, true {Video gemaakt} other {Afbeelding genomen}}",
- "img": "",
"immich_logo": "Immich logo",
"immich_web_interface": "Immich Web Interface",
"import_from_json": "Importeren vanuit JSON",
@@ -803,10 +801,11 @@
"invite_people": "Mensen uitnodigen",
"invite_to_album": "Uitnodigen voor album",
"items_count": "{count, plural, one {# item} other {# items}}",
- "job_settings_description": "",
"jobs": "Taken",
"keep": "Behouden",
"keep_all": "Behoud alle",
+ "keep_this_delete_others": "Deze behouden, andere verwijderen",
+ "kept_this_deleted_others": "Deze asset behouden en {count, plural, one {# andere asset} other {# andere assets}} verwijderd",
"keyboard_shortcuts": "Sneltoetsen",
"language": "Taal",
"language_setting_description": "Selecteer je voorkeurstaal",
@@ -818,33 +817,9 @@
"level": "Niveau",
"library": "Bibliotheek",
"library_options": "Bibliotheek opties",
- "license_account_info": "Je account heeft een licentie",
- "license_activated_subtitle": "Bedankt voor het ondersteunen van Immich en open-source software",
- "license_activated_title": "Je licentie is succesvol geactiveerd",
- "license_button_activate": "Activeren",
- "license_button_buy": "Kopen",
- "license_button_buy_license": "Koop licentie",
- "license_button_select": "Selecteren",
- "license_failed_activation": "Activeren licentie mislukt. Controleer je e-mail voor de juiste licentiesleutel!",
- "license_individual_description_1": "1 licentie per gebruiker op iedere server",
- "license_individual_title": "Individuele licentie",
- "license_info_licensed": "Gelicentieerd",
- "license_info_unlicensed": "Ongelicentieerd",
- "license_input_suggestion": "Heb je een licentie? Voer de sleutel hieronder in",
- "license_license_subtitle": "Koop een licentie om Immich te ondersteunen",
- "license_license_title": "LICENTIE",
- "license_lifetime_description": "Levenslange licentie",
- "license_per_server": "Per server",
- "license_per_user": "Per gebruiker",
- "license_server_description_1": "1 licentie per server",
- "license_server_description_2": "Licentie voor alle gebruikers op de server",
- "license_server_title": "Serverlicentie",
- "license_trial_info_1": "Je gebruikt een niet-gelicentieerde versie van Immich",
- "license_trial_info_2": "Je hebt Immich al gebruikt voor ongeveer",
- "license_trial_info_3": "{accountAge, plural, one {# dag} other {# dagen}}",
- "license_trial_info_4": "Overweeg een licentie te kopen om de verdere ontwikkeling van de service te ondersteunen",
"light": "Licht",
"like_deleted": "Like verwijderd",
+ "link_motion_video": "verbind bewegende video",
"link_options": "Opties voor link",
"link_to_oauth": "Koppel OAuth",
"linked_oauth_account": "Gekoppeld OAuth account",
@@ -863,6 +838,7 @@
"look": "Uiterlijk",
"loop_videos": "Video's herhalen",
"loop_videos_description": "Inschakelen om video's automatisch te herhalen in de detailweergave.",
+ "main_branch_warning": "U gebruikt een ontwikkelingsversie. Wij raden u ten zeerste aan een releaseversie te gebruiken!",
"make": "Merk",
"manage_shared_links": "Beheer gedeelde links",
"manage_sharing_with_partners": "Beheer delen met partners",
@@ -932,6 +908,7 @@
"notifications": "Meldingen",
"notifications_setting_description": "Beheer meldingen",
"oauth": "OAuth",
+ "official_immich_resources": "Officiële Immich bronnen",
"offline": "Offline",
"offline_paths": "Offline paden",
"offline_paths_description": "Deze resultaten kunnen te wijten zijn aan het handmatig verwijderen van bestanden die geen deel uitmaken van een externe bibliotheek.",
@@ -939,13 +916,11 @@
"oldest_first": "Oudste eerst",
"onboarding": "Onboarding",
"onboarding_privacy_description": "De volgende (optionele) functies zijn afhankelijk van externe services en kunnen op elk moment worden uitgeschakeld in de beheerdersinstellingen.",
- "onboarding_storage_template_description": "Wanneer ingeschakeld, zal deze functie bestanden automatisch organiseren gebaseerd op een gebruiker-definieerd template. Gezien de stabiliteitsproblemen is de functie standaard uitgeschakeld. Voor meer informatie, bekijk de [documentatie].",
"onboarding_theme_description": "Kies een kleurenthema voor de applicatie. Dit kun je later wijzigen in je instellingen.",
"onboarding_welcome_description": "Laten we de applicatie instellen met enkele veelgebruikte instellingen.",
"onboarding_welcome_user": "Welkom, {user}",
"online": "Online",
"only_favorites": "Alleen favorieten",
- "only_refreshes_modified_files": "Vernieuwt alleen gewijzigde bestanden",
"open_in_map_view": "Openen in kaartweergave",
"open_in_openstreetmap": "Openen in OpenStreetMap",
"open_the_search_filters": "Open de zoekfilters",
@@ -983,14 +958,12 @@
"people_edits_count": "{count, plural, one {# persoon} other {# mensen}} bijgewerkt",
"people_feature_description": "Bladeren door foto's en video's gegroepeerd op personen",
"people_sidebar_description": "Toon een link naar Mensen in de zijbalk",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Waarschuwing voor permanent verwijderen",
"permanent_deletion_warning_setting_description": "Toon een waarschuwing bij het permanent verwijderen van assets",
"permanently_delete": "Permanent verwijderen",
"permanently_delete_assets_count": "{count, plural, one {Asset} other {Assets}} permanent verwijderen",
"permanently_delete_assets_prompt": "Weet je zeker dat je deze {count, plural, one {asset} other {# assets}} permanent wilt verwijderen? Hiermee {count, plural, one {wordt} other {worden}} deze ook uit de bijbehorende album(s) verwijderd.",
"permanently_deleted_asset": "Asset permanent verwijderd",
- "permanently_deleted_assets": "{count, plural, one {# asset} other {# assets}} permanent verwijderd",
"permanently_deleted_assets_count": "{count, plural, one {# asset} other {# assets}} permanent verwijderd",
"person": "Persoon",
"person_hidden": "{name}{hidden, select, true { (verborgen)} other {}}",
@@ -1006,7 +979,6 @@
"play_memories": "Herinneringen afspelen",
"play_motion_photo": "Bewegingsfoto afspelen",
"play_or_pause_video": "Video afspelen of pauzeren",
- "point": "",
"port": "Poort",
"preset": "Voorinstelling",
"preview": "Voorbeeld",
@@ -1051,12 +1023,10 @@
"purchase_server_description_2": "Supporter badge",
"purchase_server_title": "Server",
"purchase_settings_server_activated": "De productcode van de server wordt beheerd door de beheerder",
- "range": "",
"rating": "Ster waardering",
"rating_clear": "Waardering verwijderen",
"rating_count": "{count, plural, one {# ster} other {# sterren}}",
"rating_description": "De EXIF-waardering weergeven in het infopaneel",
- "raw": "",
"reaction_options": "Reactie opties",
"read_changelog": "Lees wijzigingen",
"reassign": "Opnieuw toewijzen",
@@ -1064,14 +1034,17 @@
"reassigned_assets_to_new_person": "{count, plural, one {# asset} other {# assets}} opnieuw toegewezen aan een nieuw persoon",
"reassing_hint": "Geselecteerde assets toewijzen aan een bestaand persoon",
"recent": "Recent",
+ "recent-albums": "Recente albums",
"recent_searches": "Recente zoekopdrachten",
"refresh": "Vernieuwen",
"refresh_encoded_videos": "Vernieuw gecodeerde video's",
+ "refresh_faces": "Vernieuw gezichten",
"refresh_metadata": "Vernieuw metadata",
"refresh_thumbnails": "Vernieuw thumbnails",
"refreshed": "Verniewd",
- "refreshes_every_file": "Vernieuwt elk bestand",
+ "refreshes_every_file": "Vernieuwt alle bestaande en nieuwe bestanden",
"refreshing_encoded_video": "Gecodeerde video aan het vernieuwen",
+ "refreshing_faces": "Gezichten aan het vernieuwen",
"refreshing_metadata": "Metadata aan het vernieuwen",
"regenerating_thumbnails": "Thumbnails opnieuw aan het genereren",
"remove": "Verwijderen",
@@ -1079,10 +1052,11 @@
"remove_assets_shared_link_confirmation": "Weet je zeker dat je {count, plural, one {# asset} other {# assets}} uit deze gedeelde link wilt verwijderen?",
"remove_assets_title": "Assets verwijderen?",
"remove_custom_date_range": "Aangepast datumbereik verwijderen",
+ "remove_deleted_assets": "Verwijder offline bestanden",
"remove_from_album": "Verwijder uit album",
"remove_from_favorites": "Verwijderen uit favorieten",
"remove_from_shared_link": "Verwijderen uit gedeelde link",
- "remove_offline_files": "Verwijder offline bestanden",
+ "remove_url": "Verwijder URL",
"remove_user": "Gebruiker verwijderen",
"removed_api_key": "API sleutel verwijderd: {name}",
"removed_from_archive": "Verwijderd uit archief",
@@ -1099,7 +1073,6 @@
"reset": "Resetten",
"reset_password": "Wachtwoord resetten",
"reset_people_visibility": "Zichtbaarheid mensen resetten",
- "reset_settings_to_default": "",
"reset_to_default": "Resetten naar standaard",
"resolve_duplicates": "Duplicaten oplossen",
"resolved_all_duplicates": "Alle duplicaten verwerkt",
@@ -1119,8 +1092,7 @@
"saved_settings": "Instellingen opgeslagen",
"say_something": "Zeg iets",
"scan_all_libraries": "Scan alle bibliotheken",
- "scan_all_library_files": "Herscan alle bibliotheekbestanden",
- "scan_new_library_files": "Scan nieuwe bibliotheekbestanden",
+ "scan_library": "Scannen",
"scan_settings": "Scaninstellingen",
"scanning_for_album": "Scannen voor album...",
"search": "Zoeken",
@@ -1135,8 +1107,10 @@
"search_for_existing_person": "Zoek naar bestaande persoon",
"search_no_people": "Geen mensen",
"search_no_people_named": "Geen mensen genaamd \"{name}\"",
+ "search_options": "Zoekopties",
"search_people": "Zoek mensen",
"search_places": "Zoek plaatsen",
+ "search_settings": "Zoek instellingen",
"search_state": "Zoek staat...",
"search_tags": "Tags zoeken...",
"search_timezone": "Zoek tijdzone...",
@@ -1161,7 +1135,6 @@
"selected_count": "{count, plural, other {# geselecteerd}}",
"send_message": "Bericht versturen",
"send_welcome_email": "Stuur welkomstmail",
- "server": "Server",
"server_offline": "Server offline",
"server_online": "Server online",
"server_stats": "Serverstatistieken",
@@ -1204,6 +1177,7 @@
"show_person_options": "Toon persoonopties",
"show_progress_bar": "Toon voortgangsbalk",
"show_search_options": "Zoekopties weergeven",
+ "show_slideshow_transition": "Diavoorstellingsovergang tonen",
"show_supporter_badge": "Supporter badge",
"show_supporter_badge_description": "Toon een supporterbadge",
"shuffle": "Willekeurig",
@@ -1245,13 +1219,16 @@
"submit": "Verzenden",
"suggestions": "Suggesties",
"sunrise_on_the_beach": "Zonsopkomst op het strand",
+ "support": "Ondersteuning",
+ "support_and_feedback": "Ondersteuning & feedback",
+ "support_third_party_description": "Je Immich installatie is door een derde partij samengesteld. Problemen die je ervaart, kunnen door dat pakket veroorzaakt zijn. Meld problemen in eerste instantie bij hen via de onderstaande links.",
"swap_merge_direction": "Wissel richting voor samenvoegen om",
"sync": "Sync",
"tag": "Tag",
"tag_assets": "Assets taggen",
"tag_created": "Tag aangemaakt: {tag}",
"tag_feature_description": "Bladeren door foto's en video's gegroepeerd op tags",
- "tag_not_found_question": "Kun je een tag niet vinden? Maak er hier een aan",
+ "tag_not_found_question": "Kun je een tag niet vinden? Maak een nieuwe tag.",
"tag_updated": "Tag bijgewerkt: {tag}",
"tagged_assets": "{count, plural, one {# asset} other {# assets}} getagd",
"tags": "Tags",
@@ -1260,18 +1237,19 @@
"theme_selection": "Thema selectie",
"theme_selection_description": "Stel het thema automatisch in op licht of donker op basis van de systeemvoorkeuren van je browser",
"they_will_be_merged_together": "Zij zullen worden samengevoegd",
+ "third_party_resources": "Bronnen van derden",
"time_based_memories": "Tijdgebaseerde herinneringen",
+ "timeline": "Tijdlijn",
"timezone": "Tijdzone",
"to_archive": "Archiveren",
"to_change_password": "Wijzig wachtwoord",
"to_favorite": "Toevoegen aan favorieten",
"to_login": "Inloggen",
"to_parent": "Ga naar hoofdmap",
- "to_root": "Naar hoofdmap",
"to_trash": "Prullenbak",
"toggle_settings": "Zichtbaarheid instellingen wisselen",
"toggle_theme": "Donker thema toepassen",
- "toggle_visibility": "Zichtbaarheid wisselen",
+ "total": "Totaal",
"total_usage": "Totaal gebruik",
"trash": "Prullenbak",
"trash_all": "Verplaats alle naar prullenbak",
@@ -1281,14 +1259,13 @@
"trashed_items_will_be_permanently_deleted_after": "Items in de prullenbak worden na {days, plural, one {# dag} other {# dagen}} permanent verwijderd.",
"type": "Type",
"unarchive": "Herstellen uit archief",
- "unarchived": "Hersteld uit archief",
"unarchived_count": "{count, plural, other {# verwijderd uit archief}}",
"unfavorite": "Verwijderen uit favorieten",
"unhide_person": "Persoon zichtbaar maken",
"unknown": "Onbekend",
- "unknown_album": "Onbekend album",
"unknown_year": "Onbekend jaar",
"unlimited": "Onbeperkt",
+ "unlink_motion_video": "Maak bewegende video los",
"unlink_oauth": "Ontkoppel OAuth",
"unlinked_oauth_account": "OAuth account ontkoppeld",
"unnamed_album": "Naamloos album",
@@ -1317,13 +1294,13 @@
"use_custom_date_range": "Gebruik in plaats daarvan een aangepast datumbereik",
"user": "Gebruiker",
"user_id": "Gebruikers ID",
- "user_license_settings": "Licentie",
- "user_license_settings_description": "Beheer je licentie",
"user_liked": "{user} heeft {type, select, photo {deze foto} video {deze video} asset {deze asset} other {dit}} geliket",
"user_purchase_settings": "Kopen",
"user_purchase_settings_description": "Beheer je aankoop",
"user_role_set": "{user} instellen als {role}",
"user_usage_detail": "Gedetailleerd gebruik van gebruikers",
+ "user_usage_stats": "Statistieken van accountgebruik",
+ "user_usage_stats_description": "Bekijk statistieken van accountgebruik",
"username": "Gebruikersnaam",
"users": "Gebruikers",
"utilities": "Gereedschap",
@@ -1331,7 +1308,9 @@
"variables": "Variabelen",
"version": "Versie",
"version_announcement_closing": "Je vriend, Alex",
- "version_announcement_message": "Hallo vriend, er is een nieuwe versie van de applicatie beschikbaar. Neem de tijd om de release notes te bekijken en zorg ervoor dat je docker-compose.yml en .env up-to-date zijn om misconfiguraties te voorkomen, vooral als je WatchTower of een andere automatische update-mechanisme gebruikt.",
+ "version_announcement_message": "Hallo! Er is een nieuwe versie van Immich beschikbaar. Neem even de tijd om de release notes te lezen en zorg ervoor dat je setup up-to-date is om misconfiguraties te voorkomen, vooral als je WatchTower of een andere update-mechanisme gebruikt.",
+ "version_history": "Versiegeschiedenis",
+ "version_history_item": "{version} geïnstalleerd op {date}",
"video": "Video",
"video_hover_setting": "Speel video thumbnail af bij hoveren",
"video_hover_setting_description": "Speel video thumbnail af wanneer de muis over het item beweegt. Zelfs wanneer uitgeschakeld, kan het afspelen worden gestart door de muis over het afspeelpictogram te bewegen.",
@@ -1343,10 +1322,10 @@
"view_all_users": "Bekijk alle gebruikers",
"view_in_timeline": "Bekijk in tijdlijn",
"view_links": "Links bekijken",
+ "view_name": "Bekijken",
"view_next_asset": "Bekijk volgende asset",
"view_previous_asset": "Bekijk vorige asset",
"view_stack": "Bekijk stapel",
- "viewer": "Bekijker",
"visibility_changed": "Zichtbaarheid gewijzigd voor {count, plural, one {# persoon} other {# mensen}}",
"waiting": "Wachtend",
"warning": "Waarschuwing",
diff --git a/i18n/nn.json b/i18n/nn.json
new file mode 100644
index 0000000000..bfbb2dc2ac
--- /dev/null
+++ b/i18n/nn.json
@@ -0,0 +1,33 @@
+{
+ "about": "Om",
+ "account": "Konto",
+ "account_settings": "Kontoinnstillingar",
+ "acknowledge": "Godkjenn",
+ "action": "Handling",
+ "actions": "Handlingar",
+ "active": "Aktiv",
+ "activity": "Aktivitet",
+ "activity_changed": "Aktivitet er {enabled, select, true {aktivert} other {deaktivert}}",
+ "add": "Legg til",
+ "add_a_description": "Legg til ei skildring",
+ "add_a_location": "Legg til ein stad",
+ "add_a_name": "Legg til eit namn",
+ "add_a_title": "Legg til ein tittel",
+ "add_exclusion_pattern": "Legg til ekskluderingsmønster",
+ "add_import_path": "Legg til sti for importering",
+ "add_location": "Legg til stad",
+ "add_more_users": "Legg til fleire brukarar",
+ "add_partner": "Legg til partnar",
+ "add_path": "Legg til sti",
+ "add_photos": "Legg til bilete",
+ "add_to": "Legg til...",
+ "add_to_album": "Legg til album",
+ "add_to_shared_album": "Legg til delt album",
+ "add_url": "Legg til URL",
+ "added_to_archive": "Lagt til arkiv",
+ "added_to_favorites": "Lagt til favorittar",
+ "added_to_favorites_count": "Lagt {count, number} til favorittar",
+ "admin": {
+ "confirm_delete_library": "Er du sikker på at du vil slette biblioteket {library}?"
+ }
+}
diff --git a/web/src/lib/i18n/pl.json b/i18n/pl.json
similarity index 91%
rename from web/src/lib/i18n/pl.json
rename to i18n/pl.json
index ff06e41233..5aa732327e 100644
--- a/web/src/lib/i18n/pl.json
+++ b/i18n/pl.json
@@ -1,8 +1,8 @@
{
- "about": "O aplikacji",
+ "about": "O",
"account": "Konto",
- "account_settings": "Ustawienia Konta",
- "acknowledge": "Rozumiem",
+ "account_settings": "Ustawienia konta",
+ "acknowledge": "Zrozumiałem/łam",
"action": "Akcja",
"actions": "Akcje/i",
"active": "Aktywne",
@@ -23,16 +23,23 @@
"add_to": "Dodaj do...",
"add_to_album": "Dodaj do albumu",
"add_to_shared_album": "Dodaj do udostępnionego albumu",
+ "add_url": "Dodaj URL",
"added_to_archive": "Dodano do archiwum",
"added_to_favorites": "Dodano do ulubionych",
"added_to_favorites_count": "Dodano {count, number} do ulubionych",
"admin": {
"add_exclusion_pattern_description": "Dodaj wzorce wykluczające. Wspierane są specjalne sekwencje (glob) *, ** oraz ?. Aby ignorować całą zawartość wszystkich folderów nazwanych \"Raw\", użyj \"**/Raw/**\". Aby ignorować wszystkie pliki kończące się na \".tif\", użyj \"**/*.tif\". Aby ignorować ścieżkę absolutną, użyj \"/ścieżka/do/ignorowania/**\".",
+ "asset_offline_description": "Ten zewnętrzny zasób biblioteki nie jest już dostępny na dysku i został przeniesiony do kosza. Jeśli plik został przeniesiony w obrębie biblioteki, sprawdź swoją oś czasu pod kątem nowego odpowiadającego zasobu. Aby przywrócić ten zasób, upewnij się, że ścieżka pliku poniżej jest dostępna dla Immich i przeskanuj bibliotekę.",
"authentication_settings": "Ustawienia Uwierzytelnienia",
"authentication_settings_description": "Zarządzaj hasłem, OAuth i innymi ustawienia uwierzytelnienia",
"authentication_settings_disable_all": "Czy jesteś pewny, że chcesz wyłączyć wszystkie metody logowania? Logowanie będzie całkowicie wyłączone.",
"authentication_settings_reenable": "Aby ponownie włączyć, użyj Polecenia serwera.",
"background_task_job": "Zadania w Tle",
+ "backup_database": "Kopia zapasowa bazy danych",
+ "backup_database_enable_description": "Włącz kopię zapasową bazy danych",
+ "backup_keep_last_amount": "Ile poprzednich kopii zapasowych przechowywać",
+ "backup_settings": "Ustawienia kopii zapasowej",
+ "backup_settings_description": "Zarządzaj ustawieniami kopii zapasowej bazy dnaych",
"check_all": "Zaznacz Wszystko",
"cleared_jobs": "Usunięto zadania dla: {job}",
"config_set_by_file": "Konfiguracja pochodzi z pliku konfiguracyjnego",
@@ -41,35 +48,40 @@
"confirm_email_below": "Aby potwierdzić, wpisz \"{email}\" poniżej",
"confirm_reprocess_all_faces": "Czy na pewno chcesz ponownie przetworzyć wszystkie twarze? Spowoduje to utratę nazwanych osób.",
"confirm_user_password_reset": "Czy na pewno chcesz zresetować hasło użytkownika {user}?",
- "crontab_guru": "Crontab Guru",
+ "create_job": "Utwórz zadanie",
+ "cron_expression": "Wyrażenie Cron",
+ "cron_expression_description": "Ustaw intwerwał skanowania przy pomocy formatu Cron'a. Po więcej informacji na temat formatu Cron zobacz . Crontab Guru",
+ "cron_expression_presets": "Predefiniowane wyrażenia Cron'a",
"disable_login": "Wyłącz logowanie",
- "disabled": "Wyłączone",
"duplicate_detection_job_description": "Włącz uczenie maszynowe na zasobie aby wykrywać podobne obrazy. Ta funkcja opiera się na inteligentnym wyszukiwaniu",
"exclusion_pattern_description": "Wzory wykluczające pozwalają na ignorowanie plików i folderów podczas skanowania Twojej biblioteki. Są one przydatne na przykład gdy nie chcesz importować zdjęć w formacie RAW.",
"external_library_created_at": "Biblioteka zewnętrzna (stworzona dnia {date})",
"external_library_management": "Zarządzanie Bibliotekami Zewnętrznymi",
"face_detection": "Wykrywanie twarzy",
- "face_detection_description": "Wykrywanie twarzy w zasobach używając uczenia maszynowego. Twarze w filmach wykryte zostaną tylko jeżeli są widoczne w miniaturze. \"Wszystkie\" ponownie przetwarza wszystkie zasoby. \"Brakujące\" dodaje do kolejki tylko zasoby, które nie zostały jeszcze przetworzone. Wykryte twarze zostaną dodane do kolejki Rozpoznawania Twarzy, aby związać je z istniejącą osobą albo stworzyć nową osobę.",
+ "face_detection_description": "Wykrywanie twarzy w zasobach używając uczenia maszynowego. Twarze w filmach wykryte zostaną tylko jeżeli są widoczne w miniaturze. \"Wszystkie\" ponownie przetwarza wszystkie zasoby. \"Reset\" dodatkowo usuwa wszystkie bieżące dane twarzy. \"Brakujące\" dodaje do kolejki tylko zasoby, które nie zostały jeszcze przetworzone. Wykryte twarze zostaną dodane do kolejki Rozpoznawania Twarzy, aby związać je z istniejącą osobą albo stworzyć nową osobę.",
"facial_recognition_job_description": "Grupuj wykryte twarze. Ten krok uruchamiany jest po zakończeniu wykrywania twarzy. „Wszystkie” – ponownie kategoryzuje wszystkie twarze. „Brakujące” – kategoryzuje twarze, do których nie przypisano osoby.",
"failed_job_command": "Polecenie {command} nie powiodło się dla zadania: {job}",
"force_delete_user_warning": "UWAGA: Użytkownik i wszystkie zasoby użytkownika zostaną natychmiast trwale usunięte. Nie można tego cofnąć, a plików nie będzie można przywrócić.",
"forcing_refresh_library_files": "Wymuś skanowanie wszystkich pliki w bibliotece",
+ "image_format": "Format",
"image_format_description": "Użycie formatu WebP skutkuje utworzeniem plików o rozmiarze mniejszym niż w przypadku JPEG ale jego kodowanie trwa dłużej.",
"image_prefer_embedded_preview": "Preferuj podgląd wbudowany",
"image_prefer_embedded_preview_setting_description": "Jeśli to możliwe, używaj osadzonych podglądów w zdjęciach RAW jako danych wejściowych do przetwarzania obrazu. Może to zapewnić dokładniejsze kolory w przypadku niektórych obrazów, ale jakość podglądu zależy od aparatu, a obraz może zawierać więcej artefaktów kompresji.",
- "image_prefer_wide_gamut": "Preferuj szeroką gamę kolorów",
+ "image_prefer_wide_gamut": "Preferuj szeroką paletę barw",
"image_prefer_wide_gamut_setting_description": "Do wyświetlania miniatur użyj wyświetlacza P3. Dzięki temu lepiej zachowuje się intensywność obrazów o dużej ilości kolorów, ale obrazy mogą wyglądać inaczej na starych urządzeniach ze starą wersją przeglądarki. Obrazy sRGB są zachowywane jako sRGB, aby uniknąć przesunięć kolorów.",
- "image_preview_format": "Format podglądu",
- "image_preview_resolution": "Rozdzielczość podglądu",
- "image_preview_resolution_description": "Używane podczas przeglądania pojedynczego zdjęcia i do uczenia maszynowego. Wyższe rozdzielczości pozwalają zachować więcej szczegółów, ale kodowanie zajmuje więcej czasu, powoduje to też większe rozmiary plików i może zmniejszyć czas reakcji aplikacji.",
+ "image_preview_description": "Obraz średniej wielkości z wyciętymi metadanymi, używany podczas przeglądania pojedynczego zasobu i do uczenia maszynowego",
+ "image_preview_quality_description": "Jakość podglądu od 1 do 100. Wyższa jest lepsza, ale powoduje większe pliki i może zmniejszyć responsywność aplikacji. Ustawienie niskiej wartości może wpłynąć na jakość uczenia maszynowego.",
+ "image_preview_title": "Ustawienia podglądu",
"image_quality": "Jakość",
- "image_quality_description": "Jakość obrazu od 1 do 100. Wyższe wartości pozwalają uzyskać lepszą jakość ale skutkują większym rozmiarem pliku. Ta opcja wpływa na Podgląd i Miniaturki.",
+ "image_resolution": "Rozdzielczość",
+ "image_resolution_description": "Wyższe rozdzielczości pozwalają zachować więcej szczegółów, ale wymagają dłuższego kodowania, mają większy rozmiar pliku i mogą spowalniać reakcję aplikacji.",
"image_settings": "Ustawienia Obrazu",
"image_settings_description": "Zarządzaj jakością i rozdzielczością generowanych obrazów",
- "image_thumbnail_format": "Format miniatury",
- "image_thumbnail_resolution": "Rozdzielczość miniatury",
- "image_thumbnail_resolution_description": "Używane podczas przeglądania grup zdjęć (głównej osi czasu, widoku albumu itp.). Wyższe rozdzielczości pozwalają zachować więcej szczegółów, ale wyświetlenie ich zajmuje więcej czasu, powoduje też zwiększenie rozmiaru plików i może zmniejszyć czas reakcji aplikacji.",
+ "image_thumbnail_description": "Mała miniatura z wyciętymi metadanymi, używana podczas przeglądania grup zdjęć, takich jak główna oś czasu",
+ "image_thumbnail_quality_description": "Jakość miniatur od 1 do 100. Im wyższa, tym lepsza, ale powoduje to większy rozmiar plików i może spowolnić reakcję aplikacji.",
+ "image_thumbnail_title": "Ustawienia miniatur",
"job_concurrency": "{job} współbieżność",
+ "job_created": "Zadanie utworzone",
"job_not_concurrency_safe": "To zadanie nie może zostać wykonane w wielu wątkach.",
"job_settings": "Ustawienia Zadań",
"job_settings_description": "Zarządzaj współbieżnością zadań",
@@ -77,9 +89,6 @@
"jobs_delayed": "{jobCount, plural, other {# oczekujących}}",
"jobs_failed": "{jobCount, plural, other {# nieudane}}",
"library_created": "Utworzono bibliotekę: {library}",
- "library_cron_expression": "Wyrażenie Cron",
- "library_cron_expression_description": "Ustaw interwał skanowania, używając formatu cron. Więcej informacji znajdziesz m.in. Crontab Guru",
- "library_cron_expression_presets": "Proponowane wyrażenia Cron",
"library_deleted": "Biblioteka usunięta",
"library_import_path_description": "Określ folder do załadowania plików. Ten folder, łącznie z podfolderami, zostanie przeskanowany w poszukiwaniu obrazów i filmów.",
"library_scanning": "Okresowe Skanowanie",
@@ -122,7 +131,7 @@
"machine_learning_smart_search_description": "Szukaj obrazów semantycznie za pomocą CLIP",
"machine_learning_smart_search_enabled": "Włącz inteligentne wyszukiwanie",
"machine_learning_smart_search_enabled_description": "Jeżeli wyłączone, obrazy nie będą przygotowywane do inteligentnego wyszukiwania.",
- "machine_learning_url_description": "URL serwera uczenia maszynowego",
+ "machine_learning_url_description": "URL serwera uczenia maszynowego. Jeżeli podano więcej niż jeden URL, do każdego serwera będzie wysłane żądanie do tej pory dopóki chociaż jeden nie odpowie, w kolejności od pierwszego do ostatniego.",
"manage_concurrency": "Zarządzaj współbieżnością zadań",
"manage_log_settings": "Zarządzaj ustawieniami logów",
"map_dark_style": "Styl ciemny",
@@ -152,7 +161,7 @@
"note_cannot_be_changed_later": "UWAŻAJ: Nie można tego później zmienić!",
"note_unlimited_quota": "Wpisz by wyłączyć limit",
"notification_email_from_address": "Z adresu",
- "notification_email_from_address_description": "Adres e-mail nadawcy, na przykład: „Immich Photo Server {label} to jest etykieta przechowywania użytkownika",
"system_settings": "Ustawienia Systemowe",
+ "tag_cleanup_job": "Porządkowanie etykiet",
+ "template_email_available_tags": "Możesz uzyć tych zmiennych w swoim szablonie: {tags}",
+ "template_email_if_empty": "Zostaw puste, aby użyć domyślny adres e-mail.",
+ "template_email_invite_album": "Szablon zaproszenia do albumu",
+ "template_email_preview": "Podgląd",
+ "template_email_settings": "Szablony e-mail",
+ "template_email_settings_description": "Zarządzaj niestandardowymi e-mail powiadomieniami",
+ "template_email_update_album": "Szablon aktualizacji albumu",
+ "template_email_welcome": "Szablon powitalnego e-mail",
+ "template_settings": "Szablony Powiadomień",
+ "template_settings_description": "Zarządzaj niestandardowymi szablonami powiadomień e-mail.",
"theme_custom_css_settings": "Własny CSS",
"theme_custom_css_settings_description": "Właśny CSS pozwala na zmianę wyglądu aplikacji Immich.",
"theme_settings": "Ustawienia Motywu",
@@ -245,7 +267,6 @@
"these_files_matched_by_checksum": "Pliki te są powiązane na podstawie ich sum kontrolnych",
"thumbnail_generation_job": "Stwórz Miniaturki",
"thumbnail_generation_job_description": "Generuj duże, małe i rozmyte miniatury dla każdego zasobu, a także miniatury dla każdej osoby",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "API akceleracji",
"transcoding_acceleration_api_description": "Interfejs API, używany w celu przyspieszenia transkodowania. W przypadku niepowodzenia zostanie użyte transkodowanie programowe. Format VP9 może, ale nie musi, działać w zależności od sprzętu.",
"transcoding_acceleration_nvenc": "NVENC (wymaga NVIDIA GPU)",
@@ -271,7 +292,7 @@
"transcoding_hardware_acceleration": "Przyspieszenie Sprzętowe",
"transcoding_hardware_acceleration_description": "Eksperymentalny; znacznie szybszy, ale będzie miał niższą jakość przy tej samej szybkości transmisji",
"transcoding_hardware_decoding": "Dekodowanie sprzętowe",
- "transcoding_hardware_decoding_setting_description": "Dotyczy tylko NVENC, QSV i RKMPP. Umożliwia całkowite przyspieszenie sprzętowe zamiast tylko przyspieszania kodowania. Może nie działać we wszystkich filmach.",
+ "transcoding_hardware_decoding_setting_description": "Umożliwia całkowite przyspieszenie sprzętowe zamiast tylko przyspieszania kodowania. Może nie działać we wszystkich filmach.",
"transcoding_hevc_codec": "Kodek HEVC",
"transcoding_max_b_frames": "Maksymalne klatki B (B-Frames)",
"transcoding_max_b_frames_description": "Wyższe wartości poprawiają wydajność kompresji, ale spowalniają kodowanie. Może nie być kompatybilny z akceleracją sprzętową na starszych urządzeniach. 0 wyłącza klatki B (B-frames), natomiast -1 ustawia tę wartość automatycznie.",
@@ -297,8 +318,6 @@
"transcoding_threads_description": "Wyższe wartości prowadzą do szybszego kodowania, ale pozostawiają mniej zasobów serwerowi na przetwarzanie innych zadań, gdy jest ono aktywne. Wartość ta nie powinna być większa niż liczba rdzeni procesora. Maksymalizuje wykorzystanie, jeśli jest ustawione na 0.",
"transcoding_tone_mapping": "Mapowanie tonów",
"transcoding_tone_mapping_description": "Próbuje zachować wygląd filmów HDR po konwersji do SDR. Każdy algorytm dokonuje różnych kompromisów w zakresie koloru, szczegółowości i jasności. Hable zachowuje szczegóły, Mobius kolor, a Reinhard jasność.",
- "transcoding_tone_mapping_npl": "Mapowanie tonów NPL",
- "transcoding_tone_mapping_npl_description": "Kolory zostaną dostosowane tak, aby wyglądały normalnie w przypadku wyświetlacza o tej jasności. Wbrew intuicji niższe wartości zwiększają jasność wideo i odwrotnie, ponieważ kompensują jasność wyświetlacza. 0 ustawia tę wartość automatycznie.",
"transcoding_transcode_policy": "Zasady transkodowania",
"transcoding_transcode_policy_description": "Zasady dotyczące transkodowania filmu. Filmy HDR będą zawsze transkodowane (z wyjątkiem sytuacji, gdy transkodowanie jest wyłączone).",
"transcoding_two_pass_encoding": "Kodowanie dwuprzebiegowe",
@@ -312,6 +331,7 @@
"trash_settings_description": "Zarządzaj ustawieniami kosza",
"untracked_files": "Nieśledzone pliki",
"untracked_files_description": "Pliki te nie są śledzone przez aplikację. Mogą być wynikiem nieudanych przeniesień, przerwanego przesyłania lub pozostawienia z powodu błędu",
+ "user_cleanup_job": "Porządkowanie użytkownika",
"user_delete_delay": "Konto {user} oraz jego zasoby zostaną zaplanowane do trwałego usunięcia za {delay, plural, one {# dzień} few {# dni} many {# dni} other {# dni}}.",
"user_delete_delay_settings": "Usuń opóźnienie",
"user_delete_delay_settings_description": "Liczba dni po usunięciu, po której następuje trwałe usunięcie konta użytkownika i zasobów. Zadanie usuwania użytkowników jest uruchamiane o północy w celu sprawdzenia, czy użytkownicy są gotowi do usunięcia. Zmiany tego ustawienia zostaną sprawdzone przy następnym wykonaniu.",
@@ -378,7 +398,6 @@
"archive_or_unarchive_photo": "Dodaj lub usuń zasób z archiwum",
"archive_size": "Rozmiar archiwum",
"archive_size_description": "Podziel pobierane pliki na więcej niż jedno archiwum, jeżeli rozmiar archiwum przekroczy tę wartość w GiB",
- "archived": "Zarchiwizowano",
"archived_count": "{count, plural, other {Zarchiwizowano #}}",
"are_these_the_same_person": "Czy to jedna i ta sama osoba?",
"are_you_sure_to_do_this": "Czy aby na pewno chcesz to zrobić?",
@@ -389,8 +408,9 @@
"asset_has_unassigned_faces": "Zasób ma nieprzypisane twarze",
"asset_hashing": "Hashowanie...",
"asset_offline": "Zasób niedostępny",
- "asset_offline_description": "Ten zasób jest offline. Immich nie może uzyskać dostępu do jego lokalizacji pliku. Upewnij się, że zasób jest dostępny, a następnie ponownie zeskanuj bibliotekę.",
+ "asset_offline_description": "Ten zewnętrzny zasób nie jest już dostępny na dysku. Aby uzyskać pomoc, skontaktuj się z administratorem Immich.",
"asset_skipped": "Pominięto",
+ "asset_skipped_in_trash": "W koszu",
"asset_uploaded": "Przesłano",
"asset_uploading": "Przesyłanie...",
"assets": "Zasoby",
@@ -398,11 +418,10 @@
"assets_added_to_album_count": "Dodano {count, plural, one {# zasób} few {# zasoby} many {# zasobów} other {# zasobów}} do albumu",
"assets_added_to_name_count": "Dodano {count, plural, one {# zasób} few {# zasoby} many {# zasobów} other {# zasobów}} do {hasName, select, true {{name}} other {new album}}",
"assets_count": "{count, plural, one {# zasób} few {# zasoby} many {# zasobów} other {# zasobów}}",
- "assets_moved_to_trash": "{count, plural, one {# zasób został przeniesiony} few {# zasoby zostały przeniesione} other {# zasobów zostało przeniesione}} do kosza",
"assets_moved_to_trash_count": "Przeniesiono {count, plural, one {# zasób} few {# zasoby} many {# zasobów} other {# zasobów}} do kosza",
"assets_permanently_deleted_count": "Trwale usunięto {count, plural, one {# zasób} few {# zasoby} many {# zasobów} other {# zasobów}}",
"assets_removed_count": "Usunięto {count, plural, one {# zasób} few {# zasoby} many {# zasobów} other {# zasobów}}",
- "assets_restore_confirmation": "Na pewno chcesz przywrócić wszystkie zasoby z kosza? Nie da się tego cofnąć!",
+ "assets_restore_confirmation": "Na pewno chcesz przywrócić wszystkie zasoby z kosza? Nie da się tego cofnąć! Należy pamiętać, że w ten sposób nie można przywrócić zasobów offline.",
"assets_restored_count": "Przywrócono {count, plural, one {# zasób} few {# zasoby} many {# zasobów} other {# zasobów}}",
"assets_trashed_count": "Wrzucono do kosza {count, plural, one {# zasób} few {# zasoby} many {# zasobów} other {# zasobów}}",
"assets_were_part_of_album_count": "{count, plural, one {Zasób był} few {Zasoby były} many {Zasobów było} other {Zasobów było}} już częścią albumu",
@@ -413,6 +432,7 @@
"birthdate_saved": "Data urodzenia zapisana pomyślnie",
"birthdate_set_description": "Data urodzenia jest używana do obliczenia wieku danej osoby podczas wykonania zdjęcia.",
"blurred_background": "Rozmyte tło",
+ "bugs_and_feature_requests": "Błędy i prośby o funkcje",
"build": "Kompilacja",
"build_image": "Obraz Buildu",
"bulk_delete_duplicates_confirmation": "Czy na pewno chcesz trwale usunąć {count, plural, one {# zduplikowany zasób} few {# zduplikowane zasoby} many {# zduplikowanych zasobów} other {# zduplikowanych zasobów}}? Zostanie zachowany największy zasób z każdej grupy, a wszystkie pozostałe duplikaty zostaną trwale usunięte. Nie można cofnąć tej operacji!",
@@ -427,10 +447,6 @@
"cannot_merge_people": "Złączenie osób nie powiodło się",
"cannot_undo_this_action": "Nie da się tego cofnąć!",
"cannot_update_the_description": "Nie można zaktualizować opisu",
- "cant_apply_changes": "Nie można zapisać zmian",
- "cant_get_faces": "Nie można pobrać twarzy",
- "cant_search_people": "Nie można wyszukiwać osób",
- "cant_search_places": "Nie można wyszukiwać miejsc",
"change_date": "Zmień datę",
"change_expiration_time": "Zmień czas ważności",
"change_location": "Zmień lokalizację",
@@ -462,6 +478,7 @@
"confirm": "Potwierdź",
"confirm_admin_password": "Potwierdź Hasło Administratora",
"confirm_delete_shared_link": "Czy na pewno chcesz usunąć ten udostępniony link?",
+ "confirm_keep_this_delete_others": "Wszystkie inne zasoby zostaną usunięte poza tym zasobem. Czy jesteś pewien, że chcesz kontynuować?",
"confirm_password": "Potwierdź hasło",
"contain": "Zawiera",
"context": "Kontekst",
@@ -511,16 +528,19 @@
"delete_key": "Usuń klucz",
"delete_library": "Usuń bibliotekę",
"delete_link": "Usuń link",
+ "delete_others": "Usuń inne",
"delete_shared_link": "Usuń udostępniony link",
"delete_tag": "Usuń etykietę",
"delete_tag_confirmation_prompt": "Czy na pewno chcesz usunąć etykietę {tagName}?",
"delete_user": "Usuń użytkownika",
"deleted_shared_link": "Pomyślnie usunięto udostępniony link",
+ "deletes_missing_assets": "Usuwa brakujące zasoby z dysku",
"description": "Opis",
"details": "Szczegóły",
"direction": "Kierunek",
"disabled": "Wyłączone",
"disallow_edits": "Nie pozwalaj edytować",
+ "discord": "Discord",
"discover": "Odkryj",
"dismiss_all_errors": "Odrzuć wszystkie błędy",
"dismiss_error": "Odrzuć błąd",
@@ -529,6 +549,7 @@
"display_original_photos": "Wyświetlaj oryginalne zdjęcia",
"display_original_photos_setting_description": "Wyświetlając zdjęcia i filmy, preferuj oryginalny plik zamiast miniatur jeżeli jest działa on w przeglądarce. Może to skutkować wolniejszym ładowaniem zdjęć i filmów.",
"do_not_show_again": "Nie pokazuj więcej tej wiadomości",
+ "documentation": "Dokumentacja",
"done": "Gotowe",
"download": "Pobierz",
"download_include_embedded_motion_videos": "Osadzone filmy",
@@ -541,13 +562,6 @@
"duplicates": "Duplikaty",
"duplicates_description": "Rozstrzygnij każdą grupę, określając, które zasoby, jeśli takie istnieją, są duplikatami",
"duration": "Czas trwania",
- "durations": {
- "days": "{days, plural, one {dzień} other {{days, number} dni}}",
- "hours": "{hours, plural, one {godzina} few {{hours, number} godziny} other {{hours, number} godzin}}",
- "minutes": "{minutes, plural, one {minuta} few {{minutes, number} minuty} other {{minutes, number} minut}}",
- "months": "{months, plural, one {miesiąc} few {{months, number} miesiące} other {{months, number} miesięcy}}",
- "years": "{years, plural, one {rok} few {{years, number} lata} other {{years, number} lat}}"
- },
"edit": "Edytuj",
"edit_album": "Edytuj album",
"edit_avatar": "Edytuj awatar",
@@ -572,8 +586,6 @@
"editor_crop_tool_h2_aspect_ratios": "Proporcje obrazu",
"editor_crop_tool_h2_rotation": "Obrót",
"email": "E-mail",
- "empty": "",
- "empty_album": "Pusty Album",
"empty_trash": "Opróżnij kosz",
"empty_trash_confirmation": "Czy na pewno chcesz opróżnić kosz? Spowoduje to trwałe usunięcie wszystkich zasobów znajdujących się w koszu z Immich.\nNie można cofnąć tej operacji!",
"enable": "Włącz",
@@ -607,6 +619,7 @@
"failed_to_create_shared_link": "Nie udało się utworzyć udostępnionego linku",
"failed_to_edit_shared_link": "Nie udało się edytować udostępnionego linku",
"failed_to_get_people": "Nie udało się pozyskać osób",
+ "failed_to_keep_this_delete_others": "Nie udało się zachować tego zasobu i usunąć innych zasobów",
"failed_to_load_asset": "Nie udało się załadować zasobu",
"failed_to_load_assets": "Nie udało się załadować zasobów",
"failed_to_load_people": "Błąd pobierania ludzi",
@@ -634,8 +647,6 @@
"unable_to_change_location": "Nie można zmienić lokalizacji",
"unable_to_change_password": "Nie można zmienić hasła",
"unable_to_change_visibility": "Nie można zmienić widoczności dla {count, plural, one {# osoby} other {# osób}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "Nie można ukończyć logowania przy użyciu OAuth",
"unable_to_connect": "Nie można się połączyć",
"unable_to_connect_to_server": "Nie można się połączyć z serwerem",
@@ -660,6 +671,7 @@
"unable_to_get_comments_number": "Nie udało się uzyskać liczby komentarzy",
"unable_to_get_shared_link": "Nie udało się uzyskać udostępnionego linku",
"unable_to_hide_person": "Ukrycie osoby nie powiodło się",
+ "unable_to_link_motion_video": "Nie można podłączyć ruchome wideo",
"unable_to_link_oauth_account": "Nie można powiązać konta OAuth",
"unable_to_load_album": "Ładowanie albumu nie powiodło się",
"unable_to_load_asset_activity": "Ładowanie aktywności nie powiodło się",
@@ -675,12 +687,10 @@
"unable_to_remove_album_users": "Usunięcie użytkowników z albumu nie powiodło się",
"unable_to_remove_api_key": "Usunięcie Klucza API nie powiodło się",
"unable_to_remove_assets_from_shared_link": "Nie można usunąć zasobów z udostępnionego linku",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "Usunięcie niedostępnych plików nie powiodło się",
"unable_to_remove_library": "Usunięcie biblioteki nie powiodło się",
- "unable_to_remove_offline_files": "Usunięcie niedostępnych plików nie powiodło się",
"unable_to_remove_partner": "Nie można usunąć partnerów",
"unable_to_remove_reaction": "Usunięcie reakcji nie powiodło się",
- "unable_to_remove_user": "",
"unable_to_repair_items": "Naprawianie elementów nie powiodło się",
"unable_to_reset_password": "Nie można resetować hasła",
"unable_to_resolve_duplicate": "Usuwanie duplikatów nie powiodło się",
@@ -700,6 +710,7 @@
"unable_to_submit_job": "Nie można przesłać zadania",
"unable_to_trash_asset": "Przeniesienie zasobu do kosza nie powiodło się",
"unable_to_unlink_account": "Odłączenie konta nie powiodło się",
+ "unable_to_unlink_motion_video": "Nie można odłączyć ruchomego wideo",
"unable_to_update_album_cover": "Nie można zaktualizować okładki albumu",
"unable_to_update_album_info": "Nie można zaktualizować informacji o albumie",
"unable_to_update_library": "Nie można zaktualizować biblioteki",
@@ -709,10 +720,6 @@
"unable_to_update_user": "Zmiana użytkownika nie powiodła się",
"unable_to_upload_file": "Nie można przesłać pliku"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Metadane EXIF",
"exit_slideshow": "Zamknij Pokaz Slajdów",
"expand_all": "Rozwiń wszystko",
@@ -727,33 +734,28 @@
"external": "Zewnętrzny",
"external_libraries": "Biblioteki Zewnętrzne",
"face_unassigned": "Nieprzypisany",
- "failed_to_get_people": "Pobieranie osób nie powiodło się",
+ "failed_to_load_assets": "Nie udało się załadować zasobów",
"favorite": "Ulubione",
"favorite_or_unfavorite_photo": "Dodaj lub usuń z ulubionych",
"favorites": "Ulubione",
- "feature": "",
"feature_photo_updated": "Pomyślnie zmieniono główne zdjęcie",
- "featurecollection": "",
"features": "Funkcje",
"features_setting_description": "Zarządzaj funkcjami aplikacji",
"file_name": "Nazwa pliku",
"file_name_or_extension": "Nazwie lub rozszerzeniu pliku",
"filename": "Nazwa pliku",
- "files": "",
"filetype": "Typ pliku",
"filter_people": "Szukaj osoby",
"find_them_fast": "Wyszukuj szybciej przypisując nazwę",
"fix_incorrect_match": "Napraw nieprawidłowe dopasowanie",
"folders": "Foldery",
"folders_feature_description": "Przeglądanie zdjęć i filmów w widoku folderów",
- "force_re-scan_library_files": "Wymuś ponowne przeskanowanie wszystkich plików biblioteki",
"forward": "Do przodu",
"general": "Ogólne",
"get_help": "Pomoc",
"getting_started": "Pierwsze kroki",
"go_back": "Wstecz",
"go_to_search": "Przejdź do wyszukiwania",
- "go_to_share_page": "Przejdź na udostępnioną stronę",
"group_albums_by": "Grupuj albumy...",
"group_no": "Brak grupowania",
"group_owner": "Grupuj według właściciela",
@@ -779,10 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Wideo} other {Zdjęcie}} zrobione w {city}, {country} z {person1} i {person2} dnia {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Wideo} other {Zdjęcie}} zrobione w {city}, {country} z {person1}, {person2} i {person3} dnia {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Wideo} other {Zdjęcie}} zrobione w {city}, {country} z {person1}, {person2} i {additionalCount, number} innymi dnia {date}",
- "image_alt_text_people": "{count, plural, =1 {z {person1}} =2 {z {person1} i {person2}} =3 {z {person1}, {person2} i {person3}} other {z {person1}, {person2} i {others, number} innymi}}",
- "image_alt_text_place": "w {city}, {country}",
- "image_taken": "{isVideo, select, true {nagrany film} other {zrobione zdjęcie}}",
- "img": "",
"immich_logo": "Logo Immich",
"immich_web_interface": "Interfejs internetowy Immich",
"import_from_json": "Wczytaj z JSON",
@@ -803,10 +801,11 @@
"invite_people": "Zaproś Osoby",
"invite_to_album": "Zaproś do albumu",
"items_count": "{count, plural, one {# element} other {# elementy}}",
- "job_settings_description": "",
"jobs": "Zadania",
"keep": "Zachowaj",
"keep_all": "Zachowaj wszystko",
+ "keep_this_delete_others": "Zachowaj to, usuń inne",
+ "kept_this_deleted_others": "Zachowano ten zasób i usunięto {count, plural, one {#zasób} other {#zasoby}}",
"keyboard_shortcuts": "Skróty klawiaturowe",
"language": "Język",
"language_setting_description": "Wybierz swój preferowany język",
@@ -820,6 +819,7 @@
"library_options": "Opcje biblioteki",
"light": "Jasny",
"like_deleted": "Polubienie usunięte",
+ "link_motion_video": "Podłącz ruchome wideo",
"link_options": "Opcje linku",
"link_to_oauth": "Połącz z OAuth",
"linked_oauth_account": "Połączone konto OAuth",
@@ -838,6 +838,7 @@
"look": "Wygląd",
"loop_videos": "Powtarzaj filmy",
"loop_videos_description": "Włącz automatyczne zapętlanie wideo w przeglądarce szczegółów.",
+ "main_branch_warning": "Używasz wersji deweloperskiej. Rekomendujemy instalację stabilnej wersji aplikacji!",
"make": "Marka",
"manage_shared_links": "Zarządzaj udostępnionymi linkami",
"manage_sharing_with_partners": "Zarządzaj dzieleniem z partnerami",
@@ -907,6 +908,7 @@
"notifications": "Powiadomienia",
"notifications_setting_description": "Zarządzanie powiadomieniami",
"oauth": "OAuth",
+ "official_immich_resources": "Oficjalne zasoby Immicha",
"offline": "Offline",
"offline_paths": "Ścieżki offline",
"offline_paths_description": "Te wyniki mogą być spowodowane ręcznym usunięciem plików, które nie są częścią zewnętrznej biblioteki.",
@@ -919,7 +921,6 @@
"onboarding_welcome_user": "Witaj, {user}",
"online": "Połączony",
"only_favorites": "Tylko ulubione",
- "only_refreshes_modified_files": "Odświeża tylko zmodyfikowane pliki",
"open_in_map_view": "Otwórz w widoku mapy",
"open_in_openstreetmap": "Otwórz w OpenStreetMap",
"open_the_search_filters": "Otwórz filtry wyszukiwania",
@@ -957,7 +958,6 @@
"people_edits_count": "Edytowano {count, plural, one {# osoba} few {# osoby} many {# osób} other {# osób}}",
"people_feature_description": "Przeglądanie zdjęć i filmów pogrupowanych według osób",
"people_sidebar_description": "Pokazuj link do Osób w panelu bocznym",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Ostrzeżenie o trwałym usunięciu",
"permanent_deletion_warning_setting_description": "Pokaż ostrzeżenie przy trwałym usuwaniu zasobów",
"permanently_delete": "Usuń trwale",
@@ -979,7 +979,6 @@
"play_memories": "Odtwórz wspomnienia",
"play_motion_photo": "Odtwórz Ruchome Zdjęcie",
"play_or_pause_video": "Odtwórz lub wstrzymaj wideo",
- "point": "",
"port": "Port",
"preset": "Ustawienie",
"preview": "Podgląd",
@@ -1024,12 +1023,10 @@
"purchase_server_description_2": "Status wspierającego",
"purchase_server_title": "Serwer",
"purchase_settings_server_activated": "Klucz produktu serwera jest zarządzany przez administratora",
- "range": "",
"rating": "Ocena gwiazdkowa",
"rating_clear": "Wyczyść oceną",
"rating_count": "{count, plural, one {# gwiazdka} other {# gwiazdek}}",
"rating_description": "Wyświetl ocenę z EXIF w panelu informacji",
- "raw": "",
"reaction_options": "Opcje reakcji",
"read_changelog": "Zobacz Zmiany",
"reassign": "Przypisz ponownie",
@@ -1037,14 +1034,17 @@
"reassigned_assets_to_new_person": "Przypisano ponownie {count, plural, one {# zasób} other {# zasobów}} do nowej osoby",
"reassing_hint": "Przypisz wybrane zasoby do istniejącej osoby",
"recent": "Ostatnie",
+ "recent-albums": "Ostatnie albumy",
"recent_searches": "Ostatnie wyszukiwania",
"refresh": "Odśwież",
"refresh_encoded_videos": "Odśwież enkodowane wideo",
+ "refresh_faces": "Odśwież twarze",
"refresh_metadata": "Odśwież metadane",
"refresh_thumbnails": "Odśwież miniatury",
"refreshed": "Odświeżone",
- "refreshes_every_file": "Odświeża każdy plik",
+ "refreshes_every_file": "Ponownie odczytuje wszystkie istniejące i nowe pliki",
"refreshing_encoded_video": "Odświeżanie enkodowanych wideo",
+ "refreshing_faces": "Odświeżanie twarzy",
"refreshing_metadata": "Odświeżanie metadanych",
"regenerating_thumbnails": "Regenerowanie miniatur",
"remove": "Usuń",
@@ -1052,10 +1052,11 @@
"remove_assets_shared_link_confirmation": "Czy na pewno chcesz usunąć {count, plural, one {# zasób} other {# zasoby}} z tego udostępnionego linku?",
"remove_assets_title": "Usunąć zasoby?",
"remove_custom_date_range": "Usuń niestandardowy zakres dat",
+ "remove_deleted_assets": "Usuń Niedostępne Pliki",
"remove_from_album": "Usuń z albumu",
"remove_from_favorites": "Usuń z ulubionych",
"remove_from_shared_link": "Usuń z udostępnionego linku",
- "remove_offline_files": "Usuń Niedostępne Pliki",
+ "remove_url": "Usuń URL",
"remove_user": "Usuń użytkownika",
"removed_api_key": "Usunięto Klucz API: {name}",
"removed_from_archive": "Usunięto z archiwum",
@@ -1072,7 +1073,6 @@
"reset": "Reset",
"reset_password": "Resetuj hasło",
"reset_people_visibility": "Zresetuj widoczność osób",
- "reset_settings_to_default": "",
"reset_to_default": "Przywróć ustawienia domyślne",
"resolve_duplicates": "Rozwiąż problemy z duplikatami",
"resolved_all_duplicates": "Rozwiązano wszystkie duplikaty",
@@ -1092,8 +1092,7 @@
"saved_settings": "Zapisane ustawienia",
"say_something": "Powiedz coś",
"scan_all_libraries": "Skanuj wszystkie biblioteki",
- "scan_all_library_files": "Przeskanuj ponownie wszystkie biblioteki",
- "scan_new_library_files": "Skanuj nowe pliki biblioteki",
+ "scan_library": "Skanuj",
"scan_settings": "Ustawienia Skanowania",
"scanning_for_album": "Skanuję album...",
"search": "Szukaj",
@@ -1108,8 +1107,10 @@
"search_for_existing_person": "Wyszukaj istniejącą osobę",
"search_no_people": "Brak osób",
"search_no_people_named": "Brak osób nazwanych \"{name}\"",
+ "search_options": "Opcje wyszukiwania",
"search_people": "Wyszukaj osoby",
"search_places": "Wyszukaj miejsca",
+ "search_settings": "Ustawienia przeszukiwania",
"search_state": "Wyszukaj stan...",
"search_tags": "Wyszukaj etykiety...",
"search_timezone": "Wyszukaj strefę czasową...",
@@ -1134,7 +1135,6 @@
"selected_count": "{count, plural, other {# wybrane}}",
"send_message": "Wyślij wiadomość",
"send_welcome_email": "Wyślij e-mail powitalny",
- "server": "Serwer",
"server_offline": "Serwer Offline",
"server_online": "Serwer Online",
"server_stats": "Statystyki serwera",
@@ -1177,6 +1177,7 @@
"show_person_options": "Pokaż opcje osoby",
"show_progress_bar": "Pokaż pasek postępu",
"show_search_options": "Wyświetl opcje wyszukiwania",
+ "show_slideshow_transition": "Pokaż przejście pokazu slajdów",
"show_supporter_badge": "Odznaka wspierającego",
"show_supporter_badge_description": "Pokaż odznakę wspierającego",
"shuffle": "Losuj",
@@ -1218,13 +1219,16 @@
"submit": "Zatwierdź",
"suggestions": "Sugestie",
"sunrise_on_the_beach": "Wschód słońca na plaży",
+ "support": "Wsparcie",
+ "support_and_feedback": "Wsparcie i opinie",
+ "support_third_party_description": "Twoja instalacja immich została spakowana przez trzecią stronę. Problemy, które napotykasz, mogą być spowodowane przez ten pakiet, więc w pierwszej kolejności zgłaszaj problemy u nich, korzystając z poniższych linków.",
"swap_merge_direction": "Zmień kierunek złączenia",
"sync": "Synchronizuj",
"tag": "Etykieta",
"tag_assets": "Ustaw etykiety zasobów",
"tag_created": "Stworzono etykietę: {tag}",
"tag_feature_description": "Przeglądanie zdjęć i filmów pogrupowanych według logicznych etykiet wskazujących temat",
- "tag_not_found_question": "Nie możesz znaleźć etykiety? Utwórz ją tutaj",
+ "tag_not_found_question": "Nie możesz znaleźć etykiety? Utwórz ją tutaj",
"tag_updated": "Uaktualniono etykietę: {tag}",
"tagged_assets": "Przypisano etykietę {count, plural, one {# zasobowi} other {# zasobom}}",
"tags": "Etykiety",
@@ -1233,16 +1237,19 @@
"theme_selection": "Wybór motywu",
"theme_selection_description": "Automatycznie zmień motyw na jasny lub ciemny zależnie od ustawień przeglądarki",
"they_will_be_merged_together": "Zostaną one ze sobą połączone",
+ "third_party_resources": "Zasoby stron trzecich",
"time_based_memories": "Wspomnienia oparte na czasie",
+ "timeline": "Oś czasu",
"timezone": "Strefa czasowa",
"to_archive": "Archiwum",
"to_change_password": "Zmień hasło",
"to_favorite": "Dodaj do ulubionych",
"to_login": "Login",
+ "to_parent": "Idź do rodzica",
"to_trash": "Kosz",
"toggle_settings": "Przełącz ustawienia",
"toggle_theme": "Przełącz ciemny motyw",
- "toggle_visibility": "Zmień widoczność",
+ "total": "Całkowity",
"total_usage": "Całkowite wykorzystanie",
"trash": "Kosz",
"trash_all": "Usuń wszystko",
@@ -1252,14 +1259,13 @@
"trashed_items_will_be_permanently_deleted_after": "Wyrzucone zasoby zostaną trwale usunięte po {days, plural, one {jednym dniu} other {{days, number} dniach}}.",
"type": "Typ",
"unarchive": "Cofnij archiwizację",
- "unarchived": "",
"unarchived_count": "{count, plural, other {Niezarchiwizowane #}}",
"unfavorite": "Usuń z ulubionych",
"unhide_person": "Przywróć osobę",
"unknown": "Nieznany",
- "unknown_album": "Nieznany album",
"unknown_year": "Rok nieznany",
"unlimited": "Nieograniczony",
+ "unlink_motion_video": "Rozłącz ruchome wideo",
"unlink_oauth": "Odłącz OAuth",
"unlinked_oauth_account": "Odłączone konto OAuth",
"unnamed_album": "Nienazwany album",
@@ -1293,6 +1299,8 @@
"user_purchase_settings_description": "Zarządzaj swoim zakupem",
"user_role_set": "Ustaw {user} jako {role}",
"user_usage_detail": "Szczegóły używania przez użytkownika",
+ "user_usage_stats": "Statystyki użytkowania konta",
+ "user_usage_stats_description": "Wyświetl statystyki użytkowania konta",
"username": "Nazwa użytkownika",
"users": "Użytkownicy",
"utilities": "Narzędzia",
@@ -1300,7 +1308,9 @@
"variables": "Zmienne",
"version": "Wersja",
"version_announcement_closing": "Twój przyjaciel Aleks",
- "version_announcement_message": "Witaj przyjacielu, dostępna jest nowa wersja aplikacji. Poświęć trochę czasu na zapoznanie się z informacjami o wydaniu i upewnij się, że pliki docker-compose.yml i .env konfiguracja jest aktualna, aby zapobiec błędnym konfiguracjom, zwłaszcza jeśli używasz WatchTower lub dowolnego mechanizmu, który obsługuje automatyczne aktualizowanie aplikacji.",
+ "version_announcement_message": "Witaj! Dostępna jest nowa wersja Immich. Poświęć trochę czasu na zapoznanie się z informacjami o wydaniu, aby upewnić się, że twoja konfiguracja jest aktualna, aby uniknąć błędów, szczególnie jeśli używasz WatchTower lub jakiegokolwiek mechanizmu odpowiedzialnego za automatyczne aktualizowanie Immich.",
+ "version_history": "Historia wersji",
+ "version_history_item": "Zainstalowano {version} w {date}",
"video": "Wideo",
"video_hover_setting": "Odtwórz miniaturę wideo po najechaniu kursorem",
"video_hover_setting_description": "Odtwórz miniaturę wideo po najechaniu myszką na element. Nawet jeśli jest wyłączone, odtwarzanie można rozpocząć, najeżdżając kursorem na ikonę odtwarzania.",
@@ -1312,10 +1322,10 @@
"view_all_users": "Pokaż wszystkich użytkowników",
"view_in_timeline": "Pokaż na osi czasu",
"view_links": "Pokaż łącza",
+ "view_name": "Widok",
"view_next_asset": "Wyświetl następny zasób",
"view_previous_asset": "Wyświetl poprzedni zasób",
"view_stack": "Zobacz Ułożenie",
- "viewer": "Oglądający",
"visibility_changed": "Zmieniono widoczność dla {count, plural, one {# osoba} other {# osoby}}",
"waiting": "Oczekiwanie",
"warning": "Ostrzeżenie",
diff --git a/i18n/pt.json b/i18n/pt.json
new file mode 100644
index 0000000000..d34e0424bc
--- /dev/null
+++ b/i18n/pt.json
@@ -0,0 +1,1340 @@
+{
+ "about": "Sobre",
+ "account": "Conta",
+ "account_settings": "Definições de Conta",
+ "acknowledge": "Aceitar",
+ "action": "Ação",
+ "actions": "Ações",
+ "active": "Em execução",
+ "activity": "Atividade",
+ "activity_changed": "A atividade está {enabled, select, true {ativada} other {desativada}}",
+ "add": "Adicionar",
+ "add_a_description": "Adicionar uma descrição",
+ "add_a_location": "Adicionar localização",
+ "add_a_name": "Adicionar um nome",
+ "add_a_title": "Adicionar um título",
+ "add_exclusion_pattern": "Adicionar um padrão de exclusão",
+ "add_import_path": "Adicionar um caminho de importação",
+ "add_location": "Adicionar localização",
+ "add_more_users": "Adicionar mais utilizadores",
+ "add_partner": "Adicionar parceiro",
+ "add_path": "Adicionar caminho",
+ "add_photos": "Adicionar fotos",
+ "add_to": "Adicionar a...",
+ "add_to_album": "Adicionar ao álbum",
+ "add_to_shared_album": "Adicionar ao álbum partilhado",
+ "add_url": "Adicionar URL",
+ "added_to_archive": "Adicionado ao arquivo",
+ "added_to_favorites": "Adicionado aos favoritos",
+ "added_to_favorites_count": "{count, plural, one {{count, number} adicionado aos favoritos} other {{count, number} adicionados aos favoritos}}",
+ "admin": {
+ "add_exclusion_pattern_description": "Adicione padrões de exclusão. Utilizar *, ** ou ? são suportados. Para ignorar todos os ficheiros em qualquer diretório chamado \"Raw\", use \"**/Raw/**'. Para ignorar todos os ficheiros que finalizam em \".tif\", use \"**/*.tif\". Para ignorar um caminho absoluto, use \"/caminho/para/ignorar/**\".",
+ "asset_offline_description": "Este ficheiro proveniente de uma biblioteca externa deixou de estar disponível no disco e foi movido para a reciclagem. Se o ficheiro foi movido no interior da biblioteca, procure na linha de tempo pelo novo ficheiro correspondente. Para restaurar este ficheiro, certifique-se que o caminho do ficheiro abaixo pode ser acedido pelo Immich e analise a biblioteca.",
+ "authentication_settings": "Definições de Autenticação",
+ "authentication_settings_description": "Gerir palavras-passe, OAuth, e outras definições de autenticação",
+ "authentication_settings_disable_all": "Tem a certeza que deseja desativar todos os métodos de início de sessão? O início de sessão será completamente desativado.",
+ "authentication_settings_reenable": "Para reativar, use um Comando de servidor.",
+ "background_task_job": "Tarefas em segundo plano",
+ "backup_database": "Cópia de Segurança da Base de Dados",
+ "backup_database_enable_description": "Ativar cópias de segurança da base de dados",
+ "backup_keep_last_amount": "Quantidade de cópias de segurança anteriores a manter",
+ "backup_settings": "Definições de Cópia de Segurança",
+ "backup_settings_description": "Gerir definições de cópia de segurança da base de dados",
+ "check_all": "Selecionar Tudo",
+ "cleared_jobs": "Eliminadas as tarefas de: {job}",
+ "config_set_by_file": "A configuração está atualmente definida por um ficheiro de configuração",
+ "confirm_delete_library": "Tem a certeza de que deseja eliminar a biblioteca {library} ?",
+ "confirm_delete_library_assets": "Tem a certeza de que deseja eliminar esta biblioteca? Isto eliminará {count, plural, one {# ficheiro incluído} other {todos os # ficheiros incluídos}} do Immich e esta ação não pode ser anulada. Os ficheiros permanecerão no disco.",
+ "confirm_email_below": "Para confirmar, escreva \"{email}\" abaixo",
+ "confirm_reprocess_all_faces": "Tem a certeza de que deseja reprocessar todos os rostos? Isto também limpará os nomes das pessoas.",
+ "confirm_user_password_reset": "Tem a certeza de que deseja redefinir a palavra-passe de {user}?",
+ "create_job": "Criar tarefa",
+ "cron_expression": "Expressão Cron",
+ "cron_expression_description": "Definir o intervalo de análise utilizando o formato Cron. Para mais informações, por favor veja o Crontab Guru",
+ "cron_expression_presets": "Predefinições das expressões Cron",
+ "disable_login": "Desativar inicio de sessão",
+ "duplicate_detection_job_description": "Executa a aprendizagem de máquina em ficheiros para detetar imagens semelhantes. Depende da Pesquisa Inteligente",
+ "exclusion_pattern_description": "Os padrões de exclusão permitem ignorar ficheiros e pastas ao analisar a sua biblioteca. Isto é útil se tiver pastas que contenham ficheiros que não deseja importar, como ficheiros RAW.",
+ "external_library_created_at": "Biblioteca externa (criada em {date})",
+ "external_library_management": "Gestão de bibliotecas externas",
+ "face_detection": "Deteção de Rostos",
+ "face_detection_description": "Deteta rostos em ficheiros utilizando aprendizagem automática. Para vídeos, apenas a miniatura é considerada. \"Atualizar\" (re)processa todos os ficheiros, enquanto \"Redefinir\" elimina todos os dados de rostos. \"Em falta\" coloca em fila ficheiros que ainda não foram processados. Os rostos detetados serão colocados em fila para Reconhecimento Facial após a conclusão da Deteção de Rostos, agrupando-os em pessoas novas ou já existentes.",
+ "facial_recognition_job_description": "Agrupa rostos detetadas em pessoas. Esta etapa é executada após a conclusão da Deteção de Rostos. \"Redefinir\" (re)agrupa todos os rostos. \"Em falta\" coloca em fila rostos que ainda não têm uma pessoa atribuída.",
+ "failed_job_command": "Comando {command} falhou para a tarefa: {job}",
+ "force_delete_user_warning": "AVISO: Isto removerá imediatamente o utilizador e todos os ficheiros. Isso não pode ser revertido e os ficheiros não poderão ser recuperados.",
+ "forcing_refresh_library_files": "A forçar a atualização de todos os ficheiros da biblioteca",
+ "image_format": "Formato",
+ "image_format_description": "WebP produz ficheiros mais pequenos do que JPEG, mas é mais lento para codificar.",
+ "image_prefer_embedded_preview": "Preferir visualização incorporada",
+ "image_prefer_embedded_preview_setting_description": "Utilizar visualizações incorporadas em fotos RAW como entrada para processamento de imagem, quando disponível. Isto pode produzir cores mais precisas para algumas imagens, mas a qualidade da visualização depende da câmara e a imagem pode ter mais artefatos de compressão.",
+ "image_prefer_wide_gamut": "Prefira ampla gama",
+ "image_prefer_wide_gamut_setting_description": "Utilizar Display P3 para miniaturas. Isso preserva melhor a vibrância das imagens com espaços de cores amplos, mas as imagens podem aparecer de maneira diferente em dispositivos antigos com uma versão antiga do navegador. As imagens sRGB são mantidas como sRGB para evitar mudanças de cores.",
+ "image_preview_description": "Imagem de tamanho médio sem metadados, utilizada ao visualizar um único ficheiro e pela aprendizagem de máquina",
+ "image_preview_quality_description": "Qualidade de pré-visualização de 1 a 100. Maior é melhor, mas produz ficheiros maiores e pode reduzir a capacidade de resposta da aplicação. Definir um valor demasiado baixo pode afetar a qualidade da aprendizagem de máquina.",
+ "image_preview_title": "Definições de Pré-visualização",
+ "image_quality": "Qualidade",
+ "image_resolution": "Resolução",
+ "image_resolution_description": "Resoluções mais altas podem ajudar a preservar mais detalhes mas demoram mais a codificar, têm tamanhos de ficheiro maiores e podem reduzir a capacidade de resposta da aplicação.",
+ "image_settings": "Definições de imagem",
+ "image_settings_description": "Gerir a qualidade e resolução das imagens geradas",
+ "image_thumbnail_description": "Miniatura de tamanho pequena e sem metadados, utilizada ao visualizar grupos de fotos como, por exemplo, na linha de tempo principal",
+ "image_thumbnail_quality_description": "Qualidade das miniaturas de 1 a 100. Maior é melhor, mas produz tamanhos de ficheiro maiores e podem reduzir a capacidade de resposta da aplicação.",
+ "image_thumbnail_title": "Definições de Miniaturas",
+ "job_concurrency": "{job} em simultâneo",
+ "job_created": "Tarefa criada",
+ "job_not_concurrency_safe": "Esta tarefa não pode ser executada em simultâneo.",
+ "job_settings": "Definições de Tarefas",
+ "job_settings_description": "Gerir tarefas em simultâneo",
+ "job_status": "Estado das Tarefas",
+ "jobs_delayed": "{jobCount, plural, one {# adiado} other {# adiados}}",
+ "jobs_failed": "{jobCount, plural, one {# falhou} other {# falharam}}",
+ "library_created": "Criada biblioteca: {library}",
+ "library_deleted": "Biblioteca eliminada",
+ "library_import_path_description": "Especifique uma pasta para importar. Esta pasta, incluindo sub-pastas, será analisada por imagens e vídeos.",
+ "library_scanning": "Análise periódica",
+ "library_scanning_description": "Configurar a análise periódica da biblioteca",
+ "library_scanning_enable_description": "Ativar análise periódica da biblioteca",
+ "library_settings": "Biblioteca Externa",
+ "library_settings_description": "Gerir definições de biblioteca externa",
+ "library_tasks_description": "Executa tarefas de biblioteca",
+ "library_watching_enable_description": "Analisar bibliotecas externas por alterações de ficheiros",
+ "library_watching_settings": "Análise de biblioteca (EXPERIMENTAL)",
+ "library_watching_settings_description": "Analise automaticamente por ficheiros alterados",
+ "logging_enable_description": "Ativar registo",
+ "logging_level_description": "Quando ativado, qual o nível de log a usar.",
+ "logging_settings": "Registo",
+ "machine_learning_clip_model": "Modelo CLIP",
+ "machine_learning_clip_model_description": "O nome do modelo CLIP definido aqui. Tome nota de que é necessário voltar a executar a tarefa de \"Pesquisa Inteligente\" para todas as imagens depois de alterar o modelo.",
+ "machine_learning_duplicate_detection": "Deteção de Itens Duplicados",
+ "machine_learning_duplicate_detection_enabled": "Ativar deteção de itens duplicados",
+ "machine_learning_duplicate_detection_enabled_description": "Se desativado, ficheiros exatamente idênticos serão desduplicados na mesma.",
+ "machine_learning_duplicate_detection_setting_description": "Utilizar embeddings CLIP para encontrar itens possivelmente duplicados",
+ "machine_learning_enabled": "Ativar a aprendizagem de máquina",
+ "machine_learning_enabled_description": "Se desativado, todos as funcionalidades de ML serão desativados, independentemente das definições abaixo.",
+ "machine_learning_facial_recognition": "Reconhecimento Facial",
+ "machine_learning_facial_recognition_description": "Detetar, reconhecer e agrupar rostos em imagens",
+ "machine_learning_facial_recognition_model": "Modelo de reconhecimento facial",
+ "machine_learning_facial_recognition_model_description": "Os modelos estão ordenados por ordem decrescente de tamanho. Modelos maiores são mais lentos e utilizam mais memória, mas produzem melhores resultados. Tome conta de que ao alterar um modelo, deve executar novamente a tarefa de \"Deteção de Rostos\" para todas as imagens.",
+ "machine_learning_facial_recognition_setting": "Ativar reconhecimento facial",
+ "machine_learning_facial_recognition_setting_description": "Se desativado, as imagens não serão codificadas para reconhecimento facial e não preencherão a secção Pessoas na página Explorar.",
+ "machine_learning_max_detection_distance": "Distância máxima de deteção",
+ "machine_learning_max_detection_distance_description": "Distância máxima entre duas imagens para considerá-las duplicadas, variando entre 0,001 e 0,1. Valores mais altos detetarão mais duplicidades, mas poderão resultar em falsos positivos.",
+ "machine_learning_max_recognition_distance": "Distância máxima de reconhecimento",
+ "machine_learning_max_recognition_distance_description": "Distância máxima entre dois rostos para serem considerados a mesma pessoa, variando de 0 a 2. Valores menores evitam rotular dois rostos como a mesma pessoa, enquanto valores maiores evitam rotular o mesmo rosto como duas pessoas diferentes. Tenha em conta de que é mais fácil unir duas pessoas do que dividir uma pessoa em duas, portanto tenha preferência por valores mais baixos quando possível.",
+ "machine_learning_min_detection_score": "Pontuação mínima de deteção",
+ "machine_learning_min_detection_score_description": "Pontuação mínima de confiança para um rosto ser detetado, de 0 a 1. Valores mais baixos detetam mais rostos, mas poderão resultar em falsos positivos.",
+ "machine_learning_min_recognized_faces": "Mínimo de rostos reconhecidos",
+ "machine_learning_min_recognized_faces_description": "O número mínimo de faces reconhecidas para uma pessoa ser criada na lista. Aumentar isto torna o Reconhecimento Facial mais preciso, no entanto aumenta a probabilidade de um rosto não ser atribuído a uma pessoa.",
+ "machine_learning_settings": "Definições de aprendizagem de máquina (Machine Learning)",
+ "machine_learning_settings_description": "Gerir funcionalidades e definições de aprendizagem de máquina",
+ "machine_learning_smart_search": "Pesquisa Inteligente",
+ "machine_learning_smart_search_description": "Pesquise imagens semanticamente utilizando embeddings CLIP",
+ "machine_learning_smart_search_enabled": "Ativar a Pesquisa Inteligente",
+ "machine_learning_smart_search_enabled_description": "Se desativado, as imagens não serão codificadas para Pesquisa Inteligente.",
+ "machine_learning_url_description": "A URL do servidor de aprendizagem de máquina. Se for fornecido mais do que um URL, cada servidor será testado, um a um, até um deles responder com sucesso, por ordem do primeiro ao último.",
+ "manage_concurrency": "Gerir simultaneidade",
+ "manage_log_settings": "Gerir definições de registo",
+ "map_dark_style": "Tema Escuro",
+ "map_enable_description": "Ativar funcionalidades de mapa",
+ "map_gps_settings": "Mapas e Definições de GPS",
+ "map_gps_settings_description": "Gerir Definições de Mapas e GPS (Geocodificação Reversa)",
+ "map_implications": "A funcionalidade do mapa necessita um serviço externo (tiles.immich.cloud)",
+ "map_light_style": "Tema Claro",
+ "map_manage_reverse_geocoding_settings": "Gerir definições de Geocodificação Reversa",
+ "map_reverse_geocoding": "Geocodificação Reversa",
+ "map_reverse_geocoding_enable_description": "Ativar Geocodificação Reversa",
+ "map_reverse_geocoding_settings": "Definições de Geocodificação Reversa",
+ "map_settings": "Mapa",
+ "map_settings_description": "Gerir definições do mapa",
+ "map_style_description": "URL para um tema de mapa style.json",
+ "metadata_extraction_job": "Extrair metadados",
+ "metadata_extraction_job_description": "Extrai informações de metadados de cada ficheiro, como GPS, rostos e resolução",
+ "metadata_faces_import_setting": "Ativar a importação facial",
+ "metadata_faces_import_setting_description": "Importar rostos a partir dos dados EXIF da imagem e ficheiros anexos",
+ "metadata_settings": "Definições de metadados",
+ "metadata_settings_description": "Gerir definições de metadados",
+ "migration_job": "Migração",
+ "migration_job_description": "Migra miniaturas de ficheiros e rostos para a estrutura de pastas mais recente",
+ "no_paths_added": "Nenhum caminho adicionado",
+ "no_pattern_added": "Nenhum padrão adicionado",
+ "note_apply_storage_label_previous_assets": "Observação: Para aplicar o Rótulo de Armazenamento a ficheiros carregados anteriormente, execute o",
+ "note_cannot_be_changed_later": "NOTA: Isto não pode ser alterado posteriormente!",
+ "note_unlimited_quota": "Observação: insira 0 para quota ilimitada",
+ "notification_email_from_address": "A partir do endereço",
+ "notification_email_from_address_description": "Endereço de e-mail do remetente, por exemplo: \"Servidor de Fotos Immich {label} é o Rótulo do Armazenamento do utilizador",
+ "system_settings": "Definições de Sistema",
+ "tag_cleanup_job": "Limpeza de etiquetas",
+ "template_email_available_tags": "Pode usar as seguintes variáveis no modelo: {tags}",
+ "template_email_if_empty": "Se o modelo estiver em branco, o modelo de e-mail padrão será utilizado.",
+ "template_email_invite_album": "Modelo do e-mail de convite para álbum",
+ "template_email_preview": "Pré-visualizar",
+ "template_email_settings": "Modelos de e-mail",
+ "template_email_settings_description": "Gerir modelos personalizados de e-mail de notificação",
+ "template_email_update_album": "Modelo do e-mail de atualização do álbum",
+ "template_email_welcome": "Modelos do email de boas vindas",
+ "template_settings": "Modelos de notificação",
+ "template_settings_description": "Gerir modelos personalizados para notificações.",
+ "theme_custom_css_settings": "CSS Personalizado",
+ "theme_custom_css_settings_description": "Folhas de estilo em cascata (CSS) permitem que o design do Immich seja personalizado.",
+ "theme_settings": "Definições de Tema",
+ "theme_settings_description": "Gerir a personalização da interface web do Immich",
+ "these_files_matched_by_checksum": "Estes ficheiros são correspondidos pelas suas somas de verificação",
+ "thumbnail_generation_job": "Gerar miniaturas",
+ "thumbnail_generation_job_description": "Gera miniaturas grandes, pequenas e desfocadas para cada ficheiro, bem como miniaturas para cada pessoa",
+ "transcoding_acceleration_api": "API de aceleração",
+ "transcoding_acceleration_api_description": "A API que irá interagir com o seu dispositivo para acelerar a transcodificação. Esta definição é a 'melhor opção': ela voltará à transcodificação de software em caso de falha. O VP9 pode não funcionar dependendo do seu hardware.",
+ "transcoding_acceleration_nvenc": "NVENC (requer GPU NVIDIA)",
+ "transcoding_acceleration_qsv": "Quick Sync (requer CPU Intel de 7ª geração ou posterior)",
+ "transcoding_acceleration_rkmpp": "RKMPP (apenas em SOCs Rockchip)",
+ "transcoding_acceleration_vaapi": "VAAPI",
+ "transcoding_accepted_audio_codecs": "Codecs de áudio aceites",
+ "transcoding_accepted_audio_codecs_description": "Selecione os codecs de áudio que não precisam de ser transcodificados. Usado apenas para determinadas políticas de transcodificação.",
+ "transcoding_accepted_containers": "Contentores aceites",
+ "transcoding_accepted_containers_description": "Selecione os formatos de contentores que não precisam de ser remisturados para MP4. Usado apenas para algumas políticas de transcodificação.",
+ "transcoding_accepted_video_codecs": "Codecs de vídeo aceitos",
+ "transcoding_accepted_video_codecs_description": "Selecione quais os codecs de vídeo que não precisam de ser transcodificados. Usado apenas para determinadas políticas de transcodificação.",
+ "transcoding_advanced_options_description": "Opções que a maioria dos utilizadores não deverá precisar de alterar",
+ "transcoding_audio_codec": "Codec de áudio",
+ "transcoding_audio_codec_description": "Opus é a opção de mais alta qualidade, mas tem menor compatibilidade com dispositivos ou software antigos.",
+ "transcoding_bitrate_description": "Vídeos com taxa de bits superior à máxima ou que não estão num formato aceite",
+ "transcoding_codecs_learn_more": "Para saber mais sobre as terminologias utilizadas aqui, consulte a documentação do FFmpeg para o {label} é o Rótulo de Armazenamento do usuário",
"system_settings": "Configurações do Sistema",
+ "tag_cleanup_job": "Limpeza de tags",
+ "template_email_available_tags": "Você pode usar as seguintes variáveis no modelo: {tags}",
+ "template_email_if_empty": "Se o modelo estiver em branco, o modelo de e-mail padrão será usado.",
+ "template_email_invite_album": "Modelo do e-mail de convite para álbum",
+ "template_email_preview": "Pré visualização",
+ "template_email_settings": "Modelos de e-mail",
+ "template_email_settings_description": "Gerenciar modelos personalizados de e-mail de notificação",
+ "template_email_update_album": "Modelo do e-mail de atualização do álbum",
+ "template_email_welcome": "Modelo do e-mail de boas vindas",
+ "template_settings": "Modelos de notificação",
+ "template_settings_description": "Gerenciar modelos personalizados para notificações.",
"theme_custom_css_settings": "CSS customizado",
"theme_custom_css_settings_description": "Folhas de estilo em cascata permitem que o design do Immich seja personalizado.",
"theme_settings": "Configurações de tema",
@@ -241,7 +267,6 @@
"these_files_matched_by_checksum": "Esses arquivos são correspondidos por seus checksum",
"thumbnail_generation_job": "Gerar Miniaturas",
"thumbnail_generation_job_description": "Gere miniaturas grandes, pequenas e desfocadas para cada arquivo, bem como miniaturas para cada pessoa",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "API de aceleração",
"transcoding_acceleration_api_description": "A API que irá interagir com o seu dispositivo para acelerar a transcodificação. Esta configuração é a 'melhor opção': ela retornará à transcodificação de software em caso de falha. O VP9 pode não funcionar dependendo do seu hardware.",
"transcoding_acceleration_nvenc": "NVENC (requer GPU NVIDIA)",
@@ -267,7 +292,7 @@
"transcoding_hardware_acceleration": "Aceleração de hardware",
"transcoding_hardware_acceleration_description": "Experimental; muito mais rápido, mas terá qualidade inferior com a mesma taxa de bits",
"transcoding_hardware_decoding": "Decodificação de hardware",
- "transcoding_hardware_decoding_setting_description": "Aplica-se apenas a NVENC, QSV e RKMPP. Permite aceleração ponta a ponta em vez de apenas acelerar a codificação. Pode não funcionar em todos os vídeos.",
+ "transcoding_hardware_decoding_setting_description": "Habilita a aceleração de ponta a ponta, em vez de apenas acelerar a codificação. Pode não funcionar em todos os vídeos.",
"transcoding_hevc_codec": "Codec HEVC",
"transcoding_max_b_frames": "Máximo de quadros B",
"transcoding_max_b_frames_description": "Valores mais altos melhoram a eficiência da compactação, mas retardam a codificação. Pode não ser compatível com aceleração de hardware em dispositivos mais antigos. 0 desativa os quadros B, enquanto -1 define esse valor automaticamente.",
@@ -293,8 +318,6 @@
"transcoding_threads_description": "Valores mais altos levam a uma codificação mais rápida, mas deixam menos espaço para o servidor processar outras tarefas enquanto estiver ativo. Este valor não deve ser superior ao número de núcleos da CPU. Maximiza a utilização se definido como 0.",
"transcoding_tone_mapping": "Mapeamento de tons",
"transcoding_tone_mapping_description": "Tenta preservar a aparência dos vídeos HDR quando convertidos para SDR. Cada algoritmo faz compensações diferentes em termos de cor, detalhes e brilho. Hable preserva os detalhes, Mobius preserva as cores e Reinhard preserva o brilho.",
- "transcoding_tone_mapping_npl": "NPL de mapeamento de tons",
- "transcoding_tone_mapping_npl_description": "As cores serão ajustadas para parecerem normais para uma exibição com esse brilho. Contra-intuitivamente, valores mais baixos aumentam o brilho do vídeo e vice-versa, uma vez que compensam o brilho da tela. 0 define esse valor automaticamente.",
"transcoding_transcode_policy": "Política de transcodificação",
"transcoding_transcode_policy_description": "Política para quando um vídeo deve ser transcodificado. Os vídeos HDR sempre serão transcodificados (exceto se a transcodificação estiver desativada).",
"transcoding_two_pass_encoding": "Codificação de duas passagens",
@@ -308,6 +331,7 @@
"trash_settings_description": "Gerenciar configurações da lixeira",
"untracked_files": "Arquivos não rastreados",
"untracked_files_description": "Esses arquivos não são rastreados pelo aplicativo. Eles podem ser o resultado de movimentos malsucedidos, carregamentos interrompidos ou deixados para trás devido a um erro",
+ "user_cleanup_job": "Limpeza de usuários",
"user_delete_delay": "A conta e os arquivos de {user} serão programados para exclusão permanente em {delay, plural, one {# dia} other {# dias}}.",
"user_delete_delay_settings": "Excluir atraso",
"user_delete_delay_settings_description": "Número de dias após a remoção para excluir permanentemente a conta e os arquivos de um usuário. A tarefa de exclusão de usuário é executada à meia-noite para verificar usuários que estão prontos para exclusão. As alterações nesta configuração serão avaliadas na próxima execução.",
@@ -339,6 +363,7 @@
"album_added_notification_setting_description": "Receba uma notificação por e-mail quando você for adicionado a um álbum compartilhado",
"album_cover_updated": "Capa do álbum atualizada",
"album_delete_confirmation": "Tem certeza de que deseja excluir o álbum {album}?",
+ "album_delete_confirmation_description": "Se este álbum é compartilhado, os outros usuários não conseguiram mais acessá-lo.",
"album_info_updated": "Informações do álbum atualizadas",
"album_leave": "Sair do álbum?",
"album_leave_confirmation": "Tem certeza de que deseja sair de {album}?",
@@ -373,7 +398,6 @@
"archive_or_unarchive_photo": "Arquivar ou desarquivar foto",
"archive_size": "Tamanho do arquivo",
"archive_size_description": "Configure o tamanho do arquivo para baixar (em GiB)",
- "archived": "Arquivado",
"archived_count": "{count, plural, one {# Arquivado} other {# Arquivados}}",
"are_these_the_same_person": "Essas pessoas são a mesma pessoa?",
"are_you_sure_to_do_this": "Tem certeza de que deseja fazer isso?",
@@ -384,8 +408,9 @@
"asset_has_unassigned_faces": "O arquivo tem rostos sem nomes",
"asset_hashing": "Processando...",
"asset_offline": "Arquivo indisponível",
- "asset_offline_description": "Este arquivo não está disponível. O Immich não pode acessar o local do arquivo. Certifique-se de que o arquivo esteja disponível e depois escaneie novamente a biblioteca.",
+ "asset_offline_description": "Este arquivo externo não está mais disponível. Contate seu administrador do Immich para obter ajuda.",
"asset_skipped": "Ignorado",
+ "asset_skipped_in_trash": "Na lixeira",
"asset_uploaded": "Carregado",
"asset_uploading": "Carregando...",
"assets": "Arquivos",
@@ -393,11 +418,10 @@
"assets_added_to_album_count": "{count, plural, one {# arquivo adicionado} other {# arquivos adicionados}} ao álbum",
"assets_added_to_name_count": "{count, plural, one {# arquivo adicionado} other {# arquivos adicionados}} {hasName, select, true {ao álbum {name}} other {em um novo álbum}}",
"assets_count": "{count, plural, one {# arquivo} other {# arquivos}}",
- "assets_moved_to_trash": "{count, plural, one {# ativo enviado} other {# ativos enviados}} para a lixeira",
"assets_moved_to_trash_count": "{count, plural, one {# arquivo movido} other {# arquivos movidos}} para a lixeira",
"assets_permanently_deleted_count": "{count, plural, one {# arquivo excluído permanentemente} other {# arquivos excluídos permanentemente}}",
"assets_removed_count": "{count, plural, one {# arquivo removido} other {# arquivos removidos}}",
- "assets_restore_confirmation": "Tem certeza de que deseja restaurar todos os seus arquivos na lixeira? Esta ação não pode ser desfeita!",
+ "assets_restore_confirmation": "Tem certeza de que deseja restaurar todos os seus arquivos na lixeira? Esta ação não pode ser desfeita! Nota: Arquivos externos não podem ser restaurados desta maneira.",
"assets_restored_count": "{count, plural, one {# arquivo restaurado} other {# arquivos restaurados}}",
"assets_trashed_count": "{count, plural, one {# arquivo movido para a lixeira} other {# arquivos movidos para a lixeira}}",
"assets_were_part_of_album_count": "{count, plural, one {O arquivo já faz} other {Os arquivos já fazem}} parte do álbum",
@@ -408,6 +432,7 @@
"birthdate_saved": "Data de nascimento salva com sucesso",
"birthdate_set_description": "A data de nascimento é usada para calcular a idade da pessoa no momento em que a foto foi tirada.",
"blurred_background": "Fundo desfocado",
+ "bugs_and_feature_requests": "Relatar problemas & Sugestões",
"build": "Versão de compilação",
"build_image": "Imagem de compilação",
"bulk_delete_duplicates_confirmation": "Tem a certeza de que deseja deletar {count, plural, one {# arquivo duplicado} other {em massa # arquivos duplicados}}? Esta ação mantém o maior arquivo de cada grupo e deleta permanentemente todos as outras duplicidades. Você não pode desfazer esta ação!",
@@ -422,10 +447,6 @@
"cannot_merge_people": "Não é possível mesclar pessoas",
"cannot_undo_this_action": "Você não pode desfazer esta ação!",
"cannot_update_the_description": "Não é possível atualizar a descrição",
- "cant_apply_changes": "Não é possível aplicar alterações",
- "cant_get_faces": "Não foi possível obter faces",
- "cant_search_people": "Não foi possível pesquisar pessoas",
- "cant_search_places": "Não foi possível pesquisar lugares",
"change_date": "Alterar data",
"change_expiration_time": "Alterar o prazo de validade",
"change_location": "Alterar localização",
@@ -457,6 +478,7 @@
"confirm": "Confirmar",
"confirm_admin_password": "Confirmar senha de administrador",
"confirm_delete_shared_link": "Tem certeza de que deseja excluir este link compartilhado?",
+ "confirm_keep_this_delete_others": "Todos os outros arquivos da pilha serão excluídos, exceto este arquivo. Tem certeza de que deseja continuar?",
"confirm_password": "Confirme a senha",
"contain": "Caber",
"context": "Contexto",
@@ -483,6 +505,7 @@
"create_new_person_hint": "Atribuir arquivos selecionados a uma nova pessoa",
"create_new_user": "Criar novo usuário",
"create_tag": "Criar tag",
+ "create_tag_description": "Crie uma nova tag. Para tags compostas, digite o caminho completo da tag, inclusive as barras.",
"create_user": "Criar usuário",
"created": "Criado",
"current_device": "Dispositivo atual",
@@ -505,16 +528,19 @@
"delete_key": "Excluir chave",
"delete_library": "Excluir biblioteca",
"delete_link": "Excluir link",
+ "delete_others": "Excluir restante",
"delete_shared_link": "Excluir link de compartilhamento",
"delete_tag": "Remover tag",
"delete_tag_confirmation_prompt": "Tem certeza que deseja excluir a tag {tagName} ?",
"delete_user": "Excluir usuário",
"deleted_shared_link": "Link de compartilhamento excluído",
+ "deletes_missing_assets": "Excluir arquivos não encontrados",
"description": "Descrição",
"details": "Detalhes",
"direction": "Direção",
"disabled": "Desativado",
"disallow_edits": "Não permitir edições",
+ "discord": "Discord",
"discover": "Descobrir",
"dismiss_all_errors": "Dispensar todos os erros",
"dismiss_error": "Dispensar erro",
@@ -523,6 +549,7 @@
"display_original_photos": "Exibir fotos originais",
"display_original_photos_setting_description": "Prefira exibir a foto original ao visualizar um arquivo em vez de miniaturas quando o arquivo original é compatível com a web. Isso pode diminuir a velocidade de exibição das fotos.",
"do_not_show_again": "Não mostrar esta mensagem novamente",
+ "documentation": "Documentação",
"done": "Feito",
"download": "Baixar",
"download_include_embedded_motion_videos": "Vídeos inclusos",
@@ -535,13 +562,6 @@
"duplicates": "Duplicados",
"duplicates_description": "Marque cada grupo indicando quais arquivos, se algum, são duplicados",
"duration": "Duração",
- "durations": {
- "days": "",
- "hours": "",
- "minutes": "",
- "months": "",
- "years": ""
- },
"edit": "Editar",
"edit_album": "Editar álbum",
"edit_avatar": "Editar foto de perfil",
@@ -566,8 +586,6 @@
"editor_crop_tool_h2_aspect_ratios": "Proporções",
"editor_crop_tool_h2_rotation": "Rotação",
"email": "E-mail",
- "empty": "",
- "empty_album": "",
"empty_trash": "Esvaziar lixo",
"empty_trash_confirmation": "Tem certeza de que deseja esvaziar a lixeira? Isso removerá permanentemente do Immich todos os arquivos que estão na lixeira.\nVocê não pode desfazer esta ação!",
"enable": "Habilitar",
@@ -601,6 +619,7 @@
"failed_to_create_shared_link": "Falha ao criar o link compartilhado",
"failed_to_edit_shared_link": "Falha ao editar o link compartilhado",
"failed_to_get_people": "Falha na obtenção de pessoas",
+ "failed_to_keep_this_delete_others": "Falha ao manter este arquivo e excluir os outros",
"failed_to_load_asset": "Não foi possível carregar o ativo",
"failed_to_load_assets": "Não foi possível carregar os ativos",
"failed_to_load_people": "Falha ao carregar pessoas",
@@ -628,8 +647,6 @@
"unable_to_change_location": "Não foi possível alterar a localização",
"unable_to_change_password": "Não foi possível alterar a senha",
"unable_to_change_visibility": "Não foi possível alterar a visibilidade de {count, plural, one {# pessoa} other {# pessoas}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "Não foi possível concluir o login OAuth",
"unable_to_connect": "Não foi possível conectar",
"unable_to_connect_to_server": "Não foi possível se conectar ao servidor",
@@ -654,6 +671,7 @@
"unable_to_get_comments_number": "Não foi possível obter o número de comentários",
"unable_to_get_shared_link": "Não foi possível obter link o compartilhado",
"unable_to_hide_person": "Não foi possível esconder a pessoa",
+ "unable_to_link_motion_video": "Não foi possível relacionar ao video animado",
"unable_to_link_oauth_account": "Não foi possível associar a conta OAuth",
"unable_to_load_album": "Não foi possível carregar o álbum",
"unable_to_load_asset_activity": "Não foi possível carregar as atividades do arquivo",
@@ -669,12 +687,10 @@
"unable_to_remove_album_users": "Não foi possível remover usuários do álbum",
"unable_to_remove_api_key": "Não foi possível a Chave de API",
"unable_to_remove_assets_from_shared_link": "Não foi possível remover arquivos do link compartilhado",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "Não foi possível remover arquivos offline",
"unable_to_remove_library": "Não foi possível remover a biblioteca",
- "unable_to_remove_offline_files": "Não foi possível remover arquivos offline",
"unable_to_remove_partner": "Não foi possível remover parceiro",
"unable_to_remove_reaction": "Não foi possível remover a reação",
- "unable_to_remove_user": "",
"unable_to_repair_items": "Não foi possível reparar os itens",
"unable_to_reset_password": "Não foi possível resetar a senha",
"unable_to_resolve_duplicate": "Não foi possível resolver a duplicidade",
@@ -694,6 +710,7 @@
"unable_to_submit_job": "Não foi possível enviar a tarefa",
"unable_to_trash_asset": "Não foi possível enviar o arquivo para a lixeira",
"unable_to_unlink_account": "Não foi possível desvincular conta",
+ "unable_to_unlink_motion_video": "Não foi possível remover a relação com o video animado",
"unable_to_update_album_cover": "Não foi possível atualizar a capa do álbum",
"unable_to_update_album_info": "Não foi possível atualizar as informações do álbum",
"unable_to_update_library": "Não foi possível atualizar a biblioteca",
@@ -703,10 +720,6 @@
"unable_to_update_user": "Não foi possível atualizar o usuário",
"unable_to_upload_file": "Não foi possível carregar o arquivo"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Exif",
"exit_slideshow": "Sair da apresentação",
"expand_all": "Expandir tudo",
@@ -721,30 +734,28 @@
"external": "Externo",
"external_libraries": "Bibliotecas externas",
"face_unassigned": "Sem nome",
- "failed_to_get_people": "Falha ao carregar as pessoas",
+ "failed_to_load_assets": "Falha ao carregar arquivos",
"favorite": "Favorito",
"favorite_or_unfavorite_photo": "Marque ou desmarque a foto como favorita",
"favorites": "Favoritos",
- "feature": "",
"feature_photo_updated": "Foto principal atualizada",
- "featurecollection": "",
+ "features": "Funcionalidades",
+ "features_setting_description": "Gerenciar as funcionalidades da aplicação",
"file_name": "Nome do arquivo",
"file_name_or_extension": "Nome do arquivo ou extensão",
"filename": "Nome do arquivo",
- "files": "",
"filetype": "Tipo de arquivo",
"filter_people": "Filtrar pessoas",
"find_them_fast": "Encontre pelo nome em uma pesquisa",
"fix_incorrect_match": "Corrigir correspondência incorreta",
"folders": "Pastas",
- "force_re-scan_library_files": "Força escanear novamente todos os arquivos da biblioteca",
+ "folders_feature_description": "Navegar pelas pastas das fotos e vídeos no sistema de arquivos",
"forward": "Para frente",
"general": "Geral",
"get_help": "Obter Ajuda",
"getting_started": "Primeiros passos",
"go_back": "Voltar",
"go_to_search": "Ir para a pesquisa",
- "go_to_share_page": "Ir para a página de compartilhamento",
"group_albums_by": "Agrupar álbuns por...",
"group_no": "Sem agrupamento",
"group_owner": "Agrupar por dono",
@@ -770,10 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Vídeo gravado} other {Foto tirada}} em {city}, {country} com {person1} e {person2} em {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Vídeo gravado} other {Foto tirada}} em {city}, {country} com {person1}, {person2}, e {person3} em {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Vídeo gravado} other {Foto tirada}} em {city}, {country} com {person1}, {person2}, e {additionalCount, number} outros em {date}",
- "image_alt_text_people": "{count, plural, =1 {com {person1}} =2 {com {person1} e {person2}} =3 {com {person1}, {person2}, e {person3}} other {com {person1}, {person2} e outras {others, number} pessoas}}",
- "image_alt_text_place": "em {city}, {country}",
- "image_taken": "{isVideo, select, true {Gravado} other {Fotografado}}",
- "img": "",
"immich_logo": "Logo do Immich",
"immich_web_interface": "Interface Web do Immich",
"import_from_json": "Importar do JSON",
@@ -794,10 +801,11 @@
"invite_people": "Convidar Pessoas",
"invite_to_album": "Convidar para o álbum",
"items_count": "{count, plural, one {# item} other {# itens}}",
- "job_settings_description": "",
"jobs": "Tarefas",
"keep": "Manter",
"keep_all": "Manter Todos",
+ "keep_this_delete_others": "Manter este, excluir o resto",
+ "kept_this_deleted_others": "Este foi mantido e {count, plural, one {# arquivo foi excluído} other {# arquivos foram excluídos}}",
"keyboard_shortcuts": "Atalhos do teclado",
"language": "Idioma",
"language_setting_description": "Selecione seu Idioma preferido",
@@ -809,33 +817,9 @@
"level": "Nível",
"library": "Biblioteca",
"library_options": "Opções da biblioteca",
- "license_account_info": "Sua conta está licenciada",
- "license_activated_subtitle": "Obrigado por apoiar o Immich e o software de código aberto",
- "license_activated_title": "Sua licença foi ativada com sucesso",
- "license_button_activate": "Ativado",
- "license_button_buy": "Compra",
- "license_button_buy_license": "Comprar licença",
- "license_button_select": "Selecione",
- "license_failed_activation": "Falha ao ativar a licença. Verifique seu e-mail para obter a chave de licença correta!",
- "license_individual_description_1": "1 licença por usuário em qualquer servidor",
- "license_individual_title": "Licença individual",
- "license_info_licensed": "Licenciado",
- "license_info_unlicensed": "Sem licença",
- "license_input_suggestion": "Tem licença? Digite a chave abaixo",
- "license_license_subtitle": "Comprar uma licença para apoiar Immich",
- "license_license_title": "LICENÇA",
- "license_lifetime_description": "Licença Vitalícia",
- "license_per_server": "Por servidor",
- "license_per_user": "Por usuário",
- "license_server_description_1": "1 licença por servidor",
- "license_server_description_2": "Licença para todos os usuários no servidor",
- "license_server_title": "Licença de servidor",
- "license_trial_info_1": "Você está executando uma versão não licenciada do Immich",
- "license_trial_info_2": "Você tem usado Immich por aproximadamente",
- "license_trial_info_3": "{accountAge, plural, um {# dia} outro {# dias}}",
- "license_trial_info_4": "Por favor, Considere adquirir uma licença para apoiar o desenvolvimento contínuo do serviço",
"light": "Claro",
"like_deleted": "Curtida excluída",
+ "link_motion_video": "Relacionar video animado",
"link_options": "Opções do Link",
"link_to_oauth": "Link do OAuth",
"linked_oauth_account": "Conta OAuth Vinculada",
@@ -854,6 +838,7 @@
"look": "Estilo",
"loop_videos": "Repetir vídeos",
"loop_videos_description": "Ative para repetir os vídeos automaticamente durante a exibição.",
+ "main_branch_warning": "Você está utilizando a versão de desenvolvimento. É altamente recomendado que utilize a versão estável!",
"make": "Marca",
"manage_shared_links": "Gerir links partilhados",
"manage_sharing_with_partners": "Gerenciar compartilhamento com parceiros",
@@ -875,10 +860,10 @@
"menu": "Menu",
"merge": "Mesclar",
"merge_people": "Mesclar pessoas",
- "merge_people_limit": "Só é possível combinar até 5 rostos de uma só vez",
+ "merge_people_limit": "Só é possível mesclar até 5 pessoas de uma só vez",
"merge_people_prompt": "Tem certeza que deseja mesclar estas pessoas? Esta ação é irreversível.",
"merge_people_successfully": "Pessoas mescladas com sucesso",
- "merged_people_count": "{count, plural, one {# pessoa foi combinada} other {# pessoas foram combinadas}}",
+ "merged_people_count": "{count, plural, one {# pessoa foi mesclada} other {# pessoas foram mescladas}}",
"minimize": "Minimizar",
"minute": "Minuto",
"missing": "Faltando",
@@ -923,6 +908,7 @@
"notifications": "Notificações",
"notifications_setting_description": "Gerenciar notificações",
"oauth": "OAuth",
+ "official_immich_resources": "Recursos oficiais do Immich",
"offline": "Offline",
"offline_paths": "Caminhos offline",
"offline_paths_description": "Estes resultados podem ser devidos a arquivos deletados manualmente e que não são parte de uma biblioteca externa.",
@@ -935,7 +921,6 @@
"onboarding_welcome_user": "Bem-vindo, {user}",
"online": "Online",
"only_favorites": "Somente favoritos",
- "only_refreshes_modified_files": "Somente atualize arquivos modificados",
"open_in_map_view": "Mostrar no mapa",
"open_in_openstreetmap": "Abrir no OpenStreetMap",
"open_the_search_filters": "Abre os filtros de pesquisa",
@@ -973,14 +958,12 @@
"people_edits_count": "{count, plural, one {# pessoa editada} other {# pessoas editadas}}",
"people_feature_description": "Navegar por fotos e vídeos agrupados por pessoas",
"people_sidebar_description": "Exibe o link Pessoas na barra lateral",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Aviso para deletar permanentemente",
"permanent_deletion_warning_setting_description": "Exibe um aviso ao deletar arquivos de forma permanente",
"permanently_delete": "Deletar permanentemente",
"permanently_delete_assets_count": "Excluir permanentemente {count, plural, one {asset} other {assets}}",
"permanently_delete_assets_prompt": "Você tem certeza de que deseja excluir permanentemente {count, plural, one {este ativo?} other {estes # ativos?}} Esta ação também removerá {count, plural, one {o ativo} other {os ativos}} de um ou mais álbuns.",
"permanently_deleted_asset": "Arquivo deletado permanentemente",
- "permanently_deleted_assets": "{count, plural, one {# ativo deletado} other {# ativos deletados}} permanentemente",
"permanently_deleted_assets_count": "{count, plural, one {# arquivo permanentemente excluído} other {# arquivos permanentemente excluídos}}",
"person": "Pessoa",
"person_hidden": "{name}{hidden, select, true { (oculto)} other {}}",
@@ -996,7 +979,6 @@
"play_memories": "Reproduzir memórias",
"play_motion_photo": "Reproduzir foto em movimento",
"play_or_pause_video": "Reproduzir ou Pausar vídeo",
- "point": "",
"port": "Porta",
"preset": "Predefinição",
"preview": "Pré-visualizar",
@@ -1041,11 +1023,10 @@
"purchase_server_description_2": "Status de Contribuidor",
"purchase_server_title": "Servidor",
"purchase_settings_server_activated": "A chave do produto para servidor é gerenciada pelo administrador",
- "range": "",
"rating": "Estrelas",
"rating_clear": "Limpar classificação",
+ "rating_count": "{count, plural, one {# estrela} other {# estrelas}}",
"rating_description": "Exibir o EXIF de classificação no painel de informações",
- "raw": "",
"reaction_options": "Opções de reação",
"read_changelog": "Ler Novidades",
"reassign": "Reatribuir",
@@ -1053,14 +1034,17 @@
"reassigned_assets_to_new_person": "{count, plural, one {# arquivo reatribuído} other {# arquivos reatribuídos}} a uma nova pessoa",
"reassing_hint": "Atribuir arquivos selecionados a uma pessoa existente",
"recent": "Recente",
+ "recent-albums": "Álbuns recentes",
"recent_searches": "Pesquisas recentes",
"refresh": "Atualizar",
"refresh_encoded_videos": "Atualizar vídeos codificados",
+ "refresh_faces": "Atualizar rostos",
"refresh_metadata": "Atualizar metadados",
"refresh_thumbnails": "Atualizar miniaturas",
"refreshed": "Atualizado",
"refreshes_every_file": "Atualiza todos arquivos",
"refreshing_encoded_video": "Atualizando vídeo codificado",
+ "refreshing_faces": "Atualizando rostos",
"refreshing_metadata": "Atualizando metadados",
"regenerating_thumbnails": "Regenerando miniaturas",
"remove": "Remover",
@@ -1068,15 +1052,17 @@
"remove_assets_shared_link_confirmation": "Tem certeza de que deseja remover {count, plural, one {# arquivo} other {# arquivos}} desse link compartilhado?",
"remove_assets_title": "Remover arquivos?",
"remove_custom_date_range": "Remover intervalo de datas personalizado",
+ "remove_deleted_assets": "Remover arquivos offline",
"remove_from_album": "Remover do álbum",
"remove_from_favorites": "Remover dos favoritos",
"remove_from_shared_link": "Remover do link compartilhado",
- "remove_offline_files": "Remover arquivos offline",
+ "remove_url": "Remover URL",
"remove_user": "Remover usuário",
"removed_api_key": "Removido a Chave de API: {name}",
"removed_from_archive": "Removido do arquivo",
"removed_from_favorites": "Removido dos favoritos",
"removed_from_favorites_count": "{count, plural, one {# Removido} other {# Removidos}} dos favoritos",
+ "removed_tagged_assets": "Tag removida de {count, plural, one {# arquivo} other {# arquivos}}",
"rename": "Renomear",
"repair": "Reparar",
"repair_no_results_message": "Arquivos perdidos ou não rastreados aparecem aqui",
@@ -1087,7 +1073,6 @@
"reset": "Resetar",
"reset_password": "Resetar senha",
"reset_people_visibility": "Resetar pessoas ocultas",
- "reset_settings_to_default": "",
"reset_to_default": "Redefinir para a configuração padrão",
"resolve_duplicates": "Resolver duplicatas",
"resolved_all_duplicates": "Todas duplicidades resolvidas",
@@ -1107,8 +1092,7 @@
"saved_settings": "Configurações salvas",
"say_something": "Diga algo",
"scan_all_libraries": "Escanear Todas Bibliotecas",
- "scan_all_library_files": "Re-escanear todos arquivos da biblioteca",
- "scan_new_library_files": "Escanear novos arquivos na biblioteca",
+ "scan_library": "Analisar",
"scan_settings": "Opções de escanear",
"scanning_for_album": "Escaneando por álbum...",
"search": "Pesquisar",
@@ -1123,8 +1107,10 @@
"search_for_existing_person": "Pesquisar por pessoas",
"search_no_people": "Nenhuma pessoa",
"search_no_people_named": "Nenhuma pessoa chamada \"{name}\"",
+ "search_options": "Opções de pesquisa",
"search_people": "Pesquisar pessoas",
"search_places": "Pesquisar lugares",
+ "search_settings": "Configurações de pesquisa",
"search_state": "Pesquisar estado...",
"search_tags": "Procurar tags...",
"search_timezone": "Pesquisar fuso horário...",
@@ -1149,7 +1135,6 @@
"selected_count": "{count, plural, one {# selecionado} other {# selecionados}}",
"send_message": "Enviar mensagem",
"send_welcome_email": "Enviar E-mail de boas vindas",
- "server": "Servidor",
"server_offline": "Servidor Indisponível",
"server_online": "Servidor Disponível",
"server_stats": "Status do servidor",
@@ -1192,14 +1177,18 @@
"show_person_options": "Exibir opções da pessoa",
"show_progress_bar": "Exibir barra de progresso",
"show_search_options": "Exibir opções de pesquisa",
+ "show_slideshow_transition": "Usar transições no modo de apresentação",
"show_supporter_badge": "Insígnia de Contribuidor",
"show_supporter_badge_description": "Mostrar a insígnia de contribuidor",
"shuffle": "Aleatório",
"sidebar": "Barra lateral",
+ "sidebar_display_description": "Exibir um link para visualizar na barra lateral",
"sign_out": "Sair",
"sign_up": "Registrar",
"size": "Tamanho",
"skip_to_content": "Pular para o conteúdo",
+ "skip_to_folders": "Ir para pastas",
+ "skip_to_tags": "Ir para as tags",
"slideshow": "Apresentação",
"slideshow_settings": "Opções de apresentação",
"sort_albums_by": "Ordenar álbuns por...",
@@ -1230,25 +1219,37 @@
"submit": "Enviar",
"suggestions": "Sugestões",
"sunrise_on_the_beach": "Nascer do sol na praia",
+ "support": "Ajuda",
+ "support_and_feedback": "Ajuda & Feedback",
+ "support_third_party_description": "Sua instalação do Immich é fornecida por terceiros. É possível que problemas sejam causados por eles, por isso, se tiver problemas, procure primeiro ajuda com eles utilizando os links abaixo.",
"swap_merge_direction": "Alternar direção da mesclagem",
"sync": "Sincronizar",
"tag": "Tag",
+ "tag_assets": "Marcar com tag",
+ "tag_created": "Tag foi criada: {tag}",
+ "tag_feature_description": "Visualizar fotos e videos agrupados pelo tópico da tag",
+ "tag_not_found_question": "Não consegue encontrar a tag? Crie uma tag nova aqui.",
+ "tag_updated": "Tag foi atualizada: {tag}",
+ "tagged_assets": "{count, plural, one {# arquivo marcado} other {# arquivos marcados}} com a tag",
"tags": "Tags",
"template": "Modelo",
"theme": "Tema",
"theme_selection": "Selecionar tema",
"theme_selection_description": "Defina automaticamente o tema como claro ou escuro com base na preferência do sistema do seu navegador",
- "they_will_be_merged_together": "Eles serão combinados",
+ "they_will_be_merged_together": "Eles serão mesclados",
+ "third_party_resources": "Recursos de terceiros",
"time_based_memories": "Memórias baseada no tempo",
+ "timeline": "Linha do tempo",
"timezone": "Fuso horário",
"to_archive": "Arquivar",
"to_change_password": "Alterar senha",
"to_favorite": "Favorito",
"to_login": "Iniciar sessão",
+ "to_parent": "Voltar um nível acima",
"to_trash": "Mover para a lixeira",
"toggle_settings": "Alternar configurações",
"toggle_theme": "Alternar tema escuro",
- "toggle_visibility": "Alternar visibilidade",
+ "total": "Total",
"total_usage": "Utilização total",
"trash": "Lixeira",
"trash_all": "Mover todos para o lixo",
@@ -1258,17 +1259,17 @@
"trashed_items_will_be_permanently_deleted_after": "Os itens da lixeira serão deletados permanentemente após {days, plural, one {# dia} other {# dias}}.",
"type": "Tipo",
"unarchive": "Desarquivar",
- "unarchived": "Restaurado do arquivo",
"unarchived_count": "{count, plural, one {# desarquivado} other {# desarquivados}}",
"unfavorite": "Remover favorito",
"unhide_person": "Exibir pessoa",
"unknown": "Desconhecido",
- "unknown_album": "",
"unknown_year": "Ano desconhecido",
"unlimited": "Ilimitado",
+ "unlink_motion_video": "Remover relação com video animado",
"unlink_oauth": "Desvincular OAuth",
"unlinked_oauth_account": "Conta OAuth desvinculada",
"unnamed_album": "Álbum sem nome",
+ "unnamed_album_delete_confirmation": "Tem certeza que deseja excluir este álbum?",
"unnamed_share": "Compartilhamento sem nome",
"unsaved_change": "Alteração não salva",
"unselect_all": "Limpar seleção",
@@ -1293,13 +1294,13 @@
"use_custom_date_range": "Usar intervalo de datas personalizado",
"user": "Usuário",
"user_id": "ID do usuário",
- "user_license_settings": "Licença",
- "user_license_settings_description": "Gerenciar sua licença",
"user_liked": "{user} curtiu {type, select, photo {a foto} video {o vídeo} asset {o arquivo} other {isso}}",
"user_purchase_settings": "Comprar",
"user_purchase_settings_description": "Gerenciar sua compra",
"user_role_set": "Definir {user} como {role}",
"user_usage_detail": "Detalhes de uso do usuário",
+ "user_usage_stats": "Estatísticas de utilização de conta",
+ "user_usage_stats_description": "Ver estatísticas de utilização de conta",
"username": "Nome do usuário",
"users": "Usuários",
"utilities": "Utilitários",
@@ -1307,7 +1308,9 @@
"variables": "Variáveis",
"version": "Versão",
"version_announcement_closing": "De seu amigo, Alex",
- "version_announcement_message": "Olá amigo! Uma nova versão do aplicativo está disponível. Para evitar configurações incorretas, por favor verifique com calma a página de notas da versão e certifique-se que os arquivos docker-compose.yml e .env estão configurados corretamente, principalmente se você usa o WatchTower ou qualquer outro mecanismo que faça atualizações automáticas.",
+ "version_announcement_message": "Olá! Uma nova versão do Immich está disponível. Para evitar configurações incorretas, leia com calma a página de notas da versão e verifique se é necessário alterar alguma configuração, principalmente se você usa o WatchTower ou qualquer outro mecanismo que faça atualizações automáticas do Immich.",
+ "version_history": "Histórico de versões",
+ "version_history_item": "Instalado {version} em {date}",
"video": "Vídeo",
"video_hover_setting": "Reproduzir miniatura do vídeo ao passar o mouse",
"video_hover_setting_description": "Reproduzir a miniatura do vídeo ao passar o mouse sobre o item. Mesmo quando desativado, a reprodução pode ser iniciada ao passar o mouse sobre o ícone de reprodução.",
@@ -1319,10 +1322,10 @@
"view_all_users": "Ver todos usuários",
"view_in_timeline": "Ver na linha do tempo",
"view_links": "Ver links",
+ "view_name": "Ver",
"view_next_asset": "Ver próximo arquivo",
"view_previous_asset": "Ver arquivo anterior",
"view_stack": "Exibir Pilha",
- "viewer": "Visualizar",
"visibility_changed": "A visibilidade de {count, plural, one {# pessoa foi alterada} other {# pessoas foram alteradas}}",
"waiting": "Aguardando",
"warning": "Aviso",
diff --git a/i18n/ro.json b/i18n/ro.json
new file mode 100644
index 0000000000..878bf9dd67
--- /dev/null
+++ b/i18n/ro.json
@@ -0,0 +1,1340 @@
+{
+ "about": "Despre",
+ "account": "Cont",
+ "account_settings": "Setări Cont",
+ "acknowledge": "Văzut",
+ "action": "Acţiune",
+ "actions": "Acţiuni",
+ "active": "Activ",
+ "activity": "Activitate",
+ "activity_changed": "Activitatea este {enabled, select, true {activată} other {dezactivată}}",
+ "add": "Adaugă",
+ "add_a_description": "Adaugă o descriere",
+ "add_a_location": "Adaugă locație",
+ "add_a_name": "Adaugă un nume",
+ "add_a_title": "Adaugă un titlu",
+ "add_exclusion_pattern": "Adăugă un model de excludere",
+ "add_import_path": "Adaugă o cale de import",
+ "add_location": "Adaugă o locație",
+ "add_more_users": "Adaugă mai mulți utilizatori",
+ "add_partner": "Adaugă partener",
+ "add_path": "Adaugă o cale",
+ "add_photos": "Adaugă fotografii",
+ "add_to": "Adaugă la...",
+ "add_to_album": "Adaugă în album",
+ "add_to_shared_album": "Adaugă la album partajat",
+ "add_url": "Adăugați adresa URL",
+ "added_to_archive": "Adăugat la arhivă",
+ "added_to_favorites": "Adaugă la favorite",
+ "added_to_favorites_count": "Adăugat {count, number} la favorite",
+ "admin": {
+ "add_exclusion_pattern_description": "Adăugați modele de excludere. Globing folosind *, ** și ? este suportat. Pentru a ignora toate fișierele din orice director numit „Raw”, utilizați „**/Raw/**”. Pentru a ignora toate fișierele care se termină în „.tif”, utilizați „**/*.tif”. Pentru a ignora o cale absolută, utilizați „/path/to/ignore/**”.",
+ "asset_offline_description": "Acest material din biblioteca externă nu se mai găsește pe disc și a fost mutat în coșul de gunoi. Dacă fișierul a fost mutat în bibliotecă, verificați cronologia pentru noul material corespunzător. Pentru a restabili acest material, asigurați-vă că calea fișierului de mai jos poate fi accesată de Immich și scanați biblioteca.",
+ "authentication_settings": "Setări de Autentificare",
+ "authentication_settings_description": "Gestionează parola, OAuth și alte setări de autentificare",
+ "authentication_settings_disable_all": "Ești sigur că vrei sa dezactivezi toate metodele de autentificare? Autentificarea va fi complet dezactivată.",
+ "authentication_settings_reenable": "Pentru a reactiva, folosește Comandă Server.",
+ "background_task_job": "Activități de Fundal",
+ "backup_database": "Salvare Bază de Date",
+ "backup_database_enable_description": "Activare salvare bază de date",
+ "backup_keep_last_amount": "Cantitatea de copii de rezervă anterioare de păstrat",
+ "backup_settings": "Setări Copii de Rezervă",
+ "backup_settings_description": "Gestionați setările de salvare a bazei de date",
+ "check_all": "Bifează Toate",
+ "cleared_jobs": "Activități eliminate pentru: {job}",
+ "config_set_by_file": "Configurația este setată în prezent de un fișier de configurare",
+ "confirm_delete_library": "Sigur doriți să ștergeți biblioteca {library}?",
+ "confirm_delete_library_assets": "Sigur doriți să ștergeți această bibliotecă? Aceasta va șterge {count, plural, one {# contained asset} other {all # contained assets}} din Immich și nu poate fi anulată. Fișierele vor rămâne pe disc.",
+ "confirm_email_below": "Pentru a confirma, tastați „{email}” mai jos",
+ "confirm_reprocess_all_faces": "Sigur doriți să reprocesați toate fețele? Acest lucru va șterge și persoanele cu nume.",
+ "confirm_user_password_reset": "Sigur doriți să resetați parola utilizatorului {user}?",
+ "create_job": "Creează sarcină",
+ "cron_expression": "Expresia cron",
+ "cron_expression_description": "Setați intervalul de scanare folosind formatul cron. Pentru mai multe informații, consultați de ex. Crontab Guru",
+ "cron_expression_presets": "Presetări de expresie cron",
+ "disable_login": "Dezactivați autentificarea",
+ "duplicate_detection_job_description": "Rulați învățarea automată pe materiale pentru a detecta imagini similare. Se bazează pe Căutare Inteligentă",
+ "exclusion_pattern_description": "Modelele de excludere vă permit să ignorați fișierele și folderele atunci când vă scanați biblioteca. Acest lucru este util dacă aveți foldere care conțin fișiere pe care nu doriți să le importați, cum ar fi fișierele RAW.",
+ "external_library_created_at": "Bibliotecă externă (creată pe {date})",
+ "external_library_management": "Managementul Bibliotecii Externe",
+ "face_detection": "Detecție facială",
+ "face_detection_description": "Detectează fețele din fișiere folosind învățare automată. Pentru videoclipuri, este luată în considerare doar miniatura. „Reînprospătează” (re)procesează toate fișierele. „Resetează” adaugă în coadă fișierele care nu au fost încă procesate. Fețele detectate vor fi puse în coadă pentru recunoașterea facială după finalizarea detectării feței, grupându-le în persoane existente sau noi.",
+ "facial_recognition_job_description": "Grupați fețele detectate în persoane. Acest pas rulează după ce Detectarea Feței este finalizată. „Resetează” (re)grupează toate fețele. „Lipsă” adaugă în coadă fețe care nu au o persoană desemnată.",
+ "failed_job_command": "Comanda {command} a eșuat pentru jobul: {job}",
+ "force_delete_user_warning": "AVERTISMENT: Acest lucru va elimina imediat utilizatorul și toate activele sale. Acest lucru nu poate fi anulat și fișierele nu pot fi recuperate.",
+ "forcing_refresh_library_files": "Forțarea reîmprospătării tuturor fișierelor din bibliotecă",
+ "image_format": "Formateaza",
+ "image_format_description": "WebP produce fișiere mai mici decât JPEG, dar este mai lent de codat.",
+ "image_prefer_embedded_preview": "Preferați previzualizarea încorporată",
+ "image_prefer_embedded_preview_setting_description": "Folosiți previzualizările încorporate în fotografiile RAW ca intrare pentru procesarea imaginii, atunci când sunt disponibile. Acest lucru poate produce culori mai precise pentru unele imagini, dar calitatea previzualizării depinde de cameră și imaginea poate avea mai multe artefacte de compresie.",
+ "image_prefer_wide_gamut": "Preferă o gamă largă",
+ "image_prefer_wide_gamut_setting_description": "Utilizați Display P3 pentru miniaturi. Acest lucru păstrează mai bine vibrația imaginilor cu spații de culoare largi, dar imaginile pot apărea diferit pe dispozitivele cu o versiune mai veche de browser. Imaginile sRGB sunt păstrate ca sRGB pentru a evita schimbările de culoare.",
+ "image_preview_description": "Imagine de dimensiune medie cu metadate eliminate, utilizată la vizualizarea unui singur element și pentru învățarea automată",
+ "image_preview_quality_description": "Calitatea previzualizării de la 1 la 100. O valoare mai mare oferă o calitate mai bună, dar produce fișiere mai mari și poate reduce receptivitatea aplicației. Setarea unei valori scăzute poate afecta calitatea învățării automate.",
+ "image_preview_title": "Previzualizați Setările",
+ "image_quality": "Calitate",
+ "image_resolution": "Rezolutie",
+ "image_resolution_description": "Rezoluțiile mai mari pot păstra mai multe detalii, dar necesită mai mult timp pentru a fi codificate, au dimensiuni mai mari ale fișierelor și pot reduce răspunsul aplicației.",
+ "image_settings": "Setări Imagine",
+ "image_settings_description": "Gestionează calitatea și rezoluția imaginilor generate",
+ "image_thumbnail_description": "Miniatură mică cu metadate eliminate, utilizată la vizualizarea grupurilor de fotografii, cum ar fi în cronologia principală",
+ "image_thumbnail_quality_description": "Calitatea miniaturii de la 1 la 100. O valoare mai mare oferă o calitate mai bună, dar produce fișiere mai mari și poate reduce receptivitatea aplicației.",
+ "image_thumbnail_title": "Setari Miniaturi",
+ "job_concurrency": "Concurență {job}",
+ "job_created": "Sarcină creată",
+ "job_not_concurrency_safe": "Această sarcină nu este sigură pentru a rula în concurență.",
+ "job_settings": "Setări Sarcină",
+ "job_settings_description": "Administrează concurența sarcinilor",
+ "job_status": "Starea Sarcinii",
+ "jobs_delayed": "{jobCount, plural, other {# întârziat}}",
+ "jobs_failed": "{jobCount, plural, other {# eșuat}}",
+ "library_created": "Librărie creată:{library}",
+ "library_deleted": "Bibliotecă ștearsă",
+ "library_import_path_description": "Specificați un folder pentru a îl importa. Acest folder, inclusiv sub-folderele, vor fi scanate pentru imagini și videoclipuri.",
+ "library_scanning": "Scanare Periodică",
+ "library_scanning_description": "Configurează scanarea periodică pentru bibliotecă",
+ "library_scanning_enable_description": "Activează scanarea periodică pentru bibliotecă",
+ "library_settings": "Bibliotecă Externă",
+ "library_settings_description": "Administrează setările pentru biblioteci externe",
+ "library_tasks_description": "Efectuează sarcini asupra bibliotecii",
+ "library_watching_enable_description": "Urmărește bibliotecile externe pentru schimbări ale fișierelor",
+ "library_watching_settings": "Urmărirea bibliotecii (EXPERIMENTAL)",
+ "library_watching_settings_description": "Urmărește automat fișierele schimbate",
+ "logging_enable_description": "Activează înregistrarea log-urilor",
+ "logging_level_description": "Dacă setarea este activată, înregistrează evenimentele cu nivelul de utilizat.",
+ "logging_settings": "Înregistrare",
+ "machine_learning_clip_model": "Model CLIP",
+ "machine_learning_clip_model_description": "Numele unui model CLIP listat aici. Rețineți că trebuie să rulați din nou funcția „Smart Search” pentru toate imaginile la schimbarea unui model.",
+ "machine_learning_duplicate_detection": "Detectare Duplicate",
+ "machine_learning_duplicate_detection_enabled": "Activează detectarea duplicatelor",
+ "machine_learning_duplicate_detection_enabled_description": "Dacă este dezactivată, elementele identice vor fi în continuare de-duplicate.",
+ "machine_learning_duplicate_detection_setting_description": "Utilizați încorporările CLIP pentru a găsi dubluri probabile",
+ "machine_learning_enabled": "Activează algoritmii de învățare automată",
+ "machine_learning_enabled_description": "Dacă este dezactivat, toate funcțiile ML vor fi dezactivate indiferent de setările de mai jos.",
+ "machine_learning_facial_recognition": "Recunoaștere Facială",
+ "machine_learning_facial_recognition_description": "Detectează, recunoaște și grupează fețe din imagini",
+ "machine_learning_facial_recognition_model": "Model de recunoaștere facială",
+ "machine_learning_facial_recognition_model_description": "Modelele sunt aranjate descrescător după mărime. Modelele mai mari sunt lente și folosesc multă memorie, dar produc rezultate mai bune. Rețineți că va trebui să rulați din nou recunoașterea facială pentru toate imaginile dacă schimbați modelul.",
+ "machine_learning_facial_recognition_setting": "Activează recunoașterea facială",
+ "machine_learning_facial_recognition_setting_description": "Dacă este dezactivată, imaginile nu vor fi codificate pentru recunoașterea facială și nu vor popula secțiunea persoane din pagina explorare.",
+ "machine_learning_max_detection_distance": "Distanța maximă pentru recunoaștere",
+ "machine_learning_max_detection_distance_description": "Distanța maximă dintre două imagini pentru a le considera duplicate, variind între 0,001-0,1. Valorile mai mari vor detecta mai multe duplicate, dar pot duce la rezultate fals pozitive.",
+ "machine_learning_max_recognition_distance": "Distanța maximă de recunoaștere",
+ "machine_learning_max_recognition_distance_description": "Distanța maximă dintre două fețe pentru a fi considerate aceeași persoană, variind între 0-2. Reducerea acestui prag poate împiedica etichetarea a două persoane ca fiind aceeași persoană, în timp ce creșterea lui poate împiedica etichetarea aceleiași persoane ca fiind două persoane diferite. Rețineți că este mai ușor să unificați două persoane decât să împărțiți o persoană în două, deci, dacă este posibil, alegeți un prag mai mic.",
+ "machine_learning_min_detection_score": "Scor minim de detecție",
+ "machine_learning_min_detection_score_description": "Scorul minim de încredere pentru ca o față să fie detectată de la 0 la 1. Valorile mai mici vor detecta mai multe fețe, dar pot duce la fals pozitive.",
+ "machine_learning_min_recognized_faces": "Fețe minim recunoscute",
+ "machine_learning_min_recognized_faces_description": "Numărul minim de fețe recunoscute pentru ca o persoană să fie creată. Creșterea acestui număr face ca recunoașterea facială să fie mai precisă, cu prețul creșterii șanselor ca o față să nu fie atribuită unei persoane.",
+ "machine_learning_settings": "Setări de învățare automată",
+ "machine_learning_settings_description": "Gestionați caracteristicile și setările de învățare automată",
+ "machine_learning_smart_search": "Căutare inteligentă",
+ "machine_learning_smart_search_description": "Căutarea semantică a imaginilor utilizând încorporările CLIP",
+ "machine_learning_smart_search_enabled": "Activați căutarea inteligentă",
+ "machine_learning_smart_search_enabled_description": "Dacă este dezactivată, imaginile nu vor fi codificate pentru căutarea inteligentă.",
+ "machine_learning_url_description": "Adresa URL a serverului de învățare automată. Dacă sunt furnizate mai multe adrese URL, fiecare server va fi încercat unul câte unul până când unul răspunde cu succes, în ordine de la primul până la ultimul.",
+ "manage_concurrency": "Gestionarea Simultaneității",
+ "manage_log_settings": "Administrați setările jurnalului",
+ "map_dark_style": "Mod întunecat",
+ "map_enable_description": "Activați funcțiile hărții",
+ "map_gps_settings": "Setări Hartă & GPS",
+ "map_gps_settings_description": "Gestionare setări Hartă & GPS (localizare inversă)",
+ "map_implications": "Caracteristica hărții se bazează pe un serviciu extern de planșe (tiles.immich.cloud)",
+ "map_light_style": "Mod deschis",
+ "map_manage_reverse_geocoding_settings": "Gestionare setări Localizare Inversă",
+ "map_reverse_geocoding": "Localizare inversă",
+ "map_reverse_geocoding_enable_description": "Activați geocodarea inversă",
+ "map_reverse_geocoding_settings": "Setări geocodare inversă",
+ "map_settings": "Hartă",
+ "map_settings_description": "Gestionare setări hartă",
+ "map_style_description": "URL-ul style.json către o temă pentru hartă",
+ "metadata_extraction_job": "Extrageți metadatele",
+ "metadata_extraction_job_description": "Extragere informații metadate din fiecare fișier cum ar fi localizare GPS, fețe și rezoluție,",
+ "metadata_faces_import_setting": "Activare import fețe",
+ "metadata_faces_import_setting_description": "Importă fețe din datele EXIF ale imaginii și din fișiere tip \"sidecar\"",
+ "metadata_settings": "Setări Metadate",
+ "metadata_settings_description": "Gestionează setările pentru metadate",
+ "migration_job": "Migrare",
+ "migration_job_description": "Migrați miniaturile pentru elemente și fețe la cea mai recentă structură de foldere",
+ "no_paths_added": "Nicio cale adăugată",
+ "no_pattern_added": "Niciun tipar adăugat",
+ "note_apply_storage_label_previous_assets": "Notă: Pentru a aplica Eticheta de Stocare la elementele încărcate anterior, executați",
+ "note_cannot_be_changed_later": "NOTĂ: Nu se va mai putea modifica ulterior!",
+ "note_unlimited_quota": "Notă: Introduceți 0 pentru spațiu nelimitat",
+ "notification_email_from_address": "De la adresa",
+ "notification_email_from_address_description": "Adresa expeditorului, spre exemplu: „Immich Photo Server {label} este eticheta de stocare a utilizatorului",
+ "system_settings": "Setǎri de Sistem",
+ "tag_cleanup_job": "Curățare etichete",
+ "template_email_available_tags": "Puteți utiliza următoarele variabile în șablonul dvs.: {tags}",
+ "template_email_if_empty": "Dacă șablonul este gol, va fi folosit e-mailul implicit.",
+ "template_email_invite_album": "Șablon de Album de Invitație",
+ "template_email_preview": "Previzualizare",
+ "template_email_settings": "Șabloane de E-mail",
+ "template_email_settings_description": "Gestionați șabloanele personalizate de notificare prin e-mail",
+ "template_email_update_album": "Actualizați Șablonul de Album",
+ "template_email_welcome": "Șablon de e-mail de bun venit",
+ "template_settings": "Șabloane de Notificare",
+ "template_settings_description": "Gestionați șabloanele personalizate pentru notificări.",
+ "theme_custom_css_settings": "CSS personalizat",
+ "theme_custom_css_settings_description": "Foile de stil în cascadă (CSS) permit personalizarea designului Immich.",
+ "theme_settings": "Setări Temă",
+ "theme_settings_description": "Gestionează personalizarea interfeței web Immich",
+ "these_files_matched_by_checksum": "Aceste fișiere sunt comparate folosind sumele de control",
+ "thumbnail_generation_job": "Generare Miniaturi",
+ "thumbnail_generation_job_description": "Generează miniaturi mari, mici și estompate pentru fiecare resursă, precum și miniaturi pentru fiecare persoană",
+ "transcoding_acceleration_api": "API de accelerare",
+ "transcoding_acceleration_api_description": "API-ul care va interacționa cu dispozitivul tău pentru a accelera transcodarea. Această setare este 'cel mai bun efort': va reveni la transcodarea software în caz de eșec. VP9 poate funcționa sau nu, în funcție de hardware-ul tău.",
+ "transcoding_acceleration_nvenc": "NVENC (necesitǎ GPU NVIDIA)",
+ "transcoding_acceleration_qsv": "Sincronizare Rapidă (necesitǎ CPU Intel de generația a 7-a sau mai mare)",
+ "transcoding_acceleration_rkmpp": "RKMPP (doar pe SOC-uri Rockchip)",
+ "transcoding_acceleration_vaapi": "VAAPI",
+ "transcoding_accepted_audio_codecs": "Codecuri audio acceptate",
+ "transcoding_accepted_audio_codecs_description": "Selectează care codecuri audio nu trebuie să fie transcodificate. Se utilizează doar pentru anumite politici de transcodare.",
+ "transcoding_accepted_containers": "Containere acceptate",
+ "transcoding_accepted_containers_description": "Selectează formatele de containere care nu trebuie să fie remixate în MP4. Se utilizează doar pentru anumite politici de transcodare.",
+ "transcoding_accepted_video_codecs": "Codecuri video acceptate",
+ "transcoding_accepted_video_codecs_description": "Selectează codecurile video care nu trebuie să fie transcodificate. Se utilizează doar pentru anumite politici de transcodare.",
+ "transcoding_advanced_options_description": "Opțiuni pe care majoritatea utilizatorilor nu ar trebui să fie necesar să le schimbe",
+ "transcoding_audio_codec": "Codec audio",
+ "transcoding_audio_codec_description": "Opus este opțiunea cu cea mai bună calitate, dar are o compatibilitate mai scăzută cu dispozitivele sau software-ul mai vechi.",
+ "transcoding_bitrate_description": "Videoclipuri cu rata de biți mai mare decât maximul acceptat sau care nu sunt într-un format acceptat",
+ "transcoding_codecs_learn_more": "Pentru a afla mai multe despre terminologia folosită aici, consultă documentația FFmpeg pentru {label} - это метка хранилища пользователя",
"system_settings": "Системные настройки",
+ "tag_cleanup_job": "Очистка тега",
+ "template_email_available_tags": "В этом шаблоне доступны следующие переменные: {tags}",
+ "template_email_if_empty": "Оставьте пустым, чтобы использовать шаблон по умолчанию.",
+ "template_email_invite_album": "Шаблон приглашения в альбом",
+ "template_email_preview": "Предварительный просмотр",
+ "template_email_settings": "Шаблоны эл. писем",
+ "template_email_settings_description": "Настройте шаблоны уведомлений по эл. почте",
+ "template_email_update_album": "Шаблон изменения альбома",
+ "template_email_welcome": "Шаблон приветствия",
+ "template_settings": "Шаблоны уведомлений",
+ "template_settings_description": "Настройте шаблоны уведомлений.",
"theme_custom_css_settings": "Пользовательские CSS",
"theme_custom_css_settings_description": "Каскадные таблицы стилей позволяют настраивать дизайн Immich.",
"theme_settings": "Настройки темы",
@@ -245,7 +267,6 @@
"these_files_matched_by_checksum": "Эти файлы сопоставляются по их контрольным суммам",
"thumbnail_generation_job": "Создание миниатюр",
"thumbnail_generation_job_description": "Создает большие, маленькие и размытые миниатюры для каждого файла и человека",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "API ускорителя",
"transcoding_acceleration_api_description": "API, который будет взаимодействовать с вашим устройством для ускорения транскодирования. Эта настройка является «наилучшим вариантом»: при сбое она будет возвращаться к программному транскодированию. VP9 может работать или не работать в зависимости от вашего оборудования.",
"transcoding_acceleration_nvenc": "NVENC (требуется графический процессор NVIDIA)",
@@ -271,7 +292,7 @@
"transcoding_hardware_acceleration": "Аппаратное ускорение",
"transcoding_hardware_acceleration_description": "Экспериментальный; намного быстрее, но будет иметь более низкое качество при том же битрейте",
"transcoding_hardware_decoding": "Аппаратное декодирование",
- "transcoding_hardware_decoding_setting_description": "Применяется только к NVENC и RKMPP. Включает сквозное ускорение, а не только ускорение кодирования. Может работать не со всеми видео.",
+ "transcoding_hardware_decoding_setting_description": "Включает сквозное ускорение, а не только ускорение кодирования. Может работать не со всеми видео.",
"transcoding_hevc_codec": "Кодек HEVC",
"transcoding_max_b_frames": "Максимально промежуточных кадров",
"transcoding_max_b_frames_description": "Более высокие значения повышают эффективность сжатия, но замедляют кодирование. Может быть несовместимо с аппаратным ускорением на старых устройствах. 0 отключает B-кадры, а -1 устанавливает это значение автоматически.",
@@ -297,8 +318,6 @@
"transcoding_threads_description": "Более высокие значения приводят к более быстрому кодированию, но оставляют серверу меньше места для обработки других задач во время активности. Это значение не должно превышать количество ядер процессора. Максимизирует использование, если установлено значение 0.",
"transcoding_tone_mapping": "Отображение тонов",
"transcoding_tone_mapping_description": "Пытается сохранить внешний вид HDR-видео при преобразовании в SDR. Каждый алгоритм делает разные компромиссы между цветом, детализацией и яркостью. Hable сохраняет детали, Mobius сохраняет цвет, а Reinhard сохраняет яркость.",
- "transcoding_tone_mapping_npl": "Отображение тонов NPL",
- "transcoding_tone_mapping_npl_description": "Цвета будут отрегулированы так, чтобы выглядеть нормально для дисплея такой яркости. Как ни странно, более низкие значения увеличивают яркость видео и наоборот, поскольку компенсируют яркость дисплея. 0 устанавливает это значение автоматически.",
"transcoding_transcode_policy": "Политика перекодирования",
"transcoding_transcode_policy_description": "Правила, определяющие когда видео должно быть перекодировано. HDR-видео всегда будут перекодироваться (за исключением случаев, когда перекодирование отключено).",
"transcoding_two_pass_encoding": "Двухпроходное кодирование",
@@ -307,16 +326,17 @@
"transcoding_video_codec_description": "VP9 обладает высокой эффективностью и веб-совместимостью, но перекодирование занимает больше времени. HEVC работает аналогично, но имеет меньшую веб-совместимость. H.264 широко совместим и быстро перекодируется, но создает файлы гораздо большего размера. AV1 — наиболее эффективный кодек, но он не поддерживается на старых устройствах.",
"trash_enabled_description": "Включить корзину",
"trash_number_of_days": "Срок хранения",
- "trash_number_of_days_description": "Количество дней, в течение которых объекты будут храниться в корзине, прежде чем они будут окончательно удалены",
+ "trash_number_of_days_description": "Количество дней, в течение которых файлы будут храниться в корзине до окончательного удаления",
"trash_settings": "Настройки корзины",
"trash_settings_description": "Управление настройками корзины",
"untracked_files": "НЕОТСЛЕЖИВАЕМЫЕ ФАЙЛЫ",
"untracked_files_description": "Приложение не отслеживает эти файлы. Они могут быть результатом неудачных перемещений, прерванных загрузок или пропущены из-за ошибки",
- "user_delete_delay": "Аккаунт и ресурсы пользователя {user} будут запланированы для окончательного удаления через {delay, plural, one {# день} few {# дня} many {# дней} other {# дня}}.",
+ "user_cleanup_job": "Очистка пользователя",
+ "user_delete_delay": "Аккаунт и файлы пользователя {user} будут отложены до окончательного удаления через {delay, plural, one {# день} few {# дня} many {# дней} other {# дня}}.",
"user_delete_delay_settings": "Отложенное удаление",
- "user_delete_delay_settings_description": "Срок в днях, по истечение которого происходит окончательное удаление учетной записи пользователя и его ресурсов после удаления учётной записи. Задача по удалению пользователей выполняется в полночь. Изменения этой настройки будут учтены при следующем запуске задачи.",
- "user_delete_immediately": "Аккаунт и ресурсы пользователя {user} будут поставлены в очередь на немедленное окончательное удаление.",
- "user_delete_immediately_checkbox": "Поставить пользователя и объекты в очередь для удаления",
+ "user_delete_delay_settings_description": "Срок в днях, по истечение которого происходит окончательное удаление учетной записи пользователя и его ресурсов. Задача по удалению пользователей выполняется в полночь. Изменения этой настройки будут учтены при следующем запуске задачи.",
+ "user_delete_immediately": "Аккаунт и файлы пользователя {user} будут немедленно поставлены в очередь для окончательного удаления.",
+ "user_delete_immediately_checkbox": "Поместить пользователя и его файлы в очередь для немедленного удаления",
"user_management": "Управление пользователями",
"user_password_has_been_reset": "Пароль пользователя был сброшен:",
"user_password_reset_description": "Пожалуйста, предоставьте временный пароль пользователю и сообщите ему, что при следующем входе в систему пароль нужно будет изменить.",
@@ -353,12 +373,12 @@
"album_remove_user_confirmation": "Вы уверены, что хотите удалить пользователя {user}?",
"album_share_no_users": "Похоже, вы поделились этим альбомом со всеми пользователями или у вас нет пользователей, с которыми можно поделиться.",
"album_updated": "Альбом обновлён",
- "album_updated_setting_description": "Получать уведомление по электронной почте, когда в общий альбом добавлены новые ресурсы",
+ "album_updated_setting_description": "Получать уведомление по электронной почте при добавлении новых ресурсов в общий альбом",
"album_user_left": "Вы покинули {album}",
"album_user_removed": "Пользователь {user} удален",
"album_with_link_access": "Поделитесь ссылкой на альбом, чтобы ваши друзья могли его посмотреть.",
"albums": "Альбомы",
- "albums_count": "{count, plural, one {Альбом ({count, number})} few {Альбома ({count, number})} many {Альбомов ({count, number})} other {Альбомов ({count, number})}}",
+ "albums_count": "{count, plural, one {{count, number} альбом} few {{count, number} альбома} many {{count, number} альбомов} other {{count, number} альбомов}}",
"all": "Все",
"all_albums": "Все альбомы",
"all_people": "Все люди",
@@ -378,35 +398,33 @@
"archive_or_unarchive_photo": "Архивировать или разархивировать фото",
"archive_size": "Размер архива",
"archive_size_description": "Настройка размера архива для скачивания (в GiB)",
- "archived": "Заархивировано",
"archived_count": "{count, plural, other {Архивировано #}}",
"are_these_the_same_person": "Это один и тот же человек?",
"are_you_sure_to_do_this": "Вы уверены, что хотите это сделать?",
"asset_added_to_album": "Добавлено в альбом",
"asset_adding_to_album": "Добавление в альбом...",
- "asset_description_updated": "Описание ресурса было обновлено",
+ "asset_description_updated": "Описание обновлено",
"asset_filename_is_offline": "Объект {filename} находится в офлайн-режиме",
"asset_has_unassigned_faces": "Есть не распознанные лица",
"asset_hashing": "Хеширование...",
"asset_offline": "Объект отключён",
- "asset_offline_description": "Этот объект находится в офлайн-режиме. Immich не может получить доступ к его расположению. Пожалуйста, убедитесь, что объект доступен, и затем пересканируйте библиотеку.",
+ "asset_offline_description": "Этот внешний файл не найден на диске. Пожалуйста, свяжитесь с администратором Immich для получения помощи.",
"asset_skipped": "Пропущено",
"asset_skipped_in_trash": "В корзине",
"asset_uploaded": "Загружено",
"asset_uploading": "Загрузка...",
"assets": "Объекты",
"assets_added_count": "Добавлено {count, plural, one {# объект} few {# объекта} other {# объектов}}",
- "assets_added_to_album_count": "Добавлено {count, plural, one {# объект} few {# объекта} other {# объектов}} в альбом",
- "assets_added_to_name_count": "Добавлено {count, plural, one {# объект} other {# объектов}} в {hasName, select, true {{name}} other {новый альбом}}",
+ "assets_added_to_album_count": "В альбом добавлено {count, plural, one {# объект} few {# объекта} other {# объектов}}",
+ "assets_added_to_name_count": "Добавлено {count, plural, one {# объект} few {# объекта} other {# объектов}} в {hasName, select, true {{name}} other {новый альбом}}",
"assets_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}}",
- "assets_moved_to_trash": "Перемещено {count, plural, one {# объект} few {# объекта} many {# объектов} other {# объекта}} в корзину",
"assets_moved_to_trash_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} перемещено в корзину",
"assets_permanently_deleted_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} удалено навсегда",
"assets_removed_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} удалено",
- "assets_restore_confirmation": "Вы уверены, что хотите восстановить все удаленные объекты? Это действие нельзя отменить!",
+ "assets_restore_confirmation": "Вы уверены, что хотите восстановить все объекты из корзины? Это действие нельзя отменить! Обратите внимание, что любые оффлайн-объекты не могут быть восстановлены таким способом.",
"assets_restored_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} восстановлено",
"assets_trashed_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} перемещено в корзину",
- "assets_were_part_of_album_count": "{count, plural, one {# Объект} other {# Объекты}} уже часть альбома",
+ "assets_were_part_of_album_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} уже в альбоме",
"authorized_devices": "Разрешенные устройства",
"back": "Назад",
"back_close_deselect": "Назад, закрыть или отменить выбор",
@@ -414,11 +432,12 @@
"birthdate_saved": "Дата рождения успешно сохранена",
"birthdate_set_description": "Дата рождения используется для расчета возраста этого человека на момент фотографии.",
"blurred_background": "Размытый фон",
+ "bugs_and_feature_requests": "Ошибки и запросы",
"build": "Сборка",
"build_image": "Версия сборки",
- "bulk_delete_duplicates_confirmation": "Вы уверены, что хотите массово удалить {count, plural, one {# дублирующийся ресурс} other {# дублирующихся ресурсов}}? Это сохранит самый большой ресурс из каждой группы и навсегда удалит все остальные дубликаты. Это действие нельзя отменить!",
- "bulk_keep_duplicates_confirmation": "Вы уверены, что хотите оставить {count, plural, one {# дублирующийся ресурс} other {# дублирующихся ресурсов}}? Это разрешит все группы дубликатов без удаления чего-либо.",
- "bulk_trash_duplicates_confirmation": "Вы уверены, что хотите массово переместить в корзину {count, plural, one {# дублирующийся ресурс} other {# дублирующихся ресурсов}}? Это сохранит самый большой ресурс из каждой группы и переместит в корзину все остальные дубликаты.",
+ "bulk_delete_duplicates_confirmation": "Вы уверены, что хотите массово удалить {count, plural, one {# дублирующийся объект} other {# дублирующихся объектов}}? Это сохранит самый большой файл из каждой группы и навсегда удалит дубликаты. Это действие нельзя отменить!",
+ "bulk_keep_duplicates_confirmation": "Вы уверены, что хотите оставить {count, plural, one {# дублирующийся объект} other {# дублирующихся объектов}}? Это сохранит все дубликаты.",
+ "bulk_trash_duplicates_confirmation": "Вы уверены, что хотите массово переместить в корзину {count, plural, one {# дублирующийся объект} other {# дублирующихся объектов}}? Это сохранит самый большой файл из каждой группы и переместит дубликаты в корзину.",
"buy": "Приобретение лицензии Immich",
"camera": "Камера",
"camera_brand": "Производитель",
@@ -428,10 +447,6 @@
"cannot_merge_people": "Невозможно объединить людей",
"cannot_undo_this_action": "Это действие нельзя отменить!",
"cannot_update_the_description": "Невозможно обновить описание",
- "cant_apply_changes": "Невозможно применить изменения",
- "cant_get_faces": "Невозможно получить лица",
- "cant_search_people": "Невозможно искать людей",
- "cant_search_places": "Невозможно искать места",
"change_date": "Изменить дату",
"change_expiration_time": "Изменить время окончания",
"change_location": "Изменить местоположение",
@@ -463,6 +478,7 @@
"confirm": "Подтвердить",
"confirm_admin_password": "Подтвердите пароль Администратора",
"confirm_delete_shared_link": "Вы уверены, что хотите удалить эту публичную ссылку?",
+ "confirm_keep_this_delete_others": "Все остальные объекты в серии будут удалены, кроме этого объекта. Вы уверены, что хотите продолжить?",
"confirm_password": "Подтвердите пароль",
"contain": "Вместить",
"context": "Контекст",
@@ -512,24 +528,28 @@
"delete_key": "Удалить ключ",
"delete_library": "Удалить библиотеку",
"delete_link": "Удалить ссылку",
- "delete_shared_link": "Удалить общую ссылку",
+ "delete_others": "Удалить остальные",
+ "delete_shared_link": "Удалить публичную ссылку",
"delete_tag": "Удалить тег",
"delete_tag_confirmation_prompt": "Вы уверены, что хотите удалить тег {tagName}?",
"delete_user": "Удалить пользователя",
- "deleted_shared_link": "Удалена публичная ссылка",
+ "deleted_shared_link": "Публичная ссылка удалена",
+ "deletes_missing_assets": "Удаляет объекты, отсутствующие на диске",
"description": "Описание",
"details": "Подробности",
"direction": "Направление",
"disabled": "Отключено",
"disallow_edits": "Запретить редактирование",
+ "discord": "Общение в Discord",
"discover": "Обнаружить",
"dismiss_all_errors": "Сбросить все ошибки",
"dismiss_error": "Сбросить ошибку",
"display_options": "Настройки отображения",
"display_order": "Порядок отображения",
"display_original_photos": "Отображение оригинальных фотографий",
- "display_original_photos_setting_description": "Предпочитать отображать исходную фотографию при просмотре ресурса, а не миниатюры, если исходный ресурс совместим с Интернетом. Это может привести к снижению скорости отображения фотографий.",
+ "display_original_photos_setting_description": "Предпочитать исходную фотографию при просмотре ресурса вместо миниатюры, если исходный ресурс поддерживается. Это может снизить скорости отображения фотографий.",
"do_not_show_again": "Не показывать это сообщение в дальнейшем",
+ "documentation": "Документация",
"done": "Готово",
"download": "Скачать",
"download_include_embedded_motion_videos": "Встроенные видео",
@@ -542,13 +562,6 @@
"duplicates": "Дубликаты",
"duplicates_description": "Разберитесь с каждой группой, указав, какие из них являются дубликатами, если таковые имеются",
"duration": "Продолжительность",
- "durations": {
- "days": "{days, plural, one {день} few {# дня} many {# дней} other {# дня}}",
- "hours": "{hours, plural, one {час} few {# часа} many {# часов} other {# часа}}",
- "minutes": "{minutes, plural, one {минута} other {{minutes, number} минут}}",
- "months": "{months, plural, one {месяц} other {{months, number} месяца}}",
- "years": "{years, plural, one {год} few {# года} many {# лет} other {# года}}"
- },
"edit": "Редактировать",
"edit_album": "Редактировать альбом",
"edit_avatar": "Редактировать аватар",
@@ -573,8 +586,6 @@
"editor_crop_tool_h2_aspect_ratios": "Соотношения сторон",
"editor_crop_tool_h2_rotation": "Вращение",
"email": "Электронная почта",
- "empty": "",
- "empty_album": "Пустой альбом",
"empty_trash": "Очистить корзину",
"empty_trash_confirmation": "Вы уверены, что хотите очистить корзину? Все объекты в корзине будут навсегда удалены из Immich.\nВы не сможете отменить это действие!",
"enable": "Включить",
@@ -584,11 +595,11 @@
"error_loading_image": "Ошибка при загрузке изображения",
"error_title": "Ошибка - Что-то пошло не так",
"errors": {
- "cannot_navigate_next_asset": "Невозможно перейти к следующему объекту",
- "cannot_navigate_previous_asset": "Не удается перейти к предыдущему ресурсу",
+ "cannot_navigate_next_asset": "Не удалось перейти к следующему объекту",
+ "cannot_navigate_previous_asset": "Не удалось перейти к предыдущему ресурсу",
"cant_apply_changes": "Не удается применить изменения",
"cant_change_activity": "Не удается {enabled, select, true {отключить} other {включить}} активность",
- "cant_change_asset_favorite": "Не удается изменить статус \"избранное\" для ресурса",
+ "cant_change_asset_favorite": "Не удалось изменить статус \"избранное\" для ресурса",
"cant_change_metadata_assets_count": "Не удается изменить метаданные у {count, plural, one {# ресурса} few {# ресурсов} many {# ресурсов} other {# ресурсов}}",
"cant_get_faces": "Не удается получить лица",
"cant_get_number_of_comments": "Не удается получить количество комментариев",
@@ -605,15 +616,16 @@
"exclusion_pattern_already_exists": "Такая модель исключения уже существует.",
"failed_job_command": "Команда {command} не выполнена для задачи: {job}",
"failed_to_create_album": "Не удалось создать альбом",
- "failed_to_create_shared_link": "Не удалось создать общую ссылку",
- "failed_to_edit_shared_link": "Не удалось изменить общую ссылку",
+ "failed_to_create_shared_link": "Не удалось создать публичную ссылку",
+ "failed_to_edit_shared_link": "Не удалось изменить публичную ссылку",
"failed_to_get_people": "Не удалось получить информацию о людях",
+ "failed_to_keep_this_delete_others": "Не удалось сохранить этот объект и удалить другие объекты",
"failed_to_load_asset": "Ошибка загрузки объекта",
- "failed_to_load_assets": "Ошибка загрузки объектов",
+ "failed_to_load_assets": "Не удалось загрузить объекты",
"failed_to_load_people": "Не удалось загрузить людей",
"failed_to_remove_product_key": "Не удалось удалить ключ продукта",
- "failed_to_stack_assets": "Не удалось создать стек",
- "failed_to_unstack_assets": "Не удалось разобрать стек",
+ "failed_to_stack_assets": "Не удалось сгруппировать объекты",
+ "failed_to_unstack_assets": "Не удалось разгруппировать объекты",
"import_path_already_exists": "Этот путь импорта уже существует.",
"incorrect_email_or_password": "Неверный адрес электронной почты или пароль",
"paths_validation_failed": "{paths, plural, one {# путь} other {# путей}} не прошли проверку",
@@ -621,13 +633,13 @@
"quota_higher_than_disk_size": "Вы установили квоту, превышающую размер диска",
"repair_unable_to_check_items": "Невозможно проверить {count, select, one {элемент} other {элементы}}",
"unable_to_add_album_users": "Невозможно добавить пользователей в альбом",
- "unable_to_add_assets_to_shared_link": "Не удалось добавить ресурсы к общей ссылке",
+ "unable_to_add_assets_to_shared_link": "Не удалось добавить объекты к публичной ссылке",
"unable_to_add_comment": "Невозможно добавить комментарий",
"unable_to_add_exclusion_pattern": "Невозможно добавить шаблон исключения",
"unable_to_add_import_path": "Не удается добавить путь импорта",
"unable_to_add_partners": "Невозможно добавить партнеров",
- "unable_to_add_remove_archive": "Не удалось {archived, select, true {удалить ресурс из} other {добавить ресурс в}} архив",
- "unable_to_add_remove_favorites": "Не удалось {favorite, select, true {добавить ресурс в} other {удалить ресурс из}} избранного",
+ "unable_to_add_remove_archive": "Не удалось {archived, select, true {удалить ресурс из архива} other {добавить ресурс в архив}}",
+ "unable_to_add_remove_favorites": "Не удалось {favorite, select, true {добавить ресурс в избранное} other {удалить ресурс из избранного}}",
"unable_to_archive_unarchive": "Не удалось {archived, select, true {архивировать} other {разархивировать}}",
"unable_to_change_album_user_role": "Не удалось изменить роль пользователя в альбоме",
"unable_to_change_date": "Невозможно изменить дату",
@@ -635,8 +647,6 @@
"unable_to_change_location": "Невозможно изменить местоположение",
"unable_to_change_password": "Невозможно изменить пароль",
"unable_to_change_visibility": "Не удалось изменить видимость для {count, plural, one {# человека} few {# людей} many {# людей} other {# людей}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "Не удалось выполнить вход с помощью OAuth",
"unable_to_connect": "Не удается подключиться",
"unable_to_connect_to_server": "Не удалось подключиться к серверу",
@@ -646,11 +656,11 @@
"unable_to_create_library": "Не удалось создать библиотеку",
"unable_to_create_user": "Не удалось создать пользователя",
"unable_to_delete_album": "Не удается удалить альбом",
- "unable_to_delete_asset": "Не удается удалить ресурс",
+ "unable_to_delete_asset": "Не удалось удалить ресурс",
"unable_to_delete_assets": "Ошибка при удалении ресурсов",
"unable_to_delete_exclusion_pattern": "Не удается удалить шаблон исключения",
"unable_to_delete_import_path": "Не удается удалить путь импорта",
- "unable_to_delete_shared_link": "Не удается удалить общую ссылку",
+ "unable_to_delete_shared_link": "Не удалось удалить публичную ссылку",
"unable_to_delete_user": "Не удается удалить пользователя",
"unable_to_download_files": "Невозможно скачать файлы",
"unable_to_edit_exclusion_pattern": "Невозможно отредактировать шаблон исключения",
@@ -659,11 +669,12 @@
"unable_to_enter_fullscreen": "Не удается войти в полноэкранный режим",
"unable_to_exit_fullscreen": "Не удается выйти из полноэкранного режима",
"unable_to_get_comments_number": "Не удалось получить количество комментариев",
- "unable_to_get_shared_link": "Не удалось получить общую ссылку",
+ "unable_to_get_shared_link": "Не удалось получить публичную ссылку",
"unable_to_hide_person": "Невозможно скрыть персону",
+ "unable_to_link_motion_video": "Не удается связать движущееся видео",
"unable_to_link_oauth_account": "Не удается связать учетную запись OAuth",
"unable_to_load_album": "Невозможно загрузить альбом",
- "unable_to_load_asset_activity": "Не удалось загрузить активность объекта",
+ "unable_to_load_asset_activity": "Не удалось загрузить комментарии",
"unable_to_load_items": "Не удалось загрузить элементы",
"unable_to_load_liked_status": "Невозможно загрузить статус лайка",
"unable_to_log_out_all_devices": "Невозможно выйти из всех устройств",
@@ -673,15 +684,13 @@
"unable_to_reassign_assets_existing_person": "Невозможно переназначить ресурсы на {name, select, null {существующего человека} other {{name}}}",
"unable_to_reassign_assets_new_person": "Не удается переназначить ресурсы новому человеку",
"unable_to_refresh_user": "Невозможно обновить пользователя",
- "unable_to_remove_album_users": "Не удается удалить пользователей из альбома",
+ "unable_to_remove_album_users": "Не удалось удалить пользователей из альбома",
"unable_to_remove_api_key": "Не удается удалить ключ API",
- "unable_to_remove_assets_from_shared_link": "Невозможно удалить объекты из общей ссылки",
- "unable_to_remove_comment": "",
+ "unable_to_remove_assets_from_shared_link": "Невозможно удалить объекты из публичной ссылки",
+ "unable_to_remove_deleted_assets": "Не удается удалить автономные файлы",
"unable_to_remove_library": "Не удается удалить библиотеку",
- "unable_to_remove_offline_files": "Не удается удалить автономные файлы",
"unable_to_remove_partner": "Не удается удалить партнера",
"unable_to_remove_reaction": "Не удается удалить реакцию",
- "unable_to_remove_user": "",
"unable_to_repair_items": "Не удалось восстановить элементы",
"unable_to_reset_password": "Не удается сбросить пароль",
"unable_to_resolve_duplicate": "Не удалось разрешить дубликат",
@@ -699,9 +708,10 @@
"unable_to_set_feature_photo": "Не удалось установить фотографию на обложку",
"unable_to_set_profile_picture": "Невозможно установить изображение профиля",
"unable_to_submit_job": "Невозможно отправить задание",
- "unable_to_trash_asset": "Невозможно удалить актив",
+ "unable_to_trash_asset": "Не удалось переместить объект в корзину",
"unable_to_unlink_account": "Не удалось отсоединить учетную запись",
- "unable_to_update_album_cover": "Невозможно обновить обложку альбома",
+ "unable_to_unlink_motion_video": "Не удается отсоединить движущееся видео",
+ "unable_to_update_album_cover": "Не удалось обновить обложку альбома",
"unable_to_update_album_info": "Невозможно обновить информацию об альбоме",
"unable_to_update_library": "Не удалось обновить библиотеку",
"unable_to_update_location": "Не удалось обновить местоположение",
@@ -710,17 +720,13 @@
"unable_to_update_user": "Не удалось обновить пользователя",
"unable_to_upload_file": "Невозможно загрузить файл"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Exif",
"exit_slideshow": "Выйти из слайд-шоу",
"expand_all": "Развернуть всё",
"expire_after": "Истекает через",
"expired": "Срок действия истек",
"expires_date": "Срок действия до {date}",
- "explore": "Просмотр",
+ "explore": "Поиск",
"explorer": "Проводник",
"export": "Экспортировать",
"export_as_json": "Экспорт в JSON",
@@ -728,33 +734,28 @@
"external": "Внешний",
"external_libraries": "Внешние библиотеки",
"face_unassigned": "Не назначено",
- "failed_to_get_people": "Ошибка при получении людей",
+ "failed_to_load_assets": "Не удалось загрузить объекты",
"favorite": "Избранное",
"favorite_or_unfavorite_photo": "Добавить или удалить фотографию из избранного",
"favorites": "Избранное",
- "feature": "",
"feature_photo_updated": "Избранное фото обновлено",
- "featurecollection": "",
"features": "Дополнительные возможности",
"features_setting_description": "Управление дополнительными возможностями приложения",
"file_name": "Имя файла",
"file_name_or_extension": "Имя файла или расширение",
"filename": "Имя файла",
- "files": "",
"filetype": "Тип файла",
"filter_people": "Фильтр по людям",
"find_them_fast": "Быстро найдите их по имени с помощью поиска",
"fix_incorrect_match": "Исправить неправильное соответствие",
"folders": "Папки",
"folders_feature_description": "Просмотр папок с фотографиями и видео в файловой системе",
- "force_re-scan_library_files": "Принудительное повторное сканирование всех файлов библиотеки",
- "forward": "Переслать",
+ "forward": "Вперёд",
"general": "Общие",
"get_help": "Получить помощь",
"getting_started": "Приступая к работе",
"go_back": "Назад",
"go_to_search": "Перейти к поиску",
- "go_to_share_page": "Перейти на страницу для обмена",
"group_albums_by": "Группировать альбомы по...",
"group_no": "Без группировки",
"group_owner": "Группировать по владельцу",
@@ -780,10 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Image}} снятое в {city}, {country} с {person1} и {person2} {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Image}} снятое в {city}, {country} с {person1}, {person2}, и {person3} {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Image}} снятое в {city}, {country} с {person1}, {person2}, и еще с {additionalCount, number} людьми {date}",
- "image_alt_text_people": "{count, plural, =1 {с {person1}} =2 {с {person1} и {person2}} =3 {с {person1}, {person2}, и {person3}} other {с {person1}, {person2}, и {others, number} др.}}",
- "image_alt_text_place": "в {city}, {country}",
- "image_taken": "{isVideo, select, true {Снято видео} other {Сделано фото}}",
- "img": "",
"immich_logo": "Лого Immich",
"immich_web_interface": "Веб интерфейс Immich",
"import_from_json": "Импорт из JSON",
@@ -792,7 +789,7 @@
"in_archive": "В архиве",
"include_archived": "Отображать архив",
"include_shared_albums": "Включать общие альбомы",
- "include_shared_partner_assets": "Включать общие активы партнеров",
+ "include_shared_partner_assets": "Включать общие ресурсы партнера",
"individual_share": "Персональный доступ",
"info": "Информация",
"interval": {
@@ -804,10 +801,11 @@
"invite_people": "Пригласить",
"invite_to_album": "Пригласить в альбом",
"items_count": "{count, plural, one {# элемент} two {# элемента} few {# элемента} other {# элементов}}",
- "job_settings_description": "",
"jobs": "Задачи",
"keep": "Оставить",
"keep_all": "Сохранить всё",
+ "keep_this_delete_others": "Оставить этот, удалить остальные",
+ "kept_this_deleted_others": "Сохранил этот объект и удалил {count, plural, one {# объект} other {# объектов}}",
"keyboard_shortcuts": "Сочетания клавиш",
"language": "Язык",
"language_setting_description": "Выберите предпочитаемый вами язык",
@@ -819,31 +817,6 @@
"level": "Уровень",
"library": "Библиотека",
"library_options": "Опции библиотеки",
- "license_account_info": "Ваш аккаунт лицензирован",
- "license_activated_subtitle": "Спасибо за поддержку Immich и open-source ПО",
- "license_activated_title": "Ваша лицензия была успешно активирована",
- "license_button_activate": "Активировать",
- "license_button_buy": "Купить",
- "license_button_buy_license": "Купить лицензию",
- "license_button_select": "Выбрать",
- "license_failed_activation": "Не удалось активировать лицензию. Проверьте корректный лицензионный ключ в электронной почте!",
- "license_individual_description_1": "1 лицензия на пользователя на любом сервере",
- "license_individual_title": "Индивидуальная лицензия",
- "license_info_licensed": "Лицензированный",
- "license_info_unlicensed": "Нет лицензии",
- "license_input_suggestion": "Уже есть лицензия? Введите ключ ниже",
- "license_license_subtitle": "Купить лицензию для поддержки Immich",
- "license_license_title": "ЛИЦЕНЗИЯ",
- "license_lifetime_description": "Пожизненная лицензия",
- "license_per_server": "за сервер",
- "license_per_user": "за пользователя",
- "license_server_description_1": "1 лицензия на сервер",
- "license_server_description_2": "Лицензия для всех пользователей сервера",
- "license_server_title": "Серверная Лицензия",
- "license_trial_info_1": "Вы используете Immich без лицензии",
- "license_trial_info_2": "Вы используете Immich примерно",
- "license_trial_info_3": "{accountAge, plural, one {# день} other {# дней}}",
- "license_trial_info_4": "Пожалуйста, рассмотрите возможность приобретения лицензии для поддержки дальнейшего развития проекта",
"light": "Светлая",
"like_deleted": "Лайк удален",
"link_motion_video": "Ссылка на движущееся видео",
@@ -865,9 +838,10 @@
"look": "Просмотр",
"loop_videos": "Циклическое воспроизведение",
"loop_videos_description": "Включить циклическое воспроизведение видео.",
+ "main_branch_warning": "Вы используете версию для разработки; мы настоятельно рекомендуем использовать релизную версию!",
"make": "Производитель",
- "manage_shared_links": "Управление общими ссылками",
- "manage_sharing_with_partners": "Управление обменом информацией с партнерами",
+ "manage_shared_links": "Управление публичными ссылками",
+ "manage_sharing_with_partners": "Управление обменом информацией с партнерами. Эта функция позволяет вашему партнеру видеть ваши фотографии и видеозаписи, кроме тех, которые находятся в Архиве и Корзине",
"manage_the_app_settings": "Управление настройками приложения",
"manage_your_account": "Управление учётной записью",
"manage_your_api_keys": "Управление API-ключами",
@@ -927,13 +901,14 @@
"no_results_description": "Попробуйте использовать синоним или более общее ключевое слово",
"no_shared_albums_message": "Создайте альбом для обмена фотографиями и видеозаписями с людьми в вашей сети",
"not_in_any_album": "Ни в одном альбоме",
- "note_apply_storage_label_to_previously_uploaded assets": "Примечание: Чтобы применить тег хранилища к ранее загруженным ресурсам запустите",
+ "note_apply_storage_label_to_previously_uploaded assets": "Примечание: Чтобы применить тег хранилища к ранее загруженным ресурсам, запустите",
"note_unlimited_quota": "Примечание: Введите 0 для неограниченной квоты",
"notes": "Примечание",
"notification_toggle_setting_description": "Включить уведомления по электронной почте",
"notifications": "Уведомления",
"notifications_setting_description": "Управление уведомлениями",
"oauth": "OAuth",
+ "official_immich_resources": "Официальные ресурсы Immich",
"offline": "Недоступен",
"offline_paths": "Недоступные пути",
"offline_paths_description": "Эти результаты могут быть вызваны ручным удалением файлов, которые не являются частью внешней библиотеки.",
@@ -946,7 +921,6 @@
"onboarding_welcome_user": "Добро пожаловать, {user}",
"online": "Доступен",
"only_favorites": "Только избранное",
- "only_refreshes_modified_files": "Обновляет только измененные файлы",
"open_in_map_view": "Открыть в режиме просмотра карты",
"open_in_openstreetmap": "Открыть в OpenStreetMap",
"open_the_search_filters": "Открыть фильтры поиска",
@@ -961,7 +935,7 @@
"owner": "Владелец",
"partner": "Партнер",
"partner_can_access": "{partner} имеет доступ",
- "partner_can_access_assets": "Все ваши фотографии и видеозаписи, кроме тех, которые находятся в Архиве и Удалены",
+ "partner_can_access_assets": "Все ваши фотографии и видеозаписи, кроме тех, которые находятся в Архиве и Корзине",
"partner_can_access_location": "Местоположение, где были сделаны ваши фотографии",
"partner_sharing": "Совместное использование",
"partners": "Партнёры",
@@ -984,21 +958,19 @@
"people_edits_count": "Изменено {count, plural, one {# человек} few {# человека} many {# людей} other {# человек}}",
"people_feature_description": "Просмотр фотографий и видео, сгруппированных по людям",
"people_sidebar_description": "Отображать пункт меню \"Люди\" в боковой панели",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Предупреждение об удалении",
- "permanent_deletion_warning_setting_description": "Отображать предупреждение при безвозвратном удалении ресурсов",
+ "permanent_deletion_warning_setting_description": "Предупреждать перед безвозвратным удалением ресурсов",
"permanently_delete": "Удалить навсегда",
- "permanently_delete_assets_count": "Полностью удалить {count, plural, one {ресурс} few {ресурса} many {ресурсов} other {ресурсов}}",
+ "permanently_delete_assets_count": "Безвозвратно удалить {count, plural, one {ресурс} few {ресурса} many {ресурсов} other {ресурсов}}",
"permanently_delete_assets_prompt": "Вы действительно хотите навсегда удалить {count, plural, one {этот объект?} other {эти # объектов?}} Это так же удалит {count, plural, one {его} other {их}} из альбома(ов).",
- "permanently_deleted_asset": "Удалить объект навсегда",
- "permanently_deleted_assets": "Безвозвратно удалено {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}}",
- "permanently_deleted_assets_count": "Полностью удалено {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}}",
+ "permanently_deleted_asset": "Удалить навсегда",
+ "permanently_deleted_assets_count": "Безвозвратно удалено {count, plural, one {# файл} few {# файла} many {# файлов} other {# файлов}}",
"person": "Человек",
"person_hidden": "{name}{hidden, select, true { (скрыт)} other {}}",
"photo_shared_all_users": "Похоже, что вы поделились своими фотографиями со всеми пользователями или у вас нет пользователей, с которыми можно поделиться.",
"photos": "Фото",
"photos_and_videos": "Фото и Видео",
- "photos_count": "{count, plural, one {Фотография ({count, number})} few {Фотографии ({count, number})} many {Фотографий ({count, number})} other {Фотографий ({count, number})}}",
+ "photos_count": "{count, plural, one {{count, number} Фотография} few {{count, number} Фотографии} many {{count, number} Фотографий} other {{count, number} Фотографий}}",
"photos_from_previous_years": "Фотографии прошлых лет в этот день",
"pick_a_location": "Выбрать местоположение",
"place": "Места",
@@ -1007,7 +979,6 @@
"play_memories": "Воспроизвести воспоминания",
"play_motion_photo": "Воспроизводить движущиеся фото",
"play_or_pause_video": "Воспроизведение или приостановка видео",
- "point": "",
"port": "Порт",
"preset": "Предустановка",
"preview": "Предварительный просмотр",
@@ -1052,38 +1023,40 @@
"purchase_server_description_2": "Состояние поддержки",
"purchase_server_title": "Сервер",
"purchase_settings_server_activated": "Ключ продукта сервера управляется администратором",
- "range": "",
"rating": "Рейтинг звёзд",
"rating_clear": "Очистить рейтинг",
"rating_count": "{count, plural, one {# звезда} other {# звезд}}",
"rating_description": "Показывать рейтинг в панели информации",
- "raw": "",
"reaction_options": "Опции реакций",
"read_changelog": "Прочитать список изменений",
"reassign": "Переназначить",
- "reassigned_assets_to_existing_person": "Переназначено {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}} на {name, select, null {существующего человека} other {{name}}}",
- "reassigned_assets_to_new_person": "Переназначено {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}} новому человеку",
- "reassing_hint": "Назначить выбранные ресурсы существующему человеку",
+ "reassigned_assets_to_existing_person": "Переназначен{count, plural, one { # ресурс} few {о # ресурса} many {о # ресурсов} other {о # ресурсов}} на {name, select, null {существующего пользователя} other {{name}}}",
+ "reassigned_assets_to_new_person": "Переназначен{count, plural, one { # ресурс} few {о # ресурса} many {о # ресурсов} other {о # ресурсов}} новому человеку",
+ "reassing_hint": "Назначить выбранные ресурсы существующему пользователю",
"recent": "Недавние",
+ "recent-albums": "Недавние альбомы",
"recent_searches": "Недавние поисковые запросы",
"refresh": "Обновить",
"refresh_encoded_videos": "Обновить закодированные видео",
+ "refresh_faces": "Обновить лица",
"refresh_metadata": "Обновить метаданные",
"refresh_thumbnails": "Обновить миниатюры",
"refreshed": "Обновлено",
- "refreshes_every_file": "Обновляет каждый файл",
+ "refreshes_every_file": "Обновляет все существующие и новые файлы",
"refreshing_encoded_video": "Обновление закодированного видео",
+ "refreshing_faces": "Обновление лиц",
"refreshing_metadata": "Обновление метаданных",
"regenerating_thumbnails": "Восстановление миниатюр",
"remove": "Удалить",
- "remove_assets_album_confirmation": "Вы уверены, что хотите удалить {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}} из альбома?",
- "remove_assets_shared_link_confirmation": "Вы уверены, что хотите удалить {count, plural, one {# ресурс} few {# ресурса} many {# ресурсов} other {# ресурса}} из этой общей ссылки?",
+ "remove_assets_album_confirmation": "Вы уверены, что хотите удалить {count, plural, one {# объект} few {# объекта} many {# объектов} other {# объектов}} из альбома?",
+ "remove_assets_shared_link_confirmation": "Вы уверены, что хотите удалить {count, plural, one {# объект} few {# объекта} many {# объектов} other {# объектов}} из этой публичной ссылки?",
"remove_assets_title": "Удалить объекты?",
"remove_custom_date_range": "Удалить пользовательский диапазон дат",
+ "remove_deleted_assets": "Удаление автономных файлов",
"remove_from_album": "Удалить из альбома",
"remove_from_favorites": "Удалить из избранного",
- "remove_from_shared_link": "Удалить из общей ссылки",
- "remove_offline_files": "Удаление автономных файлов",
+ "remove_from_shared_link": "Удалить из публичной ссылки",
+ "remove_url": "Удалить URL",
"remove_user": "Удалить пользователя",
"removed_api_key": "Удален ключ API: {name}",
"removed_from_archive": "Удален из архива",
@@ -1100,7 +1073,6 @@
"reset": "Сброс",
"reset_password": "Сброс пароля",
"reset_people_visibility": "Восстановить видимость людей",
- "reset_settings_to_default": "",
"reset_to_default": "Восстановление значений по умолчанию",
"resolve_duplicates": "Устранить дубликаты",
"resolved_all_duplicates": "Все дубликаты устранены",
@@ -1120,8 +1092,7 @@
"saved_settings": "Настройки сохранены",
"say_something": "Скажите что-нибудь",
"scan_all_libraries": "Сканировать все библиотеки",
- "scan_all_library_files": "Повторное сканирование всех файлов библиотеки",
- "scan_new_library_files": "Сканировать новые файлы в библиотеке",
+ "scan_library": "Сканировать",
"scan_settings": "Настройки сканирования",
"scanning_for_album": "Сканирование альбома...",
"search": "Поиск",
@@ -1139,6 +1110,7 @@
"search_options": "Параметры поиска",
"search_people": "Поиск людей",
"search_places": "Поиск мест",
+ "search_settings": "Настройки поиска",
"search_state": "Поиск региона...",
"search_tags": "Поиск по тегам...",
"search_timezone": "Поиск часового пояса...",
@@ -1163,7 +1135,6 @@
"selected_count": "{count, plural, one {# выбран} other {# выбрано}}",
"send_message": "Отправить сообщение",
"send_welcome_email": "Отправить приветственное письмо",
- "server": "Сервер",
"server_offline": "Сервер не в сети",
"server_online": "Сервер в сети",
"server_stats": "Статистика сервера",
@@ -1182,9 +1153,9 @@
"shared_by_user": "Владелец: {user}",
"shared_by_you": "Вы поделились",
"shared_from_partner": "Фото от {partner}",
- "shared_link_options": "Параметры общих ссылок",
- "shared_links": "Общие ссылки",
- "shared_photos_and_videos_count": "{assetCount, plural, other {# поделился фото и видео.}}",
+ "shared_link_options": "Параметры публичных ссылок",
+ "shared_links": "Публичные ссылки",
+ "shared_photos_and_videos_count": "{assetCount, plural, other {# фото и видео.}}",
"shared_with_partner": "Совместно с {partner}",
"sharing": "Общие",
"sharing_enter_password": "Пожалуйста, введите пароль для просмотра этой страницы.",
@@ -1206,6 +1177,7 @@
"show_person_options": "Показать опции персоны",
"show_progress_bar": "Показать Индикатор Выполнения",
"show_search_options": "Показать параметры поиска",
+ "show_slideshow_transition": "Показать слайд-шоу переход",
"show_supporter_badge": "Значок поддержки",
"show_supporter_badge_description": "Показать значок поддержки",
"shuffle": "Перемешать",
@@ -1226,12 +1198,12 @@
"sort_oldest": "Старые фото",
"sort_recent": "Недавние фото",
"sort_title": "Заголовок",
- "source": "Источник",
- "stack": "В стопку",
- "stack_duplicates": "Стек дубликатов",
- "stack_select_one_photo": "Выберите одну главную фотографию для стека",
- "stack_selected_photos": "Сложить выбранные фотографии в стопку",
- "stacked_assets_count": "{count, plural, one {# объект добавлен} few {# объекта добавлено} other {# объектов добавлено}} в стек",
+ "source": "Исходный код",
+ "stack": "Превратить в серию",
+ "stack_duplicates": "Превратить дубликаты в серию",
+ "stack_select_one_photo": "Выберите главную фотографию для серии",
+ "stack_selected_photos": "Объединить выбранные объекты в серию",
+ "stacked_assets_count": "{count, plural, one {# объект добавлен} few {# объекта добавлено} other {# объектов добавлено}} в серию",
"stacktrace": "Трассировка стека",
"start": "Старт",
"start_date": "Дата начала",
@@ -1247,13 +1219,16 @@
"submit": "Подтвердить",
"suggestions": "Предложения",
"sunrise_on_the_beach": "Восход солнца на пляже",
+ "support": "Поддержка",
+ "support_and_feedback": "Поддержка и обратная связь",
+ "support_third_party_description": "Ваша установка immich была упакована сторонним разработчиком. Проблемы, с которыми вы столкнулись, могут быть вызваны этим пакетом, поэтому, пожалуйста, в первую очередь обращайтесь к ним, используя ссылки ниже.",
"swap_merge_direction": "Изменить направление слияния",
"sync": "Синхр.",
"tag": "Тег",
"tag_assets": "Добавить теги",
"tag_created": "Тег {tag} создан",
"tag_feature_description": "Просмотр фотографий и видео, сгруппированных по тегам",
- "tag_not_found_question": "Не удается найти тег? Создайте его здесь",
+ "tag_not_found_question": "Не удается найти тег? Создайте новый тег.",
"tag_updated": "Тег {tag} изменен",
"tagged_assets": "Помечено {count, plural, one {# объект} other {# объектов}}",
"tags": "Теги",
@@ -1262,35 +1237,35 @@
"theme_selection": "Выбор темы",
"theme_selection_description": "Автоматически устанавливать тему в зависимости от системных настроек вашего браузера",
"they_will_be_merged_together": "Они будут объединены вместе",
+ "third_party_resources": "Сторонние ресурсы",
"time_based_memories": "Воспоминания, основанные на времени",
+ "timeline": "Временная шкала",
"timezone": "Часовой пояс",
"to_archive": "В архив",
"to_change_password": "Изменить пароль",
"to_favorite": "Добавить в избранное",
"to_login": "Вход",
"to_parent": "Вернуться назад",
- "to_root": "В начало",
"to_trash": "Корзина",
"toggle_settings": "Переключение настроек",
"toggle_theme": "Переключение темы",
- "toggle_visibility": "Переключение видимости",
+ "total": "Всего",
"total_usage": "Общее использование",
"trash": "Корзина",
"trash_all": "Удалить всё",
"trash_count": "Удалить {count, number}",
- "trash_delete_asset": "Удалить ресурс",
+ "trash_delete_asset": "Переместить в корзину",
"trash_no_results_message": "Здесь будут отображаться удалённые фотографии и видео.",
"trashed_items_will_be_permanently_deleted_after": "Элементы в корзине будут автоматически удалены через {days, plural, one {# день} other {# дней}}.",
"type": "Тип",
"unarchive": "Восстановить",
- "unarchived": "Разархивирован",
"unarchived_count": "{count, plural, other {Возвращено из архива #}}",
"unfavorite": "Удалить из избранного",
"unhide_person": "Показать персону",
"unknown": "Неизвестно",
- "unknown_album": "Неизвестный альбом",
"unknown_year": "Неизвестный Год",
"unlimited": "Не ограничено",
+ "unlink_motion_video": "Отсоединить движущееся видео",
"unlink_oauth": "Отключить OAuth",
"unlinked_oauth_account": "Отключить аккаунт OAuth",
"unnamed_album": "Альбом без названия",
@@ -1299,17 +1274,17 @@
"unsaved_change": "Не сохраненное изменение",
"unselect_all": "Снять всё",
"unselect_all_duplicates": "Отменить выбор всех дубликатов",
- "unstack": "Разобрать стек",
- "unstacked_assets_count": "{count, plural, one {# объект} few {# объекта} other {# объектов}} разобрано из стека",
+ "unstack": "Разгруппировать серию",
+ "unstacked_assets_count": "{count, plural, one {# объект извлечен} few {# объекта извлечено} other {# объектов извлечено}} из серии",
"untracked_files": "НЕОТСЛЕЖИВАЕМЫЕ ФАЙЛЫ",
"untracked_files_decription": "Приложение не отслеживает эти файлы. Они могут быть результатом неудачных перемещений, прерванных загрузок или пропущены из-за ошибки",
"up_next": "Следующее",
"updated_password": "Пароль обновлён",
"upload": "Загрузить",
"upload_concurrency": "Параллельность загрузки",
- "upload_errors": "Загрузка завершена с {count, plural, one {# ошибкой} few {# ошибками} many {# ошибками} other {# ошибками}}, обновите страницу, чтобы увидеть новые загруженные ресурсы.",
+ "upload_errors": "Загрузка завершена с {count, plural, one {# ошибкой} other {# ошибками}}, обновите страницу, чтобы увидеть новые загруженные ресурсы.",
"upload_progress": "Осталось {remaining, number} - Обработано {processed, number}/{total, number}",
- "upload_skipped_duplicates": "Пропущено {count, plural, one {# дублирующийся ресурс} few {# дублирующихся ресурса} many {# дублирующихся ресурсов} other {# дублирующихся ресурса}}",
+ "upload_skipped_duplicates": "Пропущен{count, plural, one { # дублирующийся ресурс} few {о # дублирующихся ресурса} many {о # дублирующихся ресурсов} other {о # дублирующихся ресурса}}",
"upload_status_duplicates": "Дубликаты",
"upload_status_errors": "Ошибки",
"upload_status_uploaded": "Загружено",
@@ -1319,13 +1294,13 @@
"use_custom_date_range": "Использовать пользовательский диапазон дат",
"user": "Пользователь",
"user_id": "ID пользователя",
- "user_license_settings": "Лицензия",
- "user_license_settings_description": "Управление лицензией",
"user_liked": "{user} отметил(а) {type, select, photo {это фото} video {это видео} asset {этот ресурс} other {этот альбом}}",
"user_purchase_settings": "Покупка",
"user_purchase_settings_description": "Управление покупкой",
"user_role_set": "Установить {user} в качестве {role}",
"user_usage_detail": "Подробная информация об использовании пользователем",
+ "user_usage_stats": "Статистика использования аккаунта",
+ "user_usage_stats_description": "Посмотреть статистику использования аккаунта",
"username": "Имя пользователя",
"users": "Пользователи",
"utilities": "Утилиты",
@@ -1333,31 +1308,33 @@
"variables": "Переменные",
"version": "Версия",
"version_announcement_closing": "Твой друг Алекс",
- "version_announcement_message": "Привет, друг! В приложении доступна новая версия. Пожалуйста, посетите заметки к выпуску и убедитесь, что ваша настройка docker-compose.yml и .env актуальна, чтобы избежать ошибок конфигурации, особенно если вы используете WatchTower или другой механизм автоматического обновления вашего приложения.",
+ "version_announcement_message": "Здравствуйте! Доступна новая версия приложения. Пожалуйста, прочтите заметки к выпуску и убедитесь, что ваши параметры docker-compose.yml и .env актуальны, чтобы избежать ошибок в конфигурации, особенно если вы используете WatchTower или другой механизм автоматического обновления приложения.",
+ "version_history": "История версий",
+ "version_history_item": "Версия {version} установлена {date}",
"video": "Видео",
"video_hover_setting": "Воспроизведение миниатюры видео при наведении курсора мыши",
"video_hover_setting_description": "Воспроизводить миниатюры видео при наведении курсора мыши на объект. Даже если этот параметр отключен, воспроизведение можно запустить, наведя курсор на значок воспроизведения.",
"videos": "Видео",
- "videos_count": "{count, plural, one {Видео (#)} few {Видео (#)} many {Видео (#)} other {Видео (#)}}",
+ "videos_count": "{count, plural, one {# Видео} few {# Видео} many {# Видео} other {# Видео}}",
"view": "Просмотр",
"view_album": "Просмотреть альбом",
"view_all": "Посмотреть всё",
"view_all_users": "Показать всех пользователей",
"view_in_timeline": "Показать на временной шкале",
"view_links": "Показать ссылки",
+ "view_name": "Посмотреть",
"view_next_asset": "Показать следующий объект",
"view_previous_asset": "Показать предыдущий объект",
"view_stack": "Показать стек",
- "viewer": "Наблюдатель",
"visibility_changed": "Видимость изменена для {count, plural, one {# человека} other {# людей}}",
"waiting": "В очереди",
"warning": "Предупреждение",
"week": "Неделя",
"welcome": "Добро пожаловать",
- "welcome_to_immich": "Добро пожаловать в immich",
+ "welcome_to_immich": "Добро пожаловать в Immich",
"year": "Год",
"years_ago": "{years, plural, one {# год} few {# года} many {# лет} other {# года}} назад",
"yes": "Да",
- "you_dont_have_any_shared_links": "У вас нет общих ссылок",
- "zoom_image": "Увеличить"
+ "you_dont_have_any_shared_links": "У вас нет публичных ссылок",
+ "zoom_image": "Приблизить"
}
diff --git a/i18n/sk.json b/i18n/sk.json
new file mode 100644
index 0000000000..bf67b8ab12
--- /dev/null
+++ b/i18n/sk.json
@@ -0,0 +1,1025 @@
+{
+ "about": "Obnoviť",
+ "account": "Účet",
+ "account_settings": "Nastavenia účtu",
+ "acknowledge": "Rozumiem",
+ "action": "Akcia",
+ "actions": "Akcie",
+ "active": "Aktívny",
+ "activity": "Aktivita",
+ "activity_changed": "Aktivita je {enabled, select, true{povolená} other {vypnutá}}",
+ "add": "Pridať",
+ "add_a_description": "Pridať popis",
+ "add_a_location": "Pridať polohu",
+ "add_a_name": "Pridať meno",
+ "add_a_title": "Pridať názov",
+ "add_exclusion_pattern": "Pridať vzor vylúčenia",
+ "add_import_path": "Pridať cestu pre import",
+ "add_location": "Pridať lokáciu",
+ "add_more_users": "Pridať viac používateľov",
+ "add_partner": "Pridať partnera",
+ "add_path": "Pridať cestu",
+ "add_photos": "Pridať fotografie",
+ "add_to": "Pridať do...",
+ "add_to_album": "Pridať do albumu",
+ "add_to_shared_album": "Pridať do zdieľaného albumu",
+ "add_url": "Pridaj URL",
+ "added_to_archive": "Pridané do archívu",
+ "added_to_favorites": "Pridané do obľúbených",
+ "added_to_favorites_count": "Pridané {count, number} do obľúbených",
+ "admin": {
+ "add_exclusion_pattern_description": "Pridávanie vzorov na vylúčenie. Globovanie pomocou *, ** a ? je podporované. Ak chcete ignorovať všetky súbory v akomkoľvek adresári s názvom \"Raw\", použite \"**/Raw/**\". Ak chcete ignorovať všetky súbory končiace na \".tif\", použite \"**/*.tif\". Ak chcete ignorovať absolútnu cestu, použite príkaz \"/cesta/k/ignorovanym/**\".",
+ "asset_offline_description": "Táto položka externej knižnice sa už na disku nenachádza a bola presunutá do koša. Pokiaľ bol súbor presunutý v rámci knižnice, skontrolujte časovú os a vyhľadajte nové odpovedajúce položky. Ak chcete túto položku obnoviť, uistite sa, že je cesta k nižšie uvedenému súboru prístupná pre aplikáciu Immich a prehľadajte knižnicu.",
+ "authentication_settings": "Nastavenia overovania",
+ "authentication_settings_description": "Spravovať heslo, protokol OAuth a ďalšie nastavenia overenia",
+ "authentication_settings_disable_all": "Naozaj chcete zakázať všetky spôsoby prihlásenia? Prihlásenie bude úplne zakázané.",
+ "authentication_settings_reenable": "Pre opätovné povolenie použite Serverový príkaz.",
+ "background_task_job": "Úlohy na pozadí",
+ "backup_database": "Zálohovať databázu",
+ "backup_database_enable_description": "Povoliť zálohovanie databázy",
+ "backup_keep_last_amount": "Množtvo predošlých záloh, ktoré sa majú zachovať",
+ "backup_settings": "Nastavenia zálohovania",
+ "backup_settings_description": "Spravovať nastavenia záloh",
+ "check_all": "Skontrolovať všetko",
+ "cleared_jobs": "Hotové úlohy pre: {job}",
+ "config_set_by_file": "Konfigurácia je v súčasnosti nastavená konfiguračným súborom",
+ "confirm_delete_library": "Naozaj chcete vymazať knižnicu {library}?",
+ "confirm_delete_library_assets": "Ste si istí, že chcete vymazať túto knižnicu? Tato operácia nenávratne odstráni {count, plural, one {# contained asset} other {all # contained assets}} súborov z Immich. Súbory budú ponechané na disku.",
+ "confirm_email_below": "Pre potvrdenie zadajte \"{email}\" nižšie",
+ "confirm_reprocess_all_faces": "Naozaj chcete spracovať všetky tváre znova? Tento proces vymaže pomenovaných ľudí.",
+ "confirm_user_password_reset": "Naozaj chcete resetovať heslo pre {user}?",
+ "create_job": "Vytvoriť úlohu",
+ "cron_expression": "Výraz cron",
+ "cron_expression_description": "Nastavte interval skenovania pomocou formátu cron. Pre viac informácií navštívte Crontab Guru",
+ "cron_expression_presets": "Presety cron výrazov",
+ "disable_login": "Zakázať prihlásenie",
+ "duplicate_detection_job_description": "Spustiť strojové učenie na položkách pre detekciu podobných obrázkov. Spolieha sa na inteligentné vyhľadávanie",
+ "exclusion_pattern_description": "Vylučovacie vzory Vám umožňujú ignorovať súbory a priečinky pri skenovaní Vašej knižnice. Toto je užitočné, ak máte priečinky obsahujúce súbory, ktoré nechcete importovať, napríklad RAW súbory.",
+ "external_library_created_at": "Externá knižnica (vytvorená {date})",
+ "external_library_management": "Správa Externej Knižnice",
+ "face_detection": "Detekcia tvárí",
+ "face_detection_description": "Detekujte tváre v položkách pomocou strojového učenia. Pri videách sa berie do úvahy iba miniatúra. „Obnoviť“ znovu spracuje všetky položky. „Resetovať“ navyše vymaže všetky aktuálne údaje o tvárach. „Chýbajúce“ zaradí položky, ktoré ešte neboli spracované. Detekované tváre budú zaradené na rozpoznávanie tvárí po dokončení detekcie tvárí, pričom sa zoskupia do existujúcich alebo nových osôb.",
+ "facial_recognition_job_description": "Zoskupovať detekované tváre do osôb. Tento krok sa vykoná po dokončení detekcie tvárí. „Resetovať“ (znovu) zoskupí všetky tváre. „Chýbajúce“ zaradí tváre, ktoré nemajú pridelenú osobu.",
+ "failed_job_command": "Príkaz {command} zlyhal pre úlohu: {job}",
+ "force_delete_user_warning": "VAROVANIE: Toto okamžite odstráni používateľa a všetky položky. Tento krok nie je možné vrátiť späť a súbory nebude možné obnoviť.",
+ "forcing_refresh_library_files": "Vynútenie obnovy všetkých súborov knižnice",
+ "image_format": "Formát",
+ "image_format_description": "WebP vytvára menšie súbory ako JPEG, ale kódovanie je pomalšie.",
+ "image_prefer_embedded_preview": "Uprednostňovať vstavaný náhľad",
+ "image_prefer_embedded_preview_setting_description": "Použiť vložené náhľady vo fotografiách RAW ako vstup pre spracovanie obrazu, ak sú k dispozícii. To môže vytvoriť presnejšie farby pre niektoré obrázky, ale kvalita náhľadu závisí od fotoaparátu a obrázok môže mať viac kompresných artefaktov.",
+ "image_prefer_wide_gamut": "Uprednostňovať široký farebný rozsah",
+ "image_prefer_wide_gamut_setting_description": "Použiť Display P3 pre miniatúry. Toto lepšie zachováva živosť obrázkov so širokým farebným rozsahom. Obrázky sa môžu zobraziť odlišne na starších zariadeniach so starou verziou prehliadača. sRGB obrázky zostávajú sRGB, aby sa zabránilo farebným posunom.",
+ "image_preview_description": "Stredne veľký obrázok s odstránenými metadátami, používaný pri prezeraní jednej položky a na strojové učenie",
+ "image_preview_quality_description": "Kvalita náhľadu v stupnici od 1 do 100. Vyššia hodnota znamená lepšiu kvalitu, ale produkuje väčšie súbory a môže znížiť odozvu aplikácie. Nastavenie nižšej hodnoty môže ovplyvniť kvalitu strojového učenia.",
+ "image_preview_title": "Nastavenia Náhľadov",
+ "image_quality": "Kvalita",
+ "image_resolution": "Rozlíšenie",
+ "image_resolution_description": "Vyššie rozlíšenie môže zachovať viac detailov, ale kódovanie trvá dlhšie, súbory sú väčšie a môže to znížiť rýchlosť odozvy aplikácie.",
+ "image_settings": "Nastavenia Obrázkov",
+ "image_settings_description": "Spravovať kvalitu a rozlíšenie generovaných obrázkov",
+ "image_thumbnail_description": "Malá miniatúra s odstránenými metadátami, používané pri zobrazovaní skupín fotiek ako na hlavnej časovej osi",
+ "image_thumbnail_quality_description": "Kvalita miniatúry v stupnici od 1 do 100. Vyššia hodnota znamená lepšiu kvalitu, ale produkuje väčšie súbory a môže znížiť odozvu aplikácie.",
+ "image_thumbnail_title": "Nastavenia miniatúr",
+ "job_concurrency": "Súbežnosť úlohy - {job}",
+ "job_created": "Úloha bola vytvorená",
+ "job_not_concurrency_safe": "Táto úloha nie je bezpečná pre súbežné spracovanie.",
+ "job_settings": "Nastavenia Úloh",
+ "job_settings_description": "Spravovať súbežnosť úloh",
+ "job_status": "Stav Úloh",
+ "jobs_delayed": "{jobCount, plural, one {# oneskorený} few {# oneskorené} other {# oneskorených}}",
+ "jobs_failed": "{jobCount, plural, one {# neúspešný} few {# neúspešné} other {# neúspešných}}",
+ "library_created": "Vytvorená knižnica: {library}",
+ "library_deleted": "Knižnica bola vymazaná",
+ "library_import_path_description": "Zvoľte priečinok na importovanie. Tento priečinok vrátane podpriečinkov bude skenovaný pre obrázky a videá.",
+ "library_scanning": "Pravidelné skenovanie",
+ "library_scanning_description": "Nastaviť pravidelné skenovanie knižnice",
+ "library_scanning_enable_description": "Zapnúť pravidelné skenovanie knižnice",
+ "library_settings": "Externá knižnica",
+ "library_settings_description": "Spravovať nastavenia externej knižnice",
+ "library_tasks_description": "Vykonať úlohy knižnice",
+ "library_watching_enable_description": "Sledovať externé knižnice pre zmeny v súboroch",
+ "library_watching_settings": "Sledovanie knižnice (EXPERIMENTÁLNE)",
+ "library_watching_settings_description": "Automaticky sledovať zmenené súbory",
+ "logging_enable_description": "Povoliť zaznamenávanie",
+ "logging_level_description": "Ak je povolené, akú úroveň zaznamenávania použiť.",
+ "logging_settings": "Zaznamenávanie",
+ "machine_learning_clip_model": "Model CLIP",
+ "machine_learning_clip_model_description": "Názov modelu CLIP je uvedený tu. Pamätajte, že pri zmene modelu je nutné znovu spustiť úlohu 'Inteligentné vyhľadávanie' pre všetky obrázky.",
+ "machine_learning_duplicate_detection": "Detekcia duplikátov",
+ "machine_learning_duplicate_detection_enabled": "Povoliť detekciu duplikátov",
+ "machine_learning_duplicate_detection_enabled_description": "Ak je vypnuté, presne identické položky budú stále deduplikované.",
+ "machine_learning_duplicate_detection_setting_description": "Použiť CLIP embeddings na identifikáciu pravdepodobných duplikátov",
+ "machine_learning_enabled": "Povoliť strojové učenie",
+ "machine_learning_enabled_description": "Ak je vypnuté, všetky funkcie strojového učenia (ML) budú vypnuté, bez ohľadu na nastavenia nižšie.",
+ "machine_learning_facial_recognition": "Rozpoznávanie tvárí",
+ "machine_learning_facial_recognition_description": "Detekovať, rozpoznať a zoskupiť tváre na obrázkoch",
+ "machine_learning_facial_recognition_model": "Model pre rozpoznávanie tvárí",
+ "machine_learning_facial_recognition_model_description": "Modely sú zoradené od najväčšieho po najmenší. Väčšie modely sú pomalšie a vyžadujú viac pamäte, ale poskytujú lepšie výsledky. Pamätajte, že po zmene modelu je potrebné znovu spustiť úlohu detekcie tvárí pre všetky obrázky.",
+ "machine_learning_facial_recognition_setting": "Povoliť rozpoznávanie tvárí",
+ "machine_learning_facial_recognition_setting_description": "Ak je vypnuté, obrázky nebudú spracované pre rozpoznávanie tvárí a nebudú sa zobrazovať v sekcii Ľudia na stránke Preskúmať.",
+ "machine_learning_max_detection_distance": "Maximálna detekčná odchylka",
+ "machine_learning_max_detection_distance_description": "Maximálna odchylka medzi dvoma obrázkami, aby boli považované za duplikáty, v rozsahu od 0.001 do 0.1. Vyššie hodnoty odhalia viac duplikátov, ale môžu viesť k falošným pozitívam.",
+ "machine_learning_max_recognition_distance": "Maximálna rozpoznávacia odchylka",
+ "machine_learning_max_recognition_distance_description": "Maximálna odchylka medzi dvoma tvárami, aby boli považované za rovnakú osobu, v rozsahu od 0 do 2. Zníženie tejto hodnoty môže zabrániť označeniu dvoch ľudí za tú istú osobu, zatiaľ čo zvýšenie môže zabrániť označeniu jednej osoby za dve rôzne osoby. Pamätajte, že je jednoduchšie spojiť dvoch ľudí ako rozdeliť jednu osobu na dve, takže je lepšie voliť nižší prah, ak je to možné.",
+ "machine_learning_min_detection_score": "Minimálne detekčné skóre",
+ "machine_learning_min_detection_score_description": "Minimálne skóre dôveryhodnosti pre detekciu tváre v rozsahu od 0 do 1. Nižšie hodnoty odhalia viac tvárí, ale môžu viesť k falošným pozitivním výsledkom.",
+ "machine_learning_min_recognized_faces": "Minimum rozpoznaných tvárí",
+ "machine_learning_min_recognized_faces_description": "Minimálny počet rozpoznaných tvárí potrebných na vytvorenie osoby. Zvýšením tejto hodnoty sa zvyšuje presnosť rozpoznávania tvárí, ale tiež sa zvyšuje pravdepodobnosť, že tvár nebude priradená osobe.",
+ "machine_learning_settings": "Nastavenia strojového učenia",
+ "machine_learning_settings_description": "Spravovať funkcie a nastavenia strojového učenia",
+ "machine_learning_smart_search": "Inteligentné vyhľadávanie",
+ "machine_learning_smart_search_description": "Významové vyhľadávanie v obrázkoch pomocou CLIP vzorov",
+ "machine_learning_smart_search_enabled": "Povoliť inteligentné vyhľadávanie",
+ "machine_learning_smart_search_enabled_description": "Ak je vypnuté, obrázky nebudú spracované pre inteligentné vyhľadávanie.",
+ "machine_learning_url_description": "URL adresa machine-learning servera. Ak je poskytnutých viacero URL adries, budú servery postupne testované od prvého po posledný, až kým jeden z nich úspešne odpovie.",
+ "manage_concurrency": "Správa súbežnosti",
+ "manage_log_settings": "Spravovať nastavenia logovania",
+ "map_dark_style": "Tmavý štýl",
+ "map_enable_description": "Povoliť funkcie mapy",
+ "map_gps_settings": "Nastavenia Mapy & GPS",
+ "map_gps_settings_description": "Správa nastavení máp a GPS reverzného geokódovania",
+ "map_implications": "Táto funkčnosť sa spolieha na externý servis spracovania mapových dlaždíc (tiles.immich.cloud)",
+ "map_light_style": "Svetlý štýl",
+ "map_manage_reverse_geocoding_settings": "Správa nastavení Reverzného geokódovania",
+ "map_reverse_geocoding": "Reverzné Geokódovanie",
+ "map_reverse_geocoding_enable_description": "Povoliť reverzné geokódovanie",
+ "map_reverse_geocoding_settings": "Nastavenia reverzného geokódovania",
+ "map_settings": "Mapa",
+ "map_settings_description": "Spravovať nastavenia mapy",
+ "map_style_description": "URL na motív style.json",
+ "metadata_extraction_job": "Extrahovať metadáta",
+ "metadata_extraction_job_description": "Získaj informácie metadátach z každej položky, ako napríklad GPS, tváre a rozlíšenie",
+ "metadata_faces_import_setting": "Povoliť import tváre",
+ "metadata_faces_import_setting_description": "Importuj tváre z EXIF dát obrázkov a sidecar súborov",
+ "metadata_settings": "Nastavenia metadát",
+ "metadata_settings_description": "Spravovať nastavenia metadát",
+ "migration_job": "Migrácia",
+ "migration_job_description": "Migrácia miniatúr položiek a tvárí na najnovšiu štruktúru priečinkov",
+ "no_paths_added": "Neboli pridané žiadne cesty",
+ "no_pattern_added": "Nebol pridaný žiadny vzor",
+ "note_apply_storage_label_previous_assets": "Poznámka: Ak chcete použiť Štítkovanie úložiska na predtým nahrané aktíva, spustite príkaz",
+ "note_cannot_be_changed_later": "POZNÁMKA: Toto nie je možné neskôr zmeniť!",
+ "note_unlimited_quota": "Poznámka: Použite 0 pre neobmedzený limit",
+ "notification_email_from_address": "Z adresy",
+ "notification_email_from_address_description": "E-mailová adresa odosielateľa, príklad: \"Immich Photo Server {label} je Štítok úložiska používateľa",
+ "system_settings": "Nastavenia systému",
+ "tag_cleanup_job": "Premazanie značiek",
+ "template_email_available_tags": "V šablóne môžeš použiť nasledujúce premenné: {tags}",
+ "template_email_if_empty": "Ak nie je zadaná žiadna šablóna, bude použitá predvolená šablóna.",
+ "template_email_invite_album": "Šablóna pre Pozvánka do albumu",
+ "template_email_preview": "Ukážka",
+ "template_email_settings": "Emailové šablóny",
+ "template_email_settings_description": "Spravovanie vlastných šablón pre emailové upozornenia",
+ "template_email_update_album": "Upraviť šablónu albumu",
+ "template_email_welcome": "Šablóna uvítajúceho emailu",
+ "template_settings": "Šablóna upozornení",
+ "template_settings_description": "Spravovanie vlastných šablón upozornení.",
+ "theme_custom_css_settings": "Vlastné CSS",
+ "theme_custom_css_settings_description": "CSS štýly umožňujú prispôsobiť dizajn Immich.",
+ "theme_settings": "Nastavenia témovania",
+ "theme_settings_description": "Spravovať prispôsobenie webového rozhrania Immich",
+ "these_files_matched_by_checksum": "Tieto súbory zodpovedajú kontrolným súčtom",
+ "thumbnail_generation_job": "Generovať Miniatúry",
+ "thumbnail_generation_job_description": "Generujte veľké, malé a rozmazané miniatúry pre každé médium, ako aj miniatúry pre každú osobu",
+ "transcoding_acceleration_api": "API pre akceleráciu",
+ "transcoding_acceleration_api_description": "Rozhranie API, ktoré bude interagovať s vaším zariadením s cieľom urýchliť prekódovanie. Toto nastavenie je „najlepšie úsilie“: pri zlyhaní sa vráti k softvérovému prekódovaniu. VP9 môže alebo nemusí fungovať v závislosti od vášho hardvéru.",
+ "transcoding_acceleration_nvenc": "NVENC (vyžaduje grafickú kartu NVIDIA)",
+ "transcoding_acceleration_qsv": "Quick Sync (vyžaduje 7. generáciu Intel procesora alebo novšie)",
+ "transcoding_acceleration_rkmpp": "RKMPP (iba na Rockchip SOC)",
+ "transcoding_acceleration_vaapi": "VAAPI",
+ "transcoding_accepted_audio_codecs": "Akceptované zvukové kodeky",
+ "transcoding_accepted_audio_codecs_description": "Vyberte, ktoré zvukové kodeky nie je potrebné prekódovať. Používa sa len pre určité zásady prekódovania.",
+ "transcoding_accepted_containers": "Akceptované kontajnery",
+ "transcoding_accepted_containers_description": "Vyberte, ktoré formáty kontajnerov nie je potrebné remuxovať na MP4. Používa sa len pre určité zásady prekódovania.",
+ "transcoding_accepted_video_codecs": "Akceptované video kodeky",
+ "transcoding_accepted_video_codecs_description": "Vyberte, ktoré video kodeky nie je potrebné prekódovať. Používa sa len pre určité zásady prekódovania.",
+ "transcoding_advanced_options_description": "Možnosti, ktoré by väčšina používateľov nemala meniť",
+ "transcoding_audio_codec": "Zvukový kodek",
+ "transcoding_audio_codec_description": "Opus je najkvalitnejšia možnosť, ale má nižšiu kompatibilitu so starými zariadeniami alebo softvérom.",
+ "transcoding_bitrate_description": "Videá presahujúce maximálnu bitovú rýchlosť alebo videá, ktoré nie sú v akceptovanom formáte",
+ "transcoding_codecs_learn_more": "Ak sa chcete dozvedieť viac o tu použitej terminológii, pozrite si dokumentáciu FFmpeg pre {label} je uporabniška oznaka za shranjevanje",
+ "system_settings": "Sistemske nastavitve",
+ "tag_cleanup_job": "Čiščenje oznak",
+ "template_email_available_tags": "V svoji predlogi lahko uporabite naslednje spremenljivke: {tags}",
+ "template_email_if_empty": "Če je predloga prazna, bo uporabljena privzeta e-pošta.",
+ "template_email_invite_album": "Predloga povabila v album",
+ "template_email_preview": "Predogled",
+ "template_email_settings": "E-poštne predloge",
+ "template_email_settings_description": "Upravljajte predloge e-poštnih obvestil po meri",
+ "template_email_update_album": "Predloga posodobitve albuma",
+ "template_email_welcome": "Predloga pozdravnega e-poštnega sporočila",
+ "template_settings": "Predloge obvestil",
+ "template_settings_description": "Upravljajte predloge po meri za obvestila.",
+ "theme_custom_css_settings": "CSS po meri",
+ "theme_custom_css_settings_description": "Kaskadni slogovni listi (CSS) omogočajo prilagajanje oblikovanja Immicha.",
+ "theme_settings": "Nastavitve teme",
+ "theme_settings_description": "Upravljanje prilagajanja spletnega vmesnika Immich",
+ "these_files_matched_by_checksum": "Te datoteke se ujemajo z njihovimi kontrolnimi vsotami",
+ "thumbnail_generation_job": "Ustvarite sličice",
+ "thumbnail_generation_job_description": "Ustvari velike, majhne in zamegljene sličice za vsako sredstvo ter sličice za vsako osebo",
+ "transcoding_acceleration_api": "API za pospeševanje",
+ "transcoding_acceleration_api_description": "API, ki bo sodeloval z vašo napravo za pospešitev prekodiranja. Ta nastavitev je 'po najboljših močeh': v primeru napake se bo vrnila k programskemu prekodiranju. VP9 lahko deluje ali ne deluje, odvisno od vaše strojne opreme.",
+ "transcoding_acceleration_nvenc": "NVENC (zahteva NVIDIA GPE)",
+ "transcoding_acceleration_qsv": "Hitra sinhronizacija (zahteva procesor Intel 7. generacije ali novejši)",
+ "transcoding_acceleration_rkmpp": "RKMPP (samo na Rockchip SOC)",
+ "transcoding_acceleration_vaapi": "VAAPI",
+ "transcoding_accepted_audio_codecs": "Sprejeti zvočni kodeki",
+ "transcoding_accepted_audio_codecs_description": "Izberite, katerih zvočnih kodekov ni treba prekodirati. Uporablja se samo za določene politike prekodiranja.",
+ "transcoding_accepted_containers": "Sprejeti zabojniki",
+ "transcoding_accepted_containers_description": "Izberite, katerih formatov zabojnika ni treba ponovno muksirati v MP4. Uporablja se samo za določene politike prekodiranja.",
+ "transcoding_accepted_video_codecs": "Podprti video kodeki",
+ "transcoding_accepted_video_codecs_description": "Izberite, katerih video kodekov ni treba prekodirati. Uporablja se samo za določene politike prekodiranja.",
+ "transcoding_advanced_options_description": "Možnosti večini uporabnikov ne bi bilo treba spreminjati",
+ "transcoding_audio_codec": "Avdio kodek",
+ "transcoding_audio_codec_description": "Opus je najbolj kakovostna možnost, vendar ima slabšo združljivost s starimi napravami ali programsko opremo.",
+ "transcoding_bitrate_description": "Videoposnetki, ki presegajo največjo bitno hitrost ali niso v sprejemljivem formatu",
+ "transcoding_codecs_learn_more": "Če želite izvedeti več o tukaj uporabljeni terminologiji, glejte dokumentacijo FFmpeg za {label} је ознака за складиштење корисника",
"system_settings": "Подешавања система",
+ "tag_cleanup_job": "Чишћење ознака (tags)",
+ "template_email_available_tags": "Можете да користите следеће променљиве у свом шаблону: {tags}",
+ "template_email_if_empty": "Ако је шаблон празан, користиће се подразумевана адреса е-поште.",
+ "template_email_invite_album": "Шаблон албума позива",
+ "template_email_preview": "Преглед",
+ "template_email_settings": "Шаблони е-поште",
+ "template_email_settings_description": "Управљајте прилагођеним шаблонима обавештења путем е-поште",
+ "template_email_update_album": "Ажурирајте шаблон албума",
+ "template_email_welcome": "Шаблон е-поште добродошлице",
+ "template_settings": "Шаблони обавештења",
+ "template_settings_description": "Управљајте прилагођеним шаблонима за обавештења.",
"theme_custom_css_settings": "Прилагођени CSS",
"theme_custom_css_settings_description": "Каскадни листови стилова (CSS) омогућавају прилагођавање дизајна Immich-a.",
"theme_settings": "Подешавање тема",
@@ -245,7 +267,6 @@
"these_files_matched_by_checksum": "Овим датотекама се подударају њихови контролни-збирови",
"thumbnail_generation_job": "Генеришите сличице",
"thumbnail_generation_job_description": "Генеришите велике, мале и замућене сличице за свако средство, као и сличице за сваку особу",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "АПИ за убрзање",
"transcoding_acceleration_api_description": "АПИ који ће комуницирати са вашим уређајем да би убрзао транскодирање. Ово подешавање је 'најбољи напор': vraća se na softversko transkodiranje u slučaju neuspeha. VP9 može ili ne mora da radi u zavisnosti od vašeg hardvera.",
"transcoding_acceleration_nvenc": "НВЕНЦ (захтева NVIDIA ГПУ)",
@@ -271,7 +292,7 @@
"transcoding_hardware_acceleration": "Хардверско убрзање",
"transcoding_hardware_acceleration_description": "Екпериментално; много брже, али ће имати нижи квалитет при истој брзини преноса",
"transcoding_hardware_decoding": "Хардверско декодирање",
- "transcoding_hardware_decoding_setting_description": "Односи се само на НВЕНЦ, QSV и RKMPP. Омогућава убрзање од краја до краја уместо да само убрзава кодирање. Можда неће радити на свим видео снимцима.",
+ "transcoding_hardware_decoding_setting_description": "Омогућава убрзање од краја до краја уместо да само убрзава кодирање. Можда неће радити на свим видео снимцима.",
"transcoding_hevc_codec": "ХЕВЦ кодек",
"transcoding_max_b_frames": "Максимални Б-кадри",
"transcoding_max_b_frames_description": "Више вредности побољшавају ефикасност компресије, али успоравају кодирање. Можда није компатибилно са хардверским убрзањем на старијим уређајима. 0 oneмогућава Б-кадре, док -1 аутоматски поставља ову вредност.",
@@ -297,8 +318,6 @@
"transcoding_threads_description": "Више вредности доводе до бржег кодирања, али остављају мање простора серверу за обраду других задатака док је активан. Ова вредност не би требало да буде већа од броја CPU језгара. Максимизира искоришћеност ако је подешено на 0.",
"transcoding_tone_mapping": "Мапирање (tone-mapping)",
"transcoding_tone_mapping_description": "Покушава да се сачува изглед ХДР видео записа када се конвертују у СДР. Сваки алгоритам прави различите компромисе за боју, детаље и осветљеност. Хабле чува детаље, Мобиус чува боју, а Раеинхард светлину.",
- "transcoding_tone_mapping_npl": "Tone-mapping-NPL",
- "transcoding_tone_mapping_npl_description": "Боје ће бити подешене тако да изгледају нормално за приказ ове осветљености. Контраинтуитивно, ниже вредности повећавају осветљеност видеа и обрнуто, јер компензују осветљеност екрана. 0 аутоматски поставља ову вредност.",
"transcoding_transcode_policy": "Услови транскодирања",
"transcoding_transcode_policy_description": "Услови о томе када видео треба транскодирати. ХДР видео снимци ће увек бити транскодирани (осим ако је транскодирање oneмогућено).",
"transcoding_two_pass_encoding": "Двопролазно кодирање",
@@ -312,6 +331,7 @@
"trash_settings_description": "Управљајте подешавањима смећа",
"untracked_files": "Непраћене датотеке",
"untracked_files_description": "Апликација не прати ове датотеке. one могу настати због неуспешних премештења, због прекинутих отпремања или као преостатак због грешке",
+ "user_cleanup_job": "Чишћење корисника",
"user_delete_delay": "Налог и датотеке {user} биће заказани за трајно брисање за {delay, plural, one {# дан} other {# дана}}.",
"user_delete_delay_settings": "Избриши уз кашњење",
"user_delete_delay_settings_description": "Број дана након уклањања за трајно брисање корисничког налога и датотека. Посао брисања корисника се покреће у поноћ да би се проверили корисници који су спремни за брисање. Промене ове поставке ће бити процењене при следећем извршењу.",
@@ -378,7 +398,6 @@
"archive_or_unarchive_photo": "Архивирајте или поништите архивирање фотографије",
"archive_size": "Величина архиве",
"archive_size_description": "Подеси величину архиве за преузимање (у ГиБ)",
- "archived": "Arhivirano",
"archived_count": "{count, plural, other {Архивирано #}}",
"are_these_the_same_person": "Да ли су ово иста особа?",
"are_you_sure_to_do_this": "Јесте ли сигурни да желите ово да урадите?",
@@ -388,8 +407,8 @@
"asset_filename_is_offline": "Датотека {filename} је ван мреже (offline)",
"asset_has_unassigned_faces": "Датотека има недодељена лица",
"asset_hashing": "Хеширање...",
- "asset_offline": "Датотека одсутна",
- "asset_offline_description": "Ова датотека је ван мреже. Immich не може да приступи локацији своје датотеке. Уверите се да је датотека доступна, а затим поново скенирајте библиотеку.",
+ "asset_offline": "Датотека одсутна (offline)",
+ "asset_offline_description": "Ова вањска датотека се више не налази на диску. Молимо контактирајте свог Имич администратора за помоћ.",
"asset_skipped": "Прескочено",
"asset_skipped_in_trash": "У отпад",
"asset_uploaded": "Отпремљено (Уплоадед)",
@@ -399,11 +418,10 @@
"assets_added_to_album_count": "Додато је {count, plural, one {# датотека} other {# датотека}} у албум",
"assets_added_to_name_count": "Додато {count, plural, one {# датотека} other {# датотекa}} у {hasName, select, true {{name}} other {нови албум}}",
"assets_count": "{count, plural, one {# датотека} few {# датотеке} other {# датотека}}",
- "assets_moved_to_trash": "{count, plural, one {Premeštena # datoteka} few {Premeštene # datoteke} other {Premeštene # datoteka}} u otpad",
"assets_moved_to_trash_count": "Премештено {count, plural, one {# датотека} few {# датотеке} other {# датотека}} у отпад",
"assets_permanently_deleted_count": "Трајно избрисано {count, plural, one {# датотека} few {# датотеке} other {# датотека}}",
"assets_removed_count": "Уклоњено {count, plural, one {# датотека} few {# датотеке} other {# датотека}}",
- "assets_restore_confirmation": "Да ли сте сигурни да желите да вратите све своје датотеке које су у отпаду? Не можете поништити ову радњу!",
+ "assets_restore_confirmation": "Да ли сте сигурни да желите да вратите све своје датотеке које су у отпаду? Не можете поништити ову радњу! Имајте на уму да се ванмрежна средства не могу вратити на овај начин.",
"assets_restored_count": "Враћено {count, plural, one {# датотека} few {# датотеке} other {# датотека}}",
"assets_trashed_count": "Бачено у отпад {count, plural, one {# датотека} few{# датотеке} other {# датотека}}",
"assets_were_part_of_album_count": "{count, plural, one {Датотека је} other {Датотеке су}} већ део албума",
@@ -414,7 +432,8 @@
"birthdate_saved": "Датум рођења успешно сачуван",
"birthdate_set_description": "Датум рођења се користи да би се израчунале године ове особе у добу одређене фотографије.",
"blurred_background": "Замућена позадина",
- "build": "Сагради (Буилд)",
+ "bugs_and_feature_requests": "Грешке и захтеви за функције",
+ "build": "Под-верзија (Build)",
"build_image": "Сагради (Буилд) имаге",
"bulk_delete_duplicates_confirmation": "Да ли сте сигурни да желите групно да избришете {count, plural, one {# дуплиран елеменат} few {# дуплирана елемента} other {# дуплираних елемената}}? Ово ће задржати највеће средство сваке групе и трајно избрисати све друге дупликате. Не можете поништити ову радњу!",
"bulk_keep_duplicates_confirmation": "Да ли сте сигурни да желите да задржите {count, plural, one {1 дуплирану датотеку} few {# дуплиране датотеке} other {# дуплираних датотека}}? Ово ће решити све дуплиране групе без брисања било чега.",
@@ -428,10 +447,6 @@
"cannot_merge_people": "Не може спојити особе",
"cannot_undo_this_action": "Не можете поништити ову радњу!",
"cannot_update_the_description": "Не може ажурирати опис",
- "cant_apply_changes": "Ne može primeniti promene",
- "cant_get_faces": "Ne može preuzeti lica",
- "cant_search_people": "Ne može pretražiti osobe",
- "cant_search_places": "Ne može pretražiti mesta",
"change_date": "Промени датум",
"change_expiration_time": "Промени време истека",
"change_location": "Промени место",
@@ -463,6 +478,7 @@
"confirm": "Потврдите",
"confirm_admin_password": "Потврди Административну Лозинку",
"confirm_delete_shared_link": "Да ли сте сигурни да желите да избришете овај дељени link?",
+ "confirm_keep_this_delete_others": "Свe осталe датотекe у групи ће бити избрисанe осим овe датотекe. Да ли сте сигурни да желите да наставите?",
"confirm_password": "Поново унеси шифру",
"contain": "Обухвати",
"context": "Контекст",
@@ -512,16 +528,19 @@
"delete_key": "Избриши кључ",
"delete_library": "Обриши библиотеку",
"delete_link": "Обриши везу",
+ "delete_others": "Избришите друге",
"delete_shared_link": "Обриши дељену везу",
"delete_tag": "Обриши ознаку (tag)",
"delete_tag_confirmation_prompt": "Да ли стварно желите да избришете ознаку (tag) {tagName}?",
"delete_user": "Обриши корисника",
"deleted_shared_link": "Обришена дељена веза",
+ "deletes_missing_assets": "Брише датотеке које недостају са диска",
"description": "Опис",
"details": "Детаљи",
"direction": "Смер",
"disabled": "oneмогућено",
"disallow_edits": "Забрани измене",
+ "discord": "Дискорд",
"discover": "Откријте",
"dismiss_all_errors": "Одбаците све грешке",
"dismiss_error": "Одбаци грешку",
@@ -530,6 +549,7 @@
"display_original_photos": "Прикажите оригиналне фотографије",
"display_original_photos_setting_description": "Радије приказујете оригиналну фотографију када глеdate материјал него сличице када је оригинално дело компатибилно са webom. Ово може довести до споријег приказа фотографија.",
"do_not_show_again": "Не прикажи поново ову поруку",
+ "documentation": "Документација",
"done": "Урађено",
"download": "Преузми",
"download_include_embedded_motion_videos": "Уграђени видео снимци",
@@ -542,13 +562,6 @@
"duplicates": "Дупликати",
"duplicates_description": "Разрешите сваку групу тако што ћете навести дупликате, ако их има",
"duration": "Трајање",
- "durations": {
- "days": "{days, plural, one {dan} other {{days, number} dana}}",
- "hours": "{hours, plural, one {sat} other {{hours, number} sata}}",
- "minutes": "{minutes, plural, one {minut} other {{minutes, number} minuta}}",
- "months": "{months, plural, one {mesec} other {{months, number} meseci}}",
- "years": "{years, plural, one {godina} other {{years, number} godina}}"
- },
"edit": "Уреди",
"edit_album": "Уреди албум",
"edit_avatar": "Уреди аватар",
@@ -573,8 +586,6 @@
"editor_crop_tool_h2_aspect_ratios": "Пропорције (aspect ratios)",
"editor_crop_tool_h2_rotation": "Ротација",
"email": "Е-пошта",
- "empty": "",
- "empty_album": "Isprazni album",
"empty_trash": "Испразните смеће",
"empty_trash_confirmation": "Да ли сте сигурни да желите да испразните смеће? Ово ће трајно уклонити све датотеке у смећу из Immich-a.\nNe можете поништити ову радњу!",
"enable": "Омогући (Енабле)",
@@ -608,6 +619,7 @@
"failed_to_create_shared_link": "Прављење дељеног linkа није успело",
"failed_to_edit_shared_link": "Уређивање дељеног linkа није успело",
"failed_to_get_people": "Неуспело позивање особа",
+ "failed_to_keep_this_delete_others": "Није успело задржавање овог дела и брисање осталих датотека",
"failed_to_load_asset": "Учитавање датотека није успело",
"failed_to_load_assets": "Није успело учитавање датотека",
"failed_to_load_people": "Учитавање особа није успело",
@@ -635,8 +647,6 @@
"unable_to_change_location": "Није могуће променити локацију",
"unable_to_change_password": "Није могуће променити лозинку",
"unable_to_change_visibility": "Није могуће променити видљивост за {count, plural, one {# особу} other {# особе}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "Није могуће довршити OAuth пријаву",
"unable_to_connect": "Није могуће повезати се",
"unable_to_connect_to_server": "Немогуће је повезати се са сервером",
@@ -661,6 +671,7 @@
"unable_to_get_comments_number": "Није могуће добити број коментара",
"unable_to_get_shared_link": "Преузимање дељене везе није успело",
"unable_to_hide_person": "Није могуће сакрити особу",
+ "unable_to_link_motion_video": "Није могуће повезати (link) видео снимак",
"unable_to_link_oauth_account": "Није могуће повезати OAuth налог",
"unable_to_load_album": "Није могуће учитати албум",
"unable_to_load_asset_activity": "Није могуће учитати активност средстава",
@@ -676,12 +687,10 @@
"unable_to_remove_album_users": "Није могуће уклонити кориснике из албума",
"unable_to_remove_api_key": "Није могуће уклонити АПИ кључ (key)",
"unable_to_remove_assets_from_shared_link": "Није могуће уклонити елементе са дељеног linkа",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "Није могуће уклонити ванмрежне датотеке",
"unable_to_remove_library": "Није могуће уклонити библиотеку",
- "unable_to_remove_offline_files": "Није могуће уклонити ванмрежне датотеке",
"unable_to_remove_partner": "Није могуће уклонити партнера",
"unable_to_remove_reaction": "Није могуће уклонити реакцију",
- "unable_to_remove_user": "",
"unable_to_repair_items": "Није могуће поправити ставке",
"unable_to_reset_password": "Није могуће ресетовати лозинку",
"unable_to_resolve_duplicate": "Није могуће разрешити дупликат",
@@ -701,6 +710,7 @@
"unable_to_submit_job": "Није могуће предати задатак",
"unable_to_trash_asset": "Није могуће избацити материјал у отпад",
"unable_to_unlink_account": "Није могуће раскинути профил",
+ "unable_to_unlink_motion_video": "Није могуће прекинути везу са видео снимком",
"unable_to_update_album_cover": "Није могуће ажурирати насловницу албума",
"unable_to_update_album_info": "Није могуће ажурирати информације о албуму",
"unable_to_update_library": "Није могуће ажурирати библиотеку",
@@ -710,10 +720,6 @@
"unable_to_update_user": "Није могуће ажурирати корисника",
"unable_to_upload_file": "Није могуће отпремити датотеку"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "EXIF",
"exit_slideshow": "Изађи из пројекције слајдова",
"expand_all": "Прошири све",
@@ -728,33 +734,28 @@
"external": "Спољашњи",
"external_libraries": "Спољашње Библиотеке",
"face_unassigned": "Нераспоређени",
- "failed_to_get_people": "Neuspešno isčitavanje osoba",
+ "failed_to_load_assets": "Учитавање средстава није успело",
"favorite": "Фаворит",
"favorite_or_unfavorite_photo": "Омиљена или неомиљена фотографија",
"favorites": "Фаворити",
- "feature": "",
"feature_photo_updated": "Главна фотографија је ажурирана",
- "featurecollection": "",
"features": "Функције",
"features_setting_description": "Управљајте функцијама апликације",
"file_name": "Назив документа",
"file_name_or_extension": "Име датотеке или екстензија",
"filename": "Име датотеке",
- "files": "",
"filetype": "Врста документа",
"filter_people": "Филтрирање особа",
"find_them_fast": "Брзо их пронађите по имену помоћу претраге",
"fix_incorrect_match": "Исправите нетачно подударање",
"folders": "Фасцикле (Folders)",
"folders_feature_description": "Прегледавање приказа фасцикле за фотографије и видео записе у систему датотека",
- "force_re-scan_library_files": "Принудно поново скенирајте све датотеке библиотеке",
"forward": "Напред",
"general": "Генерално",
"get_help": "Нађи помоћ",
"getting_started": "Почињем",
"go_back": "Врати се",
"go_to_search": "Иди на претрагу",
- "go_to_share_page": "Иди на страницу за дељење",
"group_albums_by": "Групни албуми по...",
"group_no": "Без груписања",
"group_owner": "Групирајте по власнику",
@@ -780,10 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Image}} снимљено у {city}, {country} са {person1} и {person2} {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Image}} снимљено у {city}, {country} са {person1}, {person2}, и {person3} {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Image}} снимљено у {city}, {country} са {person1}, {person2}, и {additionalCount, number} других {date}",
- "image_alt_text_people": "{count, plural, =1 {са {person1}} =2 {са {person1} и {person2}} =3 {са {person1}, {person2}, и {person3}} other {са {person1}, {person2}, и {others, number} остали}}",
- "image_alt_text_place": "у {city}, {country}",
- "image_taken": "{isVideo, select, true {Видео запис снимљен} other {Фотографија усликана}}",
- "img": "",
"immich_logo": "Лого Immich-a",
"immich_web_interface": "Web интерфејс Immich-a",
"import_from_json": "Увези из ЈСОН-а",
@@ -804,10 +801,11 @@
"invite_people": "Позовите људе",
"invite_to_album": "Позови на албум",
"items_count": "{count, plural, one {# датотека} other {# датотека}}",
- "job_settings_description": "",
"jobs": "Послови",
"keep": "Задржи",
"keep_all": "Задржи све",
+ "keep_this_delete_others": "Задржи ово, избриши друге",
+ "kept_this_deleted_others": "Задржана је ова датотека и избрисано {count, plural, one {# датотека} other {# датотека}}",
"keyboard_shortcuts": "Пречице на тастатури",
"language": "Језик",
"language_setting_description": "Изаберите жељени језик",
@@ -819,31 +817,6 @@
"level": "Ниво",
"library": "Библиотека",
"library_options": "Опције библиотеке",
- "license_account_info": "Ваш налог је лиценциран",
- "license_activated_subtitle": "Хвала вам што подржавате Имич (Immich) и софтвер отвореног кода",
- "license_activated_title": "Ваша лиценца је успешно активирана",
- "license_button_activate": "Активираj",
- "license_button_buy": "Купи",
- "license_button_buy_license": "Купи лиценцу",
- "license_button_select": "Изаберите",
- "license_failed_activation": "Активација лиценце није успела. Проверите своју е-пошту да бисте пронашли исправан кључ лиценце!",
- "license_individual_description_1": "1 лиценца по кориснику на било ком серверу",
- "license_individual_title": "Индивидуална лиценца",
- "license_info_licensed": "Лиценцирано",
- "license_info_unlicensed": "Без лиценце",
- "license_input_suggestion": "Имате лиценцу? Унесите кључ испод",
- "license_license_subtitle": "Купите лиценцу за подршку Имич-a",
- "license_license_title": "ЛИЦЕНЦA",
- "license_lifetime_description": "Доживотна лиценца",
- "license_per_server": "По серверу",
- "license_per_user": "По кориснику",
- "license_server_description_1": "1 лиценца по серверу",
- "license_server_description_2": "Лиценца за све кориснике на серверу",
- "license_server_title": "Сервер Лиценцa",
- "license_trial_info_1": "Користите нелиценцирану верзију Имич-а",
- "license_trial_info_2": "Користили сте Имич отприлике",
- "license_trial_info_3": "{accountAge, plural, one {# дан} other {# данa}}",
- "license_trial_info_4": "Молимо вас да размислите о куповини лиценце за подршку континуираном развоју услуге",
"light": "Светло",
"like_deleted": "Лајкуј избрисано",
"link_motion_video": "Направи везу за видео запис",
@@ -865,6 +838,7 @@
"look": "Погледај",
"loop_videos": "Понављајте видео записе",
"loop_videos_description": "Омогућите за аутоматско понављање видео записа у прегледнику детаља.",
+ "main_branch_warning": "Употребљавате развојну верзију; строго препоручујемо употребу издате верзије!",
"make": "Креирај",
"manage_shared_links": "Управљајте дељеним везама",
"manage_sharing_with_partners": "Управљајте дељењем са партнерима",
@@ -934,6 +908,7 @@
"notifications": "Нотификације",
"notifications_setting_description": "Управљајте обавештењима",
"oauth": "OAuth",
+ "official_immich_resources": "Званични Имич ресурси",
"offline": "Одсутан (Offline)",
"offline_paths": "Недоступне (Offline) путање",
"offline_paths_description": "Ови резултати могу бити последица ручног брисања датотека које нису део спољне библиотеке.",
@@ -946,7 +921,6 @@
"onboarding_welcome_user": "Добродошли, {user}",
"online": "Доступан (Онлине)",
"only_favorites": "Само фаворити",
- "only_refreshes_modified_files": "Освежава само измењене датотеке",
"open_in_map_view": "Отвори у приказу мапе",
"open_in_openstreetmap": "Отворите у ОпенСтреетМап-у",
"open_the_search_filters": "Отворите филтере за претрагу",
@@ -984,14 +958,12 @@
"people_edits_count": "Измењено {count, plural, one {# особа} other {# особе}}",
"people_feature_description": "Прегледавање фотографија и видео снимака груписаних по особама",
"people_sidebar_description": "Прикажите везу до особа на бочној траци",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Упозорење за трајно брисање",
"permanent_deletion_warning_setting_description": "Прикажи упозорење када трајно бришете датотеке",
"permanently_delete": "Трајно избрисати",
"permanently_delete_assets_count": "Трајно избриши {count, plural, one {датотеку} other {датотеке}}",
"permanently_delete_assets_prompt": "Да ли сте сигурни да желите да трајно избришете {count, plural, one {ову датотеку?} other {ове # датотеке?}}Ово ће их такође уклонити {count, plural, one {из њиховог} other {из њихових}} албума.",
"permanently_deleted_asset": "Трајно избрисана датотека",
- "permanently_deleted_assets": "Trajno izbrisano {count, plural, one {# datoteka} other {# datoteke}}",
"permanently_deleted_assets_count": "Трајно избрисано {count, plural, one {# датотека} other {# датотеке}}",
"person": "Особа",
"person_hidden": "{name}{hidden, select, true { (скривено)} other {}}",
@@ -1007,7 +979,6 @@
"play_memories": "Покрени сећања",
"play_motion_photo": "Покрени покретну фотографију",
"play_or_pause_video": "Покрени или паузирај видео запис",
- "point": "",
"port": "порт",
"preset": "Унапред подешено",
"preview": "Преглед",
@@ -1052,12 +1023,10 @@
"purchase_server_description_2": "Значка подршке",
"purchase_server_title": "Сервер",
"purchase_settings_server_activated": "Кључем производа сервера управља администратор",
- "range": "",
"rating": "Оцена звездица",
"rating_clear": "Обриши оцену",
"rating_count": "{count, plural, one {# звезда} other {# звезде}}",
"rating_description": "Прикажите EXIF оцену у инфо панелу",
- "raw": "",
"reaction_options": "Опције реакције",
"read_changelog": "Прочитајте дневник промена",
"reassign": "Поново додај",
@@ -1065,14 +1034,17 @@
"reassigned_assets_to_new_person": "Поново додељено {count, plural, one {# датотека} other {# датотеке}} новој особи",
"reassing_hint": "Доделите изабрана средства постојећој особи",
"recent": "Скорашњи",
+ "recent-albums": "Недавни албуми",
"recent_searches": "Скорашње претраге",
"refresh": "Освежи",
"refresh_encoded_videos": "Освежите кодиране (енцодед) видео записе",
+ "refresh_faces": "Освежи лица",
"refresh_metadata": "Освежите метаподатке",
"refresh_thumbnails": "Освежите сличице",
"refreshed": "Освежено",
- "refreshes_every_file": "Освежава сваку датотеку",
+ "refreshes_every_file": "Поново чита све постојеће и нове датотеке",
"refreshing_encoded_video": "Освежавање кодираног (енцодед) видеа",
+ "refreshing_faces": "Освежавањe лица",
"refreshing_metadata": "Освежавање мета-података",
"regenerating_thumbnails": "Обнављање сличица",
"remove": "Уклони",
@@ -1080,10 +1052,11 @@
"remove_assets_shared_link_confirmation": "Да ли сте сигурни да желите да уклоните {count, plural, one {# датотеку} other {# датотеке}} са ове дељене везе?",
"remove_assets_title": "Уклонити датотеке?",
"remove_custom_date_range": "Уклоните прилагођени период",
+ "remove_deleted_assets": "Уклоните ванмрежне (offline) датотеке",
"remove_from_album": "Обриши из албума",
"remove_from_favorites": "Уклони из фаворита",
"remove_from_shared_link": "Уклоните са дељене везе",
- "remove_offline_files": "Уклоните ванмрежне (offline) датотеке",
+ "remove_url": "Уклони URL",
"remove_user": "Уклони корисника",
"removed_api_key": "Уклоњен АПИ кључ (key): {name}",
"removed_from_archive": "Уклоњено из архиве",
@@ -1100,7 +1073,6 @@
"reset": "Ресетовати",
"reset_password": "Ресетовати лозинку",
"reset_people_visibility": "Ресетујте видљивост особа",
- "reset_settings_to_default": "",
"reset_to_default": "Ресетујте на подразумеване вредности",
"resolve_duplicates": "Реши дупликате",
"resolved_all_duplicates": "Сви дупликати су разрешени",
@@ -1120,8 +1092,7 @@
"saved_settings": "Сачувана подешавања",
"say_something": "Реци нешто",
"scan_all_libraries": "Скенирај све библиотеке",
- "scan_all_library_files": "Поново скенирајте све датотеке библиотеке",
- "scan_new_library_files": "Скенирајте нове датотеке библиотеке",
+ "scan_library": "Скенирај",
"scan_settings": "Подешавања скенирања",
"scanning_for_album": "Скенирање албума...",
"search": "Претрага",
@@ -1139,6 +1110,7 @@
"search_options": "Опције претраге",
"search_people": "Претражи особе",
"search_places": "Претражи места",
+ "search_settings": "Претрага подешавања",
"search_state": "Тражи регион...",
"search_tags": "Претражи ознаке (tags)...",
"search_timezone": "Претражи временску зону...",
@@ -1163,7 +1135,6 @@
"selected_count": "{count, plural, other {# изабрано}}",
"send_message": "Пошаљи поруку",
"send_welcome_email": "Пошаљите е-пошту добродошлице",
- "server": "Сервер",
"server_offline": "Сервер ван мреже (offline)",
"server_online": "Сервер нa мрежи (online)",
"server_stats": "Статистика сервера",
@@ -1206,6 +1177,7 @@
"show_person_options": "Прикажи опције особе",
"show_progress_bar": "Прикажи траку напретка",
"show_search_options": "Прикажи опције претраге",
+ "show_slideshow_transition": "Прикажи прелаз пројекције слајдова",
"show_supporter_badge": "Значка подршке",
"show_supporter_badge_description": "Покажите значку подршке",
"shuffle": "Мешање",
@@ -1247,13 +1219,16 @@
"submit": "Достави",
"suggestions": "Сугестије",
"sunrise_on_the_beach": "Излазак сунца на плажи",
+ "support": "Подршка",
+ "support_and_feedback": "Подршка и повратне информације",
+ "support_third_party_description": "Ваша иммицх инсталација је спакована од стране треће стране. Проблеми са којима се суочавате могу бити узроковани тим пакетом, па вас молимо да им прво поставите проблеме користећи доње везе.",
"swap_merge_direction": "Замените правац спајања",
"sync": "Синхронизација",
"tag": "Ознака (tag)",
"tag_assets": "Означите датотеке",
"tag_created": "Направљена ознака (tag): {tag}",
"tag_feature_description": "Прегледавање фотографија и видео снимака груписаних по логичним темама ознака",
- "tag_not_found_question": "Не можете да пронађете ознаку (tag)? Направите једну овде",
+ "tag_not_found_question": "Не можете да пронађете ознаку (tag)? Направите нову ознаку",
"tag_updated": "Ажурирана ознака (tag): {tag}",
"tagged_assets": "Означено (tagged) {count, plural, one {# датотека} other {# датотеке}}",
"tags": "Ознаке (tags)",
@@ -1262,18 +1237,19 @@
"theme_selection": "Избор теме",
"theme_selection_description": "Аутоматски поставите тему на светлу или тамну на основу системских преференција вашег претраживача",
"they_will_be_merged_together": "Они ће бити спојени заједно",
+ "third_party_resources": "Ресурси трећих страна",
"time_based_memories": "Сећања заснована на времену",
+ "timeline": "Временска линија",
"timezone": "Временска зона",
"to_archive": "Архивирај",
"to_change_password": "Промени лозинку",
"to_favorite": "Постави као фаворит",
"to_login": "Пријава",
"to_parent": "Врати се назад",
- "to_root": "На почетак",
"to_trash": "Смеће",
"toggle_settings": "Намести подешавања",
"toggle_theme": "Намести тамну тему",
- "toggle_visibility": "Namesti vidljivost",
+ "total": "Укупно",
"total_usage": "Укупна употреба",
"trash": "Отпад",
"trash_all": "Баци све у отпад",
@@ -1283,14 +1259,13 @@
"trashed_items_will_be_permanently_deleted_after": "Датотеке у отпаду ће бити трајно избрисане након {days, plural, one {# дан} few {# дана} other {# дана}}.",
"type": "Врста",
"unarchive": "Врати из архиве",
- "unarchived": "Vraćeno iz arhive",
"unarchived_count": "{count, plural, other {Nearhivirano#}}",
"unfavorite": "Избаци из омиљених (унфаворите)",
"unhide_person": "Откриј особу",
"unknown": "Непознат",
- "unknown_album": "Nepoznat Album",
"unknown_year": "Непозната Година",
"unlimited": "Неограничено",
+ "unlink_motion_video": "Прекините везу са видео снимком",
"unlink_oauth": "Прекини везу са Oauth-om",
"unlinked_oauth_account": "Опозвана веза OAuth налога",
"unnamed_album": "Неименовани албум",
@@ -1319,13 +1294,13 @@
"use_custom_date_range": "Уместо тога користите прилагођени период",
"user": "Корисник",
"user_id": "ИД корисника",
- "user_license_settings": "Лиценца",
- "user_license_settings_description": "Управљајте својом лиценцом",
"user_liked": "{user} је лајковао {type, select, photo {ову фотографију} video {овај видео запис} asset {ову датотеку} other {ово}}",
"user_purchase_settings": "Куповина",
"user_purchase_settings_description": "Управљајте куповином",
"user_role_set": "Постави {user} као {role}",
"user_usage_detail": "Детаљи коришћења корисника",
+ "user_usage_stats": "Статистика коришћења налога",
+ "user_usage_stats_description": "Погледајте статистику коришћења налога",
"username": "Корисничко име",
"users": "Корисници",
"utilities": "Алати",
@@ -1333,7 +1308,9 @@
"variables": "Променљиве (вариаблес)",
"version": "Верзија",
"version_announcement_closing": "Твој пријатељ, Алекс",
- "version_announcement_message": "Здраво пријатељу, постоји нова верзија апликације, молимо вас да одвојите време да посетите напомене о издању и уверите се у своје docker-compose.yml, и .env подешавање је ажурирано како би се спречиле било какве погрешне конфигурације, посебно ако користите WatchTower или било који механизам који аутоматски управља ажурирањем ваше апликације.",
+ "version_announcement_message": "Здраво пријатељу, постоји нова верзија апликације, молимо вас да одвојите време да посетите напомене о издању и уверите се да је сервер ажуриран како би се спречиле било какве погрешне конфигурације, посебно ако користите WatchTower или било који механизам који аутоматски управља ажурирањем ваше апликације.",
+ "version_history": "Историја верзија",
+ "version_history_item": "Инсталирано {version} on {date}",
"video": "Видео запис",
"video_hover_setting": "Пусти сличицу видеа када лебди",
"video_hover_setting_description": "Пусти сличицу видеа када миш пређе преко ставке. Чак и када је oneмогућена, репродукција се може покренути преласком миша преко икone за репродукцију.",
@@ -1345,16 +1322,16 @@
"view_all_users": "Прикажи све кориснике",
"view_in_timeline": "Прикажи у временској линији",
"view_links": "Прикажи везе",
+ "view_name": "Погледати",
"view_next_asset": "Погледајте следећу датотеку",
"view_previous_asset": "Погледај претходну датотеку",
"view_stack": "Прикажи гомилу",
- "viewer": "Preglednik (viewer)",
"visibility_changed": "Видљивост је промењена за {count, plural, one {# особу} other {# особе}}",
"waiting": "Чекам",
"warning": "Упозорење",
"week": "Недеља",
"welcome": "Добродошли",
- "welcome_to_immich": "Добродошли у immich",
+ "welcome_to_immich": "Добродошли у Имич (Immich)",
"year": "Година",
"years_ago": "пре {years, plural, one {# године} other {# година}}",
"yes": "Да",
diff --git a/web/src/lib/i18n/sr_Latn.json b/i18n/sr_Latn.json
similarity index 91%
rename from web/src/lib/i18n/sr_Latn.json
rename to i18n/sr_Latn.json
index ea40525a81..09baf5ff9d 100644
--- a/web/src/lib/i18n/sr_Latn.json
+++ b/i18n/sr_Latn.json
@@ -1,5 +1,5 @@
{
- "about": "O aplikaciji",
+ "about": "O Aplikaciji",
"account": "Profil",
"account_settings": "Podešavanja za Profil",
"acknowledge": "Potvrdi",
@@ -23,16 +23,23 @@
"add_to": "Dodaj u...",
"add_to_album": "Dodaj u album",
"add_to_shared_album": "Dodaj u deljen album",
+ "add_url": "Dodajte URL",
"added_to_archive": "Dodato u arhivu",
"added_to_favorites": "Dodato u favorite",
"added_to_favorites_count": "Dodato {count, number} u favorite",
"admin": {
"add_exclusion_pattern_description": "Dodajte obrasce isključenja. Korištenje *, ** i ? je podržano. Da biste ignorisali sve datoteke u bilo kom direktorijumu pod nazivom „Rav“, koristite „**/Rav/**“. Da biste ignorisali sve datoteke koje se završavaju na „.tif“, koristite „**/*.tif“. Da biste ignorisali apsolutnu putanju, koristite „/path/to/ignore/**“.",
+ "asset_offline_description": "Ovo eksterno bibliotečko sredstvo se više ne nalazi na disku i premešteno je u smeće. Ako je datoteka premeštena unutar biblioteke, proverite svoju vremensku liniju za novo odgovarajuće sredstvo. Da biste vratili ovo sredstvo, uverite se da Immich može da pristupi dole navedenoj putanji datoteke i skenirajte biblioteku.",
"authentication_settings": "Podešavanja za autentifikaciju",
"authentication_settings_description": "Upravljajte lozinkom, OAuth-om i drugim podešavanjima autentifikacije",
"authentication_settings_disable_all": "Da li ste sigurni da želite da onemogućite sve metode prijavljivanja? Prijava će biti potpuno onemogućena.",
"authentication_settings_reenable": "Da biste ponovo omogućili, koristite komandu servera.",
"background_task_job": "Pozadinski zadaci",
+ "backup_database": "Rezervna kopija baze podataka",
+ "backup_database_enable_description": "Omogućite rezervne kopije baze podataka",
+ "backup_keep_last_amount": "Količina prethodnih rezervnih kopija za čuvanje",
+ "backup_settings": "Podešavanja rezervne kopije",
+ "backup_settings_description": "Upravljajte postavkama rezervne kopije baze podataka",
"check_all": "Proveri sve",
"cleared_jobs": "Očišćeni poslovi za: {job}",
"config_set_by_file": "Konfiguraciju trenutno postavlja konfiguracioni fajl",
@@ -41,35 +48,40 @@
"confirm_email_below": "Da biste potvrdili, unesite \"{email}\" ispod",
"confirm_reprocess_all_faces": "Da li ste sigurni da želite da ponovo obradite sva lica? Ovo će takođe obrisati imenovane osobe.",
"confirm_user_password_reset": "Da li ste sigurni da želite da resetujete lozinku korisnika {user}?",
- "crontab_guru": "Guru servisnih zadataka",
+ "create_job": "Kreirajte posao",
+ "cron_expression": "Cron izraz (expression)",
+ "cron_expression_description": "Podesite interval skeniranja koristeći cron format. Za više informacija pogledajte npr. Crontab Guru",
+ "cron_expression_presets": "Predefinisana podešavanja Cron izraza (expression)",
"disable_login": "Onemogući prijavu",
- "disabled": "",
"duplicate_detection_job_description": "Pokrenite mašinsko učenje na sredstvima da biste otkrili slične slike. Oslanja se na pametnu pretragu",
"exclusion_pattern_description": "Obrasci izuzimanja vam omogućavaju da ignorišete datoteke i fascikle kada skenirate biblioteku. Ovo je korisno ako imate fascikle koje sadrže datoteke koje ne želite da uvezete, kao što su RAW datoteke.",
"external_library_created_at": "Eksterna biblioteka (napravljena {date})",
"external_library_management": "Upravljanje eksternim bibliotekama",
"face_detection": "Detekcija lica",
- "face_detection_description": "Otkrivanje lica u datotekama pomoću mašinskog učenja. Za video snimke se uzima u obzir samo sličica. „Sve“ (ponovno) obrađuje sve datoteke. „Nedostaju“ sredstva u nizu koja još nisu obrađena. Otkrivena lica će biti stavljena u red za prepoznavanje lica nakon što se prepoznavanje lica završi, grupišući ih u postojeće ili nove ljude.",
- "facial_recognition_job_description": "Grupa je detektovala lica i dodala ih postojecim ljudima. Ovaj korak se pokreće nakon što je prepoznavanje lica završeno. „Sve“ (ponovno) grupiše sva lica. „Nedostaju“ lica u redovima kojima nije dodeljena osoba.",
+ "face_detection_description": "Otkrijte lica u datotekama pomoću mašinskog učenja. Za video snimke se uzima u obzir samo sličica. „Osveži“ (ponovno) obrađuje sve datoteke. „Resetovanje“ dodatno briše sve trenutne podatke o licu. „Nedostaju“ datoteke u redu koje još nisu obrađene. Otkrivena lica će biti stavljena u red za prepoznavanje lica nakon što se prepoznavanje lica završi, grupišući ih u postojeće ili nove osobe.",
+ "facial_recognition_job_description": "Grupa je detektovala lica i dodala ih postojećim osobama. Ovaj korak se pokreće nakon što je prepoznavanje lica završeno. „Resetuj“ (ponovno) grupiše sva lica. „Nedostaju“ lica u redovima kojima nije dodeljena osoba.",
"failed_job_command": "Komanda {command} nije uspela za posao: {job}",
"force_delete_user_warning": "UPOZORENJE: Ovo će odmah ukloniti korisnika i sve datoteke. Ovo se ne može opozvati i datoteke se ne mogu oporaviti.",
"forcing_refresh_library_files": "Prinudno osvežavanje svih datoteka biblioteke",
+ "image_format": "Format",
"image_format_description": "WebP proizvodi manje datoteke od JPEG, ali se sporije kodira.",
"image_prefer_embedded_preview": "Preferirajte ugrađeni pregled",
"image_prefer_embedded_preview_setting_description": "Koristite ugrađene preglede u RAW fotografije kao ulaz za obradu slike kada su dostupne. Ovo može da proizvede preciznije boje za neke slike, ali kvalitet pregleda zavisi od kamere i slika može imati više nepravilnosti kompresije.",
"image_prefer_wide_gamut": "Preferirajte širok spektar",
"image_prefer_wide_gamut_setting_description": "Koristite Display P3 za sličice. Ovo bolje čuva živopisnost slika sa širokim prostorima boja, ali slike mogu izgledati drugačije na starim uređajima sa starom verzijom pretraživača. sRGB slike se čuvaju kao sRGB da bi se izbegle promene boja.",
- "image_preview_format": "Pregled formata",
- "image_preview_resolution": "Pregled rezolucije",
- "image_preview_resolution_description": "Koristi se za gledanje jedne fotografije i za mašinsko učenje. Veće rezolucije mogu da sačuvaju više detalja, ali im je potrebno više vremena za kodiranje, imaju veće veličine datoteka i mogu da smanje brzinu aplikacije.",
+ "image_preview_description": "Slika srednje veličine sa uklonjenim metapodacima, koja se koristi prilikom pregleda jednog elementa i za mašinsko učenje",
+ "image_preview_quality_description": "Kvalitet pregleda od 1-100. Više je bolje, ali proizvodi veće datoteke i može smanjiti odziv aplikacije. Postavljanje niske vrednosti može uticati na kvalitet mašinskog učenja.",
+ "image_preview_title": "Podešavanja pregleda",
"image_quality": "Kvalitet",
- "image_quality_description": "Kvalitet slike od 1-100. Više je bolje za kvalitet, ali proizvodi veće datoteke, ova opcija utiče na pregled i sličice.",
+ "image_resolution": "Rezolucija",
+ "image_resolution_description": "Veće rezolucije mogu da sačuvaju više detalja, ali im je potrebno više vremena za kodiranje, imaju veće veličine datoteka i mogu da smanje odziv aplikacije.",
"image_settings": "Podešavanja slike",
"image_settings_description": "Upravljajte kvalitetom i rezolucijom generisanih slika",
- "image_thumbnail_format": "Format sličice",
- "image_thumbnail_resolution": "Rezolucija sličice",
- "image_thumbnail_resolution_description": "Koristi se prilikom pregleda grupa fotografija (glavna vremenska linija, prikaz albuma, itd.). Veće rezolucije mogu da sačuvaju više detalja, ali im je potrebno više vremena za kodiranje, imaju veće veličine datoteka i mogu da smanje brzinu aplikacije.",
+ "image_thumbnail_description": "Mala sličica sa ogoljenim metapodacima, koja se koristi prilikom pregleda grupa fotografija kao što je glavna vremenska linija",
+ "image_thumbnail_quality_description": "Kvalitet sličica od 1-100. Više je bolje, ali proizvodi veće datoteke i može smanjiti odziv aplikacije.",
+ "image_thumbnail_title": "Podešavanja sličica",
"job_concurrency": "{job} paralelnost",
+ "job_created": "Posao kreiran",
"job_not_concurrency_safe": "Ovaj posao nije bezbedan da bude paralelno aktivan.",
"job_settings": "Podešavanja posla",
"job_settings_description": "Upravljajte paralelnošću poslova",
@@ -77,9 +89,6 @@
"jobs_delayed": "{jobCount, plural, one {# odloženi} few {# odložena} other {# odloženih}}",
"jobs_failed": "{jobCount, plural, one {# neuspešni} few {# neuspešna} other {# neuspešnih}}",
"library_created": "Napravljena biblioteka: {library}",
- "library_cron_expression": "Sistemski posao",
- "library_cron_expression_description": "Podesite interval skeniranja koristeći cron format. Za više informacija pogledajte npr. Crontab Guru",
- "library_cron_expression_presets": "Unapred podešene postavke sistemskog posla",
"library_deleted": "Biblioteka je izbrisana",
"library_import_path_description": "Odredite fasciklu za uvoz. Ova fascikla, uključujući podfascikle, biće skenirana za slike i video zapise.",
"library_scanning": "Periodično skeniranje",
@@ -122,7 +131,7 @@
"machine_learning_smart_search_description": "Potražite slike semantički koristeći ugrađeni CLIP",
"machine_learning_smart_search_enabled": "Omogućite pametnu pretragu",
"machine_learning_smart_search_enabled_description": "Ako je onemogućeno, slike neće biti kodirane za pametnu pretragu.",
- "machine_learning_url_description": "URL servera za mašinsko učenje",
+ "machine_learning_url_description": "URL servera za mašinsko učenje. Ako je obezbeđeno više URL-ova, svaki server će biti pokušan redom, jedan po jedan, dok jedan ne odgovori uspešno, po redosledu od prvog do poslednjeg.",
"manage_concurrency": "Upravljanje paralelnošću",
"manage_log_settings": "Upravljajte podešavanjima evidencije",
"map_dark_style": "Tamni stil",
@@ -152,7 +161,7 @@
"note_cannot_be_changed_later": "NAPOMENA: Ovo se kasnije ne može promeniti!",
"note_unlimited_quota": "Napomena: Unesite 0 za neograničenu kvotu",
"notification_email_from_address": "Sa adrese",
- "notification_email_from_address_description": "Adresa e-pošte pošiljaoca, na primer: \"Immich foto server {label} je oznaka za skladištenje korisnika",
"system_settings": "Podešavanja sistema",
+ "tag_cleanup_job": "Čišćenje oznaka (tags)",
+ "template_email_available_tags": "Možete da koristite sledeće promenljive u svom šablonu: {tags}",
+ "template_email_if_empty": "Ako je šablon prazan, koristiće se podrazumevana adresa e-pošte.",
+ "template_email_invite_album": "Šablon za poziv u album",
+ "template_email_preview": "Pregled",
+ "template_email_settings": "Šabloni e-pošte",
+ "template_email_settings_description": "Upravljajte prilagođenim šablonima obaveštenja putem e-pošte",
+ "template_email_update_album": "Ažurirajte šablon albuma",
+ "template_email_welcome": "Šablon e-pošte dobrodošlice",
+ "template_settings": "Šabloni obaveštenja",
+ "template_settings_description": "Upravljajte prilagođenim šablonima za obaveštenja.",
"theme_custom_css_settings": "Prilagođeni CSS",
"theme_custom_css_settings_description": "Kaskadni listovi stilova (CSS) omogućavaju prilagođavanje dizajna Immich-a.",
"theme_settings": "Podešavanje tema",
@@ -245,7 +267,6 @@
"these_files_matched_by_checksum": "Ovim datotekama se podudaraju njihovi kontrolni-zbirovi",
"thumbnail_generation_job": "Generišite sličice",
"thumbnail_generation_job_description": "Generišite velike, male i zamućene sličice za svako sredstvo, kao i sličice za svaku osobu",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "API za ubrzanje",
"transcoding_acceleration_api_description": "API koji će komunicirati sa vašim uređajem da bi ubrzao transkodiranje. Ovo podešavanje je 'najbolji napor': vraća se na softversko transkodiranje u slučaju neuspeha. VP9 može ili ne mora da radi u zavisnosti od vašeg hardvera.",
"transcoding_acceleration_nvenc": "NVENC (zahteva NVIDIA GPU)",
@@ -271,7 +292,7 @@
"transcoding_hardware_acceleration": "Hardversko ubrzanje",
"transcoding_hardware_acceleration_description": "Ekperimentalno; mnogo brže, ali će imati niži kvalitet pri istoj brzini prenosa",
"transcoding_hardware_decoding": "Hardversko dekodiranje",
- "transcoding_hardware_decoding_setting_description": "Odnosi se samo na NVENC, QSV i RKMPP. Omogućava ubrzanje od kraja do kraja umesto da samo ubrzava kodiranje. Možda neće raditi na svim video snimcima.",
+ "transcoding_hardware_decoding_setting_description": "Omogućava ubrzanje od kraja do kraja umesto da samo ubrzava kodiranje. Možda neće raditi na svim video snimcima.",
"transcoding_hevc_codec": "HEVC kodek",
"transcoding_max_b_frames": "Maksimalni B-kadri",
"transcoding_max_b_frames_description": "Više vrednosti poboljšavaju efikasnost kompresije, ali usporavaju kodiranje. Možda nije kompatibilno sa hardverskim ubrzanjem na starijim uređajima. 0 onemogućava B-kadre, dok -1 automatski postavlja ovu vrednost.",
@@ -297,8 +318,6 @@
"transcoding_threads_description": "Više vrednosti dovode do bržeg kodiranja, ali ostavljaju manje prostora serveru za obradu drugih zadataka dok je aktivan. Ova vrednost ne bi trebalo da bude veća od broja CPU jezgara. Maksimizira iskorišćenost ako je podešeno na 0.",
"transcoding_tone_mapping": "Mapiranje (tone-mapping)",
"transcoding_tone_mapping_description": "Pokušava da se sačuva izgled HDR video zapisa kada se konvertuju u SDR. Svaki algoritam pravi različite kompromise za boju, detalje i osvetljenost. Hable čuva detalje, Mobius čuva boju, a Raeinhard svetlinu.",
- "transcoding_tone_mapping_npl": "Tone-mapping-NPL",
- "transcoding_tone_mapping_npl_description": "Boje će biti podešene tako da izgledaju normalno za prikaz ove osvetljenosti. Kontraintuitivno, niže vrednosti povećavaju osvetljenost videa i obrnuto, jer kompenzuju osvetljenost ekrana. 0 automatski postavlja ovu vrednost.",
"transcoding_transcode_policy": "Uslovi transkodiranja",
"transcoding_transcode_policy_description": "Uslovi o tome kada video treba transkodirati. HDR video snimci će uvek biti transkodirani (osim ako je transkodiranje onemogućeno).",
"transcoding_two_pass_encoding": "Dvoprolazno kodiranje",
@@ -312,6 +331,7 @@
"trash_settings_description": "Upravljajte podešavanjima smeća",
"untracked_files": "Nepraćene datoteke",
"untracked_files_description": "Aplikacija ne prati ove datoteke. One mogu nastati zbog neuspešnih premeštenja, zbog prekinutih otpremanja ili kao preostatak zbog greške",
+ "user_cleanup_job": "Čišćenje korisnika",
"user_delete_delay": "Nalog i datoteke {user} biće zakazani za trajno brisanje za {delay, plural, one {# dan} other {# dana}}.",
"user_delete_delay_settings": "Izbriši uz kašnjenje",
"user_delete_delay_settings_description": "Broj dana nakon uklanjanja za trajno brisanje korisničkog naloga i datoteka. Posao brisanja korisnika se pokreće u ponoć da bi se proverili korisnici koji su spremni za brisanje. Promene ove postavke će biti procenjene pri sledećem izvršenju.",
@@ -378,7 +398,6 @@
"archive_or_unarchive_photo": "Arhivirajte ili poništite arhiviranje fotografije",
"archive_size": "Veličina arhive",
"archive_size_description": "Podesi veličinu arhive za preuzimanje (u GiB)",
- "archived": "Arhivirano",
"archived_count": "{count, plural, other {Arhivirano #}}",
"are_these_the_same_person": "Da li su ovo ista osoba?",
"are_you_sure_to_do_this": "Jeste li sigurni da želite ovo da uradite?",
@@ -389,7 +408,7 @@
"asset_has_unassigned_faces": "Datoteka ima nedodeljena lica",
"asset_hashing": "Heširanje...",
"asset_offline": "Datoteka odsutna",
- "asset_offline_description": "Ova datoteka je van mreže. Immich ne može da pristupi lokaciji svoje datoteke. Uverite se da je datoteka dostupna, a zatim ponovo skenirajte biblioteku.",
+ "asset_offline_description": "Ova vanjska datoteka se više ne nalazi na disku. Molimo kontaktirajte svog Immich administratora za pomoć.",
"asset_skipped": "Preskočeno",
"asset_skipped_in_trash": "U otpad",
"asset_uploaded": "Otpremljeno (Uploaded)",
@@ -399,11 +418,10 @@
"assets_added_to_album_count": "Dodato je {count, plural, one {# datoteka} other {# datoteka}} u album",
"assets_added_to_name_count": "Dodato {count, plural, one {# datoteka} other {# datoteke}} u {hasName, select, true {{name}} other {novi album}}",
"assets_count": "{count, plural, one {# datoteka} few {# datoteke} other {# datoteka}}",
- "assets_moved_to_trash": "{count, plural, one {Premeštena # datoteka} few {Premeštene # datoteke} other {Premeštene # datoteka}} u otpad",
"assets_moved_to_trash_count": "Premešteno {count, plural, one {# datoteka} few {# datoteke} other {# datoteka}} u otpad",
"assets_permanently_deleted_count": "Trajno izbrisano {count, plural, one {# datoteka} few {# datoteke} other {# datoteka}}",
"assets_removed_count": "Uklonjeno {count, plural, one {# datoteka} few {# datoteke} other {# datoteka}}",
- "assets_restore_confirmation": "Da li ste sigurni da želite da vratite sve svoje datoteke koje su u otpadu? Ne možete poništiti ovu radnju!",
+ "assets_restore_confirmation": "Da li ste sigurni da želite da vratite sve svoje datoteke koje su u otpadu? Ne možete poništiti ovu radnju! Imajte na umu da se vanmrežna sredstva ne mogu vratiti na ovaj način.",
"assets_restored_count": "Vraćeno {count, plural, one {# datoteka} few {# datoteke} other {# datoteka}}",
"assets_trashed_count": "Bačeno u otpad {count, plural, one {# datoteka} few{# datoteke} other {# datoteka}}",
"assets_were_part_of_album_count": "{count, plural, one {Datoteka je} other {Datoteke su}} već deo albuma",
@@ -414,7 +432,8 @@
"birthdate_saved": "Datum rođenja uspešno sačuvan",
"birthdate_set_description": "Datum rođenja se koristi da bi se izračunale godine ove osobe u dobu određene fotografije.",
"blurred_background": "Zamućena pozadina",
- "build": "Sagradi (Build)",
+ "bugs_and_feature_requests": "Greške (bugs) i zahtevi za funkcije",
+ "build": "Pod-verzija (Build)",
"build_image": "Sagradi (Build) image",
"bulk_delete_duplicates_confirmation": "Da li ste sigurni da želite grupno da izbrišete {count, plural, one {# dupliran elemenat} few {# duplirana elementa} other {# dupliranih elemenata}}? Ovo će zadržati najveće sredstvo svake grupe i trajno izbrisati sve druge duplikate. Ne možete poništiti ovu radnju!",
"bulk_keep_duplicates_confirmation": "Da li ste sigurni da želite da zadržite {count, plural, one {1 dupliranu datoteku} few {# duplirane datoteke} other {# dupliranih datoteka}}? Ovo će rešiti sve duplirane grupe bez brisanja bilo čega.",
@@ -428,10 +447,6 @@
"cannot_merge_people": "Ne može spojiti osobe",
"cannot_undo_this_action": "Ne možete poništiti ovu radnju!",
"cannot_update_the_description": "Ne može ažurirati opis",
- "cant_apply_changes": "Ne može primeniti promene",
- "cant_get_faces": "Ne može preuzeti lica",
- "cant_search_people": "Ne može pretražiti osobe",
- "cant_search_places": "Ne može pretražiti mesta",
"change_date": "Promeni datum",
"change_expiration_time": "Promeni vreme isteka",
"change_location": "Promeni mesto",
@@ -463,6 +478,7 @@
"confirm": "Potvrdi",
"confirm_admin_password": "Potvrdi Administrativnu Lozinku",
"confirm_delete_shared_link": "Da li ste sigurni da želite da izbrišete ovaj deljeni link?",
+ "confirm_keep_this_delete_others": "Sve ostale datoteke u grupi će biti izbrisane osim ove datoteke. Da li ste sigurni da želite da nastavite?",
"confirm_password": "Ponovo unesi šifru",
"contain": "Obuhvati",
"context": "Kontekst",
@@ -512,16 +528,19 @@
"delete_key": "Izbriši ključ",
"delete_library": "Obriši biblioteku",
"delete_link": "Obriši vezu",
+ "delete_others": "Izbrišite druge",
"delete_shared_link": "Obriši deljenu vezu",
"delete_tag": "Obriši oznaku (tag)",
"delete_tag_confirmation_prompt": "Da li stvarno želite da izbrišete oznaku {tagName}?",
"delete_user": "Obriši korisnika",
"deleted_shared_link": "Obrišena deljena veza",
+ "deletes_missing_assets": "Briše sredstva koja nedostaju sa diska",
"description": "Opis",
"details": "Detalji",
"direction": "Smer",
"disabled": "Onemogućeno",
"disallow_edits": "Zabrani izmene",
+ "discord": "Diskord",
"discover": "Otkrijte",
"dismiss_all_errors": "Odbacite sve greške",
"dismiss_error": "Odbaci grešku",
@@ -530,6 +549,7 @@
"display_original_photos": "Prikažite originalne fotografije",
"display_original_photos_setting_description": "Radije prikazujete originalnu fotografiju kada gledate materijal nego sličice kada je originalno delo kompatibilno sa webom. Ovo može dovesti do sporijeg prikaza fotografija.",
"do_not_show_again": "Ne prikaži ponovo ovu poruku",
+ "documentation": "Dokumentacija",
"done": "Urađeno",
"download": "Preuzmi",
"download_include_embedded_motion_videos": "Ugrađeni video snimci",
@@ -542,13 +562,6 @@
"duplicates": "Duplikati",
"duplicates_description": "Razrešite svaku grupu tako što ćete navesti duplikate, ako ih ima",
"duration": "Trajanje",
- "durations": {
- "days": "{days, plural, one {dan} other {{days, number} dana}}",
- "hours": "{hours, plural, one {sat} other {{hours, number} sata}}",
- "minutes": "{minutes, plural, one {minut} other {{minutes, number} minuta}}",
- "months": "{months, plural, one {mesec} other {{months, number} meseci}}",
- "years": "{years, plural, one {godina} other {{years, number} godina}}"
- },
"edit": "Uredi",
"edit_album": "Uredi album",
"edit_avatar": "Uredi avatar",
@@ -573,8 +586,6 @@
"editor_crop_tool_h2_aspect_ratios": "Proporcije (aspect ratios)",
"editor_crop_tool_h2_rotation": "Rotacija",
"email": "E-pošta",
- "empty": "",
- "empty_album": "Isprazni album",
"empty_trash": "Ispraznite smeće",
"empty_trash_confirmation": "Da li ste sigurni da želite da ispraznite smeće? Ovo će trajno ukloniti sve datoteke u smeću iz Immich-a.\nNe možete poništiti ovu radnju!",
"enable": "Omogući (Enable)",
@@ -608,6 +619,7 @@
"failed_to_create_shared_link": "Pravljenje deljenog linka nije uspelo",
"failed_to_edit_shared_link": "Uređivanje deljenog linka nije uspelo",
"failed_to_get_people": "Neuspelo pozivanje osoba",
+ "failed_to_keep_this_delete_others": "Nije uspelo zadržavanje ovog dela i brisanje ostalih datoteka",
"failed_to_load_asset": "Učitavanje datoteka nije uspelo",
"failed_to_load_assets": "Nije uspelo učitavanje datoteka",
"failed_to_load_people": "Učitavanje osoba nije uspelo",
@@ -635,8 +647,6 @@
"unable_to_change_location": "Nije moguće promeniti lokaciju",
"unable_to_change_password": "Nije moguće promeniti lozinku",
"unable_to_change_visibility": "Nije moguće promeniti vidljivost za {count, plural, one {# osobu} other {# osobe}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "Nije moguće dovršiti OAuth prijavu",
"unable_to_connect": "Nije moguće povezati se",
"unable_to_connect_to_server": "Nemoguće je povezati se sa serverom",
@@ -661,6 +671,7 @@
"unable_to_get_comments_number": "Nije moguće dobiti broj komentara",
"unable_to_get_shared_link": "Preuzimanje deljene veze nije uspelo",
"unable_to_hide_person": "Nije moguće sakriti osobu",
+ "unable_to_link_motion_video": "Nije moguće povezati video sa slikom",
"unable_to_link_oauth_account": "Nije moguće povezati OAuth nalog",
"unable_to_load_album": "Nije moguće učitati album",
"unable_to_load_asset_activity": "Nije moguće učitati aktivnost sredstava",
@@ -676,12 +687,10 @@
"unable_to_remove_album_users": "Nije moguće ukloniti korisnike iz albuma",
"unable_to_remove_api_key": "Nije moguće ukloniti API ključ (key)",
"unable_to_remove_assets_from_shared_link": "Nije moguće ukloniti elemente sa deljenog linka",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "Nije moguće ukloniti vanmrežne datoteke",
"unable_to_remove_library": "Nije moguće ukloniti biblioteku",
- "unable_to_remove_offline_files": "Nije moguće ukloniti vanmrežne datoteke",
"unable_to_remove_partner": "Nije moguće ukloniti partnera",
"unable_to_remove_reaction": "Nije moguće ukloniti reakciju",
- "unable_to_remove_user": "",
"unable_to_repair_items": "Nije moguće popraviti stavke",
"unable_to_reset_password": "Nije moguće resetovati lozinku",
"unable_to_resolve_duplicate": "Nije moguće razrešiti duplikat",
@@ -701,6 +710,7 @@
"unable_to_submit_job": "Nije moguće predati zadatak",
"unable_to_trash_asset": "Nije moguće izbaciti materijal u otpad",
"unable_to_unlink_account": "Nije moguće raskinuti profil",
+ "unable_to_unlink_motion_video": "Nije moguće odvezati video od slike",
"unable_to_update_album_cover": "Nije moguće ažurirati naslovnicu albuma",
"unable_to_update_album_info": "Nije moguće ažurirati informacije o albumu",
"unable_to_update_library": "Nije moguće ažurirati biblioteku",
@@ -710,10 +720,6 @@
"unable_to_update_user": "Nije moguće ažurirati korisnika",
"unable_to_upload_file": "Nije moguće otpremiti datoteku"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "EXIF",
"exit_slideshow": "Izađi iz projekcije slajdova",
"expand_all": "Proširi sve",
@@ -728,33 +734,28 @@
"external": "Spoljašnji",
"external_libraries": "Spoljašnje Biblioteke",
"face_unassigned": "Neraspoređeni",
- "failed_to_get_people": "Neuspešno isčitavanje osoba",
+ "failed_to_load_assets": "Datoteke nisu uspešno učitane",
"favorite": "Favorit",
"favorite_or_unfavorite_photo": "Omiljena ili neomiljena fotografija",
"favorites": "Favoriti",
- "feature": "",
"feature_photo_updated": "Glavna fotografija je ažurirana",
- "featurecollection": "",
"features": "Funkcije (features)",
"features_setting_description": "Upravljajte funkcijama aplikacije",
"file_name": "Naziv dokumenta",
"file_name_or_extension": "Ime datoteke ili ekstenzija",
"filename": "Ime datoteke",
- "files": "",
"filetype": "Vrsta dokumenta",
"filter_people": "Filtriranje osoba",
"find_them_fast": "Brzo ih pronađite po imenu pomoću pretrage",
"fix_incorrect_match": "Ispravite netačno podudaranje",
"folders": "Fascikle (Folders)",
"folders_feature_description": "Pregledavanje prikaza fascikle za fotografije i video zapisa u sistemu datoteka",
- "force_re-scan_library_files": "Prinudno ponovo skenirajte sve datoteke biblioteke",
"forward": "Napred",
"general": "Generalno",
"get_help": "Nađi pomoć",
"getting_started": "Počinjem",
"go_back": "Vrati se",
"go_to_search": "Idi na pretragu",
- "go_to_share_page": "Idi na stranicu za deljenje",
"group_albums_by": "Grupni albumi po...",
"group_no": "Bez grupisanja",
"group_owner": "Grupirajte po vlasniku",
@@ -780,10 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Image}} snimljeno u {city}, {country} sa {person1} i {person2} {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Image}} snimljenou {city}, {country} sa {person1}, {person2} i {person3} {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Image}} snimljeno u {city}, {country} sa {person1}, {person2} i još {additionalCount, number} drugih {date}",
- "image_alt_text_people": "{count, plural, =1 {sa {person1}} =2 {sa {person1} i {person2}} =3 {sa {person1}, {person2}, i {person3}} other {sa {person1}, {person2}, i {others, number} others}}",
- "image_alt_text_place": "u {city}, {country}",
- "image_taken": "{isVideo, select, true {Video zapis snimljen} other {Fotografija uslikana}}",
- "img": "",
"immich_logo": "Logo Immich-a",
"immich_web_interface": "Web interfejs Immich-a",
"import_from_json": "Uvezi iz JSON-a",
@@ -804,10 +801,11 @@
"invite_people": "Pozovite ljude",
"invite_to_album": "Pozovi na album",
"items_count": "{count, plural, one {# datoteka} other {# datoteka}}",
- "job_settings_description": "",
"jobs": "Poslovi",
"keep": "Zadrži",
"keep_all": "Zadrži sve",
+ "keep_this_delete_others": "Zadrži ovo, izbriši druge",
+ "kept_this_deleted_others": "Zadržana je ova datoteka i izbrisano {count, plural, one {# datoteka} other {# datoteka}}",
"keyboard_shortcuts": "Prečice na tastaturi",
"language": "Jezik",
"language_setting_description": "Izaberite željeni jezik",
@@ -819,31 +817,6 @@
"level": "Nivo",
"library": "Biblioteka",
"library_options": "Opcije biblioteke",
- "license_account_info": "Vaš nalog je licenciran",
- "license_activated_subtitle": "Hvala vam što podržavate Immich i softver otvorenog koda",
- "license_activated_title": "Vaša licenca je uspešno aktivirana",
- "license_button_activate": "Aktiviraj",
- "license_button_buy": "Kupi",
- "license_button_buy_license": "Kupi Licencu",
- "license_button_select": "Odaberi",
- "license_failed_activation": "Aktivacija licence nije uspela. Proverite svoju e-poštu da biste pronašli ispravan ključ licence!",
- "license_individual_description_1": "1 licenca po korisniku na bilo kom serveru",
- "license_individual_title": "Individualna licenca",
- "license_info_licensed": "Licencirano",
- "license_info_unlicensed": "Bez licence",
- "license_input_suggestion": "Imate licencu? Unesite ključ ispod",
- "license_license_subtitle": "Kupite licencu za podršku Immich-a",
- "license_license_title": "LICENCA",
- "license_lifetime_description": "Doživotna licenca",
- "license_per_server": "Po serveru",
- "license_per_user": "Po korisniku",
- "license_server_description_1": "1 licenca po serveru",
- "license_server_description_2": "Licenca za sve korisnike na serveru",
- "license_server_title": "Serverska licenca",
- "license_trial_info_1": "Koristite nelicenciranu verziju Immich-a",
- "license_trial_info_2": "Koristili ste Immich otprilike",
- "license_trial_info_3": "{accountAge, plural, one {# dan} other {# dana}}",
- "license_trial_info_4": "Molimo vas da razmislite o kupovini licence za podršku kontinuiranom razvoju usluge",
"light": "Svetlo",
"like_deleted": "Lajkuj izbrisano",
"link_motion_video": "Napravi vezu za video zapis",
@@ -865,6 +838,7 @@
"look": "Pogledaj",
"loop_videos": "Ponavljajte video zapise",
"loop_videos_description": "Omogućite za automatsko ponavljanje video zapisa u pregledniku detalja.",
+ "main_branch_warning": "Upotrebljavate razvojnu verziju; strogo preporučujemo upotrebu izdate verzije!",
"make": "Kreiraj",
"manage_shared_links": "Upravljajte deljenim vezama",
"manage_sharing_with_partners": "Upravljajte deljenjem sa partnerima",
@@ -934,6 +908,7 @@
"notifications": "Notifikacije",
"notifications_setting_description": "Upravljajte obaveštenjima",
"oauth": "OAuth",
+ "official_immich_resources": "Zvanični Immich resursi",
"offline": "Odsutan (Offline)",
"offline_paths": "Nedostupne (Offline) putanje",
"offline_paths_description": "Ovi rezultati mogu biti posledica ručnog brisanja datoteka koje nisu deo spoljne biblioteke.",
@@ -946,7 +921,6 @@
"onboarding_welcome_user": "Dobrodošli, {user}",
"online": "Dostupan (Online)",
"only_favorites": "Samo favoriti",
- "only_refreshes_modified_files": "Osvežava samo izmenjene datoteke",
"open_in_map_view": "Otvorite u prikaz karte",
"open_in_openstreetmap": "Otvorite u OpenStreetMap-u",
"open_the_search_filters": "Otvorite filtere za pretragu",
@@ -984,14 +958,12 @@
"people_edits_count": "Izmenjeno {count, plural, one {# osoba} other {# osobe}}",
"people_feature_description": "Pregledavanje fotografija i video snimaka grupisanih po osobama",
"people_sidebar_description": "Prikažite vezu do osoba na bočnoj traci",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Upozorenje za trajno brisanje",
"permanent_deletion_warning_setting_description": "Prikaži upozorenje kada trajno brišete datoteke",
"permanently_delete": "Trajno izbrisati",
"permanently_delete_assets_count": "Trajno izbriši {count, plural, one {datoteku} other {datoteke}}",
"permanently_delete_assets_prompt": "Da li ste sigurni da želite da trajno izbrišete {count, plural, one {ovu datoteku?} other {ove # datoteke?}}Ovo će ih takođe ukloniti {count, plural, one {iz njihovog} other {iz njihovih}} albuma.",
"permanently_deleted_asset": "Trajno izbrisana datoteka",
- "permanently_deleted_assets": "Trajno izbrisano {count, plural, one {# datoteka} other {# datoteke}}",
"permanently_deleted_assets_count": "Trajno izbrisano {count, plural, one {# datoteka} other {# datoteke}}",
"person": "Osoba",
"person_hidden": "{name}{hidden, select, true { (skriveno)} other {}}",
@@ -1007,7 +979,6 @@
"play_memories": "Pokreni sećanja",
"play_motion_photo": "Pokreni pokretnu fotografiju",
"play_or_pause_video": "Pokreni ili pauziraj video zapis",
- "point": "",
"port": "port",
"preset": "Unapred podešeno",
"preview": "Pregled",
@@ -1052,12 +1023,10 @@
"purchase_server_description_2": "Status podrške",
"purchase_server_title": "Server",
"purchase_settings_server_activated": "Ključem proizvoda servera upravlja administrator",
- "range": "",
"rating": "Ocena zvezdica",
"rating_clear": "Obriši ocenu",
"rating_count": "{count, plural, one {# zvezda} other {# zvezde}}",
"rating_description": "Prikažite EXIF ocenu u info panelu",
- "raw": "",
"reaction_options": "Opcije reakcije",
"read_changelog": "Pročitajte dnevnik promena",
"reassign": "Ponovo dodaj",
@@ -1065,14 +1034,17 @@
"reassigned_assets_to_new_person": "Ponovo dodeljeno {count, plural, one {# datoteka} other {# datoteke}} novoj osobi",
"reassing_hint": "Dodelite izabrana sredstva postojećoj osobi",
"recent": "Skorašnji",
+ "recent-albums": "Nedavni albumi",
"recent_searches": "Skorašnje pretrage",
"refresh": "Osveži",
"refresh_encoded_videos": "Osvežite kodirane (encoded) video zapise",
+ "refresh_faces": "Osveži lica",
"refresh_metadata": "Osvežite metapodatke",
"refresh_thumbnails": "Osvežite sličice",
"refreshed": "Osveženo",
- "refreshes_every_file": "Osvežava svaku datoteku",
+ "refreshes_every_file": "Ponovo čita sve postojeće i nove datoteke",
"refreshing_encoded_video": "Osvežavanje kodiranog (encoded) videa",
+ "refreshing_faces": "Osvežavanje lica",
"refreshing_metadata": "Osvežavanje meta-podataka",
"regenerating_thumbnails": "Obnavljanje sličica",
"remove": "Ukloni",
@@ -1080,10 +1052,11 @@
"remove_assets_shared_link_confirmation": "Da li ste sigurni da želite da uklonite {count, plural, one {# datoteku} other {# datoteke}} sa ove deljene veze?",
"remove_assets_title": "Ukloniti datoteke?",
"remove_custom_date_range": "Uklonite prilagođeni period",
+ "remove_deleted_assets": "Uklonite vanmrežne (offline) datoteke",
"remove_from_album": "Obriši iz albuma",
"remove_from_favorites": "Ukloni iz favorita",
"remove_from_shared_link": "Uklonite sa deljene veze",
- "remove_offline_files": "Uklonite vanmrežne (offline) datoteke",
+ "remove_url": "Ukloni URL",
"remove_user": "Ukloni korisnika",
"removed_api_key": "Uklonjen API ključ (key): {name}",
"removed_from_archive": "Uklonjeno iz arhive",
@@ -1100,7 +1073,6 @@
"reset": "Resetovati",
"reset_password": "Resetovati lozinku",
"reset_people_visibility": "Resetujte vidljivost osoba",
- "reset_settings_to_default": "",
"reset_to_default": "Resetujte na podrazumevane vrednosti",
"resolve_duplicates": "Reši duplikate",
"resolved_all_duplicates": "Svi duplikati su razrešeni",
@@ -1120,8 +1092,7 @@
"saved_settings": "Sačuvana podešavanja",
"say_something": "Reci nešto",
"scan_all_libraries": "Skeniraj sve biblioteke",
- "scan_all_library_files": "Ponovo skenirajte sve datoteke biblioteke",
- "scan_new_library_files": "Skenirajte nove datoteke biblioteke",
+ "scan_library": "Skeniraj",
"scan_settings": "Podešavanja skeniranja",
"scanning_for_album": "Skeniranje albuma...",
"search": "Pretraga",
@@ -1139,6 +1110,7 @@
"search_options": "Opcije pretrage",
"search_people": "Pretraži osobe",
"search_places": "Pretraži mesta",
+ "search_settings": "Pretraga podešavanja",
"search_state": "Traži region...",
"search_tags": "Pretraži oznake (tags)...",
"search_timezone": "Pretraži vremensku zonu...",
@@ -1163,7 +1135,6 @@
"selected_count": "{count, plural, other {# izabrano}}",
"send_message": "Pošalji poruku",
"send_welcome_email": "Pošaljite e-poštu dobrodošlice",
- "server": "Server",
"server_offline": "Server van mreže (offline)",
"server_online": "Server na mreži (online)",
"server_stats": "Statistika servera",
@@ -1206,6 +1177,7 @@
"show_person_options": "Prikaži opcije osobe",
"show_progress_bar": "Prikaži traku napretka",
"show_search_options": "Prikaži opcije pretrage",
+ "show_slideshow_transition": "Prikaži prelaz projekcije slajdova",
"show_supporter_badge": "Značka podrške",
"show_supporter_badge_description": "Pokažite značku podrške",
"shuffle": "Mešanje",
@@ -1247,13 +1219,16 @@
"submit": "Dostavi",
"suggestions": "Sugestije",
"sunrise_on_the_beach": "Izlazak sunca na plaži",
+ "support": "Podrška",
+ "support_and_feedback": "Podrška i povratne informacije",
+ "support_third_party_description": "Vaša immich instalacija je spakovana od strane treće strane. Problemi sa kojima se suočavate mogu biti uzrokovani tim paketom, pa vas molimo da im prvo postavite probleme koristeći donje veze.",
"swap_merge_direction": "Zamenite pravac spajanja",
"sync": "Sinhronizacija",
"tag": "Oznaka (tag)",
"tag_assets": "Označite (tag) sredstva",
"tag_created": "Napravljena oznaka (tag): {tag}",
"tag_feature_description": "Pregledavanje fotografija i video snimaka grupisanih po logičnim temama oznaka",
- "tag_not_found_question": "Ne možete da pronađete oznaku (tag)? Napravite jednu ovde",
+ "tag_not_found_question": "Ne možete da pronađete oznaku (tag)? Napravite novu oznaku",
"tag_updated": "Ažurirana oznaka (tag): {tag}",
"tagged_assets": "Označeno (tagged) {count, plural, one {# datoteka} other {# datoteke}}",
"tags": "Oznake (tags)",
@@ -1262,18 +1237,19 @@
"theme_selection": "Izbor teme",
"theme_selection_description": "Automatski postavite temu na svetlu ili tamnu na osnovu sistemskih preferencija vašeg pretraživača",
"they_will_be_merged_together": "Oni će biti spojeni zajedno",
+ "third_party_resources": "Resursi trećih strana",
"time_based_memories": "Sećanja zasnovana na vremenu",
+ "timeline": "Vremenska linija",
"timezone": "Vremenska zona",
"to_archive": "Arhiviraj",
"to_change_password": "Promeni lozinku",
"to_favorite": "Postavi kao favorit",
"to_login": "Prijava",
"to_parent": "Vrati se nazad",
- "to_root": "Na početak",
"to_trash": "Smeće",
"toggle_settings": "Namesti podešavanja",
"toggle_theme": "Namesti tamnu temu",
- "toggle_visibility": "Namesti vidljivost",
+ "total": "Ukupno",
"total_usage": "Ukupna upotreba",
"trash": "Otpad",
"trash_all": "Baci sve u otpad",
@@ -1283,14 +1259,13 @@
"trashed_items_will_be_permanently_deleted_after": "Datoteke u otpadu će biti trajno izbrisane nakon {days, plural, one {# dan} few {# dana} other {# dana}}.",
"type": "Vrsta",
"unarchive": "Vrati iz arhive",
- "unarchived": "Vraćeno iz arhive",
"unarchived_count": "{count, plural, other {Nearhivirano#}}",
"unfavorite": "Izbaci iz omiljenih (unfavorite)",
"unhide_person": "Otkrij osobu",
"unknown": "Nepoznat",
- "unknown_album": "Nepoznat Album",
"unknown_year": "Nepoznata Godina",
"unlimited": "Neograničeno",
+ "unlink_motion_video": "Odveži video od slike",
"unlink_oauth": "Prekini vezu sa Oauth-om",
"unlinked_oauth_account": "Opozvana veza OAuth naloga",
"unnamed_album": "Neimenovani album",
@@ -1319,13 +1294,13 @@
"use_custom_date_range": "Umesto toga koristite prilagođeni period",
"user": "Korisnik",
"user_id": "ID korisnika",
- "user_license_settings": "Licenca",
- "user_license_settings_description": "Upravljajte svojom licencom",
"user_liked": "{user} je lajkovao {type, select, photo {ovu fotografiju} video {ovaj video zapis} asset {ovu datoteku} other {ovo}}",
"user_purchase_settings": "Kupovina",
"user_purchase_settings_description": "Upravljajte kupovinom",
"user_role_set": "Postavi {user} kao {role}",
"user_usage_detail": "Detalji korišćenja korisnika",
+ "user_usage_stats": "Statistika korišćenja naloga",
+ "user_usage_stats_description": "Pogledajte statistiku korišćenja naloga",
"username": "Korisničko ime",
"users": "Korisnici",
"utilities": "Alati",
@@ -1333,7 +1308,9 @@
"variables": "Promenljive (variables)",
"version": "Verzija",
"version_announcement_closing": "Tvoj prijatelj, Aleks",
- "version_announcement_message": "Zdravo prijatelju, postoji nova verzija aplikacije, molimo vas da odvojite vreme da posetite napomene o izdanju i uverite se u svoje docker-compose.yml, i .env podešavanje je ažurirano kako bi se sprečile bilo kakve pogrešne konfiguracije, posebno ako koristite WatchTower ili bilo koji mehanizam koji automatski upravlja ažuriranjem vaše aplikacije.",
+ "version_announcement_message": "Zdravo prijatelju, postoji nova verzija aplikacije, molimo vas da odvojite vreme da posetite napomene o izdanju i uverite se da je server ažuriran kako bi se sprečile bilo kakve pogrešne konfiguracije, posebno ako koristite WatchTower ili bilo koji mehanizam koji automatski upravlja ažuriranjem vaše aplikacije.",
+ "version_history": "Istorija verzija",
+ "version_history_item": "Instalirano {version} {date}",
"video": "Video zapis",
"video_hover_setting": "Pusti sličicu videa kada lebdi",
"video_hover_setting_description": "Pusti sličicu videa kada miš pređe preko stavke. Čak i kada je onemogućena, reprodukcija se može pokrenuti prelaskom miša preko ikone za reprodukciju.",
@@ -1345,10 +1322,10 @@
"view_all_users": "Prikaži sve korisnike",
"view_in_timeline": "Prikaži u vremenskoj liniji",
"view_links": "Prikaži veze",
+ "view_name": "Pogledati",
"view_next_asset": "Pogledajte sledeću datoteku",
"view_previous_asset": "Pogledaj prethodnu datoteku",
"view_stack": "Prikaži gomilu",
- "viewer": "Preglednik (viewer)",
"visibility_changed": "Vidljivost je promenjena za {count, plural, one {# osobu} other {# osobe}}",
"waiting": "Čekam",
"warning": "Upozorenje",
diff --git a/web/src/lib/i18n/sv.json b/i18n/sv.json
similarity index 55%
rename from web/src/lib/i18n/sv.json
rename to i18n/sv.json
index cebb74377e..f774f3a01d 100644
--- a/web/src/lib/i18n/sv.json
+++ b/i18n/sv.json
@@ -1,5 +1,5 @@
{
- "about": "Om",
+ "about": "Uppdatera",
"account": "Konto",
"account_settings": "Kontoinställningar",
"acknowledge": "Bekräfta",
@@ -23,16 +23,23 @@
"add_to": "Lägg till...",
"add_to_album": "Lägg till i album",
"add_to_shared_album": "Lägg till i delat album",
+ "add_url": "Lägg till URL",
"added_to_archive": "Tillagd i arkiv",
"added_to_favorites": "Tillagd till favoriter",
"added_to_favorites_count": "{count, number} tillagda till favoriter",
"admin": {
"add_exclusion_pattern_description": "Lägg till exkluderande mönster. Matchning med jokertecken *, ** samt ? är supporterat. För att ignorera alla filer i samtliga mappar som heter \"Raw\", använd \"**/Raw/**\". För att ignorera alla filer som slutar med \".tif\", använd \"**/*.tif\". För att ignorera en absolut sökväg, använd \"/sökväg/att/ignorera/**\".",
+ "asset_offline_description": "Denna externa bibliotekstillgång finns inte längre på disken och har flyttats till papperskorgen. Om filen flyttades inom biblioteket, kontrollera din tidslinje för den nya motsvarande tillgången. För att återställa denna tillgång, se till att filsökvägen nedan kan nås av Immich och skanna biblioteket.",
"authentication_settings": "Autentiseringsinställningar",
"authentication_settings_description": "Hantera lösenord, OAuth, och andra autentiseringsinställningar",
"authentication_settings_disable_all": "Är du säker på att du vill inaktivera alla inloggningsmetoder? Inloggning kommer att helt inaktiveras.",
"authentication_settings_reenable": "För att återaktivera, använd Server Command.",
"background_task_job": "Bakgrundsaktiviteter",
+ "backup_database": "Databassäkerhetskopia",
+ "backup_database_enable_description": "Slå på säkerhetskopia",
+ "backup_keep_last_amount": "Antal säkerhetskopior att behålla",
+ "backup_settings": "Säkerhetskopieringsinställningar",
+ "backup_settings_description": "Hantera inställningar för säkerhetskopiering av databas",
"check_all": "Välj alla",
"cleared_jobs": "Rensade jobben för:{job}",
"config_set_by_file": "Konfigurationen är satt av en konfigurationsfil",
@@ -41,9 +48,11 @@
"confirm_email_below": "För att bekräfta, skriv ”{email}” nedan",
"confirm_reprocess_all_faces": "Är du säker på att du vill återprocessa alla ansikten? Detta kommer också rensa namngivna personer.",
"confirm_user_password_reset": "Är du säker på att du vill återställa {user}’s lösenord?",
- "crontab_guru": "Crontab-guru",
+ "create_job": "Skapa jobb",
+ "cron_expression": "Cron uttryck",
+ "cron_expression_description": "Sätt skanningsintervall genom att använda cron format. För mer information se Crontab Guru",
+ "cron_expression_presets": "Cron uttryck förinställningar",
"disable_login": "Inaktivera inloggning",
- "disabled": "Inaktiverad",
"duplicate_detection_job_description": "Kör maskininlärning på objekt för att upptäcka liknande bilder. Bygger på Smart Search",
"exclusion_pattern_description": "Exkluderingsmönster tillåter dig att ignorera filer och mappar när skanning görs av ditt album. Detta är användbart om du har mappar som innehåller filer som du inte vill importera, t.ex. RAW-filer.",
"external_library_created_at": "Externt bibliotek (skapat den {date})",
@@ -54,22 +63,25 @@
"failed_job_command": "Kommando {command} misslyckades för jobb: {job}",
"force_delete_user_warning": "VARNING: Detta tar omedelbart bort användaren och alla mediafiler. Detta kan inte ångras och filerna kan inte återställas.",
"forcing_refresh_library_files": "Tvingar uppdatering av alla biblioteksfiler",
+ "image_format": "Format",
"image_format_description": "WebP producerar mindre filer än JPEG, men kodas långsammare.",
"image_prefer_embedded_preview": "Föredra inbäddad förhandsgranskning",
"image_prefer_embedded_preview_setting_description": "Använd inbäddade förhandsvisningar i RAW-foton som indata till bildbehandling när det är tillgängligt. Detta kan ge mer exakta färger för vissa bilder, men kvaliteten på förhandsgranskningen är kameraberoende och bilden kan ha fler komprimeringsartefakter.",
"image_prefer_wide_gamut": "Föredrar brett spektrum",
"image_prefer_wide_gamut_setting_description": "Använd Display P3 för miniatyrer. Detta bevarar livfullheten bättre hos bilder med bred färgrymd, men bilder kan se annorlunda ut på gamla enheter med en gammal webbläsarversion. Med sRGB-bilder behålls i sitt format sRGB för att undvika färgskiftningar.",
- "image_preview_format": "Förhandsgranskningsformat",
- "image_preview_resolution": "Förhandsgranska upplösning",
- "image_preview_resolution_description": "Används vid visning av ett enstaka foto och för maskininlärning. Högre upplösningar kan bevara fler detaljer men tar längre tid att koda, har större filstorlekar och kan minska appens responsiva känsla.",
+ "image_preview_description": "Mellanstor bild med avskalad metadata, används vid visning av en enskild tillgång och för maskininlärning",
+ "image_preview_quality_description": "Förhandsgranska kvalitet från 1-100. Högre är bättre, men ger större filer och kan minska appens känslighet. Att ställa in ett lågt värde kan påverka kvaliteten på maskininlärning.",
+ "image_preview_title": "Förhandsvisningsinställningar",
"image_quality": "Kvalitet",
- "image_quality_description": "Bildkvalitet från 1-100. Högre är bättre för kvaliteten men ger större filer, det här alternativet påverkar förhandsgranskningen och miniatyrbilderna.",
+ "image_resolution": "Upplösning",
+ "image_resolution_description": "Högre upplösningar kan bevara fler detaljer men tar längre tid att koda, har större filstorlekar och kan minska appens känslighet.",
"image_settings": "Bildinställningar",
"image_settings_description": "Hantera kvalitet och upplösning på genererade bilder",
- "image_thumbnail_format": "Miniatyrformat",
- "image_thumbnail_resolution": "Miniatyrbildsupplösning",
- "image_thumbnail_resolution_description": "Används när du tittar på grupper av foton (huvudtidslinje, albumvy, etc.). Högre upplösningar kan bevara fler detaljer men tar längre tid att koda, har större filstorlekar och kan minska appens responsiva känsla.",
+ "image_thumbnail_description": "Liten miniatyrbild med avskalad metadata, används när du tittar på grupper av foton som huvudtidslinjen",
+ "image_thumbnail_quality_description": "Miniatyrkvalitet från 1-100. Högre är bättre, men ger större filer och kan minska appens känslighet.",
+ "image_thumbnail_title": "Miniatyrbildsinställningar",
"job_concurrency": "{job} Samtidighet",
+ "job_created": "Jobb skapat",
"job_not_concurrency_safe": "Det här jobbet är inte samtidighetssäkert.",
"job_settings": "Jobbinställningar",
"job_settings_description": "Hantera samtidiga jobb",
@@ -77,9 +89,6 @@
"jobs_delayed": "{jobCount, plural, other {# försenad}}",
"jobs_failed": "{jobCount, plural, other {# misslyckades}}",
"library_created": "Skapat bibliotek: {library}",
- "library_cron_expression": "Cron-uttryck",
- "library_cron_expression_description": "Ställ in intervallet för skanningen med cron-formatet. För mer information gå till t.ex. Crontab Guru ",
- "library_cron_expression_presets": "Cron-uttrycksförinställningar",
"library_deleted": "Biblioteket har tagits bort",
"library_import_path_description": "Ange en mapp att importera. Den här mappen, inklusive undermappar, skannas efter bilder och videor.",
"library_scanning": "Periodisk skanning",
@@ -122,7 +131,7 @@
"machine_learning_smart_search_description": "Sök semantiskt efter bilder med hjälp av CLIP-inbäddningar",
"machine_learning_smart_search_enabled": "Aktivera smart sökning",
"machine_learning_smart_search_enabled_description": "Om inaktiverat kommer bilder inte att kodas för smart sökning.",
- "machine_learning_url_description": "Maskininlärningsserverns URL",
+ "machine_learning_url_description": "Maskininlärningsserverns URL. Om det är mer än en URL tillagd så kommer ett försök per URL att utföras tills någon av dom svarar, försöken görs i kronologisk ordning.",
"manage_concurrency": "Hantera samtidighet",
"manage_log_settings": "Hantera logginställningar",
"map_dark_style": "Mörk stil",
@@ -152,7 +161,7 @@
"note_cannot_be_changed_later": "OBS: Detta kan inte ändras i efterhand!",
"note_unlimited_quota": "OBS: Skriv 0 för obegränsad kvota",
"notification_email_from_address": "Från adress",
- "notification_email_from_address_description": "Avsändarens epost, t.ex.: \"Immich Fotoserver {label} är användarens lagringsmärkning",
"system_settings": "Systeminställningar",
+ "tag_cleanup_job": "Markera för rensning",
+ "template_email_available_tags": "Du kan använda följande variablar i din mall: {tags}",
+ "template_email_if_empty": "Om mallen är tom, kommer standard e-post att användas.",
+ "template_email_invite_album": "Inbjudan Album Mall",
+ "template_email_preview": "Förhandsgranskning",
+ "template_email_settings": "E-post mall",
+ "template_email_settings_description": "Hantera anpassad e-postavisering mall.",
+ "template_email_update_album": "Uppdatera Album Mall",
+ "template_email_welcome": "Välkommen e-post mall",
+ "template_settings": "Notifikations Mall",
+ "template_settings_description": "Hantera anpassade mallar för notifikationer.",
"theme_custom_css_settings": "Anpassad CSS",
"theme_custom_css_settings_description": "Cascading Style Sheets möjliggör designanpassningar av Immich",
"theme_settings": "Temainställningar",
@@ -245,7 +267,6 @@
"these_files_matched_by_checksum": "Dessa filer matchas av deras kontrollsummor",
"thumbnail_generation_job": "Generera Miniatyrer",
"thumbnail_generation_job_description": "Generera stora, små och suddiga miniatyrer för varje objekt, samt för varje person",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "Accelerations-API",
"transcoding_acceleration_api_description": "API som kommer att interagera med din enhet för att accelerera omkodning. Inställning är 'best effort': vid fel kommer den att återgå till mjukvarubaserad omkodning. VP9 kan fungera eller inte, beroende på din hårdvara.",
"transcoding_acceleration_nvenc": "NVENC (kräver NVIDIA GPU)",
@@ -289,332 +310,538 @@
"transcoding_required_description": "Enbart videos som inte är ett accepterat format",
"transcoding_settings": "Inställningar för omkodning av video",
"transcoding_settings_description": "Hantera upplösningen och kodningen av videofiler",
- "transcoding_target_resolution": "",
+ "transcoding_target_resolution": "Förväntad upplösning",
"transcoding_target_resolution_description": "En högre upplösning kan bevara fler detaljer men kan ta längre tid at koda, ha större fil storlek och kan försämra appens svarstid.",
- "transcoding_temporal_aq": "",
- "transcoding_temporal_aq_description": "",
+ "transcoding_temporal_aq": "Temporär AQ",
+ "transcoding_temporal_aq_description": "Gäller endast NVENC. Ökar kvaliteten på scener med hög detaljrikedom och låg rörelse. Kanske inte är kompatibel med äldre enheter.",
"transcoding_threads": "Trådar",
- "transcoding_threads_description": "",
- "transcoding_tone_mapping": "",
- "transcoding_tone_mapping_description": "",
- "transcoding_tone_mapping_npl": "",
- "transcoding_tone_mapping_npl_description": "",
- "transcoding_transcode_policy": "",
- "transcoding_two_pass_encoding": "",
- "transcoding_two_pass_encoding_setting_description": "",
- "transcoding_video_codec": "",
- "transcoding_video_codec_description": "",
- "trash_enabled_description": "",
- "trash_number_of_days": "",
- "trash_number_of_days_description": "",
- "trash_settings": "",
- "trash_settings_description": "",
- "user_delete_delay_settings": "",
- "user_delete_delay_settings_description": "",
+ "transcoding_threads_description": "Högre värden leder till snabbare kodning, men lämnar mindre utrymme för servern att bearbeta andra uppgifter medan den är aktiv. Detta värde bör inte vara mer än antalet CPU-kärnor. Maximerar användningen om den är inställd på 0.",
+ "transcoding_tone_mapping": "Ton mappning",
+ "transcoding_tone_mapping_description": "Försöker att bevara utseendet på HDR-videor när de konverteras till SDR. Varje algoritm gör olika avvägningar för färg, detaljer och ljusstyrka. Hable bevarar detaljer, Mobius bevarar färg och Reinhard bevarar ljusstyrkan.",
+ "transcoding_transcode_policy": "Omkodningspolicy",
+ "transcoding_transcode_policy_description": "Policy för när en video ska omkodas. HDR-videor kommer alltid att omkodas (förutom om omkodning är inaktiverad).",
+ "transcoding_two_pass_encoding": "Två-pass kodning",
+ "transcoding_two_pass_encoding_setting_description": "Koda om i två omgångar för att producera bättre kodade videor. När max bitrate är aktiverat (krävs för att det ska fungera med H.264 och HEVC), använder det här läget ett bithastighetsområde baserat på max bitrate och ignorerar CRF. För VP9 kan CRF användas om max bitrate är inaktiverat.",
+ "transcoding_video_codec": "Video Codec",
+ "transcoding_video_codec_description": "VP9 har hög effektivitet och webbkompatibilitet, men tar längre tid att omkoda. HEVC fungerar på liknande sätt, men har lägre webbkompatibilitet. H.264 är allmänt kompatibel och snabb att omkoda, men producerar mycket större filer. AV1 är den mest effektiva codec men saknar stöd på äldre enheter.",
+ "trash_enabled_description": "Aktivera papperskorgen",
+ "trash_number_of_days": "Antal dagar",
+ "trash_number_of_days_description": "Antal dagar för att förvara tillgångarna i papperskorgen innan de permanent tas bort",
+ "trash_settings": "Papperskorginställningar",
+ "trash_settings_description": "Hantera papperskorginställningar",
+ "untracked_files": "Ospårade filer",
+ "untracked_files_description": "Dessa filer spåras inte av applikationen. De kan vara resultatet av misslyckade rörelser, avbrutna uppladdningar eller kvarlämnade på grund av en bugg",
+ "user_cleanup_job": "Användarrensning",
+ "user_delete_delay": "{user}s konto och tillgångar kommer att schemaläggas för permanent radering om {delay, plural, one {# day} other {# days}}.",
+ "user_delete_delay_settings": "Borttagningsfördröjning",
+ "user_delete_delay_settings_description": "Antal dagar efter borttagning för att permanent radera en användares konto och tillgångar. Arbetet med borttagning av användare körs vid midnatt för att söka efter användare som är redo för radering. Ändringar av denna inställning kommer att utvärderas vid nästa körning.",
+ "user_delete_immediately": "{user} konto och tillgångar kommer att stå i kö för permanent radering.",
+ "user_delete_immediately_checkbox": "Köa användare och tillgångar för omedelbar radering",
"user_management": "Användarhantering",
- "user_settings": "",
- "user_settings_description": "",
- "version_check_enabled_description": "",
- "version_check_settings": "",
- "version_check_settings_description": "",
- "video_conversion_job_description": ""
+ "user_password_has_been_reset": "Användarens lösenord har återställts:",
+ "user_password_reset_description": "Ange det tillfälliga lösenordet till användaren och informera dem om att de kommer att behöva ändra lösenordet vid nästa inloggning.",
+ "user_restore_description": "{user} konto kommer att återställas.",
+ "user_restore_scheduled_removal": "Återställ användare - schemalagd borttagning {date, date, long}",
+ "user_settings": "Användarinställningar",
+ "user_settings_description": "Hantera användarinställningar",
+ "user_successfully_removed": "Användaren {email} har tagits bort.",
+ "version_check_enabled_description": "Aktivera versionskontroll",
+ "version_check_implications": "Funktionen för versionskontroll är beroende av periodisk kommunikation med github.com",
+ "version_check_settings": "Versionskontroll",
+ "version_check_settings_description": "Aktivera/inaktivera meddelandet om ny versionen",
+ "video_conversion_job": "Omkoda videor",
+ "video_conversion_job_description": "Koda om videor för bredare kompatibilitet med webbläsare och enheter"
},
- "admin_email": "",
- "admin_password": "",
+ "admin_email": "Admin Email",
+ "admin_password": "Admin Lösenord",
"administration": "Administration",
- "advanced": "Avancerad",
- "album_added": "",
- "album_added_notification_setting_description": "",
- "album_cover_updated": "",
- "album_info_updated": "",
- "album_name": "",
- "album_options": "",
- "album_updated": "",
- "album_updated_setting_description": "",
+ "advanced": "Avancerat",
+ "age_months": "Ålder {months, plural, one {# month} other {# months}}",
+ "age_year_months": "Ålder 1 år, {months, plural, one {# month} other {# months}}",
+ "age_years": "{years, plural, other {Age #}}",
+ "album_added": "Albumet har lagts till",
+ "album_added_notification_setting_description": "Få ett e-postmeddelande när du läggs till i ett delat album",
+ "album_cover_updated": "Albumomslaget uppdaterat",
+ "album_delete_confirmation": "Är du säker på att du vill ta bort albumet {album}?",
+ "album_delete_confirmation_description": "Om det här albumet delas kommer andra användare inte att kunna komma åt det längre.",
+ "album_info_updated": "Albuminformation uppdaterad",
+ "album_leave": "Lämna albumet?",
+ "album_leave_confirmation": "Är du säker på att du vill lämna {album}?",
+ "album_name": "Albumnamn",
+ "album_options": "Albumalternativ",
+ "album_remove_user": "Ta bort användare?",
+ "album_remove_user_confirmation": "Är du säker på att du vill ta bort {user}?",
+ "album_share_no_users": "Det verkar som att du har delat det här albumet med alla användare eller så har du inte någon användare att dela med.",
+ "album_updated": "Albumet uppdaterat",
+ "album_updated_setting_description": "Få ett e-postmeddelande när ett delat album har nya tillgångar",
+ "album_user_left": "Lämnade {album}",
+ "album_user_removed": "Tog bort {user}",
+ "album_with_link_access": "Låt alla med länken se foton och personer i det här albumet.",
"albums": "Album",
+ "albums_count": "{count, plural, one {{count, number} Album} other {{count, number} Albums}}",
"all": "Allt",
- "all_people": "",
+ "all_albums": "Alla album",
+ "all_people": "Alla personer",
"all_videos": "Alla videor",
- "allow_dark_mode": "",
- "allow_edits": "",
- "api_key": "",
- "api_keys": "",
- "app_settings": "",
- "appears_in": "",
+ "allow_dark_mode": "Tillåt mörkt läge",
+ "allow_edits": "Tillåt redigeringar",
+ "allow_public_user_to_download": "Tillåt offentlig användare att ladda ner",
+ "allow_public_user_to_upload": "Tillåt en offentlig användare att ladda upp",
+ "anti_clockwise": "Moturs",
+ "api_key": "API Nyckel",
+ "api_key_description": "Detta värde kommer bara att visas en gång. Se till att kopiera det innan du stänger fönstret.",
+ "api_key_empty": "Ditt API-nyckelnamn ska inte vara tomt",
+ "api_keys": "API-Nycklar",
+ "app_settings": "Appinställningar",
+ "appears_in": "Visas i",
"archive": "Arkiv",
- "archive_or_unarchive_photo": "",
- "archived": "",
- "asset_offline": "",
+ "archive_or_unarchive_photo": "Arkivera eller oarkivera fotot",
+ "archive_size": "Arkivstorlek",
+ "archive_size_description": "Konfigurera arkivstorleken för nedladdningar (i GiB)",
+ "archived_count": "{count, plural, other {Archived #}}",
+ "are_these_the_same_person": "Är det samma person?",
+ "are_you_sure_to_do_this": "Är du säker på att du vill göra det här?",
+ "asset_added_to_album": "Lades till i album",
+ "asset_adding_to_album": "Lägger till i album...",
+ "asset_description_updated": "Tillgångens beskrivning har uppdaterats",
+ "asset_filename_is_offline": "Tillgången {filename} är offline",
+ "asset_has_unassigned_faces": "Tillgången har otilldelade ansikten",
+ "asset_hashing": "Hashing...",
+ "asset_offline": "Tillgång offline",
+ "asset_offline_description": "Denna externa tillgång finns inte längre på disken. Kontakta din Immich-administratör för hjälp.",
+ "asset_skipped": "Överhoppad",
+ "asset_skipped_in_trash": "I papperskorgen",
+ "asset_uploaded": "Uppladdad",
+ "asset_uploading": "Laddar upp...",
"assets": "Objekt",
- "authorized_devices": "",
+ "assets_added_count": "La till {count, plural, one {# asset} other {# assets}}",
+ "assets_added_to_album_count": "Lade till {count, plural, one {# asset} other {# assets}} i albumet",
+ "assets_added_to_name_count": "Lade till {count, plural, one {# asset} other {# assets}} till {hasName, select, true {{name}} other {new album}}",
+ "assets_count": "{count, plural, one {# asset} other {# assets}}",
+ "assets_moved_to_trash_count": "Flyttade {count, plural, one {# asset} other {# assets}} till papperskorgen",
+ "assets_permanently_deleted_count": "Raderad permanent {count, plural, one {# asset} other {# assets}}",
+ "assets_removed_count": "Tog bort {count, plural, one {# asset} other {# assets}}",
+ "assets_restore_confirmation": "Är du säker på att du vill återställa alla dina papperskorgen? Du kan inte ångra den här åtgärden! Observera att offlineobjekt inte kan återställas på detta sätt.",
+ "assets_restored_count": "Återställd {count, plural, one {# asset} other {# assets}}",
+ "assets_trashed_count": "Till Papperskorgen {count, plural, one {# asset} other {# assets}}",
+ "assets_were_part_of_album_count": "{count, plural, one {Asset was} other {Asset were}} är redan en del av albumet",
+ "authorized_devices": "Auktoriserade enheter",
"back": "Bakåt",
- "backward": "",
- "blurred_background": "",
+ "back_close_deselect": "Tillbaka, stäng eller avmarkera",
+ "backward": "Bakåt",
+ "birthdate_saved": "Födelsedatumet har sparats",
+ "birthdate_set_description": "Födelsedatum används för att beräkna åldern på denna person vid tidpunkten för ett foto.",
+ "blurred_background": "Suddig bakgrund",
+ "bugs_and_feature_requests": "Buggar och funktionsförfrågningar",
+ "build": "Bygge",
+ "build_image": "Byggfil",
+ "bulk_delete_duplicates_confirmation": "Är du säker på att du vill massradera {count, plural, one {# duplicate asset} other {# duplicate assets}}? Detta kommer att behålla den största tillgången i varje grupp och permanent radera alla andra dubbletter. Du kan inte ångra den här åtgärden!",
+ "bulk_keep_duplicates_confirmation": "Är du säker på att du vill behålla {count, plural, one {# duplicate asset} other {# duplicate assets}}? Detta kommer att lösa alla dubbletter av grupper utan att ta bort någonting.",
+ "bulk_trash_duplicates_confirmation": "Är du säker på att du vill skicka till papperskorgen {count, plural, one {# duplicate asset} other {# duplicate assets}}? Detta kommer att behålla den största tillgången i varje grupp och alla andra dubbletter kasseras.",
+ "buy": "Köp Immich",
"camera": "Kamera",
"camera_brand": "Kameramärke",
"camera_model": "Kameramodell",
"cancel": "Avbryt",
"cancel_search": "Avbryt sökning",
- "cannot_merge_people": "",
- "cannot_update_the_description": "",
- "cant_apply_changes": "",
- "cant_get_faces": "",
- "cant_search_people": "",
- "cant_search_places": "",
- "change_date": "",
+ "cannot_merge_people": "Kan inte slå samman personer",
+ "cannot_undo_this_action": "Du kan inte ångra den här åtgärden!",
+ "cannot_update_the_description": "Det går inte att uppdatera beskrivningen",
+ "change_date": "Ändra datum",
"change_expiration_time": "Ändra utgångstid",
- "change_location": "",
- "change_name": "",
- "change_name_successfully": "",
+ "change_location": "Ändra plats",
+ "change_name": "Byt namn",
+ "change_name_successfully": "Bytt namn framgångsrikt",
"change_password": "Ändra Lösenord",
- "change_your_password": "",
- "changed_visibility_successfully": "",
- "check_logs": "",
+ "change_password_description": "Detta är antingen första gången du loggar in i systemet eller så har en begäran gjorts om att ändra ditt lösenord. Vänligen ange det nya lösenordet nedan.",
+ "change_your_password": "Ändra ditt lösenord",
+ "changed_visibility_successfully": "Synligheten har ändrats",
+ "check_all": "Markera alla",
+ "check_logs": "Kontrollera loggar",
+ "choose_matching_people_to_merge": "Välj matchande personer att slå samman",
"city": "Stad",
"clear": "Rensa",
"clear_all": "Rensa allt",
+ "clear_all_recent_searches": "Rensa alla senaste sökningar",
"clear_message": "Rensa meddelande",
"clear_value": "Rensa värde",
+ "clockwise": "Medsols",
"close": "Stäng",
- "collapse_all": "",
+ "collapse": "Kollapsa",
+ "collapse_all": "Kollapsa alla",
+ "color": "Färg",
"color_theme": "Färgtema",
"comment_deleted": "Kommentar raderad",
- "comment_options": "",
+ "comment_options": "Kommentarsalternativ",
+ "comments_and_likes": "Kommentarer & likes",
"comments_are_disabled": "Kommentarer är avstängda",
"confirm": "Bekräfta",
- "confirm_admin_password": "",
+ "confirm_admin_password": "Bekräfta administratörslösenord",
+ "confirm_delete_shared_link": "Är du säker på att du vill ta bort den här delade länken?",
+ "confirm_keep_this_delete_others": "Alla andra tillgångar i stacken tas bort förutom den här tillgången. Är du säker på att du vill fortsätta.",
"confirm_password": "Bekräfta lösenord",
- "contain": "",
+ "contain": "Anpassa",
"context": "Sammanhang",
"continue": "Fortsätt",
- "copied_image_to_clipboard": "",
- "copy_error": "",
- "copy_file_path": "",
+ "copied_image_to_clipboard": "Kopierade bilden till urklipp.",
+ "copied_to_clipboard": "Kopierat till urklipp!",
+ "copy_error": "Kopieringsfel",
+ "copy_file_path": "Kopiera filsökväg",
"copy_image": "Kopiera Bild",
"copy_link": "Kopiera länk",
- "copy_link_to_clipboard": "",
+ "copy_link_to_clipboard": "Kopiera länken till urklipp",
"copy_password": "Kopiera lösenord",
- "copy_to_clipboard": "",
+ "copy_to_clipboard": "Kopiera till Urklipp",
"country": "Land",
- "cover": "",
- "covers": "",
+ "cover": "Fyll",
+ "covers": "Omslag",
"create": "Skapa",
"create_album": "Skapa album",
"create_library": "Skapa Bibliotek",
"create_link": "Skapa länk",
"create_link_to_share": "Skapa länk att dela",
- "create_new_person": "",
+ "create_link_to_share_description": "Låt alla med länken se de valda fotona",
+ "create_new_person": "Skapa ny person",
+ "create_new_person_hint": "Tilldela valda objekt till en ny person",
"create_new_user": "Skapa en ny användare",
+ "create_tag": "Skapa tagg",
+ "create_tag_description": "Skapa en ny tagg. För kapslade taggar anger du hela sökvägen för taggen inklusive snedstreck.",
"create_user": "Skapa användare",
- "created": "",
- "current_device": "",
- "custom_locale": "",
- "custom_locale_description": "",
- "dark": "",
- "date_after": "",
+ "created": "Skapad",
+ "current_device": "Aktuell enhet",
+ "custom_locale": "Anpassad plats",
+ "custom_locale_description": "Formatera datum och siffror baserat på språket och regionen",
+ "dark": "Mörk",
+ "date_after": "Datum efter",
"date_and_time": "Datum och Tid",
- "date_before": "",
+ "date_before": "Datum före",
+ "date_of_birth_saved": "Födelsedatumet har sparats",
"date_range": "Datumintervall",
"day": "Dag",
- "default_locale": "",
- "default_locale_description": "",
+ "deduplicate_all": "Deduplicera alla",
+ "default_locale": "Standardplats",
+ "default_locale_description": "Formatera datum och siffror baserat på din webbläsares lokalitet",
"delete": "Radera",
"delete_album": "Ta bort album",
- "delete_key": "",
+ "delete_api_key_prompt": "Är du säker på att du vill ta bort denna API-nyckel?",
+ "delete_duplicates_confirmation": "Är du säker på att du vill ta bort dessa dubbletter permanent?",
+ "delete_key": "Ta bort nyckel",
"delete_library": "Ta bort bibliotek",
"delete_link": "Ta bort länk",
+ "delete_others": "Radera fler",
"delete_shared_link": "Ta bort delad länk",
+ "delete_tag": "Ta bort tagg",
+ "delete_tag_confirmation_prompt": "Är du säker på att du vill ta bort {tagName}-taggen?",
"delete_user": "Ta bort användare",
"deleted_shared_link": "Ta bort delad länk",
+ "deletes_missing_assets": "Tar bort objekt som saknas från disken",
"description": "Beskrivning",
"details": "Detaljer",
"direction": "Riktning",
- "disallow_edits": "",
+ "disabled": "Inaktiverad",
+ "disallow_edits": "Tillåt inte redigeringar",
+ "discord": "Discord",
"discover": "Upptäck",
- "dismiss_all_errors": "",
- "dismiss_error": "",
+ "dismiss_all_errors": "Avvisa alla fel",
+ "dismiss_error": "Avvisa fel",
"display_options": "Visningsalternativ",
- "display_order": "",
+ "display_order": "Visa Ordning",
"display_original_photos": "Visa originalfoton",
- "display_original_photos_setting_description": "",
+ "display_original_photos_setting_description": "Föredrar att visa originalfotot när du visar en tillgång snarare än miniatyrbilder när den ursprungliga tillgången är webbkompatibel. Detta kan resultera i långsammare bildvisningshastigheter.",
"do_not_show_again": "Visa inte det här meddelandet igen",
+ "documentation": "Dokumentation",
"done": "Klart",
"download": "Ladda ner",
+ "download_include_embedded_motion_videos": "Inbäddade videor",
+ "download_include_embedded_motion_videos_description": "Inkludera videor inbäddade i rörliga bilder som en separat fil",
+ "download_settings": "Ladda ner",
+ "download_settings_description": "Hantera inställningar relaterade till nedladdning av objekt",
"downloading": "Laddar ner",
+ "downloading_asset_filename": "Laddar ned objekt {filename}",
+ "drop_files_to_upload": "Släpp filer var som helst för att ladda upp",
+ "duplicates": "Dubletter",
+ "duplicates_description": "Lös varje grupp genom att ange vilka, om några, är dubbletter",
"duration": "Varaktighet",
- "durations": {
- "days": "",
- "hours": "",
- "minutes": "",
- "months": "",
- "years": ""
- },
+ "edit": "Redigera",
"edit_album": "Redigera album",
"edit_avatar": "Redigera avatar",
"edit_date": "Redigera datum",
"edit_date_and_time": "Redigera datum och tid",
- "edit_exclusion_pattern": "",
+ "edit_exclusion_pattern": "Redigera uteslutningsmönster",
"edit_faces": "Redigera ansikten",
"edit_import_path": "Redigera importsökvägar",
- "edit_import_paths": "",
- "edit_key": "",
+ "edit_import_paths": "Redigera importsökvägar",
+ "edit_key": "Redigera nyckel",
"edit_link": "Redigera länk",
"edit_location": "Redigera plats",
"edit_name": "Redigera namn",
"edit_people": "Redigera personer",
- "edit_title": "",
+ "edit_tag": "Redigera tagg",
+ "edit_title": "Redigera titel",
"edit_user": "Redigera användare",
"edited": "Redigerad",
- "editor": "",
+ "editor": "Redigerare",
+ "editor_close_without_save_prompt": "Ändringarna kommer inte att sparas",
+ "editor_close_without_save_title": "Stäng redigeraren?",
+ "editor_crop_tool_h2_aspect_ratios": "Bildförhållande",
+ "editor_crop_tool_h2_rotation": "Rotation",
"email": "Epost",
- "empty": "",
- "empty_album": "",
"empty_trash": "Töm papperskorg",
- "enable": "",
- "enabled": "",
+ "empty_trash_confirmation": "Är du säker på att du vill tömma papperskorgen? Detta tar bort alla objekt i papperskorgen permanent från Immich.\nDu kan inte ångra den här åtgärden!",
+ "enable": "Aktivera",
+ "enabled": "Aktiverad",
"end_date": "Slutdatum",
"error": "Fel",
"error_loading_image": "Fel vid bildladdning",
+ "error_title": "Fel – något gick fel",
"errors": {
- "unable_to_add_album_users": "Kunde inte lägga till albumanvändare",
+ "cannot_navigate_next_asset": "Det går inte att navigera till nästa objekt",
+ "cannot_navigate_previous_asset": "Det går inte att navigera till föregående objekt",
+ "cant_apply_changes": "Det går inte att tillämpa ändringar",
+ "cant_change_activity": "Kan inte {enabled, select, true {disable} other {enable}} aktivitet",
+ "cant_change_asset_favorite": "Det går inte att byta favorit mot objekt",
+ "cant_change_metadata_assets_count": "Det går inte att ändra metadata för {count, plural, one {# asset} other {# assets}}",
+ "cant_get_faces": "Kan inte få ansikten",
+ "cant_get_number_of_comments": "Kan inte få antal kommentarer",
+ "cant_search_people": "Kan inte söka efter personer",
+ "cant_search_places": "Kan inte söka platser",
+ "cleared_jobs": "Raderade jobb för: {job}",
+ "error_adding_assets_to_album": "Det gick inte att lägga till objekt i albumet",
+ "error_adding_users_to_album": "Det gick inte att lägga till användare till albumet",
+ "error_deleting_shared_user": "Det gick inte att ta bort delad användare",
+ "error_downloading": "Fel vid nedladdning av {filename}",
+ "error_hiding_buy_button": "Det gick inte att dölja köpknappen",
+ "error_removing_assets_from_album": "Det gick inte att ta bort objekt från albumet, kontrollera konsolen för mer information",
+ "error_selecting_all_assets": "Fel vid val av alla objekt",
+ "exclusion_pattern_already_exists": "Detta uteslutningsmönster finns redan.",
+ "failed_job_command": "Kommandot {command} misslyckades för jobbet: {job}",
+ "failed_to_create_album": "Det gick inte att skapa album",
+ "failed_to_create_shared_link": "Det gick inte att skapa delad länk",
+ "failed_to_edit_shared_link": "Det gick inte att redigera delad länk",
+ "failed_to_get_people": "Det gick inte att hämta personer",
+ "failed_to_keep_this_delete_others": "Misslyckades att behålla detta objekt radera övriga objekt",
+ "failed_to_load_asset": "Det gick inte att ladda objekt",
+ "failed_to_load_assets": "Det gick inte att ladda objekten",
+ "failed_to_load_people": "Det gick inte att ladda personer",
+ "failed_to_remove_product_key": "Det gick inte att ta bort produktnyckeln",
+ "failed_to_stack_assets": "Det gick inte att stapla objekt",
+ "failed_to_unstack_assets": "Det gick inte att avstapla objekt",
+ "import_path_already_exists": "Denna importsökväg finns redan.",
+ "incorrect_email_or_password": "Felaktig e-postadress eller lösenord",
+ "paths_validation_failed": "{paths, plural, one {# path} other {# paths}} misslyckades valideringen",
+ "profile_picture_transparent_pixels": "Profilbilder kan inte ha genomskinliga pixlar. Zooma in och/eller flytta bilden.",
+ "quota_higher_than_disk_size": "Du har angett en kvot som är högre än diskstorleken",
+ "repair_unable_to_check_items": "Det går inte att kontrollera {count, select, one {item} other {items}}",
+ "unable_to_add_album_users": "Kunde inte lägga till använder i album",
+ "unable_to_add_assets_to_shared_link": "Det går inte att lägga till objekt till delad länk",
"unable_to_add_comment": "Kunde inte lägga till kommentar",
+ "unable_to_add_exclusion_pattern": "Det gick inte att lägga till uteslutningsmönster",
+ "unable_to_add_import_path": "Det gick inte att lägga till importsökväg",
"unable_to_add_partners": "Kunde inte lägga till partners",
+ "unable_to_add_remove_archive": "Det går inte att {archived, select, true {remove asset from} other {add asset to}} arkiv",
+ "unable_to_add_remove_favorites": "Det går inte att {favorite, select, true {add asset to} other {remove asset from}} favoriter",
+ "unable_to_archive_unarchive": "Det går inte att {archived, select, true {archive} other {archive}}",
"unable_to_change_album_user_role": "Kunde inte ändra albumanvändarens roll",
"unable_to_change_date": "Kunde inte ändra datum",
+ "unable_to_change_favorite": "Det går inte att ändra favorit för objekt",
"unable_to_change_location": "Kunde inte ändra plats",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
- "unable_to_create_admin_account": "",
+ "unable_to_change_password": "Det går inte att ändra lösenord",
+ "unable_to_change_visibility": "Det gick inte att ändra synligheten för {count, plural, one {# person} other {# people}}",
+ "unable_to_complete_oauth_login": "Det gick inte att slutföra OAuth-inloggning",
+ "unable_to_connect": "Det går inte att ansluta",
+ "unable_to_connect_to_server": "Det går inte att ansluta till servern",
+ "unable_to_copy_to_clipboard": "Kan inte kopiera till urklipp, se till att du kommer åt sidan via https",
+ "unable_to_create_admin_account": "Det gick inte att skapa ett administratörskonto",
+ "unable_to_create_api_key": "Det gick inte att skapa en ny API-nyckel",
"unable_to_create_library": "Kunde inte skapa bibliotek",
"unable_to_create_user": "Kunde inte skapa användare",
"unable_to_delete_album": "Kunde inte ta bort album",
- "unable_to_delete_asset": "",
+ "unable_to_delete_asset": "Det gick inte att ta bort objekt",
+ "unable_to_delete_assets": "Det gick inte att ta bort objekt",
+ "unable_to_delete_exclusion_pattern": "Det gick inte att ta bort uteslutningsmönster",
+ "unable_to_delete_import_path": "Det gick inte att ta bort importsökvägen",
+ "unable_to_delete_shared_link": "Det gick inte att ta bort delad länk",
"unable_to_delete_user": "Kunde inte ta bort användare",
+ "unable_to_download_files": "Det går inte att ladda ner filer",
+ "unable_to_edit_exclusion_pattern": "Det gick inte att redigera uteslutningsmönster",
+ "unable_to_edit_import_path": "Det gick inte att redigera importsökvägen",
"unable_to_empty_trash": "Kunde inte tömma papperskorgen",
"unable_to_enter_fullscreen": "Kunde inte växla till fullskärm",
"unable_to_exit_fullscreen": "Kunde inte avsluta fullskärm",
- "unable_to_hide_person": "",
- "unable_to_load_album": "",
- "unable_to_load_asset_activity": "",
- "unable_to_load_items": "",
- "unable_to_load_liked_status": "",
+ "unable_to_get_comments_number": "Det gick inte att hämta antalet kommentarer",
+ "unable_to_get_shared_link": "Det gick inte att hämta delad länk",
+ "unable_to_hide_person": "Det går inte att dölja personen",
+ "unable_to_link_motion_video": "Det går inte att länka rörlig video",
+ "unable_to_link_oauth_account": "Det gick inte att länka OAuth-kontot",
+ "unable_to_load_album": "Det gick inte att ladda albumet",
+ "unable_to_load_asset_activity": "Det går inte att läsa in tillgångsaktivitet",
+ "unable_to_load_items": "Kunde inte ladda objekt",
+ "unable_to_load_liked_status": "kunde inte ladda gillade status",
+ "unable_to_log_out_all_devices": "Det gick inte att logga ut alla enheter",
+ "unable_to_log_out_device": "Det gick inte att logga ut enheten",
+ "unable_to_login_with_oauth": "Det gick inte att logga in med OAuth",
"unable_to_play_video": "Kunde inte spela upp video",
- "unable_to_refresh_user": "",
- "unable_to_remove_album_users": "",
- "unable_to_remove_comment": "",
+ "unable_to_reassign_assets_existing_person": "Det går inte att tilldela om tillgångar till {name, select, null {an existing person} other {{name}}}",
+ "unable_to_reassign_assets_new_person": "Kunde inte tilldela objekt till en annan person",
+ "unable_to_refresh_user": "Kunde inte ladda om användaren",
+ "unable_to_remove_album_users": "Kunde inte ta bort personen från albumet",
+ "unable_to_remove_api_key": "Det gick inte att ta bort API Keyet",
+ "unable_to_remove_assets_from_shared_link": "Kunde inte ta bort objekt från delade länkar",
+ "unable_to_remove_deleted_assets": "Kunde inte ta bort offline filer",
"unable_to_remove_library": "Kunde inte ta bort bibliotek",
"unable_to_remove_partner": "Kunde inte ta bort partner",
"unable_to_remove_reaction": "Kunde inte ta bort reaktion",
- "unable_to_remove_user": "",
- "unable_to_repair_items": "",
+ "unable_to_repair_items": "kunde inte reparera objekt",
"unable_to_reset_password": "Kunde inte återställa lösenord",
- "unable_to_resolve_duplicate": "",
- "unable_to_restore_assets": "",
- "unable_to_restore_trash": "",
+ "unable_to_resolve_duplicate": "Det går inte att lösa dubbletter",
+ "unable_to_restore_assets": "Det går inte att återställa tillgångar",
+ "unable_to_restore_trash": "Det gick inte att återställa papperskorgen",
"unable_to_restore_user": "Kunde inte återställa användare",
"unable_to_save_album": "Kunde inte spara album",
+ "unable_to_save_api_key": "Det går inte att spara API Nyckel",
+ "unable_to_save_date_of_birth": "Det går inte att spara födelsedatum",
"unable_to_save_name": "Kunde inte spara namn",
"unable_to_save_profile": "Kunde inte spara profil",
"unable_to_save_settings": "Kunde inte spara inställningar",
- "unable_to_scan_libraries": "",
- "unable_to_scan_library": "",
- "unable_to_set_profile_picture": "",
- "unable_to_submit_job": "",
- "unable_to_trash_asset": "",
- "unable_to_unlink_account": "",
+ "unable_to_scan_libraries": "Det går inte att söka igenom bibliotek",
+ "unable_to_scan_library": "Det går inte att skanna biblioteket",
+ "unable_to_set_feature_photo": "Det går inte att ställa in funktionsfoto",
+ "unable_to_set_profile_picture": "Det går inte att ställa in profilbilden",
+ "unable_to_submit_job": "Det går inte att skicka jobbet",
+ "unable_to_trash_asset": "Det går inte att slänga resursen",
+ "unable_to_unlink_account": "Det går inte att ta bort länken till kontot",
+ "unable_to_unlink_motion_video": "Det går inte att ta bort länken till rörelsevideo",
+ "unable_to_update_album_cover": "Det går inte att uppdatera albumomslaget",
+ "unable_to_update_album_info": "Det går inte att uppdatera albuminformationen",
"unable_to_update_library": "Kunde inte uppdatera bibliotek",
"unable_to_update_location": "Kunde inte uppdatera plats",
"unable_to_update_settings": "Kunde inte uppdatera inställningar",
- "unable_to_update_user": "Kunde inte uppdatera användare"
+ "unable_to_update_timeline_display_status": "Det går inte att uppdatera visningsstatus för tidslinjen",
+ "unable_to_update_user": "Kunde inte uppdatera användare",
+ "unable_to_upload_file": "Det går inte att ladda upp filen"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
- "exit_slideshow": "",
- "expand_all": "",
+ "exif": "Exif",
+ "exit_slideshow": "Avsluta bildspel",
+ "expand_all": "Expandera alla",
"expire_after": "Går ut efter",
"expired": "Gått ut",
+ "expires_date": "Går ut {date}",
"explore": "Utforska",
+ "explorer": "Utforskare",
+ "export": "Exportera",
"export_as_json": "Exportera som JSON",
- "extension": "",
+ "extension": "Tillägg",
+ "external": "Externt",
"external_libraries": "Externa Bibliotek",
- "failed_to_get_people": "",
+ "face_unassigned": "Otilldelade",
+ "failed_to_load_assets": "Det gick inte att läsa in resurser",
"favorite": "Favorit",
- "favorite_or_unfavorite_photo": "",
+ "favorite_or_unfavorite_photo": "Favoritfoto eller icke-favoritfoto",
"favorites": "Favoriter",
- "feature": "",
- "feature_photo_updated": "",
- "featurecollection": "",
+ "feature_photo_updated": "Funktionsfoto uppdaterad",
+ "features": "Funktioner",
+ "features_setting_description": "Hantera appens funktioner",
"file_name": "Filnamn",
"file_name_or_extension": "Filnamn eller -tillägg",
"filename": "Filnamn",
- "files": "",
"filetype": "Filtyp",
"filter_people": "Filtrera personer",
- "fix_incorrect_match": "",
- "force_re-scan_library_files": "",
+ "find_them_fast": "Hitta dem snabbt efter namn med sök",
+ "fix_incorrect_match": "Fixa inkorrekt matchning",
+ "folders": "Mappar",
+ "folders_feature_description": "Bläddra i mappvyn för foton och videoklipp i filsystemet",
"forward": "Framåt",
- "general": "",
- "get_help": "",
- "getting_started": "",
+ "general": "Allmänt",
+ "get_help": "Få hjälp",
+ "getting_started": "Komma igång",
"go_back": "Gå tillbaka",
"go_to_search": "Gå till sök",
- "go_to_share_page": "",
- "group_albums_by": "",
- "has_quota": "",
+ "group_albums_by": "Gruppera album efter...",
+ "group_no": "Ingen gruppering",
+ "group_owner": "Grupper efter ägare",
+ "group_year": "Gruppera efter årtal",
+ "has_quota": "Har kvot",
+ "hi_user": "Hej {name} ({email})",
+ "hide_all_people": "Göm alla personer",
"hide_gallery": "Dölj galleri",
+ "hide_named_person": "Göm personen {name}",
"hide_password": "Dölj lösenord",
"hide_person": "Dölj person",
+ "hide_unnamed_people": "Göm personer utan namn",
"host": "Värd",
"hour": "Timme",
"image": "Bild",
- "img": "",
+ "image_alt_text_date": "{isVideo, select, true {Video} other {Image}} tagen {date}",
+ "image_alt_text_date_1_person": "{isVideo, select, true {Video} other {Image}} tagen med {person1} den {date}",
+ "image_alt_text_date_2_people": "{isVideo, select, true {Video} other {Image}} tagen med {person1} och {person2} den {date}",
+ "image_alt_text_date_3_people": "{isVideo, select, true {Video} other {Image}} tagen med {person1}, {person2}, och {person3} den {date}",
+ "image_alt_text_date_4_or_more_people": "{isVideo, select, true {Video} other {Image}} tagen med {person1}, {person2}, och {additionalCount, number} andra den {date}",
+ "image_alt_text_date_place": "{isVideo, select, true {Video} other {Image}} tagen i {city}, {country} den {date}",
+ "image_alt_text_date_place_1_person": "{isVideo, select, true {Video} other {Image}} tagen i {city}, {country} med {person1} den {date}",
+ "image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Image}} tagen i {city}, {country} med {person1} och {person2} den {date}",
+ "image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Image}} tagen i {city}, {country} med {person1}, {person2}, och {person3} den {date}",
+ "image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Image}} tagen i {city}, {country} med {person1}, {person2}, och {additionalCount, number} andre den {date}",
"immich_logo": "Immich Logo",
+ "immich_web_interface": "Immich Web gränssnitt",
"import_from_json": "Importera från JSON",
"import_path": "Importsökväg",
- "in_archive": "",
+ "in_albums": "I {count, plural, one {# album} other {# albums}}",
+ "in_archive": "I arkivet",
"include_archived": "Inkludera arkiverade",
"include_shared_albums": "Inkludera delade album",
- "include_shared_partner_assets": "",
- "individual_share": "",
- "info": "",
+ "include_shared_partner_assets": "Inkludera delade partners tillgångar",
+ "individual_share": "Enskild delning",
+ "info": "Information",
"interval": {
- "day_at_onepm": "",
- "hours": "",
- "night_at_midnight": "",
- "night_at_twoam": ""
+ "day_at_onepm": "Alla dagar vid kl 13.00",
+ "hours": "Vid varje {hours, plural, one {hour} other {{hours, number} hours}}",
+ "night_at_midnight": "Varje natt vid midnatt.",
+ "night_at_twoam": "Varje natt vid kl 02.00"
},
- "invite_people": "",
+ "invite_people": "Bjud in personer",
"invite_to_album": "Bjuder in till album",
- "job_settings_description": "",
+ "items_count": "{count, plural, one {# item} other {# items}}",
"jobs": "Jobb",
- "keep": "",
- "keyboard_shortcuts": "",
- "language": "",
- "language_setting_description": "",
- "last_seen": "",
- "leave": "",
+ "keep": "Behåll",
+ "keep_all": "Behåll alla",
+ "keep_this_delete_others": "Behåll denna, radera övriga",
+ "kept_this_deleted_others": "Behåll denna tillgång och borttagna {count, plural, one {# asset} other {# assets}}",
+ "keyboard_shortcuts": "Kortkommandon",
+ "language": "Språk",
+ "language_setting_description": "Välj önskat språk",
+ "last_seen": "Senast sedd",
+ "latest_version": "Senaste versionen",
+ "latitude": "Latitud",
+ "leave": "Lämna",
"let_others_respond": "Låt andra svara",
- "level": "",
+ "level": "Nivå",
"library": "Bibliotek",
- "library_options": "",
- "light": "",
- "link_options": "",
- "link_to_oauth": "",
- "linked_oauth_account": "",
- "list": "",
- "loading": "",
- "loading_search_results_failed": "",
+ "library_options": "Nivå alternativ",
+ "light": "Ljus",
+ "like_deleted": "Gilla borttagen",
+ "link_motion_video": "Länka rörlig video",
+ "link_options": "Alternativ för länk",
+ "link_to_oauth": "Länk till OAuth",
+ "linked_oauth_account": "Länkat OAuth konto",
+ "list": "Lista",
+ "loading": "Laddar",
+ "loading_search_results_failed": "Det gick inte att läsa in sökresultat",
"log_out": "Logga ut",
- "log_out_all_devices": "",
- "login_has_been_disabled": "",
- "look": "",
- "loop_videos": "",
+ "log_out_all_devices": "Logga ut alla enheter",
+ "logged_out_all_devices": "Loggat ut från alla enheter",
+ "logged_out_device": "Loggat ut enheten",
+ "login": "Logga in",
+ "login_has_been_disabled": "Inloggning har blivit inaktiverat.",
+ "logout_all_device_confirmation": "Är du säker på att du vill logga ut från alla enheter?",
+ "logout_this_device_confirmation": "Är du säker på att du vill logga ut från denna enhet?",
+ "longitude": "Longitud",
+ "look": "Titta",
+ "loop_videos": "Loopa videor",
"loop_videos_description": "Aktivera för att automatiskt loopa en video i detaljvisaren.",
+ "main_branch_warning": "Du använder en utvecklingsversion. Vi rekommenderar starkt att du använder en utgiven version!",
"make": "Tillverkare",
"manage_shared_links": "Hantera Delade länkar",
- "manage_sharing_with_partners": "",
+ "manage_sharing_with_partners": "Hantera delning med partner",
"manage_the_app_settings": "",
"manage_your_account": "Hantera ditt konto",
"manage_your_api_keys": "",
@@ -671,7 +898,6 @@
"oldest_first": "",
"online": "",
"only_favorites": "",
- "only_refreshes_modified_files": "",
"open_the_search_filters": "",
"options": "Val",
"organize_your_library": "Organisera ditt bibliotek",
@@ -699,7 +925,6 @@
"pending": "",
"people": "Personer",
"people_sidebar_description": "",
- "perform_library_tasks": "",
"permanent_deletion_warning": "",
"permanent_deletion_warning_setting_description": "",
"permanently_delete": "",
@@ -714,7 +939,6 @@
"play_memories": "",
"play_motion_photo": "",
"play_or_pause_video": "",
- "point": "",
"port": "",
"preset": "",
"preview": "",
@@ -724,8 +948,6 @@
"primary": "",
"profile_picture_set": "",
"public_share": "",
- "range": "",
- "raw": "",
"reaction_options": "",
"read_changelog": "",
"recent": "",
@@ -734,10 +956,10 @@
"refreshed": "",
"refreshes_every_file": "",
"remove": "",
+ "remove_deleted_assets": "",
"remove_from_album": "Ta bort från album",
"remove_from_favorites": "",
"remove_from_shared_link": "",
- "remove_offline_files": "",
"repair": "",
"repair_no_results_message": "",
"replace_with_upload": "",
@@ -745,7 +967,6 @@
"reset": "",
"reset_password": "",
"reset_people_visibility": "",
- "reset_settings_to_default": "",
"restore": "Återställ",
"restore_user": "",
"retry_upload": "",
@@ -756,8 +977,6 @@
"saved_settings": "",
"say_something": "Säg något",
"scan_all_libraries": "Skanna alla bibliotek",
- "scan_all_library_files": "",
- "scan_new_library_files": "",
"scan_settings": "",
"search": "Sök",
"search_albums": "",
@@ -786,7 +1005,6 @@
"select_photos": "Välj foton",
"selected": "",
"send_message": "",
- "server": "Server",
"server_stats": "Serverstatistik",
"set": "",
"set_as_album_cover": "",
@@ -845,35 +1063,35 @@
"theme": "Tema",
"theme_selection": "Val av tema",
"theme_selection_description": "Ställ in temat automatiskt till ljust eller mörkt baserat på din webbläsares inställningar",
+ "they_will_be_merged_together": "De kommer att slås samman",
+ "third_party_resources": "Tredjepartsresurser",
"time_based_memories": "Tidsbaserade minnen",
"timezone": "Tidszon",
"to_archive": "Arkivera",
"to_change_password": "Ändra lösenord",
"to_favorite": "Favorit",
"to_login": "Logga in",
+ "to_trash": "Papperskorg",
"toggle_settings": "",
"toggle_theme": "Växla tema",
- "toggle_visibility": "Växla synlighet",
"total_usage": "Total användning",
"trash": "Papperskorg",
- "trash_all": "",
+ "trash_all": "Kasta alla",
"trash_no_results_message": "Borttagna foton och videor kommer att visas här.",
"trashed_items_will_be_permanently_deleted_after": "Objekt i papperskorgen raderas permanent efter {days, plural, one {# dag} other {# dagar}}.",
"type": "Typ",
"unarchive": "Ångra arkivering",
- "unarchived": "",
"unfavorite": "Avfavorisera",
"unhide_person": "",
"unknown": "Okänd",
- "unknown_album": "Okänt album",
"unknown_year": "Okänt år",
"unlimited": "Obegränsat",
- "unlink_oauth": "",
+ "unlink_oauth": "Ta bort länken till OAuth",
"unlinked_oauth_account": "",
"unsaved_change": "Osparade ändringar",
"unselect_all": "",
"unstack": "Stapla Av",
- "up_next": "",
+ "up_next": "Nästa",
"updated_password": "Lösenordet har uppdaterats",
"upload": "Ladda upp",
"upload_concurrency": "",
@@ -886,6 +1104,8 @@
"user_purchase_settings": "Köp",
"user_purchase_settings_description": "Hantera dina köp",
"user_usage_detail": "",
+ "user_usage_stats": "Kontoinformation - statistik",
+ "user_usage_stats_description": "Se statistik - kontoanvändande",
"username": "Användarnamn",
"users": "Användare",
"utilities": "Verktyg",
@@ -901,10 +1121,10 @@
"view_album": "Visa Album",
"view_all": "Visa alla",
"view_all_users": "Visa alla användare",
+ "view_in_timeline": "Visa i tidslinjen",
"view_links": "Visa länkar",
"view_next_asset": "Visa nästa objekt",
"view_previous_asset": "Visa föregående objekt",
- "viewer": "",
"waiting": "Väntar",
"warning": "Varning",
"week": "Vecka",
diff --git a/web/src/lib/i18n/ta.json b/i18n/ta.json
similarity index 96%
rename from web/src/lib/i18n/ta.json
rename to i18n/ta.json
index ec3f27124b..8525308e33 100644
--- a/web/src/lib/i18n/ta.json
+++ b/i18n/ta.json
@@ -41,6 +41,7 @@
"confirm_email_below": "உறுதிப்படுத்த, கீழே \"{email}\" என தட்டச்சு செய்யவும்",
"confirm_reprocess_all_faces": "எல்லா முகங்களையும் மீண்டும் செயலாக்க விரும்புகிறீர்களா? இது பெயரிடப்பட்ட நபர்களையும் அழிக்கும்.",
"confirm_user_password_reset": "{user} இன் கடவுச்சொல்லை நிச்சயமாக மீட்டமைக்க விரும்புகிறீர்களா?",
+ "create_job": "வேலையை உருவாக்கு",
"disable_login": "உள்நுழைவை முடக்கு",
"duplicate_detection_job_description": "ஒத்த படங்களைக் கண்டறிய, சொத்துக்களில் இயந்திரக் கற்றலை இயக்கவும். ஸ்மார்ட் தேடலை நம்பியுள்ளது",
"exclusion_pattern_description": "உங்கள் நூலகத்தை ஸ்கேன் செய்யும் போது கோப்புகளையும் கோப்புறைகளையும் புறக்கணிக்க விலக்கு வடிவங்கள் உங்களை அனுமதிக்கின்றன. RAW கோப்புகள் போன்ற நீங்கள் இறக்குமதி செய்ய விரும்பாத கோப்புகளைக் கொண்ட கோப்புறைகள் உங்களிடம் இருந்தால் இது பயனுள்ளதாக இருக்கும்.",
@@ -55,18 +56,11 @@
"image_format_description": "WebP, JPEG ஐ விட சிறிய கோப்புகளை உருவாக்குகிறது, ஆனால் குறியாக்கம் செய்ய மெதுவாக உள்ளது.",
"image_prefer_embedded_preview": "உட்பொதிந்த படத்தை முன்னிடு",
"image_prefer_embedded_preview_setting_description": "",
- "image_prefer_wide_gamut": "",
+ "image_prefer_wide_gamut": "அகன்ற வண்ணவரம்பு தேர்வு",
"image_prefer_wide_gamut_setting_description": "",
- "image_preview_format": "",
- "image_preview_resolution": "",
- "image_preview_resolution_description": "",
"image_quality": "தரம்",
- "image_quality_description": "படத்தின் தரம் 1-100 வரை. உயர்வானது தரத்திற்கு சிறந்தது, ஆனால் பெரிய கோப்புகளை உருவாக்குகிறது, இந்த விருப்பம் முன்னோட்டம் மற்றும் சிறுபடங்களைப் பாதிக்கிறது.",
"image_settings": "பட அமைப்புகள்",
"image_settings_description": "உருவாக்கப்பட்ட படங்களின் தரம் மற்றும் தெளிவுத்திறனை நிர்வகிக்கவும்",
- "image_thumbnail_format": "சிறுபட வடிவம்",
- "image_thumbnail_resolution": "",
- "image_thumbnail_resolution_description": "",
"job_concurrency": "{job} ஒத்திசைவு",
"job_not_concurrency_safe": "இந்த வேலை ஒரே நேரத்தில் பாதுகாப்பானது அல்ல.",
"job_settings": "",
@@ -75,9 +69,6 @@
"jobs_delayed": "",
"jobs_failed": "",
"library_created": "உருவாக்கப்பட்ட புகைப்பட நூலகம்: {library}",
- "library_cron_expression": "கிரான் வடிவம்",
- "library_cron_expression_description": "கிரான் வடிவமைப்பைப் பயன்படுத்தி ஸ்கேனிங் இடைவெளியை அமைக்கவும். மேலும் தகவலுக்கு, எ.கா. Crontab Guru",
- "library_cron_expression_presets": "கிரான் வடிவமைப்பு முன்னமைவுகள்",
"library_deleted": "புகைப்பட நூலகம் நீக்கப்பட்டது",
"library_import_path_description": "இறக்குமதி செய்ய ஒரு கோப்புறையைக் குறிப்பிடவும். துணைக் கோப்புறைகள் உட்பட இந்தக் கோப்புறை படங்கள் மற்றும் வீடியோக்களுக்காக ஸ்கேன் செய்யப்படும்.",
"library_scanning": "அவ்வப்போது ஸ்கேனிங்",
@@ -143,7 +134,7 @@
"note_cannot_be_changed_later": "குறிப்பு: இதை பின்னர் மாற்ற முடியாது!",
"note_unlimited_quota": "குறிப்பு: வரம்பற்ற ஒதுக்கீட்டிற்கு 0 ஐ உள்ளிடவும்",
"notification_email_from_address": "முகவரியிலிருந்து",
- "notification_email_from_address_description": "அனுப்புநரின் மின்னஞ்சல் முகவரி, எடுத்துக்காட்டாக: \"இம்மிச் புகைப்பட சேவையகம் {label} kullanıcını dosyaları için kullanılan alt klasördür",
"system_settings": "Sistem Ayarları",
+ "tag_cleanup_job": "Etiket temizleme",
+ "template_email_available_tags": "Şablonunuzda şu değişkenler kullanılabilir: {tags}",
+ "template_email_if_empty": "Şablon boş ise, varsayılan e-posta kullanılacak.",
+ "template_email_preview": "Ön izleme",
+ "template_email_settings": "Eposta Taslakları",
+ "template_email_settings_description": "Özel e-posta bildirim şablonlarını yönet",
+ "template_email_update_album": "Albüm Şablonunu Güncelle",
+ "template_settings": "Bildirim Şablonları",
+ "template_settings_description": "Bildirim şablonlarını yönet.",
"theme_custom_css_settings": "Özel CSS",
"theme_custom_css_settings_description": "CSS (Cascading Style Sheets) kullanılarak Immich'in tasarımı değiştirilebilir.",
"theme_settings": "Tema ayarları",
@@ -269,7 +290,7 @@
"transcoding_hardware_acceleration": "Donanım Hızlandırma",
"transcoding_hardware_acceleration_description": "Deneysel; daha hızlı, fakat aynı bitrate ayarlarında daha düşük kaliteye sahip",
"transcoding_hardware_decoding": "Donanım çözücü",
- "transcoding_hardware_decoding_setting_description": "Sadece NVENC, QSV ve RKMPP için geçerli. Sadece işlemeyi hızlandırmak yerine uçtan uca hızlandırmayı etkinleştirir. Tüm videolarda çalışmayabilir.",
+ "transcoding_hardware_decoding_setting_description": "Uçtan uca hızlandırmayı, sadece kodlamayı hızlandırmanın yerine etkinleştirir. Tüm videolarda çalışmayabilir.",
"transcoding_hevc_codec": "HEVC kodek",
"transcoding_max_b_frames": "Maksimum B-kareler",
"transcoding_max_b_frames_description": "Daha yüksek değerler sıkıştırma verimliliğini artırır, ancak kodlamayı yavaşlatır. Eski cihazlarda donanım hızlandırma ile uyumlu olmayabilir. 0, B-çerçevelerini devre dışı bırakır, -1 ise bu değeri otomatik olarak ayarlar.",
@@ -280,7 +301,7 @@
"transcoding_optimal_description": "Hedef çözünürlükten yüksek veya kabul edilen formatta olmayan videolar",
"transcoding_preferred_hardware_device": "Tercih edilen donanım cihazı",
"transcoding_preferred_hardware_device_description": "Sadece VAAPI ve QSV için uygulanır. Donanım kod çevrimi için DRI Node ayarlar.",
- "transcoding_preset_preset": "",
+ "transcoding_preset_preset": "Ön ayar (-ön)",
"transcoding_preset_preset_description": "Sıkıştırma hızı. Daha yavaş olan ayarlar belirli bitrate ayarları için daha küçük ve daha kaliteli dosya üretir. VP9 ayarı 'daha hızlı' ayarının üstündeki ayarları görmezden gelir.",
"transcoding_reference_frames": "Referans kareler",
"transcoding_reference_frames_description": "Belirli bir kareyi sıkıştırırken referans alınacak kare sayısı. Daha yüksek değerler sıkıştırma verimliliğini artırır, ancak kodlamayı yavaşlatır. 0 bu değeri otomatik olarak ayarlar.",
@@ -289,15 +310,13 @@
"transcoding_settings_description": "Video dosyalarının çözünürlük ve kodlama bilgilerini yönetir",
"transcoding_target_resolution": "Hedef çözünürlük",
"transcoding_target_resolution_description": "Daha yüksek çözünürlükler daha fazla detayı koruyabilir fakat işlemesi daha uzun sürer, dosya boyutu daha yüksek olur ve uygulamanın akıcılığını etkileyebilir.",
- "transcoding_temporal_aq": "",
+ "transcoding_temporal_aq": "Zamansal AQ",
"transcoding_temporal_aq_description": "Sadece NVENC için geçerlidir. Yüksek-detayların ve düşük-hareket sahnelerin kalitesini arttır. Eski cihazlarla uyumlu olmayabilir.",
"transcoding_threads": "İş Parçacıkları",
"transcoding_threads_description": "Daha yüksek değerler daha hızlı kodlamaya yol açar, ancak sunucunun etkin durumdayken diğer görevleri işlemesi için daha az alan bırakır. Bu değer İşlemci çekirdeği sayısından fazla olmamalıdır. 0'a ayarlanırsa kullanımı en üst düzeye çıkarır.",
"transcoding_tone_mapping": "Ton-haritalama",
"transcoding_tone_mapping_description": "HDR videoların SDR'ye dönüştürülürken görünümünü korumayı amaçlar. Her algoritma renk, detay ve parlaklık için farklı dengeleme yapar. Hable detayları korur, Mobius renkleri korur ve Reinhard parlaklığı korur.",
- "transcoding_tone_mapping_npl": "",
- "transcoding_tone_mapping_npl_description": "Renkler, bu parlaklıkta bir ekran için normal görünecek şekilde ayarlanacaktır. Karşıt olarak, daha düşük değerler videonun parlaklığını artırır ve tersi de geçerlidir çünkü ekranın parlaklığını telafi eder. 0 bu değeri otomatik olarak ayarlar.",
- "transcoding_transcode_policy": "Dönüştürme(çevirme) politikası",
+ "transcoding_transcode_policy": "Dönüştürme (çevirme) politikası",
"transcoding_transcode_policy_description": "Bir videonun ne zaman kod dönüştürülmesi gerektiğine ilişkin ilke. Dönüştürme devre dışı bırakılmadığı sürece HDR videolar her zaman dönüştürülür.",
"transcoding_two_pass_encoding": "İki geçişli kodlama",
"transcoding_two_pass_encoding_setting_description": "Daha iyi kodlanmış videolar üretmek için iki geçişte kod dönüştürün. Maksimum bit hızı etkinleştirildiğinde (H.264 ve HEVC ile çalışması için gereklidir), bu mod maksimum bit hızına dayalı bir bit hızı aralığı kullanır ve CRF'yi yok sayar. VP9 için, maksimum bit hızı devre dışı bırakılırsa CRF kullanılabilir.",
@@ -310,29 +329,34 @@
"trash_settings_description": "Çöp ayarlarını yönet",
"untracked_files": "İzlenmeyen dosyalar",
"untracked_files_description": "Bu dosyalar uygulama tarafından izlenmiyor. Yarıda kesilen yüklemeler veya uygulama hatası bunlara sebep olmuş olabilir",
+ "user_cleanup_job": "Kullanıcı temizleme",
"user_delete_delay": "{user} hesabı ve varlıkları {delay, plural, one {# day} other {# days}} gün içinde kalıcı olarak silinmek için planlandı.",
"user_delete_delay_settings": "Silme gecikmesi",
"user_delete_delay_settings_description": "Bir kullanıcının hesabını ve varlıklarını kalıcı olarak silmek için kaldırıldıktan sonra gereken gün sayısı. Kullanıcı silme işi, silinmeye hazır kullanıcıları kontrol etmek için gece yarısı çalışır. Bu ayardaki değişiklikler bir sonraki yürütmede değerlendirilecektir.",
- "user_delete_immediately": "{Kullanıcı}'nın hesabı ve varlıkları hemen kalıcı olarak silinmek üzere sıraya alınacak.",
- "user_delete_immediately_checkbox": "Kullanıcıyı ve tüm varlıklarını kalıcı olarak silmek için sıraya koy",
+ "user_delete_immediately": "{user}'in hesabı ve varlıkları hemen kalıcı olarak silinmek üzere sıraya alınacak.",
+ "user_delete_immediately_checkbox": "Kullanıcı ve varlıkları hemen silinmek üzere sıraya al",
"user_management": "Kullanıcı Yönetimi",
"user_password_has_been_reset": "Kullanıcının şifresi sıfırlandı:",
"user_password_reset_description": "Lütfen kullanıcıya geçici şifreyi sağlayın ve bir sonraki oturum açışında şifreyi değiştirmesi gerektiğini bildirin.",
"user_restore_description": "{user} kullanıcısı geri yüklenecek.",
- "user_restore_scheduled_removal": "Kullanıcıyı geri yükle - {tarih, tarih, uzun} tarihinde zamanlanmış kaldırma",
+ "user_restore_scheduled_removal": "Kullanıcıyı geri yükle - {date, date, long} tarihinde planlanan kaldırma",
"user_settings": "Kullanıcı Ayarları",
"user_settings_description": "Kullanıcı Ayarlarını Yönet",
"user_successfully_removed": "Kullanıcı {email} başarıyla kaldırıldı.",
"version_check_enabled_description": "Sürüm kontrolü etkin",
+ "version_check_implications": "Sürüm kontrol özelliği, github.com ile periyodik iletişime dayanır",
"version_check_settings": "Versiyon kontrolü",
"version_check_settings_description": "Yeni sürüm bildirimini etkinleştir/devre dışı bırak",
- "video_conversion_job": "",
+ "video_conversion_job": "Videoları dönüştür",
"video_conversion_job_description": "Tarayıcılar ve cihazlarla daha geniş uyumluluk için videoları dönüştür"
},
"admin_email": "Yönetici Emaili",
"admin_password": "Yönetici Şifresi",
"administration": "Yönetim",
"advanced": "Gelişmiş",
+ "age_months": "Yaş {months, plural, one {# ay} other {# ay}}",
+ "age_year_months": "1 yaş, {months, plural, one {# ay} other {# ay}}",
+ "age_years": "{years, plural, other {Yaş #}}",
"album_added": "Albüm eklendi",
"album_added_notification_setting_description": "Paylaşılan bir albüme eklendiğinizde email bildirimi alın",
"album_cover_updated": "Albüm Kapağı güncellendi",
@@ -352,7 +376,7 @@
"album_user_removed": "{user} kaldırıldı",
"album_with_link_access": "Link'e sahip olan herhangi bir kişinin bu albümdeki fotoğrafları ve kişileri görmesine izin ver.",
"albums": "Albümler",
- "albums_count": "",
+ "albums_count": "{count, plural, one {{count, number} Albüm} other {{count, number} Albüm}}",
"all": "Tümü",
"all_albums": "Tüm Albümler",
"all_people": "Tüm Kişiler",
@@ -367,12 +391,12 @@
"api_key_empty": "Apı Anahtarı isminiz boş olmamalı",
"api_keys": "API Anahtarları",
"app_settings": "Uygulama Ayarları",
- "appears_in": "",
+ "appears_in": "Şurada görünür",
"archive": "Arşiv",
"archive_or_unarchive_photo": "Fotoğrafı arşivle/arşivden çıkar",
"archive_size": "Arşiv boyutu",
"archive_size_description": "İndirmeler için arşiv boyutunu yapılandırın (GiB cinsinden)",
- "archived": "",
+ "archived_count": "{count, plural, other {# arşivlendi}}",
"are_these_the_same_person": "Bunlar aynı kişi mi?",
"are_you_sure_to_do_this": "Bunu yapmak istediğinize emin misiniz?",
"asset_added_to_album": "Albüme eklendi",
@@ -380,23 +404,38 @@
"asset_description_updated": "Varlık açıklaması güncellendi",
"asset_filename_is_offline": "Varlık {filename} çevrimdışı",
"asset_has_unassigned_faces": "Varlık, atanmamış yüzler içeriyor",
- "asset_offline": "Varlık çevrimdışı",
- "asset_offline_description": "Bu varlık çevrimdışı. Immich dosya konumuna erişemiyor. Lütfen varlığın kullanılabilir olduğundan emin olun ve ardından kitaplığı yeniden tarayın.",
+ "asset_hashing": "Karma (hashleme) oluşturuluyor...",
+ "asset_offline": "Varlık Çevrim Dışı",
+ "asset_offline_description": "Bu harici varlık artık diskte bulunmuyor. Yardım için lütfen Immich yöneticinizle iletişime geçin.",
"asset_skipped": "Atlandı",
+ "asset_skipped_in_trash": "Çöpte",
"asset_uploaded": "Yüklendi",
"asset_uploading": "Yükleniyor...",
"assets": "Varlıklar",
- "assets_restore_confirmation": "Çöpteki bütün varlıkları geri yüklemek istediğinize emin misiniz? Bu işlem geri alınamaz!",
+ "assets_added_count": "{count, plural, one {# varlık eklendi} other {# varlık eklendi}}",
+ "assets_added_to_album_count": "{count, plural, one {# varlık} other {# varlık}} albüme eklendi",
+ "assets_added_to_name_count": "{count, plural, one {# varlık} other {# varlık}} {hasName, select, true {{name}} other {yeni albüm}} içine eklendi",
+ "assets_count": "{count, plural, one {# varlık} other {# varlıklar}}",
+ "assets_moved_to_trash_count": "{count, plural, one {# varlık} other {# varlık}} çöpe taşındı",
+ "assets_permanently_deleted_count": "Kalıcı olarak silindi {count, plural, one {# varlık} other {# varlıklar}}",
+ "assets_removed_count": "Kaldırıldı {count, plural, one {# varlık} other {# varlıklar}}",
+ "assets_restore_confirmation": "Tüm çöp kutusundaki varlıklarınızı geri yüklemek istediğinizden emin misiniz? Bu işlemi geri alamazsınız! Ayrıca, çevrim dışı olan varlıkların bu şekilde geri yüklenemeyeceğini unutmayın.",
+ "assets_restored_count": "{count, plural, one {# varlık} other {# varlıklar}} geri yüklendi",
+ "assets_trashed_count": "{count, plural, one {# varlık} other {# varlıklar}} çöp kutusuna taşındı",
+ "assets_were_part_of_album_count": "{count, plural, one {Varlık zaten} other {Varlıklar zaten}} albümün parçasıydı",
"authorized_devices": "Yetki Verilmiş Cihazlar",
"back": "Geri",
- "back_close_deselect": "Geri, kapat, veya seçimi kaldır",
- "backward": "",
+ "back_close_deselect": "Geri, kapat veya seçimi kaldır",
+ "backward": "Geriye doğru",
"birthdate_saved": "Doğum günü başarılı bir şekilde kaydedildi",
"birthdate_set_description": "Doğum günü, fotoğraftaki insanın fotoğraf çekildiği zamandaki yaşının hesaplanması için kullanılır.",
"blurred_background": "Bulanık arkaplan",
- "bulk_delete_duplicates_confirmation": "Toplu olarak {sayım, çoğul, bir {# yinelenen varlık} diğer {# yinelenen varlıklar} 'ı silmek istediğinizden emin misiniz? Bu, her grubun en büyük varlığını tutacak ve diğer tüm kopyaları kalıcı olarak silecektir. Bu işlemi geri alamazsın!",
- "bulk_keep_duplicates_confirmation": "{sayım, çoğul, bir {# yinelenen varlık} diğer {# yinelenen varlıklar}}ı tutmak istediğinizden emin misiniz? Bu, hiçbir şeyi silmeden tüm yinelenen grupları çözecektir.",
- "bulk_trash_duplicates_confirmation": "Toplu olarak {say, çoğul, bir {# yinelenen varlık} diğer {# yinelenen varlıklar} öğesini çöpe atmak istediğinizden emin misiniz? Bu, her grubun en büyük varlığını tutacak ve diğer tüm kopyaları çöpe atacaktır.",
+ "bugs_and_feature_requests": "Hatalar ve Özellik Talepleri",
+ "build": "Yapı",
+ "build_image": "Görüntü Oluştur",
+ "bulk_delete_duplicates_confirmation": "Toplu olarak {count, plural, one {# kopya öğeyi} other {# kopya öğeleri}} silmek istediğinizden emin misiniz? Bu işlem, her gruptaki en büyük öğeyi tutacak ve diğer tüm kopyaları kalıcı olarak silecektir. Bu işlemi geri alamazsınız!",
+ "bulk_keep_duplicates_confirmation": "{count, plural, one {# kopya öğeyi} other {# kopya öğeleri}} tutmak istediğinizden emin misiniz? Bu işlem, hiçbir şeyi silmeden tüm kopya gruplarını çözecektir.",
+ "bulk_trash_duplicates_confirmation": "{count, plural, one {# kopya öğeyi} other {# kopya öğeleri}} toplu olarak çöp kutusuna taşımak istediğinizden emin misiniz? Bu işlem, her grubun en büyük öğesini tutacak ve diğer tüm kopyaları çöp kutusuna taşıyacaktır.",
"buy": "Immich'i Satın Alın",
"camera": "Kamera",
"camera_brand": "Kamera markası",
@@ -406,12 +445,8 @@
"cannot_merge_people": "Kişiler birleştirilemiyor",
"cannot_undo_this_action": "Bu işlem geri alınamaz!",
"cannot_update_the_description": "Açıklama güncellenemiyor",
- "cant_apply_changes": "",
- "cant_get_faces": "",
- "cant_search_people": "",
- "cant_search_places": "",
"change_date": "Tarihi değiştir",
- "change_expiration_time": "",
+ "change_expiration_time": "Son kullanma süresini değiştir",
"change_location": "Konumu değiştir",
"change_name": "İsim değiştir",
"change_name_successfully": "İsim başarıyla değiştirildi",
@@ -419,8 +454,8 @@
"change_password_description": "Bu ya sistemdeki ilk oturum açışınız ya da şifre değişikliği için bir talepte bulunuldu. Lütfen yeni şifreyi aşağıya yazınız.",
"change_your_password": "Şifreni değiştir",
"changed_visibility_successfully": "Görünürlük başarıyla değiştirildi",
- "check_all": "",
- "check_logs": "Logları Konrol et",
+ "check_all": "Tümünü Seç",
+ "check_logs": "Günlükleri Kontrol Et",
"choose_matching_people_to_merge": "Birleştirmek için eşleşen kişileri seçiniz",
"city": "Şehir",
"clear": "Temiz",
@@ -430,7 +465,8 @@
"clear_value": "Değeri Temizle",
"clockwise": "Saat yönü",
"close": "Kapat",
- "collapse_all": "",
+ "collapse": "Daralt",
+ "collapse_all": "Tümünü Daralt",
"color": "Renk",
"color_theme": "Renk teması",
"comment_deleted": "Yorum silindi",
@@ -440,9 +476,10 @@
"confirm": "Onayla",
"confirm_admin_password": "Yönetici Şifresini Onayla",
"confirm_delete_shared_link": "Bu paylaşılan bağlantıyı silmek istediğinizden emin misiniz?",
+ "confirm_keep_this_delete_others": "Yığındaki diğer tüm öğeler bu varlık haricinde silinecektir. Devam etmek istediğinizden emin misiniz?",
"confirm_password": "Şifreyi onayla",
- "contain": "",
- "context": "",
+ "contain": "İçermek",
+ "context": "Bağlam",
"continue": "Devam et",
"copied_image_to_clipboard": "Resim, panoya kopyalandı.",
"copied_to_clipboard": "Panoya kopyalandı!",
@@ -454,618 +491,848 @@
"copy_password": "Parolayı kopyala",
"copy_to_clipboard": "Panoya Kopyala",
"country": "Ülke",
- "cover": "",
- "covers": "",
+ "cover": "Kapla",
+ "covers": "Kaplar",
"create": "Oluştur",
"create_album": "Albüm oluştur",
"create_library": "Kütüphane Oluştur",
"create_link": "Link oluştur",
"create_link_to_share": "Paylaşmak için link oluştur",
+ "create_link_to_share_description": "Bağlantıya sahip olan herkesin seçilen fotoğrafları görmesine izin ver",
"create_new_person": "Yeni kişi oluştur",
"create_new_person_hint": "Seçili varlıkları yeni bir kişiye atayın",
"create_new_user": "Yeni kullanıcı oluştur",
"create_tag": "Etiket oluştur",
+ "create_tag_description": "Yeni bir etiket oluşturun. İç içe geçmiş etiketler için, etiketi tam yolu ve eğik çizgileri de dahil ederek giriniz.",
"create_user": "Kullanıcı oluştur",
"created": "Oluşturuldu",
- "current_device": "",
+ "current_device": "Mevcut cihaz",
"custom_locale": "Özel Yerel Ayar",
"custom_locale_description": "Tarihleri ve sayıları dile ve bölgeye göre biçimlendirin",
"dark": "Koyu",
- "date_after": "",
+ "date_after": "Sonraki tarih",
"date_and_time": "Tarih ve Zaman",
- "date_before": "",
+ "date_before": "Önceki tarih",
"date_of_birth_saved": "Doğum günü başarı ile kaydedildi",
"date_range": "Tarih aralığı",
"day": "Gün",
- "default_locale": "",
+ "deduplicate_all": "Tüm kopyaları kaldır",
+ "default_locale": "Varsayılan Yerel Ayar",
"default_locale_description": "Tarihleri ve sayıları tarayıcınızın yerel ayarına göre biçimlendirin",
"delete": "Sil",
"delete_album": "Albümü sil",
"delete_api_key_prompt": "Bu API anahtarını silmek istediğinizden emin misiniz?",
+ "delete_duplicates_confirmation": "Bu kopyaları kalıcı olarak silmek istediğinizden emin misiniz?",
"delete_key": "Anahtarı sil",
"delete_library": "Kütüphaneyi sil",
"delete_link": "Bağlantıyı sil",
+ "delete_others": "Diğerlerini sil",
"delete_shared_link": "Paylaşılmış linki sil",
"delete_tag": "Etiketi sil",
"delete_tag_confirmation_prompt": "{tagName} etiketini silmek istediğinizden emin misiniz?",
"delete_user": "Kullanıcıyı sil",
- "deleted_shared_link": "",
+ "deleted_shared_link": "Paylaşılan bağlantı silindi",
+ "deletes_missing_assets": "Diskte eksik olan varlıkları siler",
"description": "Açıklama",
"details": "Detaylar",
"direction": "Yön",
- "disabled": "",
- "disallow_edits": "",
+ "disabled": "Devre dışı bırakıldı",
+ "disallow_edits": "Değişikliklere izin verme",
+ "discord": "Discord",
"discover": "Keşfet",
"dismiss_all_errors": "Tüm hataları yoksay",
"dismiss_error": "Hatayı yoksay",
"display_options": "Görüntüleme seçenekleri",
- "display_order": "",
+ "display_order": "Gösterim sıralaması",
"display_original_photos": "Orijinal fotoğrafları göster",
- "display_original_photos_setting_description": "",
+ "display_original_photos_setting_description": "Orijinal varlık web uyumlu olduğunda, bir varlığı görüntülerken küçük resimler yerine orijinal fotoğrafı görüntülemeyi tercih edin. Bu, fotoğraf görüntüleme hızlarının yavaşlamasına neden olabilir.",
"do_not_show_again": "Bu mesajı bir daha gösterme",
- "done": "",
+ "documentation": "Dokümantasyon",
+ "done": "Bitti",
"download": "İndir",
+ "download_include_embedded_motion_videos": "Gömülü videolar",
+ "download_include_embedded_motion_videos_description": "Görsel hareketli fotoğraflarda yer alan gömülü videoları ayrı bir dosya olarak dahil et",
"download_settings": "İndir",
- "downloading": "",
- "duplicates": "",
+ "download_settings_description": "Varlık indirme ile ilgili ayarları yönetin",
+ "downloading": "İndiriliyor",
+ "downloading_asset_filename": "Varlık indiriliyor {filename}",
+ "drop_files_to_upload": "Dosyaları yüklemek için herhangi bir yere bırakın",
+ "duplicates": "Kopyalar",
+ "duplicates_description": "Her grubu çözmek için, varsa hangilerinin kopya olduğunu belirtin",
"duration": "Süre",
- "durations": {
- "days": "",
- "hours": "",
- "minutes": "",
- "months": "",
- "years": ""
- },
"edit": "Düzenle",
"edit_album": "Albümü düzenle",
- "edit_avatar": "",
- "edit_date": "",
- "edit_date_and_time": "",
- "edit_exclusion_pattern": "",
- "edit_faces": "",
- "edit_import_path": "",
- "edit_import_paths": "",
+ "edit_avatar": "Avatarı Düzenle",
+ "edit_date": "Tarihi Düzenle",
+ "edit_date_and_time": "Tarih ve zamanı düzenleyin",
+ "edit_exclusion_pattern": "Hariç tutma desenini düzenle",
+ "edit_faces": "Yüzleri Düzenleyin",
+ "edit_import_path": "İçe aktarma yolunu düzenleyin",
+ "edit_import_paths": "İçe Aktarma Yollarını Düzenle",
"edit_key": "Anahtarı düzenle",
"edit_link": "Bağlantıyı düzenle",
- "edit_location": "",
- "edit_name": "",
+ "edit_location": "Lokasyonu düzenleyin",
+ "edit_name": "İsmi düzenleyin",
"edit_people": "Kişileri düzenle",
"edit_tag": "Etiketi düzenle",
"edit_title": "Başlığı düzenle",
"edit_user": "Kullanıcıyı düzenle",
- "edited": "",
- "editor": "",
+ "edited": "Düzenlendi",
+ "editor": "Editör",
"editor_close_without_save_prompt": "Değişiklikler kaydedilmeyecek",
"editor_close_without_save_title": "Düzenleyici kapatılsın mı?",
+ "editor_crop_tool_h2_aspect_ratios": "En boy oranları",
+ "editor_crop_tool_h2_rotation": "Rotasyon",
"email": "E-posta",
- "empty_album": "",
"empty_trash": "Çöpü boşalt",
+ "empty_trash_confirmation": "Çöp kutusunu boşaltmak istediğinizden emin misiniz? Bu işlem, Immich'teki çöp kutusundaki tüm varlıkları kalıcı olarak silecektir.\nBu işlemi geri alamazsınız!",
"enable": "Etkinleştir",
"enabled": "Etkinleştirildi",
- "end_date": "",
+ "end_date": "Bitiş tarihi",
"error": "Hata",
- "error_loading_image": "",
+ "error_loading_image": "Resim yüklenirken hata oluştu",
+ "error_title": "Bir Hata Oluştu - Bir şeyler ters gitti",
"errors": {
+ "cannot_navigate_next_asset": "Sonraki varlığa geçiş yapılamıyor",
+ "cannot_navigate_previous_asset": "Önceki varlığa geçiş yapılamıyor",
"cant_apply_changes": "Değişiklikler uygulanamıyor",
+ "cant_change_activity": "Etkinliği {enabled, select, true {devre dışı bırakamıyor} other {etkinleştiremiyor}}",
+ "cant_change_asset_favorite": "Varlığın favori durumunu değiştiremiyor",
+ "cant_change_metadata_assets_count": "{count, plural, one {# varlığın} other {# varlıkların}} meta verisi değiştirilemiyor",
+ "cant_get_faces": "Yüzler alınamadı",
+ "cant_get_number_of_comments": "Yorumların sayısı alınamadı",
"cant_search_people": "Kişiler aranamıyor",
- "cleared_jobs": "",
- "exclusion_pattern_already_exists": "",
- "failed_job_command": "",
+ "cant_search_places": "Mekanlar aranamıyor",
+ "cleared_jobs": "İşler temizlendi: {job}",
+ "error_adding_assets_to_album": "Albüme varlık ekleme hatası",
+ "error_adding_users_to_album": "Albüme kullanıcı ekleme hatası",
+ "error_deleting_shared_user": "Paylaşılan kullanıcı silme hatası",
+ "error_downloading": "{filename} indirme hatası",
+ "error_hiding_buy_button": "Satın alma butonu gizleme hatası",
+ "error_removing_assets_from_album": "Varlığı albümden silme hatası, daha fazla detay için konsolu kontrol et",
+ "error_selecting_all_assets": "Bütün varlıkları seçme hatası",
+ "exclusion_pattern_already_exists": "Bu dışlama modeli halihazırda mevcut.",
+ "failed_job_command": "{command} komutu iş: {job} için tamamlanamadı",
"failed_to_create_album": "Albüm oluşturulamadı",
"failed_to_create_shared_link": "Paylaşılan bağlantı oluşturulamadı",
"failed_to_edit_shared_link": "Paylaşılan bağlantı düzenlenemedi",
+ "failed_to_get_people": "Kişiler alınamadı",
+ "failed_to_keep_this_delete_others": "Bu öğenin tutulması ve diğer öğenin silinmesi başarısız oldu",
+ "failed_to_load_asset": "Varlık yüklenemedi",
+ "failed_to_load_assets": "Varlıklar yüklenemedi",
+ "failed_to_load_people": "Kişiler yüklenemedi",
"failed_to_remove_product_key": "Ürün anahtarı kaldırılamadı",
- "import_path_already_exists": "",
+ "failed_to_stack_assets": "Varlıklar yığınlanamadı",
+ "failed_to_unstack_assets": "Varlıkların yığını kaldırılamadı",
+ "import_path_already_exists": "Bu içe aktarma yolu halihazırda mevcut.",
"incorrect_email_or_password": "Yanlış e-posta veya şifre",
- "paths_validation_failed": "",
+ "paths_validation_failed": "{paths, plural, one {# Yol} other {# Yollar}} doğrulanamadı",
"profile_picture_transparent_pixels": "Profil resimleri şeffaf piksele sahip olamaz. Lütfen resme yakınlaştırın ve/veya resmi hareket ettirin.",
- "quota_higher_than_disk_size": "",
- "repair_unable_to_check_items": "",
+ "quota_higher_than_disk_size": "Disk boyutundan daha yüksek bir kota belirlediniz",
+ "repair_unable_to_check_items": "{count, select, one {Öğe} other {Öğeler}} kontrol edilemedi",
"unable_to_add_album_users": "Kullanıcılar albüme eklenemiyor",
+ "unable_to_add_assets_to_shared_link": "Varlıklar paylaşılan bağlantıya eklenemiyor",
"unable_to_add_comment": "Yorum eklenemiyor",
- "unable_to_add_exclusion_pattern": "",
- "unable_to_add_import_path": "",
- "unable_to_add_partners": "",
- "unable_to_change_album_user_role": "",
+ "unable_to_add_exclusion_pattern": "Hariç tutma modeli eklenemiyor",
+ "unable_to_add_import_path": "İçe aktarma yolu eklenemiyor",
+ "unable_to_add_partners": "Ortaklar eklenemiyor",
+ "unable_to_add_remove_archive": "Arşive {archived, select, true {dosyayı kaldır} other {dosya ekle}} işlemi yapılamıyor",
+ "unable_to_add_remove_favorites": "Favorilere {favorite, select, true {dosya ekle} other {dosyayı kaldır}} işlemi yapılamıyor",
+ "unable_to_archive_unarchive": "{archived, select, true {Arşivleme} other {Arşivden çıkarma}} işlemi yapılamıyor",
+ "unable_to_change_album_user_role": "Albüm kullanıcı rolü değiştirilemiyor",
"unable_to_change_date": "Tarih değiştirilemiyor",
- "unable_to_change_location": "",
- "unable_to_change_password": "",
+ "unable_to_change_favorite": "Favori durumu değiştirilemiyor",
+ "unable_to_change_location": "Konum değiştirilemiyor",
+ "unable_to_change_password": "Şifre değiştirilemiyor",
+ "unable_to_change_visibility": "{count, plural, one {# kişi} other {# kişi}} için görünürlük değiştirilemedi",
+ "unable_to_complete_oauth_login": "OAuth giriş işlemi tamamlanamadı",
"unable_to_connect": "Bağlanılamıyor",
"unable_to_connect_to_server": "Sunucuya bağlanılamıyor",
"unable_to_copy_to_clipboard": "Panoya kopyalanamıyor, sayfaya https üzerinden eriştiğinizden emin olun",
"unable_to_create_admin_account": "Yönetici hesabı oluşturulamıyor",
"unable_to_create_api_key": "Yeni API anahtarı oluşturulamıyor",
- "unable_to_create_library": "",
+ "unable_to_create_library": "Kütüphane oluşturulamıyor",
"unable_to_create_user": "Kullanıcı oluşturulamıyor",
"unable_to_delete_album": "Albüm silinemiyor",
- "unable_to_delete_asset": "",
- "unable_to_delete_exclusion_pattern": "",
- "unable_to_delete_import_path": "",
+ "unable_to_delete_asset": "Varlık silinemiyor",
+ "unable_to_delete_assets": "Varlıklar silinemiyor",
+ "unable_to_delete_exclusion_pattern": "Hariç tutma deseni silinemiyor",
+ "unable_to_delete_import_path": "İçe aktarma yolu silinemiyor",
"unable_to_delete_shared_link": "Paylaşılan bağlantı silinemiyor",
"unable_to_delete_user": "Kullanıcı silinemiyor",
"unable_to_download_files": "Dosyalar indirilemiyor",
- "unable_to_edit_exclusion_pattern": "",
- "unable_to_edit_import_path": "",
+ "unable_to_edit_exclusion_pattern": "Hariç tutma deseni düzenlenemiyor",
+ "unable_to_edit_import_path": "İçe aktarma yolu düzenlenemiyor",
"unable_to_empty_trash": "Çöp boşaltılamıyor",
"unable_to_enter_fullscreen": "Tam ekran yapılamıyor",
"unable_to_exit_fullscreen": "Tam ekrandan çıkılamıyor",
"unable_to_get_comments_number": "Yorum sayısı alınamıyor",
"unable_to_get_shared_link": "Paylaşılan bağlantı alınamadı",
"unable_to_hide_person": "Kişi gizlenemiyor",
- "unable_to_link_oauth_account": "",
- "unable_to_load_album": "",
- "unable_to_load_asset_activity": "",
- "unable_to_load_items": "",
- "unable_to_load_liked_status": "",
- "unable_to_play_video": "",
- "unable_to_refresh_user": "",
- "unable_to_remove_album_users": "",
- "unable_to_remove_api_key": "",
+ "unable_to_link_motion_video": "Hareket videosu bağlanamıyor",
+ "unable_to_link_oauth_account": "OAuth hesabı bağlanamıyor",
+ "unable_to_load_album": "Albüm yüklenemiyor",
+ "unable_to_load_asset_activity": "Varlık aktivitesi yüklenemiyor",
+ "unable_to_load_items": "Öğeler yüklenemiyor",
+ "unable_to_load_liked_status": "Beğenilen durum yüklenemiyor",
+ "unable_to_log_out_all_devices": "Tüm cihazlardan çıkış yapılamıyor",
+ "unable_to_log_out_device": "Cihazdan çıkış yapılamıyor",
+ "unable_to_login_with_oauth": "OAuth ile giriş yapılamıyor",
+ "unable_to_play_video": "Video oynatılamıyor",
+ "unable_to_reassign_assets_existing_person": "Varlıklar {name, select, null {mevcut bir kişiye} other {{name}}} yeniden atanamıyor",
+ "unable_to_reassign_assets_new_person": "Varlıklar yeni bir kişiye yeniden atanamıyor",
+ "unable_to_refresh_user": "Kullanıcı yenilenemiyor",
+ "unable_to_remove_album_users": "Albüm kullanıcıları kaldırılamıyor",
+ "unable_to_remove_api_key": "API anahtarı kaldırılamıyor",
+ "unable_to_remove_assets_from_shared_link": "Varlıklar paylaşılan bağlantıdan kaldırılamıyor",
+ "unable_to_remove_deleted_assets": "Silinmiş varlıklar kaldırılamıyor",
"unable_to_remove_library": "Kütüphane kaldırılamadı",
- "unable_to_remove_offline_files": "",
- "unable_to_remove_partner": "",
- "unable_to_remove_reaction": "",
+ "unable_to_remove_partner": "Ortak kaldırılamıyor",
+ "unable_to_remove_reaction": "Reaksiyon kaldırılamıyor",
"unable_to_repair_items": "Ögeler onarılamadı",
- "unable_to_reset_password": "",
- "unable_to_resolve_duplicate": "",
- "unable_to_restore_assets": "",
- "unable_to_restore_trash": "",
- "unable_to_restore_user": "",
+ "unable_to_reset_password": "Şifre sıfırlanamıyor",
+ "unable_to_resolve_duplicate": "Çiftler çözümlenemiyor",
+ "unable_to_restore_assets": "Varlıklar geri yüklenemiyor",
+ "unable_to_restore_trash": "Çöp geri yüklenemiyor",
+ "unable_to_restore_user": "Kullanıcı geri yüklenemiyor",
"unable_to_save_album": "Albüm kaydedilemiyor",
- "unable_to_save_api_key": "",
+ "unable_to_save_api_key": "API anahtarı kaydedilemiyor",
"unable_to_save_date_of_birth": "Doğum günü kaydedilemiyor",
"unable_to_save_name": "İsim kaydedilemyor",
"unable_to_save_profile": "Profil kaydedilemiyor",
"unable_to_save_settings": "Ayarlar kaydedilemiyor",
"unable_to_scan_libraries": "Kütüphaneler taranamıyor",
"unable_to_scan_library": "Kütüphane taranamıyor",
+ "unable_to_set_feature_photo": "Özellikli fotoğraf ayarlanamıyor",
"unable_to_set_profile_picture": "Profil resmi ayarlanamıyor",
- "unable_to_submit_job": "",
- "unable_to_trash_asset": "",
- "unable_to_unlink_account": "",
+ "unable_to_submit_job": "Görev gönderilemiyor",
+ "unable_to_trash_asset": "Varlık çöp kutusuna taşınamıyor",
+ "unable_to_unlink_account": "Hesap bağlantısı kaldırılamıyor",
+ "unable_to_unlink_motion_video": "Hareket videosunun bağlantısı kaldırılamıyor",
"unable_to_update_album_cover": "Albüm resmi güncellenemiyor",
"unable_to_update_album_info": "Albüm açıklaması güncellenemiyor",
"unable_to_update_library": "Kütüphane güncellenemiyor",
"unable_to_update_location": "Konum güncellenemiyor",
"unable_to_update_settings": "Ayarlar güncellenemiyor",
- "unable_to_update_timeline_display_status": "",
- "unable_to_update_user": "",
+ "unable_to_update_timeline_display_status": "Zaman çizelgesi görüntüleme durumu güncellenemiyor",
+ "unable_to_update_user": "Kullanıcı güncellenemiyor",
"unable_to_upload_file": "Dosya yüklenemiyor"
},
+ "exif": "EXIF",
"exit_slideshow": "Slayt gösterisinden çık",
- "expand_all": "",
- "expire_after": "",
- "expired": "",
+ "expand_all": "Hepsini genişlet",
+ "expire_after": "Sonlanma süresi",
+ "expired": "Süresi dolmuş",
+ "expires_date": "{date} tarihinde sona eriyor",
"explore": "Keşfet",
+ "explorer": "Geçmiş",
"export": "Dışa Aktar",
"export_as_json": "JSON olarak Dışa Aktar",
"extension": "Uzantı",
- "external": "",
- "external_libraries": "",
- "failed_to_get_people": "",
- "favorite": "",
- "favorite_or_unfavorite_photo": "",
+ "external": "Harici",
+ "external_libraries": "Harici kütüphaneler",
+ "face_unassigned": "Yüz atanmadı",
+ "failed_to_load_assets": "Varlıklar yüklenemedi",
+ "favorite": "Favori",
+ "favorite_or_unfavorite_photo": "Favoriye ekle veya çıkar",
"favorites": "Favoriler",
- "feature_photo_updated": "",
+ "feature_photo_updated": "Özellikli fotoğraf güncellendi",
+ "features": "Özellikler",
+ "features_setting_description": "Uygulamanın özelliklerini yönet",
"file_name": "Dosya adı",
"file_name_or_extension": "Dosya adı veya uzantı",
- "filename": "",
- "filetype": "",
- "filter_people": "",
- "find_them_fast": "",
+ "filename": "Dosya adı",
+ "filetype": "Dosya tipi",
+ "filter_people": "Kişileri filtrele",
+ "find_them_fast": "Adlarına göre hızlıca bul",
"fix_incorrect_match": "Yanlış eşleştirmeyi düzelt",
- "force_re-scan_library_files": "Tüm Kütüphane Dosyalarını Yeniden Taramaya Zorla",
- "forward": "",
+ "folders": "Klasörler",
+ "folders_feature_description": "Dosya sistemindeki fotoğraf ve videoları klasör görünümüyle keşfedin",
+ "forward": "İleri",
"general": "Genel",
"get_help": "Yardım Al",
- "getting_started": "",
+ "getting_started": "Başlarken",
"go_back": "Geri git",
- "go_to_search": "",
- "go_to_share_page": "Paylaşma ekranına git",
- "group_albums_by": "",
+ "go_to_search": "Aramaya git",
+ "group_albums_by": "Albümleri gruplandır...",
+ "group_no": "Gruplama yok",
+ "group_owner": "Sahibe göre gruplandır",
"group_year": "Yıla göre grupla",
- "has_quota": "",
+ "has_quota": "Kota var",
"hi_user": "Merhaba {name} {email}",
"hide_all_people": "Tüm kişileri gizle",
- "hide_gallery": "",
+ "hide_gallery": "Galeriyi gizle",
+ "hide_named_person": "{name} adlı kişiyi gizle",
"hide_password": "Şifreyi gizle",
- "hide_person": "",
+ "hide_person": "Kişiyi gizle",
"hide_unnamed_people": "İsimsiz kişileri gizle",
- "host": "",
+ "host": "Host",
"hour": "Saat",
- "image": "",
- "immich_logo": "",
- "immich_web_interface": "",
+ "image": "Resim",
+ "image_alt_text_date": "{isVideo, select, true {Video} other {Fotoğraf}} {date} tarihinde çekildi",
+ "image_alt_text_date_1_person": "{isVideo, select, true {Video} other {Fotoğraf}} {person1} ile {date} tarihinde çekildi",
+ "image_alt_text_date_2_people": "{isVideo, select, true {Video} other {Fotoğraf}} {person1} ve {person2} ile {date} tarihinde çekildi",
+ "image_alt_text_date_3_people": "{isVideo, select, true {Video} other {Fotoğraf}} {person1}, {person2} ve {person3} ile {date} tarihinde çekildi",
+ "image_alt_text_date_4_or_more_people": "{isVideo, select, true {Video} other {Fotoğraf}} {person1}, {person2} ve diğer {additionalCount, number} kişi ile {date} tarihinde çekildi",
+ "image_alt_text_date_place": "{isVideo, select, true {Video} other {Fotoğraf}} {city}, {country} şehrinde {date} tarihinde çekildi",
+ "image_alt_text_date_place_1_person": "{isVideo, select, true {Video} other {Fotoğraf}} {city}, {country} şehrinde {person1} ile {date} tarihinde çekildi",
+ "image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Fotoğraf}} {city}, {country} şehrinde {person1} ve {person2} ile {date} tarihinde çekildi",
+ "image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Fotoğraf}} {city}, {country} şehrinde {person1}, {person2} ve {person3} ile {date} tarihinde çekildi",
+ "image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Fotoğraf}} {city}, {country} şehrinde {person1}, {person2} ve diğer {additionalCount, number} kişi ile {date} tarihinde çekildi",
+ "immich_logo": "Immich Logosu",
+ "immich_web_interface": "Immich Web Arayüzü",
"import_from_json": "JSON'dan İçe Aktar",
- "import_path": "",
+ "import_path": "İçe aktarma yolu",
+ "in_albums": "{count, plural, one {# Albüm} other {# Albümde}}",
"in_archive": "Arşivde",
"include_archived": "Arşivlenenleri dahil et",
"include_shared_albums": "Paylaşılmış albümleri dahil et",
- "include_shared_partner_assets": "",
- "individual_share": "",
+ "include_shared_partner_assets": "Paylaşılan ortak varlıkları dahil et",
+ "individual_share": "Bireysel paylaşım",
"info": "Bilgi",
"interval": {
- "day_at_onepm": "",
- "hours": "",
+ "day_at_onepm": "Her gün saat 13:00'te",
+ "hours": "{hours, plural, one {Her saat} other {Her {hours, number} saatte}}",
"night_at_midnight": "Her akşam geceyarısında",
- "night_at_twoam": ""
+ "night_at_twoam": "Her gün gece 2:00'de"
},
"invite_people": "Kişileri Davet Et",
"invite_to_album": "Albüme davet et",
- "jobs": "",
- "keep": "",
+ "items_count": "{count, plural, one {# Öğe} other {# Öğe}}",
+ "jobs": "Görevler",
+ "keep": "Koru",
+ "keep_all": "Hepsini koru",
+ "keep_this_delete_others": "Bunu sakla, diğerlerini sil",
+ "kept_this_deleted_others": "Bu varlık tutuldu ve {count, plural, one {# varlık} other {# varlık}} silindi",
"keyboard_shortcuts": "Klavye kısayolları",
"language": "Dil",
"language_setting_description": "Tercih ettiğiniz dili seçiniz",
"last_seen": "Son görülme",
"latest_version": "En son versiyon",
- "leave": "",
- "let_others_respond": "",
- "level": "",
+ "latitude": "Enlem",
+ "leave": "Ayrıl",
+ "let_others_respond": "Diğerlerinin yanıt vermesine izin ver",
+ "level": "Seviye",
"library": "Kütüphane",
"library_options": "Kütüphane ayarları",
- "light": "",
- "link_options": "",
- "link_to_oauth": "",
- "linked_oauth_account": "",
- "list": "",
- "loading": "",
- "loading_search_results_failed": "",
+ "light": "Açık",
+ "like_deleted": "Beğeni silindi",
+ "link_motion_video": "Hareket videosunu bağla",
+ "link_options": "Bağlantı seçenekleri",
+ "link_to_oauth": "OAuth'a bağla",
+ "linked_oauth_account": "Bağlı OAuth hesabı",
+ "list": "Liste",
+ "loading": "Yükleniyor",
+ "loading_search_results_failed": "Arama sonuçları yüklenemedi",
"log_out": "Oturumu kapat",
"log_out_all_devices": "Tüm Cihazlarda Oturumu Kapat",
"logged_out_all_devices": "Tüm cihazlarda oturum kapatıldı",
"logged_out_device": "Oturum kapatılmış cihaz",
- "login_has_been_disabled": "",
+ "login": "Giriş yap",
+ "login_has_been_disabled": "Giriş devre dışı bırakıldı.",
"logout_all_device_confirmation": "Tüm cihazlarda oturum kapatmak istediğinizden emin misiniz?",
"logout_this_device_confirmation": "Bu cihazda oturum kapatmak istediğinizden emin misiniz?",
- "look": "",
- "loop_videos": "",
- "loop_videos_description": "",
- "make": "",
- "manage_shared_links": "",
- "manage_sharing_with_partners": "",
- "manage_the_app_settings": "",
+ "longitude": "Boylam",
+ "look": "Görünüm",
+ "loop_videos": "Videoları döngüye al",
+ "loop_videos_description": "Ayrıntı görünümünde videoların otomatik döngüye alınmasını etkinleştir.",
+ "main_branch_warning": "Geliştirme sürümü kullanıyorsunuz. Yayınlanan bir sürüm kullanmanızı önemle tavsiye ederiz!",
+ "make": "Marka",
+ "manage_shared_links": "Paylaşılan bağlantıları yönet",
+ "manage_sharing_with_partners": "Ortaklarla paylaşımı yönet",
+ "manage_the_app_settings": "Uygulama ayarlarını yönet",
"manage_your_account": "Hesabınızı yönetin",
- "manage_your_api_keys": "",
- "manage_your_devices": "",
- "manage_your_oauth_connection": "",
+ "manage_your_api_keys": "API anahtarlarınızı yönetin",
+ "manage_your_devices": "Cihazlarınızı yönetin",
+ "manage_your_oauth_connection": "OAuth bağlantınızı yönetin",
"map": "Harita",
- "map_marker_with_image": "",
+ "map_marker_for_images": "{city}, {country} şehrinde çekilen fotoğraflar için harita işaretleyicisi",
+ "map_marker_with_image": "Resimli harita işaretleyicisi",
"map_settings": "Harita ayarları",
"matches": "Eşleşenler",
- "media_type": "",
+ "media_type": "Medya türü",
"memories": "Anılar",
- "memories_setting_description": "",
+ "memories_setting_description": "Anılarınızda görmek istediklerinizi yönetin",
"memory": "Anı",
"memory_lane_title": "Anılara Yolculuk {title}",
"menu": "Menü",
"merge": "Birleştir",
- "merge_people": "",
+ "merge_people": "Kişileri birleştir",
"merge_people_limit": "Aynı anda 5 yüzü birleştirebilirsiniz",
+ "merge_people_prompt": "Bu kişileri birleştirmek istiyor musunuz? Bu işlem geri alınamaz.",
"merge_people_successfully": "Kişiler başarılı bir şekilde birleştirildi",
+ "merged_people_count": "{count, plural, one {# kişi} other {# kişi}} birleştirildi",
"minimize": "Küçült",
"minute": "Dakika",
"missing": "Eksik",
"model": "Model",
"month": "Ay",
- "more": "",
- "moved_to_trash": "",
+ "more": "Daha fazla",
+ "moved_to_trash": "Çöp kutusuna taşındı",
"my_albums": "Albümlerim",
"name": "İsim",
"name_or_nickname": "İsim veya takma isim",
"never": "Asla",
+ "new_album": "Yeni albüm",
"new_api_key": "Yeni API Anahtarı",
"new_password": "Yeni şifre",
"new_person": "Yeni kişi",
"new_user_created": "Yeni kullanıcı oluşturuldu",
"new_version_available": "YENİ VERSİYON MEVCUT",
- "newest_first": "",
+ "newest_first": "Önce en yeniler",
"next": "Sonraki",
- "next_memory": "",
+ "next_memory": "Sonraki anı",
"no": "Hayır",
"no_albums_message": "Fotoğraf ve videolarınızı düzenlemek için yeni bir albüm oluşturun",
"no_albums_with_name_yet": "Henüz bu isimde bir albümünüz bulunmuyor.",
- "no_archived_assets_message": "",
+ "no_albums_yet": "Henüz albüm oluşturmadınız.",
+ "no_archived_assets_message": "Fotoğraf görünümünüzden kaldırmak için fotoğrafları ve videoları arşivleyin",
"no_assets_message": "İLK FOTOĞRAFINIZI YÜKLEMEK İÇİN TIKLAYIN",
- "no_duplicates_found": "",
- "no_exif_info_available": "",
- "no_explore_results_message": "",
- "no_favorites_message": "",
- "no_libraries_message": "",
- "no_name": "",
- "no_places": "",
- "no_results": "",
+ "no_duplicates_found": "Çift bulunamadı.",
+ "no_exif_info_available": "EXIF bilgisi mevcut değil",
+ "no_explore_results_message": "Koleksiyonunuzu keşfetmek için daha fazla fotoğraf yükleyin.",
+ "no_favorites_message": "En sevdiğiniz fotoğraf ve videoları hızlıca bulmak için favoriler ekleyin",
+ "no_libraries_message": "Fotoğraf ve videolarınızı görmek için bir harici kütüphane oluşturun",
+ "no_name": "İsim yok",
+ "no_places": "Yer yok",
+ "no_results": "Sonuç bulunamadı",
"no_results_description": "Eş anlamlı ya da daha genel anlamlı bir kelime deneyin",
- "no_shared_albums_message": "",
- "not_in_any_album": "",
- "note_apply_storage_label_to_previously_uploaded assets": "",
+ "no_shared_albums_message": "Fotoğrafları ve videoları ağınızdaki kişilerle paylaşmak için bir albüm oluşturun",
+ "not_in_any_album": "Hiçbir albümde değil",
+ "note_apply_storage_label_to_previously_uploaded assets": "Not: Daha önce yüklenen varlıklar için bir depolama yolu etiketi uygulamak üzere şunu başlatın",
"note_unlimited_quota": "Not: Sınırsız kota için 0 yazın",
"notes": "Notlar",
"notification_toggle_setting_description": "E-posta bildirimlerine izin ver",
"notifications": "Bildirimler",
"notifications_setting_description": "Bildirimleri yönetin",
- "oauth": "",
- "offline": "Çevrimdışı",
- "offline_paths": "",
- "offline_paths_description": "",
+ "oauth": "OAuth",
+ "official_immich_resources": "Resmi Immich Kaynakları",
+ "offline": "Çevrim dışı",
+ "offline_paths": "Çevrim dışı yollar",
+ "offline_paths_description": "Bu sonuçlar, harici bir kütüphaneye ait olmayan dosyaların elle silinmesinden kaynaklanıyor olabilir.",
"ok": "Tamam",
- "oldest_first": "",
- "onboarding_welcome_user": "Hoşgeldin, {user}",
+ "oldest_first": "Eski olan önce",
+ "onboarding": "Uyum Süreci",
+ "onboarding_privacy_description": "Şu (isteğe bağlı) özellikler harici hizmetlere dayanır ve yönetim ayarlarından herhangi bir zamanda devre dışı bırakılabilir.",
+ "onboarding_theme_description": "İnstance’ınız için bir renk teması seçin. Bunu daha sonra ayarlarınızdan değiştirebilirsiniz.",
+ "onboarding_welcome_description": "Şimdi, instance’ınızı bazı yaygın ayarlarla kurmaya başlayalım.",
+ "onboarding_welcome_user": "Hoş geldin, {user}",
"online": "Çevrimiçi",
"only_favorites": "Sadece favoriler",
- "only_refreshes_modified_files": "",
+ "open_in_map_view": "Harita görünümünde aç",
"open_in_openstreetmap": "OpenStreetMap'te Aç",
"open_the_search_filters": "Arama filtrelerini aç",
- "options": "Ayarlar",
+ "options": "Seçenekler",
"or": "veya",
"organize_your_library": "Kütüphanenizi düzenleyin",
"original": "orijinal",
"other": "Diğer",
"other_devices": "Diğer cihazlar",
"other_variables": "Diğer değişkenler",
- "owned": "",
- "owner": "",
+ "owned": "Sahip olunan",
+ "owner": "Sahip",
+ "partner": "Ortak",
"partner_can_access": "{partner} erişebilir",
"partner_can_access_assets": "Arşivlenenler ve Silinenler dışındaki tüm fotoğraf ve videolarınız",
"partner_can_access_location": "Fotoğraf ve videolarınızın çekildiği konum",
- "partner_sharing": "",
- "partners": "",
+ "partner_sharing": "Ortak paylaşımı",
+ "partners": "Ortaklar",
"password": "Şifre",
- "password_does_not_match": "",
- "password_required": "",
- "password_reset_success": "",
+ "password_does_not_match": "Şifreler eşleşmiyor",
+ "password_required": "Şifre gereklidir",
+ "password_reset_success": "Şifre başarıyla sıfırlandı",
"past_durations": {
- "days": "",
- "hours": "",
- "years": ""
+ "days": "{days, plural, one {Dün} other {Son # gün}}",
+ "hours": "Son {hours, plural, one {saat} other {# saat}}",
+ "years": "{years, plural, one {Geçen yıl} other {Son # yıl}}"
},
- "path": "",
- "pattern": "",
- "pause": "",
- "pause_memories": "",
+ "path": "Yol",
+ "pattern": "Desen",
+ "pause": "Duraklat",
+ "pause_memories": "Anıları duraklat",
"paused": "Durduruldu",
- "pending": "",
+ "pending": "Beklemede",
"people": "Kişiler",
- "people_sidebar_description": "",
- "permanent_deletion_warning": "",
- "permanent_deletion_warning_setting_description": "",
+ "people_edits_count": "{count, plural, one {# kişi} other {# kişi}} düzenlendi",
+ "people_feature_description": "Kişilere göre gruplanmış fotoğrafları ve videoları inceleyin",
+ "people_sidebar_description": "Yan panelde kişilere hızlı erişim bağlantısı göster",
+ "permanent_deletion_warning": "Kalıcı silme uyarısı",
+ "permanent_deletion_warning_setting_description": "Nesneleri kalıcı olarak silerken uyarı göster",
"permanently_delete": "Kalıcı olarak sil",
+ "permanently_delete_assets_count": "{count, plural, one {Dosya} other {Dosyalar}} kalıcı olarak silindi",
+ "permanently_delete_assets_prompt": "Bu {count, plural, one {dosyayı} other {# dosyaları}} kalıcı olarak silmek istediğinizden emin misiniz? Bu işlem {count, plural, one {bu dosyayı} other {bu dosyaları}} albümlerinizden de kaldırır.",
"permanently_deleted_asset": "Kalıcı olarak silinmiş ögeler",
+ "permanently_deleted_assets_count": "{count, plural, one {# dosya} other {# dosya}} kalıcı olarak silindi",
"person": "Kişi",
+ "person_hidden": "{name}{hidden, select, true { (gizli)} other {}}",
+ "photo_shared_all_users": "Fotoğraflarınızı tüm kullanıcılarla paylaştınız gibi görünüyor veya paylaşacak kullanıcı bulunmuyor.",
"photos": "Fotoğraflar",
"photos_and_videos": "Fotoğraflar & Videolar",
- "photos_count": "",
+ "photos_count": "{count, plural, one {{count, number} fotoğraf} other {{count, number} fotoğraf}}",
"photos_from_previous_years": "Önceki yıllardan fotoğraflar",
"pick_a_location": "Bir konum seçin",
"place": "Konum",
"places": "Konumlar",
"play": "Oynat",
- "play_memories": "",
- "play_motion_photo": "",
+ "play_memories": "Anıları oynat",
+ "play_motion_photo": "Hareketli fotoğrafı oynat",
"play_or_pause_video": "Videoyu oynat ya da durdur",
- "port": "",
- "preset": "",
- "preview": "",
+ "port": "Port",
+ "preset": "Ön ayar",
+ "preview": "Önizleme",
"previous": "Önceki",
"previous_memory": "Önceki anı",
"previous_or_next_photo": "Önceki ya da sonraki fotoğraf",
- "primary": "",
- "profile_picture_set": "",
- "public_share": "",
- "reaction_options": "",
- "read_changelog": "",
- "recent": "",
+ "primary": "Birincil",
+ "privacy": "Gizlilik",
+ "profile_image_of_user": "{user} kullanıcısının profil resmi",
+ "profile_picture_set": "Profil resmi ayarlandı.",
+ "public_album": "Herkese açık albüm",
+ "public_share": "Genel paylaşım",
+ "purchase_account_info": "Destekçi",
+ "purchase_activated_subtitle": "Immich ve açık kaynak yazılıma destek olduğunuz için teşekkür ederiz",
+ "purchase_activated_time": "{date, date} tarihinde etkinleştirildi",
+ "purchase_activated_title": "Anahtarınız başarıyla etkinleştirildi",
+ "purchase_button_activate": "Aktifleştir",
+ "purchase_button_buy": "Satın al",
+ "purchase_button_buy_immich": "Immich satın al",
+ "purchase_button_never_show_again": "Bir daha gösterme",
+ "purchase_button_reminder": "30 gün içinde bana hatırlat",
+ "purchase_button_remove_key": "Anahtarı kaldır",
+ "purchase_button_select": "Seç",
+ "purchase_failed_activation": "Etkinleştirme başarısız oldu! Lütfen e-postadaki ürün anahtarını kontrol edin!",
+ "purchase_individual_description_1": "Bireysel kullanım için",
+ "purchase_individual_description_2": "Destekçi statüsü",
+ "purchase_individual_title": "Bireysel",
+ "purchase_input_suggestion": "Zaten bir ürün anahtarınız var mı? Lütfen aşağıya girin",
+ "purchase_license_subtitle": "Immich'i satın alarak devam eden gelişimini destekleyin",
+ "purchase_lifetime_description": "Ömür boyu geçerli",
+ "purchase_option_title": "SATIN ALMA SEÇENEKLERİ",
+ "purchase_panel_info_1": "Immich'in gelişimi zaman ve çaba gerektiriyor ve tam zamanlı geliştiricilerimiz var. Amacımız, açık kaynak yazılımı sürdürülebilir bir gelir kaynağı haline getirmek.",
+ "purchase_panel_info_2": "Bu satın alma işlemi Immich'te ek işlevsellik açmayacak. Immich'in gelişimini desteklemek için size güveniyoruz.",
+ "purchase_panel_title": "Projeyi destekleyin",
+ "purchase_per_server": "Sunucu başına",
+ "purchase_per_user": "Kullanıcı başına",
+ "purchase_remove_product_key": "Ürün anahtarını kaldır",
+ "purchase_remove_product_key_prompt": "Ürün anahtarını kaldırmak istediğinize emin misiniz?",
+ "purchase_remove_server_product_key": "Sunucu ürün anahtarını kaldır",
+ "purchase_remove_server_product_key_prompt": "Sunucu ürün anahtarını kaldırmak istediğinize emin misiniz?",
+ "purchase_server_description_1": "Tüm sunucu için",
+ "purchase_server_description_2": "Destekçi statüsü",
+ "purchase_server_title": "Sunucu",
+ "purchase_settings_server_activated": "Sunucu ürün anahtarı, yönetici tarafından yönetilir",
+ "rating": "Derecelendirme",
+ "rating_clear": "Derecelendirmeyi temizle",
+ "rating_count": "{count, plural, one {# yıldız} other {# yıldız}}",
+ "rating_description": "EXIF derecelendirmesini bilgi panelinde göster",
+ "reaction_options": "Tepki seçenekleri",
+ "read_changelog": "Değişiklik günlüğünü oku",
+ "reassign": "Yeniden ata",
+ "reassigned_assets_to_existing_person": "{count, plural, one {# dosya} other {# dosya}} {name, select, null {mevcut bir kişiye} other {{name}}} atandı",
+ "reassigned_assets_to_new_person": "{count, plural, one {# dosya} other {# dosya}} yeni bir kişiye atandı",
+ "reassing_hint": "Seçili dosyaları mevcut bir kişiye atayın",
+ "recent": "Son",
+ "recent-albums": "Son kaydedilen albümler",
"recent_searches": "Son aramalar",
"refresh": "Yenile",
- "refreshed": "",
- "refreshes_every_file": "",
+ "refresh_encoded_videos": "Kodlanmış videoları yenile",
+ "refresh_faces": "Yüzleri yenile",
+ "refresh_metadata": "Meta verileri yenile",
+ "refresh_thumbnails": "Küçük resimleri yenile",
+ "refreshed": "Yenilendi",
+ "refreshes_every_file": "Tüm mevcut ve yeni dosyaları tekrar yükler",
+ "refreshing_encoded_video": "Kodlanmış videolar yenileniyor",
+ "refreshing_faces": "Yüzler yenileniyor",
+ "refreshing_metadata": "Meta veriler yenileniyor",
+ "regenerating_thumbnails": "Küçük resimler yeniden oluşturuluyor",
"remove": "Kaldır",
- "remove_from_album": "",
- "remove_from_favorites": "",
- "remove_from_shared_link": "",
- "remove_offline_files": "",
- "removed_api_key": "",
+ "remove_assets_album_confirmation": "{count, plural, one {# dosyayı} other {# dosyayı}} albümden çıkarmak istediğinizden emin misiniz?",
+ "remove_assets_shared_link_confirmation": "{count, plural, one {# dosyayı} other {# dosyayı}} bu paylaşılan bağlantıdan çıkarmak istediğinizden emin misiniz?",
+ "remove_assets_title": "Dosyaları çıkar?",
+ "remove_custom_date_range": "Özel tarih aralığını kaldır",
+ "remove_deleted_assets": "Çevrimdışı dosyaları kaldır",
+ "remove_from_album": "Albümden çıkar",
+ "remove_from_favorites": "Favorilerden çıkar",
+ "remove_from_shared_link": "Paylaşılan bağlantıdan çıkar",
+ "remove_url": "Bağlantıyı kaldır",
+ "remove_user": "Kullanıcıyı çıkar",
+ "removed_api_key": "API anahtarı {name} kaldırıldı",
+ "removed_from_archive": "Arşivden çıkarıldı",
"removed_from_favorites": "Favorilerden kaldırıldı",
+ "removed_from_favorites_count": "{count, plural, other {#}} favorilerden çıkarıldı",
+ "removed_tagged_assets": "{count, plural, one {# dosya} other {# dosya}} etiketleri kaldırıldı",
"rename": "Yeniden adlandır",
"repair": "Onar",
- "repair_no_results_message": "",
- "replace_with_upload": "",
- "require_password": "",
- "require_user_to_change_password_on_first_login": "",
- "reset": "",
- "reset_password": "",
- "reset_people_visibility": "",
- "restore": "",
- "restore_all": "",
- "restore_user": "",
+ "repair_no_results_message": "Bulunamayan ve eksik dosyalar burada listelenecektir",
+ "replace_with_upload": "Yükleme ile değiştir",
+ "repository": "Depo",
+ "require_password": "Şifre gerekli",
+ "require_user_to_change_password_on_first_login": "Kullanıcı ilk girişte şifreyi değiştirmeli",
+ "reset": "Sıfırla",
+ "reset_password": "Şifreyi sıfırla",
+ "reset_people_visibility": "Kişilerin görünürlüğünü sıfırla",
+ "reset_to_default": "Varsayılana sıfırla",
+ "resolve_duplicates": "Çiftleri çöz",
+ "resolved_all_duplicates": "Tüm çiftler çözüldü",
+ "restore": "Geri yükle",
+ "restore_all": "Tümünü geri yükle",
+ "restore_user": "Kullanıcıyı geri yükle",
+ "restored_asset": "Dosya geri yüklendi",
"resume": "Devam et",
"retry_upload": "Yeniden yüklemeyi dene",
- "review_duplicates": "",
- "role": "",
+ "review_duplicates": "Çiftleri gözden geçir",
+ "role": "Rol",
+ "role_editor": "Düzenleyici",
+ "role_viewer": "Görüntüleyici",
"save": "Kaydet",
- "saved_api_key": "",
- "saved_profile": "",
- "saved_settings": "",
+ "saved_api_key": "API anahtarı kaydedildi",
+ "saved_profile": "Profil kaydedildi",
+ "saved_settings": "Kaydedilen ayarlar",
"say_something": "Bir şey söyle",
"scan_all_libraries": "Tüm Kütüphaneleri Tara",
- "scan_all_library_files": "Tüm Kütüphaneleri Yeniden Tara",
- "scan_new_library_files": "",
+ "scan_library": "Kütüphaneyi tara",
"scan_settings": "Ayarları Tara",
"scanning_for_album": "Albüm için taranıyor...",
"search": "Ara",
- "search_albums": "",
- "search_by_context": "",
- "search_camera_make": "",
- "search_camera_model": "",
- "search_city": "",
- "search_country": "",
- "search_for_existing_person": "",
+ "search_albums": "Albüm ara",
+ "search_by_context": "Bağlama göre ara",
+ "search_by_filename": "Dosya adına göre ara",
+ "search_by_filename_example": "Örn. IMG_1234.JPG veya PNG",
+ "search_camera_make": "Kamera markasına göre ara...",
+ "search_camera_model": "Kamera modeline göre ara...",
+ "search_city": "Şehre göre ara...",
+ "search_country": "Ülkeye göre ara...",
+ "search_for_existing_person": "Mevcut bir kişiyi ara",
+ "search_no_people": "Kişi yok",
"search_no_people_named": "\"{name}\" isimli bir kişi yok",
- "search_people": "",
- "search_places": "",
- "search_state": "",
- "search_timezone": "",
+ "search_options": "Arama seçenekleri",
+ "search_people": "Kişilere göre ara",
+ "search_places": "Yerleri ara",
+ "search_settings": "Ayarları ara",
+ "search_state": "Eyalet/İl ara...",
+ "search_tags": "Etiketleri ara...",
+ "search_timezone": "Saat dilimi ara...",
"search_type": "Arama türü",
"search_your_photos": "Fotoğraflarınızı arayın",
- "searching_locales": "",
- "second": "",
+ "searching_locales": "Yerleri arıyor...",
+ "second": "Saniye",
"see_all_people": "Tüm kişileri gör",
- "select_album_cover": "",
- "select_all": "",
- "select_avatar_color": "",
- "select_face": "",
- "select_featured_photo": "",
+ "select_album_cover": "Albüm kapağı seç",
+ "select_all": "Tümünü seç",
+ "select_all_duplicates": "Tüm çiftleri seç",
+ "select_avatar_color": "Avatar rengini seç",
+ "select_face": "Yüzü seç",
+ "select_featured_photo": "Öne çıkan fotoğrafı seç",
"select_from_computer": "Bilgisayardan seç",
- "select_keep_all": "",
+ "select_keep_all": "Hepsini sakla",
"select_library_owner": "Kütüphane sahibini seç",
- "select_new_face": "",
- "select_photos": "",
- "select_trash_all": "",
- "selected": "",
- "send_message": "",
- "send_welcome_email": "",
- "server": "",
- "server_stats": "",
- "set": "",
+ "select_new_face": "Yeni yüz seç",
+ "select_photos": "Fotoğrafları seç",
+ "select_trash_all": "Hepsini çöpe at",
+ "selected": "Seçildi",
+ "selected_count": "{count, plural, other {# seçildi}}",
+ "send_message": "Mesaj gönder",
+ "send_welcome_email": "Hoş geldin e-postası gönder",
+ "server_offline": "Sunucu çevrimdışı",
+ "server_online": "Sunucu çevrimiçi",
+ "server_stats": "Sunucu istatistikleri",
+ "server_version": "Sunucu versiyonu",
+ "set": "Ayarla",
"set_as_album_cover": "Albüm resmi olarak ayarla",
"set_as_profile_picture": "Profil resmi olarak ayarla",
- "set_date_of_birth": "",
- "set_profile_picture": "",
- "set_slideshow_to_fullscreen": "",
+ "set_date_of_birth": "Doğum tarihini ayarla",
+ "set_profile_picture": "Profil resmini ayarla",
+ "set_slideshow_to_fullscreen": "Slayt gösterisini tam ekran yap",
"settings": "Ayarlar",
"settings_saved": "Ayarlar kaydedildi",
"share": "Paylaş",
- "shared": "",
- "shared_by": "",
+ "shared": "Paylaşılan",
+ "shared_by": "Tarafından paylaşılan",
"shared_by_user": "{user} tarafından paylaşıldı",
- "shared_by_you": "",
- "shared_from_partner": "",
- "shared_links": "",
- "shared_photos_and_videos_count": "",
+ "shared_by_you": "Senin tarafından paylaşıldı",
+ "shared_from_partner": "{partner} tarafından paylaşılan fotoğraflar",
+ "shared_link_options": "Paylaşılan bağlantı seçenekleri",
+ "shared_links": "Paylaşılan bağlantılar",
+ "shared_photos_and_videos_count": "{assetCount, plural, one {# paylaşılan fotoğraf veya video.} other {# paylaşılan fotoğraf & video.}}",
"shared_with_partner": "{partner} ile paylaşıldı",
"sharing": "Paylaşılıyor",
"sharing_enter_password": "Bu sayfayı görebilmek için lütfen şifreyi giriniz.",
- "sharing_sidebar_description": "",
+ "sharing_sidebar_description": "Yan panelde paylaşılanlara kısa yol göster",
+ "shift_to_permanent_delete": "Dosyayı kalıcı olarak silmek için ⇧ tuşuna basın",
"show_album_options": "Albüm ayarlarını göster",
+ "show_albums": "Albümleri göster",
"show_all_people": "Tüm kişileri göster",
- "show_and_hide_people": "",
- "show_file_location": "",
- "show_gallery": "",
- "show_hidden_people": "",
- "show_in_timeline": "",
- "show_in_timeline_setting_description": "",
+ "show_and_hide_people": "Kişileri göster ve gizle",
+ "show_file_location": "Dosya konumunu göster",
+ "show_gallery": "Galeriyi göster",
+ "show_hidden_people": "Gizli kişileri göster",
+ "show_in_timeline": "Zaman çizelgesinde göster",
+ "show_in_timeline_setting_description": "Bu kullanıcının fotoğraf ve videolarını zaman çizelgenizde göster",
"show_keyboard_shortcuts": "Klavye kısayollarını göster",
- "show_metadata": "",
- "show_or_hide_info": "",
+ "show_metadata": "Meta verileri göster",
+ "show_or_hide_info": "Bilgiyi göster veya gizle",
"show_password": "Şifreyi göster",
"show_person_options": "Kişi ayarlarını göster",
- "show_progress_bar": "",
+ "show_progress_bar": "İlerleme çubuğunu göster",
"show_search_options": "Arama ayarlarını göster",
+ "show_slideshow_transition": "Slayt geçişini göster",
+ "show_supporter_badge": "Destekçi rozeti",
+ "show_supporter_badge_description": "Destekçi rozetini göster",
"shuffle": "Karıştır",
+ "sidebar": "Yan panel",
+ "sidebar_display_description": "Yan panelde görünüme kısa yol göster",
"sign_out": "Oturumu Kapat",
"sign_up": "Kaydol",
- "size": "",
- "skip_to_content": "",
+ "size": "Boyut",
+ "skip_to_content": "İçeriğe atla",
+ "skip_to_folders": "Klasörlere atla",
+ "skip_to_tags": "Etiketlere atla",
"slideshow": "Slayt gösteriisi",
"slideshow_settings": "Slayt gösterisi ayarları",
- "sort_albums_by": "",
+ "sort_albums_by": "Albümleri sırala...",
"sort_created": "Oluşturulma tarihi",
+ "sort_items": "Öğe sayısı",
+ "sort_modified": "Değişiklik tarihi",
+ "sort_oldest": "En eski fotoğraf",
+ "sort_recent": "En yeni fotoğraf",
"sort_title": "Başlık",
"source": "Kaynak",
- "stack": "",
- "stack_selected_photos": "",
- "stacktrace": "",
- "start": "",
- "start_date": "",
- "state": "",
+ "stack": "Yığın",
+ "stack_duplicates": "Çiftleri yığınla",
+ "stack_select_one_photo": "Yığın için ana fotoğrafı seç",
+ "stack_selected_photos": "Seçili fotoğrafları yığınla",
+ "stacked_assets_count": "{count, plural, one {# dosya} other {# dosya}} yığınlandı",
+ "stacktrace": "Yığın izi",
+ "start": "Başlat",
+ "start_date": "Başlangıç tarihi",
+ "state": "Eyalet/İl",
"status": "Durum",
- "stop_motion_photo": "",
- "stop_photo_sharing": "",
- "stop_photo_sharing_description": "",
+ "stop_motion_photo": "Hareketli fotoğrafı durdur",
+ "stop_photo_sharing": "Fotoğraflarınızı paylaşmayı durdurmak mı istiyorsunuz?",
+ "stop_photo_sharing_description": "{partner} artık fotoğraflarınıza erişemeyecek.",
"stop_sharing_photos_with_user": "Bu kullanıcı ile fotoğraflarınızı paylaşmayı durdurun",
"storage": "Depolama alanı",
- "storage_label": "",
- "storage_usage": "",
- "submit": "",
+ "storage_label": "Depolama yolu",
+ "storage_usage": "{used} / {available} kullanıldı",
+ "submit": "Gönder",
"suggestions": "Öneriler",
"sunrise_on_the_beach": "Plajda gün doğumu",
- "swap_merge_direction": "",
- "sync": "",
+ "support": "Destek",
+ "support_and_feedback": "Destek & Geri Bildirim",
+ "support_third_party_description": "Immich kurulumu üçüncü bir tarafça yapıldı. Yaşadığınız sorunlar bu paketle ilgili olabilir. Lütfen öncelikli olarak aşağıdaki bağlantıları kullanarak bu sağlayıcıyla iletişime geçin.",
+ "swap_merge_direction": "Birleştirme yönünü değiştir",
+ "sync": "Senkronize et",
+ "tag": "Etiket",
+ "tag_assets": "Dosyaları etiketle",
+ "tag_created": "Etiket oluşturuldu: {tag}",
+ "tag_feature_description": "Etiket temalarına göre gruplandırılmış fotoğraf ve videoları keşfedin",
+ "tag_not_found_question": "Etiket bulunamadı mı? Yeni bir etiket oluşturun.",
+ "tag_updated": "Etiket güncellendi: {tag}",
+ "tagged_assets": "{count, plural, one {# dosya} other {# dosya}} etiketlendi",
+ "tags": "Etiketler",
"template": "Şablon",
"theme": "Tema",
"theme_selection": "Tema seçimi",
"theme_selection_description": "Temayı otomatik olarak tarayıcınızın sistem tercihine göre açık veya koyu ayarlayın",
- "time_based_memories": "",
+ "they_will_be_merged_together": "Birlikte birleştirilecekler",
+ "third_party_resources": "Üçüncü taraf kaynaklar",
+ "time_based_memories": "Zaman bazlı anılar",
+ "timeline": "Zaman Çizelgesi",
"timezone": "Zaman dilimi",
"to_archive": "Arşivle",
"to_change_password": "Şifreyi değiştir",
- "to_favorite": "",
+ "to_favorite": "Favorilere ekle",
"to_login": "Oturum aç",
- "to_trash": "",
- "toggle_settings": "",
- "toggle_theme": "",
- "toggle_visibility": "",
- "total_usage": "",
+ "to_parent": "Üst öğeye git",
+ "to_trash": "Çöpe taşı",
+ "toggle_settings": "Ayarları değiştir",
+ "toggle_theme": "Tema değiştir",
+ "total": "Toplam",
+ "total_usage": "Toplam kullanım",
"trash": "Çöp",
- "trash_all": "",
+ "trash_all": "Hepsini sil",
+ "trash_count": "Çöp kutusu {count, number}",
"trash_delete_asset": "Ögeyi Sil/Çöpe gönder",
- "trash_no_results_message": "",
- "trashed_items_will_be_permanently_deleted_after": "",
- "type": "",
+ "trash_no_results_message": "Silinen fotoğraf ve videolar burada listelenecektir.",
+ "trashed_items_will_be_permanently_deleted_after": "Silinen öğeler {days, plural, one {# gün} other {# gün}} sonra kalıcı olarak silinecek.",
+ "type": "Tür",
"unarchive": "Arşivden çıkar",
- "unarchived": "",
- "unfavorite": "",
- "unhide_person": "",
+ "unarchived_count": "{count, plural, other {# arşivden çıkarıldı}}",
+ "unfavorite": "Favorilerden kaldır",
+ "unhide_person": "Kişiyi göster",
"unknown": "Bilinmeyen",
- "unknown_album": "",
"unknown_year": "Bilinmeyen YIl",
"unlimited": "Sınırsız",
- "unlink_oauth": "",
- "unlinked_oauth_account": "",
+ "unlink_motion_video": "Hareketli video bağlantısını kaldır",
+ "unlink_oauth": "OAuth bağlantısını kaldır",
+ "unlinked_oauth_account": "Bağlantısı kaldırılmış OAuth hesabı",
"unnamed_album": "İsimsiz Albüm",
- "unselect_all": "",
- "unstack": "",
- "untracked_files": "",
- "untracked_files_decription": "",
- "up_next": "",
+ "unnamed_album_delete_confirmation": "Bu albümü silmek istediğinizden emin misiniz?",
+ "unnamed_share": "İsimsiz paylaşım",
+ "unsaved_change": "Kaydedilmemiş değişiklik",
+ "unselect_all": "Tümünü seçimini kaldır",
+ "unselect_all_duplicates": "Tüm çiftlerin seçimini kaldır",
+ "unstack": "Yığını kaldır",
+ "unstacked_assets_count": "{count, plural, one {# dosya} other {# dosya}} yığını kaldırıldı",
+ "untracked_files": "İzlenmeyen dosyalar",
+ "untracked_files_decription": "Bu dosyalar uygulama tarafından izlenmiyor. Başarısız taşıma işlemlerinin, kesintiye uğrayan yüklemelerin sonuçları olabilir veya bir hata nedeniyle geride kalmış olabilirler",
+ "up_next": "Sıradaki",
"updated_password": "Şifreyi güncelle",
"upload": "Yükle",
- "upload_concurrency": "",
+ "upload_concurrency": "Yükleme eşzamanlılığı",
+ "upload_errors": "{count, plural, one {# hata} other {# hatayla}} yükleme tamamlandı, yeni yüklenen dosyaları görmek için sayfayı güncelleyin.",
+ "upload_progress": "{remaining, number} kalan - {processed, number}/{total, number} işlendi",
+ "upload_skipped_duplicates": "{count, plural, one {# çift dosya} other {# çift dosya}} atlandı",
+ "upload_status_duplicates": "Çiftler",
"upload_status_errors": "Hatalar",
+ "upload_status_uploaded": "Yüklendi",
"upload_success": "Yükleme başarılı, yüklenen yeni ögeleri görebilmek için sayfayı yenileyin.",
- "url": "",
- "usage": "",
+ "url": "URL",
+ "usage": "Kullanım",
+ "use_custom_date_range": "Bunun yerine özel tarih aralığını kullan",
"user": "Kullanıcı",
- "user_id": "",
- "user_license_settings": "Lisans",
+ "user_id": "Kullanıcı ID",
+ "user_liked": "{type, select, photo {Bu fotoğraf} video {Bu video} asset {Bu dosya} other {Bu}} {user} tarafından beğenildi",
+ "user_purchase_settings": "Satın Alma",
+ "user_purchase_settings_description": "Satın alma işlemlerini yönet",
+ "user_role_set": "{user}, {role} olarak ayarlandı",
"user_usage_detail": "Kullanıcı kullanım detayı",
+ "user_usage_stats": "Hesap kullanım istatistikleri",
+ "user_usage_stats_description": "hesap kullanım istatistiklerini göster",
"username": "Kullanıcı adı",
"users": "Kullanıcılar",
- "utilities": "",
- "validate": "",
- "variables": "",
+ "utilities": "Yardımcılar",
+ "validate": "Doğrula",
+ "variables": "Değişkenler",
"version": "Versiyon",
"version_announcement_closing": "Arkadaşınız, Alex",
+ "version_announcement_message": "Merhaba! Immich'in yeni bir sürümü mevcut. Lütfen yapılandırmanızın güncel olduğundan emin olmak için sürüm notlarını okumak için biraz zaman ayırın, özellikle WatchTower veya Immich kurulumunuzu otomatik olarak güncelleyen bir mekanizma kullanıyorsanız yanlış yapılandırmaların önüne geçmek adına bu önemlidir.",
+ "version_history": "Versiyon geçmişi",
+ "version_history_item": "{version}, {date} tarihinde kuruldu",
"video": "Video",
- "video_hover_setting": "",
- "video_hover_setting_description": "",
+ "video_hover_setting": "Üzerinde durulduğunda video önizlemesi oynat",
+ "video_hover_setting_description": "Öğe üzerinde fareyle durulduğunda video küçük resmini oynatır. Bu özellik devre dışıyken, oynatma simgesine fareyle gidilerek oynatma başlatılabilir.",
"videos": "Videolar",
- "videos_count": "",
+ "videos_count": "{count, plural, one {# video} other {# video}}",
"view": "Görüntüle",
"view_album": "Albümü görüntüle",
- "view_all": "",
+ "view_all": "Tümünü gör",
"view_all_users": "Tüm kullanıcıları görüntüle",
- "view_links": "",
- "view_next_asset": "",
- "view_previous_asset": "",
- "viewer": "",
+ "view_in_timeline": "Zaman çizelgesinde görüntüle",
+ "view_links": "Bağlantıları göster",
+ "view_name": "Göster",
+ "view_next_asset": "Sonraki dosyayı görüntüle",
+ "view_previous_asset": "Önceki dosyayı görüntüle",
+ "view_stack": "Yığını görüntüle",
+ "visibility_changed": "Görünürlük {count, plural, one {# kişi} other {# kişi}} için değiştirildi",
"waiting": "Bekleniyor",
"warning": "Uyarı",
"week": "Hafta",
- "welcome": "Hoşgeldiniz",
- "welcome_to_immich": "Immich'e hoşgeldiniz",
+ "welcome": "Hoş geldiniz",
+ "welcome_to_immich": "Immich'e hoş geldiniz",
"year": "Yıl",
+ "years_ago": "{years, plural, one {bir yıl} other {# yıl}} önce",
"yes": "Evet",
- "you_dont_have_any_shared_links": "",
- "zoom_image": ""
+ "you_dont_have_any_shared_links": "Herhangi bir paylaşılan bağlantınız yok",
+ "zoom_image": "Görüntüyü yakınlaştır"
}
diff --git a/web/src/lib/i18n/uk.json b/i18n/uk.json
similarity index 90%
rename from web/src/lib/i18n/uk.json
rename to i18n/uk.json
index 64411ef758..806ae394f8 100644
--- a/web/src/lib/i18n/uk.json
+++ b/i18n/uk.json
@@ -23,16 +23,23 @@
"add_to": "Додати у...",
"add_to_album": "Додати у альбом",
"add_to_shared_album": "Додати у спільний альбом",
+ "add_url": "Додати URL",
"added_to_archive": "Додано до архіву",
"added_to_favorites": "Додано до обраного",
"added_to_favorites_count": "Додано {count, number} до обраного",
"admin": {
"add_exclusion_pattern_description": "Додайте шаблони виключень. Підстановка з використанням *, ** та ? підтримується. Для ігнорування всіх файлів у будь-якому каталозі з ім'ям «Raw», використовуйте \"**/Raw/**\". Для ігнорування всіх файлів, що закінчуються на \".tif\", використовуйте \"**/*.tif\". Для ігнорування абсолютного шляху використовуйте \"/path/to/ignore/**\".",
+ "asset_offline_description": "Цей зовнішній бібліотечний актив більше не знайдено на диску і був переміщений до кошика. Якщо файл був переміщений у межах бібліотеки, перевірте свій таймлайн на наявність нового відповідного активу. Щоб відновити цей актив, переконайтеся, що шлях файлу нижче доступний для Immich, і проскануйте бібліотеку.",
"authentication_settings": "Налаштування аутентифікації",
"authentication_settings_description": "Управління паролями, OAuth та іншими налаштуваннями аутентифікації",
"authentication_settings_disable_all": "Ви впевнені, що хочете вимкнути всі методи входу? Вхід буде повністю вимкнений.",
"authentication_settings_reenable": "Для повторного ввімкнення використовуйте Команду сервера.",
"background_task_job": "Фонові Завдання",
+ "backup_database": "Резервна копія бази даних",
+ "backup_database_enable_description": "Увімкнути резервне копіювання бази даних",
+ "backup_keep_last_amount": "Кількість резервних копій для зберігання",
+ "backup_settings": "Налаштування резервного копіювання",
+ "backup_settings_description": "Керування налаштуваннями резервного копіювання бази даних",
"check_all": "Перевірити все",
"cleared_jobs": "Очищені завдання для: {job}",
"config_set_by_file": "Налаштовано за допомогою конфіг-файлу",
@@ -41,35 +48,40 @@
"confirm_email_below": "Для підтвердження введіть \"{email}\" нижче",
"confirm_reprocess_all_faces": "Ви впевнені, що хочете повторно визначити всі обличчя? Це також призведе до видалення імен з усіх облич.",
"confirm_user_password_reset": "Ви впевнені, що хочете скинути пароль користувача {user}?",
- "crontab_guru": "",
+ "create_job": "Створити завдання",
+ "cron_expression": "Cron вираз",
+ "cron_expression_description": "Встановіть інтервал сканування, використовуючи формат cron. Для отримання додаткової інформації зверніться до напр. Crontab Guru",
+ "cron_expression_presets": "Попередні налаштування cron виразів",
"disable_login": "Вимкнути вхід",
- "disabled": "",
"duplicate_detection_job_description": "Запустити машинне навчання на активах для виявлення схожих зображень. Залежить від інтелектуального пошуку",
"exclusion_pattern_description": "Шаблони виключень дозволяють ігнорувати файли та папки під час сканування вашої бібліотеки. Це корисно, якщо у вас є папки, які містять файли, які ви не хочете імпортувати, наприклад, RAW-файли.",
"external_library_created_at": "Зовнішня бібліотека (створена {date})",
"external_library_management": "Керування зовнішніми бібліотеками",
"face_detection": "Виявлення обличчя",
- "face_detection_description": "Виявлення обличчя на активах з використанням машинного навчання. Для відео розглядається лише ескіз. Опція \"Усі\" повторно обробляє всі активи. Опція \"Відсутні\" ставить в чергу активи, які ще не були оброблені. Виявлені обличчя будуть поставлені в чергу для визначення обличчя після завершення виявлення обличчя, групуючи їх в існуючих або нових людей.",
- "facial_recognition_job_description": "Групувати виявлені обличчя у людей. Цей крок виконується після завершення виявлення обличчя. Опція \"Усі\" перегруповує всі обличчя. Опція \"Відсутні\" ставить в чергу обличчя, які ще не мають призначеної особи.",
+ "face_detection_description": "Виявлення облич на медіафайлах за допомогою машинного навчання. Для відео обробляється лише ескіз. \"Оновити\" повторно обробляє всі файли. \"Скинути\" додатково очищає всі поточні дані про обличчя. \"Відсутні\" ставить у чергу файли, які ще не були оброблені. Виявлені обличчя будуть поставлені в чергу для розпізнавання після завершення виявлення, групуючи їх у вже існуючих або нових людей.",
+ "facial_recognition_job_description": "Групування виявлених облич у людей. Цей крок виконується після завершення виявлення облич. \"Скинути\" повторно кластеризує всі обличчя. \"Відсутні\" ставить у чергу обличчя, яким ще не призначено людину.",
"failed_job_command": "Команда {command} не виконалася для завдання: {job}",
"force_delete_user_warning": "ПОПЕРЕДЖЕННЯ: Це негайно призведе до видалення користувача і всіх активів. Цю дію не можна скасувати, і файли не можна буде відновити.",
"forcing_refresh_library_files": "Примусове оновлення всіх файлів бібліотеки",
+ "image_format": "Формат",
"image_format_description": "Формат WebP виробляє меньші файлів, ніж JPEG, але його кодування вимагає більше часу.",
"image_prefer_embedded_preview": "Надати перевагу вбудованому перегляду",
"image_prefer_embedded_preview_setting_description": "Використовуйте вбудовані попередні перегляди у RAW фотографіях як вхідні дані для обробки зображень, коли це можливо. Це може забезпечити більш точні кольори для деяких зображень, але якість попереднього перегляду залежить від камери та зображення можуть мати більше артефактів стиснення.",
"image_prefer_wide_gamut": "Віддають перевагу широкій гамі",
- "image_prefer_wide_gamut_setting_description": "Для ескізів використовуйте дисплей P3. Це краще зберігає яскравість зображень з широким колірним простором, але на старих пристроях зі старою версією браузера зображення можуть виглядати інакше. sRGB-зображення зберігаються у форматі sRGB, щоб уникнути зсуву кольорів.",
- "image_preview_format": "Формат прев'ю",
- "image_preview_resolution": "Роздільність прев'ю",
- "image_preview_resolution_description": "Використовується при перегляді окремої фотографії та для машинного навчання. Вища роздільність може зберігати більше деталей, але потребує більше часу на кодування, має більший розмір файлу і може знижувати реакцію програми.",
+ "image_prefer_wide_gamut_setting_description": "Для мініатюр використовуйте дисплей P3. Це краще зберігає яскравість зображень з широким колірним простором, але на старих пристроях зі старою версією браузера зображення можуть виглядати інакше. sRGB-зображення зберігаються у форматі sRGB, щоб уникнути зсуву кольорів.",
+ "image_preview_description": "Зображення середнього розміру з видаленими метаданими, яке використовується при перегляді одного об'єкта та для машинного навчання",
+ "image_preview_quality_description": "Якість попереднього перегляду від 1 до 100. Вища оцінка означає кращу якість, але створює більші файли та може зменшити швидкість роботи програми. Встановлення низького значення може вплинути на якість машинного навчання.",
+ "image_preview_title": "Налаштування попереднього перегляду",
"image_quality": "Якість",
- "image_quality_description": "Якість зображення від 1 до 100. Чим вище, тим краще якість, але створюються більші файли, цей параметр впливає на прев'ю і мініатюри зображень.",
+ "image_resolution": "Роздільність",
+ "image_resolution_description": "Вища роздільність може зберігати більше деталей, але займає більше часу для кодування, має більші розміри файлів і може зменшити швидкість роботи програми.",
"image_settings": "Налаштування зображення",
"image_settings_description": "Керуйте якістю та роздільною здатністю згенерованих зображень",
- "image_thumbnail_format": "Формат ескізу",
- "image_thumbnail_resolution": "Розмір ескізу",
- "image_thumbnail_resolution_description": "Використовується при перегляді груп фотографій (основна стрічка, перегляд альбому тощо). Вища роздільна здатність може зберегти більше деталей, але вимагає більше часу для кодування, має більший розмір файлів і може знижувати чутливість додатку.",
+ "image_thumbnail_description": "Маленька мініатюра із видаленими метаданими, що використовується для перегляду груп фотографій, наприклад, на основній лінії часу",
+ "image_thumbnail_quality_description": "Якість мініатюри від 1 до 100. Вища оцінка означає кращу якість, але створює більші файли та може зменшити швидкість роботи програми.",
+ "image_thumbnail_title": "Налаштування мініатюр",
"job_concurrency": "{job} одночасно",
+ "job_created": "Завдання створено",
"job_not_concurrency_safe": "Це завдання не є безпечним для одночасного виконання.",
"job_settings": "Налаштування завдань",
"job_settings_description": "Управління паралельністю завдань",
@@ -77,9 +89,6 @@
"jobs_delayed": "{jobCount, plural, other {# відкладено}}",
"jobs_failed": "{jobCount, plural, other {# не вдалося}}",
"library_created": "Створена бібліотека: {library}",
- "library_cron_expression": "Вираз Cron",
- "library_cron_expression_description": "Встановіть інтервал сканування за допомогою формату Cron. Для отримання додаткової інформації дивіться, наприклад, на Crontab Guru",
- "library_cron_expression_presets": "Шаблони виразів Cron",
"library_deleted": "Бібліотеку видалено",
"library_import_path_description": "Вкажіть папку для імпорту. Цю папку, включно з підпапками, буде проскановано на наявність зображень і відео.",
"library_scanning": "Періодичне сканування",
@@ -122,7 +131,7 @@
"machine_learning_smart_search_description": "Пошук зображень за допомогою семантичних вбудовувань CLIP",
"machine_learning_smart_search_enabled": "Увімкнути розумний пошук",
"machine_learning_smart_search_enabled_description": "Якщо ця функція вимкнена, зображення не будуть кодуватися для розумного пошуку.",
- "machine_learning_url_description": "URL сервера машинного навчання",
+ "machine_learning_url_description": "URL сервера машинного навчання. Якщо надано більше одного URL, сервери будуть опитуватися по черзі, поки один з них не відповість успішно, у порядку від першого до останнього.",
"manage_concurrency": "Керування паралельністю завдань",
"manage_log_settings": "Керування налаштуваннями журналу",
"map_dark_style": "Темний стиль",
@@ -152,7 +161,7 @@
"note_cannot_be_changed_later": "ПРИМІТКА: Це не можна змінити пізніше!",
"note_unlimited_quota": "Примітка: Введіть 0 для необмеженого обсягу квоти",
"notification_email_from_address": "З адреси",
- "notification_email_from_address_description": "Адреса електронної пошти відправника, наприклад: \"Immich Photo Server {label} - це мітка зберігання користувача",
"system_settings": "Системні налаштування",
+ "tag_cleanup_job": "Очистити тег",
+ "template_email_available_tags": "Ви можете використовувати наступні змінні у вашому шаблоні: {tags}",
+ "template_email_if_empty": "Якщо шаблон порожній, буде використано стандартний ел. лист.",
+ "template_email_invite_album": "Шаблон запрошення до альбому",
+ "template_email_preview": "Попередній перегляд",
+ "template_email_settings": "Шаблони ел. листів",
+ "template_email_settings_description": "Керувати шаблонами сповіщень ел. пошти",
+ "template_email_update_album": "Оновити шаблон альбому",
+ "template_email_welcome": "Шаблон вітального ел. листа",
+ "template_settings": "Шаблони сповіщень",
+ "template_settings_description": "Керувати шаблонами для сповіщень.",
"theme_custom_css_settings": "Власний CSS",
"theme_custom_css_settings_description": "Каскадні таблиці стилів дозволяють настроювати дизайн Immich.",
"theme_settings": "Налаштування теми",
"theme_settings_description": "Налаштування персоналізації веб-інтерфейсу Immich",
"these_files_matched_by_checksum": "Ці файли відповідають своїм контрольним сумам",
"thumbnail_generation_job": "Створення мініатюр",
- "thumbnail_generation_job_description": "Створити великі, малі та розмиті ескізи для кожного ресурсу, а також ескізи для кожної особи",
- "transcode_policy_description": "",
+ "thumbnail_generation_job_description": "Створити великі, малі та розмиті мініатюри для кожного ресурсу, а також мініатюри для кожної особи",
"transcoding_acceleration_api": "API прискорення",
"transcoding_acceleration_api_description": "API, яка буде взаємодіяти з вашим пристроєм для прискорення транскодування. Ця настройка працює у \"найкращих умовах\" і, в разі невдачі, перейде на програмне транскодування. Підтримка VP9 може або не може працювати, залежно від вашого обладнання.",
"transcoding_acceleration_nvenc": "NVENC (вимагає графічного процесора NVIDIA)",
@@ -271,7 +292,7 @@
"transcoding_hardware_acceleration": "Апаратне прискорення",
"transcoding_hardware_acceleration_description": "Експериментальний режим: значно швидший, але при однаковому бітрейті може мати меншу якість",
"transcoding_hardware_decoding": "Апаратне декодування",
- "transcoding_hardware_decoding_setting_description": "Застосовується тільки до NVENC, QSV і RKMPP. Вмикає наскрізне прискорення на заміну лише прискорення кодування. Може працювати не з усіма відео.",
+ "transcoding_hardware_decoding_setting_description": "Увімкнення наскрізного прискорення замість прискорення лише кодування. Може не працювати для всіх відео.",
"transcoding_hevc_codec": "Кодек HEVC",
"transcoding_max_b_frames": "Максимальна кількість проміжних кадрів",
"transcoding_max_b_frames_description": "Вищі значення покращують ефективність стиснення, але збільшують час кодування. Можуть бути несумісні з апаратним прискоренням на старих пристроях. Значення 0 вимикає B-фрейми, а -1 автоматично налаштовує це значення.",
@@ -297,8 +318,6 @@
"transcoding_threads_description": "Вищі значення прискорюють кодування, але залишають менше місця для обробки інших завдань сервером під час активності. Це значення не повинно бути більше кількості ядер процесора. Максимізує використання, якщо встановлено на 0.",
"transcoding_tone_mapping": "Тонова картографія",
"transcoding_tone_mapping_description": "Намагається зберегти вигляд HDR-відео при конвертації в SDR. Кожен алгоритм робить різні компроміси щодо кольору, деталізації та яскравості. Алгоритм Hable зберігає деталі, Mobius - кольори, Reinhard - яскравість.",
- "transcoding_tone_mapping_npl": "Тонова картографія NPL",
- "transcoding_tone_mapping_npl_description": "Кольори будуть налаштовані для нормального вигляду на дисплеї цього яскравості. Протилежно до інтуїтивного, менші значення збільшують яскравість відео, а вищі - навпаки, оскільки вони компенсують яскравість дисплея. Значення 0 автоматично налаштовує це значення.",
"transcoding_transcode_policy": "Політика перекодування",
"transcoding_transcode_policy_description": "Політика транскодування для відео. HDR відео завжди буде транскодуватись (крім випадків, коли транскодування вимкнено).",
"transcoding_two_pass_encoding": "Кодування з двома проходами",
@@ -312,8 +331,9 @@
"trash_settings_description": "Керування налаштуваннями кошика",
"untracked_files": "Невідстежувані файли",
"untracked_files_description": "Ці файли не відстежуються програмою. Вони можуть бути результатом невдалого переміщення, перерваного завантаження або залишитися через помилку програми",
+ "user_cleanup_job": "Очищення користувача",
"user_delete_delay": "Акаунт {user} і його ресурси будуть заплановані для остаточного видалення через {delay, plural, one {# день} few {# дні} many {# днів} other {# днів}}.",
- "user_delete_delay_settings": "Видалити затримку",
+ "user_delete_delay_settings": "Відкладене видалення",
"user_delete_delay_settings_description": "Кількість днів після видалення для остаточного видалення акаунта користувача та його ресурсів. Задача видалення користувача запускається опівночі для перевірки користувачів, готових до видалення. Зміни цього налаштування будуть оцінені під час наступного виконання.",
"user_delete_immediately": "Акаунт та ресурси користувача {user} будуть негайно поставлені в чергу на остаточне видалення.",
"user_delete_immediately_checkbox": "Поставити користувача та ресурси в чергу для негайного видалення",
@@ -378,7 +398,6 @@
"archive_or_unarchive_photo": "Архівувати або розархівувати фото",
"archive_size": "Розмір архіву",
"archive_size_description": "Налаштувати розмір архіву для завантаження (у GiB)",
- "archived": "",
"archived_count": "{count, plural, other {Архівовано #}}",
"are_these_the_same_person": "Це та сама людина?",
"are_you_sure_to_do_this": "Ви впевнені, що хочете це зробити?",
@@ -389,7 +408,7 @@
"asset_has_unassigned_faces": "Є нерозпізнані обличчя",
"asset_hashing": "Хешування...",
"asset_offline": "Актив вимкнено",
- "asset_offline_description": "Цей ресурс відключений. Immich не може отримати доступ до його місцезнаходження файлів. Будь ласка, переконайтеся, що ресурс доступний, а потім знову проскануйте бібліотеку.",
+ "asset_offline_description": "Цей зовнішній актив більше не знайдено на диску. Будь ласка, зверніться до адміністратора Immich за допомогою.",
"asset_skipped": "Пропущено",
"asset_skipped_in_trash": "У смітнику",
"asset_uploaded": "Завантажено",
@@ -402,7 +421,7 @@
"assets_moved_to_trash_count": "Переміщено {count, plural, one {# ресурс} few {# ресурси} other {# ресурсів}} у кошик",
"assets_permanently_deleted_count": "Остаточно видалено {count, plural, one {# ресурс} few {# ресурси} other {# ресурсів}}",
"assets_removed_count": "Вилучено {count, plural, one {# ресурс} few {# ресурси} other {# ресурсів}}",
- "assets_restore_confirmation": "Ви впевнені, що хочете відновити всі видалені ресурси? Цю дію не можна скасувати!",
+ "assets_restore_confirmation": "Ви впевнені, що хочете відновити всі свої активи з кошика? Цю дію не можна скасувати! Зверніть увагу, що будь-які офлайн-активи не можуть бути відновлені таким чином.",
"assets_restored_count": "Відновлено {count, plural, one {# ресурс} few {# ресурси} other {# ресурсів}}",
"assets_trashed_count": "Поміщено в кошик {count, plural, one {# ресурс} few {# ресурси} other {# ресурсів}}",
"assets_were_part_of_album_count": "{count, plural, one {Ресурс був} few {Ресурси були} other {Ресурси були}} вже частиною альбому",
@@ -413,6 +432,7 @@
"birthdate_saved": "Дата народження успішно збережена",
"birthdate_set_description": "Дата народження використовується для обчислення віку цієї особи на момент фотографії.",
"blurred_background": "Розмитий фон",
+ "bugs_and_feature_requests": "Помилки та Запити",
"build": "Збірка",
"build_image": "Створити зображення",
"bulk_delete_duplicates_confirmation": "Ви впевнені, що хочете масово видалити {count, plural, one {# дубльований ресурс} few {# дубльовані ресурси} other {# дубльованих ресурсів}}? Це дія залишить найбільший ресурс у кожній групі і остаточно видалить всі інші дублікати. Цю дію неможливо скасувати!",
@@ -427,10 +447,6 @@
"cannot_merge_people": "Неможливо об'єднати людей",
"cannot_undo_this_action": "Ви не можете скасувати цю дію!",
"cannot_update_the_description": "Неможливо оновити опис",
- "cant_apply_changes": "",
- "cant_get_faces": "",
- "cant_search_people": "",
- "cant_search_places": "",
"change_date": "Змінити дату",
"change_expiration_time": "Змінити термін дії",
"change_location": "Змінити місцезнаходження",
@@ -462,6 +478,7 @@
"confirm": "Підтвердіть",
"confirm_admin_password": "Підтвердити пароль адміністратора",
"confirm_delete_shared_link": "Ви впевнені, що хочете видалити це спільне посилання?",
+ "confirm_keep_this_delete_others": "Усі інші ресурси в стеку буде видалено, окрім цього ресурсу. Ви впевнені, що хочете продовжити?",
"confirm_password": "Підтвердити пароль",
"contain": "Містити",
"context": "Контекст",
@@ -511,16 +528,19 @@
"delete_key": "Видалити ключ",
"delete_library": "Видалити бібліотеку",
"delete_link": "Видалити посилання",
+ "delete_others": "Видалити інші",
"delete_shared_link": "Видалити спільне посилання",
"delete_tag": "Видалити тег",
"delete_tag_confirmation_prompt": "Ви впевнені, що хочете видалити тег {tagName}?",
"delete_user": "Видалити користувача",
"deleted_shared_link": "Видалено загальне посилання",
+ "deletes_missing_assets": "Видаляє активи, які відсутні на диску",
"description": "Опис",
"details": "ПОДРОБИЦІ",
"direction": "Напрям",
"disabled": "Вимкнено",
"disallow_edits": "Заборонити редагування",
+ "discord": "Discord",
"discover": "Виявити",
"dismiss_all_errors": "Пропустити всі помилки",
"dismiss_error": "Пропустити помилку",
@@ -529,6 +549,7 @@
"display_original_photos": "Відображення оригінальних фотографій",
"display_original_photos_setting_description": "Перевага відображення оригінального фото при перегляді ресурсу, якщо оригінальний ресурс сумісний з вебом. Це може призвести до повільнішого відображення фотографій.",
"do_not_show_again": "Не показувати це повідомлення знову",
+ "documentation": "Документація",
"done": "Готово",
"download": "Скачати",
"download_include_embedded_motion_videos": "Вбудовані відео",
@@ -541,13 +562,6 @@
"duplicates": "Дублікати",
"duplicates_description": "Визначити, які групи є дублікатами",
"duration": "Тривалість",
- "durations": {
- "days": "{days, plural, one {день} few {{days, number} дні} many {{days, number} днів} other {{days, number} днів}}",
- "hours": "{hours, plural, one {година} few {{hours, number} години} many {{hours, number} годин} other {{hours, number} години}}",
- "minutes": "{minutes, plural, one {хвилина} few {{minutes, number} хвилини} many {{minutes, number} хвилин} other {{minutes, number} хвилин}}",
- "months": "{months, plural, one {місяць} few {{months, number} місяці} many {{months, number} місяців} other {{months, number} місяців}}",
- "years": "{years, plural, one {рік} few {{years, number} роки} many {{years, number} років} other {{years, number} років}}"
- },
"edit": "Редагувати",
"edit_album": "Редагувати альбом",
"edit_avatar": "Редагувати аватар",
@@ -572,8 +586,6 @@
"editor_crop_tool_h2_aspect_ratios": "Пропорції зображення",
"editor_crop_tool_h2_rotation": "Орієнтація",
"email": "Електронна пошта",
- "empty": "",
- "empty_album": "",
"empty_trash": "Очистити кошик",
"empty_trash_confirmation": "Ви впевнені, що хочете очистити кошик? Це остаточно видалить всі ресурси в кошику з Immich.\nЦю дію не можна скасувати!",
"enable": "Увімкнути",
@@ -607,6 +619,7 @@
"failed_to_create_shared_link": "Не вдалося створити спільне посилання",
"failed_to_edit_shared_link": "Не вдалося відредагувати спільне посилання",
"failed_to_get_people": "Не вдалося отримати інформацію про людей",
+ "failed_to_keep_this_delete_others": "Не вдалося зберегти цей ресурс і видалити інші ресурси",
"failed_to_load_asset": "Не вдалося завантажити ресурс",
"failed_to_load_assets": "Не вдалося завантажити ресурси",
"failed_to_load_people": "Не вдалося завантажити людей",
@@ -634,8 +647,6 @@
"unable_to_change_location": "Неможливо змінити місцезнаходження",
"unable_to_change_password": "Не вдається змінити пароль",
"unable_to_change_visibility": "Неможливо змінити видимість для {count, plural, one {# особи} few {# осіб} other {# людей}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "Неможливо завершити вхід через OAuth",
"unable_to_connect": "Не вдається підключитися",
"unable_to_connect_to_server": "Не вдається підключитися до сервера",
@@ -660,6 +671,7 @@
"unable_to_get_comments_number": "Не вдалося отримати кількість коментарів",
"unable_to_get_shared_link": "Не вдалося отримати спільне посилання",
"unable_to_hide_person": "Неможливо приховати людину",
+ "unable_to_link_motion_video": "Не вдається зв'язати рухоме відео",
"unable_to_link_oauth_account": "Не вдається прив'язати обліковий запис OAuth",
"unable_to_load_album": "Неможливо завантажити альбом",
"unable_to_load_asset_activity": "Неможливо завантажити активність активу",
@@ -675,12 +687,10 @@
"unable_to_remove_album_users": "Неможливо видалити користувачів з альбому",
"unable_to_remove_api_key": "Не вдається видалити ключ API",
"unable_to_remove_assets_from_shared_link": "Не вдається видалити ресурси зі спільного посилання",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "Неможливо видалити автономні файли",
"unable_to_remove_library": "Не вдається видалити бібліотеку",
- "unable_to_remove_offline_files": "Неможливо видалити автономні файли",
"unable_to_remove_partner": "Не вдається видалити партнера",
"unable_to_remove_reaction": "Не вдалося видалити реакцію",
- "unable_to_remove_user": "",
"unable_to_repair_items": "Не вдалося відновити елементи",
"unable_to_reset_password": "Не вдається скинути пароль",
"unable_to_resolve_duplicate": "Не вдається вирішити дублікат",
@@ -700,6 +710,7 @@
"unable_to_submit_job": "Не вдалося відправити завдання",
"unable_to_trash_asset": "Неможливо вилучити актив",
"unable_to_unlink_account": "Не вдається відв'язати обліковий запис",
+ "unable_to_unlink_motion_video": "Не вдається від'єднати рухоме відео",
"unable_to_update_album_cover": "Неможливо оновити обкладинку альбому",
"unable_to_update_album_info": "Неможливо оновити інформацію про альбом",
"unable_to_update_library": "Не вдалося оновити бібліотеку",
@@ -709,10 +720,6 @@
"unable_to_update_user": "Неможливо оновити дані користувача",
"unable_to_upload_file": "Не вдалося завантажити файл"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Exif",
"exit_slideshow": "Вийти зі слайд-шоу",
"expand_all": "Розгорнути все",
@@ -727,37 +734,32 @@
"external": "Зовнішні",
"external_libraries": "Зовнішні бібліотеки",
"face_unassigned": "Не призначено",
- "failed_to_get_people": "",
+ "failed_to_load_assets": "Не вдалося завантажити ресурси",
"favorite": "До улюблених",
"favorite_or_unfavorite_photo": "Додати до обраних або видалити з обраних фото",
"favorites": "Улюблені",
- "feature": "",
"feature_photo_updated": "Вибране фото оновлено",
- "featurecollection": "",
"features": "Додаткові можливості",
"features_setting_description": "Керування додатковими можливостями додатка",
"file_name": "Ім'я файлу",
"file_name_or_extension": "Ім'я файлу або розширення",
"filename": "Ім'я файлу",
- "files": "",
"filetype": "Тип файлу",
"filter_people": "Фільтр по людях",
"find_them_fast": "Швидко знаходьте їх за назвою за допомогою пошуку",
"fix_incorrect_match": "Виправити неправильний збіг",
"folders": "Папки",
"folders_feature_description": "Перегляд перегляду папок для фотографій і відео у файловій системі",
- "force_re-scan_library_files": "Примусово пересканувати всі файли бібліотеки",
"forward": "Переслати",
"general": "Загальні",
"get_help": "Отримати допомогу",
"getting_started": "Початок",
"go_back": "Повернутися назад",
"go_to_search": "Перейти до пошуку",
- "go_to_share_page": "Перейдіть на сторінку спільного доступу",
"group_albums_by": "Групувати альбоми за...",
"group_no": "Без групування",
- "group_owner": "Групування за власником",
- "group_year": "Групувати за роками",
+ "group_owner": "За власником",
+ "group_year": "За роком",
"has_quota": "Квота",
"hi_user": "Привіт {name} ({email})",
"hide_all_people": "Сховати всіх",
@@ -779,10 +781,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Відео} other {Зображення}} зроблено в {city}, {country} з {person1} та {person2} {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Відео} other {Зображення}} зроблено в {city}, {country} з {person1}, {person2} та {person3} {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Відео} other {Зображення}} зроблено в {city}, {country} з {person1}, {person2} та ще {additionalCount, number} особами {date}",
- "image_alt_text_people": "{count, plural, =1 {з {person1}} =2 {з {person1} та {person2}} =3 {з {person1}, {person2}, та {person3}} other {з {person1}, {person2}, та {others, number} ін.}}",
- "image_alt_text_place": "у {city}, {country}",
- "image_taken": "{isVideo, select, true {Зняте відео} other {Зроблений знімок}}",
- "img": "",
"immich_logo": "Логотип Immich",
"immich_web_interface": "Веб інтерфейс Immich",
"import_from_json": "Імпорт з JSON",
@@ -803,10 +801,11 @@
"invite_people": "Запросити",
"invite_to_album": "Запросити в альбом",
"items_count": "{count, plural, one {# елемент} few {# елементи} many {# елементів} other {# елемента}}",
- "job_settings_description": "",
"jobs": "Завдання",
"keep": "Залишити",
"keep_all": "Зберегти все",
+ "keep_this_delete_others": "Залишити цей ресурс, видалити інші",
+ "kept_this_deleted_others": "Збережено цей ресурс і видалено {count, plural, one {# ресурс} few {# ресурси} many {# ресурсів} other {# ресурсу}}",
"keyboard_shortcuts": "Сполучення клавіш",
"language": "Мова",
"language_setting_description": "Виберіть мову, якій ви надаєте перевагу",
@@ -818,33 +817,9 @@
"level": "Рівень",
"library": "Бібліотека",
"library_options": "Параметри бібліотеки",
- "license_account_info": "Ваш обліковий запис має ліцензію",
- "license_activated_subtitle": "Дякуємо за підтримку Immich та програмного забезпечення з відкритим кодом",
- "license_activated_title": "Ваша ліцензія успішно активована",
- "license_button_activate": "Активувати",
- "license_button_buy": "Купити",
- "license_button_buy_license": "Купити ліцензію",
- "license_button_select": "Оберіть",
- "license_failed_activation": "Не вдалося активувати ліцензію. Будь ласка, перевірте свою електронну пошту, щоб отримати правильний ліцензійний ключ!",
- "license_individual_description_1": "1 ліцензія на користувача на будь-якому сервері",
- "license_individual_title": "Індивідуальна ліцензія",
- "license_info_licensed": "Ліцензовано",
- "license_info_unlicensed": "Без ліцензії",
- "license_input_suggestion": "Маєте ліцензію? Введіть ключ нижче",
- "license_license_subtitle": "Придбайте ліцензію на підтримку Immich",
- "license_license_title": "ЛІЦЕНЗІЯ",
- "license_lifetime_description": "Довічна ліцензія",
- "license_per_server": "На один сервер",
- "license_per_user": "На одного користувача",
- "license_server_description_1": "1 ліцензія на сервер",
- "license_server_description_2": "Ліцензія для всіх користувачів на сервері",
- "license_server_title": "Ліцензія на сервер",
- "license_trial_info_1": "Ви використовуєте неліцензійну версію Immich",
- "license_trial_info_2": "Ви використовуєте Immich приблизно",
- "license_trial_info_3": "{accountAge, plural, one {# день} few {# дні} many {# днів} other {# дня}}",
- "license_trial_info_4": "Будь ласка, розгляньте можливість придбання ліцензії для підтримки подальшого розвитку сервісу",
"light": "Світла",
"like_deleted": "Лайк видалено",
+ "link_motion_video": "Посилання на рухоме відео",
"link_options": "Налаштування посилання",
"link_to_oauth": "Приєднання до OAuth",
"linked_oauth_account": "Приєднаний акаунт OAuth",
@@ -863,6 +838,7 @@
"look": "Дивитися",
"loop_videos": "Циклічні відео",
"loop_videos_description": "Увімкнути циклічне відтворення відео.",
+ "main_branch_warning": "Ви використовуєте версію для розробників; ми настійно рекомендуємо використовувати релізну версію!",
"make": "Виробник",
"manage_shared_links": "Керування спільними посиланнями",
"manage_sharing_with_partners": "Керуйте спільним використанням з партнерами",
@@ -932,6 +908,7 @@
"notifications": "Сповіщення",
"notifications_setting_description": "Керування сповіщеннями",
"oauth": "OAuth",
+ "official_immich_resources": "Офіційні ресурси Immich",
"offline": "Офлайн",
"offline_paths": "Недоступні шляхи",
"offline_paths_description": "Ці результати можуть бути пов'язані з ручним видаленням файлів, які не є частиною зовнішньої бібліотеки.",
@@ -944,7 +921,6 @@
"onboarding_welcome_user": "Ласкаво просимо, {user}",
"online": "Доступний",
"only_favorites": "Лише обрані",
- "only_refreshes_modified_files": "Оновлює лише змінені файли",
"open_in_map_view": "Відкрити у перегляді мапи",
"open_in_openstreetmap": "Відкрити в OpenStreetMap",
"open_the_search_filters": "Відкрийте фільтри пошуку",
@@ -982,13 +958,12 @@
"people_edits_count": "Відредаговано {count, plural, one {# особу} few {# особи} many {# осіб} other {# людей}}",
"people_feature_description": "Перегляд фотографій і відео, згрупованих за людьми",
"people_sidebar_description": "Відображення посилання на людей у бічній панелі",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Попередження про видалення",
"permanent_deletion_warning_setting_description": "Показувати попередження при остаточному видаленні ресурсів",
"permanently_delete": "Видалити назавжди",
"permanently_delete_assets_count": "Остаточно видалити {count, plural, one {ресурс} other {ресурси}}",
"permanently_delete_assets_prompt": "Ви впевнені, що хочете назавжди видалити {count, plural, one {цей ресурс?} other {ці # ресурси?}} Це також видалить {count, plural, one {його з його} other {їх з їхніх}} альбому(ів).",
- "permanently_deleted_asset": "Видалити об'єкт назавжди",
+ "permanently_deleted_asset": "Видалити назавжди",
"permanently_deleted_assets_count": "Видалено остаточно {count, plural, one {# ресурс} few {# ресурси} many {# ресурсів} other {# ресурсів}}",
"person": "Людина",
"person_hidden": "{name}{hidden, select, true { (приховано)} other {}}",
@@ -1004,7 +979,6 @@
"play_memories": "Відтворити спогади",
"play_motion_photo": "Відтворювати рухомі фото",
"play_or_pause_video": "Відтворення або призупинення відео",
- "point": "",
"port": "Порт",
"preset": "Передвстановлення",
"preview": "Прев'ю",
@@ -1049,12 +1023,10 @@
"purchase_server_description_2": "Статус підтримки",
"purchase_server_title": "Сервер",
"purchase_settings_server_activated": "Ключ продукту сервера керується адміністратором",
- "range": "",
"rating": "Зоряний рейтинг",
"rating_clear": "Очистити рейтинг",
"rating_count": "{count, plural, one {# зірка} few {# зірки} many {# зірок} other {# зірок}}",
"rating_description": "Показувати рейтинг EXIF на інформаційній панелі",
- "raw": "",
"reaction_options": "Опції реакції",
"read_changelog": "Прочитати зміни в оновленні",
"reassign": "Перепризначити",
@@ -1062,14 +1034,17 @@
"reassigned_assets_to_new_person": "Перепризначено {count, plural, one {# ресурс} other {# ресурси}} новій особі",
"reassing_hint": "Призначити обрані ресурси існуючій особі",
"recent": "Нещодавно",
+ "recent-albums": "Останні альбоми",
"recent_searches": "Нещодавні пошукові запити",
"refresh": "Оновити",
"refresh_encoded_videos": "Оновити закодовані відео",
+ "refresh_faces": "Оновити обличчя",
"refresh_metadata": "Оновити метадані",
"refresh_thumbnails": "Оновити мініатюри",
"refreshed": "Оновлений",
- "refreshes_every_file": "Оновлює кожен файл",
+ "refreshes_every_file": "Повторно читає всі існуючі та нові файли",
"refreshing_encoded_video": "Оновлення закодованого відео",
+ "refreshing_faces": "Оновлення облич",
"refreshing_metadata": "Оновлення метаданих",
"regenerating_thumbnails": "Відновлення мініатюр",
"remove": "Вилучити",
@@ -1077,10 +1052,11 @@
"remove_assets_shared_link_confirmation": "Ви впевнені, що хочете видалити {count, plural, one {# ресурс} few {# ресурси} many {# ресурсів} other {# ресурсів}} з цього спільного посилання?",
"remove_assets_title": "Видалити об'єкти?",
"remove_custom_date_range": "Видалити користувацький діапазон дат",
+ "remove_deleted_assets": "Видалення автономних файлів",
"remove_from_album": "Видалити з альбому",
"remove_from_favorites": "Видалити з обраного",
"remove_from_shared_link": "Видалити зі спільного посилання",
- "remove_offline_files": "Видалення автономних файлів",
+ "remove_url": "Видалити URL",
"remove_user": "Видалити користувача",
"removed_api_key": "Видалено ключ API: {name}",
"removed_from_archive": "Видалено з архіву",
@@ -1097,7 +1073,6 @@
"reset": "Скидання",
"reset_password": "Скинути пароль",
"reset_people_visibility": "Відновити видимість людей",
- "reset_settings_to_default": "",
"reset_to_default": "Скидання до налаштувань за замовчуванням",
"resolve_duplicates": "Усунути дублікати",
"resolved_all_duplicates": "Усі дублікати усунуто",
@@ -1117,8 +1092,7 @@
"saved_settings": "Налаштування збережено",
"say_something": "Скажіть що-небудь",
"scan_all_libraries": "Сканувати всі бібліотеки",
- "scan_all_library_files": "Повторне сканування всіх файлів бібліотеки",
- "scan_new_library_files": "Сканування нових файлів бібліотеки",
+ "scan_library": "Сканувати",
"scan_settings": "Налаштування сканування",
"scanning_for_album": "Сканування альбому...",
"search": "Пошук",
@@ -1136,6 +1110,7 @@
"search_options": "Опції пошуку",
"search_people": "Шукати людей",
"search_places": "Пошук місць",
+ "search_settings": "Налаштування пошуку",
"search_state": "Пошук регіону...",
"search_tags": "Пошук тегів...",
"search_timezone": "Пошук часового поясу...",
@@ -1160,7 +1135,6 @@
"selected_count": "{count, plural, one {# обраний} other {# обраних}}",
"send_message": "Надіслати повідомлення",
"send_welcome_email": "Надішліть вітальний лист",
- "server": "Сервер",
"server_offline": "Сервер офлайн",
"server_online": "Сервер онлайн",
"server_stats": "Статистика сервера",
@@ -1203,6 +1177,7 @@
"show_person_options": "Показати параметри людини",
"show_progress_bar": "Показати індикатор прогресу",
"show_search_options": "Показати параметри пошуку",
+ "show_slideshow_transition": "Показати перехід слайд-шоу",
"show_supporter_badge": "Значок підтримки",
"show_supporter_badge_description": "Показати значок підтримки",
"shuffle": "Перемішати",
@@ -1223,8 +1198,8 @@
"sort_oldest": "Старі фото",
"sort_recent": "Нещодавні",
"sort_title": "Заголовок",
- "source": "Джерело",
- "stack": "Стек",
+ "source": "Вихідний код",
+ "stack": "У стопку",
"stack_duplicates": "Групувати дублікати",
"stack_select_one_photo": "Вибрати одне основне фото для групи",
"stack_selected_photos": "Сгрупувати обрані фотографії",
@@ -1244,13 +1219,16 @@
"submit": "Підтвердити",
"suggestions": "Пропозиції",
"sunrise_on_the_beach": "Світанок на пляжі",
+ "support": "Підтримка",
+ "support_and_feedback": "Підтримка та зворотний зв'язок",
+ "support_third_party_description": "Вашу установку Immich було упаковано третьою стороною. Проблеми, з якими ви стикаєтесь, можуть бути викликані цим пакетом, тому спочатку зверніться до них за допомогою, використовуючи наведені нижче посилання.",
"swap_merge_direction": "Змінити напрямок об'єднання",
"sync": "Синхронізувати",
"tag": "Тег",
"tag_assets": "Додати теги",
"tag_created": "Створено тег: {tag}",
"tag_feature_description": "Перегляд фотографій та відео, згрупованих за логічними темами тегів",
- "tag_not_found_question": "Не знайшли тег? Створіть його тут",
+ "tag_not_found_question": "Не вдається знайти тег? Створити новий тег.",
"tag_updated": "Оновлено тег: {tag}",
"tagged_assets": "Позначено тегом {count, plural, one {# актив} other {# активи}}",
"tags": "Теги",
@@ -1259,18 +1237,19 @@
"theme_selection": "Вибір теми",
"theme_selection_description": "Автоматично встановлювати тему на світлу або темну залежно від системних налаштувань вашого браузера",
"they_will_be_merged_together": "Вони будуть об'єднані разом",
+ "third_party_resources": "Ресурси третіх сторін",
"time_based_memories": "Спогади, що базуються на часі",
+ "timeline": "Хронологія",
"timezone": "Часовий пояс",
"to_archive": "Архів",
"to_change_password": "Змінити пароль",
"to_favorite": "Обране",
"to_login": "Вхід",
"to_parent": "Повернутись назад",
- "to_root": "На початок",
"to_trash": "Смітник",
"toggle_settings": "Перемикання налаштувань",
"toggle_theme": "Перемикання теми",
- "toggle_visibility": "Перемикання видимості",
+ "total": "Усього",
"total_usage": "Загальне використання",
"trash": "Кошик",
"trash_all": "Видалити все",
@@ -1280,14 +1259,13 @@
"trashed_items_will_be_permanently_deleted_after": "Видалені елементи будуть остаточно видалені через {days, plural, one {# день} few {# дні} many {# днів} other {# днів}}.",
"type": "Тип",
"unarchive": "Розархівувати",
- "unarchived": "",
"unarchived_count": "{count, plural, other {Повернуто з архіву #}}",
"unfavorite": "Видалити з улюблених",
"unhide_person": "Розкрити особу",
"unknown": "Невідомо",
- "unknown_album": "",
"unknown_year": "Невідомий рік",
"unlimited": "Без обмежень",
+ "unlink_motion_video": "Від'єднати рухоме відео",
"unlink_oauth": "Від'єднайте OAuth",
"unlinked_oauth_account": "Відключити акаунт OAuth",
"unnamed_album": "Альбом без назви",
@@ -1316,13 +1294,13 @@
"use_custom_date_range": "Використовувати користувацький діапазон дат",
"user": "Користувач",
"user_id": "ID Користувача",
- "user_license_settings": "Ліцензія",
- "user_license_settings_description": "Керування ліцензією",
"user_liked": "{user} вподобав {type, select, photo {це фото} video {це відео} asset {цей ресурс} other {це}}",
"user_purchase_settings": "Придбати",
"user_purchase_settings_description": "Керувати вашою покупкою",
"user_role_set": "Призначити {user} на роль {role}",
"user_usage_detail": "Деталі використання користувача",
+ "user_usage_stats": "Статистика використання акаунта",
+ "user_usage_stats_description": "Переглянути статистику використання акаунта",
"username": "Ім'я користувача",
"users": "Користувачі",
"utilities": "Утиліти",
@@ -1330,7 +1308,9 @@
"variables": "Змінні",
"version": "Версія",
"version_announcement_closing": "Твій друг, Алекс",
- "version_announcement_message": "Привіт, друг! В нас є нова версія додатку. Будь ласка, відвідайте релізні нотатки і переконайтеся, що ваші файли docker-compose.yml та .env актуальні, щоб уникнути будь-яких помилок конфігурації, особливо якщо ви використовуєте WatchTower або інші механізми автоматичного оновлення додатку.",
+ "version_announcement_message": "Привіт! Доступна нова версія Immich. Будь ласка, приділіть трохи часу для ознайомлення з примітками до випуску, щоб переконатися, що ваша установка оновлена і уникнути можливих помилок у налаштуваннях, особливо якщо ви використовуєте WatchTower або будь-який інший механізм, який автоматично оновлює ваш екземпляр Immich.",
+ "version_history": "Історія версій",
+ "version_history_item": "Встановлено {version} {date}",
"video": "Відео",
"video_hover_setting": "Відтворення мініатюри відео під час наведення курсору миші",
"video_hover_setting_description": "Відтворювати зображення відео при наведенні курсора на елемент. Навіть якщо вимкнено, відтворення може бути запущено, навівши курсор на піктограму відтворення.",
@@ -1342,16 +1322,16 @@
"view_all_users": "Переглянути всіх користувачів",
"view_in_timeline": "Переглянути в хронології",
"view_links": "Переглянути посилання",
+ "view_name": "Переглянути",
"view_next_asset": "Переглянути наступний ресурс",
"view_previous_asset": "Переглянути попередній ресурс",
"view_stack": "Перегляд стеку",
- "viewer": "",
"visibility_changed": "Видимість змінено для {count, plural, one {# особи} few {# осіб} many {# осіб} other {# осіб}}",
"waiting": "Очікують",
"warning": "Попередження",
"week": "Тиждень",
"welcome": "Ласкаво просимо",
- "welcome_to_immich": "Ласкаво просимо до immich",
+ "welcome_to_immich": "Ласкаво просимо до Immich",
"year": "Рік",
"years_ago": "{years, plural, one {# рік} few {# роки} many {# років} other {# років}} тому",
"yes": "Так",
diff --git a/i18n/ur.json b/i18n/ur.json
new file mode 100644
index 0000000000..0967ef424b
--- /dev/null
+++ b/i18n/ur.json
@@ -0,0 +1 @@
+{}
diff --git a/web/src/lib/i18n/vi.json b/i18n/vi.json
similarity index 91%
rename from web/src/lib/i18n/vi.json
rename to i18n/vi.json
index c4f23ec273..9c30ea2935 100644
--- a/web/src/lib/i18n/vi.json
+++ b/i18n/vi.json
@@ -1,5 +1,5 @@
{
- "about": "Giới thiệu",
+ "about": "Làm mới",
"account": "Tài khoản",
"account_settings": "Cài đặt tài khoản",
"acknowledge": "Ghi nhận",
@@ -28,11 +28,17 @@
"added_to_favorites_count": "Đã thêm {count, number} vào Mục yêu thích",
"admin": {
"add_exclusion_pattern_description": "Thêm quy tắc loại trừ. Hỗ trợ sử dụng ký tự *, **, và ?. Để bỏ qua tất cả các tập tin bất kỳ trong thư mục tên \"Raw\", hãy dùng \"**/Raw/**\". Để bỏ qua các tập tin có đuôi \".tif\", hãy dùng \"**/*.tif\". Để bỏ qua một đường dẫn cố định, hãy dùng \"/path/to/ignore/**\".",
+ "asset_offline_description": "Ảnh thư viện ngoài này không còn trên ổ đĩa và đã bị chuyển vào thùng rác. Nếu ảnh đã bị di chuyển trong thư viện, kiểm tra dòng thời gian của bạn để tìm ảnh mới tương ứng. Để khôi phục, hãy đảm bảo Immich có thể truy cập đường dẫn ảnh bên dưới và quét lại thư viện.",
"authentication_settings": "Đăng nhập",
"authentication_settings_description": "Quản lý mật khẩu, OAuth và các cài đặt xác thực khác",
"authentication_settings_disable_all": "Bạn có chắc chắn muốn vô hiệu hoá tất cả các phương thức đăng nhập? Đăng nhập sẽ bị vô hiệu hóa hoàn toàn.",
"authentication_settings_reenable": "Để bật lại, dùng Lệnh Máy chủ.",
"background_task_job": "Các tác vụ nền",
+ "backup_database": "Sao lưu dữ liệu",
+ "backup_database_enable_description": "Kích hoạt Sao lưu dữ liệu",
+ "backup_keep_last_amount": "Số lượng các bản Sao lưu được giữ lại",
+ "backup_settings": "Cài đặt sao lưu",
+ "backup_settings_description": "Quản lý các thông số cài đặt của Sao lưu dữ liệu",
"check_all": "Chọn tất cả",
"cleared_jobs": "Đã xoá các tác vụ: {job}",
"config_set_by_file": "Cấu hình hiện tại đang được đặt bởi một tập tin cấu hình",
@@ -41,35 +47,40 @@
"confirm_email_below": "Để xác nhận, nhập \"{email}\" bên dưới",
"confirm_reprocess_all_faces": "Bạn có chắc chắn muốn xử lý lại tất cả các khuôn mặt? Thao tác này sẽ xoá tên người đã được gán.",
"confirm_user_password_reset": "Bạn có chắc chắn muốn đặt lại mật khẩu của {user}?",
- "crontab_guru": "Crontab Guru",
+ "create_job": "Tạo tác vụ",
+ "cron_expression": "Biểu thức Cron",
+ "cron_expression_description": "Thiết lập khoảng thời gian để quét bằng biểu thức cron. Tham khảo Crontab Guru để biết thêm thông tin.",
+ "cron_expression_presets": "Mẫu biểu thức Cron",
"disable_login": "Vô hiệu hoá đăng nhập",
- "disabled": "",
- "duplicate_detection_job_description": "Sử dụng machine learning để phát hiện các hình ảnh giống nhau. Dựa vào Tìm kiếm Thông Minh",
+ "duplicate_detection_job_description": "Sử dụng Học máy để phát hiện các hình ảnh giống nhau. Dựa vào Tìm kiếm Thông Minh",
"exclusion_pattern_description": "Quy tắc loại trừ cho bạn bỏ qua các tập tin và thư mục khi quét thư viện của bạn. Điều này hữu ích nếu bạn có các thư mục chứa tập tin bạn không muốn nhập, chẳng hạn như các tập tin RAW.",
"external_library_created_at": "Thư viện bên ngoài (được tạo vào {date})",
"external_library_management": "Quản lý thư viện bên ngoài",
"face_detection": "Phát hiện khuôn mặt",
- "face_detection_description": "Sử dụng machine learning để phát hiện các khuôn mặt trong ảnh. Với video, chỉ thực hiện trên ảnh thu nhỏ. Xử lý lại tất cả các hình ảnh. Các hỉnh ảnh trong hàng đợi bị bỏ lỡ chưa được xử lý. Các khuôn mặt được phát hiện sẽ được xếp vào hàng đợi cho quá trình Nhận dạng khuôn mặt sau khi quá trình Phát hiện khuôn mặt hoàn tất, nhóm chúng vào người hiện có hoặc tạo người mới.",
- "facial_recognition_job_description": "Nhóm các khuôn mặt đã phát hiện thành người. Bước này được thực hiện sau khi Phát hiện khuôn mặt hoàn tất. Xử lý lại việc nhóm cho toàn bộ khuôn mặt. Các khuôn mặt trong hàng đợi bị bỏ lỡ chưa được gán cho người nào.",
+ "face_detection_description": "Sử dụng Học máy để nhận dạng khuôn mặt trong ảnh. Đối với video, sẽ sử dụng hình ảnh thu nhỏ. \"Làm Mới\" sẽ xử lý lại tất cả các hình. \"Xử Lý Lại\" sẽ xoá hết tất cả dữ liệu khuôn mặt và nhận dạng lại. \"Còn Thiếu\" sẽ xử lý các ảnh còn thiếu. Các khuôn mặt được phát hiện sẽ được xử lý bởi tác vụ Nhận Dạng Khuôn Mặt để nhóm chúng vào những người đã có hoặc người mới.",
+ "facial_recognition_job_description": "Nhóm các khuôn mặt đã phát hiện thành người. Bước này được thực hiện sau khi tác vụ Phát hiện Khuôn mặt hoàn tất. \"Xử Lý Lại\" sẽ nhóm lại tất cả các khuôn mặt. \"Còn Thiếu\" sẽ xử lý các khuôn mặt chưa có gán với người nào.",
"failed_job_command": "Lệnh {command} không thực hiện được tác vụ: {job}",
"force_delete_user_warning": "CẢNH BÁO: Thao tác này sẽ ngay lập tức xoá người dùng và tất cả ảnh. Hành động này không thể hoàn tác và các tập tin không thể khôi phục.",
"forcing_refresh_library_files": "Làm mới toàn bộ thư viện ảnh",
+ "image_format": "Định dạng",
"image_format_description": "Định dạng WebP dung lượng nhỏ hơn JPEG, nhưng mã hóa chậm hơn.",
"image_prefer_embedded_preview": "Ưu tiên ảnh xem trước đi kèm",
"image_prefer_embedded_preview_setting_description": "Ứng dụng sẽ sử dụng ảnh xem trước trong ảnh RAW khi có sẵn để xử lý hình ảnh. Điều này có thể giúp tái tạo màu sắc chính xác hơn cho một số hình ảnh, nhưng chất lượng của ảnh xem trước phụ thuộc vào máy ảnh và có thể bị nén.",
"image_prefer_wide_gamut": "Ưu tiên gam màu mở rộng",
- "image_prefer_wide_gamut_setting_description": "Hiển thị ảnh thu nhỏ ở gam màu Display P3. Điều này giúp giữ màu sắc rực rỡ của những hình ảnh có gam màu rộng, nhưng hình ảnh có thể trông khác trên các thiết bị cũ và trình duyệt cũ. Hình ảnh sRGB được giữ nguyên để tránh thay đổi màu sắc.",
- "image_preview_format": "Định dạng xem trước",
- "image_preview_resolution": "Độ phân giải xem trước",
- "image_preview_resolution_description": "Được sử dụng khi xem một bức ảnh và cho machine learning. Độ phân giải cao hơn có thể giữ lại nhiều chi tiết hơn nhưng mất nhiều thời gian mã hóa, có kích thước lớn hơn và có thể làm giảm khả năng phản hồi của ứng dụng.",
+ "image_prefer_wide_gamut_setting_description": "Hiển thị hình thu nhỏ ở gam màu Display P3. Điều này giúp giữ màu sắc rực rỡ của những hình ảnh có gam màu rộng, nhưng hình ảnh có thể trông khác trên các thiết bị cũ và trình duyệt cũ. Hình ảnh sRGB được giữ nguyên để tránh thay đổi màu sắc.",
+ "image_preview_description": "Hình ảnh kích thước trung bình đã loại bỏ metadata, được sử dụng khi xem một hình duy nhất và cho Học máy",
+ "image_preview_quality_description": "Chất lượng xem trước từ 1-100. Càng cao càng tốt, nhưng sẽ tạo ra các tập tin lớn hơn có thể làm giảm khả năng phản hồi của ứng dụng. Sử dụng giá trị thấp có thể ảnh hưởng đến chất lượng tác vụ Học máy.",
+ "image_preview_title": "Cài đặt Xem trước",
"image_quality": "Chất lượng",
- "image_quality_description": "Chất lượng hình ảnh từ 1 - 100. Giá trị càng cao hình ảnh đẹp hơn nhưng kích thước tập tin sẽ lớn, lựa chọn này ảnh hưởng tới ảnh xem trước và ảnh thu nhỏ.",
+ "image_resolution": "Độ phân giải",
+ "image_resolution_description": "Độ phân giải cao hơn sẽ rõ nét hơn nhưng tốn nhiều thời gian hơn để mã hóa, kích thước tập tin lớn hơn và có thể làm giảm khả năng phản hồi của ứng dụng.",
"image_settings": "Hình ảnh",
"image_settings_description": "Quản lý chất lượng và độ phân giải của hình ảnh được tạo",
- "image_thumbnail_format": "Định dạng ảnh thu nhỏ",
- "image_thumbnail_resolution": "Độ phân giải ảnh thu nhỏ",
- "image_thumbnail_resolution_description": "Dùng khi xem một nhóm các ảnh (dòng thời gian chính, xem album, v.v.). Độ phân giải cao hơn có thể giữ lại nhiều chi tiết hơn nhưng mất nhiều thời gian mã hóa, có kích thước lớn hơn và có thể làm giảm khả năng phản hồi của ứng dụng.",
+ "image_thumbnail_description": "Hình thu nhỏ kích thước nhỏ đã loại bỏ metadata, dùng khi xem nhiều ảnh cùng lúc, ví dụ như xem Dòng Thời gian chính",
+ "image_thumbnail_quality_description": "Chất lượng hình thu nhỏ từ 1-100. Càng cao càng tốt, nhưng sẽ tạo ra các tập tin lớn hơn có thể làm giảm khả năng phản hồi của ứng dụng.",
+ "image_thumbnail_title": "Cài đặt hình thu nhỏ",
"job_concurrency": "{job} thực hiện đồng thời",
+ "job_created": "Tác vụ đã được tạo",
"job_not_concurrency_safe": "Tác vụ này không an toàn để thực hiện đồng thời.",
"job_settings": "Tác vụ",
"job_settings_description": "Quản lý mức độ thực hiện đồng thời của tác vụ",
@@ -77,9 +88,6 @@
"jobs_delayed": "{jobCount, plural, other {# tác vụ bị hoãn lại}}",
"jobs_failed": "{jobCount, plural, other {# tác vụ bị thất bại}}",
"library_created": "Đã tạo thư viện: {library}",
- "library_cron_expression": "Cú pháp Cron",
- "library_cron_expression_description": "Đặt lịch quét bằng định dạng cron. Để biết thêm thông tin, vui lòng tham khảo ví dụ. Crontab Guru",
- "library_cron_expression_presets": "Các mẫu biểu thức Cron",
"library_deleted": "Thư viện đã bị xoá",
"library_import_path_description": "Chọn thư mục để nhập. Ứng dụng sẽ quét tất cả hình ảnh và video trong thư mục này bao gồm các thư mục con.",
"library_scanning": "Quét định kỳ",
@@ -96,13 +104,13 @@
"logging_settings": "Ghi nhật ký",
"machine_learning_clip_model": "Mô hình CLIP",
"machine_learning_clip_model_description": "Tên của mô hình CLIP được liệt kê tại đây. Bạn cần chạy lại tác vụ \"Tìm kiếm thông minh\" cho tất cả hình ảnh sau khi thay đổi mô hình.",
- "machine_learning_duplicate_detection": "Phát hiện ảnh trùng lặp",
+ "machine_learning_duplicate_detection": "Phát hiện Trùng lặp",
"machine_learning_duplicate_detection_enabled": "Bật phát hiện ảnh trùng lặp",
"machine_learning_duplicate_detection_enabled_description": "Nếu bị tắt, các ảnh trùng lặp giống hệt nhau vẫn sẽ bị loại bỏ.",
"machine_learning_duplicate_detection_setting_description": "Sử dụng vector nhúng CLIP để tìm kiếm ảnh trùng lặp",
- "machine_learning_enabled": "Bật machine learning",
- "machine_learning_enabled_description": "Nếu bị tắt, tất cả các tính năng ML sẽ bị vô hiệu hoá kể các cài đặt bên dưới.",
- "machine_learning_facial_recognition": "Nhận dạng khuôn mặt",
+ "machine_learning_enabled": "Bật Học máy",
+ "machine_learning_enabled_description": "Nếu bị tắt, tất cả các tính năng và cài đặt Học máy sẽ bị loại bỏ.",
+ "machine_learning_facial_recognition": "Nhận dạng Khuôn mặt",
"machine_learning_facial_recognition_description": "Phát hiện, nhận dạng và nhóm các khuôn mặt trong ảnh",
"machine_learning_facial_recognition_model": "Mô hình nhận dạng khuôn mặt",
"machine_learning_facial_recognition_model_description": "Các mô hình được liệt kê theo thứ tự kích thước giảm dần. Mô hình càng lớn, kết quả càng chính xác nhưng sẽ chạy chậm và tốn nhiều bộ nhớ hơn. Lưu ý rằng sau khi thay đổi mô hình, bạn cần chạy lại tác vụ \"Phát hiện Khuôn mặt\" cho tất cả hình ảnh.",
@@ -116,14 +124,14 @@
"machine_learning_min_detection_score_description": "Mức điểm tin cậy tối thiểu để phát hiện khuôn mặt, từ 0 đến 1. Giá trị càng thấp, nhiều khuôn mặt sẽ được phát hiện nhưng có thể tăng khả năng phát hiện sai.",
"machine_learning_min_recognized_faces": "Số khuôn mặt tối thiểu để nhận dạng",
"machine_learning_min_recognized_faces_description": "Số khuôn mặt tối thiểu cần nhận dạng để tạo thành một người. Tăng số lượng này sẽ làm cho Nhận dạng khuôn mặt chính xác hơn, nhưng sẽ tăng khả năng một khuôn mặt không được gán cho người phù hợp.",
- "machine_learning_settings": "Machine Learning",
- "machine_learning_settings_description": "Quản lý các tính năng và cài đặt của machine learning",
- "machine_learning_smart_search": "Tìm kiếm thông minh",
+ "machine_learning_settings": "Cài đặt Học máy",
+ "machine_learning_settings_description": "Quản lý các tính năng và cài đặt Học máy",
+ "machine_learning_smart_search": "Tìm kiếm Thông minh",
"machine_learning_smart_search_description": "Tìm kiếm hình ảnh theo ngữ cảnh với CLIP",
- "machine_learning_smart_search_enabled": "Bật tìm kiếm thông minh",
+ "machine_learning_smart_search_enabled": "Bật Tìm kiếm Thông minh",
"machine_learning_smart_search_enabled_description": "Nếu tắt, hình ảnh sẽ không được mã hoá để tìm kiếm thông minh.",
- "machine_learning_url_description": "Địa chỉ máy chủ machine learning",
- "manage_concurrency": "Quản lý tác vụ",
+ "machine_learning_url_description": "Địa chỉ máy chủ Học máy",
+ "manage_concurrency": "Quản lý Tác vụ",
"manage_log_settings": "Quản lý cài đặt nhật ký",
"map_dark_style": "Giao diện tối",
"map_enable_description": "Bật tính năng bản đồ",
@@ -132,18 +140,18 @@
"map_implications": "Tính năng bản đồ phụ thuộc vào dịch vụ thẻ bản đồ bên ngoài (tiles.immich.cloud)",
"map_light_style": "Giao diện sáng",
"map_manage_reverse_geocoding_settings": "Quản lý cài đặt Mã hóa địa lý ngược",
- "map_reverse_geocoding": "Mã hoá địa lý ngược (Reverse Geocoding)",
+ "map_reverse_geocoding": "Mã hoá Địa lý Ngược (Reverse Geocoding)",
"map_reverse_geocoding_enable_description": "Bật mã hoá địa lý ngược",
- "map_reverse_geocoding_settings": "Mã hoá địa lý ngược (Reverse Geocoding)",
+ "map_reverse_geocoding_settings": "Cài đặt Mã hoá Địa lý Ngược (Reverse Geocoding)",
"map_settings": "Bản đồ",
"map_settings_description": "Quản lý cài đặt bản đồ",
"map_style_description": "Đường dẫn URL đến tập tin tuỳ biến bản đồ style.json",
- "metadata_extraction_job": "Trích xuất siêu dữ liệu",
- "metadata_extraction_job_description": "Trích xuất siêu dữ liệu từ mỗi ảnh, chẳng hạn như GPS, khuôn mặt và độ phân giải",
+ "metadata_extraction_job": "Trích xuất Metadata",
+ "metadata_extraction_job_description": "Trích xuất Metadata từ mỗi ảnh, chẳng hạn như GPS, khuôn mặt và độ phân giải",
"metadata_faces_import_setting": "Bật tính năng nhập khuôn mặt",
"metadata_faces_import_setting_description": "Nhập khuôn mặt từ dữ liệu EXIF hình ảnh và tập tin đi kèm",
- "metadata_settings": "Siêu dữ liệu",
- "metadata_settings_description": "Quản lý cài đặt siêu dữ liệu",
+ "metadata_settings": "Cài đặt Metadata",
+ "metadata_settings_description": "Quản lý cài đặt Metadata",
"migration_job": "Di chuyển dữ liệu",
"migration_job_description": "Di chuyển hình thu nhỏ của các ảnh và khuôn mặt sang cấu trúc thư mục mới",
"no_paths_added": "Không có đường dẫn nào được thêm vào",
@@ -152,7 +160,7 @@
"note_cannot_be_changed_later": "LƯU Ý: Cài đặt này không thể thay đổi được sau khi lưu!",
"note_unlimited_quota": "Lưu ý: Nhập 0 để hạn mức không giới hạn",
"notification_email_from_address": "Địa chỉ email người gửi",
- "notification_email_from_address_description": "Địa chỉ email của người gửi, ví dụ: \"Immich Photo Server {label} là Nhãn lưu trữ của người dùng",
"system_settings": "Cài đặt hệ thống",
+ "tag_cleanup_job": "Dọn dẹp thẻ",
"theme_custom_css_settings": "CSS tùy chỉnh",
"theme_custom_css_settings_description": "Cascading Style Sheets cho phép tùy chỉnh thiết kế của Immich.",
"theme_settings": "Chủ đề",
@@ -245,7 +254,6 @@
"these_files_matched_by_checksum": "Các tập tin này khớp với các giá trị băm của chúng",
"thumbnail_generation_job": "Tạo hình thu nhỏ",
"thumbnail_generation_job_description": "Tạo hình thu nhỏ lớn, nhỏ và mờ cho mỗi ảnh, cũng như hình thu nhỏ cho mỗi người",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "API Tăng tốc",
"transcoding_acceleration_api_description": "API này sẽ tương tác với thiết bị của bạn để tăng tốc quá trình chuyển mã. Cài đặt này hoạt động theo nguyên tắc 'cố gắng hết sức'': nó sẽ quay lại chuyển mã phần mềm nếu gặp lỗi. VP9 có thể hoạt động hoặc không tùy thuộc vào phần cứng của bạn.",
"transcoding_acceleration_nvenc": "NVENC (yêu cầu GPU NVIDIA)",
@@ -271,7 +279,7 @@
"transcoding_hardware_acceleration": "Tăng tốc phần cứng",
"transcoding_hardware_acceleration_description": "(Thử nghiệm) nhanh hơn nhiều nhưng sẽ có chất lượng thấp hơn ở cùng bitrate",
"transcoding_hardware_decoding": "Giải mã phần cứng",
- "transcoding_hardware_decoding_setting_description": "Chỉ áp dụng cho NVENC, QSV và RKMPP. Kích hoạt tăng tốc toàn bộ quá trình xử lý video chứ không chỉ là mã hóa. Điều này có thể không áp dụng được cho mọi video.",
+ "transcoding_hardware_decoding_setting_description": "Cho phép tăng tốc đầu cuối thay vì chỉ tăng tốc mã hóa. Có thể không hoạt động trên tất cả video.",
"transcoding_hevc_codec": "Codec HEVC",
"transcoding_max_b_frames": "Số B-frame tối đa",
"transcoding_max_b_frames_description": "Giá trị cao hơn cải thiện hiệu quả nén, nhưng làm chậm mã hóa. Có thể không tương thích với tăng tốc phần cứng trên các thiết bị cũ. Giá trị 0 để tắt B-frames, trong khi giá trị -1 để tự động thiết lập giá trị này.",
@@ -297,8 +305,6 @@
"transcoding_threads_description": "Giá trị cao hơn dẫn đến mã hóa nhanh hơn nhưng để lại ít không gian hơn cho máy chủ xử lý các tác vụ khác khi đang hoạt động. Giá trị này không nên vượt quá số lượng lõi CPU. Tối đa hóa sử dụng nếu đặt thành 0.",
"transcoding_tone_mapping": "Ánh Xạ Sắc Thái (Tone-mapping)",
"transcoding_tone_mapping_description": "Cố gắng duy trì chất lượng video tốt nhất khi chuyển đổi từ HDR sang SDR. Mỗi thuật toán có sự đánh đổi khác nhau về màu sắc, chi tiết và độ sáng. Hable giữ chi tiết, Mobius giữ màu sắc và Reinhard giữ độ sáng.",
- "transcoding_tone_mapping_npl": "Ánh Xạ Sắc Thái NPL (Tone-mapping NPL)",
- "transcoding_tone_mapping_npl_description": "Màu sắc sẽ được điều chỉnh để trông bình thường với độ sáng của màn hình này. Theo cách trái ngược, giá trị thấp hơn sẽ tăng độ sáng của video và ngược lại vì nó bù đắp cho độ sáng của màn hình. Giá trị 0 để tự động thiết lập giá trị này.",
"transcoding_transcode_policy": "Quy tắc chuyển mã",
"transcoding_transcode_policy_description": "Quy tắc khi nào video nên được chuyển mã. Các video HDR luôn được chuyển mã (ngoại trừ khi tính năng chuyển mã bị tắt).",
"transcoding_two_pass_encoding": "Mã hóa hai lần",
@@ -312,6 +318,7 @@
"trash_settings_description": "Quản lý cài đặt thùng rác",
"untracked_files": "Các tập tin không được theo dõi",
"untracked_files_description": "Những tập tin này không được ứng dụng theo dõi. Chúng có thể là kết quả của các thao tác di chuyển thất bại, tải lên bị gián đoạn, hoặc bị bỏ lại do lỗi",
+ "user_cleanup_job": "Dọn dẹp người dùng",
"user_delete_delay": "Tài khoản và các ảnh của {user} sẽ được lên lịch xóa vĩnh viễn sau {delay, plural, one {# ngày} other {# ngày}}.",
"user_delete_delay_settings": "Thời gian xóa",
"user_delete_delay_settings_description": "Số ngày chờ xóa để xóa vĩnh viễn tài khoản và các ảnh của người dùng. Tác vụ xóa người dùng chạy vào giữa đêm để kiểm tra các người dùng sẵn sàng bị xóa. Thay đổi cài đặt này sẽ được đánh giá vào lần thực hiện tiếp theo.",
@@ -378,7 +385,6 @@
"archive_or_unarchive_photo": "Lưu trữ hoặc huỷ lưu trữ ảnh",
"archive_size": "Kích thước gói nén",
"archive_size_description": "Cấu hình kích thước nén cho các tập tin tải xuống (đơn vị GiB)",
- "archived": "",
"archived_count": "{count, plural, other {Đã lưu trữ # mục}}",
"are_these_the_same_person": "Đây có phải cùng một người không?",
"are_you_sure_to_do_this": "Bạn có chắc chắn muốn thực hiện điều này không?",
@@ -388,8 +394,8 @@
"asset_filename_is_offline": "Ảnh {filename} đang ngoại tuyến",
"asset_has_unassigned_faces": "Ảnh chưa được gán khuôn mặt",
"asset_hashing": "Đang băm...",
- "asset_offline": "Ảnh ngoại tuyến",
- "asset_offline_description": "Tập tin này đang ngoại tuyến. Immich không thể truy cập vị trí tập tin của nó. Vui lòng đảm bảo tập tin có sẵn và sau đó quét lại thư viện.",
+ "asset_offline": "Ảnh Ngoại tuyến",
+ "asset_offline_description": "Tập tin bên ngoài này không còn trên ổ đĩa. Vui lòng liên hệ quản trị viên Immich của bạn để được trợ giúp.",
"asset_skipped": "Đã bỏ qua",
"asset_skipped_in_trash": "Trong thùng rác",
"asset_uploaded": "Đã tải lên",
@@ -402,7 +408,7 @@
"assets_moved_to_trash_count": "Đã chuyển {count, plural, one {# mục} other {# mục}} vào thùng rác",
"assets_permanently_deleted_count": "Đã xóa vĩnh viễn {count, plural, one {# mục} other {# mục}}",
"assets_removed_count": "Đã xóa {count, plural, one {# mục} other {# mục}}",
- "assets_restore_confirmation": "Bạn có chắc chắn muốn khôi phục tất cả các mục đã xóa của mình không? Bạn không thể hoàn tác hành động này!",
+ "assets_restore_confirmation": "Bạn có chắc chắn muốn khôi phục tất cả các mục đã xóa của mình không? Bạn không thể hoàn tác hành động này! Lưu ý rằng không thể khôi phục các ảnh ngoại tuyến theo cách này.",
"assets_restored_count": "Đã khôi phục {count, plural, one {# mục} other {# mục}}",
"assets_trashed_count": "Đã chuyển {count, plural, one {# mục} other {# mục}} vào thùng rác",
"assets_were_part_of_album_count": "{count, plural, one {Mục đã} other {Các mục đã}} có trong album",
@@ -413,6 +419,7 @@
"birthdate_saved": "Ngày sinh đã được lưu thành công",
"birthdate_set_description": "Ngày sinh được sử dụng để tính tuổi của người này tại thời điểm chụp ảnh.",
"blurred_background": "Nền mờ",
+ "bugs_and_feature_requests": "Lỗi & Yêu cầu tính năng",
"build": "Dựng",
"build_image": "Bản dựng",
"bulk_delete_duplicates_confirmation": "Bạn có chắc chắn muốn xóa hàng loạt {count, plural, one {# mục trùng lặp} other {# mục trùng lặp}} không? Điều này sẽ giữ lại ảnh chất lượng nhất của mỗi nhóm và xóa vĩnh viễn tất cả các bản trùng lặp khác. Bạn không thể hoàn tác hành động này!",
@@ -427,10 +434,6 @@
"cannot_merge_people": "Không thể hợp nhất người",
"cannot_undo_this_action": "Bạn không thể hoàn tác hành động này!",
"cannot_update_the_description": "Không thể cập nhật mô tả",
- "cant_apply_changes": "",
- "cant_get_faces": "",
- "cant_search_people": "",
- "cant_search_places": "",
"change_date": "Thay đổi ngày",
"change_expiration_time": "Thay đổi thời gian hết hạn",
"change_location": "Thay đổi vị trí",
@@ -462,6 +465,7 @@
"confirm": "Xác nhận",
"confirm_admin_password": "Xác nhận mật khẩu quản trị viên",
"confirm_delete_shared_link": "Bạn có chắc chắn muốn xóa liên kết chia sẻ này không?",
+ "confirm_keep_this_delete_others": "Các hình còn lại trong stack này sẽ bị xoá ngoại trừ hình này. Bạn có chắc chắn tiếp tục không?",
"confirm_password": "Xác nhận mật khẩu",
"contain": "Chứa",
"context": "Ngữ cảnh",
@@ -509,18 +513,21 @@
"delete_api_key_prompt": "Bạn có chắc chắn muốn xóa khóa API này không?",
"delete_duplicates_confirmation": "Bạn có chắc chắn muốn xóa vĩnh viễn các bản trùng lặp này không?",
"delete_key": "Xóa khóa",
- "delete_library": "Xóa thư viện",
+ "delete_library": "Xóa Thư viện",
"delete_link": "Xóa liên kết",
+ "delete_others": "Xoá các hình còn lại",
"delete_shared_link": "Xóa liên kết chia sẻ",
"delete_tag": "Xóa thẻ",
"delete_tag_confirmation_prompt": "Bạn có chắc chắn muốn xóa thẻ {tagName} không?",
"delete_user": "Xóa người dùng",
"deleted_shared_link": "Đã xóa liên kết chia sẻ",
+ "deletes_missing_assets": "Xóa các ảnh không còn tồn tại trên ổ đĩa",
"description": "Mô tả",
"details": "Chi tiết",
"direction": "Hướng",
"disabled": "Tắt",
"disallow_edits": "Không cho phép chỉnh sửa",
+ "discord": "Discord",
"discover": "Tìm",
"dismiss_all_errors": "Bỏ qua tất cả lỗi",
"dismiss_error": "Bỏ qua lỗi",
@@ -529,6 +536,7 @@
"display_original_photos": "Hiển thị ảnh gốc",
"display_original_photos_setting_description": "Ưu tiên hiển thị ảnh gốc khi xem ảnh thay vì hình thu nhỏ khi ảnh gốc tương thích với web. Điều này có thể dẫn đến tốc độ hiển thị ảnh chậm hơn.",
"do_not_show_again": "Không hiển thị thông báo này nữa",
+ "documentation": "Tài liệu",
"done": "Xong",
"download": "Tải xuống",
"download_include_embedded_motion_videos": "Các video nhúng",
@@ -541,13 +549,6 @@
"duplicates": "Mục trùng lặp",
"duplicates_description": "Xem lại các nhóm ảnh bị nghi ngờ trùng lặp và chọn những mục bạn muốn giữ hoặc xóa",
"duration": "Thời gian",
- "durations": {
- "days": "",
- "hours": "",
- "minutes": "",
- "months": "",
- "years": ""
- },
"edit": "Chỉnh sửa",
"edit_album": "Chỉnh sửa album",
"edit_avatar": "Chỉnh sửa ảnh đại diện",
@@ -572,8 +573,6 @@
"editor_crop_tool_h2_aspect_ratios": "Tỷ lệ khung hình",
"editor_crop_tool_h2_rotation": "Xoay",
"email": "Email",
- "empty": "",
- "empty_album": "",
"empty_trash": "Dọn sạch thùng rác",
"empty_trash_confirmation": "Bạn có chắc chắn muốn dọn sạch thùng rác không? Điều này sẽ xóa vĩnh viễn tất cả các mục trong thùng rác khỏi Immich.\nBạn không thể hoàn tác hành động này!",
"enable": "Bật",
@@ -607,6 +606,7 @@
"failed_to_create_shared_link": "Không thể tạo liên kết chia sẻ",
"failed_to_edit_shared_link": "Không thể chỉnh sửa liên kết chia sẻ",
"failed_to_get_people": "Không thể tải người",
+ "failed_to_keep_this_delete_others": "Có lỗi trong quá trình xoá các hình",
"failed_to_load_asset": "Không thể tải ảnh",
"failed_to_load_assets": "Không thể tải các ảnh",
"failed_to_load_people": "Không thể tải người",
@@ -634,8 +634,6 @@
"unable_to_change_location": "Không thể thay đổi vị trí",
"unable_to_change_password": "Không thể thay đổi mật khẩu",
"unable_to_change_visibility": "Không thể thay đổi trạng thái hiển thị cho {count, plural, one {# người} other {# người}}",
- "unable_to_check_item": "",
- "unable_to_check_items": "",
"unable_to_complete_oauth_login": "Không thể hoàn tất đăng nhập OAuth",
"unable_to_connect": "Không thể kết nối",
"unable_to_connect_to_server": "Không thể kết nối đến máy chủ",
@@ -660,6 +658,7 @@
"unable_to_get_comments_number": "Không thể lấy số lượng bình luận",
"unable_to_get_shared_link": "Không thể lấy liên kết chia sẻ",
"unable_to_hide_person": "Không thể ẩn người",
+ "unable_to_link_motion_video": "Không thể liên kết video chuyển động",
"unable_to_link_oauth_account": "Không thể liên kết tài khoản OAuth",
"unable_to_load_album": "Không thể tải album",
"unable_to_load_asset_activity": "Không thể tải hoạt động của ảnh",
@@ -675,12 +674,10 @@
"unable_to_remove_album_users": "Không thể xóa người dùng khỏi album",
"unable_to_remove_api_key": "Không thể xóa khóa API",
"unable_to_remove_assets_from_shared_link": "Không thể xóa các mục đã chọn khỏi liên kết chia sẻ",
- "unable_to_remove_comment": "",
+ "unable_to_remove_deleted_assets": "Không thể xóa tập tin ngoại tuyến",
"unable_to_remove_library": "Không thể xóa thư viện",
- "unable_to_remove_offline_files": "Không thể xóa tập tin ngoại tuyến",
"unable_to_remove_partner": "Không thể xóa người thân",
"unable_to_remove_reaction": "Không thể xóa phản ứng",
- "unable_to_remove_user": "",
"unable_to_repair_items": "Không thể sửa chữa các mục",
"unable_to_reset_password": "Không thể đặt lại mật khẩu",
"unable_to_resolve_duplicate": "Không thể xử lý trùng lặp",
@@ -700,6 +697,7 @@
"unable_to_submit_job": "Không thể gửi tác vụ",
"unable_to_trash_asset": "Không thể chuyển ảnh vào thùng rác",
"unable_to_unlink_account": "Không thể hủy liên kết tài khoản",
+ "unable_to_unlink_motion_video": "Không thể hủy liên kết video chuyển động",
"unable_to_update_album_cover": "Không thể cập nhật ảnh bìa album",
"unable_to_update_album_info": "Không thể cập nhật thông tin album",
"unable_to_update_library": "Không thể cập nhật thư viện",
@@ -709,10 +707,6 @@
"unable_to_update_user": "Không thể cập nhật người dùng",
"unable_to_upload_file": "Không thể tải tập tin lên"
},
- "every_day_at_onepm": "",
- "every_night_at_midnight": "",
- "every_night_at_twoam": "",
- "every_six_hours": "",
"exif": "Exif",
"exit_slideshow": "Thoát trình chiếu",
"expand_all": "Mở rộng tất cả",
@@ -727,33 +721,27 @@
"external": "Bên ngoài",
"external_libraries": "Thư viện bên ngoài",
"face_unassigned": "Chưa được gán",
- "failed_to_get_people": "",
"favorite": "Yêu thích",
"favorite_or_unfavorite_photo": "Yêu thích hoặc bỏ yêu thích ảnh",
"favorites": "Ảnh yêu thích",
- "feature": "",
"feature_photo_updated": "Đã cập nhật ảnh nổi bật",
- "featurecollection": "",
"features": "Tính năng",
"features_setting_description": "Quản lý các tính năng ứng dụng",
"file_name": "Tên tập tin",
"file_name_or_extension": "Tên hoặc phần mở rộng tập tin",
"filename": "Tên tập tin",
- "files": "",
"filetype": "Loại tập tin",
"filter_people": "Lọc người",
"find_them_fast": "Tìm nhanh bằng tên với tìm kiếm",
"fix_incorrect_match": "Sửa lỗi trùng khớp không chính xác",
"folders": "Thư mục",
"folders_feature_description": "Duyệt ảnh và video theo thư mục trên hệ thống tập tin",
- "force_re-scan_library_files": "Yêu cầu quét lại tất cả các tập tin thư viện",
"forward": "Tiến về phía trước",
"general": "Chung",
"get_help": "Nhận trợ giúp",
"getting_started": "Bắt đầu",
"go_back": "Quay lại",
"go_to_search": "Đi đến tìm kiếm",
- "go_to_share_page": "Đi đến trang chia sẻ",
"group_albums_by": "Nhóm album theo...",
"group_no": "Không nhóm",
"group_owner": "Nhóm theo chủ sở hữu",
@@ -779,7 +767,6 @@
"image_alt_text_date_place_2_people": "{isVideo, select, true {Video} other {Hình ảnh}} được chụp tại {city}, {country} với {person1} và {person2} vào {date}",
"image_alt_text_date_place_3_people": "{isVideo, select, true {Video} other {Hình ảnh}} được chụp tại {city}, {country} với {person1}, {person2}, và {person3} vào {date}",
"image_alt_text_date_place_4_or_more_people": "{isVideo, select, true {Video} other {Hình ảnh}} được chụp tại {city}, {country} với {person1}, {person2}, và {additionalCount, number} người khác vào {date}",
- "img": "",
"immich_logo": "Logo Immich",
"immich_web_interface": "Giao diện web Immich",
"import_from_json": "Nhập từ JSON",
@@ -800,10 +787,10 @@
"invite_people": "Mời mọi người",
"invite_to_album": "Mời vào album",
"items_count": "{count, plural, one {# mục} other {# mục}}",
- "job_settings_description": "",
"jobs": "Tác vụ",
"keep": "Giữ",
"keep_all": "Giữ tất cả",
+ "keep_this_delete_others": "Giữ tấm này và xoá tất cả còn lại",
"keyboard_shortcuts": "Phím tắt",
"language": "Ngôn ngữ",
"language_setting_description": "Chọn ngôn ngữ ưa thích của bạn",
@@ -836,6 +823,7 @@
"look": "Xem",
"loop_videos": "Lặp video",
"loop_videos_description": "Bật để video tự động lặp lại trong trình xem chi tiết.",
+ "main_branch_warning": "Bạn đang dùng phiên bản đang phát triển; chúng tôi khuyên bạn nên dùng phiên bản phát hành!",
"make": "Thương hiệu",
"manage_shared_links": "Quản lý liên kết chia sẻ",
"manage_sharing_with_partners": "Quản lý chia sẻ với người thân",
@@ -905,6 +893,7 @@
"notifications": "Thông báo",
"notifications_setting_description": "Quản lý thông báo",
"oauth": "OAuth",
+ "official_immich_resources": "Tài nguyên chính thức của Immich",
"offline": "Ngoại tuyến",
"offline_paths": "Đường dẫn ngoại tuyến",
"offline_paths_description": "Những kết quả này có thể do việc xóa thủ công các tập tin không phải là một phần của thư viện bên ngoài.",
@@ -917,7 +906,6 @@
"onboarding_welcome_user": "Chào mừng, {user}",
"online": "Trực tuyến",
"only_favorites": "Chỉ yêu thích",
- "only_refreshes_modified_files": "Chỉ làm mới các tập tin đã thay đổi",
"open_in_map_view": "Mở trong bản đồ",
"open_in_openstreetmap": "Mở trong OpenStreetMap",
"open_the_search_filters": "Mở bộ lọc tìm kiếm",
@@ -955,7 +943,6 @@
"people_edits_count": "Đã chỉnh sửa {count, plural, one {# người} other {# người}}",
"people_feature_description": "Duyệt ảnh và video được nhóm theo người",
"people_sidebar_description": "Hiển thị mục Mọi người trong thanh bên",
- "perform_library_tasks": "",
"permanent_deletion_warning": "Cảnh báo xóa vĩnh viễn",
"permanent_deletion_warning_setting_description": "Hiển thị cảnh báo khi xóa vĩnh viễn ảnh",
"permanently_delete": "Xóa vĩnh viễn",
@@ -977,7 +964,6 @@
"play_memories": "Phát kỷ niệm",
"play_motion_photo": "Phát ảnh chuyển động",
"play_or_pause_video": "Phát hoặc tạm dừng video",
- "point": "",
"port": "Cổng",
"preset": "Mẫu có sẵn",
"preview": "Xem trước",
@@ -1022,12 +1008,10 @@
"purchase_server_description_2": "Trạng thái người hỗ trợ",
"purchase_server_title": "Máy chủ",
"purchase_settings_server_activated": "Khóa sản phẩm máy chủ được quản lý bởi quản trị viên",
- "range": "",
"rating": "Xếp hạng sao",
"rating_clear": "Xóa đánh giá",
"rating_count": "{count, plural, one {# sao} other {# sao}}",
"rating_description": "Hiển thị xếp hạng EXIF trong bảng thông tin",
- "raw": "",
"reaction_options": "Tùy chọn phản ứng",
"read_changelog": "Đọc nhật ký thay đổi",
"reassign": "Gán lại",
@@ -1038,11 +1022,13 @@
"recent_searches": "Tìm kiếm gần đây",
"refresh": "Làm mới",
"refresh_encoded_videos": "Làm mới video đã mã hóa",
+ "refresh_faces": "Làm mới khuôn mặt",
"refresh_metadata": "Làm mới siêu dữ liệu",
"refresh_thumbnails": "Làm mới hình thu nhỏ",
"refreshed": "Đã làm mới",
- "refreshes_every_file": "Làm mới mọi tập tin",
+ "refreshes_every_file": "Đọc lại tất cả tập tin mới và hiện có",
"refreshing_encoded_video": "Đang làm mới video đã mã hóa",
+ "refreshing_faces": "Đang làm mới khuôn mặt",
"refreshing_metadata": "Đang làm mới siêu dữ liệu",
"regenerating_thumbnails": "Đang tạo lại hình thu nhỏ",
"remove": "Xóa",
@@ -1050,10 +1036,10 @@
"remove_assets_shared_link_confirmation": "Bạn có chắc chắn muốn xoá {count, plural, one {# mục} other {# mục}} khỏi liên kết chia sẻ này?",
"remove_assets_title": "Xóa mục?",
"remove_custom_date_range": "Bỏ chọn khoảng ngày tùy chỉnh",
+ "remove_deleted_assets": "Loại bỏ tập tin ngoại tuyến",
"remove_from_album": "Xóa khỏi album",
"remove_from_favorites": "Xóa khỏi Mục yêu thích",
"remove_from_shared_link": "Xóa khỏi liên kết chia sẻ",
- "remove_offline_files": "Loại bỏ tập tin ngoại tuyến",
"remove_user": "Xóa người dùng",
"removed_api_key": "Khóa API đã xóa: {name}",
"removed_from_archive": "Đã xoá khỏi Kho lưu trữ",
@@ -1070,7 +1056,6 @@
"reset": "Đặt lại",
"reset_password": "Đặt lại mật khẩu",
"reset_people_visibility": "Đặt lại trạng thái hiển thị của mọi người",
- "reset_settings_to_default": "",
"reset_to_default": "Đặt lại về mặc định",
"resolve_duplicates": "Xử lý các bản trùng lặp",
"resolved_all_duplicates": "Đã xử lý tất cả các bản trùng lặp",
@@ -1090,8 +1075,7 @@
"saved_settings": "Cài đặt đã lưu",
"say_something": "Nói điều gì đó",
"scan_all_libraries": "Quét tất cả thư viện",
- "scan_all_library_files": "Quét lại tất cả các tập tin thư viện",
- "scan_new_library_files": "Quét các tập tin thư viện mới",
+ "scan_library": "Quét",
"scan_settings": "Cài đặt quét",
"scanning_for_album": "Đang quét album...",
"search": "Tìm kiếm",
@@ -1109,6 +1093,7 @@
"search_options": "Tùy chọn tìm kiếm",
"search_people": "Tìm kiếm người",
"search_places": "Tìm kiếm địa điểm",
+ "search_settings": "Cài đặt tìm kiếm",
"search_state": "Tìm kiếm tỉnh...",
"search_tags": "Tìm kiếm thẻ...",
"search_timezone": "Tìm kiếm múi giờ...",
@@ -1133,7 +1118,6 @@
"selected_count": "{count, plural, other {Đã chọn # mục}}",
"send_message": "Gửi tin nhắn",
"send_welcome_email": "Gửi email chào mừng",
- "server": "",
"server_offline": "Máy chủ ngoại tuyến",
"server_online": "Máy chủ trực tuyến",
"server_stats": "Thống kê máy chủ",
@@ -1176,6 +1160,7 @@
"show_person_options": "Hiển thị tùy chọn người",
"show_progress_bar": "Hiển thị thanh tiến trình",
"show_search_options": "Hiển thị tùy chọn tìm kiếm",
+ "show_slideshow_transition": "Hiển thị hiệu ứng chuyển tiếp",
"show_supporter_badge": "Huy hiệu người ủng hộ",
"show_supporter_badge_description": "Hiển thị huy hiệu người ủng hộ",
"shuffle": "Xáo trộn",
@@ -1217,13 +1202,16 @@
"submit": "Gửi",
"suggestions": "Gợi ý",
"sunrise_on_the_beach": "Bình minh trên bãi biển",
+ "support": "Hỗ trợ",
+ "support_and_feedback": "Hỗ trợ & Góp ý",
+ "support_third_party_description": "Bản cài đặt Immich của bạn được đóng gói bởi một bên thứ ba. Các sự cố bạn gặp phải có thể do gói đó gây ra, vì vậy vui lòng báo cáo sự cố với họ trước bằng cách sử dụng các liên kết bên dưới.",
"swap_merge_direction": "Đổi hướng hợp nhất",
"sync": "Đồng bộ",
"tag": "Thẻ",
"tag_assets": "Gắn thẻ",
"tag_created": "Đã tạo thẻ: {tag}",
"tag_feature_description": "Duyệt ảnh và video được nhóm theo chủ đề thẻ hợp lý",
- "tag_not_found_question": "Không tìm thấy thẻ? Tạo một cái tại đây",
+ "tag_not_found_question": "Không tìm thấy thẻ? Tạo một thẻ mới",
"tag_updated": "Đã cập nhật thẻ: {tag}",
"tagged_assets": "Đã gắn thẻ {count, plural, one {# mục} other {# mục}}",
"tags": "Thẻ",
@@ -1232,6 +1220,7 @@
"theme_selection": "Chủ đề tổng thể",
"theme_selection_description": "Tự động đặt chủ đề sáng hoặc tối dựa trên tùy chọn hệ thống của trình duyệt của bạn",
"they_will_be_merged_together": "Chúng sẽ được hợp nhất với nhau",
+ "third_party_resources": "Tài nguyên bên thứ ba",
"time_based_memories": "Kỷ niệm dựa trên thời gian",
"timezone": "Múi giờ",
"to_archive": "Lưu trữ",
@@ -1239,11 +1228,9 @@
"to_favorite": "Yêu thích",
"to_login": "Đăng nhập",
"to_parent": "Đến thư mục cha",
- "to_root": "Tới thư mục gốc",
"to_trash": "Xóa",
"toggle_settings": "Chuyển đổi cài đặt",
"toggle_theme": "Chuyển đổi chủ đề tối",
- "toggle_visibility": "",
"total_usage": "Tổng dung lượng đã sử dụng",
"trash": "Thùng rác",
"trash_all": "Xóa hết",
@@ -1253,14 +1240,13 @@
"trashed_items_will_be_permanently_deleted_after": "Các mục đã xóa sẽ bị xóa vĩnh viễn sau {days, plural, one {# ngày} other {# ngày}}.",
"type": "Loại",
"unarchive": "Huỷ lưu trữ",
- "unarchived": "",
"unarchived_count": "{count, plural, other {Đã huỷ lưu trữ # mục}}",
"unfavorite": "Bỏ yêu thích",
"unhide_person": "Hiện người",
"unknown": "Không xác định",
- "unknown_album": "",
"unknown_year": "Năm không xác định",
"unlimited": "Không giới hạn",
+ "unlink_motion_video": "Hủy liên kết video chuyển động",
"unlink_oauth": "Huỷ liên kết OAuth",
"unlinked_oauth_account": "Đã huỷ liên kết tài khoản OAuth",
"unnamed_album": "Album chưa đặt tên",
@@ -1301,7 +1287,9 @@
"variables": "Các tham số",
"version": "Phiên bản",
"version_announcement_closing": "Bạn của bạn, Alex",
- "version_announcement_message": "Chào bạn, có một phiên bản mới của ứng dụng. Vui lòng dành thời gian để xem ghi chú phát hành và đảm bảo rằng cấu hình docker-compose.yml và .env của bạn được cập nhật để tránh bất kỳ cấu hình sai nào, đặc biệt nếu bạn sử dụng WatchTower hoặc bất kỳ cơ chế nào tự động cập nhật ứng dụng của bạn.",
+ "version_announcement_message": "Chào bạn! Một phiên bản mới của Immich đã phát hành. Vui lòng dành thời gian để xem danh sách thay đổi để đảm bảo cấu hình của bạn được cập nhật để tránh lỗi cấu hình sai, đặc biệt nếu bạn sử dụng WatchTower hoặc bất kỳ cơ chế tự động cập nhật Immich của bạn.",
+ "version_history": "Lịch sử phiên bản",
+ "version_history_item": "Đã cài đặt {version} vào {date}",
"video": "Video",
"video_hover_setting": "Phát đoạn video xem trước khi di chuột",
"video_hover_setting_description": "Phát đoạn video xem trước khi di chuột qua mục. Ngay cả khi tắt chức năng này, vẫn có thể bắt đầu phát video bằng cách di chuột qua biểu tượng phát.",
@@ -1316,13 +1304,12 @@
"view_next_asset": "Xem ảnh tiếp theo",
"view_previous_asset": "Xem ảnh trước đó",
"view_stack": "Xem nhóm ảnh",
- "viewer": "",
"visibility_changed": "Đã thay đổi trạng thái hiển thị cho {count, plural, one {# người} other {# người}}",
"waiting": "Đang chờ",
"warning": "Cảnh báo",
"week": "Tuần",
"welcome": "Chào mừng",
- "welcome_to_immich": "Chào mừng đến với immich",
+ "welcome_to_immich": "Chào mừng đến với Immich",
"year": "Năm",
"years_ago": "{years, plural, one {# năm} other {# năm}} trước",
"yes": "Có",
diff --git a/web/src/lib/i18n/zh_Hant.json b/i18n/zh_Hant.json
similarity index 85%
rename from web/src/lib/i18n/zh_Hant.json
rename to i18n/zh_Hant.json
index 30e32f60c9..d343f89544 100644
--- a/web/src/lib/i18n/zh_Hant.json
+++ b/i18n/zh_Hant.json
@@ -1,86 +1,95 @@
{
- "about": "關於",
+ "about": "重新整理",
"account": "帳號",
"account_settings": "帳號設定",
"acknowledge": "收到",
- "action": "行爲",
- "actions": "行爲",
+ "action": "操作",
+ "actions": "操作",
"active": "處理中",
- "activity": "活動",
- "activity_changed": "活動已{enabled, select, true {啟用} other {停用}}",
- "add": "新增",
- "add_a_description": "新增敘述",
- "add_a_location": "新增位置",
- "add_a_name": "新增名稱",
+ "activity": "動態",
+ "activity_changed": "動態已{enabled, select, true {啟用} other {停用}}",
+ "add": "加入",
+ "add_a_description": "加入文字說明",
+ "add_a_location": "新增地點",
+ "add_a_name": "加入姓名",
"add_a_title": "新增標題",
- "add_exclusion_pattern": "新增排除規則",
+ "add_exclusion_pattern": "加入篩選條件",
"add_import_path": "新增匯入路徑",
"add_location": "新增地點",
- "add_more_users": "新增更多使用者",
- "add_partner": "新增同伴",
+ "add_more_users": "新增其他使用者",
+ "add_partner": "新增親朋好友",
"add_path": "新增路徑",
"add_photos": "加入照片",
- "add_to": "新增至…",
- "add_to_album": "加入相簿",
- "add_to_shared_album": "加入共享相簿",
- "added_to_archive": "已加入封存",
- "added_to_favorites": "已加入收藏",
- "added_to_favorites_count": "已把 {count, number} 個項目加入收藏",
+ "add_to": "加入到…",
+ "add_to_album": "加入到相簿",
+ "add_to_shared_album": "加到共享相簿",
+ "add_url": "新增URL",
+ "added_to_archive": "封存",
+ "added_to_favorites": "加入收藏",
+ "added_to_favorites_count": "將 {count, number} 個項目加入收藏",
"admin": {
- "add_exclusion_pattern_description": "新增排除規則。支援使用「*」、「 **」、「?」來匹配字串。如果要排除所有名稱為「Raw」的檔案或目錄,請使用「**/Raw/**」。如果要排除所有「.tif」結尾的檔案,請使用「**/*.tif」。如果要排除某個絕對路徑,請使用「/path/to/ignore/**」。",
+ "add_exclusion_pattern_description": "新增排除條件。支援使用「*」、「 **」、「?」來找尋符合規則的字串。如果要在任何名為「Raw」的目錄內排除所有符合條件的檔案,請使用「**/Raw/**」。如果要排除所有「.tif」結尾的檔案,請使用「**/*.tif」。如果要排除某個絕對路徑,請使用「/path/to/ignore/**」。",
+ "asset_offline_description": "磁碟上找不到此外部相簿檔案,且已移至垃圾桶。如果檔案在相簿內被移動,請檢查時間軸中是否有新的相應的檔案。若要還原這份檔案,請確保 Immich 可以寫入下列檔案路徑,並讀取掃描相簿內容。",
"authentication_settings": "驗證設定",
"authentication_settings_description": "管理密碼、OAuth 與其他驗證設定",
"authentication_settings_disable_all": "確定要停用所有登入方式嗎?這樣會完全無法登入。",
"authentication_settings_reenable": "如需重新啟用,請使用 伺服器指令。",
- "background_task_job": "背景任務",
+ "background_task_job": "背景執行",
+ "backup_database": "備份資料庫",
+ "backup_database_enable_description": "啟用資料庫備份",
+ "backup_keep_last_amount": "保留先前備份的數量",
+ "backup_settings": "備份設定",
+ "backup_settings_description": "管理資料庫備份設定",
"check_all": "全選",
- "cleared_jobs": "已清除 {job} 的任務",
- "config_set_by_file": "目前的設定已透過設定檔案設置",
- "confirm_delete_library": "確定要刪除「{library}」(圖庫)嗎?",
- "confirm_delete_library_assets": "您確定要刪除此圖庫嗎?這將從 Immich 中刪除{count, plural, one {個項目} other {個項目}},且無法復原。檔案仍會保留在硬碟中。",
+ "cleared_jobs": "已刪除「{job}」任務",
+ "config_set_by_file": "已透過設定檔更新設定",
+ "confirm_delete_library": "確定要刪除 {library} 相簿嗎?",
+ "confirm_delete_library_assets": "您確定要刪除此相簿嗎?這將從 Immich 中刪除 {count, plural, one {個項目} other {個項目}} ,且無法復原。檔案仍會保留在硬碟中。",
"confirm_email_below": "請在底下輸入 {email} 來確認",
"confirm_reprocess_all_faces": "確定要重新處理所有臉孔嗎?這會清除已命名的人物。",
"confirm_user_password_reset": "您確定要重設 {user} 的密碼嗎?",
- "crontab_guru": "",
+ "create_job": "建立作業",
+ "cron_expression": "Cron 運算式",
+ "cron_expression_description": "以 Cron 格式設定掃描時段。詳細資訊請參閱 Crontab Guru",
+ "cron_expression_presets": "現成的 Cron 運算式",
"disable_login": "停用登入",
- "disabled": "已禁用",
"duplicate_detection_job_description": "對檔案執行機器學習來偵測相似圖片。(此功能仰賴智慧搜尋)",
"exclusion_pattern_description": "排除規則讓您在掃描資料庫時忽略特定文件和文件夾。用於當您有不想導入的文件(例如 RAW 文件)或文件夾。",
- "external_library_created_at": "外部圖庫(於 {date} 建立)",
- "external_library_management": "外部圖庫管理",
+ "external_library_created_at": "外部相簿(於 {date} 建立)",
+ "external_library_management": "外部相簿管理",
"face_detection": "臉孔偵測",
- "face_detection_description": "使用機器學習檢測資料中的人臉。影片檔只會偵測縮圖。選擇「全部」將重新處理所有資料。選擇「缺失」將把尚未處理的資料加入處理佇列中。被檢測到的人臉將在所有人臉檢測完成後,排入人臉識別佇列中,並將它們分配到現有或新的人物中。",
- "facial_recognition_job_description": "將檢測到的人臉分組到人物中。此步驟將在人臉檢測完成後運行。選擇「全部」將重新分類所有人臉。選擇「缺失」將把沒有分配人物的人臉排入佇列。",
+ "face_detection_description": "使用機器學習偵測檔案中的臉孔(影片只會偵測縮圖中的臉孔)。選擇「重新整理」會重新處理所有檔案。選擇「重設」會清除目前所有的臉孔資料。選擇「遺失的」會把尚未處理的檔案排入處理佇列。臉孔偵測完成後,會把偵測到的臉孔排入臉部辨識佇列,將其分組到現有的或新的人物中。",
+ "facial_recognition_job_description": "將偵測到的臉孔依照人物分組。此步驟會在臉孔偵測完成後執行。選擇「重設」會重新分組所有臉孔。選擇「遺失的」會把尚未指定人物的臉孔排入佇列。",
"failed_job_command": "{job} 任務的 {command} 指令執行失敗",
- "force_delete_user_warning": "警告:這將立即移除使用者及其資料。操作後無法反悔且移除的檔案無法恢復。",
+ "force_delete_user_warning": "警告:這將立即刪除使用者及其資料。操作後無法反悔且刪除的檔案無法恢復。",
"forcing_refresh_library_files": "強制重新整理所有圖庫檔案",
+ "image_format": "格式",
"image_format_description": "WebP 能產生相對於 JPEG 更小的檔案,但編碼速度較慢。",
"image_prefer_embedded_preview": "偏好嵌入的預覽",
"image_prefer_embedded_preview_setting_description": "優先使用 RAW 的嵌入預覧作影像處理。可以提升某些影像的顏色精確度,但嵌入預覧的影像品質依相機而異,且可能壓縮較多。",
"image_prefer_wide_gamut": "偏好廣色域",
"image_prefer_wide_gamut_setting_description": "使用 Display P3 來製作縮圖。這可以更好地保留廣色域圖片的鮮豔度,但在舊版瀏覽器或舊設備上,圖片可能會顯示不同。sRGB 圖片會維持 sRGB 以避免顏色變化。",
- "image_preview_format": "預覽格式",
- "image_preview_resolution": "預覽解析度",
- "image_preview_resolution_description": "觀賞單張照片及機器學習時用。較高的解析度可以保留更多細節,但編碼時間較長,檔案也較大,且可能降低應用程式的響應速度。",
+ "image_preview_description": "刪除中等尺寸圖片的詳細資料,當選擇看指定項目和機器學習時使用",
+ "image_preview_quality_description": "預覽品質爲 1 ~ 100。數值越大品質越高,但會產生較大的檔案,且可能降低應用程式的響應速度。而數值較小可能會影響機器學習品質。",
+ "image_preview_title": "預覽設定",
"image_quality": "品質",
- "image_quality_description": "圖片品質從1到100,數值越高代表品質越好但檔案也越大,此選項影響預覽和縮圖圖片。",
+ "image_resolution": "解析度",
+ "image_resolution_description": "較高的解析度可以保留更多細節,但編碼時間較長,檔案較大且可能降低應用程式的響應速度。",
"image_settings": "圖片設定",
"image_settings_description": "管理產生圖片的品質和解析度",
- "image_thumbnail_format": "縮圖格式",
- "image_thumbnail_resolution": "縮圖解析度",
- "image_thumbnail_resolution_description": "觀賞多張照片時(時間軸、相簿等)用。較高的解析度可以保留更多細節,但編碼時間較長,檔案也較大,且可能降低應用程式的響應速度。",
+ "image_thumbnail_description": "刪除縮圖的詳細資料,在快速瀏覽重要時間軸時或大量照片時使用",
+ "image_thumbnail_quality_description": "縮圖品質爲 1 ~ 100。數值越大品質越高,但會產生較大的檔案,且可能降低應用程式的響應速度。",
+ "image_thumbnail_title": "縮圖設定",
"job_concurrency": "{job}並行",
+ "job_created": "已建立作業",
"job_not_concurrency_safe": "這個任務並行並不安全。",
- "job_settings": "任務設定",
- "job_settings_description": "管理任務並行",
- "job_status": "任務狀態",
- "jobs_delayed": "{jobCount, plural, other {# 項任務延遲}}",
- "jobs_failed": "{jobCount, plural, other {# 項}}任務失敗",
+ "job_settings": "作業設定",
+ "job_settings_description": "管理作業並行",
+ "job_status": "作業狀態",
+ "jobs_delayed": "已延後 {jobCount, plural, other {# 項作業}}",
+ "jobs_failed": "{jobCount, plural, other {# 項}}作業失敗",
"library_created": "已建立圖庫:{library}",
- "library_cron_expression": "Cron 運算式",
- "library_cron_expression_description": "以 Cron 格式設定掃描時段。詳細資訊請參閱 Crontab Guru",
- "library_cron_expression_presets": "現成的 Cron 運算式",
- "library_deleted": "圖庫已刪除",
+ "library_deleted": "相簿已刪除",
"library_import_path_description": "選取要載入的資料夾。以掃描資料夾(含子資料夾)內的影像和影片。",
"library_scanning": "定期掃描",
"library_scanning_description": "定期圖庫掃描設定",
@@ -95,7 +104,7 @@
"logging_level_description": "啟用時的記錄層級。",
"logging_settings": "記錄檔",
"machine_learning_clip_model": "CLIP 模型",
- "machine_learning_clip_model_description": "CLIP 模型 名稱列表。更換模型後須對所有影像重新執行「智慧搜尋」。",
+ "machine_learning_clip_model_description": "這裏有份 CLIP 模型名單。註:更換模型後須對所有圖片重新執行「智慧搜尋」作業。",
"machine_learning_duplicate_detection": "重複項目偵測",
"machine_learning_duplicate_detection_enabled": "啟用重複項目偵測",
"machine_learning_duplicate_detection_enabled_description": "即使停用,完全一樣的素材仍會被忽略。",
@@ -122,7 +131,7 @@
"machine_learning_smart_search_description": "使用 CLIP 嵌入進行語義圖像搜尋",
"machine_learning_smart_search_enabled": "啟用智慧搜尋",
"machine_learning_smart_search_enabled_description": "如果停用,圖片將不會被編碼以進行智能搜尋。",
- "machine_learning_url_description": "機器學習伺服器的網址",
+ "machine_learning_url_description": "機器學習伺服器的網址,如果提供多個 URL,則將按依序嘗試連接每個伺服器,直到有一個伺服器成功回應為止。",
"manage_concurrency": "管理並行",
"manage_log_settings": "管理日誌設定",
"map_dark_style": "深色樣式",
@@ -139,11 +148,11 @@
"map_settings_description": "管理地圖設定",
"map_style_description": "地圖主題(style.json)的網址",
"metadata_extraction_job": "擷取元資料",
- "metadata_extraction_job_description": "擷取每個檔案的 GPS、臉孔、解析度等元資料資訊",
+ "metadata_extraction_job_description": "擷取所有檔案的 GPS、臉孔、解析度等原始詳細資料",
"metadata_faces_import_setting": "啟用臉孔匯入",
"metadata_faces_import_setting_description": "從圖片的 EXIF 資料和側接檔案匯入臉孔",
- "metadata_settings": "元資料設定",
- "metadata_settings_description": "管理元資料設定",
+ "metadata_settings": "詳細資料設定",
+ "metadata_settings_description": "管理詮釋資料設定",
"migration_job": "遷移",
"migration_job_description": "將照片和人臉的縮圖遷移到最新的文件夾結構",
"no_paths_added": "未添加路徑",
@@ -152,7 +161,7 @@
"note_cannot_be_changed_later": "註:之後就無法更改嘍!",
"note_unlimited_quota": "註:輸入 0 表示不限制配額",
"notification_email_from_address": "寄件地址",
- "notification_email_from_address_description": "寄件者電子郵件地址(例:Immich Photo Server {label} 是使用者的儲存標籤",
"system_settings": "系統設定",
+ "tag_cleanup_job": "清理標記",
+ "template_email_invite_album": "邀請項目範本",
+ "template_email_preview": "預覽",
+ "template_email_settings": "Email範本",
+ "template_email_settings_description": "管理自定義Email通知模板",
+ "template_email_update_album": "更新向本範本",
+ "template_email_welcome": "歡迎Email範本",
+ "template_settings": "通知範本",
"theme_custom_css_settings": "自訂 CSS",
"theme_custom_css_settings_description": "可以用層疊樣式表(CSS)來自訂 Immich 的設計。",
"theme_settings": "主題",
@@ -245,7 +264,6 @@
"these_files_matched_by_checksum": "這些檔案的核對和(Checksum)是相符的",
"thumbnail_generation_job": "產生縮圖",
"thumbnail_generation_job_description": "爲每個檔案產生大、小及模糊縮圖,也爲每位人物產生縮圖",
- "transcode_policy_description": "",
"transcoding_acceleration_api": "加速 API",
"transcoding_acceleration_api_description": "該 API 將用您的設備加速轉碼。設置是“盡力而為”:如果失敗,它將退回到軟件轉碼。VP9 轉碼是否可行取決於您的硬件。",
"transcoding_acceleration_nvenc": "NVENC(需要 NVIDIA GPU)",
@@ -256,12 +274,12 @@
"transcoding_accepted_audio_codecs_description": "選擇不需要轉碼的音頻編解碼器。僅用於某些轉碼策略。",
"transcoding_accepted_containers": "接受的容器格式",
"transcoding_accepted_containers_description": "選擇不需要重新封裝為 MP4 的容器格式。僅用於某些轉碼策略。",
- "transcoding_accepted_video_codecs": "接受的視頻編碼器",
+ "transcoding_accepted_video_codecs": "支援的影片編碼器",
"transcoding_accepted_video_codecs_description": "選擇不需要轉碼的視頻編解碼器。僅用於某些轉碼策略。",
"transcoding_advanced_options_description": "大多數使用者不需要更改的選項",
"transcoding_audio_codec": "音頻編解碼器",
"transcoding_audio_codec_description": "Opus 是音質最高的選擇,但會與舊設備或軟件有較低的兼容性。",
- "transcoding_bitrate_description": "比特率高於最大比特率或格式不被接受的視頻",
+ "transcoding_bitrate_description": "高於最大位元速率或格式不被支援的影片",
"transcoding_codecs_learn_more": "欲瞭解此處使用的術語,請參閱 FFmpeg 說明書中的 docker-compose.yml 和 .env 設置是最新的,特別是使用 WatchTower 等自動更新工具時。",
+ "version_announcement_message": "嗨~新版本的 Immich 推出了。爲防止配置出錯,請花點時間閱讀發行說明,並確保設定是最新的,特別是使用 WatchTower 等自動更新工具時。",
+ "version_history": "版本紀錄",
+ "version_history_item": "{date} 安裝了 {version}",
"video": "影片",
"video_hover_setting": "游標停留時播放影片縮圖",
"video_hover_setting_description": "當滑鼠停在項目上時播放影片縮圖。即使停用,將滑鼠停在播放圖示上也可以播放。",
@@ -1314,10 +1316,10 @@
"view_all_users": "查看所有使用者",
"view_in_timeline": "在時間軸中查看",
"view_links": "檢視鏈結",
+ "view_name": "查看",
"view_next_asset": "查看下一項",
"view_previous_asset": "查看上一項",
"view_stack": "查看堆疊",
- "viewer": "",
"visibility_changed": "已更改 {count, plural, other {# 位人物}}的可見性",
"waiting": "待處理",
"warning": "警告",
@@ -1327,6 +1329,6 @@
"year": "年",
"years_ago": "{years, plural, other {# 年}}前",
"yes": "是",
- "you_dont_have_any_shared_links": "您沒有分享鏈結",
+ "you_dont_have_any_shared_links": "您沒有任何共享連結",
"zoom_image": "縮放圖片"
}
diff --git a/web/src/lib/i18n/zh_SIMPLIFIED.json b/i18n/zh_SIMPLIFIED.json
similarity index 85%
rename from web/src/lib/i18n/zh_SIMPLIFIED.json
rename to i18n/zh_SIMPLIFIED.json
index b56c2d29eb..d2f7a3b90c 100644
--- a/web/src/lib/i18n/zh_SIMPLIFIED.json
+++ b/i18n/zh_SIMPLIFIED.json
@@ -23,63 +23,72 @@
"add_to": "添加到...",
"add_to_album": "添加到相册",
"add_to_shared_album": "添加到共享相册",
+ "add_url": "添加URL",
"added_to_archive": "添加到归档",
"added_to_favorites": "添加到收藏",
"added_to_favorites_count": "添加{count, number}项到收藏",
"admin": {
- "add_exclusion_pattern_description": "添加排除规则。支持使用 *、** 和 ? 通配符。比如要忽略名为 “Raw” 的任何目录中的所有文件,请使用 “**/Raw/**”;要忽略所有以 “.tif” 结尾的文件,请使用 “**/*.tif”;要忽略绝对路径,请使用 “/path/to/ignore/**”。",
+ "add_exclusion_pattern_description": "添加排除规则。支持使用 *、** 和 ? 通配符。比如要忽略任何名为 “Raw” 的文件夹中的所有文件,请使用 “**/Raw/**”;要忽略所有以 “.tif” 结尾的文件,请使用 “**/*.tif”;要忽略绝对路径,请使用 “/path/to/ignore/**”。",
+ "asset_offline_description": "磁盘上已找不到此外部库项目,已将其移至回收站。如果文件已在库中移动,请检查时间线中是否有对应项目。要恢复此项目,请确保 Immich 可以访问以下文件路径并执行“扫描库”任务。",
"authentication_settings": "认证设置",
"authentication_settings_description": "管理密码、OAuth 和其它认证设置",
- "authentication_settings_disable_all": "确定要禁用所有的登录方式?此操作将完全禁止登录。",
+ "authentication_settings_disable_all": "确定要禁用所有的登录方式?该操作将完全禁止登录。",
"authentication_settings_reenable": "如需再次启用,使用 服务器指令。",
"background_task_job": "后台任务",
+ "backup_database": "备份数据库",
+ "backup_database_enable_description": "启用数据库备份",
+ "backup_keep_last_amount": "要保留的先前备份数量",
+ "backup_settings": "备份设置",
+ "backup_settings_description": "管理数据库备份设置",
"check_all": "检查全部",
- "cleared_jobs": "已清理作业:{job}",
+ "cleared_jobs": "已清理任务:{job}",
"config_set_by_file": "当前配置已通过配置文件设置",
"confirm_delete_library": "确定要删除图库“{library}”吗?",
"confirm_delete_library_assets": "确定要删除该图库吗?这将删除所有包含在Immich中的{count, plural, one {#个项目} other {#个项目}},且无法撤销。但文件仍将保留在磁盘中。",
"confirm_email_below": "输入“{email}”来确认",
"confirm_reprocess_all_faces": "确定要对全部照片重新进行面部识别吗?这将同时清除所有已命名人物。",
- "confirm_user_password_reset": "确定要重置用户{user}的密码吗?",
- "crontab_guru": "Crontab Guru",
+ "confirm_user_password_reset": "确定要重置用户“{user}”的密码吗?",
+ "create_job": "创建任务",
+ "cron_expression": "Cron表达式",
+ "cron_expression_description": "使用 cron 格式设置扫描间隔。更多详细信息请参阅 Crontab Guru",
+ "cron_expression_presets": "Cron 表达式预设",
"disable_login": "禁用登录",
- "disabled": "已禁用",
"duplicate_detection_job_description": "对照片进行机器学习处理来检测相似项目,依赖于智能搜索",
"exclusion_pattern_description": "排除规则允许在扫描图库时忽略文件和文件夹。如果有包含不想导入的文件的文件夹,例如RAW文件,排除规则将非常有用。",
"external_library_created_at": "外部图库(创建于{date})",
"external_library_management": "外部图库管理",
"face_detection": "人脸检测",
- "face_detection_description": "使用机器学习检测项目中的人脸(视频只检测其缩略图中的人脸)。选择“全部”项将会(重新)处理所有项目。选择“缺失”项将尚未处理的项目置于队列中。人脸检测完成后,检测到的人脸将排队进行面部识别,将它们分组到现有的或新的人物中。",
- "facial_recognition_job_description": "将检测到的人脸按照人物分组。这一步将在人脸检测完成后执行。选择“全部”项将会(重新)分组所有面孔。选择“缺失”项将尚未分配的人脸置于队列中。",
- "failed_job_command": "{command}命令执行失败的作业:{job}",
- "force_delete_user_warning": "警告:这将立即移除用户以及所有项目。该操作无法撤回且文件无法恢复。",
+ "face_detection_description": "使用机器学习检测项目中的人脸(视频只检测其缩略图中的人脸)。选择“刷新”将会(重新)处理所有项目。选择“重置”还会清除所有当前面部数据。选择“缺失”将尚未处理的项目进行排队处理。人脸检测完成后,检测到的人脸将排队进行面部识别,将它们分组到现有的或新的人物中。",
+ "facial_recognition_job_description": "将检测到的人脸按照人物分组。这一步将在人脸检测完成后执行。选择“重置”将会(重新)分组所有面孔。选择“缺失”将尚未分配的人脸置于队列中。",
+ "failed_job_command": "{command}命令执行失败的任务:{job}",
+ "force_delete_user_warning": "警告:这将立即移除用户以及其所有项目。该操作无法撤销且文件无法恢复。",
"forcing_refresh_library_files": "强制刷新所有图库文件",
+ "image_format": "格式",
"image_format_description": "WebP 文件比 JPEG 文件小,但编码速度较慢。",
"image_prefer_embedded_preview": "嵌入式预览",
"image_prefer_embedded_preview_setting_description": "在可用时,使用 RAW 照片的嵌入式预览作为图像处理的输入。这可能为某些图像产生更准确的颜色,但预览的质量取决于相机,图像可能具有更多的压缩失真。",
"image_prefer_wide_gamut": "广色域",
"image_prefer_wide_gamut_setting_description": "对缩略图使用 Display P3。这可以更好地保留宽色域图像的鲜艳度,但在旧设备和旧版浏览器上图像可能会显得不同。sRGB 图像保持为 sRGB 以避免颜色偏移。",
- "image_preview_format": "预览格式",
- "image_preview_resolution": "预览分辨率",
- "image_preview_resolution_description": "在查看单张照片和进行机器学习时使用。更高的分辨率可以保留更多细节,但编码时间更长,文件体积更大,且可能降低应用程序的响应速度。",
+ "image_preview_description": "去除元数据的中尺寸图像,用于单一项目查看和机器学习",
+ "image_preview_quality_description": "预览质量从 1 到 100。越高越好,但会产生更大的文件,并且会降低系统的响应能力。设置较低的值可能会影响机器学习的质量。",
+ "image_preview_title": "预览设置",
"image_quality": "质量",
- "image_quality_description": "图像质量从1到100。数字越高,质量越好,但生成的文件也越大,此选项会同时影响预览和缩略图。",
+ "image_resolution": "分辨率",
+ "image_resolution_description": "更高的分辨率可以保留更多细节,但编码时间更长,文件体积更大,而且会降低系统的响应速度。",
"image_settings": "图片设置",
"image_settings_description": "管理生成图像的质量和分辨率",
- "image_thumbnail_format": "缩略图格式",
- "image_thumbnail_resolution": "缩略图分辨率",
- "image_thumbnail_resolution_description": "用于查看照片组(主时间轴、相册视图等)。更高的分辨率可以保留更多的细节,但编码时间更长,文件体积更大,并会降低应用程序的响应速度。",
+ "image_thumbnail_description": "去除元数据的小缩略图,用于浏览主时间线等照片组",
+ "image_thumbnail_quality_description": "缩略图质量从 1 到 100。越高越好,但会产生更大的文件,并且会降低系统的响应能力。",
+ "image_thumbnail_title": "缩略图设置",
"job_concurrency": "{job}并发",
+ "job_created": "任务已创建",
"job_not_concurrency_safe": "此任务并发并不安全。",
"job_settings": "任务设置",
"job_settings_description": "管理任务并发",
"job_status": "任务状态",
- "jobs_delayed": "{jobCount, plural, other {#项作业已推迟}}",
+ "jobs_delayed": "{jobCount, plural, other {#项任务已推迟}}",
"jobs_failed": "{jobCount, plural, other {#项失败}}",
"library_created": "已创建图库:{library}",
- "library_cron_expression": "Cron 表达式",
- "library_cron_expression_description": "使用 cron 格式设置扫描间隔。关于 cron 格式请参阅Crontab Guru",
- "library_cron_expression_presets": "Cron 表达式预设",
"library_deleted": "图库已删除",
"library_import_path_description": "指定一个要导入的文件夹。将扫描此文件夹(包括子文件夹)中的图像和视频。",
"library_scanning": "定期扫描",
@@ -95,7 +104,7 @@
"logging_level_description": "启用的日志级别。",
"logging_settings": "日志",
"machine_learning_clip_model": "CLIP模型",
- "machine_learning_clip_model_description": "支持的CLIP模型名称见 此处。注意,更换模型后需要对所有图片重新运行“智能检索”作业。",
+ "machine_learning_clip_model_description": "支持的CLIP模型名称见 此处。注意,更换模型后需要对所有图片重新运行“智能检索”任务。",
"machine_learning_duplicate_detection": "重复项检测",
"machine_learning_duplicate_detection_enabled": "启用重复检测",
"machine_learning_duplicate_detection_enabled_description": "如果禁用此功能,完全相同的项目仍将被去重。",
@@ -119,10 +128,10 @@
"machine_learning_settings": "机器学习设置",
"machine_learning_settings_description": "管理机器学习功能和设置",
"machine_learning_smart_search": "智能搜索",
- "machine_learning_smart_search_description": "使用CLIP相似度进行图像语义搜索",
+ "machine_learning_smart_search_description": "使用CLIP以文搜图、智能搜图",
"machine_learning_smart_search_enabled": "启用智能搜索",
"machine_learning_smart_search_enabled_description": "如果禁用,则不会对图像编码以用于智能搜索。",
- "machine_learning_url_description": "机器学习服务器的URL",
+ "machine_learning_url_description": "机器学习服务器的 URL。如果提供多个 URL,则将按依次尝试连接每个服务器,直到有一个服务器成功响应为止。",
"manage_concurrency": "管理任务并发",
"manage_log_settings": "管理日志设置",
"map_dark_style": "深色模式",
@@ -148,12 +157,12 @@
"migration_job_description": "将项目和人脸识别的缩略图迁移到最新的文件夹结构",
"no_paths_added": "无已添加路径",
"no_pattern_added": "无已添加规则",
- "note_apply_storage_label_previous_assets": "提示:要将存储标签应用于之前上传的项目,运行以下命令",
+ "note_apply_storage_label_previous_assets": "提示:要将存储标签应用于之前上传的项目,需要运行",
"note_cannot_be_changed_later": "注意:此项一旦设定,以后无法更改!",
"note_unlimited_quota": "提示:输入0表示无限制",
"notification_email_from_address": "发件人地址",
- "notification_email_from_address_description": "发件人邮箱地址,例如“Immich 服务器 {label}是用户的存储标签",
"system_settings": "系统设置",
+ "tag_cleanup_job": "清理标签",
+ "template_email_available_tags": "可以在模板中使用以下变量:{tags}",
+ "template_email_if_empty": "如果模板为空,则使用默认模板。",
+ "template_email_invite_album": "相册邀请模板",
+ "template_email_preview": "预览",
+ "template_email_settings": "邮件模板",
+ "template_email_settings_description": "管理自定义邮件通知模板",
+ "template_email_update_album": "相册更新模板",
+ "template_email_welcome": "欢迎邮件模板",
+ "template_settings": "通知模板",
+ "template_settings_description": "管理自定义通知模板。",
"theme_custom_css_settings": "自定义CSS",
"theme_custom_css_settings_description": "可以通过CSS自定义Immich外观。",
"theme_settings": "主题设置",
- "theme_settings_description": "管理Immich web界面定制",
+ "theme_settings_description": "管理Immich web界面的定制",
"these_files_matched_by_checksum": "这些文件与校验匹配",
"thumbnail_generation_job": "生成缩略图",
"thumbnail_generation_job_description": "为每个项目生成不同尺寸的缩略图,并为每个人物生成缩略图",
- "transcode_policy_description": "视频转码的策略。HDR视频将始终进行转码(除非禁用了转码功能)。",
"transcoding_acceleration_api": "加速器API",
"transcoding_acceleration_api_description": "这个API将与您的设备交互,以加速转码过程。此设置为“尽力而为”——如果转码失败,将回到软件转码。VP9是否工作取决于您的硬件配置。",
"transcoding_acceleration_nvenc": "NVENC(需要 NVIDIA GPU)",
- "transcoding_acceleration_qsv": "快速同步(需要Intel 7代及以上的 CPU)",
+ "transcoding_acceleration_qsv": "Quick Sync(需要Intel 7代及以上的 CPU)",
"transcoding_acceleration_rkmpp": "RKMPP(仅适用于 Rockchip SOCs)",
"transcoding_acceleration_vaapi": "VAAPI",
"transcoding_accepted_audio_codecs": "支持的音频编解码器",
@@ -271,7 +292,7 @@
"transcoding_hardware_acceleration": "硬件加速",
"transcoding_hardware_acceleration_description": "(实验性功能)速度更快,但在相同码率下质量会降低",
"transcoding_hardware_decoding": "硬件解码",
- "transcoding_hardware_decoding_setting_description": "仅适用于NVENC、QSV和RKMPP。启用端到端加速,而不仅仅是加速编码。可能并不适用于所有视频。",
+ "transcoding_hardware_decoding_setting_description": "启用端到端加速,而不仅仅是加速编码。可能并不适用于所有视频。",
"transcoding_hevc_codec": "HEVC 编解码器",
"transcoding_max_b_frames": "最大B帧数",
"transcoding_max_b_frames_description": "较高的值可以提高压缩效率,但会减慢编码速度。可能与旧设备上的硬件加速不兼容。0表示将禁用B帧,-1表示将自动设置此参数。",
@@ -291,14 +312,12 @@
"transcoding_settings_description": "管理视频文件的分辨率和编码信息",
"transcoding_target_resolution": "目标分辨率",
"transcoding_target_resolution_description": "更高的分辨率可以保留更多细节,但编码时间更长,文件体积更大,且可能降低应用程序的响应速度。",
- "transcoding_temporal_aq": "Temporal AQ",
+ "transcoding_temporal_aq": "时间自适应量化",
"transcoding_temporal_aq_description": "仅适用于NVENC。提高高细节、低动态场景的质量。可能与旧设备不兼容。",
"transcoding_threads": "线程数",
"transcoding_threads_description": "设定值越高,编码速度越快,留给其它任务(Docker外宿主机的任务等)的计算能力越少。此值不应大于CPU核心的数量。0表示最大限度地提高利用率。",
"transcoding_tone_mapping": "色调映射",
"transcoding_tone_mapping_description": "在将HDR视频转换为SDR时,尝试保持其外观。每种算法在颜色、细节和亮度方面做出了不同的权衡。Hable算法保留细节,Mobius算法保留颜色,而Reinhard算法保留亮度。",
- "transcoding_tone_mapping_npl": "NPL色调映射",
- "transcoding_tone_mapping_npl_description": "对于这种亮度的显示器,颜色将被调整到显示正常。与直觉相反,较低的值会增加视频的亮度,反之亦然,因为它会补偿显示器的亮度。0表示将自动设置此值。",
"transcoding_transcode_policy": "转码策略",
"transcoding_transcode_policy_description": "视频转码策略。HDR视频将始终进行转码(除非禁用了转码功能)。",
"transcoding_two_pass_encoding": "二次编码",
@@ -310,8 +329,9 @@
"trash_number_of_days_description": "回收站中项目永久删除的天数",
"trash_settings": "回收站设置",
"trash_settings_description": "管理回收站设置",
- "untracked_files": "未被追踪的文件",
- "untracked_files_description": "这些文件未被系统追踪。 这可能是移动失败、上传中断或因bug而落下",
+ "untracked_files": "未被扫描的文件",
+ "untracked_files_description": "这些文件未被系统扫描。 这可能是移动失败、上传中断或因bug而落下",
+ "user_cleanup_job": "清理用户",
"user_delete_delay": "{user}的账户及项目将在{delay, plural, one {#天} other {#天}}后自动永久删除。",
"user_delete_delay_settings": "延期删除",
"user_delete_delay_settings_description": "删除用户后永久删除账户及其所有项目的天数。用户删除作业在午夜运行,检查是否有用户可以删除。对该设置的更改将在下次执行时开始计算。",
@@ -320,11 +340,11 @@
"user_management": "用户管理",
"user_password_has_been_reset": "该用户的密码被重置:",
"user_password_reset_description": "请向用户提供临时密码,并告知他们下次登录时需要更改密码。",
- "user_restore_description": "{user}的账户将被恢复。",
+ "user_restore_description": "账户“{user}”将被恢复。",
"user_restore_scheduled_removal": "恢复用户 - 计划于{date, date, long}删除",
"user_settings": "用户设置",
"user_settings_description": "管理用户设置",
- "user_successfully_removed": "用户{email}已被成功删除。",
+ "user_successfully_removed": "用户“{email}”已被成功删除。",
"version_check_enabled_description": "启用版本检测",
"version_check_implications": "版本检查功能依赖于与 github.com 的定期通信",
"version_check_settings": "版本检查",
@@ -340,22 +360,22 @@
"age_year_months": "1岁{months, plural, one {#个月} other {#个月}}",
"age_years": "{years, plural, other {#岁}}",
"album_added": "相册已添加",
- "album_added_notification_setting_description": "当您被添加到共享相册时,接收电子邮件通知",
+ "album_added_notification_setting_description": "当您被添加到共享相册时,接收邮箱通知",
"album_cover_updated": "相册封面已更新",
"album_delete_confirmation": "确定要删除相册“{album}”吗?",
"album_delete_confirmation_description": "如果该相册是共享的,其他用户将无法再访问它。",
"album_info_updated": "相册信息已更新",
"album_leave": "退出相册?",
- "album_leave_confirmation": "确定要退出相册{album}吗?",
+ "album_leave_confirmation": "确定要退出相册“{album}”吗?",
"album_name": "相册名称",
"album_options": "相册设置",
"album_remove_user": "移除用户?",
- "album_remove_user_confirmation": "你确定要移除{user}吗?",
+ "album_remove_user_confirmation": "你确定要移除“{user}”吗?",
"album_share_no_users": "看起来您已与所有用户共享了此相册,或者您根本没有任何用户可共享。",
"album_updated": "相册已更新",
"album_updated_setting_description": "当共享相册有新项目时接收邮件通知",
- "album_user_left": "离开{album}",
- "album_user_removed": "已移除{user}",
+ "album_user_left": "离开“{album}”",
+ "album_user_removed": "已移除“{user}”",
"album_with_link_access": "拥有此链接的任何人均可查看本相册中的照片和人物。",
"albums": "相册",
"albums_count": "{count, plural, one {{count, number} 个相册} other {{count, number} 个相册}}",
@@ -368,28 +388,27 @@
"allow_public_user_to_download": "允许所有用户下载",
"allow_public_user_to_upload": "允许所有用户上传",
"anti_clockwise": "逆时针",
- "api_key": "API Key",
- "api_key_description": "该应用密钥只会展示一次。请确保在关闭窗口前复制下来。",
+ "api_key": "API 密钥",
+ "api_key_description": "该应用密钥只会显示一次。请确保在关闭窗口前复制下来。",
"api_key_empty": "API Key的名称不可以为空",
- "api_keys": "API Keys",
+ "api_keys": "API 密钥",
"app_settings": "应用设置",
"appears_in": "出现于",
"archive": "归档",
"archive_or_unarchive_photo": "归档或取消归档照片",
"archive_size": "归档大小",
"archive_size_description": "配置下载归档大小(GB)",
- "archived": "已归档",
"archived_count": "{count, plural, other {已归档 # 项}}",
"are_these_the_same_person": "是同一个人吗?",
"are_you_sure_to_do_this": "确定要这样做吗?",
"asset_added_to_album": "已添加至相册",
"asset_adding_to_album": "正在添加至相册...",
"asset_description_updated": "项目描述已更新",
- "asset_filename_is_offline": "项目{filename}已离线",
+ "asset_filename_is_offline": "项目“{filename}”已离线",
"asset_has_unassigned_faces": "项目中有未分配的人脸",
"asset_hashing": "哈希校验中...",
"asset_offline": "项目离线",
- "asset_offline_description": "项目已离线。Immich无法访问该文件。请确保项目可读并重新扫描项目库。",
+ "asset_offline_description": "磁盘上已找不到该外部项目。请联系您的 Immich 管理员寻求帮助。",
"asset_skipped": "已跳过",
"asset_skipped_in_trash": "已回收",
"asset_uploaded": "已上传",
@@ -399,11 +418,10 @@
"assets_added_to_album_count": "已添加{count, plural, one {#个项目} other {#个项目}}到相册",
"assets_added_to_name_count": "已添加{count, plural, one {#个项目} other {#个项目}}到{hasName, select, true {{name}} other {新相册}}",
"assets_count": "{count, plural, one {#个项目} other {#个项目}}",
- "assets_moved_to_trash": "将{count, plural, one {# 个项目} other {# 个项目}}移动到回收站",
"assets_moved_to_trash_count": "已移动{count, plural, one {#个项目} other {#个项目}}到回收站",
"assets_permanently_deleted_count": "已永久删除{count, plural, one {#个项目} other {#个项目}}",
"assets_removed_count": "已移除{count, plural, one {#个项目} other {#个项目}}",
- "assets_restore_confirmation": "确定要恢复回收站中的所有项目吗?该操作无法撤消!",
+ "assets_restore_confirmation": "确定要恢复回收站中的所有项目吗?该操作无法撤消!请注意,脱机项目无法通过这种方式恢复。",
"assets_restored_count": "已恢复{count, plural, one {#个项目} other {#个项目}}",
"assets_trashed_count": "{count, plural, one {#个项目} other {#个项目}}已放入回收站",
"assets_were_part_of_album_count": "{count, plural, one {项目} other {项目}}已经在相册中",
@@ -412,11 +430,12 @@
"back_close_deselect": "返回、关闭或反选",
"backward": "后退",
"birthdate_saved": "出生日期保存成功",
- "birthdate_set_description": "出生日期用于计算照片中人物在拍照时的年龄。",
+ "birthdate_set_description": "出生日期用于计算照片中该人物在拍照时的年龄。",
"blurred_background": "背景模糊",
+ "bugs_and_feature_requests": "Bug和特性要求",
"build": "构建版本",
"build_image": "镜像版本",
- "bulk_delete_duplicates_confirmation": "您确定要批量删除{count, plural, one {#个重复项目} other {#个重复项目}}吗?这将保留每个组中最大的项目并永久删除所有其它重复项目。此操作无法撤消!",
+ "bulk_delete_duplicates_confirmation": "您确定要批量删除{count, plural, one {#个重复项目} other {#个重复项目}}吗?这将保留每个组中最大的项目并永久删除所有其它重复项目。注意:该操作无法被撤消!",
"bulk_keep_duplicates_confirmation": "您确定要保留{count, plural, one {#个重复项目} other {#个重复项目}}吗?这将清空所有重复记录,但不会删除任何内容。",
"bulk_trash_duplicates_confirmation": "您确定要批量删除{count, plural, one {#个重复项目} other {#个重复项目}}吗?这将保留每组中最大的项目并删除所有其它重复项目。",
"buy": "购买Immich",
@@ -426,12 +445,8 @@
"cancel": "取消",
"cancel_search": "取消搜索",
"cannot_merge_people": "无法合并人物",
- "cannot_undo_this_action": "无法撤消此操作!",
+ "cannot_undo_this_action": "注意:该操作无法被撤消!",
"cannot_update_the_description": "无法更新描述",
- "cant_apply_changes": "无法应用更改",
- "cant_get_faces": "找不到人脸",
- "cant_search_people": "找不到人物",
- "cant_search_places": "找不到地点",
"change_date": "更改日期",
"change_expiration_time": "更改过期时间",
"change_location": "更改位置",
@@ -449,7 +464,7 @@
"clear_all": "清空全部",
"clear_all_recent_searches": "清除所有最近搜索",
"clear_message": "清空消息",
- "clear_value": "清空值",
+ "clear_value": "删除内容",
"clockwise": "顺时针",
"close": "关闭",
"collapse": "折叠",
@@ -463,9 +478,10 @@
"confirm": "确认",
"confirm_admin_password": "确认管理员密码",
"confirm_delete_shared_link": "您确定要删除此共享链接吗?",
+ "confirm_keep_this_delete_others": "除此项目外,堆叠中的所有其它项目都将被删除。您确定要继续吗?",
"confirm_password": "确认密码",
"contain": "包含",
- "context": "图像语义搜索",
+ "context": "以文搜图",
"continue": "继续",
"copied_image_to_clipboard": "已复制图片至剪贴板。",
"copied_to_clipboard": "已复制到剪切板!",
@@ -496,12 +512,12 @@
"custom_locale": "自定义地区",
"custom_locale_description": "日期和数字显示格式跟随语言和地区",
"dark": "深色",
- "date_after": "日期之后",
+ "date_after": "开始日期",
"date_and_time": "日期与时间",
- "date_before": "日期之前",
+ "date_before": "结束日期",
"date_of_birth_saved": "出生日期保存成功",
"date_range": "日期范围",
- "day": "天",
+ "day": "日",
"deduplicate_all": "删除所有重复项",
"default_locale": "默认地区",
"default_locale_description": "根据您的浏览器地区设置日期和数字显示格式",
@@ -512,16 +528,19 @@
"delete_key": "删除密钥",
"delete_library": "删除图库",
"delete_link": "删除链接",
+ "delete_others": "删除其它",
"delete_shared_link": "删除共享链接",
"delete_tag": "删除标签",
"delete_tag_confirmation_prompt": "您确定要删除“{tagName}”标签吗?",
"delete_user": "删除用户",
"deleted_shared_link": "共享链接已删除",
+ "deletes_missing_assets": "删除磁盘中丢失的项目",
"description": "描述",
"details": "详情",
"direction": "方向",
"disabled": "已禁用",
"disallow_edits": "不允许编辑",
+ "discord": "Discord聊天",
"discover": "发现",
"dismiss_all_errors": "忽略所有错误",
"dismiss_error": "忽略错误",
@@ -530,6 +549,7 @@
"display_original_photos": "显示原始照片",
"display_original_photos_setting_description": "在网络与原始格式兼容的情况下,查看图片或视频时优先显示原始文件而不是缩略图。这可能导致照片显示速度变慢。",
"do_not_show_again": "不再显示该信息",
+ "documentation": "文档",
"done": "完成",
"download": "下载",
"download_include_embedded_motion_videos": "内嵌视频",
@@ -537,18 +557,11 @@
"download_settings": "下载",
"download_settings_description": "管理项目下载相关设置",
"downloading": "下载中",
- "downloading_asset_filename": "下载项目{filename}",
+ "downloading_asset_filename": "下载项目“{filename}”",
"drop_files_to_upload": "拖放文件以上传",
"duplicates": "重复项",
"duplicates_description": "审查每组疑似重复项并标记哪些是重复的(如果有的话)",
"duration": "时长",
- "durations": {
- "days": "{days, plural, one {天} other {{days, number} 天}}",
- "hours": "{hours, plural, one {小时} other {{hours, number} 小时}}",
- "minutes": "{minutes, plural, one {分钟} other {{minutes, number} 分钟}}",
- "months": "{months, plural, one {月} other {{months, number} 月}}",
- "years": "{years, plural, one {年} other {{years, number} 年}}"
- },
"edit": "编辑",
"edit_album": "编辑相册",
"edit_avatar": "编辑头像",
@@ -573,8 +586,6 @@
"editor_crop_tool_h2_aspect_ratios": "长宽比",
"editor_crop_tool_h2_rotation": "旋转",
"email": "邮箱",
- "empty": "空",
- "empty_album": "清空相册",
"empty_trash": "清空回收站",
"empty_trash_confirmation": "确定要清空回收站?这将永久删除回收站中的所有项目。\n注意:该操作无法撤消!",
"enable": "启用",
@@ -582,7 +593,7 @@
"end_date": "结束日期",
"error": "错误",
"error_loading_image": "加载图片时出错",
- "error_title": "错误 - 出了点问题",
+ "error_title": "错误 - 好像出了问题",
"errors": {
"cannot_navigate_next_asset": "无法导航到下一个项目",
"cannot_navigate_previous_asset": "无法导航到上一个项目",
@@ -594,7 +605,7 @@
"cant_get_number_of_comments": "无法获取评论数量",
"cant_search_people": "无法检索人物",
"cant_search_places": "无法检索地点",
- "cleared_jobs": "已删除作业:{job}",
+ "cleared_jobs": "已删除任务:{job}",
"error_adding_assets_to_album": "添加项目到相册时出错",
"error_adding_users_to_album": "添加用户到相册时出错",
"error_deleting_shared_user": "删除共享用户时出错",
@@ -608,6 +619,7 @@
"failed_to_create_shared_link": "创建共享链接失败",
"failed_to_edit_shared_link": "编辑共享链接失败",
"failed_to_get_people": "无法获取人物",
+ "failed_to_keep_this_delete_others": "无法保留该项目并删除其它项目",
"failed_to_load_asset": "加载项目失败",
"failed_to_load_assets": "加载项目失败",
"failed_to_load_people": "加载人物失败",
@@ -635,8 +647,6 @@
"unable_to_change_location": "无法更改位置",
"unable_to_change_password": "无法修改密码",
"unable_to_change_visibility": "无法修改{count, plural, one {#个人} other {#个人}}的可见性",
- "unable_to_check_item": "无法选中项目",
- "unable_to_check_items": "无法选中项目",
"unable_to_complete_oauth_login": "无法完成OAuth登录",
"unable_to_connect": "无法连接",
"unable_to_connect_to_server": "无法连接至服务器",
@@ -677,12 +687,10 @@
"unable_to_remove_album_users": "无法从相册中移除用户",
"unable_to_remove_api_key": "无法移除API Key",
"unable_to_remove_assets_from_shared_link": "无法从共享链接中移除项目",
- "unable_to_remove_comment": "无法移除评论",
+ "unable_to_remove_deleted_assets": "无法移除离线文件",
"unable_to_remove_library": "无法移除图库",
- "unable_to_remove_offline_files": "无法移除离线文件",
"unable_to_remove_partner": "无法移除同伴",
- "unable_to_remove_reaction": "无法移除反应",
- "unable_to_remove_user": "无法移除用户",
+ "unable_to_remove_reaction": "无法移除回应",
"unable_to_repair_items": "无法修复项目",
"unable_to_reset_password": "无法重置密码",
"unable_to_resolve_duplicate": "无法解决重复项",
@@ -712,10 +720,6 @@
"unable_to_update_user": "无法更新用户",
"unable_to_upload_file": "无法上传文件"
},
- "every_day_at_onepm": "每天下午一点",
- "every_night_at_midnight": "每天午夜",
- "every_night_at_twoam": "每天凌晨两点",
- "every_six_hours": "每6小时",
"exif": "Exif信息",
"exit_slideshow": "退出幻灯片放映",
"expand_all": "全部展开",
@@ -730,38 +734,33 @@
"external": "外部的",
"external_libraries": "外部图库",
"face_unassigned": "未指派",
- "failed_to_get_people": "无法获取人物",
+ "failed_to_load_assets": "加载项目失败",
"favorite": "收藏",
"favorite_or_unfavorite_photo": "收藏或取消收藏照片",
"favorites": "收藏夹",
- "feature": "功能",
"feature_photo_updated": "人物头像已更新",
- "featurecollection": "功能合集",
"features": "功能",
"features_setting_description": "管理App功能",
"file_name": "文件名",
- "file_name_or_extension": "文件名或扩展名",
+ "file_name_or_extension": "文件名",
"filename": "文件名",
- "files": "",
"filetype": "文件类型",
"filter_people": "过滤人物",
"find_them_fast": "按名称快速搜索",
"fix_incorrect_match": "修复不正确的匹配",
"folders": "文件夹",
"folders_feature_description": "在文件夹视图中浏览文件系统上的照片和视频",
- "force_re-scan_library_files": "强制重新扫描所有图库文件",
"forward": "向前",
"general": "通用",
"get_help": "获取帮助",
"getting_started": "入门",
"go_back": "返回",
"go_to_search": "前往搜索",
- "go_to_share_page": "转到共享页面",
"group_albums_by": "相册分组依据...",
"group_no": "未分组",
"group_owner": "按所有者分组",
"group_year": "按年分组",
- "has_quota": "有限额",
+ "has_quota": "配额大小",
"hi_user": "你好,{name}({email})",
"hide_all_people": "隐藏所有人物",
"hide_gallery": "隐藏相册",
@@ -769,7 +768,7 @@
"hide_password": "隐藏密码",
"hide_person": "隐藏人物",
"hide_unnamed_people": "隐藏未命名的人物",
- "host": "主机",
+ "host": "服务器",
"hour": "时",
"image": "图片",
"image_alt_text_date": "在{date}拍摄的{isVideo, select, true {视频} other {照片}}",
@@ -782,34 +781,31 @@
"image_alt_text_date_place_2_people": "{date}在{country}{city}拍摄的包含{person1}和{person2}的{isVideo, select, true {视频} other {照片}}",
"image_alt_text_date_place_3_people": "{date}在{country}{city}拍摄的包含{person1}、{person2}和{person3}的{isVideo, select, true {视频} other {照片}}",
"image_alt_text_date_place_4_or_more_people": "{date}在{country}{city}拍摄的包含{person1}、{person2}及其他{additionalCount, number}个人物的{isVideo, select, true {视频} other {照片}}",
- "image_alt_text_people": "{count, plural, =1 {和{person1}在一起} =2 {和{person1}及{person2}在一起} =3 {和{person1}、{person2}及{person3}在一起} other {和{person1}、{person2}及其他{others, number}个人在一起}}",
- "image_alt_text_place": "在{country} {city}",
- "image_taken": "{isVideo, select, true {选择视频} other {选择图片}}",
- "img": "图片",
"immich_logo": "Immich Logo",
- "immich_web_interface": "Immich Web接口",
+ "immich_web_interface": "Immich Web界面",
"import_from_json": "从JSON导入",
"import_path": "导入路径",
"in_albums": "在{count, plural, one {#个相册} other {#个相册}}中",
"in_archive": "在归档中",
"include_archived": "包括已归档",
- "include_shared_albums": "包含共享相册",
+ "include_shared_albums": "包括共享相册",
"include_shared_partner_assets": "包括同伴共享项目",
"individual_share": "个人分享",
"info": "信息",
"interval": {
"day_at_onepm": "每天下午1点",
"hours": "每 {hours, plural, one {小时} other {{hours, number} 小时}}",
- "night_at_midnight": "每晚24点",
+ "night_at_midnight": "每晚0点",
"night_at_twoam": "每晚凌晨2点"
},
"invite_people": "邀请人员",
"invite_to_album": "邀请加入相册",
"items_count": "{count, plural, one {#个项目} other {#个项目}}",
- "job_settings_description": "管理任务并发",
"jobs": "任务",
"keep": "保留",
"keep_all": "保留所有",
+ "keep_this_delete_others": "保留这个,删除其它",
+ "kept_this_deleted_others": "保留该项目并删除 {count, plural, one {# 个项目} other {# 个项目}}",
"keyboard_shortcuts": "键盘快捷键",
"language": "语言",
"language_setting_description": "选择您的语言偏好",
@@ -821,31 +817,6 @@
"level": "等级",
"library": "图库",
"library_options": "图库选项",
- "license_account_info": "您的帐户已授权",
- "license_activated_subtitle": "感谢您对Immich和开源软件的支持",
- "license_activated_title": "您的授权已激活成功",
- "license_button_activate": "激活",
- "license_button_buy": "购买",
- "license_button_buy_license": "购买授权",
- "license_button_select": "选择",
- "license_failed_activation": "授权激活失败。请检查邮件获取正确的授权码!",
- "license_individual_description_1": "1个用于任意服务的授权用户",
- "license_individual_title": "个人授权",
- "license_info_licensed": "已授权",
- "license_info_unlicensed": "未授权",
- "license_input_suggestion": "已有授权?请在下方输入授权码",
- "license_license_subtitle": "购买授权来支持Immich",
- "license_license_title": "授权",
- "license_lifetime_description": "永久授权",
- "license_per_server": "每台服务器",
- "license_per_user": "每个用户",
- "license_server_description_1": "1台授权服务器",
- "license_server_description_2": "授权给本服务器中的所有用户",
- "license_server_title": "服务器授权",
- "license_trial_info_1": "您运行的是未授权的Immich版本",
- "license_trial_info_2": "您已经使用Immich大概",
- "license_trial_info_3": "{accountAge, plural, one {#天} other {#天}}",
- "license_trial_info_4": "请考虑购买授权来支持此服务的持续开发",
"light": "浅色",
"like_deleted": "已删除的收藏",
"link_motion_video": "链接动态视频",
@@ -867,6 +838,7 @@
"look": "样式",
"loop_videos": "循环视频",
"loop_videos_description": "启用在详细信息中自动循环播放视频。",
+ "main_branch_warning": "您当前使用的是开发版;我们强烈建议您使用正式发行版(release版)!",
"make": "品牌",
"manage_shared_links": "管理共享链接",
"manage_sharing_with_partners": "管理与同伴的共享",
@@ -889,7 +861,7 @@
"merge": "合并",
"merge_people": "合并人物",
"merge_people_limit": "每次最多只能合并 5 个人",
- "merge_people_prompt": "你想合并这些人吗?此操作不可逆。",
+ "merge_people_prompt": "你想合并这些人吗?该操作不可逆(无法被撤销)。",
"merge_people_successfully": "合并人物成功",
"merged_people_count": "已合并{count, plural, one {#个人} other {#个人}}",
"minimize": "最小化",
@@ -919,7 +891,7 @@
"no_archived_assets_message": "归档照片和视频以便在照片视图中隐藏它们",
"no_assets_message": "点击上传您的第一张照片",
"no_duplicates_found": "未发现重复项。",
- "no_exif_info_available": "没有可用的exif信息",
+ "no_exif_info_available": "没有可用的EXIF信息",
"no_explore_results_message": "上传更多照片来探索。",
"no_favorites_message": "添加到收藏夹,快速查找最佳图片和视频",
"no_libraries_message": "创建外部图库来查看你的照片和视频",
@@ -929,13 +901,14 @@
"no_results_description": "尝试使用同义词或更通用的关键词",
"no_shared_albums_message": "创建相册以共享照片和视频",
"not_in_any_album": "不在任何相册中",
- "note_apply_storage_label_to_previously_uploaded assets": "提示:要将存储标签应用于之前上传的项目,运行以下命令",
- "note_unlimited_quota": "注:输入 0 表示无限制配额",
+ "note_apply_storage_label_to_previously_uploaded assets": "提示:要将存储标签应用于之前上传的项目,需要运行",
+ "note_unlimited_quota": "注:输入 0 表示无限配额",
"notes": "提示",
"notification_toggle_setting_description": "启用邮件通知",
"notifications": "通知",
"notifications_setting_description": "管理通知",
"oauth": "OAuth",
+ "official_immich_resources": "Immich 官方资源",
"offline": "离线",
"offline_paths": "离线文件",
"offline_paths_description": "这些结果可能是由于手动删除了不属于外部图库的文件造成的。",
@@ -948,7 +921,6 @@
"onboarding_welcome_user": "欢迎你,{user}",
"online": "在线",
"only_favorites": "仅显示已收藏",
- "only_refreshes_modified_files": "仅刷新修改的文件",
"open_in_map_view": "在地图视图中打开",
"open_in_openstreetmap": "在OpenStreetMap中打开",
"open_the_search_filters": "打开搜索过滤器",
@@ -986,14 +958,12 @@
"people_edits_count": "{count, plural, one {#个人物} other {#个人物}}已编辑",
"people_feature_description": "按人物分组进行浏览照片和视频",
"people_sidebar_description": "在侧边栏中显示“人物”链接",
- "perform_library_tasks": "",
"permanent_deletion_warning": "永久删除警告",
"permanent_deletion_warning_setting_description": "当永久删除项目时显示警告",
"permanently_delete": "永久删除",
- "permanently_delete_assets_count": "{count, plural, one {个项目} other {个项目}}已删除",
- "permanently_delete_assets_prompt": "确定要永久删除{count, plural, one {此项目} other {这#个项目}}?该操作会同时将{count, plural, one {它} other {它们}}从其所在相册中移除。",
+ "permanently_delete_assets_count": "永久删除{count, plural, one {项目} other {项目}}",
+ "permanently_delete_assets_prompt": "确定要永久删除 {count, plural, one {此项目?} other {这#个项目?}} 该操作会同时将 {count, plural, one {它} other {它们}} 从其所在相册中移除。",
"permanently_deleted_asset": "永久删除的项目",
- "permanently_deleted_assets": "永久删除{count, plural, one {# 个项目} other {# 个项目}}",
"permanently_deleted_assets_count": "{count, plural, one {#个项目} other {#个项目}}已删除",
"person": "人物",
"person_hidden": "{name}{hidden, select, true {(已隐藏)} other {}}",
@@ -1009,7 +979,6 @@
"play_memories": "播放回忆",
"play_motion_photo": "播放动态图片",
"play_or_pause_video": "播放或暂停视频",
- "point": "点",
"port": "端口",
"preset": "预设",
"preview": "预览",
@@ -1038,7 +1007,7 @@
"purchase_individual_description_2": "支持者状态",
"purchase_individual_title": "个人",
"purchase_input_suggestion": "已有一个产品密钥?请在下方输入密钥",
- "purchase_license_subtitle": "购买 Immich 以支持此项目的持续发展",
+ "purchase_license_subtitle": "购买 Immich 以支持此服务的持续发展",
"purchase_lifetime_description": "终身许可",
"purchase_option_title": "购买选项",
"purchase_panel_info_1": "开发 Immich 需要大量的时间和精力,我们有全职工程师在努力将其做到最好。我们的使命是通过开源软件和道德商业实践,为开发者提供可持续的收入来源,并创建一个尊重隐私的生态系统,提供一个可以真正替代现有剥削性云服务的选择。",
@@ -1054,38 +1023,40 @@
"purchase_server_description_2": "支持者状态",
"purchase_server_title": "服务器",
"purchase_settings_server_activated": "服务器产品密钥正在由管理员管理",
- "range": "范围",
"rating": "星级",
"rating_clear": "删除星级",
"rating_count": "{count, plural, one {#星} other {#星}}",
"rating_description": "在信息面板中展示EXIF星级",
- "raw": "Raw",
- "reaction_options": "反应选项",
+ "reaction_options": "回应选项",
"read_changelog": "阅读更新日志",
"reassign": "重新指派",
"reassigned_assets_to_existing_person": "重新指派{count, plural, one {#个项目} other {#个项目}}到{name, select, null {已存在的人物} other {{name}}}",
"reassigned_assets_to_new_person": "重新指派{count, plural, one {#个项目} other {#个项目}}到新的人物",
"reassing_hint": "指派选择的项目到已存在的人物",
"recent": "最近",
+ "recent-albums": "最近的相册",
"recent_searches": "最近搜索",
"refresh": "刷新",
"refresh_encoded_videos": "刷新已编码的视频",
+ "refresh_faces": "刷新人脸",
"refresh_metadata": "刷新元数据",
"refresh_thumbnails": "刷新缩略图",
"refreshed": "已刷新",
- "refreshes_every_file": "刷新全部文件",
+ "refreshes_every_file": "重新扫描所有现有文件和新文件",
"refreshing_encoded_video": "正在刷新已编码视频",
+ "refreshing_faces": "正在刷新人脸",
"refreshing_metadata": "正在刷新元数据",
"regenerating_thumbnails": "正在重新生成缩略图",
"remove": "移除",
"remove_assets_album_confirmation": "确定要从项目中移除{count, plural, one {#个项目} other {#个项目}}?",
"remove_assets_shared_link_confirmation": "确定要从共享链接中移除{count, plural, one {#个项目} other {#个项目}}?",
"remove_assets_title": "移除项目?",
- "remove_custom_date_range": "根据自定义日期范围移除",
+ "remove_custom_date_range": "取消自定义日期范围",
+ "remove_deleted_assets": "删除离线文件",
"remove_from_album": "从相册中移除",
"remove_from_favorites": "移出收藏",
"remove_from_shared_link": "从共享链接中移除",
- "remove_offline_files": "删除离线文件",
+ "remove_url": "移除URL",
"remove_user": "移除用户",
"removed_api_key": "移除的API Key:{name}",
"removed_from_archive": "从归档中移除",
@@ -1102,7 +1073,6 @@
"reset": "重置",
"reset_password": "重置密码",
"reset_people_visibility": "重置人物可见性",
- "reset_settings_to_default": "恢复到默认设置",
"reset_to_default": "恢复默认值",
"resolve_duplicates": "处理重复项",
"resolved_all_duplicates": "解决所有重复问题",
@@ -1122,14 +1092,13 @@
"saved_settings": "已保存设置",
"say_something": "说点什么",
"scan_all_libraries": "扫描所有图库",
- "scan_all_library_files": "重新扫描所有图库文件",
- "scan_new_library_files": "扫描新的图库文件",
+ "scan_library": "扫描",
"scan_settings": "扫描设置",
"scanning_for_album": "扫描相册中...",
"search": "搜索",
"search_albums": "搜索相册",
"search_by_context": "搜索内容",
- "search_by_filename": "通过文件名或扩展名搜索",
+ "search_by_filename": "通过文件名搜索",
"search_by_filename_example": "如 IMG_1234.JPG 或 PNG",
"search_camera_make": "搜索相机品牌...",
"search_camera_model": "搜索相机型号...",
@@ -1141,11 +1110,12 @@
"search_options": "搜索选项",
"search_people": "搜索人物",
"search_places": "搜索地点",
+ "search_settings": "搜索设置",
"search_state": "搜索省份...",
"search_tags": "搜索标签…",
"search_timezone": "搜索时区...",
"search_type": "搜索类型",
- "search_your_photos": "搜索你的照片",
+ "search_your_photos": "搜索您的照片",
"searching_locales": "搜索地区...",
"second": "秒",
"see_all_people": "查看所有人物",
@@ -1165,7 +1135,6 @@
"selected_count": "{count, plural, other {#项已选择}}",
"send_message": "发送消息",
"send_welcome_email": "发送欢迎邮件",
- "server": "服务器",
"server_offline": "服务器离线",
"server_online": "服务器在线",
"server_stats": "服务统计",
@@ -1181,16 +1150,16 @@
"share": "共享",
"shared": "共享",
"shared_by": "共享自",
- "shared_by_user": "由{user}共享",
+ "shared_by_user": "由“{user}”共享",
"shared_by_you": "你的共享",
- "shared_from_partner": "来自{partner}的照片",
+ "shared_from_partner": "来自“{partner}”的照片",
"shared_link_options": "共享链接选项",
"shared_links": "共享链接",
"shared_photos_and_videos_count": "{assetCount, plural, other {#项已共享照片&视频。}}",
- "shared_with_partner": "与{partner}共享",
+ "shared_with_partner": "与“{partner}”共享",
"sharing": "共享",
"sharing_enter_password": "请输入密码后查看此页面。",
- "sharing_sidebar_description": "在侧边栏中显示共享链接",
+ "sharing_sidebar_description": "在侧边栏中显示“共享”链接",
"shift_to_permanent_delete": "按住Shift键永久删除项目",
"show_album_options": "显示相册选项",
"show_albums": "显示相册",
@@ -1208,6 +1177,7 @@
"show_person_options": "显示人物选项",
"show_progress_bar": "显示进度条",
"show_search_options": "显示搜索选项",
+ "show_slideshow_transition": "显示幻灯片过渡效果",
"show_supporter_badge": "支持者徽章",
"show_supporter_badge_description": "展示支持者徽章",
"shuffle": "随机",
@@ -1216,9 +1186,9 @@
"sign_out": "注销",
"sign_up": "注册",
"size": "大小",
- "skip_to_content": "跳到内容",
- "skip_to_folders": "跳到文件夹",
- "skip_to_tags": "跳到标签",
+ "skip_to_content": "跳转到内容",
+ "skip_to_folders": "跳转到文件夹",
+ "skip_to_tags": "跳转到标签",
"slideshow": "幻灯片放映",
"slideshow_settings": "放映设置",
"sort_albums_by": "相册排序依据...",
@@ -1226,7 +1196,7 @@
"sort_items": "项目数量",
"sort_modified": "修改日期",
"sort_oldest": "最早的照片",
- "sort_recent": "最近的照片",
+ "sort_recent": "最新的照片",
"sort_title": "标题",
"source": "源",
"stack": "堆叠",
@@ -1241,41 +1211,45 @@
"status": "状态",
"stop_motion_photo": "定格照片",
"stop_photo_sharing": "停止共享照片?",
- "stop_photo_sharing_description": "{partner}将不能访问你的照片。",
+ "stop_photo_sharing_description": "“{partner}”将不能访问你的照片。",
"stop_sharing_photos_with_user": "停止与此用户共享照片",
"storage": "存储空间",
"storage_label": "存储标签",
- "storage_usage": "总量:{available},已用{used}",
+ "storage_usage": "已用:{used}/{available}",
"submit": "提交",
"suggestions": "建议",
"sunrise_on_the_beach": "海滩上的日出",
- "swap_merge_direction": "交换合并方向",
+ "support": "支持",
+ "support_and_feedback": "支持和反馈",
+ "support_third_party_description": "您的 Immich 安装程序是由第三方打包的。您遇到的问题可能是由软件包引起的,所以首先请使用下面的链接提出问题或BUG。",
+ "swap_merge_direction": "互换合并方向",
"sync": "同步",
"tag": "标签",
"tag_assets": "标记项目",
"tag_created": "已创建标签:{tag}",
"tag_feature_description": "按逻辑标签主题分组进行浏览照片和视频",
- "tag_not_found_question": "找不到标签吗?点击这里创建一个",
+ "tag_not_found_question": "找不到标签吗?创建新标签",
"tag_updated": "已更新标签:{tag}",
"tagged_assets": "{count, plural, one {# 个项目} other {# 个项目}}被加上标签",
"tags": "标签",
"template": "模版",
"theme": "主题",
"theme_selection": "主题选项",
- "theme_selection_description": "根据浏览器的系统首选项自动设置主题色",
+ "theme_selection_description": "跟随浏览器自动设置主题颜色",
"they_will_be_merged_together": "项目将会合并到一起",
+ "third_party_resources": "第三方资源",
"time_based_memories": "基于时间的回忆",
+ "timeline": "时间线",
"timezone": "时区",
"to_archive": "归档",
"to_change_password": "修改密码",
"to_favorite": "收藏",
"to_login": "登录",
"to_parent": "返回上一级",
- "to_root": "返回到根目录",
"to_trash": "放入回收站",
"toggle_settings": "切换设置",
"toggle_theme": "切换深色主题",
- "toggle_visibility": "切换可见性",
+ "total": "总计",
"total_usage": "总用量",
"trash": "回收站",
"trash_all": "全部删除",
@@ -1285,12 +1259,10 @@
"trashed_items_will_be_permanently_deleted_after": "回收站中的项目将在{days, plural, one {#天} other {#天}}后被永久删除。",
"type": "种类",
"unarchive": "取消归档",
- "unarchived": "已取消归档",
"unarchived_count": "{count, plural, other {取消归档 # 项}}",
"unfavorite": "取消收藏",
"unhide_person": "显示人物",
"unknown": "未知",
- "unknown_album": "未知相册",
"unknown_year": "未知年份",
"unlimited": "无限制",
"unlink_motion_video": "取消链接动态视频",
@@ -1299,7 +1271,7 @@
"unnamed_album": "未命名相册",
"unnamed_album_delete_confirmation": "您确定要删除该相册吗?",
"unnamed_share": "未命名共享",
- "unsaved_change": "未保存的修改",
+ "unsaved_change": "修改未保存",
"unselect_all": "取消全选",
"unselect_all_duplicates": "取消选择所有重复项",
"unstack": "取消堆叠",
@@ -1319,16 +1291,16 @@
"upload_success": "上传成功,刷新页面查看新上传的项目。",
"url": "URL",
"usage": "用量",
- "use_custom_date_range": "使用自定义日期范围",
+ "use_custom_date_range": "自定义日期范围",
"user": "用户",
"user_id": "用户ID",
- "user_license_settings": "授权",
- "user_license_settings_description": "管理你的授权",
- "user_liked": "{user}点赞了{type, select, photo {该照片} video {该视频} asset {该项目} other {它}}",
+ "user_liked": "“{user}”点赞了{type, select, photo {该照片} video {该视频} asset {该项目} other {它}}",
"user_purchase_settings": "购买",
"user_purchase_settings_description": "管理购买订单",
- "user_role_set": "设置{user}为{role}",
+ "user_role_set": "设置“{user}”为“{role}”",
"user_usage_detail": "用户用量详情",
+ "user_usage_stats": "帐户使用统计",
+ "user_usage_stats_description": "查看帐户使用统计信息",
"username": "用户名",
"users": "用户",
"utilities": "实用工具",
@@ -1336,7 +1308,9 @@
"variables": "变量",
"version": "版本",
"version_announcement_closing": "你的朋友,Alex",
- "version_announcement_message": "嗨,伙计,当前应用出新版本了,请抽空阅读一下发行说明,并及时更新你的docker-compose.yml和.env文件,避免存在错误配置,特别是当你是使用WatchTower或其它类似的自动升级工具时。",
+ "version_announcement_message": "你好!已经检测到Immich有新版本。请抽空阅读一下发行说明,以确保您的配置文件是最新的,避免存在配置错误,特别是当你是使用WatchTower或其它类似的自动升级工具时。",
+ "version_history": "版本更新历史记录",
+ "version_history_item": "在 {date} 安装 {version} 版本",
"video": "视频",
"video_hover_setting": "鼠标悬停时播放视频缩略图",
"video_hover_setting_description": "当鼠标悬停在项目上时播放视频缩略图。即使禁用了这个功能,也可以通过将鼠标悬停在播放图标上来开始播放。",
@@ -1348,16 +1322,16 @@
"view_all_users": "查看全部用户",
"view_in_timeline": "在时间轴中查看",
"view_links": "查看链接",
+ "view_name": "查看",
"view_next_asset": "查看下一项",
"view_previous_asset": "查看上一项",
"view_stack": "查看堆叠项目",
- "viewer": "预览",
"visibility_changed": "{count, plural, one {#个人物} other {#个人物}}的可见性已修改",
- "waiting": "队列中",
+ "waiting": "准备处理",
"warning": "警告",
"week": "周",
"welcome": "欢迎",
- "welcome_to_immich": "欢迎使用immich",
+ "welcome_to_immich": "欢迎使用 Immich",
"year": "年",
"years_ago": "{years, plural, one {#年} other {#年}}前",
"yes": "是",
diff --git a/machine-learning/Dockerfile b/machine-learning/Dockerfile
index e49fde1464..bca9244fa1 100644
--- a/machine-learning/Dockerfile
+++ b/machine-learning/Dockerfile
@@ -1,6 +1,6 @@
ARG DEVICE=cpu
-FROM python:3.11-bookworm@sha256:3cd9b520be95c671135ea1318f32be6912876024ee16d0f472669d3878801651 AS builder-cpu
+FROM python:3.11-bookworm@sha256:2c80c66d876952e04fa74113864903198b7cfb36b839acb7a8fef82e94ed067c AS builder-cpu
FROM builder-cpu AS builder-openvino
@@ -34,7 +34,7 @@ RUN python3 -m venv /opt/venv
COPY poetry.lock pyproject.toml ./
RUN poetry install --sync --no-interaction --no-ansi --no-root --with ${DEVICE} --without dev
-FROM python:3.11-slim-bookworm@sha256:50ec89bdac0a845ec1751f91cb6187a3d8adb2b919d6e82d17acf48d1a9743fc AS prod-cpu
+FROM python:3.11-slim-bookworm@sha256:370c586a6ffc8c619e6d652f81c094b34b14b8f2fb9251f092de23f16e299b78 AS prod-cpu
FROM prod-cpu AS prod-openvino
@@ -104,7 +104,7 @@ RUN echo "hard core 0" >> /etc/security/limits.conf && \
COPY --from=builder /opt/venv /opt/venv
COPY ann/ann.py /usr/src/ann/ann.py
-COPY start.sh log_conf.json ./
+COPY start.sh log_conf.json gunicorn_conf.py ./
COPY app .
ENTRYPOINT ["tini", "--"]
CMD ["./start.sh"]
diff --git a/machine-learning/app/config.py b/machine-learning/app/config.py
index af2d0aa4b9..92799ac692 100644
--- a/machine-learning/app/config.py
+++ b/machine-learning/app/config.py
@@ -6,7 +6,8 @@ from pathlib import Path
from socket import socket
from gunicorn.arbiter import Arbiter
-from pydantic import BaseModel, BaseSettings
+from pydantic import BaseModel
+from pydantic_settings import BaseSettings, SettingsConfigDict
from rich.console import Console
from rich.logging import RichHandler
from uvicorn import Server
@@ -14,11 +15,22 @@ from uvicorn.workers import UvicornWorker
class PreloadModelData(BaseModel):
- clip: str | None
- facial_recognition: str | None
+ clip: str | None = None
+ facial_recognition: str | None = None
+
+
+class MaxBatchSize(BaseModel):
+ facial_recognition: int | None = None
class Settings(BaseSettings):
+ model_config = SettingsConfigDict(
+ env_prefix="MACHINE_LEARNING_",
+ case_sensitive=False,
+ env_nested_delimiter="__",
+ protected_namespaces=("settings_",),
+ )
+
cache_folder: Path = Path("/cache")
model_ttl: int = 300
model_ttl_poll_s: int = 10
@@ -33,20 +45,19 @@ class Settings(BaseSettings):
ann_fp16_turbo: bool = False
ann_tuning_level: int = 2
preload: PreloadModelData | None = None
+ max_batch_size: MaxBatchSize | None = None
- class Config:
- env_prefix = "MACHINE_LEARNING_"
- case_sensitive = False
- env_nested_delimiter = "__"
+ @property
+ def device_id(self) -> str:
+ return os.environ.get("MACHINE_LEARNING_DEVICE_ID", "0")
class LogSettings(BaseSettings):
+ model_config = SettingsConfigDict(case_sensitive=False)
+
immich_log_level: str = "info"
no_color: bool = False
- class Config:
- case_sensitive = False
-
_clean_name = str.maketrans(":\\/", "___", ".")
diff --git a/machine-learning/app/main.py b/machine-learning/app/main.py
index 000119937e..684001b875 100644
--- a/machine-learning/app/main.py
+++ b/machine-learning/app/main.py
@@ -12,7 +12,7 @@ from zipfile import BadZipFile
import orjson
from fastapi import Depends, FastAPI, File, Form, HTTPException
-from fastapi.responses import ORJSONResponse
+from fastapi.responses import ORJSONResponse, PlainTextResponse
from onnxruntime.capi.onnxruntime_pybind11_state import InvalidProtobuf, NoSuchFile
from PIL.Image import Image
from pydantic import ValidationError
@@ -28,14 +28,12 @@ from .schemas import (
InferenceEntries,
InferenceEntry,
InferenceResponse,
- MessageResponse,
ModelFormat,
ModelIdentity,
ModelTask,
ModelType,
PipelineRequest,
T,
- TextResponse,
)
MultiPartParser.max_file_size = 2**26 # spools to disk if payload is 64 MiB or larger
@@ -127,14 +125,14 @@ def get_entries(entries: str = Form()) -> InferenceEntries:
app = FastAPI(lifespan=lifespan)
-@app.get("/", response_model=MessageResponse)
-async def root() -> dict[str, str]:
- return {"message": "Immich ML"}
+@app.get("/")
+async def root() -> ORJSONResponse:
+ return ORJSONResponse({"message": "Immich ML"})
-@app.get("/ping", response_model=TextResponse)
-def ping() -> str:
- return "pong"
+@app.get("/ping")
+def ping() -> PlainTextResponse:
+ return PlainTextResponse("pong")
@app.post("/predict", dependencies=[Depends(update_state)])
diff --git a/machine-learning/app/models/facial_recognition/recognition.py b/machine-learning/app/models/facial_recognition/recognition.py
index c060bdd616..dcfb6b530e 100644
--- a/machine-learning/app/models/facial_recognition/recognition.py
+++ b/machine-learning/app/models/facial_recognition/recognition.py
@@ -3,13 +3,14 @@ from typing import Any
import numpy as np
import onnx
+import onnxruntime as ort
from insightface.model_zoo import ArcFaceONNX
from insightface.utils.face_align import norm_crop
from numpy.typing import NDArray
from onnx.tools.update_model_dims import update_inputs_outputs_dims
from PIL import Image
-from app.config import log
+from app.config import log, settings
from app.models.base import InferenceModel
from app.models.transforms import decode_cv2
from app.schemas import FaceDetectionOutput, FacialRecognitionOutput, ModelFormat, ModelSession, ModelTask, ModelType
@@ -22,11 +23,12 @@ class FaceRecognizer(InferenceModel):
def __init__(self, model_name: str, min_score: float = 0.7, **model_kwargs: Any) -> None:
super().__init__(model_name, **model_kwargs)
self.min_score = model_kwargs.pop("minScore", min_score)
- self.batch = self.model_format == ModelFormat.ONNX
+ max_batch_size = settings.max_batch_size.facial_recognition if settings.max_batch_size else None
+ self.batch_size = max_batch_size if max_batch_size else self._batch_size_default
def _load(self) -> ModelSession:
session = self._make_session(self.model_path)
- if self.batch and str(session.get_inputs()[0].shape[0]) != "batch":
+ if (not self.batch_size or self.batch_size > 1) and str(session.get_inputs()[0].shape[0]) != "batch":
self._add_batch_axis(self.model_path)
session = self._make_session(self.model_path)
self.model = ArcFaceONNX(
@@ -42,18 +44,18 @@ class FaceRecognizer(InferenceModel):
return []
inputs = decode_cv2(inputs)
cropped_faces = self._crop(inputs, faces)
- embeddings = self._predict_batch(cropped_faces) if self.batch else self._predict_single(cropped_faces)
+ embeddings = self._predict_batch(cropped_faces)
return self.postprocess(faces, embeddings)
def _predict_batch(self, cropped_faces: list[NDArray[np.uint8]]) -> NDArray[np.float32]:
- embeddings: NDArray[np.float32] = self.model.get_feat(cropped_faces)
- return embeddings
+ if not self.batch_size or len(cropped_faces) <= self.batch_size:
+ embeddings: NDArray[np.float32] = self.model.get_feat(cropped_faces)
+ return embeddings
- def _predict_single(self, cropped_faces: list[NDArray[np.uint8]]) -> NDArray[np.float32]:
- embeddings: list[NDArray[np.float32]] = []
- for face in cropped_faces:
- embeddings.append(self.model.get_feat(face))
- return np.concatenate(embeddings, axis=0)
+ batch_embeddings: list[NDArray[np.float32]] = []
+ for i in range(0, len(cropped_faces), self.batch_size):
+ batch_embeddings.append(self.model.get_feat(cropped_faces[i : i + self.batch_size]))
+ return np.concatenate(batch_embeddings, axis=0)
def postprocess(self, faces: FaceDetectionOutput, embeddings: NDArray[np.float32]) -> FacialRecognitionOutput:
return [
@@ -77,3 +79,8 @@ class FaceRecognizer(InferenceModel):
output_dims = {proto.graph.output[0].name: ["batch"] + static_output_dims}
updated_proto = update_inputs_outputs_dims(proto, input_dims, output_dims)
onnx.save(updated_proto, model_path)
+
+ @property
+ def _batch_size_default(self) -> int | None:
+ providers = ort.get_available_providers()
+ return None if self.model_format == ModelFormat.ONNX and "OpenVINOExecutionProvider" not in providers else 1
diff --git a/machine-learning/app/schemas.py b/machine-learning/app/schemas.py
index f051db12c3..a7ce2ee60d 100644
--- a/machine-learning/app/schemas.py
+++ b/machine-learning/app/schemas.py
@@ -1,9 +1,9 @@
from enum import Enum
-from typing import Any, Literal, Protocol, TypedDict, TypeGuard, TypeVar
+from typing import Any, Literal, Protocol, TypeGuard, TypeVar
import numpy as np
import numpy.typing as npt
-from pydantic import BaseModel
+from typing_extensions import TypedDict
class StrEnum(str, Enum):
@@ -13,14 +13,6 @@ class StrEnum(str, Enum):
return self.value
-class TextResponse(BaseModel):
- __root__: str
-
-
-class MessageResponse(BaseModel):
- message: str
-
-
class BoundingBox(TypedDict):
x1: int
y1: int
diff --git a/machine-learning/app/sessions/ort.py b/machine-learning/app/sessions/ort.py
index 1a244b7c57..00c7ad50a9 100644
--- a/machine-learning/app/sessions/ort.py
+++ b/machine-learning/app/sessions/ort.py
@@ -86,11 +86,13 @@ class OrtSession:
provider_options = []
for provider in self.providers:
match provider:
- case "CPUExecutionProvider" | "CUDAExecutionProvider":
+ case "CPUExecutionProvider":
options = {"arena_extend_strategy": "kSameAsRequested"}
+ case "CUDAExecutionProvider":
+ options = {"arena_extend_strategy": "kSameAsRequested", "device_id": settings.device_id}
case "OpenVINOExecutionProvider":
options = {
- "device_type": "GPU",
+ "device_type": f"GPU.{settings.device_id}",
"precision": "FP32",
"cache_dir": (self.model_path.parent / "openvino").as_posix(),
}
diff --git a/machine-learning/app/test_main.py b/machine-learning/app/test_main.py
index 5f8e5b9e9c..e5cb63997c 100644
--- a/machine-learning/app/test_main.py
+++ b/machine-learning/app/test_main.py
@@ -210,10 +210,24 @@ class TestOrtSession:
session = OrtSession(model_path, providers=["OpenVINOExecutionProvider", "CPUExecutionProvider"])
assert session.provider_options == [
- {"device_type": "GPU", "precision": "FP32", "cache_dir": "/cache/ViT-B-32__openai/openvino"},
+ {"device_type": "GPU.0", "precision": "FP32", "cache_dir": "/cache/ViT-B-32__openai/openvino"},
{"arena_extend_strategy": "kSameAsRequested"},
]
+ def test_sets_device_id_for_openvino(self) -> None:
+ os.environ["MACHINE_LEARNING_DEVICE_ID"] = "1"
+
+ session = OrtSession("ViT-B-32__openai", providers=["OpenVINOExecutionProvider"])
+
+ assert session.provider_options[0]["device_type"] == "GPU.1"
+
+ def test_sets_device_id_for_cuda(self) -> None:
+ os.environ["MACHINE_LEARNING_DEVICE_ID"] = "1"
+
+ session = OrtSession("ViT-B-32__openai", providers=["CUDAExecutionProvider"])
+
+ assert session.provider_options[0]["device_id"] == "1"
+
def test_sets_provider_options_kwarg(self) -> None:
session = OrtSession(
"ViT-B-32__openai",
@@ -535,7 +549,7 @@ class TestFaceRecognition:
face_recognizer = FaceRecognizer("buffalo_s", cache_dir=path)
face_recognizer.load()
- assert face_recognizer.batch is True
+ assert face_recognizer.batch_size is None
update_dims.assert_called_once_with(proto, {"input.1": ["batch", 3, 224, 224]}, {"output.1": ["batch", 800]})
onnx.save.assert_called_once_with(update_dims.return_value, face_recognizer.model_path)
@@ -558,7 +572,7 @@ class TestFaceRecognition:
face_recognizer = FaceRecognizer("buffalo_s", cache_dir=path)
face_recognizer.load()
- assert face_recognizer.batch is True
+ assert face_recognizer.batch_size is None
update_dims.assert_not_called()
onnx.load.assert_not_called()
onnx.save.assert_not_called()
@@ -582,7 +596,33 @@ class TestFaceRecognition:
face_recognizer = FaceRecognizer("buffalo_s", model_format=ModelFormat.ARMNN, cache_dir=path)
face_recognizer.load()
- assert face_recognizer.batch is False
+ assert face_recognizer.batch_size == 1
+ update_dims.assert_not_called()
+ onnx.load.assert_not_called()
+ onnx.save.assert_not_called()
+
+ def test_recognition_does_not_add_batch_axis_for_openvino(
+ self, ort_session: mock.Mock, path: mock.Mock, mocker: MockerFixture
+ ) -> None:
+ onnx = mocker.patch("app.models.facial_recognition.recognition.onnx", autospec=True)
+ update_dims = mocker.patch(
+ "app.models.facial_recognition.recognition.update_inputs_outputs_dims", autospec=True
+ )
+ mocker.patch("app.models.base.InferenceModel.download")
+ mocker.patch("app.models.facial_recognition.recognition.ArcFaceONNX")
+ path.return_value.__truediv__.return_value.__truediv__.return_value.suffix = ".onnx"
+
+ inputs = [SimpleNamespace(name="input.1", shape=("batch", 3, 224, 224))]
+ outputs = [SimpleNamespace(name="output.1", shape=("batch", 800))]
+ ort_session.return_value.get_inputs.return_value = inputs
+ ort_session.return_value.get_outputs.return_value = outputs
+
+ face_recognizer = FaceRecognizer(
+ "buffalo_s", model_format=ModelFormat.ARMNN, cache_dir=path, providers=["OpenVINOExecutionProvider"]
+ )
+ face_recognizer.load()
+
+ assert face_recognizer.batch_size == 1
update_dims.assert_not_called()
onnx.load.assert_not_called()
onnx.save.assert_not_called()
@@ -796,11 +836,26 @@ class TestLoad:
mock_model.model_format = ModelFormat.ONNX
+def test_root_endpoint(deployed_app: TestClient) -> None:
+ response = deployed_app.get("http://localhost:3003")
+
+ body = response.json()
+ assert response.status_code == 200
+ assert body == {"message": "Immich ML"}
+
+
+def test_ping_endpoint(deployed_app: TestClient) -> None:
+ response = deployed_app.get("http://localhost:3003/ping")
+
+ assert response.status_code == 200
+ assert response.text == "pong"
+
+
@pytest.mark.skipif(
not settings.test_full,
reason="More time-consuming since it deploys the app and loads models.",
)
-class TestEndpoints:
+class TestPredictionEndpoints:
def test_clip_image_endpoint(
self, pil_image: Image.Image, responses: dict[str, Any], deployed_app: TestClient
) -> None:
diff --git a/machine-learning/export/Dockerfile b/machine-learning/export/Dockerfile
index 85be083c3c..195e64ab35 100644
--- a/machine-learning/export/Dockerfile
+++ b/machine-learning/export/Dockerfile
@@ -1,4 +1,4 @@
-FROM mambaorg/micromamba:bookworm-slim@sha256:b10f75974a30a6889b03519ac48d3e1510fd13d0689468c2c443033a15d84f1b AS builder
+FROM mambaorg/micromamba:bookworm-slim@sha256:e3797091302382ea841498bc93a7b0a50f7c1448333d5e946d2d1608d0c5f43d AS builder
ENV TRANSFORMERS_CACHE=/cache \
PYTHONDONTWRITEBYTECODE=1 \
diff --git a/machine-learning/gunicorn_conf.py b/machine-learning/gunicorn_conf.py
new file mode 100644
index 0000000000..efec3a95aa
--- /dev/null
+++ b/machine-learning/gunicorn_conf.py
@@ -0,0 +1,12 @@
+import os
+
+from gunicorn.arbiter import Arbiter
+from gunicorn.workers.base import Worker
+
+device_ids = os.environ.get("MACHINE_LEARNING_DEVICE_IDS", "0").replace(" ", "").split(",")
+env = os.environ
+
+
+# Round-robin device assignment for each worker
+def pre_fork(arbiter: Arbiter, _: Worker) -> None:
+ env["MACHINE_LEARNING_DEVICE_ID"] = device_ids[len(arbiter.WORKERS) % len(device_ids)]
diff --git a/machine-learning/poetry.lock b/machine-learning/poetry.lock
index 20ffc6466a..eb8fe31dff 100644
--- a/machine-learning/poetry.lock
+++ b/machine-learning/poetry.lock
@@ -1,14 +1,14 @@
-# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand.
+# This file is automatically @generated by Poetry 1.8.4 and should not be changed by hand.
[[package]]
name = "aiocache"
-version = "0.12.2"
+version = "0.12.3"
description = "multi backend asyncio cache"
optional = false
python-versions = "*"
files = [
- {file = "aiocache-0.12.2-py2.py3-none-any.whl", hash = "sha256:9b6fa30634ab0bfc3ecc44928a91ff07c6ea16d27d55469636b296ebc6eb5918"},
- {file = "aiocache-0.12.2.tar.gz", hash = "sha256:b41c9a145b050a5dcbae1599f847db6dd445193b1f3bd172d8e0fe0cb9e96684"},
+ {file = "aiocache-0.12.3-py2.py3-none-any.whl", hash = "sha256:889086fc24710f431937b87ad3720a289f7fc31c4fd8b68e9f918b9bacd8270d"},
+ {file = "aiocache-0.12.3.tar.gz", hash = "sha256:f528b27bf4d436b497a1d0d1a8f59a542c153ab1e37c3621713cb376d44c4713"},
]
[package.extras]
@@ -40,6 +40,17 @@ develop = ["imgaug (>=0.4.0)", "pytest"]
imgaug = ["imgaug (>=0.4.0)"]
tests = ["pytest"]
+[[package]]
+name = "annotated-types"
+version = "0.7.0"
+description = "Reusable constraint types to use with typing.Annotated"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53"},
+ {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"},
+]
+
[[package]]
name = "anyio"
version = "4.2.0"
@@ -64,33 +75,33 @@ trio = ["trio (>=0.23)"]
[[package]]
name = "black"
-version = "24.8.0"
+version = "24.10.0"
description = "The uncompromising code formatter."
optional = false
-python-versions = ">=3.8"
+python-versions = ">=3.9"
files = [
- {file = "black-24.8.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:09cdeb74d494ec023ded657f7092ba518e8cf78fa8386155e4a03fdcc44679e6"},
- {file = "black-24.8.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:81c6742da39f33b08e791da38410f32e27d632260e599df7245cccee2064afeb"},
- {file = "black-24.8.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:707a1ca89221bc8a1a64fb5e15ef39cd755633daa672a9db7498d1c19de66a42"},
- {file = "black-24.8.0-cp310-cp310-win_amd64.whl", hash = "sha256:d6417535d99c37cee4091a2f24eb2b6d5ec42b144d50f1f2e436d9fe1916fe1a"},
- {file = "black-24.8.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:fb6e2c0b86bbd43dee042e48059c9ad7830abd5c94b0bc518c0eeec57c3eddc1"},
- {file = "black-24.8.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:837fd281f1908d0076844bc2b801ad2d369c78c45cf800cad7b61686051041af"},
- {file = "black-24.8.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:62e8730977f0b77998029da7971fa896ceefa2c4c4933fcd593fa599ecbf97a4"},
- {file = "black-24.8.0-cp311-cp311-win_amd64.whl", hash = "sha256:72901b4913cbac8972ad911dc4098d5753704d1f3c56e44ae8dce99eecb0e3af"},
- {file = "black-24.8.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:7c046c1d1eeb7aea9335da62472481d3bbf3fd986e093cffd35f4385c94ae368"},
- {file = "black-24.8.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:649f6d84ccbae73ab767e206772cc2d7a393a001070a4c814a546afd0d423aed"},
- {file = "black-24.8.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2b59b250fdba5f9a9cd9d0ece6e6d993d91ce877d121d161e4698af3eb9c1018"},
- {file = "black-24.8.0-cp312-cp312-win_amd64.whl", hash = "sha256:6e55d30d44bed36593c3163b9bc63bf58b3b30e4611e4d88a0c3c239930ed5b2"},
- {file = "black-24.8.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:505289f17ceda596658ae81b61ebbe2d9b25aa78067035184ed0a9d855d18afd"},
- {file = "black-24.8.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b19c9ad992c7883ad84c9b22aaa73562a16b819c1d8db7a1a1a49fb7ec13c7d2"},
- {file = "black-24.8.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1f13f7f386f86f8121d76599114bb8c17b69d962137fc70efe56137727c7047e"},
- {file = "black-24.8.0-cp38-cp38-win_amd64.whl", hash = "sha256:f490dbd59680d809ca31efdae20e634f3fae27fba3ce0ba3208333b713bc3920"},
- {file = "black-24.8.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:eab4dd44ce80dea27dc69db40dab62d4ca96112f87996bca68cd75639aeb2e4c"},
- {file = "black-24.8.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:3c4285573d4897a7610054af5a890bde7c65cb466040c5f0c8b732812d7f0e5e"},
- {file = "black-24.8.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9e84e33b37be070ba135176c123ae52a51f82306def9f7d063ee302ecab2cf47"},
- {file = "black-24.8.0-cp39-cp39-win_amd64.whl", hash = "sha256:73bbf84ed136e45d451a260c6b73ed674652f90a2b3211d6a35e78054563a9bb"},
- {file = "black-24.8.0-py3-none-any.whl", hash = "sha256:972085c618ee94f402da1af548a4f218c754ea7e5dc70acb168bfaca4c2542ed"},
- {file = "black-24.8.0.tar.gz", hash = "sha256:2500945420b6784c38b9ee885af039f5e7471ef284ab03fa35ecdde4688cd83f"},
+ {file = "black-24.10.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e6668650ea4b685440857138e5fe40cde4d652633b1bdffc62933d0db4ed9812"},
+ {file = "black-24.10.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1c536fcf674217e87b8cc3657b81809d3c085d7bf3ef262ead700da345bfa6ea"},
+ {file = "black-24.10.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:649fff99a20bd06c6f727d2a27f401331dc0cc861fb69cde910fe95b01b5928f"},
+ {file = "black-24.10.0-cp310-cp310-win_amd64.whl", hash = "sha256:fe4d6476887de70546212c99ac9bd803d90b42fc4767f058a0baa895013fbb3e"},
+ {file = "black-24.10.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:5a2221696a8224e335c28816a9d331a6c2ae15a2ee34ec857dcf3e45dbfa99ad"},
+ {file = "black-24.10.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f9da3333530dbcecc1be13e69c250ed8dfa67f43c4005fb537bb426e19200d50"},
+ {file = "black-24.10.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4007b1393d902b48b36958a216c20c4482f601569d19ed1df294a496eb366392"},
+ {file = "black-24.10.0-cp311-cp311-win_amd64.whl", hash = "sha256:394d4ddc64782e51153eadcaaca95144ac4c35e27ef9b0a42e121ae7e57a9175"},
+ {file = "black-24.10.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:b5e39e0fae001df40f95bd8cc36b9165c5e2ea88900167bddf258bacef9bbdc3"},
+ {file = "black-24.10.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d37d422772111794b26757c5b55a3eade028aa3fde43121ab7b673d050949d65"},
+ {file = "black-24.10.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:14b3502784f09ce2443830e3133dacf2c0110d45191ed470ecb04d0f5f6fcb0f"},
+ {file = "black-24.10.0-cp312-cp312-win_amd64.whl", hash = "sha256:30d2c30dc5139211dda799758559d1b049f7f14c580c409d6ad925b74a4208a8"},
+ {file = "black-24.10.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:1cbacacb19e922a1d75ef2b6ccaefcd6e93a2c05ede32f06a21386a04cedb981"},
+ {file = "black-24.10.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1f93102e0c5bb3907451063e08b9876dbeac810e7da5a8bfb7aeb5a9ef89066b"},
+ {file = "black-24.10.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ddacb691cdcdf77b96f549cf9591701d8db36b2f19519373d60d31746068dbf2"},
+ {file = "black-24.10.0-cp313-cp313-win_amd64.whl", hash = "sha256:680359d932801c76d2e9c9068d05c6b107f2584b2a5b88831c83962eb9984c1b"},
+ {file = "black-24.10.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:17374989640fbca88b6a448129cd1745c5eb8d9547b464f281b251dd00155ccd"},
+ {file = "black-24.10.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:63f626344343083322233f175aaf372d326de8436f5928c042639a4afbbf1d3f"},
+ {file = "black-24.10.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ccfa1d0cb6200857f1923b602f978386a3a2758a65b52e0950299ea014be6800"},
+ {file = "black-24.10.0-cp39-cp39-win_amd64.whl", hash = "sha256:2cd9c95431d94adc56600710f8813ee27eea544dd118d45896bb734e9d7a0dc7"},
+ {file = "black-24.10.0-py3-none-any.whl", hash = "sha256:3bb2b7a1f7b685f85b11fed1ef10f8a9148bceb49853e47a294a3dd963c1dd7d"},
+ {file = "black-24.10.0.tar.gz", hash = "sha256:846ea64c97afe3bc677b761787993be4991810ecc7a4a937816dd6bddedc4875"},
]
[package.dependencies]
@@ -104,7 +115,7 @@ typing-extensions = {version = ">=4.0.1", markers = "python_version < \"3.11\""}
[package.extras]
colorama = ["colorama (>=0.4.3)"]
-d = ["aiohttp (>=3.7.4)", "aiohttp (>=3.7.4,!=3.9.0)"]
+d = ["aiohttp (>=3.10)"]
jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"]
uvloop = ["uvloop (>=0.15.2)"]
@@ -136,6 +147,10 @@ files = [
{file = "Brotli-1.1.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a37b8f0391212d29b3a91a799c8e4a2855e0576911cdfb2515487e30e322253d"},
{file = "Brotli-1.1.0-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:e84799f09591700a4154154cab9787452925578841a94321d5ee8fb9a9a328f0"},
{file = "Brotli-1.1.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f66b5337fa213f1da0d9000bc8dc0cb5b896b726eefd9c6046f699b169c41b9e"},
+ {file = "Brotli-1.1.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:5dab0844f2cf82be357a0eb11a9087f70c5430b2c241493fc122bb6f2bb0917c"},
+ {file = "Brotli-1.1.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:e4fe605b917c70283db7dfe5ada75e04561479075761a0b3866c081d035b01c1"},
+ {file = "Brotli-1.1.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:1e9a65b5736232e7a7f91ff3d02277f11d339bf34099a56cdab6a8b3410a02b2"},
+ {file = "Brotli-1.1.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:58d4b711689366d4a03ac7957ab8c28890415e267f9b6589969e74b6e42225ec"},
{file = "Brotli-1.1.0-cp310-cp310-win32.whl", hash = "sha256:be36e3d172dc816333f33520154d708a2657ea63762ec16b62ece02ab5e4daf2"},
{file = "Brotli-1.1.0-cp310-cp310-win_amd64.whl", hash = "sha256:0c6244521dda65ea562d5a69b9a26120769b7a9fb3db2fe9545935ed6735b128"},
{file = "Brotli-1.1.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:a3daabb76a78f829cafc365531c972016e4aa8d5b4bf60660ad8ecee19df7ccc"},
@@ -148,8 +163,14 @@ files = [
{file = "Brotli-1.1.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:19c116e796420b0cee3da1ccec3b764ed2952ccfcc298b55a10e5610ad7885f9"},
{file = "Brotli-1.1.0-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:510b5b1bfbe20e1a7b3baf5fed9e9451873559a976c1a78eebaa3b86c57b4265"},
{file = "Brotli-1.1.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:a1fd8a29719ccce974d523580987b7f8229aeace506952fa9ce1d53a033873c8"},
+ {file = "Brotli-1.1.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:c247dd99d39e0338a604f8c2b3bc7061d5c2e9e2ac7ba9cc1be5a69cb6cd832f"},
+ {file = "Brotli-1.1.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:1b2c248cd517c222d89e74669a4adfa5577e06ab68771a529060cf5a156e9757"},
+ {file = "Brotli-1.1.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:2a24c50840d89ded6c9a8fdc7b6ed3692ed4e86f1c4a4a938e1e92def92933e0"},
+ {file = "Brotli-1.1.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:f31859074d57b4639318523d6ffdca586ace54271a73ad23ad021acd807eb14b"},
{file = "Brotli-1.1.0-cp311-cp311-win32.whl", hash = "sha256:39da8adedf6942d76dc3e46653e52df937a3c4d6d18fdc94a7c29d263b1f5b50"},
{file = "Brotli-1.1.0-cp311-cp311-win_amd64.whl", hash = "sha256:aac0411d20e345dc0920bdec5548e438e999ff68d77564d5e9463a7ca9d3e7b1"},
+ {file = "Brotli-1.1.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:32d95b80260d79926f5fab3c41701dbb818fde1c9da590e77e571eefd14abe28"},
+ {file = "Brotli-1.1.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:b760c65308ff1e462f65d69c12e4ae085cff3b332d894637f6273a12a482d09f"},
{file = "Brotli-1.1.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:316cc9b17edf613ac76b1f1f305d2a748f1b976b033b049a6ecdfd5612c70409"},
{file = "Brotli-1.1.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:caf9ee9a5775f3111642d33b86237b05808dafcd6268faa492250e9b78046eb2"},
{file = "Brotli-1.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:70051525001750221daa10907c77830bc889cb6d865cc0b813d9db7fefc21451"},
@@ -160,8 +181,24 @@ files = [
{file = "Brotli-1.1.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:4093c631e96fdd49e0377a9c167bfd75b6d0bad2ace734c6eb20b348bc3ea180"},
{file = "Brotli-1.1.0-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:7e4c4629ddad63006efa0ef968c8e4751c5868ff0b1c5c40f76524e894c50248"},
{file = "Brotli-1.1.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:861bf317735688269936f755fa136a99d1ed526883859f86e41a5d43c61d8966"},
+ {file = "Brotli-1.1.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:87a3044c3a35055527ac75e419dfa9f4f3667a1e887ee80360589eb8c90aabb9"},
+ {file = "Brotli-1.1.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:c5529b34c1c9d937168297f2c1fde7ebe9ebdd5e121297ff9c043bdb2ae3d6fb"},
+ {file = "Brotli-1.1.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:ca63e1890ede90b2e4454f9a65135a4d387a4585ff8282bb72964fab893f2111"},
+ {file = "Brotli-1.1.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e79e6520141d792237c70bcd7a3b122d00f2613769ae0cb61c52e89fd3443839"},
{file = "Brotli-1.1.0-cp312-cp312-win32.whl", hash = "sha256:5f4d5ea15c9382135076d2fb28dde923352fe02951e66935a9efaac8f10e81b0"},
{file = "Brotli-1.1.0-cp312-cp312-win_amd64.whl", hash = "sha256:906bc3a79de8c4ae5b86d3d75a8b77e44404b0f4261714306e3ad248d8ab0951"},
+ {file = "Brotli-1.1.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8bf32b98b75c13ec7cf774164172683d6e7891088f6316e54425fde1efc276d5"},
+ {file = "Brotli-1.1.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7bc37c4d6b87fb1017ea28c9508b36bbcb0c3d18b4260fcdf08b200c74a6aee8"},
+ {file = "Brotli-1.1.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c0ef38c7a7014ffac184db9e04debe495d317cc9c6fb10071f7fefd93100a4f"},
+ {file = "Brotli-1.1.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:91d7cc2a76b5567591d12c01f019dd7afce6ba8cba6571187e21e2fc418ae648"},
+ {file = "Brotli-1.1.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a93dde851926f4f2678e704fadeb39e16c35d8baebd5252c9fd94ce8ce68c4a0"},
+ {file = "Brotli-1.1.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f0db75f47be8b8abc8d9e31bc7aad0547ca26f24a54e6fd10231d623f183d089"},
+ {file = "Brotli-1.1.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6967ced6730aed543b8673008b5a391c3b1076d834ca438bbd70635c73775368"},
+ {file = "Brotli-1.1.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:7eedaa5d036d9336c95915035fb57422054014ebdeb6f3b42eac809928e40d0c"},
+ {file = "Brotli-1.1.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:d487f5432bf35b60ed625d7e1b448e2dc855422e87469e3f450aa5552b0eb284"},
+ {file = "Brotli-1.1.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:832436e59afb93e1836081a20f324cb185836c617659b07b129141a8426973c7"},
+ {file = "Brotli-1.1.0-cp313-cp313-win32.whl", hash = "sha256:43395e90523f9c23a3d5bdf004733246fba087f2948f87ab28015f12359ca6a0"},
+ {file = "Brotli-1.1.0-cp313-cp313-win_amd64.whl", hash = "sha256:9011560a466d2eb3f5a6e4929cf4a09be405c64154e12df0dd72713f6500e32b"},
{file = "Brotli-1.1.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:a090ca607cbb6a34b0391776f0cb48062081f5f60ddcce5d11838e67a01928d1"},
{file = "Brotli-1.1.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2de9d02f5bda03d27ede52e8cfe7b865b066fa49258cbab568720aa5be80a47d"},
{file = "Brotli-1.1.0-cp36-cp36m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2333e30a5e00fe0fe55903c8832e08ee9c3b1382aacf4db26664a16528d51b4b"},
@@ -171,6 +208,10 @@ files = [
{file = "Brotli-1.1.0-cp36-cp36m-musllinux_1_1_i686.whl", hash = "sha256:fd5f17ff8f14003595ab414e45fce13d073e0762394f957182e69035c9f3d7c2"},
{file = "Brotli-1.1.0-cp36-cp36m-musllinux_1_1_ppc64le.whl", hash = "sha256:069a121ac97412d1fe506da790b3e69f52254b9df4eb665cd42460c837193354"},
{file = "Brotli-1.1.0-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:e93dfc1a1165e385cc8239fab7c036fb2cd8093728cbd85097b284d7b99249a2"},
+ {file = "Brotli-1.1.0-cp36-cp36m-musllinux_1_2_aarch64.whl", hash = "sha256:aea440a510e14e818e67bfc4027880e2fb500c2ccb20ab21c7a7c8b5b4703d75"},
+ {file = "Brotli-1.1.0-cp36-cp36m-musllinux_1_2_i686.whl", hash = "sha256:6974f52a02321b36847cd19d1b8e381bf39939c21efd6ee2fc13a28b0d99348c"},
+ {file = "Brotli-1.1.0-cp36-cp36m-musllinux_1_2_ppc64le.whl", hash = "sha256:a7e53012d2853a07a4a79c00643832161a910674a893d296c9f1259859a289d2"},
+ {file = "Brotli-1.1.0-cp36-cp36m-musllinux_1_2_x86_64.whl", hash = "sha256:d7702622a8b40c49bffb46e1e3ba2e81268d5c04a34f460978c6b5517a34dd52"},
{file = "Brotli-1.1.0-cp36-cp36m-win32.whl", hash = "sha256:a599669fd7c47233438a56936988a2478685e74854088ef5293802123b5b2460"},
{file = "Brotli-1.1.0-cp36-cp36m-win_amd64.whl", hash = "sha256:d143fd47fad1db3d7c27a1b1d66162e855b5d50a89666af46e1679c496e8e579"},
{file = "Brotli-1.1.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:11d00ed0a83fa22d29bc6b64ef636c4552ebafcef57154b4ddd132f5638fbd1c"},
@@ -182,6 +223,10 @@ files = [
{file = "Brotli-1.1.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:919e32f147ae93a09fe064d77d5ebf4e35502a8df75c29fb05788528e330fe74"},
{file = "Brotli-1.1.0-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:23032ae55523cc7bccb4f6a0bf368cd25ad9bcdcc1990b64a647e7bbcce9cb5b"},
{file = "Brotli-1.1.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:224e57f6eac61cc449f498cc5f0e1725ba2071a3d4f48d5d9dffba42db196438"},
+ {file = "Brotli-1.1.0-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:cb1dac1770878ade83f2ccdf7d25e494f05c9165f5246b46a621cc849341dc01"},
+ {file = "Brotli-1.1.0-cp37-cp37m-musllinux_1_2_i686.whl", hash = "sha256:3ee8a80d67a4334482d9712b8e83ca6b1d9bc7e351931252ebef5d8f7335a547"},
+ {file = "Brotli-1.1.0-cp37-cp37m-musllinux_1_2_ppc64le.whl", hash = "sha256:5e55da2c8724191e5b557f8e18943b1b4839b8efc3ef60d65985bcf6f587dd38"},
+ {file = "Brotli-1.1.0-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:d342778ef319e1026af243ed0a07c97acf3bad33b9f29e7ae6a1f68fd083e90c"},
{file = "Brotli-1.1.0-cp37-cp37m-win32.whl", hash = "sha256:587ca6d3cef6e4e868102672d3bd9dc9698c309ba56d41c2b9c85bbb903cdb95"},
{file = "Brotli-1.1.0-cp37-cp37m-win_amd64.whl", hash = "sha256:2954c1c23f81c2eaf0b0717d9380bd348578a94161a65b3a2afc62c86467dd68"},
{file = "Brotli-1.1.0-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:efa8b278894b14d6da122a72fefcebc28445f2d3f880ac59d46c90f4c13be9a3"},
@@ -194,6 +239,10 @@ files = [
{file = "Brotli-1.1.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:1ab4fbee0b2d9098c74f3057b2bc055a8bd92ccf02f65944a241b4349229185a"},
{file = "Brotli-1.1.0-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:141bd4d93984070e097521ed07e2575b46f817d08f9fa42b16b9b5f27b5ac088"},
{file = "Brotli-1.1.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fce1473f3ccc4187f75b4690cfc922628aed4d3dd013d047f95a9b3919a86596"},
+ {file = "Brotli-1.1.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:d2b35ca2c7f81d173d2fadc2f4f31e88cc5f7a39ae5b6db5513cf3383b0e0ec7"},
+ {file = "Brotli-1.1.0-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:af6fa6817889314555aede9a919612b23739395ce767fe7fcbea9a80bf140fe5"},
+ {file = "Brotli-1.1.0-cp38-cp38-musllinux_1_2_ppc64le.whl", hash = "sha256:2feb1d960f760a575dbc5ab3b1c00504b24caaf6986e2dc2b01c09c87866a943"},
+ {file = "Brotli-1.1.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:4410f84b33374409552ac9b6903507cdb31cd30d2501fc5ca13d18f73548444a"},
{file = "Brotli-1.1.0-cp38-cp38-win32.whl", hash = "sha256:db85ecf4e609a48f4b29055f1e144231b90edc90af7481aa731ba2d059226b1b"},
{file = "Brotli-1.1.0-cp38-cp38-win_amd64.whl", hash = "sha256:3d7954194c36e304e1523f55d7042c59dc53ec20dd4e9ea9d151f1b62b4415c0"},
{file = "Brotli-1.1.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:5fb2ce4b8045c78ebbc7b8f3c15062e435d47e7393cc57c25115cfd49883747a"},
@@ -206,6 +255,10 @@ files = [
{file = "Brotli-1.1.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:949f3b7c29912693cee0afcf09acd6ebc04c57af949d9bf77d6101ebb61e388c"},
{file = "Brotli-1.1.0-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:89f4988c7203739d48c6f806f1e87a1d96e0806d44f0fba61dba81392c9e474d"},
{file = "Brotli-1.1.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:de6551e370ef19f8de1807d0a9aa2cdfdce2e85ce88b122fe9f6b2b076837e59"},
+ {file = "Brotli-1.1.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:0737ddb3068957cf1b054899b0883830bb1fec522ec76b1098f9b6e0f02d9419"},
+ {file = "Brotli-1.1.0-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:4f3607b129417e111e30637af1b56f24f7a49e64763253bbc275c75fa887d4b2"},
+ {file = "Brotli-1.1.0-cp39-cp39-musllinux_1_2_ppc64le.whl", hash = "sha256:6c6e0c425f22c1c719c42670d561ad682f7bfeeef918edea971a79ac5252437f"},
+ {file = "Brotli-1.1.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:494994f807ba0b92092a163a0a283961369a65f6cbe01e8891132b7a320e61eb"},
{file = "Brotli-1.1.0-cp39-cp39-win32.whl", hash = "sha256:f0d8a7a6b5983c2496e364b969f0e526647a06b075d034f3297dc66f3b360c64"},
{file = "Brotli-1.1.0-cp39-cp39-win_amd64.whl", hash = "sha256:cdad5b9014d83ca68c25d2e9444e28e967ef16e80f6b436918c700c117a85467"},
{file = "Brotli-1.1.0.tar.gz", hash = "sha256:81de08ac11bcb85841e440c13611c00b67d3bf82698314928d0b676362546724"},
@@ -224,63 +277,78 @@ files = [
[[package]]
name = "cffi"
-version = "1.16.0"
+version = "1.17.1"
description = "Foreign Function Interface for Python calling C code."
optional = false
python-versions = ">=3.8"
files = [
- {file = "cffi-1.16.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6b3d6606d369fc1da4fd8c357d026317fbb9c9b75d36dc16e90e84c26854b088"},
- {file = "cffi-1.16.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ac0f5edd2360eea2f1daa9e26a41db02dd4b0451b48f7c318e217ee092a213e9"},
- {file = "cffi-1.16.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7e61e3e4fa664a8588aa25c883eab612a188c725755afff6289454d6362b9673"},
- {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a72e8961a86d19bdb45851d8f1f08b041ea37d2bd8d4fd19903bc3083d80c896"},
- {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5b50bf3f55561dac5438f8e70bfcdfd74543fd60df5fa5f62d94e5867deca684"},
- {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7651c50c8c5ef7bdb41108b7b8c5a83013bfaa8a935590c5d74627c047a583c7"},
- {file = "cffi-1.16.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e4108df7fe9b707191e55f33efbcb2d81928e10cea45527879a4749cbe472614"},
- {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:32c68ef735dbe5857c810328cb2481e24722a59a2003018885514d4c09af9743"},
- {file = "cffi-1.16.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:673739cb539f8cdaa07d92d02efa93c9ccf87e345b9a0b556e3ecc666718468d"},
- {file = "cffi-1.16.0-cp310-cp310-win32.whl", hash = "sha256:9f90389693731ff1f659e55c7d1640e2ec43ff725cc61b04b2f9c6d8d017df6a"},
- {file = "cffi-1.16.0-cp310-cp310-win_amd64.whl", hash = "sha256:e6024675e67af929088fda399b2094574609396b1decb609c55fa58b028a32a1"},
- {file = "cffi-1.16.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b84834d0cf97e7d27dd5b7f3aca7b6e9263c56308ab9dc8aae9784abb774d404"},
- {file = "cffi-1.16.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1b8ebc27c014c59692bb2664c7d13ce7a6e9a629be20e54e7271fa696ff2b417"},
- {file = "cffi-1.16.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ee07e47c12890ef248766a6e55bd38ebfb2bb8edd4142d56db91b21ea68b7627"},
- {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8a9d3ebe49f084ad71f9269834ceccbf398253c9fac910c4fd7053ff1386936"},
- {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e70f54f1796669ef691ca07d046cd81a29cb4deb1e5f942003f401c0c4a2695d"},
- {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5bf44d66cdf9e893637896c7faa22298baebcd18d1ddb6d2626a6e39793a1d56"},
- {file = "cffi-1.16.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7b78010e7b97fef4bee1e896df8a4bbb6712b7f05b7ef630f9d1da00f6444d2e"},
- {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:c6a164aa47843fb1b01e941d385aab7215563bb8816d80ff3a363a9f8448a8dc"},
- {file = "cffi-1.16.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e09f3ff613345df5e8c3667da1d918f9149bd623cd9070c983c013792a9a62eb"},
- {file = "cffi-1.16.0-cp311-cp311-win32.whl", hash = "sha256:2c56b361916f390cd758a57f2e16233eb4f64bcbeee88a4881ea90fca14dc6ab"},
- {file = "cffi-1.16.0-cp311-cp311-win_amd64.whl", hash = "sha256:db8e577c19c0fda0beb7e0d4e09e0ba74b1e4c092e0e40bfa12fe05b6f6d75ba"},
- {file = "cffi-1.16.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:fa3a0128b152627161ce47201262d3140edb5a5c3da88d73a1b790a959126956"},
- {file = "cffi-1.16.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:68e7c44931cc171c54ccb702482e9fc723192e88d25a0e133edd7aff8fcd1f6e"},
- {file = "cffi-1.16.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:abd808f9c129ba2beda4cfc53bde801e5bcf9d6e0f22f095e45327c038bfe68e"},
- {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:88e2b3c14bdb32e440be531ade29d3c50a1a59cd4e51b1dd8b0865c54ea5d2e2"},
- {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fcc8eb6d5902bb1cf6dc4f187ee3ea80a1eba0a89aba40a5cb20a5087d961357"},
- {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7be2d771cdba2942e13215c4e340bfd76398e9227ad10402a8767ab1865d2e6"},
- {file = "cffi-1.16.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e715596e683d2ce000574bae5d07bd522c781a822866c20495e52520564f0969"},
- {file = "cffi-1.16.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2d92b25dbf6cae33f65005baf472d2c245c050b1ce709cc4588cdcdd5495b520"},
- {file = "cffi-1.16.0-cp312-cp312-win32.whl", hash = "sha256:b2ca4e77f9f47c55c194982e10f058db063937845bb2b7a86c84a6cfe0aefa8b"},
- {file = "cffi-1.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:68678abf380b42ce21a5f2abde8efee05c114c2fdb2e9eef2efdb0257fba1235"},
- {file = "cffi-1.16.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0c9ef6ff37e974b73c25eecc13952c55bceed9112be2d9d938ded8e856138bcc"},
- {file = "cffi-1.16.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a09582f178759ee8128d9270cd1344154fd473bb77d94ce0aeb2a93ebf0feaf0"},
- {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e760191dd42581e023a68b758769e2da259b5d52e3103c6060ddc02c9edb8d7b"},
- {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:80876338e19c951fdfed6198e70bc88f1c9758b94578d5a7c4c91a87af3cf31c"},
- {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6a14b17d7e17fa0d207ac08642c8820f84f25ce17a442fd15e27ea18d67c59b"},
- {file = "cffi-1.16.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6602bc8dc6f3a9e02b6c22c4fc1e47aa50f8f8e6d3f78a5e16ac33ef5fefa324"},
- {file = "cffi-1.16.0-cp38-cp38-win32.whl", hash = "sha256:131fd094d1065b19540c3d72594260f118b231090295d8c34e19a7bbcf2e860a"},
- {file = "cffi-1.16.0-cp38-cp38-win_amd64.whl", hash = "sha256:31d13b0f99e0836b7ff893d37af07366ebc90b678b6664c955b54561fc36ef36"},
- {file = "cffi-1.16.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:582215a0e9adbe0e379761260553ba11c58943e4bbe9c36430c4ca6ac74b15ed"},
- {file = "cffi-1.16.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b29ebffcf550f9da55bec9e02ad430c992a87e5f512cd63388abb76f1036d8d2"},
- {file = "cffi-1.16.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dc9b18bf40cc75f66f40a7379f6a9513244fe33c0e8aa72e2d56b0196a7ef872"},
- {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9cb4a35b3642fc5c005a6755a5d17c6c8b6bcb6981baf81cea8bfbc8903e8ba8"},
- {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b86851a328eedc692acf81fb05444bdf1891747c25af7529e39ddafaf68a4f3f"},
- {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c0f31130ebc2d37cdd8e44605fb5fa7ad59049298b3f745c74fa74c62fbfcfc4"},
- {file = "cffi-1.16.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f8e709127c6c77446a8c0a8c8bf3c8ee706a06cd44b1e827c3e6a2ee6b8c098"},
- {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:748dcd1e3d3d7cd5443ef03ce8685043294ad6bd7c02a38d1bd367cfd968e000"},
- {file = "cffi-1.16.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8895613bcc094d4a1b2dbe179d88d7fb4a15cee43c052e8885783fac397d91fe"},
- {file = "cffi-1.16.0-cp39-cp39-win32.whl", hash = "sha256:ed86a35631f7bfbb28e108dd96773b9d5a6ce4811cf6ea468bb6a359b256b1e4"},
- {file = "cffi-1.16.0-cp39-cp39-win_amd64.whl", hash = "sha256:3686dffb02459559c74dd3d81748269ffb0eb027c39a6fc99502de37d501faa8"},
- {file = "cffi-1.16.0.tar.gz", hash = "sha256:bcb3ef43e58665bbda2fb198698fcae6776483e0c4a631aa5647806c25e02cc0"},
+ {file = "cffi-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:df8b1c11f177bc2313ec4b2d46baec87a5f3e71fc8b45dab2ee7cae86d9aba14"},
+ {file = "cffi-1.17.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8f2cdc858323644ab277e9bb925ad72ae0e67f69e804f4898c070998d50b1a67"},
+ {file = "cffi-1.17.1-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:edae79245293e15384b51f88b00613ba9f7198016a5948b5dddf4917d4d26382"},
+ {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45398b671ac6d70e67da8e4224a065cec6a93541bb7aebe1b198a61b58c7b702"},
+ {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ad9413ccdeda48c5afdae7e4fa2192157e991ff761e7ab8fdd8926f40b160cc3"},
+ {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5da5719280082ac6bd9aa7becb3938dc9f9cbd57fac7d2871717b1feb0902ab6"},
+ {file = "cffi-1.17.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2bb1a08b8008b281856e5971307cc386a8e9c5b625ac297e853d36da6efe9c17"},
+ {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:045d61c734659cc045141be4bae381a41d89b741f795af1dd018bfb532fd0df8"},
+ {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6883e737d7d9e4899a8a695e00ec36bd4e5e4f18fabe0aca0efe0a4b44cdb13e"},
+ {file = "cffi-1.17.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6b8b4a92e1c65048ff98cfe1f735ef8f1ceb72e3d5f0c25fdb12087a23da22be"},
+ {file = "cffi-1.17.1-cp310-cp310-win32.whl", hash = "sha256:c9c3d058ebabb74db66e431095118094d06abf53284d9c81f27300d0e0d8bc7c"},
+ {file = "cffi-1.17.1-cp310-cp310-win_amd64.whl", hash = "sha256:0f048dcf80db46f0098ccac01132761580d28e28bc0f78ae0d58048063317e15"},
+ {file = "cffi-1.17.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:a45e3c6913c5b87b3ff120dcdc03f6131fa0065027d0ed7ee6190736a74cd401"},
+ {file = "cffi-1.17.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:30c5e0cb5ae493c04c8b42916e52ca38079f1b235c2f8ae5f4527b963c401caf"},
+ {file = "cffi-1.17.1-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f75c7ab1f9e4aca5414ed4d8e5c0e303a34f4421f8a0d47a4d019ceff0ab6af4"},
+ {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a1ed2dd2972641495a3ec98445e09766f077aee98a1c896dcb4ad0d303628e41"},
+ {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:46bf43160c1a35f7ec506d254e5c890f3c03648a4dbac12d624e4490a7046cd1"},
+ {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a24ed04c8ffd54b0729c07cee15a81d964e6fee0e3d4d342a27b020d22959dc6"},
+ {file = "cffi-1.17.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:610faea79c43e44c71e1ec53a554553fa22321b65fae24889706c0a84d4ad86d"},
+ {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:a9b15d491f3ad5d692e11f6b71f7857e7835eb677955c00cc0aefcd0669adaf6"},
+ {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:de2ea4b5833625383e464549fec1bc395c1bdeeb5f25c4a3a82b5a8c756ec22f"},
+ {file = "cffi-1.17.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:fc48c783f9c87e60831201f2cce7f3b2e4846bf4d8728eabe54d60700b318a0b"},
+ {file = "cffi-1.17.1-cp311-cp311-win32.whl", hash = "sha256:85a950a4ac9c359340d5963966e3e0a94a676bd6245a4b55bc43949eee26a655"},
+ {file = "cffi-1.17.1-cp311-cp311-win_amd64.whl", hash = "sha256:caaf0640ef5f5517f49bc275eca1406b0ffa6aa184892812030f04c2abf589a0"},
+ {file = "cffi-1.17.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:805b4371bf7197c329fcb3ead37e710d1bca9da5d583f5073b799d5c5bd1eee4"},
+ {file = "cffi-1.17.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:733e99bc2df47476e3848417c5a4540522f234dfd4ef3ab7fafdf555b082ec0c"},
+ {file = "cffi-1.17.1-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1257bdabf294dceb59f5e70c64a3e2f462c30c7ad68092d01bbbfb1c16b1ba36"},
+ {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:da95af8214998d77a98cc14e3a3bd00aa191526343078b530ceb0bd710fb48a5"},
+ {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d63afe322132c194cf832bfec0dc69a99fb9bb6bbd550f161a49e9e855cc78ff"},
+ {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f79fc4fc25f1c8698ff97788206bb3c2598949bfe0fef03d299eb1b5356ada99"},
+ {file = "cffi-1.17.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b62ce867176a75d03a665bad002af8e6d54644fad99a3c70905c543130e39d93"},
+ {file = "cffi-1.17.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:386c8bf53c502fff58903061338ce4f4950cbdcb23e2902d86c0f722b786bbe3"},
+ {file = "cffi-1.17.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:4ceb10419a9adf4460ea14cfd6bc43d08701f0835e979bf821052f1805850fe8"},
+ {file = "cffi-1.17.1-cp312-cp312-win32.whl", hash = "sha256:a08d7e755f8ed21095a310a693525137cfe756ce62d066e53f502a83dc550f65"},
+ {file = "cffi-1.17.1-cp312-cp312-win_amd64.whl", hash = "sha256:51392eae71afec0d0c8fb1a53b204dbb3bcabcb3c9b807eedf3e1e6ccf2de903"},
+ {file = "cffi-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f3a2b4222ce6b60e2e8b337bb9596923045681d71e5a082783484d845390938e"},
+ {file = "cffi-1.17.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:0984a4925a435b1da406122d4d7968dd861c1385afe3b45ba82b750f229811e2"},
+ {file = "cffi-1.17.1-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d01b12eeeb4427d3110de311e1774046ad344f5b1a7403101878976ecd7a10f3"},
+ {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:706510fe141c86a69c8ddc029c7910003a17353970cff3b904ff0686a5927683"},
+ {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:de55b766c7aa2e2a3092c51e0483d700341182f08e67c63630d5b6f200bb28e5"},
+ {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c59d6e989d07460165cc5ad3c61f9fd8f1b4796eacbd81cee78957842b834af4"},
+ {file = "cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd"},
+ {file = "cffi-1.17.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:3edc8d958eb099c634dace3c7e16560ae474aa3803a5df240542b305d14e14ed"},
+ {file = "cffi-1.17.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:72e72408cad3d5419375fc87d289076ee319835bdfa2caad331e377589aebba9"},
+ {file = "cffi-1.17.1-cp313-cp313-win32.whl", hash = "sha256:e03eab0a8677fa80d646b5ddece1cbeaf556c313dcfac435ba11f107ba117b5d"},
+ {file = "cffi-1.17.1-cp313-cp313-win_amd64.whl", hash = "sha256:f6a16c31041f09ead72d69f583767292f750d24913dadacf5756b966aacb3f1a"},
+ {file = "cffi-1.17.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:636062ea65bd0195bc012fea9321aca499c0504409f413dc88af450b57ffd03b"},
+ {file = "cffi-1.17.1-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7eac2ef9b63c79431bc4b25f1cd649d7f061a28808cbc6c47b534bd789ef964"},
+ {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e221cf152cff04059d011ee126477f0d9588303eb57e88923578ace7baad17f9"},
+ {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:31000ec67d4221a71bd3f67df918b1f88f676f1c3b535a7eb473255fdc0b83fc"},
+ {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6f17be4345073b0a7b8ea599688f692ac3ef23ce28e5df79c04de519dbc4912c"},
+ {file = "cffi-1.17.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0e2b1fac190ae3ebfe37b979cc1ce69c81f4e4fe5746bb401dca63a9062cdaf1"},
+ {file = "cffi-1.17.1-cp38-cp38-win32.whl", hash = "sha256:7596d6620d3fa590f677e9ee430df2958d2d6d6de2feeae5b20e82c00b76fbf8"},
+ {file = "cffi-1.17.1-cp38-cp38-win_amd64.whl", hash = "sha256:78122be759c3f8a014ce010908ae03364d00a1f81ab5c7f4a7a5120607ea56e1"},
+ {file = "cffi-1.17.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:b2ab587605f4ba0bf81dc0cb08a41bd1c0a5906bd59243d56bad7668a6fc6c16"},
+ {file = "cffi-1.17.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:28b16024becceed8c6dfbc75629e27788d8a3f9030691a1dbf9821a128b22c36"},
+ {file = "cffi-1.17.1-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:1d599671f396c4723d016dbddb72fe8e0397082b0a77a4fab8028923bec050e8"},
+ {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca74b8dbe6e8e8263c0ffd60277de77dcee6c837a3d0881d8c1ead7268c9e576"},
+ {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f7f5baafcc48261359e14bcd6d9bff6d4b28d9103847c9e136694cb0501aef87"},
+ {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:98e3969bcff97cae1b2def8ba499ea3d6f31ddfdb7635374834cf89a1a08ecf0"},
+ {file = "cffi-1.17.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cdf5ce3acdfd1661132f2a9c19cac174758dc2352bfe37d98aa7512c6b7178b3"},
+ {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9755e4345d1ec879e3849e62222a18c7174d65a6a92d5b346b1863912168b595"},
+ {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f1e22e8c4419538cb197e4dd60acc919d7696e5ef98ee4da4e01d3f8cfa4cc5a"},
+ {file = "cffi-1.17.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:c03e868a0b3bc35839ba98e74211ed2b05d2119be4e8a0f224fba9384f1fe02e"},
+ {file = "cffi-1.17.1-cp39-cp39-win32.whl", hash = "sha256:e31ae45bc2e29f6b2abd0de1cc3b9d5205aa847cafaecb8af1476a609a2f6eb7"},
+ {file = "cffi-1.17.1-cp39-cp39-win_amd64.whl", hash = "sha256:d016c76bdd850f3c626af19b0542c9677ba156e4ee4fccfdd7848803533ef662"},
+ {file = "cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824"},
]
[package.dependencies]
@@ -507,63 +575,73 @@ test-no-images = ["pytest", "pytest-cov", "pytest-xdist", "wurlitzer"]
[[package]]
name = "coverage"
-version = "7.4.0"
+version = "7.6.4"
description = "Code coverage measurement for Python"
optional = false
-python-versions = ">=3.8"
+python-versions = ">=3.9"
files = [
- {file = "coverage-7.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:36b0ea8ab20d6a7564e89cb6135920bc9188fb5f1f7152e94e8300b7b189441a"},
- {file = "coverage-7.4.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0676cd0ba581e514b7f726495ea75aba3eb20899d824636c6f59b0ed2f88c471"},
- {file = "coverage-7.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d0ca5c71a5a1765a0f8f88022c52b6b8be740e512980362f7fdbb03725a0d6b9"},
- {file = "coverage-7.4.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a7c97726520f784239f6c62506bc70e48d01ae71e9da128259d61ca5e9788516"},
- {file = "coverage-7.4.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:815ac2d0f3398a14286dc2cea223a6f338109f9ecf39a71160cd1628786bc6f5"},
- {file = "coverage-7.4.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:80b5ee39b7f0131ebec7968baa9b2309eddb35b8403d1869e08f024efd883566"},
- {file = "coverage-7.4.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:5b2ccb7548a0b65974860a78c9ffe1173cfb5877460e5a229238d985565574ae"},
- {file = "coverage-7.4.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:995ea5c48c4ebfd898eacb098164b3cc826ba273b3049e4a889658548e321b43"},
- {file = "coverage-7.4.0-cp310-cp310-win32.whl", hash = "sha256:79287fd95585ed36e83182794a57a46aeae0b64ca53929d1176db56aacc83451"},
- {file = "coverage-7.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:5b14b4f8760006bfdb6e08667af7bc2d8d9bfdb648351915315ea17645347137"},
- {file = "coverage-7.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:04387a4a6ecb330c1878907ce0dc04078ea72a869263e53c72a1ba5bbdf380ca"},
- {file = "coverage-7.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ea81d8f9691bb53f4fb4db603203029643caffc82bf998ab5b59ca05560f4c06"},
- {file = "coverage-7.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:74775198b702868ec2d058cb92720a3c5a9177296f75bd97317c787daf711505"},
- {file = "coverage-7.4.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:76f03940f9973bfaee8cfba70ac991825611b9aac047e5c80d499a44079ec0bc"},
- {file = "coverage-7.4.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:485e9f897cf4856a65a57c7f6ea3dc0d4e6c076c87311d4bc003f82cfe199d25"},
- {file = "coverage-7.4.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:6ae8c9d301207e6856865867d762a4b6fd379c714fcc0607a84b92ee63feff70"},
- {file = "coverage-7.4.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:bf477c355274a72435ceb140dc42de0dc1e1e0bf6e97195be30487d8eaaf1a09"},
- {file = "coverage-7.4.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:83c2dda2666fe32332f8e87481eed056c8b4d163fe18ecc690b02802d36a4d26"},
- {file = "coverage-7.4.0-cp311-cp311-win32.whl", hash = "sha256:697d1317e5290a313ef0d369650cfee1a114abb6021fa239ca12b4849ebbd614"},
- {file = "coverage-7.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:26776ff6c711d9d835557ee453082025d871e30b3fd6c27fcef14733f67f0590"},
- {file = "coverage-7.4.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:13eaf476ec3e883fe3e5fe3707caeb88268a06284484a3daf8250259ef1ba143"},
- {file = "coverage-7.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:846f52f46e212affb5bcf131c952fb4075b55aae6b61adc9856222df89cbe3e2"},
- {file = "coverage-7.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:26f66da8695719ccf90e794ed567a1549bb2644a706b41e9f6eae6816b398c4a"},
- {file = "coverage-7.4.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:164fdcc3246c69a6526a59b744b62e303039a81e42cfbbdc171c91a8cc2f9446"},
- {file = "coverage-7.4.0-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:316543f71025a6565677d84bc4df2114e9b6a615aa39fb165d697dba06a54af9"},
- {file = "coverage-7.4.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:bb1de682da0b824411e00a0d4da5a784ec6496b6850fdf8c865c1d68c0e318dd"},
- {file = "coverage-7.4.0-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:0e8d06778e8fbffccfe96331a3946237f87b1e1d359d7fbe8b06b96c95a5407a"},
- {file = "coverage-7.4.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a56de34db7b7ff77056a37aedded01b2b98b508227d2d0979d373a9b5d353daa"},
- {file = "coverage-7.4.0-cp312-cp312-win32.whl", hash = "sha256:51456e6fa099a8d9d91497202d9563a320513fcf59f33991b0661a4a6f2ad450"},
- {file = "coverage-7.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:cd3c1e4cb2ff0083758f09be0f77402e1bdf704adb7f89108007300a6da587d0"},
- {file = "coverage-7.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:e9d1bf53c4c8de58d22e0e956a79a5b37f754ed1ffdbf1a260d9dcfa2d8a325e"},
- {file = "coverage-7.4.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:109f5985182b6b81fe33323ab4707011875198c41964f014579cf82cebf2bb85"},
- {file = "coverage-7.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3cc9d4bc55de8003663ec94c2f215d12d42ceea128da8f0f4036235a119c88ac"},
- {file = "coverage-7.4.0-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cc6d65b21c219ec2072c1293c505cf36e4e913a3f936d80028993dd73c7906b1"},
- {file = "coverage-7.4.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5a10a4920def78bbfff4eff8a05c51be03e42f1c3735be42d851f199144897ba"},
- {file = "coverage-7.4.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b8e99f06160602bc64da35158bb76c73522a4010f0649be44a4e167ff8555952"},
- {file = "coverage-7.4.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:7d360587e64d006402b7116623cebf9d48893329ef035278969fa3bbf75b697e"},
- {file = "coverage-7.4.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:29f3abe810930311c0b5d1a7140f6395369c3db1be68345638c33eec07535105"},
- {file = "coverage-7.4.0-cp38-cp38-win32.whl", hash = "sha256:5040148f4ec43644702e7b16ca864c5314ccb8ee0751ef617d49aa0e2d6bf4f2"},
- {file = "coverage-7.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:9864463c1c2f9cb3b5db2cf1ff475eed2f0b4285c2aaf4d357b69959941aa555"},
- {file = "coverage-7.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:936d38794044b26c99d3dd004d8af0035ac535b92090f7f2bb5aa9c8e2f5cd42"},
- {file = "coverage-7.4.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:799c8f873794a08cdf216aa5d0531c6a3747793b70c53f70e98259720a6fe2d7"},
- {file = "coverage-7.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e7defbb9737274023e2d7af02cac77043c86ce88a907c58f42b580a97d5bcca9"},
- {file = "coverage-7.4.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a1526d265743fb49363974b7aa8d5899ff64ee07df47dd8d3e37dcc0818f09ed"},
- {file = "coverage-7.4.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf635a52fc1ea401baf88843ae8708591aa4adff875e5c23220de43b1ccf575c"},
- {file = "coverage-7.4.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:756ded44f47f330666843b5781be126ab57bb57c22adbb07d83f6b519783b870"},
- {file = "coverage-7.4.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:0eb3c2f32dabe3a4aaf6441dde94f35687224dfd7eb2a7f47f3fd9428e421058"},
- {file = "coverage-7.4.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:bfd5db349d15c08311702611f3dccbef4b4e2ec148fcc636cf8739519b4a5c0f"},
- {file = "coverage-7.4.0-cp39-cp39-win32.whl", hash = "sha256:53d7d9158ee03956e0eadac38dfa1ec8068431ef8058fe6447043db1fb40d932"},
- {file = "coverage-7.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:cfd2a8b6b0d8e66e944d47cdec2f47c48fef2ba2f2dff5a9a75757f64172857e"},
- {file = "coverage-7.4.0-pp38.pp39.pp310-none-any.whl", hash = "sha256:c530833afc4707fe48524a44844493f36d8727f04dcce91fb978c414a8556cc6"},
- {file = "coverage-7.4.0.tar.gz", hash = "sha256:707c0f58cb1712b8809ece32b68996ee1e609f71bd14615bd8f87a1293cb610e"},
+ {file = "coverage-7.6.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5f8ae553cba74085db385d489c7a792ad66f7f9ba2ee85bfa508aeb84cf0ba07"},
+ {file = "coverage-7.6.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8165b796df0bd42e10527a3f493c592ba494f16ef3c8b531288e3d0d72c1f6f0"},
+ {file = "coverage-7.6.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c7c8b95bf47db6d19096a5e052ffca0a05f335bc63cef281a6e8fe864d450a72"},
+ {file = "coverage-7.6.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:8ed9281d1b52628e81393f5eaee24a45cbd64965f41857559c2b7ff19385df51"},
+ {file = "coverage-7.6.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0809082ee480bb8f7416507538243c8863ac74fd8a5d2485c46f0f7499f2b491"},
+ {file = "coverage-7.6.4-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:d541423cdd416b78626b55f123412fcf979d22a2c39fce251b350de38c15c15b"},
+ {file = "coverage-7.6.4-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:58809e238a8a12a625c70450b48e8767cff9eb67c62e6154a642b21ddf79baea"},
+ {file = "coverage-7.6.4-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:c9b8e184898ed014884ca84c70562b4a82cbc63b044d366fedc68bc2b2f3394a"},
+ {file = "coverage-7.6.4-cp310-cp310-win32.whl", hash = "sha256:6bd818b7ea14bc6e1f06e241e8234508b21edf1b242d49831831a9450e2f35fa"},
+ {file = "coverage-7.6.4-cp310-cp310-win_amd64.whl", hash = "sha256:06babbb8f4e74b063dbaeb74ad68dfce9186c595a15f11f5d5683f748fa1d172"},
+ {file = "coverage-7.6.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:73d2b73584446e66ee633eaad1a56aad577c077f46c35ca3283cd687b7715b0b"},
+ {file = "coverage-7.6.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:51b44306032045b383a7a8a2c13878de375117946d68dcb54308111f39775a25"},
+ {file = "coverage-7.6.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0b3fb02fe73bed561fa12d279a417b432e5b50fe03e8d663d61b3d5990f29546"},
+ {file = "coverage-7.6.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ed8fe9189d2beb6edc14d3ad19800626e1d9f2d975e436f84e19efb7fa19469b"},
+ {file = "coverage-7.6.4-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b369ead6527d025a0fe7bd3864e46dbee3aa8f652d48df6174f8d0bac9e26e0e"},
+ {file = "coverage-7.6.4-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:ade3ca1e5f0ff46b678b66201f7ff477e8fa11fb537f3b55c3f0568fbfe6e718"},
+ {file = "coverage-7.6.4-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:27fb4a050aaf18772db513091c9c13f6cb94ed40eacdef8dad8411d92d9992db"},
+ {file = "coverage-7.6.4-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:4f704f0998911abf728a7783799444fcbbe8261c4a6c166f667937ae6a8aa522"},
+ {file = "coverage-7.6.4-cp311-cp311-win32.whl", hash = "sha256:29155cd511ee058e260db648b6182c419422a0d2e9a4fa44501898cf918866cf"},
+ {file = "coverage-7.6.4-cp311-cp311-win_amd64.whl", hash = "sha256:8902dd6a30173d4ef09954bfcb24b5d7b5190cf14a43170e386979651e09ba19"},
+ {file = "coverage-7.6.4-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:12394842a3a8affa3ba62b0d4ab7e9e210c5e366fbac3e8b2a68636fb19892c2"},
+ {file = "coverage-7.6.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:2b6b4c83d8e8ea79f27ab80778c19bc037759aea298da4b56621f4474ffeb117"},
+ {file = "coverage-7.6.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d5b8007f81b88696d06f7df0cb9af0d3b835fe0c8dbf489bad70b45f0e45613"},
+ {file = "coverage-7.6.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b57b768feb866f44eeed9f46975f3d6406380275c5ddfe22f531a2bf187eda27"},
+ {file = "coverage-7.6.4-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5915fcdec0e54ee229926868e9b08586376cae1f5faa9bbaf8faf3561b393d52"},
+ {file = "coverage-7.6.4-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:0b58c672d14f16ed92a48db984612f5ce3836ae7d72cdd161001cc54512571f2"},
+ {file = "coverage-7.6.4-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:2fdef0d83a2d08d69b1f2210a93c416d54e14d9eb398f6ab2f0a209433db19e1"},
+ {file = "coverage-7.6.4-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:8cf717ee42012be8c0cb205dbbf18ffa9003c4cbf4ad078db47b95e10748eec5"},
+ {file = "coverage-7.6.4-cp312-cp312-win32.whl", hash = "sha256:7bb92c539a624cf86296dd0c68cd5cc286c9eef2d0c3b8b192b604ce9de20a17"},
+ {file = "coverage-7.6.4-cp312-cp312-win_amd64.whl", hash = "sha256:1032e178b76a4e2b5b32e19d0fd0abbce4b58e77a1ca695820d10e491fa32b08"},
+ {file = "coverage-7.6.4-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:023bf8ee3ec6d35af9c1c6ccc1d18fa69afa1cb29eaac57cb064dbb262a517f9"},
+ {file = "coverage-7.6.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b0ac3d42cb51c4b12df9c5f0dd2f13a4f24f01943627120ec4d293c9181219ba"},
+ {file = "coverage-7.6.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8fe4984b431f8621ca53d9380901f62bfb54ff759a1348cd140490ada7b693c"},
+ {file = "coverage-7.6.4-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:5fbd612f8a091954a0c8dd4c0b571b973487277d26476f8480bfa4b2a65b5d06"},
+ {file = "coverage-7.6.4-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dacbc52de979f2823a819571f2e3a350a7e36b8cb7484cdb1e289bceaf35305f"},
+ {file = "coverage-7.6.4-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:dab4d16dfef34b185032580e2f2f89253d302facba093d5fa9dbe04f569c4f4b"},
+ {file = "coverage-7.6.4-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:862264b12ebb65ad8d863d51f17758b1684560b66ab02770d4f0baf2ff75da21"},
+ {file = "coverage-7.6.4-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5beb1ee382ad32afe424097de57134175fea3faf847b9af002cc7895be4e2a5a"},
+ {file = "coverage-7.6.4-cp313-cp313-win32.whl", hash = "sha256:bf20494da9653f6410213424f5f8ad0ed885e01f7e8e59811f572bdb20b8972e"},
+ {file = "coverage-7.6.4-cp313-cp313-win_amd64.whl", hash = "sha256:182e6cd5c040cec0a1c8d415a87b67ed01193ed9ad458ee427741c7d8513d963"},
+ {file = "coverage-7.6.4-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:a181e99301a0ae128493a24cfe5cfb5b488c4e0bf2f8702091473d033494d04f"},
+ {file = "coverage-7.6.4-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:df57bdbeffe694e7842092c5e2e0bc80fff7f43379d465f932ef36f027179806"},
+ {file = "coverage-7.6.4-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0bcd1069e710600e8e4cf27f65c90c7843fa8edfb4520fb0ccb88894cad08b11"},
+ {file = "coverage-7.6.4-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:99b41d18e6b2a48ba949418db48159d7a2e81c5cc290fc934b7d2380515bd0e3"},
+ {file = "coverage-7.6.4-cp313-cp313t-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a6b1e54712ba3474f34b7ef7a41e65bd9037ad47916ccb1cc78769bae324c01a"},
+ {file = "coverage-7.6.4-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:53d202fd109416ce011578f321460795abfe10bb901b883cafd9b3ef851bacfc"},
+ {file = "coverage-7.6.4-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:c48167910a8f644671de9f2083a23630fbf7a1cb70ce939440cd3328e0919f70"},
+ {file = "coverage-7.6.4-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:cc8ff50b50ce532de2fa7a7daae9dd12f0a699bfcd47f20945364e5c31799fef"},
+ {file = "coverage-7.6.4-cp313-cp313t-win32.whl", hash = "sha256:b8d3a03d9bfcaf5b0141d07a88456bb6a4c3ce55c080712fec8418ef3610230e"},
+ {file = "coverage-7.6.4-cp313-cp313t-win_amd64.whl", hash = "sha256:f3ddf056d3ebcf6ce47bdaf56142af51bb7fad09e4af310241e9db7a3a8022e1"},
+ {file = "coverage-7.6.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9cb7fa111d21a6b55cbf633039f7bc2749e74932e3aa7cb7333f675a58a58bf3"},
+ {file = "coverage-7.6.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:11a223a14e91a4693d2d0755c7a043db43d96a7450b4f356d506c2562c48642c"},
+ {file = "coverage-7.6.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a413a096c4cbac202433c850ee43fa326d2e871b24554da8327b01632673a076"},
+ {file = "coverage-7.6.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:00a1d69c112ff5149cabe60d2e2ee948752c975d95f1e1096742e6077affd376"},
+ {file = "coverage-7.6.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1f76846299ba5c54d12c91d776d9605ae33f8ae2b9d1d3c3703cf2db1a67f2c0"},
+ {file = "coverage-7.6.4-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:fe439416eb6380de434886b00c859304338f8b19f6f54811984f3420a2e03858"},
+ {file = "coverage-7.6.4-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:0294ca37f1ba500667b1aef631e48d875ced93ad5e06fa665a3295bdd1d95111"},
+ {file = "coverage-7.6.4-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:6f01ba56b1c0e9d149f9ac85a2f999724895229eb36bd997b61e62999e9b0901"},
+ {file = "coverage-7.6.4-cp39-cp39-win32.whl", hash = "sha256:bc66f0bf1d7730a17430a50163bb264ba9ded56739112368ba985ddaa9c3bd09"},
+ {file = "coverage-7.6.4-cp39-cp39-win_amd64.whl", hash = "sha256:c481b47f6b5845064c65a7bc78bc0860e635a9b055af0df46fdf1c58cebf8e8f"},
+ {file = "coverage-7.6.4-pp39.pp310-none-any.whl", hash = "sha256:3c65d37f3a9ebb703e710befdc489a38683a5b152242664b973a7b7b22348a4e"},
+ {file = "coverage-7.6.4.tar.gz", hash = "sha256:29fc0f17b1d3fea332f8001d4558f8214af7f1d87a345f3a133c901d60347c73"},
]
[package.dependencies]
@@ -679,19 +757,19 @@ files = [
test = ["pytest (>=6)"]
[[package]]
-name = "fastapi-slim"
-version = "0.114.0"
+name = "fastapi"
+version = "0.115.6"
description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production"
optional = false
python-versions = ">=3.8"
files = [
- {file = "fastapi_slim-0.114.0-py3-none-any.whl", hash = "sha256:83c8e95301c75c6575f7f6c4b885bf42a4c0b4a85e936e2faca25055470d0afe"},
- {file = "fastapi_slim-0.114.0.tar.gz", hash = "sha256:2299d5e0b8818f264725bd13dd91c80b904589be06c98c3d8115132576e5e2dd"},
+ {file = "fastapi-0.115.6-py3-none-any.whl", hash = "sha256:e9240b29e36fa8f4bb7290316988e90c381e5092e0cbe84e7818cc3713bcf305"},
+ {file = "fastapi-0.115.6.tar.gz", hash = "sha256:9ec46f7addc14ea472958a96aae5b5de65f39721a46aaf5705c480d9a8b76654"},
]
[package.dependencies]
pydantic = ">=1.7.4,<1.8 || >1.8,<1.8.1 || >1.8.1,<2.0.0 || >2.0.0,<2.0.1 || >2.0.1,<2.1.0 || >2.1.0,<3.0.0"
-starlette = ">=0.37.2,<0.39.0"
+starlette = ">=0.40.0,<0.42.0"
typing-extensions = ">=4.8.0"
[package.extras]
@@ -878,73 +956,68 @@ tqdm = ["tqdm"]
[[package]]
name = "ftfy"
-version = "6.2.3"
+version = "6.3.1"
description = "Fixes mojibake and other problems with Unicode, after the fact"
optional = false
-python-versions = "<4,>=3.8.1"
+python-versions = ">=3.9"
files = [
- {file = "ftfy-6.2.3-py3-none-any.whl", hash = "sha256:f15761b023f3061a66207d33f0c0149ad40a8319fd16da91796363e2c049fdf8"},
- {file = "ftfy-6.2.3.tar.gz", hash = "sha256:79b505988f29d577a58a9069afe75553a02a46e42de6091c0660cdc67812badc"},
+ {file = "ftfy-6.3.1-py3-none-any.whl", hash = "sha256:7c70eb532015cd2f9adb53f101fb6c7945988d023a085d127d1573dc49dd0083"},
+ {file = "ftfy-6.3.1.tar.gz", hash = "sha256:9b3c3d90f84fb267fe64d375a07b7f8912d817cf86009ae134aa03e1819506ec"},
]
[package.dependencies]
-wcwidth = ">=0.2.12,<0.3.0"
+wcwidth = "*"
[[package]]
name = "gevent"
-version = "23.9.1"
+version = "24.10.3"
description = "Coroutine-based network library"
optional = false
-python-versions = ">=3.8"
+python-versions = ">=3.9"
files = [
- {file = "gevent-23.9.1-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:a3c5e9b1f766a7a64833334a18539a362fb563f6c4682f9634dea72cbe24f771"},
- {file = "gevent-23.9.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b101086f109168b23fa3586fccd1133494bdb97f86920a24dc0b23984dc30b69"},
- {file = "gevent-23.9.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:36a549d632c14684bcbbd3014a6ce2666c5f2a500f34d58d32df6c9ea38b6535"},
- {file = "gevent-23.9.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:272cffdf535978d59c38ed837916dfd2b5d193be1e9e5dcc60a5f4d5025dd98a"},
- {file = "gevent-23.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dcb8612787a7f4626aa881ff15ff25439561a429f5b303048f0fca8a1c781c39"},
- {file = "gevent-23.9.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:d57737860bfc332b9b5aa438963986afe90f49645f6e053140cfa0fa1bdae1ae"},
- {file = "gevent-23.9.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:5f3c781c84794926d853d6fb58554dc0dcc800ba25c41d42f6959c344b4db5a6"},
- {file = "gevent-23.9.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:dbb22a9bbd6a13e925815ce70b940d1578dbe5d4013f20d23e8a11eddf8d14a7"},
- {file = "gevent-23.9.1-cp310-cp310-win_amd64.whl", hash = "sha256:707904027d7130ff3e59ea387dddceedb133cc742b00b3ffe696d567147a9c9e"},
- {file = "gevent-23.9.1-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:45792c45d60f6ce3d19651d7fde0bc13e01b56bb4db60d3f32ab7d9ec467374c"},
- {file = "gevent-23.9.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4e24c2af9638d6c989caffc691a039d7c7022a31c0363da367c0d32ceb4a0648"},
- {file = "gevent-23.9.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e1ead6863e596a8cc2a03e26a7a0981f84b6b3e956101135ff6d02df4d9a6b07"},
- {file = "gevent-23.9.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:65883ac026731ac112184680d1f0f1e39fa6f4389fd1fc0bf46cc1388e2599f9"},
- {file = "gevent-23.9.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bf7af500da05363e66f122896012acb6e101a552682f2352b618e541c941a011"},
- {file = "gevent-23.9.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:c3e5d2fa532e4d3450595244de8ccf51f5721a05088813c1abd93ad274fe15e7"},
- {file = "gevent-23.9.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c84d34256c243b0a53d4335ef0bc76c735873986d478c53073861a92566a8d71"},
- {file = "gevent-23.9.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:ada07076b380918829250201df1d016bdafb3acf352f35e5693b59dceee8dd2e"},
- {file = "gevent-23.9.1-cp311-cp311-win_amd64.whl", hash = "sha256:921dda1c0b84e3d3b1778efa362d61ed29e2b215b90f81d498eb4d8eafcd0b7a"},
- {file = "gevent-23.9.1-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:ed7a048d3e526a5c1d55c44cb3bc06cfdc1947d06d45006cc4cf60dedc628904"},
- {file = "gevent-23.9.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7c1abc6f25f475adc33e5fc2dbcc26a732608ac5375d0d306228738a9ae14d3b"},
- {file = "gevent-23.9.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4368f341a5f51611411ec3fc62426f52ac3d6d42eaee9ed0f9eebe715c80184e"},
- {file = "gevent-23.9.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:52b4abf28e837f1865a9bdeef58ff6afd07d1d888b70b6804557e7908032e599"},
- {file = "gevent-23.9.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:52e9f12cd1cda96603ce6b113d934f1aafb873e2c13182cf8e86d2c5c41982ea"},
- {file = "gevent-23.9.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:de350fde10efa87ea60d742901e1053eb2127ebd8b59a7d3b90597eb4e586599"},
- {file = "gevent-23.9.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:fde6402c5432b835fbb7698f1c7f2809c8d6b2bd9d047ac1f5a7c1d5aa569303"},
- {file = "gevent-23.9.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:dd6c32ab977ecf7c7b8c2611ed95fa4aaebd69b74bf08f4b4960ad516861517d"},
- {file = "gevent-23.9.1-cp312-cp312-win_amd64.whl", hash = "sha256:455e5ee8103f722b503fa45dedb04f3ffdec978c1524647f8ba72b4f08490af1"},
- {file = "gevent-23.9.1-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:7ccf0fd378257cb77d91c116e15c99e533374a8153632c48a3ecae7f7f4f09fe"},
- {file = "gevent-23.9.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d163d59f1be5a4c4efcdd13c2177baaf24aadf721fdf2e1af9ee54a998d160f5"},
- {file = "gevent-23.9.1-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:7532c17bc6c1cbac265e751b95000961715adef35a25d2b0b1813aa7263fb397"},
- {file = "gevent-23.9.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:78eebaf5e73ff91d34df48f4e35581ab4c84e22dd5338ef32714264063c57507"},
- {file = "gevent-23.9.1-cp38-cp38-win32.whl", hash = "sha256:f632487c87866094546a74eefbca2c74c1d03638b715b6feb12e80120960185a"},
- {file = "gevent-23.9.1-cp38-cp38-win_amd64.whl", hash = "sha256:62d121344f7465e3739989ad6b91f53a6ca9110518231553fe5846dbe1b4518f"},
- {file = "gevent-23.9.1-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:bf456bd6b992eb0e1e869e2fd0caf817f0253e55ca7977fd0e72d0336a8c1c6a"},
- {file = "gevent-23.9.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:43daf68496c03a35287b8b617f9f91e0e7c0d042aebcc060cadc3f049aadd653"},
- {file = "gevent-23.9.1-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:7c28e38dcde327c217fdafb9d5d17d3e772f636f35df15ffae2d933a5587addd"},
- {file = "gevent-23.9.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:fae8d5b5b8fa2a8f63b39f5447168b02db10c888a3e387ed7af2bd1b8612e543"},
- {file = "gevent-23.9.1-cp39-cp39-win32.whl", hash = "sha256:2c7b5c9912378e5f5ccf180d1fdb1e83f42b71823483066eddbe10ef1a2fcaa2"},
- {file = "gevent-23.9.1-cp39-cp39-win_amd64.whl", hash = "sha256:a2898b7048771917d85a1d548fd378e8a7b2ca963db8e17c6d90c76b495e0e2b"},
- {file = "gevent-23.9.1.tar.gz", hash = "sha256:72c002235390d46f94938a96920d8856d4ffd9ddf62a303a0d7c118894097e34"},
+ {file = "gevent-24.10.3-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:d7a1ad0f2da582f5bd238bca067e1c6c482c30c15a6e4d14aaa3215cbb2232f3"},
+ {file = "gevent-24.10.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f4e526fdc279c655c1e809b0c34b45844182c2a6b219802da5e411bd2cf5a8ad"},
+ {file = "gevent-24.10.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:57a5c4e0bdac482c5f02f240d0354e61362df73501ef6ebafce8ef635cad7527"},
+ {file = "gevent-24.10.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d67daed8383326dc8b5e58d88e148d29b6b52274a489e383530b0969ae7b9cb9"},
+ {file = "gevent-24.10.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1e24ffea72e27987979c009536fd0868e52239b44afe6cf7135ce8aafd0f108e"},
+ {file = "gevent-24.10.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:c1d80090485da1ea3d99205fe97908b31188c1f4857f08b333ffaf2de2e89d18"},
+ {file = "gevent-24.10.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f0c129f81d60cda614acb4b0c5731997ca05b031fb406fcb58ad53a7ade53b13"},
+ {file = "gevent-24.10.3-cp310-cp310-win_amd64.whl", hash = "sha256:26ca7a6b42d35129617025ac801135118333cad75856ffc3217b38e707383eba"},
+ {file = "gevent-24.10.3-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:68c3a0d8402755eba7f69022e42e8021192a721ca8341908acc222ea597029b6"},
+ {file = "gevent-24.10.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5d850a453d66336272be4f1d3a8126777f3efdaea62d053b4829857f91e09755"},
+ {file = "gevent-24.10.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8e58ee3723f1fbe07d66892f1caa7481c306f653a6829b6fd16cb23d618a5915"},
+ {file = "gevent-24.10.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b52382124eca13135a3abe4f65c6bd428656975980a48e51b17aeab68bdb14db"},
+ {file = "gevent-24.10.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ca2266e08f43c0e22c028801dff7d92a0b102ef20e4caeb6a46abfb95f6a328"},
+ {file = "gevent-24.10.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:d758f0d4dbf32502ec87bb9b536ca8055090a16f8305f0ada3ce6f34e70f2fd7"},
+ {file = "gevent-24.10.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:0de6eb3d55c03138fda567d9bfed28487ce5d0928c5107549767a93efdf2be26"},
+ {file = "gevent-24.10.3-cp311-cp311-win_amd64.whl", hash = "sha256:385710355eadecdb70428a5ae3e7e5a45dcf888baa1426884588be9d25ac4290"},
+ {file = "gevent-24.10.3-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:3ad8fb70aa0ebc935729c9699ac31b210a49b689a7b27b7ac9f91676475f3f53"},
+ {file = "gevent-24.10.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f18689f7a70d2ed0e75bad5036ec3c89690a493d4cfac8d7cdb258ac04b132bd"},
+ {file = "gevent-24.10.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f7f4f171d4d2018170454d84c934842e1b5f6ce7468ba298f6e7f7cff15000a3"},
+ {file = "gevent-24.10.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7021e26d70189b33c27173d4173f27bf4685d6b6f1c0ea50e5335f8491cb110c"},
+ {file = "gevent-24.10.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:34aea15f9c79f27a8faeaa361bc1e72c773a9b54a1996a2ec4eefc8bcd59a824"},
+ {file = "gevent-24.10.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:8af65a4d4feaec6042c666d22c322a310fba3b47e841ad52f724b9c3ce5da48e"},
+ {file = "gevent-24.10.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:89c4115e3f5ada55f92b61701a46043fe42f702b5af863b029e4c1a76f6cc2d4"},
+ {file = "gevent-24.10.3-cp312-cp312-win_amd64.whl", hash = "sha256:1ce6dab94c0b0d24425ba55712de2f8c9cb21267150ca63f5bb3a0e1f165da99"},
+ {file = "gevent-24.10.3-cp313-cp313-macosx_11_0_universal2.whl", hash = "sha256:f147e38423fbe96e8731f60a63475b3d2cab2f3d10578d8ee9d10c507c58a2ff"},
+ {file = "gevent-24.10.3-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:18e6984ec96fc95fd67488555c38ece3015be1f38b1bcceb27b7d6c36b343008"},
+ {file = "gevent-24.10.3-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:051b22e2758accfddb0457728bfc9abf8c3f2ce6bca43f1ff6e07b5ed9e49bf4"},
+ {file = "gevent-24.10.3-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eb5edb6433764119a664bbb148d2aea9990950aa89cc3498f475c2408d523ea3"},
+ {file = "gevent-24.10.3-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ce417bcaaab496bc9c77f75566531e9d93816262037b8b2dbb88b0fdcd66587c"},
+ {file = "gevent-24.10.3-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:1c3a828b033fb02b7c31da4d75014a1f82e6c072fc0523456569a57f8b025861"},
+ {file = "gevent-24.10.3-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:f2ae3efbbd120cdf4a68b7abc27a37e61e6f443c5a06ec2c6ad94c37cd8471ec"},
+ {file = "gevent-24.10.3-cp313-cp313-win_amd64.whl", hash = "sha256:9e1210334a9bc9f76c3d008e0785ca62214f8a54e1325f6c2ecab3b6a572a015"},
+ {file = "gevent-24.10.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:70e9ed7ecb70e0df7dc97c3bc420de9a45a7c76bd5861c6cfec8c549700e681e"},
+ {file = "gevent-24.10.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3ac83b74304487afa211a01909c7dd257e574db0cd429d866c298e21df7aeedf"},
+ {file = "gevent-24.10.3-cp39-cp39-win32.whl", hash = "sha256:a9a89d6e396ef6f1e3968521bf56e8c4bee25b193bbf5d428b7782d582410822"},
+ {file = "gevent-24.10.3-cp39-cp39-win_amd64.whl", hash = "sha256:40ea3e40e8bb4fdb143c2a8edf2ccfdebd56016c7317c341ce8094c7bee08818"},
+ {file = "gevent-24.10.3-pp310-pypy310_pp73-macosx_11_0_universal2.whl", hash = "sha256:e534e6a968d74463b11de6c9c67f4b4bf61775fb00f2e6e0f7fcdd412ceade18"},
+ {file = "gevent-24.10.3.tar.gz", hash = "sha256:aa7ee1bd5cabb2b7ef35105f863b386c8d5e332f754b60cfc354148bd70d35d1"},
]
[package.dependencies]
-cffi = {version = ">=1.12.2", markers = "platform_python_implementation == \"CPython\" and sys_platform == \"win32\""}
-greenlet = [
- {version = ">=3.0rc3", markers = "platform_python_implementation == \"CPython\" and python_version >= \"3.11\""},
- {version = ">=2.0.0", markers = "platform_python_implementation == \"CPython\" and python_version < \"3.11\""},
-]
+cffi = {version = ">=1.17.1", markers = "platform_python_implementation == \"CPython\" and sys_platform == \"win32\""}
+greenlet = {version = ">=3.1.1", markers = "platform_python_implementation == \"CPython\""}
"zope.event" = "*"
"zope.interface" = "*"
@@ -952,8 +1025,8 @@ greenlet = [
dnspython = ["dnspython (>=1.16.0,<2.0)", "idna"]
docs = ["furo", "repoze.sphinx.autointerface", "sphinx", "sphinxcontrib-programoutput", "zope.schema"]
monitor = ["psutil (>=5.7.0)"]
-recommended = ["cffi (>=1.12.2)", "dnspython (>=1.16.0,<2.0)", "idna", "psutil (>=5.7.0)"]
-test = ["cffi (>=1.12.2)", "coverage (>=5.0)", "dnspython (>=1.16.0,<2.0)", "idna", "objgraph", "psutil (>=5.7.0)", "requests", "setuptools"]
+recommended = ["cffi (>=1.17.1)", "dnspython (>=1.16.0,<2.0)", "idna", "psutil (>=5.7.0)"]
+test = ["cffi (>=1.17.1)", "coverage (>=5.0)", "dnspython (>=1.16.0,<2.0)", "idna", "objgraph", "psutil (>=5.7.0)", "requests"]
[[package]]
name = "geventhttpclient"
@@ -1040,69 +1113,84 @@ examples = ["oauth2"]
[[package]]
name = "greenlet"
-version = "3.0.3"
+version = "3.1.1"
description = "Lightweight in-process concurrent programming"
optional = false
python-versions = ">=3.7"
files = [
- {file = "greenlet-3.0.3-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:9da2bd29ed9e4f15955dd1595ad7bc9320308a3b766ef7f837e23ad4b4aac31a"},
- {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d353cadd6083fdb056bb46ed07e4340b0869c305c8ca54ef9da3421acbdf6881"},
- {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dca1e2f3ca00b84a396bc1bce13dd21f680f035314d2379c4160c98153b2059b"},
- {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3ed7fb269f15dc662787f4119ec300ad0702fa1b19d2135a37c2c4de6fadfd4a"},
- {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd4f49ae60e10adbc94b45c0b5e6a179acc1736cf7a90160b404076ee283cf83"},
- {file = "greenlet-3.0.3-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:73a411ef564e0e097dbe7e866bb2dda0f027e072b04da387282b02c308807405"},
- {file = "greenlet-3.0.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:7f362975f2d179f9e26928c5b517524e89dd48530a0202570d55ad6ca5d8a56f"},
- {file = "greenlet-3.0.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:649dde7de1a5eceb258f9cb00bdf50e978c9db1b996964cd80703614c86495eb"},
- {file = "greenlet-3.0.3-cp310-cp310-win_amd64.whl", hash = "sha256:68834da854554926fbedd38c76e60c4a2e3198c6fbed520b106a8986445caaf9"},
- {file = "greenlet-3.0.3-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:b1b5667cced97081bf57b8fa1d6bfca67814b0afd38208d52538316e9422fc61"},
- {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52f59dd9c96ad2fc0d5724107444f76eb20aaccb675bf825df6435acb7703559"},
- {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:afaff6cf5200befd5cec055b07d1c0a5a06c040fe5ad148abcd11ba6ab9b114e"},
- {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fe754d231288e1e64323cfad462fcee8f0288654c10bdf4f603a39ed923bef33"},
- {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2797aa5aedac23af156bbb5a6aa2cd3427ada2972c828244eb7d1b9255846379"},
- {file = "greenlet-3.0.3-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b7f009caad047246ed379e1c4dbcb8b020f0a390667ea74d2387be2998f58a22"},
- {file = "greenlet-3.0.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c5e1536de2aad7bf62e27baf79225d0d64360d4168cf2e6becb91baf1ed074f3"},
- {file = "greenlet-3.0.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:894393ce10ceac937e56ec00bb71c4c2f8209ad516e96033e4b3b1de270e200d"},
- {file = "greenlet-3.0.3-cp311-cp311-win_amd64.whl", hash = "sha256:1ea188d4f49089fc6fb283845ab18a2518d279c7cd9da1065d7a84e991748728"},
- {file = "greenlet-3.0.3-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:70fb482fdf2c707765ab5f0b6655e9cfcf3780d8d87355a063547b41177599be"},
- {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d4d1ac74f5c0c0524e4a24335350edad7e5f03b9532da7ea4d3c54d527784f2e"},
- {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:149e94a2dd82d19838fe4b2259f1b6b9957d5ba1b25640d2380bea9c5df37676"},
- {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:15d79dd26056573940fcb8c7413d84118086f2ec1a8acdfa854631084393efcc"},
- {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:881b7db1ebff4ba09aaaeae6aa491daeb226c8150fc20e836ad00041bcb11230"},
- {file = "greenlet-3.0.3-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fcd2469d6a2cf298f198f0487e0a5b1a47a42ca0fa4dfd1b6862c999f018ebbf"},
- {file = "greenlet-3.0.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:1f672519db1796ca0d8753f9e78ec02355e862d0998193038c7073045899f305"},
- {file = "greenlet-3.0.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:2516a9957eed41dd8f1ec0c604f1cdc86758b587d964668b5b196a9db5bfcde6"},
- {file = "greenlet-3.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:bba5387a6975598857d86de9eac14210a49d554a77eb8261cc68b7d082f78ce2"},
- {file = "greenlet-3.0.3-cp37-cp37m-macosx_11_0_universal2.whl", hash = "sha256:5b51e85cb5ceda94e79d019ed36b35386e8c37d22f07d6a751cb659b180d5274"},
- {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:daf3cb43b7cf2ba96d614252ce1684c1bccee6b2183a01328c98d36fcd7d5cb0"},
- {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:99bf650dc5d69546e076f413a87481ee1d2d09aaaaaca058c9251b6d8c14783f"},
- {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2dd6e660effd852586b6a8478a1d244b8dc90ab5b1321751d2ea15deb49ed414"},
- {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e3391d1e16e2a5a1507d83e4a8b100f4ee626e8eca43cf2cadb543de69827c4c"},
- {file = "greenlet-3.0.3-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e1f145462f1fa6e4a4ae3c0f782e580ce44d57c8f2c7aae1b6fa88c0b2efdb41"},
- {file = "greenlet-3.0.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:1a7191e42732df52cb5f39d3527217e7ab73cae2cb3694d241e18f53d84ea9a7"},
- {file = "greenlet-3.0.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:0448abc479fab28b00cb472d278828b3ccca164531daab4e970a0458786055d6"},
- {file = "greenlet-3.0.3-cp37-cp37m-win32.whl", hash = "sha256:b542be2440edc2d48547b5923c408cbe0fc94afb9f18741faa6ae970dbcb9b6d"},
- {file = "greenlet-3.0.3-cp37-cp37m-win_amd64.whl", hash = "sha256:01bc7ea167cf943b4c802068e178bbf70ae2e8c080467070d01bfa02f337ee67"},
- {file = "greenlet-3.0.3-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:1996cb9306c8595335bb157d133daf5cf9f693ef413e7673cb07e3e5871379ca"},
- {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3ddc0f794e6ad661e321caa8d2f0a55ce01213c74722587256fb6566049a8b04"},
- {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c9db1c18f0eaad2f804728c67d6c610778456e3e1cc4ab4bbd5eeb8e6053c6fc"},
- {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7170375bcc99f1a2fbd9c306f5be8764eaf3ac6b5cb968862cad4c7057756506"},
- {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b66c9c1e7ccabad3a7d037b2bcb740122a7b17a53734b7d72a344ce39882a1b"},
- {file = "greenlet-3.0.3-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:098d86f528c855ead3479afe84b49242e174ed262456c342d70fc7f972bc13c4"},
- {file = "greenlet-3.0.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:81bb9c6d52e8321f09c3d165b2a78c680506d9af285bfccbad9fb7ad5a5da3e5"},
- {file = "greenlet-3.0.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:fd096eb7ffef17c456cfa587523c5f92321ae02427ff955bebe9e3c63bc9f0da"},
- {file = "greenlet-3.0.3-cp38-cp38-win32.whl", hash = "sha256:d46677c85c5ba00a9cb6f7a00b2bfa6f812192d2c9f7d9c4f6a55b60216712f3"},
- {file = "greenlet-3.0.3-cp38-cp38-win_amd64.whl", hash = "sha256:419b386f84949bf0e7c73e6032e3457b82a787c1ab4a0e43732898a761cc9dbf"},
- {file = "greenlet-3.0.3-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:da70d4d51c8b306bb7a031d5cff6cc25ad253affe89b70352af5f1cb68e74b53"},
- {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:086152f8fbc5955df88382e8a75984e2bb1c892ad2e3c80a2508954e52295257"},
- {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d73a9fe764d77f87f8ec26a0c85144d6a951a6c438dfe50487df5595c6373eac"},
- {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b7dcbe92cc99f08c8dd11f930de4d99ef756c3591a5377d1d9cd7dd5e896da71"},
- {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1551a8195c0d4a68fac7a4325efac0d541b48def35feb49d803674ac32582f61"},
- {file = "greenlet-3.0.3-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:64d7675ad83578e3fc149b617a444fab8efdafc9385471f868eb5ff83e446b8b"},
- {file = "greenlet-3.0.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:b37eef18ea55f2ffd8f00ff8fe7c8d3818abd3e25fb73fae2ca3b672e333a7a6"},
- {file = "greenlet-3.0.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:77457465d89b8263bca14759d7c1684df840b6811b2499838cc5b040a8b5b113"},
- {file = "greenlet-3.0.3-cp39-cp39-win32.whl", hash = "sha256:57e8974f23e47dac22b83436bdcf23080ade568ce77df33159e019d161ce1d1e"},
- {file = "greenlet-3.0.3-cp39-cp39-win_amd64.whl", hash = "sha256:c5ee858cfe08f34712f548c3c363e807e7186f03ad7a5039ebadb29e8c6be067"},
- {file = "greenlet-3.0.3.tar.gz", hash = "sha256:43374442353259554ce33599da8b692d5aa96f8976d567d4badf263371fbe491"},
+ {file = "greenlet-3.1.1-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:0bbae94a29c9e5c7e4a2b7f0aae5c17e8e90acbfd3bf6270eeba60c39fce3563"},
+ {file = "greenlet-3.1.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0fde093fb93f35ca72a556cf72c92ea3ebfda3d79fc35bb19fbe685853869a83"},
+ {file = "greenlet-3.1.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:36b89d13c49216cadb828db8dfa6ce86bbbc476a82d3a6c397f0efae0525bdd0"},
+ {file = "greenlet-3.1.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:94b6150a85e1b33b40b1464a3f9988dcc5251d6ed06842abff82e42632fac120"},
+ {file = "greenlet-3.1.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:93147c513fac16385d1036b7e5b102c7fbbdb163d556b791f0f11eada7ba65dc"},
+ {file = "greenlet-3.1.1-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:da7a9bff22ce038e19bf62c4dd1ec8391062878710ded0a845bcf47cc0200617"},
+ {file = "greenlet-3.1.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:b2795058c23988728eec1f36a4e5e4ebad22f8320c85f3587b539b9ac84128d7"},
+ {file = "greenlet-3.1.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ed10eac5830befbdd0c32f83e8aa6288361597550ba669b04c48f0f9a2c843c6"},
+ {file = "greenlet-3.1.1-cp310-cp310-win_amd64.whl", hash = "sha256:77c386de38a60d1dfb8e55b8c1101d68c79dfdd25c7095d51fec2dd800892b80"},
+ {file = "greenlet-3.1.1-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:e4d333e558953648ca09d64f13e6d8f0523fa705f51cae3f03b5983489958c70"},
+ {file = "greenlet-3.1.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:09fc016b73c94e98e29af67ab7b9a879c307c6731a2c9da0db5a7d9b7edd1159"},
+ {file = "greenlet-3.1.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d5e975ca70269d66d17dd995dafc06f1b06e8cb1ec1e9ed54c1d1e4a7c4cf26e"},
+ {file = "greenlet-3.1.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3b2813dc3de8c1ee3f924e4d4227999285fd335d1bcc0d2be6dc3f1f6a318ec1"},
+ {file = "greenlet-3.1.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e347b3bfcf985a05e8c0b7d462ba6f15b1ee1c909e2dcad795e49e91b152c383"},
+ {file = "greenlet-3.1.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9e8f8c9cb53cdac7ba9793c276acd90168f416b9ce36799b9b885790f8ad6c0a"},
+ {file = "greenlet-3.1.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:62ee94988d6b4722ce0028644418d93a52429e977d742ca2ccbe1c4f4a792511"},
+ {file = "greenlet-3.1.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1776fd7f989fc6b8d8c8cb8da1f6b82c5814957264d1f6cf818d475ec2bf6395"},
+ {file = "greenlet-3.1.1-cp311-cp311-win_amd64.whl", hash = "sha256:48ca08c771c268a768087b408658e216133aecd835c0ded47ce955381105ba39"},
+ {file = "greenlet-3.1.1-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:4afe7ea89de619adc868e087b4d2359282058479d7cfb94970adf4b55284574d"},
+ {file = "greenlet-3.1.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f406b22b7c9a9b4f8aa9d2ab13d6ae0ac3e85c9a809bd590ad53fed2bf70dc79"},
+ {file = "greenlet-3.1.1-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c3a701fe5a9695b238503ce5bbe8218e03c3bcccf7e204e455e7462d770268aa"},
+ {file = "greenlet-3.1.1-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2846930c65b47d70b9d178e89c7e1a69c95c1f68ea5aa0a58646b7a96df12441"},
+ {file = "greenlet-3.1.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:99cfaa2110534e2cf3ba31a7abcac9d328d1d9f1b95beede58294a60348fba36"},
+ {file = "greenlet-3.1.1-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1443279c19fca463fc33e65ef2a935a5b09bb90f978beab37729e1c3c6c25fe9"},
+ {file = "greenlet-3.1.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:b7cede291382a78f7bb5f04a529cb18e068dd29e0fb27376074b6d0317bf4dd0"},
+ {file = "greenlet-3.1.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:23f20bb60ae298d7d8656c6ec6db134bca379ecefadb0b19ce6f19d1f232a942"},
+ {file = "greenlet-3.1.1-cp312-cp312-win_amd64.whl", hash = "sha256:7124e16b4c55d417577c2077be379514321916d5790fa287c9ed6f23bd2ffd01"},
+ {file = "greenlet-3.1.1-cp313-cp313-macosx_11_0_universal2.whl", hash = "sha256:05175c27cb459dcfc05d026c4232f9de8913ed006d42713cb8a5137bd49375f1"},
+ {file = "greenlet-3.1.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:935e943ec47c4afab8965954bf49bfa639c05d4ccf9ef6e924188f762145c0ff"},
+ {file = "greenlet-3.1.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:667a9706c970cb552ede35aee17339a18e8f2a87a51fba2ed39ceeeb1004798a"},
+ {file = "greenlet-3.1.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b8a678974d1f3aa55f6cc34dc480169d58f2e6d8958895d68845fa4ab566509e"},
+ {file = "greenlet-3.1.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:efc0f674aa41b92da8c49e0346318c6075d734994c3c4e4430b1c3f853e498e4"},
+ {file = "greenlet-3.1.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0153404a4bb921f0ff1abeb5ce8a5131da56b953eda6e14b88dc6bbc04d2049e"},
+ {file = "greenlet-3.1.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:275f72decf9932639c1c6dd1013a1bc266438eb32710016a1c742df5da6e60a1"},
+ {file = "greenlet-3.1.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:c4aab7f6381f38a4b42f269057aee279ab0fc7bf2e929e3d4abfae97b682a12c"},
+ {file = "greenlet-3.1.1-cp313-cp313-win_amd64.whl", hash = "sha256:b42703b1cf69f2aa1df7d1030b9d77d3e584a70755674d60e710f0af570f3761"},
+ {file = "greenlet-3.1.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f1695e76146579f8c06c1509c7ce4dfe0706f49c6831a817ac04eebb2fd02011"},
+ {file = "greenlet-3.1.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7876452af029456b3f3549b696bb36a06db7c90747740c5302f74a9e9fa14b13"},
+ {file = "greenlet-3.1.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ead44c85f8ab905852d3de8d86f6f8baf77109f9da589cb4fa142bd3b57b475"},
+ {file = "greenlet-3.1.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8320f64b777d00dd7ccdade271eaf0cad6636343293a25074cc5566160e4de7b"},
+ {file = "greenlet-3.1.1-cp313-cp313t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6510bf84a6b643dabba74d3049ead221257603a253d0a9873f55f6a59a65f822"},
+ {file = "greenlet-3.1.1-cp313-cp313t-musllinux_1_1_aarch64.whl", hash = "sha256:04b013dc07c96f83134b1e99888e7a79979f1a247e2a9f59697fa14b5862ed01"},
+ {file = "greenlet-3.1.1-cp313-cp313t-musllinux_1_1_x86_64.whl", hash = "sha256:411f015496fec93c1c8cd4e5238da364e1da7a124bcb293f085bf2860c32c6f6"},
+ {file = "greenlet-3.1.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:47da355d8687fd65240c364c90a31569a133b7b60de111c255ef5b606f2ae291"},
+ {file = "greenlet-3.1.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:98884ecf2ffb7d7fe6bd517e8eb99d31ff7855a840fa6d0d63cd07c037f6a981"},
+ {file = "greenlet-3.1.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f1d4aeb8891338e60d1ab6127af1fe45def5259def8094b9c7e34690c8858803"},
+ {file = "greenlet-3.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:db32b5348615a04b82240cc67983cb315309e88d444a288934ee6ceaebcad6cc"},
+ {file = "greenlet-3.1.1-cp37-cp37m-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:dcc62f31eae24de7f8dce72134c8651c58000d3b1868e01392baea7c32c247de"},
+ {file = "greenlet-3.1.1-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:1d3755bcb2e02de341c55b4fca7a745a24a9e7212ac953f6b3a48d117d7257aa"},
+ {file = "greenlet-3.1.1-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:b8da394b34370874b4572676f36acabac172602abf054cbc4ac910219f3340af"},
+ {file = "greenlet-3.1.1-cp37-cp37m-win32.whl", hash = "sha256:a0dfc6c143b519113354e780a50381508139b07d2177cb6ad6a08278ec655798"},
+ {file = "greenlet-3.1.1-cp37-cp37m-win_amd64.whl", hash = "sha256:54558ea205654b50c438029505def3834e80f0869a70fb15b871c29b4575ddef"},
+ {file = "greenlet-3.1.1-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:346bed03fe47414091be4ad44786d1bd8bef0c3fcad6ed3dee074a032ab408a9"},
+ {file = "greenlet-3.1.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dfc59d69fc48664bc693842bd57acfdd490acafda1ab52c7836e3fc75c90a111"},
+ {file = "greenlet-3.1.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d21e10da6ec19b457b82636209cbe2331ff4306b54d06fa04b7c138ba18c8a81"},
+ {file = "greenlet-3.1.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:37b9de5a96111fc15418819ab4c4432e4f3c2ede61e660b1e33971eba26ef9ba"},
+ {file = "greenlet-3.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6ef9ea3f137e5711f0dbe5f9263e8c009b7069d8a1acea822bd5e9dae0ae49c8"},
+ {file = "greenlet-3.1.1-cp38-cp38-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:85f3ff71e2e60bd4b4932a043fbbe0f499e263c628390b285cb599154a3b03b1"},
+ {file = "greenlet-3.1.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:95ffcf719966dd7c453f908e208e14cde192e09fde6c7186c8f1896ef778d8cd"},
+ {file = "greenlet-3.1.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:03a088b9de532cbfe2ba2034b2b85e82df37874681e8c470d6fb2f8c04d7e4b7"},
+ {file = "greenlet-3.1.1-cp38-cp38-win32.whl", hash = "sha256:8b8b36671f10ba80e159378df9c4f15c14098c4fd73a36b9ad715f057272fbef"},
+ {file = "greenlet-3.1.1-cp38-cp38-win_amd64.whl", hash = "sha256:7017b2be767b9d43cc31416aba48aab0d2309ee31b4dbf10a1d38fb7972bdf9d"},
+ {file = "greenlet-3.1.1-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:396979749bd95f018296af156201d6211240e7a23090f50a8d5d18c370084dc3"},
+ {file = "greenlet-3.1.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca9d0ff5ad43e785350894d97e13633a66e2b50000e8a183a50a88d834752d42"},
+ {file = "greenlet-3.1.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f6ff3b14f2df4c41660a7dec01045a045653998784bf8cfcb5a525bdffffbc8f"},
+ {file = "greenlet-3.1.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:94ebba31df2aa506d7b14866fed00ac141a867e63143fe5bca82a8e503b36437"},
+ {file = "greenlet-3.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:73aaad12ac0ff500f62cebed98d8789198ea0e6f233421059fa68a5aa7220145"},
+ {file = "greenlet-3.1.1-cp39-cp39-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:63e4844797b975b9af3a3fb8f7866ff08775f5426925e1e0bbcfe7932059a12c"},
+ {file = "greenlet-3.1.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:7939aa3ca7d2a1593596e7ac6d59391ff30281ef280d8632fa03d81f7c5f955e"},
+ {file = "greenlet-3.1.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d0028e725ee18175c6e422797c407874da24381ce0690d6b9396c204c7f7276e"},
+ {file = "greenlet-3.1.1-cp39-cp39-win32.whl", hash = "sha256:5e06afd14cbaf9e00899fae69b24a32f2196c19de08fcb9f4779dd4f004e5e7c"},
+ {file = "greenlet-3.1.1-cp39-cp39-win_amd64.whl", hash = "sha256:3319aa75e0e0639bc15ff54ca327e8dc7a6fe404003496e3c6925cd3142e0e22"},
+ {file = "greenlet-3.1.1.tar.gz", hash = "sha256:4ce3ac6cdb6adf7946475d7ef31777c26d94bccc377e070a7986bd2d5c515467"},
]
[package.extras]
@@ -1164,61 +1252,68 @@ trio = ["trio (>=0.22.0,<0.23.0)"]
[[package]]
name = "httptools"
-version = "0.6.1"
+version = "0.6.4"
description = "A collection of framework independent HTTP protocol utils."
optional = false
python-versions = ">=3.8.0"
files = [
- {file = "httptools-0.6.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:d2f6c3c4cb1948d912538217838f6e9960bc4a521d7f9b323b3da579cd14532f"},
- {file = "httptools-0.6.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:00d5d4b68a717765b1fabfd9ca755bd12bf44105eeb806c03d1962acd9b8e563"},
- {file = "httptools-0.6.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:639dc4f381a870c9ec860ce5c45921db50205a37cc3334e756269736ff0aac58"},
- {file = "httptools-0.6.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e57997ac7fb7ee43140cc03664de5f268813a481dff6245e0075925adc6aa185"},
- {file = "httptools-0.6.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:0ac5a0ae3d9f4fe004318d64b8a854edd85ab76cffbf7ef5e32920faef62f142"},
- {file = "httptools-0.6.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:3f30d3ce413088a98b9db71c60a6ada2001a08945cb42dd65a9a9fe228627658"},
- {file = "httptools-0.6.1-cp310-cp310-win_amd64.whl", hash = "sha256:1ed99a373e327f0107cb513b61820102ee4f3675656a37a50083eda05dc9541b"},
- {file = "httptools-0.6.1-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:7a7ea483c1a4485c71cb5f38be9db078f8b0e8b4c4dc0210f531cdd2ddac1ef1"},
- {file = "httptools-0.6.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:85ed077c995e942b6f1b07583e4eb0a8d324d418954fc6af913d36db7c05a5a0"},
- {file = "httptools-0.6.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b0bb634338334385351a1600a73e558ce619af390c2b38386206ac6a27fecfc"},
- {file = "httptools-0.6.1-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7d9ceb2c957320def533671fc9c715a80c47025139c8d1f3797477decbc6edd2"},
- {file = "httptools-0.6.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:4f0f8271c0a4db459f9dc807acd0eadd4839934a4b9b892f6f160e94da309837"},
- {file = "httptools-0.6.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:6a4f5ccead6d18ec072ac0b84420e95d27c1cdf5c9f1bc8fbd8daf86bd94f43d"},
- {file = "httptools-0.6.1-cp311-cp311-win_amd64.whl", hash = "sha256:5cceac09f164bcba55c0500a18fe3c47df29b62353198e4f37bbcc5d591172c3"},
- {file = "httptools-0.6.1-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:75c8022dca7935cba14741a42744eee13ba05db00b27a4b940f0d646bd4d56d0"},
- {file = "httptools-0.6.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:48ed8129cd9a0d62cf4d1575fcf90fb37e3ff7d5654d3a5814eb3d55f36478c2"},
- {file = "httptools-0.6.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6f58e335a1402fb5a650e271e8c2d03cfa7cea46ae124649346d17bd30d59c90"},
- {file = "httptools-0.6.1-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:93ad80d7176aa5788902f207a4e79885f0576134695dfb0fefc15b7a4648d503"},
- {file = "httptools-0.6.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:9bb68d3a085c2174c2477eb3ffe84ae9fb4fde8792edb7bcd09a1d8467e30a84"},
- {file = "httptools-0.6.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:b512aa728bc02354e5ac086ce76c3ce635b62f5fbc32ab7082b5e582d27867bb"},
- {file = "httptools-0.6.1-cp312-cp312-win_amd64.whl", hash = "sha256:97662ce7fb196c785344d00d638fc9ad69e18ee4bfb4000b35a52efe5adcc949"},
- {file = "httptools-0.6.1-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:8e216a038d2d52ea13fdd9b9c9c7459fb80d78302b257828285eca1c773b99b3"},
- {file = "httptools-0.6.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:3e802e0b2378ade99cd666b5bffb8b2a7cc8f3d28988685dc300469ea8dd86cb"},
- {file = "httptools-0.6.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4bd3e488b447046e386a30f07af05f9b38d3d368d1f7b4d8f7e10af85393db97"},
- {file = "httptools-0.6.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fe467eb086d80217b7584e61313ebadc8d187a4d95bb62031b7bab4b205c3ba3"},
- {file = "httptools-0.6.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:3c3b214ce057c54675b00108ac42bacf2ab8f85c58e3f324a4e963bbc46424f4"},
- {file = "httptools-0.6.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8ae5b97f690badd2ca27cbf668494ee1b6d34cf1c464271ef7bfa9ca6b83ffaf"},
- {file = "httptools-0.6.1-cp38-cp38-win_amd64.whl", hash = "sha256:405784577ba6540fa7d6ff49e37daf104e04f4b4ff2d1ac0469eaa6a20fde084"},
- {file = "httptools-0.6.1-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:95fb92dd3649f9cb139e9c56604cc2d7c7bf0fc2e7c8d7fbd58f96e35eddd2a3"},
- {file = "httptools-0.6.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:dcbab042cc3ef272adc11220517278519adf8f53fd3056d0e68f0a6f891ba94e"},
- {file = "httptools-0.6.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0cf2372e98406efb42e93bfe10f2948e467edfd792b015f1b4ecd897903d3e8d"},
- {file = "httptools-0.6.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:678fcbae74477a17d103b7cae78b74800d795d702083867ce160fc202104d0da"},
- {file = "httptools-0.6.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:e0b281cf5a125c35f7f6722b65d8542d2e57331be573e9e88bc8b0115c4a7a81"},
- {file = "httptools-0.6.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:95658c342529bba4e1d3d2b1a874db16c7cca435e8827422154c9da76ac4e13a"},
- {file = "httptools-0.6.1-cp39-cp39-win_amd64.whl", hash = "sha256:7ebaec1bf683e4bf5e9fbb49b8cc36da482033596a415b3e4ebab5a4c0d7ec5e"},
- {file = "httptools-0.6.1.tar.gz", hash = "sha256:c6e26c30455600b95d94b1b836085138e82f177351454ee841c148f93a9bad5a"},
+ {file = "httptools-0.6.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3c73ce323711a6ffb0d247dcd5a550b8babf0f757e86a52558fe5b86d6fefcc0"},
+ {file = "httptools-0.6.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:345c288418f0944a6fe67be8e6afa9262b18c7626c3ef3c28adc5eabc06a68da"},
+ {file = "httptools-0.6.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:deee0e3343f98ee8047e9f4c5bc7cedbf69f5734454a94c38ee829fb2d5fa3c1"},
+ {file = "httptools-0.6.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ca80b7485c76f768a3bc83ea58373f8db7b015551117375e4918e2aa77ea9b50"},
+ {file = "httptools-0.6.4-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:90d96a385fa941283ebd231464045187a31ad932ebfa541be8edf5b3c2328959"},
+ {file = "httptools-0.6.4-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:59e724f8b332319e2875efd360e61ac07f33b492889284a3e05e6d13746876f4"},
+ {file = "httptools-0.6.4-cp310-cp310-win_amd64.whl", hash = "sha256:c26f313951f6e26147833fc923f78f95604bbec812a43e5ee37f26dc9e5a686c"},
+ {file = "httptools-0.6.4-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:f47f8ed67cc0ff862b84a1189831d1d33c963fb3ce1ee0c65d3b0cbe7b711069"},
+ {file = "httptools-0.6.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:0614154d5454c21b6410fdf5262b4a3ddb0f53f1e1721cfd59d55f32138c578a"},
+ {file = "httptools-0.6.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f8787367fbdfccae38e35abf7641dafc5310310a5987b689f4c32cc8cc3ee975"},
+ {file = "httptools-0.6.4-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:40b0f7fe4fd38e6a507bdb751db0379df1e99120c65fbdc8ee6c1d044897a636"},
+ {file = "httptools-0.6.4-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:40a5ec98d3f49904b9fe36827dcf1aadfef3b89e2bd05b0e35e94f97c2b14721"},
+ {file = "httptools-0.6.4-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:dacdd3d10ea1b4ca9df97a0a303cbacafc04b5cd375fa98732678151643d4988"},
+ {file = "httptools-0.6.4-cp311-cp311-win_amd64.whl", hash = "sha256:288cd628406cc53f9a541cfaf06041b4c71d751856bab45e3702191f931ccd17"},
+ {file = "httptools-0.6.4-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:df017d6c780287d5c80601dafa31f17bddb170232d85c066604d8558683711a2"},
+ {file = "httptools-0.6.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:85071a1e8c2d051b507161f6c3e26155b5c790e4e28d7f236422dbacc2a9cc44"},
+ {file = "httptools-0.6.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69422b7f458c5af875922cdb5bd586cc1f1033295aa9ff63ee196a87519ac8e1"},
+ {file = "httptools-0.6.4-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:16e603a3bff50db08cd578d54f07032ca1631450ceb972c2f834c2b860c28ea2"},
+ {file = "httptools-0.6.4-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:ec4f178901fa1834d4a060320d2f3abc5c9e39766953d038f1458cb885f47e81"},
+ {file = "httptools-0.6.4-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:f9eb89ecf8b290f2e293325c646a211ff1c2493222798bb80a530c5e7502494f"},
+ {file = "httptools-0.6.4-cp312-cp312-win_amd64.whl", hash = "sha256:db78cb9ca56b59b016e64b6031eda5653be0589dba2b1b43453f6e8b405a0970"},
+ {file = "httptools-0.6.4-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:ade273d7e767d5fae13fa637f4d53b6e961fb7fd93c7797562663f0171c26660"},
+ {file = "httptools-0.6.4-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:856f4bc0478ae143bad54a4242fccb1f3f86a6e1be5548fecfd4102061b3a083"},
+ {file = "httptools-0.6.4-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:322d20ea9cdd1fa98bd6a74b77e2ec5b818abdc3d36695ab402a0de8ef2865a3"},
+ {file = "httptools-0.6.4-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4d87b29bd4486c0093fc64dea80231f7c7f7eb4dc70ae394d70a495ab8436071"},
+ {file = "httptools-0.6.4-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:342dd6946aa6bda4b8f18c734576106b8a31f2fe31492881a9a160ec84ff4bd5"},
+ {file = "httptools-0.6.4-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4b36913ba52008249223042dca46e69967985fb4051951f94357ea681e1f5dc0"},
+ {file = "httptools-0.6.4-cp313-cp313-win_amd64.whl", hash = "sha256:28908df1b9bb8187393d5b5db91435ccc9c8e891657f9cbb42a2541b44c82fc8"},
+ {file = "httptools-0.6.4-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:d3f0d369e7ffbe59c4b6116a44d6a8eb4783aae027f2c0b366cf0aa964185dba"},
+ {file = "httptools-0.6.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:94978a49b8f4569ad607cd4946b759d90b285e39c0d4640c6b36ca7a3ddf2efc"},
+ {file = "httptools-0.6.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:40dc6a8e399e15ea525305a2ddba998b0af5caa2566bcd79dcbe8948181eeaff"},
+ {file = "httptools-0.6.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab9ba8dcf59de5181f6be44a77458e45a578fc99c31510b8c65b7d5acc3cf490"},
+ {file = "httptools-0.6.4-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:fc411e1c0a7dcd2f902c7c48cf079947a7e65b5485dea9decb82b9105ca71a43"},
+ {file = "httptools-0.6.4-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:d54efd20338ac52ba31e7da78e4a72570cf729fac82bc31ff9199bedf1dc7440"},
+ {file = "httptools-0.6.4-cp38-cp38-win_amd64.whl", hash = "sha256:df959752a0c2748a65ab5387d08287abf6779ae9165916fe053e68ae1fbdc47f"},
+ {file = "httptools-0.6.4-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:85797e37e8eeaa5439d33e556662cc370e474445d5fab24dcadc65a8ffb04003"},
+ {file = "httptools-0.6.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:db353d22843cf1028f43c3651581e4bb49374d85692a85f95f7b9a130e1b2cab"},
+ {file = "httptools-0.6.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d1ffd262a73d7c28424252381a5b854c19d9de5f56f075445d33919a637e3547"},
+ {file = "httptools-0.6.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:703c346571fa50d2e9856a37d7cd9435a25e7fd15e236c397bf224afaa355fe9"},
+ {file = "httptools-0.6.4-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:aafe0f1918ed07b67c1e838f950b1c1fabc683030477e60b335649b8020e1076"},
+ {file = "httptools-0.6.4-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:0e563e54979e97b6d13f1bbc05a96109923e76b901f786a5eae36e99c01237bd"},
+ {file = "httptools-0.6.4-cp39-cp39-win_amd64.whl", hash = "sha256:b799de31416ecc589ad79dd85a0b2657a8fe39327944998dea368c1d4c9e55e6"},
+ {file = "httptools-0.6.4.tar.gz", hash = "sha256:4e93eee4add6493b59a5c514da98c939b244fce4a0d8879cd3f466562f4b7d5c"},
]
[package.extras]
-test = ["Cython (>=0.29.24,<0.30.0)"]
+test = ["Cython (>=0.29.24)"]
[[package]]
name = "httpx"
-version = "0.27.2"
+version = "0.28.1"
description = "The next generation HTTP client."
optional = false
python-versions = ">=3.8"
files = [
- {file = "httpx-0.27.2-py3-none-any.whl", hash = "sha256:7bb2708e112d8fdd7829cd4243970f0c223274051cb35ee80c03301ee29a3df0"},
- {file = "httpx-0.27.2.tar.gz", hash = "sha256:f7c2be1d2f3c3c3160d441802406b206c2b76f5947b11115e6df10c6c65e66c2"},
+ {file = "httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad"},
+ {file = "httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc"},
]
[package.dependencies]
@@ -1226,7 +1321,6 @@ anyio = "*"
certifi = "*"
httpcore = "==1.*"
idna = "*"
-sniffio = "*"
[package.extras]
brotli = ["brotli", "brotlicffi"]
@@ -1237,13 +1331,13 @@ zstd = ["zstandard (>=0.18.0)"]
[[package]]
name = "huggingface-hub"
-version = "0.24.6"
+version = "0.27.0"
description = "Client library to download and publish models, datasets and other repos on the huggingface.co hub"
optional = false
python-versions = ">=3.8.0"
files = [
- {file = "huggingface_hub-0.24.6-py3-none-any.whl", hash = "sha256:a990f3232aa985fe749bc9474060cbad75e8b2f115f6665a9fda5b9c97818970"},
- {file = "huggingface_hub-0.24.6.tar.gz", hash = "sha256:cc2579e761d070713eaa9c323e3debe39d5b464ae3a7261c39a9195b27bb8000"},
+ {file = "huggingface_hub-0.27.0-py3-none-any.whl", hash = "sha256:8f2e834517f1f1ddf1ecc716f91b120d7333011b7485f665a9a412eacb1a2a81"},
+ {file = "huggingface_hub-0.27.0.tar.gz", hash = "sha256:902cce1a1be5739f5589e560198a65a8edcfd3b830b1666f36e4b961f0454fac"},
]
[package.dependencies]
@@ -1256,16 +1350,16 @@ tqdm = ">=4.42.1"
typing-extensions = ">=3.7.4.3"
[package.extras]
-all = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio", "jedi", "minijinja (>=1.0)", "mypy (==1.5.1)", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.5.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"]
+all = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio (>=4.0.0)", "jedi", "libcst (==1.4.0)", "mypy (==1.5.1)", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.5.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"]
cli = ["InquirerPy (==0.3.4)"]
-dev = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio", "jedi", "minijinja (>=1.0)", "mypy (==1.5.1)", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.5.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"]
+dev = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio (>=4.0.0)", "jedi", "libcst (==1.4.0)", "mypy (==1.5.1)", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.5.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"]
fastai = ["fastai (>=2.4)", "fastcore (>=1.3.27)", "toml"]
hf-transfer = ["hf-transfer (>=0.1.4)"]
-inference = ["aiohttp", "minijinja (>=1.0)"]
-quality = ["mypy (==1.5.1)", "ruff (>=0.5.0)"]
+inference = ["aiohttp"]
+quality = ["libcst (==1.4.0)", "mypy (==1.5.1)", "ruff (>=0.5.0)"]
tensorflow = ["graphviz", "pydot", "tensorflow"]
tensorflow-testing = ["keras (<3.0)", "tensorflow"]
-testing = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio", "jedi", "minijinja (>=1.0)", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "soundfile", "urllib3 (<2.0)"]
+testing = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio (>=4.0.0)", "jedi", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "soundfile", "urllib3 (<2.0)"]
torch = ["safetensors[torch]", "torch"]
typing = ["types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)"]
@@ -1531,13 +1625,13 @@ test = ["pytest (>=7.4)", "pytest-cov (>=4.1)"]
[[package]]
name = "locust"
-version = "2.31.5"
+version = "2.32.4"
description = "Developer-friendly load testing framework"
optional = false
python-versions = ">=3.9"
files = [
- {file = "locust-2.31.5-py3-none-any.whl", hash = "sha256:2904ff6307d54d3202c9ebd776f9170214f6dfbe4059504dad9e3ffaca03f600"},
- {file = "locust-2.31.5.tar.gz", hash = "sha256:14b2fa6f95bf248668e6dc92d100a44f06c5dcb1c26f88a5442bcaaee18faceb"},
+ {file = "locust-2.32.4-py3-none-any.whl", hash = "sha256:7c5b8767c0d771b5167d5d6b82878622faead74f394eb9cafe8891d89eb36b97"},
+ {file = "locust-2.32.4.tar.gz", hash = "sha256:fd650cbc40842e721668a8d0f7f8224775432b40c63d0a378546b9a9f54b7559"},
]
[package.dependencies]
@@ -1545,7 +1639,10 @@ ConfigArgParse = ">=1.5.5"
flask = ">=2.0.0"
Flask-Cors = ">=3.0.10"
Flask-Login = ">=0.6.3"
-gevent = ">=22.10.2"
+gevent = [
+ {version = ">=22.10.2", markers = "python_full_version <= \"3.12.0\""},
+ {version = ">=24.10.1", markers = "python_full_version > \"3.13.0\""},
+]
geventhttpclient = ">=2.3.1"
msgpack = ">=1.0.0"
psutil = ">=5.9.1"
@@ -1555,6 +1652,7 @@ requests = [
{version = ">=2.26.0", markers = "python_full_version <= \"3.11.0\""},
{version = ">=2.32.2", markers = "python_full_version > \"3.11.0\""},
]
+setuptools = ">=70.0.0"
tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""}
typing_extensions = {version = ">=4.6.0", markers = "python_version < \"3.11\""}
Werkzeug = ">=2.0.0"
@@ -1795,38 +1893,43 @@ files = [
[[package]]
name = "mypy"
-version = "1.11.2"
+version = "1.13.0"
description = "Optional static typing for Python"
optional = false
python-versions = ">=3.8"
files = [
- {file = "mypy-1.11.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d42a6dd818ffce7be66cce644f1dff482f1d97c53ca70908dff0b9ddc120b77a"},
- {file = "mypy-1.11.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:801780c56d1cdb896eacd5619a83e427ce436d86a3bdf9112527f24a66618fef"},
- {file = "mypy-1.11.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:41ea707d036a5307ac674ea172875f40c9d55c5394f888b168033177fce47383"},
- {file = "mypy-1.11.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:6e658bd2d20565ea86da7d91331b0eed6d2eee22dc031579e6297f3e12c758c8"},
- {file = "mypy-1.11.2-cp310-cp310-win_amd64.whl", hash = "sha256:478db5f5036817fe45adb7332d927daa62417159d49783041338921dcf646fc7"},
- {file = "mypy-1.11.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:75746e06d5fa1e91bfd5432448d00d34593b52e7e91a187d981d08d1f33d4385"},
- {file = "mypy-1.11.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:a976775ab2256aadc6add633d44f100a2517d2388906ec4f13231fafbb0eccca"},
- {file = "mypy-1.11.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:cd953f221ac1379050a8a646585a29574488974f79d8082cedef62744f0a0104"},
- {file = "mypy-1.11.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:57555a7715c0a34421013144a33d280e73c08df70f3a18a552938587ce9274f4"},
- {file = "mypy-1.11.2-cp311-cp311-win_amd64.whl", hash = "sha256:36383a4fcbad95f2657642a07ba22ff797de26277158f1cc7bd234821468b1b6"},
- {file = "mypy-1.11.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:e8960dbbbf36906c5c0b7f4fbf2f0c7ffb20f4898e6a879fcf56a41a08b0d318"},
- {file = "mypy-1.11.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:06d26c277962f3fb50e13044674aa10553981ae514288cb7d0a738f495550b36"},
- {file = "mypy-1.11.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6e7184632d89d677973a14d00ae4d03214c8bc301ceefcdaf5c474866814c987"},
- {file = "mypy-1.11.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:3a66169b92452f72117e2da3a576087025449018afc2d8e9bfe5ffab865709ca"},
- {file = "mypy-1.11.2-cp312-cp312-win_amd64.whl", hash = "sha256:969ea3ef09617aff826885a22ece0ddef69d95852cdad2f60c8bb06bf1f71f70"},
- {file = "mypy-1.11.2-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:37c7fa6121c1cdfcaac97ce3d3b5588e847aa79b580c1e922bb5d5d2902df19b"},
- {file = "mypy-1.11.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4a8a53bc3ffbd161b5b2a4fff2f0f1e23a33b0168f1c0778ec70e1a3d66deb86"},
- {file = "mypy-1.11.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2ff93107f01968ed834f4256bc1fc4475e2fecf6c661260066a985b52741ddce"},
- {file = "mypy-1.11.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:edb91dded4df17eae4537668b23f0ff6baf3707683734b6a818d5b9d0c0c31a1"},
- {file = "mypy-1.11.2-cp38-cp38-win_amd64.whl", hash = "sha256:ee23de8530d99b6db0573c4ef4bd8f39a2a6f9b60655bf7a1357e585a3486f2b"},
- {file = "mypy-1.11.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:801ca29f43d5acce85f8e999b1e431fb479cb02d0e11deb7d2abb56bdaf24fd6"},
- {file = "mypy-1.11.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:af8d155170fcf87a2afb55b35dc1a0ac21df4431e7d96717621962e4b9192e70"},
- {file = "mypy-1.11.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f7821776e5c4286b6a13138cc935e2e9b6fde05e081bdebf5cdb2bb97c9df81d"},
- {file = "mypy-1.11.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:539c570477a96a4e6fb718b8d5c3e0c0eba1f485df13f86d2970c91f0673148d"},
- {file = "mypy-1.11.2-cp39-cp39-win_amd64.whl", hash = "sha256:3f14cd3d386ac4d05c5a39a51b84387403dadbd936e17cb35882134d4f8f0d24"},
- {file = "mypy-1.11.2-py3-none-any.whl", hash = "sha256:b499bc07dbdcd3de92b0a8b29fdf592c111276f6a12fe29c30f6c417dd546d12"},
- {file = "mypy-1.11.2.tar.gz", hash = "sha256:7f9993ad3e0ffdc95c2a14b66dee63729f021968bff8ad911867579c65d13a79"},
+ {file = "mypy-1.13.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6607e0f1dd1fb7f0aca14d936d13fd19eba5e17e1cd2a14f808fa5f8f6d8f60a"},
+ {file = "mypy-1.13.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8a21be69bd26fa81b1f80a61ee7ab05b076c674d9b18fb56239d72e21d9f4c80"},
+ {file = "mypy-1.13.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7b2353a44d2179846a096e25691d54d59904559f4232519d420d64da6828a3a7"},
+ {file = "mypy-1.13.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0730d1c6a2739d4511dc4253f8274cdd140c55c32dfb0a4cf8b7a43f40abfa6f"},
+ {file = "mypy-1.13.0-cp310-cp310-win_amd64.whl", hash = "sha256:c5fc54dbb712ff5e5a0fca797e6e0aa25726c7e72c6a5850cfd2adbc1eb0a372"},
+ {file = "mypy-1.13.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:581665e6f3a8a9078f28d5502f4c334c0c8d802ef55ea0e7276a6e409bc0d82d"},
+ {file = "mypy-1.13.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3ddb5b9bf82e05cc9a627e84707b528e5c7caaa1c55c69e175abb15a761cec2d"},
+ {file = "mypy-1.13.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:20c7ee0bc0d5a9595c46f38beb04201f2620065a93755704e141fcac9f59db2b"},
+ {file = "mypy-1.13.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3790ded76f0b34bc9c8ba4def8f919dd6a46db0f5a6610fb994fe8efdd447f73"},
+ {file = "mypy-1.13.0-cp311-cp311-win_amd64.whl", hash = "sha256:51f869f4b6b538229c1d1bcc1dd7d119817206e2bc54e8e374b3dfa202defcca"},
+ {file = "mypy-1.13.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:5c7051a3461ae84dfb5dd15eff5094640c61c5f22257c8b766794e6dd85e72d5"},
+ {file = "mypy-1.13.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:39bb21c69a5d6342f4ce526e4584bc5c197fd20a60d14a8624d8743fffb9472e"},
+ {file = "mypy-1.13.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:164f28cb9d6367439031f4c81e84d3ccaa1e19232d9d05d37cb0bd880d3f93c2"},
+ {file = "mypy-1.13.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a4c1bfcdbce96ff5d96fc9b08e3831acb30dc44ab02671eca5953eadad07d6d0"},
+ {file = "mypy-1.13.0-cp312-cp312-win_amd64.whl", hash = "sha256:a0affb3a79a256b4183ba09811e3577c5163ed06685e4d4b46429a271ba174d2"},
+ {file = "mypy-1.13.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a7b44178c9760ce1a43f544e595d35ed61ac2c3de306599fa59b38a6048e1aa7"},
+ {file = "mypy-1.13.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:5d5092efb8516d08440e36626f0153b5006d4088c1d663d88bf79625af3d1d62"},
+ {file = "mypy-1.13.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:de2904956dac40ced10931ac967ae63c5089bd498542194b436eb097a9f77bc8"},
+ {file = "mypy-1.13.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:7bfd8836970d33c2105562650656b6846149374dc8ed77d98424b40b09340ba7"},
+ {file = "mypy-1.13.0-cp313-cp313-win_amd64.whl", hash = "sha256:9f73dba9ec77acb86457a8fc04b5239822df0c14a082564737833d2963677dbc"},
+ {file = "mypy-1.13.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:100fac22ce82925f676a734af0db922ecfea991e1d7ec0ceb1e115ebe501301a"},
+ {file = "mypy-1.13.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:7bcb0bb7f42a978bb323a7c88f1081d1b5dee77ca86f4100735a6f541299d8fb"},
+ {file = "mypy-1.13.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bde31fc887c213e223bbfc34328070996061b0833b0a4cfec53745ed61f3519b"},
+ {file = "mypy-1.13.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:07de989f89786f62b937851295ed62e51774722e5444a27cecca993fc3f9cd74"},
+ {file = "mypy-1.13.0-cp38-cp38-win_amd64.whl", hash = "sha256:4bde84334fbe19bad704b3f5b78c4abd35ff1026f8ba72b29de70dda0916beb6"},
+ {file = "mypy-1.13.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:0246bcb1b5de7f08f2826451abd947bf656945209b140d16ed317f65a17dc7dc"},
+ {file = "mypy-1.13.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:7f5b7deae912cf8b77e990b9280f170381fdfbddf61b4ef80927edd813163732"},
+ {file = "mypy-1.13.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7029881ec6ffb8bc233a4fa364736789582c738217b133f1b55967115288a2bc"},
+ {file = "mypy-1.13.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3e38b980e5681f28f033f3be86b099a247b13c491f14bb8b1e1e134d23bb599d"},
+ {file = "mypy-1.13.0-cp39-cp39-win_amd64.whl", hash = "sha256:a6789be98a2017c912ae6ccb77ea553bbaf13d27605d2ca20a76dfbced631b24"},
+ {file = "mypy-1.13.0-py3-none-any.whl", hash = "sha256:9c250883f9fd81d212e0952c92dbfcc96fc237f4b7c92f56ac81fd48460b3e5a"},
+ {file = "mypy-1.13.0.tar.gz", hash = "sha256:0291a61b6fbf3e6673e3405cfcc0e7650bebc7939659fdca2702958038bd835e"},
]
[package.dependencies]
@@ -1836,6 +1939,7 @@ typing-extensions = ">=4.6.0"
[package.extras]
dmypy = ["psutil (>=4.0)"]
+faster-cache = ["orjson"]
install-types = ["pip"]
mypyc = ["setuptools (>=50)"]
reports = ["lxml"]
@@ -1963,36 +2067,32 @@ reference = ["Pillow", "google-re2"]
[[package]]
name = "onnxruntime"
-version = "1.19.2"
+version = "1.20.1"
description = "ONNX Runtime is a runtime accelerator for Machine Learning models"
optional = false
python-versions = "*"
files = [
- {file = "onnxruntime-1.19.2-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:84fa57369c06cadd3c2a538ae2a26d76d583e7c34bdecd5769d71ca5c0fc750e"},
- {file = "onnxruntime-1.19.2-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bdc471a66df0c1cdef774accef69e9f2ca168c851ab5e4f2f3341512c7ef4666"},
- {file = "onnxruntime-1.19.2-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:e3a4ce906105d99ebbe817f536d50a91ed8a4d1592553f49b3c23c4be2560ae6"},
- {file = "onnxruntime-1.19.2-cp310-cp310-win32.whl", hash = "sha256:4b3d723cc154c8ddeb9f6d0a8c0d6243774c6b5930847cc83170bfe4678fafb3"},
- {file = "onnxruntime-1.19.2-cp310-cp310-win_amd64.whl", hash = "sha256:17ed7382d2c58d4b7354fb2b301ff30b9bf308a1c7eac9546449cd122d21cae5"},
- {file = "onnxruntime-1.19.2-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:d863e8acdc7232d705d49e41087e10b274c42f09e259016a46f32c34e06dc4fd"},
- {file = "onnxruntime-1.19.2-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c1dfe4f660a71b31caa81fc298a25f9612815215a47b286236e61d540350d7b6"},
- {file = "onnxruntime-1.19.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a36511dc07c5c964b916697e42e366fa43c48cdb3d3503578d78cef30417cb84"},
- {file = "onnxruntime-1.19.2-cp311-cp311-win32.whl", hash = "sha256:50cbb8dc69d6befad4746a69760e5b00cc3ff0a59c6c3fb27f8afa20e2cab7e7"},
- {file = "onnxruntime-1.19.2-cp311-cp311-win_amd64.whl", hash = "sha256:1c3e5d415b78337fa0b1b75291e9ea9fb2a4c1f148eb5811e7212fed02cfffa8"},
- {file = "onnxruntime-1.19.2-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:68e7051bef9cfefcbb858d2d2646536829894d72a4130c24019219442b1dd2ed"},
- {file = "onnxruntime-1.19.2-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d2d366fbcc205ce68a8a3bde2185fd15c604d9645888703785b61ef174265168"},
- {file = "onnxruntime-1.19.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:477b93df4db467e9cbf34051662a4b27c18e131fa1836e05974eae0d6e4cf29b"},
- {file = "onnxruntime-1.19.2-cp312-cp312-win32.whl", hash = "sha256:9a174073dc5608fad05f7cf7f320b52e8035e73d80b0a23c80f840e5a97c0147"},
- {file = "onnxruntime-1.19.2-cp312-cp312-win_amd64.whl", hash = "sha256:190103273ea4507638ffc31d66a980594b237874b65379e273125150eb044857"},
- {file = "onnxruntime-1.19.2-cp38-cp38-macosx_11_0_universal2.whl", hash = "sha256:636bc1d4cc051d40bc52e1f9da87fbb9c57d9d47164695dfb1c41646ea51ea66"},
- {file = "onnxruntime-1.19.2-cp38-cp38-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5bd8b875757ea941cbcfe01582970cc299893d1b65bd56731e326a8333f638a3"},
- {file = "onnxruntime-1.19.2-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b2046fc9560f97947bbc1acbe4c6d48585ef0f12742744307d3364b131ac5778"},
- {file = "onnxruntime-1.19.2-cp38-cp38-win32.whl", hash = "sha256:31c12840b1cde4ac1f7d27d540c44e13e34f2345cf3642762d2a3333621abb6a"},
- {file = "onnxruntime-1.19.2-cp38-cp38-win_amd64.whl", hash = "sha256:016229660adea180e9a32ce218b95f8f84860a200f0f13b50070d7d90e92956c"},
- {file = "onnxruntime-1.19.2-cp39-cp39-macosx_11_0_universal2.whl", hash = "sha256:006c8d326835c017a9e9f74c9c77ebb570a71174a1e89fe078b29a557d9c3848"},
- {file = "onnxruntime-1.19.2-cp39-cp39-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:df2a94179a42d530b936f154615b54748239c2908ee44f0d722cb4df10670f68"},
- {file = "onnxruntime-1.19.2-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fae4b4de45894b9ce7ae418c5484cbf0341db6813effec01bb2216091c52f7fb"},
- {file = "onnxruntime-1.19.2-cp39-cp39-win32.whl", hash = "sha256:dc5430f473e8706fff837ae01323be9dcfddd3ea471c900a91fa7c9b807ec5d3"},
- {file = "onnxruntime-1.19.2-cp39-cp39-win_amd64.whl", hash = "sha256:38475e29a95c5f6c62c2c603d69fc7d4c6ccbf4df602bd567b86ae1138881c49"},
+ {file = "onnxruntime-1.20.1-cp310-cp310-macosx_13_0_universal2.whl", hash = "sha256:e50ba5ff7fed4f7d9253a6baf801ca2883cc08491f9d32d78a80da57256a5439"},
+ {file = "onnxruntime-1.20.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:7b2908b50101a19e99c4d4e97ebb9905561daf61829403061c1adc1b588bc0de"},
+ {file = "onnxruntime-1.20.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d82daaec24045a2e87598b8ac2b417b1cce623244e80e663882e9fe1aae86410"},
+ {file = "onnxruntime-1.20.1-cp310-cp310-win32.whl", hash = "sha256:4c4b251a725a3b8cf2aab284f7d940c26094ecd9d442f07dd81ab5470e99b83f"},
+ {file = "onnxruntime-1.20.1-cp310-cp310-win_amd64.whl", hash = "sha256:d3b616bb53a77a9463707bb313637223380fc327f5064c9a782e8ec69c22e6a2"},
+ {file = "onnxruntime-1.20.1-cp311-cp311-macosx_13_0_universal2.whl", hash = "sha256:06bfbf02ca9ab5f28946e0f912a562a5f005301d0c419283dc57b3ed7969bb7b"},
+ {file = "onnxruntime-1.20.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f6243e34d74423bdd1edf0ae9596dd61023b260f546ee17d701723915f06a9f7"},
+ {file = "onnxruntime-1.20.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5eec64c0269dcdb8d9a9a53dc4d64f87b9e0c19801d9321246a53b7eb5a7d1bc"},
+ {file = "onnxruntime-1.20.1-cp311-cp311-win32.whl", hash = "sha256:a19bc6e8c70e2485a1725b3d517a2319603acc14c1f1a017dda0afe6d4665b41"},
+ {file = "onnxruntime-1.20.1-cp311-cp311-win_amd64.whl", hash = "sha256:8508887eb1c5f9537a4071768723ec7c30c28eb2518a00d0adcd32c89dea3221"},
+ {file = "onnxruntime-1.20.1-cp312-cp312-macosx_13_0_universal2.whl", hash = "sha256:22b0655e2bf4f2161d52706e31f517a0e54939dc393e92577df51808a7edc8c9"},
+ {file = "onnxruntime-1.20.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f1f56e898815963d6dc4ee1c35fc6c36506466eff6d16f3cb9848cea4e8c8172"},
+ {file = "onnxruntime-1.20.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bb71a814f66517a65628c9e4a2bb530a6edd2cd5d87ffa0af0f6f773a027d99e"},
+ {file = "onnxruntime-1.20.1-cp312-cp312-win32.whl", hash = "sha256:bd386cc9ee5f686ee8a75ba74037750aca55183085bf1941da8efcfe12d5b120"},
+ {file = "onnxruntime-1.20.1-cp312-cp312-win_amd64.whl", hash = "sha256:19c2d843eb074f385e8bbb753a40df780511061a63f9def1b216bf53860223fb"},
+ {file = "onnxruntime-1.20.1-cp313-cp313-macosx_13_0_universal2.whl", hash = "sha256:cc01437a32d0042b606f462245c8bbae269e5442797f6213e36ce61d5abdd8cc"},
+ {file = "onnxruntime-1.20.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fb44b08e017a648924dbe91b82d89b0c105b1adcfe31e90d1dc06b8677ad37be"},
+ {file = "onnxruntime-1.20.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bda6aebdf7917c1d811f21d41633df00c58aff2bef2f598f69289c1f1dabc4b3"},
+ {file = "onnxruntime-1.20.1-cp313-cp313-win_amd64.whl", hash = "sha256:d30367df7e70f1d9fc5a6a68106f5961686d39b54d3221f760085524e8d38e16"},
+ {file = "onnxruntime-1.20.1-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c9158465745423b2b5d97ed25aa7740c7d38d2993ee2e5c3bfacb0c4145c49d8"},
+ {file = "onnxruntime-1.20.1-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0df6f2df83d61f46e842dbcde610ede27218947c33e994545a22333491e72a3b"},
]
[package.dependencies]
@@ -2005,27 +2105,27 @@ sympy = "*"
[[package]]
name = "onnxruntime-gpu"
-version = "1.18.1"
+version = "1.19.2"
description = "ONNX Runtime is a runtime accelerator for Machine Learning models"
optional = false
python-versions = "*"
files = [
- {file = "onnxruntime_gpu-1.18.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4e9a52f5d43a84fe29e135da6bf10daa18836c81bed9060a5924efd6afc0d259"},
- {file = "onnxruntime_gpu-1.18.1-cp310-cp310-win_amd64.whl", hash = "sha256:e7c1c665e8a11a5cf15369948b04288dc0a6812ad2e6beaff93a3d157c864d9a"},
- {file = "onnxruntime_gpu-1.18.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1334f802cb1e4e2eb6ceebc4ef71ba44f3ef444d34216baafb940368a7a5d2f5"},
- {file = "onnxruntime_gpu-1.18.1-cp311-cp311-win_amd64.whl", hash = "sha256:0ffcc711e89b80c935d5172544f8a605b11525fc1e6f0e78ee79e2c28956e2d9"},
- {file = "onnxruntime_gpu-1.18.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bbb1a6c986b2392eebaebc43e198a1614e3f7d2c191725002dbfa0dceb24454b"},
- {file = "onnxruntime_gpu-1.18.1-cp312-cp312-win_amd64.whl", hash = "sha256:bee352929e6eec2ff4e11e323a025ed8bd5eac24795005bc502ac740971fa7bd"},
- {file = "onnxruntime_gpu-1.18.1-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:76d307a849a863d0457869febe4b2fd2fc07c7f26385c7339d17066312fa6be0"},
- {file = "onnxruntime_gpu-1.18.1-cp38-cp38-win_amd64.whl", hash = "sha256:b7498d6c64a03558308ce6d7d14dab306ea90d1204b563890c4d2d26c1b520f0"},
- {file = "onnxruntime_gpu-1.18.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8a1d8113cb4b8a51b195fae91cfeb6849728462a4b46aaf51b6764c44e54f81f"},
- {file = "onnxruntime_gpu-1.18.1-cp39-cp39-win_amd64.whl", hash = "sha256:fc1d2544a39f5db64c5b8a0c24d0b934d7d64682e6d70763eb2cc726b1fd6c3f"},
+ {file = "onnxruntime_gpu-1.19.2-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a49740e079e7c5215830d30cde3df792e903df007aa0b0fd7aa797937061b27a"},
+ {file = "onnxruntime_gpu-1.19.2-cp310-cp310-win_amd64.whl", hash = "sha256:b895920bb5e4241299f68874e0becdc2635ea0142939c11e7ff5ae5b28993613"},
+ {file = "onnxruntime_gpu-1.19.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:562fc7c755393eaad9751e56149339dd201ffbfdb3ef5f43ff21d0619ba9045f"},
+ {file = "onnxruntime_gpu-1.19.2-cp311-cp311-win_amd64.whl", hash = "sha256:522f7495918176cb8c1a3c78bde7152d984f7096acc786c73a27643af8af87c9"},
+ {file = "onnxruntime_gpu-1.19.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:554a02a3fac0119707eb87327908afd21c4e6f0fa5bf9a034398f098adc316c5"},
+ {file = "onnxruntime_gpu-1.19.2-cp312-cp312-win_amd64.whl", hash = "sha256:e7c6165a405027e3c0f11d189ae7013b5d66919b3381f9bfb3405c0c0cf07968"},
+ {file = "onnxruntime_gpu-1.19.2-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:b4a8562e1e6f1912870c60bfaf8233c82b86e5b93ae39f211b650ac0f2015430"},
+ {file = "onnxruntime_gpu-1.19.2-cp38-cp38-win_amd64.whl", hash = "sha256:55505c99e18688a7c68fdc811ed6e7a315aa36f543b33920c77d03a627d2c3f5"},
+ {file = "onnxruntime_gpu-1.19.2-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c9e369f01f55ea726ae5d28f18236426e52e97c433f0b7682054e61c478a06c9"},
+ {file = "onnxruntime_gpu-1.19.2-cp39-cp39-win_amd64.whl", hash = "sha256:c8b8128174b0470537e9f4983aeecc002a435d13914970c2af2f41d244ef2781"},
]
[package.dependencies]
coloredlogs = "*"
flatbuffers = "*"
-numpy = ">=1.21.6,<2.0"
+numpy = ">=1.21.6"
packaging = "*"
protobuf = "*"
sympy = "*"
@@ -2083,68 +2183,86 @@ numpy = [
[[package]]
name = "orjson"
-version = "3.10.7"
+version = "3.10.12"
description = "Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy"
optional = false
python-versions = ">=3.8"
files = [
- {file = "orjson-3.10.7-cp310-cp310-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:74f4544f5a6405b90da8ea724d15ac9c36da4d72a738c64685003337401f5c12"},
- {file = "orjson-3.10.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:34a566f22c28222b08875b18b0dfbf8a947e69df21a9ed5c51a6bf91cfb944ac"},
- {file = "orjson-3.10.7-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bf6ba8ebc8ef5792e2337fb0419f8009729335bb400ece005606336b7fd7bab7"},
- {file = "orjson-3.10.7-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ac7cf6222b29fbda9e3a472b41e6a5538b48f2c8f99261eecd60aafbdb60690c"},
- {file = "orjson-3.10.7-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:de817e2f5fc75a9e7dd350c4b0f54617b280e26d1631811a43e7e968fa71e3e9"},
- {file = "orjson-3.10.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:348bdd16b32556cf8d7257b17cf2bdb7ab7976af4af41ebe79f9796c218f7e91"},
- {file = "orjson-3.10.7-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:479fd0844ddc3ca77e0fd99644c7fe2de8e8be1efcd57705b5c92e5186e8a250"},
- {file = "orjson-3.10.7-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:fdf5197a21dd660cf19dfd2a3ce79574588f8f5e2dbf21bda9ee2d2b46924d84"},
- {file = "orjson-3.10.7-cp310-none-win32.whl", hash = "sha256:d374d36726746c81a49f3ff8daa2898dccab6596864ebe43d50733275c629175"},
- {file = "orjson-3.10.7-cp310-none-win_amd64.whl", hash = "sha256:cb61938aec8b0ffb6eef484d480188a1777e67b05d58e41b435c74b9d84e0b9c"},
- {file = "orjson-3.10.7-cp311-cp311-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:7db8539039698ddfb9a524b4dd19508256107568cdad24f3682d5773e60504a2"},
- {file = "orjson-3.10.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:480f455222cb7a1dea35c57a67578848537d2602b46c464472c995297117fa09"},
- {file = "orjson-3.10.7-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8a9c9b168b3a19e37fe2778c0003359f07822c90fdff8f98d9d2a91b3144d8e0"},
- {file = "orjson-3.10.7-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8de062de550f63185e4c1c54151bdddfc5625e37daf0aa1e75d2a1293e3b7d9a"},
- {file = "orjson-3.10.7-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6b0dd04483499d1de9c8f6203f8975caf17a6000b9c0c54630cef02e44ee624e"},
- {file = "orjson-3.10.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b58d3795dafa334fc8fd46f7c5dc013e6ad06fd5b9a4cc98cb1456e7d3558bd6"},
- {file = "orjson-3.10.7-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:33cfb96c24034a878d83d1a9415799a73dc77480e6c40417e5dda0710d559ee6"},
- {file = "orjson-3.10.7-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:e724cebe1fadc2b23c6f7415bad5ee6239e00a69f30ee423f319c6af70e2a5c0"},
- {file = "orjson-3.10.7-cp311-none-win32.whl", hash = "sha256:82763b46053727a7168d29c772ed5c870fdae2f61aa8a25994c7984a19b1021f"},
- {file = "orjson-3.10.7-cp311-none-win_amd64.whl", hash = "sha256:eb8d384a24778abf29afb8e41d68fdd9a156cf6e5390c04cc07bbc24b89e98b5"},
- {file = "orjson-3.10.7-cp312-cp312-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:44a96f2d4c3af51bfac6bc4ef7b182aa33f2f054fd7f34cc0ee9a320d051d41f"},
- {file = "orjson-3.10.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76ac14cd57df0572453543f8f2575e2d01ae9e790c21f57627803f5e79b0d3c3"},
- {file = "orjson-3.10.7-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bdbb61dcc365dd9be94e8f7df91975edc9364d6a78c8f7adb69c1cdff318ec93"},
- {file = "orjson-3.10.7-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b48b3db6bb6e0a08fa8c83b47bc169623f801e5cc4f24442ab2b6617da3b5313"},
- {file = "orjson-3.10.7-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:23820a1563a1d386414fef15c249040042b8e5d07b40ab3fe3efbfbbcbcb8864"},
- {file = "orjson-3.10.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a0c6a008e91d10a2564edbb6ee5069a9e66df3fbe11c9a005cb411f441fd2c09"},
- {file = "orjson-3.10.7-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:d352ee8ac1926d6193f602cbe36b1643bbd1bbcb25e3c1a657a4390f3000c9a5"},
- {file = "orjson-3.10.7-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:d2d9f990623f15c0ae7ac608103c33dfe1486d2ed974ac3f40b693bad1a22a7b"},
- {file = "orjson-3.10.7-cp312-none-win32.whl", hash = "sha256:7c4c17f8157bd520cdb7195f75ddbd31671997cbe10aee559c2d613592e7d7eb"},
- {file = "orjson-3.10.7-cp312-none-win_amd64.whl", hash = "sha256:1d9c0e733e02ada3ed6098a10a8ee0052dd55774de3d9110d29868d24b17faa1"},
- {file = "orjson-3.10.7-cp313-cp313-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:77d325ed866876c0fa6492598ec01fe30e803272a6e8b10e992288b009cbe149"},
- {file = "orjson-3.10.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9ea2c232deedcb605e853ae1db2cc94f7390ac776743b699b50b071b02bea6fe"},
- {file = "orjson-3.10.7-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:3dcfbede6737fdbef3ce9c37af3fb6142e8e1ebc10336daa05872bfb1d87839c"},
- {file = "orjson-3.10.7-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:11748c135f281203f4ee695b7f80bb1358a82a63905f9f0b794769483ea854ad"},
- {file = "orjson-3.10.7-cp313-none-win32.whl", hash = "sha256:a7e19150d215c7a13f39eb787d84db274298d3f83d85463e61d277bbd7f401d2"},
- {file = "orjson-3.10.7-cp313-none-win_amd64.whl", hash = "sha256:eef44224729e9525d5261cc8d28d6b11cafc90e6bd0be2157bde69a52ec83024"},
- {file = "orjson-3.10.7-cp38-cp38-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:6ea2b2258eff652c82652d5e0f02bd5e0463a6a52abb78e49ac288827aaa1469"},
- {file = "orjson-3.10.7-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:430ee4d85841e1483d487e7b81401785a5dfd69db5de01314538f31f8fbf7ee1"},
- {file = "orjson-3.10.7-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4b6146e439af4c2472c56f8540d799a67a81226e11992008cb47e1267a9b3225"},
- {file = "orjson-3.10.7-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:084e537806b458911137f76097e53ce7bf5806dda33ddf6aaa66a028f8d43a23"},
- {file = "orjson-3.10.7-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4829cf2195838e3f93b70fd3b4292156fc5e097aac3739859ac0dcc722b27ac0"},
- {file = "orjson-3.10.7-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1193b2416cbad1a769f868b1749535d5da47626ac29445803dae7cc64b3f5c98"},
- {file = "orjson-3.10.7-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:4e6c3da13e5a57e4b3dca2de059f243ebec705857522f188f0180ae88badd354"},
- {file = "orjson-3.10.7-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:c31008598424dfbe52ce8c5b47e0752dca918a4fdc4a2a32004efd9fab41d866"},
- {file = "orjson-3.10.7-cp38-none-win32.whl", hash = "sha256:7122a99831f9e7fe977dc45784d3b2edc821c172d545e6420c375e5a935f5a1c"},
- {file = "orjson-3.10.7-cp38-none-win_amd64.whl", hash = "sha256:a763bc0e58504cc803739e7df040685816145a6f3c8a589787084b54ebc9f16e"},
- {file = "orjson-3.10.7-cp39-cp39-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:e76be12658a6fa376fcd331b1ea4e58f5a06fd0220653450f0d415b8fd0fbe20"},
- {file = "orjson-3.10.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ed350d6978d28b92939bfeb1a0570c523f6170efc3f0a0ef1f1df287cd4f4960"},
- {file = "orjson-3.10.7-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:144888c76f8520e39bfa121b31fd637e18d4cc2f115727865fdf9fa325b10412"},
- {file = "orjson-3.10.7-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:09b2d92fd95ad2402188cf51573acde57eb269eddabaa60f69ea0d733e789fe9"},
- {file = "orjson-3.10.7-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5b24a579123fa884f3a3caadaed7b75eb5715ee2b17ab5c66ac97d29b18fe57f"},
- {file = "orjson-3.10.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e72591bcfe7512353bd609875ab38050efe3d55e18934e2f18950c108334b4ff"},
- {file = "orjson-3.10.7-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:f4db56635b58cd1a200b0a23744ff44206ee6aa428185e2b6c4a65b3197abdcd"},
- {file = "orjson-3.10.7-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:0fa5886854673222618638c6df7718ea7fe2f3f2384c452c9ccedc70b4a510a5"},
- {file = "orjson-3.10.7-cp39-none-win32.whl", hash = "sha256:8272527d08450ab16eb405f47e0f4ef0e5ff5981c3d82afe0efd25dcbef2bcd2"},
- {file = "orjson-3.10.7-cp39-none-win_amd64.whl", hash = "sha256:974683d4618c0c7dbf4f69c95a979734bf183d0658611760017f6e70a145af58"},
- {file = "orjson-3.10.7.tar.gz", hash = "sha256:75ef0640403f945f3a1f9f6400686560dbfb0fb5b16589ad62cd477043c4eee3"},
+ {file = "orjson-3.10.12-cp310-cp310-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:ece01a7ec71d9940cc654c482907a6b65df27251255097629d0dea781f255c6d"},
+ {file = "orjson-3.10.12-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c34ec9aebc04f11f4b978dd6caf697a2df2dd9b47d35aa4cc606cabcb9df69d7"},
+ {file = "orjson-3.10.12-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fd6ec8658da3480939c79b9e9e27e0db31dffcd4ba69c334e98c9976ac29140e"},
+ {file = "orjson-3.10.12-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f17e6baf4cf01534c9de8a16c0c611f3d94925d1701bf5f4aff17003677d8ced"},
+ {file = "orjson-3.10.12-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6402ebb74a14ef96f94a868569f5dccf70d791de49feb73180eb3c6fda2ade56"},
+ {file = "orjson-3.10.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0000758ae7c7853e0a4a6063f534c61656ebff644391e1f81698c1b2d2fc8cd2"},
+ {file = "orjson-3.10.12-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:888442dcee99fd1e5bd37a4abb94930915ca6af4db50e23e746cdf4d1e63db13"},
+ {file = "orjson-3.10.12-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:c1f7a3ce79246aa0e92f5458d86c54f257fb5dfdc14a192651ba7ec2c00f8a05"},
+ {file = "orjson-3.10.12-cp310-cp310-musllinux_1_2_armv7l.whl", hash = "sha256:802a3935f45605c66fb4a586488a38af63cb37aaad1c1d94c982c40dcc452e85"},
+ {file = "orjson-3.10.12-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:1da1ef0113a2be19bb6c557fb0ec2d79c92ebd2fed4cfb1b26bab93f021fb885"},
+ {file = "orjson-3.10.12-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:7a3273e99f367f137d5b3fecb5e9f45bcdbfac2a8b2f32fbc72129bbd48789c2"},
+ {file = "orjson-3.10.12-cp310-none-win32.whl", hash = "sha256:475661bf249fd7907d9b0a2a2421b4e684355a77ceef85b8352439a9163418c3"},
+ {file = "orjson-3.10.12-cp310-none-win_amd64.whl", hash = "sha256:87251dc1fb2b9e5ab91ce65d8f4caf21910d99ba8fb24b49fd0c118b2362d509"},
+ {file = "orjson-3.10.12-cp311-cp311-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:a734c62efa42e7df94926d70fe7d37621c783dea9f707a98cdea796964d4cf74"},
+ {file = "orjson-3.10.12-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:750f8b27259d3409eda8350c2919a58b0cfcd2054ddc1bd317a643afc646ef23"},
+ {file = "orjson-3.10.12-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bb52c22bfffe2857e7aa13b4622afd0dd9d16ea7cc65fd2bf318d3223b1b6252"},
+ {file = "orjson-3.10.12-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:440d9a337ac8c199ff8251e100c62e9488924c92852362cd27af0e67308c16ef"},
+ {file = "orjson-3.10.12-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a9e15c06491c69997dfa067369baab3bf094ecb74be9912bdc4339972323f252"},
+ {file = "orjson-3.10.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:362d204ad4b0b8724cf370d0cd917bb2dc913c394030da748a3bb632445ce7c4"},
+ {file = "orjson-3.10.12-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2b57cbb4031153db37b41622eac67329c7810e5f480fda4cfd30542186f006ae"},
+ {file = "orjson-3.10.12-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:165c89b53ef03ce0d7c59ca5c82fa65fe13ddf52eeb22e859e58c237d4e33b9b"},
+ {file = "orjson-3.10.12-cp311-cp311-musllinux_1_2_armv7l.whl", hash = "sha256:5dee91b8dfd54557c1a1596eb90bcd47dbcd26b0baaed919e6861f076583e9da"},
+ {file = "orjson-3.10.12-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:77a4e1cfb72de6f905bdff061172adfb3caf7a4578ebf481d8f0530879476c07"},
+ {file = "orjson-3.10.12-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:038d42c7bc0606443459b8fe2d1f121db474c49067d8d14c6a075bbea8bf14dd"},
+ {file = "orjson-3.10.12-cp311-none-win32.whl", hash = "sha256:03b553c02ab39bed249bedd4abe37b2118324d1674e639b33fab3d1dafdf4d79"},
+ {file = "orjson-3.10.12-cp311-none-win_amd64.whl", hash = "sha256:8b8713b9e46a45b2af6b96f559bfb13b1e02006f4242c156cbadef27800a55a8"},
+ {file = "orjson-3.10.12-cp312-cp312-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:53206d72eb656ca5ac7d3a7141e83c5bbd3ac30d5eccfe019409177a57634b0d"},
+ {file = "orjson-3.10.12-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ac8010afc2150d417ebda810e8df08dd3f544e0dd2acab5370cfa6bcc0662f8f"},
+ {file = "orjson-3.10.12-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ed459b46012ae950dd2e17150e838ab08215421487371fa79d0eced8d1461d70"},
+ {file = "orjson-3.10.12-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8dcb9673f108a93c1b52bfc51b0af422c2d08d4fc710ce9c839faad25020bb69"},
+ {file = "orjson-3.10.12-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:22a51ae77680c5c4652ebc63a83d5255ac7d65582891d9424b566fb3b5375ee9"},
+ {file = "orjson-3.10.12-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:910fdf2ac0637b9a77d1aad65f803bac414f0b06f720073438a7bd8906298192"},
+ {file = "orjson-3.10.12-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:24ce85f7100160936bc2116c09d1a8492639418633119a2224114f67f63a4559"},
+ {file = "orjson-3.10.12-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8a76ba5fc8dd9c913640292df27bff80a685bed3a3c990d59aa6ce24c352f8fc"},
+ {file = "orjson-3.10.12-cp312-cp312-musllinux_1_2_armv7l.whl", hash = "sha256:ff70ef093895fd53f4055ca75f93f047e088d1430888ca1229393a7c0521100f"},
+ {file = "orjson-3.10.12-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:f4244b7018b5753ecd10a6d324ec1f347da130c953a9c88432c7fbc8875d13be"},
+ {file = "orjson-3.10.12-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:16135ccca03445f37921fa4b585cff9a58aa8d81ebcb27622e69bfadd220b32c"},
+ {file = "orjson-3.10.12-cp312-none-win32.whl", hash = "sha256:2d879c81172d583e34153d524fcba5d4adafbab8349a7b9f16ae511c2cee8708"},
+ {file = "orjson-3.10.12-cp312-none-win_amd64.whl", hash = "sha256:fc23f691fa0f5c140576b8c365bc942d577d861a9ee1142e4db468e4e17094fb"},
+ {file = "orjson-3.10.12-cp313-cp313-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:47962841b2a8aa9a258b377f5188db31ba49af47d4003a32f55d6f8b19006543"},
+ {file = "orjson-3.10.12-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6334730e2532e77b6054e87ca84f3072bee308a45a452ea0bffbbbc40a67e296"},
+ {file = "orjson-3.10.12-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:accfe93f42713c899fdac2747e8d0d5c659592df2792888c6c5f829472e4f85e"},
+ {file = "orjson-3.10.12-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a7974c490c014c48810d1dede6c754c3cc46598da758c25ca3b4001ac45b703f"},
+ {file = "orjson-3.10.12-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:3f250ce7727b0b2682f834a3facff88e310f52f07a5dcfd852d99637d386e79e"},
+ {file = "orjson-3.10.12-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:f31422ff9486ae484f10ffc51b5ab2a60359e92d0716fcce1b3593d7bb8a9af6"},
+ {file = "orjson-3.10.12-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5f29c5d282bb2d577c2a6bbde88d8fdcc4919c593f806aac50133f01b733846e"},
+ {file = "orjson-3.10.12-cp313-none-win32.whl", hash = "sha256:f45653775f38f63dc0e6cd4f14323984c3149c05d6007b58cb154dd080ddc0dc"},
+ {file = "orjson-3.10.12-cp313-none-win_amd64.whl", hash = "sha256:229994d0c376d5bdc91d92b3c9e6be2f1fbabd4cc1b59daae1443a46ee5e9825"},
+ {file = "orjson-3.10.12-cp38-cp38-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:7d69af5b54617a5fac5c8e5ed0859eb798e2ce8913262eb522590239db6c6763"},
+ {file = "orjson-3.10.12-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7ed119ea7d2953365724a7059231a44830eb6bbb0cfead33fcbc562f5fd8f935"},
+ {file = "orjson-3.10.12-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9c5fc1238ef197e7cad5c91415f524aaa51e004be5a9b35a1b8a84ade196f73f"},
+ {file = "orjson-3.10.12-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:43509843990439b05f848539d6f6198d4ac86ff01dd024b2f9a795c0daeeab60"},
+ {file = "orjson-3.10.12-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f72e27a62041cfb37a3de512247ece9f240a561e6c8662276beaf4d53d406db4"},
+ {file = "orjson-3.10.12-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9a904f9572092bb6742ab7c16c623f0cdccbad9eeb2d14d4aa06284867bddd31"},
+ {file = "orjson-3.10.12-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:855c0833999ed5dc62f64552db26f9be767434917d8348d77bacaab84f787d7b"},
+ {file = "orjson-3.10.12-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:897830244e2320f6184699f598df7fb9db9f5087d6f3f03666ae89d607e4f8ed"},
+ {file = "orjson-3.10.12-cp38-cp38-musllinux_1_2_armv7l.whl", hash = "sha256:0b32652eaa4a7539f6f04abc6243619c56f8530c53bf9b023e1269df5f7816dd"},
+ {file = "orjson-3.10.12-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:36b4aa31e0f6a1aeeb6f8377769ca5d125db000f05c20e54163aef1d3fe8e833"},
+ {file = "orjson-3.10.12-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:5535163054d6cbf2796f93e4f0dbc800f61914c0e3c4ed8499cf6ece22b4a3da"},
+ {file = "orjson-3.10.12-cp38-none-win32.whl", hash = "sha256:90a5551f6f5a5fa07010bf3d0b4ca2de21adafbbc0af6cb700b63cd767266cb9"},
+ {file = "orjson-3.10.12-cp38-none-win_amd64.whl", hash = "sha256:703a2fb35a06cdd45adf5d733cf613cbc0cb3ae57643472b16bc22d325b5fb6c"},
+ {file = "orjson-3.10.12-cp39-cp39-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:f29de3ef71a42a5822765def1febfb36e0859d33abf5c2ad240acad5c6a1b78d"},
+ {file = "orjson-3.10.12-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:de365a42acc65d74953f05e4772c974dad6c51cfc13c3240899f534d611be967"},
+ {file = "orjson-3.10.12-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:91a5a0158648a67ff0004cb0df5df7dcc55bfc9ca154d9c01597a23ad54c8d0c"},
+ {file = "orjson-3.10.12-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c47ce6b8d90fe9646a25b6fb52284a14ff215c9595914af63a5933a49972ce36"},
+ {file = "orjson-3.10.12-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0eee4c2c5bfb5c1b47a5db80d2ac7aaa7e938956ae88089f098aff2c0f35d5d8"},
+ {file = "orjson-3.10.12-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:35d3081bbe8b86587eb5c98a73b97f13d8f9fea685cf91a579beddacc0d10566"},
+ {file = "orjson-3.10.12-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:73c23a6e90383884068bc2dba83d5222c9fcc3b99a0ed2411d38150734236755"},
+ {file = "orjson-3.10.12-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:5472be7dc3269b4b52acba1433dac239215366f89dc1d8d0e64029abac4e714e"},
+ {file = "orjson-3.10.12-cp39-cp39-musllinux_1_2_armv7l.whl", hash = "sha256:7319cda750fca96ae5973efb31b17d97a5c5225ae0bc79bf5bf84df9e1ec2ab6"},
+ {file = "orjson-3.10.12-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:74d5ca5a255bf20b8def6a2b96b1e18ad37b4a122d59b154c458ee9494377f80"},
+ {file = "orjson-3.10.12-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:ff31d22ecc5fb85ef62c7d4afe8301d10c558d00dd24274d4bbe464380d3cd69"},
+ {file = "orjson-3.10.12-cp39-none-win32.whl", hash = "sha256:c22c3ea6fba91d84fcb4cda30e64aff548fcf0c44c876e681f47d61d24b12e6b"},
+ {file = "orjson-3.10.12-cp39-none-win_amd64.whl", hash = "sha256:be604f60d45ace6b0b33dd990a66b4526f1a7a186ac411c942674625456ca548"},
+ {file = "orjson-3.10.12.tar.gz", hash = "sha256:0a78bbda3aea0f9f079057ee1ee8a1ecf790d4f1af88dd67493c6b8ee52506ff"},
]
[[package]]
@@ -2374,62 +2492,155 @@ files = [
[[package]]
name = "pydantic"
-version = "1.10.18"
-description = "Data validation and settings management using python type hints"
+version = "2.10.4"
+description = "Data validation using Python type hints"
optional = false
-python-versions = ">=3.7"
+python-versions = ">=3.8"
files = [
- {file = "pydantic-1.10.18-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e405ffcc1254d76bb0e760db101ee8916b620893e6edfbfee563b3c6f7a67c02"},
- {file = "pydantic-1.10.18-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e306e280ebebc65040034bff1a0a81fd86b2f4f05daac0131f29541cafd80b80"},
- {file = "pydantic-1.10.18-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11d9d9b87b50338b1b7de4ebf34fd29fdb0d219dc07ade29effc74d3d2609c62"},
- {file = "pydantic-1.10.18-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b661ce52c7b5e5f600c0c3c5839e71918346af2ef20062705ae76b5c16914cab"},
- {file = "pydantic-1.10.18-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c20f682defc9ef81cd7eaa485879ab29a86a0ba58acf669a78ed868e72bb89e0"},
- {file = "pydantic-1.10.18-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:c5ae6b7c8483b1e0bf59e5f1843e4fd8fd405e11df7de217ee65b98eb5462861"},
- {file = "pydantic-1.10.18-cp310-cp310-win_amd64.whl", hash = "sha256:74fe19dda960b193b0eb82c1f4d2c8e5e26918d9cda858cbf3f41dd28549cb70"},
- {file = "pydantic-1.10.18-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:72fa46abace0a7743cc697dbb830a41ee84c9db8456e8d77a46d79b537efd7ec"},
- {file = "pydantic-1.10.18-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:ef0fe7ad7cbdb5f372463d42e6ed4ca9c443a52ce544472d8842a0576d830da5"},
- {file = "pydantic-1.10.18-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a00e63104346145389b8e8f500bc6a241e729feaf0559b88b8aa513dd2065481"},
- {file = "pydantic-1.10.18-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae6fa2008e1443c46b7b3a5eb03800121868d5ab6bc7cda20b5df3e133cde8b3"},
- {file = "pydantic-1.10.18-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:9f463abafdc92635da4b38807f5b9972276be7c8c5121989768549fceb8d2588"},
- {file = "pydantic-1.10.18-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3445426da503c7e40baccefb2b2989a0c5ce6b163679dd75f55493b460f05a8f"},
- {file = "pydantic-1.10.18-cp311-cp311-win_amd64.whl", hash = "sha256:467a14ee2183bc9c902579bb2f04c3d3dac00eff52e252850509a562255b2a33"},
- {file = "pydantic-1.10.18-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:efbc8a7f9cb5fe26122acba1852d8dcd1e125e723727c59dcd244da7bdaa54f2"},
- {file = "pydantic-1.10.18-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:24a4a159d0f7a8e26bf6463b0d3d60871d6a52eac5bb6a07a7df85c806f4c048"},
- {file = "pydantic-1.10.18-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b74be007703547dc52e3c37344d130a7bfacca7df112a9e5ceeb840a9ce195c7"},
- {file = "pydantic-1.10.18-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fcb20d4cb355195c75000a49bb4a31d75e4295200df620f454bbc6bdf60ca890"},
- {file = "pydantic-1.10.18-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:46f379b8cb8a3585e3f61bf9ae7d606c70d133943f339d38b76e041ec234953f"},
- {file = "pydantic-1.10.18-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:cbfbca662ed3729204090c4d09ee4beeecc1a7ecba5a159a94b5a4eb24e3759a"},
- {file = "pydantic-1.10.18-cp312-cp312-win_amd64.whl", hash = "sha256:c6d0a9f9eccaf7f438671a64acf654ef0d045466e63f9f68a579e2383b63f357"},
- {file = "pydantic-1.10.18-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:3d5492dbf953d7d849751917e3b2433fb26010d977aa7a0765c37425a4026ff1"},
- {file = "pydantic-1.10.18-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fe734914977eed33033b70bfc097e1baaffb589517863955430bf2e0846ac30f"},
- {file = "pydantic-1.10.18-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:15fdbe568beaca9aacfccd5ceadfb5f1a235087a127e8af5e48df9d8a45ae85c"},
- {file = "pydantic-1.10.18-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:c3e742f62198c9eb9201781fbebe64533a3bbf6a76a91b8d438d62b813079dbc"},
- {file = "pydantic-1.10.18-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:19a3bd00b9dafc2cd7250d94d5b578edf7a0bd7daf102617153ff9a8fa37871c"},
- {file = "pydantic-1.10.18-cp37-cp37m-win_amd64.whl", hash = "sha256:2ce3fcf75b2bae99aa31bd4968de0474ebe8c8258a0110903478bd83dfee4e3b"},
- {file = "pydantic-1.10.18-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:335a32d72c51a313b33fa3a9b0fe283503272ef6467910338e123f90925f0f03"},
- {file = "pydantic-1.10.18-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:34a3613c7edb8c6fa578e58e9abe3c0f5e7430e0fc34a65a415a1683b9c32d9a"},
- {file = "pydantic-1.10.18-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e9ee4e6ca1d9616797fa2e9c0bfb8815912c7d67aca96f77428e316741082a1b"},
- {file = "pydantic-1.10.18-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:23e8ec1ce4e57b4f441fc91e3c12adba023fedd06868445a5b5f1d48f0ab3682"},
- {file = "pydantic-1.10.18-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:44ae8a3e35a54d2e8fa88ed65e1b08967a9ef8c320819a969bfa09ce5528fafe"},
- {file = "pydantic-1.10.18-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:d5389eb3b48a72da28c6e061a247ab224381435256eb541e175798483368fdd3"},
- {file = "pydantic-1.10.18-cp38-cp38-win_amd64.whl", hash = "sha256:069b9c9fc645474d5ea3653788b544a9e0ccd3dca3ad8c900c4c6eac844b4620"},
- {file = "pydantic-1.10.18-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:80b982d42515632eb51f60fa1d217dfe0729f008e81a82d1544cc392e0a50ddf"},
- {file = "pydantic-1.10.18-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:aad8771ec8dbf9139b01b56f66386537c6fe4e76c8f7a47c10261b69ad25c2c9"},
- {file = "pydantic-1.10.18-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:941a2eb0a1509bd7f31e355912eb33b698eb0051730b2eaf9e70e2e1589cae1d"},
- {file = "pydantic-1.10.18-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:65f7361a09b07915a98efd17fdec23103307a54db2000bb92095457ca758d485"},
- {file = "pydantic-1.10.18-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:6951f3f47cb5ca4da536ab161ac0163cab31417d20c54c6de5ddcab8bc813c3f"},
- {file = "pydantic-1.10.18-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7a4c5eec138a9b52c67f664c7d51d4c7234c5ad65dd8aacd919fb47445a62c86"},
- {file = "pydantic-1.10.18-cp39-cp39-win_amd64.whl", hash = "sha256:49e26c51ca854286bffc22b69787a8d4063a62bf7d83dc21d44d2ff426108518"},
- {file = "pydantic-1.10.18-py3-none-any.whl", hash = "sha256:06a189b81ffc52746ec9c8c007f16e5167c8b0a696e1a726369327e3db7b2a82"},
- {file = "pydantic-1.10.18.tar.gz", hash = "sha256:baebdff1907d1d96a139c25136a9bb7d17e118f133a76a2ef3b845e831e3403a"},
+ {file = "pydantic-2.10.4-py3-none-any.whl", hash = "sha256:597e135ea68be3a37552fb524bc7d0d66dcf93d395acd93a00682f1efcb8ee3d"},
+ {file = "pydantic-2.10.4.tar.gz", hash = "sha256:82f12e9723da6de4fe2ba888b5971157b3be7ad914267dea8f05f82b28254f06"},
]
[package.dependencies]
-typing-extensions = ">=4.2.0"
+annotated-types = ">=0.6.0"
+pydantic-core = "2.27.2"
+typing-extensions = ">=4.12.2"
[package.extras]
-dotenv = ["python-dotenv (>=0.10.4)"]
-email = ["email-validator (>=1.0.3)"]
+email = ["email-validator (>=2.0.0)"]
+timezone = ["tzdata"]
+
+[[package]]
+name = "pydantic-core"
+version = "2.27.2"
+description = "Core functionality for Pydantic validation and serialization"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "pydantic_core-2.27.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:2d367ca20b2f14095a8f4fa1210f5a7b78b8a20009ecced6b12818f455b1e9fa"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:491a2b73db93fab69731eaee494f320faa4e093dbed776be1a829c2eb222c34c"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7969e133a6f183be60e9f6f56bfae753585680f3b7307a8e555a948d443cc05a"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3de9961f2a346257caf0aa508a4da705467f53778e9ef6fe744c038119737ef5"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e2bb4d3e5873c37bb3dd58714d4cd0b0e6238cebc4177ac8fe878f8b3aa8e74c"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:280d219beebb0752699480fe8f1dc61ab6615c2046d76b7ab7ee38858de0a4e7"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47956ae78b6422cbd46f772f1746799cbb862de838fd8d1fbd34a82e05b0983a"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:14d4a5c49d2f009d62a2a7140d3064f686d17a5d1a268bc641954ba181880236"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:337b443af21d488716f8d0b6164de833e788aa6bd7e3a39c005febc1284f4962"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-musllinux_1_1_armv7l.whl", hash = "sha256:03d0f86ea3184a12f41a2d23f7ccb79cdb5a18e06993f8a45baa8dfec746f0e9"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7041c36f5680c6e0f08d922aed302e98b3745d97fe1589db0a3eebf6624523af"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-win32.whl", hash = "sha256:50a68f3e3819077be2c98110c1f9dcb3817e93f267ba80a2c05bb4f8799e2ff4"},
+ {file = "pydantic_core-2.27.2-cp310-cp310-win_amd64.whl", hash = "sha256:e0fd26b16394ead34a424eecf8a31a1f5137094cabe84a1bcb10fa6ba39d3d31"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:8e10c99ef58cfdf2a66fc15d66b16c4a04f62bca39db589ae8cba08bc55331bc"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:26f32e0adf166a84d0cb63be85c562ca8a6fa8de28e5f0d92250c6b7e9e2aff7"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c19d1ea0673cd13cc2f872f6c9ab42acc4e4f492a7ca9d3795ce2b112dd7e15"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5e68c4446fe0810e959cdff46ab0a41ce2f2c86d227d96dc3847af0ba7def306"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d9640b0059ff4f14d1f37321b94061c6db164fbe49b334b31643e0528d100d99"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:40d02e7d45c9f8af700f3452f329ead92da4c5f4317ca9b896de7ce7199ea459"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1c1fd185014191700554795c99b347d64f2bb637966c4cfc16998a0ca700d048"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d81d2068e1c1228a565af076598f9e7451712700b673de8f502f0334f281387d"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:1a4207639fb02ec2dbb76227d7c751a20b1a6b4bc52850568e52260cae64ca3b"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-musllinux_1_1_armv7l.whl", hash = "sha256:3de3ce3c9ddc8bbd88f6e0e304dea0e66d843ec9de1b0042b0911c1663ffd474"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:30c5f68ded0c36466acede341551106821043e9afaad516adfb6e8fa80a4e6a6"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-win32.whl", hash = "sha256:c70c26d2c99f78b125a3459f8afe1aed4d9687c24fd677c6a4436bc042e50d6c"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-win_amd64.whl", hash = "sha256:08e125dbdc505fa69ca7d9c499639ab6407cfa909214d500897d02afb816e7cc"},
+ {file = "pydantic_core-2.27.2-cp311-cp311-win_arm64.whl", hash = "sha256:26f0d68d4b235a2bae0c3fc585c585b4ecc51382db0e3ba402a22cbc440915e4"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:9e0c8cfefa0ef83b4da9588448b6d8d2a2bf1a53c3f1ae5fca39eb3061e2f0b0"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:83097677b8e3bd7eaa6775720ec8e0405f1575015a463285a92bfdfe254529ef"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:172fce187655fece0c90d90a678424b013f8fbb0ca8b036ac266749c09438cb7"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:519f29f5213271eeeeb3093f662ba2fd512b91c5f188f3bb7b27bc5973816934"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:05e3a55d124407fffba0dd6b0c0cd056d10e983ceb4e5dbd10dda135c31071d6"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9c3ed807c7b91de05e63930188f19e921d1fe90de6b4f5cd43ee7fcc3525cb8c"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6fb4aadc0b9a0c063206846d603b92030eb6f03069151a625667f982887153e2"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:28ccb213807e037460326424ceb8b5245acb88f32f3d2777427476e1b32c48c4"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:de3cd1899e2c279b140adde9357c4495ed9d47131b4a4eaff9052f23398076b3"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_armv7l.whl", hash = "sha256:220f892729375e2d736b97d0e51466252ad84c51857d4d15f5e9692f9ef12be4"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:a0fcd29cd6b4e74fe8ddd2c90330fd8edf2e30cb52acda47f06dd615ae72da57"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-win32.whl", hash = "sha256:1e2cb691ed9834cd6a8be61228471d0a503731abfb42f82458ff27be7b2186fc"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-win_amd64.whl", hash = "sha256:cc3f1a99a4f4f9dd1de4fe0312c114e740b5ddead65bb4102884b384c15d8bc9"},
+ {file = "pydantic_core-2.27.2-cp312-cp312-win_arm64.whl", hash = "sha256:3911ac9284cd8a1792d3cb26a2da18f3ca26c6908cc434a18f730dc0db7bfa3b"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:7d14bd329640e63852364c306f4d23eb744e0f8193148d4044dd3dacdaacbd8b"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:82f91663004eb8ed30ff478d77c4d1179b3563df6cdb15c0817cd1cdaf34d154"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:71b24c7d61131bb83df10cc7e687433609963a944ccf45190cfc21e0887b08c9"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:fa8e459d4954f608fa26116118bb67f56b93b209c39b008277ace29937453dc9"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ce8918cbebc8da707ba805b7fd0b382816858728ae7fe19a942080c24e5b7cd1"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:eda3f5c2a021bbc5d976107bb302e0131351c2ba54343f8a496dc8783d3d3a6a"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bd8086fa684c4775c27f03f062cbb9eaa6e17f064307e86b21b9e0abc9c0f02e"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8d9b3388db186ba0c099a6d20f0604a44eabdeef1777ddd94786cdae158729e4"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:7a66efda2387de898c8f38c0cf7f14fca0b51a8ef0b24bfea5849f1b3c95af27"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:18a101c168e4e092ab40dbc2503bdc0f62010e95d292b27827871dc85450d7ee"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:ba5dd002f88b78a4215ed2f8ddbdf85e8513382820ba15ad5ad8955ce0ca19a1"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-win32.whl", hash = "sha256:1ebaf1d0481914d004a573394f4be3a7616334be70261007e47c2a6fe7e50130"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-win_amd64.whl", hash = "sha256:953101387ecf2f5652883208769a79e48db18c6df442568a0b5ccd8c2723abee"},
+ {file = "pydantic_core-2.27.2-cp313-cp313-win_arm64.whl", hash = "sha256:ac4dbfd1691affb8f48c2c13241a2e3b60ff23247cbcf981759c768b6633cf8b"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:d3e8d504bdd3f10835468f29008d72fc8359d95c9c415ce6e767203db6127506"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:521eb9b7f036c9b6187f0b47318ab0d7ca14bd87f776240b90b21c1f4f149320"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:85210c4d99a0114f5a9481b44560d7d1e35e32cc5634c656bc48e590b669b145"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d716e2e30c6f140d7560ef1538953a5cd1a87264c737643d481f2779fc247fe1"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f66d89ba397d92f840f8654756196d93804278457b5fbede59598a1f9f90b228"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:669e193c1c576a58f132e3158f9dfa9662969edb1a250c54d8fa52590045f046"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9fdbe7629b996647b99c01b37f11170a57ae675375b14b8c13b8518b8320ced5"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d262606bf386a5ba0b0af3b97f37c83d7011439e3dc1a9298f21efb292e42f1a"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:cabb9bcb7e0d97f74df8646f34fc76fbf793b7f6dc2438517d7a9e50eee4f14d"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-musllinux_1_1_armv7l.whl", hash = "sha256:d2d63f1215638d28221f664596b1ccb3944f6e25dd18cd3b86b0a4c408d5ebb9"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:bca101c00bff0adb45a833f8451b9105d9df18accb8743b08107d7ada14bd7da"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-win32.whl", hash = "sha256:f6f8e111843bbb0dee4cb6594cdc73e79b3329b526037ec242a3e49012495b3b"},
+ {file = "pydantic_core-2.27.2-cp38-cp38-win_amd64.whl", hash = "sha256:fd1aea04935a508f62e0d0ef1f5ae968774a32afc306fb8545e06f5ff5cdf3ad"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:c10eb4f1659290b523af58fa7cffb452a61ad6ae5613404519aee4bfbf1df993"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ef592d4bad47296fb11f96cd7dc898b92e795032b4894dfb4076cfccd43a9308"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c61709a844acc6bf0b7dce7daae75195a10aac96a596ea1b776996414791ede4"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:42c5f762659e47fdb7b16956c71598292f60a03aa92f8b6351504359dbdba6cf"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4c9775e339e42e79ec99c441d9730fccf07414af63eac2f0e48e08fd38a64d76"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:57762139821c31847cfb2df63c12f725788bd9f04bc2fb392790959b8f70f118"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0d1e85068e818c73e048fe28cfc769040bb1f475524f4745a5dc621f75ac7630"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:097830ed52fd9e427942ff3b9bc17fab52913b2f50f2880dc4a5611446606a54"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:044a50963a614ecfae59bb1eaf7ea7efc4bc62f49ed594e18fa1e5d953c40e9f"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-musllinux_1_1_armv7l.whl", hash = "sha256:4e0b4220ba5b40d727c7f879eac379b822eee5d8fff418e9d3381ee45b3b0362"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:5e4f4bb20d75e9325cc9696c6802657b58bc1dbbe3022f32cc2b2b632c3fbb96"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-win32.whl", hash = "sha256:cca63613e90d001b9f2f9a9ceb276c308bfa2a43fafb75c8031c4f66039e8c6e"},
+ {file = "pydantic_core-2.27.2-cp39-cp39-win_amd64.whl", hash = "sha256:77d1bca19b0f7021b3a982e6f903dcd5b2b06076def36a652e3907f596e29f67"},
+ {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:2bf14caea37e91198329b828eae1618c068dfb8ef17bb33287a7ad4b61ac314e"},
+ {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:b0cb791f5b45307caae8810c2023a184c74605ec3bcbb67d13846c28ff731ff8"},
+ {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:688d3fd9fcb71f41c4c015c023d12a79d1c4c0732ec9eb35d96e3388a120dcf3"},
+ {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3d591580c34f4d731592f0e9fe40f9cc1b430d297eecc70b962e93c5c668f15f"},
+ {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:82f986faf4e644ffc189a7f1aafc86e46ef70372bb153e7001e8afccc6e54133"},
+ {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:bec317a27290e2537f922639cafd54990551725fc844249e64c523301d0822fc"},
+ {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:0296abcb83a797db256b773f45773da397da75a08f5fcaef41f2044adec05f50"},
+ {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:0d75070718e369e452075a6017fbf187f788e17ed67a3abd47fa934d001863d9"},
+ {file = "pydantic_core-2.27.2-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:7e17b560be3c98a8e3aa66ce828bdebb9e9ac6ad5466fba92eb74c4c95cb1151"},
+ {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:c33939a82924da9ed65dab5a65d427205a73181d8098e79b6b426bdf8ad4e656"},
+ {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:00bad2484fa6bda1e216e7345a798bd37c68fb2d97558edd584942aa41b7d278"},
+ {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c817e2b40aba42bac6f457498dacabc568c3b7a986fc9ba7c8d9d260b71485fb"},
+ {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:251136cdad0cb722e93732cb45ca5299fb56e1344a833640bf93b2803f8d1bfd"},
+ {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d2088237af596f0a524d3afc39ab3b036e8adb054ee57cbb1dcf8e09da5b29cc"},
+ {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:d4041c0b966a84b4ae7a09832eb691a35aec90910cd2dbe7a208de59be77965b"},
+ {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-musllinux_1_1_armv7l.whl", hash = "sha256:8083d4e875ebe0b864ffef72a4304827015cff328a1be6e22cc850753bfb122b"},
+ {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:f141ee28a0ad2123b6611b6ceff018039df17f32ada8b534e6aa039545a3efb2"},
+ {file = "pydantic_core-2.27.2-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:7d0c8399fcc1848491f00e0314bd59fb34a9c008761bcb422a057670c3f65e35"},
+ {file = "pydantic_core-2.27.2.tar.gz", hash = "sha256:eb026e5a4c1fee05726072337ff51d1efb6f59090b7da90d30ea58625b1ffb39"},
+]
+
+[package.dependencies]
+typing-extensions = ">=4.6.0,<4.7.0 || >4.7.0"
+
+[[package]]
+name = "pydantic-settings"
+version = "2.7.0"
+description = "Settings management using Pydantic"
+optional = false
+python-versions = ">=3.8"
+files = [
+ {file = "pydantic_settings-2.7.0-py3-none-any.whl", hash = "sha256:e00c05d5fa6cbbb227c84bd7487c5c1065084119b750df7c8c1a554aed236eb5"},
+ {file = "pydantic_settings-2.7.0.tar.gz", hash = "sha256:ac4bfd4a36831a48dbf8b2d9325425b549a0a6f18cea118436d728eb4f1c4d66"},
+]
+
+[package.dependencies]
+pydantic = ">=2.7.0"
+python-dotenv = ">=0.21.0"
+
+[package.extras]
+azure-key-vault = ["azure-identity (>=1.16.0)", "azure-keyvault-secrets (>=4.8.0)"]
+toml = ["tomli (>=2.0.1)"]
+yaml = ["pyyaml (>=6.0.1)"]
[[package]]
name = "pygments"
@@ -2473,13 +2684,13 @@ files = [
[[package]]
name = "pytest"
-version = "8.3.2"
+version = "8.3.4"
description = "pytest: simple powerful testing with Python"
optional = false
python-versions = ">=3.8"
files = [
- {file = "pytest-8.3.2-py3-none-any.whl", hash = "sha256:4ba08f9ae7dcf84ded419494d229b48d0903ea6407b030eaec46df5e6a73bba5"},
- {file = "pytest-8.3.2.tar.gz", hash = "sha256:c132345d12ce551242c87269de812483f5bcc87cdbb4722e48487ba194f9fdce"},
+ {file = "pytest-8.3.4-py3-none-any.whl", hash = "sha256:50e16d954148559c9a74109af1eaf0c945ba2d8f30f0a3d3335edde19788b6f6"},
+ {file = "pytest-8.3.4.tar.gz", hash = "sha256:965370d062bce11e73868e0335abac31b4d3de0e82f4007408d242b4f8610761"},
]
[package.dependencies]
@@ -2495,35 +2706,35 @@ dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "pygments
[[package]]
name = "pytest-asyncio"
-version = "0.24.0"
+version = "0.25.0"
description = "Pytest support for asyncio"
optional = false
-python-versions = ">=3.8"
+python-versions = ">=3.9"
files = [
- {file = "pytest_asyncio-0.24.0-py3-none-any.whl", hash = "sha256:a811296ed596b69bf0b6f3dc40f83bcaf341b155a269052d82efa2b25ac7037b"},
- {file = "pytest_asyncio-0.24.0.tar.gz", hash = "sha256:d081d828e576d85f875399194281e92bf8a68d60d72d1a2faf2feddb6c46b276"},
+ {file = "pytest_asyncio-0.25.0-py3-none-any.whl", hash = "sha256:db5432d18eac6b7e28b46dcd9b69921b55c3b1086e85febfe04e70b18d9e81b3"},
+ {file = "pytest_asyncio-0.25.0.tar.gz", hash = "sha256:8c0610303c9e0442a5db8604505fc0f545456ba1528824842b37b4a626cbf609"},
]
[package.dependencies]
pytest = ">=8.2,<9"
[package.extras]
-docs = ["sphinx (>=5.3)", "sphinx-rtd-theme (>=1.0)"]
+docs = ["sphinx (>=5.3)", "sphinx-rtd-theme (>=1)"]
testing = ["coverage (>=6.2)", "hypothesis (>=5.7.1)"]
[[package]]
name = "pytest-cov"
-version = "5.0.0"
+version = "6.0.0"
description = "Pytest plugin for measuring coverage."
optional = false
-python-versions = ">=3.8"
+python-versions = ">=3.9"
files = [
- {file = "pytest-cov-5.0.0.tar.gz", hash = "sha256:5837b58e9f6ebd335b0f8060eecce69b662415b16dc503883a02f45dfeb14857"},
- {file = "pytest_cov-5.0.0-py3-none-any.whl", hash = "sha256:4f0764a1219df53214206bf1feea4633c3b558a2925c8b59f144f682861ce652"},
+ {file = "pytest-cov-6.0.0.tar.gz", hash = "sha256:fde0b595ca248bb8e2d76f020b465f3b107c9632e6a1d1705f17834c89dcadc0"},
+ {file = "pytest_cov-6.0.0-py3-none-any.whl", hash = "sha256:eee6f1b9e61008bd34975a4d5bab25801eb31898b032dd55addc93e96fcaaa35"},
]
[package.dependencies]
-coverage = {version = ">=5.2.1", extras = ["toml"]}
+coverage = {version = ">=7.5", extras = ["toml"]}
pytest = ">=4.6"
[package.extras]
@@ -2576,18 +2787,15 @@ cli = ["click (>=5.0)"]
[[package]]
name = "python-multipart"
-version = "0.0.9"
+version = "0.0.20"
description = "A streaming multipart parser for Python"
optional = false
python-versions = ">=3.8"
files = [
- {file = "python_multipart-0.0.9-py3-none-any.whl", hash = "sha256:97ca7b8ea7b05f977dc3849c3ba99d51689822fab725c3703af7c866a0c2b215"},
- {file = "python_multipart-0.0.9.tar.gz", hash = "sha256:03f54688c663f1b7977105f021043b0793151e4cb1c1a9d4a11fc13d622c4026"},
+ {file = "python_multipart-0.0.20-py3-none-any.whl", hash = "sha256:8a62d3a8335e06589fe01f2a3e178cdcc632f3fbe0d492ad9ee0ec35aab1f104"},
+ {file = "python_multipart-0.0.20.tar.gz", hash = "sha256:8dd0cab45b8e23064ae09147625994d090fa46f5b0d1e13af944c331a7fa9d13"},
]
-[package.extras]
-dev = ["atomicwrites (==1.4.1)", "attrs (==23.2.0)", "coverage (==7.4.1)", "hatch", "invoke (==2.2.0)", "more-itertools (==10.2.0)", "pbr (==6.0.0)", "pluggy (==1.4.0)", "py (==1.11.0)", "pytest (==8.0.0)", "pytest-cov (==4.1.0)", "pytest-timeout (==2.2.0)", "pyyaml (==6.0.1)", "ruff (==0.2.1)"]
-
[[package]]
name = "pywin32"
version = "306"
@@ -2816,47 +3024,48 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"]
[[package]]
name = "rich"
-version = "13.8.0"
+version = "13.9.4"
description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal"
optional = false
-python-versions = ">=3.7.0"
+python-versions = ">=3.8.0"
files = [
- {file = "rich-13.8.0-py3-none-any.whl", hash = "sha256:2e85306a063b9492dffc86278197a60cbece75bcb766022f3436f567cae11bdc"},
- {file = "rich-13.8.0.tar.gz", hash = "sha256:a5ac1f1cd448ade0d59cc3356f7db7a7ccda2c8cbae9c7a90c28ff463d3e91f4"},
+ {file = "rich-13.9.4-py3-none-any.whl", hash = "sha256:6049d5e6ec054bf2779ab3358186963bac2ea89175919d699e378b99738c2a90"},
+ {file = "rich-13.9.4.tar.gz", hash = "sha256:439594978a49a09530cff7ebc4b5c7103ef57baf48d5ea3184f21d9a2befa098"},
]
[package.dependencies]
markdown-it-py = ">=2.2.0"
pygments = ">=2.13.0,<3.0.0"
+typing-extensions = {version = ">=4.0.0,<5.0", markers = "python_version < \"3.11\""}
[package.extras]
jupyter = ["ipywidgets (>=7.5.1,<9)"]
[[package]]
name = "ruff"
-version = "0.6.4"
+version = "0.8.3"
description = "An extremely fast Python linter and code formatter, written in Rust."
optional = false
python-versions = ">=3.7"
files = [
- {file = "ruff-0.6.4-py3-none-linux_armv6l.whl", hash = "sha256:c4b153fc152af51855458e79e835fb6b933032921756cec9af7d0ba2aa01a258"},
- {file = "ruff-0.6.4-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:bedff9e4f004dad5f7f76a9d39c4ca98af526c9b1695068198b3bda8c085ef60"},
- {file = "ruff-0.6.4-py3-none-macosx_11_0_arm64.whl", hash = "sha256:d02a4127a86de23002e694d7ff19f905c51e338c72d8e09b56bfb60e1681724f"},
- {file = "ruff-0.6.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7862f42fc1a4aca1ea3ffe8a11f67819d183a5693b228f0bb3a531f5e40336fc"},
- {file = "ruff-0.6.4-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:eebe4ff1967c838a1a9618a5a59a3b0a00406f8d7eefee97c70411fefc353617"},
- {file = "ruff-0.6.4-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:932063a03bac394866683e15710c25b8690ccdca1cf192b9a98260332ca93408"},
- {file = "ruff-0.6.4-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:50e30b437cebef547bd5c3edf9ce81343e5dd7c737cb36ccb4fe83573f3d392e"},
- {file = "ruff-0.6.4-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c44536df7b93a587de690e124b89bd47306fddd59398a0fb12afd6133c7b3818"},
- {file = "ruff-0.6.4-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ea086601b22dc5e7693a78f3fcfc460cceabfdf3bdc36dc898792aba48fbad6"},
- {file = "ruff-0.6.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b52387d3289ccd227b62102c24714ed75fbba0b16ecc69a923a37e3b5e0aaaa"},
- {file = "ruff-0.6.4-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:0308610470fcc82969082fc83c76c0d362f562e2f0cdab0586516f03a4e06ec6"},
- {file = "ruff-0.6.4-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:803b96dea21795a6c9d5bfa9e96127cc9c31a1987802ca68f35e5c95aed3fc0d"},
- {file = "ruff-0.6.4-py3-none-musllinux_1_2_i686.whl", hash = "sha256:66dbfea86b663baab8fcae56c59f190caba9398df1488164e2df53e216248baa"},
- {file = "ruff-0.6.4-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:34d5efad480193c046c86608dbba2bccdc1c5fd11950fb271f8086e0c763a5d1"},
- {file = "ruff-0.6.4-py3-none-win32.whl", hash = "sha256:f0f8968feea5ce3777c0d8365653d5e91c40c31a81d95824ba61d871a11b8523"},
- {file = "ruff-0.6.4-py3-none-win_amd64.whl", hash = "sha256:549daccee5227282289390b0222d0fbee0275d1db6d514550d65420053021a58"},
- {file = "ruff-0.6.4-py3-none-win_arm64.whl", hash = "sha256:ac4b75e898ed189b3708c9ab3fc70b79a433219e1e87193b4f2b77251d058d14"},
- {file = "ruff-0.6.4.tar.gz", hash = "sha256:ac3b5bfbee99973f80aa1b7cbd1c9cbce200883bdd067300c22a6cc1c7fba212"},
+ {file = "ruff-0.8.3-py3-none-linux_armv6l.whl", hash = "sha256:8d5d273ffffff0acd3db5bf626d4b131aa5a5ada1276126231c4174543ce20d6"},
+ {file = "ruff-0.8.3-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:e4d66a21de39f15c9757d00c50c8cdd20ac84f55684ca56def7891a025d7e939"},
+ {file = "ruff-0.8.3-py3-none-macosx_11_0_arm64.whl", hash = "sha256:c356e770811858bd20832af696ff6c7e884701115094f427b64b25093d6d932d"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9c0a60a825e3e177116c84009d5ebaa90cf40dfab56e1358d1df4e29a9a14b13"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:75fb782f4db39501210ac093c79c3de581d306624575eddd7e4e13747e61ba18"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7f26bc76a133ecb09a38b7868737eded6941b70a6d34ef53a4027e83913b6502"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:01b14b2f72a37390c1b13477c1c02d53184f728be2f3ffc3ace5b44e9e87b90d"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:53babd6e63e31f4e96ec95ea0d962298f9f0d9cc5990a1bbb023a6baf2503a82"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:1ae441ce4cf925b7f363d33cd6570c51435972d697e3e58928973994e56e1452"},
+ {file = "ruff-0.8.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d7c65bc0cadce32255e93c57d57ecc2cca23149edd52714c0c5d6fa11ec328cd"},
+ {file = "ruff-0.8.3-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:5be450bb18f23f0edc5a4e5585c17a56ba88920d598f04a06bd9fd76d324cb20"},
+ {file = "ruff-0.8.3-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:8faeae3827eaa77f5721f09b9472a18c749139c891dbc17f45e72d8f2ca1f8fc"},
+ {file = "ruff-0.8.3-py3-none-musllinux_1_2_i686.whl", hash = "sha256:db503486e1cf074b9808403991663e4277f5c664d3fe237ee0d994d1305bb060"},
+ {file = "ruff-0.8.3-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:6567be9fb62fbd7a099209257fef4ad2c3153b60579818b31a23c886ed4147ea"},
+ {file = "ruff-0.8.3-py3-none-win32.whl", hash = "sha256:19048f2f878f3ee4583fc6cb23fb636e48c2635e30fb2022b3a1cd293402f964"},
+ {file = "ruff-0.8.3-py3-none-win_amd64.whl", hash = "sha256:f7df94f57d7418fa7c3ffb650757e0c2b96cf2501a0b192c18e4fb5571dfada9"},
+ {file = "ruff-0.8.3-py3-none-win_arm64.whl", hash = "sha256:fe2756edf68ea79707c8d68b78ca9a58ed9af22e430430491ee03e718b5e4936"},
+ {file = "ruff-0.8.3.tar.gz", hash = "sha256:5e7558304353b84279042fc584a4f4cb8a07ae79b2bf3da1a7551d960b5626d3"},
]
[[package]]
@@ -3035,13 +3244,13 @@ files = [
[[package]]
name = "starlette"
-version = "0.37.2"
+version = "0.41.2"
description = "The little ASGI library that shines."
optional = false
python-versions = ">=3.8"
files = [
- {file = "starlette-0.37.2-py3-none-any.whl", hash = "sha256:6fe59f29268538e5d0d182f2791a479a0c64638e6935d1c6989e63fb2699c6ee"},
- {file = "starlette-0.37.2.tar.gz", hash = "sha256:9af890290133b79fc3db55474ade20f6220a364a0402e0b556e7cd5e1e093823"},
+ {file = "starlette-0.41.2-py3-none-any.whl", hash = "sha256:fbc189474b4731cf30fcef52f18a8d070e3f3b46c6a04c97579e85e6ffca942d"},
+ {file = "starlette-0.41.2.tar.gz", hash = "sha256:9834fd799d1a87fd346deb76158668cfa0b0d56f85caefe8268e2d97c3468b62"},
]
[package.dependencies]
@@ -3094,111 +3303,26 @@ all = ["defusedxml", "fsspec", "imagecodecs (>=2023.8.12)", "lxml", "matplotlib"
[[package]]
name = "tokenizers"
-version = "0.20.0"
+version = "0.21.0"
description = ""
optional = false
python-versions = ">=3.7"
files = [
- {file = "tokenizers-0.20.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:6cff5c5e37c41bc5faa519d6f3df0679e4b37da54ea1f42121719c5e2b4905c0"},
- {file = "tokenizers-0.20.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:62a56bf75c27443432456f4ca5ca055befa95e25be8a28141cc495cac8ae4d6d"},
- {file = "tokenizers-0.20.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:68cc7de6a63f09c4a86909c2597b995aa66e19df852a23aea894929c74369929"},
- {file = "tokenizers-0.20.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:053c37ecee482cc958fdee53af3c6534286a86f5d35aac476f7c246830e53ae5"},
- {file = "tokenizers-0.20.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3d7074aaabc151a6363fa03db5493fc95b423b2a1874456783989e96d541c7b6"},
- {file = "tokenizers-0.20.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a11435780f2acd89e8fefe5e81cecf01776f6edb9b3ac95bcb76baee76b30b90"},
- {file = "tokenizers-0.20.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9a81cd2712973b007d84268d45fc3f6f90a79c31dfe7f1925e6732f8d2959987"},
- {file = "tokenizers-0.20.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d7dfd796ab9d909f76fb93080e1c7c8309f196ecb316eb130718cd5e34231c69"},
- {file = "tokenizers-0.20.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:8029ad2aa8cb00605c9374566034c1cc1b15130713e0eb5afcef6cface8255c9"},
- {file = "tokenizers-0.20.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ca4d54260ebe97d59dfa9a30baa20d0c4dd9137d99a8801700055c561145c24e"},
- {file = "tokenizers-0.20.0-cp310-none-win32.whl", hash = "sha256:95ee16b57cec11b86a7940174ec5197d506439b0f415ab3859f254b1dffe9df0"},
- {file = "tokenizers-0.20.0-cp310-none-win_amd64.whl", hash = "sha256:0a61a11e93eeadbf02aea082ffc75241c4198e0608bbbac4f65a9026851dcf37"},
- {file = "tokenizers-0.20.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:6636b798b3c4d6c9b1af1a918bd07c867808e5a21c64324e95318a237e6366c3"},
- {file = "tokenizers-0.20.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5ec603e42eaf499ffd58b9258162add948717cf21372458132f14e13a6bc7172"},
- {file = "tokenizers-0.20.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cce124264903a8ea6f8f48e1cc7669e5ef638c18bd4ab0a88769d5f92debdf7f"},
- {file = "tokenizers-0.20.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:07bbeba0231cf8de07aa6b9e33e9779ff103d47042eeeb859a8c432e3292fb98"},
- {file = "tokenizers-0.20.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:06c0ca8397b35d38b83a44a9c6929790c1692957d88541df061cb34d82ebbf08"},
- {file = "tokenizers-0.20.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ca6557ac3b83d912dfbb1f70ab56bd4b0594043916688e906ede09f42e192401"},
- {file = "tokenizers-0.20.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:2a5ad94c9e80ac6098328bee2e3264dbced4c6faa34429994d473f795ec58ef4"},
- {file = "tokenizers-0.20.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b5c7f906ee6bec30a9dc20268a8b80f3b9584de1c9f051671cb057dc6ce28f6"},
- {file = "tokenizers-0.20.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:31e087e9ee1b8f075b002bfee257e858dc695f955b43903e1bb4aa9f170e37fe"},
- {file = "tokenizers-0.20.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:c3124fb6f3346cb3d8d775375d3b429bf4dcfc24f739822702009d20a4297990"},
- {file = "tokenizers-0.20.0-cp311-none-win32.whl", hash = "sha256:a4bb8b40ba9eefa621fdcabf04a74aa6038ae3be0c614c6458bd91a4697a452f"},
- {file = "tokenizers-0.20.0-cp311-none-win_amd64.whl", hash = "sha256:2b709d371f1fe60a28ef0c5c67815952d455ca7f34dbe7197eaaed3cc54b658e"},
- {file = "tokenizers-0.20.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:15c81a17d0d66f4987c6ca16f4bea7ec253b8c7ed1bb00fdc5d038b1bb56e714"},
- {file = "tokenizers-0.20.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6a531cdf1fb6dc41c984c785a3b299cb0586de0b35683842a3afbb1e5207f910"},
- {file = "tokenizers-0.20.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:06caabeb4587f8404e0cd9d40f458e9cba3e815c8155a38e579a74ff3e2a4301"},
- {file = "tokenizers-0.20.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8768f964f23f5b9f50546c0369c75ab3262de926983888bbe8b98be05392a79c"},
- {file = "tokenizers-0.20.0-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:626403860152c816f97b649fd279bd622c3d417678c93b4b1a8909b6380b69a8"},
- {file = "tokenizers-0.20.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9c1b88fa9e5ff062326f4bf82681da5a96fca7104d921a6bd7b1e6fcf224af26"},
- {file = "tokenizers-0.20.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3d7e559436a07dc547f22ce1101f26d8b2fad387e28ec8e7e1e3b11695d681d8"},
- {file = "tokenizers-0.20.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e48afb75e50449848964e4a67b0da01261dd3aa8df8daecf10db8fd7f5b076eb"},
- {file = "tokenizers-0.20.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:baf5d0e1ff44710a95eefc196dd87666ffc609fd447c5e5b68272a7c3d342a1d"},
- {file = "tokenizers-0.20.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:e5e56df0e8ed23ba60ae3848c3f069a0710c4b197218fe4f89e27eba38510768"},
- {file = "tokenizers-0.20.0-cp312-none-win32.whl", hash = "sha256:ec53e5ecc142a82432f9c6c677dbbe5a2bfee92b8abf409a9ecb0d425ee0ce75"},
- {file = "tokenizers-0.20.0-cp312-none-win_amd64.whl", hash = "sha256:f18661ece72e39c0dfaa174d6223248a15b457dbd4b0fc07809b8e6d3ca1a234"},
- {file = "tokenizers-0.20.0-cp37-cp37m-macosx_10_12_x86_64.whl", hash = "sha256:f7065b1084d8d1a03dc89d9aad69bcbc8415d4bc123c367063eb32958cd85054"},
- {file = "tokenizers-0.20.0-cp37-cp37m-macosx_11_0_arm64.whl", hash = "sha256:e5d4069e4714e3f7ba0a4d3d44f9d84a432cd4e4aa85c3d7dd1f51440f12e4a1"},
- {file = "tokenizers-0.20.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:799b808529e54b7e1a36350bda2aeb470e8390e484d3e98c10395cee61d4e3c6"},
- {file = "tokenizers-0.20.0-cp37-cp37m-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7f9baa027cc8a281ad5f7725a93c204d7a46986f88edbe8ef7357f40a23fb9c7"},
- {file = "tokenizers-0.20.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:010ec7f3f7a96adc4c2a34a3ada41fa14b4b936b5628b4ff7b33791258646c6b"},
- {file = "tokenizers-0.20.0-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:98d88f06155335b14fd78e32ee28ca5b2eb30fced4614e06eb14ae5f7fba24ed"},
- {file = "tokenizers-0.20.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e13eb000ef540c2280758d1b9cfa5fe424b0424ae4458f440e6340a4f18b2638"},
- {file = "tokenizers-0.20.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fab3cf066ff426f7e6d70435dc28a9ff01b2747be83810e397cba106f39430b0"},
- {file = "tokenizers-0.20.0-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:39fa3761b30a89368f322e5daf4130dce8495b79ad831f370449cdacfb0c0d37"},
- {file = "tokenizers-0.20.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:c8da0fba4d179ddf2607821575998df3c294aa59aa8df5a6646dc64bc7352bce"},
- {file = "tokenizers-0.20.0-cp37-none-win32.whl", hash = "sha256:fada996d6da8cf213f6e3c91c12297ad4f6cdf7a85c2fadcd05ec32fa6846fcd"},
- {file = "tokenizers-0.20.0-cp37-none-win_amd64.whl", hash = "sha256:7d29aad702279e0760c265fcae832e89349078e3418dd329732d4503259fd6bd"},
- {file = "tokenizers-0.20.0-cp38-cp38-macosx_10_12_x86_64.whl", hash = "sha256:099c68207f3ef0227ecb6f80ab98ea74de559f7b124adc7b17778af0250ee90a"},
- {file = "tokenizers-0.20.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:68012d8a8cddb2eab3880870d7e2086cb359c7f7a2b03f5795044f5abff4e850"},
- {file = "tokenizers-0.20.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9253bdd209c6aee168deca7d0e780581bf303e0058f268f9bb06859379de19b6"},
- {file = "tokenizers-0.20.0-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8f868600ddbcb0545905ed075eb7218a0756bf6c09dae7528ea2f8436ebd2c93"},
- {file = "tokenizers-0.20.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9a9643d9c8c5f99b6aba43fd10034f77cc6c22c31f496d2f0ee183047d948fa0"},
- {file = "tokenizers-0.20.0-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c375c6a889aeab44734028bc65cc070acf93ccb0f9368be42b67a98e1063d3f6"},
- {file = "tokenizers-0.20.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e359f852328e254f070bbd09a19a568421d23388f04aad9f2fb7da7704c7228d"},
- {file = "tokenizers-0.20.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d98b01a309d4387f3b1c1dd68a8b8136af50376cf146c1b7e8d8ead217a5be4b"},
- {file = "tokenizers-0.20.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:459f7537119554c2899067dec1ac74a00d02beef6558f4ee2e99513bf6d568af"},
- {file = "tokenizers-0.20.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:392b87ec89452628c045c9f2a88bc2a827f4c79e7d84bc3b72752b74c2581f70"},
- {file = "tokenizers-0.20.0-cp38-none-win32.whl", hash = "sha256:55a393f893d2ed4dd95a1553c2e42d4d4086878266f437b03590d3f81984c4fe"},
- {file = "tokenizers-0.20.0-cp38-none-win_amd64.whl", hash = "sha256:30ffe33c5c2f2aab8e9a3340d0110dd9f7ace7eec7362e20a697802306bd8068"},
- {file = "tokenizers-0.20.0-cp39-cp39-macosx_10_12_x86_64.whl", hash = "sha256:aa2d4a6fed2a7e3f860c7fc9d48764bb30f2649d83915d66150d6340e06742b8"},
- {file = "tokenizers-0.20.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b5ef0f814084a897e9071fc4a868595f018c5c92889197bdc4bf19018769b148"},
- {file = "tokenizers-0.20.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fc1e1b791e8c3bf4c4f265f180dadaff1c957bf27129e16fdd5e5d43c2d3762c"},
- {file = "tokenizers-0.20.0-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2b69e55e481459c07885263743a0d3c18d52db19bae8226a19bcca4aaa213fff"},
- {file = "tokenizers-0.20.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:4806b4d82e27a2512bc23057b2986bc8b85824914286975b84d8105ff40d03d9"},
- {file = "tokenizers-0.20.0-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9859e9ef13adf5a473ccab39d31bff9c550606ae3c784bf772b40f615742a24f"},
- {file = "tokenizers-0.20.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ef703efedf4c20488a8eb17637b55973745b27997ff87bad88ed499b397d1144"},
- {file = "tokenizers-0.20.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6eec0061bab94b1841ab87d10831fdf1b48ebaed60e6d66d66dbe1d873f92bf5"},
- {file = "tokenizers-0.20.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:980f3d0d7e73f845b69087f29a63c11c7eb924c4ad6b358da60f3db4cf24bdb4"},
- {file = "tokenizers-0.20.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:7c157550a2f3851b29d7fdc9dc059fcf81ff0c0fc49a1e5173a89d533ed043fa"},
- {file = "tokenizers-0.20.0-cp39-none-win32.whl", hash = "sha256:8a3d2f4d08608ec4f9895ec25b4b36a97f05812543190a5f2c3cd19e8f041e5a"},
- {file = "tokenizers-0.20.0-cp39-none-win_amd64.whl", hash = "sha256:d90188d12afd0c75e537f9a1d92f9c7375650188ee4f48fdc76f9e38afbd2251"},
- {file = "tokenizers-0.20.0-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:d68e15f1815357b059ec266062340c343ea7f98f7f330602df81ffa3474b6122"},
- {file = "tokenizers-0.20.0-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:23f9ecec637b9bc80da5f703808d29ed5329e56b5aa8d791d1088014f48afadc"},
- {file = "tokenizers-0.20.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f830b318ee599e3d0665b3e325f85bc75ee2d2ca6285f52e439dc22b64691580"},
- {file = "tokenizers-0.20.0-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b3dc750def789cb1de1b5a37657919545e1d9ffa667658b3fa9cb7862407a1b8"},
- {file = "tokenizers-0.20.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e26e6c755ae884c2ea6135cd215bdd0fccafe4ee62405014b8c3cd19954e3ab9"},
- {file = "tokenizers-0.20.0-pp310-pypy310_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:a1158c7174f427182e08baa2a8ded2940f2b4a3e94969a85cc9cfd16004cbcea"},
- {file = "tokenizers-0.20.0-pp310-pypy310_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:6324826287a3fc198898d3dcf758fe4a8479e42d6039f4c59e2cedd3cf92f64e"},
- {file = "tokenizers-0.20.0-pp37-pypy37_pp73-macosx_10_12_x86_64.whl", hash = "sha256:7d8653149405bb0c16feaf9cfee327fdb6aaef9dc2998349fec686f35e81c4e2"},
- {file = "tokenizers-0.20.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b8a2dc1e402a155e97309287ca085c80eb1b7fab8ae91527d3b729181639fa51"},
- {file = "tokenizers-0.20.0-pp37-pypy37_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07bef67b20aa6e5f7868c42c7c5eae4d24f856274a464ae62e47a0f2cccec3da"},
- {file = "tokenizers-0.20.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da06e397182ff53789c506c7833220c192952c57e1581a53f503d8d953e2d67e"},
- {file = "tokenizers-0.20.0-pp37-pypy37_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:302f7e11a14814028b7fc88c45a41f1bbe9b5b35fd76d6869558d1d1809baa43"},
- {file = "tokenizers-0.20.0-pp37-pypy37_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:055ec46e807b875589dfbe3d9259f9a6ee43394fb553b03b3d1e9541662dbf25"},
- {file = "tokenizers-0.20.0-pp38-pypy38_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e3144b8acebfa6ae062e8f45f7ed52e4b50fb6c62f93afc8871b525ab9fdcab3"},
- {file = "tokenizers-0.20.0-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:b52aa3fd14b2a07588c00a19f66511cff5cca8f7266ca3edcdd17f3512ad159f"},
- {file = "tokenizers-0.20.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2b8cf52779ffc5d4d63a0170fbeb512372bad0dd014ce92bbb9149756c831124"},
- {file = "tokenizers-0.20.0-pp38-pypy38_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:983a45dd11a876124378dae71d6d9761822199b68a4c73f32873d8cdaf326a5b"},
- {file = "tokenizers-0.20.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:df6b819c9a19831ebec581e71a7686a54ab45d90faf3842269a10c11d746de0c"},
- {file = "tokenizers-0.20.0-pp38-pypy38_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:e738cfd80795fcafcef89c5731c84b05638a4ab3f412f97d5ed7765466576eb1"},
- {file = "tokenizers-0.20.0-pp38-pypy38_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:c8842c7be2fadb9c9edcee233b1b7fe7ade406c99b0973f07439985c1c1d0683"},
- {file = "tokenizers-0.20.0-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e47a82355511c373a4a430c4909dc1e518e00031207b1fec536c49127388886b"},
- {file = "tokenizers-0.20.0-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:9afbf359004551179a5db19424180c81276682773cff2c5d002f6eaaffe17230"},
- {file = "tokenizers-0.20.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a07eaa8799a92e6af6f472c21a75bf71575de2af3c0284120b7a09297c0de2f3"},
- {file = "tokenizers-0.20.0-pp39-pypy39_pp73-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0994b2e5fc53a301071806bc4303e4bc3bdc3f490e92a21338146a36746b0872"},
- {file = "tokenizers-0.20.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0b6466e0355b603d10e3cc3d282d350b646341b601e50969464a54939f9848d0"},
- {file = "tokenizers-0.20.0-pp39-pypy39_pp73-musllinux_1_1_aarch64.whl", hash = "sha256:1e86594c2a433cb1ea09cfbe596454448c566e57ee8905bd557e489d93e89986"},
- {file = "tokenizers-0.20.0-pp39-pypy39_pp73-musllinux_1_1_x86_64.whl", hash = "sha256:3e14cdef1efa96ecead6ea64a891828432c3ebba128bdc0596e3059fea104ef3"},
- {file = "tokenizers-0.20.0.tar.gz", hash = "sha256:39d7acc43f564c274085cafcd1dae9d36f332456de1a31970296a6b8da4eac8d"},
+ {file = "tokenizers-0.21.0-cp39-abi3-macosx_10_12_x86_64.whl", hash = "sha256:3c4c93eae637e7d2aaae3d376f06085164e1660f89304c0ab2b1d08a406636b2"},
+ {file = "tokenizers-0.21.0-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:f53ea537c925422a2e0e92a24cce96f6bc5046bbef24a1652a5edc8ba975f62e"},
+ {file = "tokenizers-0.21.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6b177fb54c4702ef611de0c069d9169f0004233890e0c4c5bd5508ae05abf193"},
+ {file = "tokenizers-0.21.0-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:6b43779a269f4629bebb114e19c3fca0223296ae9fea8bb9a7a6c6fb0657ff8e"},
+ {file = "tokenizers-0.21.0-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9aeb255802be90acfd363626753fda0064a8df06031012fe7d52fd9a905eb00e"},
+ {file = "tokenizers-0.21.0-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d8b09dbeb7a8d73ee204a70f94fc06ea0f17dcf0844f16102b9f414f0b7463ba"},
+ {file = "tokenizers-0.21.0-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:400832c0904f77ce87c40f1a8a27493071282f785724ae62144324f171377273"},
+ {file = "tokenizers-0.21.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e84ca973b3a96894d1707e189c14a774b701596d579ffc7e69debfc036a61a04"},
+ {file = "tokenizers-0.21.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:eb7202d231b273c34ec67767378cd04c767e967fda12d4a9e36208a34e2f137e"},
+ {file = "tokenizers-0.21.0-cp39-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:089d56db6782a73a27fd8abf3ba21779f5b85d4a9f35e3b493c7bbcbbf0d539b"},
+ {file = "tokenizers-0.21.0-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:c87ca3dc48b9b1222d984b6b7490355a6fdb411a2d810f6f05977258400ddb74"},
+ {file = "tokenizers-0.21.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:4145505a973116f91bc3ac45988a92e618a6f83eb458f49ea0790df94ee243ff"},
+ {file = "tokenizers-0.21.0-cp39-abi3-win32.whl", hash = "sha256:eb1702c2f27d25d9dd5b389cc1f2f51813e99f8ca30d9e25348db6585a97e24a"},
+ {file = "tokenizers-0.21.0-cp39-abi3-win_amd64.whl", hash = "sha256:87841da5a25a3a5f70c102de371db120f41873b854ba65e52bccd57df5a3780c"},
+ {file = "tokenizers-0.21.0.tar.gz", hash = "sha256:ee0894bf311b75b0c03079f33859ae4b2334d675d4e93f5a4132e1eae2834fe4"},
]
[package.dependencies]
@@ -3269,20 +3393,20 @@ zstd = ["zstandard (>=0.18.0)"]
[[package]]
name = "uvicorn"
-version = "0.30.6"
+version = "0.34.0"
description = "The lightning-fast ASGI server."
optional = false
-python-versions = ">=3.8"
+python-versions = ">=3.9"
files = [
- {file = "uvicorn-0.30.6-py3-none-any.whl", hash = "sha256:65fd46fe3fda5bdc1b03b94eb634923ff18cd35b2f084813ea79d1f103f711b5"},
- {file = "uvicorn-0.30.6.tar.gz", hash = "sha256:4b15decdda1e72be08209e860a1e10e92439ad5b97cf44cc945fcbee66fc5788"},
+ {file = "uvicorn-0.34.0-py3-none-any.whl", hash = "sha256:023dc038422502fa28a09c7a30bf2b6991512da7dcdb8fd35fe57cfc154126f4"},
+ {file = "uvicorn-0.34.0.tar.gz", hash = "sha256:404051050cd7e905de2c9a7e61790943440b3416f49cb409f965d9dcd0fa73e9"},
]
[package.dependencies]
click = ">=7.0"
colorama = {version = ">=0.4", optional = true, markers = "sys_platform == \"win32\" and extra == \"standard\""}
h11 = ">=0.8"
-httptools = {version = ">=0.5.0", optional = true, markers = "extra == \"standard\""}
+httptools = {version = ">=0.6.3", optional = true, markers = "extra == \"standard\""}
python-dotenv = {version = ">=0.13", optional = true, markers = "extra == \"standard\""}
pyyaml = {version = ">=5.1", optional = true, markers = "extra == \"standard\""}
typing-extensions = {version = ">=4.0", markers = "python_version < \"3.11\""}
@@ -3291,7 +3415,7 @@ watchfiles = {version = ">=0.13", optional = true, markers = "extra == \"standar
websockets = {version = ">=10.4", optional = true, markers = "extra == \"standard\""}
[package.extras]
-standard = ["colorama (>=0.4)", "httptools (>=0.5.0)", "python-dotenv (>=0.13)", "pyyaml (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "watchfiles (>=0.13)", "websockets (>=10.4)"]
+standard = ["colorama (>=0.4)", "httptools (>=0.6.3)", "python-dotenv (>=0.13)", "pyyaml (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "watchfiles (>=0.13)", "websockets (>=10.4)"]
[[package]]
name = "uvloop"
@@ -3607,4 +3731,4 @@ testing = ["coverage (>=5.0.3)", "zope.event", "zope.testing"]
[metadata]
lock-version = "2.0"
python-versions = ">=3.10,<4.0"
-content-hash = "b2b053886ca1dd3a3305c63caf155b1976dfc4066f72f5d1ecfc42099db34aab"
+content-hash = "b690d5fbd141da3947f4f1dc029aba1b95e7faafd723166f2c4bdc47a66c095e"
diff --git a/machine-learning/pyproject.toml b/machine-learning/pyproject.toml
index cc7f74dfa9..785c7ba8ac 100644
--- a/machine-learning/pyproject.toml
+++ b/machine-learning/pyproject.toml
@@ -1,6 +1,6 @@
[tool.poetry]
name = "machine-learning"
-version = "1.115.0"
+version = "1.123.0"
description = ""
authors = ["Hau Tran (
case 8:
return (reader.readBool(offset)) as P;
case 9:
+ return (_AlbumsortOrderValueEnumMap[reader.readByteOrNull(offset)] ??
+ SortOrder.desc) as P;
+ case 10:
return (reader.readDateTimeOrNull(offset)) as P;
default:
throw IsarError('Unknown property with id $propertyId');
}
}
+const _AlbumsortOrderEnumValueMap = {
+ 'asc': 0,
+ 'desc': 1,
+};
+const _AlbumsortOrderValueEnumMap = {
+ 0: SortOrder.asc,
+ 1: SortOrder.desc,
+};
+
Id _albumGetId(Album object) {
return object.id;
}
@@ -1191,6 +1212,59 @@ extension AlbumQueryFilter on QueryBuilder (
return (reader.readStringOrNull(offset)) as P;
case 15:
return (reader.readStringOrNull(offset)) as P;
+ case 16:
+ return (reader.readStringOrNull(offset)) as P;
default:
throw IsarError('Unknown property with id $propertyId');
}
@@ -1909,6 +1924,155 @@ extension ExifInfoQueryFilter
});
}
+ QueryBuilder> getAll(
+ String albumId, {
+ String? assetId,
+ });
+ Future
> getAll({
+ bool? shared,
+ bool? remote,
+ int? ownerId,
+ AlbumSort? sortBy,
+ });
+
+ Future
> search(String searchTerm, QuickFilterMode filterMode);
+}
+
+enum AlbumSort { remoteId, localId }
diff --git a/mobile/lib/interfaces/album_api.interface.dart b/mobile/lib/interfaces/album_api.interface.dart
new file mode 100644
index 0000000000..b751ccc170
--- /dev/null
+++ b/mobile/lib/interfaces/album_api.interface.dart
@@ -0,0 +1,42 @@
+import 'package:immich_mobile/constants/enums.dart';
+import 'package:immich_mobile/entities/album.entity.dart';
+
+abstract interface class IAlbumApiRepository {
+ Future
> getAll({bool? shared});
+
+ Future
> getAll();
+
+ Future
> getAssetIds(String albumId);
+
+ Future
> getAssets(
+ String albumId, {
+ int start = 0,
+ int end = 0x7fffffffffffffff,
+ DateTime? modifiedFrom,
+ DateTime? modifiedUntil,
+ bool orderByModificationDate = false,
+ });
+
+ Future
> getAllByRemoteId(
+ Iterable
> getAllByOwnerIdChecksum(
+ List