Compare commits

...

11 commits

Author SHA1 Message Date
Hosted Weblate
5d45ba7d54
chore(web): update translations
Co-authored-by: 0xflotus <0xflotus@gmail.com>
Co-authored-by: Alejandro Gonzalez <alejandrok5@gmail.com>
Co-authored-by: Alejandro Moya <alejandro_moya_moya@hotmail.com>
Co-authored-by: Blomblo <mr.blomblo@gmail.com>
Co-authored-by: Davide Vegliante <davidevegliante@gmail.com>
Co-authored-by: Denis Pacquier <denis.pacquier@gmail.com>
Co-authored-by: DevServs <bonov@mail.ru>
Co-authored-by: Eetu Mäenpää <me@eetumaenpaa.fi>
Co-authored-by: Emil Friis Osmann <Emilfriisosmann@gmail.com>
Co-authored-by: Espen Faale <espen@faale.no>
Co-authored-by: Hamed Hojjati <hamed334@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Ignatius Liu <suitangi777@gmail.com>
Co-authored-by: Indrek Haav <indrek.haav@hotmail.com>
Co-authored-by: Jonas A <demo007@gmail.com>
Co-authored-by: Jozef Gaal <preklady@mayday.sk>
Co-authored-by: Leo Bottaro <github@leobottaro.com>
Co-authored-by: Liviu Roman <contact@liviuroman.com>
Co-authored-by: Lukas Konsin <lukaskonsin@proton.me>
Co-authored-by: MSDNicrosoft <wang3311835119@hotmail.com>
Co-authored-by: Marcelo Popper Costa <marcelo_popper@hotmail.com>
Co-authored-by: Matjaž T <matjaz@moj-svet.si>
Co-authored-by: Mees Frensel <meesfrensel@gmail.com>
Co-authored-by: Metin <durmus38metin@gmail.com>
Co-authored-by: Nicolai Bonde <git@nicolaibonde.dk>
Co-authored-by: Pedro Vendeira <vendeira.pedro@gmail.com>
Co-authored-by: PontusÖsterlindh <pontus@osterlindh.com>
Co-authored-by: Robert Gonzales <bgonz808@gmail.com>
Co-authored-by: Sylvain Pichon <service@spichon.fr>
Co-authored-by: TMM4MN <tmgweb@yahoo.com>
Co-authored-by: Tjibbe Chris <github@tjibbechris.nl>
Co-authored-by: User 123456789 <user123456789@users.noreply.hosted.weblate.org>
Co-authored-by: Vegard Fladby <vegard@fladby.org>
Co-authored-by: anton garcias <isaga.percompartir@gmail.com>
Co-authored-by: aouani jaessin <aouanijaessin@gmail.com>
Co-authored-by: chamdim <chamdim@protonmail.com>
Co-authored-by: kiwinho <kiwicaja@gmail.com>
Co-authored-by: pyccl <changcongliang@163.com>
Co-authored-by: vytautas <immichtranslation.a03gn@simplelogin.com>
Co-authored-by: waclaw66 <waclaw66@seznam.cz>
Co-authored-by: özcan karakuş <ozcan.krakus@gmail.com>
Co-authored-by: Максим Горпиніч <gorpinicmaksim0@gmail.com>
Co-authored-by: தமிழ்நேரம் <tamilneram247@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ca/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/cs/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/da/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/de/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/el/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/es/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/et/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/fa/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/fi/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/fil/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/fr/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/gl/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/it/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/lt/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/nb_NO/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/nl/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/pl/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/pt/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/pt_BR/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ro/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ru/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sk/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sl/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/sv/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/ta/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/tr/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/uk/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/zh_Hant/
Translate-URL: https://hosted.weblate.org/projects/immich/immich/zh_SIMPLIFIED/
Translation: Immich/immich
2025-10-17 16:48:45 +02:00
renovate[bot]
73da80394e
chore(deps): update github-actions (#22914)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-17 10:48:36 -04:00
renovate[bot]
471cc74ff2
chore(deps): update dependency happy-dom to v20.0.2 [security] (#22964)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-10-17 10:24:50 -04:00
Lee Peuker
ca745d00ee
fix(docs): cli upload json format example (#22858)
Fix cli upload json format example
2025-10-17 14:08:42 +00:00
Jason Rasmussen
3ea8d140a2
feat: move community projects and guides to immich-aweseome (#23016) 2025-10-17 10:00:28 -04:00
Jason Rasmussen
8b8012f89d
docs: clarify well-known usage (#23018) 2025-10-17 10:00:07 -04:00
Joren Guillaume
4b7f851428
docs: Expand on OpenVINO WSL HW accel (#21054)
* add group/render section to openvino-wsl hwaccel

* Fix indentation for YAML

* Remove obsolete enter

* chore: formatting

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-10-17 09:05:07 -04:00
Nicholas
cc1cd299f3
feat(web): Download links and Obtainium link generator on Utilities page and onboarding (#20589) 2025-10-17 13:22:00 +02:00
Paul Larsen
3163afd24a
fix(web): render context overlays over the scrollbar (#23007) 2025-10-17 12:35:19 +02:00
Clement Martin
95889a69c9
feat(server): Option to configure SMTPS transport (#22833)
* feat(server): Option to configure SMTPS transport

This commit adds a boolean option in the SMTP transport configuration to
enable the so-called "secure" mode. What it does is use SMTP over TLS
instead of relying on the more common STARTTLS option over plain SMTP.

* Add missing field in dto

* Add missing field

* Use a switch instead of text field

* Add field in spec

* chore: regen open-api

---------

Co-authored-by: Jason Rasmussen <jason@rasm.me>
2025-10-17 10:21:27 +00:00
Brandon Wees
81554e5ad1
chore: change usage of pnpx to pnpm dlx (#23009) 2025-10-17 12:20:50 +02:00
71 changed files with 804 additions and 583 deletions

View file

@ -34,7 +34,7 @@ jobs:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0

View file

@ -35,7 +35,7 @@ jobs:
needs: [get_body, should_run]
if: ${{ needs.should_run.outputs.should_run == 'true' }}
container:
image: ghcr.io/immich-app/mdq:main@sha256:d8ae47cf2e6cf4e2559bd57a60b73674fe44f897cba2c2bddff2987a05be10a4
image: ghcr.io/immich-app/mdq:main@sha256:6b8450bfc06770af1af66bce9bf2ced7d1d9b90df1a59fc4c83a17777a9f6723
outputs:
checked: ${{ steps.get_checkbox.outputs.checked }}
steps:

View file

@ -50,7 +50,7 @@ jobs:
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.30.6
uses: github/codeql-action/init@755f44910c12a3d7ca0d8c6e42c048b3362f7cec # v3.30.8
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
@ -63,7 +63,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.30.6
uses: github/codeql-action/autobuild@755f44910c12a3d7ca0d8c6e42c048b3362f7cec # v3.30.8
# Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@ -76,6 +76,6 @@ jobs:
# ./location_of_script_within_repo/buildscript.sh
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@64d10c13136e1c5bce3e5fbde8d4906eeaafc885 # v3.30.6
uses: github/codeql-action/analyze@755f44910c12a3d7ca0d8c6e42c048b3362f7cec # v3.30.8
with:
category: '/language:${{matrix.language}}'

View file

@ -52,7 +52,7 @@ jobs:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0

View file

@ -29,7 +29,7 @@ jobs:
persist-credentials: true
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0

View file

@ -65,7 +65,7 @@ jobs:
uses: astral-sh/setup-uv@d0cc045d04ccac9d8b7881df0226f9e82c39688e # v6.8.0
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
@ -128,7 +128,7 @@ jobs:
name: release-apk-signed
- name: Create draft release
uses: softprops/action-gh-release@aec2ec56f94eb8180ceec724245f64ef008b89f5 # v2.4.0
uses: softprops/action-gh-release@6da8fa9354ddfdc4aeace5fc48d7f679b5214090 # v2.4.1
with:
draft: true
tag_name: ${{ env.IMMICH_VERSION }}

View file

@ -21,7 +21,7 @@ jobs:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
# Setup .npmrc file to publish to npm
- uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0

View file

@ -60,7 +60,7 @@ jobs:
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -97,7 +97,7 @@ jobs:
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -137,7 +137,7 @@ jobs:
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -172,7 +172,7 @@ jobs:
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -209,7 +209,7 @@ jobs:
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -240,7 +240,7 @@ jobs:
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -281,7 +281,7 @@ jobs:
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -320,7 +320,7 @@ jobs:
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -352,7 +352,7 @@ jobs:
persist-credentials: false
submodules: 'recursive'
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -400,7 +400,7 @@ jobs:
persist-credentials: false
submodules: 'recursive'
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -507,7 +507,7 @@ jobs:
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -544,7 +544,7 @@ jobs:
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:
@ -599,7 +599,7 @@ jobs:
with:
persist-credentials: false
- name: Setup pnpm
uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Setup Node
uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5.0.0
with:

View file

@ -6,6 +6,10 @@ Users can deploy a custom reverse proxy that forwards requests to Immich. This w
Immich does not support being served on a sub-path such as `location /immich {`. It has to be served on the root path of a (sub)domain.
:::
:::info
If your reverse proxy uses the [Let's Encrypt](https://letsencrypt.org/) [http-01 challenge](https://letsencrypt.org/docs/challenge-types/#http-01-challenge), you may want to verify that the Immich well-known endpoint (`/.well-known/immich`) gets correctly routed to Immich, otherwise it will likely be routed elsewhere and the mobile app may run into connection issues.
:::
### Nginx example config
Below is an example config for nginx. Make sure to set `public_url` to the front-facing URL of your instance, and `backend_url` to the path of the Immich server.
@ -37,29 +41,14 @@ server {
location / {
proxy_pass http://<backend_url>:2283;
}
# useful when using Let's Encrypt http-01 challenge
# location = /.well-known/immich {
# proxy_pass http://<backend_url>:2283;
# }
}
```
#### 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://<backend_url>:2283;
}
```
By doing so, you'll maintain the functionality of Let's Encrypt while allowing mobile clients to access the necessary Immich path without obstruction.
### Caddy example config
As an alternative to nginx, you can also use [Caddy](https://caddyserver.com/) as a reverse proxy (with automatic HTTPS configuration). Below is an example config.

View file

@ -1,12 +0,0 @@
# Community Guides
This page lists community guides that are written around Immich, but not officially supported by the development team.
:::warning
This list comes with no guarantees about security, performance, reliability, or accuracy. Use at your own risk.
:::
import CommunityGuides from '../src/components/community-guides.tsx';
import React from 'react';
<CommunityGuides />

View file

@ -1,12 +0,0 @@
# Community Projects
This page lists community projects that are built around Immich, but not officially supported by the development team.
:::warning
This list comes with no guarantees about security, performance, reliability, or accuracy. Use at your own risk.
:::
import CommunityProjects from '../src/components/community-projects.tsx';
import React from 'react';
<CommunityProjects />

View file

@ -182,7 +182,7 @@ For example to get a list of files that would be uploaded for further
processing:
```bash
immich upload --dry-run . | tail -n +4 | jq .newFiles[]
immich upload --dry-run . | tail -n +6 | jq .newFiles[]
```
### Obtain the API Key

View file

@ -57,6 +57,22 @@ You do not need to redo any machine learning jobs after enabling hardware accele
- Ensure the server's kernel version is new enough to use the device for hardware acceleration.
- Expect higher RAM usage when using OpenVINO compared to CPU processing.
#### OpenVINO-WSL
- Ensure your container can access the /dev/dri directory, you can verify this by doing `docker exec -t immich_machine_learning ls -la /dev/dri`. If this is not the case execute `getent group render` and `getent group video` on the WSL host, then add those groups to hwaccel.ml.yaml
```yaml
openvino-wsl:
devices:
- /dev/dri:/dev/dri
- /dev/dxg:/dev/dxg
volumes:
- /dev/bus/usb:/dev/bus/usb
- /usr/lib/wsl:/usr/lib/wsl
group_add:
- 44 # Replace this number with the number you found with getent group video
- 992 # Replace this number with the number you found with getent group render
```
#### RKNN
- You must have a supported Rockchip SoC: only RK3566, RK3568, RK3576 and RK3588 are supported at this moment.

View file

@ -3,7 +3,6 @@ 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

View file

@ -1,5 +1,6 @@
The mobile app can be downloaded from the following places:
- Obtainium: You can get your Obtainium config link from the [Utilities page of your Immich server](https://my.immich.app/utilities).
- [Google Play Store](https://play.google.com/store/apps/details?id=app.alextran.immich)
- [Apple App Store](https://apps.apple.com/us/app/immich/id1613945652)
- [F-Droid](https://f-droid.org/packages/app.alextran.immich)

View file

@ -1,108 +0,0 @@
import Link from '@docusaurus/Link';
import React from 'react';
interface CommunityGuidesProps {
title: string;
description: string;
url: string;
}
const guides: CommunityGuidesProps[] = [
{
title: 'Cloudflare Tunnels with SSO/OAuth',
description: `Setting up Cloudflare Tunnels and a SaaS App for Immich.`,
url: 'https://github.com/immich-app/immich/discussions/8299',
},
{
title: 'Database backup in TrueNAS',
description: `Create a database backup with pgAdmin in TrueNAS.`,
url: 'https://github.com/immich-app/immich/discussions/8809',
},
{
title: 'Unraid backup scripts',
description: `Back up your assets in Unraid with a pre-prepared script.`,
url: 'https://github.com/immich-app/immich/discussions/8416',
},
{
title: 'Sync folders with albums',
description: `synchronize folders in imported library with albums having the folders name.`,
url: 'https://github.com/immich-app/immich/discussions/3382',
},
{
title: 'Immich Podman Quadlets Handbook',
description:
'A rewrite of the original Immich Docker Compose file using Podman Quadlets, with a set of extra guides in the repositorys wiki.',
url: 'https://github.com/linux-universe/immich-podman-quadlets/blob/main/README.md',
},
{
title: 'Podman/Quadlets Install',
description: 'Documentation for simple podman setup using quadlets.',
url: 'https://github.com/tbelway/immich-podman-quadlets/blob/main/docs/install/podman-quadlet.md',
},
{
title: 'Google Photos import + 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.',
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.',
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',
},
{
title: 'Immich remote access with NordVPN Meshnet',
description: 'Access Immich with an end-to-end encrypted connection.',
url: 'https://meshnet.nordvpn.com/how-to/remote-files-media-access/immich-remote-access',
},
{
title: 'Trust Self Signed Certificates with Immich - OAuth Setup',
description:
'Set up Certificate Authority trust with Immich, and your private OAuth2/OpenID service, while using a private CA for HTTPS commication.',
url: 'https://github.com/immich-app/immich/discussions/18614',
},
];
function CommunityGuide({ title, description, url }: CommunityGuidesProps): JSX.Element {
return (
<section className="flex flex-col gap-4 justify-between dark:bg-immich-dark-gray bg-immich-gray dark:border-0 border-gray-200 border border-solid rounded-2xl px-4 py-6">
<div className="flex flex-col gap-2">
<p className="m-0 items-start flex gap-2 text-2xl font-bold text-immich-primary dark:text-immich-dark-primary">
<span>{title}</span>
</p>
<p className="m-0 text-sm text-gray-600 dark:text-gray-300">{description}</p>
<p className="m-0 text-sm text-gray-600 dark:text-gray-300 my-4">
<a href={url}>{url}</a>
</p>
</div>
<div className="flex">
<Link
className="px-4 py-2 bg-immich-primary/10 dark:bg-gray-300 rounded-xl text-sm hover:no-underline text-immich-primary dark:text-immich-dark-bg font-semibold"
to={url}
>
View Guide
</Link>
</div>
</section>
);
}
export default function CommunityGuides(): JSX.Element {
return (
<div className="grid grid-cols-1 xl:grid-cols-2 gap-4">
{guides.map((guides) => (
<CommunityGuide {...guides} />
))}
</div>
);
}

View file

@ -1,158 +0,0 @@
import Link from '@docusaurus/Link';
import React from 'react';
interface CommunityProjectProps {
title: string;
description: string;
url: string;
}
const projects: CommunityProjectProps[] = [
{
title: 'immich-go',
description: `An alternative to the immich-CLI that doesn't depend on nodejs. It specializes in importing Google Photos Takeout archives.`,
url: 'https://github.com/simulot/immich-go',
},
{
title: 'ImmichFrame',
description: 'Run an Immich slideshow in a photo frame.',
url: 'https://github.com/3rob3/ImmichFrame',
},
{
title: 'API Album Sync',
description: 'A Python script to sync folders as albums.',
url: 'https://git.orenit.solutions/open/immichalbumpull',
},
{
title: 'Immich-Tools',
description: 'Provides scripts for handling problems on the repair page.',
url: 'https://github.com/clumsyCoder00/Immich-Tools',
},
{
title: 'Lightroom Publisher: mi.Immich.Publisher',
description: 'Lightroom plugin to publish photos from Lightroom collections to Immich albums.',
url: 'https://github.com/midzelis/mi.Immich.Publisher',
},
{
title: 'Lightroom Immich Plugin: lrc-immich-plugin',
description:
'Lightroom plugin to publish, export photos from Lightroom to Immich. Import from Immich to Lightroom is also supported.',
url: 'https://blog.fokuspunk.de/lrc-immich-plugin/',
},
{
title: 'Immich-Tiktok-Remover',
description: 'Script to search for and remove TikTok videos from your Immich library.',
url: 'https://github.com/mxc2/immich-tiktok-remover',
},
{
title: 'Immich Android TV',
description: 'Unofficial Immich Android TV app.',
url: 'https://github.com/giejay/Immich-Android-TV',
},
{
title: 'Create albums from folders',
description: 'A Python script to create albums based on the folder structure of an external library.',
url: 'https://github.com/Salvoxia/immich-folder-album-creator',
},
{
title: 'Powershell Module PSImmich',
description: 'Powershell Module for the Immich API',
url: 'https://github.com/hanpq/PSImmich',
},
{
title: 'Immich Distribution',
description: 'Snap package for easy install and zero-care auto updates of Immich. Self-hosted photo management.',
url: 'https://immich-distribution.nsg.cc',
},
{
title: 'Immich Kiosk',
description: 'Lightweight slideshow to run on kiosk devices and browsers.',
url: 'https://github.com/damongolding/immich-kiosk',
},
{
title: 'Immich Power Tools',
description: 'Power tools for organizing your immich library.',
url: 'https://github.com/varun-raj/immich-power-tools',
},
{
title: 'Immich Public Proxy',
description:
'Share your Immich photos and albums in a safe way without exposing your Immich instance to the public.',
url: 'https://github.com/alangrainger/immich-public-proxy',
},
{
title: 'Immich Kodi',
description: 'Unofficial Kodi plugin for Immich.',
url: 'https://github.com/vladd11/immich-kodi',
},
{
title: 'Immich Downloader',
description: 'Downloads a configurable number of random photos based on people or album ID.',
url: 'https://github.com/jon6fingrs/immich-dl',
},
{
title: 'Immich Upload Optimizer',
description: 'Automatically optimize files uploaded to Immich in order to save storage space',
url: 'https://github.com/miguelangel-nubla/immich-upload-optimizer',
},
{
title: 'Immich Machine Learning Load Balancer',
description: 'Speed up your machine learning by load balancing your requests to multiple computers',
url: 'https://github.com/apetersson/immich_ml_balancer',
},
{
title: 'Immich Drop Uploader',
description: 'A tiny, zero-login web app for collecting photos/videos from anyone into your Immich server.',
url: 'https://github.com/Nasogaa/immich-drop',
},
{
title: 'Immich Birthday Sync',
description: 'Bulk-upload and -download birthdays, with CardDAV sync support',
url: 'https://github.com/sid3windr/immich-birthday',
},
{
title: 'Immich Stack',
description: 'Auto-stack photos with identical filenames and differing extensions (i.e. JPG+RAW)',
url: 'https://github.com/sid3windr/immich-stack',
},
{
title: 'Immich Stack',
description: 'Automatically groups similar photos into stacks within the Immich photo management system.',
url: 'https://github.com/Majorfi/immich-stack/',
},
];
function CommunityProject({ title, description, url }: CommunityProjectProps): JSX.Element {
return (
<section className="flex flex-col gap-4 justify-between dark:bg-immich-dark-gray bg-immich-gray dark:border-0 border-gray-200 border border-solid rounded-2xl px-4 py-6">
<div className="flex flex-col gap-2">
<p className="m-0 items-start flex gap-2 text-2xl font-bold text-immich-primary dark:text-immich-dark-primary">
<span>{title}</span>
</p>
<p className="m-0 text-sm text-gray-600 dark:text-gray-300">{description}</p>
<p className="m-0 text-sm text-gray-600 dark:text-gray-300 my-4">
<a href={url}>{url}</a>
</p>
</div>
<div className="flex">
<Link
className="px-4 py-2 bg-immich-primary/10 dark:bg-gray-300 rounded-xl text-sm hover:no-underline text-immich-primary dark:text-immich-dark-bg font-semibold"
to={url}
>
View Link
</Link>
</div>
</section>
);
}
export default function CommunityProjects(): JSX.Element {
return (
<div className="grid grid-cols-1 xl:grid-cols-2 gap-4">
{projects.map((project) => (
<CommunityProject {...project} />
))}
</div>
);
}

View file

@ -1,3 +0,0 @@
export const discordPath =
'M81.15,0c-1.2376,2.1973-2.3489,4.4704-3.3591,6.794-9.5975-1.4396-19.3718-1.4396-28.9945,0-.985-2.3236-2.1216-4.5967-3.3591-6.794-9.0166,1.5407-17.8059,4.2431-26.1405,8.0568C2.779,32.5304-1.6914,56.3725.5312,79.8863c9.6732,7.1476,20.5083,12.603,32.0505,16.0884,2.6014-3.4854,4.8998-7.1981,6.8698-11.0623-3.738-1.3891-7.3497-3.1318-10.8098-5.1523.9092-.6567,1.7932-1.3386,2.6519-1.9953,20.281,9.547,43.7696,9.547,64.0758,0,.8587.7072,1.7427,1.3891,2.6519,1.9953-3.4601,2.0457-7.0718,3.7632-10.835,5.1776,1.97,3.8642,4.2683,7.5769,6.8698,11.0623,11.5419-3.4854,22.3769-8.9156,32.0509-16.0631,2.626-27.2771-4.496-50.9172-18.817-71.8548C98.9811,4.2684,90.1918,1.5659,81.1752.0505l-.0252-.0505ZM42.2802,65.4144c-6.2383,0-11.4159-5.6575-11.4159-12.6535s4.9755-12.6788,11.3907-12.6788,11.5169,5.708,11.4159,12.6788c-.101,6.9708-5.026,12.6535-11.3907,12.6535ZM84.3576,65.4144c-6.2637,0-11.3907-5.6575-11.3907-12.6535s4.9755-12.6788,11.3907-12.6788,11.4917,5.708,11.3906,12.6788c-.101,6.9708-5.026,12.6535-11.3906,12.6535Z';
export const discordViewBox = '0 0 126.644 96';

View file

@ -27,8 +27,10 @@
/administration/password-login /administration/system-settings 307
/features/search /features/searching 307
/features/smart-search /features/searching 307
/guides/api-album-sync /community-projects 307
/guides/remove-offline-files /community-projects 307
/guides/api-album-sync https://awesome.immich.app/ 307
/guides/remove-offline-files https://awesome.immich.app/ 307
/community-guides https://awesome.immich.app/ 307
/community-projects https://awesome.immich.app/ 307
/overview/introduction /overview/quick-start 307
/overview/welcome /overview/quick-start 307
/docs/* /:splat 307

View file

@ -38,6 +38,7 @@ test.describe('Registration', () => {
await page.getByRole('button', { name: 'User Privacy' }).click();
await page.getByRole('button', { name: 'Storage Template' }).click();
await page.getByRole('button', { name: 'Backups' }).click();
await page.getByRole('button', { name: 'Mobile App' }).click();
await page.getByRole('button', { name: 'Done' }).click();
// success
@ -85,6 +86,7 @@ test.describe('Registration', () => {
await page.getByRole('button', { name: 'Theme' }).click();
await page.getByRole('button', { name: 'Language' }).click();
await page.getByRole('button', { name: 'User Privacy' }).click();
await page.getByRole('button', { name: 'Mobile App' }).click();
await page.getByRole('button', { name: 'Done' }).click();
// success

View file

@ -333,7 +333,7 @@
"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.",
"transcoding_max_bitrate": "Taxa de bits màxima",
"transcoding_max_bitrate_description": "Establir una taxa de bits màxima pot fer que les mides dels fitxers siguin més previsibles amb un cost menor per a la qualitat. A 720p, els valors típics són 2600 kbit/s per a VP9 o HEVC, o 4500 kbit/s per a H.264. Desactivat si s'estableix a 0.",
"transcoding_max_bitrate_description": "Establir una taxa de bits màxima pot fer que les mides dels fitxers siguin més previsibles amb un cost menor per a la qualitat. A 720p, els valors típics són 2600 kbit/s per a VP9 o HEVC, o 4500 kbit/s per a H.264. Desactivat si s'estableix a 0. Quan no s'especifica, s'assumeix kbit/s; per tant 5000 i 5000k i 5M son equivalents.",
"transcoding_max_keyframe_interval": "Interval màxim de fotogrames clau",
"transcoding_max_keyframe_interval_description": "Estableix la distància màxima entre fotogrames clau. Els valors més baixos empitjoren l'eficiència de la compressió, però milloren els temps de cerca i poden millorar la qualitat en escenes amb moviment ràpid. 0 estableix aquest valor automàticament.",
"transcoding_optimal_description": "Vídeos superiors a la resolució objectiu o que no tenen un format acceptat",
@ -351,7 +351,7 @@
"transcoding_target_resolution": "Resolució objectiu",
"transcoding_target_resolution_description": "Les resolucions més altes poden conservar més detalls, però triguen més temps a codificar-se, tenen mides de fitxer més grans i poden reduir la capacitat de resposta de l'aplicació.",
"transcoding_temporal_aq": "AQ temporal",
"transcoding_temporal_aq_description": "S'aplica només a NVENC. Augmenta la qualitat de les escenes de baix moviment i alt detall. És possible que no sigui compatible amb dispositius antics.",
"transcoding_temporal_aq_description": "S'aplica només a NVENC. Quantització adaptativa temporal augmenta la qualitat de les escenes de baix moviment i alt detall. És possible que no sigui compatible amb dispositius antics.",
"transcoding_threads": "Fils",
"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",
@ -1039,6 +1039,7 @@
"exif_bottom_sheet_description_error": "No s'ha pogut actualitzar la descripció",
"exif_bottom_sheet_details": "DETALLS",
"exif_bottom_sheet_location": "UBICACIÓ",
"exif_bottom_sheet_no_description": "Sense descrioció",
"exif_bottom_sheet_people": "PERSONES",
"exif_bottom_sheet_person_add_person": "Afegir nom",
"exit_slideshow": "Surt de la presentació de diapositives",
@ -1806,6 +1807,8 @@
"setting_notifications_subtitle": "Ajusta les preferències de notificació",
"setting_notifications_total_progress_subtitle": "Progrés general de la pujada (elements completats/total)",
"setting_notifications_total_progress_title": "Mostra el progrés total de la còpia de seguretat en segon pla",
"setting_video_viewer_auto_play_subtitle": "Comença a veure videos quan s'obrin",
"setting_video_viewer_auto_play_title": "Veure videos automàticament",
"setting_video_viewer_looping_title": "Bucle",
"setting_video_viewer_original_video_subtitle": "Quan reproduïu un vídeo des del servidor, reproduïu l'original encara que hi hagi una transcodificació disponible. Pot conduir a l'amortització. Els vídeos disponibles localment es reprodueixen en qualitat original independentment d'aquesta configuració.",
"setting_video_viewer_original_video_title": "Força el vídeo original",

View file

@ -211,6 +211,8 @@
"notification_email_ignore_certificate_errors_description": "Ignorovat chyby ověření certifikátu TLS (nedoporučuje se)",
"notification_email_password_description": "Heslo pro ověření na e-mailovém serveru",
"notification_email_port_description": "Port e-mailového serveru (např. 25, 465 nebo 587)",
"notification_email_secure": "SMTPS",
"notification_email_secure_description": "Používat SMTPS (SMTP přes TLS)",
"notification_email_sent_test_email_button": "Odeslat testovací e-mail a uložit",
"notification_email_setting_description": "Nastavení pro zasílání e-mailových oznámení",
"notification_email_test_email": "Odeslat testovací e-mail",
@ -333,7 +335,7 @@
"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.",
"transcoding_max_bitrate": "Maximální datový tok",
"transcoding_max_bitrate_description": "Nastavení maximálního datového toku může zvýšit předvídatelnost velikosti souborů za cenu menší újmy na kvalitě. Při rozlišení 720p jsou typické hodnoty 2600 kbit/s pro VP9 nebo HEVC nebo 4500 kbit/s pro H.264. Je zakázáno, pokud je nastavena hodnota 0.",
"transcoding_max_bitrate_description": "Nastavení maximálního datového toku může zvýšit předvídatelnost velikosti souborů za cenu menší újmy na kvalitě. Při rozlišení 720p jsou typické hodnoty 2600 kbit/s pro VP9 nebo HEVC nebo 4500 kbit/s pro H.264. Pokud je nastaveno na 0, je zakázáno. Pokud není zadána žádná jednotka, předpokládá se k (pro kbit/s); proto jsou 5000, 5000k a 5M (pro Mbit/s) ekvivalentní.",
"transcoding_max_keyframe_interval": "Maximální interval klíčových snímků",
"transcoding_max_keyframe_interval_description": "Nastavuje maximální vzdálenost mezi klíčovými snímky. Nižší hodnoty zhoršují účinnost komprese, ale zlepšují rychlost při přeskakování a mohou zlepšit kvalitu ve scénách s rychlým pohybem. Hodnota 0 nastavuje tuto hodnotu automaticky.",
"transcoding_optimal_description": "Videa s vyšším než cílovým rozlišením nebo videa, která nejsou v akceptovaném formátu",
@ -351,7 +353,7 @@
"transcoding_target_resolution": "Cílové rozlišení",
"transcoding_target_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.",
"transcoding_temporal_aq": "Časové AQ",
"transcoding_temporal_aq_description": "Platí pouze pro NVENC. Zvyšuje kvalitu scén s vysokým počtem detailů a malým počtem pohybů. Nemusí být kompatibilní se staršími zařízeními.",
"transcoding_temporal_aq_description": "Platí pouze pro NVENC. Časová adaptivní kvantizace zvyšuje kvalitu scén s vysokým rozlišením a malým pohybem. Nemusí být kompatibilní se staršími zařízeními.",
"transcoding_threads": "Vlákna",
"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": "Mapování tónů",
@ -466,9 +468,11 @@
"api_key_description": "Tato hodnota se zobrazí pouze jednou. Před zavřením okna ji nezapomeňte zkopírovat.",
"api_key_empty": "Název klíče API by neměl být prázdný",
"api_keys": "API klíče",
"app_architecture_variant": "Varianta (architektura)",
"app_bar_signout_dialog_content": "Určitě se chcete odhlásit?",
"app_bar_signout_dialog_ok": "Ano",
"app_bar_signout_dialog_title": "Odhlásit se",
"app_download_links": "Odkazy ke stažení aplikace",
"app_settings": "Aplikace",
"appears_in": "Vyskytuje se v",
"apply_count": "Použít ({count, number})",
@ -866,7 +870,7 @@
"edit_date_and_time": "Upravit datum a čas",
"edit_date_and_time_action_prompt": "{count} časových údajů upraveno",
"edit_date_and_time_by_offset": "Posunout datum",
"edit_date_and_time_by_offset_interval": "Nový rozsah dat: {from} {to}",
"edit_date_and_time_by_offset_interval": "Nový rozsah dat: {from} - {to}",
"edit_description": "Upravit popis",
"edit_description_prompt": "Vyberte nový popis:",
"edit_exclusion_pattern": "Upravit vzor vyloučení",
@ -1039,6 +1043,7 @@
"exif_bottom_sheet_description_error": "Chyba při aktualizaci popisu",
"exif_bottom_sheet_details": "PODROBNOSTI",
"exif_bottom_sheet_location": "POLOHA",
"exif_bottom_sheet_no_description": "Žádný popisek",
"exif_bottom_sheet_people": "LIDÉ",
"exif_bottom_sheet_person_add_person": "Přidat jméno",
"exit_slideshow": "Ukončit prezentaci",
@ -1345,6 +1350,8 @@
"minute": "Minuta",
"minutes": "Minut",
"missing": "Chybějící",
"mobile_app": "Mobilní aplikace",
"mobile_app_download_onboarding_note": "K těmto možnostem se můžete znovu dostat ze stránky Nástroje.",
"model": "Model",
"month": "Měsíc",
"monthly_title_text_date_format": "LLLL y",
@ -1363,6 +1370,8 @@
"my_albums": "Moje alba",
"name": "Jméno",
"name_or_nickname": "Jméno nebo přezdívka",
"navigate": "Navigovat",
"navigate_to_time": "Navigovat na čas",
"network_requirement_photos_upload": "Pro zálohování fotografií používat mobilní data",
"network_requirement_videos_upload": "Pro zálohování videí používat mobilní data",
"network_requirements": "Požadavky na síť",
@ -1372,6 +1381,7 @@
"never": "Nikdy",
"new_album": "Nové album",
"new_api_key": "Nový API klíč",
"new_date_range": "Nový rozsah dat",
"new_password": "Nové heslo",
"new_person": "Nová osoba",
"new_pin_code": "Nový PIN kód",
@ -1422,6 +1432,8 @@
"notifications": "Oznámení",
"notifications_setting_description": "Správa oznámení",
"oauth": "OAuth",
"obtainium_configurator": "Obtainium konfigurátor",
"obtainium_configurator_instructions": "Prosím, vytvořte API klíč a vyberte variantu pro vytvoření odkazu na konfiguraci Obtainia.",
"official_immich_resources": "Oficiální zdroje Immich",
"offline": "Offline",
"offset": "Posun",
@ -1626,7 +1638,7 @@
"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_custom_date_range": "Odstranit vlastní rozsah dat",
"remove_deleted_assets": "Odstranit offline soubory",
"remove_from_album": "Odstranit z alba",
"remove_from_album_action_prompt": "{count} odstraněných z alba",
@ -1708,7 +1720,7 @@
"search_filter_camera_title": "Výběr typu fotoaparátu",
"search_filter_date": "Datum",
"search_filter_date_interval": "{start} až {end}",
"search_filter_date_title": "Výběr rozmezí dat",
"search_filter_date_title": "Výběr rozsahu dat",
"search_filter_display_option_not_in_album": "Není v albu",
"search_filter_display_options": "Možnost zobrazení",
"search_filter_filename": "Vyhledávat podle názvu souboru",
@ -1806,6 +1818,8 @@
"setting_notifications_subtitle": "Přizpůsobení předvoleb oznámení",
"setting_notifications_total_progress_subtitle": "Celkový průběh nahrání (hotovo/celkově)",
"setting_notifications_total_progress_title": "Zobrazit celkový průběh zálohování na pozadí",
"setting_video_viewer_auto_play_subtitle": "Automaticky spustit přehrávání videí při jejich otevření",
"setting_video_viewer_auto_play_title": "Automatické přehrávání videí",
"setting_video_viewer_looping_title": "Smyčka",
"setting_video_viewer_original_video_subtitle": "Při streamování videa ze serveru přehrávat originál, i když je k dispozici překódovaná verze. Může vést k bufferování. Videa dostupná lokálně se přehrávají v původní kvalitě bez ohledu na toto nastavení.",
"setting_video_viewer_original_video_title": "Vynutit původní video",

View file

@ -33,6 +33,7 @@
"add_to_albums": "Tilføj til albummer",
"add_to_albums_count": "Tilføj til albummer({count})",
"add_to_shared_album": "Tilføj til delt album",
"add_upload_to_stack": "Tilføj upload til stack",
"add_url": "Tilføj URL",
"added_to_archive": "Tilføjet til arkiv",
"added_to_favorites": "Tilføjet til favoritter",
@ -332,7 +333,7 @@
"transcoding_max_b_frames": "Maksimum B-frames",
"transcoding_max_b_frames_description": "Højere værdier forbedrer kompressionseffektivitet, men kan gøre indkodning langsommere. Er måske ikke kompatibelt med hardware-acceleration på ældre enheder. 0 slår B-frames fra, mens -1 sætter denne værdi automatisk.",
"transcoding_max_bitrate": "Maksimal bitrate",
"transcoding_max_bitrate_description": "At sætte en maksmimal bitrate kan gøre filstørrelserne mere forudsigelige med et lille tab i kvalitet. Ved 720p er almindelige værdier 2600 kbit/s for VP9 eller HEVC, eller 4500 kbit/s for H.264. Slået fra hvis sat til 0.",
"transcoding_max_bitrate_description": "Indstilling af en maksimal bitrate kan gøre filstørrelser mere forudsigelige, men med et mindre fald i kvaliteten. Ved 720p er typiske værdier 2600 kbit/s for VP9 eller HEVC eller 4500 kbit/s for H.264. Deaktiveret, hvis den er indstillet til 0. Når der ikke er angivet nogen enhed, antages k (for kbit/s); derfor er 5000, 5000k og 5M (for Mbit/s) ækvivalente.",
"transcoding_max_keyframe_interval": "Maksimal keyframe-interval",
"transcoding_max_keyframe_interval_description": "Sætter den maksimale frameafstand mellem keyframes. Lavere værdier forringer kompressionseffektiviteten, men forbedrer søgetider og kan forbedre kvaliteten i scener med hurtig bevægelse. 0 sætter denne værdi automatisk.",
"transcoding_optimal_description": "Videoer højere end målopløsningen eller ikke i et godkendt format",
@ -1038,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Fejl ved opdatering af beskrivelsen",
"exif_bottom_sheet_details": "DETALJER",
"exif_bottom_sheet_location": "LOKATION",
"exif_bottom_sheet_no_description": "Ingen beskrivelse",
"exif_bottom_sheet_people": "PERSONER",
"exif_bottom_sheet_person_add_person": "Tilføj navn",
"exit_slideshow": "Afslut slideshow",
@ -1362,6 +1364,8 @@
"my_albums": "Mine albummer",
"name": "Navn",
"name_or_nickname": "Navn eller kælenavn",
"navigate": "Naviger",
"navigate_to_time": "Naviger til tid",
"network_requirement_photos_upload": "Benyt mobildatanettet for at sikkerhedskopiere dine fotos",
"network_requirement_videos_upload": "Benyt mobildatanettet for at sikkerhedskopiere dine videoer",
"network_requirements": "Netværkskrav",
@ -1371,6 +1375,7 @@
"never": "aldrig",
"new_album": "Nyt album",
"new_api_key": "Ny API-nøgle",
"new_date_range": "Nyt datointerval",
"new_password": "Ny adgangskode",
"new_person": "Ny person",
"new_pin_code": "Ny PIN kode",
@ -1805,6 +1810,8 @@
"setting_notifications_subtitle": "Tilpas dine notifikationspræferencer",
"setting_notifications_total_progress_subtitle": "Samlet uploadstatus (færdige/samlet antal elementer)",
"setting_notifications_total_progress_title": "Vis samlet baggrundsuploadstatus",
"setting_video_viewer_auto_play_subtitle": "Begynd automatisk at afspille videoer, når de åbnes",
"setting_video_viewer_auto_play_title": "Automatisk afspilning af videoer",
"setting_video_viewer_looping_title": "Looper",
"setting_video_viewer_original_video_subtitle": "Når der streames video fra serveren, afspil da den originale selv når en omkodet udgave er tilgængelig. Kan føre til buffering. Videoer, der er tilgængelige lokalt, afspilles i original kvalitet uanset denne indstilling.",
"setting_video_viewer_original_video_title": "Tving original video",

View file

@ -53,7 +53,7 @@
"backup_onboarding_1_description": "Offsite-Kopie in der Cloud oder an einem anderen physischen Ort.",
"backup_onboarding_2_description": "lokale Kopien auf verschiedenen Geräten. Dazu gehören die Hauptdateien und eine lokale Sicherung dieser Dateien.",
"backup_onboarding_3_description": "Kopien deiner Daten inklusive Originaldateien. Dies umfasst 1 Kopie an einem anderen Ort und 2 lokale Kopien.",
"backup_onboarding_description": "Eine <backblaze-link>3-2-1 Sicherungssrategie</backblaze-link> wird empfohlen, um deine Daten zu schützen. Du solltest sowohl Kopien deiner hochgeladenen Fotos/Videos als auch der Immich-Datenbank aufbewahren, um eine umfassende Sicherungslösung zu haben.",
"backup_onboarding_description": "Eine <backblaze-link>3-2-1 Sicherungsstrategie</backblaze-link> wird empfohlen, um deine Daten zu schützen. Du solltest sowohl Kopien deiner hochgeladenen Fotos/Videos als auch der Immich-Datenbank aufbewahren, um eine umfassende Sicherungslösung zu haben.",
"backup_onboarding_footer": "Weitere Informationen zum Sichern von Immich findest du in der <link>Dokumentation</link>.",
"backup_onboarding_parts_title": "Eine 3-2-1-Sicherung umfasst:",
"backup_onboarding_title": "Sicherungen",
@ -333,7 +333,7 @@
"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.",
"transcoding_max_bitrate": "Maximale Bitrate",
"transcoding_max_bitrate_description": "Die Festlegung einer maximalen Bitrate kann die Dateigrößen vorhersagbarer machen, ohne dass die Qualität darunter leidet. Bei 720p sind typische Werte 2600 kbit/s für VP9 oder HEVC oder 4500 kbit/s für H.264. Deaktiviert, wenn der Wert auf 0 gesetzt ist.",
"transcoding_max_bitrate_description": "Das Festlegen einer maximalen Bitrate kann die Dateigrößen vorhersagbarer machen, ohne dass die Qualität darunter leidet. Bei 720p sind typische Werte 2600 kbit/s für VP9 oder HEVC oder 4500 kbit/s für H.264. Deaktiviert, wenn der Wert auf 0 gesetzt ist. Wenn keine Einheit angegeben wird, wird von k (für kbit/s) ausgegangen; also sind 5000, 5000k und 5M (für Mbit/s) identisch.",
"transcoding_max_keyframe_interval": "Maximales Keyframe-Intervall",
"transcoding_max_keyframe_interval_description": "Legt den maximalen Frame-Abstand zwischen Keyframes fest. Niedrigere Werte verschlechtern die Komprimierungseffizienz, verbessern aber die Suchzeiten und können die Qualität in Szenen mit schnellen Bewegungen verbessern. Bei 0 wird dieser Wert automatisch eingestellt.",
"transcoding_optimal_description": "Videos mit einer höheren Auflösung als der Zielauflösung oder in einem nicht akzeptierten Format",
@ -351,7 +351,7 @@
"transcoding_target_resolution": "Ziel-Auflösung",
"transcoding_target_resolution_description": "Höhere Auflösungen können mehr Details erhalten, benötigen aber mehr Zeit für die Codierung, haben größere Dateigrößen und können die Reaktionszeit der Anwendung beeinträchtigen.",
"transcoding_temporal_aq": "Temporäre AQ",
"transcoding_temporal_aq_description": "Gilt nur für NVENC. Verbessert die Qualität von Szenen mit hohem Detailreichtum und geringen Bewegungen. Dies ist möglicherweise nicht mit älteren Geräten kompatibel.",
"transcoding_temporal_aq_description": "Gilt nur für NVENC. Zeitlich adaptive Quantisierung verbessert die Qualität von Szenen mit hohem Detailreichtum und geringen Bewegungen. Dies ist möglicherweise nicht mit älteren Geräten kompatibel.",
"transcoding_threads": "Threads",
"transcoding_threads_description": "Höhere Werte führen zu einer schnelleren Kodierung, lassen dem Server jedoch weniger Spielraum für die Verarbeitung anderer Aufgaben im aktiven Zustand. Dieser Wert sollte nicht höher sein als die Anzahl der CPU-Kerne. Maximiert die Auslastung, wenn der Wert auf 0 gesetzt wird.",
"transcoding_tone_mapping": "Farbton-Mapping",
@ -1807,6 +1807,8 @@
"setting_notifications_subtitle": "Benachrichtigungen anpassen",
"setting_notifications_total_progress_subtitle": "Gesamter Upload-Fortschritt (abgeschlossen/Anzahl Elemente)",
"setting_notifications_total_progress_title": "Zeige den Gesamtfortschritt der Hintergrundsicherung",
"setting_video_viewer_auto_play_subtitle": "Videos automatisch wiedergeben sobald sie geöffnet werden",
"setting_video_viewer_auto_play_title": "Videos automatisch wiedergeben",
"setting_video_viewer_looping_title": "Video-Wiederholung",
"setting_video_viewer_original_video_subtitle": "Beim Streaming eines Videos vom Server wird das Original abgespielt, auch wenn eine Transkodierung verfügbar ist. Kann zu Pufferung führen. Lokal verfügbare Videos werden unabhängig von dieser Einstellung in Originalqualität wiedergegeben.",
"setting_video_viewer_original_video_title": "Originalvideo erzwingen",

View file

@ -333,7 +333,7 @@
"transcoding_max_b_frames": "Μέγιστος αριθμός B-frames(Bidirectional Predictive Frames)",
"transcoding_max_b_frames_description": "Οι υψηλότερες τιμές βελτιώνουν την αποδοτικότητα της συμπίεσης, αλλά επιβραδύνουν την κωδικοποίηση. Ενδέχεται να μην είναι συμβατές με την επιτάχυνση υλικού σε παλαιότερες συσκευές. Η τιμή 0 απενεργοποιεί τα B-frames, ενώ η -1, τη ρυθμίζει αυτόματα.",
"transcoding_max_bitrate": "Μέγιστος ρυθμός μετάδοσης (bitrate)",
"transcoding_max_bitrate_description": "Η ρύθμιση ενός μέγιστου ρυθμού μετάδοσης(bitrate) μπορεί να κάνει το μέγεθος των αρχείων πιο προβλέψιμο, αλλά με ένα μικρό κόστος στην ποιότητα. Στην ανάλυση των 720p, οι τυπικές τιμές είναι 2600 kbit/s για VP9 ή HEVC, ή 4500 kbit/s για H.264. Απενεργοποιείται εάν οριστεί σε 0.",
"transcoding_max_bitrate_description": "Ο καθορισμός του μέγιστου bitrate μπορεί να κάνει το μέγεθος των αρχείων πιο προβλέψιμο, με ένα μικρό κόστος στην ποιότητα. Στα 720p, οι τυπικές τιμές είναι 2600 kbit/s για VP9 ή HEVC, ή 4500 kbit/s για H.264. Αν οριστεί σε 0, η ρύθμιση απενεργοποιείται. Όταν δεν καθορίζεται, θεωρείται το k (για kbit/s)· επομένως τα 5000, 5000k και 5M (για Mbit/s) είναι ισοδύναμα.",
"transcoding_max_keyframe_interval": "Μέγιστο χρονικό διάστημα μεταξύ των καρέ αναφοράς (keyframe)",
"transcoding_max_keyframe_interval_description": "Ορίζει το μέγιστο διάστημα μεταξύ των καρέ αναφοράς. Χαμηλότερες τιμές μειώνουν την αποδοτικότητα συμπίεσης, αλλά βελτιώνουν τον χρόνο αναζήτησης και μπορεί να βελτιώσουν την ποιότητα σε σκηνές με γρήγορη κίνηση. Η τιμή 0 ρυθμίζει αυτό το διάστημα αυτόματα.",
"transcoding_optimal_description": "Βίντεο με ανώτερη ανάλυση από την επιθυμητή ή σε μη αποδεκτή μορφή",
@ -351,7 +351,7 @@
"transcoding_target_resolution": "Επιθυμητή ανάλυση",
"transcoding_target_resolution_description": "Οι υψηλότερες αναλύσεις μπορούν να διατηρήσουν περισσότερες λεπτομέρειες, αλλά απαιτούν περισσότερο χρόνο για κωδικοποίηση, παράγουν μεγαλύτερα αρχεία και μπορεί να μειώσουν την απόκριση της εφαρμογής.",
"transcoding_temporal_aq": "Χρονική Προσαρμοστική Ποιότητα AQ(Adaptive Quantization)",
"transcoding_temporal_aq_description": "Ισχύει μόνο για NVENC. Αυξάνει την ποιότητα σε σκηνές με υψηλή λεπτομέρεια και χαμηλή κίνηση. Ενδέχεται να μην είναι συμβατό με παλαιότερες συσκευές.",
"transcoding_temporal_aq_description": "Ισχύει μόνο για το NVENC. Η Χρονική προσαρμογή ποιότητας (Temporal Adaptive Quantization) βελτιώνει την ποιότητα σε σκηνές με υψηλή λεπτομέρεια και χαμηλή κίνηση. Ενδέχεται να μην είναι συμβατή με παλαιότερες συσκευές.",
"transcoding_threads": "Νήματα (παράλληλες διεργασίες)",
"transcoding_threads_description": "Οι υψηλότερες τιμές οδηγούν σε ταχύτερη κωδικοποίηση, αλλά αφήνουν λιγότερο χώρο στον διακομιστή για να επεξεργαστεί άλλες εργασίες όσο είναι ενεργή. Αυτή η τιμή δεν πρέπει να ξεπερνά τον αριθμό των πυρήνων του επεξεργαστή. Η μέγιστη αξιοποίηση επιτυγχάνεται αν οριστεί στο 0.",
"transcoding_tone_mapping": "Χαρτογράφηση χρωματικών τόνων",
@ -1039,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Σφάλμα κατά την ενημέρωση της περιγραφής",
"exif_bottom_sheet_details": "ΛΕΠΤΟΜΕΡΕΙΕΣ",
"exif_bottom_sheet_location": "ΤΟΠΟΘΕΣΙΑ",
"exif_bottom_sheet_no_description": "Καμία περιγραφή",
"exif_bottom_sheet_people": "ΑΤΟΜΑ",
"exif_bottom_sheet_person_add_person": "Προσθήκη ονόματος",
"exit_slideshow": "Έξοδος από την παρουσίαση",
@ -1806,6 +1807,8 @@
"setting_notifications_subtitle": "Προσαρμόστε τις προτιμήσεις ειδοποίησης",
"setting_notifications_total_progress_subtitle": "Συνολική πρόοδος μεταφόρτωσης (ολοκληρώθηκε/σύνολο στοιχείων)",
"setting_notifications_total_progress_title": "Εμφάνιση συνολικής προόδου δημιουργίας αντιγράφων ασφαλείας παρασκηνίου",
"setting_video_viewer_auto_play_subtitle": "Αυτόματη αναπαραγωγή βίντεο κατά το άνοιγμά τους",
"setting_video_viewer_auto_play_title": "Αυτόματη αναπαραγωγή βίντεο",
"setting_video_viewer_looping_title": "Συνεχής Επανάληψη",
"setting_video_viewer_original_video_subtitle": "Όταν μεταδίδετε ένα βίντεο από τον διακομιστή, αναπαράγετε το αυθεντικό ακόμη και όταν υπάρχει διαθέσιμο με διαφορετική κωδικοποίηση. Μπορεί να προκαλέσει καθυστέρηση φόρτωσης. Τα βίντεο που είναι διαθέσιμα τοπικά, αναπαράγονται στην αυθεντική ποιότητα, ανεξαρτήτως αυτής της ρύθμισης.",
"setting_video_viewer_original_video_title": "Αναγκαστική αναπαραγωγή αυθεντικού βίντεο",

View file

@ -211,6 +211,8 @@
"notification_email_ignore_certificate_errors_description": "Ignore TLS certificate validation errors (not recommended)",
"notification_email_password_description": "Password to use when authenticating with the email server",
"notification_email_port_description": "Port of the email server (e.g 25, 465, or 587)",
"notification_email_secure": "SMTPS",
"notification_email_secure_description": "Use SMTPS (SMTP over TLS)",
"notification_email_sent_test_email_button": "Send test email and save",
"notification_email_setting_description": "Settings for sending email notifications",
"notification_email_test_email": "Send test email",
@ -466,9 +468,11 @@
"api_key_description": "This value will only be shown once. Please be sure to copy it before closing the window.",
"api_key_empty": "Your API Key name shouldn't be empty",
"api_keys": "API Keys",
"app_architecture_variant": "Variant (Architecture)",
"app_bar_signout_dialog_content": "Are you sure you want to sign out?",
"app_bar_signout_dialog_ok": "Yes",
"app_bar_signout_dialog_title": "Sign out",
"app_download_links": "App Download Links",
"app_settings": "App Settings",
"appears_in": "Appears in",
"apply_count": "Apply ({count, number})",
@ -1346,6 +1350,8 @@
"minute": "Minute",
"minutes": "Minutes",
"missing": "Missing",
"mobile_app": "Mobile App",
"mobile_app_download_onboarding_note": "You can access these options again from the Utilities page.",
"model": "Model",
"month": "Month",
"monthly_title_text_date_format": "MMMM y",
@ -1426,6 +1432,8 @@
"notifications": "Notifications",
"notifications_setting_description": "Manage notifications",
"oauth": "OAuth",
"obtainium_configurator": "Obtainium Configurator",
"obtainium_configurator_instructions": "Please create an API key and select a variant to create your Obtainium configuration link.",
"official_immich_resources": "Official Immich Resources",
"offline": "Offline",
"offset": "Offset",

View file

@ -202,7 +202,7 @@
"nightly_tasks_sync_quota_usage_setting_description": "Actualizar la cuota de almacenamiento del usuario, según el uso actual",
"no_paths_added": "No se han agregado rutas",
"no_pattern_added": "No se han agregado patrones",
"note_apply_storage_label_previous_assets": "Nota: Para aplicar la etiqueta de almacenamiento a los elementos que ya se subieron, ejecuta la",
"note_apply_storage_label_previous_assets": "Nota: Para aplicar la Etiqueta de Almacenamiento a los elementos previamente subidos, ejecuta la",
"note_cannot_be_changed_later": "NOTA: ¡No se puede cambiar posteriormente!",
"notification_email_from_address": "Desde",
"notification_email_from_address_description": "Dirección de correo electrónico del remitente, por ejemplo: \"Immich Photo Server <noreply@example.com>\". Asegúrate de utilizar una dirección desde la que puedas enviar correos electrónicos.",
@ -241,7 +241,7 @@
"oauth_storage_quota_claim_description": "Fijar la cuota de almacenamiento del usuario automáticamente al valor solicitado.",
"oauth_storage_quota_default": "Cuota de almacenamiento predeterminada (GiB)",
"oauth_storage_quota_default_description": "Cuota (en GiB) que se usará cuando no se solicite un valor específico.",
"oauth_timeout": "Tiempo de espera agotado para la solicitud",
"oauth_timeout": "Tiempo de espera de la solicitud agotado",
"oauth_timeout_description": "Tiempo de espera de solicitudes en milisegundos",
"password_enable_description": "Iniciar sesión con correo electrónico y contraseña",
"password_settings": "Contraseña de Acceso",
@ -333,7 +333,7 @@
"transcoding_max_b_frames": "Maximos B-frames",
"transcoding_max_b_frames_description": "Los valores más altos mejoran la eficiencia de la compresión, pero ralentizan la codificación. Puede que no sea compatible con la aceleración de hardware en dispositivos más antiguos. 0 desactiva los fotogramas B, mientras que -1 establece este valor automáticamente.",
"transcoding_max_bitrate": "Máxima tasa de bits",
"transcoding_max_bitrate_description": "Establecer una tasa de bits máxima puede hacer que los tamaños de archivos sean más predecibles con un costo menor para la calidad. A 720p, los valores típicos son 2600 kbit/s para VP9 o HEVC, o 4500 kbit/s para H.264. Deshabilitado si se establece en 0.",
"transcoding_max_bitrate_description": "Establecer una tasa de bits máxima puede hacer que los tamaños de archivo sean más predecibles a un coste menor en la calidad. A 720p, los valores típicos son 2600 kbit/s para VP9 o HEVC, o 4500 kbit/s para H.264. Se desactiva si se establece en 0. Cuando no se especifica una unidad, se asume k (para kbit/s); por lo tanto, 5000, 5000k y 5M (para Mbit/s) son equivalentes.",
"transcoding_max_keyframe_interval": "Intervalo máximo de fotogramas clave",
"transcoding_max_keyframe_interval_description": "Establece la distancia máxima de fotograma entre fotogramas clave. Los valores más bajos empeoran la eficiencia de la compresión, pero mejoran los tiempos de búsqueda y pueden mejorar la calidad en escenas con movimientos rápidos. 0 establece este valor automáticamente.",
"transcoding_optimal_description": "Vídeos con una resolución superior a la fijada o que no están en un formato aceptado",
@ -351,7 +351,7 @@
"transcoding_target_resolution": "Resolución deseada",
"transcoding_target_resolution_description": "Las resoluciones más altas pueden conservar más detalles, pero la codificación tarda más, tienen tamaños de archivo más grandes y pueden reducir la capacidad de respuesta de la aplicación.",
"transcoding_temporal_aq": "AQ temporal",
"transcoding_temporal_aq_description": "Se aplica únicamente a NVENC. Aumenta la calidad de escenas con mucho detalle y poco movimiento. Puede que no sea compatible con dispositivos más antiguos.",
"transcoding_temporal_aq_description": "Solo se aplica a NVENC. La Cuantificación Adaptativa Temporal aumenta la calidad de las escenas con mucho detalle y poco movimiento. Podría no ser compatible con dispositivos más antiguos.",
"transcoding_threads": "Hilos",
"transcoding_threads_description": "Los valores más altos conducen a una codificación más rápida, pero dejan menos espacio para que el servidor procese otras tareas mientras está activo. Este valor no debe ser mayor que la cantidad de núcleos de CPU. Maximiza la utilización si se establece en 0.",
"transcoding_tone_mapping": "Mapeo de tonos",
@ -445,7 +445,7 @@
"album_viewer_appbar_share_leave": "Abandonar álbum",
"album_viewer_appbar_share_to": "Compartir Con",
"album_viewer_page_share_add_users": "Agregar usuarios",
"album_with_link_access": "Permite que cualquiera que tenga este enlace vea las fotos y las personas del álbum.",
"album_with_link_access": "Permitir que cualquiera que tenga el enlace vea las fotos y las personas del álbum.",
"albums": "Álbumes",
"albums_count": "{count, plural, one {{count, number} álbum} other {{count, number} álbumes}}",
"albums_default_sort_order": "Ordenación por defecto de los álbumes",
@ -459,7 +459,7 @@
"allow_dark_mode": "Permitir modo oscuro",
"allow_edits": "Permitir edición",
"allow_public_user_to_download": "Permitir descargas a los usuarios públicos",
"allow_public_user_to_upload": "Permitir subir fotos a los usuarios públicos",
"allow_public_user_to_upload": "Permitir a los usuarios públicos subir fotos",
"alt_text_qr_code": "Código QR",
"anti_clockwise": "En sentido antihorario",
"api_key": "Clave API",
@ -1039,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Error al actualizar la descripción",
"exif_bottom_sheet_details": "DETALLES",
"exif_bottom_sheet_location": "UBICACIÓN",
"exif_bottom_sheet_no_description": "Sin descripción",
"exif_bottom_sheet_people": "PERSONAS",
"exif_bottom_sheet_person_add_person": "Agregar nombre",
"exit_slideshow": "Salir de la presentación",
@ -1806,6 +1807,8 @@
"setting_notifications_subtitle": "Ajusta tus preferencias de notificación",
"setting_notifications_total_progress_subtitle": "Progreso general de subida (elementos completados/total)",
"setting_notifications_total_progress_title": "Mostrar progreso total de copia de seguridad en segundo plano",
"setting_video_viewer_auto_play_subtitle": "Reproducir vídeos automáticamente al abrirlos",
"setting_video_viewer_auto_play_title": "Reproducir vídeos automáticamente",
"setting_video_viewer_looping_title": "Bucle",
"setting_video_viewer_original_video_subtitle": "Al reproducir un video en streaming desde el servidor, reproducir el original incluso cuando haya una transcodificación disponible. Puede causar buffering. Los videos disponibles localmente se reproducen en calidad original independientemente de esta configuración.",
"setting_video_viewer_original_video_title": "Forzar vídeo original",

View file

@ -211,6 +211,8 @@
"notification_email_ignore_certificate_errors_description": "Ignoreeri TLS sertifikaadi valideerimise vigu (mittesoovituslik)",
"notification_email_password_description": "Parool e-posti serveriga autentimiseks",
"notification_email_port_description": "E-posti serveri port (nt. 25, 465 või 587)",
"notification_email_secure": "SMTPS",
"notification_email_secure_description": "Kasuta SMTPS-i (SMTP üle TLS-i)",
"notification_email_sent_test_email_button": "Saada test e-kiri ja salvesta",
"notification_email_setting_description": "E-posti teel teavituste saatmise seaded",
"notification_email_test_email": "Saada test e-kiri",
@ -333,7 +335,7 @@
"transcoding_max_b_frames": "Maksimaalne B-kaadrite arv",
"transcoding_max_b_frames_description": "Kõrgemad väärtused parandavad pakkimise efektiivsust, aga aeglustavad kodeerimist. See valik ei pruugi olla ühilduv riistvaralise kiirendusega vanematel seadmetel. 0 lülitab B-kaadrid välja, -1 määrab väärtuse automaatselt.",
"transcoding_max_bitrate": "Maksimaalne bitisagedus",
"transcoding_max_bitrate_description": "Maksimaalse bitisageduse määramine teeb failisuurused ennustatavamaks, väikese kvaliteedikao hinnaga. 720p resolutsiooni puhul on tüüpilised väärtused 2600 kbit/s (VP9 ja HEVC) või 4500 kbit/s (H.264). Väärtus 0 eemaldab piirangu.",
"transcoding_max_bitrate_description": "Maksimaalse bitisageduse määramine teeb failisuurused ennustatavamaks, väikese kvaliteedikao hinnaga. 720p resolutsiooni puhul on tüüpilised väärtused 2600 kbit/s (VP9 ja HEVC) või 4500 kbit/s (H.264). Väärtus 0 eemaldab piirangu. Kui ühikut pole määratud, eeldatakse k (kbit/s); seega 5000, 5000k ja 5M (Mbit/s) on samaväärsed.",
"transcoding_max_keyframe_interval": "Maksimaalne võtmekaadri intervall",
"transcoding_max_keyframe_interval_description": "Määrab maksimaalse kauguse võtmekaadrite vahel. Madalamad väärtused vähendavad pakkimise efektiivsust, aga parandavad otsimiskiirust ning võivad tõsta kiire liikumisega stseenide kvaliteeti. 0 määrab väärtuse automaatselt.",
"transcoding_optimal_description": "Kõrgema kui lubatud resolutsiooniga või mittelubatud formaadis videod",
@ -351,7 +353,7 @@
"transcoding_target_resolution": "Sihtresolutsioon",
"transcoding_target_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.",
"transcoding_temporal_aq": "Temporal AQ",
"transcoding_temporal_aq_description": "Rakendub NVENC puhul. Parandab paljude detailide, aga vähese liikumisega stseenide kvaliteeti. Ei pruugi ühilduda vanemate seadmetega.",
"transcoding_temporal_aq_description": "Rakendub NVENC puhul. Temporal Adaptive Quantization parandab paljude detailide, aga vähese liikumisega stseenide kvaliteeti. Ei pruugi ühilduda vanemate seadmetega.",
"transcoding_threads": "Lõimed",
"transcoding_threads_description": "Kõrgem väärtus tähendab kiiremat kodeerimist, aga jätab serverile muude tegevuste jaoks vähem ressursse. See väärtus ei tohiks olla suurem kui protsessori tuumade arv. Väärtus 0 tähendab maksimaalset kasutust.",
"transcoding_tone_mapping": "Toonivastendus",
@ -466,9 +468,11 @@
"api_key_description": "Seda väärtust kuvatakse ainult üks kord. Kopeeri see enne akna sulgemist.",
"api_key_empty": "Su API võtme nimi ei tohiks olla tühi",
"api_keys": "API võtmed",
"app_architecture_variant": "Variant (arhitektuur)",
"app_bar_signout_dialog_content": "Kas oled kindel, et soovid välja logida?",
"app_bar_signout_dialog_ok": "Jah",
"app_bar_signout_dialog_title": "Logi välja",
"app_download_links": "Rakenduse allalaadimise lingid",
"app_settings": "Rakenduse seaded",
"appears_in": "Albumid",
"apply_count": "Rakenda ({count, number})",
@ -1346,6 +1350,8 @@
"minute": "Minut",
"minutes": "Minutit",
"missing": "Puuduvad",
"mobile_app": "Mobiilirakendus",
"mobile_app_download_onboarding_note": "Pääsed nendele valikutele hiljem ligi Tööriistad lehelt.",
"model": "Mudel",
"month": "Kuu",
"monthly_title_text_date_format": "MMMM y",
@ -1364,6 +1370,8 @@
"my_albums": "Minu albumid",
"name": "Nimi",
"name_or_nickname": "Nimi või hüüdnimi",
"navigate": "Navigeeri",
"navigate_to_time": "Navigeeri aega",
"network_requirement_photos_upload": "Kasuta fotode varundamiseks mobiilset andmesidet",
"network_requirement_videos_upload": "Kasuta videote varundamiseks mobiilset andmesidet",
"network_requirements": "Võrgu nõuded",
@ -1373,6 +1381,7 @@
"never": "Mitte kunagi",
"new_album": "Uus album",
"new_api_key": "Uus API võti",
"new_date_range": "Uus kuupäevavahemik",
"new_password": "Uus parool",
"new_person": "Uus isik",
"new_pin_code": "Uus PIN-kood",
@ -1423,6 +1432,8 @@
"notifications": "Teavitused",
"notifications_setting_description": "Halda teavitusi",
"oauth": "OAuth",
"obtainium_configurator": "Obtainiumi seadistamine",
"obtainium_configurator_instructions": "Obtainiumi seadistamise lingi loomiseks lisa API võti ja vali rakenduse variant.",
"official_immich_resources": "Ametlikud Immich'i ressursid",
"offline": "Ühendus puudub",
"offset": "Nihe",
@ -1807,6 +1818,8 @@
"setting_notifications_subtitle": "Halda oma teavituste eelistusi",
"setting_notifications_total_progress_subtitle": "Üldine üleslaadimise edenemine (üksuseid tehtud/kokku)",
"setting_notifications_total_progress_title": "Kuva taustal varundamise üldist edenemist",
"setting_video_viewer_auto_play_subtitle": "Alusta videote avamisel automaatselt taasesitust",
"setting_video_viewer_auto_play_title": "Esita videod automaatselt",
"setting_video_viewer_looping_title": "Taasesitus",
"setting_video_viewer_original_video_subtitle": "Esita serverist video voogedastamisel originaal, isegi kui transkodeeritud video on saadaval. Võib põhjustada puhverdamist. Lokaalselt saadaolevad videod mängitakse originaalkvaliteediga sõltumata sellest seadest.",
"setting_video_viewer_original_video_title": "Sunni originaalvideo",

View file

@ -44,6 +44,7 @@
"confirm_email_below": "برای تأیید، \"{email}\" را در زیر تایپ کنید",
"confirm_reprocess_all_faces": "آیا مطمئن هستید که می‌خواهید تمام چهره‌ها را مجددا پردازش کنید؟ این عمل باعث پاک شدن افراد مشخص شده نیز خواهد شد.",
"confirm_user_password_reset": "آیا مطمئن هستید که می‌خواهید رمز عبور {user} را بازنشانی کنید؟",
"confirm_user_pin_code_reset": "آیا مطمئن هستید که می‌خواهید کد PIN {user} را بازنشانی کنید؟",
"disable_login": "غیرفعال کردن ورود",
"duplicate_detection_job_description": "اجرای یادگیری ماشین بر روی فایل‌ها برای شناسایی تصاویر مشابه. این وابسته به جستجوی هوشمند است",
"exclusion_pattern_description": "الگوهای استثنا به شما امکان می‌دهد هنگام اسکن کتابخانه خود فایل‌ها و پوشه‌ها را نادیده بگیرید . این مفید است اگر پوشه‌هایی دارید که فایل‌هایی را شامل می‌شوند که نمی‌خواهید وارد کنید، مانند فایل‌های RAW.",
@ -54,11 +55,21 @@
"failed_job_command": "دستور {command} برای کار: {job} ناموفق بود",
"force_delete_user_warning": "هشدار: این عمل باعث حذف فوری کاربر و تمام فایل‌ها می‌شود. این عمل قابل بازگشت نیست و فایل‌ها قابل بازیابی نیستند.",
"image_format_description": "فرمت WebP فایل‌های کوچکتری نسبت به JPEG ایجاد می‌کند، اما زمان کدگذاری آن کندتر است.",
"image_fullsize_description": "تصویر با اندازه کامل و بدون فراداده، مورد استفاده هنگام بزرگ‌نمایی",
"image_fullsize_enabled": "فعال‌سازی تولید تصویر با اندازه کامل",
"image_fullsize_enabled_description": "تولید تصویر با اندازه کامل برای فرمت‌های غیرسازگار با وب. هنگامی که گزینه «استفاده از پیش‌نمایش تعبیه‌شده» فعال باشد، پیش‌نمایش‌های تعبیه‌شده مستقیماً بدون تبدیل استفاده می‌شوند. این تنظیم بر فرمت‌های سازگار با وب مانند JPEG تأثیری ندارد.",
"image_fullsize_quality_description": "کیفیت تصویر با اندازه کامل از ۱ تا ۱۰۰. هرچه بالاتر باشد، کیفیت بهتر است، اما فایل‌های بزرگ‌تری ایجاد می‌کند.",
"image_fullsize_title": "تنظیمات تصویر با اندازه کامل",
"image_prefer_embedded_preview": "ترجیحات پیش‌نمایش تعبیه‌شده",
"image_prefer_embedded_preview_setting_description": "استفاده از پیش‌نمایش داخلی در عکس‌های RAW به عنوان ورودی پردازش تصویر هنگامی که در دسترس باشد. این می‌تواند رنگ‌های دقیق‌تری را برای برخی تصاویر تولید کند، اما کیفیت پیش‌نمایش به دوربین بستگی دارد و ممکن است تصویر آثار فشرده‌سازی بیشتری داشته باشد.",
"image_prefer_embedded_preview_setting_description": "استفاده از پیش‌نمایش‌های تعبیه‌شده در عکس‌های RAW به‌عنوان ورودی برای پردازش تصویر، در صورت موجود بودن. این می‌تواند رنگ‌های دقیق‌تری برای برخی تصاویر ایجاد کند، اما کیفیت پیش‌نمایش به دوربین بستگی دارد و ممکن است تصویر دارای نویزهای فشرده‌سازی بیشتری باشد.",
"image_prefer_wide_gamut": "ترجیحات گستره رنگی وسیع",
"image_prefer_wide_gamut_setting_description": "برای تصاویر کوچک از فضای رنگی Display P3 استفاده کنید. این کار باعث حفظ زنده بودن رنگ‌ها در تصاویر با گستره رنگی وسیع می‌شود، اما ممکن است تصاویر در دستگاه‌های قدیمی با نسخه‌های قدیمی مرورگر به شکل متفاوتی نمایش داده شوند. تصاویر با فضای رنگی sRGB به همان حالت sRGB نگه داشته می‌شوند تا از تغییرات رنگی جلوگیری شود.",
"image_preview_description": "تصویر با اندازه متوسط و بدون فراداده، مورد استفاده هنگام مشاهده یک دارایی و برای یادگیری ماشین",
"image_preview_quality_description": "کیفیت پیش‌نمایش از ۱ تا ۱۰۰. هرچه بالاتر باشد، کیفیت بهتر است، اما فایل‌های بزرگ‌تری ایجاد می‌کند و ممکن است پاسخ‌گویی برنامه کاهش یابد. تنظیم مقدار پایین می‌تواند بر کیفیت یادگیری ماشین تأثیر بگذارد.",
"image_preview_title": "تنظیمات پیش‌نمایش",
"image_quality": "کیفیت",
"image_resolution": "وضوح تصویر",
"image_resolution_description": "وضوح بالاتر می‌تواند جزئیات بیشتری را حفظ کند، اما تبدیل آن زمان بیشتری می‌برد، حجم فایل‌ها را افزایش می‌دهد و ممکن است پاسخ‌گویی برنامه را کاهش دهد.",
"image_settings": "تنظیمات عکس",
"image_settings_description": "مدیریت کیفیت و وضوح تصاویر تولید شده",
"job_concurrency": "همزمانی {job}",

View file

@ -28,11 +28,12 @@
"add_to_album": "Lisää albumiin",
"add_to_album_bottom_sheet_added": "Lisätty albumiin {album}",
"add_to_album_bottom_sheet_already_exists": "Kohde on jo albumissa {album}",
"add_to_album_bottom_sheet_some_local_assets": "Joitakin osia paikallisesta sisällöstä ei pystytty lisämään albumiin",
"add_to_album_bottom_sheet_some_local_assets": "Joitakin osia paikallisesta sisällöstä ei pystytty lisäämään albumiin",
"add_to_album_toggle": "Vaihda albumin {album} valintaa",
"add_to_albums": "Lisää albumeihin",
"add_to_albums_count": "Lisää albumeihin ({count})",
"add_to_shared_album": "Lisää jaettuun albumiin",
"add_upload_to_stack": "Lisää kuvapinoon",
"add_url": "Lisää URL",
"added_to_archive": "Lisätty arkistoon",
"added_to_favorites": "Lisätty suosikkeihin",
@ -332,7 +333,7 @@
"transcoding_max_b_frames": "B-kehysten enimmäismäärä",
"transcoding_max_b_frames_description": "Korkeampi arvo parantaa pakkausta, mutta hidastaa enkoodausta. Ei välttämättä ole yhteensopiva vanhempien laitteiden kanssa. 0 poistaa B-kehykset käytöstä, -1 määrittää arvon automaattisesti.",
"transcoding_max_bitrate": "Suurin bittinopeus",
"transcoding_max_bitrate_description": "Suurimman sallitun bittinopeuden asettaminen tekee tiedostojen koosta ennustettavampaa vaikka laatu voi hieman heiketä. 720p videossa tyypilliset arvot ovat 2600 kbit/s VP9:lle ja HEVC:lle, tai 4500 kbit/s H.254:lle. Jos 0, ei käytössä.",
"transcoding_max_bitrate_description": "Suurimman sallitun bittinopeuden asettaminen tekee tiedostojen koosta ennustettavampaa vaikka laatu voi hieman heiketä. 720p videossa tyypilliset arvot ovat 2600 kbit/s VP9:lle ja HEVC:lle, tai 4500 kbit/s H.254:lle. Jos 0, ei käytössä. Jos yksikköä ei ole annettu, oletus on k (kbit/s). Eli 5000, 5000k ja 5M ovat yhtä suuria.",
"transcoding_max_keyframe_interval": "Suurin avainkehysten väli",
"transcoding_max_keyframe_interval_description": "Asettaa avainkehysten välin maksimiarvon. Alempi arvo huonontaa pakkauksen tehoa, mutta parantaa hakuaikoja ja voi parantaa laatua nopealiikkeisissä kohtauksissa. 0 asettaa arvon automaattisesti.",
"transcoding_optimal_description": "Videot, joiden resoluutio on korkeampi kuin kohteen, tai ei hyväksytyssä formaatissa",
@ -350,7 +351,7 @@
"transcoding_target_resolution": "Kohderesoluutio",
"transcoding_target_resolution_description": "Korkeampi resoluutio on tarkempi, mutta kestää kauemmin enkoodata, vie enemmän tilaa ja voi hidastaa sovelluksen responsiivisuutta.",
"transcoding_temporal_aq": "Väliaikainen AQ",
"transcoding_temporal_aq_description": "Vaikuttaa vain NVENC:lle. Parantaa laatua kohtauksissa, joissa on paljon yksityiskohtia ja vähän liikettä. Ei välttämättä ole yhteensopiva vanhempien laitteiden kanssa.",
"transcoding_temporal_aq_description": "Vaikuttaa vain NVENC:lle. Aikaperusteinen adaptiivinen kvantisointi parantaa laatua kohtauksissa, joissa on paljon yksityiskohtia ja vähän liikettä. Ei välttämättä ole yhteensopiva vanhempien laitteiden kanssa.",
"transcoding_threads": "Säikeet",
"transcoding_threads_description": "Korkeampi arvo nopeuttaa enkoodausta, mutta vie tilaa palvelimen muilta tehtäviltä. Tämä arvo ei tulisi olla suurempi mitä suorittimen ytimien määrä. Suurin mahdollinen käyttö, mikäli arvo on 0.",
"transcoding_tone_mapping": "Sävykartoitus",
@ -1038,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Kuvauksen muuttaminen epäonnistui",
"exif_bottom_sheet_details": "TIEDOT",
"exif_bottom_sheet_location": "SIJAINTI",
"exif_bottom_sheet_no_description": "Ei kuvausta",
"exif_bottom_sheet_people": "IHMISET",
"exif_bottom_sheet_person_add_person": "Lisää nimi",
"exit_slideshow": "Poistu diaesityksestä",
@ -1805,6 +1807,8 @@
"setting_notifications_subtitle": "Ilmoitusasetusten määrittely",
"setting_notifications_total_progress_subtitle": "Lähetyksen yleinen edistyminen (kohteita lähetetty/yhteensä)",
"setting_notifications_total_progress_title": "Näytä taustavarmuuskopioinnin kokonaisedistyminen",
"setting_video_viewer_auto_play_subtitle": "Aloita videoiden toistaminen automaattisesti kun ne avataan",
"setting_video_viewer_auto_play_title": "Toista videoita automaattisesti",
"setting_video_viewer_looping_title": "Silmukkatoisto",
"setting_video_viewer_original_video_subtitle": "Kun toistat videota palvelimelta, toista alkuperäinen, vaikka transkoodattu versio olisi saatavilla. Tämä voi johtaa puskurointiin. Paikalliset videot toistetaan aina alkuperäislaadulla.",
"setting_video_viewer_original_video_title": "Pakota alkuperäinen video",

View file

@ -25,6 +25,8 @@
"add_to_album": "Idagdag sa album",
"add_to_album_bottom_sheet_added": "Naidagdag sa {album}",
"add_to_album_bottom_sheet_already_exists": "Nasa {album} na",
"add_to_albums": "Idagdag sa mga album",
"add_to_albums_count": "Idagdag sa mga album ({count})",
"add_to_shared_album": "Idagdag sa shared album",
"add_url": "Magdagdag ng URL",
"added_to_archive": "Naidagdag sa archive",
@ -67,11 +69,14 @@
},
"album_user_left": "Umalis sa {album}",
"all_albums": "Lahat ng albums",
"all_people": "Lahat ng tao",
"all_videos": "Lahat ng video",
"api_key_description": "Isang beses lamang na ipapakita itong value. Siguraduhin na ikopya itong value bago iclose ang window na ito.",
"are_these_the_same_person": "Itong tao na ito ay parehas?",
"asset_adding_to_album": "Dinadagdag sa album...",
"asset_filename_is_offline": "Offline ang asset {filename}",
"asset_uploading": "Ina-upload...",
"create_album_page_untitled": "Walang pamagat",
"documentation": "Dokumentasyion",
"done": "Tapos na",
"download": "I-download",

View file

@ -333,7 +333,7 @@
"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.",
"transcoding_max_bitrate": "Débit binaire maximal",
"transcoding_max_bitrate_description": "Définir un débit binaire maximal peut résulter en des fichiers de taille plus prédictible, au prix d'une légère perte en qualité. En 720p, les valeurs sont 2600 kbit/s pour du VP9 ou du HEVC ou 4500 kbit/s pour du H.264. Désactivé si le débit binaire est à 0.",
"transcoding_max_bitrate_description": "Définir un débit binaire maximal peut rendre la taille des fichiers plus prévisible, au prix dune légère perte de qualité. En 720p, les valeurs typiques sont de 2600 kbit/s pour du VP9 ou du HEVC, ou de 4500 kbit/s pour du H.264. Désactivé si le débit binaire est fixé à 0. Lorsquaucune unité nest spécifiée, k (pour kbit/s) est supposée; ainsi, 5000, 5000k et 5M (pour Mbit/s) sont équivalents.",
"transcoding_max_keyframe_interval": "Intervalle maximal entre les images clés",
"transcoding_max_keyframe_interval_description": "Définit la distance maximale de trames entre les images clés. Les valeurs plus basses diminuent l'efficacité de la compression, mais améliorent les temps de recherche et peuvent améliorer la qualité dans les scènes avec des mouvements rapides. Une valeur de 0 définit automatiquement ce paramètre.",
"transcoding_optimal_description": "Les vidéos dont la résolution est supérieure à celle attendue ou celles qui ne sont pas dans un format accepté",
@ -351,7 +351,7 @@
"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": "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_temporal_aq_description": "S'applique uniquement à NVENC. La quantification adaptative temporelle 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",
@ -1039,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Erreur de mise à jour de la description",
"exif_bottom_sheet_details": "DÉTAILS",
"exif_bottom_sheet_location": "LOCALISATION",
"exif_bottom_sheet_no_description": "Aucune description",
"exif_bottom_sheet_people": "PERSONNES",
"exif_bottom_sheet_person_add_person": "Ajouter un nom",
"exit_slideshow": "Quitter le diaporama",
@ -1363,6 +1364,7 @@
"my_albums": "Mes albums",
"name": "Nom",
"name_or_nickname": "Nom ou surnom",
"navigate": "Naviguer vers",
"network_requirement_photos_upload": "Utiliser les données mobile pour sauvegarder les photos",
"network_requirement_videos_upload": "Utiliser les données mobile pour sauvegarder les vidéos",
"network_requirements": "Prérequis réseau",
@ -1372,6 +1374,7 @@
"never": "Jamais",
"new_album": "Nouvel Album",
"new_api_key": "Nouvelle clé API",
"new_date_range": "Nouvelle plage de date",
"new_password": "Nouveau mot de passe",
"new_person": "Nouvelle personne",
"new_pin_code": "Nouveau code PIN",
@ -1806,6 +1809,8 @@
"setting_notifications_subtitle": "Ajustez vos préférences de notification",
"setting_notifications_total_progress_subtitle": "Progression globale de l'envoi (effectué/total des médias)",
"setting_notifications_total_progress_title": "Afficher la progression totale de la sauvegarde en arrière-plan",
"setting_video_viewer_auto_play_subtitle": "Lancer automatiquement la lecture des vidéos lorsquelles sont ouvertes",
"setting_video_viewer_auto_play_title": "Lecture automatique des vidéos",
"setting_video_viewer_looping_title": "Boucle",
"setting_video_viewer_original_video_subtitle": "Lors de la diffusion d'une vidéo depuis le serveur, lisez l'original même si un transcodage est disponible. Cela peut entraîner de la mise en mémoire tampon. Les vidéos disponibles localement sont lues en qualité d'origine, quel que soit ce paramètre.",
"setting_video_viewer_original_video_title": "Forcer la vidéo originale",
@ -1898,7 +1903,7 @@
"show_supporter_badge": "Badge de contributeur",
"show_supporter_badge_description": "Afficher le badge de contributeur",
"show_text_search_menu": "Afficher le menu de recherche de texte",
"shuffle": "Mélanger",
"shuffle": "Aléatoire",
"sidebar": "Barre latérale",
"sidebar_display_description": "Afficher un lien vers la vue dans la barre latérale",
"sign_out": "Déconnexion",

View file

@ -33,6 +33,7 @@
"add_to_albums": "Engadir a álbums",
"add_to_albums_count": "Engadir a {count} álbums",
"add_to_shared_album": "Engadir ao álbum compartido",
"add_upload_to_stack": "Engade cargar á pila",
"add_url": "Engadir URL",
"added_to_archive": "Engadido ao arquivo",
"added_to_favorites": "Engadido a favoritos",
@ -332,7 +333,7 @@
"transcoding_max_b_frames": "Máximo de B-frames",
"transcoding_max_b_frames_description": "Valores máis altos melloran a eficiencia da compresión, pero ralentizan a codificación. Pode non ser compatible coa aceleración por hardware en dispositivos máis antigos. 0 desactiva os B-frames, mentres que -1 establece este valor automaticamente.",
"transcoding_max_bitrate": "Bitrate máximo",
"transcoding_max_bitrate_description": "Establecer un bitrate máximo pode facer que os tamaños dos ficheiros sexan máis predicibles a un custo menor para a calidade. A 720p, os valores típicos son 2600 kbit/s para VP9 ou HEVC, ou 4500 kbit/s para H.264. Desactivado se se establece en 0.",
"transcoding_max_bitrate_description": "Establecer unha taxa de bits máxima pode facer que os tamaños dos ficheiros sexan máis predicibles a un custo menor na calidade. En 720p, os valores típicos son 2600 kbit/s para VP9 ou HEVC, ou 4500 kbit/s para H.264. Desactivado se se establece en 0. Cando non se especifica unha unidade, asúmese k (para kbit/s); polo tanto, 5000, 5000k e 5M (para Mbit/s) son equivalentes.",
"transcoding_max_keyframe_interval": "Intervalo máximo de fotogramas clave",
"transcoding_max_keyframe_interval_description": "Establece a distancia máxima de fotogramas entre fotogramas clave. Valores máis baixos empeoran a eficiencia da compresión, pero melloran os tempos de busca e poden mellorar a calidade en escenas con movemento rápido. 0 establece este valor automaticamente.",
"transcoding_optimal_description": "Vídeos cunha resolución superior á obxectivo ou que non estean nun formato aceptado",
@ -350,7 +351,7 @@
"transcoding_target_resolution": "Resolución obxectivo",
"transcoding_target_resolution_description": "Resolucións máis altas poden preservar máis detalles pero tardan máis en codificarse, teñen tamaños de ficheiro máis grandes e poden reducir a capacidade de resposta da aplicación.",
"transcoding_temporal_aq": "AQ Temporal",
"transcoding_temporal_aq_description": "Aplícase só a NVENC. Aumenta a calidade de escenas de alto detalle e baixo movemento. Pode non ser compatible con dispositivos máis antigos.",
"transcoding_temporal_aq_description": "Aplícase só a NVENC. A Cuantización Adaptativa Temporal aumenta a calidade das escenas con moito detalle e pouco movemento. Pode que non sexa compatible con dispositivos máis antigos.",
"transcoding_threads": "Fíos",
"transcoding_threads_description": "Valores máis altos levan a unha codificación máis rápida, pero deixan menos marxe para que o servidor procese outras tarefas mentres está activo. Este valor non debería ser maior que o número de núcleos da CPU. Maximiza a utilización se se establece en 0.",
"transcoding_tone_mapping": "Mapeo de tons",
@ -1038,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Erro ao actualizar a descrición",
"exif_bottom_sheet_details": "DETALLES",
"exif_bottom_sheet_location": "LOCALIZACIÓN",
"exif_bottom_sheet_no_description": "Sen descrición",
"exif_bottom_sheet_people": "PERSOAS",
"exif_bottom_sheet_person_add_person": "Engadir nome",
"exit_slideshow": "Saír da Presentación",
@ -1389,22 +1391,30 @@
"no_assets_message": "PREMA PARA CARGAR A SÚA PRIMEIRA FOTO",
"no_assets_to_show": "Non hai activos para mostrar",
"no_cast_devices_found": "Non se atoparon dispositivos de transmisión",
"no_checksum_local": "Non hai suma de verificación dispoñible - non se poden obter os activos locais",
"no_checksum_remote": "Non hai suma de verificación dispoñible - non se pode obter o activo remoto",
"no_duplicates_found": "Non se atoparon duplicados.",
"no_exif_info_available": "Non hai información EXIF dispoñible",
"no_explore_results_message": "Suba máis fotos para explorar a súa colección.",
"no_favorites_message": "Engada favoritos para atopar rapidamente as súas mellores fotos e vídeos",
"no_libraries_message": "Cree unha biblioteca externa para ver as súas fotos e vídeos",
"no_local_assets_found": "Non se atoparon elementos locais con esta suma de comprobación",
"no_locked_photos_message": "As fotos e vídeos no cartafol con chave están ocultos e non aparecerán mentres navegas ou buscas na túa biblioteca.",
"no_name": "Sen Nome",
"no_notifications": "Sen notificacións",
"no_people_found": "Non se atoparon persoas coincidentes",
"no_places": "Sen lugares",
"no_remote_assets_found": "Non se atoparon activos remotos con esta suma de verificación",
"no_results": "Sen resultados",
"no_results_description": "Probe cun sinónimo ou palabra chave máis xeral",
"no_shared_albums_message": "Cree un álbum para compartir fotos e vídeos con persoas na súa rede",
"no_uploads_in_progress": "Non hai cargas en curso",
"not_available": "Non dispoñible",
"not_in_any_album": "Non está en ningún álbum",
"not_selected": "Non seleccionado",
"note_apply_storage_label_to_previously_uploaded assets": "Nota: Para aplicar a Etiqueta de Almacenamento a activos cargados previamente, execute o",
"notes": "Notas",
"nothing_here_yet": "Aínda nada por aquí",
"notification_permission_dialog_content": "Para activar as notificacións, vaia a Axustes e seleccione permitir.",
"notification_permission_list_tile_content": "Conceda permiso para activar as notificacións.",
"notification_permission_list_tile_enable_button": "Activar Notificacións",
@ -1412,14 +1422,19 @@
"notification_toggle_setting_description": "Activar notificacións por correo electrónico",
"notifications": "Notificacións",
"notifications_setting_description": "Xestionar notificacións",
"oauth": "OAuth",
"official_immich_resources": "Recursos Oficiais de Immich",
"offline": "Fóra de liña",
"offset": "Desprazamento",
"ok": "Aceptar",
"oldest_first": "Máis antigos primeiro",
"on_this_device": "Neste dispositivo",
"onboarding": "Primeiros pasos",
"onboarding_locale_description": "Selecciona o teu idioma preferido. Podes cambialo máis tarde na túa configuración.",
"onboarding_privacy_description": "As seguintes funcións (opcionais) dependen de servizos externos e poden desactivarse en calquera momento na configuración da administración.",
"onboarding_server_welcome_description": "Imos configurar a túa instancia con algunhas opcións comúns.",
"onboarding_theme_description": "Elixa un tema de cor para a súa instancia. Pode cambialo máis tarde na súa configuración.",
"onboarding_user_welcome_description": "Imos comezar!",
"onboarding_welcome_user": "Benvido/a, {user}",
"online": "En liña",
"only_favorites": "Só favoritos",
@ -1429,10 +1444,13 @@
"open_the_search_filters": "Abrir os filtros de busca",
"options": "Opcións",
"or": "ou",
"organize_into_albums": "Organizar en álbums",
"organize_into_albums_description": "Poñer as fotos existentes en álbums usando as opcións de sincronización actuais",
"organize_your_library": "Organizar a súa biblioteca",
"original": "orixinal",
"other": "Outro",
"other_devices": "Outros dispositivos",
"other_entities": "Outras entidades",
"other_variables": "Outras variables",
"owned": "Propio",
"owner": "Propietario",
@ -1476,6 +1494,8 @@
"permanently_delete_assets_prompt": "Está seguro de que quere eliminar permanentemente {count, plural, one {este activo?} other {estes <b>#</b> activos?}} Isto tamén {count, plural, one {o eliminará do seu} other {os eliminará dos seus}} álbum(s).",
"permanently_deleted_asset": "Activo eliminado permanentemente",
"permanently_deleted_assets_count": "Eliminados permanentemente {count, plural, one {# activo} other {# activos}}",
"permission": "Permiso",
"permission_empty": "O teu permiso non debe estar baleiro",
"permission_onboarding_back": "Atrás",
"permission_onboarding_continue_anyway": "Continuar de todos os xeitos",
"permission_onboarding_get_started": "Comezar",
@ -1485,6 +1505,9 @@
"permission_onboarding_permission_limited": "Permiso limitado. Para permitir que Immich faga copia de seguridade e xestione toda a súa colección da galería, conceda permisos de fotos e vídeos en Configuración.",
"permission_onboarding_request": "Immich require permiso para ver as súas fotos e vídeos.",
"person": "Persoa",
"person_age_months": "{months, plural, one {# mes} other {# meses}} de idade",
"person_age_year_months": "1 ano, {months, plural, one {# mes} other {# meses}} de idade",
"person_age_years": "{years, plural, one {# ano} other {# anos}} de idade",
"person_birthdate": "Nacido/a o {date}",
"person_hidden": "{name}{hidden, select, true { (oculto)} other {}}",
"photo_shared_all_users": "Parece que compartiu as súas fotos con todos os usuarios ou non ten ningún usuario co que compartir.",
@ -1493,6 +1516,10 @@
"photos_count": "{count, plural, one {{count, number} Foto} other {{count, number} Fotos}}",
"photos_from_previous_years": "Fotos de anos anteriores",
"pick_a_location": "Elixir unha localización",
"pin_code_changed_successfully": "Código PIN cambiado correctamente",
"pin_code_reset_successfully": "Código PIN restablecido correctamente",
"pin_code_setup_successfully": "Código PIN configurado correctamente",
"pin_verification": "Verificación do código PIN",
"place": "Lugar",
"places": "Lugares",
"places_count": "{count, plural, one {{count, number} Lugar} other {{count, number} Lugares}}",
@ -1500,20 +1527,28 @@
"play_memories": "Reproducir recordos",
"play_motion_photo": "Reproducir Foto en Movemento",
"play_or_pause_video": "Reproducir ou pausar vídeo",
"please_auth_to_access": "Por favor, autentícate para acceder",
"port": "Porto",
"preferences_settings_subtitle": "Xestionar as preferencias da aplicación",
"preferences_settings_title": "Preferencias",
"preparing": "Preparando",
"preset": "Preaxuste",
"preview": "Vista previa",
"previous": "Anterior",
"previous_memory": "Recordo anterior",
"previous_or_next_day": "Día seguinte / Día anterior",
"previous_or_next_month": "Mes seguinte / Mes anterior",
"previous_or_next_photo": "Foto anterior ou seguinte",
"previous_or_next_year": "Ano seguinte / Ano anterior",
"primary": "Principal",
"privacy": "Privacidade",
"profile": "Perfil",
"profile_drawer_app_logs": "Rexistros",
"profile_drawer_client_out_of_date_major": "A aplicación móbil está desactualizada. Por favor, actualice á última versión maior.",
"profile_drawer_client_out_of_date_minor": "A aplicación móbil está desactualizada. Por favor, actualice á última versión menor.",
"profile_drawer_client_server_up_to_date": "Cliente e Servidor están actualizados",
"profile_drawer_github": "GitHub",
"profile_drawer_readonly_mode": "Modo só lectura activado. Mantén premido o ícone do avatar do usuario para saír.",
"profile_drawer_server_out_of_date_major": "O servidor está desactualizado. Por favor, actualice á última versión maior.",
"profile_drawer_server_out_of_date_minor": "O servidor está desactualizado. Por favor, actualice á última versión menor.",
"profile_image_of_user": "Imaxe de perfil de {user}",
@ -1534,6 +1569,7 @@
"purchase_failed_activation": "Erro ao activar! Por favor, comprobe o seu correo electrónico para a chave do produto correcta!",
"purchase_individual_description_1": "Para un individuo",
"purchase_individual_description_2": "Estado de seguidor/a",
"purchase_individual_title": "Individual",
"purchase_input_suggestion": "Ten unha chave de produto? Introduza a chave a continuación",
"purchase_license_subtitle": "Apoie Immich para contribuír ao desenvolvemento continuado do servizo",
"purchase_lifetime_description": "Contribución vitalicia",
@ -1551,12 +1587,17 @@
"purchase_server_description_2": "Estado de seguidor/a",
"purchase_server_title": "Servidor",
"purchase_settings_server_activated": "A chave do produto do servidor é xestionada polo administrador",
"query_asset_id": "Consultar o ID do activo",
"queue_status": "Pondo en cola {count}/{total}",
"rating": "Clasificación por estrelas",
"rating_clear": "Borrar clasificación",
"rating_count": "{count, plural, one {# estrela} other {# estrelas}}",
"rating_description": "Mostrar a clasificación EXIF no panel de información",
"reaction_options": "Opcións de reacción",
"read_changelog": "Ler Rexistro de Cambios",
"readonly_mode_disabled": "Modo só lectura desactivado",
"readonly_mode_enabled": "Modo só lectura activado",
"ready_for_upload": "Listo para a carga",
"reassign": "Reasignar",
"reassigned_assets_to_existing_person": "Reasignados {count, plural, one {# activo} other {# activos}} a {name, select, null {unha persoa existente} other {{name}}}",
"reassigned_assets_to_new_person": "Reasignados {count, plural, one {# activo} other {# activos}} a unha nova persoa",
@ -1579,6 +1620,9 @@
"refreshing_faces": "Actualizando caras",
"refreshing_metadata": "Actualizando metadatos",
"regenerating_thumbnails": "Rexenerando miniaturas",
"remote": "Remoto",
"remote_assets": "Activos Remotos",
"remote_media_summary": "Resumo de Medios Remotos",
"remove": "Eliminar",
"remove_assets_album_confirmation": "Está seguro de que quere eliminar {count, plural, one {# activo} other {# activos}} do álbum?",
"remove_assets_shared_link_confirmation": "Está seguro de que quere eliminar {count, plural, one {# activo} other {# activos}} desta ligazón compartida?",
@ -1586,10 +1630,15 @@
"remove_custom_date_range": "Eliminar rango de datas personalizado",
"remove_deleted_assets": "Eliminar Activos Eliminados",
"remove_from_album": "Eliminar do álbum",
"remove_from_album_action_prompt": "{count} eliminado(s) do álbum",
"remove_from_favorites": "Eliminar de favoritos",
"remove_from_lock_folder_action_prompt": "{count} eliminado(s) do cartafol con chave",
"remove_from_locked_folder": "Eliminar do cartafol con chave",
"remove_from_locked_folder_confirmation": "Estás seguro de que queres mover estas fotos e vídeos fóra do cartafol con chave? Serán visibles na túa biblioteca.",
"remove_from_shared_link": "Eliminar da ligazón compartida",
"remove_memory": "Eliminar recordo",
"remove_photo_from_memory": "Eliminar foto deste recordo",
"remove_tag": "Eliminar a etiqueta",
"remove_url": "Eliminar URL",
"remove_user": "Eliminar usuario",
"removed_api_key": "Chave API eliminada: {name}",
@ -1610,18 +1659,30 @@
"reset": "Restablecer",
"reset_password": "Restablecer contrasinal",
"reset_people_visibility": "Restablecer visibilidade das persoas",
"reset_pin_code": "Restablecer o código PIN",
"reset_pin_code_description": "Se esqueciches o teu código PIN, podes contactar co administrador do servidor para restablecelo",
"reset_pin_code_success": "Código PIN restablecido correctamente",
"reset_pin_code_with_password": "Sempre podes restablecer o teu código PIN coa túa contrasinal",
"reset_sqlite": "Restablecer a Base de Datos SQLite",
"reset_sqlite_confirmation": "Estás seguro de que queres restablecer a base de datos SQLite? Terás que pechar a sesión e iniciar sesión de novo para sincronizar os datos outra vez",
"reset_sqlite_success": "Base de datos SQLite restablecida correctamente",
"reset_to_default": "Restablecer ao predeterminado",
"resolve_duplicates": "Resolver duplicados",
"resolved_all_duplicates": "Resolvéronse todos os duplicados",
"restore": "Restaurar",
"restore_all": "Restaurar todo",
"restore_trash_action_prompt": "{count} restaurado(s) do lixo",
"restore_user": "Restaurar usuario",
"restored_asset": "Activo restaurado",
"resume": "Reanudar",
"resume_paused_jobs": "Retomar {count, plural, one {# traballo pausado} other {# traballos pausados}}",
"retry_upload": "Reintentar carga",
"review_duplicates": "Revisar duplicados",
"review_large_files": "Revisar ficheiros grandes",
"role": "Rol",
"role_editor": "Editor",
"role_viewer": "Visor",
"running": "Executándose",
"save": "Gardar",
"save_to_gallery": "Gardar na galería",
"saved_api_key": "Chave API gardada",
@ -1670,6 +1731,7 @@
"search_page_no_places": "Non hai Información de Lugares Dispoñible",
"search_page_screenshots": "Capturas de pantalla",
"search_page_search_photos_videos": "Busca as súas fotos e vídeos",
"search_page_selfies": "Selfies",
"search_page_things": "Cousas",
"search_page_view_all_button": "Ver todo",
"search_page_your_activity": "A súa actividade",
@ -1693,6 +1755,7 @@
"select_album_cover": "Seleccionar portada do álbum",
"select_all": "Seleccionar todo",
"select_all_duplicates": "Seleccionar todos os duplicados",
"select_all_in": "Seleccionar todo en {group}",
"select_avatar_color": "Seleccionar cor do avatar",
"select_face": "Seleccionar cara",
"select_featured_photo": "Seleccionar foto destacada",
@ -1700,11 +1763,13 @@
"select_keep_all": "Seleccionar conservar todo",
"select_library_owner": "Seleccionar propietario da biblioteca",
"select_new_face": "Seleccionar nova cara",
"select_person_to_tag": "Seleccionar unha persoa para etiquetar",
"select_photos": "Seleccionar fotos",
"select_trash_all": "Seleccionar mover todo ao lixo",
"select_user_for_sharing_page_err_album": "Erro ao crear o álbum",
"selected": "Seleccionado",
"selected_count": "{count, plural, other {# seleccionados}}",
"selected_gps_coordinates": "Coordenadas GPS seleccionadas",
"send_message": "Enviar mensaxe",
"send_welcome_email": "Enviar correo electrónico de benvida",
"server_endpoint": "Punto Final do Servidor",
@ -1712,6 +1777,7 @@
"server_info_box_server_url": "URL do Servidor",
"server_offline": "Servidor Fóra de Liña",
"server_online": "Servidor En Liña",
"server_privacy": "Privacidade do Servidor",
"server_stats": "Estatísticas do Servidor",
"server_version": "Versión do Servidor",
"set": "Establecer",
@ -1721,6 +1787,7 @@
"set_date_of_birth": "Establecer data de nacemento",
"set_profile_picture": "Establecer imaxe de perfil",
"set_slideshow_to_fullscreen": "Poñer Presentación a pantalla completa",
"set_stack_primary_asset": "Establecer como activo principal",
"setting_image_viewer_help": "O visor de detalles carga primeiro a miniatura pequena, despois carga a vista previa de tamaño medio (se está activada), e finalmente carga o orixinal (se está activado).",
"setting_image_viewer_original_subtitle": "Activar para cargar a imaxe orixinal a resolución completa (grande!). Desactivar para reducir o uso de datos (tanto na rede como na caché do dispositivo).",
"setting_image_viewer_original_title": "Cargar imaxe orixinal",
@ -1740,16 +1807,21 @@
"setting_notifications_subtitle": "Axustar as súas preferencias de notificación",
"setting_notifications_total_progress_subtitle": "Progreso xeral da carga (feitos/total activos)",
"setting_notifications_total_progress_title": "Mostrar progreso total da copia de seguridade en segundo plano",
"setting_video_viewer_auto_play_subtitle": "Reproducir vídeos automaticamente cando se abren",
"setting_video_viewer_auto_play_title": "Reproducir vídeos automaticamente",
"setting_video_viewer_looping_title": "Bucle",
"setting_video_viewer_original_video_subtitle": "Ao transmitir un vídeo desde o servidor, reproducir o orixinal aínda que haxa unha transcodificación dispoñible. Pode provocar buffering. Os vídeos dispoñibles localmente reprodúcense en calidade orixinal independentemente desta configuración.",
"setting_video_viewer_original_video_title": "Forzar vídeo orixinal",
"settings": "Configuración",
"settings_require_restart": "Por favor, reinicie Immich para aplicar esta configuración",
"settings_saved": "Configuración gardada",
"setup_pin_code": "Configurar un código PIN",
"share": "Compartir",
"share_action_prompt": "Compartidos {count} activos",
"share_add_photos": "Engadir fotos",
"share_assets_selected": "{count} seleccionados",
"share_dialog_preparing": "Preparando...",
"share_link": "Ligazón para Compartir",
"shared": "Compartido",
"shared_album_activities_input_disable": "O comentario está desactivado",
"shared_album_activity_remove_content": "Quere eliminar esta actividade?",
@ -1767,6 +1839,7 @@
"shared_link_clipboard_copied_massage": "Copiado ao portapapeis",
"shared_link_clipboard_text": "Ligazón: {link}\nContrasinal: {password}",
"shared_link_create_error": "Erro ao crear ligazón compartida",
"shared_link_custom_url_description": "Acceder a esta ligazón compartida cun URL personalizado",
"shared_link_edit_description_hint": "Introduza a descrición da compartición",
"shared_link_edit_expire_after_option_day": "1 día",
"shared_link_edit_expire_after_option_days": "{count} días",

View file

@ -1807,6 +1807,8 @@
"setting_notifications_subtitle": "Cambia le impostazioni di notifica",
"setting_notifications_total_progress_subtitle": "Avanzamento complessivo del caricamento (completati/risorse totali)",
"setting_notifications_total_progress_title": "Mostra avanzamento del backup in background",
"setting_video_viewer_auto_play_subtitle": "Avvia automaticamente la riproduzione dei video quando vengono aperti",
"setting_video_viewer_auto_play_title": "Riproduci video automaticamente",
"setting_video_viewer_looping_title": "Looping",
"setting_video_viewer_original_video_subtitle": "Quando riproduci un video dal server, riproduci l'originale anche se è disponibile una versione transcodificata. Questo potrebbe portare a buffering. I video disponibili localmente sono sempre riprodotti a qualità originale indipendentemente da questa impostazione.",
"setting_video_viewer_original_video_title": "Forza video originale",

View file

@ -597,6 +597,7 @@
"backup_controller_page_turn_on": "Įjungti foninį atsarginį kopijavimą",
"backup_controller_page_uploading_file_info": "Įkeliama failo info",
"backup_err_only_album": "Negalima pašalinti vienintelio albumo",
"backup_error_sync_failed": "Sinchronizavimas nepavyko. Atsarginė kopija negali būti apdorota.",
"backup_info_card_assets": "elementai",
"backup_manual_cancelled": "Atšaukta",
"backup_manual_in_progress": "Jau įkeliama, bandykite dar kartą vėliau",
@ -1033,6 +1034,7 @@
"exif_bottom_sheet_description_error": "Klaida atnaujinant aprašymą",
"exif_bottom_sheet_details": "DETALĖS",
"exif_bottom_sheet_location": "VIETOVĖ",
"exif_bottom_sheet_no_description": "Nėra aprašymo",
"exif_bottom_sheet_people": "ŽMONĖS",
"exif_bottom_sheet_person_add_person": "Pridėti vardą",
"exit_slideshow": "Išeiti iš skaidrių peržiūros",
@ -1582,6 +1584,11 @@
"rating": "Įvertinimas žvaigždutėmis",
"rating_count": "{count, plural, one {# įvertinimas} few {# įvertinimai} other {# įvertinimų}}",
"rating_description": "Rodyti EXIF įvertinimus informacijos skydelyje",
"read_changelog": "Skaityti pakeitimų sąrašą",
"recent-albums": "Naujausi albumai",
"recent_searches": "Naujausios paieškos",
"recently_added": "Neseniai pridėta",
"recently_added_page_title": "Neseniai pridėta",
"recently_taken": "Neseniai sukurti",
"recently_taken_page_title": "Neseniai sukurti",
"refresh": "Atnaujinti",
@ -1616,11 +1623,14 @@
"repair": "Pataisyti",
"repair_no_results_message": "Nesekami ir trūkstami failai bus rodomi čia",
"replace_with_upload": "Pakeisti naujai įkeltu failu",
"repository": "Repozitoriumas",
"require_password": "Reikalauti slaptažodžio",
"rescan": "Perskenuoti",
"reset": "Atstatyti",
"reset_password": "Atstayti slaptažodį",
"reset_pin_code": "Atsatyti PIN kodą",
"reset_pin_code_description": "Jei pamiršote PIN kodą, galite susisiekti su serverio administratoriumi, kad jis jį atstatytų",
"reset_pin_code_with_password": "PIN kodą visada galite atkurti naudodami savo slaptažodį",
"reset_to_default": "Atkurti numatytuosius",
"resolve_duplicates": "Sutvarkyti dublikatus",
"resolved_all_duplicates": "Sutvarkyti visi dublikatai",
@ -1728,8 +1738,11 @@
"shared_intent_upload_button_progress_text": "{current} / {total} Įkelta",
"shared_link_clipboard_copied_massage": "Nukopijuota į iškarpinę",
"shared_link_clipboard_text": "Nuoroda: {link}\nSlaptažodis: {password}",
"shared_link_edit_expire_after_option_day": "1 diena",
"shared_link_edit_expire_after_option_days": "{count} dienų",
"shared_link_edit_expire_after_option_hour": "1 valanda",
"shared_link_edit_expire_after_option_hours": "{count} valandų",
"shared_link_edit_expire_after_option_minute": "1 minutė",
"shared_link_edit_expire_after_option_minutes": "{count} minučių",
"shared_link_edit_expire_after_option_months": "{count} mėnesių",
"shared_link_edit_expire_after_option_year": "{count} metų",
@ -1785,6 +1798,7 @@
"sort_created": "Sukūrimo data",
"sort_items": "Elementų skaičių",
"sort_modified": "Keitimo data",
"sort_newest": "Naujausia nuotrauka",
"sort_oldest": "Seniausia nuotrauka",
"sort_people_by_similarity": "Rikiuoti žmonės pagal panašumą",
"sort_recent": "Naujausia nuotrauka",
@ -1797,8 +1811,11 @@
"stacked_assets_count": "{count, plural, one {Sugrupuotas # elementas} few {Sugrupuoti # elementai} other {Sugrupuota # elementų}}",
"start": "Pradėti",
"start_date": "Pradžios data",
"start_date_before_end_date": "Pradžios data turi būti ankstesnė už pabaigos datą",
"status": "Statusas",
"stop_casting": "Nutraukti transliavimą",
"stop_photo_sharing": "Nustoti dalytis savo nuotraukomis?",
"stop_sharing_photos_with_user": "Nustoti dalintis savo nuotraukomis su šiuo vartotoju",
"storage": "Saugykla",
"storage_label": "Saugyklos Žyma",
"storage_usage": "Naudojama {used} iš {available}",
@ -1809,6 +1826,7 @@
"support_and_feedback": "Palaikymas ir atsiliepimai",
"sync": "Sinchronizuoti",
"sync_albums": "Sinchronizuoti albumus",
"sync_albums_manual_subtitle": "Sinchronizuoti visus įkeltus vaizdo įrašus ir nuotraukas su pasirinktomis atsarginėmis kopijomis",
"sync_upload_album_setting_subtitle": "Sukurti ir įkelti jūsų nuotraukas ir vaizdo įrašus į pasirinktus Immich albumus",
"tag": "Žyma",
"tag_created": "Sukurta žyma: {tag}",
@ -1820,10 +1838,12 @@
"template": "Šablonas",
"theme": "Tema",
"theme_selection": "Temos pasirinkimas",
"theme_selection_description": "Automatiškai nustatykite šviesią arba tamsią temą pagal naršyklės sistemos nustatymus",
"theme_setting_asset_list_tiles_per_row_title": "Elementų per eilutę ({count})",
"theme_setting_primary_color_title": "Pagrindinė spalva",
"theme_setting_system_primary_color_title": "Naudoti sistemos spalvą",
"theme_setting_system_theme_switch": "Automatinė (Naudoti sistemos nustatymus)",
"theme_setting_three_stage_loading_subtitle": "Trijų etapų įkėlimas gali padidinti įkėlimo našumą, tačiau sukelia žymiai didesnę tinklo apkrovą",
"time_based_memories": "Atsiminimai pagal laiką",
"timeline": "Laiko skalė",
"timezone": "Laiko juosta",
@ -1832,6 +1852,7 @@
"to_favorite": "Įtraukti prie mėgstamiausių",
"to_login": "Prisijungti",
"to_trash": "Išmesti",
"total": "Viso",
"trash": "Šiukšliadėžė",
"trash_all": "Perkelti visus į šiukšliadėžę",
"trash_count": "Perkelti {count, number} į šiukšliadėžę",
@ -1845,6 +1866,7 @@
"trash_page_title": "Šiukšlių ({count})",
"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",
"unable_to_change_pin_code": "Negalima pakeisti PIN kodo",
"unarchive": "Išarchyvuoti",
"unarchived_count": "{count, plural, other {# išarchyvuota}}",
"unfavorite": "Pašalinti iš mėgstamiausių",

View file

@ -31,7 +31,7 @@
"add_to_album_bottom_sheet_some_local_assets": "Noen lokale elementer kunne ikke legges til i albumet",
"add_to_album_toggle": "Avhuking for {album}",
"add_to_albums": "Legg til i album",
"add_to_albums_count": "Legg til i albumer ({count})",
"add_to_albums_count": "Legg til i album ({count})",
"add_to_shared_album": "Legg til delt album",
"add_upload_to_stack": "Legg til opplasting i stakken",
"add_url": "Legg til URL",
@ -333,7 +333,7 @@
"transcoding_max_b_frames": "Maksimalt antall B-frames",
"transcoding_max_b_frames_description": "Høyere verdier forbedrer komprimeringseffektiviteten, men senker ned kodingen. Kan være inkompatibelt med maskinvareakselerasjon på eldre enheter. 0 deaktiverer B-rammer, mens -1 setter verdien automatisk.",
"transcoding_max_bitrate": "Maksimal bithastighet",
"transcoding_max_bitrate_description": "Å sette en maksimal bithastighet kan gjøre filstørrelsene mer forutsigbare med en liten kostnad for kvaliteten. For 720p er typiske verdier 2600 kbit/s for VP9 eller HEVC, eller 4500 kbit/s for H.264. Deaktivert hvis satt til 0.",
"transcoding_max_bitrate_description": "Å sette en maksimal bithastighet kan gjøre filstørrelsene mer forutsigbare med en liten kostnad for kvaliteten. For 720p er typiske verdier 2600 kbit/s for VP9 eller HEVC, eller 4500 kbit/s for H.264. Deaktivert hvis satt til 0. Når ingen verdi er spesifisert er k (for kbit/s) forventet slik at: 5000,5000k og 5M (for Mbit/s) er like verdier.",
"transcoding_max_keyframe_interval": "Maksimal referansebilde intervall",
"transcoding_max_keyframe_interval_description": "Setter maksimalt antall bilder mellom referansebilder. Lavere verdier reduserer kompresjonseffektiviteten, men forbedrer søketider og kan forbedre kvaliteten i scener med rask bevegelse. 0 setter verdien automatisk.",
"transcoding_optimal_description": "Videoer som har høyere oppløsning enn målopppløsningen eller som ikke er i et akseptert format",
@ -445,13 +445,13 @@
"album_viewer_appbar_share_leave": "Forlat album",
"album_viewer_appbar_share_to": "Del til",
"album_viewer_page_share_add_users": "Legg til brukere",
"album_with_link_access": "La hvem som helst med lenken se bilder og folk i dette albumet.",
"albums": "Albumer",
"albums_count": "{count, plural, one {{count, number} Album} other {{count, number} Albumer}}",
"albums_default_sort_order": "Standard sorteringsrekkefølge for albumer",
"album_with_link_access": "La hvem som helst med lenken se bilder og personer i dette albumet.",
"albums": "Album",
"albums_count": "{count, plural, one {{count, number} Album} other {{count, number} Album}}",
"albums_default_sort_order": "Standard sorteringsrekkefølge for album",
"albums_default_sort_order_description": "Standard sorteringsrekkefølge for bilder når man lager et nytt album.",
"albums_feature_description": "Samlinger av bilder som kan deles med andre brukere.",
"albums_on_device_count": "Albumer på enheten {count}",
"albums_on_device_count": "Album på enheten {count}",
"all": "Alle",
"all_albums": "Alle album",
"all_people": "Alle personer",
@ -559,7 +559,7 @@
"backup_background_service_error_title": "Feil under sikkerhetskopiering",
"backup_background_service_in_progress_notification": "Sikkerhetskopierer elementer…",
"backup_background_service_upload_failure_notification": "Opplasting feilet {filename}",
"backup_controller_page_albums": "Sikkerhetskopier albumer",
"backup_controller_page_albums": "Sikkerhetskopier album",
"backup_controller_page_background_app_refresh_disabled_content": "Aktiver bakgrunnsoppdatering i Innstillinger > Generelt > Bakgrunnsoppdatering for å bruke sikkerhetskopiering i bakgrunnen.",
"backup_controller_page_background_app_refresh_disabled_title": "Bakgrunnsoppdateringer er deaktivert",
"backup_controller_page_background_app_refresh_enable_button_text": "Gå til innstillinger",
@ -594,7 +594,7 @@
"backup_controller_page_status_off": "Automatisk sikkerhetskopiering i forgrunnen er av",
"backup_controller_page_status_on": "Automatisk sikkerhetskopiering i forgrunnen er på",
"backup_controller_page_storage_format": "{used} av {total} brukt",
"backup_controller_page_to_backup": "Albumer som skal sikkerhetskopieres",
"backup_controller_page_to_backup": "Album som skal sikkerhetskopieres",
"backup_controller_page_total_sub": "Alle unike bilder og videoer fra valgte album",
"backup_controller_page_turn_off": "Slå av sikkerhetskopiering i forgrunnen",
"backup_controller_page_turn_on": "Slå på sikkerhetskopiering i forgrunnen",
@ -756,7 +756,7 @@
"create_user": "Opprett Bruker",
"created": "Opprettet",
"created_at": "Laget",
"creating_linked_albums": "Oppretter sammenkoblede albumer...",
"creating_linked_albums": "Oppretter sammenkoblede album...",
"crop": "Beskjær",
"curated_object_page_title": "Ting",
"current_device": "Nåværende enhet",
@ -904,7 +904,7 @@
"enter_your_pin_code": "Skriv inn din PIN kode",
"enter_your_pin_code_subtitle": "Skriv inn din PIN kode for å få tilgang til låst mappe",
"error": "Feil",
"error_change_sort_album": "Mislyktes ved endring av sorteringsrekkefølge på albumer",
"error_change_sort_album": "Mislyktes ved endring av sorteringsrekkefølge på album",
"error_delete_face": "Feil ved sletting av ansikt fra aktivia",
"error_getting_places": "Feil ved henting av steder",
"error_loading_image": "Feil ved lasting av bilde",
@ -1039,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Feil ved oppdatering av beskrivelsen",
"exif_bottom_sheet_details": "DETALJER",
"exif_bottom_sheet_location": "PLASSERING",
"exif_bottom_sheet_no_description": "Ingen beskrivelse",
"exif_bottom_sheet_people": "MENNESKER",
"exif_bottom_sheet_person_add_person": "Legg til navn",
"exit_slideshow": "Avslutt lysbildefremvisning",
@ -1219,7 +1220,7 @@
"level": "Nivå",
"library": "Bibliotek",
"library_options": "Bibliotekalternativer",
"library_page_device_albums": "Albumer på enheten",
"library_page_device_albums": "Album på enheten",
"library_page_new_album": "Nytt album",
"library_page_sort_asset_count": "Antall elementer",
"library_page_sort_created": "Nylig opplastet",
@ -1353,7 +1354,7 @@
"move_off_locked_folder": "Flytt ut av låst mappe",
"move_to_lock_folder_action_prompt": "{count} lagt til i låst mappe",
"move_to_locked_folder": "Flytt til låst mappe",
"move_to_locked_folder_confirmation": "Disse bildene og videoene vil bli fjernet fra alle albumer, og kun tilgjengelige via den låste mappen",
"move_to_locked_folder_confirmation": "Disse bildene og videoene vil bli fjernet fra alle album, og kun tilgjengelige via den låste mappen",
"moved_to_archive": "Flyttet {count, plural, one {# element} other {# elementer}} til arkivet",
"moved_to_library": "Flyttet {count, plural, one {# element} other {# elementer}} til biblioteket",
"moved_to_trash": "Flyttet til papirkurven",
@ -1363,6 +1364,8 @@
"my_albums": "Mine album",
"name": "Navn",
"name_or_nickname": "Navn eller kallenavn",
"navigate": "Naviger",
"navigate_to_time": "Naviger til tid",
"network_requirement_photos_upload": "Bruk mobildata for backup av bilder",
"network_requirement_videos_upload": "Bruk mobildata for backup av videoer",
"network_requirements": "Nettverkskrav",
@ -1372,6 +1375,7 @@
"never": "aldri",
"new_album": "Nytt Album",
"new_api_key": "Ny API-nøkkel",
"new_date_range": "Nytt datointervall",
"new_password": "Nytt passord",
"new_person": "Ny person",
"new_pin_code": "Ny PIN-kode",
@ -1443,8 +1447,8 @@
"open_the_search_filters": "Åpne søkefiltrene",
"options": "Valg",
"or": "eller",
"organize_into_albums": "Organiser til albumer",
"organize_into_albums_description": "Plasser eksisterende bilder i albumer ved å bruke synkroniseringsinnstillinger",
"organize_into_albums": "Organiser til album",
"organize_into_albums_description": "Plasser eksisterende bilder i album ved å bruke synkroniseringsinnstillinger",
"organize_your_library": "Organiser biblioteket ditt",
"original": "original",
"other": "Annet",
@ -1482,7 +1486,7 @@
"pause_memories": "Sett minner på pause",
"paused": "Satt på pause",
"pending": "Avventer",
"people": "Folk",
"people": "Personer",
"people_edits_count": "Endret {count, plural, one {# person} other {# people}}",
"people_feature_description": "Utforsk bilder og videoer gruppert etter mennesker",
"people_sidebar_description": "Vis en lenke til Personer i sidepanelet",
@ -1806,6 +1810,8 @@
"setting_notifications_subtitle": "Juster notifikasjonsinnstillinger",
"setting_notifications_total_progress_subtitle": "Total opplastingsstatus (fullført/totalt elementer)",
"setting_notifications_total_progress_title": "Vis status på sikkerhetskopiering i bakgrunnen",
"setting_video_viewer_auto_play_subtitle": "Automatisk avspilling av videoer når de åpnes",
"setting_video_viewer_auto_play_title": "Automatisk avspilling av videoer",
"setting_video_viewer_looping_title": "Looping",
"setting_video_viewer_original_video_subtitle": "Når det streames en video fra serveren, spill originalkvaliteten selv om en omkodet versjon finnes. Dette kan medføre buffring. Videoer som er lagret lokalt på enheten spilles i originalkvalitet uavhengig av denne innstillingen.",
"setting_video_viewer_original_video_title": "Tving original video",
@ -1871,7 +1877,7 @@
"sharing": "Deling",
"sharing_enter_password": "Vennligst skriv inn passordet for å se denne siden.",
"sharing_page_album": "Delte album",
"sharing_page_description": "Lag delte albumer for å dele bilder og videoer med folk i nettverket ditt.",
"sharing_page_description": "Lag delte album for å dele bilder og videoer med personer i nettverket ditt.",
"sharing_page_empty_list": "TOM LISTE",
"sharing_sidebar_description": "Vis en lenke til Deling i sidepanelet",
"sharing_silver_appbar_create_shared_album": "Lag delt album",
@ -1915,7 +1921,7 @@
"sort_modified": "Dato modifisert",
"sort_newest": "Nyeste bilde",
"sort_oldest": "Eldste bilde",
"sort_people_by_similarity": "Sorter folk etter likhet",
"sort_people_by_similarity": "Sorter personer etter likhet",
"sort_recent": "Nyeste bilde",
"sort_title": "Tittel",
"source": "Kilde",
@ -1949,7 +1955,7 @@
"support_third_party_description": "Immich-installasjonen din ble pakket av en tredjepart. Problemer du opplever kan være forårsaket av den pakken, så vennligst ta opp problemer med dem i første omgang ved å bruke koblingene nedenfor.",
"swap_merge_direction": "Bytt retning på sammenslåingen",
"sync": "Synkroniser",
"sync_albums": "Synkroniser albumer",
"sync_albums": "Synkroniser album",
"sync_albums_manual_subtitle": "Synkroniser alle opplastede videoer og bilder til det valgte backupalbumet",
"sync_local": "Synkroniser lokalt",
"sync_remote": "Synkroniser eksternt",
@ -1961,7 +1967,7 @@
"tag_created": "Lag merke: {tag}",
"tag_feature_description": "Bla gjennom bilder og videoer gruppert etter logiske merke-emner",
"tag_not_found_question": "Finner du ikke en merke? <link>Opprett en nytt merke.</link>",
"tag_people": "Tag Folk",
"tag_people": "Tag personer",
"tag_updated": "Oppdater merke: {tag}",
"tagged_assets": "Merket {count, plural, one {# element} other {# elementer}}",
"tags": "Merker",

View file

@ -211,6 +211,8 @@
"notification_email_ignore_certificate_errors_description": "Negeer validatiefouten van TLS-certificaat (niet aanbevolen)",
"notification_email_password_description": "Wachtwoord om te gebruiken bij authenticatie met de e-mailserver",
"notification_email_port_description": "Poort van de e-mailserver (bijv. 25, 465 of 587)",
"notification_email_secure": "SMTPS",
"notification_email_secure_description": "Gebruik SMTPS (SMTP via TLS)",
"notification_email_sent_test_email_button": "Verstuur testmail en opslaan",
"notification_email_setting_description": "Instellingen voor het verzenden van e-mailmeldingen",
"notification_email_test_email": "Verstuur testmail",
@ -330,10 +332,10 @@
"transcoding_hardware_acceleration_description": "Experimenteel; snellere transcodering maar kan kwaliteit verminderen bij dezelfde bitrate",
"transcoding_hardware_decoding": "Hardware decodering",
"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_max_b_frames": "Maximum B-Frames",
"transcoding_max_b_frames": "Maximaal aantal 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.",
"transcoding_max_bitrate": "Maximum bitrate",
"transcoding_max_bitrate_description": "Het instellen van een maximale bitrate kan de bestandsgrootte voorspelbaarder maken, tegen geringe kosten voor de kwaliteit. Bij 720p zijn de typische waarden 2600 kbit/s voor VP9 of HEVC, of 4500 kbit/s voor H.264. Uitgeschakeld indien ingesteld op 0.",
"transcoding_max_bitrate": "Maximale bitrate",
"transcoding_max_bitrate_description": "Het instellen van een maximale bitrate kan de bestandsgrootte voorspelbaarder maken, tegen geringe kosten voor de kwaliteit. Bij 720p zijn de typische waarden 2600 kbit/s voor VP9 of HEVC, of 4500 kbit/s voor H.264. Uitgeschakeld indien ingesteld op 0. Zonder eenheid wordt k (kbit/s) aangenomen; bitrates 5000, 5000k, and 5M (Mbit/s) komen dus op hetzelfde neer.",
"transcoding_max_keyframe_interval": "Maximale keyframe interval",
"transcoding_max_keyframe_interval_description": "Stelt de maximale frameafstand tussen keyframes in. Lagere waarden verslechteren de compressie efficiëntie, maar verbeteren de zoektijden en kunnen de kwaliteit verbeteren in scènes met snelle bewegingen. 0 stelt deze waarde automatisch in.",
"transcoding_optimal_description": "Video's met een hogere resolutie dan de doelresolutie of niet in een geaccepteerd formaat",
@ -466,9 +468,11 @@
"api_key_description": "Deze waarde wordt slechts één keer getoond. Zorg ervoor dat je deze kopieert voordat je het venster sluit.",
"api_key_empty": "De naam van uw API-sleutel mag niet leeg zijn",
"api_keys": "API-sleutels",
"app_architecture_variant": "Variant (architectuur)",
"app_bar_signout_dialog_content": "Weet je zeker dat je wilt uitloggen?",
"app_bar_signout_dialog_ok": "Ja",
"app_bar_signout_dialog_title": "Log uit",
"app_download_links": "Download-verwijzingen van de app",
"app_settings": "App instellingen",
"appears_in": "Komt voor in",
"apply_count": "Toepassen ({count, number})",
@ -1346,6 +1350,8 @@
"minute": "Minuut",
"minutes": "Minuten",
"missing": "Missend",
"mobile_app": "Mobiele app",
"mobile_app_download_onboarding_note": "Deze opties zijn bereikbaar via de Gereedschap pagina",
"model": "Model",
"month": "Maand",
"monthly_title_text_date_format": "MMMM y",

View file

@ -333,7 +333,7 @@
"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.",
"transcoding_max_bitrate": "Maksymalna szybkość transmisji",
"transcoding_max_bitrate_description": "Ustawienie maksymalnej szybkości transmisji może sprawić, że rozmiary plików będą bardziej przewidywalne przy niewielkim koszcie na jakość. Przy rozdzielczości 720p typowe wartości to 2600 kbit/s dla VP9 lub HEVC, lub 4500 kbit/s dla H.264. Wyłączone, jeśli ustawione na 0.",
"transcoding_max_bitrate_description": "Ustawienie maksymalnej szybkości transmisji może sprawić, że rozmiary plików będą bardziej przewidywalne przy niewielkim koszcie na jakość. Przy rozdzielczości 720p typowe wartości to 2600 kbit/s dla VP9 lub HEVC, lub 4500 kbit/s dla H.264. Wyłączone, jeśli ustawione na 0. Jeśli nie podano jednostki, przyjmuje się k (dla kbit/s), dlatego 5000, 5000k i 5M (dla Mbit/s) są równoznaczne.",
"transcoding_max_keyframe_interval": "Maksymalny interwał klatek kluczowych",
"transcoding_max_keyframe_interval_description": "Ustawia maksymalny dystans między klatkami kluczowymi. Niższe wartości przyspieszają przeszukiwanie filmów i mogą poprawić jakość w scenach z dużą ilością ruchu, kosztem gorszej efektywności kompresji. 0 ustawia tą wartość automatycznie.",
"transcoding_optimal_description": "Filmy w rozdzielczości wyższej niż docelowa lub w nieakceptowanym formacie",
@ -351,7 +351,7 @@
"transcoding_target_resolution": "Docelowa rozdzielczość",
"transcoding_target_resolution_description": "Wyższe rozdzielczości pozwalają zachować więcej szczegółów, ale kodowanie zajmuje więcej czasu, powoduje większe rozmiary plików i może zmniejszyć płynność aplikacji.",
"transcoding_temporal_aq": "Tymczasowe (Temporal) AQ",
"transcoding_temporal_aq_description": "Dotyczy tylko kodeka NVENC. Zwiększa jakość scen o dużej szczegółowości i małym ruchu. Może nie być kompatybilny ze starszymi urządzeniami.",
"transcoding_temporal_aq_description": "Dotyczy tylko kodeka NVENC. Temporal Adaptive Quantization zwiększa jakość scen o dużej szczegółowości i małym ruchu. Może nie być kompatybilny ze starszymi urządzeniami.",
"transcoding_threads": "Wątki",
"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",
@ -1807,6 +1807,8 @@
"setting_notifications_subtitle": "Dostosuj preferencje powiadomień",
"setting_notifications_total_progress_subtitle": "Ogólny postęp przesyłania (gotowe/całkowite zasoby)",
"setting_notifications_total_progress_title": "Pokaż całkowity postęp tworzenia kopii zapasowej w tle",
"setting_video_viewer_auto_play_subtitle": "Automatycznie rozpoczynaj odtwarzanie filmów po ich otwarciu",
"setting_video_viewer_auto_play_title": "Automatycznie odtwarzaj filmy",
"setting_video_viewer_looping_title": "Zapętlenie",
"setting_video_viewer_original_video_subtitle": "Podczas strumieniowego przesyłania wideo z serwera odtwarzaj oryginał, nawet jeśli transkodowanie jest dostępne. Może to prowadzić do buforowania. Filmy dostępne lokalnie są odtwarzane w oryginalnej jakości niezależnie od tego ustawienia.",
"setting_video_viewer_original_video_title": "Wymuś oryginalne wideo",

View file

@ -1039,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Ocorreu um erro ao alterar a descrição",
"exif_bottom_sheet_details": "DETALHES",
"exif_bottom_sheet_location": "LOCALIZAÇÃO",
"exif_bottom_sheet_no_description": "Sem descrição",
"exif_bottom_sheet_people": "PESSOAS",
"exif_bottom_sheet_person_add_person": "Adicionar nome",
"exit_slideshow": "Sair da apresentação",

View file

@ -333,7 +333,7 @@
"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.",
"transcoding_max_bitrate": "Taxa de bits máxima",
"transcoding_max_bitrate_description": "Definir uma taxa de bits máxima pode tornar os tamanhos dos arquivos mais previsíveis com um custo menor de qualidade. Em 720p, os valores típicos são 2.600 kbit/s para VP9 ou HEVC, ou 4.500 kbit/s para H.264. Desativado se definido como 0.",
"transcoding_max_bitrate_description": "Definir uma taxa de bits máxima pode tornar os tamanhos dos arquivos mais previsíveis, ao custo de pior qualidade. Em 720p, os valores típicos são 2.600 kbit/s para VP9 ou HEVC, ou 4.500 kbit/s para H.264. Desativado se definido como 0. Quando uma unidade não for especificada, k (de kbit/s) será utilizado, ou seja, 5000, 5000k e 5M (de Mbit/s) são equivalentes.",
"transcoding_max_keyframe_interval": "Intervalo máximo de quadro-chave",
"transcoding_max_keyframe_interval_description": "Define a distância máxima do quadro entre os quadros-chave. Valores mais baixos pioram a eficiência da compressão, mas melhoram os tempos de busca e podem melhorar a qualidade em cenas com movimento rápido. 0 define esse valor automaticamente.",
"transcoding_optimal_description": "Vídeos com resolução superior à desejada ou em formato não aceito",
@ -350,8 +350,8 @@
"transcoding_settings_description": "Defina quais vídeos transcodificar e como serão processados",
"transcoding_target_resolution": "Resolução desejada",
"transcoding_target_resolution_description": "Resoluções mais altas podem preservar mais detalhes, mas demoram mais para codificar, têm tamanhos de arquivo maiores e podem reduzir a capacidade de resposta do aplicativo.",
"transcoding_temporal_aq": "QA temporal",
"transcoding_temporal_aq_description": "Aplica-se apenas ao NVENC. Aumenta a qualidade de cenas com alto detalhe e pouco movimento. Pode não ser compatível com dispositivos mais antigos.",
"transcoding_temporal_aq": "Quantização com adaptação temporal",
"transcoding_temporal_aq_description": "Aplica-se apenas ao NVENC. A Quantização com adaptação temporal aumenta a qualidade de cenas com alto detalhe e pouco movimento. Pode não ser compatível com dispositivos mais antigos.",
"transcoding_threads": "Threads",
"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",
@ -372,7 +372,7 @@
"unlink_all_oauth_accounts_prompt": "Tem certeza que deseja desvincular todas as contas OAuth? Isto vai redefinir o ID OAuth de todos os usuário e não pode ser desfeito.",
"user_cleanup_job": "Limpeza de usuários",
"user_delete_delay": "A conta e os arquivos de <b>{user}</b> serão programados para exclusão permanente em {delay, plural, one {# dia} other {# dias}}.",
"user_delete_delay_settings": "Remover atraso",
"user_delete_delay_settings": "Período de carência",
"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.",
"user_delete_immediately": "A conta e os arquivos de <b>{user}</b> serão programados para exclusão permanente <b>imediata</b>.",
"user_delete_immediately_checkbox": "Adicionar o usuário e seus arquivos na fila para serem deletados imediatamente",
@ -1039,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Erro ao alterar a descrição",
"exif_bottom_sheet_details": "DETALHES",
"exif_bottom_sheet_location": "LOCALIZAÇÃO",
"exif_bottom_sheet_no_description": "Sem descrição",
"exif_bottom_sheet_people": "PESSOAS",
"exif_bottom_sheet_person_add_person": "Adicionar nome",
"exit_slideshow": "Sair da apresentação",
@ -1363,6 +1364,8 @@
"my_albums": "Meus Álbuns",
"name": "Nome",
"name_or_nickname": "Nome ou apelido",
"navigate": "Navegar",
"navigate_to_time": "Navegar para Horário",
"network_requirement_photos_upload": "Use a rede móvel para enviar fotos",
"network_requirement_videos_upload": "Use a rede móvel para enviar vídeos",
"network_requirements": "Requerimentos de Rede",
@ -1372,6 +1375,7 @@
"never": "Nunca",
"new_album": "Novo Álbum",
"new_api_key": "Nova Chave de API",
"new_date_range": "Nova faixa de datas",
"new_password": "Nova senha",
"new_person": "Nova Pessoa",
"new_pin_code": "Novo código PIN",
@ -1806,6 +1810,8 @@
"setting_notifications_subtitle": "Ajuste suas preferências de notificação",
"setting_notifications_total_progress_subtitle": "Progresso do envio de arquivos (concluídos/total)",
"setting_notifications_total_progress_title": "Mostrar o progresso total do backup em segundo plano",
"setting_video_viewer_auto_play_subtitle": "Reproduzir os vídeos automaticamente quando abertos",
"setting_video_viewer_auto_play_title": "Reproduzir vídeos automaticamente",
"setting_video_viewer_looping_title": "Repetir",
"setting_video_viewer_original_video_subtitle": "Ao transmitir um vídeo do servidor, usar o arquivo original, mesmo quando uma versão transcodificada esteja disponível. Pode fazer com que o vídeo demore para carregar. Vídeos disponíveis localmente são exibidos na qualidade original independente desta configuração.",
"setting_video_viewer_original_video_title": "Forçar vídeo original",

View file

@ -33,6 +33,7 @@
"add_to_albums": "Adaugă la albume",
"add_to_albums_count": "Adaugă la albume ({count})",
"add_to_shared_album": "Adaugă la album partajat",
"add_upload_to_stack": "Încarcă și adaugă la stivă",
"add_url": "Adăugați adresa URL",
"added_to_archive": "Adăugat la arhivă",
"added_to_favorites": "Adaugă la favorite",
@ -1038,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Eroare la actualizarea descrierii",
"exif_bottom_sheet_details": "DETALII",
"exif_bottom_sheet_location": "LOCAȚIE",
"exif_bottom_sheet_no_description": "Fără descriere",
"exif_bottom_sheet_people": "PERSOANE",
"exif_bottom_sheet_person_add_person": "Adăugați nume",
"exit_slideshow": "Ieșire din Prezentare",
@ -1805,6 +1807,8 @@
"setting_notifications_subtitle": "Ajustează preferințele pentru notificări",
"setting_notifications_total_progress_subtitle": "Progresul general al încărcării (resurse finalizate/total)",
"setting_notifications_total_progress_title": "Afișează progresul total al copiilor de siguranță în fundal",
"setting_video_viewer_auto_play_subtitle": "Pornește automat redarea videoclipurilor când sunt deschise",
"setting_video_viewer_auto_play_title": "Redare automată a videoclipurilor",
"setting_video_viewer_looping_title": "Buclă",
"setting_video_viewer_original_video_subtitle": "Când redați în flux un videoclip de pe server, redați originalul chiar și atunci când este disponibilă o transcodare. Poate duce la încărcare temporară. Videoclipurile disponibile local sunt redate la calitatea originală indiferent de această setare.",
"setting_video_viewer_original_video_title": "Forțează videoclipul original",
@ -2112,7 +2116,7 @@
"view_previous_asset": "Vizualizați resursa anterioară",
"view_qr_code": "Vezi cod QR",
"view_similar_photos": "Vizualizați poze similare",
"view_stack": "Vizualizați Stiva",
"view_stack": "Vizualizare stivă",
"view_user": "Vizualizare utilizator",
"viewer_remove_from_stack": "Șterge din grup",
"viewer_stack_use_as_main_asset": "Folosește ca resursă principală",

View file

@ -211,6 +211,8 @@
"notification_email_ignore_certificate_errors_description": "Игнорировать ошибки проверки сертификата TLS (не рекомендуется)",
"notification_email_password_description": "Пароль для аутентификации на сервере электронной почты",
"notification_email_port_description": "Порт почтового сервера (например, 25, 465 или 587)",
"notification_email_secure": "SMTPS",
"notification_email_secure_description": "Использовать SMTPS (SMTP через TLS)",
"notification_email_sent_test_email_button": "Отправить проверочное письмо и сохранить",
"notification_email_setting_description": "Настройки отправки уведомлений по электронной почте",
"notification_email_test_email": "Отправить проверочное письмо",
@ -303,7 +305,7 @@
"thumbnail_generation_job": "Создание миниатюр",
"thumbnail_generation_job_description": "Создает большие, маленькие и размытые миниатюры для каждого файла и человека",
"transcoding_acceleration_api": "API ускорителя",
"transcoding_acceleration_api_description": "API, который будет взаимодействовать с вашим устройством для ускорения транскодирования. Эта настройка является «наилучшим вариантом»: при сбое она будет возвращаться к программному транскодированию. VP9 может работать или не работать в зависимости от вашего оборудования.",
"transcoding_acceleration_api_description": "Выберите подходящий используемому оборудованию API для ускорения транскодирования. Выбранное значение является «наилучшим вариантом»: в случае проблем произойдет возврат на программное транскодирование. VP9 может работать или не работать в зависимости от используемого оборудования.",
"transcoding_acceleration_nvenc": "NVENC (требуется графический процессор NVIDIA)",
"transcoding_acceleration_qsv": "Quick Sync (требуется процессор Intel 7-го поколения или новее)",
"transcoding_acceleration_rkmpp": "RKMPP (только для SOC Rockchip)",
@ -320,27 +322,27 @@
"transcoding_bitrate_description": "Видео с битрейтом выше максимального или в неподходящем формате может вызвать проблемы",
"transcoding_codecs_learn_more": "Для изучения терминологии, используемой здесь, обратитесь к документации FFmpeg по кодекам <h264-link>H.264</h264-link>, <hevc-link>HEVC</hevc-link> и <vp9-link>VP9</vp9-link>.",
"transcoding_constant_quality_mode": "Режим постоянного качества",
"transcoding_constant_quality_mode_description": "ICQ лучше, чем CQP, но некоторые устройства аппаратного ускорения не поддерживают этот режим. Установка этой опции будет отдавать предпочтение указанному режиму при использовании кодирования на основе качества. Игнорируется NVENC, поскольку не поддерживает ICQ.",
"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_disabled_description": "Не перекодировать видео, это может привести к сбою воспроизведения на некоторых клиентах",
"transcoding_encoding_options": "Параметры кодирования",
"transcoding_encoding_options_description": "Установите кодеки, разрешение, качество и другие параметры для кодированного видео",
"transcoding_hardware_acceleration": "Аппаратное ускорение",
"transcoding_hardware_acceleration_description": "Экспериментально: более быстрое транскодирование, но, возможна потеря качества при том же битрейте",
"transcoding_hardware_acceleration_description": "Экспериментально: более быстрое транскодирование, но с возможным ухудшением качества при том же битрейте",
"transcoding_hardware_decoding": "Аппаратное декодирование",
"transcoding_hardware_decoding_setting_description": "Включает сквозное ускорение, а не только ускорение кодирования. Может работать не со всеми видео.",
"transcoding_hardware_decoding_setting_description": "Дополнительно ускоряет декодирование, а не только кодирование. Может работать не со всеми видео.",
"transcoding_max_b_frames": "Максимально промежуточных кадров",
"transcoding_max_b_frames_description": "Более высокие значения повышают эффективность сжатия, но замедляют кодирование. Может быть несовместимо с аппаратным ускорением на старых устройствах. 0 отключает B-кадры, а -1 устанавливает это значение автоматически.",
"transcoding_max_bitrate": "Максимальный битрейт",
"transcoding_max_bitrate_description": "Установка максимального битрейта может сделать размер файла более предсказуемым при незначительном снижении качества. При 720p типичными значениями являются 2600 kbit/s для VP9 или HEVC или 4500 kbit/s для H.264. Отключено, если установлено значение 0.",
"transcoding_max_bitrate_description": "Ограничение битрейта может сделать размер файла более предсказуемым при незначительном снижении качества. При разрешении 720p типичными значениями являются 2600 кбит/с для кодеков VP9 или HEVC и 4500 кбит/с для H.264. Ограничение отключено, если задано значение 0. Когда единица измерения не указана, предполагается k (кбит/с); поэтому значения 5000, 5000k и 5M (для Мбит/с) эквивалентны.",
"transcoding_max_keyframe_interval": "Максимальный интервал ключевых кадров",
"transcoding_max_keyframe_interval_description": "Устанавливает максимальное расстояние между ключевыми кадрами. Более низкие значения ухудшают эффективность сжатия, но сокращают время поиска и могут улучшить качество в сценах с быстрым движением. 0 устанавливает это значение автоматически.",
"transcoding_optimal_description": "Видео с разрешением выше целевого или не в принятом формате",
"transcoding_policy": "Политика перекодировки",
"transcoding_policy_description": "Установите, когда видео будет перекодировано",
"transcoding_preferred_hardware_device": "Предпочитаемое аппаратное устройство",
"transcoding_preferred_hardware_device_description": "Применяется только к VAAPI и QSV. Устанавливает dri-узел, используемый для аппаратного перекодирования.",
"transcoding_preferred_hardware_device_description": "Применяется только к VAAPI и QSV. Устанавливает dri-узел, используемый для аппаратного транскодирования.",
"transcoding_preset_preset": "Предустановка",
"transcoding_preset_preset_description": "Скорость сжатия. Медленные настройки создают более маленькие файлы и повышают качество при достижении определенного битрейта. VP9 игнорирует скорости выше “faster”.",
"transcoding_reference_frames": "Опорные кадры",
@ -350,8 +352,8 @@
"transcoding_settings_description": "Управляйте тем, какие видео нужно перекодировать и как их обрабатывать",
"transcoding_target_resolution": "Целевое разрешение",
"transcoding_target_resolution_description": "Более высокие разрешения позволяют сохранить больше деталей, но требуют больше времени для кодирования, имеют больший размер файлов и могут снизить скорость отклика приложения.",
"transcoding_temporal_aq": "Временной AQ",
"transcoding_temporal_aq_description": "Применяется только к NVENC. Повышает качество сцен с высокой детализацией и низким движением. Может быть несовместимо со старыми устройствами.",
"transcoding_temporal_aq": "Temporal Adaptive Quantization (временное адаптивное квантование)",
"transcoding_temporal_aq_description": "Применимо только к NVENC (NVIDIA Encoder). Технология повышает качество высокодетализированных нединамичных сцен. Может быть несовместима со старыми устройствами.",
"transcoding_threads": "Потоки",
"transcoding_threads_description": "Более высокие значения приводят к более быстрому кодированию, но оставляют серверу меньше места для обработки других задач во время активности. Это значение не должно превышать количество ядер процессора. Максимизирует использование, если установлено значение 0.",
"transcoding_tone_mapping": "Отображение тонов",
@ -770,7 +772,7 @@
"dark": "Тёмная",
"dark_theme": "Включить/выключить тёмную тему",
"date_after": "Дата после",
"date_and_time": "Дата и Время",
"date_and_time": "Дата и время",
"date_before": "Дата до",
"date_format": "E, LLL d, y • h:mm a",
"date_of_birth_saved": "Дата рождения успешно сохранена",
@ -821,7 +823,7 @@
"direction": "Направление",
"disabled": "Отключено",
"disallow_edits": "Запретить редактирование",
"discord": "Обсуждение в Discord",
"discord": "Discord",
"discover": "Обнаружить",
"discovered_devices": "Обнаруженные устройства",
"dismiss_all_errors": "Сбросить все ошибки",
@ -1321,7 +1323,7 @@
"map_settings_only_show_favorites": "Показать только избранное",
"map_settings_theme_settings": "Цвет карты",
"map_zoom_to_see_photos": "Уменьшение масштаба для просмотра фотографий",
"mark_all_as_read": "Отметить все как прочитанные",
"mark_all_as_read": "Прочитано",
"mark_as_read": "Отметить как прочитанное",
"marked_all_as_read": "Отмечены как прочитанные",
"matches": "Совпадения",
@ -1364,6 +1366,8 @@
"my_albums": "Мои альбомы",
"name": "Имя",
"name_or_nickname": "Имя или ник",
"navigate": "Перейти",
"navigate_to_time": "Перейти к дате",
"network_requirement_photos_upload": "Использовать мобильный интернет для загрузки фото",
"network_requirement_videos_upload": "Использовать мобильный интернет для загрузки видео",
"network_requirements": "Требования к сети",
@ -1807,6 +1811,8 @@
"setting_notifications_subtitle": "Параметры уведомлений",
"setting_notifications_total_progress_subtitle": "Общий прогресс загрузки (выполнено/всего объектов)",
"setting_notifications_total_progress_title": "Показать общий прогресс фонового резервного копирования",
"setting_video_viewer_auto_play_subtitle": "Автоматически запускать воспроизведение видео при открытии",
"setting_video_viewer_auto_play_title": "Автовоспроизведение видео",
"setting_video_viewer_looping_title": "Циклическое воспроизведение",
"setting_video_viewer_original_video_subtitle": "При воспроизведении видео с сервера загружать оригинал, даже если доступна транскодированная версия. Может привести к буферизации. Видео, доступные локально, всегда воспроизводятся в исходном качестве.",
"setting_video_viewer_original_video_title": "Только оригинальное видео",

View file

@ -33,7 +33,7 @@
"add_to_albums": "Pridať do albumov",
"add_to_albums_count": "Pridať do albumov ({count})",
"add_to_shared_album": "Pridať do zdieľaného albumu",
"add_upload_to_stack": "Pridať nahraté do zoskupených",
"add_upload_to_stack": "Nahrať a pridať do zoskupených",
"add_url": "Pridať URL",
"added_to_archive": "Pridané do archívu",
"added_to_favorites": "Pridané do obľúbených",
@ -333,7 +333,7 @@
"transcoding_max_b_frames": "Maximálny počet B-snímkov",
"transcoding_max_b_frames_description": "Vyššie hodnoty zvyšujú účinnosť kompresie, ale spomaľujú kódovanie. Nemusí byť kompatibilný s hardvérovou akceleráciou na starších zariadeniach. Hodnota 0 zakáže B-snímky, zatiaľ čo -1 nastaví túto hodnotu automaticky.",
"transcoding_max_bitrate": "Maximálna bitová rýchlosť",
"transcoding_max_bitrate_description": "Nastavenie maximálneho dátového toku môže zvýšiť predvídateľnosť veľkosti súborov za cenu menšieho zníženia kvality. Pri rozlíšení 720p sú typické hodnoty 2600 kbit/s pre VP9 alebo HEVC alebo 4500 kbit/s pre H.264. Zakázané, ak je nastavená hodnota 0.",
"transcoding_max_bitrate_description": "Nastavenie maximálneho dátového toku môže zvýšiť predvídateľnosť veľkosti súborov za cenu menšieho zníženia kvality. Pri rozlíšení 720p sú typické hodnoty 2600 kbit/s pre VP9 alebo HEVC alebo 4500 kbit/s pre H.264. Zakázané, ak je nastavená hodnota 0. Ak nie je špecifikovaná žiadna jednotka, predpokladá sa k (pre kbit/s); preto sú 5000, 5000k a 5M (pre Mbit/s) ekvivalentné.",
"transcoding_max_keyframe_interval": "Maximálny interval medzi kľúčovými snímkami",
"transcoding_max_keyframe_interval_description": "Nastavuje maximálnu vzdialenosť medzi kľúčovými snímkami. Nižšie hodnoty zhoršujú účinnosť kompresie, ale zlepšujú časy vyhľadávania a môžu zlepšiť kvalitu v scénach s rýchlym pohybom. Hodnota 0 nastavuje túto hodnotu automaticky.",
"transcoding_optimal_description": "Videá s vyšším ako cieľovým rozlíšením alebo videá, ktoré nie sú v prijateľnom formáte",
@ -351,7 +351,7 @@
"transcoding_target_resolution": "Cieľové rozlíšenie",
"transcoding_target_resolution_description": "Vyššie rozlíšenia môžu zachovať viac detailov, ale ich kódovanie trvá dlhšie, majú väčšiu veľkosť súborov a môžu znížiť odozvu aplikácie.",
"transcoding_temporal_aq": "Časové AQ",
"transcoding_temporal_aq_description": "Platí len pre NVENC. Zvyšuje kvalitu scén s vysokým počtom detailov a nízkym počtom pohybov. Nemusí byť kompatibilný so staršími zariadeniami.",
"transcoding_temporal_aq_description": "Platí len pre NVENC. Časová adaptívna kvantizácia zvyšuje kvalitu scén s vysokým počtom detailov a nízkym počtom pohybov. Nemusí byť kompatibilné so staršími zariadeniami.",
"transcoding_threads": "Vlákna",
"transcoding_threads_description": "Vyššie hodnoty vedú k rýchlejšiemu kódovaniu, ale ponechávajú serveru menej priestoru na spracovanie iných úloh počas aktivity. Táto hodnota by nemala byť väčšia ako počet jadier CPU. Maximalizuje využitie, ak je nastavená na hodnotu 0.",
"transcoding_tone_mapping": "Tónové mapovanie",
@ -1039,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Chyba pri aktualizácii popisu",
"exif_bottom_sheet_details": "PODROBNOSTI",
"exif_bottom_sheet_location": "POLOHA",
"exif_bottom_sheet_no_description": "Žiadny popis",
"exif_bottom_sheet_people": "ĽUDIA",
"exif_bottom_sheet_person_add_person": "Pridať meno",
"exit_slideshow": "Opustiť prezentáciu",
@ -1363,6 +1364,8 @@
"my_albums": "Moje albumy",
"name": "Meno",
"name_or_nickname": "Meno alebo prezývka",
"navigate": "Prejsť",
"navigate_to_time": "Prejsť na čas",
"network_requirement_photos_upload": "Použiť mobilné dáta na zálohovanie fotografií",
"network_requirement_videos_upload": "Použiť mobilné dáta na zálohovanie videí",
"network_requirements": "Požiadavky na sieť",
@ -1372,6 +1375,7 @@
"never": "nikdy",
"new_album": "Nový album",
"new_api_key": "Nový API kľúč",
"new_date_range": "Nový rozsah dátumov",
"new_password": "Nové heslo",
"new_person": "Nová osoba",
"new_pin_code": "Nový PIN kód",
@ -1806,6 +1810,8 @@
"setting_notifications_subtitle": "Upravte svoje nastavenia oznámení",
"setting_notifications_total_progress_subtitle": "Celkový priebeh nahrávania (nahraných/celkovo)",
"setting_notifications_total_progress_title": "Zobraziť celkový priebeh zálohovania na pozadí",
"setting_video_viewer_auto_play_subtitle": "Automaticky spustiť prehrávanie videí po ich otvorení",
"setting_video_viewer_auto_play_title": "Automaticky prehrať videá",
"setting_video_viewer_looping_title": "Opakovanie",
"setting_video_viewer_original_video_subtitle": "Pri streamovaní videa zo servera prehrať originál, aj keď je k dispozícii prekódované video. Môže to viesť k prerušovanému prehrávaniu videa. Videá dostupné lokálne sa prehrajú v pôvodnej kvalite bez ohľadu na toto nastavenie.",
"setting_video_viewer_original_video_title": "Vynútiť pôvodné video",

View file

@ -333,7 +333,7 @@
"transcoding_max_b_frames": "Največji B-okvirji",
"transcoding_max_b_frames_description": "Višje vrednosti izboljšajo učinkovitost stiskanja, vendar upočasnijo kodiranje. Morda ni združljivo s strojnim pospeševanjem na starejših napravah. 0 onemogoči okvirje B, medtem ko -1 samodejno nastavi to vrednost.",
"transcoding_max_bitrate": "Največja bitna hitrost",
"transcoding_max_bitrate_description": "Z nastavitvijo največje bitne hitrosti so lahko velikosti datotek bolj predvidljive ob manjši ceni kakovosti. Pri 720p so tipične vrednosti 2600 kbit/s za VP9 ali HEVC ali 4500 kbit/s za H.264. Onemogočeno, če je nastavljeno na 0.",
"transcoding_max_bitrate_description": "Z nastavitvijo najvišje bitne hitrosti je mogoče povečati predvidljivost velikosti datotek, vendar z manjšim zmanjšanjem kakovosti. Pri ločljivosti 720p so tipične vrednosti 2600 kbit/s za VP9 ali HEVC oziroma 4500 kbit/s za H.264. Onemogočeno, če je nastavljeno na 0. Če enota ni določena, se predpostavlja k (za kbit/s); zato so 5000, 5000 kbit/s in 5 Mbit/s enakovredne.",
"transcoding_max_keyframe_interval": "Največji interval ključnih sličic",
"transcoding_max_keyframe_interval_description": "Nastavi največjo razdaljo med ključnimi slikami. Nižje vrednosti poslabšajo učinkovitost stiskanja, vendar izboljšajo čas iskanja in lahko izboljšajo kakovost prizorov s hitrim gibanjem. 0 samodejno nastavi to vrednost.",
"transcoding_optimal_description": "Videoposnetki, ki so višji od ciljne ločljivosti ali niso v sprejemljivem formatu",
@ -351,7 +351,7 @@
"transcoding_target_resolution": "Ciljna ločljivost",
"transcoding_target_resolution_description": "Višje ločljivosti lahko ohranijo več podrobnosti, vendar kodiranje traja dlje, imajo večje velikosti datotek in lahko zmanjšajo odzivnost aplikacije.",
"transcoding_temporal_aq": "Časovni AQ",
"transcoding_temporal_aq_description": "Velja samo za NVENC. Poveča kakovost prizorov z veliko podrobnosti in malo gibanja. Morda ni združljiv s starejšimi napravami.",
"transcoding_temporal_aq_description": "Velja samo za NVENC. Časovna prilagodljiva kvantizacija izboljša kakovost prizorov z visoko stopnjo podrobnosti in nizko stopnjo gibanja. Morda ni združljivo s starejšimi napravami.",
"transcoding_threads": "Niti",
"transcoding_threads_description": "Višje vrednosti vodijo do hitrejšega kodiranja, vendar pustijo manj prostora strežniku za obdelavo drugih nalog, ko je aktiven. Ta vrednost ne sme biti večja od števila jeder procesorja. Maksimira uporabo, če je nastavljeno na 0.",
"transcoding_tone_mapping": "Tonska preslikava",
@ -1807,6 +1807,8 @@
"setting_notifications_subtitle": "Prilagodite svoje nastavitve obvestil",
"setting_notifications_total_progress_subtitle": "Splošni napredek nalaganja (končano/skupaj sredstev)",
"setting_notifications_total_progress_title": "Prikaži skupni napredek varnostnega kopiranja v ozadju",
"setting_video_viewer_auto_play_subtitle": "Samodejno začni predvajati videoposnetke, ko jih odpreš",
"setting_video_viewer_auto_play_title": "Samodejno predvajanje videoposnetkov",
"setting_video_viewer_looping_title": "V zanki",
"setting_video_viewer_original_video_subtitle": "Ko pretakate video iz strežnika, predvajajte izvirnik, tudi če je na voljo prekodiranje. Lahko povzroči medpomnjenje. Videoposnetki, ki so na voljo lokalno, se predvajajo v izvirni kakovosti ne glede na to nastavitev.",
"setting_video_viewer_original_video_title": "Vsili izvirni video",

View file

@ -118,7 +118,7 @@
"library_scanning_enable_description": "Aktivera periodisk biblioteksskanning",
"library_settings": "Externa bibliotek",
"library_settings_description": "Hantera inställningar för externa bibliotek",
"library_tasks_description": "Sök igenom externa bibliotek efter nya och/eller ändrade objekt",
"library_tasks_description": "Sök igenom externa bibliotek efter nya och/eller förändrade objekt",
"library_watching_enable_description": "Bevaka externa bibliotek för filändringar",
"library_watching_settings": "Bevaka bibliotek (EXPERIMENTELLT)",
"library_watching_settings_description": "Bevaka automatiskt filförändringar",
@ -333,7 +333,7 @@
"transcoding_max_b_frames": "Max B-ramar",
"transcoding_max_b_frames_description": "Högre värden förbättrar kompressionseffektiviteten, men saktar ner kodningen. Kan vara inkompatibel med hårdvaruacceleration på äldre enheter. 0 avaktiverar B-frames, medan -1 anger detta värde automatiskt.",
"transcoding_max_bitrate": "Max bithastighet",
"transcoding_max_bitrate_description": "En maximal bitrate kan göra filstorlekar mer förutsägbara till en liten kostnad på kvalitet. Vid 720p är typiska värden 2600 kbit/s för VP9 eller HEVC, eller 4500 kbit/s för H.264. Inaktiverad om satt till 0.",
"transcoding_max_bitrate_description": "En maximal bitrate kan göra filstorlekar mer förutsägbara till en liten kostnad på kvalitet. Vid 720p är typiska värden 2600 kbit/s för VP9 eller HEVC, eller 4500 kbit/s för H.264. Inaktiverad om satt till 0. När ingen enhet anges så kommer k (för kbit/s) användas; därför är 5000, 5000k och 5M (för Mbit/s) likvärdiga.",
"transcoding_max_keyframe_interval": "Max nyckelbildruteintervall",
"transcoding_max_keyframe_interval_description": "Sätter det maximala bildruteavståndet mellan nyckelbildrutor. Lägre värden försämrar kompressionseffektiviteten, men förbättrar söktiderna och kan förbättra kvaliteten i scener med snabb rörelse. 0 ställer in detta värde automatiskt.",
"transcoding_optimal_description": "Videor som är högre än mållösning eller inte i ett accepterat format",
@ -351,7 +351,7 @@
"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": "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_temporal_aq_description": "Gäller endast NVENC. Temporal adaptiv kvantisering ökar kvaliteten på scener med hög detaljrikedom och låg rörelse. Kan vara inkompatibel med äldre enheter.",
"transcoding_threads": "Trådar",
"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",
@ -1039,6 +1039,7 @@
"exif_bottom_sheet_description_error": "Fel vid uppdatering av beskrivningen",
"exif_bottom_sheet_details": "DETALJER",
"exif_bottom_sheet_location": "PLATS",
"exif_bottom_sheet_no_description": "Ingen beskrivning",
"exif_bottom_sheet_people": "PERSONER",
"exif_bottom_sheet_person_add_person": "Lägg till namn",
"exit_slideshow": "Avsluta bildspel",
@ -1806,6 +1807,8 @@
"setting_notifications_subtitle": "Anpassa dina notis-inställningar",
"setting_notifications_total_progress_subtitle": "Övergripande uppladdningsförlopp (klar/totala tillgångar)",
"setting_notifications_total_progress_title": "Visa totalt uppladdningsförlopp",
"setting_video_viewer_auto_play_subtitle": "Börja automatiskt spela upp videor när de öppnas",
"setting_video_viewer_auto_play_title": "Automatisk uppspelning av video",
"setting_video_viewer_looping_title": "Loopar",
"setting_video_viewer_original_video_subtitle": "Spela originalet när en video strömmas från servern, även när en transkodad version är tillgänglig. Kan leda till buffring. Videor som är tillgängliga lokalt spelas i originalkvalitet oavsett denna inställning.",
"setting_video_viewer_original_video_title": "Tvinga orginalvideo",
@ -1938,7 +1941,7 @@
"stop_sharing_photos_with_user": "Sluta dela dina bilder med denna användaren",
"storage": "Lagring",
"storage_label": "Förvaringsetikett",
"storage_quota": "Lagrinkskvot",
"storage_quota": "Lagringskvot",
"storage_usage": "{used} av {available} används",
"submit": "Skicka",
"success": "Framgång",

View file

@ -333,7 +333,7 @@
"transcoding_max_b_frames": "அதிகபட்ச பி-பிரேம்கள்",
"transcoding_max_b_frames_description": "அதிக மதிப்புகள் சுருக்க செயல்திறனை மேம்படுத்துகின்றன, ஆனால் குறியாக்கத்தை மெதுவாக்குகின்றன. பழைய சாதனங்களில் வன்பொருள் முடுக்கம் உடன் பொருந்தாது. 0 பி -பிரேம்களை முடக்குகிறது, அதே நேரத்தில் -1 இந்த மதிப்பை தானாக அமைக்கிறது.",
"transcoding_max_bitrate": "அதிகபட்ச பிட்ரேட்",
"transcoding_max_bitrate_description": "அதிகபட்ச பிட்ரேட்டை அமைப்பது கோப்பு அளவுகளை ஒரு சிறிய செலவில் தரத்திற்கு கணிக்கக்கூடியதாக மாற்றும். 720p இல், வழக்கமான மதிப்புகள் VP9 அல்லது HEVC க்கு 2600 kbit/s அல்லது H.264 க்கு 4500 kbit/s ஆகும். 0 என அமைக்கப்பட்டால் முடக்கப்பட்டது.",
"transcoding_max_bitrate_description": "அதிகபட்ச பிட்ரேட்டை அமைப்பது, தரத்திற்கு குறைந்த செலவில் கோப்பு அளவுகளை மேலும் கணிக்கக்கூடியதாக மாற்றும். 720p இல், வழக்கமான மதிப்புகள் VP9 அல்லது HEVCக்கு 2600 kbit/s அல்லது H.264க்கு 4500 kbit/s ஆகும். 0 என அமைத்தால் முடக்கப்படும். அலகு எதுவும் குறிப்பிடப்படாதபோது, k (kbit/sக்கு) கருதப்படுகிறது; எனவே 5000, 5000k மற்றும் 5M (Mbit/s க்கு) சமமானவை.",
"transcoding_max_keyframe_interval": "அதிகபட்ச கீஃப்ரேம் இடைவெளி",
"transcoding_max_keyframe_interval_description": "கீஃப்ரேம்களுக்கு இடையில் அதிகபட்ச பிரேம் தூரத்தை அமைக்கிறது. குறைந்த மதிப்புகள் சுருக்க செயல்திறனை மோசமாக்குகின்றன, ஆனால் தேடல் நேரங்களை மேம்படுத்துகின்றன, மேலும் வேகமான இயக்கத்துடன் காட்சிகளில் தரத்தை மேம்படுத்தலாம். 0 இந்த மதிப்பை தானாக அமைக்கிறது.",
"transcoding_optimal_description": "இலக்கு தீர்மானத்தை விட உயர்ந்த வீடியோக்கள் அல்லது ஏற்றுக்கொள்ளப்பட்ட வடிவத்தில் இல்லை",
@ -351,7 +351,7 @@
"transcoding_target_resolution": "இலக்கு தீர்மானம்",
"transcoding_target_resolution_description": "அதிக தீர்மானங்கள் அதிக விவரங்களை பாதுகாக்க முடியும், ஆனால் குறியாக்க அதிக நேரம் எடுக்கும், பெரிய கோப்பு அளவுகளைக் கொண்டிருக்கலாம், மேலும் பயன்பாட்டு மறுமொழியைக் குறைக்கலாம்.",
"transcoding_temporal_aq": "தம்போர்ல்",
"transcoding_temporal_aq_description": "NVENC க்கு மட்டுமே பொருந்தும். உயர்-விவரம், குறைந்த இயக்க காட்சிகளின் தரத்தை அதிகரிக்கிறது. பழைய சாதனங்களுடன் பொருந்தாது.",
"transcoding_temporal_aq_description": "NVENC க்கு மட்டுமே பொருந்தும். டெம்போரல் அடாப்டிவ் குவாண்டேசேசன் உயர் விவரம், குறைந்த இயக்கக் காட்சிகளின் தரத்தை அதிகரிக்கிறது. பழைய சாதனங்களுடன் இணங்காமல் இருக்கலாம்.",
"transcoding_threads": "நூல்கள்",
"transcoding_threads_description": "அதிக மதிப்புகள் விரைவான குறியாக்கத்திற்கு வழிவகுக்கும், ஆனால் செயலில் இருக்கும்போது மற்ற பணிகளைச் செயலாக்க சேவையகத்திற்கு குறைந்த இடத்தை விட்டு விடுங்கள். இந்த மதிப்பு சிபியு கோர்களின் எண்ணிக்கையை விட அதிகமாக இருக்கக்கூடாது. 0 என அமைக்கப்பட்டால் பயன்பாட்டை அதிகரிக்கிறது.",
"transcoding_tone_mapping": "தொனி-மேப்பிங்",
@ -958,15 +958,15 @@
"unable_to_add_import_path": "இறக்குமதி பாதையைச் சேர்க்க முடியவில்லை",
"unable_to_add_partners": "கூட்டாளர்களைச் சேர்க்க முடியவில்லை",
"unable_to_add_remove_archive": "காப்பகத்தில் {archived, select, true {இருந்து சொத்தை அகற்ற} other {சொத்தைச் சேர்க்க}} முடியவில்லை",
"unable_to_add_remove_favorites": "பிடித்தவையில் {பிடித்தது, தேர்ந்தெடு, உண்மை {சொத்தைச் சேர்க்க} மற்ற {சொத்தை அகற்ற}} முடியவில்லை",
"unable_to_archive_unarchive": "{காப்பகப்படுத்த முடியவில்லை, தேர்ந்தெடு, உண்மை {காப்பகம்} மற்றவை {காப்பகத்தை அகற்று}}",
"unable_to_add_remove_favorites": "பிடித்தவையில் {favorite, select, true {சொத்தைச் சேர்க்க} other {சொத்தை அகற்ற}} முடியவில்லை",
"unable_to_archive_unarchive": "{காப்பகப்படுத்தப்பட்டது, தேர்ந்தெடு, உண்மை {archive} மற்றவற்றை {unarchive}} செய்ய முடியவில்லை",
"unable_to_change_album_user_role": "ஆல்பத்தின் பயனரின் பாத்திரத்தை மாற்ற முடியவில்லை",
"unable_to_change_date": "தேதியை மாற்ற முடியவில்லை",
"unable_to_change_description": "விளக்கத்தை மாற்ற முடியவில்லை",
"unable_to_change_favorite": "சொத்துக்கு பிடித்ததை மாற்ற முடியவில்லை",
"unable_to_change_location": "இருப்பிடத்தை மாற்ற முடியவில்லை",
"unable_to_change_password": "கடவுச்சொல்லை மாற்ற முடியவில்லை",
"unable_to_change_visibility": "{எண்ணிக்கை, பன்மை, ஒன்று {# நபர்} பிற {# மக்கள்}} க்கான தெரிவுநிலையை மாற்ற முடியவில்லை",
"unable_to_change_visibility": "{எண்ணிக்கை, பன்மை, ஒரு {# நபர்} மற்றொரு {# பேர்}} க்கான தெரிவுநிலையை மாற்ற முடியவில்லை",
"unable_to_complete_oauth_login": "OAuth உள்நுழைவை முடிக்க முடியவில்லை",
"unable_to_connect": "இணைக்க முடியவில்லை",
"unable_to_copy_to_clipboard": "இடைநிலைப்பலகைக்கு நகலெடுக்க முடியாது, நீங்கள் HTTPS மூலம் பக்கத்தை அணுகுகிறீர்கள் என்பதை உறுதிப்படுத்திக் கொள்ளுங்கள்",
@ -996,7 +996,7 @@
"unable_to_log_out_device": "சாதனத்தை விட்டு வெளியேற முடியவில்லை",
"unable_to_login_with_oauth": "OAUTH உடன் உள்நுழைய முடியவில்லை",
"unable_to_play_video": "வீடியோவை இயக்க முடியவில்லை",
"unable_to_reassign_assets_existing_person": "சொத்துக்களை {பெயருக்கு மறுசீரமைக்க முடியவில்லை, தேர்ந்தெடுக்கவும், சுழிய {an existing person} பிற {{name}}}",
"unable_to_reassign_assets_existing_person": "{{name}}} {பெயர், தேர்ந்தெடு, சுழிய {name} சொத்துக்களை மறுஒதுக்கீடு செய்ய முடியவில்லை",
"unable_to_reassign_assets_new_person": "ஒரு புதிய நபருக்கு சொத்துக்களை மறுசீரமைக்க முடியவில்லை",
"unable_to_refresh_user": "பயனரைப் புதுப்பிக்க முடியவில்லை",
"unable_to_remove_album_users": "ஆல்பத்திலிருந்து பயனர்களை அகற்ற முடியவில்லை",
@ -1039,6 +1039,7 @@
"exif_bottom_sheet_description_error": "விளக்கத்தை புதுப்பிப்பதில் பிழை",
"exif_bottom_sheet_details": "விவரங்கள்",
"exif_bottom_sheet_location": "இடம்",
"exif_bottom_sheet_no_description": "விளக்கம் இல்லை",
"exif_bottom_sheet_people": "மக்கள்",
"exif_bottom_sheet_person_add_person": "பெயரைச் சேர்க்கவும்",
"exit_slideshow": "ச்லைடுசோவிலிருந்து வெளியேறவும்",
@ -1153,16 +1154,16 @@
"ignore_icloud_photos": "ICloud புகைப்படங்களை புறக்கணிக்கவும்",
"ignore_icloud_photos_description": "ICloud இல் சேமிக்கப்படும் புகைப்படங்கள் இம்மிச் சேவையகத்தில் பதிவேற்றப்படாது",
"image": "படம்",
"image_alt_text_date": "{isVideo, select, true {Video} மற்ற {Image}} {date} அன்று எடுக்கப்பட்டது",
"image_alt_text_date_1_person": "{isVideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {person1} இல் {date}",
"image_alt_text_date_2_people": "{isvideo, தேர்ந்தெடுக்கவும், உண்மை {Video} பிற {Image}} {{person1} மற்றும் {person2} {date} இல் எடுக்கப்பட்டது",
"image_alt_text_date_3_people": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image} the {person1}, {person2}, மற்றும் {person3} இல் எடுக்கப்பட்டது {date}",
"image_alt_text_date_4_or_more_people": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image} the {person1}, {person2}, மற்றும் {கூடுதல் COUNT, எண்} மற்றவர்கள் {date}",
"image_alt_text_date_place": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {city}, {country} இல் எடுக்கப்பட்டது {date}",
"image_alt_text_date_place_1_person": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {city}, {country} {person1} உடன் {date}",
"image_alt_text_date_place_2_people": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {city}, {country} உடன் {person1} மற்றும் {person2} {date}",
"image_alt_text_date_place_3_people": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {city}, {country} {person1}, {person2}, மற்றும் {person3} இல் எடுக்கப்பட்டது {date}",
"image_alt_text_date_place_4_or_more_people": "{isvideo, தேர்ந்தெடு, உண்மை {Video} பிற {Image}} {city}, {country} {person1}, {person2}, மற்றும் {கூடுதல் அக்கவுண்ட், எண்} மற்றவர்கள் {date}",
"image_alt_text_date": "{isVideo, தேர்ந்தெடு, உண்மை {Video} மற்ற {Image}} {date} அன்று எடுக்கப்பட்டது",
"image_alt_text_date_1_person": "{isVideo, தேர்ந்தெடு, உண்மை {Video} மற்ற {Image}} {person1} உடன் {date} அன்று எடுக்கப்பட்டது",
"image_alt_text_date_2_people": "{isVideo, தேர்ந்தெடு, உண்மை {Video} மற்ற {Image}} {person1} மற்றும் {person2} உடன் {date} அன்று எடுக்கப்பட்டது",
"image_alt_text_date_3_people": "{isVideo, தேர்ந்தெடு, உண்மை {Video} மற்ற {Image}} {person1}, {person2} மற்றும் {person3} உடன் {date} அன்று எடுக்கப்பட்டது",
"image_alt_text_date_4_or_more_people": "{isVideo, தேர்ந்தெடு, உண்மை {Video} மற்ற {Image}} {person1}, {person2} மற்றும் {additionalCount, எண்} உடன் எடுக்கப்பட்டது {date}",
"image_alt_text_date_place": "{isVideo, தேர்ந்தெடு, உண்மை {Video} மற்ற {Image}} {city}, {country} இல் {date} அன்று எடுக்கப்பட்டது",
"image_alt_text_date_place_1_person": "{isVideo, தேர்ந்தெடு, உண்மை {Video} மற்ற {Image}} {city}, {country} {person1} உடன் {date} அன்று எடுக்கப்பட்டது",
"image_alt_text_date_place_2_people": "{isVideo, தேர்ந்தெடு, உண்மை {Video} மற்ற {Image}} {city}, {country} {person1} மற்றும் {person2} உடன் {date} அன்று எடுக்கப்பட்டது",
"image_alt_text_date_place_3_people": "{isVideo, தேர்ந்தெடு, உண்மை {Video} மற்ற {Image}} {city}, {country} {person1}, {person2} மற்றும் {person3} உடன் {date} அன்று எடுக்கப்பட்டது",
"image_alt_text_date_place_4_or_more_people": "{isVideo, தேர்ந்தெடு, உண்மை {Video} மற்ற {Image}} {city}, {country} {person1}, {person2} மற்றும் {additionalCount, எண்} பிறருடன் {date} அன்று எடுக்கப்பட்டது",
"image_saved_successfully": "படம் சேமிக்கப்பட்டது",
"image_viewer_page_state_provider_download_started": "பதிவிறக்கம் தொடங்கியது",
"image_viewer_page_state_provider_download_success": "வெற்றியைப் பதிவிறக்கவும்",
@ -1171,7 +1172,7 @@
"immich_web_interface": "இம்ரிச் வலை இடைமுகம்",
"import_from_json": "சாதொபொகு இலிருந்து இறக்குமதி",
"import_path": "இறக்குமதி பாதை",
"in_albums": "{எண்ணிக்கையில், பன்மை, ஒன்று {# ஆல்பம்} மற்ற {# ஆல்பங்கள்}}",
"in_albums": "{count, பன்மையில், ஒரு {# ஆல்பம்} மற்றொன்று {# ஆல்பங்கள்}}",
"in_archive": "காப்பகத்தில்",
"include_archived": "காப்பகப்படுத்தப்பட்டவர்",
"include_shared_albums": "பகிரப்பட்ட ஆல்பங்களைச் சேர்க்கவும்",
@ -1181,7 +1182,7 @@
"info": "தகவல்",
"interval": {
"day_at_onepm": "ஒவ்வொரு நாளும் மதியம் 1 மணிக்கு",
"hours": "ஒவ்வொரு {மணிநேரம், பன்மை, ஒரு {hour} மற்ற {{மணிநேரம், எண்} மணிநேரம்}}",
"hours": "ஒவ்வொரு {hours, plural, one {hour} மற்ற {{hours, number} hours}}",
"night_at_midnight": "ஒவ்வொரு இரவும் நள்ளிரவில்",
"night_at_twoam": "ஒவ்வொரு இரவும் அதிகாலை 2 மணிக்கு"
},
@ -1193,14 +1194,14 @@
"ios_debug_info_last_sync_at": "கடைசி ஒத்திசைவு {dateTime}",
"ios_debug_info_no_processes_queued": "பின்னணி செயல்முறைகள் வரிசையில் இல்லை",
"ios_debug_info_no_sync_yet": "பின்னணி ஒத்திசைவு வேலை இன்னும் இயங்கவில்லை",
"ios_debug_info_processes_queued": "{எண்ணிக்கை, பன்மை, ஒன்று {{count} பின்னணி செயல்முறை வரிசையில் வரிசைப்படுத்தப்பட்டது} பிற {{count} பின்னணி செயல்முறைகள் வரிசைப்படுத்தப்பட்ட",
"ios_debug_info_processes_queued": "{count, plural, ஒன்று {{count} பின்னணி செயல்முறை வரிசைப்படுத்தப்பட்டது} மற்றொன்று {{count} பின்னணி செயல்முறைகள் வரிசைப்படுத்தப்பட்டுள்ளன}}",
"ios_debug_info_processing_ran_at": "செயலாக்கம் {dateTime}",
"items_count": "{எண்ணிக்கை, பன்மை, ஒன்று {# உருப்படி} பிற {# உருப்படிகள்}}",
"items_count": "{எண்ணிக்கை, பன்மை, ஒன்று {# உருப்படி} மற்றொன்று {# உருப்படிகள்}}",
"jobs": "வேலைகள்",
"keep": "வைத்திருங்கள்",
"keep_all": "அனைத்தையும் வைத்திருங்கள்",
"keep_this_delete_others": "இதை வைத்திருங்கள், மற்றவர்களை நீக்கு",
"kept_this_deleted_others": "இந்த சொத்தை வைத்து நீக்கப்பட்டது {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}}",
"kept_this_deleted_others": "இந்த சொத்தை வைத்து, {எண்ணிக்கை, பன்மை, ஒரு {# சொத்து} மற்ற {# சொத்துகள்}} நீக்கப்பட்டது",
"keyboard_shortcuts": "விசைப்பலகை குறுக்குவழிகள்",
"language": "மொழி",
"language_no_results_subtitle": "உங்கள் தேடல் காலத்தை சரிசெய்ய முயற்சிக்கவும்",
@ -1298,7 +1299,7 @@
"manage_your_devices": "உங்கள் உள்நுழைந்த சாதனங்களை நிர்வகிக்கவும்",
"manage_your_oauth_connection": "உங்கள் OAuth இணைப்பை நிர்வகிக்கவும்",
"map": "வரைபடம்",
"map_assets_in_bounds": "{எண்ணிக்கை, பன்மை, = 0 {No photos in this area} ஒன்று {# புகைப்படம்} மற்ற {# புகைப்படங்கள்}}",
"map_assets_in_bounds": "{count, plural, =0 {No photos in this area} ஒன்று {# புகைப்படம்} மற்றொன்று {# புகைப்படங்கள்}}",
"map_cannot_get_user_location": "பயனரின் இருப்பிடத்தைப் பெற முடியாது",
"map_location_dialog_yes": "ஆம்",
"map_location_picker_page_use_location": "இந்த இருப்பிடத்தைப் பயன்படுத்தவும்",
@ -1340,7 +1341,7 @@
"merge_people_limit": "நீங்கள் ஒரு நேரத்தில் 5 முகங்கள் வரை மட்டுமே ஒன்றிணைக்க முடியும்",
"merge_people_prompt": "இந்த மக்களை ஒன்றிணைக்க விரும்புகிறீர்களா? இந்த நடவடிக்கை மாற்ற முடியாதது.",
"merge_people_successfully": "மக்களை வெற்றிகரமாக ஒன்றிணைக்கவும்",
"merged_people_count": "ஒன்றிணைக்கப்பட்ட {எண்ணிக்கை, பன்மை, ஒன்று {# நபர்} மற்ற {# மக்கள்}}",
"merged_people_count": "{எண்ணிக்கை, பன்மை, ஒரு {# நபர்} மற்றொரு {# பேர்}} இணைக்கப்பட்டது",
"minimize": "குறைக்கவும்",
"minute": "நிமிடங்கள்",
"minutes": "நிமிடங்கள்",
@ -1351,11 +1352,11 @@
"more": "மேலும்",
"move": "நகர்த்தவும்",
"move_off_locked_folder": "பூட்டப்பட்ட கோப்புறையிலிருந்து வெளியேறவும்",
"move_to_lock_folder_action_prompt": "{எண்ணிக்கை the பூட்டப்பட்ட கோப்புறையில் சேர்க்கப்பட்டுள்ளது",
"move_to_lock_folder_action_prompt": "பூட்டிய கோப்புறையில் {count} சேர்க்கப்பட்டது",
"move_to_locked_folder": "பூட்டப்பட்ட கோப்புறையில் செல்லுங்கள்",
"move_to_locked_folder_confirmation": "இந்த புகைப்படங்கள் மற்றும் வீடியோ அனைத்து ஆல்பங்களிலிருந்தும் அகற்றப்படும், மேலும் பூட்டப்பட்ட கோப்புறையிலிருந்து மட்டுமே பார்க்க முடியும்",
"moved_to_archive": "நகர்த்தப்பட்டது",
"moved_to_library": "நகர்த்தப்பட்டது",
"moved_to_archive": "{count, plural, one {# asset} மற்ற {# சொத்துக்கள்}} காப்பகத்திற்கு நகர்த்தப்பட்டது",
"moved_to_library": "{எண்ணிக்கை, பன்மை, ஒரு {# சொத்து} மற்றொன்று {# சொத்துக்கள்}} நூலகத்திற்கு நகர்த்தப்பட்டது",
"moved_to_trash": "குப்பைக்கு நகர்த்தப்பட்டது",
"multiselect_grid_edit_date_time_err_read_only": "சொத்து (களை) மட்டுமே படித்த தேதியைத் திருத்த முடியாது, தவிர்க்கவும்",
"multiselect_grid_edit_gps_err_read_only": "சொத்து (களை) மட்டுமே படிக்க, ச்கிப்பிங் ஆகியவற்றைத் திருத்த முடியாது",
@ -1363,6 +1364,8 @@
"my_albums": "எனது ஆல்பங்கள்",
"name": "பெயர்",
"name_or_nickname": "பெயர் அல்லது புனைப்பெயர்",
"navigate": "வழிசெலுத்தவும்",
"navigate_to_time": "நேரத்திற்கு செல்லவும்",
"network_requirement_photos_upload": "காப்புப்பிரதி புகைப்படங்களுக்கு செல்லுலார் தரவைப் பயன்படுத்தவும்",
"network_requirement_videos_upload": "காப்புப்பிரதி வீடியோக்களுக்கு செல்லுலார் தரவைப் பயன்படுத்தவும்",
"network_requirements": "பிணைய தேவைகள்",
@ -1372,6 +1375,7 @@
"never": "ஒருபோதும்",
"new_album": "புதிய ஆல்பம்",
"new_api_key": "புதிய பநிஇ விசை",
"new_date_range": "புதிய தேதி வரம்பு",
"new_password": "புதிய கடவுச்சொல்",
"new_person": "புதிய நபர்",
"new_pin_code": "புதிய முள் குறியீடு",
@ -1457,14 +1461,14 @@
"partner_can_access": "{partner} அணுகலாம்",
"partner_can_access_assets": "காப்பகப்படுத்தப்பட்ட மற்றும் நீக்கப்பட்டவை தவிர உங்கள் புகைப்படங்கள் மற்றும் வீடியோக்கள் அனைத்தும்",
"partner_can_access_location": "உங்கள் புகைப்படங்கள் எடுக்கப்பட்ட இடம்",
"partner_list_user_photos": "{பயனரின் புகைப்படங்கள்",
"partner_list_user_photos": "{user} இன் புகைப்படங்கள்",
"partner_list_view_all": "அனைத்தையும் காண்க",
"partner_page_empty_message": "உங்கள் புகைப்படங்கள் இன்னும் எந்த கூட்டாளருடனும் பகிரப்படவில்லை.",
"partner_page_no_more_users": "சேர்க்க இனி பயனர்கள் இல்லை",
"partner_page_partner_add_failed": "கூட்டாளரைச் சேர்க்கத் தவறிவிட்டது",
"partner_page_select_partner": "கூட்டாளரைத் தேர்ந்தெடுக்கவும்",
"partner_page_shared_to_title": "பகிரப்பட்டது",
"partner_page_stop_sharing_content": "{கூட்டாளர் your இனி உங்கள் புகைப்படங்களை அணுக முடியாது.",
"partner_page_stop_sharing_content": "{partner} இனி உங்கள் படங்களை அணுக முடியாது.",
"partner_sharing": "கூட்டாளர் பகிர்வு",
"partners": "கூட்டாளர்கள்",
"password": "கடவுச்சொல்",
@ -1472,9 +1476,9 @@
"password_required": "கடவுச்சொல் தேவை",
"password_reset_success": "கடவுச்சொல் மீட்டமை செய்",
"past_durations": {
"days": "கடந்த {நாட்கள், பன்மை, ஒரு {day} மற்ற {# நாட்கள்}}",
"hours": "கடந்த {மணிநேரம், பன்மை, ஒரு {hour} மற்ற {# மணிநேரம்}}",
"years": "கடந்த {ஆண்டுகள், பன்மை, ஒன்று {year} மற்ற {# ஆண்டுகள்}}"
"days": "கடந்த {நாட்கள், பன்மை, ஒரு {day} மற்றொன்று {# நாட்கள்}}",
"hours": "கடந்த {மணிகள், பன்மை, ஒரு {hour} மற்ற {# மணிநேரங்கள்}}",
"years": "கடந்த {ஆண்டுகள், பன்மை, ஒரு {year} மற்றவை {# ஆண்டுகள்}}"
},
"path": "பாதை",
"pattern": "முறை",
@ -1483,16 +1487,16 @@
"paused": "இடைநிறுத்தப்பட்டது",
"pending": "நிலுவையில் உள்ளது",
"people": "மக்கள்",
"people_edits_count": "திருத்தப்பட்டது {எண்ணிக்கை, பன்மை, ஒன்று {# நபர்} மற்ற {# மக்கள்}}",
"people_edits_count": "{எண்ணிக்கை, பன்மை, ஒரு {# நபர்} மற்றொரு {# பேர்}} திருத்தப்பட்டது",
"people_feature_description": "மக்கள் தொகுத்த புகைப்படங்கள் மற்றும் வீடியோக்களை உலாவுதல்",
"people_sidebar_description": "பக்கப்பட்டியில் உள்ளவர்களுக்கு ஒரு இணைப்பைக் காண்பி",
"permanent_deletion_warning": "நிரந்தர நீக்குதல் எச்சரிக்கை",
"permanent_deletion_warning_setting_description": "சொத்துக்களை நிரந்தரமாக நீக்கும்போது ஒரு எச்சரிக்கையைக் காட்டுங்கள்",
"permanently_delete": "நிரந்தரமாக நீக்கு",
"permanently_delete_assets_count": "நிரந்தரமாக நீக்கு {எண்ணிக்கை, பன்மை, ஒன்று {asset} மற்ற {assets}}",
"permanently_delete_assets_count": "நிரந்தரமாக {count, plural, one {asset} மற்ற {assets}}",
"permanently_delete_assets_prompt": "{count, plural, one {this asset?} other {these <b>#</b> assets?}} என்பதை நிரந்தரமாக நீக்க விரும்புகிறீர்களா? இது {count, plural, one {it from its} other {them from their}} ஆல்பத்தையும் நீக்கும்.",
"permanently_deleted_asset": "நிரந்தரமாக நீக்கப்பட்ட சொத்து",
"permanently_deleted_assets_count": "நிரந்தரமாக நீக்கப்பட்டது {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}}",
"permanently_deleted_assets_count": "நிரந்தரமாக நீக்கப்பட்டது {எண்ணிக்கை, பன்மை, ஒரு {# சொத்து} மற்றொன்று {# சொத்துக்கள்}}",
"permission": "இசைவு",
"permission_empty": "உங்கள் இசைவு காலியாக இருக்கக்கூடாது",
"permission_onboarding_back": "பின்",
@ -1504,15 +1508,15 @@
"permission_onboarding_permission_limited": "இசைவு லிமிடெட். உங்கள் முழு கேலரி சேகரிப்பையும் நிர்வகிக்கவும் நிர்வகிக்கவும், அமைப்புகளில் புகைப்படம் மற்றும் வீடியோ அனுமதிகளை வழங்கவும்.",
"permission_onboarding_request": "உங்கள் புகைப்படங்கள் மற்றும் வீடியோக்களைக் காண இம்மிச்சுக்கு இசைவு தேவை.",
"person": "ஆள்",
"person_age_months": "{மாதங்கள், பன்மை, ஒன்று {# மாதம்} மற்ற {# மாதங்கள்}} பழையது",
"person_age_year_months": "1 ஆண்டு, {மாதங்கள், பன்மை, ஒன்று {# மாதம்} மற்ற {# மாதங்கள்}} பழையது",
"person_age_years": "{ஆண்டுகள், பன்மை, பிற {# ஆண்டுகள்}} பழையது",
"person_age_months": "{மாதங்கள், பன்மை, ஒரு {# மாதம்} மற்றொன்று {# மாதங்கள்}} அகவை",
"person_age_year_months": "1 வருடம், {மாதம், பன்மை, ஒரு {# மாதம்} மற்றொன்று {# மாதங்கள்}} அகவை",
"person_age_years": "{வருடங்கள், பன்மை, மற்ற {# ஆண்டுகள்}} பழையது",
"person_birthdate": "{date} இல் பிறந்தார்",
"person_hidden": "{name} {மறைக்கப்பட்ட, தேர்ந்தெடு, உண்மை {(மறைக்கப்பட்ட)} பிற {}}",
"person_hidden": "{name}{மறைக்கப்பட்ட, தேர்ந்தெடு, உண்மை { (மறைக்கப்பட்ட)} மற்றவை {}}",
"photo_shared_all_users": "உங்கள் புகைப்படங்களை எல்லா பயனர்களுடனும் பகிர்ந்து கொண்டதாகத் தெரிகிறது அல்லது பகிர்வதற்கு உங்களிடம் எந்த பயனரும் இல்லை.",
"photos": "புகைப்படங்கள்",
"photos_and_videos": "புகைப்படங்கள் & வீடியோக்கள்",
"photos_count": "{எண்ணிக்கை, பன்மை, ஒன்று {{எண்ணிக்கை, எண்} புகைப்படம்} பிற {{எண்ணிக்கை, எண்} புகைப்படங்கள்}}",
"photos_count": "{count, plural, one {{count, number} Photo} மற்றொன்று {{count, number} Photos}}",
"photos_from_previous_years": "முந்தைய ஆண்டுகளின் புகைப்படங்கள்",
"pick_a_location": "ஒரு இடத்தைத் தேர்ந்தெடுங்கள்",
"pin_code_changed_successfully": "முள் குறியீட்டை வெற்றிகரமாக மாற்றியது",
@ -1521,7 +1525,7 @@
"pin_verification": "குறியீடு சரிபார்ப்பு",
"place": "இடம்",
"places": "இடங்கள்",
"places_count": "{எண்ணிக்கை, பன்மை, ஒன்று {{எண்ணிக்கை, எண்} இடம்} பிற {{எண்ணிக்கை, எண்} இடங்கள்}}",
"places_count": "{எண்ணிக்கை, பன்மை, ஒன்று {{எண்ணிக்கை, எண்} இடம்} மற்றொன்று {{எண்ணிக்கை, எண்} இடங்கள்}}",
"play": "விளையாடுங்கள்",
"play_memories": "பிளேமெமரிகள்",
"play_motion_photo": "இயக்க புகைப்படத்தை விளையாடுங்கள்",
@ -1550,7 +1554,7 @@
"profile_drawer_readonly_mode": "படிக்க மட்டும் பயன்முறை இயக்கப்பட்டது. வெளியேற பயனர் அவதார் ஐகானை நீண்ட நேரம் அழுத்தவும்.",
"profile_drawer_server_out_of_date_major": "சேவையகம் காலாவதியானது. அண்மைக் கால முக்கிய பதிப்பிற்கு புதுப்பிக்கவும்.",
"profile_drawer_server_out_of_date_minor": "சேவையகம் காலாவதியானது. அண்மைக் கால சிறிய பதிப்பிற்கு புதுப்பிக்கவும்.",
"profile_image_of_user": "{பயனரின் சுயவிவரப் படம்",
"profile_image_of_user": "{user} இன் சுயவிவரப் படம்",
"profile_picture_set": "சுயவிவரப் பட தொகுப்பு.",
"public_album": "பொது ஆல்பம்",
"public_share": "பொது பங்கு",
@ -1590,7 +1594,7 @@
"queue_status": "வரிசை {count}/{total}",
"rating": "நட்சத்திர மதிப்பீடு",
"rating_clear": "தெளிவான மதிப்பீடு",
"rating_count": "{எண்ணிக்கை, பன்மை, ஒன்று {# நட்சத்திரம்} மற்ற {# நட்சத்திரங்கள்}}",
"rating_count": "{எண்ணிக்கை, பன்மை, ஒன்று {# நட்சத்திரம்} மற்றொன்று {# நட்சத்திரங்கள்}}",
"rating_description": "செய்தி குழுவில் EXIF மதிப்பீட்டைக் காண்பி",
"reaction_options": "எதிர்வினை விருப்பங்கள்",
"read_changelog": "சேஞ்ச்லாக் படிக்கவும்",
@ -1598,8 +1602,8 @@
"readonly_mode_enabled": "படிக்க மட்டும் பயன்முறை இயக்கப்பட்டது",
"ready_for_upload": "பதிவேற்றத் தயார்",
"reassign": "மீண்டும் ஒதுக்கு",
"reassigned_assets_to_existing_person": "மீண்டும் ஒதுக்கப்பட்ட {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}} பெறுநர் {பெயருக்கு, தேர்ந்தெடுக்கவும், சுழிய {an existing person} பிற {{name}}}",
"reassigned_assets_to_new_person": "மீண்டும் ஒதுக்கப்பட்ட {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}} ஒரு புதிய நபருக்கு",
"reassigned_assets_to_existing_person": "{{எண்ணிக்கை, பன்மை, ஒரு {# சொத்து} மற்ற {# சொத்துகள்}}, {{பெயர், தேர்ந்தெடு, {{name}} மற்றொரு {{name}}}க்கு மீண்டும் ஒதுக்கப்பட்டது",
"reassigned_assets_to_new_person": "புதிய நபருக்கு {எண்ணிக்கை, பன்மை, ஒரு {# சொத்து} மற்றொரு {# சொத்துகள்}} மீண்டும் ஒதுக்கப்பட்டது",
"reassing_hint": "தேர்ந்தெடுக்கப்பட்ட சொத்துக்களை ஏற்கனவே இருக்கும் நபருக்கு ஒதுக்குங்கள்",
"recent": "அண்மைக் கால",
"recent-albums": "அண்மைக் கால ஆல்பங்கள்",
@ -1623,15 +1627,15 @@
"remote_assets": "தொலை சொத்துக்கள்",
"remote_media_summary": "தொலை ஊடக சுருக்கம்",
"remove": "அகற்று",
"remove_assets_album_confirmation": "ஆல்பத்திலிருந்து {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்} your ஐ அகற்ற விரும்புகிறீர்களா?",
"remove_assets_shared_link_confirmation": "இந்த பகிரப்பட்ட இணைப்பிலிருந்து {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்} your ஐ அகற்ற விரும்புகிறீர்களா?",
"remove_assets_album_confirmation": "ஆல்பத்திலிருந்து {எண்ணிக்கை, பன்மை, ஒரு {# சொத்து} மற்ற {# சொத்துக்கள்}} நிச்சயமாக அகற்ற விரும்புகிறீர்களா?",
"remove_assets_shared_link_confirmation": "இந்தப் பகிரப்பட்ட இணைப்பிலிருந்து {எண்ணிக்கை, பன்மை, ஒரு {# சொத்து} மற்ற {# சொத்துக்களை}} நிச்சயமாக அகற்ற விரும்புகிறீர்களா?",
"remove_assets_title": "சொத்துக்களை அகற்றவா?",
"remove_custom_date_range": "தனிப்பயன் தேதி வரம்பை அகற்று",
"remove_deleted_assets": "நீக்கப்பட்ட சொத்துக்களை அகற்றவும்",
"remove_from_album": "ஆல்பத்திலிருந்து அகற்று",
"remove_from_album_action_prompt": "{எண்ணிக்கை the ஆல்பத்திலிருந்து அகற்றப்பட்டது",
"remove_from_album_action_prompt": "ஆல்பத்திலிருந்து {count} அகற்றப்பட்டது",
"remove_from_favorites": "பிடித்தவைகளிலிருந்து அகற்று",
"remove_from_lock_folder_action_prompt": "{எண்ணிக்கை the பூட்டப்பட்ட கோப்புறையிலிருந்து அகற்றப்பட்டது",
"remove_from_lock_folder_action_prompt": "பூட்டிய கோப்புறையிலிருந்து {count} அகற்றப்பட்டது",
"remove_from_locked_folder": "பூட்டப்பட்ட கோப்புறையிலிருந்து அகற்று",
"remove_from_locked_folder_confirmation": "பூட்டப்பட்ட கோப்புறையிலிருந்து இந்த புகைப்படங்களையும் வீடியோக்களையும் நகர்த்த விரும்புகிறீர்களா? அவை உங்கள் நூலகத்தில் தெரியும்.",
"remove_from_shared_link": "பகிரப்பட்ட இணைப்பிலிருந்து அகற்று",
@ -1643,10 +1647,10 @@
"removed_api_key": "அகற்றப்பட்ட பநிஇ விசை: {name}",
"removed_from_archive": "காப்பகத்திலிருந்து அகற்றப்பட்டது",
"removed_from_favorites": "பிடித்தவைகளிலிருந்து அகற்றப்பட்டது",
"removed_from_favorites_count": "{எண்ணிக்கை, பன்மை, பிற {பிடித்தவைகளிலிருந்து #}} அகற்றப்பட்டது",
"removed_from_favorites_count": "பிடித்தவற்றிலிருந்து {எண்ணிக்கை, பன்மை, மற்றவை {நீக்கப்பட்டது #}}",
"removed_memory": "அகற்றப்பட்ட நினைவகம்",
"removed_photo_from_memory": "நினைவிலிருந்து புகைப்படத்தை அகற்றியது",
"removed_tagged_assets": "{எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்} இருந்து இலிருந்து அகற்றப்பட்ட குறிச்சொல்",
"removed_tagged_assets": "{count, plural, one {# asset} மற்ற {# சொத்துக்கள்}} என்பதிலிருந்து குறிச்சொல் அகற்றப்பட்டது",
"rename": "மறுபெயரிடுங்கள்",
"repair": "பழுது",
"repair_no_results_message": "கட்டுப்படுத்தப்படாத மற்றும் காணாமல் போன கோப்புகள் இங்கே காண்பிக்கப்படும்",
@ -1670,11 +1674,11 @@
"resolved_all_duplicates": "அனைத்து நகல்களையும் தீர்க்கும்",
"restore": "மீட்டமை",
"restore_all": "அனைத்தையும் மீட்டெடுக்கவும்",
"restore_trash_action_prompt": "{எண்ணிக்கை the குப்பைகளிலிருந்து மீட்டெடுக்கப்பட்டது",
"restore_trash_action_prompt": "குப்பையிலிருந்து {count} மீட்டெடுக்கப்பட்டது",
"restore_user": "பயனரை மீட்டமைக்கவும்",
"restored_asset": "மீட்டெடுக்கப்பட்ட சொத்து",
"resume": "மீண்டும் தொடங்குங்கள்",
"resume_paused_jobs": "மீண்டும் தொடங்குங்கள் {எண்ணிக்கை, பன்மை, ஒன்று {# இடைநிறுத்தப்பட்ட வேலை} மற்ற {# இடைநிறுத்தப்பட்ட வேலைகள்}}",
"resume_paused_jobs": "மறுதொடக்கம் {எண்ணிக்கை, பன்மை, ஒன்று {# இடைநிறுத்தப்பட்ட வேலை} மற்றொன்று {# இடைநிறுத்தப்பட்ட வேலைகள்}}",
"retry_upload": "பதிவேற்ற முயற்சிக்கவும்",
"review_duplicates": "நகல்களை மதிப்பாய்வு செய்யவும்",
"review_large_files": "பெரிய கோப்புகளை மதிப்பாய்வு செய்யவும்",
@ -1754,7 +1758,7 @@
"select_album_cover": "ஆல்பம் அட்டையைத் தேர்ந்தெடுக்கவும்",
"select_all": "அனைத்தையும் தெரிவுசெய்",
"select_all_duplicates": "அனைத்து நகல்களையும் தேர்ந்தெடுக்கவும்",
"select_all_in": "{குழுவில் அனைத்தையும் தேர்ந்தெடுக்கவும்",
"select_all_in": "{group} இல் உள்ள அனைத்தையும் தேர்ந்தெடுக்கவும்",
"select_avatar_color": "அவதார் நிறத்தைத் தேர்ந்தெடுக்கவும்",
"select_face": "முகத்தைத் தேர்ந்தெடுக்கவும்",
"select_featured_photo": "பிரத்யேக புகைப்படத்தைத் தேர்ந்தெடுக்கவும்",
@ -1767,7 +1771,7 @@
"select_trash_all": "குப்பைத் தொட்டியைத் தேர்ந்தெடுக்கவும்",
"select_user_for_sharing_page_err_album": "ஆல்பத்தை உருவாக்கத் தவறிவிட்டது",
"selected": "தேர்ந்தெடுக்கப்பட்டது",
"selected_count": "{எண்ணிக்கை, பன்மை, பிற {# தேர்ந்தெடுக்கப்பட்ட}}",
"selected_count": "{எண்ணிக்கை, பன்மை, மற்றவை {# தேர்ந்தெடுக்கப்பட்ட}}",
"selected_gps_coordinates": "தேர்ந்தெடுக்கப்பட்ட சி.பி.எச் ஆயத்தொலைவுகள்",
"send_message": "செய்தி அனுப்பவும்",
"send_welcome_email": "வரவேற்பு மின்னஞ்சலை அனுப்பவும்",
@ -1806,6 +1810,8 @@
"setting_notifications_subtitle": "உங்கள் அறிவிப்பு விருப்பங்களை சரிசெய்யவும்",
"setting_notifications_total_progress_subtitle": "ஒட்டுமொத்த பதிவேற்ற முன்னேற்றம் (முடிந்தது/மொத்த சொத்துக்கள்)",
"setting_notifications_total_progress_title": "பின்னணி காப்புப்பிரதி மொத்த முன்னேற்றத்தைக் காட்டு",
"setting_video_viewer_auto_play_subtitle": "வீடியோக்கள் திறக்கப்பட்டவுடன் தானாகவே இயங்கத் தொடங்கும்",
"setting_video_viewer_auto_play_title": "வீடியோக்களை தானாக இயக்கவும்",
"setting_video_viewer_looping_title": "லூப்பிங்",
"setting_video_viewer_original_video_subtitle": "சேவையகத்திலிருந்து ஒரு வீடியோவை ச்ட்ரீமிங் செய்யும் போது, ஒரு டிரான்ச்கோடு கிடைக்கும்போது கூட அசலை இயக்கவும். இடையகத்திற்கு வழிவகுக்கும். இந்த அமைப்பைப் பொருட்படுத்தாமல் உள்நாட்டில் கிடைக்கும் வீடியோக்கள் அசல் தரத்தில் இயக்கப்படுகின்றன.",
"setting_video_viewer_original_video_title": "அசல் வீடியோவை கட்டாயப்படுத்துங்கள்",
@ -1828,7 +1834,7 @@
"shared_album_section_people_action_remove_user": "ஆல்பத்திலிருந்து பயனரை அகற்று",
"shared_album_section_people_title": "மக்கள்",
"shared_by": "பகிரப்பட்டது",
"shared_by_user": "{பயனரால் பகிரப்பட்டது",
"shared_by_user": "{user} ஆல் பகிரப்பட்டது",
"shared_by_you": "நீங்கள் பகிர்ந்து கொண்டார்",
"shared_from_partner": "{partner} இலிருந்து புகைப்படங்கள்",
"shared_intent_upload_button_progress_text": "{current} / {total} பதிவேற்றப்பட்டது",
@ -1865,9 +1871,9 @@
"shared_link_password_description": "இந்த பகிரப்பட்ட இணைப்பை அணுக கடவுச்சொல் தேவை",
"shared_links": "பகிரப்பட்ட இணைப்புகள்",
"shared_links_description": "புகைப்படங்கள் மற்றும் வீடியோக்களை இணைப்புடன் பகிரவும்",
"shared_photos_and_videos_count": "{ASSETCOUNT, பன்மை, பிற {# பகிரப்பட்ட புகைப்படங்கள் மற்றும் வீடியோக்கள்.}}",
"shared_photos_and_videos_count": "{assetCount, பன்மை, பிற {# பகிரப்பட்ட புகைப்படங்கள் & வீடியோக்கள்.}}",
"shared_with_me": "என்னுடன் பகிரப்பட்டது",
"shared_with_partner": "{கூட்டாளர் with உடன் பகிரப்பட்டது",
"shared_with_partner": "{partner} உடன் பகிரப்பட்டது",
"sharing": "பகிர்வு",
"sharing_enter_password": "இந்த பக்கத்தைக் காண கடவுச்சொல்லை உள்ளிடவும்.",
"sharing_page_album": "பகிரப்பட்ட ஆல்பங்கள்",
@ -1924,7 +1930,7 @@
"stack_duplicates": "அடுக்கு நகல்கள்",
"stack_select_one_photo": "அடுக்குக்கு ஒரு முக்கிய புகைப்படத்தைத் தேர்ந்தெடுக்கவும்",
"stack_selected_photos": "தேர்ந்தெடுக்கப்பட்ட புகைப்படங்களை அடுக்கி வைக்கவும்",
"stacked_assets_count": "அடுக்கப்பட்ட {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} மற்ற {# சொத்துக்கள்}}",
"stacked_assets_count": "அடுக்கப்பட்ட {எண்ணிக்கை, பன்மை, ஒரு {# சொத்து} மற்றொன்று {# சொத்துக்கள்}}",
"stacktrace": "ச்டாக் ட்ரேச்",
"start": "தொடங்கு",
"start_date": "தொடக்க தேதி",
@ -1934,12 +1940,12 @@
"stop_casting": "வார்ப்பதை நிறுத்துங்கள்",
"stop_motion_photo": "இயக்க புகைப்படத்தை நிறுத்து",
"stop_photo_sharing": "உங்கள் புகைப்படங்களைப் பகிர்வதை நிறுத்தவா?",
"stop_photo_sharing_description": "{கூட்டாளர் your இனி உங்கள் புகைப்படங்களை அணுக முடியாது.",
"stop_photo_sharing_description": "{partner} இனி உங்கள் படங்களை அணுக முடியாது.",
"stop_sharing_photos_with_user": "இந்த பயனருடன் உங்கள் புகைப்படங்களைப் பகிர்வதை நிறுத்துங்கள்",
"storage": "சேமிப்பக இடம்",
"storage_label": "சேமிப்பக சிட்டை",
"storage_quota": "சேமிப்பக ஒதுக்கீடு",
"storage_usage": "{used} பயன்படுத்தப்படுகிறது",
"storage_usage": "{available} இல் {used} பயன்படுத்தப்பட்டது",
"submit": "சமர்ப்பிக்கவும்",
"success": "செய்",
"suggestions": "பரிந்துரைகள்",
@ -1963,7 +1969,7 @@
"tag_not_found_question": "குறிச்சொல்லைக் கண்டுபிடிக்க முடியவில்லையா?<link>புதிய குறிச்சொல்லை உருவாக்கவும்.</link>",
"tag_people": "மக்களை குறிக்கவும்",
"tag_updated": "புதுப்பிக்கப்பட்ட குறிச்சொல்: {tag}",
"tagged_assets": "குறித்துள்ளார் {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} மற்ற {# சொத்துக்கள்}}",
"tagged_assets": "குறியிடப்பட்டது {எண்ணிக்கை, பன்மை, ஒரு {# சொத்து} மற்றொன்று {# சொத்துக்கள்}}",
"tags": "குறிச்சொற்கள்",
"tap_to_run_job": "வேலையை இயக்க தட்டவும்",
"template": "வார்ப்புரு",
@ -2002,7 +2008,7 @@
"trash": "குப்பை",
"trash_action_prompt": "{count} குப்பைக்கு நகர்த்தப்பட்டது",
"trash_all": "அனைத்தையும் குப்பை",
"trash_count": "குப்பை {எண்ணிக்கை, எண்}",
"trash_count": "குப்பை { எண்ணிக்கை, எண்}",
"trash_delete_asset": "குப்பை/சொத்தை நீக்கு",
"trash_emptied": "காலியாக குப்பை",
"trash_no_results_message": "குப்பைத் தொட்டிகள் மற்றும் வீடியோக்கள் இங்கே காண்பிக்கப்படும்.",
@ -2013,17 +2019,17 @@
"trash_page_restore_all": "அனைத்தையும் மீட்டெடுக்கவும்",
"trash_page_select_assets_btn": "சொத்துக்களைத் தேர்ந்தெடுக்கவும்",
"trash_page_title": "({count})",
"trashed_items_will_be_permanently_deleted_after": "{நாட்கள், பன்மை, ஒன்று {# நாள்} பிற {# நாட்கள்}} க்குப் பிறகு குப்பைத் தொட்டிகள் நிரந்தரமாக நீக்கப்படும்.",
"trashed_items_will_be_permanently_deleted_after": "குப்பையில் உள்ள உருப்படிகள் {நாட்கள், பன்மை, ஒரு {# நாள்} மற்ற {# நாட்களுக்கு}} பிறகு நிரந்தரமாக நீக்கப்படும்.",
"troubleshoot": "சரிசெய்தல்",
"type": "வகை",
"unable_to_change_pin_code": "முள் குறியீட்டை மாற்ற முடியவில்லை",
"unable_to_setup_pin_code": "முள் குறியீட்டை அமைக்க முடியவில்லை",
"unarchive": "அன்கான்",
"unarchive_action_prompt": "{எண்ணிக்கை the காப்பகத்திலிருந்து அகற்றப்பட்டது",
"unarchived_count": "{எண்ணிக்கை, பன்மை, பிற {அல்லாத #}}",
"unarchive_action_prompt": "காப்பகத்திலிருந்து {count} அகற்றப்பட்டது",
"unarchived_count": "{எண்ணிக்கை, பன்மை, மற்றவை {காணப்படாமல் #}}",
"undo": "செயல்தவிர்",
"unfavorite": "மாறாத",
"unfavorite_action_prompt": "{எண்ணிக்கை the பிடித்தவைகளிலிருந்து அகற்றப்பட்டது",
"unfavorite_action_prompt": "பிடித்தவையிலிருந்து {count} அகற்றப்பட்டது",
"unhide_person": "அருவருப்பான நபர்",
"unknown": "தெரியவில்லை",
"unknown_country": "தெரியாத நாடு",
@ -2042,7 +2048,7 @@
"unselect_all_in": "{group}",
"unstack": "அன்-ச்டாக்",
"unstack_action_prompt": "{count} தடையின்றி",
"unstacked_assets_count": "அன்-ச்டாக் {எண்ணிக்கை, பன்மை, ஒன்று {# சொத்து} பிற {# சொத்துக்கள்}}",
"unstacked_assets_count": "அடுக்கப்படாத {எண்ணிக்கை, பன்மை, ஒரு {# சொத்து} மற்றொன்று {# சொத்துக்கள்}}",
"untagged": "அவிழ்க்கப்படாதது",
"up_next": "அடுத்து",
"update_location_action_prompt": "{count} தேர்ந்தெடுக்கப்பட்ட சொத்துக்களின் இருப்பிடத்தைப் புதுப்பிக்கவும்:",
@ -2054,10 +2060,10 @@
"upload_details": "விவரங்களை பதிவேற்றவும்",
"upload_dialog_info": "தேர்ந்தெடுக்கப்பட்ட சொத்து (களை) சேவையகத்திற்கு காப்புப் பிரதி எடுக்க விரும்புகிறீர்களா?",
"upload_dialog_title": "சொத்தை பதிவேற்றவும்",
"upload_errors": "பதிவேற்றம் {எண்ணிக்கை, பன்மை, ஒன்று {# பிழை} மற்ற {# பிழைகள்}} உடன் முடிக்கப்பட்டது, புதிய பதிவேற்ற சொத்துக்களைக் காண பக்கத்தைப் புதுப்பிக்கவும்.",
"upload_errors": "{எண்ணிக்கை, பன்மை, ஒரு {# பிழை} மற்றொன்று {# பிழைகள்}} மூலம் பதிவேற்றம் முடிந்தது, புதிய பதிவேற்ற சொத்துகளைப் பார்க்க பக்கத்தைப் புதுப்பிக்கவும்.",
"upload_finished": "பதிவேற்றம் முடிந்தது",
"upload_progress": "மீதமுள்ள {மீதமுள்ள, எண்} - செயலாக்கப்பட்ட {செயலாக்கப்பட்டது, எண்}/{மொத்தம், எண்}",
"upload_skipped_duplicates": "{எண்ணிக்கை, பன்மை, ஒன்று {# நகல் சொத்து} பிற {# நகல் சொத்துக்கள்}}",
"upload_progress": "மீதமுள்ள {மீதமுள்ள, எண்} - செயலாக்கப்பட்டது {செயல்படுத்தப்பட்டது, எண்}/{மொத்தம், எண்}",
"upload_skipped_duplicates": "தவிர்க்கப்பட்டது {எண்ணிக்கை, பன்மை, ஒன்று {# நகல் சொத்து} மற்றொன்று {# நகல் சொத்துக்கள்}}",
"upload_status_duplicates": "நகல்கள்",
"upload_status_errors": "பிழைகள்",
"upload_status_uploaded": "பதிவேற்றப்பட்டது",
@ -2079,13 +2085,13 @@
"user_privacy": "பயனர் தனியுரிமை",
"user_purchase_settings": "வாங்க",
"user_purchase_settings_description": "உங்கள் வாங்குதலை நிர்வகிக்கவும்",
"user_role_set": "{user} {பாத்திரமாக அமைக்கவும்",
"user_role_set": "{user}ஐ {role} ஆக அமை",
"user_usage_detail": "பயனர் பயன்பாட்டு விவரம்",
"user_usage_stats": "கணக்கு பயன்பாட்டு புள்ளிவிவரங்கள்",
"user_usage_stats_description": "கணக்கு உபயோகப் புள்ளிவிவரங்களைப் பார்க்க",
"username": "பயனர்பெயர்",
"users": "பயனர்கள்",
"users_added_to_album_count": "{எண்ணிக்கை, பன்மை, ஒன்று {# பயனர்} மற்ற {# பயனர்கள்}} ஆல்பத்தில் சேர்க்கப்பட்டது",
"users_added_to_album_count": "ஆல்பத்தில் {count, plural, ஒரு {# பயனர்} மற்றொரு {# பயனர்கள்}} சேர்க்கப்பட்டார்",
"utilities": "பயன்பாடுகள்",
"validate": "சரிபார்க்கவும்",
"validate_endpoint_error": "தயவுசெய்து ஒரு செல்லுபடியாகும் URL ஐ உள்ளிடவும்",
@ -2099,7 +2105,7 @@
"video_hover_setting": "ஓவரில் வீடியோ சிறு உருவத்தை இயக்கவும்",
"video_hover_setting_description": "மவுச் உருப்படியைக் கொண்டு செல்லும்போது வீடியோ சிறு உருவத்தை இயக்கவும். முடக்கப்பட்டாலும் கூட, பிளே ஐகானுக்கு மேல் சுற்றுவதன் மூலம் பிளேபேக்கைத் தொடங்கலாம்.",
"videos": "வீடியோக்கள்",
"videos_count": "{எண்ணிக்கை, பன்மை, ஒன்று {# வீடியோ} மற்ற {# வீடியோக்கள்}}",
"videos_count": "{எண்ணிக்கை, பன்மை, ஒன்று {# வீடியோ} மற்றொன்று {# வீடியோக்கள்}}",
"view": "பார்வை",
"view_album": "ஆல்பத்தைக் காண்க",
"view_all": "அனைத்தையும் காண்க",

View file

@ -211,6 +211,7 @@
"notification_email_ignore_certificate_errors_description": "TLS sertifika doğrulama ayarlarını görmezden gel (Önerilmez)",
"notification_email_password_description": "E-posta sunucusunda kimlik doğrulama yaparken kullanılacak şifre",
"notification_email_port_description": "Email sunucusunun port numarası (25, 465, 587 gibi)",
"notification_email_secure_description": "SMTPS kullan (TLS üzerinden SMTP)",
"notification_email_sent_test_email_button": "Test emaili yolla ve kaydet",
"notification_email_setting_description": "Email yollama bildirim ayarları",
"notification_email_test_email": "Test emaili yolla",
@ -333,7 +334,7 @@
"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.",
"transcoding_max_bitrate": "Maksimum bitrate",
"transcoding_max_bitrate_description": "Maksimum bit hızı ayarlamak, kaliteyi az bir maliyetle düşürerek dosya boyutlarını daha öngörülebilir hale getirebilir. 720p çözünürlükte, tipik değerler VP9 veya HEVC için 2600 kbit/s, H.264 için ise 4500 kbit/sdir. 0 olarak ayarlanırsa devre dışı bırakılır.",
"transcoding_max_bitrate_description": "Maksimum bit hızı ayarlamak, kaliteyi az bir maliyetle düşürerek dosya boyutlarını daha öngörülebilir hale getirebilir. 720p çözünürlükte, tipik değerler VP9 veya HEVC için 2600 kbit/s, H.264 için ise 4500 kbit/sdir. 0 olarak ayarlanırsa devre dışı bırakılır. Birim belirtilmediğinde, k (kbit/s için) varsayılır; bu nedenle 5000, 5000k ve 5M (Mbit/s için) eşdeğerdir.",
"transcoding_max_keyframe_interval": "Maksimum ana kare aralığı",
"transcoding_max_keyframe_interval_description": "Ana kareler arasındaki maksimum kare mesafesini ayarlar. Düşük değerler sıkıştırma verimliliğini kötüleştirir, ancak arama sürelerini iyileştirir ve hızlı hareket içeren sahnelerde kaliteyi artırabilir. 0 bu değeri otomatik olarak ayarlar.",
"transcoding_optimal_description": "Hedef çözünürlükten yüksek veya kabul edilen formatta olmayan videolar",
@ -351,7 +352,7 @@
"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": "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_temporal_aq_description": "Sadece NVENC için geçerlidir. Ge.ici Uyarlamalı Kuantizasyon 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",
@ -466,9 +467,11 @@
"api_key_description": "Bu değer sadece bir kere gösterilecek. Lütfen bu pencereyi kapatmadan önce kopyaladığınıza emin olun.",
"api_key_empty": "Apı Anahtarı isminiz boş olmamalı",
"api_keys": "API Anahtarları",
"app_architecture_variant": "Sürüm",
"app_bar_signout_dialog_content": ıkış yapmak istediğinize emin misiniz?",
"app_bar_signout_dialog_ok": "Evet",
"app_bar_signout_dialog_title": ıkış",
"app_download_links": "Uygulama İndirme Linkleri",
"app_settings": "Uygulama Ayarları",
"appears_in": "Şurada görünür",
"apply_count": "Uygula ({count, number})",
@ -1039,6 +1042,7 @@
"exif_bottom_sheet_description_error": "Açıklama güncelleme hatası",
"exif_bottom_sheet_details": "DETAYLAR",
"exif_bottom_sheet_location": "KONUM",
"exif_bottom_sheet_no_description": "Açıklama yok",
"exif_bottom_sheet_people": "KİŞİLER",
"exif_bottom_sheet_person_add_person": "İsim ekle",
"exit_slideshow": "Slayt gösterisinden çık",
@ -1345,9 +1349,11 @@
"minute": "Dakika",
"minutes": "Dakika",
"missing": "Eksik",
"mobile_app": "Mobil Uygulama",
"mobile_app_download_onboarding_note": "Bu seçeneklere tekrar Araçlar sayfasından erişebilirsiniz.",
"model": "Model",
"month": "Ay",
"monthly_title_text_date_format": "MMMM y",
"monthly_title_text_date_format": "AAAA y",
"more": "Daha fazla",
"move": "Taşı",
"move_off_locked_folder": "Kilitli klasörden taşı",
@ -1363,6 +1369,8 @@
"my_albums": "Albümlerim",
"name": "İsim",
"name_or_nickname": "İsim veya takma isim",
"navigate": "Gezin",
"navigate_to_time": "Zaman sekmesine yönlendir",
"network_requirement_photos_upload": "Fotoğrafları yedeklemek için mobil veriyi kullan",
"network_requirement_videos_upload": "Videoları yedeklemek için mobil veriyi kullan",
"network_requirements": "Ağ Gereksinimleri",
@ -1372,6 +1380,7 @@
"never": "Asla",
"new_album": "Yeni albüm",
"new_api_key": "Yeni API Anahtarı",
"new_date_range": "Yeni tarih aralığı",
"new_password": "Yeni şifre",
"new_person": "Yeni kişi",
"new_pin_code": "Yeni PIN kodu",
@ -1422,6 +1431,8 @@
"notifications": "Bildirimler",
"notifications_setting_description": "Bildirimleri yönetin",
"oauth": "OAuth",
"obtainium_configurator": "Obtainium Yapılandırıcı",
"obtainium_configurator_instructions": "Lütfen bir API anahtarı oluşturun ve Obtainium yapılandırma linkinizi oluşturmak için bir sürüm seçin.",
"official_immich_resources": "Resmi Immich Kaynakları",
"offline": "Çevrim dışı",
"offset": "Ofset",
@ -1806,6 +1817,8 @@
"setting_notifications_subtitle": "Bildirim tercihlerinizi düzenleyin",
"setting_notifications_total_progress_subtitle": "Toplam yükleme ilerlemesi (tamamlanan/toplam)",
"setting_notifications_total_progress_title": "Arkaplan yedeklemesi toplam ilerlemesini göster",
"setting_video_viewer_auto_play_subtitle": "Videolar açıldığında otomatik olarak oynatmaya başla",
"setting_video_viewer_auto_play_title": "Videoları otomatik oynat",
"setting_video_viewer_looping_title": "Döngü",
"setting_video_viewer_original_video_subtitle": "Sunucudan video aktarılırken, transcode (dönüştürülmüş) sürüm mevcut olsa bile orijinal dosya oynatılır. Bu durum, arabelleğe alma (buffering) sorunlarına yol açabilir. Videolar yerel olarak mevcutsa, bu ayardan bağımsız olarak orijinal kalitede oynatılır.",
"setting_video_viewer_original_video_title": "Orijinal videoyu zorla",

View file

@ -211,6 +211,8 @@
"notification_email_ignore_certificate_errors_description": "Ігнорувати помилки перевірки сертифікатів TLS (не рекомендується)",
"notification_email_password_description": "Пароль для аутентифікації на поштовому сервері",
"notification_email_port_description": "Порт поштового сервера (наприклад, 25, 465 або 587)",
"notification_email_secure": "SMTPS",
"notification_email_secure_description": "Використовувати SMTPS (SMTP через TLS)",
"notification_email_sent_test_email_button": "Надіслати тестовий лист і зберегти",
"notification_email_setting_description": "Налаштування для надсилання email-повідомлень",
"notification_email_test_email": "Надіслати тестовий лист",
@ -333,7 +335,7 @@
"transcoding_max_b_frames": "Максимальна кількість проміжних кадрів",
"transcoding_max_b_frames_description": "Вищі значення покращують ефективність стиснення, але збільшують час кодування. Можуть бути несумісні з апаратним прискоренням на старих пристроях. Значення 0 вимикає B-фрейми, а -1 автоматично налаштовує це значення.",
"transcoding_max_bitrate": "Максимальний бітрейт",
"transcoding_max_bitrate_description": "Встановлення максимального бітрейту дозволяє зробити розміри файлів більш передбачуваними за мінорну вартість якості. Наприклад, для 720p типові значення: 2600 кбіт/с для VP9 або HEVC, або 4500 кбіт/с для H.264. Вимикається, якщо встановлено 0.",
"transcoding_max_bitrate_description": "Встановлення максимальної швидкості передачі даних може зробити розміри файлів більш передбачуваними за незначної втрати якості. При роздільній здатності 720p типові значення становлять 2600 кбіт/с для VP9 або HEVC, або 4500 кбіт/с для H.264. Вимкнено, якщо встановлено значення 0. Якщо одиниця виміру не вказана, приймається k (для кбіт/с); отже, 5000, 5000k і 5M (для Мбіт/с) є еквівалентними.",
"transcoding_max_keyframe_interval": "Максимальний інтервал ключових кадрів",
"transcoding_max_keyframe_interval_description": "Встановлює максимальну відстань між ключовими кадрами. Нижчі значення погіршують ефективність стиснення, але покращують час пошуку і можуть покращити якість в сценах з швидкими рухами. Значення 0 автоматично встановлює це значення.",
"transcoding_optimal_description": "Відео з роздільною здатністю вище цільової або не в прийнятому форматі",
@ -351,7 +353,7 @@
"transcoding_target_resolution": "Роздільна здатність",
"transcoding_target_resolution_description": "Вищі роздільні здатності можуть зберігати більше деталей, але займають більше часу на кодування, мають більші розміри файлів і можуть зменшити швидкість роботи застосунку.",
"transcoding_temporal_aq": "Тимчасове AQ",
"transcoding_temporal_aq_description": "Це застосовується лише до NVENC. Підвищує якість сцен з великою деталізацією та низьким рухом. Може бути несумісним зі старими пристроями.",
"transcoding_temporal_aq_description": "Стосується лише NVENC. Часова адаптивна квантизація підвищує якість сцен з високою деталізацією та низьким рівнем руху. Може бути несумісним зі старими пристроями.",
"transcoding_threads": "Потоки",
"transcoding_threads_description": "Вищі значення прискорюють кодування, але залишають менше місця для обробки інших завдань сервером під час активності. Це значення не повинно бути більше кількості ядер процесора. Максимізує використання, якщо встановлено на 0.",
"transcoding_tone_mapping": "Тонова картографія",
@ -466,9 +468,11 @@
"api_key_description": "Це значення буде показане лише один раз. Будь ласка, обов'язково скопіюйте його перед закриттям вікна.",
"api_key_empty": "Назва вашого ключа API не може бути порожньою",
"api_keys": "Ключі API",
"app_architecture_variant": "Варіант (Архітектура)",
"app_bar_signout_dialog_content": "Ви впевнені, що бажаєте вийти з аккаунта?",
"app_bar_signout_dialog_ok": "Так",
"app_bar_signout_dialog_title": "Вийти з аккаунта",
"app_download_links": "Посилання для завантаження додатків",
"app_settings": "Налаштування програми",
"appears_in": "З'являється в",
"apply_count": "Застосувати ({count, number})",
@ -1346,6 +1350,8 @@
"minute": "Хвилинку",
"minutes": "Хвилини",
"missing": "Відсутні",
"mobile_app": "Мобільний додаток",
"mobile_app_download_onboarding_note": "Ви можете знову отримати доступ до цих опцій на сторінці «Утиліти».",
"model": "Модель",
"month": "Місяць",
"monthly_title_text_date_format": "ММММ р",
@ -1364,6 +1370,8 @@
"my_albums": "Мої альбоми",
"name": "Ім'я",
"name_or_nickname": "Ім'я або псевдонім",
"navigate": "Навігація",
"navigate_to_time": "Перейти до Часу",
"network_requirement_photos_upload": "Використовувати стільникові дані для резервного копіювання фото",
"network_requirement_videos_upload": "Використовувати стільникові дані для резервного копіювання відео",
"network_requirements": "Вимоги до мережі",
@ -1373,6 +1381,7 @@
"never": "ніколи",
"new_album": "Новий альбом",
"new_api_key": "Новий ключ API",
"new_date_range": "Новий діапазон дат",
"new_password": "Новий пароль",
"new_person": "Нова людина",
"new_pin_code": "Новий PIN-код",
@ -1423,6 +1432,8 @@
"notifications": "Сповіщення",
"notifications_setting_description": "Керування сповіщеннями",
"oauth": "OAuth",
"obtainium_configurator": "Конфігуратор Obtainium",
"obtainium_configurator_instructions": "Будь ласка, створіть ключ API та виберіть варіант, щоб створити посилання на конфігурацію Obtainium.",
"official_immich_resources": "Офіційні ресурси Immich",
"offline": "Офлайн",
"offset": "Зсув",
@ -1807,6 +1818,8 @@
"setting_notifications_subtitle": "Налаштування параметрів сповіщень",
"setting_notifications_total_progress_subtitle": "Загальний прогрес (виконано/загалом)",
"setting_notifications_total_progress_title": "Показати загальний хід фонового резервного копіювання",
"setting_video_viewer_auto_play_subtitle": "Автоматично починати відтворення відео під час їх відкриття",
"setting_video_viewer_auto_play_title": "Автоматичне відтворення відео",
"setting_video_viewer_looping_title": "Циклічне відтворення",
"setting_video_viewer_original_video_subtitle": "При трансляції відео з сервера відтворювати оригінал, навіть якщо доступна транскодування. Може призвести до буферизації. Відео, доступні локально, відтворюються в оригінальній якості, незважаючи на це налаштування.",
"setting_video_viewer_original_video_title": "Примусово відтворювати оригінальне відео",

View file

@ -10,7 +10,7 @@
"activity": "動態",
"activity_changed": "動態已{enabled, select, true {開啟} other {關閉}}",
"add": "加入",
"add_a_description": "加入文字說明",
"add_a_description": "新增描述",
"add_a_location": "新增地點",
"add_a_name": "加入姓名",
"add_a_title": "新增標題",
@ -33,6 +33,7 @@
"add_to_albums": "加入相簿",
"add_to_albums_count": "將 ({count}) 個項目加入相簿",
"add_to_shared_album": "加到共享相簿",
"add_upload_to_stack": "新增上傳到堆疊",
"add_url": "新增 URL",
"added_to_archive": "移至封存",
"added_to_favorites": "加入收藏",
@ -332,7 +333,7 @@
"transcoding_max_b_frames": "最大 B 幀數",
"transcoding_max_b_frames_description": "較高的數值可提升壓縮效率但會降低編碼速度。在較舊的裝置上可能與硬體加速不相容。0 代表停用 B 幀,而 -1 則會自動設定此數值。",
"transcoding_max_bitrate": "最大位元速率",
"transcoding_max_bitrate_description": "設定最大位元率可以在輕微犧牲品質的情況下,讓檔案大小更容易預測。在 720p 解析度下VP9 或 HEVC 的典型值為 2600 kbit/sH.264 則為 4500 kbit/s。設為 0 則停用此功能。",
"transcoding_max_bitrate_description": "設定最大位元率可以在輕微犧牲品質的情況下,讓檔案大小更容易預測。在 720p 解析度下VP9 或 HEVC 的典型值為 2600 kbit/sH.264 則為 4500 kbit/s。設為 0 則停用此功能。當沒有指定組織時假設k代表kbit/s 囙此5000、5000k和5MMbit/s是等效的。",
"transcoding_max_keyframe_interval": "最大關鍵幀間隔",
"transcoding_max_keyframe_interval_description": "設定關鍵幀之間的最大幀距。較低的值會降低壓縮效率但可以改善搜尋時間並有可能會改善快速變動場景的品質。0 會自動設定此值。",
"transcoding_optimal_description": "高於目標解析度或格式不在可接受範圍的影片",
@ -350,7 +351,7 @@
"transcoding_target_resolution": "目標解析度",
"transcoding_target_resolution_description": "較高的解析度可以保留更多細節,但編碼時間較長,檔案也較大,且可能降低應用程式的回應速度。",
"transcoding_temporal_aq": "時間自適應量化Temporal AQ",
"transcoding_temporal_aq_description": "僅適用於 NVENC可提升高細節、低動態場景的畫質。可能與較舊的裝置不相容。",
"transcoding_temporal_aq_description": "僅適用於 NVENC時域自我調整量化可提升高細節、低動態場景的畫質。可能與較舊的裝置不相容。",
"transcoding_threads": "執行緒數量",
"transcoding_threads_description": "較高的值會加快編碼速度,但會減少伺服器在執行過程中處理其他任務的空間。此值不應超過 CPU 核心數。設定為 0 可以最大化利用率。",
"transcoding_tone_mapping": "色調對映",
@ -1038,6 +1039,7 @@
"exif_bottom_sheet_description_error": "更新描述時發生錯誤",
"exif_bottom_sheet_details": "詳細資料",
"exif_bottom_sheet_location": "位置",
"exif_bottom_sheet_no_description": "無描述",
"exif_bottom_sheet_people": "人物",
"exif_bottom_sheet_person_add_person": "新增姓名",
"exit_slideshow": "結束幻燈片",
@ -1805,6 +1807,8 @@
"setting_notifications_subtitle": "調整通知選項",
"setting_notifications_total_progress_subtitle": "總體上傳進度 (已完成/總計)",
"setting_notifications_total_progress_title": "顯示背景備份總進度",
"setting_video_viewer_auto_play_subtitle": "打開視頻時自動開始播放",
"setting_video_viewer_auto_play_title": "自動播放視頻",
"setting_video_viewer_looping_title": "迴圈播放",
"setting_video_viewer_original_video_subtitle": "從伺服器串流影片時,優先播放原始畫質(即使有轉檔的版本可用)。這可能會導致播放時出現緩衝情況。若影片已儲存在本機,則一律以原始畫質播放,與此設定無關。",
"setting_video_viewer_original_video_title": "一律播放原始影片",

View file

@ -333,7 +333,7 @@
"transcoding_max_b_frames": "最大B帧数",
"transcoding_max_b_frames_description": "较高的值可以提高压缩效率但会减慢编码速度。可能与旧设备上的硬件加速不兼容。0表示将禁用B帧-1表示将自动设置此参数。",
"transcoding_max_bitrate": "最高码率",
"transcoding_max_bitrate_description": "设置最大比特率可在对输出质量影响较小的情况下使文件体积更为可控。720p 下VP9 或 HEVC 普遍将其设为 2600 kbit/sH.264 则为 4500 kbit/s。如果此项设置为 0则不限制最大比特率。",
"transcoding_max_bitrate_description": "设置最大比特率可在对输出质量影响较小的情况下使文件体积更为可控。720p 下VP9 或 HEVC 普遍将其设为 2600 kbit/sH.264 则为 4500 kbit/s。如果此项设置为 0则不限制最大比特率。当没有指定单位时假设k代表kbit/s因此5000、5000k和5MMbit/s是等效的。",
"transcoding_max_keyframe_interval": "最大关键帧间隔",
"transcoding_max_keyframe_interval_description": "设置关键帧之间的最大帧距离。较低的值会降低压缩效率但可以提高搜索速度并且可能在快速运动的场景中提高画质。0 表示将自动设置此参数。",
"transcoding_optimal_description": "视频超过目标分辨率或格式不支持",
@ -351,7 +351,7 @@
"transcoding_target_resolution": "目标分辨率",
"transcoding_target_resolution_description": "更高的分辨率可以保留更多细节,但编码时间更长,文件体积更大,且可能降低应用程序的响应速度。",
"transcoding_temporal_aq": "时间自适应量化",
"transcoding_temporal_aq_description": "仅适用于 NVENC。提高高细节、低动态场景的质量。可能与旧设备不兼容。",
"transcoding_temporal_aq_description": "仅适用于 NVENC。时间自适应量化提高高细节、低动态场景的质量。可能与旧设备不兼容。",
"transcoding_threads": "线程数",
"transcoding_threads_description": "设定值越高编码速度越快留给其它任务Docker 外宿主机的任务等)的计算能力越少。此值不应大于 CPU 核心的数量。0 表示最大限度地提高利用率。",
"transcoding_tone_mapping": "色调映射",
@ -1039,6 +1039,7 @@
"exif_bottom_sheet_description_error": "更新描述时出错",
"exif_bottom_sheet_details": "详情",
"exif_bottom_sheet_location": "位置",
"exif_bottom_sheet_no_description": "无描述",
"exif_bottom_sheet_people": "人物",
"exif_bottom_sheet_person_add_person": "添加姓名",
"exit_slideshow": "退出幻灯片放映",
@ -1363,6 +1364,8 @@
"my_albums": "我的相册",
"name": "名称",
"name_or_nickname": "名称或昵称",
"navigate": "导航",
"navigate_to_time": "导航至时间",
"network_requirement_photos_upload": "使用蜂窝数据备份照片",
"network_requirement_videos_upload": "使用蜂窝数据备份视频",
"network_requirements": "网络要求",
@ -1372,6 +1375,7 @@
"never": "永不过期",
"new_album": "新相册",
"new_api_key": "新增 API 密钥",
"new_date_range": "新的日期范围",
"new_password": "新密码",
"new_person": "新人物",
"new_pin_code": "新的PIN码",
@ -1806,6 +1810,8 @@
"setting_notifications_subtitle": "调整通知首选项",
"setting_notifications_total_progress_subtitle": "总体上传进度(已完成/总计)",
"setting_notifications_total_progress_title": "显示后台备份总进度",
"setting_video_viewer_auto_play_subtitle": "打开视频时自动开始播放",
"setting_video_viewer_auto_play_title": "自动播放视频",
"setting_video_viewer_looping_title": "循环播放",
"setting_video_viewer_original_video_subtitle": "从服务器流式传输视频时,即使有转码,也播放原始视频。可能会导致缓冲。本地视频则以原始质量播放,与此设置无关。",
"setting_video_viewer_original_video_title": "强制播放原始视频",

View file

@ -17,6 +17,7 @@ class SystemConfigSmtpTransportDto {
required this.ignoreCert,
required this.password,
required this.port,
required this.secure,
required this.username,
});
@ -30,6 +31,8 @@ class SystemConfigSmtpTransportDto {
/// Maximum value: 65535
num port;
bool secure;
String username;
@override
@ -38,6 +41,7 @@ class SystemConfigSmtpTransportDto {
other.ignoreCert == ignoreCert &&
other.password == password &&
other.port == port &&
other.secure == secure &&
other.username == username;
@override
@ -47,10 +51,11 @@ class SystemConfigSmtpTransportDto {
(ignoreCert.hashCode) +
(password.hashCode) +
(port.hashCode) +
(secure.hashCode) +
(username.hashCode);
@override
String toString() => 'SystemConfigSmtpTransportDto[host=$host, ignoreCert=$ignoreCert, password=$password, port=$port, username=$username]';
String toString() => 'SystemConfigSmtpTransportDto[host=$host, ignoreCert=$ignoreCert, password=$password, port=$port, secure=$secure, username=$username]';
Map<String, dynamic> toJson() {
final json = <String, dynamic>{};
@ -58,6 +63,7 @@ class SystemConfigSmtpTransportDto {
json[r'ignoreCert'] = this.ignoreCert;
json[r'password'] = this.password;
json[r'port'] = this.port;
json[r'secure'] = this.secure;
json[r'username'] = this.username;
return json;
}
@ -75,6 +81,7 @@ class SystemConfigSmtpTransportDto {
ignoreCert: mapValueOfType<bool>(json, r'ignoreCert')!,
password: mapValueOfType<String>(json, r'password')!,
port: num.parse('${json[r'port']}'),
secure: mapValueOfType<bool>(json, r'secure')!,
username: mapValueOfType<String>(json, r'username')!,
);
}
@ -127,6 +134,7 @@ class SystemConfigSmtpTransportDto {
'ignoreCert',
'password',
'port',
'secure',
'username',
};
}

View file

@ -15,7 +15,7 @@ function dart {
patch --no-backup-if-mismatch -u api.mustache <api.mustache.patch
cd ../../
pnpx @openapitools/openapi-generator-cli generate -g dart -i ./immich-openapi-specs.json -o ../mobile/openapi -t ./templates/mobile
pnpm dlx @openapitools/openapi-generator-cli generate -g dart -i ./immich-openapi-specs.json -o ../mobile/openapi -t ./templates/mobile
# Post generate patches
patch --no-backup-if-mismatch -u ../mobile/openapi/lib/api_client.dart <./patch/api_client.dart.patch
@ -27,7 +27,7 @@ function dart {
}
function typescript {
pnpx oazapfts --optimistic --argumentStyle=object --useEnumType immich-openapi-specs.json typescript-sdk/src/fetch-client.ts
pnpm dlx oazapfts --optimistic --argumentStyle=object --useEnumType immich-openapi-specs.json typescript-sdk/src/fetch-client.ts
pnpm --filter @immich/sdk install --frozen-lockfile
pnpm --filter @immich/sdk build
}

View file

@ -16726,6 +16726,9 @@
"minimum": 0,
"type": "number"
},
"secure": {
"type": "boolean"
},
"username": {
"type": "string"
}
@ -16735,6 +16738,7 @@
"ignoreCert",
"password",
"port",
"secure",
"username"
],
"type": "object"

View file

@ -71,6 +71,7 @@ export type SystemConfigSmtpTransportDto = {
ignoreCert: boolean;
password: string;
port: number;
secure: boolean;
username: string;
};
export type SystemConfigSmtpDto = {

140
pnpm-lock.yaml generated
View file

@ -67,7 +67,7 @@ importers:
version: 22.18.10
'@vitest/coverage-v8':
specifier: ^3.0.0
version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
byte-size:
specifier: ^9.0.0
version: 9.0.1
@ -115,10 +115,10 @@ importers:
version: 5.1.4(typescript@5.9.3)(vite@7.1.9(@types/node@22.18.10)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
vitest:
specifier: ^3.0.0
version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vitest-fetch-mock:
specifier: ^0.4.0
version: 0.4.5(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
version: 0.4.5(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
yaml:
specifier: ^2.3.1
version: 2.8.1
@ -284,7 +284,7 @@ importers:
version: 5.2.1(encoding@0.1.13)
vitest:
specifier: ^3.0.0
version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
open-api/typescript-sdk:
dependencies:
@ -613,7 +613,7 @@ importers:
version: 13.15.3
'@vitest/coverage-v8':
specifier: ^3.0.0
version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
eslint:
specifier: ^9.14.0
version: 9.37.0(jiti@2.6.1)
@ -670,7 +670,7 @@ importers:
version: 5.1.4(typescript@5.9.3)(vite@7.1.9(@types/node@22.18.10)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
vitest:
specifier: ^3.0.0
version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
version: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
web:
dependencies:
@ -733,7 +733,7 @@ importers:
version: 4.7.8
happy-dom:
specifier: ^20.0.0
version: 20.0.0
version: 20.0.2
intl-messageformat:
specifier: ^10.7.11
version: 10.7.17
@ -794,25 +794,25 @@ importers:
version: 3.1.2
'@sveltejs/adapter-static':
specifier: ^3.0.8
version: 3.0.10(@sveltejs/kit@2.46.4(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))
version: 3.0.10(@sveltejs/kit@2.46.4(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))
'@sveltejs/enhanced-img':
specifier: ^0.8.0
version: 0.8.4(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(rollup@4.52.4)(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
version: 0.8.4(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(rollup@4.52.4)(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@sveltejs/kit':
specifier: ^2.27.1
version: 2.46.4(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
version: 2.46.4(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@sveltejs/vite-plugin-svelte':
specifier: 6.2.1
version: 6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
version: 6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@tailwindcss/vite':
specifier: ^4.1.7
version: 4.1.14(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
version: 4.1.14(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@testing-library/jest-dom':
specifier: ^6.4.2
version: 6.9.1
'@testing-library/svelte':
specifier: ^5.2.8
version: 5.2.8(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.7.1)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
version: 5.2.8(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.7.2)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@testing-library/user-event':
specifier: ^14.5.2
version: 14.6.1(@testing-library/dom@10.4.0)
@ -836,7 +836,7 @@ importers:
version: 1.5.5
'@vitest/coverage-v8':
specifier: ^3.0.0
version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.7.1)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.7.2)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
dotenv:
specifier: ^17.0.0
version: 17.2.3
@ -896,10 +896,10 @@ importers:
version: 8.46.0(eslint@9.37.0(jiti@2.6.1))(typescript@5.9.3)
vite:
specifier: ^7.1.2
version: 7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
version: 7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vitest:
specifier: ^3.0.0
version: 3.2.4(@types/debug@4.1.12)(@types/node@24.7.1)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
version: 3.2.4(@types/debug@4.1.12)(@types/node@24.7.2)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
packages:
@ -4592,14 +4592,14 @@ packages:
'@types/node@18.19.130':
resolution: {integrity: sha512-GRaXQx6jGfL8sKfaIDD6OupbIHBr9jv7Jnaml9tB7l4v068PAOXqfcujMMo5PhbIs6ggR1XODELqahT2R8v0fg==}
'@types/node@20.19.2':
resolution: {integrity: sha512-9pLGGwdzOUBDYi0GNjM97FIA+f92fqSke6joWeBjWXllfNxZBs7qeMF7tvtOIsbY45xkWkxrdwUfUf3MnQa9gA==}
'@types/node@20.19.21':
resolution: {integrity: sha512-CsGG2P3I5y48RPMfprQGfy4JPRZ6csfC3ltBZSRItG3ngggmNY/qs2uZKp4p9VbrpqNNSMzUZNFZKzgOGnd/VA==}
'@types/node@22.18.10':
resolution: {integrity: sha512-anNG/V/Efn/YZY4pRzbACnKxNKoBng2VTFydVu8RRs5hQjikP8CQfaeAV59VFSCzKNp90mXiVXW2QzV56rwMrg==}
'@types/node@24.7.1':
resolution: {integrity: sha512-CmyhGZanP88uuC5GpWU9q+fI61j2SkhO3UGMUdfYRE6Bcy0ccyzn1Rqj9YAB/ZY4kOXmNf0ocah5GtphmLMP6Q==}
'@types/node@24.7.2':
resolution: {integrity: sha512-/NbVmcGTP+lj5oa4yiYxxeBjRivKQ5Ns1eSZeB99ExsEQ6rX5XYU1Zy/gGxY/ilqtD4Etx9mKyrPxZRetiahhA==}
'@types/nodemailer@7.0.2':
resolution: {integrity: sha512-Zo6uOA9157WRgBk/ZhMpTQ/iCWLMk7OIs/Q9jvHarMvrzUUP/MDdPHL2U1zpf57HrrWGv4nYQn5uIxna0xY3xw==}
@ -6976,8 +6976,8 @@ packages:
engines: {node: '>=0.4.7'}
hasBin: true
happy-dom@20.0.0:
resolution: {integrity: sha512-GkWnwIFxVGCf2raNrxImLo397RdGhLapj5cT3R2PT7FwL62Ze1DROhzmYW7+J3p9105DYMVenEejEbnq5wA37w==}
happy-dom@20.0.2:
resolution: {integrity: sha512-pYOyu624+6HDbY+qkjILpQGnpvZOusItCk+rvF5/V+6NkcgTKnbOldpIy22tBnxoaLtlM9nXgoqAcW29/B7CIw==}
engines: {node: '>=20.0.0'}
has-flag@4.0.0:
@ -15689,29 +15689,29 @@ snapshots:
dependencies:
acorn: 8.15.0
'@sveltejs/adapter-static@3.0.10(@sveltejs/kit@2.46.4(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))':
'@sveltejs/adapter-static@3.0.10(@sveltejs/kit@2.46.4(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))':
dependencies:
'@sveltejs/kit': 2.46.4(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@sveltejs/kit': 2.46.4(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@sveltejs/enhanced-img@0.8.4(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(rollup@4.52.4)(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
'@sveltejs/enhanced-img@0.8.4(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(rollup@4.52.4)(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
dependencies:
'@sveltejs/vite-plugin-svelte': 6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@sveltejs/vite-plugin-svelte': 6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
magic-string: 0.30.19
sharp: 0.34.4
svelte: 5.39.11
svelte-parse-markup: 0.1.5(svelte@5.39.11)
vite: 7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite: 7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite-imagetools: 8.0.0(rollup@4.52.4)
zimmerframe: 1.1.4
transitivePeerDependencies:
- rollup
- supports-color
'@sveltejs/kit@2.46.4(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
'@sveltejs/kit@2.46.4(@opentelemetry/api@1.9.0)(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
dependencies:
'@standard-schema/spec': 1.0.0
'@sveltejs/acorn-typescript': 1.0.6(acorn@8.15.0)
'@sveltejs/vite-plugin-svelte': 6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@sveltejs/vite-plugin-svelte': 6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@types/cookie': 0.6.0
acorn: 8.15.0
cookie: 0.6.0
@ -15724,28 +15724,28 @@ snapshots:
set-cookie-parser: 2.7.1
sirv: 3.0.2
svelte: 5.39.11
vite: 7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite: 7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
optionalDependencies:
'@opentelemetry/api': 1.9.0
'@sveltejs/vite-plugin-svelte-inspector@5.0.0(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
'@sveltejs/vite-plugin-svelte-inspector@5.0.0(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
dependencies:
'@sveltejs/vite-plugin-svelte': 6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@sveltejs/vite-plugin-svelte': 6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
debug: 4.4.3
svelte: 5.39.11
vite: 7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite: 7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
transitivePeerDependencies:
- supports-color
'@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
'@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
dependencies:
'@sveltejs/vite-plugin-svelte-inspector': 5.0.0(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@sveltejs/vite-plugin-svelte-inspector': 5.0.0(@sveltejs/vite-plugin-svelte@6.2.1(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)))(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
debug: 4.4.3
deepmerge: 4.3.1
magic-string: 0.30.19
svelte: 5.39.11
vite: 7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vitefu: 1.1.1(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
vite: 7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vitefu: 1.1.1(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
transitivePeerDependencies:
- supports-color
@ -15967,12 +15967,12 @@ snapshots:
'@tailwindcss/oxide-win32-arm64-msvc': 4.1.14
'@tailwindcss/oxide-win32-x64-msvc': 4.1.14
'@tailwindcss/vite@4.1.14(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
'@tailwindcss/vite@4.1.14(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
dependencies:
'@tailwindcss/node': 4.1.14
'@tailwindcss/oxide': 4.1.14
tailwindcss: 4.1.14
vite: 7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite: 7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
'@testing-library/dom@10.4.0':
dependencies:
@ -15994,13 +15994,13 @@ snapshots:
picocolors: 1.1.1
redent: 3.0.0
'@testing-library/svelte@5.2.8(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.7.1)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
'@testing-library/svelte@5.2.8(svelte@5.39.11)(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.7.2)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
dependencies:
'@testing-library/dom': 10.4.0
svelte: 5.39.11
optionalDependencies:
vite: 7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.7.1)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite: 7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.7.2)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
'@testing-library/user-event@14.6.1(@testing-library/dom@10.4.0)':
dependencies:
@ -16309,7 +16309,7 @@ snapshots:
dependencies:
undici-types: 5.26.5
'@types/node@20.19.2':
'@types/node@20.19.21':
dependencies:
undici-types: 6.21.0
@ -16317,7 +16317,7 @@ snapshots:
dependencies:
undici-types: 6.21.0
'@types/node@24.7.1':
'@types/node@24.7.2':
dependencies:
undici-types: 7.14.0
optional: true
@ -16567,7 +16567,7 @@ snapshots:
'@ungap/structured-clone@1.3.0': {}
'@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
'@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
dependencies:
'@ampproject/remapping': 2.3.0
'@bcoe/v8-coverage': 1.0.2
@ -16582,11 +16582,11 @@ snapshots:
std-env: 3.9.0
test-exclude: 7.0.1
tinyrainbow: 2.0.0
vitest: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vitest: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
transitivePeerDependencies:
- supports-color
'@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.7.1)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
'@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.7.2)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
dependencies:
'@ampproject/remapping': 2.3.0
'@bcoe/v8-coverage': 1.0.2
@ -16601,7 +16601,7 @@ snapshots:
std-env: 3.9.0
test-exclude: 7.0.1
tinyrainbow: 2.0.0
vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.7.1)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vitest: 3.2.4(@types/debug@4.1.12)(@types/node@24.7.2)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
transitivePeerDependencies:
- supports-color
@ -16621,13 +16621,13 @@ snapshots:
optionalDependencies:
vite: 7.1.9(@types/node@22.18.10)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
'@vitest/mocker@3.2.4(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
'@vitest/mocker@3.2.4(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))':
dependencies:
'@vitest/spy': 3.2.4
estree-walker: 3.0.3
magic-string: 0.30.19
optionalDependencies:
vite: 7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite: 7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
'@vitest/pretty-format@3.2.4':
dependencies:
@ -19136,9 +19136,9 @@ snapshots:
optionalDependencies:
uglify-js: 3.19.3
happy-dom@20.0.0:
happy-dom@20.0.2:
dependencies:
'@types/node': 20.19.2
'@types/node': 20.19.21
'@types/whatwg-mimetype': 3.0.2
whatwg-mimetype: 3.0.0
@ -24013,13 +24013,13 @@ snapshots:
- tsx
- yaml
vite-node@3.2.4(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1):
vite-node@3.2.4(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1):
dependencies:
cac: 6.7.14
debug: 4.4.3
es-module-lexer: 1.7.0
pathe: 2.0.3
vite: 7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite: 7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
transitivePeerDependencies:
- '@types/node'
- jiti
@ -24061,7 +24061,7 @@ snapshots:
terser: 5.43.1
yaml: 2.8.1
vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1):
vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1):
dependencies:
esbuild: 0.25.10
fdir: 6.5.0(picomatch@4.0.3)
@ -24070,22 +24070,22 @@ snapshots:
rollup: 4.52.4
tinyglobby: 0.2.15
optionalDependencies:
'@types/node': 24.7.1
'@types/node': 24.7.2
fsevents: 2.3.3
jiti: 2.6.1
lightningcss: 1.30.1
terser: 5.43.1
yaml: 2.8.1
vitefu@1.1.1(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)):
vitefu@1.1.1(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)):
optionalDependencies:
vite: 7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite: 7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vitest-fetch-mock@0.4.5(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)):
vitest-fetch-mock@0.4.5(vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)):
dependencies:
vitest: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vitest: 3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1):
vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2(encoding@0.1.13)))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1):
dependencies:
'@types/chai': 5.2.2
'@vitest/expect': 3.2.4
@ -24113,7 +24113,7 @@ snapshots:
optionalDependencies:
'@types/debug': 4.1.12
'@types/node': 22.18.10
happy-dom: 20.0.0
happy-dom: 20.0.2
jsdom: 26.1.0(canvas@2.11.2(encoding@0.1.13))
transitivePeerDependencies:
- jiti
@ -24129,7 +24129,7 @@ snapshots:
- tsx
- yaml
vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1):
vitest@3.2.4(@types/debug@4.1.12)(@types/node@22.18.10)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1):
dependencies:
'@types/chai': 5.2.2
'@vitest/expect': 3.2.4
@ -24157,7 +24157,7 @@ snapshots:
optionalDependencies:
'@types/debug': 4.1.12
'@types/node': 22.18.10
happy-dom: 20.0.0
happy-dom: 20.0.2
jsdom: 26.1.0(canvas@2.11.2)
transitivePeerDependencies:
- jiti
@ -24173,11 +24173,11 @@ snapshots:
- tsx
- yaml
vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.7.1)(happy-dom@20.0.0)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1):
vitest@3.2.4(@types/debug@4.1.12)(@types/node@24.7.2)(happy-dom@20.0.2)(jiti@2.6.1)(jsdom@26.1.0(canvas@2.11.2))(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1):
dependencies:
'@types/chai': 5.2.2
'@vitest/expect': 3.2.4
'@vitest/mocker': 3.2.4(vite@7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@vitest/mocker': 3.2.4(vite@7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1))
'@vitest/pretty-format': 3.2.4
'@vitest/runner': 3.2.4
'@vitest/snapshot': 3.2.4
@ -24195,13 +24195,13 @@ snapshots:
tinyglobby: 0.2.15
tinypool: 1.1.1
tinyrainbow: 2.0.0
vite: 7.1.9(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite-node: 3.2.4(@types/node@24.7.1)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite: 7.1.9(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
vite-node: 3.2.4(@types/node@24.7.2)(jiti@2.6.1)(lightningcss@1.30.1)(terser@5.43.1)(yaml@2.8.1)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/debug': 4.1.12
'@types/node': 24.7.1
happy-dom: 20.0.0
'@types/node': 24.7.2
happy-dom: 20.0.2
jsdom: 26.1.0(canvas@2.11.2)
transitivePeerDependencies:
- jiti

View file

@ -159,6 +159,7 @@ export interface SystemConfig {
ignoreCert: boolean;
host: string;
port: number;
secure: boolean;
username: string;
password: string;
};
@ -356,6 +357,7 @@ export const defaults = Object.freeze<SystemConfig>({
ignoreCert: false,
host: '',
port: 587,
secure: false,
username: '',
password: '',
},

View file

@ -463,6 +463,9 @@ class SystemConfigSmtpTransportDto {
@Max(65_535)
port!: number;
@ValidateBoolean()
secure!: boolean;
@IsString()
username!: string;

View file

@ -23,6 +23,7 @@ export type SendEmailOptions = {
export type SmtpOptions = {
host: string;
port?: number;
secure?: boolean;
username?: string;
password?: string;
ignoreCert?: boolean;

View file

@ -16,7 +16,9 @@ export async function up(db: Kysely<any>): Promise<void> {
rows: [lastMigration],
} = await lastMigrationSql.execute(db);
if (lastMigration?.name !== 'AddMissingIndex1744910873956') {
throw new Error('Invalid upgrade path. For more information, see https://immich.app/errors#typeorm-upgrade');
throw new Error(
'Invalid upgrade path. For more information, see https://docs.immich.app/errors/#typeorm-upgrade',
);
}
logger.log('Database has up to date TypeORM migrations, skipping initial Kysely migration');
return;

View file

@ -14,6 +14,7 @@ const smtpTransport = Object.freeze<SystemConfig>({
ignoreCert: false,
host: 'localhost',
port: 587,
secure: false,
username: 'test',
password: 'test',
},

View file

@ -40,6 +40,7 @@ const configs = {
ignoreCert: false,
host: 'localhost',
port: 587,
secure: false,
username: 'test',
password: 'test',
},

View file

@ -115,7 +115,7 @@ export class StorageService extends BaseService {
if (!path.startsWith(previous)) {
throw new Error(
'Detected an inconsistent media location. For more information, see https://immich.app/errors#inconsistent-media-location',
'Detected an inconsistent media location. For more information, see https://docs.immich.app/errors#inconsistent-media-location',
);
}

View file

@ -197,6 +197,7 @@ const updatedConfig = Object.freeze<SystemConfig>({
transport: {
host: '',
port: 587,
secure: false,
username: '',
password: '',
ignoreCert: false,

View file

@ -18,7 +18,7 @@
"lint:fix": "npm run lint -- --fix",
"format": "prettier --check .",
"format:fix": "prettier --write . && npm run format:i18n",
"format:i18n": "pnpx sort-json ../i18n/*.json",
"format:i18n": "pnpm dlx sort-json ../i18n/*.json",
"test": "vitest --run",
"test:cov": "vitest --coverage",
"test:watch": "vitest dev",

View file

@ -45,6 +45,7 @@
transport: {
host: config.notifications.smtp.transport.host,
port: config.notifications.smtp.transport.port,
secure: config.notifications.smtp.transport.secure,
username: config.notifications.smtp.transport.username,
password: config.notifications.smtp.transport.password,
ignoreCert: config.notifications.smtp.transport.ignoreCert,
@ -128,6 +129,13 @@
savedConfig.notifications.smtp.transport.password}
/>
<SettingSwitch
title={$t('admin.notification_email_secure')}
subtitle={$t('admin.notification_email_secure_description')}
disabled={disabled || !config.notifications.smtp.enabled}
bind:checked={config.notifications.smtp.transport.secure}
/>
<SettingSwitch
title={$t('admin.notification_email_ignore_certificate_errors')}
subtitle={$t('admin.notification_email_ignore_certificate_errors_description')}

View file

@ -0,0 +1,27 @@
<script lang="ts">
import AppDownloadModal from '$lib/modals/AppDownloadModal.svelte';
import ObtainiumConfigModal from '$lib/modals/ObtainiumConfigModal.svelte';
import { Button, HStack, modalManager } from '@immich/ui';
import { mdiCellphoneArrowDownVariant, mdiLinkEdit } from '@mdi/js';
import { t } from 'svelte-i18n';
</script>
<HStack wrap>
<Button
size="large"
shape="semi-round"
onclick={() => modalManager.show(ObtainiumConfigModal, {})}
leadingIcon={mdiLinkEdit}
>
{$t('obtainium_configurator')}
</Button>
<Button
size="large"
shape="semi-round"
onclick={() => modalManager.show(AppDownloadModal, {})}
leadingIcon={mdiCellphoneArrowDownVariant}
>
{$t('app_download_links')}
</Button>
</HStack>
<p>{$t('mobile_app_download_onboarding_note')}</p>

View file

@ -61,7 +61,7 @@
<div
bind:clientHeight={height}
class="fixed min-w-[200px] w-max max-w-[300px] overflow-hidden rounded-lg shadow-lg"
class="fixed min-w-[200px] w-max max-w-[300px] overflow-hidden rounded-lg shadow-lg z-1"
style:left="{left}px"
style:top="{top}px"
transition:slide={{ duration: 250, easing: quintOut }}

View file

@ -1,7 +1,15 @@
<script lang="ts">
import { AppRoute } from '$lib/constants';
import { Icon } from '@immich/ui';
import { mdiContentDuplicate, mdiCrosshairsGps, mdiImageSizeSelectLarge } from '@mdi/js';
import AppDownloadModal from '$lib/modals/AppDownloadModal.svelte';
import ObtainiumConfigModal from '$lib/modals/ObtainiumConfigModal.svelte';
import { Icon, modalManager } from '@immich/ui';
import {
mdiCellphoneArrowDownVariant,
mdiContentDuplicate,
mdiCrosshairsGps,
mdiImageSizeSelectLarge,
mdiLinkEdit,
} from '@mdi/js';
import { t } from 'svelte-i18n';
const links = [
@ -21,3 +29,27 @@
</a>
{/each}
</div>
<br />
<div class="border border-gray-300 dark:border-immich-dark-gray rounded-3xl pt-1 pb-6 dark:text-white">
<p class="uppercase text-xs font-medium p-4">{$t('download')}</p>
<button
type="button"
onclick={() => modalManager.show(ObtainiumConfigModal, {})}
class="w-full hover:bg-gray-100 dark:hover:bg-immich-dark-gray flex items-center gap-4 p-4"
>
<span>
<Icon icon={mdiLinkEdit} class="text-immich-primary dark:text-immich-dark-primary" size="24" />
</span>
{$t('obtainium_configurator')}
</button>
<button
type="button"
onclick={() => modalManager.show(AppDownloadModal, {})}
class="w-full hover:bg-gray-100 dark:hover:bg-immich-dark-gray flex items-center gap-4 p-4"
>
<span>
<Icon icon={mdiCellphoneArrowDownVariant} class="text-immich-primary dark:text-immich-dark-primary" size="24" />
</span>
{$t('app_download_links')}
</button>
</div>

View file

@ -0,0 +1,45 @@
<script lang="ts">
import { appStoreBadge, fdroidBadge, Modal, ModalBody, playStoreBadge } from '@immich/ui';
import { t } from 'svelte-i18n';
interface Props {
onClose: () => void;
}
let { onClose }: Props = $props();
</script>
<Modal title={$t('app_download_links')} size="large" {onClose}>
<ModalBody>
<div class="flex flex-col sm:grid sm:grid-cols-2 gap-5 text-immich-primary dark:text-immich-dark-primary">
<div>
<label class="font-medium text-immich-primary dark:text-immich-dark-primary text-sm" for="fdroid-link">
F-Droid
</label>
<a href="https://f-droid.org/packages/app.alextran.immich/" target="_blank" id="fdroid-link">
<img class="pt-2 pr-10" alt="Get it on F-Droid" src={fdroidBadge} />
</a>
</div>
<div>
<label class="font-medium text-immich-primary dark:text-immich-dark-primary text-sm" for="play-store-link">
Google Play
</label>
<a
href="https://play.google.com/store/apps/details?id=app.alextran.immich"
target="_blank"
id="play-store-link"
>
<img alt="Get it on Google Play" src={playStoreBadge} />
</a>
</div>
<div>
<label class="font-medium text-immich-primary dark:text-immich-dark-primary text-sm" for="app-store-link">
App Store
</label>
<a href="https://apps.apple.com/us/app/immich/id1613945652" target="_blank" id="app-store-link">
<img class="pt-2 pr-5" alt="Download on the App Store" src={appStoreBadge} width="90%" />
</a>
</div>
</div>
</ModalBody>
</Modal>

View file

@ -0,0 +1,94 @@
<script lang="ts">
import SettingInputField from '$lib/components/shared-components/settings/setting-input-field.svelte';
import SettingSelect from '$lib/components/shared-components/settings/setting-select.svelte';
import { SettingInputFieldType } from '$lib/constants';
import { handleError } from '$lib/utils/handle-error';
import { createApiKey, Permission } from '@immich/sdk';
import { Button, Modal, ModalBody, obtainiumBadge } from '@immich/ui';
import { t } from 'svelte-i18n';
let inputUrl = $state(location.origin);
let inputApiKey = $state('');
let archVariant = $state('');
let obtainiumLink = $derived(
`https://apps.obtainium.imranr.dev/redirect?r=obtainium://app/%7B%22id%22%3A%22app.alextran.immich%22%2C%22url%22%3A%22${inputUrl}%2Fapi%2Fserver%2Fapk-links%22%2C%22author%22%3A%22Immich%22%2C%22name%22%3A%22Immich%22%2C%22preferredApkIndex%22%3A0%2C%22additionalSettings%22%3A%22%7B%5C%22intermediateLink%5C%22%3A%5B%5D%2C%5C%22customLinkFilterRegex%5C%22%3A%5C%22%5C%22%2C%5C%22filterByLinkText%5C%22%3Afalse%2C%5C%22skipSort%5C%22%3Afalse%2C%5C%22reverseSort%5C%22%3Afalse%2C%5C%22sortByLastLinkSegment%5C%22%3Afalse%2C%5C%22versionExtractWholePage%5C%22%3Afalse%2C%5C%22requestHeader%5C%22%3A%5B%7B%5C%22requestHeader%5C%22%3A%5C%22User-Agent%3A%20Mozilla%2F5.0%20(Linux%3B%20Android%2010%3B%20K)%20AppleWebKit%2F537.36%20(KHTML%2C%20like%20Gecko)%20Chrome%2F114.0.0.0%20Mobile%20Safari%2F537.36%5C%22%7D%2C%7B%5C%22requestHeader%5C%22%3A%5C%22x-api-key%3A%20${inputApiKey}%5C%22%7D%5D%2C%5C%22defaultPseudoVersioningMethod%5C%22%3A%5C%22APKLinkHash%5C%22%2C%5C%22trackOnly%5C%22%3Afalse%2C%5C%22versionExtractionRegEx%5C%22%3A%5C%22%2Fv(%5C%5C%5C%5Cd%2B).(%5C%5C%5C%5Cd%2B).(%5C%5C%5C%5Cd%2B)%2F%5C%22%2C%5C%22matchGroupToUse%5C%22%3A%5C%22%241.%242.%243%5C%22%2C%5C%22versionDetection%5C%22%3Atrue%2C%5C%22useVersionCodeAsOSVersion%5C%22%3Afalse%2C%5C%22apkFilterRegEx%5C%22%3A%5C%22app-${archVariant}.apk%24%5C%22%2C%5C%22invertAPKFilter%5C%22%3Afalse%2C%5C%22autoApkFilterByArch%5C%22%3Atrue%2C%5C%22appName%5C%22%3A%5C%22%5C%22%2C%5C%22appAuthor%5C%22%3A%5C%22%5C%22%2C%5C%22shizukuPretendToBeGooglePlay%5C%22%3Afalse%2C%5C%22allowInsecure%5C%22%3Afalse%2C%5C%22exemptFromBackgroundUpdates%5C%22%3Afalse%2C%5C%22skipUpdateNotifications%5C%22%3Afalse%2C%5C%22about%5C%22%3A%5C%22%5C%22%2C%5C%22refreshBeforeDownload%5C%22%3Afalse%7D%22%2C%22overrideSource%22%3Anull%7D`,
);
const handleCreate = async () => {
try {
const { secret } = await createApiKey({
apiKeyCreateDto: {
name: 'Obtainium',
permissions: [Permission.ServerApkLinks],
},
});
inputApiKey = secret;
} catch (error) {
handleError(error, $t('errors.unable_to_create_api_key'));
}
};
interface Props {
onClose: () => void;
}
let { onClose }: Props = $props();
</script>
<Modal title={$t('obtainium_configurator')} size="large" {onClose}>
<ModalBody>
<div class="flex flex-col sm:grid sm:grid-cols-2 gap-5 text-immich-primary dark:text-immich-dark-primary">
<div>
<label
class="font-medium text-immich-primary dark:text-immich-dark-primary text-sm"
for="obtainium-configurator"
>
Obtainium
</label>
<div id="obtainium-configurator">
<form>
<div class="mt-2">
<SettingInputField inputType={SettingInputFieldType.TEXT} label={$t('url')} bind:value={inputUrl} />
</div>
<div class="mt-2">
<SettingInputField
inputType={SettingInputFieldType.TEXT}
label={$t('api_key')}
bind:value={inputApiKey}
/>
</div>
<div class="">
<Button shape="round" size="small" onclick={() => handleCreate()}>{$t('new_api_key')}</Button>
</div>
<div class="mt-2">
<SettingSelect
label={$t('app_architecture_variant')}
bind:value={archVariant}
options={[
{ value: 'arm64-v8a-release', text: 'arm64-v8a' },
{ value: 'armeabi-v7a-release', text: 'armeabi-v7a' },
{ value: 'release', text: 'universal' },
{ value: 'x86_64-release', text: 'x86_64' },
]}
/>
</div>
</form>
</div>
</div>
<div class="content-center">
{#if inputUrl && inputApiKey && archVariant}
<a
href={obtainiumLink}
class="underline text-sm immich-form-label"
target="_blank"
rel="noreferrer"
id="obtainium-link"
>
<img class="pt-2 pr-5" alt="Get it on Obtainium" src={obtainiumBadge} />
</a>
{:else}
<p class="immich-form-label pb-2 text-sm" id="obtainium-link">
{$t('obtainium_configurator_instructions')}
</p>
{/if}
</div>
</div>
</ModalBody>
</Modal>

View file

@ -5,6 +5,7 @@
import OnboardingCard from '$lib/components/onboarding-page/onboarding-card.svelte';
import OnboardingHello from '$lib/components/onboarding-page/onboarding-hello.svelte';
import OnboardingLocale from '$lib/components/onboarding-page/onboarding-language.svelte';
import OnboardingMobileApp from '$lib/components/onboarding-page/onboarding-mobile-app.svelte';
import OnboardingServerPrivacy from '$lib/components/onboarding-page/onboarding-server-privacy.svelte';
import OnboardingStorageTemplate from '$lib/components/onboarding-page/onboarding-storage-template.svelte';
import OnboardingTheme from '$lib/components/onboarding-page/onboarding-theme.svelte';
@ -14,7 +15,14 @@
import { retrieveServerConfig, retrieveSystemConfig, serverConfig } from '$lib/stores/server-config.store';
import { user } from '$lib/stores/user.store';
import { setUserOnboarding, updateAdminOnboarding } from '@immich/sdk';
import { mdiCloudCheckOutline, mdiHarddisk, mdiIncognito, mdiThemeLightDark, mdiTranslate } from '@mdi/js';
import {
mdiCellphoneArrowDownVariant,
mdiCloudCheckOutline,
mdiHarddisk,
mdiIncognito,
mdiThemeLightDark,
mdiTranslate,
} from '@mdi/js';
import { onMount } from 'svelte';
import { t } from 'svelte-i18n';
@ -26,6 +34,7 @@
| typeof OnboardingStorageTemplate
| typeof OnboardingServerPrivacy
| typeof OnboardingUserPrivacy
| typeof OnboardingMobileApp
| typeof OnboardingLocale;
role: OnboardingRole;
title?: string;
@ -76,6 +85,13 @@
title: $t('admin.backup_onboarding_title'),
icon: mdiCloudCheckOutline,
},
{
name: 'mobile_app',
component: OnboardingMobileApp,
role: OnboardingRole.USER,
title: $t('mobile_app'),
icon: mdiCellphoneArrowDownVariant, // or you can use mdiCellphone
},
]);
let index = $state(0);