mirror of
https://github.com/immich-app/immich.git
synced 2025-12-06 12:51:32 -08:00
Compare commits
348 Commits
fix/folder
...
v1.137.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a07531be3b | ||
|
|
3cdc6844a1 | ||
|
|
c3263e50fc | ||
|
|
7391ea6ff9 | ||
|
|
f972b8d514 | ||
|
|
6b50d958f4 | ||
|
|
27c456eb75 | ||
|
|
e7d051db3c | ||
|
|
86d31d7d29 | ||
|
|
f416342eff | ||
|
|
d73335ecbc | ||
|
|
641a3baadd | ||
|
|
f85d8add01 | ||
|
|
c278b7ad17 | ||
|
|
10e9c278ee | ||
|
|
47a025f39f | ||
|
|
749f999f2a | ||
|
|
d5a01c0310 | ||
|
|
097e132fba | ||
|
|
da5deffd03 | ||
|
|
9f20522df5 | ||
|
|
baadf9db20 | ||
|
|
4ea4ee40af | ||
|
|
d8a6552811 | ||
|
|
444133a72b | ||
|
|
29f16c6a47 | ||
|
|
268b411a6f | ||
|
|
07ed060c32 | ||
|
|
2f5d543ad9 | ||
|
|
9b65cd4d7b | ||
|
|
290e325c5c | ||
|
|
58521c9efb | ||
|
|
4cae15f28d | ||
|
|
e6ec019852 | ||
|
|
3b5e00131b | ||
|
|
a0fa7318ed | ||
|
|
2a005629a0 | ||
|
|
59a50b8697 | ||
|
|
90eac40e02 | ||
|
|
ad6f7f8089 | ||
|
|
056b262cba | ||
|
|
cfae134ecf | ||
|
|
fbbb6af27a | ||
|
|
1804a8fe58 | ||
|
|
ae1d60e259 | ||
|
|
7d759edfcc | ||
|
|
34974b036c | ||
|
|
e52b9d15b5 | ||
|
|
9b3718120b | ||
|
|
16b14b390f | ||
|
|
7e7b8da128 | ||
|
|
66ea75072d | ||
|
|
d34670bae6 | ||
|
|
1e1c2ea627 | ||
|
|
c7fcb23a23 | ||
|
|
708e42d8a3 | ||
|
|
d15f67da5d | ||
|
|
6becf409da | ||
|
|
ee4ae40d61 | ||
|
|
ebd644eedd | ||
|
|
7c36cbaf0f | ||
|
|
3a5d82f790 | ||
|
|
b14c768208 | ||
|
|
07cb2fb04e | ||
|
|
9bbad45990 | ||
|
|
e85655d34c | ||
|
|
d0576697c3 | ||
|
|
f9847bee51 | ||
|
|
f2141de5bb | ||
|
|
cb344cb014 | ||
|
|
c6b25ef111 | ||
|
|
0fdeac0417 | ||
|
|
153bb70f6e | ||
|
|
da80b69062 | ||
|
|
f9292c9c96 | ||
|
|
2e0ee6ec05 | ||
|
|
7f2e4f85f8 | ||
|
|
c63f805cb4 | ||
|
|
03a13828e1 | ||
|
|
e5ee1c8db6 | ||
|
|
25e2d37490 | ||
|
|
ed5759fe07 | ||
|
|
edefed56ae | ||
|
|
13281f8531 | ||
|
|
b48406bd20 | ||
|
|
06c78dfa91 | ||
|
|
de67d22bc0 | ||
|
|
b4780e89af | ||
|
|
ad65e9011a | ||
|
|
977c9b96ba | ||
|
|
aa2828ab33 | ||
|
|
a36840d7cc | ||
|
|
e34f46fa0d | ||
|
|
6170a3843c | ||
|
|
563e2ab503 | ||
|
|
79157e1043 | ||
|
|
02688a2a03 | ||
|
|
3b9bfceef0 | ||
|
|
089085fcdb | ||
|
|
fc68cf4f32 | ||
|
|
0051a9bba5 | ||
|
|
f27bdf7523 | ||
|
|
c1c9f30ea4 | ||
|
|
bc8cb9b671 | ||
|
|
a675922172 | ||
|
|
2bead445bd | ||
|
|
0e1c8c2b80 | ||
|
|
0174de19dd | ||
|
|
1a35a01149 | ||
|
|
08122d6871 | ||
|
|
92384c28de | ||
|
|
ab597155fa | ||
|
|
1d9cc4ca5f | ||
|
|
05d26dc683 | ||
|
|
c91382625c | ||
|
|
c7853fbe9d | ||
|
|
1a70896113 | ||
|
|
1011cdb376 | ||
|
|
f1cac122ed | ||
|
|
3c7f0a2900 | ||
|
|
277e39ac98 | ||
|
|
b3061f1e4f | ||
|
|
250548dea6 | ||
|
|
ac44f6d1e0 | ||
|
|
ab61bcfcc8 | ||
|
|
aa344a3989 | ||
|
|
2efca67217 | ||
|
|
97daf42fd5 | ||
|
|
5548033cae | ||
|
|
637eba6e08 | ||
|
|
f16457d2f9 | ||
|
|
7b41c6348c | ||
|
|
bd92f6b12d | ||
|
|
496b0c7076 | ||
|
|
166452640d | ||
|
|
30f6dc3a6e | ||
|
|
02c423b326 | ||
|
|
df318ac641 | ||
|
|
826eaedae6 | ||
|
|
737e768212 | ||
|
|
99e5b33969 | ||
|
|
7ea8783593 | ||
|
|
4d27f187ea | ||
|
|
1dc62fce5f | ||
|
|
5fc4393e7a | ||
|
|
dee6d072fb | ||
|
|
261818ddd9 | ||
|
|
fafb88d31c | ||
|
|
f929dc0816 | ||
|
|
9e94f52b05 | ||
|
|
5d244c6fec | ||
|
|
dcfe8d5ade | ||
|
|
635f5de186 | ||
|
|
9719965caf | ||
|
|
f33e1ad94c | ||
|
|
576f681b5c | ||
|
|
493d85b021 | ||
|
|
f32d4f15b6 | ||
|
|
7bae49ebd5 | ||
|
|
2e63b9d951 | ||
|
|
137f0d48c0 | ||
|
|
53acf08263 | ||
|
|
f32cd74232 | ||
|
|
546f841b2c | ||
|
|
8491fe459d | ||
|
|
2046dcc5b4 | ||
|
|
03ff425664 | ||
|
|
055b930066 | ||
|
|
531515daf9 | ||
|
|
b256c51b6b | ||
|
|
238dc7c085 | ||
|
|
184c7390a1 | ||
|
|
649221176c | ||
|
|
eae2471ab5 | ||
|
|
bfceed15da | ||
|
|
d9891f759e | ||
|
|
32f23b8d38 | ||
|
|
743b6644e9 | ||
|
|
34620e1e9a | ||
|
|
bcb968e3d1 | ||
|
|
e73abe0762 | ||
|
|
920d7de349 | ||
|
|
351701c4d6 | ||
|
|
68f249bc03 | ||
|
|
eca54871d0 | ||
|
|
b359eea124 | ||
|
|
c18f167e29 | ||
|
|
ba262fbaa8 | ||
|
|
59e7754bdc | ||
|
|
0acbf1199a | ||
|
|
daea57f7d2 | ||
|
|
82c3165247 | ||
|
|
3a854d77ac | ||
|
|
ccd0c35ca1 | ||
|
|
5f10a4cae7 | ||
|
|
9abb95d34a | ||
|
|
805ec3e351 | ||
|
|
a97ba4862f | ||
|
|
c699df002a | ||
|
|
33c29e4305 | ||
|
|
b0098d6d23 | ||
|
|
04aab6ecce | ||
|
|
47c0dc0d7e | ||
|
|
df581cc0d5 | ||
|
|
9e48ae3052 | ||
|
|
1d19d308e2 | ||
|
|
de4217cefc | ||
|
|
617a2f146d | ||
|
|
2b07d7ac63 | ||
|
|
1cc5ca14ca | ||
|
|
a625921e8f | ||
|
|
a17bba3328 | ||
|
|
4b3a4725c6 | ||
|
|
34f0f6c813 | ||
|
|
906d14c172 | ||
|
|
d087f7c870 | ||
|
|
de345a9524 | ||
|
|
badd7ea2a9 | ||
|
|
7d8f56b483 | ||
|
|
70b73145f1 | ||
|
|
d178c52ba6 | ||
|
|
55fe67dd20 | ||
|
|
ed4c7817e7 | ||
|
|
39c95f1280 | ||
|
|
4ddd3764b4 | ||
|
|
68db17028b | ||
|
|
1f50a0075e | ||
|
|
b19884d01e | ||
|
|
feff1899ee | ||
|
|
977d6452f6 | ||
|
|
f778adea92 | ||
|
|
818bdde317 | ||
|
|
fd48a33686 | ||
|
|
a918481c0b | ||
|
|
a201665b7e | ||
|
|
2a222fcfba | ||
|
|
d902e7f87d | ||
|
|
6278fe43c0 | ||
|
|
dfe6d27bbd | ||
|
|
51ab7498e9 | ||
|
|
4db76ddcf0 | ||
|
|
d03eb87058 | ||
|
|
a556de67b0 | ||
|
|
e703685d8d | ||
|
|
172388c455 | ||
|
|
df4a27e8a7 | ||
|
|
1f9813a28e | ||
|
|
bbfff45058 | ||
|
|
87dd09d103 | ||
|
|
dd94ad17aa | ||
|
|
a87c2e82cd | ||
|
|
a11ab4c3f7 | ||
|
|
ebf2f9fd7b | ||
|
|
683af67344 | ||
|
|
d149d6fa3f | ||
|
|
8c5269c002 | ||
|
|
cf91d9bdfc | ||
|
|
5579554532 | ||
|
|
7e35e6985e | ||
|
|
56756baea2 | ||
|
|
d5923241b5 | ||
|
|
cc471806fe | ||
|
|
4ce9bce414 | ||
|
|
2f5d75ce21 | ||
|
|
fb384fe90b | ||
|
|
73733370a2 | ||
|
|
4a2cf28882 | ||
|
|
181efb9010 | ||
|
|
b00d44a00c | ||
|
|
6044663e26 | ||
|
|
484529e61e | ||
|
|
445f9174ea | ||
|
|
7855974a29 | ||
|
|
ec603a008c | ||
|
|
14276f41d8 | ||
|
|
a644cabab6 | ||
|
|
b8e67d0ef9 | ||
|
|
ca78bc91b6 | ||
|
|
f2f3db3a79 | ||
|
|
c435bdb5d3 | ||
|
|
15da0d5a71 | ||
|
|
090d87f82e | ||
|
|
25efba8fe6 | ||
|
|
83afd49f5c | ||
|
|
639ede78c2 | ||
|
|
15be3437bf | ||
|
|
f59b0bab5a | ||
|
|
fa418d778b | ||
|
|
e0c4b8df6f | ||
|
|
7f9689b4bc | ||
|
|
e6f8bfdf5e | ||
|
|
8ccca04e27 | ||
|
|
53f80393bf | ||
|
|
e5e857edc3 | ||
|
|
590f96246d | ||
|
|
38d73f2bc6 | ||
|
|
96e3b96d57 | ||
|
|
36b018e355 | ||
|
|
214ca50406 | ||
|
|
29b3981609 | ||
|
|
a068a41c06 | ||
|
|
3c6e9e1191 | ||
|
|
db0415bbcc | ||
|
|
a5c431fbf5 | ||
|
|
a3d588f6bd | ||
|
|
21f500191a | ||
|
|
5011636d95 | ||
|
|
3f330c6476 | ||
|
|
bb8755021d | ||
|
|
93f9e118ad | ||
|
|
58ca1402ed | ||
|
|
32a7087883 | ||
|
|
53020852ec | ||
|
|
181a7e115f | ||
|
|
095ace8687 | ||
|
|
4c3fcdc745 | ||
|
|
fa5f30d9ca | ||
|
|
e60bc3c304 | ||
|
|
09cbc5d3f4 | ||
|
|
a2a9797fab | ||
|
|
3d35e65f27 | ||
|
|
df76735f4a | ||
|
|
6feca56da8 | ||
|
|
97aabe466e | ||
|
|
72a53f43c8 | ||
|
|
30b4f334d8 | ||
|
|
6c6a32c63e | ||
|
|
6fed223405 | ||
|
|
3105094a3d | ||
|
|
b96c95beda | ||
|
|
926ff075a3 | ||
|
|
934649c8df | ||
|
|
a43159f4ba | ||
|
|
ea3a14ed25 | ||
|
|
24a4cba953 | ||
|
|
fda22c83b9 | ||
|
|
2a8019726c | ||
|
|
5f76cdddc7 | ||
|
|
48be10e48b | ||
|
|
6c11ef62e8 | ||
|
|
65dce58aa4 | ||
|
|
64cc7239fe | ||
|
|
5f89c2d111 | ||
|
|
4621ec5ea2 | ||
|
|
881a96cdf9 | ||
|
|
b001ba44f5 | ||
|
|
afb444c92c | ||
|
|
027c4a8b34 |
@@ -11,8 +11,8 @@ services:
|
||||
- open_api_node_modules:/workspaces/immich/open-api/typescript-sdk/node_modules
|
||||
- server_node_modules:/workspaces/immich/server/node_modules
|
||||
- web_node_modules:/workspaces/immich/web/node_modules
|
||||
- ${UPLOAD_LOCATION}/photos:/workspaces/immich/server/upload
|
||||
- ${UPLOAD_LOCATION}/photos/upload:/workspaces/immich/server/upload/upload
|
||||
- ${UPLOAD_LOCATION}/photos:/data
|
||||
- ${UPLOAD_LOCATION}/photos/upload:/data/upload
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
|
||||
database:
|
||||
|
||||
@@ -73,10 +73,8 @@ install_dependencies() {
|
||||
log "Installing dependencies"
|
||||
(
|
||||
cd "${IMMICH_WORKSPACE}" || exit 1
|
||||
run_cmd make ci-server
|
||||
run_cmd make ci-sdk
|
||||
run_cmd make build-sdk
|
||||
run_cmd make ci-web
|
||||
export CI=1 FROZEN=1 OFFLINE=1
|
||||
run_cmd make setup-web-dev setup-server-dev
|
||||
)
|
||||
log ""
|
||||
}
|
||||
|
||||
@@ -13,8 +13,8 @@ services:
|
||||
- open_api_node_modules:/workspaces/immich/open-api/typescript-sdk/node_modules
|
||||
- server_node_modules:/workspaces/immich/server/node_modules
|
||||
- web_node_modules:/workspaces/immich/web/node_modules
|
||||
- ${UPLOAD_LOCATION:-upload1-devcontainer-volume}${UPLOAD_LOCATION:+/photos}:/workspaces/immich/server/upload
|
||||
- ${UPLOAD_LOCATION:-upload2-devcontainer-volume}${UPLOAD_LOCATION:+/photos/upload}:/workspaces/immich/server/upload/upload
|
||||
- ${UPLOAD_LOCATION:-upload1-devcontainer-volume}${UPLOAD_LOCATION:+/photos}:/data
|
||||
- ${UPLOAD_LOCATION:-upload2-devcontainer-volume}${UPLOAD_LOCATION:+/photos/upload}:/data/upload
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
|
||||
immich-web:
|
||||
@@ -22,7 +22,7 @@ services:
|
||||
|
||||
immich-machine-learning:
|
||||
env_file: !reset []
|
||||
|
||||
|
||||
database:
|
||||
env_file: !reset []
|
||||
environment: !override
|
||||
@@ -31,7 +31,7 @@ services:
|
||||
POSTGRES_DB: ${DB_DATABASE_NAME-immich}
|
||||
POSTGRES_INITDB_ARGS: '--data-checksums'
|
||||
POSTGRES_HOST_AUTH_METHOD: md5
|
||||
volumes:
|
||||
volumes:
|
||||
- ${UPLOAD_LOCATION:-postgres-devcontainer-volume}${UPLOAD_LOCATION:+/postgres}:/var/lib/postgresql/data
|
||||
|
||||
redis:
|
||||
|
||||
@@ -1,37 +1,41 @@
|
||||
.vscode/
|
||||
.github/
|
||||
.git/
|
||||
.env*
|
||||
*.log
|
||||
*.tmp
|
||||
*.temp
|
||||
|
||||
**/Dockerfile
|
||||
**/node_modules/
|
||||
**/.pnpm-store/
|
||||
**/dist/
|
||||
**/coverage/
|
||||
**/build/
|
||||
|
||||
design/
|
||||
docker/
|
||||
!docker/scripts
|
||||
|
||||
docs/
|
||||
!docs/package.json
|
||||
!docs/package-lock.json
|
||||
|
||||
e2e/
|
||||
!e2e/package.json
|
||||
!e2e/package-lock.json
|
||||
|
||||
fastlane/
|
||||
machine-learning/
|
||||
misc/
|
||||
mobile/
|
||||
|
||||
cli/coverage/
|
||||
cli/dist/
|
||||
cli/node_modules/
|
||||
|
||||
open-api/typescript-sdk/build/
|
||||
open-api/typescript-sdk/node_modules/
|
||||
!open-api/typescript-sdk/package.json
|
||||
!open-api/typescript-sdk/package-lock.json
|
||||
|
||||
server/coverage/
|
||||
server/node_modules/
|
||||
server/upload/
|
||||
server/src/queries
|
||||
server/dist/
|
||||
server/www/
|
||||
|
||||
web/node_modules/
|
||||
web/coverage/
|
||||
web/.svelte-kit
|
||||
web/build/
|
||||
web/.env
|
||||
|
||||
6
.gitattributes
vendored
6
.gitattributes
vendored
@@ -12,6 +12,12 @@ mobile/lib/**/*.drift.dart linguist-generated=true
|
||||
mobile/drift_schemas/main/drift_schema_*.json -diff -merge
|
||||
mobile/drift_schemas/main/drift_schema_*.json linguist-generated=true
|
||||
|
||||
mobile/lib/infrastructure/repositories/db.repository.steps.dart -diff -merge
|
||||
mobile/lib/infrastructure/repositories/db.repository.steps.dart linguist-generated=true
|
||||
|
||||
mobile/test/drift/main/generated/** -diff -merge
|
||||
mobile/test/drift/main/generated/** linguist-generated=true
|
||||
|
||||
open-api/typescript-sdk/fetch-client.ts -diff -merge
|
||||
open-api/typescript-sdk/fetch-client.ts linguist-generated=true
|
||||
|
||||
|
||||
2
.github/.nvmrc
vendored
2
.github/.nvmrc
vendored
@@ -1 +1 @@
|
||||
22.16.0
|
||||
22.17.1
|
||||
|
||||
4
.github/.prettierignore
vendored
Normal file
4
.github/.prettierignore
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
# Ignore files for PNPM, NPM and YARN
|
||||
pnpm-lock.yaml
|
||||
package-lock.json
|
||||
yarn.lock
|
||||
6
.github/package-lock.json
generated
vendored
6
.github/package-lock.json
generated
vendored
@@ -9,9 +9,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/prettier": {
|
||||
"version": "3.5.3",
|
||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.5.3.tgz",
|
||||
"integrity": "sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==",
|
||||
"version": "3.6.2",
|
||||
"resolved": "https://registry.npmjs.org/prettier/-/prettier-3.6.2.tgz",
|
||||
"integrity": "sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"bin": {
|
||||
|
||||
54
.github/workflows/build-mobile.yml
vendored
54
.github/workflows/build-mobile.yml
vendored
@@ -58,7 +58,7 @@ jobs:
|
||||
contents: read
|
||||
# Skip when PR from a fork
|
||||
if: ${{ !github.event.pull_request.head.repo.fork && github.actor != 'dependabot[bot]' && needs.pre-job.outputs.should_run == 'true' }}
|
||||
runs-on: macos-14
|
||||
runs-on: mich
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
@@ -66,24 +66,40 @@ jobs:
|
||||
ref: ${{ inputs.ref || github.sha }}
|
||||
persist-credentials: false
|
||||
|
||||
- name: Create the Keystore
|
||||
env:
|
||||
KEY_JKS: ${{ secrets.KEY_JKS }}
|
||||
working-directory: ./mobile
|
||||
run: printf "%s" $KEY_JKS | base64 -d > android/key.jks
|
||||
|
||||
- uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
|
||||
with:
|
||||
distribution: 'zulu'
|
||||
java-version: '17'
|
||||
cache: 'gradle'
|
||||
|
||||
- name: Restore Gradle Cache
|
||||
id: cache-gradle-restore
|
||||
uses: actions/cache/restore@5a3ec84eff668545956fd18022155c47e93e2684 # v4
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
~/.android/sdk
|
||||
mobile/android/.gradle
|
||||
mobile/.dart_tool
|
||||
key: build-mobile-gradle-${{ runner.os }}-main
|
||||
|
||||
- name: Setup Flutter SDK
|
||||
uses: subosito/flutter-action@395322a6cded4e9ed503aebd4cc1965625f8e59a # v2.20.0
|
||||
uses: subosito/flutter-action@fd55f4c5af5b953cc57a2be44cb082c8f6635e8e # v2.21.0
|
||||
with:
|
||||
channel: 'stable'
|
||||
flutter-version-file: ./mobile/pubspec.yaml
|
||||
cache: true
|
||||
|
||||
- name: Create the Keystore
|
||||
env:
|
||||
KEY_JKS: ${{ secrets.KEY_JKS }}
|
||||
working-directory: ./mobile
|
||||
run: echo $KEY_JKS | base64 -d > android/key.jks
|
||||
- name: Setup Android SDK
|
||||
uses: android-actions/setup-android@9fc6c4e9069bf8d3d10b2204b1fb8f6ef7065407 # v3.2.2
|
||||
with:
|
||||
packages: ''
|
||||
|
||||
- name: Get Packages
|
||||
working-directory: ./mobile
|
||||
@@ -103,12 +119,30 @@ jobs:
|
||||
ALIAS: ${{ secrets.ALIAS }}
|
||||
ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD }}
|
||||
ANDROID_STORE_PASSWORD: ${{ secrets.ANDROID_STORE_PASSWORD }}
|
||||
IS_MAIN: ${{ github.ref == 'refs/heads/main' }}
|
||||
run: |
|
||||
flutter build apk --release
|
||||
flutter build apk --release --split-per-abi --target-platform android-arm,android-arm64,android-x64
|
||||
if [[ $IS_MAIN == 'true' ]]; then
|
||||
flutter build apk --release
|
||||
flutter build apk --release --split-per-abi --target-platform android-arm,android-arm64,android-x64
|
||||
else
|
||||
flutter build apk --debug --split-per-abi --target-platform android-arm64
|
||||
fi
|
||||
|
||||
- name: Publish Android Artifact
|
||||
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
|
||||
with:
|
||||
name: release-apk-signed
|
||||
path: mobile/build/app/outputs/flutter-apk/*.apk
|
||||
|
||||
- name: Save Gradle Cache
|
||||
id: cache-gradle-save
|
||||
uses: actions/cache/save@5a3ec84eff668545956fd18022155c47e93e2684 # v4
|
||||
if: github.ref == 'refs/heads/main'
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
~/.android/sdk
|
||||
mobile/android/.gradle
|
||||
mobile/.dart_tool
|
||||
key: ${{ steps.cache-gradle-restore.outputs.cache-primary-key }}
|
||||
|
||||
6
.github/workflows/codeql-analysis.yml
vendored
6
.github/workflows/codeql-analysis.yml
vendored
@@ -50,7 +50,7 @@ jobs:
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # v3.29.0
|
||||
uses: github/codeql-action/init@4e828ff8d448a8a6e532957b1811f387a63867e8 # v3.29.4
|
||||
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@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # v3.29.0
|
||||
uses: github/codeql-action/autobuild@4e828ff8d448a8a6e532957b1811f387a63867e8 # v3.29.4
|
||||
|
||||
# тД╣я╕П 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@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # v3.29.0
|
||||
uses: github/codeql-action/analyze@4e828ff8d448a8a6e532957b1811f387a63867e8 # v3.29.4
|
||||
with:
|
||||
category: '/language:${{matrix.language}}'
|
||||
|
||||
4
.github/workflows/docker.yml
vendored
4
.github/workflows/docker.yml
vendored
@@ -131,7 +131,7 @@ jobs:
|
||||
tag-suffix: '-rocm'
|
||||
platforms: linux/amd64
|
||||
runner-mapping: '{"linux/amd64": "mich"}'
|
||||
uses: immich-app/devtools/.github/workflows/multi-runner-build.yml@094bfb927b8cd75b343abaac27b3241be0fccfe9 # multi-runner-build-workflow-0.1.0
|
||||
uses: immich-app/devtools/.github/workflows/multi-runner-build.yml@129aeda75a450666ce96e8bc8126652e717917a7 # multi-runner-build-workflow-0.1.1
|
||||
permissions:
|
||||
contents: read
|
||||
actions: read
|
||||
@@ -154,7 +154,7 @@ jobs:
|
||||
name: Build and Push Server
|
||||
needs: pre-job
|
||||
if: ${{ needs.pre-job.outputs.should_run_server == 'true' }}
|
||||
uses: immich-app/devtools/.github/workflows/multi-runner-build.yml@094bfb927b8cd75b343abaac27b3241be0fccfe9 # multi-runner-build-workflow-0.1.0
|
||||
uses: immich-app/devtools/.github/workflows/multi-runner-build.yml@129aeda75a450666ce96e8bc8126652e717917a7 # multi-runner-build-workflow-0.1.1
|
||||
permissions:
|
||||
contents: read
|
||||
actions: read
|
||||
|
||||
4
.github/workflows/docs-build.yml
vendored
4
.github/workflows/docs-build.yml
vendored
@@ -18,7 +18,7 @@ jobs:
|
||||
permissions:
|
||||
contents: read
|
||||
outputs:
|
||||
should_run: ${{ steps.found_paths.outputs.docs == 'true' || steps.should_force.outputs.should_force == 'true' }}
|
||||
should_run: ${{ steps.found_paths.outputs.docs == 'true' || steps.found_paths.outputs.open-api == 'true' || steps.should_force.outputs.should_force == 'true' }}
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
@@ -32,6 +32,8 @@ jobs:
|
||||
- 'docs/**'
|
||||
workflow:
|
||||
- '.github/workflows/docs-build.yml'
|
||||
open-api:
|
||||
- 'open-api/immich-openapi-specs.json'
|
||||
- name: Check if we should force jobs to run
|
||||
id: should_force
|
||||
run: echo "should_force=${{ steps.found_paths.outputs.workflow == 'true' || github.event_name == 'release' || github.ref_name == 'main' }}" >> "$GITHUB_OUTPUT"
|
||||
|
||||
13
.github/workflows/org-checks.yml
vendored
Normal file
13
.github/workflows/org-checks.yml
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
name: Org Checks
|
||||
|
||||
on:
|
||||
pull_request_review:
|
||||
pull_request:
|
||||
|
||||
jobs:
|
||||
check-approvals:
|
||||
name: Check for Team/Admin Review
|
||||
uses: immich-app/devtools/.github/workflows/required-approval.yml@main
|
||||
permissions:
|
||||
pull-requests: read
|
||||
contents: read
|
||||
2
.github/workflows/pr-label-validation.yml
vendored
2
.github/workflows/pr-label-validation.yml
vendored
@@ -14,7 +14,7 @@ jobs:
|
||||
pull-requests: write
|
||||
steps:
|
||||
- name: Require PR to have a changelog label
|
||||
uses: mheap/github-action-required-labels@fb29a14a076b0f74099f6198f77750e8fc236016 # v5.5.0
|
||||
uses: mheap/github-action-required-labels@8afbe8ae6ab7647d0c9f0cfa7c2f939650d22509 # v5.5.1
|
||||
with:
|
||||
mode: exactly
|
||||
count: 1
|
||||
|
||||
31
.github/workflows/static_analysis.yml
vendored
31
.github/workflows/static_analysis.yml
vendored
@@ -42,6 +42,9 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
defaults:
|
||||
run:
|
||||
working-directory: ./mobile
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
@@ -49,34 +52,29 @@ jobs:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup Flutter SDK
|
||||
uses: subosito/flutter-action@395322a6cded4e9ed503aebd4cc1965625f8e59a # v2.20.0
|
||||
uses: subosito/flutter-action@fd55f4c5af5b953cc57a2be44cb082c8f6635e8e # v2.21.0
|
||||
with:
|
||||
channel: 'stable'
|
||||
flutter-version-file: ./mobile/pubspec.yaml
|
||||
|
||||
- name: Install dependencies
|
||||
run: dart pub get
|
||||
working-directory: ./mobile
|
||||
|
||||
- name: Install DCM
|
||||
run: |
|
||||
sudo apt-get update
|
||||
wget -qO- https://dcm.dev/pgp-key.public | sudo gpg --dearmor -o /usr/share/keyrings/dcm.gpg
|
||||
echo 'deb [signed-by=/usr/share/keyrings/dcm.gpg arch=amd64] https://dcm.dev/debian stable main' | sudo tee /etc/apt/sources.list.d/dart_stable.list
|
||||
sudo apt-get update
|
||||
sudo apt-get install dcm
|
||||
uses: CQLabs/setup-dcm@8697ae0790c0852e964a6ef1d768d62a6675481a # v2.0.1
|
||||
with:
|
||||
github-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
version: auto
|
||||
working-directory: ./mobile
|
||||
|
||||
- name: Generate translation file
|
||||
run: make translation
|
||||
working-directory: ./mobile
|
||||
|
||||
- name: Run Build Runner
|
||||
run: make build
|
||||
working-directory: ./mobile
|
||||
|
||||
- name: Generate platform API
|
||||
run: make pigeon
|
||||
working-directory: ./mobile
|
||||
|
||||
- name: Find file changes
|
||||
uses: tj-actions/verify-changed-files@a1c6acee9df209257a246f2cc6ae8cb6581c1edf # v20.0.4
|
||||
@@ -92,25 +90,22 @@ jobs:
|
||||
env:
|
||||
CHANGED_FILES: ${{ steps.verify-changed-files.outputs.changed_files }}
|
||||
run: |
|
||||
echo "ERROR: Generated files not up to date! Run make_build inside the mobile directory"
|
||||
echo "ERROR: Generated files not up to date! Run 'make build' and 'make pigeon' inside the mobile directory"
|
||||
echo "Changed files: ${CHANGED_FILES}"
|
||||
exit 1
|
||||
|
||||
- name: Run dart analyze
|
||||
run: dart analyze --fatal-infos
|
||||
working-directory: ./mobile
|
||||
|
||||
- name: Run dart format
|
||||
run: dart format lib/ --set-exit-if-changed
|
||||
working-directory: ./mobile
|
||||
run: make format
|
||||
|
||||
- name: Run dart custom_lint
|
||||
run: dart run custom_lint
|
||||
working-directory: ./mobile
|
||||
|
||||
# TODO: Use https://github.com/CQLabs/dcm-action
|
||||
- name: Run DCM
|
||||
run: dcm analyze lib --fatal-style --fatal-warnings
|
||||
working-directory: ./mobile
|
||||
|
||||
zizmor:
|
||||
name: zizmor
|
||||
@@ -134,7 +129,7 @@ jobs:
|
||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Upload SARIF file
|
||||
uses: github/codeql-action/upload-sarif@ce28f5bb42b7a9f2c824e633a3f6ee835bab6858 # v3.29.0
|
||||
uses: github/codeql-action/upload-sarif@4e828ff8d448a8a6e532957b1811f387a63867e8 # v3.29.4
|
||||
with:
|
||||
sarif_file: results.sarif
|
||||
category: zizmor
|
||||
|
||||
6
.github/workflows/test.yml
vendored
6
.github/workflows/test.yml
vendored
@@ -516,7 +516,7 @@ jobs:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Setup Flutter SDK
|
||||
uses: subosito/flutter-action@395322a6cded4e9ed503aebd4cc1965625f8e59a # v2.20.0
|
||||
uses: subosito/flutter-action@fd55f4c5af5b953cc57a2be44cb082c8f6635e8e # v2.21.0
|
||||
with:
|
||||
channel: 'stable'
|
||||
flutter-version-file: ./mobile/pubspec.yaml
|
||||
@@ -609,7 +609,7 @@ jobs:
|
||||
persist-credentials: false
|
||||
|
||||
- name: Run ShellCheck
|
||||
uses: ludeeus/action-shellcheck@master
|
||||
uses: ludeeus/action-shellcheck@00cae500b08a931fb5698e11e79bfbd38e612a38 # 2.0.0
|
||||
with:
|
||||
ignore_paths: >-
|
||||
**/open-api/**
|
||||
@@ -668,7 +668,7 @@ jobs:
|
||||
contents: read
|
||||
services:
|
||||
postgres:
|
||||
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3@sha256:1f5583fe3397210a0fbc7f11b0cec18bacc4a99e3e8ea0548e9bd6bcf26ec37a
|
||||
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3@sha256:ec713143dca1a426eba2e03707c319e2ec3cc9d304ef767f777f8e297dee820c
|
||||
env:
|
||||
POSTGRES_PASSWORD: postgres
|
||||
POSTGRES_USER: postgres
|
||||
|
||||
2
.github/workflows/weblate-lock.yml
vendored
2
.github/workflows/weblate-lock.yml
vendored
@@ -38,7 +38,7 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
- name: Find Pull Request
|
||||
uses: juliangruber/find-pull-request-action@48b6133aa6c826f267ebd33aa2d29470f9d9e7d0 # v1.9.0
|
||||
uses: juliangruber/find-pull-request-action@952b3bb1ddb2dcc0aa3479e98bb1c2d1a922f096 # v1.10.0
|
||||
id: find-pr
|
||||
with:
|
||||
branch: chore/translations
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -24,3 +24,4 @@ mobile/android/fastlane/report.xml
|
||||
mobile/ios/fastlane/report.xml
|
||||
|
||||
vite.config.js.timestamp-*
|
||||
.pnpm-store
|
||||
|
||||
4
.vscode/launch.json
vendored
4
.vscode/launch.json
vendored
@@ -7,7 +7,7 @@
|
||||
"restart": true,
|
||||
"port": 9231,
|
||||
"name": "Immich API Server",
|
||||
"remoteRoot": "/usr/src/app",
|
||||
"remoteRoot": "/usr/src/app/server",
|
||||
"localRoot": "${workspaceFolder}/server"
|
||||
},
|
||||
{
|
||||
@@ -16,7 +16,7 @@
|
||||
"restart": true,
|
||||
"port": 9230,
|
||||
"name": "Immich Workers",
|
||||
"remoteRoot": "/usr/src/app",
|
||||
"remoteRoot": "/usr/src/app/server",
|
||||
"localRoot": "${workspaceFolder}/server"
|
||||
}
|
||||
]
|
||||
|
||||
29
Makefile
29
Makefile
@@ -1,27 +1,33 @@
|
||||
dev:
|
||||
docker compose -f ./docker/docker-compose.dev.yml up --remove-orphans || make dev-down
|
||||
@trap 'make dev-down' EXIT; COMPOSE_BAKE=true docker compose -f ./docker/docker-compose.dev.yml up --remove-orphans
|
||||
|
||||
dev-down:
|
||||
docker compose -f ./docker/docker-compose.dev.yml down --remove-orphans
|
||||
|
||||
dev-update:
|
||||
docker compose -f ./docker/docker-compose.dev.yml up --build -V --remove-orphans
|
||||
@trap 'make dev-down' EXIT; COMPOSE_BAKE=true docker compose -f ./docker/docker-compose.dev.yml up --build -V --remove-orphans
|
||||
|
||||
dev-scale:
|
||||
docker compose -f ./docker/docker-compose.dev.yml up --build -V --scale immich-server=3 --remove-orphans
|
||||
@trap 'make dev-down' EXIT; COMPOSE_BAKE=true docker compose -f ./docker/docker-compose.dev.yml up --build -V --scale immich-server=3 --remove-orphans
|
||||
|
||||
.PHONY: e2e
|
||||
e2e:
|
||||
docker compose -f ./e2e/docker-compose.yml up --build -V --remove-orphans
|
||||
@trap 'make e2e-down' EXIT; COMPOSE_BAKE=true docker compose -f ./e2e/docker-compose.yml up --build -V --remove-orphans
|
||||
|
||||
e2e-update:
|
||||
@trap 'make e2e-down' EXIT; COMPOSE_BAKE=true docker compose -f ./e2e/docker-compose.yml up --build -V --remove-orphans
|
||||
|
||||
e2e-down:
|
||||
docker compose -f ./e2e/docker-compose.yml down --remove-orphans
|
||||
|
||||
prod:
|
||||
docker compose -f ./docker/docker-compose.prod.yml up --build -V --remove-orphans
|
||||
@trap 'make prod-down' EXIT; COMPOSE_BAKE=true docker compose -f ./docker/docker-compose.prod.yml up --build -V --remove-orphans
|
||||
|
||||
prod-down:
|
||||
docker compose -f ./docker/docker-compose.prod.yml down --remove-orphans
|
||||
|
||||
prod-scale:
|
||||
docker compose -f ./docker/docker-compose.prod.yml up --build -V --scale immich-server=3 --scale immich-microservices=3 --remove-orphans
|
||||
@trap 'make prod-down' EXIT; COMPOSE_BAKE=true docker compose -f ./docker/docker-compose.prod.yml up --build -V --scale immich-server=3 --scale immich-microservices=3 --remove-orphans
|
||||
|
||||
.PHONY: open-api
|
||||
open-api:
|
||||
@@ -83,7 +89,7 @@ test-medium-dev:
|
||||
docker exec -it immich_server /bin/sh -c "npm run test:medium"
|
||||
|
||||
build-all: $(foreach M,$(filter-out e2e .github,$(MODULES)),build-$M) ;
|
||||
install-all: $(foreach M,$(filter-out .github,$(MODULES)),install-$M) ;
|
||||
install-all: $(foreach M,$(MODULES),install-$M) ;
|
||||
ci-all: $(foreach M,$(filter-out .github,$(MODULES)),ci-$M) ;
|
||||
check-all: $(foreach M,$(filter-out sdk cli docs .github,$(MODULES)),check-$M) ;
|
||||
lint-all: $(foreach M,$(filter-out sdk docs .github,$(MODULES)),lint-$M) ;
|
||||
@@ -93,9 +99,12 @@ hygiene-all: lint-all format-all check-all sql audit-all;
|
||||
test-all: $(foreach M,$(filter-out sdk docs .github,$(MODULES)),test-$M) ;
|
||||
|
||||
clean:
|
||||
find . -name "node_modules" -type d -prune -exec rm -rf '{}' +
|
||||
find . -name "node_modules" -type d -prune -exec rm -rf {} +
|
||||
find . -name "dist" -type d -prune -exec rm -rf '{}' +
|
||||
find . -name "build" -type d -prune -exec rm -rf '{}' +
|
||||
find . -name "svelte-kit" -type d -prune -exec rm -rf '{}' +
|
||||
docker compose -f ./docker/docker-compose.dev.yml rm -v -f || true
|
||||
docker compose -f ./e2e/docker-compose.yml rm -v -f || true
|
||||
command -v docker >/dev/null 2>&1 && docker compose -f ./docker/docker-compose.dev.yml rm -v -f || true
|
||||
command -v docker >/dev/null 2>&1 && docker compose -f ./e2e/docker-compose.yml rm -v -f || true
|
||||
|
||||
setup-server-dev: install-server
|
||||
setup-web-dev: install-sdk build-sdk install-web
|
||||
|
||||
@@ -1 +1 @@
|
||||
22.16.0
|
||||
22.17.1
|
||||
|
||||
2
cli/bin/immich
Executable file
2
cli/bin/immich
Executable file
@@ -0,0 +1,2 @@
|
||||
#!/usr/bin/env node
|
||||
import '../dist/index.js';
|
||||
571
cli/package-lock.json
generated
571
cli/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"name": "@immich/cli",
|
||||
"version": "2.2.72",
|
||||
"version": "2.2.75",
|
||||
"description": "Command Line Interface (CLI) for Immich",
|
||||
"type": "module",
|
||||
"exports": "./dist/index.js",
|
||||
"bin": {
|
||||
"immich": "dist/index.js"
|
||||
"immich": "./bin/immich"
|
||||
},
|
||||
"license": "GNU Affero General Public License version 3",
|
||||
"keywords": [
|
||||
@@ -21,13 +21,13 @@
|
||||
"@types/lodash-es": "^4.17.12",
|
||||
"@types/micromatch": "^4.0.9",
|
||||
"@types/mock-fs": "^4.13.1",
|
||||
"@types/node": "^22.15.32",
|
||||
"@types/node": "^22.16.5",
|
||||
"@vitest/coverage-v8": "^3.0.0",
|
||||
"byte-size": "^9.0.0",
|
||||
"cli-progress": "^3.12.0",
|
||||
"commander": "^12.0.0",
|
||||
"eslint": "^9.14.0",
|
||||
"eslint-config-prettier": "^10.0.0",
|
||||
"eslint-config-prettier": "^10.1.8",
|
||||
"eslint-plugin-prettier": "^5.1.3",
|
||||
"eslint-plugin-unicorn": "^59.0.0",
|
||||
"globals": "^16.0.0",
|
||||
@@ -36,7 +36,7 @@
|
||||
"prettier-plugin-organize-imports": "^4.0.0",
|
||||
"typescript": "^5.3.3",
|
||||
"typescript-eslint": "^8.28.0",
|
||||
"vite": "^6.0.0",
|
||||
"vite": "^7.0.0",
|
||||
"vite-tsconfig-paths": "^5.0.0",
|
||||
"vitest": "^3.0.0",
|
||||
"vitest-fetch-mock": "^0.4.0",
|
||||
@@ -69,6 +69,6 @@
|
||||
"micromatch": "^4.0.8"
|
||||
},
|
||||
"volta": {
|
||||
"node": "22.16.0"
|
||||
"node": "22.17.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,37 +2,37 @@
|
||||
# Manual edits may be lost in future updates.
|
||||
|
||||
provider "registry.opentofu.org/cloudflare/cloudflare" {
|
||||
version = "4.52.0"
|
||||
constraints = "4.52.0"
|
||||
version = "4.52.1"
|
||||
constraints = "4.52.1"
|
||||
hashes = [
|
||||
"h1:2BEJyXJtYC4B4nda/WCYUmuJYDaYk88F8t1pwPzr0iQ=",
|
||||
"h1:4IASk5SESeWKQ7JU0+M7KApuF5mZyklvwMXPBabim3c=",
|
||||
"h1:5ImZxxALSnWfH/4EXw/wFirSmk5Tr0ACmcysy51AafE=",
|
||||
"h1:6TJ3dxLSin4ZKBJLsZDn95H2ZYnGm8S7GGHvvXuuMQU=",
|
||||
"h1:IzTUjg9kQ4N3qizP9CjYLeHwjsuGgtxwXvfUQWyOLcA=",
|
||||
"h1:NTaOQfYINA0YTG/V1/9+SYtgX1it63+cBugj4WK4FWc=",
|
||||
"h1:PXH48LuJn329sCfMXprdMDk51EZaWFyajVvS03qhQLs=",
|
||||
"h1:Pi5M+GeoMSN2eJ6QnIeXjBf19O+rby/74CfB2ocpv20=",
|
||||
"h1:ShXZ2ZjBvm3thfoPPzPT8+OhyismnydQVkUAfI8X12w=",
|
||||
"h1:WQ9hu0Wge2msBbODfottCSKgu8oKUrw4Opz+fDPVVHk=",
|
||||
"h1:Z5yXML2DE0uH9UU+M0ut9JMQAORcwVZz1CxBHzeBmao=",
|
||||
"h1:jqI2qKknpleS3JDSplyGYHMu0u9K/tor1ZOjFwDgEMk=",
|
||||
"h1:kgfutDh14Q5nw4eg6qGFamFxIiY8Ae0FPKRBLDOzpcI=",
|
||||
"h1:zCAO7GZmfYhWb+i6TfqlqhMeDyPZWGio2IzEzAh3YTs=",
|
||||
"zh:19be1a91c982b902c42aba47766860dfa5dc151eed1e95fd39ca642229381ef0",
|
||||
"zh:1de451c4d1ecf7efbe67b6dace3426ba810711afdd644b0f1b870364c8ae91f8",
|
||||
"zh:352b4a2120173298622e669258744554339d959ac3a95607b117a48ee4a83238",
|
||||
"zh:3c6f1346d9154afbd2d558fabb4b0150fc8d559aa961254144fe1bc17fe6032f",
|
||||
"zh:4c4c92d53fb535b1e0eff26f222bbd627b97d3b4c891ec9c321268676d06152f",
|
||||
"zh:53276f68006c9ceb7cdb10a6ccf91a5c1eadd1407a28edb5741e84e88d7e29e8",
|
||||
"zh:7925a97773948171a63d4f65bb81ee92fd6d07a447e36012977313293a5435c9",
|
||||
"zh:7dfb0a4496cfe032437386d0a2cd9229a1956e9c30bd920923c141b0f0440060",
|
||||
"h1:2lHvafwGbLdmc9lYkuJFw3nsInaQjRpjX/JfIRKmq/M=",
|
||||
"h1:596JomwjrtUrOSreq9NNCS+rj70+jOV+0pfja5MXiTI=",
|
||||
"h1:7mBOA5TVAIt3qAwPXKCtE0RSYeqij9v30mnksuBbpEg=",
|
||||
"h1:ELVgzh4kHKBCYdL+2A8JjWS0E1snLUN3Mmz3Vo6qSfw=",
|
||||
"h1:FGGM5yLFf72g3kSXM3LAN64Gf/AkXr5WCmhixgnP+l4=",
|
||||
"h1:JupkJbQALcIVoMhHImrLeLDsQR1ET7VJLGC7ONxjqGU=",
|
||||
"h1:KsaE4JNq+1uV1nJsuTcYar/8lyY6zKS5UBEpfYg3wvc=",
|
||||
"h1:NHZ5RJIzQDLhie/ykl3uI6UPfNQR9Lu5Ti7JPR6X904=",
|
||||
"h1:NfAuMbn6LQPLDtJhbzO1MX9JMIGLMa8K6CpekvtsuX8=",
|
||||
"h1:e+vNKokamDsp/kJvFr2pRudzwEz2r49iZ/oSggw+1LY=",
|
||||
"h1:jnb4VdfNZ79I3yj7Q8x+JmOT+FxbfjjRfrF0dL0yCW8=",
|
||||
"h1:kmF//O539d7NuHU7qIxDj7Wz4eJmLKFiI5glwQivldU=",
|
||||
"h1:s6XriaKwOgV4jvKAGPXkrxhhOQxpNU5dceZwi9Z/1k8=",
|
||||
"h1:wt3WBEBAeSGTlC9OlnTlAALxRiK4SQgLy0KgBIS7qzs=",
|
||||
"zh:2fb95e1d3229b9b6c704e1a413c7481c60f139780d9641f657b6eb9b633b90f2",
|
||||
"zh:379c7680983383862236e9e6e720c3114195c40526172188e88d0ffcf50dfe2e",
|
||||
"zh:55533beb6cfc02d22ffda8cba8027bc2c841bb172cd637ed0d28323d41395f8f",
|
||||
"zh:5abd70760e4eb1f37a1c307cbd2989ea7c9ba0afb93818c67c1d363a31f75703",
|
||||
"zh:699f1c8cd66129176fe659ebf0e6337632a8967a28d2630b6ae5948665c0c2ae",
|
||||
"zh:69c15acd73c451e89de6477059cda2f3ec200b48ae4b9ff3646c4d389fd3205e",
|
||||
"zh:6e02b687de21b844f8266dff99e93e7c61fc8eb688f4bbb23803caceb251839e",
|
||||
"zh:7a51d17b87ed87b7bebf2ad9fc7c3a74f16a1b44eee92c779c08eb89258c0496",
|
||||
"zh:88ad84436837b0f55302f22748505972634e87400d6902260fd6b7ba1610f937",
|
||||
"zh:890df766e9b839623b1f0437355032a3c006226a6c200cd911e15ee1a9014e9f",
|
||||
"zh:8d4aa79f0a414bb4163d771063c70cd991c8fac6c766e685bac2ee12903c5bd6",
|
||||
"zh:a67540c13565616a7e7e51ee9366e88b0dc60046e1d75c72680e150bd02725bb",
|
||||
"zh:a936383a4767f5393f38f622e92bf2d0c03fe04b69c284951f27345766c7b31b",
|
||||
"zh:d4887d73c466ff036eecf50ad6404ba38fd82ea4855296b1846d244b0f13c380",
|
||||
"zh:e9093c8bd5b6cd99c81666e315197791781b8f93afa14fc2e0f732d1bb2a44b7",
|
||||
"zh:efd3b3f1ec59a37f635aa1d4efcf178734c2fcf8ddb0d56ea690bec342da8672",
|
||||
"zh:8d46c3d9f4f7ad20ac6ef01daa63f4e30a2d16dcb1bb5c7c7ee3dc6be38e9ca1",
|
||||
"zh:913d64e72a4929dae1d4793e2004f4f9a58b138ea337d9d94fa35cafbf06550a",
|
||||
"zh:c8d93cf86e2e49f6cec665cfe78b82c144cce15a8b2e30f343385fadd1251849",
|
||||
"zh:cc4f69397d9bc34a528a5609a024c3a48f54f21616c0008792dd417297add955",
|
||||
"zh:df99cdb8b064aad35ffea77e645cf6541d0b1b2ebc51b6d26c42031de60ab69e",
|
||||
]
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ terraform {
|
||||
required_providers {
|
||||
cloudflare = {
|
||||
source = "cloudflare/cloudflare"
|
||||
version = "4.52.0"
|
||||
version = "4.52.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,37 +2,37 @@
|
||||
# Manual edits may be lost in future updates.
|
||||
|
||||
provider "registry.opentofu.org/cloudflare/cloudflare" {
|
||||
version = "4.52.0"
|
||||
constraints = "4.52.0"
|
||||
version = "4.52.1"
|
||||
constraints = "4.52.1"
|
||||
hashes = [
|
||||
"h1:2BEJyXJtYC4B4nda/WCYUmuJYDaYk88F8t1pwPzr0iQ=",
|
||||
"h1:4IASk5SESeWKQ7JU0+M7KApuF5mZyklvwMXPBabim3c=",
|
||||
"h1:5ImZxxALSnWfH/4EXw/wFirSmk5Tr0ACmcysy51AafE=",
|
||||
"h1:6TJ3dxLSin4ZKBJLsZDn95H2ZYnGm8S7GGHvvXuuMQU=",
|
||||
"h1:IzTUjg9kQ4N3qizP9CjYLeHwjsuGgtxwXvfUQWyOLcA=",
|
||||
"h1:NTaOQfYINA0YTG/V1/9+SYtgX1it63+cBugj4WK4FWc=",
|
||||
"h1:PXH48LuJn329sCfMXprdMDk51EZaWFyajVvS03qhQLs=",
|
||||
"h1:Pi5M+GeoMSN2eJ6QnIeXjBf19O+rby/74CfB2ocpv20=",
|
||||
"h1:ShXZ2ZjBvm3thfoPPzPT8+OhyismnydQVkUAfI8X12w=",
|
||||
"h1:WQ9hu0Wge2msBbODfottCSKgu8oKUrw4Opz+fDPVVHk=",
|
||||
"h1:Z5yXML2DE0uH9UU+M0ut9JMQAORcwVZz1CxBHzeBmao=",
|
||||
"h1:jqI2qKknpleS3JDSplyGYHMu0u9K/tor1ZOjFwDgEMk=",
|
||||
"h1:kgfutDh14Q5nw4eg6qGFamFxIiY8Ae0FPKRBLDOzpcI=",
|
||||
"h1:zCAO7GZmfYhWb+i6TfqlqhMeDyPZWGio2IzEzAh3YTs=",
|
||||
"zh:19be1a91c982b902c42aba47766860dfa5dc151eed1e95fd39ca642229381ef0",
|
||||
"zh:1de451c4d1ecf7efbe67b6dace3426ba810711afdd644b0f1b870364c8ae91f8",
|
||||
"zh:352b4a2120173298622e669258744554339d959ac3a95607b117a48ee4a83238",
|
||||
"zh:3c6f1346d9154afbd2d558fabb4b0150fc8d559aa961254144fe1bc17fe6032f",
|
||||
"zh:4c4c92d53fb535b1e0eff26f222bbd627b97d3b4c891ec9c321268676d06152f",
|
||||
"zh:53276f68006c9ceb7cdb10a6ccf91a5c1eadd1407a28edb5741e84e88d7e29e8",
|
||||
"zh:7925a97773948171a63d4f65bb81ee92fd6d07a447e36012977313293a5435c9",
|
||||
"zh:7dfb0a4496cfe032437386d0a2cd9229a1956e9c30bd920923c141b0f0440060",
|
||||
"h1:2lHvafwGbLdmc9lYkuJFw3nsInaQjRpjX/JfIRKmq/M=",
|
||||
"h1:596JomwjrtUrOSreq9NNCS+rj70+jOV+0pfja5MXiTI=",
|
||||
"h1:7mBOA5TVAIt3qAwPXKCtE0RSYeqij9v30mnksuBbpEg=",
|
||||
"h1:ELVgzh4kHKBCYdL+2A8JjWS0E1snLUN3Mmz3Vo6qSfw=",
|
||||
"h1:FGGM5yLFf72g3kSXM3LAN64Gf/AkXr5WCmhixgnP+l4=",
|
||||
"h1:JupkJbQALcIVoMhHImrLeLDsQR1ET7VJLGC7ONxjqGU=",
|
||||
"h1:KsaE4JNq+1uV1nJsuTcYar/8lyY6zKS5UBEpfYg3wvc=",
|
||||
"h1:NHZ5RJIzQDLhie/ykl3uI6UPfNQR9Lu5Ti7JPR6X904=",
|
||||
"h1:NfAuMbn6LQPLDtJhbzO1MX9JMIGLMa8K6CpekvtsuX8=",
|
||||
"h1:e+vNKokamDsp/kJvFr2pRudzwEz2r49iZ/oSggw+1LY=",
|
||||
"h1:jnb4VdfNZ79I3yj7Q8x+JmOT+FxbfjjRfrF0dL0yCW8=",
|
||||
"h1:kmF//O539d7NuHU7qIxDj7Wz4eJmLKFiI5glwQivldU=",
|
||||
"h1:s6XriaKwOgV4jvKAGPXkrxhhOQxpNU5dceZwi9Z/1k8=",
|
||||
"h1:wt3WBEBAeSGTlC9OlnTlAALxRiK4SQgLy0KgBIS7qzs=",
|
||||
"zh:2fb95e1d3229b9b6c704e1a413c7481c60f139780d9641f657b6eb9b633b90f2",
|
||||
"zh:379c7680983383862236e9e6e720c3114195c40526172188e88d0ffcf50dfe2e",
|
||||
"zh:55533beb6cfc02d22ffda8cba8027bc2c841bb172cd637ed0d28323d41395f8f",
|
||||
"zh:5abd70760e4eb1f37a1c307cbd2989ea7c9ba0afb93818c67c1d363a31f75703",
|
||||
"zh:699f1c8cd66129176fe659ebf0e6337632a8967a28d2630b6ae5948665c0c2ae",
|
||||
"zh:69c15acd73c451e89de6477059cda2f3ec200b48ae4b9ff3646c4d389fd3205e",
|
||||
"zh:6e02b687de21b844f8266dff99e93e7c61fc8eb688f4bbb23803caceb251839e",
|
||||
"zh:7a51d17b87ed87b7bebf2ad9fc7c3a74f16a1b44eee92c779c08eb89258c0496",
|
||||
"zh:88ad84436837b0f55302f22748505972634e87400d6902260fd6b7ba1610f937",
|
||||
"zh:890df766e9b839623b1f0437355032a3c006226a6c200cd911e15ee1a9014e9f",
|
||||
"zh:8d4aa79f0a414bb4163d771063c70cd991c8fac6c766e685bac2ee12903c5bd6",
|
||||
"zh:a67540c13565616a7e7e51ee9366e88b0dc60046e1d75c72680e150bd02725bb",
|
||||
"zh:a936383a4767f5393f38f622e92bf2d0c03fe04b69c284951f27345766c7b31b",
|
||||
"zh:d4887d73c466ff036eecf50ad6404ba38fd82ea4855296b1846d244b0f13c380",
|
||||
"zh:e9093c8bd5b6cd99c81666e315197791781b8f93afa14fc2e0f732d1bb2a44b7",
|
||||
"zh:efd3b3f1ec59a37f635aa1d4efcf178734c2fcf8ddb0d56ea690bec342da8672",
|
||||
"zh:8d46c3d9f4f7ad20ac6ef01daa63f4e30a2d16dcb1bb5c7c7ee3dc6be38e9ca1",
|
||||
"zh:913d64e72a4929dae1d4793e2004f4f9a58b138ea337d9d94fa35cafbf06550a",
|
||||
"zh:c8d93cf86e2e49f6cec665cfe78b82c144cce15a8b2e30f343385fadd1251849",
|
||||
"zh:cc4f69397d9bc34a528a5609a024c3a48f54f21616c0008792dd417297add955",
|
||||
"zh:df99cdb8b064aad35ffea77e645cf6541d0b1b2ebc51b6d26c42031de60ab69e",
|
||||
]
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@ terraform {
|
||||
required_providers {
|
||||
cloudflare = {
|
||||
source = "cloudflare/cloudflare"
|
||||
version = "4.52.0"
|
||||
version = "4.52.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,7 +16,7 @@ name: immich-dev
|
||||
services:
|
||||
immich-server:
|
||||
container_name: immich_server
|
||||
command: ['/usr/src/app/bin/immich-dev']
|
||||
command: ['immich-dev']
|
||||
image: immich-server-dev:latest
|
||||
# extends:
|
||||
# file: hwaccel.transcoding.yml
|
||||
@@ -27,11 +27,11 @@ services:
|
||||
target: dev
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ../server:/usr/src/app
|
||||
- ../open-api:/usr/src/open-api
|
||||
- ${UPLOAD_LOCATION}/photos:/usr/src/app/upload
|
||||
- ${UPLOAD_LOCATION}/photos/upload:/usr/src/app/upload/upload
|
||||
- /usr/src/app/node_modules
|
||||
- ../server:/usr/src/app/server
|
||||
- ../open-api:/usr/src/app/open-api
|
||||
- ${UPLOAD_LOCATION}/photos:/data
|
||||
- ${UPLOAD_LOCATION}/photos/upload:/data/upload
|
||||
- /usr/src/app/server/node_modules
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
env_file:
|
||||
- .env
|
||||
@@ -69,19 +69,20 @@ services:
|
||||
# Needed for rootless docker setup, see https://github.com/moby/moby/issues/45919
|
||||
# user: 0:0
|
||||
build:
|
||||
context: ../web
|
||||
command: ['/usr/src/app/bin/immich-web']
|
||||
context: ../
|
||||
dockerfile: web/Dockerfile
|
||||
command: ['immich-web']
|
||||
env_file:
|
||||
- .env
|
||||
ports:
|
||||
- 3000:3000
|
||||
- 24678:24678
|
||||
volumes:
|
||||
- ../web:/usr/src/app
|
||||
- ../i18n:/usr/src/i18n
|
||||
- ../open-api/:/usr/src/open-api/
|
||||
- ../web:/usr/src/app/web
|
||||
- ../i18n:/usr/src/app/i18n
|
||||
- ../open-api/:/usr/src/app/open-api/
|
||||
# - ../../ui:/usr/ui
|
||||
- /usr/src/app/node_modules
|
||||
- /usr/src/app/web/node_modules
|
||||
ulimits:
|
||||
nofile:
|
||||
soft: 1048576
|
||||
@@ -116,13 +117,13 @@ services:
|
||||
|
||||
redis:
|
||||
container_name: immich_redis
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:fec42f399876eb6faf9e008570597741c87ff7662a54185593e74b09ce83d177
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:facc1d2c3462975c34e10fccb167bfa92b0e0dbd992fc282c29a61c3243afb11
|
||||
healthcheck:
|
||||
test: redis-cli ping || exit 1
|
||||
|
||||
database:
|
||||
container_name: immich_postgres
|
||||
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:5f6a838e4e44c8e0e019d0ebfe3ee8952b69afc2809b2c25f7b0119641978e91
|
||||
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:32324a2f41df5de9efe1af166b7008c3f55646f8d0e00d9550c16c9822366b4a
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
@@ -134,6 +135,7 @@ services:
|
||||
- ${UPLOAD_LOCATION}/postgres:/var/lib/postgresql/data
|
||||
ports:
|
||||
- 5432:5432
|
||||
shm_size: 128mb
|
||||
# set IMMICH_TELEMETRY_INCLUDE=all in .env to enable metrics
|
||||
# immich-prometheus:
|
||||
# container_name: immich_prometheus
|
||||
|
||||
@@ -20,7 +20,7 @@ services:
|
||||
context: ../
|
||||
dockerfile: server/Dockerfile
|
||||
volumes:
|
||||
- ${UPLOAD_LOCATION}/photos:/usr/src/app/upload
|
||||
- ${UPLOAD_LOCATION}/photos:/data
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
env_file:
|
||||
- .env
|
||||
@@ -56,14 +56,14 @@ services:
|
||||
|
||||
redis:
|
||||
container_name: immich_redis
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:fec42f399876eb6faf9e008570597741c87ff7662a54185593e74b09ce83d177
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:facc1d2c3462975c34e10fccb167bfa92b0e0dbd992fc282c29a61c3243afb11
|
||||
healthcheck:
|
||||
test: redis-cli ping || exit 1
|
||||
restart: always
|
||||
|
||||
database:
|
||||
container_name: immich_postgres
|
||||
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:5f6a838e4e44c8e0e019d0ebfe3ee8952b69afc2809b2c25f7b0119641978e91
|
||||
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:32324a2f41df5de9efe1af166b7008c3f55646f8d0e00d9550c16c9822366b4a
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
@@ -75,6 +75,7 @@ services:
|
||||
- ${UPLOAD_LOCATION}/postgres:/var/lib/postgresql/data
|
||||
ports:
|
||||
- 5432:5432
|
||||
shm_size: 128mb
|
||||
restart: always
|
||||
|
||||
# set IMMICH_TELEMETRY_INCLUDE=all in .env to enable metrics
|
||||
@@ -82,7 +83,7 @@ services:
|
||||
container_name: immich_prometheus
|
||||
ports:
|
||||
- 9090:9090
|
||||
image: prom/prometheus@sha256:9abc6cf6aea7710d163dbb28d8eeb7dc5baef01e38fa4cd146a406dd9f07f70d
|
||||
image: prom/prometheus@sha256:63805ebb8d2b3920190daf1cb14a60871b16fd38bed42b857a3182bc621f4996
|
||||
volumes:
|
||||
- ./prometheus.yml:/etc/prometheus/prometheus.yml
|
||||
- prometheus-data:/prometheus
|
||||
|
||||
@@ -18,7 +18,7 @@ services:
|
||||
# service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
|
||||
volumes:
|
||||
# Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
|
||||
- ${UPLOAD_LOCATION}:/usr/src/app/upload
|
||||
- ${UPLOAD_LOCATION}:/data
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
env_file:
|
||||
- .env
|
||||
@@ -49,14 +49,14 @@ services:
|
||||
|
||||
redis:
|
||||
container_name: immich_redis
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:fec42f399876eb6faf9e008570597741c87ff7662a54185593e74b09ce83d177
|
||||
image: docker.io/valkey/valkey:8-bookworm@sha256:facc1d2c3462975c34e10fccb167bfa92b0e0dbd992fc282c29a61c3243afb11
|
||||
healthcheck:
|
||||
test: redis-cli ping || exit 1
|
||||
restart: always
|
||||
|
||||
database:
|
||||
container_name: immich_postgres
|
||||
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:5f6a838e4e44c8e0e019d0ebfe3ee8952b69afc2809b2c25f7b0119641978e91
|
||||
image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:32324a2f41df5de9efe1af166b7008c3f55646f8d0e00d9550c16c9822366b4a
|
||||
environment:
|
||||
POSTGRES_PASSWORD: ${DB_PASSWORD}
|
||||
POSTGRES_USER: ${DB_USERNAME}
|
||||
@@ -67,6 +67,7 @@ services:
|
||||
volumes:
|
||||
# Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
|
||||
- ${DB_DATA_LOCATION}:/var/lib/postgresql/data
|
||||
shm_size: 128mb
|
||||
restart: always
|
||||
|
||||
volumes:
|
||||
|
||||
@@ -1 +1 @@
|
||||
22.16.0
|
||||
22.17.1
|
||||
|
||||
@@ -180,7 +180,7 @@ services:
|
||||
...
|
||||
volumes:
|
||||
# Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file
|
||||
- ${UPLOAD_LOCATION}:/usr/src/app/upload
|
||||
- ${UPLOAD_LOCATION}:/data
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
+ - originals:/usr/src/app/originals
|
||||
...
|
||||
@@ -490,7 +490,7 @@ You can also scan the Postgres database file structure for errors:
|
||||
<details>
|
||||
<summary>Scan for file structure errors</summary>
|
||||
```bash
|
||||
docker exec -it immich_postgres pg_amcheck --username=postgres --heapallindexed --parent-check --rootdescend --progress --all --install-missing
|
||||
docker exec -it immich_postgres pg_amcheck --username=<DB_USERNAME> --heapallindexed --parent-check --rootdescend --progress --all --install-missing
|
||||
```
|
||||
|
||||
A normal result will end something like this and return with an exit code of `0`:
|
||||
|
||||
@@ -57,7 +57,7 @@ Then please follow the steps in the following section for restoring the database
|
||||
<TabItem value="Linux system" label="Linux system" default>
|
||||
|
||||
```bash title='Backup'
|
||||
docker exec -t immich_postgres pg_dumpall --clean --if-exists --username=postgres | gzip > "/path/to/backup/dump.sql.gz"
|
||||
docker exec -t immich_postgres pg_dumpall --clean --if-exists --username=<DB_USERNAME> | gzip > "/path/to/backup/dump.sql.gz"
|
||||
```
|
||||
|
||||
```bash title='Restore'
|
||||
@@ -79,7 +79,7 @@ docker compose up -d # Start remainder of Immich apps
|
||||
<TabItem value="Windows system (PowerShell)" label="Windows system (PowerShell)">
|
||||
|
||||
```powershell title='Backup'
|
||||
[System.IO.File]::WriteAllLines("C:\absolute\path\to\backup\dump.sql", (docker exec -t immich_postgres pg_dumpall --clean --if-exists --username=postgres))
|
||||
[System.IO.File]::WriteAllLines("C:\absolute\path\to\backup\dump.sql", (docker exec -t immich_postgres pg_dumpall --clean --if-exists --username=<DB_USERNAME>))
|
||||
```
|
||||
|
||||
```powershell title='Restore'
|
||||
@@ -150,12 +150,10 @@ for more info read the [release notes](https://github.com/immich-app/immich/rele
|
||||
- Preview images (small thumbnails and large previews) for each asset and thumbnails for recognized faces.
|
||||
- Stored in `UPLOAD_LOCATION/thumbs/<userID>`.
|
||||
- **Encoded Assets:**
|
||||
|
||||
- Videos that have been re-encoded from the original for wider compatibility. The original is not removed.
|
||||
- Stored in `UPLOAD_LOCATION/encoded-video/<userID>`.
|
||||
|
||||
- **Postgres**
|
||||
|
||||
- The Immich database containing all the information to allow the system to function properly.
|
||||
**Note:** This folder will only appear to users who have made the changes mentioned in [v1.102.0](https://github.com/immich-app/immich/discussions/8930) (an optional, non-mandatory change) or who started with this version.
|
||||
- Stored in `DB_DATA_LOCATION`.
|
||||
@@ -201,7 +199,6 @@ When you turn off the storage template engine, it will leave the assets in `UPLO
|
||||
- Temporarily located in `UPLOAD_LOCATION/upload/<userID>`.
|
||||
- Transferred to `UPLOAD_LOCATION/library/<userID>` upon successful upload.
|
||||
- **Postgres**
|
||||
|
||||
- The Immich database containing all the information to allow the system to function properly.
|
||||
**Note:** This folder will only appear to users who have made the changes mentioned in [v1.102.0](https://github.com/immich-app/immich/discussions/8930) (an optional, non-mandatory change) or who started with this version.
|
||||
- Stored in `DB_DATA_LOCATION`.
|
||||
|
||||
BIN
docs/docs/administration/img/admin-nightly-tasks.webp
Normal file
BIN
docs/docs/administration/img/admin-nightly-tasks.webp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 33 KiB |
@@ -46,6 +46,12 @@ services:
|
||||
|
||||
When a new asset is uploaded it kicks off a series of jobs, which include metadata extraction, thumbnail generation, machine learning tasks, and storage template migration, if enabled. To view the status of a job navigate to the Administration -> Jobs page.
|
||||
|
||||
Additionally, some jobs run on a schedule, which is every night at midnight. This schedule, with the exception of [External Libraries](/docs/features/libraries) scanning, cannot be changed.
|
||||
|
||||
<img src={require('./img/admin-jobs.webp').default} width="60%" title="Admin jobs" />
|
||||
|
||||
Additionally, some jobs (such as memories generation) run on a schedule, which is every night at midnight by default. To change when they run or enable/disable a job navigate to System Settings -> [Nightly Tasks Settings](https://my.immich.app/admin/system-settings?isOpen=nightly-tasks).
|
||||
|
||||
<img src={require('./img/admin-nightly-tasks.webp').default} width="60%" title="Admin nightly tasks" />
|
||||
|
||||
:::note
|
||||
Some jobs ([External Libraries](/docs/features/libraries) scanning, Database Dump) are configured in their own sections in System Settings.
|
||||
:::
|
||||
|
||||
@@ -20,7 +20,6 @@ Immich supports 3rd party authentication via [OpenID Connect][oidc] (OIDC), an i
|
||||
Before enabling OAuth in Immich, a new client application needs to be configured in the 3rd-party authentication server. While the specifics of this setup vary from provider to provider, the general approach should be the same.
|
||||
|
||||
1. Create a new (Client) Application
|
||||
|
||||
1. The **Provider** type should be `OpenID Connect` or `OAuth2`
|
||||
2. The **Client type** should be `Confidential`
|
||||
3. The **Application** type should be `Web`
|
||||
@@ -29,7 +28,6 @@ Before enabling OAuth in Immich, a new client application needs to be configured
|
||||
2. Configure Redirect URIs/Origins
|
||||
|
||||
The **Sign-in redirect URIs** should include:
|
||||
|
||||
- `app.immich:///oauth-callback` - for logging in with OAuth from the [Mobile App](/docs/features/mobile-app.mdx)
|
||||
- `http://DOMAIN:PORT/auth/login` - for logging in with OAuth from the Web Client
|
||||
- `http://DOMAIN:PORT/user-settings` - for manually linking OAuth in the Web Client
|
||||
@@ -37,21 +35,17 @@ Before enabling OAuth in Immich, a new client application needs to be configured
|
||||
Redirect URIs should contain all the domains you will be using to access Immich. Some examples include:
|
||||
|
||||
Mobile
|
||||
|
||||
- `app.immich:///oauth-callback` (You **MUST** include this for iOS and Android mobile apps to work properly)
|
||||
|
||||
Localhost
|
||||
|
||||
- `http://localhost:2283/auth/login`
|
||||
- `http://localhost:2283/user-settings`
|
||||
|
||||
Local IP
|
||||
|
||||
- `http://192.168.0.200:2283/auth/login`
|
||||
- `http://192.168.0.200:2283/user-settings`
|
||||
|
||||
Hostname
|
||||
|
||||
- `https://immich.example.com/auth/login`
|
||||
- `https://immich.example.com/user-settings`
|
||||
|
||||
@@ -68,8 +62,9 @@ Once you have a new OAuth client application configured, Immich can be configure
|
||||
| Scope | string | openid email profile | Full list of scopes to send with the request (space delimited) |
|
||||
| Signing Algorithm | string | RS256 | The algorithm used to sign the id token (examples: RS256, HS256) |
|
||||
| Storage Label Claim | string | preferred_username | Claim mapping for the user's storage label**┬╣** |
|
||||
| Role Claim | string | immich_role | Claim mapping for the user's role. (should return "user" or "admin")**┬╣** |
|
||||
| Storage Quota Claim | string | immich_quota | Claim mapping for the user's storage**┬╣** |
|
||||
| Default Storage Quota (GiB) | number | 0 | Default quota for user without storage quota claim (Enter 0 for unlimited quota) |
|
||||
| Default Storage Quota (GiB) | number | 0 | Default quota for user without storage quota claim (empty for unlimited quota) |
|
||||
| Button Text | string | Login with OAuth | Text for the OAuth button on the web |
|
||||
| Auto Register | boolean | true | When true, will automatically register a user the first time they sign in |
|
||||
| [Auto Launch](#auto-launch) | boolean | false | When true, will skip the login page and automatically start the OAuth login process |
|
||||
@@ -111,6 +106,89 @@ Immich has a route (`/api/oauth/mobile-redirect`) that is already configured to
|
||||
|
||||
## Example Configuration
|
||||
|
||||
<details>
|
||||
<summary>Authelia Example</summary>
|
||||
|
||||
### Authelia Example
|
||||
|
||||
Here's an example of OAuth configured for Authelia:
|
||||
|
||||
This assumes there exist an attribute `immichquota` in the user schema, which is used to set the user's storage quota in Immich.
|
||||
The configuration concerning the quota is optional.
|
||||
|
||||
```yaml
|
||||
authentication_backend:
|
||||
ldap:
|
||||
# The LDAP server configuration goes here.
|
||||
# See: https://www.authelia.com/c/ldap
|
||||
attributes:
|
||||
extra:
|
||||
immichquota: # The attribute name from LDAP
|
||||
name: 'immich_quota'
|
||||
multi_valued: false
|
||||
value_type: 'integer'
|
||||
identity_providers:
|
||||
oidc:
|
||||
## The other portions of the mandatory OpenID Connect 1.0 configuration go here.
|
||||
## See: https://www.authelia.com/c/oidc
|
||||
claims_policies:
|
||||
immich_policy:
|
||||
custom_claims:
|
||||
immich_quota:
|
||||
attribute: 'immich_quota'
|
||||
scopes:
|
||||
immich_scope:
|
||||
claims:
|
||||
- 'immich_quota'
|
||||
|
||||
clients:
|
||||
- client_id: 'immich'
|
||||
client_name: 'Immich'
|
||||
# https://www.authelia.com/integration/openid-connect/frequently-asked-questions/#how-do-i-generate-a-client-identifier-or-client-secret
|
||||
client_secret: $pbkdf2-sha512$310000$c8p78n7pUMln0jzvd4aK4Q$JNRBzwAo0ek5qKn50cFzzvE9RXV88h1wJn5KGiHrD0YKtZaR/nCb2CJPOsKaPK0hjf.9yHxzQGZziziccp6Yng'
|
||||
public: false
|
||||
require_pkce: false
|
||||
redirect_uris:
|
||||
- 'https://example.immich.app/auth/login'
|
||||
- 'https://example.immich.app/user-settings'
|
||||
- 'app.immich:///oauth-callback'
|
||||
scopes:
|
||||
- 'openid'
|
||||
- 'profile'
|
||||
- 'email'
|
||||
- 'immich_scope'
|
||||
claims_policy: 'immich_policy'
|
||||
response_types:
|
||||
- 'code'
|
||||
grant_types:
|
||||
- 'authorization_code'
|
||||
id_token_signed_response_alg: 'RS256'
|
||||
userinfo_signed_response_alg: 'RS256'
|
||||
token_endpoint_auth_method: 'client_secret_post'
|
||||
```
|
||||
|
||||
Configuration of OAuth in Immich System Settings
|
||||
|
||||
| Setting | Value |
|
||||
| ---------------------------------- | ------------------------------------------------------------------- |
|
||||
| Issuer URL | `https://example.immich.app/.well-known/openid-configuration` |
|
||||
| Client ID | immich |
|
||||
| Client Secret | 0v89FXkQOWO\***\*\*\*\*\***\*\*\***\*\*\*\*\***mprbvXD549HH6s1iw... |
|
||||
| Token Endpoint Auth Method | client_secret_post |
|
||||
| Scope | openid email profile immich_scope |
|
||||
| ID Token Signed Response Algorithm | RS256 |
|
||||
| Userinfo Signed Response Algorithm | RS256 |
|
||||
| Storage Label Claim | uid |
|
||||
| Storage Quota Claim | immich_quota |
|
||||
| Default Storage Quota (GiB) | 0 (empty for unlimited quota) |
|
||||
| Button Text | Sign in with Authelia (optional) |
|
||||
| Auto Register | Enabled (optional) |
|
||||
| Auto Launch | Enabled (optional) |
|
||||
| Mobile Redirect URI Override | Disable |
|
||||
| Mobile Redirect URI | |
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
<summary>Authentik Example</summary>
|
||||
|
||||
@@ -133,7 +211,7 @@ Configuration of OAuth in Immich System Settings
|
||||
| Signing Algorithm | RS256 |
|
||||
| Storage Label Claim | preferred_username |
|
||||
| Storage Quota Claim | immich_quota |
|
||||
| Default Storage Quota (GiB) | 0 (0 for unlimited quota) |
|
||||
| Default Storage Quota (GiB) | 0 (empty for unlimited quota) |
|
||||
| Button Text | Sign in with Authentik (optional) |
|
||||
| Auto Register | Enabled (optional) |
|
||||
| Auto Launch | Enabled (optional) |
|
||||
@@ -164,7 +242,7 @@ Configuration of OAuth in Immich System Settings
|
||||
| Signing Algorithm | RS256 |
|
||||
| Storage Label Claim | preferred_username |
|
||||
| Storage Quota Claim | immich_quota |
|
||||
| Default Storage Quota (GiB) | 0 (0 for unlimited quota) |
|
||||
| Default Storage Quota (GiB) | 0 (empty for unlimited quota) |
|
||||
| Button Text | Sign in with Google (optional) |
|
||||
| Auto Register | Enabled (optional) |
|
||||
| Auto Launch | Enabled |
|
||||
|
||||
@@ -2,16 +2,17 @@
|
||||
|
||||
The `immich-server` docker image comes preinstalled with an administrative CLI (`immich-admin`) that supports the following commands:
|
||||
|
||||
| Command | Description |
|
||||
| ------------------------ | ------------------------------------- |
|
||||
| `help` | Display help |
|
||||
| `reset-admin-password` | Reset the password for the admin user |
|
||||
| `disable-password-login` | Disable password login |
|
||||
| `enable-password-login` | Enable password login |
|
||||
| `enable-oauth-login` | Enable OAuth login |
|
||||
| `disable-oauth-login` | Disable OAuth login |
|
||||
| `list-users` | List Immich users |
|
||||
| `version` | Print Immich version |
|
||||
| Command | Description |
|
||||
| ------------------------ | ------------------------------------------------------------- |
|
||||
| `help` | Display help |
|
||||
| `reset-admin-password` | Reset the password for the admin user |
|
||||
| `disable-password-login` | Disable password login |
|
||||
| `enable-password-login` | Enable password login |
|
||||
| `enable-oauth-login` | Enable OAuth login |
|
||||
| `disable-oauth-login` | Disable OAuth login |
|
||||
| `list-users` | List Immich users |
|
||||
| `version` | Print Immich version |
|
||||
| `change-media-location` | Change database file paths to align with a new media location |
|
||||
|
||||
## How to run a command
|
||||
|
||||
@@ -88,3 +89,21 @@ Print Immich Version
|
||||
immich-admin version
|
||||
v1.129.0
|
||||
```
|
||||
|
||||
Change media location
|
||||
|
||||
```
|
||||
immich-admin change-media-location
|
||||
? Enter the previous value of IMMICH_MEDIA_LOCATION: /data
|
||||
? Enter the new value of IMMICH_MEDIA_LOCATION: /my-data
|
||||
...
|
||||
Previous value: /data
|
||||
Current value: /my-data
|
||||
|
||||
Changing database paths from "/data/*" to "/my-data/*"
|
||||
|
||||
? Do you want to proceed? [Y/n] y
|
||||
|
||||
Database file paths updated successfully! ЁЯОЙ
|
||||
...
|
||||
```
|
||||
|
||||
@@ -7,7 +7,7 @@ sidebar_position: 3
|
||||
|
||||
Dev Containers provide a consistent, reproducible development environment using Docker containers. With a single click, you can get started with an Immich development environment on Mac, Linux, Windows, or in the cloud using GitHub Codespaces.
|
||||
|
||||
[](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/immich-app/immich/)
|
||||
Get started fast!
|
||||
|
||||
[](https://codespaces.new/immich-app/immich/)
|
||||
|
||||
@@ -71,7 +71,7 @@ cd immich
|
||||
|
||||
The immich dev containers read environment variables from your shell environment, not from `.env` files. This allows them to work in cloud environments without pre-configuration.
|
||||
|
||||
:::important Required Configuration
|
||||
:::important Configuration
|
||||
When running locally, and if you want to create (or use an existing) DB and/or photo storage folder, you must set the `UPLOAD_LOCATION` variable in your shell environment before launching the Dev Container. This determines where uploaded files are stored and also where the DB stores it data.
|
||||
|
||||
```bash
|
||||
@@ -88,6 +88,10 @@ source ~/.bashrc
|
||||
|
||||
### Step 3: Launch the Dev Container
|
||||
|
||||
:::tip
|
||||
Immich development makes extensive use of specialized [base images](https://github.com/immich-app/base-images) for its docker-compose based development. For this reason, you won't be able to use VSCode's **_Clone Repository in a Container Volume_** command.
|
||||
:::
|
||||
|
||||
#### Using VS Code UI:
|
||||
|
||||
1. Open the cloned repository in VS Code
|
||||
@@ -199,13 +203,11 @@ To use your SSH key for commit signing, see the [GitHub guide on SSH commit sign
|
||||
When the Dev Container starts, it automatically:
|
||||
|
||||
1. **Runs post-create script** (`container-server-post-create.sh`):
|
||||
|
||||
- Adjusts file permissions for the `node` user
|
||||
- Installs dependencies: `npm install` in all packages
|
||||
- Builds TypeScript SDK: `npm run build` in `open-api/typescript-sdk`
|
||||
|
||||
2. **Starts development servers** via VS Code tasks:
|
||||
|
||||
- `Immich API Server (Nest)` - API server with hot-reloading on port 2283
|
||||
- `Immich Web Server (Vite)` - Web frontend with hot-reloading on port 3000
|
||||
- Both servers watch for file changes and recompile automatically
|
||||
@@ -335,14 +337,12 @@ make install-all # Install all dependencies
|
||||
The Dev Container is pre-configured for debugging:
|
||||
|
||||
1. **API Server Debugging**:
|
||||
|
||||
- Set breakpoints in VS Code
|
||||
- Press `F5` or use "Run and Debug" panel
|
||||
- Select "Attach to Server" configuration
|
||||
- Debug port: 9231
|
||||
|
||||
2. **Worker Debugging**:
|
||||
|
||||
- Use "Attach to Workers" configuration
|
||||
- Debug port: 9230
|
||||
|
||||
@@ -428,7 +428,6 @@ While the Dev Container focuses on server and web development, you can connect m
|
||||
```
|
||||
|
||||
2. **Configure mobile app**:
|
||||
|
||||
- Server URL: `http://YOUR_IP:2283/api`
|
||||
- Ensure firewall allows port 2283
|
||||
|
||||
|
||||
@@ -38,6 +38,19 @@ Run all server checks with `npm run check:all`
|
||||
You can use `npm run __:fix` to potentially correct some issues automatically for `npm run format` and `lint`.
|
||||
:::
|
||||
|
||||
## Mobile Checks
|
||||
|
||||
The following commands must be executed from within the mobile app directory of the codebase.
|
||||
|
||||
- [ ] `make build` (auto-generate files using build_runner)
|
||||
- [ ] `make analyze` (static analysis via Dart Analyzer and DCM)
|
||||
- [ ] `make format` (formatting via Dart Formatter)
|
||||
- [ ] `make test` (unit tests)
|
||||
|
||||
:::info Auto Fix
|
||||
You can use `dart fix --apply` and `dcm fix lib` to potentially correct some issues automatically for `make analyze`.
|
||||
:::
|
||||
|
||||
## OpenAPI
|
||||
|
||||
The OpenAPI client libraries need to be regenerated whenever there are changes to the `immich-openapi-specs.json` file. Note that you should not modify this file directly as it is auto-generated. See [OpenAPI](/docs/developer/open-api.md) for more details.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
Folder view provides an additional view besides the timeline that is similar to a file explorer. It allows you to navigate through the folders and files in the library. This feature is handy for a highly curated and customized external library or a nicely configured storage template.
|
||||
|
||||
You can enable this feature under [`Account Settings > Features > Folder View`](https://my.immich.app/user-settings?isOpen=feature+folders)
|
||||
You can enable this feature under [`Account Settings > Features > Folders`](https://my.immich.app/user-settings?isOpen=feature+folders)
|
||||
|
||||
## Enable folder view
|
||||
|
||||
|
||||
@@ -56,9 +56,9 @@ Internally, Immich uses the [glob](https://www.npmjs.com/package/glob) package t
|
||||
|
||||
### Automatic watching (EXPERIMENTAL)
|
||||
|
||||
This feature - currently hidden in the config file - is considered experimental and for advanced users only. If enabled, it will allow automatic watching of the filesystem which means new assets are automatically imported to Immich without needing to rescan.
|
||||
This feature is considered experimental and for advanced users only. If enabled, it will allow automatic watching of the filesystem which means new assets are automatically imported to Immich without needing to rescan.
|
||||
|
||||
If your photos are on a network drive, automatic file watching likely won't work. In that case, you will have to rely on a periodic library refresh to pull in your changes.
|
||||
If your photos are on a network drive, automatic file watching likely won't work. In that case, you will have to rely on a [periodic library refresh](#set-custom-scan-interval) to pull in your changes.
|
||||
|
||||
#### Troubleshooting
|
||||
|
||||
@@ -72,7 +72,9 @@ In rare cases, the library watcher can hang, preventing Immich from starting up.
|
||||
|
||||
### Nightly job
|
||||
|
||||
There is an automatic scan job that is scheduled to run once a day. This job also cleans up any libraries stuck in deletion. It is possible to trigger the cleanup by clicking "Scan all libraries" in the library management page.
|
||||
There is an automatic scan job that is scheduled to run once a day. Its schedule is configurable, see [Set Custom Scan Interval](#set-custom-scan-interval).
|
||||
|
||||
This job also cleans up any libraries stuck in deletion. It is possible to trigger the cleanup by clicking "Scan all libraries" in the library management page.
|
||||
|
||||
## Usage
|
||||
|
||||
@@ -91,7 +93,7 @@ The `immich-server` container will need access to the gallery. Modify your docke
|
||||
```diff title="docker-compose.yml"
|
||||
immich-server:
|
||||
volumes:
|
||||
- ${UPLOAD_LOCATION}:/usr/src/app/upload
|
||||
- ${UPLOAD_LOCATION}:/data
|
||||
+ - /mnt/nas/christmas-trip:/mnt/media/christmas-trip:ro
|
||||
+ - /home/user/old-pics:/mnt/media/old-pics:ro
|
||||
+ - /mnt/media/videos:/mnt/media/videos:ro
|
||||
@@ -112,7 +114,7 @@ _Remember to run `docker compose up -d` to register the changes. Make sure you c
|
||||
|
||||
These actions must be performed by the Immich administrator.
|
||||
|
||||
- Click on your avatar on the upper right corner
|
||||
- Click on your avatar in the upper right corner
|
||||
- Click on Administration -> External Libraries
|
||||
- Click on Create an external libraryтАж
|
||||
- Select which user owns the library, this can not be changed later
|
||||
@@ -159,9 +161,7 @@ Within seconds, the assets from the old-pics and videos folders should show up i
|
||||
|
||||
Folder view provides an additional view besides the timeline that is similar to a file explorer. It allows you to navigate through the folders and files in the library. This feature is handy for a highly curated and customized external library or a nicely configured storage template.
|
||||
|
||||
You can enable this feature under [`Account Settings > Features > Folder View`](https://my.immich.app/user-settings?isOpen=feature+folders)
|
||||
|
||||
The UI is currently only available for the web; mobile will come in a subsequent release.
|
||||
You can enable this feature under [`Account Settings > Features > Folders`](https://my.immich.app/user-settings?isOpen=feature+folders)
|
||||
|
||||
<img src={require('./img/folder-view-1.webp').default} width="100%" title='Folder-view' />
|
||||
|
||||
@@ -171,7 +171,7 @@ The UI is currently only available for the web; mobile will come in a subsequent
|
||||
Only an admin can do this.
|
||||
:::
|
||||
|
||||
You can define a custom interval for the trigger external library rescan under Administration -> Settings -> Library.
|
||||
You can define a custom interval for the trigger external library rescan under Administration -> Settings -> External Library.
|
||||
You can set the scanning interval using the preset or cron format. For more information you can refer to [Crontab Guru](https://crontab.guru/).
|
||||
|
||||
<img src={require('./img/library-custom-scan-interval.webp').default} width="75%" title='Set custom scan interval for external library' />
|
||||
|
||||
@@ -88,9 +88,9 @@ It will only reflect files you add.
|
||||
:::
|
||||
|
||||
If the same asset is in more than one album it will only sync to the first album it's in, after that it won't sync again even if the user clicks sync albums manually.
|
||||
To overcome this limitation, the files must be removed from the blacklist by
|
||||
To overcome this limitation, the files must be removed from the ignore list by
|
||||
App settings -> Advanced -> Duplicate Assets -> Clear
|
||||
|
||||
:::info
|
||||
Cleaning duplicate assets from the list will cause all the previously uploaded duplicate files to be re-uploaded, the files will not actually be uploaded and will be rejected on the server side (due to duplication) but will be synchronized to the album and at the end will be added to the black list again at the end of the synchronization.
|
||||
Cleaning duplicate assets from the list will cause all the previously uploaded duplicate files to be re-uploaded, the files will not actually be uploaded and will be rejected on the server side (due to duplication) but will be synchronized to the album and at the end will be added to the ignore list again at the end of the synchronization.
|
||||
:::
|
||||
|
||||
@@ -16,7 +16,7 @@ For the full list, refer to the [Immich source code](https://github.com/immich-a
|
||||
| `HEIC` | `.heic` | :white_check_mark: | |
|
||||
| `HEIF` | `.heif` | :white_check_mark: | |
|
||||
| `JPEG 2000` | `.jp2` | :white_check_mark: | |
|
||||
| `JPEG` | `.webp` `.jpg` `.jpe` `.insp` | :white_check_mark: | |
|
||||
| `JPEG` | `.jpeg` `.jpg` `.jpe` `.insp` | :white_check_mark: | |
|
||||
| `JPEG XL` | `.jxl` | :white_check_mark: | |
|
||||
| `PNG` | `.png` | :white_check_mark: | |
|
||||
| `PSD` | `.psd` | :white_check_mark: | Adobe Photoshop |
|
||||
|
||||
@@ -27,11 +27,11 @@ After defining the locations of these files, we will edit the `docker-compose.ym
|
||||
services:
|
||||
immich-server:
|
||||
volumes:
|
||||
- ${UPLOAD_LOCATION}:/usr/src/app/upload
|
||||
+ - ${THUMB_LOCATION}:/usr/src/app/upload/thumbs
|
||||
+ - ${ENCODED_VIDEO_LOCATION}:/usr/src/app/upload/encoded-video
|
||||
+ - ${PROFILE_LOCATION}:/usr/src/app/upload/profile
|
||||
+ - ${BACKUP_LOCATION}:/usr/src/app/upload/backups
|
||||
- ${UPLOAD_LOCATION}:/data
|
||||
+ - ${THUMB_LOCATION}:/data/thumbs
|
||||
+ - ${ENCODED_VIDEO_LOCATION}:/data/encoded-video
|
||||
+ - ${PROFILE_LOCATION}:/data/profile
|
||||
+ - ${BACKUP_LOCATION}:/data/backups
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
```
|
||||
|
||||
@@ -44,7 +44,7 @@ docker compose up -d
|
||||
|
||||
:::note
|
||||
Because of the underlying properties of docker bind mounts, it is not recommended to mount the `upload/` and `library/` folders as separate bind mounts if they are on the same device.
|
||||
For this reason, we mount the HDD or the network storage (NAS) to `/usr/src/app/upload` and then mount the folders we want to access under that folder.
|
||||
For this reason, we mount the HDD or the network storage (NAS) to `/data` and then mount the folders we want to access under that folder.
|
||||
|
||||
The `thumbs/` folder contains both the small thumbnails displayed in the timeline and the larger previews shown when clicking into an image. These cannot be separated.
|
||||
|
||||
|
||||
@@ -12,118 +12,148 @@ Run `docker exec -it immich_postgres psql --dbname=<DB_DATABASE_NAME> --username
|
||||
|
||||
## Assets
|
||||
|
||||
### Name
|
||||
|
||||
:::note
|
||||
The `"originalFileName"` column is the name of the file at time of upload, including the extension.
|
||||
:::
|
||||
|
||||
```sql title="Find by original filename"
|
||||
SELECT * FROM "assets" WHERE "originalFileName" = 'PXL_20230903_232542848.jpg';
|
||||
SELECT * FROM "assets" WHERE "originalFileName" LIKE 'PXL_%'; -- all files starting with PXL_
|
||||
SELECT * FROM "assets" WHERE "originalFileName" LIKE '%_2023_%'; -- all files with _2023_ in the middle
|
||||
SELECT * FROM "asset" WHERE "originalFileName" = 'PXL_20230903_232542848.jpg';
|
||||
SELECT * FROM "asset" WHERE "originalFileName" LIKE 'PXL_%'; -- all files starting with PXL_
|
||||
SELECT * FROM "asset" WHERE "originalFileName" LIKE '%_2023_%'; -- all files with _2023_ in the middle
|
||||
```
|
||||
|
||||
```sql title="Find by path"
|
||||
SELECT * FROM "assets" WHERE "originalPath" = 'upload/library/admin/2023/2023-09-03/PXL_2023.jpg';
|
||||
SELECT * FROM "assets" WHERE "originalPath" LIKE 'upload/library/admin/2023/%';
|
||||
SELECT * FROM "asset" WHERE "originalPath" = 'upload/library/admin/2023/2023-09-03/PXL_2023.jpg';
|
||||
SELECT * FROM "asset" WHERE "originalPath" LIKE 'upload/library/admin/2023/%';
|
||||
```
|
||||
|
||||
### ID
|
||||
|
||||
```sql title="Find by ID"
|
||||
SELECT * FROM "assets" WHERE "id" = '9f94e60f-65b6-47b7-ae44-a4df7b57f0e9';
|
||||
SELECT * FROM "asset" WHERE "id" = '9f94e60f-65b6-47b7-ae44-a4df7b57f0e9';
|
||||
```
|
||||
|
||||
```sql title="Find by partial ID"
|
||||
SELECT * FROM "assets" WHERE "id"::text LIKE '%ab431d3a%';
|
||||
SELECT * FROM "asset" WHERE "id"::text LIKE '%ab431d3a%';
|
||||
```
|
||||
|
||||
### Checksum
|
||||
|
||||
:::note
|
||||
You can calculate the checksum for a particular file by using the command `sha1sum <filename>`.
|
||||
:::
|
||||
|
||||
```sql title="Find by checksum (SHA-1)"
|
||||
SELECT encode("checksum", 'hex') FROM "assets";
|
||||
SELECT * FROM "assets" WHERE "checksum" = decode('69de19c87658c4c15d9cacb9967b8e033bf74dd1', 'hex');
|
||||
SELECT * FROM "assets" WHERE "checksum" = '\x69de19c87658c4c15d9cacb9967b8e033bf74dd1'; -- alternate notation
|
||||
SELECT encode("checksum", 'hex') FROM "asset";
|
||||
SELECT * FROM "asset" WHERE "checksum" = decode('69de19c87658c4c15d9cacb9967b8e033bf74dd1', 'hex');
|
||||
SELECT * FROM "asset" WHERE "checksum" = '\x69de19c87658c4c15d9cacb9967b8e033bf74dd1'; -- alternate notation
|
||||
```
|
||||
|
||||
```sql title="Find duplicate assets with identical checksum (SHA-1) (excluding trashed files)"
|
||||
SELECT T1."checksum", array_agg(T2."id") ids FROM "assets" T1
|
||||
INNER JOIN "assets" T2 ON T1."checksum" = T2."checksum" AND T1."id" != T2."id" AND T2."deletedAt" IS NULL
|
||||
SELECT T1."checksum", array_agg(T2."id") ids FROM "asset" T1
|
||||
INNER JOIN "asset" T2 ON T1."checksum" = T2."checksum" AND T1."id" != T2."id" AND T2."deletedAt" IS NULL
|
||||
WHERE T1."deletedAt" IS NULL GROUP BY T1."checksum";
|
||||
```
|
||||
|
||||
### Metadata
|
||||
|
||||
```sql title="Live photos"
|
||||
SELECT * FROM "assets" WHERE "livePhotoVideoId" IS NOT NULL;
|
||||
SELECT * FROM "asset" WHERE "livePhotoVideoId" IS NOT NULL;
|
||||
```
|
||||
|
||||
```sql title="By description"
|
||||
SELECT "assets".*, "exif"."description" FROM "exif"
|
||||
JOIN "assets" ON "assets"."id" = "exif"."assetId"
|
||||
WHERE TRIM("exif"."description") <> ''; -- all files with a description
|
||||
SELECT "assets".*, "exif"."description" FROM "exif"
|
||||
JOIN "assets" ON "assets"."id" = "exif"."assetId"
|
||||
WHERE "exif"."description" ILIKE '%string to match%'; -- search by string
|
||||
SELECT "asset".*, "asset_exif"."description" FROM "asset_exif"
|
||||
JOIN "asset" ON "asset"."id" = "asset_exif"."assetId"
|
||||
WHERE TRIM("asset_exif"."description") <> ''; -- all files with a description
|
||||
SELECT "asset".*, "asset_exif"."description" FROM "asset_exif"
|
||||
JOIN "asset" ON "asset"."id" = "asset_exif"."assetId"
|
||||
WHERE "asset_exif"."description" ILIKE '%string to match%'; -- search by string
|
||||
```
|
||||
|
||||
```sql title="Without metadata"
|
||||
SELECT "assets".* FROM "exif"
|
||||
LEFT JOIN "assets" ON "assets"."id" = "exif"."assetId"
|
||||
WHERE "exif"."assetId" IS NULL;
|
||||
SELECT "asset".* FROM "asset_exif"
|
||||
LEFT JOIN "asset" ON "asset"."id" = "asset_exif"."assetId"
|
||||
WHERE "asset_exif"."assetId" IS NULL;
|
||||
```
|
||||
|
||||
```sql title="size < 100,000 bytes, smallest to largest"
|
||||
SELECT * FROM "assets"
|
||||
JOIN "exif" ON "assets"."id" = "exif"."assetId"
|
||||
WHERE "exif"."fileSizeInByte" < 100000
|
||||
ORDER BY "exif"."fileSizeInByte" ASC;
|
||||
SELECT * FROM "asset"
|
||||
JOIN "asset_exif" ON "asset"."id" = "asset_exif"."assetId"
|
||||
WHERE "asset_exif"."fileSizeInByte" < 100000
|
||||
ORDER BY "asset_exif"."fileSizeInByte" ASC;
|
||||
```
|
||||
|
||||
```sql title="Without thumbnails"
|
||||
SELECT * FROM "assets" WHERE "assets"."previewPath" IS NULL OR "assets"."thumbnailPath" IS NULL;
|
||||
```
|
||||
### Type
|
||||
|
||||
```sql title="By type"
|
||||
SELECT * FROM "assets" WHERE "assets"."type" = 'VIDEO';
|
||||
SELECT * FROM "assets" WHERE "assets"."type" = 'IMAGE';
|
||||
SELECT * FROM "asset" WHERE "asset"."type" = 'VIDEO';
|
||||
SELECT * FROM "asset" WHERE "asset"."type" = 'IMAGE';
|
||||
```
|
||||
|
||||
```sql title="Count by type"
|
||||
SELECT "assets"."type", COUNT(*) FROM "assets" GROUP BY "assets"."type";
|
||||
SELECT "asset"."type", COUNT(*) FROM "asset" GROUP BY "asset"."type";
|
||||
```
|
||||
|
||||
```sql title="Count by type (per user)"
|
||||
SELECT "users"."email", "assets"."type", COUNT(*) FROM "assets"
|
||||
JOIN "users" ON "assets"."ownerId" = "users"."id"
|
||||
GROUP BY "assets"."type", "users"."email" ORDER BY "users"."email";
|
||||
SELECT "user"."email", "asset"."type", COUNT(*) FROM "asset"
|
||||
JOIN "user" ON "asset"."ownerId" = "user"."id"
|
||||
GROUP BY "asset"."type", "user"."email" ORDER BY "user"."email";
|
||||
```
|
||||
|
||||
```sql title="Failed file movements"
|
||||
SELECT * FROM "move_history";
|
||||
## Tags
|
||||
|
||||
```sql title="Count by tag"
|
||||
SELECT "t"."value" AS "tag_name", COUNT(*) AS "number_assets" FROM "tag" "t"
|
||||
JOIN "tag_asset" "ta" ON "t"."id" = "ta"."tagsId" JOIN "asset" "a" ON "ta"."assetsId" = "a"."id"
|
||||
WHERE "a"."visibility" != 'hidden'
|
||||
GROUP BY "t"."value" ORDER BY "number_assets" DESC;
|
||||
```
|
||||
|
||||
```sql title="Count by tag (per user)"
|
||||
SELECT "t"."value" AS "tag_name", "u"."email" as "user_email", COUNT(*) AS "number_assets" FROM "tag" "t"
|
||||
JOIN "tag_asset" "ta" ON "t"."id" = "ta"."tagsId" JOIN "asset" "a" ON "ta"."assetsId" = "a"."id" JOIN "user" "u" ON "a"."ownerId" = "u"."id"
|
||||
WHERE "a"."visibility" != 'hidden'
|
||||
GROUP BY "t"."value", "u"."email" ORDER BY "number_assets" DESC;
|
||||
```
|
||||
|
||||
## Users
|
||||
|
||||
```sql title="List all users"
|
||||
SELECT * FROM "users";
|
||||
SELECT * FROM "user";
|
||||
```
|
||||
|
||||
```sql title="Get owner info from asset ID"
|
||||
SELECT "users".* FROM "users" JOIN "assets" ON "users"."id" = "assets"."ownerId" WHERE "assets"."id" = 'fa310b01-2f26-4b7a-9042-d578226e021f';
|
||||
SELECT "user".* FROM "user" JOIN "asset" ON "user"."id" = "asset"."ownerId" WHERE "asset"."id" = 'fa310b01-2f26-4b7a-9042-d578226e021f';
|
||||
```
|
||||
|
||||
## System Config
|
||||
|
||||
```sql title="Custom settings"
|
||||
SELECT "key", "value" FROM "system_metadata" WHERE "key" = 'system-config';
|
||||
```
|
||||
|
||||
(Only used when not using the [config file](/docs/install/config-file))
|
||||
|
||||
## Persons
|
||||
|
||||
```sql title="Delete person and unset it for the faces it was associated with"
|
||||
DELETE FROM "person" WHERE "name" = 'PersonNameHere';
|
||||
```
|
||||
|
||||
## System
|
||||
|
||||
### Config
|
||||
|
||||
```sql title="Custom settings"
|
||||
SELECT "key", "value" FROM "system_metadata" WHERE "key" = 'system-config';
|
||||
```
|
||||
|
||||
(Only used when not using the [config file](/docs/install/config-file))
|
||||
|
||||
### File properties
|
||||
|
||||
```sql title="Without thumbnails"
|
||||
SELECT * FROM "asset" WHERE "asset"."previewPath" IS NULL OR "asset"."thumbnailPath" IS NULL;
|
||||
```
|
||||
|
||||
```sql title="Failed file movements"
|
||||
SELECT * FROM "move_history";
|
||||
```
|
||||
|
||||
## Postgres internal
|
||||
|
||||
```sql title="Change DB_PASSWORD"
|
||||
|
||||
@@ -12,7 +12,7 @@ If you want Immich to be able to delete the images in the external library or ad
|
||||
```diff
|
||||
immich-server:
|
||||
volumes:
|
||||
- ${UPLOAD_LOCATION}:/usr/src/app/upload
|
||||
- ${UPLOAD_LOCATION}:/data
|
||||
+ - /home/user/photos1:/home/user/photos1:ro
|
||||
+ - /mnt/photos2:/mnt/photos2:ro # you can delete this line if you only have one mount point, or you can add more lines if you have more than two
|
||||
```
|
||||
@@ -41,7 +41,7 @@ In the Immich web UI:
|
||||
- Click Add path
|
||||
<img src={require('./img/add-path-button.webp').default} width="50%" title="Add Path button" />
|
||||
|
||||
- Enter **/usr/src/app/external** as the path and click Add
|
||||
- Enter **/home/user/photos1** as the path and click Add
|
||||
<img src={require('./img/add-path-field.webp').default} width="50%" title="Add Path field" />
|
||||
|
||||
- Save the new path
|
||||
|
||||
@@ -52,9 +52,9 @@ REMOTE_BACKUP_PATH="/path/to/remote/backup/directory"
|
||||
### Local
|
||||
|
||||
# Backup Immich database
|
||||
docker exec -t immich_postgres pg_dumpall --clean --if-exists --username=postgres > "$UPLOAD_LOCATION"/database-backup/immich-database.sql
|
||||
docker exec -t immich_postgres pg_dumpall --clean --if-exists --username=<DB_USERNAME> > "$UPLOAD_LOCATION"/database-backup/immich-database.sql
|
||||
# For deduplicating backup programs such as Borg or Restic, compressing the content can increase backup size by making it harder to deduplicate. If you are using a different program or still prefer to compress, you can use the following command instead:
|
||||
# docker exec -t immich_postgres pg_dumpall --clean --if-exists --username=postgres | /usr/bin/gzip --rsyncable > "$UPLOAD_LOCATION"/database-backup/immich-database.sql.gz
|
||||
# docker exec -t immich_postgres pg_dumpall --clean --if-exists --username=<DB_USERNAME> | /usr/bin/gzip --rsyncable > "$UPLOAD_LOCATION"/database-backup/immich-database.sql.gz
|
||||
|
||||
### Append to local Borg repository
|
||||
borg create "$BACKUP_PATH/immich-borg::{now}" "$UPLOAD_LOCATION" --exclude "$UPLOAD_LOCATION"/thumbs/ --exclude "$UPLOAD_LOCATION"/encoded-video/
|
||||
|
||||
@@ -34,7 +34,7 @@ These environment variables are used by the `docker-compose.yml` file and do **N
|
||||
| `TZ` | Timezone | <sup>\*1</sup> | server | microservices |
|
||||
| `IMMICH_ENV` | Environment (production, development) | `production` | server, machine learning | api, microservices |
|
||||
| `IMMICH_LOG_LEVEL` | Log level (verbose, debug, log, warn, error) | `log` | server, machine learning | api, microservices |
|
||||
| `IMMICH_MEDIA_LOCATION` | Media location inside the container тЪая╕П**You probably shouldn't set this**<sup>\*2</sup>тЪая╕П | `./upload`<sup>\*3</sup> | server | api, microservices |
|
||||
| `IMMICH_MEDIA_LOCATION` | Media location inside the container тЪая╕П**You probably shouldn't set this**<sup>\*2</sup>тЪая╕П | `/data` | server | api, microservices |
|
||||
| `IMMICH_CONFIG_FILE` | Path to config file | | server | api, microservices |
|
||||
| `NO_COLOR` | Set to `true` to disable color-coded log output | `false` | server, machine learning | |
|
||||
| `CPU_CORES` | Number of cores available to the Immich server | auto-detected CPU core count | server | |
|
||||
@@ -49,9 +49,6 @@ These environment variables are used by the `docker-compose.yml` file and do **N
|
||||
|
||||
\*2: This path is where the Immich code looks for the files, which is internal to the docker container. Setting it to a path on your host will certainly break things, you should use the `UPLOAD_LOCATION` variable instead.
|
||||
|
||||
\*3: With the default `WORKDIR` of `/usr/src/app`, this path will resolve to `/usr/src/app/upload`.
|
||||
It only needs to be set if the Immich deployment method is changing.
|
||||
|
||||
## Workers
|
||||
|
||||
| Variable | Description | Default | Containers |
|
||||
@@ -72,22 +69,25 @@ Information on the current workers can be found [here](/docs/administration/jobs
|
||||
|
||||
## Database
|
||||
|
||||
| Variable | Description | Default | Containers |
|
||||
| :---------------------------------- | :--------------------------------------------------------------------------- | :--------: | :----------------------------- |
|
||||
| `DB_URL` | Database URL | | server |
|
||||
| `DB_HOSTNAME` | Database host | `database` | server |
|
||||
| `DB_PORT` | Database port | `5432` | server |
|
||||
| `DB_USERNAME` | Database user | `postgres` | server, database<sup>\*1</sup> |
|
||||
| `DB_PASSWORD` | Database password | `postgres` | server, database<sup>\*1</sup> |
|
||||
| `DB_DATABASE_NAME` | Database name | `immich` | server, database<sup>\*1</sup> |
|
||||
| `DB_SSL_MODE` | Database SSL mode | | server |
|
||||
| `DB_VECTOR_EXTENSION`<sup>\*2</sup> | Database vector extension (one of [`vectorchord`, `pgvector`, `pgvecto.rs`]) | | server |
|
||||
| `DB_SKIP_MIGRATIONS` | Whether to skip running migrations on startup (one of [`true`, `false`]) | `false` | server |
|
||||
| Variable | Description | Default | Containers |
|
||||
| :---------------------------------- | :------------------------------------------------------------------------------------- | :--------: | :----------------------------- |
|
||||
| `DB_URL` | Database URL | | server |
|
||||
| `DB_HOSTNAME` | Database host | `database` | server |
|
||||
| `DB_PORT` | Database port | `5432` | server |
|
||||
| `DB_USERNAME` | Database user | `postgres` | server, database<sup>\*1</sup> |
|
||||
| `DB_PASSWORD` | Database password | `postgres` | server, database<sup>\*1</sup> |
|
||||
| `DB_DATABASE_NAME` | Database name | `immich` | server, database<sup>\*1</sup> |
|
||||
| `DB_SSL_MODE` | Database SSL mode | | server |
|
||||
| `DB_VECTOR_EXTENSION`<sup>\*2</sup> | Database vector extension (one of [`vectorchord`, `pgvector`, `pgvecto.rs`]) | | server |
|
||||
| `DB_SKIP_MIGRATIONS` | Whether to skip running migrations on startup (one of [`true`, `false`]) | `false` | server |
|
||||
| `DB_STORAGE_TYPE` | Optimize concurrent IO on SSDs or sequential IO on HDDs ([`SSD`, `HDD`])<sup>\*3</sup> | `SSD` | server |
|
||||
|
||||
\*1: The values of `DB_USERNAME`, `DB_PASSWORD`, and `DB_DATABASE_NAME` are passed to the Postgres container as the variables `POSTGRES_USER`, `POSTGRES_PASSWORD`, and `POSTGRES_DB` in `docker-compose.yml`.
|
||||
|
||||
\*2: If not provided, the appropriate extension to use is auto-detected at startup by introspecting the database. When multiple extensions are installed, the order of preference is VectorChord, pgvecto.rs, pgvector.
|
||||
|
||||
\*3: Uses either [`postgresql.ssd.conf`](https://github.com/immich-app/base-images/blob/main/postgres/postgresql.ssd.conf) or [`postgresql.hdd.conf`](https://github.com/immich-app/base-images/blob/main/postgres/postgresql.hdd.conf) which mainly controls the Postgres `effective_io_concurrency` setting to allow for concurrenct IO on SSDs and sequential IO on HDDs.
|
||||
|
||||
:::info
|
||||
|
||||
All `DB_` variables must be provided to all Immich workers, including `api` and `microservices`.
|
||||
@@ -199,12 +199,11 @@ Additional machine learning parameters can be tuned from the admin UI.
|
||||
| `IMMICH_TELEMETRY_INCLUDE` | Collect these telemetries. List of `host`, `api`, `io`, `repo`, `job`. Note: You can also specify `all` to enable all | | server | api, microservices |
|
||||
| `IMMICH_TELEMETRY_EXCLUDE` | Do not collect these telemetries. List of `host`, `api`, `io`, `repo`, `job` | | server | api, microservices |
|
||||
|
||||
## Docker Secrets
|
||||
## Secrets
|
||||
|
||||
The following variables support the use of [Docker secrets][docker-secrets] for additional security.
|
||||
The following variables support reading from files, either via [Systemd Credentials][systemd-creds] or [Docker secrets][docker-secrets] for additional security.
|
||||
|
||||
To use any of these, replace the regular environment variable with the equivalent `_FILE` environment variable. The value of
|
||||
the `_FILE` variable should be set to the path of a file containing the variable value.
|
||||
To use any of these, either set `CREDENTIALS_DIRECTORY` to a directory that contains files whose name is the тАЬregular variableтАЭ name, and whose content is the secret. If using Docker Secrets, setting `CREDENTIALS_DIRECTORY=/run/secrets` will cause all secrets present to be used. Alternatively, replace the regular variable with the equivalent `_FILE` environment variable as below. The value of the `_FILE` variable should be set to the path of a file containing the variable value.
|
||||
|
||||
| Regular Variable | Equivalent Docker Secrets '\_FILE' Variable |
|
||||
| :----------------- | :------------------------------------------ |
|
||||
@@ -226,3 +225,4 @@ to use a Docker secret for the password in the Redis container.
|
||||
[docker-secrets-docs]: https://github.com/docker-library/docs/tree/master/postgres#docker-secrets
|
||||
[docker-secrets]: https://docs.docker.com/engine/swarm/secrets/
|
||||
[ioredis]: https://ioredis.readthedocs.io/en/latest/README/#connect-to-redis
|
||||
[systemd-creds]: https://systemd.io/CREDENTIALS/
|
||||
|
||||
@@ -75,7 +75,6 @@ alt="Select Plugins > Compose.Manager > Add New Stack > Label it Immich"
|
||||
5. Click "**Save Changes**", you will be prompted to edit stack UI labels, just leave this blank and click "**Ok**"
|
||||
6. Select the cog тЪЩя╕П next to Immich, click "**Edit Stack**", then click "**Env File**"
|
||||
7. Paste the entire contents of the [Immich example.env](https://github.com/immich-app/immich/releases/latest/download/example.env) file into the Unraid editor, then **before saving** edit the following:
|
||||
|
||||
- `UPLOAD_LOCATION`: Create a folder in your Images Unraid share and place the **absolute** location here > For example my _"images"_ share has a folder within it called _"immich"_. If I browse to this directory in the terminal and type `pwd` the output is `/mnt/user/images/immich`. This is the exact value I need to enter as my `UPLOAD_LOCATION`
|
||||
- `DB_DATA_LOCATION`: Change this to use an Unraid share (preferably a cache pool, e.g. `/mnt/user/appdata/postgresql/data`). This uses the `appdata` share. Do also create the `postgresql` folder, by running `mkdir /mnt/user/{share_location}/postgresql/data`. If left at default it will try to use Unraid's `/boot/config/plugins/compose.manager/projects/[stack_name]/postgres` folder which it doesn't have permissions to, resulting in this container continuously restarting.
|
||||
|
||||
|
||||
1533
docs/package-lock.json
generated
1533
docs/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -16,8 +16,9 @@
|
||||
"write-heading-ids": "docusaurus write-heading-ids"
|
||||
},
|
||||
"dependencies": {
|
||||
"@docusaurus/core": "~3.7.0",
|
||||
"@docusaurus/preset-classic": "~3.7.0",
|
||||
"@docusaurus/core": "~3.8.0",
|
||||
"@docusaurus/preset-classic": "~3.8.0",
|
||||
"@docusaurus/theme-common": "~3.8.0",
|
||||
"@mdi/js": "^7.3.67",
|
||||
"@mdi/react": "^1.6.1",
|
||||
"@mdx-js/react": "^3.0.0",
|
||||
@@ -26,6 +27,7 @@
|
||||
"clsx": "^2.0.0",
|
||||
"docusaurus-lunr-search": "^3.3.2",
|
||||
"docusaurus-preset-openapi": "^0.7.5",
|
||||
"lunr": "^2.3.9",
|
||||
"postcss": "^8.4.25",
|
||||
"prism-react-renderer": "^2.3.1",
|
||||
"raw-loader": "^4.0.2",
|
||||
@@ -35,7 +37,7 @@
|
||||
"url": "^0.11.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@docusaurus/module-type-aliases": "~3.7.0",
|
||||
"@docusaurus/module-type-aliases": "~3.8.0",
|
||||
"@docusaurus/tsconfig": "^3.7.0",
|
||||
"@docusaurus/types": "^3.7.0",
|
||||
"prettier": "^3.2.4",
|
||||
@@ -57,6 +59,6 @@
|
||||
"node": ">=20"
|
||||
},
|
||||
"volta": {
|
||||
"node": "22.16.0"
|
||||
"node": "22.17.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -58,6 +58,12 @@ const guides: CommunityGuidesProps[] = [
|
||||
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 {
|
||||
|
||||
@@ -100,6 +100,11 @@ const projects: CommunityProjectProps[] = [
|
||||
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',
|
||||
},
|
||||
];
|
||||
|
||||
function CommunityProject({ title, description, url }: CommunityProjectProps): JSX.Element {
|
||||
|
||||
@@ -2,4 +2,23 @@
|
||||
|
||||
## TypeORM Upgrade
|
||||
|
||||
The upgrade to Immich `v2.x.x` has a required upgrade path to `v1.132.0+`. This means it is required to start up the application at least once on version `1.132.0` (or later). Doing so will complete database schema upgrades that are required for `v2.0.0`. After Immich has successfully booted on this version, shut the system down and try the `v2.x.x` upgrade again.
|
||||
In order to update to Immich to `v1.137.0` (or above), the application must be started at least once on a version in the range between `1.132.0` and `1.136.0`. Doing so will complete database schema upgrades that are required for `v1.137.0` (and above). After Immich has successfully updated to a version in this range, you can now attempt to update to v1.137.0 (or above). We recommend users upgrade to `1.132.0` since it does not have any other breaking changes.
|
||||
|
||||
## Inconsistent Media Location
|
||||
|
||||
:::caution
|
||||
This error is related to the location of media files _inside the container_. Never move files on the host system when you run into this error message.
|
||||
:::
|
||||
|
||||
Immich automatically tries to detect where your Immich data is located. On start up, it compares the detected media location with the file paths in the database and throws an Inconsistent Media Location error when they do not match.
|
||||
|
||||
To fix this issue, verify that the `IMMICH_MEDIA_LOCATION` environment variable and `UPLOAD_LOCATION` volume mount are in sync with the database paths.
|
||||
|
||||
If you would like to migrate from one media location to another, simply successfully start Immich on `v1.136.0` or later, then do the following steps:
|
||||
|
||||
1. Stop Immich
|
||||
2. Update `IMMICH_MEDIA_LOCATION` to the new location
|
||||
3. Update the right-hand side of the `UPLOAD_LOCATION` volume mount to the new location
|
||||
4. Start up Immich
|
||||
|
||||
After version `1.136.0`, Immich can detect when a media location has moved and will automatically update the database paths to keep them in sync.
|
||||
|
||||
@@ -85,6 +85,7 @@ import React from 'react';
|
||||
import { Item, Timeline } from '../components/timeline';
|
||||
|
||||
const releases = {
|
||||
'v1.135.0': new Date(2025, 5, 18),
|
||||
'v1.133.0': new Date(2025, 4, 21),
|
||||
'v1.130.0': new Date(2025, 2, 25),
|
||||
'v1.127.0': new Date(2025, 1, 26),
|
||||
@@ -196,14 +197,6 @@ const roadmap: Item[] = [
|
||||
description: 'Automate tasks with workflows',
|
||||
getDateLabel: () => 'Planned for 2025',
|
||||
},
|
||||
{
|
||||
done: false,
|
||||
icon: mdiTableKey,
|
||||
iconColor: 'gray',
|
||||
title: 'Fine grained access controls',
|
||||
description: 'Granular access controls for users and api keys',
|
||||
getDateLabel: () => 'Planned for 2025',
|
||||
},
|
||||
{
|
||||
done: false,
|
||||
icon: mdiImageEdit,
|
||||
@@ -239,12 +232,26 @@ const roadmap: Item[] = [
|
||||
];
|
||||
|
||||
const milestones: Item[] = [
|
||||
{
|
||||
icon: mdiStar,
|
||||
iconColor: 'gold',
|
||||
title: '70,000 Stars',
|
||||
description: 'Reached 70K Stars on GitHub!',
|
||||
getDateLabel: withLanguage(new Date(2025, 6, 9)),
|
||||
},
|
||||
withRelease({
|
||||
icon: mdiTableKey,
|
||||
iconColor: 'gray',
|
||||
title: 'Fine grained access controls',
|
||||
description: 'Granular access controls for api keys',
|
||||
release: 'v1.135.0',
|
||||
}),
|
||||
withRelease({
|
||||
icon: mdiCast,
|
||||
iconColor: 'aqua',
|
||||
title: 'Google Cast (web)',
|
||||
title: 'Google Cast (web and mobile)',
|
||||
description: 'Cast assets to Google Cast/Chromecast compatible devices',
|
||||
release: 'v1.133.0',
|
||||
release: 'v1.135.0',
|
||||
}),
|
||||
withRelease({
|
||||
icon: mdiLockOutline,
|
||||
|
||||
5
docs/static/_redirects
vendored
5
docs/static/_redirects
vendored
@@ -1,4 +1,5 @@
|
||||
/docs /docs/overview/introduction 307
|
||||
/docs /docs/overview/welcome 307
|
||||
/docs/ /docs/overview/welcome 307
|
||||
/docs/mobile-app-beta-program /docs/features/mobile-app 307
|
||||
/docs/contribution-guidelines /docs/overview/support-the-project#contributing 307
|
||||
/docs/install /docs/install/docker-compose 307
|
||||
@@ -30,4 +31,4 @@
|
||||
/docs/guides/api-album-sync /docs/community-projects 307
|
||||
/docs/guides/remove-offline-files /docs/community-projects 307
|
||||
/milestones /roadmap 307
|
||||
/docs/overview/introduction /docs/overview/welcome 307
|
||||
/docs/overview/introduction /docs/overview/welcome 307
|
||||
|
||||
12
docs/static/archived-versions.json
vendored
12
docs/static/archived-versions.json
vendored
@@ -1,4 +1,16 @@
|
||||
[
|
||||
{
|
||||
"label": "v1.137.1",
|
||||
"url": "https://v1.137.1.archive.immich.app"
|
||||
},
|
||||
{
|
||||
"label": "v1.137.0",
|
||||
"url": "https://v1.137.0.archive.immich.app"
|
||||
},
|
||||
{
|
||||
"label": "v1.136.0",
|
||||
"url": "https://v1.136.0.archive.immich.app"
|
||||
},
|
||||
{
|
||||
"label": "v1.135.3",
|
||||
"url": "https://v1.135.3.archive.immich.app"
|
||||
|
||||
@@ -1 +1 @@
|
||||
22.16.0
|
||||
22.17.1
|
||||
|
||||
@@ -3,7 +3,6 @@ name: immich-e2e
|
||||
services:
|
||||
immich-server:
|
||||
container_name: immich-e2e-server
|
||||
command: ['./start.sh']
|
||||
image: immich-server:latest
|
||||
build:
|
||||
context: ../
|
||||
@@ -36,10 +35,10 @@ services:
|
||||
- 2285:2285
|
||||
|
||||
redis:
|
||||
image: redis:6.2-alpine@sha256:3211c33a618c457e5d241922c975dbc4f446d0bdb2dc75694f5573ef8e2d01fa
|
||||
image: redis:6.2-alpine@sha256:7fe72c486b910f6b1a9769c937dad5d63648ddee82e056f47417542dd40825bb
|
||||
|
||||
database:
|
||||
image: ghcr.io/immich-app/postgres:14-vectorchord0.3.0@sha256:3aef84a0a4fabbda17ef115c3019ba0c914ec73e9f6e59203674322d858b8eea
|
||||
image: ghcr.io/immich-app/postgres:14-vectorchord0.3.0@sha256:0e763a2383d56f90364fcd72767ac41400cd30d2627f407f7e7960c9f1923c21
|
||||
command: -c fsync=off -c shared_preload_libraries=vchord.so -c config_file=/var/lib/postgresql/data/postgresql.conf
|
||||
environment:
|
||||
POSTGRES_PASSWORD: postgres
|
||||
|
||||
1323
e2e/package-lock.json
generated
1323
e2e/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "immich-e2e",
|
||||
"version": "1.135.3",
|
||||
"version": "1.137.1",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"type": "module",
|
||||
@@ -24,15 +24,16 @@
|
||||
"@immich/cli": "file:../cli",
|
||||
"@immich/sdk": "file:../open-api/typescript-sdk",
|
||||
"@playwright/test": "^1.44.1",
|
||||
"@socket.io/component-emitter": "^3.1.2",
|
||||
"@types/luxon": "^3.4.2",
|
||||
"@types/node": "^22.15.32",
|
||||
"@types/node": "^22.16.5",
|
||||
"@types/oidc-provider": "^9.0.0",
|
||||
"@types/pg": "^8.15.1",
|
||||
"@types/pngjs": "^6.0.4",
|
||||
"@types/supertest": "^6.0.2",
|
||||
"@vitest/coverage-v8": "^3.0.0",
|
||||
"eslint": "^9.14.0",
|
||||
"eslint-config-prettier": "^10.0.0",
|
||||
"eslint-config-prettier": "^10.1.8",
|
||||
"eslint-plugin-prettier": "^5.1.3",
|
||||
"eslint-plugin-unicorn": "^59.0.0",
|
||||
"exiftool-vendored": "^28.3.1",
|
||||
@@ -44,6 +45,7 @@
|
||||
"pngjs": "^7.0.0",
|
||||
"prettier": "^3.2.5",
|
||||
"prettier-plugin-organize-imports": "^4.0.0",
|
||||
"sharp": "^0.34.0",
|
||||
"socket.io-client": "^4.7.4",
|
||||
"supertest": "^7.0.0",
|
||||
"typescript": "^5.3.3",
|
||||
@@ -52,6 +54,6 @@
|
||||
"vitest": "^3.0.0"
|
||||
},
|
||||
"volta": {
|
||||
"node": "22.16.0"
|
||||
"node": "22.17.1"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ import {
|
||||
ReactionType,
|
||||
createActivity as create,
|
||||
createAlbum,
|
||||
removeAssetFromAlbum,
|
||||
} from '@immich/sdk';
|
||||
import { createUserDto, uuidDto } from 'src/fixtures';
|
||||
import { errorDto } from 'src/responses';
|
||||
@@ -342,5 +343,36 @@ describe('/activities', () => {
|
||||
|
||||
expect(status).toBe(204);
|
||||
});
|
||||
|
||||
it('should return empty list when asset is removed', async () => {
|
||||
const album3 = await createAlbum(
|
||||
{
|
||||
createAlbumDto: {
|
||||
albumName: 'Album 3',
|
||||
assetIds: [asset.id],
|
||||
},
|
||||
},
|
||||
{ headers: asBearerAuth(admin.accessToken) },
|
||||
);
|
||||
|
||||
await createActivity({ albumId: album3.id, assetId: asset.id, type: ReactionType.Like });
|
||||
|
||||
await removeAssetFromAlbum(
|
||||
{
|
||||
id: album3.id,
|
||||
bulkIdsDto: {
|
||||
ids: [asset.id],
|
||||
},
|
||||
},
|
||||
{ headers: asBearerAuth(admin.accessToken) },
|
||||
);
|
||||
|
||||
const { status, body } = await request(app)
|
||||
.get('/activities')
|
||||
.query({ albumId: album.id })
|
||||
.set('Authorization', `Bearer ${admin.accessToken}`);
|
||||
expect(status).toEqual(200);
|
||||
expect(body).toEqual([]);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@@ -470,7 +470,7 @@ describe('/albums', () => {
|
||||
.send({ ids: [asset.id] });
|
||||
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.badRequest('Not found or no album.addAsset access'));
|
||||
expect(body).toEqual(errorDto.badRequest('Not found or no albumAsset.create access'));
|
||||
});
|
||||
|
||||
it('should add duplicate assets only once', async () => {
|
||||
@@ -599,7 +599,7 @@ describe('/albums', () => {
|
||||
.send({ ids: [user1Asset1.id] });
|
||||
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.badRequest('Not found or no album.removeAsset access'));
|
||||
expect(body).toEqual(errorDto.badRequest('Not found or no albumAsset.delete access'));
|
||||
});
|
||||
|
||||
it('should remove duplicate assets only once', async () => {
|
||||
|
||||
@@ -20,7 +20,7 @@ describe('/api-keys', () => {
|
||||
});
|
||||
|
||||
beforeEach(async () => {
|
||||
await utils.resetDatabase(['api_keys']);
|
||||
await utils.resetDatabase(['api_key']);
|
||||
});
|
||||
|
||||
describe('POST /api-keys', () => {
|
||||
|
||||
@@ -15,6 +15,7 @@ import { DateTime } from 'luxon';
|
||||
import { randomBytes } from 'node:crypto';
|
||||
import { readFile, writeFile } from 'node:fs/promises';
|
||||
import { basename, join } from 'node:path';
|
||||
import sharp from 'sharp';
|
||||
import { Socket } from 'socket.io-client';
|
||||
import { createUserDto, uuidDto } from 'src/fixtures';
|
||||
import { makeRandomImage } from 'src/generators';
|
||||
@@ -40,6 +41,40 @@ const today = DateTime.fromObject({
|
||||
}) as DateTime<true>;
|
||||
const yesterday = today.minus({ days: 1 });
|
||||
|
||||
const createTestImageWithExif = async (filename: string, exifData: Record<string, any>) => {
|
||||
// Generate unique color to ensure different checksums for each image
|
||||
const r = Math.floor(Math.random() * 256);
|
||||
const g = Math.floor(Math.random() * 256);
|
||||
const b = Math.floor(Math.random() * 256);
|
||||
|
||||
// Create a 100x100 solid color JPEG using Sharp
|
||||
const imageBytes = await sharp({
|
||||
create: {
|
||||
width: 100,
|
||||
height: 100,
|
||||
channels: 3,
|
||||
background: { r, g, b },
|
||||
},
|
||||
})
|
||||
.jpeg({ quality: 90 })
|
||||
.toBuffer();
|
||||
|
||||
// Add random suffix to filename to avoid collisions
|
||||
const uniqueFilename = filename.replace('.jpg', `-${randomBytes(4).toString('hex')}.jpg`);
|
||||
const filepath = join(tempDir, uniqueFilename);
|
||||
await writeFile(filepath, imageBytes);
|
||||
|
||||
// Filter out undefined values before writing EXIF
|
||||
const cleanExifData = Object.fromEntries(Object.entries(exifData).filter(([, value]) => value !== undefined));
|
||||
|
||||
await exiftool.write(filepath, cleanExifData);
|
||||
|
||||
// Re-read the image bytes after EXIF has been written
|
||||
const finalImageBytes = await readFile(filepath);
|
||||
|
||||
return { filepath, imageBytes: finalImageBytes, filename: uniqueFilename };
|
||||
};
|
||||
|
||||
describe('/asset', () => {
|
||||
let admin: LoginResponseDto;
|
||||
let websocket: Socket;
|
||||
@@ -1190,6 +1225,411 @@ describe('/asset', () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe('EXIF metadata extraction', () => {
|
||||
describe('Additional date tag extraction', () => {
|
||||
describe('Date-time vs time-only tag handling', () => {
|
||||
it('should fall back to file timestamps when only time-only tags are available', async () => {
|
||||
const { imageBytes, filename } = await createTestImageWithExif('time-only-fallback.jpg', {
|
||||
TimeCreated: '2023:11:15 14:30:00', // Time-only tag, should not be used for dateTimeOriginal
|
||||
// Exclude all date-time tags to force fallback to file timestamps
|
||||
SubSecDateTimeOriginal: undefined,
|
||||
DateTimeOriginal: undefined,
|
||||
SubSecCreateDate: undefined,
|
||||
SubSecMediaCreateDate: undefined,
|
||||
CreateDate: undefined,
|
||||
MediaCreateDate: undefined,
|
||||
CreationDate: undefined,
|
||||
DateTimeCreated: undefined,
|
||||
GPSDateTime: undefined,
|
||||
DateTimeUTC: undefined,
|
||||
SonyDateTime2: undefined,
|
||||
GPSDateStamp: undefined,
|
||||
});
|
||||
|
||||
const oldDate = new Date('2020-01-01T00:00:00.000Z');
|
||||
const asset = await utils.createAsset(admin.accessToken, {
|
||||
assetData: {
|
||||
filename,
|
||||
bytes: imageBytes,
|
||||
},
|
||||
fileCreatedAt: oldDate.toISOString(),
|
||||
fileModifiedAt: oldDate.toISOString(),
|
||||
});
|
||||
|
||||
await utils.waitForWebsocketEvent({ event: 'assetUpload', id: asset.id });
|
||||
|
||||
const assetInfo = await getAssetInfo({ id: asset.id }, { headers: asBearerAuth(admin.accessToken) });
|
||||
|
||||
expect(assetInfo.exifInfo?.dateTimeOriginal).toBeDefined();
|
||||
// Should fall back to file timestamps, which we set to 2020-01-01
|
||||
expect(new Date(assetInfo.exifInfo!.dateTimeOriginal!).getTime()).toBe(
|
||||
new Date('2020-01-01T00:00:00.000Z').getTime(),
|
||||
);
|
||||
});
|
||||
|
||||
it('should prefer DateTimeOriginal over time-only tags', async () => {
|
||||
const { imageBytes, filename } = await createTestImageWithExif('datetime-over-time.jpg', {
|
||||
DateTimeOriginal: '2023:10:10 10:00:00', // Should be preferred
|
||||
TimeCreated: '2023:11:15 14:30:00', // Should be ignored (time-only)
|
||||
});
|
||||
|
||||
const asset = await utils.createAsset(admin.accessToken, {
|
||||
assetData: {
|
||||
filename,
|
||||
bytes: imageBytes,
|
||||
},
|
||||
});
|
||||
|
||||
await utils.waitForWebsocketEvent({ event: 'assetUpload', id: asset.id });
|
||||
|
||||
const assetInfo = await getAssetInfo({ id: asset.id }, { headers: asBearerAuth(admin.accessToken) });
|
||||
|
||||
expect(assetInfo.exifInfo?.dateTimeOriginal).toBeDefined();
|
||||
// Should use DateTimeOriginal, not TimeCreated
|
||||
expect(new Date(assetInfo.exifInfo!.dateTimeOriginal!).getTime()).toBe(
|
||||
new Date('2023-10-10T10:00:00.000Z').getTime(),
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
describe('GPSDateTime tag extraction', () => {
|
||||
it('should extract GPSDateTime with GPS coordinates', async () => {
|
||||
const { imageBytes, filename } = await createTestImageWithExif('gps-datetime.jpg', {
|
||||
GPSDateTime: '2023:11:15 12:30:00Z',
|
||||
GPSLatitude: 37.7749,
|
||||
GPSLongitude: -122.4194,
|
||||
// Exclude other date tags
|
||||
SubSecDateTimeOriginal: undefined,
|
||||
DateTimeOriginal: undefined,
|
||||
SubSecCreateDate: undefined,
|
||||
SubSecMediaCreateDate: undefined,
|
||||
CreateDate: undefined,
|
||||
MediaCreateDate: undefined,
|
||||
CreationDate: undefined,
|
||||
DateTimeCreated: undefined,
|
||||
TimeCreated: undefined,
|
||||
});
|
||||
|
||||
const asset = await utils.createAsset(admin.accessToken, {
|
||||
assetData: {
|
||||
filename,
|
||||
bytes: imageBytes,
|
||||
},
|
||||
});
|
||||
|
||||
await utils.waitForWebsocketEvent({ event: 'assetUpload', id: asset.id });
|
||||
|
||||
const assetInfo = await getAssetInfo({ id: asset.id }, { headers: asBearerAuth(admin.accessToken) });
|
||||
|
||||
expect(assetInfo.exifInfo?.dateTimeOriginal).toBeDefined();
|
||||
expect(assetInfo.exifInfo?.latitude).toBeCloseTo(37.7749, 4);
|
||||
expect(assetInfo.exifInfo?.longitude).toBeCloseTo(-122.4194, 4);
|
||||
expect(new Date(assetInfo.exifInfo!.dateTimeOriginal!).getTime()).toBe(
|
||||
new Date('2023-11-15T12:30:00.000Z').getTime(),
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
describe('CreateDate tag extraction', () => {
|
||||
it('should extract CreateDate when available', async () => {
|
||||
const { imageBytes, filename } = await createTestImageWithExif('create-date.jpg', {
|
||||
CreateDate: '2023:11:15 10:30:00',
|
||||
// Exclude other higher priority date tags
|
||||
SubSecDateTimeOriginal: undefined,
|
||||
DateTimeOriginal: undefined,
|
||||
SubSecCreateDate: undefined,
|
||||
SubSecMediaCreateDate: undefined,
|
||||
MediaCreateDate: undefined,
|
||||
CreationDate: undefined,
|
||||
DateTimeCreated: undefined,
|
||||
TimeCreated: undefined,
|
||||
GPSDateTime: undefined,
|
||||
});
|
||||
|
||||
const asset = await utils.createAsset(admin.accessToken, {
|
||||
assetData: {
|
||||
filename,
|
||||
bytes: imageBytes,
|
||||
},
|
||||
});
|
||||
|
||||
await utils.waitForWebsocketEvent({ event: 'assetUpload', id: asset.id });
|
||||
|
||||
const assetInfo = await getAssetInfo({ id: asset.id }, { headers: asBearerAuth(admin.accessToken) });
|
||||
|
||||
expect(assetInfo.exifInfo?.dateTimeOriginal).toBeDefined();
|
||||
expect(new Date(assetInfo.exifInfo!.dateTimeOriginal!).getTime()).toBe(
|
||||
new Date('2023-11-15T10:30:00.000Z').getTime(),
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
describe('GPSDateStamp tag extraction', () => {
|
||||
it('should fall back to file timestamps when only date-only tags are available', async () => {
|
||||
const { imageBytes, filename } = await createTestImageWithExif('gps-datestamp.jpg', {
|
||||
GPSDateStamp: '2023:11:15', // Date-only tag, should not be used for dateTimeOriginal
|
||||
// Note: NOT including GPSTimeStamp to avoid automatic GPSDateTime creation
|
||||
GPSLatitude: 51.5074,
|
||||
GPSLongitude: -0.1278,
|
||||
// Explicitly exclude all testable date-time tags to force fallback to file timestamps
|
||||
DateTimeOriginal: undefined,
|
||||
CreateDate: undefined,
|
||||
CreationDate: undefined,
|
||||
GPSDateTime: undefined,
|
||||
});
|
||||
|
||||
const oldDate = new Date('2020-01-01T00:00:00.000Z');
|
||||
const asset = await utils.createAsset(admin.accessToken, {
|
||||
assetData: {
|
||||
filename,
|
||||
bytes: imageBytes,
|
||||
},
|
||||
fileCreatedAt: oldDate.toISOString(),
|
||||
fileModifiedAt: oldDate.toISOString(),
|
||||
});
|
||||
|
||||
await utils.waitForWebsocketEvent({ event: 'assetUpload', id: asset.id });
|
||||
|
||||
const assetInfo = await getAssetInfo({ id: asset.id }, { headers: asBearerAuth(admin.accessToken) });
|
||||
|
||||
expect(assetInfo.exifInfo?.dateTimeOriginal).toBeDefined();
|
||||
expect(assetInfo.exifInfo?.latitude).toBeCloseTo(51.5074, 4);
|
||||
expect(assetInfo.exifInfo?.longitude).toBeCloseTo(-0.1278, 4);
|
||||
// Should fall back to file timestamps, which we set to 2020-01-01
|
||||
expect(new Date(assetInfo.exifInfo!.dateTimeOriginal!).getTime()).toBe(
|
||||
new Date('2020-01-01T00:00:00.000Z').getTime(),
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
/*
|
||||
* NOTE: The following EXIF date tags are NOT effectively usable with JPEG test files:
|
||||
*
|
||||
* NOT WRITABLE to JPEG:
|
||||
* - MediaCreateDate: Can be read from video files but not written to JPEG
|
||||
* - DateTimeCreated: Read-only tag in JPEG format
|
||||
* - DateTimeUTC: Cannot be written to JPEG files
|
||||
* - SonyDateTime2: Proprietary Sony tag, not writable to JPEG
|
||||
* - SubSecMediaCreateDate: Tag not defined for JPEG format
|
||||
* - SourceImageCreateTime: Non-standard insta360 tag, not writable to JPEG
|
||||
*
|
||||
* WRITABLE but NOT READABLE from JPEG:
|
||||
* - SubSecDateTimeOriginal: Can be written but not read back from JPEG
|
||||
* - SubSecCreateDate: Can be written but not read back from JPEG
|
||||
*
|
||||
* EFFECTIVELY TESTABLE TAGS (writable and readable):
|
||||
* - DateTimeOriginal тЬУ
|
||||
* - CreateDate тЬУ
|
||||
* - CreationDate тЬУ
|
||||
* - GPSDateTime тЬУ
|
||||
*
|
||||
* The metadata service correctly handles non-readable tags and will fall back to
|
||||
* file timestamps when only non-readable tags are present.
|
||||
*/
|
||||
|
||||
describe('Date tag priority order', () => {
|
||||
it('should respect the complete date tag priority order', async () => {
|
||||
// Test cases using only EFFECTIVELY TESTABLE tags (writable AND readable from JPEG)
|
||||
const testCases = [
|
||||
{
|
||||
name: 'DateTimeOriginal has highest priority among testable tags',
|
||||
exifData: {
|
||||
DateTimeOriginal: '2023:04:04 04:00:00', // TESTABLE - highest priority among readable tags
|
||||
CreateDate: '2023:05:05 05:00:00', // TESTABLE
|
||||
CreationDate: '2023:07:07 07:00:00', // TESTABLE
|
||||
GPSDateTime: '2023:10:10 10:00:00', // TESTABLE
|
||||
},
|
||||
expectedDate: '2023-04-04T04:00:00.000Z',
|
||||
},
|
||||
{
|
||||
name: 'CreateDate when DateTimeOriginal missing',
|
||||
exifData: {
|
||||
CreateDate: '2023:05:05 05:00:00', // TESTABLE
|
||||
CreationDate: '2023:07:07 07:00:00', // TESTABLE
|
||||
GPSDateTime: '2023:10:10 10:00:00', // TESTABLE
|
||||
},
|
||||
expectedDate: '2023-05-05T05:00:00.000Z',
|
||||
},
|
||||
{
|
||||
name: 'CreationDate when standard EXIF tags missing',
|
||||
exifData: {
|
||||
CreationDate: '2023:07:07 07:00:00', // TESTABLE
|
||||
GPSDateTime: '2023:10:10 10:00:00', // TESTABLE
|
||||
},
|
||||
expectedDate: '2023-07-07T07:00:00.000Z',
|
||||
},
|
||||
{
|
||||
name: 'GPSDateTime when no other testable date tags present',
|
||||
exifData: {
|
||||
GPSDateTime: '2023:10:10 10:00:00', // TESTABLE
|
||||
Make: 'SONY',
|
||||
},
|
||||
expectedDate: '2023-10-10T10:00:00.000Z',
|
||||
},
|
||||
];
|
||||
|
||||
for (const testCase of testCases) {
|
||||
const { imageBytes, filename } = await createTestImageWithExif(
|
||||
`${testCase.name.replaceAll(/\s+/g, '-').toLowerCase()}.jpg`,
|
||||
testCase.exifData,
|
||||
);
|
||||
|
||||
const asset = await utils.createAsset(admin.accessToken, {
|
||||
assetData: {
|
||||
filename,
|
||||
bytes: imageBytes,
|
||||
},
|
||||
});
|
||||
|
||||
await utils.waitForWebsocketEvent({ event: 'assetUpload', id: asset.id });
|
||||
|
||||
const assetInfo = await getAssetInfo({ id: asset.id }, { headers: asBearerAuth(admin.accessToken) });
|
||||
|
||||
expect(assetInfo.exifInfo?.dateTimeOriginal, `Failed for: ${testCase.name}`).toBeDefined();
|
||||
expect(
|
||||
new Date(assetInfo.exifInfo!.dateTimeOriginal!).getTime(),
|
||||
`Date mismatch for: ${testCase.name}`,
|
||||
).toBe(new Date(testCase.expectedDate).getTime());
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
describe('Edge cases for date tag handling', () => {
|
||||
it('should fall back to file timestamps with GPSDateStamp alone', async () => {
|
||||
const { imageBytes, filename } = await createTestImageWithExif('gps-datestamp-only.jpg', {
|
||||
GPSDateStamp: '2023:08:08', // Date-only tag, should not be used for dateTimeOriginal
|
||||
// Intentionally no GPSTimeStamp
|
||||
// Exclude all other date tags
|
||||
SubSecDateTimeOriginal: undefined,
|
||||
DateTimeOriginal: undefined,
|
||||
SubSecCreateDate: undefined,
|
||||
SubSecMediaCreateDate: undefined,
|
||||
CreateDate: undefined,
|
||||
MediaCreateDate: undefined,
|
||||
CreationDate: undefined,
|
||||
DateTimeCreated: undefined,
|
||||
TimeCreated: undefined,
|
||||
GPSDateTime: undefined,
|
||||
DateTimeUTC: undefined,
|
||||
});
|
||||
|
||||
const oldDate = new Date('2020-01-01T00:00:00.000Z');
|
||||
const asset = await utils.createAsset(admin.accessToken, {
|
||||
assetData: {
|
||||
filename,
|
||||
bytes: imageBytes,
|
||||
},
|
||||
fileCreatedAt: oldDate.toISOString(),
|
||||
fileModifiedAt: oldDate.toISOString(),
|
||||
});
|
||||
|
||||
await utils.waitForWebsocketEvent({ event: 'assetUpload', id: asset.id });
|
||||
|
||||
const assetInfo = await getAssetInfo({ id: asset.id }, { headers: asBearerAuth(admin.accessToken) });
|
||||
|
||||
expect(assetInfo.exifInfo?.dateTimeOriginal).toBeDefined();
|
||||
// Should fall back to file timestamps, which we set to 2020-01-01
|
||||
expect(new Date(assetInfo.exifInfo!.dateTimeOriginal!).getTime()).toBe(
|
||||
new Date('2020-01-01T00:00:00.000Z').getTime(),
|
||||
);
|
||||
});
|
||||
|
||||
it('should handle all testable date tags present to verify complete priority order', async () => {
|
||||
const { imageBytes, filename } = await createTestImageWithExif('all-testable-date-tags.jpg', {
|
||||
// All TESTABLE date tags to JPEG format (writable AND readable)
|
||||
DateTimeOriginal: '2023:04:04 04:00:00', // TESTABLE - highest priority among readable tags
|
||||
CreateDate: '2023:05:05 05:00:00', // TESTABLE
|
||||
CreationDate: '2023:07:07 07:00:00', // TESTABLE
|
||||
GPSDateTime: '2023:10:10 10:00:00', // TESTABLE
|
||||
// Note: Excluded non-testable tags:
|
||||
// SubSec tags: writable but not readable from JPEG
|
||||
// Non-writable tags: MediaCreateDate, DateTimeCreated, DateTimeUTC, SonyDateTime2, etc.
|
||||
// Time-only/date-only tags: already excluded from EXIF_DATE_TAGS
|
||||
});
|
||||
|
||||
const asset = await utils.createAsset(admin.accessToken, {
|
||||
assetData: {
|
||||
filename,
|
||||
bytes: imageBytes,
|
||||
},
|
||||
});
|
||||
|
||||
await utils.waitForWebsocketEvent({ event: 'assetUpload', id: asset.id });
|
||||
|
||||
const assetInfo = await getAssetInfo({ id: asset.id }, { headers: asBearerAuth(admin.accessToken) });
|
||||
|
||||
expect(assetInfo.exifInfo?.dateTimeOriginal).toBeDefined();
|
||||
// Should use DateTimeOriginal as it has the highest priority among testable tags
|
||||
expect(new Date(assetInfo.exifInfo!.dateTimeOriginal!).getTime()).toBe(
|
||||
new Date('2023-04-04T04:00:00.000Z').getTime(),
|
||||
);
|
||||
});
|
||||
|
||||
it('should use CreationDate when SubSec tags are missing', async () => {
|
||||
const { imageBytes, filename } = await createTestImageWithExif('creation-date-priority.jpg', {
|
||||
CreationDate: '2023:07:07 07:00:00', // WRITABLE
|
||||
GPSDateTime: '2023:10:10 10:00:00', // WRITABLE
|
||||
// Note: DateTimeCreated, DateTimeUTC, SonyDateTime2 are NOT writable to JPEG
|
||||
// Note: TimeCreated and GPSDateStamp are excluded from EXIF_DATE_TAGS (time-only/date-only)
|
||||
// Exclude SubSec and standard EXIF tags
|
||||
SubSecDateTimeOriginal: undefined,
|
||||
DateTimeOriginal: undefined,
|
||||
SubSecCreateDate: undefined,
|
||||
CreateDate: undefined,
|
||||
});
|
||||
|
||||
const asset = await utils.createAsset(admin.accessToken, {
|
||||
assetData: {
|
||||
filename,
|
||||
bytes: imageBytes,
|
||||
},
|
||||
});
|
||||
|
||||
await utils.waitForWebsocketEvent({ event: 'assetUpload', id: asset.id });
|
||||
|
||||
const assetInfo = await getAssetInfo({ id: asset.id }, { headers: asBearerAuth(admin.accessToken) });
|
||||
|
||||
expect(assetInfo.exifInfo?.dateTimeOriginal).toBeDefined();
|
||||
// Should use CreationDate when available
|
||||
expect(new Date(assetInfo.exifInfo!.dateTimeOriginal!).getTime()).toBe(
|
||||
new Date('2023-07-07T07:00:00.000Z').getTime(),
|
||||
);
|
||||
});
|
||||
|
||||
it('should skip invalid date formats and use next valid tag', async () => {
|
||||
const { imageBytes, filename } = await createTestImageWithExif('invalid-date-handling.jpg', {
|
||||
// Note: Testing invalid date handling with only WRITABLE tags
|
||||
GPSDateTime: '2023:10:10 10:00:00', // WRITABLE - Valid date
|
||||
CreationDate: '2023:13:13 13:00:00', // WRITABLE - Valid date
|
||||
// Note: TimeCreated excluded (time-only), DateTimeCreated not writable to JPEG
|
||||
// Exclude other date tags
|
||||
SubSecDateTimeOriginal: undefined,
|
||||
DateTimeOriginal: undefined,
|
||||
SubSecCreateDate: undefined,
|
||||
CreateDate: undefined,
|
||||
});
|
||||
|
||||
const asset = await utils.createAsset(admin.accessToken, {
|
||||
assetData: {
|
||||
filename,
|
||||
bytes: imageBytes,
|
||||
},
|
||||
});
|
||||
|
||||
await utils.waitForWebsocketEvent({ event: 'assetUpload', id: asset.id });
|
||||
|
||||
const assetInfo = await getAssetInfo({ id: asset.id }, { headers: asBearerAuth(admin.accessToken) });
|
||||
|
||||
expect(assetInfo.exifInfo?.dateTimeOriginal).toBeDefined();
|
||||
// Should skip invalid dates and use the first valid one (GPSDateTime)
|
||||
expect(new Date(assetInfo.exifInfo!.dateTimeOriginal!).getTime()).toBe(
|
||||
new Date('2023-10-10T10:00:00.000Z').getTime(),
|
||||
);
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('POST /assets/exist', () => {
|
||||
it('ignores invalid deviceAssetIds', async () => {
|
||||
const response = await utils.checkExistingAssets(user1.accessToken, {
|
||||
|
||||
@@ -1,146 +0,0 @@
|
||||
import { LoginResponseDto, login, signUpAdmin } from '@immich/sdk';
|
||||
import { loginDto, signupDto } from 'src/fixtures';
|
||||
import { errorDto, loginResponseDto, signupResponseDto } from 'src/responses';
|
||||
import { app, utils } from 'src/utils';
|
||||
import request from 'supertest';
|
||||
import { beforeEach, describe, expect, it } from 'vitest';
|
||||
|
||||
const { email, password } = signupDto.admin;
|
||||
|
||||
describe(`/auth/admin-sign-up`, () => {
|
||||
beforeEach(async () => {
|
||||
await utils.resetDatabase();
|
||||
});
|
||||
|
||||
describe('POST /auth/admin-sign-up', () => {
|
||||
it(`should sign up the admin`, async () => {
|
||||
const { status, body } = await request(app).post('/auth/admin-sign-up').send(signupDto.admin);
|
||||
expect(status).toBe(201);
|
||||
expect(body).toEqual(signupResponseDto.admin);
|
||||
});
|
||||
|
||||
it('should not allow a second admin to sign up', async () => {
|
||||
await signUpAdmin({ signUpDto: signupDto.admin });
|
||||
|
||||
const { status, body } = await request(app).post('/auth/admin-sign-up').send(signupDto.admin);
|
||||
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.alreadyHasAdmin);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('/auth/*', () => {
|
||||
let admin: LoginResponseDto;
|
||||
|
||||
beforeEach(async () => {
|
||||
await utils.resetDatabase();
|
||||
await signUpAdmin({ signUpDto: signupDto.admin });
|
||||
admin = await login({ loginCredentialDto: loginDto.admin });
|
||||
});
|
||||
|
||||
describe(`POST /auth/login`, () => {
|
||||
it('should reject an incorrect password', async () => {
|
||||
const { status, body } = await request(app).post('/auth/login').send({ email, password: 'incorrect' });
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.incorrectLogin);
|
||||
});
|
||||
|
||||
it('should accept a correct password', async () => {
|
||||
const { status, body, headers } = await request(app).post('/auth/login').send({ email, password });
|
||||
expect(status).toBe(201);
|
||||
expect(body).toEqual(loginResponseDto.admin);
|
||||
|
||||
const token = body.accessToken;
|
||||
expect(token).toBeDefined();
|
||||
|
||||
const cookies = headers['set-cookie'];
|
||||
expect(cookies).toHaveLength(3);
|
||||
expect(cookies[0].split(';').map((item) => item.trim())).toEqual([
|
||||
`immich_access_token=${token}`,
|
||||
'Max-Age=34560000',
|
||||
'Path=/',
|
||||
expect.stringContaining('Expires='),
|
||||
'HttpOnly',
|
||||
'SameSite=Lax',
|
||||
]);
|
||||
expect(cookies[1].split(';').map((item) => item.trim())).toEqual([
|
||||
'immich_auth_type=password',
|
||||
'Max-Age=34560000',
|
||||
'Path=/',
|
||||
expect.stringContaining('Expires='),
|
||||
'HttpOnly',
|
||||
'SameSite=Lax',
|
||||
]);
|
||||
expect(cookies[2].split(';').map((item) => item.trim())).toEqual([
|
||||
'immich_is_authenticated=true',
|
||||
'Max-Age=34560000',
|
||||
'Path=/',
|
||||
expect.stringContaining('Expires='),
|
||||
'SameSite=Lax',
|
||||
]);
|
||||
});
|
||||
});
|
||||
|
||||
describe('POST /auth/validateToken', () => {
|
||||
it('should reject an invalid token', async () => {
|
||||
const { status, body } = await request(app).post(`/auth/validateToken`).set('Authorization', 'Bearer 123');
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.invalidToken);
|
||||
});
|
||||
|
||||
it('should accept a valid token', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.post(`/auth/validateToken`)
|
||||
.send({})
|
||||
.set('Authorization', `Bearer ${admin.accessToken}`);
|
||||
expect(status).toBe(200);
|
||||
expect(body).toEqual({ authStatus: true });
|
||||
});
|
||||
});
|
||||
|
||||
describe('POST /auth/change-password', () => {
|
||||
it('should require the current password', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.post(`/auth/change-password`)
|
||||
.send({ password: 'wrong-password', newPassword: 'Password1234' })
|
||||
.set('Authorization', `Bearer ${admin.accessToken}`);
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.wrongPassword);
|
||||
});
|
||||
|
||||
it('should change the password', async () => {
|
||||
const { status } = await request(app)
|
||||
.post(`/auth/change-password`)
|
||||
.send({ password, newPassword: 'Password1234' })
|
||||
.set('Authorization', `Bearer ${admin.accessToken}`);
|
||||
expect(status).toBe(200);
|
||||
|
||||
await login({
|
||||
loginCredentialDto: {
|
||||
email: 'admin@immich.cloud',
|
||||
password: 'Password1234',
|
||||
},
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
describe('POST /auth/logout', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app).post(`/auth/logout`);
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.unauthorized);
|
||||
});
|
||||
|
||||
it('should logout the user', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.post(`/auth/logout`)
|
||||
.set('Authorization', `Bearer ${admin.accessToken}`);
|
||||
expect(status).toBe(200);
|
||||
expect(body).toEqual({
|
||||
successful: true,
|
||||
redirectUri: '/auth/login?autoLaunch=0',
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
@@ -6,7 +6,7 @@ import {
|
||||
createMemory,
|
||||
getMemory,
|
||||
} from '@immich/sdk';
|
||||
import { createUserDto, uuidDto } from 'src/fixtures';
|
||||
import { createUserDto } from 'src/fixtures';
|
||||
import { errorDto } from 'src/responses';
|
||||
import { app, asBearerAuth, utils } from 'src/utils';
|
||||
import request from 'supertest';
|
||||
@@ -17,7 +17,6 @@ describe('/memories', () => {
|
||||
let user: LoginResponseDto;
|
||||
let adminAsset: AssetMediaResponseDto;
|
||||
let userAsset1: AssetMediaResponseDto;
|
||||
let userAsset2: AssetMediaResponseDto;
|
||||
let userMemory: MemoryResponseDto;
|
||||
|
||||
beforeAll(async () => {
|
||||
@@ -25,10 +24,9 @@ describe('/memories', () => {
|
||||
|
||||
admin = await utils.adminSetup();
|
||||
user = await utils.userSetup(admin.accessToken, createUserDto.user1);
|
||||
[adminAsset, userAsset1, userAsset2] = await Promise.all([
|
||||
[adminAsset, userAsset1] = await Promise.all([
|
||||
utils.createAsset(admin.accessToken),
|
||||
utils.createAsset(user.accessToken),
|
||||
utils.createAsset(user.accessToken),
|
||||
]);
|
||||
userMemory = await createMemory(
|
||||
{
|
||||
@@ -43,121 +41,7 @@ describe('/memories', () => {
|
||||
);
|
||||
});
|
||||
|
||||
describe('GET /memories', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app).get('/memories');
|
||||
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.unauthorized);
|
||||
});
|
||||
});
|
||||
|
||||
describe('POST /memories', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app).post('/memories');
|
||||
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.unauthorized);
|
||||
});
|
||||
|
||||
it('should validate data when type is on this day', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.post('/memories')
|
||||
.set('Authorization', `Bearer ${user.accessToken}`)
|
||||
.send({
|
||||
type: 'on_this_day',
|
||||
data: {},
|
||||
memoryAt: new Date(2021).toISOString(),
|
||||
});
|
||||
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(
|
||||
errorDto.badRequest(['data.year must be a positive number', 'data.year must be an integer number']),
|
||||
);
|
||||
});
|
||||
|
||||
it('should create a new memory', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.post('/memories')
|
||||
.set('Authorization', `Bearer ${user.accessToken}`)
|
||||
.send({
|
||||
type: 'on_this_day',
|
||||
data: { year: 2021 },
|
||||
memoryAt: new Date(2021).toISOString(),
|
||||
});
|
||||
|
||||
expect(status).toBe(201);
|
||||
expect(body).toEqual({
|
||||
id: expect.any(String),
|
||||
type: 'on_this_day',
|
||||
data: { year: 2021 },
|
||||
createdAt: expect.any(String),
|
||||
updatedAt: expect.any(String),
|
||||
isSaved: false,
|
||||
memoryAt: expect.any(String),
|
||||
ownerId: user.userId,
|
||||
assets: [],
|
||||
});
|
||||
});
|
||||
|
||||
it('should create a new memory (with assets)', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.post('/memories')
|
||||
.set('Authorization', `Bearer ${user.accessToken}`)
|
||||
.send({
|
||||
type: 'on_this_day',
|
||||
data: { year: 2021 },
|
||||
memoryAt: new Date(2021).toISOString(),
|
||||
assetIds: [userAsset1.id, userAsset2.id],
|
||||
});
|
||||
|
||||
expect(status).toBe(201);
|
||||
expect(body).toMatchObject({
|
||||
id: expect.any(String),
|
||||
assets: expect.arrayContaining([
|
||||
expect.objectContaining({ id: userAsset1.id }),
|
||||
expect.objectContaining({ id: userAsset2.id }),
|
||||
]),
|
||||
});
|
||||
expect(body.assets).toHaveLength(2);
|
||||
});
|
||||
|
||||
it('should create a new memory and ignore assets the user does not have access to', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.post('/memories')
|
||||
.set('Authorization', `Bearer ${user.accessToken}`)
|
||||
.send({
|
||||
type: 'on_this_day',
|
||||
data: { year: 2021 },
|
||||
memoryAt: new Date(2021).toISOString(),
|
||||
assetIds: [userAsset1.id, adminAsset.id],
|
||||
});
|
||||
|
||||
expect(status).toBe(201);
|
||||
expect(body).toMatchObject({
|
||||
id: expect.any(String),
|
||||
assets: [expect.objectContaining({ id: userAsset1.id })],
|
||||
});
|
||||
expect(body.assets).toHaveLength(1);
|
||||
});
|
||||
});
|
||||
|
||||
describe('GET /memories/:id', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app).get(`/memories/${uuidDto.invalid}`);
|
||||
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.unauthorized);
|
||||
});
|
||||
|
||||
it('should require a valid id', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.get(`/memories/${uuidDto.invalid}`)
|
||||
.set('Authorization', `Bearer ${user.accessToken}`);
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.badRequest(['id must be a UUID']));
|
||||
});
|
||||
|
||||
it('should require access', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.get(`/memories/${userMemory.id}`)
|
||||
@@ -176,22 +60,6 @@ describe('/memories', () => {
|
||||
});
|
||||
|
||||
describe('PUT /memories/:id', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app).put(`/memories/${uuidDto.invalid}`).send({ isSaved: true });
|
||||
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.unauthorized);
|
||||
});
|
||||
|
||||
it('should require a valid id', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.put(`/memories/${uuidDto.invalid}`)
|
||||
.send({ isSaved: true })
|
||||
.set('Authorization', `Bearer ${user.accessToken}`);
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.badRequest(['id must be a UUID']));
|
||||
});
|
||||
|
||||
it('should require access', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.put(`/memories/${userMemory.id}`)
|
||||
@@ -218,23 +86,6 @@ describe('/memories', () => {
|
||||
});
|
||||
|
||||
describe('PUT /memories/:id/assets', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.put(`/memories/${userMemory.id}/assets`)
|
||||
.send({ ids: [userAsset1.id] });
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.unauthorized);
|
||||
});
|
||||
|
||||
it('should require a valid id', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.put(`/memories/${uuidDto.invalid}/assets`)
|
||||
.send({ ids: [userAsset1.id] })
|
||||
.set('Authorization', `Bearer ${user.accessToken}`);
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.badRequest(['id must be a UUID']));
|
||||
});
|
||||
|
||||
it('should require access', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.put(`/memories/${userMemory.id}/assets`)
|
||||
@@ -244,15 +95,6 @@ describe('/memories', () => {
|
||||
expect(body).toEqual(errorDto.noPermission);
|
||||
});
|
||||
|
||||
it('should require a valid asset id', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.put(`/memories/${userMemory.id}/assets`)
|
||||
.send({ ids: [uuidDto.invalid] })
|
||||
.set('Authorization', `Bearer ${user.accessToken}`);
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.badRequest(['each value in ids must be a UUID']));
|
||||
});
|
||||
|
||||
it('should require asset access', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.put(`/memories/${userMemory.id}/assets`)
|
||||
@@ -279,23 +121,6 @@ describe('/memories', () => {
|
||||
});
|
||||
|
||||
describe('DELETE /memories/:id/assets', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.delete(`/memories/${userMemory.id}/assets`)
|
||||
.send({ ids: [userAsset1.id] });
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.unauthorized);
|
||||
});
|
||||
|
||||
it('should require a valid id', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.delete(`/memories/${uuidDto.invalid}/assets`)
|
||||
.send({ ids: [userAsset1.id] })
|
||||
.set('Authorization', `Bearer ${user.accessToken}`);
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.badRequest(['id must be a UUID']));
|
||||
});
|
||||
|
||||
it('should require access', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.delete(`/memories/${userMemory.id}/assets`)
|
||||
@@ -305,15 +130,6 @@ describe('/memories', () => {
|
||||
expect(body).toEqual(errorDto.noPermission);
|
||||
});
|
||||
|
||||
it('should require a valid asset id', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.delete(`/memories/${userMemory.id}/assets`)
|
||||
.send({ ids: [uuidDto.invalid] })
|
||||
.set('Authorization', `Bearer ${user.accessToken}`);
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.badRequest(['each value in ids must be a UUID']));
|
||||
});
|
||||
|
||||
it('should only remove assets in the memory', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.delete(`/memories/${userMemory.id}/assets`)
|
||||
@@ -340,21 +156,6 @@ describe('/memories', () => {
|
||||
});
|
||||
|
||||
describe('DELETE /memories/:id', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app).delete(`/memories/${uuidDto.invalid}`);
|
||||
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.unauthorized);
|
||||
});
|
||||
|
||||
it('should require a valid id', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.delete(`/memories/${uuidDto.invalid}`)
|
||||
.set('Authorization', `Bearer ${user.accessToken}`);
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.badRequest(['id must be a UUID']));
|
||||
});
|
||||
|
||||
it('should require access', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.delete(`/memories/${userMemory.id}`)
|
||||
|
||||
@@ -227,6 +227,21 @@ describe(`/oauth`, () => {
|
||||
expect(user.storageLabel).toBe('user-username');
|
||||
});
|
||||
|
||||
it('should set the admin status from a role claim', async () => {
|
||||
const callbackParams = await loginWithOAuth(OAuthUser.WITH_ROLE);
|
||||
const { status, body } = await request(app).post('/oauth/callback').send(callbackParams);
|
||||
expect(status).toBe(201);
|
||||
expect(body).toMatchObject({
|
||||
accessToken: expect.any(String),
|
||||
userId: expect.any(String),
|
||||
userEmail: 'oauth-with-role@immich.app',
|
||||
isAdmin: true,
|
||||
});
|
||||
|
||||
const user = await getMyUser({ headers: asBearerAuth(body.accessToken) });
|
||||
expect(user.isAdmin).toBe(true);
|
||||
});
|
||||
|
||||
it('should work with RS256 signed tokens', async () => {
|
||||
await setupOAuth(admin.accessToken, {
|
||||
enabled: true,
|
||||
|
||||
@@ -117,6 +117,13 @@ describe('/shared-links', () => {
|
||||
const resp = await request(shareUrl).get(`/${linkWithAssets.key}`);
|
||||
expect(resp.status).toBe(200);
|
||||
expect(resp.header['content-type']).toContain('text/html');
|
||||
expect(resp.text).toContain(`<meta property="og:image" content="http://127.0.0.1:2285`);
|
||||
});
|
||||
|
||||
it('should fall back to my.immich.app og:image meta tag for shared asset if Host header is not present', async () => {
|
||||
const resp = await request(shareUrl).get(`/${linkWithAssets.key}`).set('Host', '');
|
||||
expect(resp.status).toBe(200);
|
||||
expect(resp.header['content-type']).toContain('text/html');
|
||||
expect(resp.text).toContain(`<meta property="og:image" content="https://my.immich.app`);
|
||||
});
|
||||
|
||||
|
||||
@@ -15,12 +15,6 @@ describe('/system-config', () => {
|
||||
});
|
||||
|
||||
describe('PUT /system-config', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app).put('/system-config');
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.unauthorized);
|
||||
});
|
||||
|
||||
it('should always return the new config', async () => {
|
||||
const config = await getSystemConfig(admin.accessToken);
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ describe('/tags', () => {
|
||||
beforeEach(async () => {
|
||||
// tagging assets eventually triggers metadata extraction which can impact other tests
|
||||
await utils.waitForQueueFinish(admin.accessToken, 'metadataExtraction');
|
||||
await utils.resetDatabase(['tags']);
|
||||
await utils.resetDatabase(['tag']);
|
||||
});
|
||||
|
||||
describe('POST /tags', () => {
|
||||
|
||||
@@ -1,230 +0,0 @@
|
||||
import {
|
||||
AssetMediaResponseDto,
|
||||
AssetVisibility,
|
||||
LoginResponseDto,
|
||||
SharedLinkType,
|
||||
TimeBucketAssetResponseDto,
|
||||
} from '@immich/sdk';
|
||||
import { DateTime } from 'luxon';
|
||||
import { createUserDto } from 'src/fixtures';
|
||||
import { errorDto } from 'src/responses';
|
||||
import { app, utils } from 'src/utils';
|
||||
import request from 'supertest';
|
||||
import { beforeAll, describe, expect, it } from 'vitest';
|
||||
|
||||
// TODO this should probably be a test util function
|
||||
const today = DateTime.fromObject({
|
||||
year: 2023,
|
||||
month: 11,
|
||||
day: 3,
|
||||
}) as DateTime<true>;
|
||||
const yesterday = today.minus({ days: 1 });
|
||||
|
||||
describe('/timeline', () => {
|
||||
let admin: LoginResponseDto;
|
||||
let user: LoginResponseDto;
|
||||
let timeBucketUser: LoginResponseDto;
|
||||
|
||||
let user1Assets: AssetMediaResponseDto[];
|
||||
let user2Assets: AssetMediaResponseDto[];
|
||||
|
||||
beforeAll(async () => {
|
||||
await utils.resetDatabase();
|
||||
admin = await utils.adminSetup({ onboarding: false });
|
||||
[user, timeBucketUser] = await Promise.all([
|
||||
utils.userSetup(admin.accessToken, createUserDto.create('1')),
|
||||
utils.userSetup(admin.accessToken, createUserDto.create('time-bucket')),
|
||||
]);
|
||||
|
||||
user1Assets = await Promise.all([
|
||||
utils.createAsset(user.accessToken),
|
||||
utils.createAsset(user.accessToken),
|
||||
utils.createAsset(user.accessToken, {
|
||||
isFavorite: true,
|
||||
fileCreatedAt: yesterday.toISO(),
|
||||
fileModifiedAt: yesterday.toISO(),
|
||||
assetData: { filename: 'example.mp4' },
|
||||
}),
|
||||
utils.createAsset(user.accessToken),
|
||||
utils.createAsset(user.accessToken),
|
||||
]);
|
||||
|
||||
user2Assets = await Promise.all([
|
||||
utils.createAsset(timeBucketUser.accessToken, { fileCreatedAt: new Date('1970-01-01').toISOString() }),
|
||||
utils.createAsset(timeBucketUser.accessToken, { fileCreatedAt: new Date('1970-02-10').toISOString() }),
|
||||
utils.createAsset(timeBucketUser.accessToken, { fileCreatedAt: new Date('1970-02-11').toISOString() }),
|
||||
utils.createAsset(timeBucketUser.accessToken, { fileCreatedAt: new Date('1970-02-11').toISOString() }),
|
||||
utils.createAsset(timeBucketUser.accessToken, { fileCreatedAt: new Date('1970-02-12').toISOString() }),
|
||||
]);
|
||||
|
||||
await utils.deleteAssets(timeBucketUser.accessToken, [user2Assets[4].id]);
|
||||
});
|
||||
|
||||
describe('GET /timeline/buckets', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app).get('/timeline/buckets');
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.unauthorized);
|
||||
});
|
||||
|
||||
it('should get time buckets by month', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.get('/timeline/buckets')
|
||||
.set('Authorization', `Bearer ${timeBucketUser.accessToken}`);
|
||||
|
||||
expect(status).toBe(200);
|
||||
expect(body).toEqual(
|
||||
expect.arrayContaining([
|
||||
{ count: 3, timeBucket: '1970-02-01' },
|
||||
{ count: 1, timeBucket: '1970-01-01' },
|
||||
]),
|
||||
);
|
||||
});
|
||||
|
||||
it('should not allow access for unrelated shared links', async () => {
|
||||
const sharedLink = await utils.createSharedLink(user.accessToken, {
|
||||
type: SharedLinkType.Individual,
|
||||
assetIds: user1Assets.map(({ id }) => id),
|
||||
});
|
||||
|
||||
const { status, body } = await request(app).get('/timeline/buckets').query({ key: sharedLink.key });
|
||||
|
||||
expect(status).toBe(400);
|
||||
expect(body).toEqual(errorDto.noPermission);
|
||||
});
|
||||
|
||||
it('should return error if time bucket is requested with partners asset and archived', async () => {
|
||||
const req1 = await request(app)
|
||||
.get('/timeline/buckets')
|
||||
.set('Authorization', `Bearer ${timeBucketUser.accessToken}`)
|
||||
.query({ withPartners: true, visibility: AssetVisibility.Archive });
|
||||
|
||||
expect(req1.status).toBe(400);
|
||||
expect(req1.body).toEqual(errorDto.badRequest());
|
||||
|
||||
const req2 = await request(app)
|
||||
.get('/timeline/buckets')
|
||||
.set('Authorization', `Bearer ${user.accessToken}`)
|
||||
.query({ withPartners: true, visibility: undefined });
|
||||
|
||||
expect(req2.status).toBe(400);
|
||||
expect(req2.body).toEqual(errorDto.badRequest());
|
||||
});
|
||||
|
||||
it('should return error if time bucket is requested with partners asset and favorite', async () => {
|
||||
const req1 = await request(app)
|
||||
.get('/timeline/buckets')
|
||||
.set('Authorization', `Bearer ${timeBucketUser.accessToken}`)
|
||||
.query({ withPartners: true, isFavorite: true });
|
||||
|
||||
expect(req1.status).toBe(400);
|
||||
expect(req1.body).toEqual(errorDto.badRequest());
|
||||
|
||||
const req2 = await request(app)
|
||||
.get('/timeline/buckets')
|
||||
.set('Authorization', `Bearer ${timeBucketUser.accessToken}`)
|
||||
.query({ withPartners: true, isFavorite: false });
|
||||
|
||||
expect(req2.status).toBe(400);
|
||||
expect(req2.body).toEqual(errorDto.badRequest());
|
||||
});
|
||||
|
||||
it('should return error if time bucket is requested with partners asset and trash', async () => {
|
||||
const req = await request(app)
|
||||
.get('/timeline/buckets')
|
||||
.set('Authorization', `Bearer ${user.accessToken}`)
|
||||
.query({ withPartners: true, isTrashed: true });
|
||||
|
||||
expect(req.status).toBe(400);
|
||||
expect(req.body).toEqual(errorDto.badRequest());
|
||||
});
|
||||
});
|
||||
|
||||
describe('GET /timeline/bucket', () => {
|
||||
it('should require authentication', async () => {
|
||||
const { status, body } = await request(app).get('/timeline/bucket').query({
|
||||
timeBucket: '1900-01-01',
|
||||
});
|
||||
|
||||
expect(status).toBe(401);
|
||||
expect(body).toEqual(errorDto.unauthorized);
|
||||
});
|
||||
|
||||
it('should handle 5 digit years', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.get('/timeline/bucket')
|
||||
.query({ timeBucket: '012345-01-01' })
|
||||
.set('Authorization', `Bearer ${timeBucketUser.accessToken}`);
|
||||
|
||||
expect(status).toBe(200);
|
||||
expect(body).toEqual({
|
||||
city: [],
|
||||
country: [],
|
||||
duration: [],
|
||||
id: [],
|
||||
visibility: [],
|
||||
isFavorite: [],
|
||||
isImage: [],
|
||||
isTrashed: [],
|
||||
livePhotoVideoId: [],
|
||||
fileCreatedAt: [],
|
||||
localOffsetHours: [],
|
||||
ownerId: [],
|
||||
projectionType: [],
|
||||
ratio: [],
|
||||
status: [],
|
||||
thumbhash: [],
|
||||
});
|
||||
});
|
||||
|
||||
// TODO enable date string validation while still accepting 5 digit years
|
||||
// it('should fail if time bucket is invalid', async () => {
|
||||
// const { status, body } = await request(app)
|
||||
// .get('/timeline/bucket')
|
||||
// .set('Authorization', `Bearer ${user.accessToken}`)
|
||||
// .query({ timeBucket: 'foo' });
|
||||
|
||||
// expect(status).toBe(400);
|
||||
// expect(body).toEqual(errorDto.badRequest);
|
||||
// });
|
||||
|
||||
it('should return time bucket', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.get('/timeline/bucket')
|
||||
.set('Authorization', `Bearer ${timeBucketUser.accessToken}`)
|
||||
.query({ timeBucket: '1970-02-10' });
|
||||
|
||||
expect(status).toBe(200);
|
||||
expect(body).toEqual({
|
||||
city: [],
|
||||
country: [],
|
||||
duration: [],
|
||||
id: [],
|
||||
visibility: [],
|
||||
isFavorite: [],
|
||||
isImage: [],
|
||||
isTrashed: [],
|
||||
livePhotoVideoId: [],
|
||||
fileCreatedAt: [],
|
||||
localOffsetHours: [],
|
||||
ownerId: [],
|
||||
projectionType: [],
|
||||
ratio: [],
|
||||
status: [],
|
||||
thumbhash: [],
|
||||
});
|
||||
});
|
||||
|
||||
it('should return time bucket in trash', async () => {
|
||||
const { status, body } = await request(app)
|
||||
.get('/timeline/bucket')
|
||||
.set('Authorization', `Bearer ${timeBucketUser.accessToken}`)
|
||||
.query({ timeBucket: '1970-02-01T00:00:00.000Z', isTrashed: true });
|
||||
|
||||
expect(status).toBe(200);
|
||||
|
||||
const timeBucket: TimeBucketAssetResponseDto = body;
|
||||
expect(timeBucket.isTrashed).toEqual([true]);
|
||||
});
|
||||
});
|
||||
});
|
||||
@@ -97,7 +97,7 @@ describe(`immich upload`, () => {
|
||||
});
|
||||
|
||||
beforeEach(async () => {
|
||||
await utils.resetDatabase(['assets', 'albums']);
|
||||
await utils.resetDatabase(['asset', 'album']);
|
||||
});
|
||||
|
||||
describe(`immich upload /path/to/file.jpg`, () => {
|
||||
|
||||
178
e2e/src/generate-date-tag-test-images.ts
Normal file
178
e2e/src/generate-date-tag-test-images.ts
Normal file
@@ -0,0 +1,178 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
/**
|
||||
* Script to generate test images with additional EXIF date tags
|
||||
* This creates actual JPEG images with embedded metadata for testing
|
||||
* Images are generated into e2e/test-assets/metadata/dates/
|
||||
*/
|
||||
|
||||
import { execSync } from 'node:child_process';
|
||||
import { writeFileSync } from 'node:fs';
|
||||
import { dirname, join } from 'node:path';
|
||||
import { fileURLToPath } from 'node:url';
|
||||
import sharp from 'sharp';
|
||||
|
||||
interface TestImage {
|
||||
filename: string;
|
||||
description: string;
|
||||
exifTags: Record<string, string>;
|
||||
}
|
||||
|
||||
const testImages: TestImage[] = [
|
||||
{
|
||||
filename: 'time-created.jpg',
|
||||
description: 'Image with TimeCreated tag',
|
||||
exifTags: {
|
||||
TimeCreated: '2023:11:15 14:30:00',
|
||||
Make: 'Canon',
|
||||
Model: 'EOS R5',
|
||||
},
|
||||
},
|
||||
{
|
||||
filename: 'gps-datetime.jpg',
|
||||
description: 'Image with GPSDateTime and coordinates',
|
||||
exifTags: {
|
||||
GPSDateTime: '2023:11:15 12:30:00Z',
|
||||
GPSLatitude: '37.7749',
|
||||
GPSLongitude: '-122.4194',
|
||||
GPSLatitudeRef: 'N',
|
||||
GPSLongitudeRef: 'W',
|
||||
},
|
||||
},
|
||||
{
|
||||
filename: 'datetime-utc.jpg',
|
||||
description: 'Image with DateTimeUTC tag',
|
||||
exifTags: {
|
||||
DateTimeUTC: '2023:11:15 10:30:00',
|
||||
Make: 'Nikon',
|
||||
Model: 'D850',
|
||||
},
|
||||
},
|
||||
{
|
||||
filename: 'gps-datestamp.jpg',
|
||||
description: 'Image with GPSDateStamp and GPSTimeStamp',
|
||||
exifTags: {
|
||||
GPSDateStamp: '2023:11:15',
|
||||
GPSTimeStamp: '08:30:00',
|
||||
GPSLatitude: '51.5074',
|
||||
GPSLongitude: '-0.1278',
|
||||
GPSLatitudeRef: 'N',
|
||||
GPSLongitudeRef: 'W',
|
||||
},
|
||||
},
|
||||
{
|
||||
filename: 'sony-datetime2.jpg',
|
||||
description: 'Sony camera image with SonyDateTime2 tag',
|
||||
exifTags: {
|
||||
SonyDateTime2: '2023:11:15 06:30:00',
|
||||
Make: 'SONY',
|
||||
Model: 'ILCE-7RM5',
|
||||
},
|
||||
},
|
||||
{
|
||||
filename: 'date-priority-test.jpg',
|
||||
description: 'Image with multiple date tags to test priority',
|
||||
exifTags: {
|
||||
SubSecDateTimeOriginal: '2023:01:01 01:00:00',
|
||||
DateTimeOriginal: '2023:02:02 02:00:00',
|
||||
SubSecCreateDate: '2023:03:03 03:00:00',
|
||||
CreateDate: '2023:04:04 04:00:00',
|
||||
CreationDate: '2023:05:05 05:00:00',
|
||||
DateTimeCreated: '2023:06:06 06:00:00',
|
||||
TimeCreated: '2023:07:07 07:00:00',
|
||||
GPSDateTime: '2023:08:08 08:00:00',
|
||||
DateTimeUTC: '2023:09:09 09:00:00',
|
||||
GPSDateStamp: '2023:10:10',
|
||||
SonyDateTime2: '2023:11:11 11:00:00',
|
||||
},
|
||||
},
|
||||
{
|
||||
filename: 'new-tags-only.jpg',
|
||||
description: 'Image with only additional date tags (no standard tags)',
|
||||
exifTags: {
|
||||
TimeCreated: '2023:12:01 15:45:30',
|
||||
GPSDateTime: '2023:12:01 13:45:30Z',
|
||||
DateTimeUTC: '2023:12:01 13:45:30',
|
||||
GPSDateStamp: '2023:12:01',
|
||||
SonyDateTime2: '2023:12:01 08:45:30',
|
||||
GPSLatitude: '40.7128',
|
||||
GPSLongitude: '-74.0060',
|
||||
GPSLatitudeRef: 'N',
|
||||
GPSLongitudeRef: 'W',
|
||||
},
|
||||
},
|
||||
];
|
||||
|
||||
const generateTestImages = async (): Promise<void> => {
|
||||
// Target directory: e2e/test-assets/metadata/dates/
|
||||
// Current file is in: e2e/src/
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = dirname(__filename);
|
||||
const targetDir = join(__dirname, '..', 'test-assets', 'metadata', 'dates');
|
||||
|
||||
console.log('Generating test images with additional EXIF date tags...');
|
||||
console.log(`Target directory: ${targetDir}`);
|
||||
|
||||
for (const image of testImages) {
|
||||
try {
|
||||
const imagePath = join(targetDir, image.filename);
|
||||
|
||||
// Create unique JPEG file using Sharp
|
||||
const r = Math.floor(Math.random() * 256);
|
||||
const g = Math.floor(Math.random() * 256);
|
||||
const b = Math.floor(Math.random() * 256);
|
||||
|
||||
const jpegData = await sharp({
|
||||
create: {
|
||||
width: 100,
|
||||
height: 100,
|
||||
channels: 3,
|
||||
background: { r, g, b },
|
||||
},
|
||||
})
|
||||
.jpeg({ quality: 90 })
|
||||
.toBuffer();
|
||||
|
||||
writeFileSync(imagePath, jpegData);
|
||||
|
||||
// Build exiftool command to add EXIF data
|
||||
const exifArgs = Object.entries(image.exifTags)
|
||||
.map(([tag, value]) => `-${tag}="${value}"`)
|
||||
.join(' ');
|
||||
|
||||
const command = `exiftool ${exifArgs} -overwrite_original "${imagePath}"`;
|
||||
|
||||
console.log(`Creating ${image.filename}: ${image.description}`);
|
||||
execSync(command, { stdio: 'pipe' });
|
||||
|
||||
// Verify the tags were written
|
||||
const verifyCommand = `exiftool -json "${imagePath}"`;
|
||||
const result = execSync(verifyCommand, { encoding: 'utf8' });
|
||||
const metadata = JSON.parse(result)[0];
|
||||
|
||||
console.log(` тЬУ Created with ${Object.keys(image.exifTags).length} EXIF tags`);
|
||||
|
||||
// Log first date tag found for verification
|
||||
const firstDateTag = Object.keys(image.exifTags).find(
|
||||
(tag) => tag.includes('Date') || tag.includes('Time') || tag.includes('Created'),
|
||||
);
|
||||
if (firstDateTag && metadata[firstDateTag]) {
|
||||
console.log(` тЬУ Verified ${firstDateTag}: ${metadata[firstDateTag]}`);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(`Failed to create ${image.filename}:`, (error as Error).message);
|
||||
}
|
||||
}
|
||||
|
||||
console.log('\nTest image generation complete!');
|
||||
console.log('Files created in:', targetDir);
|
||||
console.log('\nTo test these images:');
|
||||
console.log(`cd ${targetDir} && exiftool -time:all -gps:all *.jpg`);
|
||||
};
|
||||
|
||||
export { generateTestImages };
|
||||
|
||||
// Run the generator if this file is executed directly
|
||||
if (import.meta.url === `file://${process.argv[1]}`) {
|
||||
generateTestImages().catch(console.error);
|
||||
}
|
||||
@@ -116,6 +116,7 @@ export const deviceDto = {
|
||||
createdAt: expect.any(String),
|
||||
updatedAt: expect.any(String),
|
||||
current: true,
|
||||
isPendingSyncReset: false,
|
||||
deviceOS: '',
|
||||
deviceType: '',
|
||||
},
|
||||
|
||||
@@ -12,6 +12,7 @@ export enum OAuthUser {
|
||||
NO_NAME = 'no-name',
|
||||
WITH_QUOTA = 'with-quota',
|
||||
WITH_USERNAME = 'with-username',
|
||||
WITH_ROLE = 'with-role',
|
||||
}
|
||||
|
||||
const claims = [
|
||||
@@ -34,6 +35,12 @@ const claims = [
|
||||
preferred_username: 'user-quota',
|
||||
immich_quota: 25,
|
||||
},
|
||||
{
|
||||
sub: OAuthUser.WITH_ROLE,
|
||||
email: 'oauth-with-role@immich.app',
|
||||
email_verified: true,
|
||||
immich_role: 'admin',
|
||||
},
|
||||
];
|
||||
|
||||
const withDefaultClaims = (sub: string) => ({
|
||||
@@ -64,7 +71,15 @@ const setup = async () => {
|
||||
claims: {
|
||||
openid: ['sub'],
|
||||
email: ['email', 'email_verified'],
|
||||
profile: ['name', 'given_name', 'family_name', 'preferred_username', 'immich_quota', 'immich_username'],
|
||||
profile: [
|
||||
'name',
|
||||
'given_name',
|
||||
'family_name',
|
||||
'preferred_username',
|
||||
'immich_quota',
|
||||
'immich_username',
|
||||
'immich_role',
|
||||
],
|
||||
},
|
||||
features: {
|
||||
jwtUserinfo: {
|
||||
|
||||
@@ -60,6 +60,7 @@ import { io, type Socket } from 'socket.io-client';
|
||||
import { loginDto, signupDto } from 'src/fixtures';
|
||||
import { makeRandomImage } from 'src/generators';
|
||||
import request from 'supertest';
|
||||
export type { Emitter } from '@socket.io/component-emitter';
|
||||
|
||||
type CommandResponse = { stdout: string; stderr: string; exitCode: number | null };
|
||||
type EventType = 'assetUpload' | 'assetUpdate' | 'assetDelete' | 'userDelete' | 'assetHidden';
|
||||
@@ -84,10 +85,10 @@ export const immichAdmin = (args: string[]) =>
|
||||
export const specialCharStrings = ["'", '"', ',', '{', '}', '*'];
|
||||
export const TEN_TIMES = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
|
||||
|
||||
const executeCommand = (command: string, args: string[]) => {
|
||||
const executeCommand = (command: string, args: string[], options?: { cwd?: string }) => {
|
||||
let _resolve: (value: CommandResponse) => void;
|
||||
const promise = new Promise<CommandResponse>((resolve) => (_resolve = resolve));
|
||||
const child = spawn(command, args, { stdio: 'pipe' });
|
||||
const child = spawn(command, args, { stdio: 'pipe', cwd: options?.cwd });
|
||||
|
||||
let stdout = '';
|
||||
let stderr = '';
|
||||
@@ -153,19 +154,19 @@ export const utils = {
|
||||
|
||||
tables = tables || [
|
||||
// TODO e2e test for deleting a stack, since it is quite complex
|
||||
'asset_stack',
|
||||
'libraries',
|
||||
'shared_links',
|
||||
'stack',
|
||||
'library',
|
||||
'shared_link',
|
||||
'person',
|
||||
'albums',
|
||||
'assets',
|
||||
'asset_faces',
|
||||
'album',
|
||||
'asset',
|
||||
'asset_face',
|
||||
'activity',
|
||||
'api_keys',
|
||||
'sessions',
|
||||
'users',
|
||||
'api_key',
|
||||
'session',
|
||||
'user',
|
||||
'system_metadata',
|
||||
'tags',
|
||||
'tag',
|
||||
];
|
||||
|
||||
const sql: string[] = [];
|
||||
@@ -174,7 +175,7 @@ export const utils = {
|
||||
if (table === 'system_metadata') {
|
||||
sql.push(`DELETE FROM "system_metadata" where "key" NOT IN ('reverse-geocoding-state', 'system-flags');`);
|
||||
} else {
|
||||
sql.push(`DELETE FROM ${table} CASCADE;`);
|
||||
sql.push(`DELETE FROM "${table}" CASCADE;`);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -185,18 +186,6 @@ export const utils = {
|
||||
}
|
||||
},
|
||||
|
||||
resetFilesystem: async () => {
|
||||
const mediaInternal = '/usr/src/app/upload';
|
||||
const dirs = [
|
||||
`"${mediaInternal}/thumbs"`,
|
||||
`"${mediaInternal}/upload"`,
|
||||
`"${mediaInternal}/library"`,
|
||||
`"${mediaInternal}/encoded-video"`,
|
||||
].join(' ');
|
||||
|
||||
await execPromise(`docker exec -i "immich-e2e-server" /bin/bash -c "rm -rf ${dirs} && mkdir ${dirs}"`);
|
||||
},
|
||||
|
||||
unzip: async (input: string, output: string) => {
|
||||
await execPromise(`unzip -o -d "${output}" "${input}"`);
|
||||
},
|
||||
@@ -450,7 +439,7 @@ export const utils = {
|
||||
return;
|
||||
}
|
||||
|
||||
await client.query('INSERT INTO asset_faces ("assetId", "personId") VALUES ($1, $2)', [assetId, personId]);
|
||||
await client.query('INSERT INTO asset_face ("assetId", "personId") VALUES ($1, $2)', [assetId, personId]);
|
||||
},
|
||||
|
||||
setPersonThumbnail: async (personId: string) => {
|
||||
|
||||
@@ -37,6 +37,7 @@ test.describe('Registration', () => {
|
||||
await page.getByRole('button', { name: 'Server Privacy' }).click();
|
||||
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: 'Done' }).click();
|
||||
|
||||
// success
|
||||
|
||||
Submodule e2e/test-assets updated: 8885d6d01c...37f60ea537
118
i18n/af.json
118
i18n/af.json
@@ -4,6 +4,7 @@
|
||||
"account_settings": "Rekeninginstellings",
|
||||
"acknowledge": "Erken",
|
||||
"action": "Aksie",
|
||||
"action_common_update": "Opdateur",
|
||||
"actions": "Aksies",
|
||||
"active": "Aktief",
|
||||
"activity": "Aktiwiteite",
|
||||
@@ -13,6 +14,7 @@
|
||||
"add_a_location": "Voeg 'n ligging by",
|
||||
"add_a_name": "Voeg 'n naam by",
|
||||
"add_a_title": "Voeg 'n titel by",
|
||||
"add_endpoint": "Voeg Koppelvlakpunt by",
|
||||
"add_exclusion_pattern": "Voeg uitsgluitingspatrone by",
|
||||
"add_import_path": "Voeg invoerpad by",
|
||||
"add_location": "Voeg ligging by",
|
||||
@@ -20,26 +22,30 @@
|
||||
"add_partner": "Voeg vennoot by",
|
||||
"add_path": "Voeg pad by",
|
||||
"add_photos": "Voeg foto's by",
|
||||
"add_tag": "Voeg tag by",
|
||||
"add_to": "Voeg byтАж",
|
||||
"add_to_album": "Voeg na album",
|
||||
"add_to_shared_album": "Voeg na gedeelde album",
|
||||
"add_to_album_bottom_sheet_added": "By {album} bygevoeg",
|
||||
"add_to_album_bottom_sheet_already_exists": "Reeds in {album}",
|
||||
"add_to_shared_album": "Voeg toe aan gedeelde album",
|
||||
"add_url": "Voeg URL by",
|
||||
"added_to_archive": "By argief gevoeg",
|
||||
"added_to_favorites": "By gunstelinge gevoeg",
|
||||
"added_to_favorites_count": "Het {count, number} by gunstelinge gevoeg",
|
||||
"added_to_archive": "By argief toegevoegd",
|
||||
"added_to_favorites": "By gunstelinge toegevoegd",
|
||||
"added_to_favorites_count": "Het {count, number} by gunstelinge toegevoegd",
|
||||
"admin": {
|
||||
"add_exclusion_pattern_description": "Voeg uitsluitingspatrone by. Globbing met *, ** en ? word ondersteun. Om alle l├кers in enige l├кergids genaamd \"Raw\" te ignoreer, gebruik \"**/Raw/**\". Om alle l├кers wat op \".tif\" eindig, te ignoreer, gebruik \"**/*.tif\". Om 'n absolute pad te ignoreer, gebruik \"/path/to/ignore/**\".",
|
||||
"admin_user": "Admin gebruiker",
|
||||
"asset_offline_description": "Hierdie eksterne biblioteekbate word nie meer op skyf gevind nie en is na die asblik geskuif. As die l├кer binne die biblioteek geskuif is, gaan jou tydlyn na vir die nuwe ooreenstemmende bate. Om hierdie bate te herstel, maak asseblief seker dat die l├кerpad hieronder deur Immich verkry kan word en skandeer die biblioteek.",
|
||||
"authentication_settings": "Verifikasie instellings",
|
||||
"authentication_settings_description": "Bestuur wagwoord, OAuth en ander verifikasie instellings",
|
||||
"authentication_settings_disable_all": "Is jy seker jy wil alle aanmeldmetodes deaktiveer? Aanmelding sal heeltemal gedeaktiveer word.",
|
||||
"authentication_settings_reenable": "Om te heraktiveer, gebruik 'n <link>Server Command</link>.",
|
||||
"background_task_job": "Agtergrondtake",
|
||||
"backup_database": "Rugsteun databasis",
|
||||
"backup_database": "Skep Datastortl├кer",
|
||||
"backup_database_enable_description": "Aktiveer databasisrugsteun",
|
||||
"backup_keep_last_amount": "Aantal vorige rugsteune om te hou",
|
||||
"backup_settings": "Rugsteun instellings",
|
||||
"backup_settings_description": "Bestuur databasis rugsteun instellings",
|
||||
"backup_settings_description": "Bestuur databasis rugsteun instellings.",
|
||||
"cleared_jobs": "Poste gevee vir: {job}",
|
||||
"config_set_by_file": "Config word tans deur 'n konfigurasiel├кer gestel",
|
||||
"confirm_delete_library": "Is jy seker jy wil {library}-biblioteek uitvee?",
|
||||
@@ -47,6 +53,7 @@
|
||||
"confirm_email_below": "Om te bevestig, tik \"{email}\" hieronder",
|
||||
"confirm_reprocess_all_faces": "Is jy seker jy wil alle gesigte herverwerk? Dit sal ook genoemde mense skoonmaak.",
|
||||
"confirm_user_password_reset": "Is jy seker jy wil {user} se wagwoord terugstel?",
|
||||
"confirm_user_pin_code_reset": "Is jy seker jy wil {user} se PIN kode herstel?",
|
||||
"create_job": "Skep werk",
|
||||
"cron_expression": "Cron uitdrukking",
|
||||
"cron_expression_description": "Stel die skanderingsinterval in met die cron-formaat. Vir meer inligting verwys asseblief na bv. <link>Crontab Guru</link>",
|
||||
@@ -56,10 +63,14 @@
|
||||
"exclusion_pattern_description": "Met uitsluitingspatrone kan jy l├кers en vouers ignoreer wanneer jy jou biblioteek skandeer. Dit is nuttig as jy vouers het wat l├кers bevat wat jy nie wil invoer nie, soos RAW-l├кers.",
|
||||
"external_library_management": "Eksterne Biblioteekbestuur",
|
||||
"face_detection": "Gesig deteksie",
|
||||
"face_detection_description": "Detecteer die gesigte in media deur middel van masjienleer. Vir videos word slegs die duimnaelskets oorweeg. тАЬHerlaaiтАЭ (ver)werk al die media weer. тАЬStel terugтАЭ verwyder boonop alle huidige gesigdata. тАЬOnverwerkтАЭ plaas bates in die tou wat nog nie verwerk is nie. Gedekte gesigte sal n├б voltooiing van Gesigdetectie vir Gesigherkenning in die tou geplaas word, om hulle in bestaande of nuwe persone te groepeer.",
|
||||
"facial_recognition_job_description": "Groepeer gesigte in mense in. Die stap is vinniger nadat Gesig Deteksie klaar is. \"Herstel\" (her-)groepeer alle gesigte. \"Vermiste\" plaas gesigte in ry wat nie 'n persoon gekoppel het nie.",
|
||||
"failed_job_command": "Opdrag {command} het misluk vir werk: {job}",
|
||||
"force_delete_user_warning": "WAARSKUWING: Dit sal onmiddellik die gebruiker en alle bates verwyder. Dit kan nie ontdoen word nie en die l├кers kan nie herstel word nie.",
|
||||
"image_format": "Formaat",
|
||||
"image_format_description": "WebP produseer kleiner l├кers as JPEG, maar is stadiger om te enkodeer.",
|
||||
"image_fullsize_description": "Vol grote prent met geen metadata, gebruik wanner ingezoem",
|
||||
"image_fullsize_enabled": "Skakel aan vol grote prent generasie",
|
||||
"image_prefer_embedded_preview": "Verkies ingebedde voorskou",
|
||||
"image_prefer_wide_gamut": "Verkies wide gamut",
|
||||
"image_prefer_wide_gamut_setting_description": "Gebruik Display P3 vir kleinkiekies. Dit behou die lewendheid van beelde met wye kleurruimtes beter, maar beelde kan anders verskyn op ou apparate met 'n ou blaaierweergawe. sRGB-beelde gebruik steeds sRGB om kleurverskuiwings te voorkom.",
|
||||
@@ -77,8 +88,99 @@
|
||||
"job_concurrency": "{job} gelyktydigheid",
|
||||
"job_created": "Taak gemaak",
|
||||
"job_not_concurrency_safe": "Hierdie taak kan nie gelyktydig uitgevoer word nie.",
|
||||
"job_settings": "Agtergrondtaakinstellings"
|
||||
"job_settings": "Agtergrondtaakinstellings",
|
||||
"job_settings_description": "Bestuur werkgelyktydigheid",
|
||||
"job_status": "Werkstatus",
|
||||
"library_created": "Biblioteek geskep: {library}",
|
||||
"library_deleted": "Biblioteek verwyder",
|
||||
"library_import_path_description": "Spesifiseer 'n leer om in te neem. Hierdie leer, en al die sub leers, gaan geskandeer for vir prente en videos.",
|
||||
"library_scanning": "Periodieke Skandering",
|
||||
"library_scanning_description": "Stel periodieke skandering van biblioteek in",
|
||||
"library_scanning_enable_description": "Aktiveer periodieke biblioteekskandering",
|
||||
"library_settings": "Eksterne Biblioteek",
|
||||
"map_settings": "Kaart",
|
||||
"migration_job": "Migrasie",
|
||||
"oauth_settings": "OAuth",
|
||||
"transcoding_acceleration_vaapi": "VAAPI"
|
||||
},
|
||||
"administration": "Administrasie",
|
||||
"advanced": "Gevorderde",
|
||||
"albums": "Albums",
|
||||
"all": "Alle",
|
||||
"anti_clockwise": "Anti-kloksgewys",
|
||||
"archive": "Argief",
|
||||
"asset_skipped": "Oorgeslaan",
|
||||
"asset_uploaded": "Opgelaai",
|
||||
"asset_uploading": "OplaaiтАж",
|
||||
"assets": "Bates",
|
||||
"back": "Terug",
|
||||
"backward": "Agteruit",
|
||||
"build": "Bou",
|
||||
"camera": "Kamera",
|
||||
"cancel": "Kanselleer",
|
||||
"city": "Stad",
|
||||
"clockwise": "Kloksgewys",
|
||||
"close": "Maak toe",
|
||||
"color": "Kleur",
|
||||
"confirm": "Bevestig",
|
||||
"contain": "Bevat",
|
||||
"context": "Konteks",
|
||||
"continue": "Gaan voort",
|
||||
"country": "Land",
|
||||
"cover": "Bedek",
|
||||
"create": "Skep",
|
||||
"created": "Geskep",
|
||||
"dark": "Donker",
|
||||
"day": "Dag",
|
||||
"delete": "Verwyder",
|
||||
"description": "Beskrywing",
|
||||
"details": "Besonderhede",
|
||||
"direction": "Rigting",
|
||||
"discover": "Ontdek",
|
||||
"documentation": "Dokumentasie",
|
||||
"done": "Klaar",
|
||||
"download": "Aflaai",
|
||||
"download_settings": "Aflaai",
|
||||
"duplicates": "Duplikate",
|
||||
"duration": "Duur",
|
||||
"edit": "Wysig",
|
||||
"edited": "Gewysigd",
|
||||
"search_by_description": "Soek by beskrywing",
|
||||
"search_by_description_example": "Stapdag in Sapa"
|
||||
"search_by_description_example": "Stapdag in Sapa",
|
||||
"version": "Weergawe",
|
||||
"version_announcement_closing": "Jou friend, Alex",
|
||||
"version_history": "Weergawegeskiedenis",
|
||||
"version_history_item": "{version} geinstaleerd op {date}",
|
||||
"video": "Video",
|
||||
"videos": "Video's",
|
||||
"view": "Bekyk",
|
||||
"view_album": "Bekyk Album",
|
||||
"view_all": "Bekyk alle",
|
||||
"view_all_users": "Bekyk alle gebruikers",
|
||||
"view_in_timeline": "Bekyk in tydlyn",
|
||||
"view_link": "Bekyk skakel",
|
||||
"view_links": "Bekyk skakels",
|
||||
"view_name": "Bekyk",
|
||||
"view_next_asset": "Bekyk volgende bate",
|
||||
"view_previous_asset": "Bekyk vorige bate",
|
||||
"view_qr_code": "Bekyk QR-kode",
|
||||
"view_stack": "Bekyk stapel",
|
||||
"view_user": "Bekyk gebruiker",
|
||||
"viewer_remove_from_stack": "Verwyder van stapel",
|
||||
"viewer_stack_use_as_main_asset": "Gebruik as hoofbate",
|
||||
"viewer_unstack": "Ontstapel",
|
||||
"visibility_changed": "Sigbaarheid verander voor {count, plural, one {# person} other {# people}}",
|
||||
"waiting": "Wag",
|
||||
"warning": "Waaskuwing",
|
||||
"week": "Week",
|
||||
"welcome": "Welkom",
|
||||
"welcome_to_immich": "Welkom by Immich",
|
||||
"wifi_name": "Wi-Fi Naam",
|
||||
"wrong_pin_code": "Verkeerde PIN-kode",
|
||||
"year": "Jaar",
|
||||
"years_ago": "{years, plural, one {# year} other {# years}} gelede",
|
||||
"yes": "Ja",
|
||||
"you_dont_have_any_shared_links": "Jy het geen gedeelde skakels",
|
||||
"your_wifi_name": "Jou Wi-Fi naam",
|
||||
"zoom_image": "Vergroot Prent"
|
||||
}
|
||||
|
||||
492
i18n/ar.json
492
i18n/ar.json
File diff suppressed because it is too large
Load Diff
367
i18n/be.json
367
i18n/be.json
@@ -6,7 +6,7 @@
|
||||
"action": "╨Ф╨╖╨╡╤П╨╜╨╜╨╡",
|
||||
"action_common_update": "╨Р╨▒╨╜╨░╨▓╤Ц╤Ж╤М",
|
||||
"actions": "╨Ф╨╖╨╡╤П╨╜╨╜╤Ц",
|
||||
"active": "╨Р╨║╤В╤Л╤Ю╨╜╤Л",
|
||||
"active": "╨Р╨║╤В╤Л╤Ю╨╜╤Л╤Е",
|
||||
"activity": "╨Р╨║╤В╤Л╤Ю╨╜╨░╤Б╤Ж╤М",
|
||||
"activity_changed": "╨Р╨║╤В╤Л╤Ю╨╜╨░╤Б╤Ж╤М {enabled, select, true {╤Г╨║╨╗╤О╤З╨░╨╜╨░} other {╨░╨┤╨║╨╗╤О╤З╨░╨╜╨░}}",
|
||||
"add": "╨Ф╨░╨┤╨░╤Ж╤М",
|
||||
@@ -22,6 +22,7 @@
|
||||
"add_partner": "╨Ф╨░╨┤╨░╤Ж╤М ╨┐╨░╤А╤В╨╜╤С╤А╨░",
|
||||
"add_path": "╨Ф╨░╨┤╨░╤Ж╤М ╤И╨╗╤П╤Е",
|
||||
"add_photos": "╨Ф╨░╨┤╨░╤Ж╤М ╤Д╨╛╤В╨░",
|
||||
"add_tag": "╨Ф╨░╨┤╨░╤Ж╤М ╤В╤Н╨│",
|
||||
"add_to": "╨Ф╨░╨┤╨░╤Ж╤М ╤ГтАж",
|
||||
"add_to_album": "╨Ф╨░╨┤╨░╤Ж╤М ╤Г ╨░╨╗╤М╨▒╨╛╨╝",
|
||||
"add_to_album_bottom_sheet_added": "╨Ф╨░╨┤╨░╨┤╨╖╨╡╨╜╨░ ╨┤╨░ {album}",
|
||||
@@ -33,28 +34,30 @@
|
||||
"added_to_favorites_count": "╨Ф╨░╨┤╨░╨┤╨╖╨╡╨╜╨░ {count, number} ╨┤╨░ ╨░╨▒╤А╨░╨╜╨░╨│╨░",
|
||||
"admin": {
|
||||
"add_exclusion_pattern_description": "╨Ф╨░╨┤╨░╨╣╤Ж╨╡ ╤И╨░╨▒╨╗╨╛╨╜╤Л ╨▓╤Л╨║╨╗╤О╤З╤Н╨╜╨╜╤П╤Ю. ╨Я╨░╨┤╤В╤А╤Л╨╝╨╗╤Ц╨▓╨░╨╡╤Ж╤Ж╨░ ╨▓╤Л╨║╨░╤А╤Л╤Б╤В╨░╨╜╨╜╨╡ ╤Б╤Ц╨╝╨▓╨░╨╗╨░╤Ю * , ** ╤Ц ?. ╨Ъ╨░╨▒ ╤Ц╨│╨╜╨░╤А╨░╨▓╨░╤Ж╤М ╤Г╤Б╨╡ ╤Д╨░╨╣╨╗╤Л ╤Ю ╨╗╤О╨▒╨╛╨╣ ╨┤╤Л╤А╤Н╨║╤В╨╛╤А╤Л╤Ц ╨╖ ╨╜╨░╨╖╨▓╨░╨╣ \"Raw\", ╨▓╤Л╨║╨░╤А╤Л╤Б╤В╨╛╤Ю╨▓╨░╨╣╤Ж╨╡ \"**/Raw/**\". ╨Ъ╨░╨▒ ╤Ц╨│╨╜╨░╤А╨░╨▓╨░╤Ж╤М ╤Г╤Б╨╡ ╤Д╨░╨╣╨╗╤Л, ╤П╨║╤Ц╤П ╨╖╨░╨║╨░╨╜╤З╨▓╨░╤О╤Ж╤Ж╨░ ╨╜╨░ \".tif\", ╨▓╤Л╨║╨░╤А╤Л╤Б╤В╨╛╤Ю╨▓╨░╨╣╤Ж╨╡ \"**/.tif\". ╨Ъ╨░╨▒ ╤Ц╨│╨╜╨░╤А╨░╨▓╨░╤Ж╤М ╨░╨▒╤Б╨╛╨╗╤О╤В╨╜╤Л ╤И╨╗╤П╤Е, ╨▓╤Л╨║╨░╤А╤Л╤Б╤В╨╛╤Ю╨▓╨░╨╣╤Ж╨╡ \"/path/to/ignore/**\".",
|
||||
"admin_user": "╨Р╨┤╨╝╤Ц╨╜╤Ц╤Б╤В╤А╨░╤В╨░╤А",
|
||||
"asset_offline_description": "╨У╤Н╤В╤Л ╨╖╨╜╨╡╤И╨╜╤Ц ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╤З╨╜╤Л ╨░╨║╤В╤Л╤Ю ╨▒╨╛╨╗╤М╤И ╨╜╨╡ ╨╖╨╜╨╛╨╣╨┤╨╖╨╡╨╜╤Л ╨╜╨░ ╨┤╤Л╤Б╨║╤Г ╤Ц ╨▒╤Л╤Ю ╨┐╨╡╤А╨░╨╝╨╡╤И╤З╨░╨╜╤Л ╤Ю ╤Б╨╝╨╡╤В╨╜╤Ц╤Ж╤Г. ╨Ъ╨░╨╗╤Ц ╤Д╨░╨╣╨╗ ╨▒╤Л╤Ю ╨┐╨╡╤А╨░╨╝╨╡╤И╤З╨░╨╜╤Л ╤Ю ╨╝╨╡╨╢╨░╤Е ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╤Ц, ╨┐╤А╨░╨▓╨╡╤А╤Ж╨╡ ╨▓╨░╤И╤Г ╤Е╤А╨╛╨╜╤Ц╨║╤Г ╨┤╨╗╤П ╨╜╨╛╨▓╨░╨│╨░ ╨░╨┤╨┐╨░╨▓╨╡╨┤╨╜╨░╨│╨░ ╨░╨║╤В╤Л╨▓╨░. ╨Ъ╨░╨▒ ╨░╨┤╨╜╨░╨▓╤Ц╤Ж╤М ╨│╤Н╤В╤Л ╨░╨║╤В╤Л╤Ю, ╨┐╨╡╤А╨░╨║╨░╨╜╨░╨╣╤Ж╨╡╤Б╤П, ╤И╤В╨╛ ╤И╨╗╤П╤Е ╨┤╨░ ╤Д╨░╨╣╨╗╨░ ╨╜╤Ц╨╢╤Н╨╣ ╨┤╨░╤Б╤В╤Г╨┐╨╜╤Л ╨┤╨╗╤П Immich ╤Ц ╨░╨┤╤Б╨║╨░╨╜╤Г╨╣╤Ж╨╡ ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╤Г.",
|
||||
"authentication_settings": "╨Э╨░╨╗╨░╨┤╤Л ╨┐╤А╨░╨▓╨╡╤А╨║╤Ц ╤Б╨░╨┐╤А╨░╤Ю╨┤╨╜╨░╤Б╤Ж╤Ц",
|
||||
"authentication_settings_description": "╨Ъ╤Ц╤А╨░╨▓╨░╨╜╨╜╨╡ ╨┐╨░╤А╨╛╨╗╤П╨╝╤Ц, OAuth, ╤Ц ╤Ц╨╜╤И╤Л╤П ╨╜╨░╨╗╨░╨┤╤Л ╨┐╤А╨░╨▓╨╡╤А╨║╤Ц ╤Б╨░╨┐╤А╨░╤Ю╨┤╨╜╨░╤Б╤Ж╤Ц",
|
||||
"authentication_settings_disable_all": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л, ╤И╤В╨╛ ╨╢╨░╨┤╨░╨╡╤Ж╨╡ ╨░╨┤╨║╨╗╤О╤З╤Л╤Ж╤М ╤Г╤Б╨╡ ╤Б╨┐╨╛╤Б╨░╨▒╤Л ╨╗╨╛╨│╤Ц╨╜╤Г? ╨Ы╨╛╨│╤Ц╨╜ ╨▒╤Г╨┤╨╖╨╡ ╤Ж╨░╨╗╨║╨░╨╝ ╨░╨┤╨║╨╗╤О╤З╨░╨╜╤Л.",
|
||||
"authentication_settings_reenable": "╨Ъ╨░╨▒ ╨╖╨╜╨╛╤Ю ╤Г╨║╨╗╤О╤З╤Л╤Ж╤М, ╨▓╤Л╨║╨░╤А╤Л╤Б╤В╨░╨╣╤Ж╨╡ <link>╨Ъ╨░╨╝╨░╨╜╨┤╤Г ╤Б╨╡╤А╨▓╨╡╤А╨░</link>.",
|
||||
"background_task_job": "╨д╨╛╨╜╨░╨▓╤Л╤П ╨╖╨░╨┤╨░╨╜╨╜╤Ц",
|
||||
"backup_database": "╨а╤Н╨╖╨╡╤А╨▓╨╛╨▓╨░╤П ╨║╨╛╨┐╤Ц╤П ╨▒╨░╨╖╤Л ╨┤╨░╨╜╤Л╤Е",
|
||||
"backup_database": "╨б╤В╨▓╨░╤А╤Л╤Ж╤М ╤А╤Н╨╖╨╡╤А╨▓╨╛╨▓╤Г╤О ╨║╨╛╨┐╤Ц╤О ╨▒╨░╨╖╤Л ╨┤╨░╨╜╤Л╤Е",
|
||||
"backup_database_enable_description": "╨г╨║╨╗╤О╤З╤Л╤Ж╤М ╤А╤Н╨╖╨╡╤А╨▓╨░╨▓╨░╨╜╨╜╨╡ ╨▒╨░╨╖╤Л ╨┤╨░╨╜╤Л╤Е",
|
||||
"backup_keep_last_amount": "╨Ъ╨╛╨╗╤М╨║╨░╤Б╤Ж╤М ╨┐╨░╨┐╤П╤А╤Н╨┤╨╜╤Ц╤Е ╤А╤Н╨╖╨╡╤А╨▓╨╛╨▓╤Л╤Е ╨║╨╛╨┐╤Ц╨╣ ╨┤╨╗╤П ╨╖╨░╤Е╨░╨▓╨░╨╜╨╜╤П",
|
||||
"backup_settings": "╨Э╨░╨╗╨░╨┤╤Л ╤А╤Н╨╖╨╡╤А╨▓╨╛╨▓╨░╨│╨░ ╨║╨░╨┐╤Ц╤П╨▓╨░╨╜╨╜╤П",
|
||||
"backup_settings_description": "╨Ъ╤Ц╤А╨░╨▓╨░╨╜╨╜╨╡ ╨╜╨░╨╗╨░╨┤╨░╨╝╤Ц ╨┤╨░╨╝╨┐╨░ ╨▒╨░╨╖╤Л ╨┤╨░╨┤╨╖╨╡╨╜╤Л╤Е. ╨Ч╨░╤Ю╨▓╨░╨│╨░: ╨│╤Н╤В╤Л╤П ╨╖╨░╨┤╨░╤З╤Л ╨╜╨╡ ╨║╨░╨╜╤В╤А╨░╨╗╤О╤О╤Ж╤Ж╨░, ╤Ц ╤Ю ╨▓╤Л╨┐╨░╨┤╨║╤Г ╨╜╤П╤Ю╨┤╨░╤З╤Л ╨┐╨░╨▓╨╡╨┤╨░╨╝╨╗╨╡╨╜╨╜╨╡ ╨░╨┤╨┐╤А╨░╤Ю╨╗╨╡╨╜╨░ ╨╜╨╡ ╨▒╤Г╨┤╨╖╨╡.",
|
||||
"backup_settings_description": "╨Ъ╤Ц╤А╨░╨▓╨░╨╜╨╜╨╡ ╨╜╨░╨╗╨░╨┤╨░╨╝╤Ц ╤А╤Н╨╖╨╡╤А╨▓╨░╨▓╨░╨╜╨╜╤П ╨▒╨░╨╖╤Л ╨┤╨░╨╜╤Л╤Е.",
|
||||
"cleared_jobs": "╨Р╤З╤Л╤И╤З╨░╨╜╤Л ╨╖╨░╨┤╨░╨╜╨╜╤Ц ╨┤╨╗╤П: {job}",
|
||||
"config_set_by_file": "╨Ъ╨░╨╜╤Д╤Ц╨│╤Г╤А╨░╤Ж╤Л╤П ╤Ю ╨╖╨░╤А╨░╨╖ ╤Г╤Б╤В╨░╨╗╤П╨▓╨░╨╜╨░ ╨┐╤А╨░╨╖ ╤Д╨░╨╣╨╗ ╨║╨░╨╜╤Д╤Ц╨│╤Г╤А╨░╤Ж╤Л╤Ц",
|
||||
"confirm_delete_library": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л ╤И╤В╨╛ ╨╢╨░╨┤╨░╨╡╤Ж╨╡ ╨▓╤Л╨┤╨░╨╗╤Ц╤Ж╤М {library} ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╤Г?",
|
||||
"config_set_by_file": "╨Ъ╨░╨╜╤Д╤Ц╨│╤Г╤А╨░╤Ж╤Л╤П ╨╖╨░╤А╨░╨╖ ╤Г╤Б╤В╨░╨╗╤П╨▓╨░╨╜╨░ ╨┐╤А╨░╨╖ ╤Д╨░╨╣╨╗ ╨║╨░╨╜╤Д╤Ц╨│╤Г╤А╨░╤Ж╤Л╤Ц",
|
||||
"confirm_delete_library": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л ╤И╤В╨╛ ╨╢╨░╨┤╨░╨╡╤Ж╨╡ ╨▓╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╤Г {library}?",
|
||||
"confirm_delete_library_assets": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л, ╤И╤В╨╛ ╤Е╨╛╤З╨░╤Ж╨╡ ╨▓╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨│╤Н╤В╤Г╤О ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╤Г? ╨У╤Н╤В╨░ ╨┐╤А╤Л╨▓╤П╨┤╨╖╨╡ ╨┤╨░ ╨▓╤Л╨┤╨░╨╗╨╡╨╜╨╜╤П {count, plural, one {# ╨░╨║╤В╤Л╨▓╤Г} other {╤Г╤Б╤Ц╤Е # ╨░╨║╤В╤Л╨▓╨░╤Ю}}, ╤П╨║╤Ц╤П ╨╖╨╝╤П╤И╤З╨░╤О╤Ж╤Ж╨░ ╤Ю Immich, ╤Ц ╨│╤Н╤В╨░ ╨┤╨╖╨╡╤П╨╜╨╜╨╡ ╨╜╨╡╨╝╨░╨│╤З╤Л╨╝╨░ ╨▒╤Г╨┤╨╖╨╡ ╨░╨┤╨╝╤П╨╜╤Ц╤Ж╤М. ╨д╨░╨╣╨╗╤Л ╨╖╨░╤Б╤В╨░╨╜╤Г╤Ж╤Ж╨░ ╨╜╨░ ╨┤╤Л╤Б╨║╤Г.",
|
||||
"confirm_email_below": "╨Ъ╨░╨▒ ╨┐╨░╤Ж╨▓╨╡╤А╨┤╨╖╤Ц╤Ж╤М, ╤Г╨▓╤П╨┤╨╖╤Ц╤Ж╨╡ \"{email}\" ╨╜╤Ц╨╢╤Н╨╣",
|
||||
"confirm_reprocess_all_faces": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л, ╤И╤В╨╛ ╤Е╨╛╤З╨░╤Ж╨╡ ╨┐╨╡╤А╨░╨░╨┐╤А╨░╤Ж╨░╨▓╨░╤Ж╤М ╤Г╤Б╨╡ ╤В╨▓╨░╤А╤Л? ╨У╤Н╤В╨░ ╤В╨░╨║╤Б╨░╨╝╨░ ╨┐╤А╤Л╨▓╤П╨┤╨╖╨╡ ╨┤╨░ ╨▓╤Л╨┤╨░╨╗╨╡╨╜╨╜╤П ╤Ц╨╝╤П ╨╗╤О╨┤╨╖╨╡╨╣.",
|
||||
"confirm_user_password_reset": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л ╤Ю ╤В╤Л╨╝, ╤И╤В╨╛ ╨╢╨░╨┤╨░╨╡╤Ж╨╡ ╤Б╨║╤Ц╨╜╤Г╤Ж╤М ╨┐╨░╤А╨╛╨╗╤М {user}?",
|
||||
"confirm_user_pin_code_reset": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л ╤Ю ╤В╤Л╨╝, ╤И╤В╨╛ ╨╢╨░╨┤╨░╨╡╤Ж╨╡ ╤Б╨║╤Ц╨╜╤Г╤Ж╤М PIN-╨║╨╛╨┤ {user}?",
|
||||
"create_job": "╨б╤В╨▓╨░╤А╤Л╤Ж╤М ╨╖╨░╨┤╨░╨╜╨╜╨╡",
|
||||
"cron_expression": "╨Т╤Л╤А╨░╨╖ Cron",
|
||||
"cron_expression_description": "╨г╤Б╤В╨░╨╗╤О╨╣╤Ж╨╡ ╤Ц╨╜╤В╤Н╤А╨▓╨░╨╗ ╤Б╨║╨░╨╜╨░╨▓╨░╨╜╨╜╤П, ╨▓╤Л╨║╨░╤А╤Л╤Б╤В╨╛╤Ю╨▓╨░╤О╤З╤Л ╤Д╨░╤А╨╝╨░╤В cron. ╨Ф╨╗╤П ╨░╤В╤А╤Л╨╝╨░╨╜╨╜╤П ╨┤╨░╨┤╨░╤В╨║╨╛╨▓╨░╨╣ ╤Ц╨╜╤Д╨░╤А╨╝╨░╤Ж╤Л╤Ц, ╨║╨░╨╗╤Ц ╨╗╨░╤Б╨║╨░, ╨╖╨▓╤П╤А╨╜╤Ц╤Ж╨╡╤Б╤П, ╨╜╨░╨┐╤А╤Л╨║╨╗╨░╨┤, ╨┤╨░ <link>Crontab Guru</link>",
|
||||
"cron_expression_presets": "╨Я╤А╨░╨┤╤Г╤Б╤В╨░╨╜╨╛╨▓╨║╤Ц ╨▓╤Л╤А╨░╨╖╨░╤Ю Cron",
|
||||
"cron_expression_presets": "╨Я╤А╨░╨┤╤Г╤Б╤В╨░╨╜╨╛╤Ю╨║╤Ц ╨▓╤Л╤А╨░╨╖╨░╤Ю Cron",
|
||||
"disable_login": "╨Р╨┤╨║╨╗╤О╤З╤Л╤Ж╤М ╤Г╨▓╨░╤Е╨╛╨┤",
|
||||
"duplicate_detection_job_description": "╨Ч╨░╨┐╤Г╤Б╤Ж╤Ц╤Ж╤М ╨╝╨░╤И╤Л╨╜╨╜╨░╨╡ ╨╜╨░╨▓╤Г╤З╨░╨╜╨╜╨╡ ╨╜╨░ ╨░╨║╤В╤Л╨▓╨░╤Е ╨┤╨╗╤П ╨▓╤Л╤П╤Ю╨╗╨╡╨╜╨╜╤П ╨┐╨░╨┤╨╛╨▒╨╜╤Л╤Е ╨▓╤Л╤П╤Ю. ╨Ч╨░╨╗╨╡╨╢╤Л╤Ж╤М ╨░╨┤ Smart Search",
|
||||
"exclusion_pattern_description": "╨и╨░╨▒╨╗╨╛╨╜╤Л ╨▓╤Л╨║╨╗╤О╤З╤Н╨╜╨╜╤П ╨┤╨░╨╖╨▓╨░╨╗╤П╤О╤Ж╤М ╤Ц╨│╨╜╨░╤А╨░╨▓╨░╤Ж╤М ╤Д╨░╨╣╨╗╤Л ╤Ц ╨┐╨░╨┐╨║╤Ц ╨┐╤А╤Л ╤Б╨║╨░╨╜╨░╨▓╨░╨╜╨╜╤Ц ╨▓╨░╤И╨░╨╣ ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╤Ц. ╨У╤Н╤В╨░ ╨║╨░╤А╤Л╤Б╨╜╨░, ╨║╨░╨╗╤Ц ╤Ю ╨▓╨░╤Б ╤С╤Б╤Ж╤М ╨┐╨░╨┐╨║╤Ц, ╤П╨║╤Ц╤П ╨╖╨╝╤П╤И╤З╨░╤О╤Ж╤М ╤Д╨░╨╣╨╗╤Л, ╤П╨║╤Ц╤П ╨▓╤Л ╨╜╨╡ ╤Е╨╛╤З╨░╤Ж╨╡ ╤Ц╨╝╨┐╨░╤А╤В╨░╨▓╨░╤Ж╤М, ╨╜╨░╨┐╤А╤Л╨║╨╗╨░╨┤, ╤Д╨░╨╣╨╗╤Л RAW.",
|
||||
@@ -71,15 +74,361 @@
|
||||
"image_fullsize_enabled_description": "╨б╤В╨▓╨░╤А╨░╤Ж╤М ╨▓╤Л╤П╨▓╤Г ╤Ю ╨┐╨╛╤Ю╨╜╤Л╨╝ ╨┐╨░╨╝╨╡╤А╤Л ╨┤╨╗╤П ╤Д╨░╤А╨╝╨░╤В╨░╤Ю, ╤И╤В╨╛ ╨╜╨╡ ╨┐╤А╤Л╨┤╨░╤В╨╜╤Л╤П ╨┤╨╗╤П ╨▓╤Н╨▒. ╨Ъ╨░╨╗╤Ц ╤Ю╨║╨╗╤О╤З╨░╨╜╨░ ╨╛╨┐╤Ж╤Л╤П \"╨Р╨┤╨┤╨░╨▓╨░╤Ж╤М ╨┐╨╡╤А╨░╨▓╨░╨│╤Г ╤Ю╨▒╤Г╨┤╨░╨▓╨░╨╜╨░╨╣ ╨┐╤А╨░╤П╨▓╨╡\", ╨┐╤А╨░╨│╨╗╤П╨┤╤Л ╨▓╤Л╨║╨░╤А╤Л╤Б╤В╨╛╤Ю╨▓╨░╤О╤Ж╤Ж╨░ ╨╜╨╡╨┐╨░╤Б╤А╤Н╨┤╨╜╨░ ╨▒╨╡╨╖ ╨║╨░╨╜╨▓╨╡╤А╤В╨░╤Ж╤Л╤Ц. ╨Э╨╡ ╤Ю╨┐╨╗╤Л╨▓╨░╨╡ ╨╜╨░ ╨▓╤Н╨▒-╨┐╤А╤Л╨┤╨░╤В╨╜╤Л╤П ╤Д╨░╤А╨╝╨░╤В╤Л, ╤В╨░╨║╤Ц╤П ╤П╨║ JPEG.",
|
||||
"image_fullsize_quality_description": "╨п╨║╨░╤Б╤Ж╤М ╨▓╤Л╤П╨▓╤Л ╤Ю ╨┐╨╛╤Ю╨╜╤Л╨╝ ╨┐╨░╨╝╨╡╤А╤Л ╨░╨┤ 1 ╨┤╨░ 100. ╨С╨╛╨╗╤М╤И ╨▓╤Л╤Б╨╛╨║╨░╨╡ ╨╖╨╜╨░╤З╤Н╨╜╨╜╨╡ ╨╗╨╡╨┐╤И╨░╨╡, ╨░╨╗╨╡ ╨┐╤А╤Л╨▓╨╛╨┤╨╖╤Ц╤Ж╤М ╨┤╨░ ╨┐╨░╨▓╨╡╨╗╤Ц╤З╤Н╨╜╨╜╤П ╨┐╨░╨╝╨╡╤А╤Г ╤Д╨░╨╣╨╗╨░.",
|
||||
"image_fullsize_title": "╨Э╨░╨╗╨░╨┤╤Л ╨▓╤Л╤П╨▓╤Л ╤Ю ╨┐╨╛╤Ю╨╜╤Л╨╝ ╨┐╨░╨╝╨╡╤А╤Л",
|
||||
"image_prefer_embedded_preview": "╨Р╨┤╨┤╨░╨▓╨░╤Ж╤М ╨┐╨╡╤А╨░╨▓╨░╨│╤Г ╤Ю╨▒╤Г╨┤╨░╨▓╨░╨╜╨░╨╣ ╨┐╤А╨░╤П╨▓╨╡",
|
||||
"image_prefer_embedded_preview_setting_description": "╨Т╤Л╨║╨░╤А╤Л╤Б╤В╨╛╤Ю╨▓╨░╤Ж╤М ╤Г╨▒╤Г╨┤╨░╨▓╨░╨╜╤Л╤П ╨┐╤А╨░╤П╨▓╤Л ╤Ю RAW-╤Д╨╛╤В╨░╨╖╨┤╤Л╨╝╨║╨░╤Е ╤Ю ╤П╨║╨░╤Б╤Ж╤Ц ╤Ю╨▓╨░╤Е╨╛╨┤╨╜╤Л╤Е ╨┤╨░╨┤╨╖╨╡╨╜╤Л╤Е ╨┤╨╗╤П ╨░╨┐╤А╨░╤Ж╨╛╤Ю╨║╤Ц ╨╝╨░╨╗╤О╨╜╨║╨░╤Ю, ╨║╨░╨╗╤Ц ╨╝╨░╨│╤З╤Л╨╝╨░. ╨У╤Н╤В╨░ ╨┤╨░╨╖╨▓╨░╨╗╤П╨╡ ╨░╤В╤А╤Л╨╝╨░╤Ж╤М ╨▒╨╛╨╗╤М╤И ╨┤╨░╨║╨╗╨░╨┤╨╜╤Л╤П ╨║╨╛╨╗╨╡╤А╤Л ╨┤╨╗╤П ╨╜╨╡╨║╨░╤В╨╛╤А╤Л╤Е ╨▓╤Ц╨┤╨░╤А╤Л╤Б╨░╤Ю, ╨░╨╗╨╡ ╨╢ ╤П╨║╨░╤Б╤Ж╤М ╨┐╤А╨░╤П╤Ю ╨╖╨░╨╗╨╡╨╢╤Л╤Ж╤М ╨░╨┤ ╨║╨░╨╝╨╡╤А╤Л, ╤Ц ╨╜╨░ ╨▓╤Ц╨┤╨░╤А╤Л╤Б╨╡ ╨╝╨╛╨╢╨░ ╨▒╤Л╤Ж╤М ╨▒╨╛╨╗╤М╤И ╨░╤А╤В╤Н╤Д╨░╨║╤В╨░╤Ю ╤Б╤Ж╤Ц╤Б╨║╤Г.",
|
||||
"image_prefer_wide_gamut": "╨Р╨┤╨┤╨░╤Ж╤М ╨┐╨╡╤А╨░╨▓╨░╨│╤Г ╤И╤Л╤А╨╛╨║╨░╨╣ ╨│╨░╨╝╨╡",
|
||||
"image_preview_description": "╨Т╤Ц╨┤╨░╤А╤Л╤Б ╤Б╤П╤А╤Н╨┤╨╜╤П╨│╨░ ╨┐╨░╨╝╨╡╤А╤Г ╨╖ ╨▓╤Л╨┤╨░╨╗╨╡╨╜╤Л╨╝╤Ц ╨╝╨╡╤В╨░╨┤╨░╨┤╨╖╨╡╨╜╤Л╨╝╤Ц, ╨▓╤Л╨║╨░╤А╤Л╤Б╤В╨╛╤Ю╨▓╨░╨╡╤Ж╤Ж╨░ ╨┐╤А╤Л ╨┐╤А╨░╨│╨╗╤П╨┤╨╖╨╡ ╨░╤Б╨╛╨▒╨╜╨░╨│╨░ ╤А╤Н╤Б╤Г╤А╤Б╤Г ╤Ц ╨┤╨╗╤П ╨╝╨░╤И╤Л╨╜╨╜╨░╨│╨░ ╨╜╨░╨▓╤Г╤З╨░╨╜╨╜╤П",
|
||||
"image_preview_quality_description": "╨п╨║╨░╤Б╤Ж╤М ╨┐╤А╨░╤П╨▓╤Л ╨░╨┤ 1 ╨┤╨░ 100. ╨з╤Л╨╝ ╨▓╤Л╤И╤Н╨╣, ╤В╤Л╨╝ ╨╗╨╡╨┐╤И, ╨░╨╗╨╡ ╨┐╤А╤Л ╨│╤Н╤В╤Л╨╝ ╤Б╤В╨▓╨░╤А╨░╤О╤Ж╤Ж╨░ ╤Д╨░╨╣╨╗╤Л ╨▒╨╛╨╗╤М╤И╨░╨│╨░ ╨┐╨░╨╝╨╡╤А╤Г ╤Ц ╨╝╨╛╨╢╨░ ╨╖╨╜╤Ц╨╖╤Ц╤Ж╤Ж╨░ ╤Е╤Г╤В╨║╨░╤Б╤Ж╤М ╨▓╨╛╨┤╨│╤Г╨║╤Г ╨┐╤А╤Л╨║╨╗╨░╨┤╨░╨╜╨╜╤П. ╨О╤Б╤В╨░╨╜╨╛╤Ю╨║╨░ ╨╜╤Ц╨╖╨║╨░╨│╨░ ╨╖╨╜╨░╤З╤Н╨╜╨╜╤П ╨╝╨╛╨╢╨░ ╨┐╨░╤Ю╨┐╨╗╤Л╨▓╨░╤Ж╤М ╨╜╨░ ╤П╨║╨░╤Б╤Ж╤М ╨╝╨░╤И╤Л╨╜╨╜╨░╨│╨░ ╨╜╨░╨▓╤Г╤З╨░╨╜╨╜╤П.",
|
||||
"image_preview_title": "╨Э╨░╨╗╨░╨┤╤Л ╨┐╨░╨┐╤П╤А╤Н╨┤╨╜╤П╨│╨░ ╨┐╤А╨░╨│╨╗╤П╨┤╤Г",
|
||||
"image_quality": "╨п╨║╨░╤Б╤Ж╤М",
|
||||
"image_resolution": "╨а╨░╨╖╨┤╨╖╤П╨╗╤П╨╗╤М╨╜╨░╤Б╤Ж╤М",
|
||||
"image_settings": "╨Э╨░╨╗╨░╨┤╤Л ╨▓╤Ц╨┤╨░╤А╤Л╤Б╨░",
|
||||
"image_settings_description": "╨Ъ╤Ц╤А╤Г╨╣╤Ж╨╡ ╤П╨║╨░╤Б╤Ж╤О ╤Ц ╤А╨░╨╖╨┤╨╖╤П╨╗╤П╨╗╤М╨╜╨░╤Б╤Ж╤О ╤Б╨│╨╡╨╜╨╡╤А╤Л╤А╨░╨▓╨░╨╜╤Л╤Е ╨▓╤Ц╨┤╨░╤А╤Л╤Б╨░╤Ю"
|
||||
"image_settings_description": "╨Ъ╤Ц╤А╤Г╨╣╤Ж╨╡ ╤П╨║╨░╤Б╤Ж╤О ╤Ц ╤А╨░╨╖╨┤╨╖╤П╨╗╤П╨╗╤М╨╜╨░╤Б╤Ж╤О ╤Б╨│╨╡╨╜╨╡╤А╤Л╤А╨░╨▓╨░╨╜╤Л╤Е ╨▓╤Ц╨┤╨░╤А╤Л╤Б╨░╤Ю",
|
||||
"library_created": "╨б╤В╨▓╨╛╤А╨░╨╜╨░ ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╨░: {library}",
|
||||
"library_deleted": "╨С╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╨░ ╨▓╤Л╨┤╨░╨╗╨╡╨╜╨░",
|
||||
"map_dark_style": "╨ж╤С╨╝╨╜╤Л ╤Б╤В╤Л╨╗╤М",
|
||||
"map_enable_description": "╨г╨║╨╗╤О╤З╤Л╤Ж╤М ╤Д╤Г╨╜╨║╤Ж╤Л╤Ц ╨║╨░╤А╤В╤Л",
|
||||
"map_gps_settings": "╨Э╨░╨╗╨░╨┤╤Л ╨║╨░╤А╤В╤Л ╤Ц GPS",
|
||||
"map_light_style": "╨б╨▓╨╡╤В╨╗╤Л ╤Б╤В╤Л╨╗╤М",
|
||||
"map_settings": "╨Ъ╨░╤А╤В╨░",
|
||||
"map_settings_description": "╨Ъ╤Ц╤А╨░╨▓╨░╨╜╨╜╨╡ ╨╜╨░╨╗╨░╨┤╨░╨╝╤Ц ╨║╨░╤А╤В╤Л",
|
||||
"map_style_description": "URL-╨░╨┤╤А╨░╤Б style.json ╤В╤Н╨╝╤Л ╨║╨░╤А╤В╤Л",
|
||||
"metadata_settings": "╨Э╨░╨╗╨░╨┤╤Л ╨╝╨╡╤В╨░╨┤╨░╨╜╤Л╤Е",
|
||||
"oauth_button_text": "╨в╤Н╨║╤Б╤В ╨║╨╜╨╛╨┐╨║╤Ц",
|
||||
"oauth_settings": "OAuth",
|
||||
"refreshing_all_libraries": "╨Р╨▒╨╜╨░╤Ю╨╗╨╡╨╜╨╜╨╡ ╤Ю╤Б╤Ц╤Е ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║",
|
||||
"registration": "╨а╤Н╨│╤Ц╤Б╤В╤А╨░╤Ж╤Л╤П ╨░╨┤╨╝╤Ц╨╜╤Ц╤Б╤В╤А╨░╤В╨░╤А╨░",
|
||||
"registration_description": "╨Т╤Л ╨╖'╤П╤Ю╨╗╤П╨╡╤Ж╨╡╤Б╤П ╨┐╨╡╤А╤И╤Л╨╝ ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░╨╝ ╤Б╤Ц╤Б╤В╤Н╨╝╤Л, ╤В╨░╨╝╤Г ╨▓╤Л ╨▒╤Г╨┤╨╖╨╡╤Ж╨╡ ╨┐╤А╤Л╨╖╨╜╨░╤З╨░╨╜╤Л ╨░╨┤╨╝╤Ц╨╜╤Ц╤Б╤В╤А╨░╤В╨░╤А╨░╨╝. ╨Т╤Л ╨▒╤Г╨┤╨╖╨╡╤Ж╨╡ ╨░╨┤╨║╨░╨╖╨▓╨░╤Ж╤М ╨╖╨░ ╨░╨┤╨╝╤Ц╨╜╤Ц╤Б╤В╤А╨░╤Ж╤Л╨╣╨╜╤Л╤П ╨╖╨░╨┤╨░╤З╤Л, ╨░ ╤В╨░╨║╤Б╨░╨╝╨░ ╤Б╤В╨▓╨░╤А╨░╤Ж╤М ╨╜╨╛╨▓╤Л╤Е ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░╤Ю.",
|
||||
"require_password_change_on_login": "╨Я╨░╤В╤А╨░╨▒╨░╨▓╨░╤Ж╤М ╨╖╨╝╤П╨╜╤Ц╤Ж╤М ╨┐╨░╤А╨╛╨╗╤М ╨┐╤А╤Л ╨┐╨╡╤А╤И╤Л╨╝ ╤Г╨▓╨░╤Е╨╛╨┤╨╖╨╡ ╤Ю ╤Б╤Ц╤Б╤В╤Н╨╝╤Г",
|
||||
"reset_settings_to_default": "╨б╨║╤Ц╨╜╤Г╤Ж╤М ╨╜╨░╨╗╨░╨┤╤Л ╨┤╨░ ╨┐╤А╨░╨┤╨▓╤Л╨╖╨╜╨░╤З╨░╨╜╤Л╤Е",
|
||||
"reset_settings_to_recent_saved": "╨б╨║╤Ц╨╜╤Г╤Ж╤М ╨╜╨░╨╗╨░╨┤╤Л ╨┤╨░ ╨╜╤П╨┤╨░╤Ю╨╜╨░ ╨╖╨░╤Е╨░╨▓╨░╨╜╤Л╤Е",
|
||||
"scanning_library": "╨б╨║╨░╨╜╤Ц╤А╨░╨▓╨░╨╜╨╜╨╡ ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╤Ц",
|
||||
"server_external_domain_settings": "╨Ч╨╜╨╡╤И╨╜╤Ц ╨┤╨░╨╝╨╡╨╜",
|
||||
"server_settings": "╨Э╨░╨╗╨░╨┤╤Л ╤Б╨╡╤А╨▓╨╡╤А╨░",
|
||||
"server_settings_description": "╨Ъ╤Ц╤А╨░╨▓╨░╨╜╨╜╨╡ ╨╜╨░╨╗╨░╨┤╨░╨╝╤Ц ╤Б╨╡╤А╨▓╨╡╤А╨░",
|
||||
"server_welcome_message": "╨Я╤А╤Л╨▓╤Ц╤В╨░╨╗╤М╨╜╨░╨╡ ╨┐╨░╨▓╨╡╨┤╨░╨╝╨╗╨╡╨╜╨╜╨╡",
|
||||
"server_welcome_message_description": "╨Я╨░╨▓╨╡╨┤╨░╨╝╨╗╨╡╨╜╨╜╨╡, ╤П╨║╨╛╨╡ ╨░╨┤╨╗╤О╤Б╤В╤А╨╛╤Ю╨▓╨░╨╡╤Ж╤Ж╨░ ╨╜╨░ ╤Б╤В╨░╤А╨╛╨╜╤Ж╤Л ╤Ю╨▓╨░╤Е╨╛╨┤╤Г.",
|
||||
"system_settings": "╨б╤Ц╤Б╤В╤Н╨╝╨╜╤Л╤П ╨╜╨░╨╗╨░╨┤╤Л",
|
||||
"tag_cleanup_job": "╨Р╤З╤Л╤Б╤В╨║╨░ ╤В╤Н╨│╨░╤Ю",
|
||||
"template_email_preview": "╨Я╨╡╤А╨░╨┤╨┐╤А╨░╨│╨╗╤П╨┤",
|
||||
"theme_settings": "╨Э╨░╨╗╨░╨┤╤Л ╤В╤Н╨╝╤Л",
|
||||
"transcoding_acceleration_nvenc": "NVENC (╨┐╨░╤В╤А╨░╨▒╤Г╨╡╤Ж╤Ж╨░ ╨▓╤Ц╨┤╤Н╨░╨║╨░╤А╤В╨░ NVIDIA)",
|
||||
"transcoding_acceleration_vaapi": "VAAPI",
|
||||
"transcoding_accepted_containers": "╨Я╤А╤Л╨╜╤П╤В╤Л╤П ╨║╨░╨╜╤В╤Н╨╣╨╜╨╡╤А╤Л",
|
||||
"transcoding_accepted_video_codecs": "╨Я╤А╤Л╨╜╤П╤В╤Л╤П ╨▓╤Ц╨┤╤Н╨░╨║╨╛╨┤╤Н╨║╤Ц",
|
||||
"transcoding_advanced_options_description": "╨Я╨░╤А╨░╨╝╨╡╤В╤А╤Л, ╤П╨║╤Ц╤П ╨▒╨╛╨╗╤М╤И╨░╤Б╤Ж╤Ц ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░╤Ю ╨╜╨╡ ╤В╤А╤Н╨▒╨░ ╨╖╨╝╤П╨╜╤П╤Ж╤М",
|
||||
"transcoding_audio_codec": "╨Р╤Г╨┤╤Л╤П╨║╨╛╨┤╤Н╨║",
|
||||
"transcoding_encoding_options": "╨Я╨░╤А╨░╨╝╨╡╤В╤А╤Л ╨║╨░╨┤╨╖╤Ц╤А╨░╨▓╨░╨╜╨╜╤П",
|
||||
"transcoding_video_codec": "╨Т╤Ц╨┤╤Н╨░╨║╨╛╨┤╤Н╨║",
|
||||
"trash_enabled_description": "╨г╨║╨╗╤О╤З╤Л╤Ж╤М ╤Д╤Г╨╜╨║╤Ж╤Л╤Ц ╤Б╨╝╨╡╤В╨╜╤Ц╤Ж╤Л",
|
||||
"trash_number_of_days": "╨Ъ╨╛╨╗╤М╨║╨░╤Б╤Ж╤М ╨┤╨╖╤С╨╜",
|
||||
"trash_settings": "╨Э╨░╨╗╨░╨┤╤Л ╤Б╨╝╨╡╤В╨╜╤Ц╤Ж╤Л",
|
||||
"trash_settings_description": "╨Ъ╤Ц╤А╨░╨▓╨░╨╜╨╜╨╡ ╨╜╨░╨╗╨░╨┤╨░╨╝╤Ц ╤Б╨╝╨╡╤В╨╜╤Ц╤Ж╤Л",
|
||||
"user_cleanup_job": "╨Р╤З╤Л╤Б╤В╨║╨░ ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░",
|
||||
"user_management": "╨Ъ╤Ц╤А╨░╨▓╨░╨╜╨╜╨╡ ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░╨╝╤Ц",
|
||||
"user_password_has_been_reset": "╨Я╨░╤А╨╛╨╗╤М ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░ ╨▒╤Л╤Ю ╤Б╨║╤Ц╨╜╤Г╤В╤Л:",
|
||||
"user_password_reset_description": "╨Ч╨░╨┤╨░╨╣╤Ж╨╡ ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╤Г ╤З╨░╤Б╨╛╨▓╤Л ╨┐╨░╤А╨╛╨╗╤М ╤Ц ╨┐╨░╨▓╨╡╨┤╨░╨╝╤Ц╤Ж╨╡ ╤П╨╝╤Г, ╤И╤В╨╛ ╨┐╤А╤Л ╨╜╨░╤Б╤В╤Г╨┐╨╜╤Л╨╝ ╤Г╨▓╨░╤Е╨╛╨┤╨╖╨╡ ╤Ю ╤Б╤Ц╤Б╤В╤Н╨╝╤Г ╤П╨╝╤Г ╤В╤А╤Н╨▒╨░ ╨▒╤Г╨┤╨╖╨╡ ╨╖╨╝╤П╨╜╤Ц╤Ж╤М ╨┐╨░╤А╨╛╨╗╤М.",
|
||||
"user_restore_description": "╨г╨╗╤Ц╨║╨╛╨▓╤Л ╨╖╨░╨┐╤Ц╤Б ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░ <b>{user}</b> ╨▒╤Г╨┤╨╖╨╡ ╨░╨┤╨╜╨╛╤Ю╨╗╨╡╨╜╤Л.",
|
||||
"user_settings": "╨Э╨░╨╗╨░╨┤╤Л ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░",
|
||||
"user_settings_description": "╨Ъ╤Ц╤А╨░╨▓╨░╨╜╨╜╨╡ ╨╜╨░╨╗╨░╨┤╨░╨╝╤Ц ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░",
|
||||
"user_successfully_removed": "╨Ъ╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║ {email} ╨▒╤Л╤Ю ╨┐╨░╤Б╨┐╤П╤Е╨╛╨▓╨░ ╨▓╤Л╨┤╨░╨╗╨╡╨╜╤Л.",
|
||||
"version_check_enabled_description": "╨г╨║╨╗╤О╤З╤Л╤Ж╤М ╨┐╤А╨░╨▓╨╡╤А╨║╤Г ╨▓╨╡╤А╤Б╤Ц╤Ц",
|
||||
"version_check_implications": "╨д╤Г╨╜╨║╤Ж╤Л╤Ц ╨┐╤А╨░╨▓╨╡╤А╨║╤Ц ╨▓╨╡╤А╤Б╤Ц╤Ц ╨┐╨╡╤А╤Л╤П╨┤╤Л╤З╨╜╨░ ╨╖╨▓╤П╤А╤В╨░╨╡╤Ж╤Ж╨░ ╨┤╨░ github.com",
|
||||
"version_check_settings": "╨Я╤А╨░╨▓╨╡╤А╨║╨░ ╨▓╨╡╤А╤Б╤Ц╤Ц",
|
||||
"version_check_settings_description": "╨г╨║╨╗╤О╤З╤Л╤Ж╤М/╨░╨┤╨║╨╗╤О╤З╤Л╤Ж╤М ╨░╨┐╨░╨▓╤П╤И╤З╤Н╨╜╨╜╤Ц ╨░╨▒ ╨╜╨╛╨▓╨░╨╣ ╨▓╨╡╤А╤Б╤Ц╤Ц"
|
||||
},
|
||||
"admin_email": "╨н╨╗╨╡╨║╤В╤А╨╛╨╜╨╜╨░╤П ╨┐╨╛╤И╤В╨░ ╨░╨┤╨╝╤Ц╨╜╤Ц╤Б╤В╤А╨░╤В╨░╤А╨░",
|
||||
"admin_password": "╨Я╨░╤А╨╛╨╗╤М ╨░╨┤╨╝╤Ц╨╜╤Ц╤Б╤В╤А╨░╤В╨░╤А╨░",
|
||||
"administration": "╨Ъ╤Ц╤А╨░╨▓╨░╨╜╨╜╨╡ ╤Б╨╡╤А╨▓╨╡╤А╨░╨╝",
|
||||
"advanced": "╨Я╨░╤И╤Л╤А╨░╨╜╤Л╤П",
|
||||
"advanced_settings_log_level_title": "╨г╨╖╤А╨╛╨▓╨╡╨╜╤М ╨▓╤П╨┤╨╖╨╡╨╜╨╜╤П ╨╢╤Г╤А╨╜╨░╨╗╨░: {level}",
|
||||
"advanced_settings_proxy_headers_title": "╨Ч╨░╨│╨░╨╗╨╛╤Ю╨║╤Ц ╨┐╤А╨╛╨║╤Б╤Ц",
|
||||
"advanced_settings_tile_subtitle": "╨Я╨░╤И╤Л╤А╨░╨╜╤Л╤П ╨╜╨░╨╗╨░╨┤╤Л ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░",
|
||||
"advanced_settings_troubleshooting_subtitle": "╨г╨║╨╗╤О╤З╤Л╤Ж╤М ╨┤╨░╨┤╨░╤В╨║╨╛╨▓╤Л╤П ╤Д╤Г╨╜╨║╤Ж╤Л╤Ц ╨┤╨╗╤П ╨▓╤Л╨┐╤А╨░╤Ю╨╗╨╡╨╜╨╜╤П ╨╜╨╡╨┐╨░╨╗╨░╨┤╨░╨║",
|
||||
"advanced_settings_troubleshooting_title": "╨Т╤Л╨┐╤А╨░╤Ю╨╗╨╡╨╜╨╜╨╡ ╨╜╨╡╨┐╨░╨╗╨░╨┤╨░╨║",
|
||||
"age_months": "╨г╨╖╤А╨╛╤Б╤В {months, plural, one {# ╨╝╨╡╤Б╤П╤Ж} few {# ╨╝╨╡╤Б╤П╤Ж╤Л} many {# ╨╝╨╡╤Б╤П╤Ж╨░╤Ю} other {# ╨╝╨╡╤Б╤П╤Ж╨░╤Ю}}",
|
||||
"age_year_months": "╨г╨╖╤А╨╛╤Б╤В 1 ╨│╨╛╨┤, {months, plural, one {# ╨╝╨╡╤Б╤П╤Ж} few {# ╨╝╨╡╤Б╤П╤Ж╤Л} many {# ╨╝╨╡╤Б╤П╤Ж╨░╤Ю} other {# ╨╝╨╡╤Б╤П╤Ж╨░╤Ю}}",
|
||||
"age_years": "{years, plural, other {╨г╨╖╤А╨╛╤Б╤В #}}",
|
||||
"album_added": "╨Р╨╗╤М╨▒╨╛╨╝ ╨┤╨░╨┤╨░╨┤╨╖╨╡╨╜╤Л",
|
||||
"album_cover_updated": "╨Т╨╛╨║╨╗╨░╨┤╨║╨░ ╨░╨╗╤М╨▒╨╛╨╝╨░ ╨░╨▒╨╜╨╛╤Ю╨╗╨╡╨╜╨░",
|
||||
"album_delete_confirmation": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л, ╤И╤В╨╛ ╤Е╨╛╤З╨░╤Ж╨╡ ╨▓╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨░╨╗╤М╨▒╨╛╨╝ {album}?",
|
||||
"album_delete_confirmation_description": "╨Ъ╨░╨╗╤Ц ╨│╤Н╤В╤Л ╨░╨╗╤М╨▒╨╛╨╝ ╨░╨▒╨░╨│╤Г╨╗╨╡╨╜╤Л, ╤Ц╨╜╤И╤Л╤П ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╤Ц ╨▒╨╛╨╗╤М╤И ╨╜╨╡ ╨╖╨╝╨╛╨│╤Г╤Ж╤М ╨░╤В╤А╤Л╨╝╨░╤Ж╤М ╨┤╨░ ╤П╨│╨╛ ╨┤╨╛╤Б╤В╤Г╨┐.",
|
||||
"album_deleted": "╨Р╨╗╤М╨▒╨╛╨╝ ╨▓╤Л╨┤╨░╨╗╨╡╨╜╤Л",
|
||||
"album_info_card_backup_album_excluded": "╨Т╨л╨Ъ╨Ы╨о╨з╨Р╨Э╨л",
|
||||
"album_info_card_backup_album_included": "╨г╨Ъ╨Ы╨о╨з╨Р╨Э╨л",
|
||||
"album_info_updated": "╨Ж╨╜╤Д╨░╤А╨╝╨░╤Ж╤Л╤П ╨┐╤А╨░ ╨░╨╗╤М╨▒╨╛╨╝ ╨░╨▒╨╜╨╛╤Ю╨╗╨╡╨╜╨░",
|
||||
"album_leave": "╨Я╨░╨║╤Ц╨╜╤Г╤Ж╤М ╨░╨╗╤М╨▒╨╛╨╝?",
|
||||
"album_leave_confirmation": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л, ╤И╤В╨╛ ╤Е╨╛╤З╨░╤Ж╨╡ ╨┐╨░╨║╤Ц╨╜╤Г╤Ж╤М {album}?",
|
||||
"album_name": "╨Э╨░╨╖╨▓╨░ ╨░╨╗╤М╨▒╨╛╨╝╨░",
|
||||
"album_options": "╨Я╨░╤А╨░╨╝╨╡╤В╤А╤Л ╨░╨╗╤М╨▒╨╛╨╝╨░",
|
||||
"album_remove_user": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░?",
|
||||
"album_remove_user_confirmation": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л, ╤И╤В╨╛ ╤Е╨╛╤З╨░╤Ж╨╡ ╨▓╤Л╨┤╨░╨╗╤Ц╤Ж╤М {user}?",
|
||||
"album_search_not_found": "╨Я╨░ ╨▓╨░╤И╤Л╨╝ ╨╖╨░╨┐╤Л╤Ж╨╡ ╨╜╨╡ ╨╖╨╜╨╛╨╣╨┤╨╖╨╡╨╜╨░ ╨░╨╗╤М╨▒╨╛╨╝╨░╤Ю",
|
||||
"album_share_no_users": "╨Ч╨┤╨░╨╡╤Ж╤Ж╨░, ╨▓╤Л ╨┐╨░╨┤╨╖╤П╨╗╤Ц╨╗╤Ц╤Б╤П ╨│╤Н╤В╤Л╨╝ ╨░╨╗╤М╨▒╨╛╨╝╨░╨╝ ╨╖ ╤Г╤Б╤Ц╨╝╤Ц ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░╨╝╤Ц, ╨░╨▒╨╛ ╤Ю ╨▓╨░╤Б ╨╜╤П╨╝╨░ ╨╜╤Ц╨▓╨╛╨┤╨╜╨░╨│╨░ ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░, ╨╖ ╤П╨║╤Ц╨╝ ╨╝╨╛╨╢╨╜╨░ ╨┐╨░╨┤╨╖╤П╨╗╤Ц╤Ж╤Ж╨░.",
|
||||
"album_updated": "╨Р╨╗╤М╨▒╨╛╨╝ ╨░╨▒╨╜╨╛╤Ю╨╗╨╡╨╜╤Л",
|
||||
"album_user_left": "╨Т╤Л ╨┐╨░╨║╤Ц╨╜╤Г╨╗╤Ц {album}",
|
||||
"album_user_removed": "╨Ъ╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║ {user} ╨▓╤Л╨┤╨░╨╗╨╡╨╜╤Л",
|
||||
"album_viewer_appbar_delete_confirm": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л, ╤И╤В╨╛ ╤Е╨╛╤З╨░╤Ж╨╡ ╨▓╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨│╤Н╤В╤Л ╨░╨╗╤М╨▒╨╛╨╝ ╤Б╨░ ╤Б╨▓╨░╨╣╨│╨╛ ╤Ю╨╗╤Ц╨║╨╛╨▓╨░╨│╨░ ╨╖╨░╨┐╤Ц╤Б╤Г?",
|
||||
"album_viewer_appbar_share_err_delete": "╨Э╨╡ ╤Ю╨┤╨░╨╗╨╛╤Б╤П ╨▓╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨░╨╗╤М╨▒╨╛╨╝",
|
||||
"album_viewer_appbar_share_err_leave": "╨Э╨╡ ╤Ю╨┤╨░╨╗╨╛╤Б╤П ╨┐╨░╨║╤Ц╨╜╤Г╤Ж╤М ╨░╨╗╤М╨▒╨╛╨╝",
|
||||
"album_viewer_appbar_share_err_title": "╨Э╨╡ ╤Ю╨┤╨░╨╗╨╛╤Б╤П ╨╖╨╝╤П╨╜╤Ц╤Ж╤М ╨╜╨░╨╖╨▓╤Г ╨░╨╗╤М╨▒╨╛╨╝╨░",
|
||||
"album_viewer_appbar_share_leave": "╨Я╨░╨║╤Ц╨╜╤Г╤Ж╤М ╨░╨╗╤М╨▒╨╛╨╝",
|
||||
"album_viewer_appbar_share_to": "╨Р╨▒╨░╨│╤Г╨╗╤Ц╤Ж╤М ╨╖",
|
||||
"album_viewer_page_share_add_users": "╨Ф╨░╨┤╨░╤Ж╤М ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░╤Ю",
|
||||
"album_with_link_access": "╨Ф╨░╨╖╨▓╨╛╨╗╤Ц╤Ж╤М ╤Г╤Б╤Ц╨╝, ╤Е╤В╨╛ ╨╝╨░╨╡ ╤Б╨┐╨░╤Б╤Л╨╗╨║╤Г, ╨▒╨░╤З╤Л╤Ж╤М ╤Д╨╛╤В╨░ ╤Ц ╨╗╤О╨┤╨╖╨╡╨╣ ╤Г ╨│╤Н╤В╤Л╨╝ ╨░╨╗╤М╨▒╨╛╨╝╨╡.",
|
||||
"albums": "╨Р╨╗╤М╨▒╨╛╨╝╤Л",
|
||||
"albums_count": "{count, plural, one {1 ╨░╨╗╤М╨▒╨╛╨╝} few {{count, number} ╨░╨╗╤М╨▒╨╛╨╝╤Л} many {{count, number} ╨░╨╗╤М╨▒╨╛╨╝╨░╤Ю} other {{count, number} ╨░╨╗╤М╨▒╨╛╨╝╨░╤Ю}}",
|
||||
"albums_default_sort_order": "╨Я╤А╨░╨┤╨▓╤Л╨╖╨╜╨░╤З╨░╨╜╤Л ╨┐╨░╤А╨░╨┤╨░╨║ ╤Б╨░╤А╤В╨░╨▓╨░╨╜╨╜╤П ╨░╨╗╤М╨▒╨╛╨╝╨░╤Ю",
|
||||
"albums_on_device_count": "╨Р╨╗╤М╨▒╨╛╨╝╤Л ╨╜╨░ ╨┐╤А╤Л╨╗╨░╨┤╨╖╨╡ ({count})",
|
||||
"all": "╨г╤Б╨╡",
|
||||
"all_albums": "╨г╤Б╨╡ ╨░╨╗╤М╨▒╨╛╨╝╤Л",
|
||||
"all_people": "╨г╤Б╨╡ ╨╗╤О╨┤╨╖╤Ц",
|
||||
"all_videos": "╨г╤Б╨╡ ╨▓╤Ц╨┤╤Н╨░",
|
||||
"allow_dark_mode": "╨Ф╨░╨╖╨▓╨╛╨╗╤Ц╤Ж╤М ╤Ж╤С╨╝╨╜╤Л ╤А╤Н╨╢╤Л╨╝",
|
||||
"allow_edits": "╨Ф╨░╨╖╨▓╨╛╨╗╤Ц╤Ж╤М ╤А╤Н╨┤╨░╨│╨░╨▓╨░╨╜╨╜╨╡",
|
||||
"alt_text_qr_code": "╨Т╤Ц╨┤╨░╤А╤Л╤Б QR-╨║╨╛╨┤╨░",
|
||||
"anti_clockwise": "╨б╤Г╨┐╤А╨░╤Ж╤М ╨│╨░╨┤╨╖╤Ц╨╜╨╜╤Ц╨║╨░╨▓╨░╨╣ ╤Б╤В╤А╤Н╨╗╨║╤Ц",
|
||||
"api_key": "╨Ъ╨╗╤О╤З API",
|
||||
"api_key_empty": "╨Э╨░╨╖╨▓╨░ ╨║╨╗╤О╤З╨░ API ╨╜╨╡ ╨┐╨░╨▓╤Ц╨╜╨╜╨░ ╨▒╤Л╤Ж╤М ╨┐╤Г╤Б╤В╨╛╨╣",
|
||||
"api_keys": "╨Ъ╨╗╤О╤З╤Л API",
|
||||
"app_bar_signout_dialog_content": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л, ╤И╤В╨╛ ╤Е╨╛╤З╨░╤Ж╨╡ ╨▓╤Л╨╣╤Б╤Ж╤Ц?",
|
||||
"app_bar_signout_dialog_ok": "╨в╨░╨║",
|
||||
"app_bar_signout_dialog_title": "╨Т╤Л╨╣╤Б╤Ж╤Ц",
|
||||
"app_settings": "╨Э╨░╨╗╨░╨┤╤Л ╨┐╤А╨░╨│╤А╨░╨╝╤Л",
|
||||
"archive": "╨Р╤А╤Е╤Ц╤Ю",
|
||||
"archive_page_title": "╨Р╤А╤Е╤Ц╤Ю ({count})",
|
||||
"archive_size": "╨Я╨░╨╝╨╡╤А ╨░╤А╤Е╤Ц╨▓╨░",
|
||||
"are_these_the_same_person": "╨ж╤Ц ╨│╤Н╤В╨░ ╨░╨┤╨╖╤Ц╨╜ ╤Ц ╤В╨╛╨╣ ╨╢╨░ ╤З╨░╨╗╨░╨▓╨╡╨║?",
|
||||
"are_you_sure_to_do_this": "╨Т╤Л ╤Ю╨┐╤Н╤Ю╨╜╨╡╨╜╤Л, ╤И╤В╨╛ ╤Е╨╛╤З╨░╤Ж╨╡ ╨│╤Н╤В╨░ ╨╖╤А╨░╨▒╤Ц╤Ж╤М?",
|
||||
"asset_added_to_album": "╨Ф╨░╨┤╨░╨┤╨╖╨╡╨╜╨░ ╤Ю ╨░╨╗╤М╨▒╨╛╨╝",
|
||||
"asset_adding_to_album": "╨Ф╨░╨┤╨░╨▓╨░╨╜╨╜╨╡ ╤Ю ╨░╨╗╤М╨▒╨╛╨╝тАж",
|
||||
"asset_skipped": "╨Я╤А╨░╨┐╤Г╤И╤З╨░╨╜╨░",
|
||||
"asset_skipped_in_trash": "╨г ╤Б╨╝╨╡╤В╨╜╤Ц╤Ж╤Л",
|
||||
"asset_uploaded": "╨Ч╨░╨┐╨░╨╝╨┐╨░╨▓╨░╨╜╨░",
|
||||
"asset_uploading": "╨Ч╨░╨┐╨░╨╝╨┐╨╛╤Ю╨▓╨░╨╜╨╜╨╡тАж",
|
||||
"authorized_devices": "╨Р╤Ю╤В╨░╤А╤Л╨╖╨░╨▓╨░╨╜╤Л╤П ╨┐╤А╤Л╨╗╨░╨┤╤Л",
|
||||
"back": "╨Э╨░╨╖╨░╨┤",
|
||||
"backup_album_selection_page_albums_device": "╨Р╨╗╤М╨▒╨╛╨╝╤Л ╨╜╨░ ╨┐╤А╤Л╨╗╨░╨┤╨╖╨╡ ({count})",
|
||||
"backup_all": "╨г╤Б╨╡",
|
||||
"backup_controller_page_background_wifi": "╨в╨╛╨╗╤М╨║╤Ц ╨┐╤А╨░╨╖ Wi-Fi",
|
||||
"buy": "╨Ъ╤Г╨┐╤Ц╤Ж╤М Immich",
|
||||
"cache_settings_clear_cache_button": "╨Р╤З╤Л╤Б╤Ж╤Ц╤Ж╤М ╨║╤Н╤И",
|
||||
"cache_settings_tile_title": "╨Ы╨░╨║╨░╨╗╤М╨╜╨░╨╡ ╤Б╤Е╨╛╨▓╤Ц╤И╤З╨░",
|
||||
"cancel": "╨б╨║╨░╤Б╨░╨▓╨░╤Ж╤М",
|
||||
"cancel_search": "╨б╨║╨░╤Б╨░╨▓╨░╤Ж╤М ╨┐╨╛╤И╤Г╨║",
|
||||
"canceled": "╨б╨║╨░╤Б╨░╨▓╨░╨╜╨░",
|
||||
"city": "╨У╨╛╤А╨░╨┤",
|
||||
"clear": "╨Р╤З╤Л╤Б╤Ж╤Ц╤Ж╤М",
|
||||
"clear_all": "╨Р╤З╤Л╤Б╤Ж╤Ц╤Ж╤М ╤Г╤Б╤С",
|
||||
"client_cert_dialog_msg_confirm": "╨Ю╨Ъ",
|
||||
"client_cert_enter_password": "╨г╨▓╤П╨┤╨╖╤Ц╤Ж╨╡ ╨┐╨░╤А╨╛╨╗╤М",
|
||||
"client_cert_import": "╨Ж╨╝╨┐╨░╤А╤В",
|
||||
"close": "╨Ч╨░╨║╤А╤Л╤Ж╤М",
|
||||
"collapse": "╨Ч╨│╨░╤А╨╜╤Г╤Ж╤М",
|
||||
"collapse_all": "╨Ч╨│╨░╤А╨╜╤Г╤Ж╤М ╤Г╤Б╤С",
|
||||
"color": "╨Ъ╨╛╨╗╨╡╤А",
|
||||
"color_theme": "╨Ъ╨╛╨╗╨╡╤А╨░╨▓╨░╤П ╤В╤Н╨╝╨░",
|
||||
"continue": "╨Я╤А╨░╤Ж╤П╨│╨╜╤Г╤Ж╤М",
|
||||
"control_bottom_app_bar_create_new_album": "╨б╤В╨▓╨░╤А╤Л╤Ж╤М ╨╜╨╛╨▓╤Л ╨░╨╗╤М╨▒╨╛╨╝",
|
||||
"control_bottom_app_bar_delete_from_immich": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨╖ Immich",
|
||||
"control_bottom_app_bar_delete_from_local": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨╖ ╨┐╤А╤Л╨╗╨░╨┤╤Л",
|
||||
"control_bottom_app_bar_edit_location": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╨╝╨╡╤Б╤Ж╨░╨╖╨╜╨░╤Е╨╛╨┤╨╢╨░╨╜╨╜╨╡",
|
||||
"country": "╨Ъ╤А╨░╤Ц╨╜╨░",
|
||||
"cover": "╨Т╨╛╨║╨╗╨░╨┤╨║╨░",
|
||||
"covers": "╨Т╨╛╨║╨╗╨░╨┤╨║╤Ц",
|
||||
"create": "╨б╤В╨▓╨░╤А╤Л╤Ж╤М",
|
||||
"create_album": "╨б╤В╨▓╨░╤А╤Л╤Ж╤М ╨░╨╗╤М╨▒╨╛╨╝",
|
||||
"create_album_page_untitled": "╨С╨╡╨╖ ╨╜╨░╨╖╨▓╤Л",
|
||||
"create_library": "╨б╤В╨▓╨░╤А╤Л╤Ж╤М ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╤Г",
|
||||
"create_link": "╨б╤В╨▓╨░╤А╤Л╤Ж╤М ╤Б╨┐╨░╤Б╤Л╨╗╨║╤Г",
|
||||
"create_new_user": "╨б╤В╨▓╨░╤А╤Л╤Ж╤М ╨╜╨╛╨▓╨░╨│╨░ ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░",
|
||||
"create_tag": "╨б╤В╨▓╨░╤А╤Л╤Ж╤М ╤В╤Н╨│",
|
||||
"create_user": "╨б╤В╨▓╨░╤А╤Л╤Ж╤М ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░",
|
||||
"dark": "╨ж╤С╨╝╨╜╨░╤П",
|
||||
"day": "╨Ф╨╖╨╡╨╜╤М",
|
||||
"delete": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М",
|
||||
"delete_album": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨░╨╗╤М╨▒╨╛╨╝",
|
||||
"delete_dialog_ok_force": "╨г╤Б╤С ╨░╨┤╨╜╨╛ ╨▓╤Л╨┤╨░╨╗╤Ц╤Ж╤М",
|
||||
"delete_dialog_title": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨╜╨░╨╖╨░╤Ю╨╢╨┤╤Л",
|
||||
"delete_face": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╤В╨▓╨░╤А",
|
||||
"delete_key": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨║╨╗╤О╤З",
|
||||
"delete_library": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨▒╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╤Г",
|
||||
"delete_link": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╤Б╨┐╨░╤Б╤Л╨╗╨║╤Г",
|
||||
"delete_local_dialog_ok_force": "╨г╤Б╤С ╨░╨┤╨╜╨╛ ╨▓╤Л╨┤╨░╨╗╤Ц╤Ж╤М",
|
||||
"delete_others": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╤Ц╨╜╤И╤Л╤П",
|
||||
"delete_tag": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╤В╤Н╨│",
|
||||
"delete_user": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░",
|
||||
"discord": "Discord",
|
||||
"documentation": "╨Ф╨░╨║╤Г╨╝╨╡╨╜╤В╨░╤Ж╤Л╤П",
|
||||
"done": "╨У╨░╤В╨╛╨▓╨░",
|
||||
"download": "╨б╨┐╨░╨╝╨┐╨░╨▓╨░╤Ж╤М",
|
||||
"download_canceled": "╨б╨┐╨░╨╝╨┐╨╛╤Ю╨▓╨░╨╜╨╜╨╡ ╤Б╨║╨░╤Б╨░╨▓╨░╨╜╨░",
|
||||
"download_complete": "╨б╨┐╨░╨╝╨┐╨╛╤Ю╨▓╨░╨╜╨╜╨╡ ╨╖╨░╨▓╨╡╤А╤И╨░╨╜╨░",
|
||||
"download_enqueue": "╨б╨┐╨░╨╝╨┐╨╛╤Ю╨▓╨░╨╜╨╜╨╡ ╨┤╨░╨┤╨░╨┤╨╖╨╡╨╜╨░ ╤Ю ╤З╨░╤А╨│╤Г",
|
||||
"downloading": "╨б╨┐╨░╨╝╨┐╨╛╤Ю╨▓╨░╨╜╨╜╨╡",
|
||||
"edit": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М",
|
||||
"edit_album": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╨░╨╗╤М╨▒╨╛╨╝",
|
||||
"edit_avatar": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╨░╨▓╨░╤В╨░╤А",
|
||||
"edit_date": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╨┤╨░╤В╤Г",
|
||||
"edit_date_and_time": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤М ╨┤╨░╤В╤Г ╤Ц ╤З╨░╤Б",
|
||||
"edit_description": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╨░╨┐╤Ц╤Б╨░╨╜╨╜╨╡",
|
||||
"edit_description_prompt": "╨Т╤Л╨▒╨╡╤А╤Л╤Ж╨╡ ╨╜╨╛╨▓╨░╨╡ ╨░╨┐╤Ц╤Б╨░╨╜╨╜╨╡:",
|
||||
"edit_faces": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╤В╨▓╨░╤А╤Л",
|
||||
"edit_import_path": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╤И╨╗╤П╤Е ╤Ц╨╝╨┐╨░╤А╤В╤Г",
|
||||
"edit_import_paths": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╤И╨╗╤П╤Е╤Ц ╤Ц╨╝╨┐╨░╤А╤В╤Г",
|
||||
"edit_key": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╨║╨╗╤О╤З",
|
||||
"edit_link": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╤Б╨┐╨░╤Б╤Л╨╗╨║╤Г",
|
||||
"edit_location": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╨╝╨╡╤Б╤Ж╨░╨╖╨╜╨░╤Е╨╛╨┤╨╢╨░╨╜╨╜╨╡",
|
||||
"edit_location_dialog_title": "╨Ь╨╡╤Б╤Ж╨░╨╖╨╜╨░╤Е╨╛╨┤╨╢╨░╨╜╨╜╨╡",
|
||||
"edit_name": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╨╜╨░╨╖╨▓╤Г",
|
||||
"edit_people": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╨╗╤О╨┤╨╖╨╡╨╣",
|
||||
"edit_tag": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╤В╤Н╨│",
|
||||
"edit_title": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╨╖╨░╨│╨░╨╗╨╛╨▓╨░╨║",
|
||||
"edit_user": "╨а╤Н╨┤╨░╨│╨░╨▓╨░╤Ж╤М ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░",
|
||||
"edited": "╨Р╨┤╤А╤Н╨┤╨░╨│╨░╨▓╨░╨╜╨░",
|
||||
"editor": "╨а╤Н╨┤╨░╨║╤В╨░╤А",
|
||||
"editor_close_without_save_prompt": "╨Ч╨╝╨╡╨╜╤Л ╨╜╨╡ ╨▒╤Г╨┤╤Г╤Ж╤М ╨╖╨░╤Е╨░╨▓╨░╨╜╤Л",
|
||||
"editor_close_without_save_title": "╨Ч╨░╨║╤А╤Л╤Ж╤М ╤А╤Н╨┤╨░╨║╤В╨░╤А?",
|
||||
"editor_crop_tool_h2_aspect_ratios": "╨б╤Г╨░╨┤╨╜╨╛╤Б╤Ц╨╜╤Л ╨▒╨░╨║╨╛╤Ю",
|
||||
"editor_crop_tool_h2_rotation": "╨Я╨░╨▓╨░╤А╨╛╤В",
|
||||
"error": "╨Я╨░╨╝╤Л╨╗╨║╨░",
|
||||
"error_saving_image": "╨Я╨░╨╝╤Л╨╗╨║╨░: {error}",
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "╨Ф╨░╨┤╨░╤Ж╤М ╨░╨┐╤Ц╤Б╨░╨╜╨╜╨╡...",
|
||||
"favorite": "╨г ╨░╨▒╤А╨░╨╜╤Л╨╝",
|
||||
"favorite_or_unfavorite_photo": "╨Ф╨░╨┤╨░╤Ж╤М ╨░╨▒╨╛ ╨▓╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╤Д╨╛╤В╨░ ╨╖ ╨░╨▒╤А╨░╨╜╨░╨│╨░",
|
||||
"favorites": "╨Р╨▒╤А╨░╨╜╤Л╤П",
|
||||
"file_name": "╨Э╨░╨╖╨▓╨░ ╤Д╨░╨╣╨╗╨░",
|
||||
"filename": "╨Э╨░╨╖╨▓╨░ ╤Д╨░╨╣╨╗╨░",
|
||||
"filetype": "╨в╤Л╨┐ ╤Д╨░╨╣╨╗╨░",
|
||||
"filter": "╨д╤Ц╨╗╤М╤В╤А",
|
||||
"forward": "╨Э╨░╨┐╨╡╤А╨░╨┤",
|
||||
"gcast_enabled": "Google Cast",
|
||||
"general": "╨Р╨│╤Г╨╗╤М╨╜╤Л╤П",
|
||||
"go_back": "╨Э╨░╨╖╨░╨┤",
|
||||
"go_to_folder": "╨Я╨╡╤А╨░╨╣╤Б╤Ж╤Ц ╨┤╨░ ╨┐╨░╨┐╨║╤Ц",
|
||||
"hi_user": "╨Т╤Ц╤В╨░╨╡╨╝, {name} ({email})",
|
||||
"hide_all_people": "╨б╤Е╨░╨▓╨░╤Ж╤М ╤Г╤Б╤Ц╤Е ╨╗╤О╨┤╨╖╨╡╨╣",
|
||||
"hide_gallery": "╨б╤Е╨░╨▓╨░╤Ж╤М ╨│╨░╨╗╨╡╤А╤Н╤О",
|
||||
"hide_named_person": "╨б╤Е╨░╨▓╨░╤Ж╤М {name}",
|
||||
"hide_password": "╨б╤Е╨░╨▓╨░╤Ж╤М ╨┐╨░╤А╨╛╨╗╤М",
|
||||
"hide_person": "╨б╤Е╨░╨▓╨░╤Ж╤М ╤З╨░╨╗╨░╨▓╨╡╨║╨░",
|
||||
"image_viewer_page_state_provider_download_started": "╨б╨┐╨░╨╝╨┐╨╛╤Ю╨▓╨░╨╜╨╜╨╡ ╨┐╨░╤З╨░╨╗╨╛╤Б╤П",
|
||||
"immich_logo": "╨Ы╨░╨│╨░╤В╤Л╨┐ Immich",
|
||||
"interval": {
|
||||
"day_at_onepm": "╨Ъ╨╛╨╢╨╜╤Л ╨┤╨╖╨╡╨╜╤М ╨░ 13-╨╣ ╨│╨░╨┤╨╖╤Ц╨╜╨╡",
|
||||
"hours": "{hours, plural, one {╨Ъ╨╛╨╢╨╜╤Г╤О ╨│╨░╨┤╨╖╤Ц╨╜╤Г} few {╨Ъ╨╛╨╢╨╜╤Л╤П {hours, number} ╨│╨░╨┤╨╖╤Ц╨╜╤Л} many {╨Ъ╨╛╨╢╨╜╤Л╤П {hours, number} ╨│╨░╨┤╨╖╤Ц╨╜} other {╨Ъ╨╛╨╢╨╜╤Л╤П {hours, number} ╨│╨░╨┤╨╖╤Ц╨╜}}",
|
||||
"night_at_midnight": "╨Ъ╨╛╨╢╨╜╤Г╤О ╨╜╨╛╤З ╨░╨┐╨╛╤Ю╨╜╨░╤З╤Л",
|
||||
"night_at_twoam": "╨Ъ╨╛╨╢╨╜╤Г╤О ╨╜╨╛╤З ╨░ 2-╨╣ ╨│╨░╨┤╨╖╤Ц╨╜╨╡"
|
||||
},
|
||||
"language": "╨Ь╨╛╨▓╨░",
|
||||
"library": "╨С╤Ц╨▒╨╗╤Ц╤П╤В╤Н╨║╨░",
|
||||
"light": "╨б╨▓╨╡╤В╨╗╨░╤П",
|
||||
"login_form_back_button_text": "╨Э╨░╨╖╨░╨┤",
|
||||
"login_form_email_hint": "youremail@email.com",
|
||||
"login_form_endpoint_hint": "http://your-server-ip:port",
|
||||
"login_form_password_hint": "╨┐╨░╤А╨╛╨╗╤М",
|
||||
"login_form_save_login": "╨Ч╨░╤Б╤В╨░╨▓╨░╤Ж╤Ж╨░ ╤Ю ╤Б╤Ц╤Б╤В╤Н╨╝╨╡",
|
||||
"main_menu": "╨У╨░╨╗╨╛╤Ю╨╜╨░╨╡ ╨╝╨╡╨╜╤О",
|
||||
"map_location_dialog_yes": "╨в╨░╨║",
|
||||
"map_settings_dark_mode": "╨ж╤С╨╝╨╜╤Л ╤А╤Н╨╢╤Л╨╝",
|
||||
"map_settings_date_range_option_day": "╨Р╨┐╨╛╤И╨╜╤Ц╤П 24 ╨│╨░╨┤╨╖╤Ц╨╜╤Л",
|
||||
"map_settings_date_range_option_days": "╨Р╨┐╨╛╤И╨╜╤Ц╤Е ╨┤╨╖╤С╨╜: {days}",
|
||||
"map_settings_date_range_option_year": "╨Р╨┐╨╛╤И╨╜╤Ц ╨│╨╛╨┤",
|
||||
"map_settings_date_range_option_years": "╨Р╨┐╨╛╤И╨╜╤Ц╤Е ╨│╨╛╨┤: {years}",
|
||||
"map_settings_dialog_title": "╨Э╨░╨╗╨░╨┤╤Л ╨║╨░╤А╤В╤Л",
|
||||
"map_settings_theme_settings": "╨в╤Н╨╝╨░ ╨║╨░╤А╤В╤Л",
|
||||
"menu": "╨Ь╨╡╨╜╤О",
|
||||
"minute": "╨е╨▓╤Ц╨╗╤Ц╨╜╨░",
|
||||
"month": "╨Ь╨╡╤Б╤П╤Ж",
|
||||
"monthly_title_text_date_format": "MMMM y",
|
||||
"my_albums": "╨Ь╨░╨╡ ╨░╨╗╤М╨▒╨╛╨╝╤Л",
|
||||
"name": "╨Ж╨╝╤П",
|
||||
"name_or_nickname": "╨Ж╨╝╤П ╨░╨▒╨╛ ╨┐╤Б╨╡╤Ю╨┤╨░╨╜╤Ц╨╝",
|
||||
"next": "╨Ф╨░╨╗╨╡╨╣",
|
||||
"no": "╨Э╨╡",
|
||||
"offline": "╨Я╨░-╨╖╨░ ╤Б╨╡╤В╨║╨░╨╣",
|
||||
"ok": "╨Ю╨Ъ",
|
||||
"online": "╨г ╤Б╨╡╤В╤Ж╤Л",
|
||||
"open": "╨Р╨┤╨║╤А╤Л╤Ж╤М",
|
||||
"or": "╨░╨▒╨╛",
|
||||
"partner_list_user_photos": "╨д╨╛╤В╨░ ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░ {user}",
|
||||
"pause": "╨Я╤А╤Л╨┐╤Л╨╜╤Ц╤Ж╤М",
|
||||
"people": "╨Ы╤О╨┤╨╖╤Ц",
|
||||
"permission_onboarding_back": "╨Э╨░╨╖╨░╨┤",
|
||||
"permission_onboarding_continue_anyway": "╨г╤Б╤С ╨░╨┤╨╜╨╛ ╨┐╤А╨░╤Ж╤П╨│╨╜╤Г╤Ж╤М",
|
||||
"photos": "╨д╨╛╤В╨░",
|
||||
"photos_and_videos": "╨д╨╛╤В╨░ ╤Ц ╨▓╤Ц╨┤╤Н╨░",
|
||||
"place": "╨Ь╨╡╤Б╤Ж╨░",
|
||||
"places": "╨Ь╨╡╤Б╤Ж╤Л",
|
||||
"port": "╨Я╨╛╤А╤В",
|
||||
"previous": "╨Я╨░╨┐╤П╤А╤Н╨┤╨╜╤П╨╡",
|
||||
"profile": "╨Я╤А╨╛╤Д╤Ц╨╗╤М",
|
||||
"profile_drawer_app_logs": "╨Ц╤Г╤А╨╜╨░╨╗╤Л",
|
||||
"profile_drawer_github": "GitHub",
|
||||
"purchase_button_buy": "╨Ъ╤Г╨┐╤Ц╤Ж╤М",
|
||||
"purchase_button_buy_immich": "╨Ъ╤Г╨┐╤Ц╤Ж╤М Immich",
|
||||
"purchase_button_select": "╨Т╤Л╨▒╤А╨░╤Ж╤М",
|
||||
"remove": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М",
|
||||
"remove_from_album": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨╖ ╨░╨╗╤М╨▒╨╛╨╝╨░",
|
||||
"remove_from_favorites": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨╖ ╨░╨▒╤А╨░╨╜╤Л╤Е",
|
||||
"remove_tag": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╤В╤Н╨│",
|
||||
"remove_url": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М URL-╨░╨┤╤А╨░╤Б",
|
||||
"remove_user": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░",
|
||||
"rename": "╨Я╨╡╤А╨░╨╣╨╝╨╡╨╜╨░╨▓╨░╤Ж╤М",
|
||||
"repository": "╨а╤Н╨┐╨░╨╖╤Ц╤В╨╛╤А╤Л╨╣",
|
||||
"reset": "╨б╨║╤Ц╨╜╤Г╤Ж╤М",
|
||||
"reset_password": "╨б╨║╤Ц╨╜╤Г╤Ж╤М ╨┐╨░╤А╨╛╨╗╤М",
|
||||
"restore": "╨Р╨┤╨╜╨░╨▓╤Ц╤Ж╤М",
|
||||
"restore_all": "╨Р╨┤╨╜╨░╨▓╤Ц╤Ж╤М ╤Г╤Б╤С",
|
||||
"restore_user": "╨Р╨┤╨╜╨░╨▓╤Ц╤Ж╤М ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░",
|
||||
"resume": "╨г╨╖╨╜╨░╨▓╤Ц╤Ж╤М",
|
||||
"role": "╨а╨╛╨╗╤П",
|
||||
"role_editor": "╨а╤Н╨┤╨░╨║╤В╨░╤А",
|
||||
"role_viewer": "╨У╨╗╤П╨┤╨░╤З",
|
||||
"save": "╨Ч╨░╤Е╨░╨▓╨░╤Ж╤М",
|
||||
"save_to_gallery": "╨Ч╨░╤Е╨░╨▓╨░╤Ж╤М ╤Г ╨│╨░╨╗╨╡╤А╤Н╤О",
|
||||
"search_filter_date": "╨Ф╨░╤В╨░",
|
||||
"search_filter_location": "╨Ь╨╡╤Б╤Ж╨░╨╖╨╜╨░╤Е╨╛╨┤╨╢╨░╨╜╨╜╨╡",
|
||||
"search_filter_location_title": "╨Т╤Л╨▒╨╡╤А╤Л╤Ж╨╡ ╨╝╨╡╤Б╤Ж╨░╨╖╨╜╨░╤Е╨╛╨┤╨╢╨░╨╜╨╜╨╡",
|
||||
"search_filter_media_type": "╨в╤Л╨┐ ╨╝╨╡╨┤╤Л╤П",
|
||||
"search_filter_media_type_title": "╨Т╤Л╨▒╨╡╤А╤Л╤Ж╨╡ ╤В╤Л╨┐ ╨╝╨╡╨┤╤Л╤П",
|
||||
"search_page_screenshots": "╨Ч╨┤╤Л╨╝╨║╤Ц ╤Н╨║╤А╨░╨╜╨░",
|
||||
"search_page_selfies": "╨б╤Н╨╗╤Д╤Ц",
|
||||
"search_page_things": "╨а╤Н╤З╤Л",
|
||||
"search_page_your_map": "╨Т╨░╤И╨░ ╨║╨░╤А╤В╨░",
|
||||
"second": "╨б╨╡╨║╤Г╨╜╨┤╨░",
|
||||
"send_message": "╨Р╨┤╨┐╤А╨░╨▓╤Ц╤Ж╤М ╨┐╨░╨▓╨╡╨┤╨░╨╝╨╗╨╡╨╜╨╜╨╡",
|
||||
"setting_languages_apply": "╨г╨╢╤Л╤Ж╤М",
|
||||
"setting_notifications_notify_never": "╨╜╤Ц╨║╨╛╨╗╤Ц",
|
||||
"settings": "╨Э╨░╨╗╨░╨┤╤Л",
|
||||
"share_add_photos": "╨Ф╨░╨┤╨░╤Ж╤М ╤Д╨╛╤В╨░",
|
||||
"shared_album_section_people_title": "╨Ы╨о╨Ф╨Ч╨Ж",
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"sharing_page_empty_list": "╨Я╨г╨б╨в╨л ╨б╨Я╨Ж╨б",
|
||||
"sign_out": "╨Т╤Л╨╣╤Б╤Ж╤Ц",
|
||||
"sign_up": "╨Ч╨░╤А╤Н╨│╤Ц╤Б╤В╤А╨░╨▓╨░╤Ж╤Ж╨░",
|
||||
"size": "╨Я╨░╨╝╨╡╤А",
|
||||
"sort_title": "╨Ч╨░╨│╨░╨╗╨╛╨▓╨░╨║",
|
||||
"source": "╨Ъ╤А╤Л╨╜╤Ц╤Ж╨░",
|
||||
"tag": "╨в╤Н╨│",
|
||||
"tags": "╨в╤Н╨│╤Ц",
|
||||
"theme": "╨в╤Н╨╝╨░",
|
||||
"theme_selection": "╨Т╤Л╨▒╨░╤А ╤В╤Н╨╝╤Л",
|
||||
"timeline": "╨е╤А╨╛╨╜╤Ц╨║╨░",
|
||||
"total": "╨г╤Б╤П╨│╨╛",
|
||||
"trash": "╨б╨╝╨╡╤В╨╜╤Ц╤Ж╨░",
|
||||
"trash_page_delete_all": "╨Т╤Л╨┤╨░╨╗╤Ц╤Ж╤М ╤Г╤Б╨╡",
|
||||
"trash_page_restore_all": "╨Р╨┤╨╜╨░╨▓╤Ц╤Ж╤М ╤Г╤Б╨╡",
|
||||
"trash_page_title": "╨б╨╝╨╡╤В╨╜╤Ц╤Ж╨░ ({count})",
|
||||
"type": "╨в╤Л╨┐",
|
||||
"undo": "╨Р╨┤╤А╨░╨▒╤Ц╤Ж╤М",
|
||||
"upload": "╨Ч╨░╨┐╨░╨╝╨┐╨░╨▓╨░╤Ж╤М",
|
||||
"upload_status_errors": "╨Я╨░╨╝╤Л╨╗╨║╤Ц",
|
||||
"uploading": "╨Ч╨░╨┐╨░╨╝╨┐╨╛╤Ю╨▓╨░╨╜╨╜╨╡",
|
||||
"url": "URL-╨░╨┤╤А╨░╤Б",
|
||||
"user": "╨Ъ╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║",
|
||||
"user_has_been_deleted": "╨У╤Н╤В╤Л ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║ ╨▒╤Л╤Ю ╨▓╤Л╨┤╨░╨╗╨╡╨╜╤Л.",
|
||||
"user_id": "ID ╨║╨░╤А╤Л╤Б╤В╨░╨╗╤М╨╜╤Ц╨║╨░",
|
||||
"user_purchase_settings": "╨Ъ╤Г╨┐╨╗╤П",
|
||||
"user_purchase_settings_description": "╨Ъ╤Ц╤А╤Г╨╣╤Ж╨╡ ╨┐╨░╨║╤Г╨┐╨║╨░╨╝╤Ц",
|
||||
@@ -112,14 +461,14 @@
|
||||
"view_next_asset": "╨Я╨░╨║╨░╨╖╨░╤Ж╤М ╨╜╨░╤Б╤В╤Г╨┐╨╜╤Л ╨░╨▒'╨╡╨║╤В",
|
||||
"view_previous_asset": "╨Я╤А╨░╨│╨╗╤П╨┤╨╖╨╡╤Ж╤М ╨┐╨░╨┐╤П╤А╤Н╨┤╨╜╤Ц ╨░╨▒'╨╡╨║╤В",
|
||||
"view_stack": "╨Я╤А╨░╨│╨╗╤П╨┤ ╤Б╤В╤Н╨║╨░",
|
||||
"visibility_changed": "╨Т╤Ц╨┤╨╖╤Ц╨╝╨░╤Б╤Ж╤М ╨╖╨╝╤П╨╜╤Ц╨╗╨░╤Б╤П ╨┤╨╗╤П {count, plural, one {# ╤З╨░╨╗╨░╨▓╨╡╨║(-╨░╤Ю)} ╨░╤Б╤В╨░╤В╨╜╤Ц╤Е {# ╤З╨░╨╗╨░╨▓╨╡╨║}}",
|
||||
"visibility_changed": "╨С╨░╤З╨╜╨░╤Б╤Ж╤М ╨╖╨╝╤П╨╜╤Ц╨╗╨░╤Б╤П ╨┤╨╗╤П {count, plural, one {# ╤З╨░╨╗╨░╨▓╨╡╨║╨░} other {# ╤З╨░╨╗╨░╨▓╨╡╨║}}",
|
||||
"waiting": "╨з╨░╨║╨░╤О╤Ж╤М",
|
||||
"warning": "╨Я╨░╨┐╤П╤А╤Н╨┤╨╢╨░╨╜╨╜╨╡",
|
||||
"week": "╨в╤Л╨┤╨╖╨╡╨╜╤М",
|
||||
"welcome": "╨Т╤Ц╤В╨░╨╡╨╝",
|
||||
"welcome_to_immich": "╨Т╤Ц╤В╨░╨╡╨╝ ╤Г Immich",
|
||||
"year": "╨У╨╛╨┤",
|
||||
"years_ago": "{years, plural, one {# ╨│╨╛╨┤} other {# ╨│╨░╨┤╨╛╤Ю}} ╤В╨░╨╝╤Г",
|
||||
"years_ago": "{years, plural, one {# ╨│╨╛╨┤} few {# ╨│╨░╨┤╤Л} many {# ╨│╨░╨┤╨╛╤Ю} other {# ╨│╨░╨┤╨╛╤Ю}} ╤В╨░╨╝╤Г",
|
||||
"yes": "╨в╨░╨║",
|
||||
"you_dont_have_any_shared_links": "╨г ╨▓╨░╤Б ╨╜╤П╨╝╨░ ╨░╨▒╨░╨│╤Г╨╗╨╡╨╜╤Л╤Е ╤Б╨┐╨░╤Б╤Л╨╗╨░╨║",
|
||||
"zoom_image": "╨Я╨░╨▓╤П╨╗╤Ц╤З╤Л╤Ж╤М ╨▓╤Ц╨┤╨░╤А╤Л╤Б"
|
||||
|
||||
45
i18n/bg.json
45
i18n/bg.json
@@ -166,6 +166,20 @@
|
||||
"metadata_settings_description": "╨г╨┐╤А╨░╨▓╨╗╨╡╨╜╨╕╨╡ ╨╜╨░ ╨╜╨░╤Б╤В╤А╨╛╨╣╨║╨╕╤В╨╡ ╨╖╨░ ╨╝╨╡╤В╨░╨┤╨░╨╜╨╜╨╕",
|
||||
"migration_job": "╨Ь╨╕╨│╤А╨░╤Ж╨╕╤П",
|
||||
"migration_job_description": "╨Ь╨╕╨│╤А╨╕╤А╨░╨╜╨╡ ╨╜╨░ ╨╝╨╕╨╜╨╕╨░╤В╤О╤А╨╕╤В╨╡ ╨╖╨░ ╨╡╨╗╨╡╨╝╨╡╨╜╤В╨╕ ╨╕ ╨╗╨╕╤Ж╨░ ╨║╤К╨╝ ╨╜╨░╨╣-╨╜╨╛╨▓╨░╤В╨░ ╤Б╤В╤А╤Г╨║╤В╤Г╤А╨░ ╨╜╨░ ╨┐╨░╨┐╨║╨╕╤В╨╡",
|
||||
"nightly_tasks_cluster_faces_setting_description": "╨Ш╨╖╨┐╤К╨╗╨╜╨╕ ╤А╨░╨╖╨┐╨╛╨╖╨╜╨░╨▓╨░╨╜╨╡ ╨╜╨░ ╨╗╨╕╤Ж╨╡ ╨╖╨░ ╨╛╤В╨║╤А╨╕╤В╨╕ ╨╜╨╛╨▓╨╕ ╨╗╨╕╤Ж╨░",
|
||||
"nightly_tasks_cluster_new_faces_setting": "╨а╨░╨╖╨┐╨╛╨╖╨╜╨░╨▓╨░╨╜╨╡ ╨╜╨░ ╨╜╨╛╨▓╨╕ ╨╗╨╕╤Ж╨░",
|
||||
"nightly_tasks_database_cleanup_setting": "╨Ч╨░╨┤╨░╤З╨╕ ╨┐╨╛ ╨┐╨╛╤З╨╕╤Б╤В╨▓╨░╨╜╨╡ ╨╜╨░ ╨▒╨░╨╖╨░╤В╨░ ╨┤╨░╨╜╨╜╨╕",
|
||||
"nightly_tasks_database_cleanup_setting_description": "╨Я╤А╨╡╨╝╨░╤Е╨╜╨╕ ╤Б╤В╨░╤А╨╕, ╨╜╨╡╨╜╤Г╨╢╨╜╨╕ ╨╖╨░╨┐╨╕╤Б╨╕ ╨╛╤В ╨▒╨░╨╖╨░╤В╨░ ╨┤╨░╨╜╨╜╨╕",
|
||||
"nightly_tasks_generate_memories_setting": "╨б╤К╨╖╨┤╨░╨▓╨░╨╜╨╡ ╨╜╨░ ╤Б╨┐╨╛╨╝╨╡╨╜╨╕",
|
||||
"nightly_tasks_generate_memories_setting_description": "╨б╤К╨╖╨┤╨░╨▓╨░╨╜╨╡ ╨╜╨░ ╨╜╨╛╨▓╨╕ ╤Б╨┐╨╛╨╝╨╡╨╜╨╕ ╨╛╤В ╤Б╤К╤Й╨╡╤Б╤В╨▓╤Г╨▓╨░╤Й╨╕ ╨╛╨▒╨╡╨║╤В╨╕",
|
||||
"nightly_tasks_missing_thumbnails_setting": "╨У╨╡╨╜╨╡╤А╨╕╤А╨░╨╜╨╡ ╨╜╨░ ╨╗╨╕╨┐╤Б╨▓╨░╤Й╨╕ ╨╝╨╕╨╜╨╕╨░╤В╤О╤А╨╕",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "╨Ф╨╛╨▒╨░╨▓╤П╨╜╨╡ ╨╜╨░ ╨╛╨▒╨╡╨║╤В╨╕ ╨▒╨╡╨╖ ╨╝╨╕╨╜╨╕╨░╤В╤О╤А╨░ ╨▓ ╨╛╨┐╨░╤И╨║╨░╤В╨░ ╨╖╨░ ╤Б╤К╨╖╨┤╨░╨▓╨░╨╜╨╡ ╨╜╨░ ╨╝╨╕╨╜╨╕╨░╤В╤О╤А╨░",
|
||||
"nightly_tasks_settings": "╨Э╨░╤Б╤В╤А╨╛╨╣╨║╨░ ╨╜╨░ ╨╖╨░╨┤╨░╤З╨╕ ╨╖╨░ ╨┐╤А╨╡╨╖ ╨╜╨╛╤Й╤В╨░",
|
||||
"nightly_tasks_settings_description": "╨г╨┐╤А╨░╨▓╨╗╨╡╨╜╨╕╨╡ ╨╜╨░ ╨╖╨░╨┤╨░╤З╨╕╤В╨╡, ╨╕╨╖╨┐╤К╨╗╨╜╤П╨▓╨░╨╜╨╕ ╨┐╤А╨╡╨╖ ╨╜╨╛╤Й╤В╨░",
|
||||
"nightly_tasks_start_time_setting": "╨Т╤А╨╡╨╝╨╡ ╨╖╨░ ╨╜╨░╤З╨░╨╗╨╛",
|
||||
"nightly_tasks_start_time_setting_description": "╨Т╤А╨╡╨╝╨╡, ╨║╨╛╨│╨░╤В╨╛ ╤Б╤К╤А╨▓╤К╤А╨░ ╤Й╨╡ ╨╖╨░╨┐╨╛╤З╨╜╨╡ ╨╕╨╖╨┐╤К╨╗╨╜╨╡╨╜╨╕╨╡ ╨╜╨░ ╨╜╨╛╤Й╨╜╨╕ ╨╖╨░╨┤╨░╤З╨╕",
|
||||
"nightly_tasks_sync_quota_usage_setting": "╨Ъ╨▓╨╛╤В╨░ ╨╖╨░ ╤Б╨╕╨╜╤Е╤А╨╛╨╜╨╕╨╖╨░╤Ж╨╕╤П",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "╨Ю╨▒╨╜╨╛╨▓╤П╨▓╨░╨╜╨╡ ╨╜╨░ ╨║╨▓╨╛╤В╨░╤В╨░ ╤Б╨┐╨╛╤А╨╡╨┤ ╤В╨╡╨║╤Г╤Й╨╛╤В╨╛ ╨┐╨╛╤В╤А╨╡╨▒╨╗╨╡╨╜╨╕╨╡",
|
||||
"no_paths_added": "╨Э╤П╨╝╨░ ╨┤╨╛╨▒╨░╨▓╨╡╨╜╨╕ ╨┐╤К╤В╨╕╤Й╨░",
|
||||
"no_pattern_added": "╨Э╤П╨╝╨░ ╨┤╨╛╨▒╨░╨▓╨╡╨╜ ╨╝╨╛╨┤╨╡╨╗",
|
||||
"note_apply_storage_label_previous_assets": "╨Ч╨░╨▒╨╡╨╗╨╡╨╢╨║╨░: ╨Ч╨░ ╨┤╨░ ╨┐╤А╨╕╨╗╨╛╨╢╨╕╤В╨╡ ╨╡╤В╨╕╨║╨╡╤В╨░ ╨╖╨░ ╤Б╤К╤Е╤А╨░╨╜╨╡╨╜╨╕╨╡ ╨║╤К╨╝ ╨┐╤А╨╡╨┤╨▓╨░╤А╨╕╤В╨╡╨╗╨╜╨╛ ╨║╨░╤З╨╡╨╜╨╕ ╤Д╨░╨╣╨╗╨╛╨▓╨╡, ╤Б╤В╨░╤А╤В╨╕╤А╨░╨╣╤В╨╡",
|
||||
@@ -196,6 +210,8 @@
|
||||
"oauth_mobile_redirect_uri": "URI ╨╖╨░ ╨╝╨╛╨▒╨╕╨╗╨╜╨╛ ╨┐╤А╨╡╨╜╨░╤Б╨╛╤З╨▓╨░╨╜╨╡",
|
||||
"oauth_mobile_redirect_uri_override": "URI ╨┐╤А╨╡╨╜╨░╤Б╨╛╤З╨▓╨░╨╜╨╡ ╨╖╨░ ╨╝╨╛╨▒╨╕╨╗╨╜╨╕ ╤Г╤Б╤В╤А╨╛╨╣╤Б╤В╨▓╨░",
|
||||
"oauth_mobile_redirect_uri_override_description": "╨а╨░╨╖╤А╨╡╤И╨╕ ╨║╨╛╨│╨░╤В╨╛ ╨┤╨╛╤Б╤В╨░╨▓╤З╨╕╨║╨░ ╨╖╨░ OAuth ╤Г╨┤╨╛╤Б╤В╨╛╨▓╨╡╤А╤П╨▓╨░╨╜╨╡ ╨╜╨╡ ╨┐╨╛╨╖╨▓╨╛╨╗╤П╨▓╨░ ╨╖╨░ ╨╝╨╛╨▒╨╕╨╗╨╜╨╕ URI ╨╕╨┤╨╡╨╜╤В╨╕╤Д╨╕╨║╨░╤В╨╛╤А╨╕, ╨║╨░╤В╨╛ ''{callback}''",
|
||||
"oauth_role_claim": "╨Я╨╛╤В╨▓╤К╤А╨╢╨┤╨╡╨╜╨╕╨╡ ╨╜╨░ ╤А╨╛╨╗╤П",
|
||||
"oauth_role_claim_description": "╨Р╨▓╤В╨╛╨╝╨░╤В╨╕╤З╨╜╨╛ ╨┐╤А╨╡╨┤╨╛╤Б╤В╨░╨▓╤П╨╜╨╡ ╨╜╨░ ╨░╨┤╨╝╨╕╨╜╨╕╤Б╤В╤А╨░╤В╨╕╨▓╨╜╨╕ ╨┐╤А╨░╨▓╨░ ╨┐╤А╨╕ ╨╜╨░╨╗╨╕╤З╨╕╨╡ ╨╜╨░ ╤В╨╛╨▓╨░ ╨┐╨╛╤В╨▓╤К╤А╨╢╨╡╨╜╨╕╨╡. ╨Я╨╛╤В╨▓╤К╤А╨╢╨┤╨╡╨╜╨╕╨╡╤В╨╛ ╨╝╨╛╨╢╨╡ ╨┤╨░ ╨╕╨╝╨░ ╤Б╤В╨╛╨╣╨╜╨╛╤Б╤В 'user' ╨╕╨╗╨╕ 'admin'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "╨г╨┐╤А╨░╨▓╨╗╨╡╨╜╨╕╨╡ ╨╜╨░ ╨╜╨░╤Б╤В╤А╨╛╨╣╨║╨╕╤В╨╡ ╨╖╨░ ╨▓╤Е╨╛╨┤ ╤Б OAuth",
|
||||
"oauth_settings_more_details": "╨Ч╨░ ╨┐╨╛╨▓╨╡╤З╨╡ ╨╕╨╜╤Д╨╛╤А╨╝╨░╤Ж╨╕╤П ╨╖╨░ ╤Д╤Г╨╜╨║╤Ж╨╕╨╛╨╜╨░╨╗╨╜╨╛╤Б╤В╤В╨░, ╤Б╨╡ ╨┐╨╛╤В╤К╤А╤Б╨╡╤В╨╡ ╨▓ <link>docs</link>.",
|
||||
@@ -357,6 +373,8 @@
|
||||
"admin_password": "╨Р╨┤╨╝╨╕╨╜╨╕╤Б╤В╤А╨░╤В╨╛╤А╤Б╨║╨░ ╨┐╨░╤А╨╛╨╗╨░",
|
||||
"administration": "╨Р╨┤╨╝╨╕╨╜╨╕╤Б╤В╤А╨░╤Ж╨╕╤П",
|
||||
"advanced": "╨а╨░╨╖╤И╨╕╤А╨╡╨╜╨╛",
|
||||
"advanced_settings_beta_timeline_subtitle": "╨Ю╨┐╨╕╤В╨░╨╣╤В╨╡ ╨╜╨╛╨▓╨╕╤В╨╡ ╤Д╤Г╨╜╨║╤Ж╨╕╨╕ ╨╜╨░ ╨┐╤А╨╕╨╗╨╛╨╢╨╡╨╜╨╕╨╡╤В╨╛",
|
||||
"advanced_settings_beta_timeline_title": "╨С╨╡╤В╨░ ╨▓╨╡╤А╤Б╨╕╤П ╨╜╨░ ╨▓╤А╨╡╨╝╨╡╨▓╨░╤В╨░ ╨╗╨╕╨╜╨╕╤П",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "╨Я╤А╨╕ ╤Б╨╕╨╜╤Е╤А╨╛╨╜╨╕╨╖╨░╤Ж╨╕╤П, ╨╕╨╖╨┐╨╛╨╗╨╖╨▓╨░╨╣╤В╨╡ ╤В╨░╨╖╨╕ ╨╛╨┐╤Ж╨╕╤П ╨║╨░╤В╨╛ ╤Д╨╕╨╗╤В╤К╤А, ╨╛╤Б╨╜╨╛╨▓╨░╨╜ ╨╜╨░ ╨┐╤А╨╛╨╝╤П╨╜╨░ ╨╜╨░ ╨┤╨░╨┤╨╡╨╜ ╨║╤А╨╕╤В╨╡╤А╨╕╨╕. ╨Ю╨┐╨╕╤В╨░╨╣╤В╨╡ ╤Б╨░╨╝╨╛ ╨▓ ╤Б╨╗╤Г╤З╨░╨╣, ╤З╨╡ ╨┐╤А╨╕╨╗╨╛╨╢╨╡╨╜╨╕╨╡╤В╨╛ ╨╕╨╝╨░ ╨┐╤А╨╛╨▒╨╗╨╡╨╝ ╤Б ╨╛╤В╨║╤А╨╕╨▓╨░╨╜╨╡ ╨╜╨░ ╨▓╤Б╨╕╤З╨║╨╕ ╨░╨╗╨▒╤Г╨╝╨╕.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[╨Х╨Ъ╨б╨Я╨Х╨а╨Ш╨Ь╨Х╨Э╨в╨Р╨Ы╨Э╨Ю] ╨Ш╨╖╨┐╨╛╨╗╨╖╨▓╨░╨╣ ╤Д╨╕╨╗╤В╤К╤А╨░ ╨╜╨░ ╨░╨╗╤В╨╡╤А╨╜╨░╤В╨╕╨▓╨╜╨╛╤В╨╛ ╤Г╤Б╤В╤А╨╛╨╣╤Б╤В╨▓╨╛ ╨╖╨░ ╤Б╨╕╨╜╤Е╤А╨╛╨╜╨╕╨╖╨░╤Ж╨╕╤П ╨╜╨░ ╨░╨╗╨▒╤Г╨╝╨╕",
|
||||
"advanced_settings_log_level_title": "╨Э╨╕╨▓╨╛ ╨╜╨░ ╨╖╨░╨┐╨╕╤Б ╨▓ ╨┤╨╜╨╡╨▓╨╜╨╕╨║╨░: {level}",
|
||||
@@ -427,6 +445,7 @@
|
||||
"app_settings": "╨Э╨░╤Б╤В╤А╨╛╨╣╨║╨╕ ╨╝╨░ ╨┐╤А╨╕╨╗╨╛╨╢╨╡╨╜╨╕╨╡╤В╨╛",
|
||||
"appears_in": "╨Ш╨╖╨╗╨╕╨╖╨░ ╨▓",
|
||||
"archive": "╨Р╤А╤Е╨╕╨▓",
|
||||
"archive_action_prompt": "{count} ╤Б╨░ ╨┤╨╛╨▒╨░╨▓╨╡╨╜╨╕ ╨▓ ╨Р╤А╤Е╨╕╨▓╨░",
|
||||
"archive_or_unarchive_photo": "╨Р╤А╤Е╨╕╨▓╨╕╤А╨░╨╜╨╡ ╨╕╨╗╨╕ ╨┤╨╡╨░╤А╤Е╨╕╨▓╨╕╤А╨░╨╜╨╡ ╨╜╨░ ╤Б╨╜╨╕╨╝╨║╨░",
|
||||
"archive_page_no_archived_assets": "╨Э╨╡ ╤Б╨░ ╨╜╨░╨╝╨╡╤А╨╡╨╜╨╕ ╨╛╨▒╨╡╨║╤В╨╕ ╨▓ ╨░╤А╤Е╨╕╨▓╨░",
|
||||
"archive_page_title": "╨Р╤А╤Е╨╕╨▓ ({count})",
|
||||
@@ -464,7 +483,6 @@
|
||||
"assets": "╨Х╨╗╨╡╨╝╨╡╨╜╤В╨╕",
|
||||
"assets_added_count": "╨Ф╨╛╨▒╨░╨▓╨╡╨╜╨╛ {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_added_to_album_count": "╨Ф╨╛╨▒╨░╨▓╨╡╨╜(╨╕) ╤Б╨░ {count, plural, one {# ╨░╨║╤В╨╕╨▓} other {# ╨░╨║╤В╨╕╨▓╨░}} ╨▓ ╨░╨╗╨▒╤Г╨╝╨░",
|
||||
"assets_added_to_name_count": "╨Ф╨╛╨▒╨░╨▓╨╡╨╜(╨╕) ╤Б╨░ {count, plural, one {# ╨░╨║╤В╨╕╨▓} other {# ╨░╨║╤В╨╕╨▓╨░}} ╨║╤К╨╝ {hasName, select, true {<b>{name}</b>} other {╨╜╨╛╨▓ ╨░╨╗╨▒╤Г╨╝}}",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {╨Ю╨▒╨╡╨║╤В╨░ ╨╜╨╡ ╨╝╨╛╨╢╨╡ ╨┤╨░ ╤Б╨╡ ╨┤╨╛╨▒╨░╨▓╨╕} other {╨Ю╨▒╨╡╨║╤В╨╕╤В╨╡ ╨╜╨╡ ╨╝╨╛╨╢╨╡ ╨┤╨░ ╤Б╨╡ ╨┤╨╛╨▒╨░╨▓╤П╤В}} ╨▓ ╨░╨╗╨▒╤Г╨╝╨░",
|
||||
"assets_count": "{count, plural, one {# ╨░╨║╤В╨╕╨▓} other {# ╨░╨║╤В╨╕╨▓╨░}}",
|
||||
"assets_deleted_permanently": "{count} ╨╛╨▒╨╡╨║╤В╨░ ╤Б╨░ ╨╕╨╖╤В╤А╨╕╤В╨╕ ╨╖╨░╨▓╨╕╨╜╨░╨│╨╕",
|
||||
@@ -490,6 +508,7 @@
|
||||
"back_close_deselect": "╨Э╨░╨╖╨░╨┤, ╨╖╨░╤В╨▓╨░╤А╤П╨╜╨╡ ╨╕╨╗╨╕ ╨┐╤А╨╡╨╝╨░╤Е╨▓╨░╨╜╨╡ ╨╜╨░ ╨╕╨╖╨▒╨╛╤А╨░",
|
||||
"background_location_permission": "╨а╨░╨╖╤А╨╡╤И╨╡╨╜╨╕╨╡ ╨╖╨░ ╨┤╨╛╤Б╤В╤К╨┐ ╨┤╨╛ ╨╝╨╡╤Б╤В╨╛╨┐╨╛╨╗╨╛╨╢╨╡╨╜╨╕╨╡╤В╨╛ ╨▓╤К╨▓ ╤Д╨╛╨╜╨╛╨▓ ╤А╨╡╨╢╨╕╨╝",
|
||||
"background_location_permission_content": "╨Ч╨░ ╨┤╨░ ╨╝╨╛╨╢╨╡ ╨┤╨░ ╤З╨╡╤В╨╡ ╨╕╨╝╨╡╨╜╨░╤В╨░ ╨╜╨░ Wi-Fi ╨╝╤А╨╡╨╢╨╕╤В╨╡ ╨╕ ╨┤╨░ ╨│╨╕ ╨┐╤А╨╡╨▓╨║╨╗╤О╤З╨▓╨░ ╨┐╤А╨╕ ╤А╨░╨▒╨╛╤В╨░ ╨▓╤К╨▓ ╤Д╨╛╨╜╨╛╨▓ ╤А╨╡╨╢╨╕╨╝, Immich ╤В╤А╤П╨▒╨▓╨░ *╨▓╨╕╨╜╨░╨│╨╕* ╨┤╨░ ╨╕╨╝╨░ ╨┤╨╛╤Б╤В╤К╨┐ ╨┤╨╛ ╤В╨╛╤З╨╜╨╛╤В╨╛ ╨╝╨╡╤Б╤В╨╛╨┐╨╛╨╗╨╛╨╢╨╡╨╜╨╕╨╡",
|
||||
"backup": "╨Р╤А╤Е╨╕╨▓╨╕╤А╨░╨╜╨╡",
|
||||
"backup_album_selection_page_albums_device": "╨Р╨╗╨▒╤Г╨╝╨╕ ╨╜╨░ ╤Г╤Б╤В╤А╨╛╨╣╤Б╤В╨▓╨╛╤В╨╛ ({count})",
|
||||
"backup_album_selection_page_albums_tap": "╨Э╨░╤В╨╕╤Б╨╜╨╕ ╨╖╨░ ╨┤╨░ ╨▓╨║╨╗╤О╤З╨╕╤И, ╨┤╨▓╨╛╨╣╨╜╨╛ ╨╖╨░ ╨┤╨░ ╨╕╨╖╨║╨╗╤О╤З╨╕╤И",
|
||||
"backup_album_selection_page_assets_scatter": "╨Ю╨▒╨╡╨║╤В╨╕╤В╨╡ ╨╝╨╛╨│╨░╤В ╨┤╨░ ╨▒╤К╨┤╨░╤В ╤А╨░╨╖╨┐╤А╤К╤Б╨╜╨░╤В╨╕ ╨▓ ╨╜╤П╨║╨╛╨╗╨║╨╛ ╨░╨╗╨▒╤Г╨╝╨░. ╨Я╨╛ ╤В╨╛╨╖╨╕ ╨╜╨░╤З╨╕╨╜ ╨░╨╗╨▒╤Г╨╝╨╕╤В╨╡ ╨╝╨╛╨│╨░╤В ╨┤╨░ ╨▒╤К╨┤╨░╤В ╨▓╨║╨╗╤О╤З╨╡╨╜╨╕ ╨╕╨╗╨╕ ╨╕╨╖╨║╨╗╤О╤З╨╡╨╜╨╕ ╨┐╨╛ ╨▓╤А╨╡╨╝╨╡ ╨╜╨░ ╨┐╤А╨╛╤Ж╨╡╤Б╨░ ╨╜╨░ ╨░╤А╤Е╨╕╨▓╨╕╤А╨░╨╜╨╡.",
|
||||
@@ -703,7 +722,7 @@
|
||||
"daily_title_text_date": "E, dd MMM",
|
||||
"daily_title_text_date_year": "E, dd MMM yyyy",
|
||||
"dark": "╨в╤К╨╝╨╡╨╜",
|
||||
"darkTheme": "╨Я╤А╨╡╨▓╨║╨╗╤О╤З╨╕ ╨╜╨░ ╤В╤К╨╝╨╜╨░ ╤В╨╡╨╝╨░",
|
||||
"dark_theme": "╨в╤К╨╝╨╜╨░ ╤В╨╡╨╝╨░",
|
||||
"date_after": "╨Ф╨░╤В╨░ ╤Б╨╗╨╡╨┤",
|
||||
"date_and_time": "╨Ф╨░╤В╨░ ╨╕ ╤З╨░╤Б",
|
||||
"date_before": "╨Ф╨░╤В╨░ ╨┐╤А╨╡╨┤╨╕",
|
||||
@@ -719,6 +738,7 @@
|
||||
"default_locale": "╨Ы╨╛╨║╨░╨╗╨╕╨╖╨░╤Ж╨╕╤П ╨┐╨╛ ╨┐╨╛╨┤╤А╨░╨╖╨▒╨╕╤А╨░╨╜╨╡",
|
||||
"default_locale_description": "╨д╨╛╤А╨╝╨░╤В╨╕╤А╨░╨╜╨╡ ╨╜╨░ ╨┤╨░╤В╨╕ ╨╕ ╤З╨╕╤Б╨╗╨░ ╨▓ ╨╖╨░╨▓╨╕╤Б╨╕╨╝╨╛╤Б╤В ╨╛╤В ╨╡╨╖╨╕╨║╨╛╨▓╨░╤В╨░ ╨╜╨░╤Б╤В╤А╨╛╨╣╨║╨░ ╨╜╨░ ╨▒╤А╨░╤Г╨╖╤К╤А╨░",
|
||||
"delete": "╨Ш╨╖╤В╤А╨╕╨╣",
|
||||
"delete_action_prompt": "{count} ╤Б╨░ ╨╕╨╖╤В╤А╨╕╤В╨╕ ╨╖╨░╨▓╨╕╨╜╨░╨│╨╕",
|
||||
"delete_album": "╨Ш╨╖╤В╤А╨╕╨╣ ╨░╨╗╨▒╤Г╨╝",
|
||||
"delete_api_key_prompt": "╨б╨╕╨│╤Г╤А╨╜╨╕ ╨╗╨╕ ╤Б╤В╨╡, ╤З╨╡ ╨╕╤Б╨║╨░╤В╨╡ ╨┤╨░ ╨╕╨╖╤В╤А╨╕╨╡╤В╨╡ ╤В╨╛╨╖╨╕ API ╨║╨╗╤О╤З?",
|
||||
"delete_dialog_alert": "╨в╨╡╨╖╨╕ ╨╛╨▒╨╡╨║╤В╨╕ ╤Й╨╡ ╨▒╤К╨┤╨░╤В ╨╕╨╖╤В╤А╨╕╤В╨╕ ╨╖╨░╨▓╨╕╨╜╨░╨│╨╕ ╨╕ ╨╛╤В Immich ╤Б╤К╤А╨▓╤К╤А╨░ ╨╕ ╨╛╤В ╤Г╤Б╤В╤А╨╛╨╣╤Б╤В╨▓╨╛╤В╨╛",
|
||||
@@ -732,19 +752,20 @@
|
||||
"delete_key": "╨Ш╨╖╤В╤А╨╕╨╣ ╨║╨╗╤О╤З",
|
||||
"delete_library": "╨Ш╨╖╤В╤А╨╕╨╣ ╨▒╨╕╨▒╨╗╨╕╨╛╤В╨╡╨║╨░",
|
||||
"delete_link": "╨Ш╨╖╤В╤А╨╕╨╣ ╨╗╨╕╨╜╨║",
|
||||
"delete_local_action_prompt": "{count} ╤Б╨░ ╨╕╨╖╤В╤А╨╕╤В╨╕ ╨╗╨╛╨║╨░╨╗╨╜╨╛",
|
||||
"delete_local_dialog_ok_backed_up_only": "╨Ш╨╖╤В╤А╨╕╨╣ ╨╗╨╛╨║╨░╨╗╨╜╨╛ ╤Б╨░╨╝╨╛ ╨░╤А╤Е╨╕╨▓╨╕╤А╨░╨╜╨╕╤В╨╡",
|
||||
"delete_local_dialog_ok_force": "╨Т╤К╨┐╤А╨╡╨║╨╕ ╤В╨╛╨▓╨░ ╨╕╨╖╤В╤А╨╕╨╣",
|
||||
"delete_others": "╨Ш╨╖╤В╤А╨╕╨╣ ╨╛╤Б╤В╨░╨╜╨░╨╗╨╕╤В╨╡",
|
||||
"delete_shared_link": "╨Ш╨╖╤В╤А╨╕╨▓╨░╨╜╨╡ ╨╜╨░ ╤Б╨┐╨╛╨┤╨╡╨╗╨╡╨╜ ╨╗╨╕╨╜╨║",
|
||||
"delete_shared_link_dialog_title": "╨Ш╨╖╤В╤А╨╕╨╣ ╤Б╨┐╨╛╨┤╨╡╨╗╨╡╨╜╨░╤В╨░ ╨▓╤А╤К╨╖╨║╨░",
|
||||
"delete_tag": "╨Ш╨╖╤В╤А╨╕╨╣ ╤В╨░╨│",
|
||||
"delete_tag_confirmation_prompt": "╨б╨╕╨│╤Г╤А╨╜╨╕ ╨╗╨╕ ╤Б╤В╨╡, ╤З╨╡ ╨╕╤Б╨║╨░╤В╨╡ ╨┤╨░ ╨╕╨╖╤В╤А╨╕╨╡╤В╨╡ ╤В╨░╨│ {tagName}?",
|
||||
"delete_tag_confirmation_prompt": "╨б╨╕╨│╤Г╤А╨╜╨╕ ╨╗╨╕ ╤Б╤В╨╡, ╤З╨╡ ╨╕╤Б╨║╨░╤В╨╡ ╨┤╨░ ╨╕╨╖╤В╤А╨╕╨╡╤В╨╡ ╤В╨░╨│╨░ {tagName}?",
|
||||
"delete_user": "╨Ш╨╖╤В╤А╨╕╨╣ ╨┐╨╛╤В╤А╨╡╨▒╨╕╤В╨╡╨╗",
|
||||
"deleted_shared_link": "╨Ш╨╖╤В╤А╨╕╤В ╤Б╨┐╨╛╨┤╨╡╨╗╨╡╨╜ ╨╗╨╕╨╜╨║",
|
||||
"deletes_missing_assets": "╨Ш╨╖╤В╤А╨╕╨▓╨░ ╤Д╨░╨╣╨╗╨╛╨▓╨╡, ╨║╨╛╨╕╤В╨╛ ╨╗╨╕╨┐╤Б╨▓╨░╤В ╨╜╨░ ╨┤╨╕╤Б╨║╨░",
|
||||
"description": "╨Ю╨┐╨╕╤Б╨░╨╜╨╕╨╡",
|
||||
"description_input_hint_text": "╨Ф╨╛╨▒╨░╨▓╨╕ ╨╛╨┐╨╕╤Б╨░╨╜╨╕╨╡...",
|
||||
"description_input_submit_error": "╨Э╨╡╤Г╤Б╨┐╨╡╤И╨╜╨╛ ╨╛╨▒╨╜╨╛╨▓╤П╨▓╨░╨╜╨╡ ╨╜╨░ ╨╛╨┐╨╕╤Б╨░╨╜╨╕╨╡╤В╨╛. ╨Ч╨░ ╨┐╨╛╨┤╤А╨╛╨▒╨╜╨╛╤Б╤В╨╕ ╨▓╨╕╨╢ ╨▓ ╨┤╨╜╨╡╨▓╨╜╨╕╨║╨░",
|
||||
"description_input_submit_error": "╨Э╨╡╤Г╤Б╨┐╨╡╤И╨╜╨╛ ╨╛╨▒╨╜╨╛╨▓╤П╨▓╨░╨╜╨╡ ╨╜╨░ ╨╛╨┐╨╕╤Б╨░╨╜╨╕╨╡╤В╨╛. ╨Ч╨░ ╨┐╨╛╨┤╤А╨╛╨▒╨╜╨╛╤Б╤В╨╕ ╨▓╨╕╨╢╤В╨╡ ╨▓ ╨┤╨╜╨╡╨▓╨╜╨╕╨║╨░",
|
||||
"details": "╨Ф╨╡╤В╨░╨╣╨╗╨╕",
|
||||
"direction": "╨Я╨╛╤Б╨╛╨║╨░",
|
||||
"disabled": "╨Ш╨╖╨║╨╗╤О╤З╨╡╨╜╨╛",
|
||||
@@ -762,6 +783,7 @@
|
||||
"documentation": "╨Ф╨╛╨║╤Г╨╝╨╡╨╜╤В╨░╤Ж╨╕╤П",
|
||||
"done": "╨У╨╛╤В╨╛╨▓╨╛",
|
||||
"download": "╨Ш╨╖╤В╨╡╨│╨╗╨╕",
|
||||
"download_action_prompt": "╨Ч╨░╤А╨╡╨╢╨┤╨░╨╜╨╡ ╨╜╨░ {count} ╨╛╨▒╨╡╨║╤В╨░",
|
||||
"download_canceled": "╨Ш╨╖╤В╨╡╨│╨╗╤П╨╜╨╡╤В╨╛ ╨╡ ╨╛╤В╨╝╨╡╨╜╨╡╨╜╨╛",
|
||||
"download_complete": "╨Ш╨╖╤В╨╡╨│╨╗╤П╨╜╨╡╤В╨╛ ╨╖╨░╨▓╤К╤А╤И╨╕",
|
||||
"download_enqueue": "╨Ш╨╖╤В╨╡╨│╨╗╤П╨╜╨╡╤В╨╛ ╨╡ ╨┤╨╛╨▒╨░╨▓╨╡╨╜╨╛ ╨▓ ╨╛╨┐╨░╤И╨║╨░╤В╨░",
|
||||
@@ -799,6 +821,7 @@
|
||||
"edit_key": "╨а╨╡╨┤╨░╨║╤В╨╕╤А╨░╨╜╨╡ ╨╜╨░ ╨║╨╗╤О╤З",
|
||||
"edit_link": "╨а╨╡╨┤╨░╨║╤В╨╕╤А╨░╨╜╨╡ ╨╜╨░ ╨╗╨╕╨╜╨║",
|
||||
"edit_location": "╨а╨╡╨┤╨░╨║╤В╨╕╤А╨░╨╜╨╡ ╨╜╨░ ╨╝╨╡╤Б╤В╨╛╨┐╨╛╨╗╨╛╨╢╨╡╨╜╨╕╨╡╤В╨╛",
|
||||
"edit_location_action_prompt": "{count} ╨╗╨╛╨║╨░╤Ж╨╕╨╕ ╤Б╨░ ╤А╨╡╨┤╨░╨║╤В╨╕╤А╨░╨╜╨╕",
|
||||
"edit_location_dialog_title": "╨Ь╨╡╤Б╤В╨╛╨┐╨╛╨╗╨╛╨╢╨╡╨╜╨╕╨╡",
|
||||
"edit_name": "╨а╨╡╨┤╨░╨║╤В╨╕╤А╨░╨╜╨╡ ╨╜╨░ ╨╕╨╝╨╡",
|
||||
"edit_people": "╨а╨╡╨┤╨░╨║╤В╨╕╤А╨░╨╜╨╡ ╨╜╨░ ╤Е╨╛╤А╨░",
|
||||
@@ -984,6 +1007,7 @@
|
||||
"failed_to_load_assets": "╨Э╨╡╤Г╤Б╨┐╨╡╤И╨╜╨╛ ╨╖╨░╤А╨╡╨╢╨┤╨░╨╜╨╡ ╨╜╨░ ╨╡╨╗╨╡╨╝╨╡╨╜╤В╨╕",
|
||||
"failed_to_load_folder": "╨Э╨╡╤Г╤Б╨┐╨╡╤И╨╜╨╛ ╨╖╨░╤А╨╡╨╢╨┤╨░╨╜╨╡ ╨╜╨░ ╨┐╨░╨┐╨║╨░",
|
||||
"favorite": "╨Ы╤О╨▒╨╕╨╝",
|
||||
"favorite_action_prompt": "{count} ╤Б╨░ ╨┤╨╛╨▒╨░╨▓╨╡╨╜╨╕ ╨▓ ╨Ы╤О╨▒╨╕╨╝╨╕",
|
||||
"favorite_or_unfavorite_photo": "╨Ф╨╛╨▒╨░╨▓╨╕ ╨╕╨╗╨╕ ╨┐╤А╨╡╨╝╨░╤Е╨╜╨╕ ╤Б╨╜╨╕╨╝╨║╨░ ╨╛╤В ╨Ы╤О╨▒╨╕╨╝╨╕",
|
||||
"favorites": "╨Ы╤О╨▒╨╕╨╝╨╕",
|
||||
"favorites_page_no_favorites": "╨Э╨╡ ╤Б╨░ ╨╜╨░╨╝╨╡╤А╨╡╨╜╨╕ ╨╗╤О╨▒╨╕╨╝╨╕ ╨╛╨▒╨╡╨║╤В╨╕",
|
||||
@@ -1127,10 +1151,10 @@
|
||||
"library_page_sort_created": "╨Ф╨░╤В╨░ ╨╜╨░ ╤Б╤К╨╖╨┤╨░╨▓╨░╨╜╨╡",
|
||||
"library_page_sort_last_modified": "╨Я╨╛╤Б╨╗╨╡╨┤╨╜╨░ ╨┐╤А╨╛╨╝╤П╨╜╨░",
|
||||
"library_page_sort_title": "╨Ч╨░╨│╨╗╨░╨▓╨╕╨╡ ╨╜╨░ ╨░╨╗╨▒╤Г╨╝╨░",
|
||||
"licenses": "╨Ы╨╕╤Ж╨╡╨╜╨╖╨╕",
|
||||
"light": "╨б╨▓╨╡╤В╨╗╨╛",
|
||||
"like_deleted": "╨Ъ╨░╤В╨╛ ╨╕╨╖╤В╤А╨╕╤В",
|
||||
"link_motion_video": "╨Ы╨╕╨╜╨║ ╨║╤К╨╝ ╨▓╨╕╨┤╨╡╨╛",
|
||||
"link_options": "╨Ю╨┐╤Ж╨╕╨╕ ╨╜╨░ ╨╗╨╕╨╜╨║ ╨╖╨░ ╤Б╨┐╨╛╨┤╨╡╨╗╤П╨╜╨╡",
|
||||
"link_to_oauth": "╨Ы╨╕╨╜╨║ ╨║╤К╨╝ OAuth",
|
||||
"linked_oauth_account": "╨б╨▓╤К╤А╨╖╨░╨╜ OAuth ╨░╨║╨░╤Г╨╜╤В",
|
||||
"list": "╨Ы╨╕╤Б╤В",
|
||||
@@ -1193,7 +1217,6 @@
|
||||
"manage_your_devices": "╨г╨┐╤А╨░╨▓╨╗╨╡╨╜╨╕╨╡ ╨╜╨░ ╨▓╨╗╨╡╨╖╨╗╨╕╤В╨╡ ╨▓ ╤Б╨╕╤Б╤В╨╡╨╝╨░╤В╨░ ╤Г╤Б╤В╤А╨╛╨╣╤Б╤В╨▓╨░",
|
||||
"manage_your_oauth_connection": "╨г╨┐╤А╨░╨▓╨╗╨╡╨╜╨╕╨╡ ╨╜╨░ OAuth ╨▓╤А╤К╨╖╨║╨░╤В╨░",
|
||||
"map": "╨Ъ╨░╤А╤В╨░",
|
||||
"map_assets_in_bound": "{count} ╤Б╨╜╨╕╨╝╨║╨╕",
|
||||
"map_assets_in_bounds": "{count} ╤Б╨╜╨╕╨╝╨║╨╕",
|
||||
"map_cannot_get_user_location": "╨Э╨╡ ╨╝╨╛╨╢╨░╤Е ╨┤╨░ ╨┐╨╛╨╗╤Г╤З╨░ ╨╝╨╡╤Б╤В╨╛╨┐╨╛╨╗╨╛╨╢╨╡╨╜╨╕╨╡╤В╨╛",
|
||||
"map_location_dialog_yes": "╨Ф╨░",
|
||||
@@ -1246,6 +1269,7 @@
|
||||
"more": "╨Ю╤Й╨╡",
|
||||
"move": "╨Я╤А╨╡╨╝╨╡╤Б╤В╨╕",
|
||||
"move_off_locked_folder": "╨Ш╨╖╨▓╨░╨┤╨╕ ╨╛╤В ╨╖╨░╨║╨╗╤О╤З╨╡╨╜╨░╤В╨░ ╨┐╨░╨┐╨║╨░",
|
||||
"move_to_lock_folder_action_prompt": "{count} ╤Б╨░ ╨┤╨╛╨▒╨░╨▓╨╡╨╜╨╕ ╨▓ ╨╖╨░╨║╨╗╤О╤З╨╡╨╜╨░╤В╨░ ╨┐╨░╨┐╨║╨░",
|
||||
"move_to_locked_folder": "╨Я╤А╨╡╨╝╨╡╤Б╤В╨╕ ╨▓ ╨╖╨░╨║╨╗╤О╤З╨╡╨╜╨░ ╨┐╨░╨┐╨║╨░",
|
||||
"move_to_locked_folder_confirmation": "╨в╨╡╨╖╨╕ ╤Б╨╜╨╕╨╝╨║╨╕ ╨╕ ╨▓╨╕╨┤╨╡╨░ ╤Й╨╡ ╨▒╤К╨┤╨░╤В ╨╕╨╖╤В╤А╨╕╤В╨╕ ╨╛╤В ╨▓╤Б╨╕╤З╨║╨╕ ╨░╨╗╨▒╤Г╨╝╨╕ ╨╕ ╤Й╨╡ ╤Б╨░ ╨┤╨╛╤Б╤В╤К╨┐╨╜╨╕ ╤Б╨░╨╝╨╛ ╨▓ ╨╖╨░╨║╨╗╤О╤З╨╡╨╜╨░╤В╨░ ╨┐╨░╨┐╨║╨░",
|
||||
"moved_to_archive": "{count, plural, one {# ╨╛╨▒╨╡╨║╤В ╨╡ ╨┐╤А╨╡╨╝╨╡╤Б╤В╨╡╨╜} many {# ╨╛╨▒╨╡╨║╤В╨░ ╤Б╨░ ╨┐╤А╨╡╨╝╨╡╤Б╤В╨╡╨╜╨╕} other {# ╨╛╨▒╨╡╨║╤В╨░ ╤Б╨░ ╨┐╤А╨╡╨╝╨╡╤Б╤В╨╡╨╜╨╕}} ╨▓ ╨░╤А╤Е╨╕╨▓╨░",
|
||||
@@ -1495,7 +1519,9 @@
|
||||
"remove_custom_date_range": "╨Я╤А╨╡╨╝╨░╤Е╨╜╨╕ ╨╖╨░╨┤╨░╨┤╨╡╨╜╨╕╤П ╨┤╨╕╨░╨┐╨░╨╖╨╛╨╜ ╨╛╤В ╨┤╨░╤В╨╕",
|
||||
"remove_deleted_assets": "╨Я╤А╨╡╨╝╨░╤Е╨╜╨╕ ╨Ш╨╖╤В╤А╨╕╤В╨╕╤В╨╡ ╨Х╨╗╨╡╨╝╨╡╨╜╤В╨╕",
|
||||
"remove_from_album": "╨Я╤А╨╡╨╝╨░╤Е╨╜╨╕ ╨╛╤В ╨░╨╗╨▒╤Г╨╝╨░",
|
||||
"remove_from_album_action_prompt": "{count} ╤Б╨░ ╨┐╤А╨╡╨╝╨░╤Е╨╜╨░╤В╨╕ ╨╛╤В ╨░╨╗╨▒╤Г╨╝╨░",
|
||||
"remove_from_favorites": "╨Я╤А╨╡╨╝╨░╤Е╨╜╨╕ ╨╛╤В ╨Ы╤О╨▒╨╕╨╝╨╕",
|
||||
"remove_from_lock_folder_action_prompt": "{count} ╤Б╨░ ╨┐╤А╨╡╨╝╨░╤Е╨╜╨░╤В╨╕ ╨╛╤В ╨╖╨░╨║╨╗╤О╤З╨╡╨╜╨░╤В╨░ ╨┐╨░╨┐╨║╨░",
|
||||
"remove_from_locked_folder": "╨Ь╨░╤Е╨╜╨╕ ╨╛╤В ╨╖╨░╨║╨╗╤О╤З╨╡╨╜╨░╤В╨░ ╨┐╨░╨┐╨║╨░",
|
||||
"remove_from_locked_folder_confirmation": "╨б╨╕╨│╤Г╤А╨╜╨╕ ╨╗╨╕ ╤Б╨╕, ╤З╨╡ ╨╕╤Б╨║╨░╤В╨╡ ╤В╨╡╨╖╨╕ ╤Б╨╜╨╕╨╝╨║╨╕ ╨╕ ╨▓╨╕╨┤╨╡╨░ ╨┤╨░ ╨▒╤К╨┤╨░╤В ╨╕╨╖╨▓╨░╨┤╨╡╨╜╨╕ ╨╛╤В ╨╖╨░╨║╨╗╤О╤З╨╡╨╜╨░╤В╨░ ╨┐╨░╨┐╨║╨░? ╨в╨╡ ╤Й╨╡ ╨▒╤К╨┤╨░╤В ╨▓╨╕╨┤╨╕╨╝╨╕ ╨▓ ╨▒╨╕╨▒╨╗╨╕╨╛╤В╨╡╨║╨░╤В╨░.",
|
||||
"remove_from_shared_link": "╨Я╤А╨╡╨╝╨░╤Е╨╜╨╕ ╨╛╤В ╤Б╨┐╨╛╨┤╨╡╨╗╨╡╨╜╨╕╤П ╨╗╨╕╨╜╨║",
|
||||
@@ -1667,6 +1693,7 @@
|
||||
"settings_saved": "╨Э╨░╤Б╤В╤А╨╛╨╣╨║╨╕╤В╨╡ ╤Б╨░ ╨╖╨░╨┐╨░╨╖╨╡╨╜╨╕",
|
||||
"setup_pin_code": "╨Ч╨░╨┤╨░╨╣ PIN ╨║╨╛╨┤",
|
||||
"share": "╨б╨┐╨╛╨┤╨╡╨╗╤П╨╜╨╡",
|
||||
"share_action_prompt": "{count} ╤Б╨┐╨╛╨┤╨╡╨╗╨╡╨╜╨╕ ╨╛╨▒╨╡╨║╤В╨░",
|
||||
"share_add_photos": "╨Ф╨╛╨▒╨░╨▓╨╕ ╤Б╨╜╨╕╨╝╨║╨╕",
|
||||
"share_assets_selected": "{count} ╨╕╨╖╨▒╤А╨░╨╜╨╕",
|
||||
"share_dialog_preparing": "╨Я╨╛╨┤╨│╨╛╤В╨╛╨▓╨║╨░...",
|
||||
@@ -1768,6 +1795,7 @@
|
||||
"sort_title": "╨Ч╨░╨│╨╗╨░╨▓╨╕╨╡",
|
||||
"source": "╨Ъ╨╛╨┤",
|
||||
"stack": "╨б╤К╨▒╨╡╤А╨╕",
|
||||
"stack_action_prompt": "{count} ╤Б╨░ ╨│╤А╤Г╨┐╨╕╤А╨░╨╜╨╕",
|
||||
"stack_duplicates": "╨Я╨╛╨┤╤А╨╡╨╢╨┤╨░╨╜╨╡ ╨╜╨░ ╨┤╤Г╨▒╨╗╨╕╨║╨░╤В╨╕",
|
||||
"stack_select_one_photo": "╨Ш╨╖╨▒╨╡╤А╨╕ ╨╡╨┤╨╜╨░ ╨│╨╗╨░╨▓╨╜╨░ ╤Б╨╜╨╕╨╝╨║╨░ ╨╖╨░ ╤Б╤К╨▒╤А╨░╨╜╨╕╤В╨╡ ╤Б╨╜╨╕╨╝╨║╨╕",
|
||||
"stack_selected_photos": "╨Я╨╛╨┤╤А╨╡╨╢╨┤╨░╨╜╨╡ ╨╜╨░ ╨╕╨╖╨▒╤А╨░╨╜╨╕ ╤Б╨╜╨╕╨╝╨║╨╕",
|
||||
@@ -1838,6 +1866,7 @@
|
||||
"total": "╨Ю╨▒╤Й╨╛",
|
||||
"total_usage": "╨Ю╨▒╤Й╨╛ ╨╕╨╖╨┐╨╛╨╗╨╖╨▓╨░╨╜╨╛",
|
||||
"trash": "╨Ъ╨╛╤И╤З╨╡",
|
||||
"trash_action_prompt": "{count} ╤Б╨░ ╨┐╤А╨╡╨╝╨╡╤Б╤В╨╡╨╜╨╕ ╨▓ ╨║╨╛╤И╨░",
|
||||
"trash_all": "╨Ш╨╖╤Е╨▓╤К╤А╨╗╨╕ ╨▓╤Б╨╕╤З╨║╨╕",
|
||||
"trash_count": "╨Т ╨Ъ╨╛╤И╤З╨╡╤В╨╛ {count, number}",
|
||||
"trash_delete_asset": "╨Т╨║╨░╤А╨░╨╣ ╨▓ ╨Ъ╨╛╤И╤З╨╡╤В╨╛/╨Ш╨╖╤В╤А╨╕╨╣ ╨╡╨╗╨╡╨╝╨╡╨╜╤В",
|
||||
@@ -1855,9 +1884,11 @@
|
||||
"unable_to_change_pin_code": "╨Э╨╡╨▓╤К╨╖╨╝╨╛╨╢╨╜╨░ ╨┐╤А╨╛╨╝╤П╨╜╨░ ╨╜╨░ PIN ╨║╨╛╨┤╨░",
|
||||
"unable_to_setup_pin_code": "╨Э╨╡╤Г╤Б╨┐╨╡╤И╨╜╨╛ ╨╖╨░╨┤╨░╨▓╨░╨╜╨╡ ╨╜╨░ PIN ╨║╨╛╨┤╨░",
|
||||
"unarchive": "╨а╨░╨╖╨░╤А╤Е╨╕╨▓╨╕╤А╨░╨╣",
|
||||
"unarchive_action_prompt": "{count} ╤Б╨░ ╨┐╤А╨╡╨╝╨░╤Е╨╜╨░╤В╨╕ ╨╛╤В ╨Р╤А╤Е╨╕╨▓╨░",
|
||||
"unarchived_count": "{count, plural, other {╨Э╨╡╨░╤А╤Е╨╕╨▓╨╕╤А╨░╨╜╨╕ #}}",
|
||||
"undo": "╨Ю╤В╨╝╨╡╨╜╨╕",
|
||||
"unfavorite": "╨Я╤А╨╡╨╝╨░╤Е╨▓╨░╨╜╨╡ ╨╛╤В ╨╗╤О╨▒╨╕╨╝╨╕╤В╨╡",
|
||||
"unfavorite_action_prompt": "{count} ╤Б╨░ ╨┐╤А╨╡╨╝╨░╤Е╨╜╨░╤В╨╕ ╨╛╤В ╨Ы╤О╨▒╨╕╨╝╨╕",
|
||||
"unhide_person": "╨Я╨╛╨║╨░╨╢╨╕ ╨╛╤В╨╜╨╛╨▓╨╛ ╤З╨╛╨▓╨╡╨║╨░",
|
||||
"unknown": "╨Э╨╡╨╕╨╖╨▓╨╡╤Б╤В╨╜╨╛",
|
||||
"unknown_country": "╨Э╨╡╨┐╨╛╨╖╨╜╨░╤В╨░ ╨Ф╤К╤А╨╢╨░╨▓╨░",
|
||||
@@ -1875,7 +1906,9 @@
|
||||
"unselect_all_duplicates": "╨Ю╤В ╨╝╨░╤А╨║╨╕╤А╨░╨╣ ╨▓╤Б╨╕╤З╨║╨╕ ╨┤╤Г╨▒╨╗╨╕╨║╨░╤В╨╕",
|
||||
"unselect_all_in": "╨Я╤А╨╡╨╝╨░╤Е╨╜╨╕ ╨╕╨╖╨▒╨╛╤А╨░ ╨╜╨░ ╨▓╤Б╨╕╤З╨║╨╕ ╨╛╤В ╨│╤А╤Г╨┐╨░╤В╨░ {group}",
|
||||
"unstack": "╨а╨░╨╖╨║╨░╤З╨╕",
|
||||
"unstack_action_prompt": "{count} ╤Б╨░ ╤А╨░╨╖╨│╤А╤Г╨┐╨╕╤А╨░╨╜╨╕",
|
||||
"unstacked_assets_count": "╨а╨░╨╖╨║╨░╤З╨╡╨╜╨╕ {count, plural, one {# ╨╡╨╗╨╡╨╝╨╡╨╜╤В} other {# ╨╡╨╗╨╡╨╝╨╡╨╜╤В╨╕}}",
|
||||
"untagged": "╨Э╨╡╨╝╨░╤А╨║╨╕╤А╨░╨╜╨╕",
|
||||
"up_next": "╨б╨╗╨╡╨┤╨▓╨░╤Й",
|
||||
"updated_at": "╨Ю╨▒╨╜╨╛╨▓╨╡╨╜╨╛",
|
||||
"updated_password": "╨Я╨░╤А╨╛╨╗╨░╤В╨░ ╨╡ ╨░╨║╤В╤Г╨░╨╗╨╕╨╖╨╕╤А╨░╨╜╨░",
|
||||
|
||||
82
i18n/bn.json
82
i18n/bn.json
@@ -8,6 +8,7 @@
|
||||
"actions": "ржХрж░рзНржо",
|
||||
"active": "рж╕ржЪрж▓",
|
||||
"activity": "ржХрж╛рж░рзНржпржХрж▓рж╛ржк",
|
||||
"activity_changed": "ржПржХржЯрж┐ржнрж┐ржЯрж┐ ржПржЦржи {enabled, select, true {ржЪрж╛рж▓рзБ} other {ржмржирзНржз}} ржЖржЫрзЗ",
|
||||
"add": "ржпрзЛржЧ ржХрж░рзБржи",
|
||||
"add_a_description": "ржПржХржЯрж┐ ржмрж┐ржмрж░ржг ржпрзЛржЧ ржХрж░рзБржи",
|
||||
"add_a_location": "ржПржХржЯрж┐ ржЕржмрж╕рзНржерж╛ржи ржпрзЛржЧ ржХрж░рзБржи",
|
||||
@@ -15,5 +16,84 @@
|
||||
"add_a_title": "ржПржХржЯрж┐ рж╢рж┐рж░рзЛржирж╛ржо ржпрзЛржЧ ржХрж░рзБржи",
|
||||
"add_endpoint": "ржПржирзНржбржкржпрж╝рзЗржирзНржЯ ржпрзЛржЧ ржХрж░рзБржи",
|
||||
"add_exclusion_pattern": "ржмрж╣рж┐рж░рзНржнрзВрждржХрж░ржг ржиржорзБржирж╛",
|
||||
"add_url": "рж▓рж┐ржЩрзНржХ ржпрзЛржЧ ржХрж░рзБржи"
|
||||
"add_import_path": "ржЗржоржкрзЛрж░рзНржЯ ржХрж░рж╛рж░ ржкрж╛рже ржпрзБржХрзНржд ржХрж░рзБржи",
|
||||
"add_location": "ржЕржмрж╕рзНржерж╛ржи ржпрзБржХрзНржд ржХрж░рзБржи",
|
||||
"add_more_users": "ржЖрж░рзЛ ржмрзНржпржмрж╣рж╛рж░ржХрж╛рж░рзА ржпрзБржХрзНржд ржХрж░рзБржи",
|
||||
"add_partner": "ржЕржВрж╢рзАржжрж╛рж░ ржпрзЛржЧ ржХрж░рзБржи",
|
||||
"add_path": "ржкрж╛рже ржпрзБржХрзНржд ржХрж░рзБржи",
|
||||
"add_photos": "ржЫржмрж┐ ржпрзБржХрзНржд ржХрж░рзБржи",
|
||||
"add_tag": "ржЯрзНржпрж╛ржЧ ржпрзБржХрзНржд ржХрж░рзБржи",
|
||||
"add_to": "ржпрзБржХрзНржд ржХрж░рзБржитАж",
|
||||
"add_to_album": "ржПрж▓ржмрж╛ржо ржП ржпрзЛржЧ ржХрж░рзБржи",
|
||||
"add_to_album_bottom_sheet_added": "{album} ржП ржпрзЛржЧ ржХрж░рж╛ рж╣ржпрж╝рзЗржЫрзЗ",
|
||||
"add_to_album_bottom_sheet_already_exists": "{album} ржП ржЖржЧрзЗ ржерзЗржХрзЗржЗ ржЖржЫрзЗ",
|
||||
"add_to_shared_album": "рж╢рзЗржпрж╝рж╛рж░ ржХрж░рж╛ ржЕрзНржпрж╛рж▓ржмрж╛ржорзЗ ржпрзЛржЧ ржХрж░рзБржи",
|
||||
"add_url": "рж▓рж┐ржЩрзНржХ ржпрзЛржЧ ржХрж░рзБржи",
|
||||
"added_to_archive": "ржЖрж░рзНржХрж╛ржЗржн ржП ржпрзЛржЧ ржХрж░рж╛ рж╣ржпрж╝рзЗржЫрзЗ",
|
||||
"added_to_favorites": "ржлрзЗржнрж╛рж░рж┐ржЯрзЗ ржпрзЛржЧ ржХрж░рж╛ рж╣ржпрж╝рзЗржЫрзЗ",
|
||||
"added_to_favorites_count": "ржкржЫржирзНржжрзЗрж░ рждрж╛рж▓рж┐ржХрж╛рзЯ {count, number} ржпрзЛржЧ ржХрж░рж╛ рж╣рзЯрзЗржЫрзЗ",
|
||||
"admin": {
|
||||
"add_exclusion_pattern_description": "ржПржХрзНрж╕ржХрзНрж▓рзБрж╢ржи ржкрзНржпрж╛ржЯрж╛рж░рзНржи ржпрзЛржЧ ржХрж░рзБржиред *, **, ржПржмржВ ? ржмрзНржпржмрж╣рж╛рж░ ржХрж░рзЗ ржЧрзНрж▓рзЛржмрж┐ржВ ржХрж░рж╛ рж╕ржорзНржнржмред \"Raw\" ржирж╛ржорзЗрж░ ржпрзЗржХрзЛржирзЛ ржбрж┐рж░рзЗржХрзНржЯрж░рж┐рждрзЗ ржерж╛ржХрж╛ рж╕ржорж╕рзНржд ржлрж╛ржЗрж▓ ржмрж╛ржж ржжрж┐рждрзЗ \"**/Raw/**\" ржмрзНржпржмрж╣рж╛рж░ ржХрж░рзБржиред \".tif\" ржжрж┐ржпрж╝рзЗ рж╢рзЗрж╖ рж╣ржУржпрж╝рж╛ рж╕ржорж╕рзНржд ржлрж╛ржЗрж▓ ржмрж╛ржж ржжрж┐рждрзЗ \"**/*.tif\" ржмрзНржпржмрж╣рж╛рж░ ржХрж░рзБржиред ржПржХржЯрж┐ рж╕ржорзНржкрзВрж░рзНржг ржкрж╛рже ржмрж╛ржж ржжрж┐рждрзЗ, \"/path/to/ignore/**\" ржмрзНржпржмрж╣рж╛рж░ ржХрж░рзБржиред",
|
||||
"admin_user": "ржПржбржорж┐ржи ржЗржЙржЬрж╛рж░",
|
||||
"asset_offline_description": "ржПржЗ ржмрж╣рж┐рж░рж╛ржЧржд рж▓рж╛ржЗржмрзНрж░рзЗрж░рж┐ рж╕ржорзНржкржжржЯрж┐ ржЖрж░ ржбрж┐рж╕рзНржХрзЗ ржкрж╛ржУржпрж╝рж╛ ржпрж╛ржЪрзНржЫрзЗ ржирж╛ ржПржмржВ ржЯрзНрж░рзНржпрж╛рж╢рзЗ рж╕рж░рж╛ржирзЛ рж╣ржпрж╝рзЗржЫрзЗред ржпржжрж┐ ржлрж╛ржЗрж▓ржЯрж┐ рж▓рж╛ржЗржмрзНрж░рзЗрж░рж┐рж░ ржоржзрзНржпрзЗ рж╕рж░рж╛ржирзЛ рж╣ржпрж╝рзЗ ржерж╛ржХрзЗ, рждрж╛рж╣рж▓рзЗ ржирждрзБржи рж╕ржВрж╢рзНрж▓рж┐рж╖рзНржЯ рж╕ржорзНржкржжрзЗрж░ ржЬржирзНржп ржЖржкржирж╛рж░ ржЯрж╛ржЗржорж▓рж╛ржЗржи ржкрж░рзАржХрзНрж╖рж╛ ржХрж░рзБржиред ржПржЗ рж╕ржорзНржкржжржЯрж┐ ржкрзБржирж░рзБржжрзНржзрж╛рж░ ржХрж░рждрзЗ, ржжржпрж╝рж╛ ржХрж░рзЗ ржирж┐рж╢рзНржЪрж┐ржд ржХрж░рзБржи ржпрзЗ ржирзАржЪрзЗрж░ ржлрж╛ржЗрж▓ ржкрж╛ржержЯрж┐ Immich ржжрзНржмрж╛рж░рж╛ ржЕрзНржпрж╛ржХрзНрж╕рзЗрж╕ ржХрж░рж╛ ржпрзЗрждрзЗ ржкрж╛рж░рзЗ ржПржмржВ рж▓рж╛ржЗржмрзНрж░рзЗрж░рж┐ржЯрж┐ рж╕рзНржХрзНржпрж╛ржи ржХрж░рзБржиред",
|
||||
"authentication_settings": "ржкрзНрж░ржорж╛ржгрзАржХрж░ржг рж╕рзЗржЯрж┐ржВрж╕",
|
||||
"authentication_settings_description": "ржкрж╛рж╕ржУржпрж╝рж╛рж░рзНржб, OAuth ржПржмржВ ржЕржирзНржпрж╛ржирзНржп ржкрзНрж░ржорж╛ржгрзАржХрж░ржг рж╕рзЗржЯрж┐ржВрж╕ ржкрж░рж┐ржЪрж╛рж▓ржирж╛ ржХрж░рзБржи",
|
||||
"authentication_settings_disable_all": "ржЖржкржирж┐ ржХрж┐ ржирж┐рж╢рзНржЪрж┐ржд ржпрзЗ ржЖржкржирж┐ рж╕ржорж╕рзНржд рж▓ржЧржЗржи ржкржжрзНржзрждрж┐ ржЕржХрзНрж╖ржо ржХрж░рждрзЗ ржЪрж╛ржи? рж▓ржЧржЗржи рж╕ржорзНржкрзВрж░рзНржгрж░рзВржкрзЗ ржЕржХрзНрж╖ржо ржХрж░рж╛ рж╣ржмрзЗред",
|
||||
"authentication_settings_reenable": "ржкрзБржирж░рж╛ржпрж╝ рж╕ржХрзНрж╖ржо ржХрж░рждрзЗ, ржПржХржЯрж┐ <link>рж╕рж╛рж░рзНржнрж╛рж░ ржХржорж╛ржирзНржб</link> ржмрзНржпржмрж╣рж╛рж░ ржХрж░рзБржиред",
|
||||
"background_task_job": "ржмрзНржпрж╛ржХржЧрзНрж░рж╛ржЙржирзНржб ржЯрж╛рж╕рзНржХ",
|
||||
"backup_database": "ржбрж╛ржЯрж╛ржмрзЗрж╕ ржбрж╛ржорзНржк рждрзИрж░рж┐ ржХрж░рзБржи",
|
||||
"backup_database_enable_description": "ржбрж╛ржЯрж╛ржмрзЗрж╕ ржбрж╛ржорзНржк рж╕ржХрзНрж░рж┐ржпрж╝ ржХрж░рзБржи",
|
||||
"backup_keep_last_amount": "ржЖржЧрзЗрж░ ржбрж╛ржорзНржкрзЗрж░ ржкрж░рж┐ржорж╛ржг рж░рж╛ржЦрж╛ рж╣ржмрзЗ",
|
||||
"backup_settings": "ржбрж╛ржЯрж╛ржмрзЗрж╕ ржбрж╛ржорзНржк рж╕рзЗржЯрж┐ржВрж╕",
|
||||
"backup_settings_description": "ржбрж╛ржЯрж╛ржмрзЗрж╕ ржбрж╛ржорзНржк рж╕рзЗржЯрж┐ржВрж╕ ржкрж░рж┐ржЪрж╛рж▓ржирж╛ ржХрж░рзБржиред",
|
||||
"cleared_jobs": "{job} ржПрж░ ржЬржирзНржп jobs ржЦрж╛рж▓рж┐ ржХрж░рж╛ рж╣ржпрж╝рзЗржЫрзЗ",
|
||||
"config_set_by_file": "ржХржиржлрж┐ржЧ ржмрж░рзНрждржорж╛ржирзЗ ржПржХржЯрж┐ ржХржиржлрж┐ржЧ ржлрж╛ржЗрж▓ ржжрзНржмрж╛рж░рж╛ рж╕рзЗржЯ ржХрж░рж╛ ржЖржЫрзЗ",
|
||||
"confirm_delete_library": "ржЖржкржирж┐ ржХрж┐ ржирж┐рж╢рзНржЪрж┐ржд ржпрзЗ ржЖржкржирж┐ {library} рж▓рж╛ржЗржмрзНрж░рзЗрж░рж┐ ржорзБржЫрзЗ ржлрзЗрж▓рждрзЗ ржЪрж╛ржи?",
|
||||
"confirm_delete_library_assets": "ржЖржкржирж┐ ржХрж┐ ржирж┐рж╢рзНржЪрж┐ржд ржпрзЗ ржЖржкржирж┐ ржПржЗ рж▓рж╛ржЗржмрзНрж░рзЗрж░рж┐ржЯрж┐ ржорзБржЫрзЗ ржлрзЗрж▓рждрзЗ ржЪрж╛ржи? ржПржЯрж┐ Immich ржерзЗржХрзЗ {count, plural, one {# contained asset} other {all # contained asset}} ржорзБржЫрзЗ ржлрзЗрж▓ржмрзЗ ржПржмржВ ржкрзВрж░рзНржмрж╛ржмрж╕рзНржерж╛ржпрж╝ ржлрзЗрж░рж╛ржирзЛ ржпрж╛ржмрзЗ ржирж╛ред ржлрж╛ржЗрж▓ржЧрзБрж▓рж┐ ржбрж┐рж╕рзНржХрзЗ ржерж╛ржХржмрзЗред",
|
||||
"confirm_email_below": "ржирж┐рж╢рзНржЪрж┐ржд ржХрж░рждрзЗ, ржирж┐ржЪрзЗ \"{email}\" ржЯрж╛ржЗржк ржХрж░рзБржи",
|
||||
"confirm_reprocess_all_faces": "ржЖржкржирж┐ ржХрж┐ ржирж┐рж╢рзНржЪрж┐ржд ржпрзЗ ржЖржкржирж┐ рж╕ржорж╕рзНржд ржорзБржЦ ржкрзБржирж░рж╛ржпрж╝ ржкрзНрж░ржХрзНрж░рж┐ржпрж╝рж╛ ржХрж░рждрзЗ ржЪрж╛ржи? ржПржЯрж┐ ржирж╛ржоржпрзБржХрзНржд ржмрзНржпржХрзНрждрж┐ржжрзЗрж░ржУ ржорзБржЫрзЗ ржлрзЗрж▓ржмрзЗред",
|
||||
"confirm_user_password_reset": "ржЖржкржирж┐ ржХрж┐ ржирж┐рж╢рзНржЪрж┐ржд ржпрзЗ ржЖржкржирж┐ {user} ржПрж░ ржкрж╛рж╕ржУржпрж╝рж╛рж░рзНржб рж░рж┐рж╕рзЗржЯ ржХрж░рждрзЗ ржЪрж╛ржи?",
|
||||
"confirm_user_pin_code_reset": "ржЖржкржирж┐ ржХрж┐ ржирж┐рж╢рзНржЪрж┐ржд ржпрзЗ ржЖржкржирж┐ {user} ржПрж░ ржкрж┐ржи ржХрзЛржб рж░рж┐рж╕рзЗржЯ ржХрж░рждрзЗ ржЪрж╛ржи?",
|
||||
"create_job": "job рждрзИрж░рж┐ ржХрж░рзБржи",
|
||||
"cron_expression": "ржХрзНрж░рзЛржи ржПржХрзНрж╕ржкрзНрж░рзЗрж╢ржи",
|
||||
"cron_expression_description": "ржХрзНрж░рзЛржи ржлрж░рзНржорзНржпрж╛ржЯ ржмрзНржпржмрж╣рж╛рж░ ржХрж░рзЗ рж╕рзНржХрзНржпрж╛ржирж┐ржВ ржмрзНржпржмржзрж╛ржи рж╕рзЗржЯ ржХрж░рзБржиред ржЖрж░ржУ рждржерзНржпрзЗрж░ ржЬржирзНржп ржжржпрж╝рж╛ ржХрж░рзЗ ржжрзЗржЦрзБржи ржпрзЗржоржи <link>Crontab Guru</link>",
|
||||
"cron_expression_presets": "ржХрзНрж░рзЛржи ржПржХрзНрж╕ржкрзНрж░рзЗрж╢ржи ржкрзНрж░рж┐рж╕рзЗржЯ",
|
||||
"disable_login": "рж▓ржЧржЗржи ржЕржХрзНрж╖ржо ржХрж░рзБржи",
|
||||
"duplicate_detection_job_description": "ржЕржирзБрж░рзВржк ржЫржмрж┐ рж╕ржирж╛ржХрзНржд ржХрж░рждрзЗ рж╕ржорзНржкржжржЧрзБрж▓рж┐рждрзЗ ржорзЗрж╢рж┐ржи рж▓рж╛рж░рзНржирж┐ржВ ржЪрж╛рж▓рж╛ржиред рж╕рзНржорж╛рж░рзНржЯ ржЕржирзБрж╕ржирзНржзрж╛ржирзЗрж░ ржЙржкрж░ ржирж┐рж░рзНржнрж░ ржХрж░рзЗ",
|
||||
"exclusion_pattern_description": "ржПржХрзНрж╕ржХрзНрж▓рзБрж╢ржи ржкрзНржпрж╛ржЯрж╛рж░рзНржи ржмрзНржпржмрж╣рж╛рж░ ржХрж░рзЗ ржЖржкржирж┐ ржЖржкржирж╛рж░ рж▓рж╛ржЗржмрзНрж░рзЗрж░рж┐ рж╕рзНржХрзНржпрж╛ржи ржХрж░рж╛рж░ рж╕ржоржпрж╝ ржлрж╛ржЗрж▓ ржПржмржВ ржлрзЛрж▓рзНржбрж╛рж░ржЧрзБрж▓рж┐ржХрзЗ ржЙржкрзЗржХрзНрж╖рж╛ ржХрж░рждрзЗ ржкрж╛рж░ржмрзЗржиред ржпржжрж┐ ржЖржкржирж╛рж░ ржПржоржи ржлрзЛрж▓рзНржбрж╛рж░ ржерж╛ржХрзЗ ржпрзЗржЦрж╛ржирзЗ ржПржоржи ржлрж╛ржЗрж▓ ржерж╛ржХрзЗ ржпрж╛ ржЖржкржирж┐ ржЖржоржжрж╛ржирж┐ ржХрж░рждрзЗ ржЪрж╛ржи ржирж╛, ржпрзЗржоржи RAW ржлрж╛ржЗрж▓ред",
|
||||
"external_library_management": "ржмрж╣рж┐рж░рж╛ржЧржд ржЧрзНрж░ржирзНржерж╛ржЧрж╛рж░ ржмрзНржпржмрж╕рзНржерж╛ржкржирж╛",
|
||||
"face_detection": "ржорзБржЦ рж╕ржирж╛ржХрзНрждржХрж░ржг",
|
||||
"face_detection_description": "ржорзЗрж╢рж┐ржи рж▓рж╛рж░рзНржирж┐ржВ ржмрзНржпржмрж╣рж╛рж░ ржХрж░рзЗ ржЕрзНржпрж╛рж╕рзЗржЯрзЗ ржерж╛ржХрж╛ ржорзБржЦ/ржЪрзЗрж╣рж╛рж░рж╛ ржЧрзБрж▓рж┐ рж╕ржирж╛ржХрзНржд ржХрж░рзБржиред ржнрж┐ржбрж┐ржУ ржЧрзБрж▓рж┐рж░ ржЬржирзНржп, рж╢рзБржзрзБржорж╛рждрзНрж░ ржерж╛ржорзНржмржирзЗржЗрж▓ ржмрж┐ржмрзЗржЪржирж╛ ржХрж░рж╛ рж╣ржпрж╝ред \"рж░рж┐ржлрзНрж░рзЗрж╢\" (ржкрзБржирж░рж╛ржпрж╝) рж╕ржорж╕рзНржд ржЕрзНржпрж╛рж╕рзЗржЯ ржкрзНрж░ржХрзНрж░рж┐ржпрж╝рж╛ ржХрж░рзЗред \"рж░рж┐рж╕рзЗржЯ\" ржХрж░рж╛рж░ ржорж╛ржзрзНржпржорзЗ ржЕрждрж┐рж░рж┐ржХрзНрждржнрж╛ржмрзЗ рж╕ржорж╕рзНржд ржмрж░рзНрждржорж╛ржи ржорзБржЦрзЗрж░ ржбрзЗржЯрж╛ рж╕рж╛ржл ржХрж░рзЗред \"ржЕржирзБржкрж╕рзНржерж┐ржд\" ржЕрзНржпрж╛рж╕рзЗржЯржЧрзБрж▓рж┐ржХрзЗ рж╕рж╛рж░рж┐ржмржжрзНржз ржХрж░рзЗ ржпрж╛ ржПржЦржиржУ ржкрзНрж░ржХрзНрж░рж┐ржпрж╝рж╛ ржХрж░рж╛ рж╣ржпрж╝ржирж┐ред рж╕ржирж╛ржХрзНржд ржХрж░рж╛ ржорзБржЦржЧрзБрж▓рж┐ржХрзЗ ржлрзЗрж╕рж┐ржпрж╝рж╛рж▓ рж░рж┐ржХржЧржирж┐рж╢ржирзЗрж░ ржЬржирзНржп рж╕рж╛рж░рж┐ржмржжрзНржз ржХрж░рж╛ рж╣ржмрзЗ, ржлрзЗрж╕рж┐ржпрж╝рж╛рж▓ ржбрж┐ржЯрзЗржХрж╢ржи рж╕ржорзНржкрзВрж░рзНржг рж╣ржУржпрж╝рж╛рж░ ржкрж░рзЗ, ржмрж┐ржжрзНржпржорж╛ржи ржмрж╛ ржирждрзБржи ржмрзНржпржХрзНрждрж┐ржжрзЗрж░ ржоржзрзНржпрзЗ ржЧрзЛрж╖рзНржарзАржмржжрзНржз ржХрж░рзЗред",
|
||||
"facial_recognition_job_description": "рж╢ржирж╛ржХрзНржд ржХрж░рж╛ ржорзБржЦржЧрзБрж▓рж┐ржХрзЗ ржорж╛ржирзБрж╖рзЗрж░ ржоржзрзНржпрзЗ ржЧрзЛрж╖рзНржарзАржнрзБржХрзНржд ржХрж░рзБржиред ржорзБржЦ рж╕ржирж╛ржХрзНрждржХрж░ржг рж╕ржорзНржкрзВрж░рзНржг рж╣ржУржпрж╝рж╛рж░ ржкрж░рзЗ ржПржЗ ржзрж╛ржкржЯрж┐ ржЪрж▓рзЗред \"рж░рж┐рж╕рзЗржЯ\" (ржкрзБржирж░рж╛ржпрж╝) рж╕ржорж╕рзНржд ржорзБржЦржХрзЗ ржХрзНрж▓рж╛рж╕рзНржЯрж╛рж░ ржХрж░рзЗред \"ржЕржирзБржкрж╕рзНржерж┐ржд\" ржорзБржЦржЧрзБрж▓рж┐ржХрзЗ рж╕рж╛рж░рж┐рждрзЗ рж░рж╛ржЦрзЗ ржпрзЗржЦрж╛ржирзЗ ржХрзЛржиржУ ржмрзНржпржХрзНрждрж┐ржХрзЗ ржмрж░рж╛ржжрзНржж ржХрж░рж╛ рж╣ржпрж╝ржирж┐ред",
|
||||
"failed_job_command": "ржХржорж╛ржирзНржб {command} ржХрж╛ржЬрзЗрж░ ржЬржирзНржп ржмрзНржпрж░рзНрже рж╣ржпрж╝рзЗржЫрзЗ: {job}",
|
||||
"force_delete_user_warning": "рж╕рждрж░рзНржХрждрж╛: ржПржЯрж┐ ржмрзНржпржмрж╣рж╛рж░ржХрж╛рж░рзА ржПржмржВ рж╕ржорж╕рзНржд рж╕ржорзНржкржж ржЕржмрж┐рж▓ржорзНржмрзЗ рж╕рж░рж┐ржпрж╝рзЗ ржлрзЗрж▓ржмрзЗред ржПржЯрж┐ ржкрзВрж░рзНржмрж╛ржмрж╕рзНржерж╛ржпрж╝ ржлрзЗрж░рж╛ржирзЛ ржпрж╛ржмрзЗ ржирж╛ ржПржмржВ ржлрж╛ржЗрж▓ржЧрзБрж▓рж┐ ржкрзБржирж░рзБржжрзНржзрж╛рж░ ржХрж░рж╛ ржпрж╛ржмрзЗ ржирж╛ред",
|
||||
"image_format": "ржлрж░ржорзНржпрж╛ржЯ",
|
||||
"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_wide_gamut": "ржкрзНрж░рж╢рж╕рзНржд ржкрж░рж┐рж╕рж░ ржкржЫржирзНржж ржХрж░рзБржи",
|
||||
"image_prefer_wide_gamut_setting_description": "ржерж╛ржорзНржмржирзЗржЗрж▓рзЗрж░ ржЬржирзНржп ржбрж┐рж╕ржкрзНрж▓рзЗ 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": "рждрзИрж░рж┐ ржХрж░рж╛ ржЫржмрж┐рж░ ржорж╛ржи ржПржмржВ рж░рзЗржЬрзЛрж▓рж┐ржЙрж╢ржи ржкрж░рж┐ржЪрж╛рж▓ржирж╛ ржХрж░рзБржи",
|
||||
"image_thumbnail_description": "ржорзЗржЯрж╛ржбрзЗржЯрж╛ ржмрж╛ржж ржжрзЗржУрзЯрж╛ ржЫрзЛржЯ ржерж╛ржорзНржмржирзЗржЗрж▓, ржорзВрж▓ ржЯрж╛ржЗржорж▓рж╛ржЗржирзЗрж░ ржорждрзЛ ржЫржмрж┐рж░ ржЧрзНрж░рзБржк ржжрзЗржЦрж╛рж░ рж╕ржоржпрж╝ ржмрзНржпржмрж╣рзГржд рж╣рзЯ",
|
||||
"image_thumbnail_quality_description": "ржерж╛ржорзНржмржирзЗржЗрж▓рзЗрж░ ржорж╛ржи рзз-рззрзжрзжред ржмрзЗрж╢рж┐ рж╣рж▓рзЗ ржнрж╛рж▓рзЛ, ржХрж┐ржирзНрждрзБ ржмржбрж╝ ржлрж╛ржЗрж▓ рждрзИрж░рж┐ рж╣ржпрж╝ ржПржмржВ ржЕрзНржпрж╛ржкрзЗрж░ ржкрзНрж░рждрж┐ржХрзНрж░рж┐ржпрж╝рж╛рж╢рзАрж▓рждрж╛ ржХржорж╛рждрзЗ ржкрж╛рж░рзЗред",
|
||||
"image_thumbnail_title": "ржерж╛ржорзНржмржирзЗрж▓ рж╕рзЗржЯрж┐ржВрж╕",
|
||||
"job_concurrency": "{job} ржХржиржХрж╛рж░рзЗржирзНрж╕рж┐",
|
||||
"job_created": "Job рждрзИрж░рж┐ рж╣ржпрж╝рзЗржЫрзЗ",
|
||||
"job_not_concurrency_safe": "ржПржЗ ржХрж╛ржЬржЯрж┐ рж╕ржоржХрж╛рж▓рзАржи-ржирж┐рж░рж╛ржкржж ржиржпрж╝ред",
|
||||
"job_settings": "ржХрж╛ржЬрзЗрж░ рж╕рзЗржЯрж┐ржВрж╕",
|
||||
"job_settings_description": "ржХрж╛ржЬрзЗрж░ рж╕ржорж╛ржирзНрждрж░рж╛рж▓рждрж╛ ржкрж░рж┐ржЪрж╛рж▓ржирж╛ ржХрж░рзБржи",
|
||||
"job_status": "ржЪрж╛ржХрж░рж┐рж░ ржЕржмрж╕рзНржерж╛"
|
||||
}
|
||||
}
|
||||
|
||||
27
i18n/ca.json
27
i18n/ca.json
@@ -166,6 +166,10 @@
|
||||
"metadata_settings_description": "Administrar la configuraci├│ de les metadades",
|
||||
"migration_job": "Migraci├│",
|
||||
"migration_job_description": "Migra les miniatures d'elements i cares cap a la nova estructura de carpetes",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Agrupa cares noves",
|
||||
"nightly_tasks_database_cleanup_setting": "Tasques de neteja de la base de dades",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Netegeu les dades antigues i caducades de la base de dades",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Generar les miniatures restants",
|
||||
"no_paths_added": "No s'ha afegit cap ruta",
|
||||
"no_pattern_added": "Cap patr├│ aplicat",
|
||||
"note_apply_storage_label_previous_assets": "Nota: Per aplicar l'etiquetatge d'emmagatzematge a elements pujats pr├иviament, executeu la",
|
||||
@@ -196,6 +200,8 @@
|
||||
"oauth_mobile_redirect_uri": "URI de redirecci├│ m├▓bil",
|
||||
"oauth_mobile_redirect_uri_override": "Sobreescriu l'URI de redirecci├│ m├▓bil",
|
||||
"oauth_mobile_redirect_uri_override_description": "Habilita quan el prove├пdor d'OAuth no permet una URI m├▓bil, com ara ''{callback}''",
|
||||
"oauth_role_claim": "Concessi├│ de rol",
|
||||
"oauth_role_claim_description": "Atorgar acc├йs d'administrador autom├аticament segons la pres├иncia d'aquesta concessi├│. La concessi├│ pot ser 'usuari' o 'admin'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "Gestiona la configuraci├│ de l'inici de sessi├│ OAuth",
|
||||
"oauth_settings_more_details": "Per a m├йs detalls sobre aquesta funcionalitat, consulteu la <link>documentaci├│</link>.",
|
||||
@@ -244,6 +250,7 @@
|
||||
"storage_template_migration_info": "Les extensions es convertiran a min├║scules. Els canvis de plantilla nom├йs s'aplicaran a nous elements. Per aplicar la plantilla rectroactivament a elements pujats pr├иviament, executeu la <link>{job}</link>.",
|
||||
"storage_template_migration_job": "Tasca de migraci├│ de la plantilla d'emmagatzematge",
|
||||
"storage_template_more_details": "Per obtenir m├йs detalls sobre aquesta funci├│, consulteu la <template-link>Storage Template</template-link> i les seves <implications-link>implications</implications-link>",
|
||||
"storage_template_onboarding_description_v2": "Un cop habilitada, aquesta funci├│ organitzar├а autom├аticament els fitxers a partir d'una plantilla definida per l'usuari. Per a m├йs informaci├│, podeu consultar la <link>documentaci├│</link>.",
|
||||
"storage_template_path_length": "L├нmit aproximat de longitud de la ruta: <b>{length, number}</b>/{limit, number}",
|
||||
"storage_template_settings": "Plantilla d'emmagatzematge",
|
||||
"storage_template_settings_description": "Gestiona l'estructura de les carpetes i el nom del fitxers dels elements pujats",
|
||||
@@ -359,7 +366,7 @@
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Feu servir aquesta opci├│ per filtrar els continguts multim├иdia durant la sincronitzaci├│ segons criteris alternatius. Nom├йs proveu-ho si teniu problemes amb l'aplicaci├│ per detectar tots els ├аlbums.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "Utilitza el filtre de sincronitzaci├│ d'├аlbums de dispositius alternatius",
|
||||
"advanced_settings_log_level_title": "Nivell de registre: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "Alguns dispositius s├│n molt lents en carregar miniatures dels elements del dispositiu. Activeu aquest par├аmetre per carregar imatges remotes en el seu lloc.",
|
||||
"advanced_settings_prefer_remote_subtitle": "Alguns dispositius s├│n molt lents en carregar miniatures dels elements locals. Activeu aquest par├аmetre per carregar imatges remotes en el seu lloc.",
|
||||
"advanced_settings_prefer_remote_title": "Prefereix imatges remotes",
|
||||
"advanced_settings_proxy_headers_subtitle": "Definiu les cap├зaleres de proxy que Immich per enviar amb cada sol┬╖licitud de xarxa",
|
||||
"advanced_settings_proxy_headers_title": "Cap├зaleres de proxy",
|
||||
@@ -426,6 +433,7 @@
|
||||
"app_settings": "Configuraci├│ de l'app",
|
||||
"appears_in": "Apareix a",
|
||||
"archive": "Arxiu",
|
||||
"archive_action_prompt": "{count} afegit a Arxiu",
|
||||
"archive_or_unarchive_photo": "Arxivar o desarxivar fotografia",
|
||||
"archive_page_no_archived_assets": "No s'ha trobat res arxivat",
|
||||
"archive_page_title": "Arxiu({count})",
|
||||
@@ -463,7 +471,6 @@
|
||||
"assets": "Elements",
|
||||
"assets_added_count": "{count, plural, one {Afegit un element} other {Afegits # elements}}",
|
||||
"assets_added_to_album_count": "{count, plural, one {Afegit un element} other {Afegits # elements}} a l'├аlbum",
|
||||
"assets_added_to_name_count": "{count, plural, one {S'ha afegit # recurs} other {S'han afegit # recursos}} a {hasName, select, true {<b>{name}</b>} other {new album}}",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Asset} other {Assets}} no es pot afegir a l'├аlbum",
|
||||
"assets_count": "{count, plural, one {# recurs} other {# recursos}}",
|
||||
"assets_deleted_permanently": "{count} element(s) esborrats permanentment",
|
||||
@@ -489,6 +496,7 @@
|
||||
"back_close_deselect": "Tornar, tancar o anul┬╖lar la selecci├│",
|
||||
"background_location_permission": "Perm├нs d'ubicaci├│ en segon pla",
|
||||
"background_location_permission_content": "Per canviar de xarxa quan s'executa en segon pla, Immich ha de *sempre* tenir acc├йs a la ubicaci├│ precisa perqu├и l'aplicaci├│ pugui llegir el nom de la xarxa Wi-Fi",
|
||||
"backup": "C├▓pia",
|
||||
"backup_album_selection_page_albums_device": "├Аlbums al dispositiu ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Un toc per incloure, doble toc per excloure",
|
||||
"backup_album_selection_page_assets_scatter": "Els elements poden dispersar-se en diversos ├аlbums. Per tant, els ├аlbums es poden incloure o excloure durant el proc├йs de c├▓pia de seguretat.",
|
||||
@@ -702,7 +710,7 @@
|
||||
"daily_title_text_date": "E, dd MMM",
|
||||
"daily_title_text_date_year": "E, dd MMM, yyyy",
|
||||
"dark": "Fosc",
|
||||
"darkTheme": "Activa/desactiva el tema fosc",
|
||||
"dark_theme": "Canviar a tema fosc",
|
||||
"date_after": "Data posterior a",
|
||||
"date_and_time": "Data i hora",
|
||||
"date_before": "Data anterior a",
|
||||
@@ -718,6 +726,7 @@
|
||||
"default_locale": "Localitzaci├│ predeterminada",
|
||||
"default_locale_description": "Format de dates i n├║meros segons la configuraci├│ del navegador",
|
||||
"delete": "Esborra",
|
||||
"delete_action_prompt": "{count} eliminats permanentment",
|
||||
"delete_album": "Esborra l'├аlbum",
|
||||
"delete_api_key_prompt": "Esteu segurs que voleu eliminar aquesta clau API?",
|
||||
"delete_dialog_alert": "Aquests elements seran eliminats de manera permanent d'Immich i del vostre dispositiu",
|
||||
@@ -798,6 +807,7 @@
|
||||
"edit_key": "Edita clau",
|
||||
"edit_link": "Edita enlla├з",
|
||||
"edit_location": "Edita ubicaci├│",
|
||||
"edit_location_action_prompt": "{count} ubicacions editades",
|
||||
"edit_location_dialog_title": "Ubicaci├│",
|
||||
"edit_name": "Edita el nom",
|
||||
"edit_people": "Edita la gent",
|
||||
@@ -983,6 +993,7 @@
|
||||
"failed_to_load_assets": "Error carregant recursos",
|
||||
"failed_to_load_folder": "No s'ha pogut carregar la carpeta",
|
||||
"favorite": "Preferit",
|
||||
"favorite_action_prompt": "{count} afegit a Favorits",
|
||||
"favorite_or_unfavorite_photo": "Foto preferida o no preferida",
|
||||
"favorites": "Preferits",
|
||||
"favorites_page_no_favorites": "No s'han trobat preferits",
|
||||
@@ -1129,7 +1140,6 @@
|
||||
"light": "Llum",
|
||||
"like_deleted": "M'agrada suprimit",
|
||||
"link_motion_video": "Enlla├зar v├нdeo en moviment",
|
||||
"link_options": "Opcions d'enlla├з",
|
||||
"link_to_oauth": "Enlla├з a OAuth",
|
||||
"linked_oauth_account": "Compte OAuth enlla├зat",
|
||||
"list": "Llista",
|
||||
@@ -1149,6 +1159,7 @@
|
||||
"locked_folder": "Carpeta bloquejada",
|
||||
"log_out": "Tanca la sessi├│",
|
||||
"log_out_all_devices": "Tanqueu la sessi├│ de tots els dispositius",
|
||||
"logged_in_as": "Sessi├│ iniciada com a {user}",
|
||||
"logged_out_all_devices": "S'ha tancat la sessi├│ de tots els dispositius",
|
||||
"logged_out_device": "Dispositiu tancat",
|
||||
"login": "Iniciar sessi├│",
|
||||
@@ -1191,7 +1202,6 @@
|
||||
"manage_your_devices": "Gestioneu els vostres dispositius connectats",
|
||||
"manage_your_oauth_connection": "Gestioneu la vostra connexi├│ OAuth",
|
||||
"map": "Mapa",
|
||||
"map_assets_in_bound": "{count} foto",
|
||||
"map_assets_in_bounds": "{count} fotos",
|
||||
"map_cannot_get_user_location": "No es pot obtenir la ubicaci├│ de l'usuari",
|
||||
"map_location_dialog_yes": "S├н",
|
||||
@@ -1244,6 +1254,7 @@
|
||||
"more": "M├йs",
|
||||
"move": "Moure",
|
||||
"move_off_locked_folder": "Moure fora de la carpeta bloquejada",
|
||||
"move_to_lock_folder_action_prompt": "{count} afegides a la carpeta protegida",
|
||||
"move_to_locked_folder": "Moure a la carpeta bloquejada",
|
||||
"move_to_locked_folder_confirmation": "Aquestes fotos i v├нdeos seran eliminades de tots els ├аlbums, i nom├йs podran ser vistes des de la carpeta bloquejada",
|
||||
"moved_to_archive": "S'han mogut {count, plural, one {# asset} other {# assets}} a l'arxiu",
|
||||
@@ -1494,6 +1505,7 @@
|
||||
"remove_deleted_assets": "Suprimeix fitxers fora de l├нnia",
|
||||
"remove_from_album": "Treu de l'├аlbum",
|
||||
"remove_from_favorites": "Eliminar dels preferits",
|
||||
"remove_from_lock_folder_action_prompt": "{count} eliminades de la carpeta protegida",
|
||||
"remove_from_locked_folder": "Elimina de la carpeta bloquejada",
|
||||
"remove_from_locked_folder_confirmation": "Segur que vols moure aquestes fotos i v├нdeos fora de la carpeta bloquejada? Seran visibles a la teva biblioteca.",
|
||||
"remove_from_shared_link": "Eliminar de l'enlla├з compartit",
|
||||
@@ -1606,6 +1618,7 @@
|
||||
"select_album_cover": "Seleccionar la portada de l'├аlbum",
|
||||
"select_all": "Selecciona-ho tot",
|
||||
"select_all_duplicates": "Seleccioneu tots els duplicats",
|
||||
"select_all_in": "Selecciona tot en {group}",
|
||||
"select_avatar_color": "Tria color de l'avatar",
|
||||
"select_face": "Selecciona cara",
|
||||
"select_featured_photo": "Selecciona foto principal",
|
||||
@@ -1835,6 +1848,7 @@
|
||||
"total": "Total",
|
||||
"total_usage": "├Ъs total",
|
||||
"trash": "Paperera",
|
||||
"trash_action_prompt": "{count} mogudes a la brossa",
|
||||
"trash_all": "Envia-ho tot a la paperera",
|
||||
"trash_count": "Paperera {count, number}",
|
||||
"trash_delete_asset": "Esborra/Elimina element",
|
||||
@@ -1852,9 +1866,11 @@
|
||||
"unable_to_change_pin_code": "No es pot canviar el codi PIN",
|
||||
"unable_to_setup_pin_code": "No s'ha pogut configurar el codi PIN",
|
||||
"unarchive": "Desarxivar",
|
||||
"unarchive_action_prompt": "{count} eliminades de l'arxiu",
|
||||
"unarchived_count": "{count, plural, other {# elements desarxivats}}",
|
||||
"undo": "Desfer",
|
||||
"unfavorite": "Reverteix preferit",
|
||||
"unfavorite_action_prompt": "{count} eliminades de preferits",
|
||||
"unhide_person": "Mostra persona",
|
||||
"unknown": "Desconegut",
|
||||
"unknown_country": "Pa├нs Desconegut",
|
||||
@@ -1870,6 +1886,7 @@
|
||||
"unsaved_change": "Canvi no desat",
|
||||
"unselect_all": "Deselecciona-ho tot",
|
||||
"unselect_all_duplicates": "Desmarqueu tots els duplicats",
|
||||
"unselect_all_in": "Desseleccionar tots els elements de {group}",
|
||||
"unstack": "Desapila",
|
||||
"unstacked_assets_count": "No apilat {count, plural, one {# recurs} other {# recursos}}",
|
||||
"up_next": "Pr├▓xim",
|
||||
|
||||
123
i18n/cs.json
123
i18n/cs.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "P┼Щidat polohu",
|
||||
"add_a_name": "P┼Щidat jm├йno",
|
||||
"add_a_title": "P┼Щidat n├бzev",
|
||||
"add_birthday": "P┼Щidat datum narozen├н",
|
||||
"add_endpoint": "P┼Щidat koncov├╜ bod",
|
||||
"add_exclusion_pattern": "P┼Щidat vzor vylou─Нen├н",
|
||||
"add_import_path": "P┼Щidat cestu importu",
|
||||
@@ -44,7 +45,14 @@
|
||||
"backup_database": "Vytvo┼Щit v├╜pis datab├бze",
|
||||
"backup_database_enable_description": "Povolit v├╜pisy z datab├бze",
|
||||
"backup_keep_last_amount": "Po─Нet p┼Щedchoz├нch v├╜pis┼п, kter├й se maj├н ponechat",
|
||||
"backup_settings": "Nastaven├н v├╜pisu datab├бze",
|
||||
"backup_onboarding_1_description": "kopie v cloudu nebo na jin├йm fyzick├йm m├нst─Ы.",
|
||||
"backup_onboarding_2_description": "m├нstn├н kopie na r┼пzn├╜ch za┼Щ├нzen├нch. To zahrnuje hlavn├н soubory a jejich m├нstn├н z├бlohu.",
|
||||
"backup_onboarding_3_description": "kompletn├н kopie va┼бich dat, v─Нetn─Ы p┼пvodn├нch soubor┼п. To zahrnuje 1 kopii na jin├йm m├нst─Ы a 2 m├нstn├н kopie.",
|
||||
"backup_onboarding_description": "K ochran─Ы va┼бich dat doporu─Нujeme strategii z├бlohov├бn├н <backblaze-link>3-2-1</backblaze-link>. Pro komplexn├н z├бlohov├бn├н byste m─Ыli uchov├бvat kopie nahran├╜ch fotografi├н/vide├н i datab├бze Immich.",
|
||||
"backup_onboarding_footer": "Dal┼б├н informace o z├бlohov├бn├н Immiche naleznete v <link>dokumentaci</link>.",
|
||||
"backup_onboarding_parts_title": "Z├бloha 3-2-1 zahrnuje:",
|
||||
"backup_onboarding_title": "Z├бlohy",
|
||||
"backup_settings": "Z├бlohov├бn├н datab├бze",
|
||||
"backup_settings_description": "Spr├бva nastaven├н v├╜pisu datab├бze.",
|
||||
"cleared_jobs": "Hotov├й ├║lohy pro: {job}",
|
||||
"config_set_by_file": "Konfigurace je aktu├бln─Ы prov├бd─Ыna konfigura─Нn├нm souborem",
|
||||
@@ -166,6 +174,20 @@
|
||||
"metadata_settings_description": "Spr├бva nastaven├н metadat",
|
||||
"migration_job": "Migrace",
|
||||
"migration_job_description": "Migrace miniatur sn├нmk┼п a obli─Нej┼п do nejnov─Ыj┼б├н struktury slo┼╛ek",
|
||||
"nightly_tasks_cluster_faces_setting_description": "Spustit rozpozn├бv├бn├н obli─Нeje na nov─Ы nalezen├╜ch obli─Нej├нch",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Seskupit nov├й tv├б┼Щe",
|
||||
"nightly_tasks_database_cleanup_setting": "├Ъlohy ─Нi┼бt─Ыn├н datab├бze",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Vy─Нistit datab├бzi od star├╜ch dat, jejich┼╛ platnost vypr┼бela",
|
||||
"nightly_tasks_generate_memories_setting": "Vytv├б┼Щen├н vzpom├нnek",
|
||||
"nightly_tasks_generate_memories_setting_description": "Vytv├б┼Щen├н nov├╜ch vzpom├нnek z polo┼╛ek",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Generovat chyb─Ыj├нc├н miniatury",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "┼Шadit polo┼╛ky bez miniatur do fronty pro generov├бn├н miniatur",
|
||||
"nightly_tasks_settings": "No─Нn├н ├║lohy",
|
||||
"nightly_tasks_settings_description": "Spr├бva no─Нn├нch ├║kol┼п",
|
||||
"nightly_tasks_start_time_setting": "─Мas zah├бjen├н",
|
||||
"nightly_tasks_start_time_setting_description": "─Мas, kdy server spust├н no─Нn├н ├║lohy",
|
||||
"nightly_tasks_sync_quota_usage_setting": "Synchronizace vyu┼╛it├н kv├│ty",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "Aktualizovat kv├│tu ├║lo┼╛i┼бt─Ы u┼╛ivatele na z├бklad─Ы aktu├бln├нho vyu┼╛it├н",
|
||||
"no_paths_added": "Nebyly p┼Щid├бny ┼╛├бdn├й cesty",
|
||||
"no_pattern_added": "Nebyl p┼Щid├бn ┼╛├бdn├╜ vzor",
|
||||
"note_apply_storage_label_previous_assets": "Upozorn─Ыn├н: Pro uplatn─Ыn├н ┼аt├нtku ├║lo┼╛i┼бt─Ы na d┼Щ├нve nahran├й polo┼╛ky spus┼еte",
|
||||
@@ -196,6 +218,8 @@
|
||||
"oauth_mobile_redirect_uri": "Mobiln├н p┼Щesm─Ыrov├бn├н URI",
|
||||
"oauth_mobile_redirect_uri_override": "P┼Щepsat mobiln├н p┼Щesm─Ыrov├бn├н URI",
|
||||
"oauth_mobile_redirect_uri_override_description": "Povolit, pokud poskytovatel OAuth nepovoluje mobiln├н URI, nap┼Щ├нklad ''{callback}''",
|
||||
"oauth_role_claim": "Deklarace Role",
|
||||
"oauth_role_claim_description": "Automaticky ud─Ыlit p┼Щ├нstup spr├бvce na z├бklad─Ы p┼Щ├нtomnosti t├йto deklarace. Deklarace m┼п┼╛e m├нt hodnotu 'user' nebo 'admin'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "Spr├бva nastaven├н OAuth p┼Щihl├б┼бen├н",
|
||||
"oauth_settings_more_details": "Dal┼б├н podrobnosti o t├йto funkci naleznete v <link>dokumentaci</link>.",
|
||||
@@ -357,10 +381,12 @@
|
||||
"admin_password": "Heslo spr├бvce",
|
||||
"administration": "Administrace",
|
||||
"advanced": "Pokro─Нil├й",
|
||||
"advanced_settings_beta_timeline_subtitle": "Vyzkou┼бejte nov├й prost┼Щed├н aplikace",
|
||||
"advanced_settings_beta_timeline_title": "Beta verze ─Нasov├й osy",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Tuto mo┼╛nost pou┼╛ijte k filtrov├бn├н m├йdi├н b─Ыhem synchronizace na z├бklad─Ы alternativn├нch krit├йri├н. Tuto mo┼╛nost vyzkou┼бejte pouze v p┼Щ├нpad─Ы, ┼╛e m├бte probl├йmy s detekc├н v┼бech alb v aplikaci.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENT├БLN├Н] Pou┼╛├нt alternativn├н filtr pro synchronizaci alb za┼Щ├нzen├н",
|
||||
"advanced_settings_log_level_title": "├Ъrove┼И protokolov├бn├н: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "U n─Ыkter├╜ch za┼Щ├нzen├н je na─Н├нt├бn├н miniatur z prost┼Щedk┼п v za┼Щ├нzen├н velmi pomal├й. Aktivujte toto nastaven├н, aby se m├нsto toho na─Н├нtaly vzd├бlen├й obr├бzky.",
|
||||
"advanced_settings_prefer_remote_subtitle": "U n─Ыkter├╜ch za┼Щ├нzen├н je na─Н├нt├бn├н miniatur z lok├бln├нch prost┼Щedk┼п velmi pomal├й. Aktivujte toto nastaven├н, aby se m├нsto toho na─Н├нtaly vzd├бlen├й obr├бzky.",
|
||||
"advanced_settings_prefer_remote_title": "Preferovat vzd├бlen├й obr├бzky",
|
||||
"advanced_settings_proxy_headers_subtitle": "Definice hlavi─Нek proxy serveru, kter├й by m─Ыl Immich odes├нlat s ka┼╛d├╜m s├н┼еov├╜m po┼╛adavkem",
|
||||
"advanced_settings_proxy_headers_title": "Proxy hlavi─Нky",
|
||||
@@ -379,6 +405,7 @@
|
||||
"album_cover_updated": "Obal alba aktualizov├бn",
|
||||
"album_delete_confirmation": "Opravdu chcete album {album} odstranit?",
|
||||
"album_delete_confirmation_description": "Pokud je toto album sd├нleno, ostatn├н u┼╛ivatel├й k n─Ыmu ji┼╛ nebudou m├нt p┼Щ├нstup.",
|
||||
"album_deleted": "Album smaz├бno",
|
||||
"album_info_card_backup_album_excluded": "VYLOU─МENO",
|
||||
"album_info_card_backup_album_included": "ZAHRNUTO",
|
||||
"album_info_updated": "Informace o albu aktualizov├бny",
|
||||
@@ -388,6 +415,7 @@
|
||||
"album_options": "Mo┼╛nosti alba",
|
||||
"album_remove_user": "Odebrat u┼╛ivatele?",
|
||||
"album_remove_user_confirmation": "Opravdu chcete odebrat u┼╛ivatele {user}?",
|
||||
"album_search_not_found": "Nebyla nalezena ┼╛├бdn├б alba odpov├нdaj├нc├н va┼бemu hled├бn├н",
|
||||
"album_share_no_users": "Z┼Щejm─Ы jste toto album sd├нleli se v┼бemi u┼╛ivateli, nebo nem├бte ┼╛├бdn├йho u┼╛ivatele, se kter├╜m byste ho mohli sd├нlet.",
|
||||
"album_updated": "Album aktualizov├бno",
|
||||
"album_updated_setting_description": "Dost├бvat e-mailov├б ozn├бmen├н o nov├╜ch polo┼╛k├бch sd├нlen├йho alba",
|
||||
@@ -407,6 +435,7 @@
|
||||
"albums_default_sort_order": "V├╜choz├н ┼Щazen├н alb",
|
||||
"albums_default_sort_order_description": "V├╜choz├н ┼Щazen├н polo┼╛ek p┼Щi vytv├б┼Щen├н nov├╜ch alb.",
|
||||
"albums_feature_description": "Sb├нrky polo┼╛ek, kter├й lze sd├нlet s ostatn├нmi u┼╛ivateli.",
|
||||
"albums_on_device_count": "Alba v za┼Щ├нzen├н ({count})",
|
||||
"all": "V┼бe",
|
||||
"all_albums": "V┼бechna alba",
|
||||
"all_people": "V┼бichni lid├й",
|
||||
@@ -427,7 +456,8 @@
|
||||
"app_settings": "Aplikace",
|
||||
"appears_in": "Vyskytuje se v",
|
||||
"archive": "Archiv",
|
||||
"archive_or_unarchive_photo": "Archivovat nebo odarchivovat fotku",
|
||||
"archive_action_prompt": "{count} p┼Щidan├╜ch do archivu",
|
||||
"archive_or_unarchive_photo": "P┼Щidat nebo odebrat fotku z archivu",
|
||||
"archive_page_no_archived_assets": "Nebyla nalezena ┼╛├бdn├б archivovan├б m├йdia",
|
||||
"archive_page_title": "Archiv ({count})",
|
||||
"archive_size": "Velikost archivu",
|
||||
@@ -464,14 +494,13 @@
|
||||
"assets": "Polo┼╛ky",
|
||||
"assets_added_count": "{count, plural, one {P┼Щid├бna # polo┼╛ka} few {P┼Щid├бny # polo┼╛ky} other {P┼Щid├бno # polo┼╛ek}}",
|
||||
"assets_added_to_album_count": "Do alba {count, plural, one {byla p┼Щid├бna # polo┼╛ka} few {byly p┼Щid├бny # polo┼╛ky} other {bylo p┼Щid├бno # polo┼╛ek}}",
|
||||
"assets_added_to_name_count": "{count, plural, one {P┼Щid├бna # polo┼╛ka} few {P┼Щid├бny # polo┼╛ky} other {P┼Щid├бno # polo┼╛ek}} do {hasName, select, true {alba <b>{name}</b>} other {nov├йho alba}}",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Polo┼╛ku} other {Polo┼╛ky}} nelze p┼Щidat do alba",
|
||||
"assets_count": "{count, plural, one {# polo┼╛ka} few {# polo┼╛ky} other {# polo┼╛ek}}",
|
||||
"assets_deleted_permanently": "{count} polo┼╛ek trvale odstran─Ыno",
|
||||
"assets_deleted_permanently_from_server": "{count} polo┼╛ek trvale odstran─Ыno z Immich serveru",
|
||||
"assets_downloaded_failed": "{count, plural, one {Sta┼╛en # soubor - {error} soubor┼п selhalo} few {Sta┼╛eny # soubory - {error} soubor┼п selhalo} other {Sta┼╛eno # soubor┼п - {error} soubor┼п selhalo}}",
|
||||
"assets_downloaded_successfully": "{count, plural, one {├Ъsp─Ы┼бn─Ы sta┼╛en # soubor} few {├Ъsp─Ы┼бn─Ы sta┼╛eny # soubory} other {├Ъsp─Ы┼бn─Ы sta┼╛eno # soubor┼п}}",
|
||||
"assets_moved_to_trash_count": "Do ko┼бe {count, plural, one {p┼Щesunuta # polo┼╛ka} few {p┼Щesunuty # polo┼╛ky} other {p┼Щesunuto # polo┼╛ek}}",
|
||||
"assets_moved_to_trash_count": "{count, plural, one {# polo┼╛ka p┼Щesunuta} few {# polo┼╛ky p┼Щesunuty} other {# polo┼╛ek p┼Щesunuto}} do ko┼бe",
|
||||
"assets_permanently_deleted_count": "Trvale {count, plural, one {smaz├бna # polo┼╛ka} few {smaz├бny # polo┼╛ky} other {smaz├бno # polo┼╛ek}}",
|
||||
"assets_removed_count": "{count, plural, one {Odstran─Ыna # polo┼╛ka} few {Odstran─Ыny # polo┼╛ky} other {Odstran─Ыno # polo┼╛ek}}",
|
||||
"assets_removed_permanently_from_device": "{count} polo┼╛ek trvale odstran─Ыno z va┼бeho za┼Щ├нzen├н",
|
||||
@@ -490,6 +519,7 @@
|
||||
"back_close_deselect": "Zp─Ыt, zav┼Щ├нt nebo zru┼бit v├╜b─Ыr",
|
||||
"background_location_permission": "Povolen├н polohy na pozad├н",
|
||||
"background_location_permission_content": "Aby bylo mo┼╛n├й p┼Щep├нnat s├нt─Ы p┼Щi b─Ыhu na pozad├н, mus├н m├нt Immich *v┼╛dy* p┼Щ├нstup k p┼Щesn├й poloze, aby mohl zjistit n├бzev Wi-Fi s├нt─Ы",
|
||||
"backup": "Z├бloha",
|
||||
"backup_album_selection_page_albums_device": "Alba v za┼Щ├нzen├н ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Klepnut├нm na polo┼╛ku ji zahrnete, op─Ыtovn├╜m klepnut├нm ji vylou─Н├нte",
|
||||
"backup_album_selection_page_assets_scatter": "Polo┼╛ky mohou b├╜t roztrou┼бeny ve v├нce albech. To umo┼╛┼Иuje zahrnout nebo vylou─Нit alba b─Ыhem procesu z├бlohov├бn├н.",
|
||||
@@ -553,6 +583,8 @@
|
||||
"backup_options_page_title": "Nastaven├н z├бloh",
|
||||
"backup_setting_subtitle": "Spr├бva nastaven├н z├бlohov├бn├н na pozad├н a na pop┼Щed├н",
|
||||
"backward": "Pozp├бtku",
|
||||
"beta_sync": "Stav synchronizace (beta)",
|
||||
"beta_sync_subtitle": "Spr├бva nov├йho syst├йmu synchronizace",
|
||||
"biometric_auth_enabled": "Biometrick├й ov─Ы┼Щov├бn├н je povoleno",
|
||||
"biometric_locked_out": "Jste vylou─Нeni z biometrick├йho ov─Ы┼Щov├бn├н",
|
||||
"biometric_no_options": "Biometrick├й mo┼╛nosti nejsou k dispozici",
|
||||
@@ -570,7 +602,7 @@
|
||||
"cache_settings_clear_cache_button": "Vymazat vyrovn├бvac├н pam─Ы┼е",
|
||||
"cache_settings_clear_cache_button_title": "Vyma┼╛e vyrovn├бvac├н pam─Ы┼е aplikace. To v├╜razn─Ы ovlivn├н v├╜kon aplikace, dokud se vyrovn├бvac├н pam─Ы┼е neobnov├н.",
|
||||
"cache_settings_duplicated_assets_clear_button": "VYMAZAT",
|
||||
"cache_settings_duplicated_assets_subtitle": "Fotografie a videa, kter├й aplikace za┼Щadila na ─Нernou listinu",
|
||||
"cache_settings_duplicated_assets_subtitle": "Fotografie a videa, kter├й aplikace ignoruje",
|
||||
"cache_settings_duplicated_assets_title": "Duplicitn├н polo┼╛ky ({count})",
|
||||
"cache_settings_statistics_album": "Knihovna n├бhled┼п",
|
||||
"cache_settings_statistics_full": "Kompletn├н fotografie",
|
||||
@@ -587,6 +619,7 @@
|
||||
"cancel": "Zru┼бit",
|
||||
"cancel_search": "Zru┼бit vyhled├бv├бn├н",
|
||||
"canceled": "Zru┼бeno",
|
||||
"canceling": "Ru┼бen├н",
|
||||
"cannot_merge_people": "Nelze slou─Нit osoby",
|
||||
"cannot_undo_this_action": "Tuto akci nelze vr├бtit zp─Ыt!",
|
||||
"cannot_update_the_description": "Nelze aktualizovat popis",
|
||||
@@ -700,10 +733,11 @@
|
||||
"current_server_address": "Aktu├бln├н adresa serveru",
|
||||
"custom_locale": "Vlastn├н lokalizace",
|
||||
"custom_locale_description": "Form├бtovat datumy a ─Н├нsla podle jazyka a oblasti",
|
||||
"custom_url": "Vlastn├н URL",
|
||||
"daily_title_text_date": "EEEE, d. MMMM",
|
||||
"daily_title_text_date_year": "EEEE, d. MMMM y",
|
||||
"dark": "Tmav├╜",
|
||||
"darkTheme": "P┼Щepnout tmav├╜ motiv",
|
||||
"dark_theme": "P┼Щepnout tmav├╜ motiv",
|
||||
"date_after": "Datum po",
|
||||
"date_and_time": "Datum a ─Нas",
|
||||
"date_before": "Datum p┼Щed",
|
||||
@@ -719,6 +753,8 @@
|
||||
"default_locale": "V├╜choz├н jazyk",
|
||||
"default_locale_description": "Form├бtovat datumy a ─Н├нsla podle m├нstn├нho prost┼Щed├н prohl├н┼╛e─Нe",
|
||||
"delete": "Smazat",
|
||||
"delete_action_confirmation_message": "Opravdu chcete odstranit tuto polo┼╛ku? Tato akce p┼Щesune polo┼╛ku do serverov├йho ko┼бe a zept├б se v├бs, zda ji chcete odstranit lok├бln─Ы",
|
||||
"delete_action_prompt": "{count} smaz├бno",
|
||||
"delete_album": "Smazat album",
|
||||
"delete_api_key_prompt": "Opravdu chcete tento API kl├н─Н odstranit?",
|
||||
"delete_dialog_alert": "Tyto polo┼╛ky budou trvale smaz├бny z aplikace Immich i z va┼бeho za┼Щ├нzen├н",
|
||||
@@ -732,9 +768,12 @@
|
||||
"delete_key": "Smazat kl├н─Н",
|
||||
"delete_library": "Smazat knihovnu",
|
||||
"delete_link": "Smazat odkaz",
|
||||
"delete_local_action_prompt": "{count} smaz├бno lok├бln─Ы",
|
||||
"delete_local_dialog_ok_backed_up_only": "Smazat pouze z├бlohovan├й",
|
||||
"delete_local_dialog_ok_force": "P┼Щesto smazat",
|
||||
"delete_others": "Odstranit ostatn├н",
|
||||
"delete_others": "Smazat ostatn├н",
|
||||
"delete_permanently": "Trvale smazat",
|
||||
"delete_permanently_action_prompt": "{count} trvale smaz├бno",
|
||||
"delete_shared_link": "Smazat sd├нlen├╜ odkaz",
|
||||
"delete_shared_link_dialog_title": "Odstranit sd├нlen├╜ odkaz",
|
||||
"delete_tag": "Smazat zna─Нku",
|
||||
@@ -745,6 +784,7 @@
|
||||
"description": "Popis",
|
||||
"description_input_hint_text": "P┼Щidat popis...",
|
||||
"description_input_submit_error": "Chyba aktualizace popisu, dal┼б├н podrobnosti najdete v logu",
|
||||
"deselect_all": "Zru┼бit v├╜b─Ыr v┼бech",
|
||||
"details": "Podrobnosti",
|
||||
"direction": "Sm─Ыr",
|
||||
"disabled": "Zak├бz├бno",
|
||||
@@ -762,6 +802,7 @@
|
||||
"documentation": "Dokumentace",
|
||||
"done": "Hotovo",
|
||||
"download": "St├бhnout",
|
||||
"download_action_prompt": "Stahov├бn├н {count} polo┼╛ek",
|
||||
"download_canceled": "Stahov├бn├н zru┼бeno",
|
||||
"download_complete": "Stahov├бn├н kompletn├н",
|
||||
"download_enqueue": "Stahov├бn├н ve front─Ы",
|
||||
@@ -788,6 +829,7 @@
|
||||
"edit": "Upravit",
|
||||
"edit_album": "Upravit album",
|
||||
"edit_avatar": "Upravit avatar",
|
||||
"edit_birthday": "Upravit datum narozen├н",
|
||||
"edit_date": "Upravit datum",
|
||||
"edit_date_and_time": "Upravit datum a ─Нas",
|
||||
"edit_description": "Upravit popis",
|
||||
@@ -799,6 +841,7 @@
|
||||
"edit_key": "Upravit kl├н─Н",
|
||||
"edit_link": "Upravit odkaz",
|
||||
"edit_location": "Upravit polohu",
|
||||
"edit_location_action_prompt": "{count} upraven├╜ch poloh",
|
||||
"edit_location_dialog_title": "Poloha",
|
||||
"edit_name": "Upravit jm├йno",
|
||||
"edit_people": "Upravit lidi",
|
||||
@@ -817,6 +860,7 @@
|
||||
"empty_trash": "Vypr├бzdnit ko┼б",
|
||||
"empty_trash_confirmation": "Opravdu chcete vysypat ko┼б? T├нm se z Immiche trvale odstran├н v┼бechny polo┼╛ky v ko┼бi.\nTuto akci nelze vr├бtit zp─Ыt!",
|
||||
"enable": "Povolit",
|
||||
"enable_backup": "Povolit z├бlohov├бn├н",
|
||||
"enable_biometric_auth_description": "Zadejte v├б┼б PIN k├│d pro povolen├н biometrick├йho ov─Ы┼Щov├бn├н",
|
||||
"enabled": "Povoleno",
|
||||
"end_date": "Kone─Нn├й datum",
|
||||
@@ -861,7 +905,7 @@
|
||||
"failed_to_load_people": "Chyba na─Н├нt├бn├н osob",
|
||||
"failed_to_remove_product_key": "Nepoda┼Щilo se odebrat kl├н─Н produktu",
|
||||
"failed_to_stack_assets": "Nepoda┼Щilo se seskupit polo┼╛ky",
|
||||
"failed_to_unstack_assets": "Nepoda┼Щilo se rozlo┼╛it polo┼╛ky",
|
||||
"failed_to_unstack_assets": "Nepoda┼Щilo se zru┼бit seskupen├н polo┼╛ek",
|
||||
"failed_to_update_notification_status": "Nepoda┼Щilo se aktualizovat stav ozn├бmen├н",
|
||||
"import_path_already_exists": "Tato cesta importu ji┼╛ existuje.",
|
||||
"incorrect_email_or_password": "Nespr├бvn├╜ e-mail nebo heslo",
|
||||
@@ -876,7 +920,7 @@
|
||||
"unable_to_add_partners": "Nelze p┼Щidat partnery",
|
||||
"unable_to_add_remove_archive": "Nelze {archived, select, true {odstranit polo┼╛ku z} other {p┼Щidat polo┼╛ku do}} archivu",
|
||||
"unable_to_add_remove_favorites": "Nelze {favorite, select, true {obl├нbit polo┼╛ku} other {zru┼бit obl├нben├н polo┼╛ky}}",
|
||||
"unable_to_archive_unarchive": "Nelze {archived, select, true {archivovat} other {odarchivovat}}",
|
||||
"unable_to_archive_unarchive": "Nelze {archived, select, true {archivovat} other {odebrat z archivu}}",
|
||||
"unable_to_change_album_user_role": "Nelze zm─Ыnit roli u┼╛ivatele alba",
|
||||
"unable_to_change_date": "Nelze zm─Ыnit datum",
|
||||
"unable_to_change_description": "Nelze zm─Ыnit popis",
|
||||
@@ -953,6 +997,7 @@
|
||||
},
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "P┼Щidat popis...",
|
||||
"exif_bottom_sheet_description_error": "Chyba p┼Щi aktualizaci popisu",
|
||||
"exif_bottom_sheet_details": "PODROBNOSTI",
|
||||
"exif_bottom_sheet_location": "POLOHA",
|
||||
"exif_bottom_sheet_people": "LID├Й",
|
||||
@@ -973,6 +1018,8 @@
|
||||
"explorer": "Pr┼пzkumn├нk",
|
||||
"export": "Export",
|
||||
"export_as_json": "Exportovat jako JSON",
|
||||
"export_database": "Exportovat datab├бzi",
|
||||
"export_database_description": "Exportovat datab├бzi SQLite",
|
||||
"extension": "P┼Щ├нpona",
|
||||
"external": "Extern├н",
|
||||
"external_libraries": "Extern├н knihovny",
|
||||
@@ -984,6 +1031,7 @@
|
||||
"failed_to_load_assets": "Nepoda┼Щilo se na─Н├нst polo┼╛ky",
|
||||
"failed_to_load_folder": "Nepoda┼Щilo se na─Н├нst slo┼╛ku",
|
||||
"favorite": "Obl├нbit",
|
||||
"favorite_action_prompt": "{count} p┼Щid├бno do Obl├нben├╜ch",
|
||||
"favorite_or_unfavorite_photo": "Obl├нbit nebo zru┼бit obl├нben├н fotky",
|
||||
"favorites": "Obl├нben├й",
|
||||
"favorites_page_no_favorites": "Nebyla nalezena ┼╛├бdn├б obl├нben├б m├йdia",
|
||||
@@ -1023,6 +1071,9 @@
|
||||
"haptic_feedback_switch": "Povolit dotykovou zp─Ыtnou vazbu",
|
||||
"haptic_feedback_title": "Dotykov├б zp─Ыtn├б vazba",
|
||||
"has_quota": "M├б kv├│tu",
|
||||
"hash_asset": "Hash polo┼╛ky",
|
||||
"hashed_assets": "Hashovan├й polo┼╛ky",
|
||||
"hashing": "Hashov├бn├н",
|
||||
"header_settings_add_header_tip": "P┼Щidat hlavi─Нku",
|
||||
"header_settings_field_validator_msg": "Hodnota nem┼п┼╛e b├╜t pr├бzdn├б",
|
||||
"header_settings_header_name_input": "N├бzev hlavi─Нky",
|
||||
@@ -1055,6 +1106,7 @@
|
||||
"host": "Hostitel",
|
||||
"hour": "Hodina",
|
||||
"id": "ID",
|
||||
"idle": "Ne─Нinnost",
|
||||
"ignore_icloud_photos": "Ignorovat fotografie na iCloudu",
|
||||
"ignore_icloud_photos_description": "Fotografie ulo┼╛en├й na iCloudu se nebudou nahr├бvat na Immich server",
|
||||
"image": "Obr├бzek",
|
||||
@@ -1112,6 +1164,7 @@
|
||||
"language_no_results_title": "Nebyly nalezeny ┼╛├бdn├й jazyky",
|
||||
"language_search_hint": "Vyhledat jazyk...",
|
||||
"language_setting_description": "Vyberte up┼Щednost┼Иovan├╜ jazyk",
|
||||
"large_files": "Velk├й soubory",
|
||||
"last_seen": "Naposledy vid─Ыno",
|
||||
"latest_version": "Nejnov─Ыj┼б├н verze",
|
||||
"latitude": "Zem─Ыpisn├б ┼б├н┼Щka",
|
||||
@@ -1127,16 +1180,18 @@
|
||||
"library_page_sort_created": "Naposledy vytvo┼Щen├й",
|
||||
"library_page_sort_last_modified": "Naposledy upraveno",
|
||||
"library_page_sort_title": "Podle n├бzvu alba",
|
||||
"licenses": "Licence",
|
||||
"light": "Sv─Ыtl├╜",
|
||||
"like_deleted": "Lajk smaz├бn",
|
||||
"link_motion_video": "P┼Щipojit pohybliv├й video",
|
||||
"link_options": "Mo┼╛nosti odkazu",
|
||||
"link_to_oauth": "Propojit s OAuth",
|
||||
"linked_oauth_account": "Propojen├╜ OAuth ├║─Нet",
|
||||
"list": "Seznam",
|
||||
"loading": "Na─Н├нt├бn├н",
|
||||
"loading_search_results_failed": "Na─Н├нt├бn├н v├╜sledk┼п vyhled├бv├бn├н se nezda┼Щilo",
|
||||
"local": "M├нstn├н",
|
||||
"local_asset_cast_failed": "Nelze odeslat polo┼╛ku, kter├б nen├н nahran├б na serveru",
|
||||
"local_assets": "M├нstn├н polo┼╛ky",
|
||||
"local_network": "M├нstn├н s├н┼е",
|
||||
"local_network_sheet_info": "Aplikace se p┼Щi pou┼╛it├н zadan├й s├нt─Ы Wi-Fi p┼Щipoj├н k serveru prost┼Щednictv├нm tohoto URL",
|
||||
"location_permission": "Opr├бvn─Ыn├н polohy",
|
||||
@@ -1193,8 +1248,7 @@
|
||||
"manage_your_devices": "Spr├бva p┼Щihl├б┼бen├╜ch za┼Щ├нzen├н",
|
||||
"manage_your_oauth_connection": "Spr├бva OAuth propojen├н",
|
||||
"map": "Mapa",
|
||||
"map_assets_in_bound": "{count} fotka",
|
||||
"map_assets_in_bounds": "{count} fotek",
|
||||
"map_assets_in_bounds": "{count, plural, one {# fotka} few{# fotky} other {# fotek}}",
|
||||
"map_cannot_get_user_location": "Nelze zjistit polohu u┼╛ivatele",
|
||||
"map_location_dialog_yes": "Ano",
|
||||
"map_location_picker_page_use_location": "Pou┼╛├нt tuto polohu",
|
||||
@@ -1246,10 +1300,11 @@
|
||||
"more": "V├нce",
|
||||
"move": "P┼Щesunout",
|
||||
"move_off_locked_folder": "P┼Щesunout z uzam─Нen├й slo┼╛ky",
|
||||
"move_to_lock_folder_action_prompt": "{count} p┼Щidan├╜ch do uzam─Нen├й slo┼╛ky",
|
||||
"move_to_locked_folder": "P┼Щesunout do uzam─Нen├й slo┼╛ky",
|
||||
"move_to_locked_folder_confirmation": "Tyto fotky a videa budou odstran─Ыny ze v┼бech alb a bude je mo┼╛n├й zobrazit pouze v uzam─Нen├й slo┼╛ce",
|
||||
"moved_to_archive": "{count, plural, one {P┼Щesunuta # polo┼╛ka} few {P┼Щesunuty # polo┼╛ky} other {P┼Щesunuto # polo┼╛ek}} do archivu",
|
||||
"moved_to_library": "{count, plural, one {P┼Щesunuta # polo┼╛ka} few {P┼Щesunuty # polo┼╛ky} other {P┼Щesunuto # polo┼╛ek}} do knihovny",
|
||||
"moved_to_archive": "{count, plural, one {# polo┼╛ka p┼Щesunuta} few {# polo┼╛ky p┼Щesunuty} other {# polo┼╛ek p┼Щesunuto}} do archivu",
|
||||
"moved_to_library": "{count, plural, one {# polo┼╛ka p┼Щesunuta} few {# polo┼╛ky p┼Щesunuty} other {# polo┼╛ek p┼Щesunuto}} do knihovny",
|
||||
"moved_to_trash": "P┼Щesunuto do ko┼бe",
|
||||
"multiselect_grid_edit_date_time_err_read_only": "Nelze upravit datum polo┼╛ek pouze pro ─Нten├н, p┼Щeskakuji",
|
||||
"multiselect_grid_edit_gps_err_read_only": "Nelze upravit polohu polo┼╛ek pouze pro ─Нten├н, p┼Щeskakuji",
|
||||
@@ -1292,6 +1347,7 @@
|
||||
"no_results": "┼╜├бdn├й v├╜sledky",
|
||||
"no_results_description": "Zkuste pou┼╛├нt synonymum nebo obecn─Ыj┼б├н kl├н─Нov├й slovo",
|
||||
"no_shared_albums_message": "Vytvo┼Щte si album a sd├нlejte fotografie a videa s lidmi ve sv├й s├нti",
|
||||
"no_uploads_in_progress": "Neprob├нh├б ┼╛├бdn├й nahr├бv├бn├н",
|
||||
"not_in_any_album": "Bez alba",
|
||||
"not_selected": "Nen├н vybr├бno",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "Upozorn─Ыn├н: Chcete-li pou┼╛├нt ┼бt├нtek ├║lo┼╛i┼бt─Ы na d┼Щ├нve nahran├й polo┼╛ky, spus┼еte p┼Щ├нkaz",
|
||||
@@ -1329,6 +1385,7 @@
|
||||
"original": "origin├бl",
|
||||
"other": "Ostatn├н",
|
||||
"other_devices": "Ostatn├н za┼Щ├нzen├н",
|
||||
"other_entities": "Ostatn├н entity",
|
||||
"other_variables": "Dal┼б├н prom─Ыnn├й",
|
||||
"owned": "Vlastn├н",
|
||||
"owner": "Vlastn├нk",
|
||||
@@ -1460,6 +1517,7 @@
|
||||
"purchase_server_description_2": "Stav podporovatele",
|
||||
"purchase_server_title": "Server",
|
||||
"purchase_settings_server_activated": "Produktov├╜ kl├н─Н serveru spravuje spr├бvce",
|
||||
"queue_status": "Ve front─Ы {count}/{total}",
|
||||
"rating": "Hodnocen├н hv─Ыzdi─Нkami",
|
||||
"rating_clear": "Vy─Нistit hodnocen├н",
|
||||
"rating_count": "{count, plural, one {# hv─Ыzdi─Нka} few {# hv─Ыzdi─Нky} other {# hv─Ыzd─Нek}}",
|
||||
@@ -1488,6 +1546,8 @@
|
||||
"refreshing_faces": "Obnovov├бn├н obli─Нej┼п",
|
||||
"refreshing_metadata": "Obnovov├бn├н metadat",
|
||||
"regenerating_thumbnails": "Regenerace miniatur",
|
||||
"remote": "Vzd├бlen├╜",
|
||||
"remote_assets": "Vzd├бlen├й polo┼╛ky",
|
||||
"remove": "Odstranit",
|
||||
"remove_assets_album_confirmation": "Opravdu chcete z alba odstranit {count, plural, one {# polo┼╛ku} few {# polo┼╛ky} other {# polo┼╛ek}}?",
|
||||
"remove_assets_shared_link_confirmation": "Opravdu chcete ze sd├нlen├йho odkazu odstranit {count, plural, one {# polo┼╛ku} few {# polo┼╛ky} other {# polo┼╛ek}}?",
|
||||
@@ -1495,7 +1555,9 @@
|
||||
"remove_custom_date_range": "Odstranit vlastn├н rozsah datum┼п",
|
||||
"remove_deleted_assets": "Odstranit offline soubory",
|
||||
"remove_from_album": "Odstranit z alba",
|
||||
"remove_from_album_action_prompt": "{count} odstran─Ыn├╜ch z alba",
|
||||
"remove_from_favorites": "Odstranit z obl├нben├╜ch",
|
||||
"remove_from_lock_folder_action_prompt": "{count} odebran├╜ch z uzam─Нen├й slo┼╛ky",
|
||||
"remove_from_locked_folder": "Odstranit z uzam─Нen├й slo┼╛ky",
|
||||
"remove_from_locked_folder_confirmation": "Opravdu chcete tyto fotky a videa p┼Щesunout z uzam─Нen├й slo┼╛ky? Budou viditeln├й ve va┼б├н knihovn─Ы.",
|
||||
"remove_from_shared_link": "Odstranit ze sd├нlen├йho odkazu",
|
||||
@@ -1523,19 +1585,25 @@
|
||||
"reset_password": "Obnovit heslo",
|
||||
"reset_people_visibility": "Obnovit viditelnost lid├н",
|
||||
"reset_pin_code": "Resetovat PIN k├│d",
|
||||
"reset_sqlite": "Obnovit SQLite datab├бzi",
|
||||
"reset_sqlite_confirmation": "Jste si jisti, ┼╛e chcete obnovit SQLite datab├бzi? Pro op─Ыtovnou synchronizaci dat se budete muset odhl├бsit a znovu p┼Щihl├бsit",
|
||||
"reset_sqlite_success": "Obnoven├н SQLite datab├бze prob─Ыhlo ├║sp─Ы┼бn─Ы",
|
||||
"reset_to_default": "Obnovit v├╜choz├н nastaven├н",
|
||||
"resolve_duplicates": "Vy┼Щe┼бit duplicity",
|
||||
"resolved_all_duplicates": "Vy┼Щe┼бeny v┼бechny duplicity",
|
||||
"restore": "Obnovit",
|
||||
"restore_all": "Obnovit v┼бe",
|
||||
"restore_trash_action_prompt": "{count} obnoveno z ko┼бe",
|
||||
"restore_user": "Obnovit u┼╛ivatele",
|
||||
"restored_asset": "Polo┼╛ka obnovena",
|
||||
"resume": "Pokra─Нovat",
|
||||
"retry_upload": "Opakov├бn├н nahr├бv├бn├н",
|
||||
"review_duplicates": "Kontrola duplicit",
|
||||
"review_large_files": "Kontrola velk├╜ch soubor┼п",
|
||||
"role": "Role",
|
||||
"role_editor": "Editor",
|
||||
"role_viewer": "Div├бk",
|
||||
"running": "Prob├нh├б",
|
||||
"save": "Ulo┼╛it",
|
||||
"save_to_gallery": "Ulo┼╛it do galerie",
|
||||
"saved_api_key": "API kl├н─Н ulo┼╛en",
|
||||
@@ -1667,6 +1735,7 @@
|
||||
"settings_saved": "Nastaven├н ulo┼╛eno",
|
||||
"setup_pin_code": "Nastaven├н PIN k├│du",
|
||||
"share": "Sd├нlet",
|
||||
"share_action_prompt": "Sd├нleno {count} polo┼╛ek",
|
||||
"share_add_photos": "P┼Щidat fotografie",
|
||||
"share_assets_selected": "{count} vybr├бno",
|
||||
"share_dialog_preparing": "P┼Щipravuji...",
|
||||
@@ -1688,6 +1757,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Zkop├нrov├бno do schr├бnky",
|
||||
"shared_link_clipboard_text": "Odkaz: {link}\nHeslo: {password}",
|
||||
"shared_link_create_error": "Chyba p┼Щi vytv├б┼Щen├н sd├нlen├йho odkazu",
|
||||
"shared_link_custom_url_description": "P┼Щ├нstup k tomuto sd├нlen├йmu odkazu pomoc├н vlastn├нho URL",
|
||||
"shared_link_edit_description_hint": "Zadejte popis sd├нlen├н",
|
||||
"shared_link_edit_expire_after_option_day": "1 den",
|
||||
"shared_link_edit_expire_after_option_days": "{count} dn├н",
|
||||
@@ -1713,6 +1783,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Spravovat sd├нlen├й odkazy",
|
||||
"shared_link_options": "Mo┼╛nosti sd├нlen├йho odkazu",
|
||||
"shared_link_password_description": "Vy┼╛adovat heslo pro p┼Щ├нstup k tomuto sd├нlen├йmu odkazu",
|
||||
"shared_links": "Sd├нlen├й odkazy",
|
||||
"shared_links_description": "Sd├нlet fotky a videa pomoc├н odkazu",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, one {# sd├нlen├б fotografie a video.} few {# sd├нlen├й fotografie a videa.} other {# sd├нlen├╜ch fotografi├н a vide├н.}}",
|
||||
@@ -1768,6 +1839,7 @@
|
||||
"sort_title": "N├бzev alba",
|
||||
"source": "Zdroj",
|
||||
"stack": "Seskupit",
|
||||
"stack_action_prompt": "{count} seskupeno",
|
||||
"stack_duplicates": "Seskupit duplicity",
|
||||
"stack_select_one_photo": "Vyberte jednu hlavn├н fotografii pro seskupen├н",
|
||||
"stack_selected_photos": "Seskupen├н vybran├╜ch fotografi├н",
|
||||
@@ -1787,6 +1859,7 @@
|
||||
"storage_quota": "Kv├│ta ├║lo┼╛i┼бt─Ы",
|
||||
"storage_usage": "Vyu┼╛ito {used} z {available}",
|
||||
"submit": "Odeslat",
|
||||
"success": "├Ъsp─Ыch",
|
||||
"suggestions": "N├бvrhy",
|
||||
"sunrise_on_the_beach": "V├╜chod slunce na pl├б┼╛i",
|
||||
"support": "Podpora",
|
||||
@@ -1796,6 +1869,8 @@
|
||||
"sync": "Synchronizovat",
|
||||
"sync_albums": "Synchronizovat alba",
|
||||
"sync_albums_manual_subtitle": "Synchronizovat v┼бechna nahran├б videa a fotografie do vybran├╜ch z├бlo┼╛n├нch alb",
|
||||
"sync_local": "Synchronizovat m├нstn├н",
|
||||
"sync_remote": "Synchronizovat vzd├бlen├й",
|
||||
"sync_upload_album_setting_subtitle": "Vytvo┼Щit a nahr├бt fotografie a videa do vybran├╜ch alb na Immich",
|
||||
"tag": "Zna─Нka",
|
||||
"tag_assets": "P┼Щi┼Щadit zna─Нku",
|
||||
@@ -1806,6 +1881,7 @@
|
||||
"tag_updated": "Aktualizov├бna zna─Нka: {tag}",
|
||||
"tagged_assets": "P┼Щi┼Щazena zna─Нka {count, plural, one {# polo┼╛ce} other {# polo┼╛k├бm}}",
|
||||
"tags": "Zna─Нky",
|
||||
"tap_to_run_job": "Klepnut├нm na spust├нte ├║lohu",
|
||||
"template": "┼аablona",
|
||||
"theme": "Motiv",
|
||||
"theme_selection": "V├╜b─Ыr motivu",
|
||||
@@ -1838,6 +1914,7 @@
|
||||
"total": "Celkem",
|
||||
"total_usage": "Celkov├й vyu┼╛it├н",
|
||||
"trash": "Ko┼б",
|
||||
"trash_action_prompt": "{count} p┼Щesunut├╜ch do ko┼бe",
|
||||
"trash_all": "Vyhodit v┼бe",
|
||||
"trash_count": "Vyhodit {count, number}",
|
||||
"trash_delete_asset": "Vyhodit/Smazat polo┼╛ku",
|
||||
@@ -1854,10 +1931,12 @@
|
||||
"type": "Typ",
|
||||
"unable_to_change_pin_code": "Nelze zm─Ыnit PIN k├│d",
|
||||
"unable_to_setup_pin_code": "Nelze nastavit PIN k├│d",
|
||||
"unarchive": "Odarchivovat",
|
||||
"unarchive": "Odebrat z archivu",
|
||||
"unarchive_action_prompt": "{count} odstran─Ыn├╜ch z archivu",
|
||||
"unarchived_count": "{count, plural, one {Odarchivov├бna #} few {Odarchivov├бny #} other {Odarchivov├бno #}}",
|
||||
"undo": "Vr├бtit zp─Ыt",
|
||||
"unfavorite": "Zru┼бit obl├нben├н",
|
||||
"unfavorite_action_prompt": "{count} odstran─Ыn├╜ch z obl├нben├╜ch",
|
||||
"unhide_person": "Zru┼бit skryt├н osoby",
|
||||
"unknown": "Nezn├бm├╜",
|
||||
"unknown_country": "Nezn├бm├б zem─Ы",
|
||||
@@ -1875,15 +1954,20 @@
|
||||
"unselect_all_duplicates": "Zru┼бit v├╜b─Ыr v┼бech duplicit",
|
||||
"unselect_all_in": "Zru┼бit v├╜b─Ыr ve skupin─Ы {group}",
|
||||
"unstack": "Zru┼бit seskupen├н",
|
||||
"unstacked_assets_count": "{count, plural, one {Rozlo┼╛en├б # polo┼╛ka} few {Rozlo┼╛en├й # polo┼╛ky} other {Rozlo┼╛en├╜ch # polo┼╛iek}}",
|
||||
"unstack_action_prompt": "{count} seskupen├╜ch zru┼бeno",
|
||||
"unstacked_assets_count": "{count, plural, one {Rozlo┼╛en├б # polo┼╛ka} few {Rozlo┼╛en├й # polo┼╛ky} other {Rozlo┼╛en├╜ch # polo┼╛ek}}",
|
||||
"untagged": "Neozna─Нeno",
|
||||
"up_next": "To je prozat├нm v┼бe",
|
||||
"updated_at": "Aktualizov├бno",
|
||||
"updated_password": "Heslo aktualizov├бno",
|
||||
"upload": "Nahr├бt",
|
||||
"upload_action_prompt": "{count} ve front─Ы pro nahr├бn├н",
|
||||
"upload_concurrency": "Soub─Ы┼╛nost nahr├бv├бn├н",
|
||||
"upload_details": "Detaily nahr├бv├бn├н",
|
||||
"upload_dialog_info": "Chcete z├бlohovat vybran├й polo┼╛ky na server?",
|
||||
"upload_dialog_title": "Nahr├бt polo┼╛ku",
|
||||
"upload_errors": "Nahr├бv├бn├н bylo dokon─Нeno s {count, plural, one {# chybou} other {# chybami}}, obnovte str├бnku pro zobrazen├н nov├╜ch polo┼╛ek.",
|
||||
"upload_finished": "Nahr├бv├бn├н dokon─Нeno",
|
||||
"upload_progress": "Zb├╜v├б {remaining, number} - Zpracov├бno {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "{count, plural, one {P┼Щesko─Нena # duplicitn├н polo┼╛ka} few {P┼Щesko─Нeny # duplicitn├н polo┼╛ky} other {P┼Щesko─Нeno # duplicitn├нch polo┼╛ek}}",
|
||||
"upload_status_duplicates": "Duplicity",
|
||||
@@ -1892,6 +1976,7 @@
|
||||
"upload_success": "Nahr├бn├н prob─Ыhlo ├║sp─Ы┼бn─Ы, obnoven├нm str├бnky se zobraz├н nov─Ы nahran├й polo┼╛ky.",
|
||||
"upload_to_immich": "Nahr├бt do Immich ({count})",
|
||||
"uploading": "Nahr├бv├бn├н",
|
||||
"uploading_media": "Nahr├бv├бn├н m├йdi├н",
|
||||
"url": "URL",
|
||||
"usage": "Vyu┼╛it├н",
|
||||
"use_biometric": "Pou┼╛├нt biometrick├й ├║daje",
|
||||
@@ -1912,6 +1997,7 @@
|
||||
"user_usage_stats_description": "Zobrazit statistiky pou┼╛├нv├бn├н ├║─Нtu",
|
||||
"username": "U┼╛ivatelesk├й jm├йno",
|
||||
"users": "U┼╛ivatel├й",
|
||||
"users_added_to_album_count": "{count, plural, one {P┼Щid├бn # u┼╛ivatel} few {P┼Щid├бny # u┼╛ivatel├й} other {P┼Щid├бno # u┼╛ivatel┼п}} do alba",
|
||||
"utilities": "N├бstroje",
|
||||
"validate": "Ov─Ы┼Щit",
|
||||
"validate_endpoint_error": "Zadejte platn├й URL",
|
||||
@@ -1930,6 +2016,7 @@
|
||||
"view_album": "Zobrazit album",
|
||||
"view_all": "Zobrazit v┼бe",
|
||||
"view_all_users": "Zobrazit v┼бechny u┼╛ivatele",
|
||||
"view_details": "Zobrazit podrobnosti",
|
||||
"view_in_timeline": "Zobrazit na ─Нasov├й ose",
|
||||
"view_link": "Zobrazit odkaz",
|
||||
"view_links": "Zobrazit odkazy",
|
||||
@@ -1941,7 +2028,7 @@
|
||||
"view_user": "Zobrazit u┼╛ivatele",
|
||||
"viewer_remove_from_stack": "Odstranit ze z├бsobn├нku",
|
||||
"viewer_stack_use_as_main_asset": "Pou┼╛├нt jako hlavn├н polo┼╛ku",
|
||||
"viewer_unstack": "Rozbalit z├бsobn├нk",
|
||||
"viewer_unstack": "Zru┼бit z├бsobn├нk",
|
||||
"visibility_changed": "Viditelnost zm─Ыn─Ыna u {count, plural, one {# osoby} few {# osob} other {# lid├н}}",
|
||||
"waiting": "─Мekaj├нc├н",
|
||||
"warning": "Upozorn─Ыn├н",
|
||||
|
||||
22
i18n/da.json
22
i18n/da.json
@@ -34,6 +34,7 @@
|
||||
"added_to_favorites_count": "Tilf├╕jet {count, number} til favoritter",
|
||||
"admin": {
|
||||
"add_exclusion_pattern_description": "Tilf├╕j udelukkelsesm├╕nstre. Globbing ved hj├жlp af *, ** og ? underst├╕ttes. For at ignorere alle filer i enhver mappe med navnet \"Raw\", brug \"**/Raw/**\". For at ignorere alle filer, der slutter p├е \".tif\", brug \"**/*.tif\". For at ignorere en absolut sti, brug \"/sti/til/ignoreret/**\".",
|
||||
"admin_user": "Administrator bruger",
|
||||
"asset_offline_description": "Denne eksterne biblioteksressource findes ikke l├жngere p├е disken og er blevet flyttet til papirkurven. Hvis filen blev flyttet inde i biblioteket, skal du tjekke din tidslinje for den nye tilsvarende ressource. For at gendanne denne ressource skal du sikre, at filstien nedenfor kan tilg├еs af Immich og scanne biblioteket.",
|
||||
"authentication_settings": "Godkendelsesindstillinger",
|
||||
"authentication_settings_description": "Administrer adgangskode, OAuth og andre godkendelsesindstillinger",
|
||||
@@ -165,6 +166,20 @@
|
||||
"metadata_settings_description": "H├еndt├йr metadataindstillinger",
|
||||
"migration_job": "Migrering",
|
||||
"migration_job_description": "Migr├йr miniaturebilleder for aktiver og ansigter til den seneste mappestruktur",
|
||||
"nightly_tasks_cluster_faces_setting_description": "K├╕r ansigtsgenkendelse p├е nye ansigter",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Grupp├йr nye ansigter",
|
||||
"nightly_tasks_database_cleanup_setting": "Databaseoprydning opgaver",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Ryd op i gamle, udl├╕bne data fra databasen",
|
||||
"nightly_tasks_generate_memories_setting": "Generer minder",
|
||||
"nightly_tasks_generate_memories_setting_description": "Skab nye minder ud fra dine medier",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Generer manglende miniaturebilleder",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "S├жt medier uden thumbnails i k├╕ til generering af thumbnails",
|
||||
"nightly_tasks_settings": "Indstillinger for opgaver om natten",
|
||||
"nightly_tasks_settings_description": "Administr├йr opgaver om natten",
|
||||
"nightly_tasks_start_time_setting": "Starttidspunkt",
|
||||
"nightly_tasks_start_time_setting_description": "Tidspunktet hvor serveren begynder at k├╕re opgaver om natten",
|
||||
"nightly_tasks_sync_quota_usage_setting": "Synkronis├йr kvoteforbrug",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "Opdater brugerens lagerkvote baseret p├е aktuelt forbrug",
|
||||
"no_paths_added": "Ingen stier tilf├╕jet",
|
||||
"no_pattern_added": "Intet m├╕nster tilf├╕jet",
|
||||
"note_apply_storage_label_previous_assets": "Bem├жrk: For at anvende Lagringsm├жrkatet p├е tidligere uploadede mediefiler, k├╕r",
|
||||
@@ -203,7 +218,7 @@
|
||||
"oauth_storage_quota_claim": "Lagringskvotefordring",
|
||||
"oauth_storage_quota_claim_description": "S├жt automatisk brugeres lagringskvote til denne nye fordrings v├жrdi.",
|
||||
"oauth_storage_quota_default": "Standard lagringskvote (GiB)",
|
||||
"oauth_storage_quota_default_description": "Kvote i GiB som bruges, n├еr der ikke bliver oplyst en fordring (Indtast 0 for uendelig kvote).",
|
||||
"oauth_storage_quota_default_description": "Kvote i GiB som bruges, n├еr der ikke bliver oplyst en fordring.",
|
||||
"oauth_timeout": "Foresp├╕rgslen udl├╕b",
|
||||
"oauth_timeout_description": "Udl├╕bstid for foresp├╕rgsel i milisekunder",
|
||||
"password_enable_description": "Log ind med email og adgangskode",
|
||||
@@ -462,7 +477,6 @@
|
||||
"assets": "elementer",
|
||||
"assets_added_count": "Tilf├╕jet {count, plural, one {# mediefil} other {# mediefiler}}",
|
||||
"assets_added_to_album_count": "{count, plural, one {# mediefil} other {# mediefiler}} tilf├╕jet til albummet",
|
||||
"assets_added_to_name_count": "Tilf├╕jet {count, plural, one {# mediefil} other {# mediefiler}} til {hasName, select, true {<b>{name}</b>} other {nyt album}}",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Billed} other {Billeder}} kan ikke blive tilf├╕jet til album",
|
||||
"assets_count": "{count, plural, one {# mediefil} other {# mediefiler}}",
|
||||
"assets_deleted_permanently": "{count} element(er) blev fjernet permanent",
|
||||
@@ -488,6 +502,7 @@
|
||||
"back_close_deselect": "Tilbage, luk eller frav├жlg",
|
||||
"background_location_permission": "Tilladelse til baggrundsplacering",
|
||||
"background_location_permission_content": "For at skifte netv├жrk, n├еr appen k├╕rer i baggrunden, skal Immich *altid* have pr├жcis placeringsadgang, s├е appen kan l├жse WiFi-netv├жrkets navn",
|
||||
"backup": "Sikkerhedskopier",
|
||||
"backup_album_selection_page_albums_device": "Albummer p├е enheden ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Tryk en gang for at inkludere, tryk to gange for at ekskludere",
|
||||
"backup_album_selection_page_assets_scatter": "Elementer kan v├жre spredt p├е tv├жrs af flere albummer. Albummer kan s├еledes inkluderes eller udelukkes under sikkerhedskopieringsprocessen.",
|
||||
@@ -701,7 +716,6 @@
|
||||
"daily_title_text_date": "E, dd MMM",
|
||||
"daily_title_text_date_year": "E, dd MMM, yyyy",
|
||||
"dark": "M├╕rk",
|
||||
"darkTheme": "Skift til m├╕rkt tema",
|
||||
"date_after": "Dato efter",
|
||||
"date_and_time": "Dato og klokkesl├жt",
|
||||
"date_before": "Dato f├╕r",
|
||||
@@ -1128,7 +1142,6 @@
|
||||
"light": "Lys",
|
||||
"like_deleted": "Ligesom slettet",
|
||||
"link_motion_video": "Link bev├жgelsesvideo",
|
||||
"link_options": "Link-indstillinger",
|
||||
"link_to_oauth": "Link til OAuth",
|
||||
"linked_oauth_account": "Tilsluttet OAuth-konto",
|
||||
"list": "Liste",
|
||||
@@ -1190,7 +1203,6 @@
|
||||
"manage_your_devices": "Administr├йr dine enheder der er logget ind",
|
||||
"manage_your_oauth_connection": "Administr├йr din OAuth-tilslutning",
|
||||
"map": "Kort",
|
||||
"map_assets_in_bound": "{count} billede",
|
||||
"map_assets_in_bounds": "{count} billeder",
|
||||
"map_cannot_get_user_location": "Kan ikke finde brugerens placering",
|
||||
"map_location_dialog_yes": "Ja",
|
||||
|
||||
114
i18n/de.json
114
i18n/de.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Standort hinzuf├╝gen",
|
||||
"add_a_name": "Name hinzuf├╝gen",
|
||||
"add_a_title": "Titel hinzuf├╝gen",
|
||||
"add_birthday": "Geburtsdatum hinzuf├╝gen",
|
||||
"add_endpoint": "Endpunkt hinzuf├╝gen",
|
||||
"add_exclusion_pattern": "Ausschlussmuster hinzuf├╝gen",
|
||||
"add_import_path": "Importpfad hinzuf├╝gen",
|
||||
@@ -41,9 +42,16 @@
|
||||
"authentication_settings_disable_all": "Bist du sicher, dass du alle Anmeldemethoden deaktivieren willst? Die Anmeldung wird vollst├дndig deaktiviert.",
|
||||
"authentication_settings_reenable": "Nutze einen <link>Server-Befehl</link> zur Reaktivierung.",
|
||||
"background_task_job": "Hintergrundaufgaben",
|
||||
"backup_database": "Datenbanksicherung regelm├д├Яig erstellen",
|
||||
"backup_database": "Datenbanksicherung erstellen",
|
||||
"backup_database_enable_description": "Datenbank regelm├д├Яig sichern",
|
||||
"backup_keep_last_amount": "Anzahl der aufzubewahrenden fr├╝heren Backups",
|
||||
"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": "3 komplette Kopien deiner Daten, inkl. der Originaldateien. Dies umfasst 1 Kopie an einem anderen Ort und 2 lokale Kopie.",
|
||||
"backup_onboarding_description": "Eine <backblaze-link>3-2-1 Backup-Strategie</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 Backup-L├╢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": "Backups",
|
||||
"backup_settings": "Einstellungen f├╝r Datenbanksicherung",
|
||||
"backup_settings_description": "Einstellungen zur regelm├д├Яigen Sicherung der Datenbank. Hinweis: Diese Jobs werden nicht ├╝berwacht und du wirst nicht ├╝ber Fehler informiert.",
|
||||
"cleared_jobs": "Folgende Aufgaben zur├╝ckgesetzt: {job}",
|
||||
@@ -56,9 +64,9 @@
|
||||
"confirm_user_pin_code_reset": "Bist du sicher, dass du den PIN Code von {user} zur├╝cksetzen m├╢chtest?",
|
||||
"create_job": "Aufgabe erstellen",
|
||||
"cron_expression": "Cron Zeitangabe",
|
||||
"cron_expression_description": "Setze ein Intervall f├╝r die Sicherung mittels cron. Hilfe mit dem Format bietet dir dabei z.B der <link>Crontab Guru</link>",
|
||||
"cron_expression_description": "Setze ein Intervall f├╝r die Sicherung mittels cron. Hilfe mit dem Format bietet dir dabei z. B. der <link>Crontab Guru</link>",
|
||||
"cron_expression_presets": "N├╝tzliche Zeitangaben f├╝r Cron",
|
||||
"disable_login": "Login deaktvieren",
|
||||
"disable_login": "Login deaktivieren",
|
||||
"duplicate_detection_job_description": "Diese Aufgabe f├╝hrt das maschinelle Lernen f├╝r jede Datei aus, um Duplikate zu finden. Diese Aufgabe beruht auf der intelligenten Suche",
|
||||
"exclusion_pattern_description": "Mit Ausschlussmustern k├╢nnen Dateien und Ordner beim Scannen Ihrer Bibliothek ignoriert werden. Dies ist n├╝tzlich, wenn du Ordner hast, die Dateien enthalten, die du nicht importieren m├╢chtest, wie z. B. RAW-Dateien.",
|
||||
"external_library_management": "Verwaltung externer Bibliotheken",
|
||||
@@ -120,7 +128,7 @@
|
||||
"machine_learning_duplicate_detection_setting_description": "Verwendung von CLIP-Embeddings zum Erkennen m├╢glicher Duplikate",
|
||||
"machine_learning_enabled": "Maschinelles Lernen aktivieren",
|
||||
"machine_learning_enabled_description": "Wenn diese Option deaktiviert ist, werden alle ML-Funktionen unabh├дngig von den unten aufgef├╝hrten Einstellungen deaktiviert.",
|
||||
"machine_learning_facial_recognition": "Gesichtsidentifikation",
|
||||
"machine_learning_facial_recognition": "Gesichtsidentifizierung",
|
||||
"machine_learning_facial_recognition_description": "Erkenne, identifiziere und gruppiere Gesichter in Bildern",
|
||||
"machine_learning_facial_recognition_model": "Gesichtserkennungs-Modell",
|
||||
"machine_learning_facial_recognition_model_description": "Die Modelle sind in absteigender Reihenfolge ihrer Gr├╢├Яe aufgef├╝hrt. Gr├╢├Яere Modelle sind langsamer und verbrauchen mehr Speicher, liefern aber bessere Ergebnisse. Bitte beachte dabei, dass du die Gesichtserkennungsaufgabe f├╝r alle Bilder neu starten musst, wenn du ein Modell ├дnderst.",
|
||||
@@ -166,6 +174,20 @@
|
||||
"metadata_settings_description": "Metadaten-Einstellungen verwalten",
|
||||
"migration_job": "Migration",
|
||||
"migration_job_description": "Diese Aufgabe migriert Miniaturansichten f├╝r Dateien und Gesichter in die neueste Ordnerstruktur",
|
||||
"nightly_tasks_cluster_faces_setting_description": "Gesichtsidentifikation auf neu erkannten Gesichtern ausf├╝hren",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Neue Gesichter gruppieren",
|
||||
"nightly_tasks_database_cleanup_setting": "Datenbankbereinigungs-Aufgaben",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Alte, abgelaufene Daten aus der Datenbank bereinigen",
|
||||
"nightly_tasks_generate_memories_setting": "Erinnerungen generieren",
|
||||
"nightly_tasks_generate_memories_setting_description": "Neue Erinnerungen aus Dateien erstellen",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Fehlende Miniaturansichten generieren",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "Dateien ohne Miniaturansicht in die Warteschlange zur Miniaturansicht-Generierung hinzuf├╝gen",
|
||||
"nightly_tasks_settings": "Einstellungen f├╝r n├дchtliche Aufgaben",
|
||||
"nightly_tasks_settings_description": "N├дchtliche Aufgaben verwalten",
|
||||
"nightly_tasks_start_time_setting": "Startzeit",
|
||||
"nightly_tasks_start_time_setting_description": "Die Zeit, zu der der Server mit der Ausf├╝hrung der n├дchtlichen Aufgaben beginnt",
|
||||
"nightly_tasks_sync_quota_usage_setting": "Kontingentnutzung synchronisieren",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "Benutzerspeicherkontingent basierend auf der aktuellen Nutzung aktualisieren",
|
||||
"no_paths_added": "Keine Pfade hinzugef├╝gt",
|
||||
"no_pattern_added": "Kein Ausschlussmuster hinzugef├╝gt",
|
||||
"note_apply_storage_label_previous_assets": "Hinweis: Um den Speicherpfad auf die vorher hochgeladenen Dateien anzuwenden, starte den",
|
||||
@@ -196,6 +218,8 @@
|
||||
"oauth_mobile_redirect_uri": "Mobile Umleitungs-URI",
|
||||
"oauth_mobile_redirect_uri_override": "Mobile Umleitungs-URI ├╝berschreiben",
|
||||
"oauth_mobile_redirect_uri_override_description": "Einschalten, wenn der OAuth-Anbieter keine mobile URI wie ''{callback}'' erlaubt",
|
||||
"oauth_role_claim": "Rollen-Claim",
|
||||
"oauth_role_claim_description": "Gew├дhre automatisch Admin-Zugriff basierend auf dem Vorhandensein dieses Claims. Der Claim kann entweder 'user' oder 'admin' sein.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "OAuth-Anmeldeeinstellungen verwalten",
|
||||
"oauth_settings_more_details": "Weitere Informationen zu dieser Funktion findest du in der <link>Dokumentation</link>.",
|
||||
@@ -244,6 +268,7 @@
|
||||
"storage_template_migration_info": "Die Speichervorlage wird alle Dateierweiterungen in Kleinbuchstaben umwandeln. Vorlagen├дnderungen gelten nur f├╝r neue Dateien. Um die Vorlage r├╝ckwirkend auf bereits hochgeladene Assets anzuwenden, f├╝hre den <link>{job}</link> aus.",
|
||||
"storage_template_migration_job": "Speichervorlagenmigrations-Aufgabe",
|
||||
"storage_template_more_details": "Weitere Details zu dieser Funktion findest du unter <template-link>Speichervorlage</template-link> und dessen <implications-link>Implikationen</implications-link>",
|
||||
"storage_template_onboarding_description_v2": "Wenn aktiviert, werden Dateien automatisch nach einer benutzerdefinierten Vorlage organisiert. F├╝r mehr Informationen siehe die <link>Dokumentation</link>.",
|
||||
"storage_template_path_length": "Ungef├дhres Pfadl├дngen-Limit: <b>{length, number}</b>/{limit, number}",
|
||||
"storage_template_settings": "Speichervorlage",
|
||||
"storage_template_settings_description": "Die Ordnerstruktur und den Dateinamen der hochgeladenen Datei verwalten",
|
||||
@@ -356,17 +381,19 @@
|
||||
"admin_password": "Administrator Passwort",
|
||||
"administration": "Verwaltung",
|
||||
"advanced": "Erweitert",
|
||||
"advanced_settings_beta_timeline_subtitle": "Probier die neue App-Erfahrung aus",
|
||||
"advanced_settings_beta_timeline_title": "Beta-Timeline",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Verwende diese Option, um Medien w├дhrend der Synchronisierung nach anderen Kriterien zu filtern. Versuchen dies nur, wenn Probleme mit der Erkennung aller Alben durch die App auftreten.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTELL] Benutze alternativen Filter f├╝r Synchronisierung der Ger├дtealben",
|
||||
"advanced_settings_log_level_title": "Log-Level: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "Einige Ger├дte sind sehr langsam beim Laden von Miniaturbildern direkt aus dem Ger├дt. Aktivieren Sie diese Einstellung, um stattdessen die Server-Bilder zu laden.",
|
||||
"advanced_settings_prefer_remote_subtitle": "Einige Ger├дte sind sehr langsam beim Laden von lokalen Vorschaubildern. Aktivieren Sie diese Einstellung, um stattdessen die Server-Bilder zu laden.",
|
||||
"advanced_settings_prefer_remote_title": "Server-Bilder bevorzugen",
|
||||
"advanced_settings_proxy_headers_subtitle": "Definiere einen Proxy-Header, den Immich bei jeder Netzwerkanfrage mitschicken soll",
|
||||
"advanced_settings_proxy_headers_title": "Proxy-Headers",
|
||||
"advanced_settings_self_signed_ssl_subtitle": "Verifizierung von SSL-Zertifikaten vom Server ├╝berspringen. Notwendig bei selbstsignierten Zertifikaten.",
|
||||
"advanced_settings_self_signed_ssl_title": "Selbstsignierte SSL-Zertifikate erlauben",
|
||||
"advanced_settings_sync_remote_deletions_subtitle": "Automatisches L├╢schen oder Wiederherstellen einer Datei auf diesem Ger├дt, wenn diese Aktion im Web durchgef├╝hrt wird",
|
||||
"advanced_settings_sync_remote_deletions_title": "Synchrone Remote-L├╢schungen [Experimentell]",
|
||||
"advanced_settings_sync_remote_deletions_title": "Mit Server-L├╢schungen synchronisieren [Experimentell]",
|
||||
"advanced_settings_tile_subtitle": "Erweiterte Benutzereinstellungen",
|
||||
"advanced_settings_troubleshooting_subtitle": "Erweiterte Funktionen zur Fehlersuche aktivieren",
|
||||
"advanced_settings_troubleshooting_title": "Fehlersuche",
|
||||
@@ -378,6 +405,7 @@
|
||||
"album_cover_updated": "Album-Cover aktualisiert",
|
||||
"album_delete_confirmation": "Bist du sicher, dass du das Album {album} l├╢schen willst?",
|
||||
"album_delete_confirmation_description": "Falls dieses Album geteilt wurde, k├╢nnen andere Benutzer nicht mehr darauf zugreifen.",
|
||||
"album_deleted": "Album gel├╢scht",
|
||||
"album_info_card_backup_album_excluded": "AUSGESCHLOSSEN",
|
||||
"album_info_card_backup_album_included": "EINGESCHLOSSEN",
|
||||
"album_info_updated": "Album-Infos aktualisiert",
|
||||
@@ -387,6 +415,7 @@
|
||||
"album_options": "Albumoptionen",
|
||||
"album_remove_user": "Nutzer entfernen?",
|
||||
"album_remove_user_confirmation": "Bist du sicher, dass du {user} entfernen willst?",
|
||||
"album_search_not_found": "Keine Alben gefunden, die zur Suche passen",
|
||||
"album_share_no_users": "Es sieht so aus, als h├дttest du dieses Album mit allen Benutzern geteilt oder du hast keine Benutzer, mit denen du teilen kannst.",
|
||||
"album_updated": "Album aktualisiert",
|
||||
"album_updated_setting_description": "Erhalte eine E-Mail-Benachrichtigung, wenn ein freigegebenes Album neue Dateien enth├дlt",
|
||||
@@ -406,6 +435,7 @@
|
||||
"albums_default_sort_order": "Standard Album Sortierung",
|
||||
"albums_default_sort_order_description": "Sortierreihenfolge der Dateien bei der Erstellung neuer Alben.",
|
||||
"albums_feature_description": "Sammlung an Alben die mit anderen Benutzern geteilt werden k├╢nnen.",
|
||||
"albums_on_device_count": "Alben auf dem Ger├дt ({count})",
|
||||
"all": "Alle",
|
||||
"all_albums": "Alle Alben",
|
||||
"all_people": "Alle Personen",
|
||||
@@ -426,6 +456,7 @@
|
||||
"app_settings": "App-Einstellungen",
|
||||
"appears_in": "Erscheint in",
|
||||
"archive": "Archiv",
|
||||
"archive_action_prompt": "{count} zum Archiv hinzugef├╝gt",
|
||||
"archive_or_unarchive_photo": "Foto archivieren bzw. Archivierung aufheben",
|
||||
"archive_page_no_archived_assets": "Keine archivierten Inhalte gefunden",
|
||||
"archive_page_title": "Archiv ({count})",
|
||||
@@ -463,7 +494,6 @@
|
||||
"assets": "Dateien",
|
||||
"assets_added_count": "{count, plural, one {# Datei} other {# Dateien}} hinzugef├╝gt",
|
||||
"assets_added_to_album_count": "{count, plural, one {# Datei} other {# Dateien}} zum Album hinzugef├╝gt",
|
||||
"assets_added_to_name_count": "{count, plural, one {# Element} other {# Elemente}} zu {hasName, select, true {<b>{name}</b>} other {neuem Album}} hinzugef├╝gt",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Datei kann}other {Dateien k├╢nnen}} nicht zum Album hinzugef├╝gt werden",
|
||||
"assets_count": "{count, plural, one {# Datei} other {# Dateien}}",
|
||||
"assets_deleted_permanently": "{count} Element(e) permanent gel├╢scht",
|
||||
@@ -489,6 +519,7 @@
|
||||
"back_close_deselect": "Zur├╝ck, Schlie├Яen oder Abw├дhlen",
|
||||
"background_location_permission": "Hintergrund Standortfreigabe",
|
||||
"background_location_permission_content": "Um im Hintergrund zwischen den Netzwerken wechseln zu k├╢nnen, muss Immich *immer* Zugriff auf den genauen Standort haben, damit die App den Namen des WLAN-Netzwerks ermitteln kann",
|
||||
"backup": "Sicherung",
|
||||
"backup_album_selection_page_albums_device": "Alben auf dem Ger├дt ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Einmalig das Album antippen um es zu sichern, doppelt antippen um es nicht mehr zu sichern",
|
||||
"backup_album_selection_page_assets_scatter": "Elemente (Fotos / Videos) k├╢nnen sich ├╝ber mehrere Alben verteilen. Daher k├╢nnen diese vor der Sicherung eingeschlossen oder ausgeschlossen werden.",
|
||||
@@ -552,6 +583,8 @@
|
||||
"backup_options_page_title": "Sicherungsoptionen",
|
||||
"backup_setting_subtitle": "Verwaltung der Upload-Einstellungen im Hintergrund und im Vordergrund",
|
||||
"backward": "R├╝ckw├дrts",
|
||||
"beta_sync": "Status der Beta-Synchronisierung",
|
||||
"beta_sync_subtitle": "Verwalte das neue Synchronisierungssystem",
|
||||
"biometric_auth_enabled": "Biometrische Authentifizierung aktiviert",
|
||||
"biometric_locked_out": "Du bist von der biometrischen Authentifizierung ausgeschlossen",
|
||||
"biometric_no_options": "Keine biometrischen Optionen verf├╝gbar",
|
||||
@@ -586,6 +619,7 @@
|
||||
"cancel": "Abbrechen",
|
||||
"cancel_search": "Suche abbrechen",
|
||||
"canceled": "Abgebrochen",
|
||||
"canceling": "Abbrechen",
|
||||
"cannot_merge_people": "Personen k├╢nnen nicht zusammengef├╝hrt werden",
|
||||
"cannot_undo_this_action": "Diese Aktion kann nicht r├╝ckg├дngig gemacht werden!",
|
||||
"cannot_update_the_description": "Beschreibung kann nicht aktualisiert werden",
|
||||
@@ -699,10 +733,11 @@
|
||||
"current_server_address": "Aktuelle Serveradresse",
|
||||
"custom_locale": "Benutzerdefinierte Sprache",
|
||||
"custom_locale_description": "Datumsangaben und Zahlen je nach Sprache und Land formatieren",
|
||||
"custom_url": "Benutzerdefinierte URL",
|
||||
"daily_title_text_date": "E, dd MMM",
|
||||
"daily_title_text_date_year": "E, dd MMM, yyyy",
|
||||
"dark": "Dunkel",
|
||||
"darkTheme": "Dunkles Theme umschalten",
|
||||
"dark_theme": "Dunkle Ansicht umschalten",
|
||||
"date_after": "Datum nach",
|
||||
"date_and_time": "Datum und Zeit",
|
||||
"date_before": "Datum vor",
|
||||
@@ -718,6 +753,8 @@
|
||||
"default_locale": "Standard-Sprache",
|
||||
"default_locale_description": "Datumsangaben und Zahlen basierend auf dem Gebietsschema des Browsers formatieren",
|
||||
"delete": "L├╢schen",
|
||||
"delete_action_confirmation_message": "Bist du sicher, dass du dieses Objekt l├╢schen willst? Diese Aktion wird das Objekt in den Papierkorb des Servers verschieben und fragen, ob du es lokal l├╢schen willst",
|
||||
"delete_action_prompt": "{count} gel├╢scht",
|
||||
"delete_album": "Album l├╢schen",
|
||||
"delete_api_key_prompt": "Bist du sicher, dass du diesen API-Schl├╝ssel l├╢schen willst?",
|
||||
"delete_dialog_alert": "Diese Elemente werden unwiderruflich von Immich und dem Ger├дt entfernt",
|
||||
@@ -731,9 +768,12 @@
|
||||
"delete_key": "Schl├╝ssel l├╢schen",
|
||||
"delete_library": "Bibliothek l├╢schen",
|
||||
"delete_link": "Link l├╢schen",
|
||||
"delete_local_action_prompt": "{count} lokal gel├╢scht",
|
||||
"delete_local_dialog_ok_backed_up_only": "Nur gesicherte Inhalte l├╢schen",
|
||||
"delete_local_dialog_ok_force": "Trotzdem l├╢schen",
|
||||
"delete_others": "Andere l├╢schen",
|
||||
"delete_permanently": "Endg├╝ltig l├╢schen",
|
||||
"delete_permanently_action_prompt": "{count} endg├╝ltig gel├╢scht",
|
||||
"delete_shared_link": "geteilten Link l├╢schen",
|
||||
"delete_shared_link_dialog_title": "Geteilten Link l├╢schen",
|
||||
"delete_tag": "Tag l├╢schen",
|
||||
@@ -744,6 +784,7 @@
|
||||
"description": "Beschreibung",
|
||||
"description_input_hint_text": "Beschreibung hinzuf├╝gen...",
|
||||
"description_input_submit_error": "Beschreibung konnte nicht ge├дndert werden, bitte im Log f├╝r mehr Details nachsehen",
|
||||
"deselect_all": "Alle abw├дhlen",
|
||||
"details": "Details",
|
||||
"direction": "Richtung",
|
||||
"disabled": "Deaktiviert",
|
||||
@@ -761,6 +802,7 @@
|
||||
"documentation": "Dokumentation",
|
||||
"done": "Fertig",
|
||||
"download": "Herunterladen",
|
||||
"download_action_prompt": "Herunterladen von {count} Dateien",
|
||||
"download_canceled": "Download abgebrochen",
|
||||
"download_complete": "Download vollst├дndig",
|
||||
"download_enqueue": "Download in die Warteschlange gesetzt",
|
||||
@@ -787,6 +829,7 @@
|
||||
"edit": "Bearbeiten",
|
||||
"edit_album": "Album bearbeiten",
|
||||
"edit_avatar": "Avatar bearbeiten",
|
||||
"edit_birthday": "Geburtsdatum bearbeiten",
|
||||
"edit_date": "Datum bearbeiten",
|
||||
"edit_date_and_time": "Datum und Uhrzeit bearbeiten",
|
||||
"edit_description": "Beschreibung bearbeiten",
|
||||
@@ -798,6 +841,7 @@
|
||||
"edit_key": "Schl├╝ssel bearbeiten",
|
||||
"edit_link": "Link bearbeiten",
|
||||
"edit_location": "Standort bearbeiten",
|
||||
"edit_location_action_prompt": "{count} Geolokationen angepasst",
|
||||
"edit_location_dialog_title": "Ort bearbeiten",
|
||||
"edit_name": "Name bearbeiten",
|
||||
"edit_people": "Personen bearbeiten",
|
||||
@@ -816,6 +860,7 @@
|
||||
"empty_trash": "Papierkorb leeren",
|
||||
"empty_trash_confirmation": "Bist du sicher, dass du den Papierkorb leeren willst?\nDies entfernt alle Dateien im Papierkorb endg├╝ltig aus Immich und kann nicht r├╝ckg├дngig gemacht werden!",
|
||||
"enable": "Aktivieren",
|
||||
"enable_backup": "Sicherung aktivieren",
|
||||
"enable_biometric_auth_description": "Gib deinen PIN Code ein, um die biometrische Authentifizierung zu aktivieren",
|
||||
"enabled": "Aktiviert",
|
||||
"end_date": "Enddatum",
|
||||
@@ -952,6 +997,7 @@
|
||||
},
|
||||
"exif": "EXIF",
|
||||
"exif_bottom_sheet_description": "Beschreibung hinzuf├╝gen...",
|
||||
"exif_bottom_sheet_description_error": "Fehler bei der Aktualisierung der Beschreibung",
|
||||
"exif_bottom_sheet_details": "DETAILS",
|
||||
"exif_bottom_sheet_location": "STANDORT",
|
||||
"exif_bottom_sheet_people": "PERSONEN",
|
||||
@@ -972,6 +1018,8 @@
|
||||
"explorer": "Datei-Explorer",
|
||||
"export": "Exportieren",
|
||||
"export_as_json": "Als JSON exportieren",
|
||||
"export_database": "Datenbank exportieren",
|
||||
"export_database_description": "Exportiert die SQLite Datenbank",
|
||||
"extension": "Erweiterung",
|
||||
"external": "Extern",
|
||||
"external_libraries": "Externe Bibliotheken",
|
||||
@@ -983,6 +1031,7 @@
|
||||
"failed_to_load_assets": "Laden der Assets fehlgeschlagen",
|
||||
"failed_to_load_folder": "Fehler beim Laden des Ordners",
|
||||
"favorite": "Favorit",
|
||||
"favorite_action_prompt": "{count} zu den Favoriten hinzugef├╝gt",
|
||||
"favorite_or_unfavorite_photo": "Favorisiertes oder nicht favorisiertes Foto",
|
||||
"favorites": "Favoriten",
|
||||
"favorites_page_no_favorites": "Keine favorisierten Inhalte gefunden",
|
||||
@@ -1022,6 +1071,9 @@
|
||||
"haptic_feedback_switch": "Haptisches Feedback aktivieren",
|
||||
"haptic_feedback_title": "Haptisches Feedback",
|
||||
"has_quota": "Kontingent",
|
||||
"hash_asset": "Dateihash",
|
||||
"hashed_assets": "Gehashte Dateien",
|
||||
"hashing": "Hashen",
|
||||
"header_settings_add_header_tip": "Header hinzuf├╝gen",
|
||||
"header_settings_field_validator_msg": "Der Wert darf nicht leer sein",
|
||||
"header_settings_header_name_input": "Header-Name",
|
||||
@@ -1043,7 +1095,7 @@
|
||||
"home_page_archive_err_partner": "Inhalte von Partnern k├╢nnen nicht archiviert werden",
|
||||
"home_page_building_timeline": "Zeitachse wird erstellt",
|
||||
"home_page_delete_err_partner": "Inhalte von Partnern k├╢nnen nicht gel├╢scht werden, ├╝berspringe",
|
||||
"home_page_delete_remote_err_local": "Lokale Inhalte in der Auswahl, ├╝berspringen",
|
||||
"home_page_delete_remote_err_local": "Lokale Elemente in der Auswahl zum Entfernen von Remote-Elementen, ├Ьberspringe",
|
||||
"home_page_favorite_err_local": "Kann lokale Elemente noch nicht favorisieren, ├╝berspringen",
|
||||
"home_page_favorite_err_partner": "Inhalte von Partnern k├╢nnen nicht favorisiert werden, ├╝berspringe",
|
||||
"home_page_first_time_notice": "Wenn dies das erste Mal ist dass Du Immich nutzt, stelle bitte sicher, dass mindestens ein Album zur Sicherung ausgew├дhlt ist, sodass die Zeitachse mit Fotos und Videos gef├╝llt werden kann",
|
||||
@@ -1054,6 +1106,7 @@
|
||||
"host": "Host",
|
||||
"hour": "Stunde",
|
||||
"id": "ID",
|
||||
"idle": "Unt├дtig",
|
||||
"ignore_icloud_photos": "iCloud Fotos ignorieren",
|
||||
"ignore_icloud_photos_description": "Fotos, die in der iCloud gespeichert sind, werden nicht auf den immich Server hochgeladen",
|
||||
"image": "Bild",
|
||||
@@ -1111,6 +1164,7 @@
|
||||
"language_no_results_title": "Keine Sprachen gefunden",
|
||||
"language_search_hint": "Sprachen durchsuchen...",
|
||||
"language_setting_description": "W├дhle deine bevorzugte Sprache",
|
||||
"large_files": "Gro├Яe Dateien",
|
||||
"last_seen": "Zuletzt gesehen",
|
||||
"latest_version": "Aktuellste Version",
|
||||
"latitude": "Breitengrad",
|
||||
@@ -1126,16 +1180,18 @@
|
||||
"library_page_sort_created": "Zuletzt erstellt",
|
||||
"library_page_sort_last_modified": "Zuletzt bearbeitet",
|
||||
"library_page_sort_title": "Titel des Albums",
|
||||
"licenses": "Lizenzen",
|
||||
"light": "Hell",
|
||||
"like_deleted": "Like gel├╢scht",
|
||||
"link_motion_video": "Bewegungsvideo verkn├╝pfen",
|
||||
"link_options": "Link-Optionen",
|
||||
"link_to_oauth": "Mit OAuth verkn├╝pfen",
|
||||
"linked_oauth_account": "Verkn├╝pftes OAuth-Konto",
|
||||
"list": "Liste",
|
||||
"loading": "Laden",
|
||||
"loading_search_results_failed": "Laden von Suchergebnissen fehlgeschlagen",
|
||||
"local": "Lokal",
|
||||
"local_asset_cast_failed": "Eine Datei, die nicht auf den Server hochgeladen wurde, kann nicht gecastet werden",
|
||||
"local_assets": "Lokale Dateien",
|
||||
"local_network": "Lokales Netzwerk",
|
||||
"local_network_sheet_info": "Die App stellt ├╝ber diese URL eine Verbindung zum Server her, wenn sie das angegebene WLAN-Netzwerk verwendet",
|
||||
"location_permission": "Standort Genehmigung",
|
||||
@@ -1192,8 +1248,7 @@
|
||||
"manage_your_devices": "Deine eingeloggten Ger├дte verwalten",
|
||||
"manage_your_oauth_connection": "Deine OAuth-Verkn├╝pfung verwalten",
|
||||
"map": "Karte",
|
||||
"map_assets_in_bound": "{count} Foto",
|
||||
"map_assets_in_bounds": "{count} Fotos",
|
||||
"map_assets_in_bounds": "{count, plural, one {# Foto} other {# Fotos}}",
|
||||
"map_cannot_get_user_location": "Standort konnte nicht ermittelt werden",
|
||||
"map_location_dialog_yes": "Ja",
|
||||
"map_location_picker_page_use_location": "Aufnahmeort verwenden",
|
||||
@@ -1245,6 +1300,7 @@
|
||||
"more": "Mehr",
|
||||
"move": "Verschieben",
|
||||
"move_off_locked_folder": "Aus dem gesperrten Ordner verschieben",
|
||||
"move_to_lock_folder_action_prompt": "{count} zum gesperrten Ordner hinzugef├╝gt",
|
||||
"move_to_locked_folder": "In den gesperrten Ordner verschieben",
|
||||
"move_to_locked_folder_confirmation": "Diese Fotos und Videos werden aus allen Alben entfernt und k├╢nnen nur noch im gesperrten Ordner angezeigt werden",
|
||||
"moved_to_archive": "{count, plural, one {# Datei} other {# Dateien}} archiviert",
|
||||
@@ -1291,6 +1347,7 @@
|
||||
"no_results": "Keine Ergebnisse",
|
||||
"no_results_description": "Versuche es mit einem Synonym oder einem allgemeineren Stichwort",
|
||||
"no_shared_albums_message": "Erstelle ein Album, um Fotos und Videos mit Personen in deinem Netzwerk zu teilen",
|
||||
"no_uploads_in_progress": "Kein Upload in Bearbeitung",
|
||||
"not_in_any_album": "In keinem Album",
|
||||
"not_selected": "Nicht ausgew├дhlt",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "Hinweis: Um eine Speicherpfadbezeichnung anzuwenden, starte den",
|
||||
@@ -1328,6 +1385,7 @@
|
||||
"original": "Original",
|
||||
"other": "Sonstiges",
|
||||
"other_devices": "Andere Ger├дte",
|
||||
"other_entities": "Andere Entit├дten",
|
||||
"other_variables": "Sonstige Variablen",
|
||||
"owned": "Eigenes",
|
||||
"owner": "Besitzer",
|
||||
@@ -1459,6 +1517,7 @@
|
||||
"purchase_server_description_2": "Unterst├╝tzerstatus",
|
||||
"purchase_server_title": "Server",
|
||||
"purchase_settings_server_activated": "Der Server-Produktschl├╝ssel wird durch den Administrator verwaltet",
|
||||
"queue_status": "Warteschlange {count}/{total}",
|
||||
"rating": "Bewertung",
|
||||
"rating_clear": "Bewertung l├╢schen",
|
||||
"rating_count": "{count, plural, one {# Stern} other {# Sterne}}",
|
||||
@@ -1487,6 +1546,8 @@
|
||||
"refreshing_faces": "Gesichter werden aktualisiert",
|
||||
"refreshing_metadata": "Metadaten werden aktualisiert",
|
||||
"regenerating_thumbnails": "Miniaturansichten werden neu erstellt",
|
||||
"remote": "Server",
|
||||
"remote_assets": "Server-Dateien",
|
||||
"remove": "Entfernen",
|
||||
"remove_assets_album_confirmation": "Bist du sicher, dass du {count, plural, one {# Datei} other {# Dateien}} aus dem Album entfernen willst?",
|
||||
"remove_assets_shared_link_confirmation": "Bist du sicher, dass du {count, plural, one {# Datei} other {# Dateien}} von diesem geteilten Link entfernen willst?",
|
||||
@@ -1494,7 +1555,9 @@
|
||||
"remove_custom_date_range": "Benutzerdefinierten Datumsbereich entfernen",
|
||||
"remove_deleted_assets": "Offline-Dateien entfernen",
|
||||
"remove_from_album": "Aus Album entfernen",
|
||||
"remove_from_album_action_prompt": "{count} vom Album entfernt",
|
||||
"remove_from_favorites": "Aus Favoriten entfernen",
|
||||
"remove_from_lock_folder_action_prompt": "{count} aus dem gesperrten Ordner entfernt",
|
||||
"remove_from_locked_folder": "Aus gesperrtem Ordner entfernen",
|
||||
"remove_from_locked_folder_confirmation": "Bist du sicher, dass du diese Fotos und Videos aus dem gesperrten Ordner entfernen m├╢chtest? Sie werden wieder in deiner Bibliothek sichtbar sein.",
|
||||
"remove_from_shared_link": "Aus geteiltem Link entfernen",
|
||||
@@ -1522,19 +1585,25 @@
|
||||
"reset_password": "Passwort zur├╝cksetzen",
|
||||
"reset_people_visibility": "Sichtbarkeit von Personen zur├╝cksetzen",
|
||||
"reset_pin_code": "PIN Code zur├╝cksetzen",
|
||||
"reset_sqlite": "SQLite Datenbank zur├╝cksetzen",
|
||||
"reset_sqlite_confirmation": "Bist du sicher, dass du die SQLite-Datenbank zur├╝cksetzen willst? Du musst dich ab- und wieder anmelden, um die Daten neu zu synchronisieren",
|
||||
"reset_sqlite_success": "SQLite Datenbank erfolgreich zur├╝ckgesetzt",
|
||||
"reset_to_default": "Auf Standard zur├╝cksetzen",
|
||||
"resolve_duplicates": "Duplikate entfernen",
|
||||
"resolved_all_duplicates": "Alle Duplikate aufgel├╢st",
|
||||
"restore": "Wiederherstellen",
|
||||
"restore_all": "Alle wiederherstellen",
|
||||
"restore_trash_action_prompt": "{count} aus dem Papierkorb wiederhergestellt",
|
||||
"restore_user": "Nutzer wiederherstellen",
|
||||
"restored_asset": "Datei wiederhergestellt",
|
||||
"resume": "Fortsetzen",
|
||||
"retry_upload": "Upload wiederholen",
|
||||
"review_duplicates": "Duplikate ├╝berpr├╝fen",
|
||||
"review_large_files": "Gro├Яe Dateien ├╝berpr├╝fen",
|
||||
"role": "Rolle",
|
||||
"role_editor": "Bearbeiter",
|
||||
"role_viewer": "Betrachter",
|
||||
"running": "L├дuft",
|
||||
"save": "Speichern",
|
||||
"save_to_gallery": "In Galerie speichern",
|
||||
"saved_api_key": "API-Schl├╝ssel wurde gespeichert",
|
||||
@@ -1666,6 +1735,7 @@
|
||||
"settings_saved": "Einstellungen gespeichert",
|
||||
"setup_pin_code": "Einen PIN Code festlegen",
|
||||
"share": "Teilen",
|
||||
"share_action_prompt": "{count} Dateien geteilt",
|
||||
"share_add_photos": "Fotos hinzuf├╝gen",
|
||||
"share_assets_selected": "{count} ausgew├дhlt",
|
||||
"share_dialog_preparing": "Vorbereiten...",
|
||||
@@ -1687,6 +1757,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Link kopiert",
|
||||
"shared_link_clipboard_text": "Link: {link}\nPasswort: {password}",
|
||||
"shared_link_create_error": "Fehler beim Erstellen der Linkfreigabe",
|
||||
"shared_link_custom_url_description": "Greife ├╝ber eine benutzerdefinierte URL auf diesen Freigabelink zu",
|
||||
"shared_link_edit_description_hint": "Beschreibung eingeben",
|
||||
"shared_link_edit_expire_after_option_day": "1 Tag",
|
||||
"shared_link_edit_expire_after_option_days": "{count} Tagen",
|
||||
@@ -1712,6 +1783,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Geteilte Links verwalten",
|
||||
"shared_link_options": "Optionen f├╝r geteilten Link",
|
||||
"shared_link_password_description": "F├╝r den Zugriff auf diesen freigegebenen Link ist ein Passwort erforderlich",
|
||||
"shared_links": "Geteilte Links",
|
||||
"shared_links_description": "Teile Fotos und Videos mit einem Link",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, one {# geteiltes Foto oder Video.} other {# geteilte Fotos & Videos.}}",
|
||||
@@ -1767,6 +1839,7 @@
|
||||
"sort_title": "Titel",
|
||||
"source": "Quellcode",
|
||||
"stack": "Stapel",
|
||||
"stack_action_prompt": "{count} gestapelt",
|
||||
"stack_duplicates": "Duplikate stapeln",
|
||||
"stack_select_one_photo": "Hauptfoto f├╝r den Stapel ausw├дhlen",
|
||||
"stack_selected_photos": "Ausgew├дhlte Fotos stapeln",
|
||||
@@ -1786,6 +1859,7 @@
|
||||
"storage_quota": "Speicherplatz-Kontingent",
|
||||
"storage_usage": "{used} von {available} verwendet",
|
||||
"submit": "Best├дtigen",
|
||||
"success": "Erfolgreich",
|
||||
"suggestions": "Vorschl├дge",
|
||||
"sunrise_on_the_beach": "Sonnenaufgang am Strand",
|
||||
"support": "Unterst├╝tzung",
|
||||
@@ -1795,6 +1869,8 @@
|
||||
"sync": "Synchronisieren",
|
||||
"sync_albums": "Alben synchronisieren",
|
||||
"sync_albums_manual_subtitle": "Synchronisiere alle hochgeladenen Videos und Fotos in die ausgew├дhlten Backup-Alben",
|
||||
"sync_local": "Lokal synchronisieren",
|
||||
"sync_remote": "mit Server synchronisieren",
|
||||
"sync_upload_album_setting_subtitle": "Erstelle deine ausgew├дhlten Alben in Immich und lade die Fotos und Videos dort hoch",
|
||||
"tag": "Tag",
|
||||
"tag_assets": "Dateien taggen",
|
||||
@@ -1805,11 +1881,12 @@
|
||||
"tag_updated": "Tag aktualisiert: {tag}",
|
||||
"tagged_assets": "{count, plural, one {# Datei} other {# Dateien}} getagged",
|
||||
"tags": "Tags",
|
||||
"tap_to_run_job": "Tippen um den Job zu starten",
|
||||
"template": "Vorlage",
|
||||
"theme": "Theme",
|
||||
"theme_selection": "Themenauswahl",
|
||||
"theme_selection_description": "Automatische Einstellung des Themes auf Hell oder Dunkel, je nach Systemeinstellung des Browsers",
|
||||
"theme_setting_asset_list_storage_indicator_title": "Forschrittsbalken der Sicherung auf dem Vorschaubild",
|
||||
"theme_setting_asset_list_storage_indicator_title": "Fortschrittsbalken der Sicherung auf dem Vorschaubild",
|
||||
"theme_setting_asset_list_tiles_per_row_title": "Anzahl der Elemente pro Reihe ({count})",
|
||||
"theme_setting_colorful_interface_subtitle": "Prim├дrfarbe auf App-Hintergrund anwenden.",
|
||||
"theme_setting_colorful_interface_title": "Farbige UI-Oberfl├дche",
|
||||
@@ -1837,6 +1914,7 @@
|
||||
"total": "Gesamt",
|
||||
"total_usage": "Gesamtnutzung",
|
||||
"trash": "Papierkorb",
|
||||
"trash_action_prompt": "{count} in den Papierkorb verschoben",
|
||||
"trash_all": "Alle l├╢schen",
|
||||
"trash_count": "Papierkorb {count, number}",
|
||||
"trash_delete_asset": "Datei l├╢schen/in den Papierkorb verschieben",
|
||||
@@ -1854,9 +1932,11 @@
|
||||
"unable_to_change_pin_code": "PIN Code konnte nicht ge├дndert werden",
|
||||
"unable_to_setup_pin_code": "PIN Code konnte nicht festgelegt werden",
|
||||
"unarchive": "Entarchivieren",
|
||||
"unarchive_action_prompt": "{count} aus dem Archiv entfernt",
|
||||
"unarchived_count": "{count, plural, other {# entarchiviert}}",
|
||||
"undo": "R├╝ckg├дngig",
|
||||
"unfavorite": "Entfavorisieren",
|
||||
"unfavorite_action_prompt": "{count} aus den Favoriten entfernt",
|
||||
"unhide_person": "Person einblenden",
|
||||
"unknown": "Unbekannt",
|
||||
"unknown_country": "Unbekanntes Land",
|
||||
@@ -1874,15 +1954,20 @@
|
||||
"unselect_all_duplicates": "Alle Duplikate abw├дhlen",
|
||||
"unselect_all_in": "Alle in {group} abw├дhlen",
|
||||
"unstack": "Entstapeln",
|
||||
"unstack_action_prompt": "{count} entstapelt",
|
||||
"unstacked_assets_count": "{count, plural, one {# Datei} other {# Dateien}} entstapelt",
|
||||
"untagged": "Ohne Tag",
|
||||
"up_next": "Weiter",
|
||||
"updated_at": "Aktualisiert",
|
||||
"updated_password": "Passwort aktualisiert",
|
||||
"upload": "Hochladen",
|
||||
"upload_action_prompt": "{count} in der Warteschlange f├╝r Upload",
|
||||
"upload_concurrency": "Parallelit├дt beim Hochladen",
|
||||
"upload_details": "Upload Details",
|
||||
"upload_dialog_info": "Willst du die ausgew├дhlten Elemente auf dem Server sichern?",
|
||||
"upload_dialog_title": "Element hochladen",
|
||||
"upload_errors": "Hochladen mit {count, plural, one {# Fehler} other {# Fehlern}} abgeschlossen, aktualisiere die Seite, um neu hochgeladene Dateien zu sehen.",
|
||||
"upload_finished": "Upload fertig",
|
||||
"upload_progress": "{remaining, number} verbleibend - {processed, number}/{total, number} verarbeitet",
|
||||
"upload_skipped_duplicates": "{count, plural, one {# doppelte Datei} other {# doppelte Dateien}} ausgelassen",
|
||||
"upload_status_duplicates": "Duplikate",
|
||||
@@ -1891,6 +1976,7 @@
|
||||
"upload_success": "Hochladen erfolgreich. Aktualisiere die Seite, um neue hochgeladene Dateien zu sehen.",
|
||||
"upload_to_immich": "Auf Immich hochladen ({count})",
|
||||
"uploading": "Wird hochgeladen",
|
||||
"uploading_media": "Medien werden hochgeladen",
|
||||
"url": "URL",
|
||||
"usage": "Verwendung",
|
||||
"use_biometric": "Biometrie verwenden",
|
||||
@@ -1911,6 +1997,7 @@
|
||||
"user_usage_stats_description": "Statistiken zur Kontonutzung anzeigen",
|
||||
"username": "Nutzername",
|
||||
"users": "Benutzer",
|
||||
"users_added_to_album_count": "{count, plural, one {# Benutzer} other {# Benutzer}} zum Album hinzugef├╝gt",
|
||||
"utilities": "Hilfsmittel",
|
||||
"validate": "Validieren",
|
||||
"validate_endpoint_error": "Bitte gib eine g├╝ltige URL ein",
|
||||
@@ -1929,6 +2016,7 @@
|
||||
"view_album": "Album anzeigen",
|
||||
"view_all": "Alles anzeigen",
|
||||
"view_all_users": "Alle Nutzer anzeigen",
|
||||
"view_details": "Details ansehen",
|
||||
"view_in_timeline": "In Zeitleiste anzeigen",
|
||||
"view_link": "Link anzeigen",
|
||||
"view_links": "Links anzeigen",
|
||||
|
||||
89
i18n/el.json
89
i18n/el.json
@@ -166,6 +166,20 @@
|
||||
"metadata_settings_description": "╬Ф╬╣╬▒╧З╬╡╬п╧Б╬╖╧Г╬╖ ╧Б╧Е╬╕╬╝╬п╧Г╬╡╧Й╬╜ ╬╝╬╡╧Д╬▒╬┤╬╡╬┤╬┐╬╝╬н╬╜╧Й╬╜",
|
||||
"migration_job": "╬Ь╬╡╧Д╬▒╧Ж╬┐╧Б╬м ╬┤╬╡╬┤╬┐╬╝╬н╬╜╧Й╬╜ (Migration)",
|
||||
"migration_job_description": "╬Ь╬╡╧Д╬▒╧Ж╬┐╧Б╬м ╧Д╧Й╬╜ ╬╡╬╣╬║╬┐╬╜╬╣╬┤╬п╧Й╬╜ ╬│╬╣╬▒ ╬▒╧Б╧З╬╡╬п╬▒ ╬║╬▒╬╣ ╧А╧Б╧М╧Г╧Й╧А╬▒ ╧Г╧Д╬╖╬╜ ╧А╬╣╬┐ ╧А╧Б╧М╧Г╧Ж╬▒╧Д╬╖ ╬┤╬┐╬╝╬о ╬▒╧Б╧З╬╡╬п╧Й╬╜",
|
||||
"nightly_tasks_cluster_faces_setting_description": "╬Х╬║╧Д╬н╬╗╬╡╧Г╬╖ ╬▒╬╜╬▒╬│╬╜╧О╧Б╬╣╧Г╬╖╧В ╧А╧Б╬┐╧Г╧О╧А╬┐╧Е ╧Г╬╡ ╬╜╬н╬▒ ╬▒╬╜╬╣╧З╬╜╬╡╧Е╬╝╬н╬╜╬▒ ╧А╧Б╧М╧Г╧Й╧А╬▒",
|
||||
"nightly_tasks_cluster_new_faces_setting": "╬Я╬╝╬▒╬┤╬┐╧А╬┐╬п╬╖╧Г╬╖ ╬╜╬н╧Й╬╜ ╧А╧Б╬┐╧Г╧О╧А╧Й╬╜",
|
||||
"nightly_tasks_database_cleanup_setting": "╬Х╧Б╬│╬▒╧Г╬п╬╡╧В ╬║╬▒╬╕╬▒╧Б╬╣╧Г╬╝╬┐╧Н ╬▓╬м╧Г╬╖╧В ╬┤╬╡╬┤╬┐╬╝╬н╬╜╧Й╬╜",
|
||||
"nightly_tasks_database_cleanup_setting_description": "╬Х╬║╬║╬▒╬╕╬м╧Б╬╣╧Г╬╖ ╧А╬▒╬╗╬╣╧О╬╜ ╬║╬▒╬╣ ╬╗╬╖╬│╬╝╬н╬╜╧Й╬╜ ╬┤╬╡╬┤╬┐╬╝╬н╬╜╧Й╬╜ ╬▒╧А╧М ╧Д╬╖ ╬▓╬м╧Г╬╖ ╬┤╬╡╬┤╬┐╬╝╬н╬╜╧Й╬╜",
|
||||
"nightly_tasks_generate_memories_setting": "╬Ф╬╖╬╝╬╣╬┐╧Е╧Б╬│╬п╬▒ ╬▒╬╜╬▒╬╝╬╜╬о╧Г╬╡╧Й╬╜",
|
||||
"nightly_tasks_generate_memories_setting_description": "╬Ф╬╖╬╝╬╣╬┐╧Е╧Б╬│╬п╬▒ ╬╜╬н╧Й╬╜ ╬▒╬╜╬▒╬╝╬╜╬о╧Г╬╡╧Й╬╜ ╬▒╧А╧М ╬▒╬╜╧Д╬╣╬║╬╡╬п╬╝╬╡╬╜╬▒",
|
||||
"nightly_tasks_missing_thumbnails_setting": "╬Ф╬╖╬╝╬╣╬┐╧Е╧Б╬│╬п╬▒ ╬╡╬╗╬╗╬╡╬╣╧А╧М╬╜╧Д╧Й╬╜ ╬╝╬╣╬║╧Б╬┐╬│╧Б╬▒╧Ж╬╣╧О╬╜",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "╬д╬┐╧А╬┐╬╕╬н╧Д╬╖╧Г╬╖ ╧Г╧Д╬╖ ╬┐╧Е╧Б╬м ╧Д╧Й╬╜ ╬▒╧Б╧З╬╡╬п╧Й╬╜ ╧З╧Й╧Б╬п╧В ╬╝╬╣╬║╧Б╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В ╬│╬╣╬▒ ╬┤╬╖╬╝╬╣╬┐╧Е╧Б╬│╬п╬▒ ╬╝╬╣╬║╧Б╬┐╬│╧Б╬▒╧Ж╬╣╧О╬╜",
|
||||
"nightly_tasks_settings": "╬б╧Е╬╕╬╝╬п╧Г╬╡╬╣╧В ╬│╬╣╬▒ ╧Д╬╣╧В ╬╜╧Е╧З╧Д╬╡╧Б╬╣╬╜╬н╧В ╬╡╧Б╬│╬▒╧Г╬п╬╡╧В",
|
||||
"nightly_tasks_settings_description": "╬Ф╬╣╬▒╧З╬╡╬п╧Б╬╣╧Г╬╖ ╬╜╧Е╧З╧Д╬╡╧Б╬╣╬╜╧О╬╜ ╬╡╧Б╬│╬▒╧Г╬╣╧О╬╜",
|
||||
"nightly_tasks_start_time_setting": "╬П╧Б╬▒ ╬н╬╜╬▒╧Б╬╛╬╖╧В",
|
||||
"nightly_tasks_start_time_setting_description": "╬Ч ╧О╧Б╬▒ ╬║╬▒╧Д╬м ╧Д╬╖╬╜ ╬┐╧А╬┐╬п╬▒ ╬┐ ╬┤╬╣╬▒╬║╬┐╬╝╬╣╧Г╧Д╬о╧В ╬╛╬╡╬║╬╣╬╜╬м╬╡╬╣ ╬╜╬▒ ╬╡╬║╧Д╬╡╬╗╬╡╬п ╧Д╬╣╧В ╬╜╧Е╧З╧Д╬╡╧Б╬╣╬╜╬н╧В ╬╡╧Б╬│╬▒╧Г╬п╬╡╧В",
|
||||
"nightly_tasks_sync_quota_usage_setting": "╬г╧Е╬│╧З╧Б╬┐╬╜╬╣╧Г╬╝╧М╧В ╧З╧Б╬о╧Г╬╖╧В ╧З╧О╧Б╬┐╧Е",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "╬Х╬╜╬╖╬╝╬н╧Б╧Й╧Г╬╖ ╧Д╬┐╧Е ╬┤╬╣╬▒╬╕╬н╧Г╬╣╬╝╬┐╧Е ╧З╧О╧Б╬┐╧Е ╧З╧Б╬о╧Г╧Д╬╖, ╬╝╬╡ ╬▓╬м╧Г╬╖ ╧Д╬╖╬╜ ╧Д╧Б╬н╧З╬┐╧Е╧Г╬▒ ╧З╧Б╬о╧Г╬╖",
|
||||
"no_paths_added": "╬Ф╬╡╬╜ ╧А╧Б╬┐╧Г╧Д╬н╬╕╬╖╬║╬▒╬╜ ╬┤╬╣╬▒╬┤╧Б╬┐╬╝╬н╧В",
|
||||
"no_pattern_added": "╬Ф╬╡╬╜ ╧А╧Б╬┐╧Г╧Д╬н╬╕╬╖╬║╬╡ ╬╝╬┐╧Д╬п╬▓╬┐",
|
||||
"note_apply_storage_label_previous_assets": "╬г╬╖╬╝╬╡╬п╧Й╧Г╬╖: ╬У╬╣╬▒ ╬╜╬▒ ╬╡╧Ж╬▒╧Б╬╝╬┐╧Г╧Д╬╡╬п ╬╖ ╬Х╧Д╬╣╬║╬н╧Д╬▒ ╬С╧А╬┐╬╕╬о╬║╬╡╧Е╧Г╬╖╧В ╧Г╬╡ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒ ╧А╬┐╧Е ╬╡╬п╧З╬▒╬╜ ╬▒╬╜╬▒╧Б╧Д╬╖╬╕╬╡╬п ╧А╬▒╬╗╬▒╬╣╧М╧Д╬╡╧Б╬▒, ╬╡╬║╧Д╬н╬╗╬╡╧Г╬╡ ╧Д╬┐",
|
||||
@@ -196,6 +210,8 @@
|
||||
"oauth_mobile_redirect_uri": "URI ╬С╬╜╬▒╬║╬▒╧Д╬╡╧Н╬╕╧Е╬╜╧Г╬╖╧В ╬│╬╣╬▒ ╬║╬╣╬╜╬╖╧Д╬м ╧Д╬╖╬╗╬н╧Ж╧Й╬╜╬▒",
|
||||
"oauth_mobile_redirect_uri_override": "╬а╧Б╬┐╧Г╧А╬н╬╗╬▒╧Г╬╖ URI ╬▒╬╜╬▒╬║╬▒╧Д╬╡╧Н╬╕╧Е╬╜╧Г╬╖╧В ╬│╬╣╬▒ ╬║╬╣╬╜╬╖╧Д╬м ╧Д╬╖╬╗╬н╧Ж╧Й╬╜╬▒",
|
||||
"oauth_mobile_redirect_uri_override_description": "╬Х╬╜╬╡╧Б╬│╬┐╧А╬┐╬╣╬о╧Г╧Д╬╡ ╧Д╬┐ ╧М╧Д╬▒╬╜ ╬┐ ╧А╬м╧Б╬┐╧З╬┐╧В OAuth ╬┤╬╡╬╜ ╬╡╧А╬╣╧Д╧Б╬н╧А╬╡╬╣ ╬╝╬╣╬▒ URI ╬│╬╣╬▒ ╬║╬╣╬╜╬╖╧Д╬м, ╧М╧А╧Й╧В ╧Д╬┐ ''{callback}''",
|
||||
"oauth_role_claim": "╬С╬╜╬м╬╕╬╡╧Г╬╖ ╧Б╧М╬╗╬┐╧Е",
|
||||
"oauth_role_claim_description": "╬С╧Е╧Д╧М╬╝╬▒╧Д╬╖ ╧А╬▒╧Б╬▒╧З╧О╧Б╬╖╧Г╬╖ ╧А╧Б╧М╧Г╬▓╬▒╧Г╬╖╧В ╬┤╬╣╬▒╧З╬╡╬╣╧Б╬╣╧Г╧Д╬о ╬╝╬╡ ╬▓╬м╧Г╬╖ ╧Д╬╖╬╜ ╧Н╧А╬▒╧Б╬╛╬╖ ╬▒╧Е╧Д╬о╧В ╧Д╬╖╧В ╬▒╬╜╬м╬╕╬╡╧Г╬╖╧В. ╬Ч ╬▒╬╜╬м╬╕╬╡╧Г╬╖ ╬╝╧А╬┐╧Б╬╡╬п ╬╜╬▒ ╬╡╬п╬╜╬▒╬╣ ╬╡╬п╧Д╬╡ '╧З╧Б╬о╧Г╧Д╬╖╧В' ╬╡╬п╧Д╬╡ '╬┤╬╣╬▒╧З╬╡╬╣╧Б╬╣╧Г╧Д╬о╧В'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "╬Ф╬╣╬▒╧З╬╡╬п╧Б╬╣╧Г╬╖ ╧Б╧Е╬╕╬╝╬п╧Г╬╡╧Й╬╜ ╧Г╧Н╬╜╬┤╬╡╧Г╬╖╧В OAuth",
|
||||
"oauth_settings_more_details": "╬У╬╣╬▒ ╧А╬╡╧Б╬╣╧Г╧Г╧М╧Д╬╡╧Б╬╡╧В ╬╗╬╡╧А╧Д╬┐╬╝╬н╧Б╬╡╬╣╬╡╧В ╧Г╧З╬╡╧Д╬╣╬║╬м ╬╝╬╡ ╬▒╧Е╧Д╬о╬╜ ╧Д╬╖ ╬┤╧Е╬╜╬▒╧Д╧М╧Д╬╖╧Д╬▒, ╬▒╬╜╬▒╧Д╧Б╬н╬╛╧Д╬╡ ╧Г╧Д╬╖╬╜ <link>╧Д╬╡╬║╬╝╬╖╧Б╬п╧Й╧Г╬╖</link>.",
|
||||
@@ -357,10 +373,12 @@
|
||||
"admin_password": "╬Ъ╧Й╬┤╬╣╬║╧М╧В ╧А╧Б╧М╧Г╬▓╬▒╧Г╬╖╧В ╬Ф╬╣╬▒╧З╬╡╬╣╧Б╬╣╧Г╧Д╬о",
|
||||
"administration": "╬Ф╬╣╬▒╧З╬╡╬п╧Б╬╣╧Г╬╖",
|
||||
"advanced": "╬У╬╣╬▒ ╧А╧Б╬┐╧З╧Й╧Б╬╖╬╝╬н╬╜╬┐╧Е╧В",
|
||||
"advanced_settings_beta_timeline_subtitle": "╬Ф╬┐╬║╬п╬╝╬▒╧Г╬╡ ╧Д╬╖ ╬╜╬н╬▒ ╬╡╬╝╧А╬╡╬╣╧Б╬п╬▒ ╧Д╬╖╧В ╬╡╧Ж╬▒╧Б╬╝╬┐╬│╬о╧В",
|
||||
"advanced_settings_beta_timeline_title": "╬Ф╬┐╬║╬╣╬╝╬▒╧Г╧Д╬╣╬║╧М ╧З╧Б╬┐╬╜╬┐╬╗╧М╬│╬╣╬┐",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "╬з╧Б╬╖╧Г╬╣╬╝╬┐╧А╬┐╬╣╬о╧Г╧Д╬╡ ╬▒╧Е╧Д╬о╬╜ ╧Д╬╖╬╜ ╬╡╧А╬╣╬╗╬┐╬│╬о ╬│╬╣╬▒ ╬╜╬▒ ╧Ж╬╣╬╗╧Д╧Б╬м╧Б╬╡╧Д╬╡ ╧Д╬▒ ╬╝╬н╧Г╬▒ ╬╡╬╜╬╖╬╝╬н╧Б╧Й╧Г╬╖╧В ╬║╬▒╧Д╬м ╧Д╬┐╬╜ ╧Г╧Е╬│╧З╧Б╬┐╬╜╬╣╧Г╬╝╧М ╬╝╬╡ ╬▓╬м╧Г╬╖ ╬╡╬╜╬▒╬╗╬╗╬▒╬║╧Д╬╣╬║╬м ╬║╧Б╬╣╧Д╬о╧Б╬╣╬▒. ╬Ф╬┐╬║╬╣╬╝╬м╧Г╧Д╬╡ ╬▒╧Е╧Д╬о ╧Д╬╖ ╬┤╧Е╬╜╬▒╧Д╧М╧Д╬╖╧Д╬▒ ╬╝╧М╬╜╬┐ ╬▒╬╜ ╬н╧З╬╡╧Д╬╡ ╧А╧Б╬┐╬▓╬╗╬о╬╝╬▒╧Д╬▒ ╬╝╬╡ ╧Д╬╖╬╜ ╬╡╧Ж╬▒╧Б╬╝╬┐╬│╬о ╧А╬┐╧Е ╬╡╬╜╧Д╬┐╧А╬п╬╢╬╡╬╣ ╧М╬╗╬▒ ╧Д╬▒ ╬м╬╗╬╝╧А╬┐╧Е╬╝.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[╬а╬Х╬Щ╬б╬С╬Ь╬С╬д╬Щ╬Ъ╬Я] ╬з╧Б╬о╧Г╬╖ ╬╡╬╜╬▒╬╗╬╗╬▒╬║╧Д╬╣╬║╬┐╧Н ╧Ж╬п╬╗╧Д╧Б╬┐╧Е ╧Г╧Е╬│╧З╧Б╬┐╬╜╬╣╧Г╬╝╬┐╧Н ╬м╬╗╬╝╧А╬┐╧Е╬╝ ╧Г╧Е╧Г╬║╬╡╧Е╬о╧В",
|
||||
"advanced_settings_log_level_title": "╬Х╧А╬п╧А╬╡╬┤╬┐ ╧Г╧Н╬╜╬┤╬╡╧Г╬╖╧В: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "╬Ь╬╡╧Б╬╣╬║╬н╧В ╧Г╧Е╧Г╬║╬╡╧Е╬н╧В ╬▒╧Б╬│╬┐╧Н╬╜ ╧А╬┐╬╗╧Н ╬╜╬▒ ╧Ж╬┐╧Б╧Д╧О╧Г╬┐╧Е╬╜ ╬╝╬╣╬║╧Б╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В ╬▒╧А╧М ╬▒╧Б╧З╬╡╬п╬▒ ╧Г╧Д╬╖ ╧Г╧Е╧Г╬║╬╡╧Е╬о. ╬Х╬╜╬╡╧Б╬│╬┐╧А╬┐╬╣╬о╧Г╧Д╬╡ ╬▒╧Е╧Д╬о╬╜ ╧Д╬╖ ╧Б╧Н╬╕╬╝╬╣╧Г╬╖ ╬│╬╣╬▒ ╬╜╬▒ ╧Ж╬┐╧Б╧Д╧О╬╜╬┐╬╜╧Д╬▒╬╣ ╬▒╬╜╧Д╬п ╬▒╧Е╧Д╬┐╧Н ╬▒╧А╬┐╬╝╬▒╬║╧Б╧Е╧Г╬╝╬н╬╜╬╡╧В ╬╡╬╣╬║╧М╬╜╬╡╧В.",
|
||||
"advanced_settings_prefer_remote_subtitle": "╬Ь╬╡╧Б╬╣╬║╬н╧В ╧Г╧Е╧Г╬║╬╡╧Е╬н╧В ╬▒╧Б╬│╬┐╧Н╬╜ ╧А╬┐╬╗╧Н ╬╜╬▒ ╧Ж╬┐╧Б╧Д╧О╧Г╬┐╧Е╬╜ ╬╝╬╣╬║╧Б╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В ╬▒╧А╧М ╧Д╬┐╧А╬╣╬║╬м ╬▒╧Б╧З╬╡╬п╬▒. ╬Х╬╜╬╡╧Б╬│╬┐╧А╬┐╬╣╬о╧Г╧Д╬╡ ╬▒╧Е╧Д╬о╬╜ ╧Д╬╖ ╧Б╧Н╬╕╬╝╬╣╧Г╬╖ ╬│╬╣╬▒ ╬╜╬▒ ╧Ж╬┐╧Б╧Д╧О╬╜╬┐╬╜╧Д╬▒╬╣ ╬▒╬╜╧Д╬п ╬▒╧Е╧Д╬┐╧Н ╬▒╧А╬┐╬╝╬▒╬║╧Б╧Е╧Г╬╝╬н╬╜╬╡╧В ╬╡╬╣╬║╧М╬╜╬╡╧В.",
|
||||
"advanced_settings_prefer_remote_title": "╬а╧Б╬┐╧Д╬п╬╝╬╖╧Г╬╖ ╬▒╧А╬┐╬╝╬▒╬║╧Б╧Е╧Г╬╝╬н╬╜╧Й╬╜ ╬╡╬╣╬║╧М╬╜╧Й╬╜",
|
||||
"advanced_settings_proxy_headers_subtitle": "╬Ъ╬▒╬╕╬┐╧Б╬╣╧Г╬╝╧М╧В ╬║╬╡╧Ж╬▒╬╗╬п╬┤╧Й╬╜ ╬┤╬╣╬▒╬║╬┐╬╝╬╣╧Г╧Д╬о ╬╝╬╡╧Г╬┐╬╗╬м╬▓╬╖╧Г╬╖╧В ╧А╬┐╧Е ╧Д╬┐ Immich ╧А╧Б╬н╧А╬╡╬╣ ╬╜╬▒ ╧Г╧Д╬н╬╗╬╜╬╡╬╣ ╬╝╬╡ ╬║╬м╬╕╬╡ ╬▒╬п╧Д╬╖╬╝╬▒ ╬┤╬╣╬║╧Д╧Н╬┐╧Е",
|
||||
"advanced_settings_proxy_headers_title": "╬Ъ╬╡╧Ж╬▒╬╗╬п╬┤╬╡╧В ╬┤╬╣╬▒╬║╬┐╬╝╬╣╧Г╧Д╬о ╬╝╬╡╧Г╬┐╬╗╬м╬▓╬╖╧Г╬╖╧В",
|
||||
@@ -379,6 +397,7 @@
|
||||
"album_cover_updated": "╬д╬┐ ╬╡╬╛╧О╧Ж╧Е╬╗╬╗╬┐ ╧Д╬┐╧Е ╬м╬╗╬╝╧А╬┐╧Е╬╝, ╬╡╬╜╬╖╬╝╬╡╧Б╧О╬╕╬╖╬║╬╡",
|
||||
"album_delete_confirmation": "╬Х╬п╧Г╧Д╬╡ ╧Г╬п╬│╬┐╧Е╧Б╬┐╬╣ ╧М╧Д╬╣ ╬╕╬н╬╗╬╡╧Д╬╡ ╬╜╬▒ ╬┤╬╣╬▒╬│╧Б╬м╧И╬╡╧Д╬╡ ╧Д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝ {album};",
|
||||
"album_delete_confirmation_description": "╬Х╬м╬╜ ╬▒╧Е╧Д╧М ╧Д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝ ╬╡╬п╬╜╬▒╬╣ ╬║╬┐╬╣╬╜╧М╧З╧Б╬╖╧Г╧Д╬┐, ╬┐╬╣ ╬м╬╗╬╗╬┐╬╣ ╧З╧Б╬о╧Г╧Д╬╡╧В ╬┤╬╡╬╜ ╬╕╬▒ ╬╝╧А╬┐╧Б╬┐╧Н╬╜ ╬╜╬▒ ╬н╧З╬┐╧Е╬╜ ╧А╧Б╧М╧Г╬▓╬▒╧Г╬╖.",
|
||||
"album_deleted": "╬д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝ ╬┤╬╣╬▒╬│╧Б╬м╧Ж╬╖╬║╬╡",
|
||||
"album_info_card_backup_album_excluded": "╬Х╬Ю╬С╬Щ╬б╬Я╬е╬Ь╬Х╬Э╬Я",
|
||||
"album_info_card_backup_album_included": "╬г╬е╬Ь╬а╬Х╬б╬Щ╬Ы╬С╬Ь╬Т╬С╬Э╬Я╬Ь╬Х╬Э╬Я",
|
||||
"album_info_updated": "╬Я╬╣ ╧А╬╗╬╖╧Б╬┐╧Ж╬┐╧Б╬п╬╡╧В ╧Д╬┐╧Е ╬м╬╗╬╝╧А╬┐╧Е╬╝, ╬╡╬╜╬╖╬╝╬╡╧Б╧О╬╕╬╖╬║╬▒╬╜",
|
||||
@@ -388,6 +407,7 @@
|
||||
"album_options": "╬Х╧А╬╣╬╗╬┐╬│╬н╧В ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"album_remove_user": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╧З╧Б╬о╧Г╧Д╬╖;",
|
||||
"album_remove_user_confirmation": "╬Х╬п╧Г╧Д╬╡ ╧Г╬п╬│╬┐╧Е╧Б╬┐╬╣ ╧М╧Д╬╣ ╬╕╬н╬╗╬╡╧Д╬╡ ╬╜╬▒ ╬▒╧Ж╬▒╬╣╧Б╬н╧Г╬╡╧Д╬╡ ╧Д╬┐╬╜/╧Д╬╖╬╜ {user};",
|
||||
"album_search_not_found": "╬Ф╬╡ ╬▓╧Б╬н╬╕╬╖╬║╬▒╬╜ ╬м╬╗╬╝╧А╬┐╧Е╬╝ ╧А╬┐╧Е ╬╜╬▒ ╧Д╬▒╬╣╧Б╬╣╬м╬╢╬┐╧Е╬╜ ╬╝╬╡ ╧Д╬╖╬╜ ╬▒╬╜╬▒╬╢╬о╧Д╬╖╧Г╬о ╧Г╬▒╧В",
|
||||
"album_share_no_users": "╬ж╬▒╬п╬╜╬╡╧Д╬▒╬╣ ╧М╧Д╬╣ ╬н╧З╬╡╧Д╬╡ ╬║╬┐╬╣╬╜╬┐╧А╬┐╬╣╬о╧Г╬╡╬╣ ╬▒╧Е╧Д╧М ╧Д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝ ╧Г╬╡ ╧М╬╗╬┐╧Е╧В ╧Д╬┐╧Е╧В ╧З╧Б╬о╧Г╧Д╬╡╧В ╬о ╬┤╬╡╬╜ ╬н╧З╬╡╧Д╬╡ ╧З╧Б╬о╧Г╧Д╬╡╧В ╬│╬╣╬▒ ╬╜╬▒ ╧Д╬┐ ╬║╬┐╬╣╬╜╬┐╧А╬┐╬╣╬о╧Г╬╡╧Д╬╡.",
|
||||
"album_updated": "╬д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝, ╬╡╬╜╬╖╬╝╬╡╧Б╧О╬╕╬╖╬║╬╡",
|
||||
"album_updated_setting_description": "╬Ы╬м╬▓╬╡╧Д╬╡ ╬╡╬╣╬┤╬┐╧А╬┐╬п╬╖╧Г╬╖ ╬╝╬н╧Г╧Й email ╧М╧Д╬▒╬╜ ╬н╬╜╬▒ ╬║╬┐╬╣╬╜╧М╧З╧Б╬╖╧Г╧Д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝ ╬н╧З╬╡╬╣ ╬╜╬н╬▒ ╬▒╧Б╧З╬╡╬п╬▒",
|
||||
@@ -407,6 +427,7 @@
|
||||
"albums_default_sort_order": "╬а╧Б╬┐╬╡╧А╬╣╬╗╬╡╬│╬╝╬н╬╜╬╖ ╧Д╬▒╬╛╬╣╬╜╧М╬╝╬╖╧Г╬╖ ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"albums_default_sort_order_description": "╬С╧Б╧З╬╣╬║╬о ╧Д╬▒╬╛╬╣╬╜╧М╬╝╬╖╧Г╬╖ ╬║╬▒╧Д╬м ╧Д╬╖ ╬┤╬╖╬╝╬╣╬┐╧Е╧Б╬│╬п╬▒ ╬╜╬н╧Й╬╜ ╬м╬╗╬╝╧А╬┐╧Е╬╝.",
|
||||
"albums_feature_description": "╬г╧Е╬╗╬╗╬┐╬│╬н╧В ╧Г╧Д╬┐╬╣╧З╬╡╬п╧Й╬╜ ╧А╬┐╧Е ╬╝╧А╬┐╧Б╬┐╧Н╬╜ ╬╜╬▒ ╬║╬┐╬╣╬╜╬┐╧А╬┐╬╣╬╖╬╕╬┐╧Н╬╜ ╧Г╬╡ ╬м╬╗╬╗╬┐╧Е╧В ╧З╧Б╬о╧Г╧Д╬╡╧В.",
|
||||
"albums_on_device_count": "╬Ж╬╗╬╝╧А╬┐╧Е╬╝ ╧Г╧Д╬╖ ╧Г╧Е╧Г╬║╬╡╧Е╬о ({count})",
|
||||
"all": "╬М╬╗╬▒",
|
||||
"all_albums": "╬М╬╗╬▒ ╧Д╬▒ ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"all_people": "╬М╬╗╬▒ ╧Д╬▒ ╬м╧Д╬┐╬╝╬▒",
|
||||
@@ -427,6 +448,7 @@
|
||||
"app_settings": "╬б╧Е╬╕╬╝╬п╧Г╬╡╬╣╧В ╬╡╧Ж╬▒╧Б╬╝╬┐╬│╬о╧В",
|
||||
"appears_in": "╬Х╬╝╧Ж╬▒╬╜╬п╬╢╬╡╧Д╬▒╬╣ ╧Г╬╡",
|
||||
"archive": "╬С╧Б╧З╬╡╬п╬┐",
|
||||
"archive_action_prompt": "╬а╧Б╬┐╧Г╧Д╬н╬╕╬╖╬║╬▒╬╜ {count} ╧Г╧Д╬┐ ╬С╧Б╧З╬╡╬п╬┐",
|
||||
"archive_or_unarchive_photo": "╬С╧Б╧З╬╡╬╣╬┐╬╕╬н╧Д╬╖╧Г╬╖ ╬о ╬▒╧А╬┐╬▒╧Б╧З╬╡╬╣╬┐╬╕╬н╧Д╬╖╧Г╬╖ ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬▒╧В",
|
||||
"archive_page_no_archived_assets": "╬Ф╬╡ ╬▓╧Б╬н╬╕╬╖╬║╬▒╬╜ ╬▒╧Б╧З╬╡╬╣╬┐╬╕╬╡╧Д╬╖╬╝╬н╬╜╬▒ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒",
|
||||
"archive_page_title": "╬С╧Б╧З╬╡╬п╬┐ ({count})",
|
||||
@@ -464,7 +486,6 @@
|
||||
"assets": "╬С╬╜╧Д╬╣╬║╬╡╬п╬╝╬╡╬╜╬▒",
|
||||
"assets_added_count": "╬а╧Б╬┐╧Г╧Д╬н╬╕╬╖╬║╬╡ {count, plural, one {# ╬▒╧Б╧З╬╡╬п╬┐} other {# ╬▒╧Б╧З╬╡╬п╬▒}}",
|
||||
"assets_added_to_album_count": "╬а╧Б╬┐╧Г╧Д╬н╬╕╬╖╬║╬╡ {count, plural, one {# ╬▒╧Б╧З╬╡╬п╬┐} other {# ╬▒╧Б╧З╬╡╬п╬▒}} ╧Г╧Д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"assets_added_to_name_count": "╬а╧Б╬┐╧Г╧Д╬н╬╕╬╖╬║╬╡ {count, plural, one {# ╬▒╧Б╧З╬╡╬п╬┐} other {# ╬▒╧Б╧З╬╡╬п╬▒}} ╧Г╧Д╬┐ {hasName, select, true {<b>{name}</b>} other {╬╜╬н╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝}}",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {╬г╧Д╬┐╬╣╧З╬╡╬п╬┐} other {╬г╧Д╬┐╬╣╧З╬╡╬п╬▒}} ╬┤╬╡╬╜ ╬╝╧А╬┐╧Б╬┐╧Н╬╜ ╬╜╬▒ ╧А╧Б╬┐╧Г╧Д╬╡╬╕╬┐╧Н╬╜ ╧Г╧Д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"assets_count": "{count, plural, one {# ╬▒╧Б╧З╬╡╬п╬┐} other {# ╬▒╧Б╧З╬╡╬п╬▒}}",
|
||||
"assets_deleted_permanently": "{count} ╧Д╬▒ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒ ╬┤╬╣╬▒╬│╧Б╬м╧Ж╬╖╬║╬▒╬╜ ╬┐╧Б╬╣╧Г╧Д╬╣╬║╬м",
|
||||
@@ -490,6 +511,7 @@
|
||||
"back_close_deselect": "╬а╬п╧Г╧Й, ╬║╬╗╬╡╬п╧Г╬╣╬╝╬┐ ╬о ╬▒╧А╬┐╬╡╧А╬╣╬╗╬┐╬│╬о",
|
||||
"background_location_permission": "╬Ж╬┤╬╡╬╣╬▒ ╧Д╬┐╧А╬┐╬╕╬╡╧Г╬п╬▒╧В ╧Г╧Д╬┐ ╧А╬▒╧Б╬▒╧Г╬║╬о╬╜╬╣╬┐",
|
||||
"background_location_permission_content": "╬д╬┐ Immich ╬│╬╣╬▒ ╬╜╬▒ ╬╝╧А╬┐╧Б╬╡╬п ╬╜╬▒ ╬▒╬╗╬╗╬м╬╢╬╡╬╣ ╬┤╬п╬║╧Д╧Е╬▒ ╧М╧Д╬▒╬╜ ╧Д╧Б╬н╧З╬╡╬╣ ╧Г╧Д╬┐ ╧А╬▒╧Б╬▒╧Г╬║╬о╬╜╬╣╬┐, ╧А╧Б╬н╧А╬╡╬╣ *╧А╬м╬╜╧Д╬▒* ╬╜╬▒ ╬н╧З╬╡╬╣ ╧А╧Б╧М╧Г╬▓╬▒╧Г╬╖ ╧Г╧Д╬╖╬╜ ╬▒╬║╧Б╬╣╬▓╬о ╧Д╬┐╧А╬┐╬╕╬╡╧Г╬п╬▒ ╧О╧Г╧Д╬╡ ╬╖ ╬╡╧Ж╬▒╧Б╬╝╬┐╬│╬о ╬╜╬▒ ╬╝╧А╬┐╧Б╬╡╬п ╬╜╬▒ ╬┤╬╣╬▒╬▓╬м╬╢╬╡╬╣ ╧Д╬┐ ╧М╬╜╬┐╬╝╬▒ ╧Д╬┐╧Е ╬┤╬╣╬║╧Д╧Н╬┐╧Е Wi-Fi",
|
||||
"backup": "╬С╬╜╧Д╬п╬│╧Б╬▒╧Ж╬▒ ╬▒╧Г╧Ж╬▒╬╗╬╡╬п╬▒╧В",
|
||||
"backup_album_selection_page_albums_device": "╬Ж╬╗╬╝╧А╬┐╧Е╬╝ ╧Г╧Д╬╖ ╧Г╧Е╧Г╬║╬╡╧Е╬о ({count})",
|
||||
"backup_album_selection_page_albums_tap": "╬а╬м╧Д╬╖╬╝╬▒ ╬│╬╣╬▒ ╧Г╧Е╬╝╧А╬╡╧Б╬п╬╗╬╖╧И╬╖, ╬┤╬╣╧А╬╗╧М ╧А╬м╧Д╬╖╬╝╬▒ ╬│╬╣╬▒ ╬╡╬╛╬▒╬п╧Б╬╡╧Г╬╖",
|
||||
"backup_album_selection_page_assets_scatter": "╬д╬▒ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒ ╬╝╧А╬┐╧Б╬╡╬п ╬╜╬▒ ╬┤╬╣╬▒╧Г╬║╬┐╧Б╧А╬╣╧Г╧Д╬┐╧Н╬╜ ╧Г╬╡ ╧А╬┐╬╗╬╗╬м ╬м╬╗╬╝╧А╬┐╧Е╬╝. ╬И╧Д╧Г╬╣, ╧Д╬▒ ╬м╬╗╬╝╧А╬┐╧Е╬╝ ╬╝╧А╬┐╧Б╬┐╧Н╬╜ ╬╜╬▒ ╧А╬╡╧Б╬╣╬╗╬╖╧Ж╬╕╬┐╧Н╬╜ ╬о ╬╜╬▒ ╬╡╬╛╬▒╬╣╧Б╬╡╬╕╬┐╧Н╬╜ ╬║╬▒╧Д╬м ╧Д╬╖ ╬┤╬╣╬▒╬┤╬╣╬║╬▒╧Г╬п╬▒ ╬┤╬╖╬╝╬╣╬┐╧Е╧Б╬│╬п╬▒╧В ╬▒╬╜╧Д╬╣╬│╧Б╬м╧Ж╧Й╬╜ ╬▒╧Г╧Ж╬▒╬╗╬╡╬п╬▒╧В.",
|
||||
@@ -553,6 +575,8 @@
|
||||
"backup_options_page_title": "╬Х╧А╬╣╬╗╬┐╬│╬н╧В ╬▒╬╜╧Д╬╣╬│╧Б╬м╧Ж╧Й╬╜ ╬▒╧Г╧Ж╬▒╬╗╬╡╬п╬▒╧В",
|
||||
"backup_setting_subtitle": "╬Ф╬╣╬▒╧З╬╡╬п╧Б╬╣╧Г╬╖ ╧Б╧Е╬╕╬╝╬п╧Г╬╡╧Й╬╜ ╬╝╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖╧В ╧Г╧Д╬┐ ╧А╬▒╧Б╬▒╧Г╬║╬о╬╜╬╣╬┐ ╬║╬▒╬╣ ╧Г╧Д╬┐ ╧А╧Б╬┐╧Г╬║╬о╬╜╬╣╬┐",
|
||||
"backward": "╬а╧Б╬┐╧В ╧Д╬▒ ╧А╬п╧Г╧Й",
|
||||
"beta_sync": "╬Ъ╬▒╧Д╬м╧Г╧Д╬▒╧Г╬╖ ╬г╧Е╬│╧З╧Б╬┐╬╜╬╣╧Г╬╝╬┐╧Н Beta (╬┤╬┐╬║╬╣╬╝╬▒╧Г╧Д╬╣╬║╬о)",
|
||||
"beta_sync_subtitle": "╬Ф╬╣╬▒╧З╬╡╬п╧Б╬╣╧Г╬╖ ╧Д╬┐╧Е ╬╜╬н╬┐╧Е ╧Г╧Е╧Г╧Д╬о╬╝╬▒╧Д╬┐╧В ╧Г╧Е╬│╧З╧Б╬┐╬╜╬╣╧Г╬╝╬┐╧Н",
|
||||
"biometric_auth_enabled": "╬Т╬╣╬┐╬╝╬╡╧Д╧Б╬╣╬║╬о ╧Д╬▒╧Е╧Д╬┐╧А╬┐╬п╬╖╧Г╬╖ ╬╡╬╜╬╡╧Б╬│╬┐╧А╬┐╬╣╬о╬╕╬╖╬║╬╡",
|
||||
"biometric_locked_out": "╬Х╬п╧Г╧Д╬╡ ╬║╬╗╬╡╬╣╬┤╧Й╬╝╬н╬╜╬┐╬╣ ╬╡╬║╧Д╧М╧В ╧Д╬╖╧В ╬▓╬╣╬┐╬╝╬╡╧Д╧Б╬╣╬║╬о╧В ╧Д╬▒╧Е╧Д╬┐╧А╬┐╬п╬╖╧Г╬╖╧В",
|
||||
"biometric_no_options": "╬Ф╬╡╬╜ ╧Е╧А╬м╧Б╧З╬┐╧Е╬╜ ╬┤╬╣╬▒╬╕╬н╧Г╬╣╬╝╬┐╬╣ ╧Д╧Б╧М╧А╬┐╬╣ ╬▓╬╣╬┐╬╝╬╡╧Д╧Б╬╣╬║╬о╧В ╧Д╬▒╧Е╧Д╬┐╧А╬┐╬п╬╖╧Г╬╖╧В",
|
||||
@@ -587,6 +611,7 @@
|
||||
"cancel": "╬С╬║╧Н╧Б╧Й╧Г╬╖",
|
||||
"cancel_search": "╬С╬║╧Н╧Б╧Й╧Г╬╖ ╬▒╬╜╬▒╬╢╬о╧Д╬╖╧Г╬╖╧В",
|
||||
"canceled": "╬С╬║╧Е╧Б╧Й╬╝╬н╬╜╬┐",
|
||||
"canceling": "╬С╬║╧Е╧Б╧О╬╜╬╡╧Д╬▒╬╣",
|
||||
"cannot_merge_people": "╬С╬┤╧Н╬╜╬▒╧Д╬╖ ╬╖ ╧Г╧Е╬│╧З╧О╬╜╬╡╧Е╧Г╬╖ ╬▒╧Д╧М╬╝╧Й╬╜",
|
||||
"cannot_undo_this_action": "╬Ф╬╡╬╜ ╬╝╧А╬┐╧Б╬╡╬п╧Д╬╡ ╬╜╬▒ ╬▒╬╜╬▒╬╣╧Б╬н╧Г╬╡╧Д╬╡ ╬▒╧Е╧Д╬о╬╜ ╧Д╬╖╬╜ ╬╡╬╜╬н╧Б╬│╬╡╬╣╬▒!",
|
||||
"cannot_update_the_description": "╬С╬┤╧Н╬╜╬▒╧Д╬╖ ╬╖ ╬╡╬╜╬╖╬╝╬н╧Б╧Й╧Г╬╖ ╧Д╬╖╧В ╧А╬╡╧Б╬╣╬│╧Б╬▒╧Ж╬о╧В",
|
||||
@@ -700,10 +725,11 @@
|
||||
"current_server_address": "╬д╧Б╬н╧З╬┐╧Е╧Г╬▒ ╬┤╬╣╬╡╧Н╬╕╧Е╬╜╧Г╬╖ ╬┤╬╣╬▒╬║╬┐╬╝╬╣╧Г╧Д╬о",
|
||||
"custom_locale": "╬а╧Б╬┐╧Г╬▒╧Б╬╝╬┐╧Г╬╝╬н╬╜╬╖ ╬д╬┐╧А╬╣╬║╬о ╬б╧Н╬╕╬╝╬╣╧Г╬╖",
|
||||
"custom_locale_description": "╬Ь╬┐╧Б╧Ж╬┐╧А╬┐╬╣╬о╧Г╧Д╬╡ ╧Д╬╣╧В ╬╖╬╝╬╡╧Б╬┐╬╝╬╖╬╜╬п╬╡╧В ╬║╬▒╬╣ ╧Д╬┐╧Е╧В ╬▒╧Б╬╣╬╕╬╝╬┐╧Н╧В, ╧Г╧Н╬╝╧Ж╧Й╬╜╬▒ ╬╝╬╡ ╧Д╬╖ ╬│╬╗╧О╧Г╧Г╬▒ ╬║╬▒╬╣ ╧Д╬╖╬╜ ╧А╬╡╧Б╬╣╬┐╧З╬о",
|
||||
"custom_url": "╬а╧Б╬┐╧Г╬▒╧Б╬╝╬┐╧Г╬╝╬н╬╜╬╖ ╬┤╬╣╬╡╧Н╬╕╧Е╬╜╧Г╬╖ URL",
|
||||
"daily_title_text_date": "╬Х, MMM dd",
|
||||
"daily_title_text_date_year": "╬Х, MMM dd, yyyy",
|
||||
"dark": "╬г╬║╬┐╧Н╧Б╬┐",
|
||||
"darkTheme": "╬Х╬╜╬▒╬╗╬╗╬▒╬│╬о ╧Г╬║╬┐╧Н╧Б╬┐╧Е ╬╕╬н╬╝╬▒╧Д╬┐╧В",
|
||||
"dark_theme": "╬Х╬╜╬▒╬╗╬╗╬▒╬│╬о ╧Г╬║╬┐╧Д╬╡╬╣╬╜╬о╧В ╬╡╬╝╧Ж╬м╬╜╬╣╧Г╬╖╧В",
|
||||
"date_after": "╬Ч╬╝╬╡╧Б╬┐╬╝╬╖╬╜╬п╬▒ ╬╝╬╡╧Д╬м",
|
||||
"date_and_time": "╬Ч╬╝╬╡╧Б╬┐╬╝╬╖╬╜╬п╬▒ ╬║╬▒╬╣ ╧О╧Б╬▒",
|
||||
"date_before": "╬Ч╬╝╬╡╧Б╬┐╬╝╬╖╬╜╬п╬▒ ╧А╧Б╬╣╬╜",
|
||||
@@ -719,6 +745,8 @@
|
||||
"default_locale": "╬а╧Б╬┐╬╡╧А╬╣╬╗╬╡╬│╬╝╬н╬╜╬╖ ╬д╬┐╧А╬╣╬║╬о ╬б╧Н╬╕╬╝╬╣╧Г╬╖",
|
||||
"default_locale_description": "╬Ь╬┐╧Б╧Ж╬┐╧А╬┐╬╣╬о╧Г╧Д╬╡ ╧Д╬╣╧В ╬╖╬╝╬╡╧Б╬┐╬╝╬╖╬╜╬п╬╡╧В ╬║╬▒╬╣ ╧Д╬┐╧Е╧В ╬▒╧Б╬╣╬╕╬╝╬┐╧Н╧В ╬╝╬╡ ╬▓╬м╧Г╬╖ ╧Д╬╖╬╜ ╧Д╬┐╧А╬╣╬║╬о ╧Б╧Н╬╕╬╝╬╣╧Г╬╖ ╧Д╬┐╧Е ╧А╧Б╬┐╬│╧Б╬м╬╝╬╝╬▒╧Д╬┐╧В ╧А╬╡╧Б╬╣╬о╬│╬╖╧Г╬о╧В ╧Г╬▒╧В",
|
||||
"delete": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о",
|
||||
"delete_action_confirmation_message": "╬Х╬п╧Г╧Д╬╡ ╧Г╬п╬│╬┐╧Е╧Б╬┐╬╣ ╧М╧Д╬╣ ╬╕╬н╬╗╬╡╧Д╬╡ ╬╜╬▒ ╬┤╬╣╬▒╬│╧Б╬м╧И╬╡╧Д╬╡ ╬▒╧Е╧Д╧М ╧Д╬┐ ╬▒╧Б╧З╬╡╬п╬┐; ╬С╧Е╧Д╬о ╬╖ ╬╡╬╜╬н╧Б╬│╬╡╬╣╬▒ ╬╕╬▒ ╧Д╬┐ ╬╝╬╡╧Д╬▒╬║╬╣╬╜╬о╧Г╬╡╬╣ ╧Г╧Д╬┐╬╜ ╬║╬м╬┤╬┐ ╬▒╧А╬┐╧Б╧Б╬╣╬╝╬╝╬м╧Д╧Й╬╜ ╧Д╬┐╧Е ╬┤╬╣╬▒╬║╬┐╬╝╬╣╧Г╧Д╬о ╬║╬▒╬╣ ╬╕╬▒ ╬╡╬╝╧Ж╬▒╬╜╬╣╧Г╧Д╬╡╬п ╬╝╬о╬╜╧Е╬╝╬▒ ╬│╬╣╬▒ ╧Д╬┐ ╬▒╬╜ ╬╕╬н╬╗╬╡╧Д╬╡ ╬╜╬▒ ╧Д╬┐ ╬┤╬╣╬▒╬│╧Б╬м╧И╬╡╧Д╬╡ ╬║╬▒╬╣ ╧Д╬┐╧А╬╣╬║╬м",
|
||||
"delete_action_prompt": "{count} ╬┤╬╣╬▒╬│╧Б╬м╧Ж╬╖╬║╬▒╬╜",
|
||||
"delete_album": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"delete_api_key_prompt": "╬Х╬п╧Г╧Д╬╡ ╧Г╬п╬│╬┐╧Е╧Б╬┐╬╣ ╧М╧Д╬╣ ╬╕╬н╬╗╬╡╧Д╬╡ ╬╜╬▒ ╬┤╬╣╬▒╬│╧Б╬м╧И╬╡╧Д╬╡ ╬▒╧Е╧Д╧М ╬║╬╗╬╡╬╣╬┤╬п API;",
|
||||
"delete_dialog_alert": "╬С╧Е╧Д╬м ╧Д╬▒ ╬▒╬╜╧Д╬╣╬║╬╡╬п╬╝╬╡╬╜╬▒ ╬╕╬▒ ╬┤╬╣╬▒╬│╧Б╬▒╧Ж╬┐╧Н╬╜ ╬┐╧Б╬╣╧Г╧Д╬╣╬║╬м ╬▒╧А╧М ╧Д╬┐ Immich ╬║╬▒╬╣ ╬▒╧А╧М ╧Д╬╖ ╧Г╧Е╧Г╬║╬╡╧Е╬о ╧Г╬▒╧В",
|
||||
@@ -732,9 +760,12 @@
|
||||
"delete_key": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╬║╬╗╬╡╬╣╬┤╬╣╬┐╧Н",
|
||||
"delete_library": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╬Т╬╣╬▓╬╗╬╣╬┐╬╕╬о╬║╬╖╧В",
|
||||
"delete_link": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╧Г╧Е╬╜╬┤╬н╧Г╬╝╬┐╧Е",
|
||||
"delete_local_action_prompt": "{count} ╬┤╬╣╬▒╬│╧Б╬м╧Ж╬╖╬║╬▒╬╜ ╧Д╬┐╧А╬╣╬║╬м",
|
||||
"delete_local_dialog_ok_backed_up_only": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╬╝╧М╬╜╬┐ ╧Д╧Й╬╜ ╬▒╬╜╧Д╬╣╬│╧Б╬м╧Ж╧Й╬╜ ╬▒╧Г╧Ж╬▒╬╗╬╡╬п╬▒╧В",
|
||||
"delete_local_dialog_ok_force": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╧М╧А╧Й╧В ╬║╬▒╬╣ ╬╜╬▒ ╬н╧З╬╡╬╣",
|
||||
"delete_others": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╧Е╧А╬┐╬╗╬┐╬п╧А╧Й╬╜",
|
||||
"delete_permanently": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╬┐╧Б╬╣╧Г╧Д╬╣╬║╬м",
|
||||
"delete_permanently_action_prompt": "{count} ╬┤╬╣╬▒╬│╧Б╬м╧Ж╬╖╬║╬╡ ╬┐╧Б╬╣╧Г╧Д╬╣╬║╬м",
|
||||
"delete_shared_link": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╬║╬┐╬╣╬╜╧М╧З╧Б╬╖╧Г╧Д╬┐╧Е ╧Г╧Е╬╜╬┤╬н╧Г╬╝╬┐╧Е",
|
||||
"delete_shared_link_dialog_title": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╬Ъ╬┐╬╣╬╜╬┐╧А╬┐╬╣╬╖╬╝╬н╬╜╬┐╧Е ╬г╧Е╬╜╬┤╬н╧Г╬╝╬┐╧Е",
|
||||
"delete_tag": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╬╡╧Д╬╣╬║╬н╧Д╬▒╧В",
|
||||
@@ -745,6 +776,7 @@
|
||||
"description": "╬а╬╡╧Б╬╣╬│╧Б╬▒╧Ж╬о",
|
||||
"description_input_hint_text": "╬а╧Б╬┐╧Г╬╕╬о╬║╬╖ ╧А╬╡╧Б╬╣╬│╧Б╬▒╧Ж╬о╧В...",
|
||||
"description_input_submit_error": "╬г╧Ж╬м╬╗╬╝╬▒ ╬║╬▒╧Д╬м ╧Д╬╖╬╜ ╬╡╬╜╬╖╬╝╬н╧Б╧Й╧Г╬╖ ╧Д╬╖╧В ╧А╬╡╧Б╬╣╬│╧Б╬▒╧Ж╬о╧В, ╬╡╬╗╬н╬│╬╛╧Д╬╡ ╧Д╬┐ ╬▒╧Б╧З╬╡╬п╬┐ ╬║╬▒╧Д╬▒╬│╧Б╬▒╧Ж╬о╧В ╬│╬╣╬▒ ╧А╬╡╧Б╬╣╧Г╧Г╧М╧Д╬╡╧Б╬╡╧В ╬╗╬╡╧А╧Д╬┐╬╝╬н╧Б╬╡╬╣╬╡╧В",
|
||||
"deselect_all": "╬С╬║╧Н╧Б╧Й╧Г╬╖ ╧М╬╗╧Й╬╜ ╧Д╧Й╬╜ ╬╡╧А╬╣╬╗╬┐╬│╧О╬╜",
|
||||
"details": "╬Ы╬╡╧А╧Д╬┐╬╝╬н╧Б╬╡╬╣╬╡╧В",
|
||||
"direction": "╬Ъ╬▒╧Д╬╡╧Н╬╕╧Е╬╜╧Г╬╖",
|
||||
"disabled": "╬С╧А╬╡╬╜╬╡╧Б╬│╬┐╧А╬┐╬╣╬╖╬╝╬н╬╜╬┐",
|
||||
@@ -762,6 +794,7 @@
|
||||
"documentation": "╬д╬╡╬║╬╝╬╖╧Б╬п╧Й╧Г╬╖",
|
||||
"done": "╬И╬│╬╣╬╜╬╡",
|
||||
"download": "╬Ы╬о╧И╬╖",
|
||||
"download_action_prompt": "╬Ъ╬▒╧Д╬н╬▓╬▒╧Г╬╝╬▒ {count} ╧Г╧Д╬┐╬╣╧З╬╡╬п╧Й╬╜",
|
||||
"download_canceled": "╬Ч ╬╗╬о╧И╬╖ ╬▒╬║╧Е╧Б╧О╬╕╬╖╬║╬╡",
|
||||
"download_complete": "╬Ч ╬╗╬о╧И╬╖ ╬┐╬╗╬┐╬║╬╗╬╖╧Б╧О╬╕╬╖╬║╬╡",
|
||||
"download_enqueue": "╬Ч ╬╗╬о╧И╬╖ ╧Д╬н╬╕╬╖╬║╬╡ ╧Г╬╡ ╬┐╧Е╧Б╬м",
|
||||
@@ -799,6 +832,7 @@
|
||||
"edit_key": "╬Х╧А╬╡╬╛╬╡╧Б╬│╬▒╧Г╬п╬▒ ╬║╬╗╬╡╬╣╬┤╬╣╬┐╧Н",
|
||||
"edit_link": "╬Х╧А╬╡╬╛╬╡╧Б╬│╬▒╧Г╬п╬▒ ╧Г╧Е╬╜╬┤╬н╧Г╬╝╬┐╧Е",
|
||||
"edit_location": "╬Х╧А╬╡╬╛╬╡╧Б╬│╬▒╧Г╬п╬▒ ╧Д╬┐╧А╬┐╬╕╬╡╧Г╬п╬▒╧В",
|
||||
"edit_location_action_prompt": "╬Х╧А╬╡╬╛╬╡╧Б╬│╬м╧Г╧Д╬╖╬║╬▒╬╜ {count} ╧Д╬┐╧А╬┐╬╕╬╡╧Г╬п╬╡╧В",
|
||||
"edit_location_dialog_title": "╬д╬┐╧А╬┐╬╕╬╡╧Г╬п╬▒",
|
||||
"edit_name": "╬Х╧А╬╡╬╛╬╡╧Б╬│╬▒╧Г╬п╬▒ ╬┐╬╜╧М╬╝╬▒╧Д╬┐╧В",
|
||||
"edit_people": "╬Х╧А╬╡╬╛╬╡╧Б╬│╬▒╧Г╬п╬▒ ╬▒╧Д╧М╬╝╧Й╬╜",
|
||||
@@ -817,6 +851,7 @@
|
||||
"empty_trash": "╬Ж╬┤╬╡╬╣╬▒╧Г╬╝╬▒ ╬║╬м╬┤╬┐╧Е ╬▒╧А╬┐╧Б╧Б╬╣╬╝╬╝╬м╧Д╧Й╬╜",
|
||||
"empty_trash_confirmation": "╬Х╬п╧Г╧Д╬╡ ╧Г╬п╬│╬┐╧Е╧Б╬┐╬╣ ╬┐╧Д╬╣ ╬╕╬н╬╗╬╡╧Д╬╡ ╬╜╬▒ ╬▒╬┤╬╡╬╣╬м╧Г╬╡╧Д╬╡ ╧Д╬┐╬╜ ╬║╬м╬┤╬┐ ╬▒╧А╬┐╧Б╧Б╬╣╬╝╬╝╬м╧Д╧Й╬╜; ╬С╧Е╧Д╧М ╬╕╬▒ ╬▒╧Ж╬▒╬╣╧Б╬н╧Г╬╡╬╣ ╬╝╧М╬╜╬╣╬╝╬▒ ╧М╬╗╬▒ ╧Д╬▒ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒ ╧Д╬┐╧Е ╬║╬м╬┤╬┐╧Е ╬▒╧А╬┐╧Б╧Б╬╣╬╝╬╝╬м╧Д╧Й╬╜ ╧Д╬┐╧Е Immich. \n╬С╧Е╧Д╬о ╬╖ ╬╡╬╜╬н╧Б╬│╬╡╬╣╬▒ ╬┤╬╡╬╜ ╬╝╧А╬┐╧Б╬╡╬п ╬╜╬▒ ╬▒╬╜╬▒╬╣╧Б╬╡╬╕╬╡╬п!",
|
||||
"enable": "╬Х╬╜╬╡╧Б╬│╬┐╧А╬┐╬п╬╖╧Г╬╖",
|
||||
"enable_backup": "╬Х╬╜╬╡╧Б╬│╬┐╧А╬┐╬п╬╖╧Г╬╖ ╬▒╬╜╧Д╬╣╬│╧Б╬м╧Ж╬┐╧Е ╬▒╧Г╧Ж╬▒╬╗╬╡╬п╬▒╧В",
|
||||
"enable_biometric_auth_description": "╬Х╬╣╧Г╬м╬│╬╡╧Д╬╡ ╧Д╬┐╬╜ ╬║╧Й╬┤╬╣╬║╧М PIN ╧Г╬▒╧В ╬│╬╣╬▒ ╬╜╬▒ ╬╡╬╜╬╡╧Б╬│╬┐╧А╬┐╬╣╬о╧Г╬╡╧Д╬╡ ╧Д╬╖╬╜ ╬▓╬╣╬┐╬╝╬╡╧Д╧Б╬╣╬║╬о ╧Д╬▒╧Е╧Д╬┐╧А╬┐╬п╬╖╧Г╬╖",
|
||||
"enabled": "╬Х╬╜╬╡╧Б╬│╬┐╧А╬┐╬╣╬╖╬╝╬н╬╜╬┐",
|
||||
"end_date": "╬д╬╡╬╗╬╣╬║╬о ╬╖╬╝╬╡╧Б╬┐╬╝╬╖╬╜╬п╬▒",
|
||||
@@ -973,6 +1008,8 @@
|
||||
"explorer": "╬а╬╡╧Б╬╣╬╖╬│╬╖╧Д╬о╧В",
|
||||
"export": "╬Х╬╛╬▒╬│╧Й╬│╬о",
|
||||
"export_as_json": "╬Х╬╛╬▒╬│╧Й╬│╬о ╧Й╧В JSON",
|
||||
"export_database": "╬Х╬╛╬▒╬│╧Й╬│╬о ╬▓╬м╧Г╬╖╧В ╬┤╬╡╬┤╬┐╬╝╬н╬╜╧Й╬╜",
|
||||
"export_database_description": "╬Х╬╛╬▒╬│╧Й╬│╬о ╧Д╬╖╧В SQLite ╬▓╬м╧Г╬╖╧В ╬┤╬╡╬┤╬┐╬╝╬н╬╜╧Й╬╜",
|
||||
"extension": "╬Х╧А╬н╬║╧Д╬▒╧Г╬╖",
|
||||
"external": "╬Х╬╛╧Й╧Д╬╡╧Б╬╣╬║╧М╧В",
|
||||
"external_libraries": "╬Х╬╛╧Й╧Д╬╡╧Б╬╣╬║╬н╧В ╬▓╬╣╬▓╬╗╬╣╬┐╬╕╬о╬║╬╡╧В",
|
||||
@@ -984,6 +1021,7 @@
|
||||
"failed_to_load_assets": "╬С╧А╬┐╧Д╧Е╧З╬п╬▒ ╧Ж╧М╧Б╧Д╧Й╧Г╬╖╧В ╧Г╧Д╬┐╬╣╧З╬╡╬п╧Й╬╜",
|
||||
"failed_to_load_folder": "╬С╧А╬┐╧Д╧Е╧З╬п╬▒ ╧Ж╧М╧Б╧Д╧Й╧Г╬╖╧В ╧Ж╬▒╬║╬н╬╗╬┐╧Е",
|
||||
"favorite": "╬С╬│╬▒╧А╬╖╬╝╬н╬╜╬┐",
|
||||
"favorite_action_prompt": "╬а╧Б╬┐╧Г╧Д╬н╬╕╬╖╬║╬▒╬╜ {count} ╧Г╧Д╬▒ ╬С╬│╬▒╧А╬╖╬╝╬н╬╜╬▒",
|
||||
"favorite_or_unfavorite_photo": "╬Я╧Б╬п╧Г╧Д╬╡ ╬╝╬п╬▒ ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬▒ ╧Й╧В ╬▒╬│╬▒╧А╬╖╬╝╬н╬╜╬╖ ╬о ╬▒╧Ж╬▒╬╣╧Б╬н╧Г╧Д╬╡ ╧Д╬╖╬╜ ╬▒╧А╧М ╧Д╬▒ ╬▒╬│╬▒╧А╬╖╬╝╬н╬╜╬▒",
|
||||
"favorites": "╬С╬│╬▒╧А╬╖╬╝╬н╬╜╬▒",
|
||||
"favorites_page_no_favorites": "╬Ф╬╡╬╜ ╬▓╧Б╬н╬╕╬╖╬║╬▒╬╜ ╬▒╬│╬▒╧А╬╖╬╝╬н╬╜╬▒ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒",
|
||||
@@ -1023,6 +1061,9 @@
|
||||
"haptic_feedback_switch": "╬Х╬╜╬╡╧Б╬│╬┐╧А╬┐╬п╬╖╧Г╬╖ ╬▒╧А╧Д╬╣╬║╬о╧В ╬▒╬╜╬м╬┤╧Б╬▒╧Г╬╖╧В",
|
||||
"haptic_feedback_title": "╬С╧А╧Д╬╣╬║╬о ╬С╬╜╬м╬┤╧Б╬▒╧Г╬╖",
|
||||
"has_quota": "╬И╧З╬╡╬╣ ╧А╬┐╧Г╧М╧Г╧Д╧Й╧Г╬╖",
|
||||
"hash_asset": "╬Ъ╬▒╧Д╬▒╬║╬╡╧Б╬╝╬▒╧Д╬╣╧Г╬╝╧М╧В ╧Г╧Д╬┐╬╣╧З╬╡╬п╬┐╧Е",
|
||||
"hashed_assets": "╬Ъ╬▒╧Д╬▒╬║╬╡╧Б╬╝╬▒╧Д╬╣╧Г╬╝╬н╬╜╬▒ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒",
|
||||
"hashing": "╬Ъ╬▒╧Д╬▒╬║╬╡╧Б╬╝╬▒╧Д╬╣╧Г╬╝╧М╧В",
|
||||
"header_settings_add_header_tip": "╬а╧Б╬┐╧Г╬╕╬о╬║╬╖ ╬Ъ╬╡╧Ж╬▒╬╗╬п╬┤╬▒╧В",
|
||||
"header_settings_field_validator_msg": "╬Ч ╧Д╬╣╬╝╬о ╬┤╬╡╬╜ ╬╝╧А╬┐╧Б╬╡╬п ╬╜╬▒ ╬╡╬п╬╜╬▒╬╣ ╬║╬╡╬╜╬о",
|
||||
"header_settings_header_name_input": "╬М╬╜╬┐╬╝╬▒ ╬║╬╡╧Ж╬▒╬╗╬п╬┤╬▒╧В",
|
||||
@@ -1055,6 +1096,7 @@
|
||||
"host": "╬ж╬╣╬╗╬┐╬╛╬╡╬╜╬п╬▒",
|
||||
"hour": "╬П╧Б╬▒",
|
||||
"id": "ID",
|
||||
"idle": "╬С╬┤╧Б╬м╬╜╬╡╬╣╬▒",
|
||||
"ignore_icloud_photos": "╬С╬│╬╜╬┐╬о╧Г╧Д╬╡ ╧Д╬╣╧В ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В iCloud",
|
||||
"ignore_icloud_photos_description": "╬Я╬╣ ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В ╧А╬┐╧Е ╬╡╬п╬╜╬▒╬╣ ╬▒╧А╬┐╬╕╬╖╬║╬╡╧Е╬╝╬н╬╜╬╡╧В ╧Г╧Д╬┐ iCloud ╬┤╬╡╬╜ ╬╕╬▒ ╬╝╬╡╧Д╬▒╧Ж╬┐╧Б╧Д╧Й╬╕╬┐╧Н╬╜ ╧Г╧Д╬┐╬╜ ╬┤╬╣╬▒╬║╬┐╬╝╬╣╧Г╧Д╬о Immich",
|
||||
"image": "╬Х╬╣╬║╧М╬╜╬▒",
|
||||
@@ -1112,6 +1154,7 @@
|
||||
"language_no_results_title": "╬Ф╬╡ ╬▓╧Б╬н╬╕╬╖╬║╬▒╬╜ ╬│╬╗╧О╧Г╧Г╬╡╧В",
|
||||
"language_search_hint": "╬С╬╜╬▒╬╢╬о╧Д╬╖╧Г╬╖ ╬│╬╗╧Й╧Г╧Г╧О╬╜...",
|
||||
"language_setting_description": "╬Х╧А╬╣╬╗╬н╬╛╧Д╬╡ ╧Д╬╖ ╬│╬╗╧О╧Г╧Г╬▒ ╧А╬┐╧Е ╧А╧Б╬┐╧Д╬╣╬╝╬м╧Д╬╡",
|
||||
"large_files": "╬Ь╬╡╬│╬м╬╗╬▒ ╬С╧Б╧З╬╡╬п╬▒",
|
||||
"last_seen": "╬д╬╡╬╗╬╡╧Е╧Д╬▒╬п╬▒ ╧А╧Б╬┐╬▓╬┐╬╗╬о",
|
||||
"latest_version": "╬д╬╡╬╗╬╡╧Е╧Д╬▒╬п╬▒ ╬И╬║╬┤╬┐╧Г╬╖",
|
||||
"latitude": "╬У╬╡╧Й╬│╧Б╬▒╧Ж╬╣╬║╧М ╧А╬╗╬м╧Д╬┐╧В",
|
||||
@@ -1127,16 +1170,18 @@
|
||||
"library_page_sort_created": "╬Ч╬╝╬╡╧Б╬┐╬╝╬╖╬╜╬п╬▒ ╬┤╬╖╬╝╬╣╬┐╧Е╧Б╬│╬п╬▒╧В",
|
||||
"library_page_sort_last_modified": "╬д╬╡╬╗╬╡╧Е╧Д╬▒╬п╬▒ ╧Д╧Б╬┐╧А╬┐╧А╬┐╬п╬╖╧Г╬╖",
|
||||
"library_page_sort_title": "╬д╬п╧Д╬╗╬┐╧В ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"licenses": "╬Ж╬┤╬╡╬╣╬╡╧В",
|
||||
"light": "╬ж╧Й╧Д╬╡╬╣╬╜╧М",
|
||||
"like_deleted": "╬д╬┐ \"╬╝╬┐╧Е ╬▒╧Б╬н╧Г╬╡╬╣\" ╬┤╬╣╬▒╬│╧Б╬м╧Ж╬╖╬║╬╡",
|
||||
"link_motion_video": "╬г╧Н╬╜╬┤╬╡╧Г╬╡ ╬▓╬п╬╜╧Д╬╡╬┐ ╬║╬п╬╜╬╖╧Г╬╖╧В",
|
||||
"link_options": "╬Х╧А╬╣╬╗╬┐╬│╬н╧В ╧Г╧Е╬╜╬┤╬н╧Г╬╝╬┐╧Е",
|
||||
"link_to_oauth": "╬г╧Н╬╜╬┤╬╡╧Г╬╖ ╧Г╧Д╬┐╬╜ OAuth",
|
||||
"linked_oauth_account": "╬Я OAuth ╬╗╬┐╬│╬▒╧Б╬╣╬▒╧Г╬╝╧М╧В ╧Г╧Е╬╜╬┤╬н╬╕╬╖╬║╬╡",
|
||||
"list": "╬Ы╬п╧Г╧Д╬▒",
|
||||
"loading": "╬ж╧М╧Б╧Д╧Й╧Г╬╖",
|
||||
"loading_search_results_failed": "╬Ч ╧Ж╧М╧Б╧Д╧Й╧Г╬╖ ╬▒╧А╬┐╧Д╬╡╬╗╬╡╧Г╬╝╬м╧Д╧Й╬╜ ╬▒╬╜╬▒╬╢╬о╧Д╬╖╧Г╬╖╧В ╬▒╧А╬н╧Д╧Е╧З╬╡",
|
||||
"local": "╬д╬┐╧А╬╣╬║╬м",
|
||||
"local_asset_cast_failed": "╬С╬┤╧Е╬╜╬▒╬╝╬п╬▒ ╬╝╬╡╧Д╬м╬┤╬┐╧Г╬╖╧В ╧Г╧Д╬┐╬╣╧З╬╡╬п╬┐╧Е ╧А╬┐╧Е ╬┤╬╡╬╜ ╬н╧З╬╡╬╣ ╬▒╬╜╬н╬▓╬╡╬╣ ╧Г╧Д╬┐╬╜ ╬┤╬╣╬▒╬║╬┐╬╝╬╣╧Г╧Д╬о",
|
||||
"local_assets": "╬д╬┐╧А╬╣╬║╬м ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒",
|
||||
"local_network": "╬д╬┐╧А╬╣╬║╧М ╬┤╬п╬║╧Д╧Е╬┐",
|
||||
"local_network_sheet_info": "╬Ч ╬╡╧Ж╬▒╧Б╬╝╬┐╬│╬о ╬╕╬▒ ╧Г╧Е╬╜╬┤╬╡╬╕╬╡╬п ╬╝╬╡ ╧Д╬┐╬╜ ╬┤╬╣╬▒╬║╬┐╬╝╬╣╧Г╧Д╬о ╬╝╬н╧Г╧Й ╬▒╧Е╧Д╬┐╧Н ╧Д╬┐╧Е URL ╧М╧Д╬▒╬╜ ╧З╧Б╬╖╧Г╬╣╬╝╬┐╧А╬┐╬╣╬╡╬п╧Д╬▒╬╣ ╧Д╬┐ ╬║╬▒╬╕╬┐╧Б╬╣╧Г╬╝╬н╬╜╬┐ ╬┤╬п╬║╧Д╧Е╬┐ Wi-Fi",
|
||||
"location_permission": "╬Ж╬┤╬╡╬╣╬▒ ╧Д╬┐╧А╬┐╬╕╬╡╧Г╬п╬▒╧В",
|
||||
@@ -1193,8 +1238,7 @@
|
||||
"manage_your_devices": "╬Ф╬╣╬▒╧З╬╡╬╣╧Б╬╣╧Г╧Д╬╡╬п╧Д╬╡ ╧Д╬╣╧В ╧Г╧Е╬╜╬┤╬╡╬┤╬╡╬╝╬н╬╜╬╡╧В ╧Г╧Е╧Г╬║╬╡╧Е╬н╧В ╧Г╬▒╧В",
|
||||
"manage_your_oauth_connection": "╬Ф╬╣╬▒╧З╬╡╬╣╧Б╬╣╧Г╧Д╬╡╬п╧Д╬╡ ╧Д╬╖ ╧Г╧Н╬╜╬┤╬╡╧Г╬о ╧Г╬▒╧В OAuth",
|
||||
"map": "╬з╬м╧Б╧Д╬╖╧В",
|
||||
"map_assets_in_bound": "{count} ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬▒",
|
||||
"map_assets_in_bounds": "{count} ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В",
|
||||
"map_assets_in_bounds": "{count, plural, one {# ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬▒} other {# ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В}}",
|
||||
"map_cannot_get_user_location": "╬Ф╬╡╬╜ ╬╡╬п╬╜╬▒╬╣ ╬┤╧Е╬╜╬▒╧Д╬о ╬╖ ╬╗╬о╧И╬╖ ╧Д╬╖╧В ╧Д╬┐╧А╬┐╬╕╬╡╧Г╬п╬▒╧В ╧Д╬┐╧Е ╧З╧Б╬о╧Г╧Д╬╖",
|
||||
"map_location_dialog_yes": "╬Э╬▒╬╣",
|
||||
"map_location_picker_page_use_location": "╬з╧Б╬╖╧Г╬╣╬╝╬┐╧А╬┐╬╣╬о╧Г╧Д╬╡ ╬▒╧Е╧Д╬о╬╜ ╧Д╬╖╬╜ ╧Д╬┐╧А╬┐╬╕╬╡╧Г╬п╬▒",
|
||||
@@ -1246,6 +1290,7 @@
|
||||
"more": "╬а╬╡╧Б╬╣╧Г╧Г╧М╧Д╬╡╧Б╬▒",
|
||||
"move": "╬Ь╬╡╧Д╬▒╬║╬п╬╜╬╖╧Г╬╖",
|
||||
"move_off_locked_folder": "╬Ь╬╡╧Д╬▒╬║╬п╬╜╬╖╧Г╬╖ ╬н╬╛╧Й ╬▒╧А╧М ╧Д╬┐╬╜ ╬║╬╗╬╡╬╣╬┤╧Й╬╝╬н╬╜╬┐ ╧Ж╬м╬║╬╡╬╗╬┐",
|
||||
"move_to_lock_folder_action_prompt": "╬а╧Б╬┐╧Г╧Д╬н╬╕╬╖╬║╬▒╬╜ {count} ╧Г╧Д╬┐╬╜ ╬║╬╗╬╡╬╣╬┤╧Й╬╝╬н╬╜╬┐ ╧Ж╬м╬║╬╡╬╗╬┐",
|
||||
"move_to_locked_folder": "╬Ь╬╡╧Д╬▒╬║╬п╬╜╬╖╧Г╬╖ ╧Г╬╡ ╬║╬╗╬╡╬╣╬┤╧Й╬╝╬н╬╜╬┐ ╧Ж╬м╬║╬╡╬╗╬┐",
|
||||
"move_to_locked_folder_confirmation": "╬С╧Е╧Д╬н╧В ╬┐╬╣ ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В ╬║╬▒╬╣ ╧Д╬▒ ╬▓╬п╬╜╧Д╬╡╬┐ ╬╕╬▒ ╬▒╧Ж╬▒╬╣╧Б╬╡╬╕╬┐╧Н╬╜ ╬▒╧А╧М ╧М╬╗╬▒ ╧Д╬▒ ╬м╬╗╬╝╧А╬┐╧Е╬╝ ╬║╬▒╬╣ ╬╕╬▒ ╬╝╧А╬┐╧Б╬┐╧Н╬╜ ╬╜╬▒ ╧А╧Б╬┐╬▓╬╗╬╖╬╕╬┐╧Н╬╜ ╬╝╧М╬╜╬┐ ╬▒╧А╧М ╧Д╬┐╬╜ ╬║╬╗╬╡╬╣╬┤╧Й╬╝╬н╬╜╬┐ ╧Ж╬м╬║╬╡╬╗╬┐",
|
||||
"moved_to_archive": "╬Ь╬╡╧Д╬▒╬║╬╣╬╜╬о╬╕╬╖╬║╬▒╬╜ {count, plural, one {# ╧Г╧Д╬┐╬╣╧З╬╡╬п╬┐} other {# ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒}} ╧Г╧Д╬┐ ╬▒╧Б╧З╬╡╬п╬┐",
|
||||
@@ -1292,6 +1337,7 @@
|
||||
"no_results": "╬Ъ╬▒╬╜╬н╬╜╬▒ ╬▒╧А╬┐╧Д╬н╬╗╬╡╧Г╬╝╬▒",
|
||||
"no_results_description": "╬Ф╬┐╬║╬╣╬╝╬м╧Г╧Д╬╡ ╬н╬╜╬▒ ╧Г╧Е╬╜╧О╬╜╧Е╬╝╬┐ ╬о ╧А╬╣╬┐ ╬│╬╡╬╜╬╣╬║╬о ╬╗╬н╬╛╬╖-╬║╬╗╬╡╬╣╬┤╬п",
|
||||
"no_shared_albums_message": "╬Ф╬╖╬╝╬╣╬┐╧Е╧Б╬│╬о╧Г╧Д╬╡ ╬н╬╜╬▒ ╬м╬╗╬╝╧А╬┐╧Е╬╝ ╬│╬╣╬▒ ╬╜╬▒ ╬╝╬┐╬╣╧Б╬м╬╢╬╡╧Г╧Д╬╡ ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В ╬║╬▒╬╣ ╬▓╬п╬╜╧Д╬╡╬┐ ╬╝╬╡ ╬м╧Д╬┐╬╝╬▒ ╧Г╧Д╬┐ ╬┤╬п╬║╧Д╧Е╧М ╧Г╬▒╧В",
|
||||
"no_uploads_in_progress": "╬Ъ╬▒╬╝╬п╬▒ ╬╝╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖ ╧Г╬╡ ╬╡╬╛╬н╬╗╬╣╬╛╬╖",
|
||||
"not_in_any_album": "╬г╬╡ ╬║╬▒╬╜╬н╬╜╬▒ ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"not_selected": "╬Ф╬╡╬╜ ╬╡╧А╬╣╬╗╬н╧З╬╕╬╖╬║╬╡",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "╬г╬╖╬╝╬╡╬п╧Й╧Г╬╖: ╬У╬╣╬▒ ╬╜╬▒ ╬╡╧Ж╬▒╧Б╬╝╧М╧Г╬╡╧Д╬╡ ╧Д╬╖╬╜ ╬Х╧Д╬╣╬║╬н╧Д╬▒ ╬С╧А╬┐╬╕╬о╬║╬╡╧Е╧Г╬╖╧В ╧Г╬╡ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒ ╧А╬┐╧Е ╬н╧З╬┐╧Е╬╜ ╬╝╬╡╧Д╬▒╧Ж╬┐╧Б╧Д╧Й╬╕╬╡╬п ╧А╧Б╬┐╬╖╬│╬┐╧Е╬╝╬н╬╜╧Й╧В, ╬╡╬║╧Д╬╡╬╗╬н╧Г╧Д╬╡ ╧Д╬┐",
|
||||
@@ -1329,6 +1375,7 @@
|
||||
"original": "╧А╧Б╧Й╧Д╧М╧Д╧Е╧А╬┐",
|
||||
"other": "╬Ж╬╗╬╗╬╡╧В",
|
||||
"other_devices": "╬Ж╬╗╬╗╬╡╧В ╧Г╧Е╧Г╬║╬╡╧Е╬н╧В",
|
||||
"other_entities": "╬Ж╬╗╬╗╬╡╧В ╬┐╬╜╧Д╧М╧Д╬╖╧Д╬╡╧В",
|
||||
"other_variables": "╬Ж╬╗╬╗╬╡╧В ╬╝╬╡╧Д╬▒╬▓╬╗╬╖╧Д╬н╧В",
|
||||
"owned": "╬Ф╬╣╬║╬м ╬╝╬┐╧Е",
|
||||
"owner": "╬Ъ╬м╧Д╬┐╧З╬┐╧В",
|
||||
@@ -1460,6 +1507,7 @@
|
||||
"purchase_server_description_2": "╬Ъ╬▒╧Д╬м╧Г╧Д╬▒╧Г╬╖ ╧Е╧А╬┐╧Г╧Д╬╖╧Б╬╣╬║╧Д╬о",
|
||||
"purchase_server_title": "╬Ф╬╣╬▒╬║╬┐╬╝╬╣╧Г╧Д╬о╧В",
|
||||
"purchase_settings_server_activated": "╬Ч ╬┤╬╣╬▒╧З╬╡╬п╧Б╬╣╧Г╬╖ ╧Д╬┐╧Е ╬║╬╗╬╡╬╣╬┤╬╣╬┐╧Н ╧А╧Б╬┐╧К╧М╬╜╧Д╬┐╧В ╧Д╬┐╧Е ╬┤╬╣╬▒╬║╬┐╬╝╬╣╧Г╧Д╬о ╬│╬п╬╜╬╡╧Д╬▒╬╣ ╬▒╧А╧М ╧Д╬┐╬╜ ╬┤╬╣╬▒╧З╬╡╬╣╧Б╬╣╧Г╧Д╬о",
|
||||
"queue_status": "╬д╬┐╧А╬┐╬╕╬н╧Д╬╖╧Г╬╖ ╧Г╧Д╬╖ ╬┐╧Е╧Б╬м {count} ╬▒╧А╧М {total}",
|
||||
"rating": "╬С╬╛╬╣╬┐╬╗╧М╬│╬╖╧Г╬╖ ╬╝╬╡ ╬▒╧Г╧Д╬н╧Б╬╣╬▒",
|
||||
"rating_clear": "╬Х╬║╬║╬▒╬╕╬м╧Б╬╣╧Г╬╖ ╬▒╬╛╬╣╬┐╬╗╧М╬│╬╖╧Г╬╖╧В",
|
||||
"rating_count": "{count, plural, one {# ╬▒╧Г╧Д╬н╧Б╬╣} other {# ╬▒╧Г╧Д╬н╧Б╬╣╬▒}}",
|
||||
@@ -1488,6 +1536,8 @@
|
||||
"refreshing_faces": "╬С╬╜╬▒╬╜╬╡╧О╬╜╬┐╬╜╧Д╬▒╬╣ ╧А╧Б╧М╧Г╧Й╧А╬▒",
|
||||
"refreshing_metadata": "╬д╬▒ ╬╝╬╡╧Д╬▒╬┤╬╡╬┤╬┐╬╝╬н╬╜╬▒ ╬▒╬╜╬▒╬╜╬╡╧О╬╜╬┐╬╜╧Д╬▒╬╣",
|
||||
"regenerating_thumbnails": "╬Я╬╣ ╬╝╬╣╬║╧Б╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В ╬▒╬╜╬▒╬│╬╡╬╜╬╜╧О╬╜╧Д╬▒╬╣",
|
||||
"remote": "╬С╧А╬┐╬╝╬▒╬║╧Б╧Е╧Г╬╝╬н╬╜╬┐╧В",
|
||||
"remote_assets": "╬С╧А╬┐╬╝╬▒╬║╧Б╧Е╧Г╬╝╬н╬╜╬▒ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒",
|
||||
"remove": "╬С╧Ж╬▒╬п╧Б╬╡╧Г╬╖",
|
||||
"remove_assets_album_confirmation": "╬Х╬п╧Г╧Д╬╡ ╧Г╬п╬│╬┐╧Е╧Б╬┐╬╣ ╧М╧Д╬╣ ╬╕╬н╬╗╬╡╧Д╬╡ ╬╜╬▒ ╬▒╧Ж╬▒╬╣╧Б╬н╧Г╬╡╧Д╬╡ {count, plural, one {# ╧Г╧Д╬┐╬╣╧З╬╡╬п╬┐} other {# ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒}} ╬▒╧А╧М ╧Д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝;",
|
||||
"remove_assets_shared_link_confirmation": "╬Х╬п╧Г╧Д╬╡ ╧Г╬п╬│╬┐╧Е╧Б╬┐╬╣ ╧М╧Д╬╣ ╬╕╬н╬╗╬╡╧Д╬╡ ╬╜╬▒ ╬▒╧Ж╬▒╬╣╧Б╬н╧Г╬╡╧Д╬╡ {count, plural, one {# ╧Г╧Д╬┐╬╣╧З╬╡╬п╬┐} other {# ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒}} ╬▒╧А╧М ╬▒╧Е╧Д╧М╬╜ ╧Д╬┐╬╜ ╬║╬┐╬╣╬╜╧М╧З╧Б╬╖╧Г╧Д╬┐ ╧Г╧Н╬╜╬┤╬╡╧Г╬╝╬┐;",
|
||||
@@ -1495,7 +1545,9 @@
|
||||
"remove_custom_date_range": "╬С╧Ж╬▒╬п╧Б╬╡╧Г╬╖ ╧А╧Б╬┐╧Г╬▒╧Б╬╝╬┐╧Г╬╝╬н╬╜╬╖╧В ╧З╧Б╬┐╬╜╬╣╬║╬о╧В ╧А╬╡╧Б╬╣╧М╬┤╬┐╧Е",
|
||||
"remove_deleted_assets": "╬С╧Ж╬▒╬п╧Б╬╡╧Г╬╖ ╬Ф╬╣╬╡╬│╧Б╬▒╬╝╬╝╬н╬╜╧Й╬╜ ╬г╧Д╬┐╬╣╧З╬╡╬п╧Й╬╜",
|
||||
"remove_from_album": "╬С╧Ж╬▒╬п╧Б╬╡╧Г╬╖ ╬▒╧А╧М ╧Д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"remove_from_album_action_prompt": "{count} ╬▒╧Ж╬▒╬╣╧Б╬н╬╕╬╖╬║╬▒╬╜ ╬▒╧А╧М ╧Д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"remove_from_favorites": "╬С╧Ж╬▒╬п╧Б╬╡╧Г╬╖ ╬▒╧А╧М ╧Д╬▒ ╬▒╬│╬▒╧А╬╖╬╝╬н╬╜╬▒",
|
||||
"remove_from_lock_folder_action_prompt": "{count} ╬▒╧Ж╬▒╬╣╧Б╬н╬╕╬╖╬║╬▒╬╜ ╬▒╧А╧М ╧Д╬┐╬╜ ╬║╬╗╬╡╬╣╬┤╧Й╬╝╬н╬╜╬┐ ╧Ж╬м╬║╬╡╬╗╬┐",
|
||||
"remove_from_locked_folder": "╬С╧Ж╬▒╬п╧Б╬╡╧Г╬╖ ╬▒╧А╧М ╬║╬╗╬╡╬╣╬┤╧Й╬╝╬н╬╜╬┐ ╧Ж╬м╬║╬╡╬╗╬┐",
|
||||
"remove_from_locked_folder_confirmation": "╬Х╬п╧Г╧Д╬╡ ╧Г╬п╬│╬┐╧Е╧Б╬┐╬╣ ╧М╧Д╬╣ ╬╕╬н╬╗╬╡╧Д╬╡ ╬╜╬▒ ╬╝╬╡╧Д╬▒╬║╬╣╬╜╬о╧Г╬╡╧Д╬╡ ╬▒╧Е╧Д╬н╧В ╧Д╬╣╧В ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В ╬║╬▒╬╣ ╧Д╬▒ ╬▓╬п╬╜╧Д╬╡╬┐ ╬▒╧А╧М ╧Д╬┐╬╜ ╬║╬╗╬╡╬╣╬┤╧Й╬╝╬н╬╜╬┐ ╧Ж╬м╬║╬╡╬╗╬┐; ╬Ш╬▒ ╬╡╬п╬╜╬▒╬╣ ╧А╬╗╬н╬┐╬╜ ╬┐╧Б╬▒╧Д╬н╧В ╧Г╧Д╬╖ ╬▓╬╣╬▓╬╗╬╣╬┐╬╕╬о╬║╬╖ ╧Г╬▒╧В.",
|
||||
"remove_from_shared_link": "╬С╧Ж╬▒╬п╧Б╬╡╧Г╬╖ ╬▒╧А╧М ╧Д╬┐╬╜ ╬║╬┐╬╣╬╜╧М╧З╧Б╬╖╧Г╧Д╬┐ ╧Г╧Н╬╜╬┤╬╡╧Г╬╝╬┐",
|
||||
@@ -1523,19 +1575,25 @@
|
||||
"reset_password": "╬Х╧А╬▒╬╜╬▒╧Ж╬┐╧Б╬м ╬║╧Й╬┤╬╣╬║╬┐╧Н ╧А╧Б╧М╧Г╬▓╬▒╧Г╬╖╧В",
|
||||
"reset_people_visibility": "╬Х╧А╬▒╬╜╬▒╧Ж╬┐╧Б╬м ╧А╧Б╬┐╬▓╬┐╬╗╬о╧В ╬▒╧Д╧М╬╝╧Й╬╜",
|
||||
"reset_pin_code": "╬Х╧А╬▒╬╜╬▒╧Ж╬┐╧Б╬м ╬║╧Й╬┤╬╣╬║╬┐╧Н PIN",
|
||||
"reset_sqlite": "╬Х╧А╬▒╬╜╬▒╧Ж╬┐╧Б╬м SQLite ╬▓╬м╧Г╬╖╧В ╬┤╬╡╬┤╬┐╬╝╬н╬╜╧Й╬╜",
|
||||
"reset_sqlite_confirmation": "╬Х╬п╧Г╬▒╬╣ ╧Г╬п╬│╬┐╧Е╧Б╬┐╧В ╧М╧Д╬╣ ╬╕╬н╬╗╬╡╬╣╧В ╬╜╬▒ ╬╡╧А╬▒╬╜╬▒╧Ж╬н╧Б╬╡╬╣╧В ╧Д╬╖ ╬▓╬м╧Г╬╖ ╬┤╬╡╬┤╬┐╬╝╬н╬╜╧Й╬╜ SQLite; ╬Ш╬▒ ╧З╧Б╬╡╬╣╬▒╧Г╧Д╬╡╬п ╬╜╬▒ ╬║╬м╬╜╬╡╬╣╧В ╬▒╧А╬┐╧Г╧Н╬╜╬┤╬╡╧Г╬╖ ╬║╬▒╬╣ ╬╡╧А╬▒╬╜╬▒╧Г╧Н╬╜╬┤╬╡╧Г╬╖ ╬│╬╣╬▒ ╬╜╬▒ ╬╡╧А╬▒╬╜╬▒╧Г╧Е╬│╧З╧Б╬┐╬╜╬п╧Г╬╡╬╣╧В ╧Д╬▒ ╬┤╬╡╬┤╬┐╬╝╬н╬╜╬▒",
|
||||
"reset_sqlite_success": "╬Ч ╬╡╧А╬▒╬╜╬▒╧Ж╬┐╧Б╬м ╧Д╬╖╧В SQLite ╬▓╬м╧Г╬╖╧В ╬┤╬╡╬┤╬┐╬╝╬н╬╜╧Й╬╜ ╬┐╬╗╬┐╬║╬╗╬╖╧Б╧О╬╕╬╖╬║╬╡ ╬╝╬╡ ╬╡╧А╬╣╧Д╧Е╧З╬п╬▒",
|
||||
"reset_to_default": "╬Х╧А╬▒╬╜╬▒╧Ж╬┐╧Б╬м ╧Г╧Д╬╣╧В ╧А╧Б╬┐╬╡╧А╬╣╬╗╬┐╬│╬н╧В",
|
||||
"resolve_duplicates": "╬Х╧А╬п╬╗╧Е╧Г╬╖ ╬┤╬╣╧А╬╗╬┐╧Д╧Н╧А╧Й╬╜",
|
||||
"resolved_all_duplicates": "╬Х╧А╬╣╬╗╧Н╬╕╬╖╬║╬▒╬╜ ╧М╬╗╬▒ ╧Д╬▒ ╬┤╬╣╧А╬╗╧М╧Д╧Е╧А╬▒",
|
||||
"restore": "╬С╬╜╬м╬║╧Д╬╖╧Г╬╖",
|
||||
"restore_all": "╬С╬╜╬м╬║╧Д╬╖╧Г╬╖ ╧М╬╗╧Й╬╜",
|
||||
"restore_trash_action_prompt": "{count} ╬▒╬╜╬▒╬║╧Д╬о╬╕╬╖╬║╬▒╬╜ ╬▒╧А╧М ╧Д╬▒ ╬▒╧А╬┐╧Б╧Б╬п╬╝╬╝╬▒╧Д╬▒",
|
||||
"restore_user": "╬Х╧А╬▒╬╜╬▒╧Ж╬┐╧Б╬м ╧З╧Б╬о╧Г╧Д╬╖",
|
||||
"restored_asset": "╬С╬╜╬▒╬║╧Д╬о╬╕╬╖╬║╬╡ ╧Д╬┐ ╬▒╧Б╧З╬╡╬п╬┐",
|
||||
"resume": "╬г╧Е╬╜╬н╧З╬╣╧Г╬╖",
|
||||
"retry_upload": "╬Х╧А╬▒╬╜╬м╬╗╬╖╧И╬╖ ╬▒╬╜╬╡╬▓╬м╧Г╬╝╬▒╧Д╬┐╧В",
|
||||
"review_duplicates": "╬а╧Б╬┐╬▓╬┐╬╗╬о ╬┤╬╣╧А╬╗╧М╧Д╧Е╧А╧Й╬╜",
|
||||
"review_large_files": "╬Х╧А╬╣╧Г╬║╧М╧А╬╖╧Г╬╖ ╬╝╬╡╬│╬м╬╗╧Й╬╜ ╬▒╧Б╧З╬╡╬п╧Й╬╜",
|
||||
"role": "╬б╧М╬╗╬┐╧В",
|
||||
"role_editor": "╬Х╧А╬╡╬╛╬╡╧Б╬│╬▒╧Г╧Д╬о╧В",
|
||||
"role_viewer": "╬Ш╬╡╬▒╧Д╬о╧В",
|
||||
"running": "╬г╬╡ ╬╗╬╡╬╣╧Д╬┐╧Е╧Б╬│╬п╬▒",
|
||||
"save": "╬С╧А╬┐╬╕╬о╬║╬╡╧Е╧Г╬╖",
|
||||
"save_to_gallery": "╬С╧А╬┐╬╕╬о╬║╬╡╧Е╧Г╬╖ ╧Г╧Д╬╖ ╧Г╧Е╬╗╬╗╬┐╬│╬о",
|
||||
"saved_api_key": "╬С╧А╬┐╬╕╬╖╬║╬╡╧Е╬╝╬н╬╜╬┐ API key",
|
||||
@@ -1667,6 +1725,7 @@
|
||||
"settings_saved": "╬Я╬╣ ╧Б╧Е╬╕╬╝╬п╧Г╬╡╬╣╧В ╬▒╧А╬┐╬╕╬╖╬║╬╡╧Н╧Д╬╖╬║╬▒╬╜",
|
||||
"setup_pin_code": "╬б╧Н╬╕╬╝╬╣╧Г╬╖ ╬║╧Й╬┤╬╣╬║╬┐╧Н PIN",
|
||||
"share": "╬Ъ╬┐╬╣╬╜╬┐╧А╬┐╬п╬╖╧Г╬╖",
|
||||
"share_action_prompt": "╬Ъ╬┐╬╣╬╜╬о ╧З╧Б╬о╧Г╬╖ {count} ╧Г╧Д╬┐╬╣╧З╬╡╬п╧Й╬╜",
|
||||
"share_add_photos": "╬а╧Б╬┐╧Г╬╕╬о╬║╬╖ ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬╣╧О╬╜",
|
||||
"share_assets_selected": "{count} ╬╡╧А╬╣╬╗╬╡╬│╬╝╬н╬╜╬▒",
|
||||
"share_dialog_preparing": "╬а╧Б╬┐╬╡╧Д╬┐╬╣╬╝╬▒╧Г╬п╬▒...",
|
||||
@@ -1688,6 +1747,7 @@
|
||||
"shared_link_clipboard_copied_massage": "╬С╬╜╧Д╬╣╬│╧Б╬м╧Ж╬╖╬║╬╡ ╧Г╧Д╬┐ ╧А╧Б╧М╧З╬╡╬╣╧Б╬┐",
|
||||
"shared_link_clipboard_text": "╬г╧Н╬╜╬┤╬╡╧Г╬╝╬┐╧В: {link}\n╬Ъ╧Й╬┤╬╣╬║╧М╧В ╧А╧Б╧М╧Г╬▓╬▒╧Г╬╖╧В: {password}",
|
||||
"shared_link_create_error": "╬г╧Ж╬м╬╗╬╝╬▒ ╬║╬▒╧Д╬м ╧Д╬╖ ╬┤╬╖╬╝╬╣╬┐╧Е╧Б╬│╬п╬▒ ╬║╬┐╬╣╬╜╧М╧З╧Б╬╖╧Г╧Д╬┐╧Е ╧Г╧Е╬╜╬┤╬н╧Г╬╝╬┐╧Е",
|
||||
"shared_link_custom_url_description": "╬С╧А╬┐╬║╧Д╬о╧Г╧Д╬╡ ╧А╧Б╧М╧Г╬▓╬▒╧Г╬╖ ╧Г╬╡ ╬▒╧Е╧Д╧М╬╜ ╧Д╬┐╬╜ ╬║╬┐╬╣╬╜╧М╧З╧Б╬╖╧Г╧Д╬┐ ╧Г╧Н╬╜╬┤╬╡╧Г╬╝╬┐ ╬╝╬╡ ╬╝╬╣╬▒ ╧А╧Б╬┐╧Г╬▒╧Б╬╝╬┐╧Г╬╝╬н╬╜╬╖ ╬┤╬╣╬╡╧Н╬╕╧Е╬╜╧Г╬╖ URL",
|
||||
"shared_link_edit_description_hint": "╬Х╬╣╧Г╬▒╬│╬м╬│╬╡╧Д╬╡ ╧Д╬╖╬╜ ╧А╬╡╧Б╬╣╬│╧Б╬▒╧Ж╬о ╧Д╬╖╧В ╬║╬┐╬╣╬╜╬о╧В ╧З╧Б╬о╧Г╬╖╧В",
|
||||
"shared_link_edit_expire_after_option_day": "1 ╬╖╬╝╬н╧Б╬▒",
|
||||
"shared_link_edit_expire_after_option_days": "{count} ╬╖╬╝╬н╧Б╬╡╧В",
|
||||
@@ -1713,6 +1773,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "╬Ф╬╣╬▒╧З╬╡╬п╧Б╬╣╧Г╬╖ ╬Ъ╬┐╬╣╬╜╧М╧З╧Б╬╖╧Г╧Д╧Й╬╜ ╬г╧Е╬╜╬┤╬н╧Г╬╝╧Й╬╜",
|
||||
"shared_link_options": "╬Х╧А╬╣╬╗╬┐╬│╬н╧В ╬║╬┐╬╣╬╜╧М╧З╧Б╬╖╧Г╧Д╬┐╧Е ╧Г╧Е╬╜╬┤╬н╧Г╬╝╬┐╧Е",
|
||||
"shared_link_password_description": "╬С╧А╬▒╬п╧Д╬╖╧Г╬╖ ╬║╧Й╬┤╬╣╬║╬┐╧Н ╬│╬╣╬▒ ╧А╧Б╧М╧Г╬▓╬▒╧Г╬╖ ╧Г╧Д╬┐╬╜ ╬║╬┐╬╣╬╜╬┐╧А╬┐╬╣╬╖╬╝╬н╬╜╬┐ ╧Г╧Н╬╜╬┤╬╡╧Г╬╝╬┐",
|
||||
"shared_links": "╬Ъ╬┐╬╣╬╜╧М╧З╧Б╬╖╧Г╧Д╬┐╬╣ ╧Г╧Н╬╜╬┤╬╡╧Г╬╝╬┐╬╣",
|
||||
"shared_links_description": "╬Ь╬┐╬╣╧Б╬▒╧Г╧Д╬╡╬п╧Д╬╡ ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В ╬║╬▒╬╣ ╬▓╬п╬╜╧Д╬╡╬┐ ╬╝╬╡ ╧Г╧Н╬╜╬┤╬╡╧Г╬╝╬┐",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# ╬║╬┐╬╣╬╜╧М╧З╧Б╬╖╧Г╧Д╬╡╧В ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В & ╬▓╬п╬╜╧Д╬╡╬┐.}}",
|
||||
@@ -1768,6 +1829,7 @@
|
||||
"sort_title": "╬д╬п╧Д╬╗╬┐╧В",
|
||||
"source": "╬а╬╖╬│╬о",
|
||||
"stack": "╬г╧Д╬┐╬п╬▓╬▒",
|
||||
"stack_action_prompt": "{count} ╧Г╧Е╧Г╧Г╧Й╧Б╬╡╧Н╧Д╬╖╬║╬▒╬╜",
|
||||
"stack_duplicates": "╬г╧Д╬┐╬п╬▓╬▒╬╛╬╖ ╬┤╬╣╧А╬╗╧М╧Д╧Е╧А╧Й╬╜",
|
||||
"stack_select_one_photo": "╬Х╧А╬╣╬╗╬н╬╛╧Д╬╡ ╬╝╬╣╬▒ ╬║╧Н╧Б╬╣╬▒ ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬▒ ╬│╬╣╬▒ ╧Д╬╖ ╧Г╧Д╬┐╬п╬▓╬▒╬╛╬╖",
|
||||
"stack_selected_photos": "╬г╧Д╬┐╬п╬▓╬▒╬│╬╝╬▒ ╬╡╧А╬╣╬╗╬╡╬│╬╝╬н╬╜╧Й╬╜ ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬╣╧О╬╜",
|
||||
@@ -1787,6 +1849,7 @@
|
||||
"storage_quota": "╬а╬┐╧Г╬┐╧Г╧Д╧М ╬▒╧А╬┐╬╕╬╖╬║╬╡╧Е╧Д╬╣╬║╬┐╧Н ╧З╧О╧Б╬┐╧Е",
|
||||
"storage_usage": "{used} ╬▒╧А╧М {available} ╧Г╬╡ ╧З╧Б╬о╧Г╬╖",
|
||||
"submit": "╬е╧А╬┐╬▓╬┐╬╗╬о",
|
||||
"success": "╬Х╧А╬╣╧Д╧Е╧З╬п╬▒",
|
||||
"suggestions": "╬а╧Б╬┐╧Д╬м╧Г╬╡╬╣╧В",
|
||||
"sunrise_on_the_beach": "╬Ч╬╗╬╣╬┐╬▓╬▒╧Г╬п╬╗╬╡╬╝╬▒ ╧Г╧Д╬╖╬╜ ╧А╬▒╧Б╬▒╬╗╬п╬▒",
|
||||
"support": "╬е╧А╬┐╧Г╧Д╬о╧Б╬╣╬╛╬╖",
|
||||
@@ -1796,6 +1859,8 @@
|
||||
"sync": "╬г╧Е╬│╧З╧Б╬┐╬╜╬╣╧Г╬╝╧М╧В",
|
||||
"sync_albums": "╬г╧Е╬│╧З╧Б╬┐╬╜╬╣╧Г╬╝╧М╧В ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"sync_albums_manual_subtitle": "╬г╧Е╬│╧З╧Б╬┐╬╜╬п╧Г╧Д╬╡ ╧М╬╗╬▒ ╧Д╬▒ ╬╝╬╡╧Д╬▒╧Ж╬┐╧Б╧Д╧Й╬╝╬н╬╜╬▒ ╬▓╬п╬╜╧Д╬╡╬┐ ╬║╬▒╬╣ ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В ╬╝╬╡ ╧Д╬▒ ╬╡╧А╬╣╬╗╬╡╬│╬╝╬н╬╜╬▒ ╬╡╧Ж╬╡╬┤╧Б╬╣╬║╬м ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"sync_local": "╬д╬┐╧А╬╣╬║╧М╧В ╬г╧Е╬│╧З╧Б╬┐╬╜╬╣╧Г╬╝╧М╧В",
|
||||
"sync_remote": "╬С╧А╬┐╬╝╬▒╬║╧Б╧Е╧Г╬╝╬н╬╜╬┐╧В ╬г╧Е╬│╧З╧Б╬┐╬╜╬╣╧Г╬╝╧М╧В",
|
||||
"sync_upload_album_setting_subtitle": "╬Ф╬╖╬╝╬╣╬┐╧Е╧Б╬│╬о╧Г╧Д╬╡ ╬║╬▒╬╣ ╬▒╬╜╬╡╬▓╬м╧Г╧Д╬╡ ╧Д╬╣╧В ╧Ж╧Й╧Д╬┐╬│╧Б╬▒╧Ж╬п╬╡╧В ╬║╬▒╬╣ ╧Д╬▒ ╬▓╬п╬╜╧Д╬╡╧М ╧Г╬▒╧В ╧Г╧Д╬▒ ╬╡╧А╬╣╬╗╬╡╬│╬╝╬н╬╜╬▒ ╬м╬╗╬╝╧А╬┐╧Е╬╝ ╧Г╧Д╬┐ Immich",
|
||||
"tag": "╬Х╧Д╬╣╬║╬н╧Д╬▒",
|
||||
"tag_assets": "╬Х╧Д╬╣╬║╬╡╧Д╬┐╧А╬┐╬п╬╖╧Г╬╖ ╧Г╧Д╬┐╬╣╧З╬╡╬п╧Й╬╜",
|
||||
@@ -1806,6 +1871,7 @@
|
||||
"tag_updated": "╬Х╬╜╬╖╬╝╬╡╧Б╧О╬╕╬╖╬║╬╡ ╬╖ ╬╡╧Д╬╣╬║╬н╧Д╬▒: {tag}",
|
||||
"tagged_assets": "╬Х╧Д╬╣╬║╬╡╧Д╬┐╧А╬┐╬╣╬╖╬╝╬н╬╜╬┐/╬▒ {count, plural, one {# ╧Г╧Д╬┐╬╣╧З╬╡╬п╬┐} other {# ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒}}",
|
||||
"tags": "╬Х╧Д╬╣╬║╬н╧Д╬╡╧В",
|
||||
"tap_to_run_job": "╬а╬▒╧Д╬о╧Г╧Д╬╡ ╬│╬╣╬▒ ╬╜╬▒ ╬╛╬╡╬║╬╣╬╜╬о╧Г╬╡╬╣ ╬╖ ╬╡╧Б╬│╬▒╧Г╬п╬▒",
|
||||
"template": "╬а╧Б╧М╧Д╧Е╧А╬┐",
|
||||
"theme": "╬Ш╬н╬╝╬▒",
|
||||
"theme_selection": "╬Х╧А╬╣╬╗╬┐╬│╬о ╬╕╬н╬╝╬▒╧Д╬┐╧В",
|
||||
@@ -1838,6 +1904,7 @@
|
||||
"total": "╬г╧Н╬╜╬┐╬╗╬┐",
|
||||
"total_usage": "╬г╧Е╬╜╬┐╬╗╬╣╬║╬╖ ╧З╧Б╬╖╧Г╬╖",
|
||||
"trash": "╬Ъ╬м╬┤╬┐╧В ╬▒╧А╬┐╧Б╧Б╬╣╬╝╬╝╬м╧Д╧Й╬╜",
|
||||
"trash_action_prompt": "{count} ╬╝╬╡╧Д╬▒╬║╬╣╬╜╬о╬╕╬╖╬║╬▒╬╜ ╧Г╧Д╬▒ ╬▒╧А╬┐╧Б╧Б╬п╬╝╬╝╬▒╧Д╬▒",
|
||||
"trash_all": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╬М╬╗╧Й╬╜",
|
||||
"trash_count": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о {count, number}",
|
||||
"trash_delete_asset": "╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о/╬Я╧Б╬╣╧Г╧Д. ╬Ф╬╣╬▒╬│╧Б╬▒╧Ж╬о ╬С╬╜╧Д╬╣╬║╬╡╬╣╬╝╬н╬╜╬┐╧Е",
|
||||
@@ -1855,9 +1922,11 @@
|
||||
"unable_to_change_pin_code": "╬С╬┤╧Е╬╜╬▒╬╝╬п╬▒ ╬▒╬╗╬╗╬▒╬│╬о╧В ╬║╧Й╬┤╬╣╬║╬┐╧Н PIN",
|
||||
"unable_to_setup_pin_code": "╬С╬┤╧Е╬╜╬▒╬╝╬п╬▒ ╧Б╧Н╬╕╬╝╬╣╧Г╬╖╧В ╬║╧Й╬┤╬╣╬║╬┐╧Н PIN",
|
||||
"unarchive": "╬С╬╜╬▒╬п╧Б╬╡╧Г╬╖ ╬▒╧Б╧З╬╡╬╣╬┐╬╕╬н╧Д╬╖╧Г╬╖╧В",
|
||||
"unarchive_action_prompt": "{count} ╬▒╧Ж╬▒╬╣╧Б╬н╬╕╬╖╬║╬▒╬╜ ╬▒╧А╧М ╧Д╬┐ ╬С╧Б╧З╬╡╬п╬┐",
|
||||
"unarchived_count": "{count, plural, other {╬С╧Б╧З╬╡╬╣╬┐╬╕╬╡╧Д╬о╧Г╬╡╬╣╧В ╬▒╬╜╬▒╬╣╧Б╬н╬╕╬╖╬║╬▒╬╜ #}}",
|
||||
"undo": "╬С╬╜╬▒╬п╧Б╬╡╧Г╬╖",
|
||||
"unfavorite": "╬С╧А╬┐╬╡╧А╬╣╬╗╬┐╬│╬о ╬▒╧А╧М ╧Д╬▒ ╬▒╬│╬▒╧А╬╖╬╝╬н╬╜╬▒",
|
||||
"unfavorite_action_prompt": "{count} ╬▒╧Ж╬▒╬╣╧Б╬н╬╕╬╖╬║╬▒╬╜ ╬▒╧А╧М ╧Д╬▒ ╬С╬│╬▒╧А╬╖╬╝╬н╬╜╬▒",
|
||||
"unhide_person": "╬С╬╜╬▒╬п╧Б╬╡╧Г╬╖ ╬▒╧А╧М╬║╧Б╧Е╧И╬╖╧В ╬▒╧Д╧М╬╝╬┐╧Е",
|
||||
"unknown": "╬Ж╬│╬╜╧Й╧Г╧Д╬┐",
|
||||
"unknown_country": "╬Ж╬│╬╜╧Й╧Г╧Д╬╖ ╬з╧О╧Б╬▒",
|
||||
@@ -1875,15 +1944,20 @@
|
||||
"unselect_all_duplicates": "╬С╧А╬┐╬╡╧А╬╣╬╗╬┐╬│╬о ╧М╬╗╧Й╬╜ ╧Д╧Й╬╜ ╬┤╬╣╧А╬╗╧М╧Д╧Е╧А╧Й╬╜",
|
||||
"unselect_all_in": "╬С╧А╬┐╬╡╧А╬╣╬╗╬┐╬│╬о ╧М╬╗╧Й╬╜ ╧Г╧Д╬┐ {group}",
|
||||
"unstack": "╬С╧А╬┐╧Г╧Д╬┐╬п╬▓╬▒╬╛╬╖",
|
||||
"unstack_action_prompt": "{count} ╬▒╧А╬┐╧Г╧Е╧Г╧Г╧Й╧Б╬╡╧Н╧Д╬╖╬║╬▒╬╜",
|
||||
"unstacked_assets_count": "╬С╧А╬┐╧Г╧Д╬┐╬╣╬▓╬м╬╛╬▒╧Д╬╡ {count, plural, one {# ╧Г╧Д╬┐╬╣╧З╬╡╬п╬┐} other {# ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒}}",
|
||||
"untagged": "╬з╧Й╧Б╬п╧В ╬╡╧Д╬╣╬║╬н╧Д╬▒",
|
||||
"up_next": "╬С╬║╬┐╬╗╬┐╧Е╬╕╬╡╬п",
|
||||
"updated_at": "╬Х╬╜╬╖╬╝╬╡╧Б╧Й╬╝╬н╬╜╬┐",
|
||||
"updated_password": "╬Я ╬║╧Й╬┤╬╣╬║╧М╧В ╧А╧Б╧М╧Г╬▓╬▒╧Г╬╖╧В ╬╡╬╜╬╖╬╝╬╡╧Б╧О╬╕╬╖╬║╬╡",
|
||||
"upload": "╬Ь╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖",
|
||||
"upload_action_prompt": "{count} ╧Д╬┐╧А╬┐╬╕╬╡╧Д╬о╬╕╬╖╬║╬▒╬╜ ╧Г╧Д╬╖╬╜ ╬┐╧Е╧Б╬м ╬│╬╣╬▒ ╬╝╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖",
|
||||
"upload_concurrency": "╬д╬▒╧Е╧Д╧М╧З╧Б╬┐╬╜╬╖ ╬╝╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖",
|
||||
"upload_details": "╬Ы╬╡╧А╧Д╬┐╬╝╬н╧Б╬╡╬╣╬╡╧В ╬╝╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖╧В",
|
||||
"upload_dialog_info": "╬Ш╬н╬╗╬╡╧Д╬╡ ╬╜╬▒ ╬▒╬╜╧Д╬╣╬│╧Б╬м╧И╬╡╧Д╬╡ (╬║╬м╬╜╬╡╧Д╬╡ backup) ╧Д╬▒ ╬╡╧А╬╣╬╗╬╡╬│╬╝╬н╬╜o(╬▒) ╧Г╧Д╬┐╬╣╧З╬╡╬п╬┐(╬▒) ╧Г╧Д╬┐ ╬┤╬╣╬▒╬║╬┐╬╝╬╣╧Г╧Д╬о;",
|
||||
"upload_dialog_title": "╬С╬╜╬н╬▓╬▒╧Г╬╝╬▒ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬┐╧Е",
|
||||
"upload_errors": "╬Ч ╬╝╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖ ╬┐╬╗╬┐╬║╬╗╬╖╧Б╧О╬╕╬╖╬║╬╡ ╬╝╬╡ {count, plural, one {# ╧Г╧Ж╬м╬╗╬╝╬▒} other {# ╧Г╧Ж╬м╬╗╬╝╬▒╧Д╬▒}}, ╬▒╬╜╬▒╬╜╬╡╧О╧Г╧Д╬╡ ╧Д╬╖ ╧Г╬╡╬╗╬п╬┤╬▒ ╬│╬╣╬▒ ╬╜╬▒ ╬┤╬╡╬п╧Д╬╡ ╬╜╬н╬▒ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒ ╬╝╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖╧В.",
|
||||
"upload_finished": "╬Я╬╗╬┐╬║╬╗╬о╧Б╧Й╧Г╬╖ ╬╝╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖╧В",
|
||||
"upload_progress": "╬С╧А╬┐╬╝╬н╬╜╬┐╧Е╬╜ {remaining, number} - ╬Я╬╗╬┐╬║╬╗╬╖╧Б╧О╬╕╬╖╬║╬▒╬╜ {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "╬а╬▒╧Б╬▒╬╗╬╡╬п╧Ж╬╕╬╖╬║╬▒╬╜ {count, plural, one {# ╬┤╬╣╧А╬╗╧М╧Д╧Е╧А╬┐ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬┐} other {# ╬┤╬╣╧А╬╗╧М╧Д╧Е╧А╬▒ ╧Г╧Д╬┐╬╣╧З╬╡╬п╬▒}}",
|
||||
"upload_status_duplicates": "╬Ф╬╣╧А╬╗╧М╧Д╧Е╧А╬▒",
|
||||
@@ -1892,6 +1966,7 @@
|
||||
"upload_success": "╬Ч ╬╝╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖ ╬┐╬╗╬┐╬║╬╗╬╖╧Б╧О╬╕╬╖╬║╬╡, ╬▒╬╜╬▒╬╜╬╡╧О╧Г╧Д╬╡ ╧Д╬╖ ╧Г╬╡╬╗╬п╬┤╬▒ ╬│╬╣╬▒ ╬╜╬▒ ╬┤╬╡╬п╧Д╬╡ ╧Д╬▒ ╬╜╬н╬▒ ╬▒╬╜╧Д╬╣╬║╬╡╬п╬╝╬╡╬╜╬▒.",
|
||||
"upload_to_immich": "╬Ь╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖ ╧Г╧Д╬┐ Immich ({count})",
|
||||
"uploading": "╬Ь╬╡╧Д╬▒╧Ж╬┐╧Б╧Д╧О╬╜╬╡╧Д╬▒╬╣",
|
||||
"uploading_media": "╬Ь╬╡╧Д╬▒╧Ж╧М╧Б╧Д╧Й╧Г╬╖ ╧А╬┐╬╗╧Е╬╝╬н╧Г╧Й╬╜",
|
||||
"url": "URL",
|
||||
"usage": "╬з╧Б╬о╧Г╬╖",
|
||||
"use_biometric": "╬з╧Б╬о╧Г╬╖ ╬▓╬╣╬┐╬╝╬╡╧Д╧Б╬╣╬║╧О╬╜ ╧Г╧Д╬┐╬╣╧З╬╡╬п╧Й╬╜",
|
||||
@@ -1912,6 +1987,7 @@
|
||||
"user_usage_stats_description": "╬а╧Б╬┐╬▓╬┐╬╗╬о ╧Г╧Д╬▒╧Д╬╣╧Г╧Д╬╣╬║╧О╬╜ ╧З╧Б╬о╧Г╬╖╧В ╬╗╬┐╬│╬▒╧Б╬╣╬▒╧Г╬╝╬┐╧Н",
|
||||
"username": "╬М╬╜╬┐╬╝╬▒ ╬з╧Б╬о╧Г╧Д╬╖",
|
||||
"users": "╬з╧Б╬о╧Г╧Д╬╡╧В",
|
||||
"users_added_to_album_count": "╬а╧Б╬┐╧Г╧Д╬н╬╕╬╖╬║╬╡ {count, plural, one {# ╧З╧Б╬о╧Г╧Д╬╖╧В} other {# ╧З╧Б╬о╧Г╧Д╬╡╧В}} ╧Г╧Д╬┐ ╬м╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"utilities": "╬Т╬┐╬╖╬╕╬╖╧Д╬╣╬║╬м ╧А╧Б╬┐╬│╧Б╬м╬╝╬╝╬▒╧Д╬▒",
|
||||
"validate": "╬Х╧А╬╣╬║╧Н╧Б╧Й╧Г╬╖",
|
||||
"validate_endpoint_error": "╬а╬▒╧Б╬▒╬║╬▒╬╗╧О ╬╡╬╣╧Г╬м╬│╬╡╧Д╬╡ ╬н╬╜╬▒ ╬н╬│╬║╧Е╧Б╬┐ URL",
|
||||
@@ -1930,6 +2006,7 @@
|
||||
"view_album": "╬а╧Б╬┐╬▓╬┐╬╗╬о ╬Ж╬╗╬╝╧А╬┐╧Е╬╝",
|
||||
"view_all": "╬а╧Б╬┐╬▓╬┐╬╗╬о ╬М╬╗╧Й╬╜",
|
||||
"view_all_users": "╬а╧Б╬┐╬▓╬┐╬╗╬о ╧М╬╗╧Й╬╜ ╧Д╧Й╬╜ ╧З╧Б╬╖╧Г╧Д╧О╬╜",
|
||||
"view_details": "╬а╧Б╬┐╬▓╬┐╬╗╬о ╬Ы╬╡╧А╧Д╬┐╬╝╬╡╧Б╬╡╬╣╧О╬╜",
|
||||
"view_in_timeline": "╬а╧Б╬┐╬▓╬┐╬╗╬о ╧Г╧Д╬┐ ╧З╧Б╬┐╬╜╬┐╬┤╬╣╬м╬│╧Б╬▒╬╝╬╝╬▒",
|
||||
"view_link": "╬а╧Б╬┐╬▓╬┐╬╗╬о ╧Г╧Н╬╜╬┤╬╡╧Г╬╝╬┐╧Е",
|
||||
"view_links": "╬а╧Б╬┐╬▓╬┐╬╗╬о ╧Г╧Е╬╜╬┤╬н╧Г╬╝╧Й╬╜",
|
||||
|
||||
107
i18n/en.json
107
i18n/en.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Add a location",
|
||||
"add_a_name": "Add a name",
|
||||
"add_a_title": "Add a title",
|
||||
"add_birthday": "Add a birthday",
|
||||
"add_endpoint": "Add endpoint",
|
||||
"add_exclusion_pattern": "Add exclusion pattern",
|
||||
"add_import_path": "Add import path",
|
||||
@@ -44,6 +45,13 @@
|
||||
"backup_database": "Create Database Dump",
|
||||
"backup_database_enable_description": "Enable database dumps",
|
||||
"backup_keep_last_amount": "Amount of previous dumps to keep",
|
||||
"backup_onboarding_1_description": "offsite copy in the cloud or at another physical location.",
|
||||
"backup_onboarding_2_description": "local copies on different devices. This includes the main files and a backup of those files locally.",
|
||||
"backup_onboarding_3_description": "total copies of your data, including the original files. This includes 1 offsite copy and 2 local copies.",
|
||||
"backup_onboarding_description": "A <backblaze-link>3-2-1 backup strategy</backblaze-link> is recommended to protect your data. You should keep copies of your uploaded photos/videos as well as the Immich database for a comprehensive backup solution.",
|
||||
"backup_onboarding_footer": "For more information about backing up Immich, please refer to the <link>documentation</link>.",
|
||||
"backup_onboarding_parts_title": "A 3-2-1 backup includes:",
|
||||
"backup_onboarding_title": "Backups",
|
||||
"backup_settings": "Database Dump Settings",
|
||||
"backup_settings_description": "Manage database dump settings.",
|
||||
"cleared_jobs": "Cleared jobs for: {job}",
|
||||
@@ -166,6 +174,20 @@
|
||||
"metadata_settings_description": "Manage metadata settings",
|
||||
"migration_job": "Migration",
|
||||
"migration_job_description": "Migrate thumbnails for assets and faces to the latest folder structure",
|
||||
"nightly_tasks_cluster_faces_setting_description": "Run facial recognition on newly detected faces",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Cluster new faces",
|
||||
"nightly_tasks_database_cleanup_setting": "Database cleanup tasks",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Clean up old, expired data from the database",
|
||||
"nightly_tasks_generate_memories_setting": "Generate memories",
|
||||
"nightly_tasks_generate_memories_setting_description": "Create new memories from assets",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Generate missing thumbnails",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "Queue assets without thumbnails for thumbnail generation",
|
||||
"nightly_tasks_settings": "Nightly Tasks Settings",
|
||||
"nightly_tasks_settings_description": "Manage nightly tasks",
|
||||
"nightly_tasks_start_time_setting": "Start time",
|
||||
"nightly_tasks_start_time_setting_description": "The time at which the server starts running the nightly tasks",
|
||||
"nightly_tasks_sync_quota_usage_setting": "Sync quota usage",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "Update user storage quota, based on current usage",
|
||||
"no_paths_added": "No paths added",
|
||||
"no_pattern_added": "No pattern added",
|
||||
"note_apply_storage_label_previous_assets": "Note: To apply the Storage Label to previously uploaded assets, run the",
|
||||
@@ -196,6 +218,8 @@
|
||||
"oauth_mobile_redirect_uri": "Mobile redirect URI",
|
||||
"oauth_mobile_redirect_uri_override": "Mobile redirect URI override",
|
||||
"oauth_mobile_redirect_uri_override_description": "Enable when OAuth provider does not allow a mobile URI, like ''{callback}''",
|
||||
"oauth_role_claim": "Role Claim",
|
||||
"oauth_role_claim_description": "Automatically grant admin access based on the presence of this claim. The claim may have either 'user' or 'admin'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "Manage OAuth login settings",
|
||||
"oauth_settings_more_details": "For more details about this feature, refer to the <link>docs</link>.",
|
||||
@@ -357,10 +381,12 @@
|
||||
"admin_password": "Admin Password",
|
||||
"administration": "Administration",
|
||||
"advanced": "Advanced",
|
||||
"advanced_settings_beta_timeline_subtitle": "Try the new app experience",
|
||||
"advanced_settings_beta_timeline_title": "Beta Timeline",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Use this option to filter media during sync based on alternate criteria. Only try this if you have issues with the app detecting all albums.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTAL] Use alternate device album sync filter",
|
||||
"advanced_settings_log_level_title": "Log level: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "Some devices are painfully slow to load thumbnails from assets on the device. Activate this setting to load remote images instead.",
|
||||
"advanced_settings_prefer_remote_subtitle": "Some devices are painfully slow to load thumbnails from local assets. Activate this setting to load remote images instead.",
|
||||
"advanced_settings_prefer_remote_title": "Prefer remote images",
|
||||
"advanced_settings_proxy_headers_subtitle": "Define proxy headers Immich should send with each network request",
|
||||
"advanced_settings_proxy_headers_title": "Proxy Headers",
|
||||
@@ -379,6 +405,7 @@
|
||||
"album_cover_updated": "Album cover updated",
|
||||
"album_delete_confirmation": "Are you sure you want to delete the album {album}?",
|
||||
"album_delete_confirmation_description": "If this album is shared, other users will not be able to access it anymore.",
|
||||
"album_deleted": "Album deleted",
|
||||
"album_info_card_backup_album_excluded": "EXCLUDED",
|
||||
"album_info_card_backup_album_included": "INCLUDED",
|
||||
"album_info_updated": "Album info updated",
|
||||
@@ -388,6 +415,7 @@
|
||||
"album_options": "Album options",
|
||||
"album_remove_user": "Remove user?",
|
||||
"album_remove_user_confirmation": "Are you sure you want to remove {user}?",
|
||||
"album_search_not_found": "No albums found matching your search",
|
||||
"album_share_no_users": "Looks like you have shared this album with all users or you don't have any user to share with.",
|
||||
"album_updated": "Album updated",
|
||||
"album_updated_setting_description": "Receive an email notification when a shared album has new assets",
|
||||
@@ -407,6 +435,7 @@
|
||||
"albums_default_sort_order": "Default album sort order",
|
||||
"albums_default_sort_order_description": "Initial asset sort order when creating new albums.",
|
||||
"albums_feature_description": "Collections of assets that can be shared with other users.",
|
||||
"albums_on_device_count": "Albums on device ({count})",
|
||||
"all": "All",
|
||||
"all_albums": "All albums",
|
||||
"all_people": "All people",
|
||||
@@ -427,6 +456,7 @@
|
||||
"app_settings": "App Settings",
|
||||
"appears_in": "Appears in",
|
||||
"archive": "Archive",
|
||||
"archive_action_prompt": "{count} added to Archive",
|
||||
"archive_or_unarchive_photo": "Archive or unarchive photo",
|
||||
"archive_page_no_archived_assets": "No archived assets found",
|
||||
"archive_page_title": "Archive ({count})",
|
||||
@@ -489,6 +519,7 @@
|
||||
"back_close_deselect": "Back, close, or deselect",
|
||||
"background_location_permission": "Background location permission",
|
||||
"background_location_permission_content": "In order to switch networks when running in the background, Immich must *always* have precise location access so the app can read the Wi-Fi network's name",
|
||||
"backup": "Backup",
|
||||
"backup_album_selection_page_albums_device": "Albums on device ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Tap to include, double tap to exclude",
|
||||
"backup_album_selection_page_assets_scatter": "Assets can scatter across multiple albums. Thus, albums can be included or excluded during the backup process.",
|
||||
@@ -549,9 +580,13 @@
|
||||
"backup_manual_in_progress": "Upload already in progress. Try after sometime",
|
||||
"backup_manual_success": "Success",
|
||||
"backup_manual_title": "Upload status",
|
||||
"backup_options": "Backup Options",
|
||||
"backup_options_page_title": "Backup options",
|
||||
"backup_setting_subtitle": "Manage background and foreground upload settings",
|
||||
"backup_settings_subtitle": "Manage upload settings",
|
||||
"backward": "Backward",
|
||||
"beta_sync": "Beta Sync Status",
|
||||
"beta_sync_subtitle": "Manage the new sync system",
|
||||
"biometric_auth_enabled": "Biometric authentication enabled",
|
||||
"biometric_locked_out": "You are locked out of biometric authentication",
|
||||
"biometric_no_options": "No biometric options available",
|
||||
@@ -569,7 +604,7 @@
|
||||
"cache_settings_clear_cache_button": "Clear cache",
|
||||
"cache_settings_clear_cache_button_title": "Clears the app's cache. This will significantly impact the app's performance until the cache has rebuilt.",
|
||||
"cache_settings_duplicated_assets_clear_button": "CLEAR",
|
||||
"cache_settings_duplicated_assets_subtitle": "Photos and videos that are black listed by the app",
|
||||
"cache_settings_duplicated_assets_subtitle": "Photos and videos that are ignore listed by the app",
|
||||
"cache_settings_duplicated_assets_title": "Duplicated Assets ({count})",
|
||||
"cache_settings_statistics_album": "Library thumbnails",
|
||||
"cache_settings_statistics_full": "Full images",
|
||||
@@ -586,6 +621,7 @@
|
||||
"cancel": "Cancel",
|
||||
"cancel_search": "Cancel search",
|
||||
"canceled": "Canceled",
|
||||
"canceling": "Canceling",
|
||||
"cannot_merge_people": "Cannot merge people",
|
||||
"cannot_undo_this_action": "You cannot undo this action!",
|
||||
"cannot_update_the_description": "Cannot update the description",
|
||||
@@ -617,6 +653,7 @@
|
||||
"clear": "Clear",
|
||||
"clear_all": "Clear all",
|
||||
"clear_all_recent_searches": "Clear all recent searches",
|
||||
"clear_file_cache": "Clear File Cache",
|
||||
"clear_message": "Clear message",
|
||||
"clear_value": "Clear value",
|
||||
"client_cert_dialog_msg_confirm": "OK",
|
||||
@@ -699,10 +736,11 @@
|
||||
"current_server_address": "Current server address",
|
||||
"custom_locale": "Custom Locale",
|
||||
"custom_locale_description": "Format dates and numbers based on the language and the region",
|
||||
"custom_url": "Custom URL",
|
||||
"daily_title_text_date": "E, MMM dd",
|
||||
"daily_title_text_date_year": "E, MMM dd, yyyy",
|
||||
"dark": "Dark",
|
||||
"darkTheme": "Toggle dark theme",
|
||||
"dark_theme": "Toggle dark theme",
|
||||
"date_after": "Date after",
|
||||
"date_and_time": "Date and Time",
|
||||
"date_before": "Date before",
|
||||
@@ -718,6 +756,8 @@
|
||||
"default_locale": "Default Locale",
|
||||
"default_locale_description": "Format dates and numbers based on your browser locale",
|
||||
"delete": "Delete",
|
||||
"delete_action_confirmation_message": "Are you sure you want to delete this asset? This action will move the asset to the server's trash and will prompt if you want to delete it locally",
|
||||
"delete_action_prompt": "{count} deleted",
|
||||
"delete_album": "Delete album",
|
||||
"delete_api_key_prompt": "Are you sure you want to delete this API key?",
|
||||
"delete_dialog_alert": "These items will be permanently deleted from Immich and from your device",
|
||||
@@ -731,9 +771,12 @@
|
||||
"delete_key": "Delete key",
|
||||
"delete_library": "Delete Library",
|
||||
"delete_link": "Delete link",
|
||||
"delete_local_action_prompt": "{count} deleted locally",
|
||||
"delete_local_dialog_ok_backed_up_only": "Delete Backed Up Only",
|
||||
"delete_local_dialog_ok_force": "Delete Anyway",
|
||||
"delete_others": "Delete others",
|
||||
"delete_permanently": "Delete permanently",
|
||||
"delete_permanently_action_prompt": "{count} deleted permanently",
|
||||
"delete_shared_link": "Delete shared link",
|
||||
"delete_shared_link_dialog_title": "Delete Shared Link",
|
||||
"delete_tag": "Delete tag",
|
||||
@@ -744,6 +787,7 @@
|
||||
"description": "Description",
|
||||
"description_input_hint_text": "Add description...",
|
||||
"description_input_submit_error": "Error updating description, check the log for more details",
|
||||
"deselect_all": "Deselect All",
|
||||
"details": "Details",
|
||||
"direction": "Direction",
|
||||
"disabled": "Disabled",
|
||||
@@ -761,6 +805,7 @@
|
||||
"documentation": "Documentation",
|
||||
"done": "Done",
|
||||
"download": "Download",
|
||||
"download_action_prompt": "Downloading {count} assets",
|
||||
"download_canceled": "Download canceled",
|
||||
"download_complete": "Download complete",
|
||||
"download_enqueue": "Download enqueued",
|
||||
@@ -787,8 +832,10 @@
|
||||
"edit": "Edit",
|
||||
"edit_album": "Edit album",
|
||||
"edit_avatar": "Edit avatar",
|
||||
"edit_birthday": "Edit Birthday",
|
||||
"edit_date": "Edit date",
|
||||
"edit_date_and_time": "Edit date and time",
|
||||
"edit_date_and_time_action_prompt": "{count} date and time edited",
|
||||
"edit_description": "Edit description",
|
||||
"edit_description_prompt": "Please select a new description:",
|
||||
"edit_exclusion_pattern": "Edit exclusion pattern",
|
||||
@@ -798,6 +845,7 @@
|
||||
"edit_key": "Edit key",
|
||||
"edit_link": "Edit link",
|
||||
"edit_location": "Edit location",
|
||||
"edit_location_action_prompt": "{count} location edited",
|
||||
"edit_location_dialog_title": "Location",
|
||||
"edit_name": "Edit name",
|
||||
"edit_people": "Edit people",
|
||||
@@ -816,6 +864,7 @@
|
||||
"empty_trash": "Empty trash",
|
||||
"empty_trash_confirmation": "Are you sure you want to empty the trash? This will remove all the assets in trash permanently from Immich.\nYou cannot undo this action!",
|
||||
"enable": "Enable",
|
||||
"enable_backup": "Enable Backup",
|
||||
"enable_biometric_auth_description": "Enter your PIN code to enable biometric authentication",
|
||||
"enabled": "Enabled",
|
||||
"end_date": "End date",
|
||||
@@ -952,6 +1001,7 @@
|
||||
},
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "Add Description...",
|
||||
"exif_bottom_sheet_description_error": "Error updating description",
|
||||
"exif_bottom_sheet_details": "DETAILS",
|
||||
"exif_bottom_sheet_location": "LOCATION",
|
||||
"exif_bottom_sheet_people": "PEOPLE",
|
||||
@@ -972,6 +1022,8 @@
|
||||
"explorer": "Explorer",
|
||||
"export": "Export",
|
||||
"export_as_json": "Export as JSON",
|
||||
"export_database": "Export Database",
|
||||
"export_database_description": "Export the SQLite database",
|
||||
"extension": "Extension",
|
||||
"external": "External",
|
||||
"external_libraries": "External Libraries",
|
||||
@@ -983,6 +1035,7 @@
|
||||
"failed_to_load_assets": "Failed to load assets",
|
||||
"failed_to_load_folder": "Failed to load folder",
|
||||
"favorite": "Favorite",
|
||||
"favorite_action_prompt": "{count} added to Favorites",
|
||||
"favorite_or_unfavorite_photo": "Favorite or unfavorite photo",
|
||||
"favorites": "Favorites",
|
||||
"favorites_page_no_favorites": "No favorite assets found",
|
||||
@@ -1022,6 +1075,9 @@
|
||||
"haptic_feedback_switch": "Enable haptic feedback",
|
||||
"haptic_feedback_title": "Haptic Feedback",
|
||||
"has_quota": "Has quota",
|
||||
"hash_asset": "Hash asset",
|
||||
"hashed_assets": "Hashed assets",
|
||||
"hashing": "Hashing",
|
||||
"header_settings_add_header_tip": "Add Header",
|
||||
"header_settings_field_validator_msg": "Value cannot be empty",
|
||||
"header_settings_header_name_input": "Header name",
|
||||
@@ -1054,6 +1110,7 @@
|
||||
"host": "Host",
|
||||
"hour": "Hour",
|
||||
"id": "ID",
|
||||
"idle": "Idle",
|
||||
"ignore_icloud_photos": "Ignore iCloud photos",
|
||||
"ignore_icloud_photos_description": "Photos that are stored on iCloud will not be uploaded to the Immich server",
|
||||
"image": "Image",
|
||||
@@ -1111,6 +1168,7 @@
|
||||
"language_no_results_title": "No languages found",
|
||||
"language_search_hint": "Search languages...",
|
||||
"language_setting_description": "Select your preferred language",
|
||||
"large_files": "Large Files",
|
||||
"last_seen": "Last seen",
|
||||
"latest_version": "Latest Version",
|
||||
"latitude": "Latitude",
|
||||
@@ -1126,16 +1184,18 @@
|
||||
"library_page_sort_created": "Created date",
|
||||
"library_page_sort_last_modified": "Last modified",
|
||||
"library_page_sort_title": "Album title",
|
||||
"licenses": "Licenses",
|
||||
"light": "Light",
|
||||
"like_deleted": "Like deleted",
|
||||
"link_motion_video": "Link motion video",
|
||||
"link_options": "Link options",
|
||||
"link_to_oauth": "Link to OAuth",
|
||||
"linked_oauth_account": "Linked OAuth account",
|
||||
"list": "List",
|
||||
"loading": "Loading",
|
||||
"loading_search_results_failed": "Loading search results failed",
|
||||
"local": "Local",
|
||||
"local_asset_cast_failed": "Unable to cast an asset that is not uploaded to the server",
|
||||
"local_assets": "Local Assets",
|
||||
"local_network": "Local network",
|
||||
"local_network_sheet_info": "The app will connect to the server through this URL when using the specified Wi-Fi network",
|
||||
"location_permission": "Location permission",
|
||||
@@ -1192,8 +1252,7 @@
|
||||
"manage_your_devices": "Manage your logged-in devices",
|
||||
"manage_your_oauth_connection": "Manage your OAuth connection",
|
||||
"map": "Map",
|
||||
"map_assets_in_bound": "{count} photo",
|
||||
"map_assets_in_bounds": "{count} photos",
|
||||
"map_assets_in_bounds": "{count, plural, one {# photo} other {# photos}}",
|
||||
"map_cannot_get_user_location": "Cannot get user's location",
|
||||
"map_location_dialog_yes": "Yes",
|
||||
"map_location_picker_page_use_location": "Use this location",
|
||||
@@ -1245,6 +1304,7 @@
|
||||
"more": "More",
|
||||
"move": "Move",
|
||||
"move_off_locked_folder": "Move out of locked folder",
|
||||
"move_to_lock_folder_action_prompt": "{count} added to the locked folder",
|
||||
"move_to_locked_folder": "Move to locked folder",
|
||||
"move_to_locked_folder_confirmation": "These photos and video will be removed from all albums, and only viewable from the locked folder",
|
||||
"moved_to_archive": "Moved {count, plural, one {# asset} other {# assets}} to archive",
|
||||
@@ -1256,6 +1316,9 @@
|
||||
"my_albums": "My albums",
|
||||
"name": "Name",
|
||||
"name_or_nickname": "Name or nickname",
|
||||
"network_requirement_photos_upload": "Use cellular data to backup photos",
|
||||
"network_requirement_videos_upload": "Use cellular data to backup videos",
|
||||
"network_requirements_updated": "Network requirements changed, resetting backup queue",
|
||||
"networking_settings": "Networking",
|
||||
"networking_subtitle": "Manage the server endpoint settings",
|
||||
"never": "Never",
|
||||
@@ -1291,6 +1354,7 @@
|
||||
"no_results": "No results",
|
||||
"no_results_description": "Try a synonym or more general keyword",
|
||||
"no_shared_albums_message": "Create an album to share photos and videos with people in your network",
|
||||
"no_uploads_in_progress": "No uploads in progress",
|
||||
"not_in_any_album": "Not in any album",
|
||||
"not_selected": "Not selected",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "Note: To apply the Storage Label to previously uploaded assets, run the",
|
||||
@@ -1328,6 +1392,7 @@
|
||||
"original": "original",
|
||||
"other": "Other",
|
||||
"other_devices": "Other devices",
|
||||
"other_entities": "Other entities",
|
||||
"other_variables": "Other variables",
|
||||
"owned": "Owned",
|
||||
"owner": "Owner",
|
||||
@@ -1459,6 +1524,7 @@
|
||||
"purchase_server_description_2": "Supporter status",
|
||||
"purchase_server_title": "Server",
|
||||
"purchase_settings_server_activated": "The server product key is managed by the admin",
|
||||
"queue_status": "Queuing {count}/{total}",
|
||||
"rating": "Star rating",
|
||||
"rating_clear": "Clear rating",
|
||||
"rating_count": "{count, plural, one {# star} other {# stars}}",
|
||||
@@ -1487,6 +1553,8 @@
|
||||
"refreshing_faces": "Refreshing faces",
|
||||
"refreshing_metadata": "Refreshing metadata",
|
||||
"regenerating_thumbnails": "Regenerating thumbnails",
|
||||
"remote": "Remote",
|
||||
"remote_assets": "Remote Assets",
|
||||
"remove": "Remove",
|
||||
"remove_assets_album_confirmation": "Are you sure you want to remove {count, plural, one {# asset} other {# assets}} from the album?",
|
||||
"remove_assets_shared_link_confirmation": "Are you sure you want to remove {count, plural, one {# asset} other {# assets}} from this shared link?",
|
||||
@@ -1494,7 +1562,9 @@
|
||||
"remove_custom_date_range": "Remove custom date range",
|
||||
"remove_deleted_assets": "Remove Deleted Assets",
|
||||
"remove_from_album": "Remove from album",
|
||||
"remove_from_album_action_prompt": "{count} removed from the album",
|
||||
"remove_from_favorites": "Remove from favorites",
|
||||
"remove_from_lock_folder_action_prompt": "{count} removed from the locked folder",
|
||||
"remove_from_locked_folder": "Remove from locked folder",
|
||||
"remove_from_locked_folder_confirmation": "Are you sure you want to move these photos and videos out of the locked folder? They will be visible in your library.",
|
||||
"remove_from_shared_link": "Remove from shared link",
|
||||
@@ -1522,19 +1592,25 @@
|
||||
"reset_password": "Reset password",
|
||||
"reset_people_visibility": "Reset people visibility",
|
||||
"reset_pin_code": "Reset PIN code",
|
||||
"reset_sqlite": "Reset SQLite Database",
|
||||
"reset_sqlite_confirmation": "Are you sure you want to reset the SQLite database? You will need to log out and log in again to resync the data",
|
||||
"reset_sqlite_success": "Successfully reset the SQLite database",
|
||||
"reset_to_default": "Reset to default",
|
||||
"resolve_duplicates": "Resolve duplicates",
|
||||
"resolved_all_duplicates": "Resolved all duplicates",
|
||||
"restore": "Restore",
|
||||
"restore_all": "Restore all",
|
||||
"restore_trash_action_prompt": "{count} restored from trash",
|
||||
"restore_user": "Restore user",
|
||||
"restored_asset": "Restored asset",
|
||||
"resume": "Resume",
|
||||
"retry_upload": "Retry upload",
|
||||
"review_duplicates": "Review duplicates",
|
||||
"review_large_files": "Review large files",
|
||||
"role": "Role",
|
||||
"role_editor": "Editor",
|
||||
"role_viewer": "Viewer",
|
||||
"running": "Running",
|
||||
"save": "Save",
|
||||
"save_to_gallery": "Save to gallery",
|
||||
"saved_api_key": "Saved API Key",
|
||||
@@ -1666,6 +1742,7 @@
|
||||
"settings_saved": "Settings saved",
|
||||
"setup_pin_code": "Setup a PIN code",
|
||||
"share": "Share",
|
||||
"share_action_prompt": "Shared {count} assets",
|
||||
"share_add_photos": "Add photos",
|
||||
"share_assets_selected": "{count} selected",
|
||||
"share_dialog_preparing": "Preparing...",
|
||||
@@ -1687,6 +1764,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Copied to clipboard",
|
||||
"shared_link_clipboard_text": "Link: {link}\nPassword: {password}",
|
||||
"shared_link_create_error": "Error while creating shared link",
|
||||
"shared_link_custom_url_description": "Access this shared link with a custom URL",
|
||||
"shared_link_edit_description_hint": "Enter the share description",
|
||||
"shared_link_edit_expire_after_option_day": "1 day",
|
||||
"shared_link_edit_expire_after_option_days": "{count} days",
|
||||
@@ -1712,6 +1790,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Manage Shared links",
|
||||
"shared_link_options": "Shared link options",
|
||||
"shared_link_password_description": "Require a password to access this shared link",
|
||||
"shared_links": "Shared links",
|
||||
"shared_links_description": "Share photos and videos with a link",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# shared photos & videos.}}",
|
||||
@@ -1767,6 +1846,7 @@
|
||||
"sort_title": "Title",
|
||||
"source": "Source",
|
||||
"stack": "Stack",
|
||||
"stack_action_prompt": "{count} stacked",
|
||||
"stack_duplicates": "Stack duplicates",
|
||||
"stack_select_one_photo": "Select one main photo for the stack",
|
||||
"stack_selected_photos": "Stack selected photos",
|
||||
@@ -1786,6 +1866,7 @@
|
||||
"storage_quota": "Storage Quota",
|
||||
"storage_usage": "{used} of {available} used",
|
||||
"submit": "Submit",
|
||||
"success": "Success",
|
||||
"suggestions": "Suggestions",
|
||||
"sunrise_on_the_beach": "Sunrise on the beach",
|
||||
"support": "Support",
|
||||
@@ -1795,6 +1876,8 @@
|
||||
"sync": "Sync",
|
||||
"sync_albums": "Sync albums",
|
||||
"sync_albums_manual_subtitle": "Sync all uploaded videos and photos to the selected backup albums",
|
||||
"sync_local": "Sync Local",
|
||||
"sync_remote": "Sync Remote",
|
||||
"sync_upload_album_setting_subtitle": "Create and upload your photos and videos to the selected albums on Immich",
|
||||
"tag": "Tag",
|
||||
"tag_assets": "Tag assets",
|
||||
@@ -1805,6 +1888,7 @@
|
||||
"tag_updated": "Updated tag: {tag}",
|
||||
"tagged_assets": "Tagged {count, plural, one {# asset} other {# assets}}",
|
||||
"tags": "Tags",
|
||||
"tap_to_run_job": "Tap to run job",
|
||||
"template": "Template",
|
||||
"theme": "Theme",
|
||||
"theme_selection": "Theme selection",
|
||||
@@ -1837,6 +1921,7 @@
|
||||
"total": "Total",
|
||||
"total_usage": "Total usage",
|
||||
"trash": "Trash",
|
||||
"trash_action_prompt": "{count} moved to trash",
|
||||
"trash_all": "Trash All",
|
||||
"trash_count": "Trash {count, number}",
|
||||
"trash_delete_asset": "Trash/Delete Asset",
|
||||
@@ -1854,9 +1939,11 @@
|
||||
"unable_to_change_pin_code": "Unable to change PIN code",
|
||||
"unable_to_setup_pin_code": "Unable to setup PIN code",
|
||||
"unarchive": "Unarchive",
|
||||
"unarchive_action_prompt": "{count} removed from Archive",
|
||||
"unarchived_count": "{count, plural, other {Unarchived #}}",
|
||||
"undo": "Undo",
|
||||
"unfavorite": "Unfavorite",
|
||||
"unfavorite_action_prompt": "{count} removed from Favorites",
|
||||
"unhide_person": "Unhide person",
|
||||
"unknown": "Unknown",
|
||||
"unknown_country": "Unknown Country",
|
||||
@@ -1874,15 +1961,20 @@
|
||||
"unselect_all_duplicates": "Unselect all duplicates",
|
||||
"unselect_all_in": "Unselect all in {group}",
|
||||
"unstack": "Un-stack",
|
||||
"unstack_action_prompt": "{count} unstacked",
|
||||
"unstacked_assets_count": "Un-stacked {count, plural, one {# asset} other {# assets}}",
|
||||
"untagged": "Untagged",
|
||||
"up_next": "Up next",
|
||||
"updated_at": "Updated",
|
||||
"updated_password": "Updated password",
|
||||
"upload": "Upload",
|
||||
"upload_action_prompt": "{count} queued for upload",
|
||||
"upload_concurrency": "Upload concurrency",
|
||||
"upload_details": "Upload Details",
|
||||
"upload_dialog_info": "Do you want to backup the selected Asset(s) to the server?",
|
||||
"upload_dialog_title": "Upload Asset",
|
||||
"upload_errors": "Upload completed with {count, plural, one {# error} other {# errors}}, refresh the page to see new upload assets.",
|
||||
"upload_finished": "Upload finished",
|
||||
"upload_progress": "Remaining {remaining, number} - Processed {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "Skipped {count, plural, one {# duplicate asset} other {# duplicate assets}}",
|
||||
"upload_status_duplicates": "Duplicates",
|
||||
@@ -1891,6 +1983,7 @@
|
||||
"upload_success": "Upload success, refresh the page to see new upload assets.",
|
||||
"upload_to_immich": "Upload to Immich ({count})",
|
||||
"uploading": "Uploading",
|
||||
"uploading_media": "Uploading media",
|
||||
"url": "URL",
|
||||
"usage": "Usage",
|
||||
"use_biometric": "Use biometric",
|
||||
@@ -1911,6 +2004,7 @@
|
||||
"user_usage_stats_description": "View account usage statistics",
|
||||
"username": "Username",
|
||||
"users": "Users",
|
||||
"users_added_to_album_count": "Added {count, plural, one {# user} other {# users}} to the album",
|
||||
"utilities": "Utilities",
|
||||
"validate": "Validate",
|
||||
"validate_endpoint_error": "Please enter a valid URL",
|
||||
@@ -1929,6 +2023,7 @@
|
||||
"view_album": "View Album",
|
||||
"view_all": "View All",
|
||||
"view_all_users": "View all users",
|
||||
"view_details": "View Details",
|
||||
"view_in_timeline": "View in timeline",
|
||||
"view_link": "View link",
|
||||
"view_links": "View links",
|
||||
|
||||
150
i18n/es.json
150
i18n/es.json
@@ -2,7 +2,7 @@
|
||||
"about": "Acerca de",
|
||||
"account": "Cuenta",
|
||||
"account_settings": "Ajustes de la cuenta",
|
||||
"acknowledge": "De acuerdo",
|
||||
"acknowledge": "Aceptar",
|
||||
"action": "Acci├│n",
|
||||
"action_common_update": "Actualizar",
|
||||
"actions": "Acciones",
|
||||
@@ -14,13 +14,13 @@
|
||||
"add_a_location": "Agregar ubicaci├│n",
|
||||
"add_a_name": "Agregar nombre",
|
||||
"add_a_title": "Agregar t├нtulo",
|
||||
"add_endpoint": "A├▒adir endpoint",
|
||||
"add_endpoint": "Agregar endpoint",
|
||||
"add_exclusion_pattern": "Agregar patr├│n de exclusi├│n",
|
||||
"add_import_path": "Agregar ruta de importaci├│n",
|
||||
"add_location": "Agregar ubicaci├│n",
|
||||
"add_more_users": "Agregar m├бs usuarios",
|
||||
"add_partner": "Agregar compa├▒ero",
|
||||
"add_path": "Agregar carpeta",
|
||||
"add_path": "Agregar ruta",
|
||||
"add_photos": "Agregar fotos",
|
||||
"add_tag": "Agregar etiqueta",
|
||||
"add_to": "Agregar aтАж",
|
||||
@@ -63,8 +63,8 @@
|
||||
"exclusion_pattern_description": "Los patrones de exclusi├│n te permiten ignorar archivos y carpetas al escanear tu biblioteca. Es ├║til si tienes carpetas que contienen archivos que no deseas importar, por ejemplo archivos RAW.",
|
||||
"external_library_management": "Gesti├│n de bibliotecas externas",
|
||||
"face_detection": "Detecci├│n de caras",
|
||||
"face_detection_description": "Detecta las caras en los activos mediante aprendizaje autom├бtico. En el caso de los v├нdeos, solo se tiene en cuenta la miniatura. \"Actualizar\" (re)procesar├б todos los elementos. \"Restablecer\" borra adem├бs todos los datos de caras actuales. \"Falta\" pone en cola los elementos que a├║n no se han procesado. Las caras detectadas se pondr├бn en cola para el reconocimiento facial una vez finalizada la detecci├│n, agrup├бndolos en personas existentes o nuevas.",
|
||||
"facial_recognition_job_description": "Agrupa las caras detectadas en personas. Este paso se ejecuta una vez finalizada la detecci├│n de caras. \"Restablecer\" (re)agrupa todas las caras. \"Falta\" pone en cola las caras que no tienen asignada una persona.",
|
||||
"face_detection_description": "Detecta las caras en los elementos mediante aprendizaje autom├бtico. En el caso de los v├нdeos, solo se tiene en cuenta la miniatura. \"Actualizar\" (re)procesar├б todos los elementos. \"Restablecer\" borra adem├бs todos los datos de caras actuales. \"Faltante\" pone en cola los elementos que a├║n no se han procesado. Las caras detectadas se pondr├бn en cola para el reconocimiento facial una vez finalizada la detecci├│n, agrup├бndolos en personas existentes o nuevas.",
|
||||
"facial_recognition_job_description": "Agrupa las caras detectadas en personas. Este paso se realiza despu├йs de completar la detecci├│n de caras. \"Restablecer\" (re)agrupa todas las caras. \"Faltante\" pone en cola las caras que no tienen una persona asignada.",
|
||||
"failed_job_command": "El comando {command} ha fallado para la tarea: {job}",
|
||||
"force_delete_user_warning": "CUIDADO: Esta acci├│n eliminar├б inmediatamente el usuario y todos los elementos. Esta accion no se puede deshacer y los archivos no pueden ser recuperados.",
|
||||
"image_format": "Formato",
|
||||
@@ -166,9 +166,23 @@
|
||||
"metadata_settings_description": "Administrar la configuraci├│n de metadatos",
|
||||
"migration_job": "Migraci├│n",
|
||||
"migration_job_description": "Migrar miniaturas de archivos y caras a la estructura de carpetas m├бs reciente",
|
||||
"nightly_tasks_cluster_faces_setting_description": "Ejecutar reconocimiento facial en caras detectadas recientemente",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Agrupar caras nuevas",
|
||||
"nightly_tasks_database_cleanup_setting": "Tareas de limpieza de base de datos",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Limpiar datos antiguos y caducados de la base de datos",
|
||||
"nightly_tasks_generate_memories_setting": "Generar recuerdos",
|
||||
"nightly_tasks_generate_memories_setting_description": "Crear nuevos recuerdos a partir de activos",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Generar miniaturas faltantes",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "Poner en cola a activos sin miniaturas para la generaci├│n de miniaturas",
|
||||
"nightly_tasks_settings": "Configuraci├│n de Tareas Nocturnas",
|
||||
"nightly_tasks_settings_description": "Gestionar Tareas Nocturnas",
|
||||
"nightly_tasks_start_time_setting": "Tiempo de inicio",
|
||||
"nightly_tasks_start_time_setting_description": "El tiempo cuando el servidor comienza a ejecutar las tareas nocturnas",
|
||||
"nightly_tasks_sync_quota_usage_setting": "Uso de la cuota de sincronizaci├│n",
|
||||
"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 a├▒adido carpetas",
|
||||
"no_pattern_added": "No se han a├▒adido patrones",
|
||||
"note_apply_storage_label_previous_assets": "Nota: para aplicar una Etiqueta de Almacenamiento a un elemento anteriormente cargado, lanza el",
|
||||
"note_apply_storage_label_previous_assets": "Nota: para aplicar una Etiqueta de Almacenamiento a un elemento anteriormente subido, lanza el",
|
||||
"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.",
|
||||
@@ -196,6 +210,8 @@
|
||||
"oauth_mobile_redirect_uri": "URI de redireccionamiento m├│vil",
|
||||
"oauth_mobile_redirect_uri_override": "Sobreescribir URI de redirecci├│n m├│vil",
|
||||
"oauth_mobile_redirect_uri_override_description": "Habilitar cuando el proveedor de OAuth no permite una URI m├│vil, como ''{callback}''",
|
||||
"oauth_role_claim": "Concesi├│n de rol",
|
||||
"oauth_role_claim_description": "Otorgar acceso de administrador autom├бticamente seg├║n la presencia de esta concesi├│n. La concesi├│n puede tener \"usuario\" o \"admin\".",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "Administrar la configuraci├│n de inicio de sesi├│n de OAuth",
|
||||
"oauth_settings_more_details": "Para m├бs detalles acerca de esta caracter├нstica, consulte la <link>documentaci├│n</link>.",
|
||||
@@ -205,7 +221,7 @@
|
||||
"oauth_storage_quota_claim_description": "Establezca autom├бticamente la cuota de almacenamiento del usuario al valor de esta solicitud.",
|
||||
"oauth_storage_quota_default": "Cuota de almacenamiento predeterminada (GiB)",
|
||||
"oauth_storage_quota_default_description": "Cuota en GiB que se utilizar├б cuando no se proporcione ninguna por defecto.",
|
||||
"oauth_timeout": "Expiraci├│n de solicitud",
|
||||
"oauth_timeout": "L├нmite de tiempo para la solicitud",
|
||||
"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",
|
||||
@@ -247,7 +263,7 @@
|
||||
"storage_template_onboarding_description_v2": "Al habilitar esta funci├│n, los archivos se organizar├бn autom├бticamente seg├║n la plantilla definida por el usuario. Para m├бs informaci├│n, consulte la <link>documentaci├│n</link>.",
|
||||
"storage_template_path_length": "L├нmite aproximado de la longitud de la ruta: <b>{length, number}</b>/{limit, number}",
|
||||
"storage_template_settings": "Plantilla de almacenamiento",
|
||||
"storage_template_settings_description": "Administrar la estructura de carpetas y el nombre de archivo del recurso cargado",
|
||||
"storage_template_settings_description": "Administrar la estructura de carpetas y el nombre de archivo del recurso subido",
|
||||
"storage_template_user_label": "<code>{label}</code> es la etiqueta de almacenamiento del usuario",
|
||||
"system_settings": "Ajustes del Sistema",
|
||||
"tag_cleanup_job": "Limpieza de etiquetas",
|
||||
@@ -357,10 +373,12 @@
|
||||
"admin_password": "Contrase├▒a del Administrador",
|
||||
"administration": "Administraci├│n",
|
||||
"advanced": "Avanzada",
|
||||
"advanced_settings_beta_timeline_subtitle": "Prueba la nueva experiencia de la aplicaci├│n",
|
||||
"advanced_settings_beta_timeline_title": "Cronolog├нa beta",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Usa esta opci├│n para filtrar medios durante la sincronizaci├│n seg├║n criterios alternativos. Intenta esto solo si tienes problemas con que la aplicaci├│n detecte todos los ├бlbumes.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[EXPERIMENTAL] Usar filtro alternativo de sincronizaci├│n de ├бlbumes del dispositivo",
|
||||
"advanced_settings_log_level_title": "Nivel de registro: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "Algunos dispositivos tardan mucho en cargar las miniaturas de los elementos encontrados en el dispositivo. Activa esta opci├│n para cargar im├бgenes remotas en su lugar.",
|
||||
"advanced_settings_prefer_remote_subtitle": "Algunos dispositivos tardan mucho en cargar las miniaturas desde los archivos locales. Activa esta opci├│n para cargar im├бgenes remotas en su lugar.",
|
||||
"advanced_settings_prefer_remote_title": "Preferir im├бgenes remotas",
|
||||
"advanced_settings_proxy_headers_subtitle": "Configura headers HTTP que Immich incluir├б en cada petici├│n de red",
|
||||
"advanced_settings_proxy_headers_title": "Cabeceras Proxy",
|
||||
@@ -379,6 +397,7 @@
|
||||
"album_cover_updated": "Portada del ├бlbum actualizada",
|
||||
"album_delete_confirmation": "┬┐Est├бs seguro de que deseas eliminar el ├бlbum {album}?",
|
||||
"album_delete_confirmation_description": "Si este ├бlbum se comparte, otros usuarios ya no podr├бn acceder a ├йl.",
|
||||
"album_deleted": "├Бlbum eliminado",
|
||||
"album_info_card_backup_album_excluded": "EXCLUIDOS",
|
||||
"album_info_card_backup_album_included": "INCLUIDOS",
|
||||
"album_info_updated": "Informaci├│n del ├бlbum actualizada",
|
||||
@@ -388,6 +407,7 @@
|
||||
"album_options": "Opciones del Album",
|
||||
"album_remove_user": "┬┐Eliminar usuario?",
|
||||
"album_remove_user_confirmation": "┬┐Est├бs seguro de que quieres eliminar a {user}?",
|
||||
"album_search_not_found": "No se encontraron ├бlbumes que coincidan con tu b├║squeda",
|
||||
"album_share_no_users": "Parece que has compartido este ├бlbum con todos los usuarios o no tienes ning├║n usuario con quien compartirlo.",
|
||||
"album_updated": "Album actualizado",
|
||||
"album_updated_setting_description": "Reciba una notificaci├│n por correo electr├│nico cuando un ├бlbum compartido tenga nuevos archivos",
|
||||
@@ -405,8 +425,9 @@
|
||||
"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",
|
||||
"albums_default_sort_order_description": "Orden de clasificaci├│n inicial de los activos al crear nuevos ├бlbumes.",
|
||||
"albums_feature_description": "Colecciones de activos que pueden compartirse con otros usuarios.",
|
||||
"albums_default_sort_order_description": "Orden de clasificaci├│n inicial de los recursos al crear nuevos ├бlbumes.",
|
||||
"albums_feature_description": "Colecciones de recursos que pueden ser compartidos con otros usuarios.",
|
||||
"albums_on_device_count": "├Бlbumes en el dispositivo ({count})",
|
||||
"all": "Todos",
|
||||
"all_albums": "Todos los albums",
|
||||
"all_people": "Todas las personas",
|
||||
@@ -427,6 +448,7 @@
|
||||
"app_settings": "Ajustes de Aplicacion",
|
||||
"appears_in": "Aparece en",
|
||||
"archive": "Archivo",
|
||||
"archive_action_prompt": "{count} a├▒adidos al Archivo",
|
||||
"archive_or_unarchive_photo": "Archivar o restaurar foto",
|
||||
"archive_page_no_archived_assets": "No se encontraron elementos archivados",
|
||||
"archive_page_title": "Archivo ({count})",
|
||||
@@ -464,13 +486,12 @@
|
||||
"assets": "elementos",
|
||||
"assets_added_count": "A├▒adido {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_added_to_album_count": "A├▒adido {count, plural, one {# asset} other {# assets}} al ├бlbum",
|
||||
"assets_added_to_name_count": "A├▒adido {count, plural, one {# asset} other {# assets}} a {hasName, select, true {<b>{name}</b>} other {new album}}",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Asset} other {Assets}} no pueden ser a├▒adidos al album",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {El recurso no puede ser a├▒adido al ├бlbum} other {Los recursos no pueden ser a├▒adidos al ├бlbum}}",
|
||||
"assets_count": "{count, plural, one {# activo} other {# activos}}",
|
||||
"assets_deleted_permanently": "{count} elemento(s) eliminado(s) permanentemente",
|
||||
"assets_deleted_permanently_from_server": "{count} recurso(s) eliminado(s) de forma permanente del servidor de Immich",
|
||||
"assets_downloaded_failed": "{count, plural, one {Descargado archivo # - {error} archivo fallido} other {Descargados # archivos - {error} archivos fallidos}}",
|
||||
"assets_downloaded_successfully": "{count, plural, one {Archivo # descargado correctamente} other {Archivos # descargados correctamente}}",
|
||||
"assets_downloaded_failed": "{count, plural, one {# archivo descargado - {error} archivo fallido} other {# archivos descargados - {error} archivos fallidos}}",
|
||||
"assets_downloaded_successfully": "{count, plural, one {# archivo descargado exitosamente} other {# archivos descargados exitosamente}}",
|
||||
"assets_moved_to_trash_count": "{count, plural, one {# elemento movido} other {# elementos movidos}} a la papelera",
|
||||
"assets_permanently_deleted_count": "Eliminado permanentemente {count, plural, one {# elemento} other {# elementos}}",
|
||||
"assets_removed_count": "Eliminado {count, plural, one {# elemento} other {# elementos}}",
|
||||
@@ -490,6 +511,7 @@
|
||||
"back_close_deselect": "Atr├бs, cerrar o anular la selecci├│n",
|
||||
"background_location_permission": "Permiso de ubicaci├│n en segundo plano",
|
||||
"background_location_permission_content": "Para poder cambiar de red mientras se ejecuta en segundo plano, Immich debe tener *siempre* acceso a la ubicaci├│n precisa para que la aplicaci├│n pueda leer el nombre de la red Wi-Fi",
|
||||
"backup": "Copia de Seguridad",
|
||||
"backup_album_selection_page_albums_device": "├Бlbumes en el dispositivo ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Toque para incluir, doble toque para excluir",
|
||||
"backup_album_selection_page_assets_scatter": "Los elementos pueden dispersarse en varios ├бlbumes. De este modo, los ├бlbumes pueden ser incluidos o excluidos durante el proceso de copia de seguridad.",
|
||||
@@ -553,6 +575,8 @@
|
||||
"backup_options_page_title": "Opciones de Copia de Seguridad",
|
||||
"backup_setting_subtitle": "Administra las configuraciones de respaldo en segundo y primer plano",
|
||||
"backward": "Retroceder",
|
||||
"beta_sync": "Estado de Sincronizaci├│n Beta",
|
||||
"beta_sync_subtitle": "Administrar el nuevo sistema de sincronizaci├│n",
|
||||
"biometric_auth_enabled": "Autentificaci├│n biom├йtrica habilitada",
|
||||
"biometric_locked_out": "Est├бs bloqueado de la autentificaci├│n biom├йtrica",
|
||||
"biometric_no_options": "Sin opciones biom├йtricas disponibles",
|
||||
@@ -570,7 +594,7 @@
|
||||
"cache_settings_clear_cache_button": "Borrar cach├й",
|
||||
"cache_settings_clear_cache_button_title": "Borra la cach├й de la aplicaci├│n. Esto afectar├б significativamente el rendimiento de la aplicaci├│n hasta que se reconstruya la cach├й.",
|
||||
"cache_settings_duplicated_assets_clear_button": "LIMPIAR",
|
||||
"cache_settings_duplicated_assets_subtitle": "Fotos y v├нdeos en la lista negra de la app",
|
||||
"cache_settings_duplicated_assets_subtitle": "Fotos y v├нdeos ignorados por la aplicaci├│n",
|
||||
"cache_settings_duplicated_assets_title": "Elementos duplicados ({count})",
|
||||
"cache_settings_statistics_album": "Miniaturas de la biblioteca",
|
||||
"cache_settings_statistics_full": "Im├бgenes completas",
|
||||
@@ -587,6 +611,7 @@
|
||||
"cancel": "Cancelar",
|
||||
"cancel_search": "Cancelar b├║squeda",
|
||||
"canceled": "Cancelado",
|
||||
"canceling": "Cancelando",
|
||||
"cannot_merge_people": "No se pueden fusionar personas",
|
||||
"cannot_undo_this_action": "┬бNo puedes deshacer esta acci├│n!",
|
||||
"cannot_update_the_description": "No se puede actualizar la descripci├│n",
|
||||
@@ -700,10 +725,11 @@
|
||||
"current_server_address": "Direcci├│n actual del servidor",
|
||||
"custom_locale": "Configuraci├│n regional personalizada",
|
||||
"custom_locale_description": "Formatear fechas y n├║meros seg├║n el idioma y la regi├│n",
|
||||
"custom_url": "URL personalizada",
|
||||
"daily_title_text_date": "E dd, MMM",
|
||||
"daily_title_text_date_year": "E dd de MMM, yyyy",
|
||||
"dark": "Oscuro",
|
||||
"darkTheme": "Activar tema oscuro",
|
||||
"dark_theme": "Alternar tema oscuro",
|
||||
"date_after": "Fecha posterior",
|
||||
"date_and_time": "Fecha y Hora",
|
||||
"date_before": "Fecha anterior",
|
||||
@@ -719,12 +745,14 @@
|
||||
"default_locale": "Configuraci├│n regional predeterminada",
|
||||
"default_locale_description": "Formatee fechas y n├║meros seg├║n la configuraci├│n regional de su navegador",
|
||||
"delete": "Eliminar",
|
||||
"delete_action_confirmation_message": "┬┐Est├б seguro que desea eliminar este archivo? Esta acci├│n lo mover├б a la papelera del servidor y le preguntar├б si desea eliminarlo localmente",
|
||||
"delete_action_prompt": "{count} eliminados",
|
||||
"delete_album": "Eliminar ├бlbum",
|
||||
"delete_api_key_prompt": "┬┐Est├б seguro de que desea eliminar esta clave API?",
|
||||
"delete_dialog_alert": "Estos elementos ser├бn eliminados permanentemente de Immich y de tu dispositivo",
|
||||
"delete_dialog_alert_local": "Estas im├бgenes van a ser borradas de tu dispositivo, pero seguir├бn disponibles en el servidor Immich",
|
||||
"delete_dialog_alert_local_non_backed_up": "Algunas de las im├бgenes no tienen copia de seguridad y ser├бn borradas de forma permanente de tu dispositivo",
|
||||
"delete_dialog_alert_remote": "Estas im├бgenes van a ser borradas de forma permanente del servidor Immich",
|
||||
"delete_dialog_alert_local": "Estos elementos se eliminar├бn permanente de tu dispositivo pero seguir├бn disponibles en el servidor de Immich",
|
||||
"delete_dialog_alert_local_non_backed_up": "Algunos de los elementos no tienen copia de seguridad en Immich y ser├бn borrados permanentemente de tu dispositivo",
|
||||
"delete_dialog_alert_remote": "Estas im├бgenes van a ser borradas permanentemente del servidor de Immich",
|
||||
"delete_dialog_ok_force": "Borrar de todos modos",
|
||||
"delete_dialog_title": "Eliminar Permanentemente",
|
||||
"delete_duplicates_confirmation": "┬┐Est├б seguro de que desea eliminar permanentemente estos duplicados?",
|
||||
@@ -732,9 +760,12 @@
|
||||
"delete_key": "Eliminar clave",
|
||||
"delete_library": "Eliminar biblioteca",
|
||||
"delete_link": "Eliminar enlace",
|
||||
"delete_local_action_prompt": "{count} eliminados localmente",
|
||||
"delete_local_dialog_ok_backed_up_only": "Borrar solo las que tengan copia de seguridad",
|
||||
"delete_local_dialog_ok_force": "Borrar de todos modos",
|
||||
"delete_others": "Eliminar otros",
|
||||
"delete_permanently": "Eliminar permanentemente",
|
||||
"delete_permanently_action_prompt": "{count} eliminados permanentemente",
|
||||
"delete_shared_link": "Eliminar enlace compartido",
|
||||
"delete_shared_link_dialog_title": "Eliminar enlace compartido",
|
||||
"delete_tag": "Eliminar etiqueta",
|
||||
@@ -745,10 +776,12 @@
|
||||
"description": "Descripci├│n",
|
||||
"description_input_hint_text": "Agregar descripci├│n...",
|
||||
"description_input_submit_error": "Error al actualizar la descripci├│n, verifica el registro para obtener m├бs detalles",
|
||||
"deselect_all": "Deseleccionar Todo",
|
||||
"details": "Detalles",
|
||||
"direction": "Direcci├│n",
|
||||
"disabled": "Deshabilitado",
|
||||
"disallow_edits": "Bloquear edici├│n",
|
||||
"discord": "Discord",
|
||||
"discover": "Descubrir",
|
||||
"discovered_devices": "Dispositivos descubiertos",
|
||||
"dismiss_all_errors": "Descartar todos los errores",
|
||||
@@ -761,6 +794,7 @@
|
||||
"documentation": "Documentaci├│n",
|
||||
"done": "Hecho",
|
||||
"download": "Descargar",
|
||||
"download_action_prompt": "Descargando {count} archivos",
|
||||
"download_canceled": "Descarga cancelada",
|
||||
"download_complete": "Descarga completada",
|
||||
"download_enqueue": "Descarga en cola",
|
||||
@@ -798,6 +832,7 @@
|
||||
"edit_key": "Editar clave",
|
||||
"edit_link": "Editar enlace",
|
||||
"edit_location": "Editar ubicaci├│n",
|
||||
"edit_location_action_prompt": "{count} ubicaciones actualizadas",
|
||||
"edit_location_dialog_title": "Ubicaci├│n",
|
||||
"edit_name": "Cambiar nombre",
|
||||
"edit_people": "Editar persona",
|
||||
@@ -816,6 +851,7 @@
|
||||
"empty_trash": "Vaciar papelera",
|
||||
"empty_trash_confirmation": "┬┐Est├бs seguro de que quieres vaciar la papelera? Esto eliminar├б permanentemente todos los archivos de la basura de Immich.\n┬бNo puedes deshacer esta acci├│n!",
|
||||
"enable": "Habilitar",
|
||||
"enable_backup": "Habilitar Copia de Seguridad",
|
||||
"enable_biometric_auth_description": "Introduce tu c├│digo PIN para habilitar la autentificaci├│n biom├йtrica",
|
||||
"enabled": "Habilitado",
|
||||
"end_date": "Fecha final",
|
||||
@@ -972,6 +1008,8 @@
|
||||
"explorer": "Explorador",
|
||||
"export": "Exportar",
|
||||
"export_as_json": "Exportar a JSON",
|
||||
"export_database": "Exportar Base de Datos",
|
||||
"export_database_description": "Exportar la Base de Datos SQLite",
|
||||
"extension": "Extensi├│n",
|
||||
"external": "Externo",
|
||||
"external_libraries": "Bibliotecas Externas",
|
||||
@@ -983,6 +1021,7 @@
|
||||
"failed_to_load_assets": "Error al cargar los activos",
|
||||
"failed_to_load_folder": "No se pudo cargar la carpeta",
|
||||
"favorite": "Favorito",
|
||||
"favorite_action_prompt": "{count} a├▒adidos a Favoritos",
|
||||
"favorite_or_unfavorite_photo": "Foto favorita o no favorita",
|
||||
"favorites": "Favoritos",
|
||||
"favorites_page_no_favorites": "No se encontraron elementos marcados como favoritos",
|
||||
@@ -1022,6 +1061,9 @@
|
||||
"haptic_feedback_switch": "Activar respuesta h├бptica",
|
||||
"haptic_feedback_title": "Respuesta H├бptica",
|
||||
"has_quota": "Su cuota",
|
||||
"hash_asset": "Generar hash del archivo",
|
||||
"hashed_assets": "Archivos con hash generado",
|
||||
"hashing": "Generando hash",
|
||||
"header_settings_add_header_tip": "A├▒adir cabecera",
|
||||
"header_settings_field_validator_msg": "El valor no puede estar vac├нo",
|
||||
"header_settings_header_name_input": "Nombre de la cabecera",
|
||||
@@ -1054,6 +1096,7 @@
|
||||
"host": "Host",
|
||||
"hour": "Hora",
|
||||
"id": "ID",
|
||||
"idle": "Inactivo",
|
||||
"ignore_icloud_photos": "Ignorar fotos de iCloud",
|
||||
"ignore_icloud_photos_description": "Las fotos almacenadas en iCloud no se subir├бn a Immich",
|
||||
"image": "Imagen",
|
||||
@@ -1111,6 +1154,7 @@
|
||||
"language_no_results_title": "No se han encontrado idiomas",
|
||||
"language_search_hint": "Buscar idiomas...",
|
||||
"language_setting_description": "Selecciona tu idioma preferido",
|
||||
"large_files": "Archivos Grandes",
|
||||
"last_seen": "Ultima vez visto",
|
||||
"latest_version": "├Ъltima versi├│n",
|
||||
"latitude": "Latitud",
|
||||
@@ -1126,16 +1170,18 @@
|
||||
"library_page_sort_created": "Creado m├бs recientemente",
|
||||
"library_page_sort_last_modified": "├Ъltima modificaci├│n",
|
||||
"library_page_sort_title": "T├нtulo del ├бlbum",
|
||||
"licenses": "Licencias",
|
||||
"light": "Claro",
|
||||
"like_deleted": "Me gusta eliminado",
|
||||
"link_motion_video": "Enlazar v├нdeo en movimiento",
|
||||
"link_options": "Opciones de enlace",
|
||||
"link_to_oauth": "Enlace a OAuth",
|
||||
"linked_oauth_account": "Cuenta OAuth vinculada",
|
||||
"list": "Listar",
|
||||
"loading": "Cargando",
|
||||
"loading_search_results_failed": "Error al cargar los resultados de la b├║squeda",
|
||||
"local_asset_cast_failed": "No se puede emitir un activo que no est├б cargado en el servidor",
|
||||
"local": "Local",
|
||||
"local_asset_cast_failed": "No es posible transmitir un recurso que no est├б subido al servidor",
|
||||
"local_assets": "Archivos Locales",
|
||||
"local_network": "Red local",
|
||||
"local_network_sheet_info": "La aplicaci├│n se conectar├б al servidor a trav├йs de esta URL cuando utilice la red Wi-Fi especificada",
|
||||
"location_permission": "Permiso de ubicaci├│n",
|
||||
@@ -1192,8 +1238,7 @@
|
||||
"manage_your_devices": "Administre sus dispositivos conectados",
|
||||
"manage_your_oauth_connection": "Administra tu conexi├│n OAuth",
|
||||
"map": "Mapa",
|
||||
"map_assets_in_bound": "{count} foto",
|
||||
"map_assets_in_bounds": "{count} fotos",
|
||||
"map_assets_in_bounds": "{count, plural, one {# foto} other {# fotos}}",
|
||||
"map_cannot_get_user_location": "No se pudo obtener la posici├│n del usuario",
|
||||
"map_location_dialog_yes": "S├н",
|
||||
"map_location_picker_page_use_location": "Usar esta ubicaci├│n",
|
||||
@@ -1238,13 +1283,14 @@
|
||||
"merged_people_count": "Fusionada {count, plural, one {# persona} other {# personas}}",
|
||||
"minimize": "Minimizar",
|
||||
"minute": "Minuto",
|
||||
"missing": "Perdido",
|
||||
"missing": "Faltante",
|
||||
"model": "Modelo",
|
||||
"month": "Mes",
|
||||
"monthly_title_text_date_format": "MMMM y",
|
||||
"monthly_title_text_date_format": "MMMM a",
|
||||
"more": "Mas",
|
||||
"move": "Mover",
|
||||
"move_off_locked_folder": "Mover fuera de la carpeta protegida",
|
||||
"move_to_lock_folder_action_prompt": "{count} a├▒adidos a la carpeta protegida",
|
||||
"move_to_locked_folder": "Mover a la carpeta protegida",
|
||||
"move_to_locked_folder_confirmation": "Estas fotos y v├нdeos ser├бn eliminados de todos los ├бlbumes y s├│lo podr├бn ser vistos desde la carpeta protegida",
|
||||
"moved_to_archive": "Movido(s) {count, plural, one {# recurso} other {# recursos}} a archivo",
|
||||
@@ -1277,7 +1323,7 @@
|
||||
"no_archived_assets_message": "Archive fotos y videos para ocultarlos de su vista de Fotos",
|
||||
"no_assets_message": "HAZ CLIC PARA SUBIR TU PRIMERA FOTO",
|
||||
"no_assets_to_show": "No hay elementos a mostrar",
|
||||
"no_cast_devices_found": "Dispositivos de difusi├│n no encontrados",
|
||||
"no_cast_devices_found": "No se encontraron dispositivos de transmisi├│n",
|
||||
"no_duplicates_found": "No se encontraron duplicados.",
|
||||
"no_exif_info_available": "No hay informaci├│n exif disponible",
|
||||
"no_explore_results_message": "Sube m├бs fotos para explorar tu colecci├│n.",
|
||||
@@ -1291,6 +1337,7 @@
|
||||
"no_results": "Sin resultados",
|
||||
"no_results_description": "Pruebe con un sin├│nimo o una palabra clave m├бs general",
|
||||
"no_shared_albums_message": "Crea un ├бlbum para compartir fotos y v├нdeos con personas de tu red",
|
||||
"no_uploads_in_progress": "No hay cargas en progreso",
|
||||
"not_in_any_album": "Sin ├бlbum",
|
||||
"not_selected": "No seleccionado",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "Nota: Para aplicar la etiqueta de almacenamiento a los archivos subidos previamente, ejecute el",
|
||||
@@ -1328,6 +1375,7 @@
|
||||
"original": "original",
|
||||
"other": "Otro",
|
||||
"other_devices": "Otro dispositivo",
|
||||
"other_entities": "Otras entidades",
|
||||
"other_variables": "Otras variables",
|
||||
"owned": "Propio",
|
||||
"owner": "Propietario",
|
||||
@@ -1459,6 +1507,7 @@
|
||||
"purchase_server_description_2": "Estado del soporte",
|
||||
"purchase_server_title": "Servidor",
|
||||
"purchase_settings_server_activated": "La clave del producto del servidor la administra el administrador",
|
||||
"queue_status": "Poniendo en cola {count}/{total}",
|
||||
"rating": "Valoraci├│n",
|
||||
"rating_clear": "Borrar calificaci├│n",
|
||||
"rating_count": "{count, plural, one {# estrella} other {# estrellas}}",
|
||||
@@ -1487,6 +1536,8 @@
|
||||
"refreshing_faces": "Recargando caras",
|
||||
"refreshing_metadata": "Recargando metadatos",
|
||||
"regenerating_thumbnails": "Recargando miniaturas",
|
||||
"remote": "Remoto",
|
||||
"remote_assets": "Elementos remotos",
|
||||
"remove": "Eliminar",
|
||||
"remove_assets_album_confirmation": "┬┐Est├бs seguro que quieres eliminar {count, plural, one {# elemento} other {# elementos}} del ├бlbum?",
|
||||
"remove_assets_shared_link_confirmation": "┬┐Est├бs seguro que quieres eliminar {count, plural, one {# elemento} other {# elementos}} del enlace compartido?",
|
||||
@@ -1494,7 +1545,9 @@
|
||||
"remove_custom_date_range": "Eliminar intervalo de fechas personalizado",
|
||||
"remove_deleted_assets": "Eliminar archivos sin conexi├│n",
|
||||
"remove_from_album": "Eliminar del ├бlbum",
|
||||
"remove_from_album_action_prompt": "{count} eliminado del ├бlbum",
|
||||
"remove_from_favorites": "Quitar de favoritos",
|
||||
"remove_from_lock_folder_action_prompt": "{count} eliminado de la carpeta protegida",
|
||||
"remove_from_locked_folder": "Eliminar de la carpeta protegida",
|
||||
"remove_from_locked_folder_confirmation": "┬┐Est├бs seguro de que deseas mover estas fotos y v├нdeos fuera de la carpeta protegida? Ser├бn visibles en tu biblioteca.",
|
||||
"remove_from_shared_link": "Eliminar desde enlace compartido",
|
||||
@@ -1522,19 +1575,25 @@
|
||||
"reset_password": "Restablecer la contrase├▒a",
|
||||
"reset_people_visibility": "Restablecer la visibilidad de las personas",
|
||||
"reset_pin_code": "Restablecer PIN",
|
||||
"reset_sqlite": "Restablecer la Base de Datos SQLite",
|
||||
"reset_sqlite_confirmation": "┬┐Est├бs seguro que deseas restablecer la base de datos SQLite? Deber├бs cerrar sesi├│n y volver a iniciarla para resincronizar los datos",
|
||||
"reset_sqlite_success": "Restablecer exitosamente la base de datos SQLite",
|
||||
"reset_to_default": "Restablecer los valores predeterminados",
|
||||
"resolve_duplicates": "Resolver duplicados",
|
||||
"resolved_all_duplicates": "Todos los duplicados resueltos",
|
||||
"restore": "Restaurar",
|
||||
"restore_all": "Restaurar todo",
|
||||
"restore_trash_action_prompt": "{count} restaurado de la papelera",
|
||||
"restore_user": "Restaurar usuario",
|
||||
"restored_asset": "Archivo restaurado",
|
||||
"resume": "Continuar",
|
||||
"retry_upload": "Reintentar subida",
|
||||
"review_duplicates": "Revisar duplicados",
|
||||
"review_large_files": "Revisar archivos grandes",
|
||||
"role": "Rol",
|
||||
"role_editor": "Editor",
|
||||
"role_viewer": "Visor",
|
||||
"running": "En ejecuci├│n",
|
||||
"save": "Guardar",
|
||||
"save_to_gallery": "Guardado en la galer├нa",
|
||||
"saved_api_key": "Clave API guardada",
|
||||
@@ -1558,17 +1617,17 @@
|
||||
"search_city": "Buscar ciudad...",
|
||||
"search_country": "Buscar pa├нs...",
|
||||
"search_filter_apply": "Aplicar filtros",
|
||||
"search_filter_camera_title": "Elige tipo de c├бmara",
|
||||
"search_filter_camera_title": "Elegir tipo de c├бmara",
|
||||
"search_filter_date": "Fecha",
|
||||
"search_filter_date_interval": "{start} al {end}",
|
||||
"search_filter_date_title": "Selecciona un intervalo de fechas",
|
||||
"search_filter_date_title": "Seleccionar un intervalo de fechas",
|
||||
"search_filter_display_option_not_in_album": "No en ├бlbum",
|
||||
"search_filter_display_options": "Opciones de visualizaci├│n",
|
||||
"search_filter_filename": "Buscar por nombre de archivo",
|
||||
"search_filter_location": "Ubicaci├│n",
|
||||
"search_filter_location_title": "Seleccionar una ubicaci├│n",
|
||||
"search_filter_media_type": "Tipo de archivo",
|
||||
"search_filter_media_type_title": "Selecciona el tipo de archivo",
|
||||
"search_filter_media_type_title": "Seleccionar el tipo de archivo",
|
||||
"search_filter_people_title": "Seleccionar personas",
|
||||
"search_for": "Buscar",
|
||||
"search_for_existing_person": "Buscar persona existente",
|
||||
@@ -1591,23 +1650,23 @@
|
||||
"search_people": "Buscar personas",
|
||||
"search_places": "Buscar lugar",
|
||||
"search_rating": "Buscar por calificaci├│n...",
|
||||
"search_result_page_new_search_hint": "Nueva Busqueda",
|
||||
"search_result_page_new_search_hint": "Nueva B├║squeda",
|
||||
"search_settings": "Ajustes de la b├║squeda",
|
||||
"search_state": "Buscar regi├│n/estado...",
|
||||
"search_suggestion_list_smart_search_hint_1": "La b├║squeda inteligente est├б habilitada por defecto, para buscar metadatos utiliza esta sintaxis ",
|
||||
"search_suggestion_list_smart_search_hint_2": "m:tu-t├йrmino-de-b├║squeda",
|
||||
"search_tags": "Buscando etiquetas...",
|
||||
"search_tags": "Buscar etiquetas...",
|
||||
"search_timezone": "Buscar zona horaria...",
|
||||
"search_type": "Tipo de b├║squeda",
|
||||
"search_your_photos": "Busca tus fotos",
|
||||
"searching_locales": "Buscando sitios...",
|
||||
"second": "Segundo",
|
||||
"see_all_people": "Ver todas las personas",
|
||||
"select": "Selecciona",
|
||||
"select": "Seleccionar",
|
||||
"select_album_cover": "Seleccionar portada del ├бlbum",
|
||||
"select_all": "Seleccionar todo",
|
||||
"select_all_duplicates": "Seleccionar todos los duplicados",
|
||||
"select_all_in": "Selecciona todos en {group}",
|
||||
"select_all_in": "Seleccionar todos en {group}",
|
||||
"select_avatar_color": "Seleccionar color del avatar",
|
||||
"select_face": "Seleccionar cara",
|
||||
"select_featured_photo": "Seleccionar foto principal",
|
||||
@@ -1638,7 +1697,7 @@
|
||||
"set_date_of_birth": "Establecer fecha de nacimiento",
|
||||
"set_profile_picture": "Establecer foto de perfil",
|
||||
"set_slideshow_to_fullscreen": "Mostrar diapositivas en pantalla completa",
|
||||
"set_stack_primary_asset": "Establecer como activo principal",
|
||||
"set_stack_primary_asset": "Establecer como recurso principal",
|
||||
"setting_image_viewer_help": "El visor de detalles carga primero la miniatura peque├▒a, luego carga la vista previa de tama├▒o mediano (si est├б habilitada), finalmente carga la original (si est├б habilitada).",
|
||||
"setting_image_viewer_original_subtitle": "Activar para cargar la imagen en resoluci├│n original (┬бmuy grande!). Deshabilitar para reducir el consumo de datos (de red y cach├й).",
|
||||
"setting_image_viewer_original_title": "Cargar imagen original",
|
||||
@@ -1666,6 +1725,7 @@
|
||||
"settings_saved": "Ajustes guardados",
|
||||
"setup_pin_code": "Establecer un PIN",
|
||||
"share": "Compartir",
|
||||
"share_action_prompt": "{count} recursos compartidos",
|
||||
"share_add_photos": "Agregar fotos",
|
||||
"share_assets_selected": "{count} seleccionado(s)",
|
||||
"share_dialog_preparing": "Preparando...",
|
||||
@@ -1687,6 +1747,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Copiado al portapapeles",
|
||||
"shared_link_clipboard_text": "Enlace: {link}\nContrase├▒a: {password}",
|
||||
"shared_link_create_error": "Error creando el enlace compartido",
|
||||
"shared_link_custom_url_description": "Accede a este enlace compartido con una URL personalizada",
|
||||
"shared_link_edit_description_hint": "Introduce la descripci├│n del enlace",
|
||||
"shared_link_edit_expire_after_option_day": "1 d├нa",
|
||||
"shared_link_edit_expire_after_option_days": "{count} d├нas",
|
||||
@@ -1712,6 +1773,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Administrar enlaces compartidos",
|
||||
"shared_link_options": "Opciones de enlaces compartidos",
|
||||
"shared_link_password_description": "Requerir una contrase├▒a para acceder a este enlace compartido",
|
||||
"shared_links": "Enlaces compartidos",
|
||||
"shared_links_description": "Comparte fotos y v├нdeos con un enlace",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# Fotos y v├нdeos compartidos.}}",
|
||||
@@ -1767,6 +1829,7 @@
|
||||
"sort_title": "T├нtulo",
|
||||
"source": "Origen",
|
||||
"stack": "Apilar",
|
||||
"stack_action_prompt": "{count} apilados",
|
||||
"stack_duplicates": "Apilar duplicados",
|
||||
"stack_select_one_photo": "Selecciona una imagen principal para la pila",
|
||||
"stack_selected_photos": "Apilar fotos seleccionadas",
|
||||
@@ -1776,7 +1839,7 @@
|
||||
"start_date": "Fecha de inicio",
|
||||
"state": "Estado",
|
||||
"status": "Estado",
|
||||
"stop_casting": "Parar difusi├│n",
|
||||
"stop_casting": "Detener transmisi├│n",
|
||||
"stop_motion_photo": "Parar foto en movimiento",
|
||||
"stop_photo_sharing": "┬┐Dejar de compartir tus fotos?",
|
||||
"stop_photo_sharing_description": "{partner} ya no podr├б acceder a tus fotos.",
|
||||
@@ -1786,6 +1849,7 @@
|
||||
"storage_quota": "Cuota de Almacenamiento",
|
||||
"storage_usage": "{used} de {available} en uso",
|
||||
"submit": "Enviar",
|
||||
"success": "├Йxito",
|
||||
"suggestions": "Sugerencias",
|
||||
"sunrise_on_the_beach": "Amanecer en la playa",
|
||||
"support": "Soporte",
|
||||
@@ -1795,6 +1859,8 @@
|
||||
"sync": "Sincronizar",
|
||||
"sync_albums": "Sincronizar ├бlbumes",
|
||||
"sync_albums_manual_subtitle": "Sincroniza todos los videos y fotos subidos con los ├бlbumes seleccionados a respaldar",
|
||||
"sync_local": "Sincronizaci├│n Local",
|
||||
"sync_remote": "Sincronizaci├│n Remota",
|
||||
"sync_upload_album_setting_subtitle": "Crea y sube tus fotos y videos a los ├бlbumes seleccionados en Immich",
|
||||
"tag": "Etiqueta",
|
||||
"tag_assets": "Etiquetar activos",
|
||||
@@ -1805,6 +1871,7 @@
|
||||
"tag_updated": "Etiqueta actualizada: {tag}",
|
||||
"tagged_assets": "Etiquetado(s) {count, plural, one {# activo} other {# activos}}",
|
||||
"tags": "Etiquetas",
|
||||
"tap_to_run_job": "Toca para ejecutar la tarea",
|
||||
"template": "Plantilla",
|
||||
"theme": "Tema",
|
||||
"theme_selection": "Selecci├│n de tema",
|
||||
@@ -1837,6 +1904,7 @@
|
||||
"total": "Total",
|
||||
"total_usage": "Uso total",
|
||||
"trash": "Papelera",
|
||||
"trash_action_prompt": "{count} movidos a la papelera",
|
||||
"trash_all": "Descartar todo",
|
||||
"trash_count": "Descartar {count, number}",
|
||||
"trash_delete_asset": "Borrar/Eliminar archivo",
|
||||
@@ -1854,9 +1922,11 @@
|
||||
"unable_to_change_pin_code": "No se ha podido cambiar el PIN",
|
||||
"unable_to_setup_pin_code": "No se ha podido establecer el PIN",
|
||||
"unarchive": "Desarchivar",
|
||||
"unarchive_action_prompt": "{count} eliminados del archivo",
|
||||
"unarchived_count": "{count, plural, one {# No archivado} other {# No archivados}}",
|
||||
"undo": "Deshacer",
|
||||
"unfavorite": "Retirar favorito",
|
||||
"unfavorite_action_prompt": "{count} eliminados de favoritos",
|
||||
"unhide_person": "Mostrar persona",
|
||||
"unknown": "Desconocido",
|
||||
"unknown_country": "Pa├нs desconocido",
|
||||
@@ -1874,15 +1944,20 @@
|
||||
"unselect_all_duplicates": "Deseleccionar todos los duplicados",
|
||||
"unselect_all_in": "Deselecciona todos en {group}",
|
||||
"unstack": "Desapilar",
|
||||
"unstack_action_prompt": "{count} desapilado(s)",
|
||||
"unstacked_assets_count": "Desapilado(s) {count, plural, one {# elemento} other {# elementos}}",
|
||||
"untagged": "Sin etiqueta",
|
||||
"up_next": "A continuaci├│n",
|
||||
"updated_at": "Actualizado",
|
||||
"updated_password": "Contrase├▒a actualizada",
|
||||
"upload": "Subir",
|
||||
"upload_action_prompt": "{count} en cola para carga",
|
||||
"upload_concurrency": "Subidas simult├бneas",
|
||||
"upload_details": "Cargar Detalles",
|
||||
"upload_dialog_info": "┬┐Quieres hacer una copia de seguridad al servidor de los elementos seleccionados?",
|
||||
"upload_dialog_title": "Subir elementos",
|
||||
"upload_errors": "Subida completada con {count, plural, one {# error} other {# errores}}, actualice la p├бgina para ver los nuevos recursos de la subida.",
|
||||
"upload_finished": "Carga finalizada",
|
||||
"upload_progress": "Restante {remaining, number} - Procesado {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "Saltado {count, plural, one {# duplicate asset} other {# duplicate assets}}",
|
||||
"upload_status_duplicates": "Duplicados",
|
||||
@@ -1891,6 +1966,7 @@
|
||||
"upload_success": "Subida realizada correctamente, actualice la p├бgina para ver los nuevos recursos de subida.",
|
||||
"upload_to_immich": "Subir a Immich ({count})",
|
||||
"uploading": "Subiendo",
|
||||
"uploading_media": "Subiendo medios",
|
||||
"url": "URL",
|
||||
"usage": "Uso",
|
||||
"use_biometric": "Uso biom├йtrico",
|
||||
@@ -1911,6 +1987,7 @@
|
||||
"user_usage_stats_description": "Ver estad├нsticas de uso de la cuenta",
|
||||
"username": "Nombre de usuario",
|
||||
"users": "Usuarios",
|
||||
"users_added_to_album_count": "{count, plural, one {# usuario agregado} other {# usuarios agregados}} al ├бlbum",
|
||||
"utilities": "Utilidades",
|
||||
"validate": "Validar",
|
||||
"validate_endpoint_error": "Por favor, introduce una URL v├бlida",
|
||||
@@ -1929,6 +2006,7 @@
|
||||
"view_album": "Ver ├Бlbum",
|
||||
"view_all": "Ver todas",
|
||||
"view_all_users": "Mostrar todos los usuarios",
|
||||
"view_details": "Ver Detalles",
|
||||
"view_in_timeline": "Mostrar en la l├нnea de tiempo",
|
||||
"view_link": "Ver enlace",
|
||||
"view_links": "Mostrar enlaces",
|
||||
|
||||
127
i18n/et.json
127
i18n/et.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "Lisa asukoht",
|
||||
"add_a_name": "Lisa nimi",
|
||||
"add_a_title": "Lisa pealkiri",
|
||||
"add_birthday": "Lisa s├╝nnip├дev",
|
||||
"add_endpoint": "Lisa l├╡pp-punkt",
|
||||
"add_exclusion_pattern": "Lisa v├дlistamismuster",
|
||||
"add_import_path": "Lisa imporditee",
|
||||
@@ -33,40 +34,47 @@
|
||||
"added_to_favorites": "Lisatud lemmikutesse",
|
||||
"added_to_favorites_count": "{count, number} pilti lisatud lemmikutesse",
|
||||
"admin": {
|
||||
"add_exclusion_pattern_description": "Lisa v├дlistamismustreid. Toetatud on metam├дrgid *, ** ja ?. K├╡ikide kataloogis nimega \"Raw\" olevate failide ignoreerimiseks kasuta \"**/Raw/**\". K├╡ikide .tif failide ignoreerimiseks kasuta \"**/*.tif\". Absouutse tee ignoreerimiseks kasuta \"/path/to/ignore/**\".",
|
||||
"add_exclusion_pattern_description": "Lisa v├дlistamismustreid. Toetatud on metam├дrgid *, ** ja ?. K├╡ikide kataloogis nimega \"Raw\" olevate failide ignoreerimiseks kasuta \"**/Raw/**\". K├╡ikide \".tif\" l├╡puga failide ignoreerimiseks kasuta \"**/*.tif\". Absouutse tee ignoreerimiseks kasuta \"/tee/mida/ignoreerida/**\".",
|
||||
"admin_user": "Administraator",
|
||||
"asset_offline_description": "Seda v├дlise kogu ├╝ksust ei leitud kettalt ning see liigutati pr├╝gikasti. Kui faili asukoht kogu siseselt muutus, leiad vastava uue ├╝ksuse oma ajajoonelt. ├Ьksuse taastamiseks veendu, et allpool toodud failitee on Immich'ile k├дttesaadav ning skaneeri kogu uuesti.",
|
||||
"asset_offline_description": "Seda v├дlise kogu ├╝ksust ei leitud kettalt ning see liigutati pr├╝gikasti. Kui faili asukoht muutus kogu siseselt, leiad vastava uue ├╝ksuse oma ajajoonelt. ├Ьksuse taastamiseks veendu, et allpool toodud failitee on Immich'ile k├дttesaadav ning skaneeri kogu uuesti.",
|
||||
"authentication_settings": "Autentimise seaded",
|
||||
"authentication_settings_description": "Halda parooli, OAuth ja muid autentimise seadeid",
|
||||
"authentication_settings_description": "Halda parooli, OAuth'i ja muid autentimise seadeid",
|
||||
"authentication_settings_disable_all": "Kas oled kindel, et soovid k├╡ik sisselogimismeetodid v├дlja l├╝litada? Sisselogimine l├╝litatakse t├дielikult v├дlja.",
|
||||
"authentication_settings_reenable": "Et taas lubada, kasuta <link>serveri k├дsku</link>.",
|
||||
"background_task_job": "Tausttegumid",
|
||||
"backup_database": "Loo andmebaasi t├╡mmis",
|
||||
"backup_database_enable_description": "Luba andmebaasi t├╡mmised",
|
||||
"backup_keep_last_amount": "Eelmiste t├╡mmiste arv, mida alles hoida",
|
||||
"backup_onboarding_1_description": "asukohav├дline koopia pilves v├╡i teises f├╝├╝silises asukohas.",
|
||||
"backup_onboarding_2_description": "lokaalset koopiat erinevatel seadmetel. See h├╡lmab p├╡hifaile ja nende failide lokaalsed varundust.",
|
||||
"backup_onboarding_3_description": "koopiat su andmetest, kaasa arvatud originaalfailid. See h├╡lmab ├╝ht asukohav├дlist ja kaht lokaalset koopiat.",
|
||||
"backup_onboarding_description": "Andmete kaitsmiseks on soovituslik <backblaze-link>3-2-1 varundusstrateegia</backblaze-link>. P├╡hjaliku varunduse jaoks peaksid talletama koopiaid nii oma ├╝leslaaditud fotodest ja videotest kui ka Immich'i andmebaasist.",
|
||||
"backup_onboarding_footer": "Rohkem informatsiooni Immich'i varundamise kohta leiad <link>dokumentatsioonist</link>.",
|
||||
"backup_onboarding_parts_title": "3-2-1 varundus h├╡lmab:",
|
||||
"backup_onboarding_title": "Varukoopiad",
|
||||
"backup_settings": "Andmebaasi t├╡mmiste seaded",
|
||||
"backup_settings_description": "Halda andmebaasi t├╡mmiste seadeid.",
|
||||
"cleared_jobs": "T├╢├╢ted eemaldatud: {job}",
|
||||
"config_set_by_file": "Konfiguratsioon on m├д├дratud konfifaili abil",
|
||||
"config_set_by_file": "Konfiguratsioon on m├д├дratud konfiguratsioonifaili abil",
|
||||
"confirm_delete_library": "Kas oled kindel, et soovid kustutada {library} kogu?",
|
||||
"confirm_delete_library_assets": "Kas oled kindel, et soovid selle kogu kustutada? Sellega kustutatakse {count, plural, one {# sisalduv ├╝ksus} other {k├╡ik # sisalduvat ├╝ksust}} Immich'ist ning seda ei saa tagasi v├╡tta. Failid j├д├дvad kettale alles.",
|
||||
"confirm_delete_library_assets": "Kas oled kindel, et soovid selle kogu kustutada? Sellega kustutatakse {count, plural, one {# sisalduv ├╝ksus} other {k├╡ik # sisalduvat ├╝ksust}} Immich'ist ning seda toimingut ei saa tagasi v├╡tta. Failid j├д├дvad kettale alles.",
|
||||
"confirm_email_below": "Kinnitamiseks sisesta allpool \"{email}\"",
|
||||
"confirm_reprocess_all_faces": "Kas oled kindel, et soovid k├╡ik n├дod uuesti t├╢├╢delda? See eemaldab k├╡ik nimega isikud.",
|
||||
"confirm_user_password_reset": "Kas oled kindel, et soovid kasutaja {user} parooli l├дhtestada?",
|
||||
"confirm_user_pin_code_reset": "Kas oled kindel, et soovid kasutaja {user} PIN-koodi l├дhtestada?",
|
||||
"create_job": "Lisa t├╢├╢de",
|
||||
"cron_expression": "Cron avaldis",
|
||||
"cron_expression_description": "Sea skaneerimise intervall cron formaadis. Rohkema info jaoks vaata nt. <link>Crontab Guru</link>",
|
||||
"cron_expression_description": "M├д├дra skaneerimise intervall cron formaadis. Rohkema info jaoks vaata nt. <link>Crontab Guru</link>",
|
||||
"cron_expression_presets": "Eelseadistatud cron avaldised",
|
||||
"disable_login": "Keela sisselogimine",
|
||||
"duplicate_detection_job_description": "Rakenda ├╝ksustele masin├╡pet, et leida sarnaseid pilte. Kasutab nutiotsingut",
|
||||
"exclusion_pattern_description": "V├дlistamismustrid v├╡imaldavad ignoreerida faile ja kaustu kogu skaneerimisel. See on kasulik, kui sul on kaustu, mis sisaldavad faile, mida sa ei soovi importida, nagu RAW failid.",
|
||||
"exclusion_pattern_description": "V├дlistamismustrid v├╡imaldavad ignoreerida faile ja kaustu selle kogu skaneerimisel. See on kasulik, kui sul on kaustu, mis sisaldavad faile, mida sa ei soovi importida, nagu RAW failid.",
|
||||
"external_library_management": "V├дliste kogude haldus",
|
||||
"face_detection": "N├дoavastus",
|
||||
"face_detection_description": "Avasta ├╝ksustest n├дgusid masin├╡ppe abil. Videote puhul kasutatakse ainult pisipilti. \"V├дrskenda\" t├╢├╢tleb k├╡ik ├╝ksused uuesti. \"L├дhtesta\" kustutab lisaks k├╡ik seni leitud n├дed. \"Puuduvad\" v├╡tab ette ├╝ksused, mida pole veel t├╢├╢deldud. Avastatud n├дod suunatakse n├дotuvastusse, et grupeerida nad olemasolevateks v├╡i uuteks isikuteks.",
|
||||
"face_detection_description": "Avasta ├╝ksustest n├дgusid masin├╡ppe abil. Videote puhul kasutatakse ainult pisipilti. \"V├дrskenda\" t├╢├╢tleb k├╡ik ├╝ksused uuesti. \"L├дhtesta\" kustutab lisaks k├╡ik seni leitud n├дod. \"Puuduvad\" v├╡tab ette ├╝ksused, mida pole veel t├╢├╢deldud. Avastatud n├дod suunatakse n├дotuvastusse, et grupeerida nad olemasolevateks v├╡i uuteks isikuteks.",
|
||||
"facial_recognition_job_description": "Grupeeri avastatud n├дod inimesteks. See samm k├дivitub siis, kui n├дoavastus on l├╡ppenud. \"L├дhtesta\" grupeerib k├╡ik n├дod uuesti. \"Puuduvad\" v├╡tab ette n├дod, mida pole isikuga seostatud.",
|
||||
"failed_job_command": "K├дsk {command} eba├╡nnestus t├╢├╢tes: {job}",
|
||||
"force_delete_user_warning": "HOIATUS: See kustutab koheselt kasutaja ja k├╡ik ├╝ksused. Seda ei saa tagasi v├╡tta ja faile ei saa taastada.",
|
||||
"force_delete_user_warning": "HOIATUS: See kustutab koheselt kasutaja ja k├╡ik tema ├╝ksused. Toimingut ei saa tagasi v├╡tta ja faile ei saa taastada.",
|
||||
"image_format": "Formaat",
|
||||
"image_format_description": "WebP failid on v├дiksemad kui JPEG, aga kodeerimine on aeglasem.",
|
||||
"image_fullsize_description": "T├дism├╡├╡dus pilt ilma metaandmeteta, kasutatakse sisse suumimisel",
|
||||
@@ -77,9 +85,9 @@
|
||||
"image_prefer_embedded_preview": "Eelista manustatud eelvaadet",
|
||||
"image_prefer_embedded_preview_setting_description": "Kasuta pildit├╢├╢tluse sisendina v├╡imalusel RAW fotodesse manustatud eelvaateid. See v├╡ib m├╡nede piltide puhul anda tulemuseks t├дpsemad v├дrvid, aga eelvaate kvaliteet s├╡ltub konkreetsest kaamerast ning pildis v├╡ib olla rohkem tihendusm├╝ra.",
|
||||
"image_prefer_wide_gamut": "Eelista laia v├дrvigammat",
|
||||
"image_prefer_wide_gamut_setting_description": "Kasuta pisipiltide jaoks Display P3. See s├дilitab paremini laia v├дrviruumiga piltide erksuse, aga vanematel seadmetel ja vanemate brauseritega v├╡ivad pildid teistsugused v├дlja n├дha. sRGB pildid s├дilitatakse v├дrvinihete v├дltimiseks.",
|
||||
"image_prefer_wide_gamut_setting_description": "Kasuta pisipiltide jaoks Display P3. See s├дilitab paremini laia v├дrviruumiga piltide erksuse, kuid vanematel seadmetel ja vanemate brauseritega v├╡ivad pildid teistsugused v├дlja n├дha. sRGB pildid s├дilitatakse v├дrvinihete v├дltimiseks.",
|
||||
"image_preview_description": "Keskmise suurusega pilt ilma metaandmeteta, kasutusel ├╝ksiku ├╝ksuse vaatamise ja masin├╡ppe jaoks",
|
||||
"image_preview_quality_description": "Eelvaate kvaliteet vahemikus 1-100. K├╡rgem v├д├дrtus on parem, aga tekitab suuremaid faile ning v├╡ib m├╡jutada rakenduse t├╢├╢kiirust. Madala v├д├дrtuse seadmine v├╡ib m├╡jutada masin├╡ppe kvaliteeti.",
|
||||
"image_preview_quality_description": "Eelvaate kvaliteet vahemikus 1-100. K├╡rgem v├д├дrtus on parem, aga tekitab suuremaid faile ning v├╡ib m├╡jutada rakenduse t├╢├╢kiirust. Madal v├д├дrtus v├╡ib m├╡jutada masin├╡ppe kvaliteeti.",
|
||||
"image_preview_title": "Eelvaate seaded",
|
||||
"image_quality": "Kvaliteet",
|
||||
"image_resolution": "Resolutsioon",
|
||||
@@ -92,7 +100,7 @@
|
||||
"job_concurrency": "{job} samaaegsus",
|
||||
"job_created": "T├╢├╢de lisatud",
|
||||
"job_not_concurrency_safe": "Seda t├╢├╢det pole ohutu samaaegselt k├дivitada.",
|
||||
"job_settings": "T├╢├╢te seaded",
|
||||
"job_settings": "T├╢├╢dete seaded",
|
||||
"job_settings_description": "Halda t├╢├╢dete samaaegsust",
|
||||
"job_status": "T├╢├╢te seisund",
|
||||
"jobs_delayed": "{jobCount, plural, other {# edasi l├╝katud}}",
|
||||
@@ -166,6 +174,20 @@
|
||||
"metadata_settings_description": "Halda metaandmete seadeid",
|
||||
"migration_job": "Migratsioon",
|
||||
"migration_job_description": "Migreeri ├╝ksuste ja n├дgude pisipildid uusimale kaustastruktuurile",
|
||||
"nightly_tasks_cluster_faces_setting_description": "K├дivita v├дrskelt avastatud n├дgudel n├дotuvastus",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Grupeeri uued n├дod",
|
||||
"nightly_tasks_database_cleanup_setting": "Andmebaasi puhastuse tegumid",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Eemalda andmebaasist vanad, aegunud andmed",
|
||||
"nightly_tasks_generate_memories_setting": "Genereeri m├дlestused",
|
||||
"nightly_tasks_generate_memories_setting_description": "Loo ├╝ksustest uued m├дlestused",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Genereeri puuduvad pisipildid",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "Suuna ilma pisipiltideta ├╝ksused pisipiltide genereerimisele",
|
||||
"nightly_tasks_settings": "├Цiste tegumite seaded",
|
||||
"nightly_tasks_settings_description": "Halda ├╢iseid tegumeid",
|
||||
"nightly_tasks_start_time_setting": "Algusaeg",
|
||||
"nightly_tasks_start_time_setting_description": "Aeg, millal server alustab ├╢iste tegumite k├дivitamist",
|
||||
"nightly_tasks_sync_quota_usage_setting": "S├╝nkrooni kvoodikasutus",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "Uuenda kasutaja talletuskvoot jooksva kasutuse alusel",
|
||||
"no_paths_added": "├Ьhtegi teed pole",
|
||||
"no_pattern_added": "Mustreid ei ole",
|
||||
"note_apply_storage_label_previous_assets": "M├дrkus: Et rakendada talletussilt varem ├╝leslaaditud ├╝ksustele, k├дivita",
|
||||
@@ -196,6 +218,8 @@
|
||||
"oauth_mobile_redirect_uri": "Mobiilne ├╝mbersuunamise URI",
|
||||
"oauth_mobile_redirect_uri_override": "Mobiilse ├╝mbersuunamise URI ├╝lekirjutamine",
|
||||
"oauth_mobile_redirect_uri_override_description": "L├╝lita sisse, kui OAuth pakkuja ei luba mobiilset URI-d, n├дiteks ''{callback}''",
|
||||
"oauth_role_claim": "Rolli v├дide",
|
||||
"oauth_role_claim_description": "Anna selle v├дite olemasolul automaatselt administraatori ligip├д├дs. V├дite v├д├дrtus v├╡ib olla 'user' v├╡i 'admin'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "Halda OAuth sisselogimise seadeid",
|
||||
"oauth_settings_more_details": "Selle funktsiooni kohta rohkem teada saamiseks loe <link>dokumentatsiooni</link>.",
|
||||
@@ -357,10 +381,12 @@
|
||||
"admin_password": "Administraatori parool",
|
||||
"administration": "Administratsioon",
|
||||
"advanced": "T├дpsemad valikud",
|
||||
"advanced_settings_beta_timeline_subtitle": "Koge uut rakendust",
|
||||
"advanced_settings_beta_timeline_title": "Beeta ajajoon",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Kasuta seda valikut, et filtreerida s├╝nkroonimise ajal ├╝ksuseid alternatiivsete kriteeriumite alusel. Proovi seda ainult siis, kui rakendusel on probleeme k├╡igi albumite tuvastamisega.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[EKSPERIMENTAALNE] Kasuta alternatiivset seadme albumi s├╝nkroonimise filtrit",
|
||||
"advanced_settings_log_level_title": "Logimistase: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "M├╡ned seadmed laadivad seadmes olevate ├╝ksuste pisipilte piinavalt aeglaselt. Aktiveeri see seadistus, et laadida selle asemel kaugpilte.",
|
||||
"advanced_settings_prefer_remote_subtitle": "M├╡ned seadmed laadivad lokaalsete ├╝ksuste pisipilte piinavalt aeglaselt. Aktiveeri see seadistus, et laadida selle asemel kaugpilte.",
|
||||
"advanced_settings_prefer_remote_title": "Eelista kaugpilte",
|
||||
"advanced_settings_proxy_headers_subtitle": "M├д├дra vaheserveri p├дised, mida Immich peaks iga p├дringuga saatma",
|
||||
"advanced_settings_proxy_headers_title": "Vaheserveri p├дised",
|
||||
@@ -379,6 +405,7 @@
|
||||
"album_cover_updated": "Albumi kaanepilt muudetud",
|
||||
"album_delete_confirmation": "Kas oled kindel, et soovid albumi {album} kustutada?",
|
||||
"album_delete_confirmation_description": "Kui see album on jagatud, ei p├д├дse teised kasutajad sellele enam ligi.",
|
||||
"album_deleted": "Album kustutatud",
|
||||
"album_info_card_backup_album_excluded": "V├ДLJA J├ДETUD",
|
||||
"album_info_card_backup_album_included": "LISATUD",
|
||||
"album_info_updated": "Albumi info muudetud",
|
||||
@@ -388,6 +415,7 @@
|
||||
"album_options": "Albumi valikud",
|
||||
"album_remove_user": "Eemalda kasutaja?",
|
||||
"album_remove_user_confirmation": "Kas oled kindel, et soovid kasutaja {user} eemaldada?",
|
||||
"album_search_not_found": "Otsingule vastavaid albumeid ei leitud",
|
||||
"album_share_no_users": "Paistab, et oled seda albumit k├╡ikide kasutajatega jaganud, v├╡i pole ├╝htegi kasutajat, kellega jagada.",
|
||||
"album_updated": "Album muudetud",
|
||||
"album_updated_setting_description": "Saa teavitus e-posti teel, kui jagatud albumis on uusi ├╝ksuseid",
|
||||
@@ -407,6 +435,7 @@
|
||||
"albums_default_sort_order": "Vaikimisi albumi j├дrjestus",
|
||||
"albums_default_sort_order_description": "Uute albumite lisamisel ├╝ksuste esialgne j├дrjekord.",
|
||||
"albums_feature_description": "├Ьksuste kollektsioonid, mida saab teiste kasutajatega jagada.",
|
||||
"albums_on_device_count": "Albumid seadmel ({count})",
|
||||
"all": "K├╡ik",
|
||||
"all_albums": "K├╡ik albumid",
|
||||
"all_people": "K├╡ik isikud",
|
||||
@@ -427,6 +456,7 @@
|
||||
"app_settings": "Rakenduse seaded",
|
||||
"appears_in": "Albumid",
|
||||
"archive": "Arhiiv",
|
||||
"archive_action_prompt": "{count} lisatud arhiivi",
|
||||
"archive_or_unarchive_photo": "Arhiveeri v├╡i taasta foto",
|
||||
"archive_page_no_archived_assets": "Arhiveeritud ├╝ksuseid ei leitud",
|
||||
"archive_page_title": "Arhiveeri ({count})",
|
||||
@@ -464,7 +494,6 @@
|
||||
"assets": "├Ьksused",
|
||||
"assets_added_count": "{count, plural, one {# ├╝ksus} other {# ├╝ksust}} lisatud",
|
||||
"assets_added_to_album_count": "{count, plural, one {# ├╝ksus} other {# ├╝ksust}} albumisse lisatud",
|
||||
"assets_added_to_name_count": "{count, plural, one {# ├╝ksus} other {# ├╝ksust}} lisatud {hasName, select, true {albumisse <b>{name}</b>} other {uude albumisse}}",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {├Ьksust} other {├Ьksuseid}} ei saa albumisse lisada",
|
||||
"assets_count": "{count, plural, one {# ├╝ksus} other {# ├╝ksust}}",
|
||||
"assets_deleted_permanently": "{count} ├╝ksus(t) j├д├дdavalt kustutatud",
|
||||
@@ -490,6 +519,7 @@
|
||||
"back_close_deselect": "Tagasi, sulge v├╡i t├╝hista valik",
|
||||
"background_location_permission": "Taustal asukoha luba",
|
||||
"background_location_permission_content": "Et taustal t├╢├╢tades v├╡rgu├╝hendust vahetada, peab Immich'il *alati* olema t├дpse asukoha luba, et rakendus saaks WiFi-v├╡rgu nime lugeda",
|
||||
"backup": "Varundamine",
|
||||
"backup_album_selection_page_albums_device": "Albumid seadmel ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Puuduta kaasamiseks, topeltpuuduta v├дlistamiseks",
|
||||
"backup_album_selection_page_assets_scatter": "├Ьksused v├╡ivad olla jaotatud mitme albumi vahel. Seega saab albumeid varundamise protsessi kaasata v├╡i v├дlistada.",
|
||||
@@ -553,6 +583,8 @@
|
||||
"backup_options_page_title": "Varundamise valikud",
|
||||
"backup_setting_subtitle": "Halda taustal ja esiplaanil ├╝leslaadimise seadeid",
|
||||
"backward": "Tagasi",
|
||||
"beta_sync": "Beeta s├╝nkroonimise staatus",
|
||||
"beta_sync_subtitle": "Halda uut s├╝nkroonimiss├╝steemi",
|
||||
"biometric_auth_enabled": "Biomeetriline autentimine lubatud",
|
||||
"biometric_locked_out": "Biomeetriline autentimine on blokeeritud",
|
||||
"biometric_no_options": "Biomeetrilisi valikuid ei ole",
|
||||
@@ -570,7 +602,7 @@
|
||||
"cache_settings_clear_cache_button": "T├╝hjenda puhver",
|
||||
"cache_settings_clear_cache_button_title": "T├╝hjendab rakenduse puhvri. See m├╡jutab oluliselt rakenduse j├╡udlust, kuni puhver uuesti t├дidetakse.",
|
||||
"cache_settings_duplicated_assets_clear_button": "T├ЬHJENDA",
|
||||
"cache_settings_duplicated_assets_subtitle": "Fotod ja videod, mis on rakenduse poolt mustfiltreeritud",
|
||||
"cache_settings_duplicated_assets_subtitle": "Fotod ja videod, mis on rakenduse poolt ignoreeritud",
|
||||
"cache_settings_duplicated_assets_title": "Dubleeritud ├╝ksused ({count})",
|
||||
"cache_settings_statistics_album": "Kogu pisipildid",
|
||||
"cache_settings_statistics_full": "T├дism├╡├╡dus pildid",
|
||||
@@ -587,6 +619,7 @@
|
||||
"cancel": "Katkesta",
|
||||
"cancel_search": "Katkesta otsing",
|
||||
"canceled": "T├╝histatud",
|
||||
"canceling": "T├╝histamine",
|
||||
"cannot_merge_people": "Ei saa isikuid ├╝hendada",
|
||||
"cannot_undo_this_action": "Sa ei saa seda tagasi v├╡tta!",
|
||||
"cannot_update_the_description": "Kirjelduse muutmine eba├╡nnestus",
|
||||
@@ -700,10 +733,11 @@
|
||||
"current_server_address": "Praegune serveri aadress",
|
||||
"custom_locale": "Kohandatud lokaat",
|
||||
"custom_locale_description": "Vorminda kuup├дevad ja arvud vastavalt keelele ja regioonile",
|
||||
"custom_url": "Kohandatud URL",
|
||||
"daily_title_text_date": "d. MMMM",
|
||||
"daily_title_text_date_year": "d. MMMM yyyy",
|
||||
"dark": "Tume",
|
||||
"darkTheme": "L├╝lita tume teema",
|
||||
"dark_theme": "L├╝lita tume teema",
|
||||
"date_after": "Kuup├дev p├дrast",
|
||||
"date_and_time": "Kuup├дev ja kellaaeg",
|
||||
"date_before": "Kuup├дev enne",
|
||||
@@ -719,6 +753,8 @@
|
||||
"default_locale": "Vaikimisi lokaat",
|
||||
"default_locale_description": "Vorminda kuup├дevad ja numbrid vastavalt brauseri lokaadile",
|
||||
"delete": "Kustuta",
|
||||
"delete_action_confirmation_message": "Kas oled kindel, et soovid selle ├╝ksuse kustutada? See toiming liigutab ├╝ksuse serveri pr├╝gikasti ja k├╝sib, kas soovid selle lokaalselt kustutada",
|
||||
"delete_action_prompt": "{count} kustutatud",
|
||||
"delete_album": "Kustuta album",
|
||||
"delete_api_key_prompt": "Kas oled kindel, et soovid selle API v├╡tme kustutada?",
|
||||
"delete_dialog_alert": "Need ├╝ksused kustutatakse j├д├дdavalt Immich'ist ja sinu seadmest",
|
||||
@@ -732,9 +768,12 @@
|
||||
"delete_key": "Kustuta v├╡ti",
|
||||
"delete_library": "Kustuta kogu",
|
||||
"delete_link": "Kustuta link",
|
||||
"delete_local_action_prompt": "{count} kustutatud lokaalselt",
|
||||
"delete_local_dialog_ok_backed_up_only": "Kustuta ainult varundatud",
|
||||
"delete_local_dialog_ok_force": "Kustuta sellegipoolest",
|
||||
"delete_others": "Kustuta teised",
|
||||
"delete_permanently": "Kustuta j├д├дdavalt",
|
||||
"delete_permanently_action_prompt": "{count} j├д├дdavalt kustutatud",
|
||||
"delete_shared_link": "Kustuta jagatud link",
|
||||
"delete_shared_link_dialog_title": "Kustuta jagatud link",
|
||||
"delete_tag": "Kustuta silt",
|
||||
@@ -745,6 +784,7 @@
|
||||
"description": "Kirjeldus",
|
||||
"description_input_hint_text": "Lisa kirjeldus...",
|
||||
"description_input_submit_error": "Viga kirjelduse muutmisel, rohkem infot leiad logist",
|
||||
"deselect_all": "Eemalda k├╡ik valikust",
|
||||
"details": "├Ьksikasjad",
|
||||
"direction": "Suund",
|
||||
"disabled": "V├дlja l├╝litatud",
|
||||
@@ -762,6 +802,7 @@
|
||||
"documentation": "Dokumentatsioon",
|
||||
"done": "Tehtud",
|
||||
"download": "Laadi alla",
|
||||
"download_action_prompt": "{count} ├╝ksust laaditakse alla",
|
||||
"download_canceled": "Allalaadimine katkestatud",
|
||||
"download_complete": "Allalaadimine l├╡petatud",
|
||||
"download_enqueue": "Allalaadimine ootel",
|
||||
@@ -788,6 +829,7 @@
|
||||
"edit": "Muuda",
|
||||
"edit_album": "Muuda albumit",
|
||||
"edit_avatar": "Muuda avatari",
|
||||
"edit_birthday": "Muuda s├╝nnip├дeva",
|
||||
"edit_date": "Muuda kuup├дeva",
|
||||
"edit_date_and_time": "Muuda kuup├дeva ja kellaaega",
|
||||
"edit_description": "Muuda kirjeldust",
|
||||
@@ -799,6 +841,7 @@
|
||||
"edit_key": "Muuda v├╡tit",
|
||||
"edit_link": "Muuda linki",
|
||||
"edit_location": "Muuda asukohta",
|
||||
"edit_location_action_prompt": "{count} asukoht muudetud",
|
||||
"edit_location_dialog_title": "Asukoht",
|
||||
"edit_name": "Muuda nime",
|
||||
"edit_people": "Muuda isikuid",
|
||||
@@ -817,6 +860,7 @@
|
||||
"empty_trash": "T├╝hjenda pr├╝gikast",
|
||||
"empty_trash_confirmation": "Kas oled kindel, et soovid pr├╝gikasti t├╝hjendada? See eemaldab k├╡ik seal olevad ├╝ksused Immich'ist j├д├дdavalt.\nSeda tegevust ei saa tagasi v├╡tta!",
|
||||
"enable": "Luba",
|
||||
"enable_backup": "Luba varundus",
|
||||
"enable_biometric_auth_description": "Biomeetrilise autentimise lubamiseks sisesta oma PIN-kood",
|
||||
"enabled": "Lubatud",
|
||||
"end_date": "L├╡ppkuup├дev",
|
||||
@@ -953,6 +997,7 @@
|
||||
},
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "Lisa kirjeldus...",
|
||||
"exif_bottom_sheet_description_error": "Viga kirjelduse muutmisel",
|
||||
"exif_bottom_sheet_details": "├ЬKSIKASJAD",
|
||||
"exif_bottom_sheet_location": "ASUKOHT",
|
||||
"exif_bottom_sheet_people": "ISIKUD",
|
||||
@@ -973,6 +1018,8 @@
|
||||
"explorer": "Brauser",
|
||||
"export": "Ekspordi",
|
||||
"export_as_json": "Ekspordi JSON-formaati",
|
||||
"export_database": "Ekspordi andmebaas",
|
||||
"export_database_description": "Ekspordi SQLite andmebaas",
|
||||
"extension": "Laiend",
|
||||
"external": "V├дline",
|
||||
"external_libraries": "V├дlised kogud",
|
||||
@@ -984,6 +1031,7 @@
|
||||
"failed_to_load_assets": "├Ьksuste laadimine eba├╡nnestus",
|
||||
"failed_to_load_folder": "Kausta laadimine eba├╡nnestus",
|
||||
"favorite": "Lemmik",
|
||||
"favorite_action_prompt": "{count} lisatud lemmikutesse",
|
||||
"favorite_or_unfavorite_photo": "Lisa foto lemmikutesse v├╡i eemalda lemmikutest",
|
||||
"favorites": "Lemmikud",
|
||||
"favorites_page_no_favorites": "Lemmikuid ├╝ksuseid ei leitud",
|
||||
@@ -1023,6 +1071,9 @@
|
||||
"haptic_feedback_switch": "Luba haptiline tagasiside",
|
||||
"haptic_feedback_title": "Haptiline tagasiside",
|
||||
"has_quota": "On kvoot",
|
||||
"hash_asset": "Arvuta ├╝ksuse r├дsi",
|
||||
"hashed_assets": "R├дsiga ├╝ksused",
|
||||
"hashing": "R├дsi arvutamine",
|
||||
"header_settings_add_header_tip": "Lisa p├дis",
|
||||
"header_settings_field_validator_msg": "V├д├дrtus ei saa olla t├╝hi",
|
||||
"header_settings_header_name_input": "P├дise nimi",
|
||||
@@ -1055,6 +1106,7 @@
|
||||
"host": "Host",
|
||||
"hour": "Tund",
|
||||
"id": "ID",
|
||||
"idle": "J├╡ude",
|
||||
"ignore_icloud_photos": "Ignoreeri iCloud fotosid",
|
||||
"ignore_icloud_photos_description": "Fotosid, mis on iCloud'is, ei laadita ├╝les Immich'i serverisse",
|
||||
"image": "Pilt",
|
||||
@@ -1099,7 +1151,7 @@
|
||||
"ios_debug_info_no_processes_queued": "Taustaprotsesse pole j├дrjekorras",
|
||||
"ios_debug_info_no_sync_yet": "Taustal s├╝nkroonimise t├╢├╢de pole veel k├дinud",
|
||||
"ios_debug_info_processes_queued": "{count, plural, one {{count} taustaprotsess j├дrjekorras} other {{count} taustaprotsessi j├дrjekorras}}",
|
||||
"ios_debug_info_processing_ran_at": "T├╢├╢tlemine k├дis {dateTime}",
|
||||
"ios_debug_info_processing_ran_at": "T├╢├╢tlemine toimus {dateTime}",
|
||||
"items_count": "{count, plural, one {# ├╝ksus} other {# ├╝ksust}}",
|
||||
"jobs": "T├╢├╢ted",
|
||||
"keep": "J├дta alles",
|
||||
@@ -1112,6 +1164,7 @@
|
||||
"language_no_results_title": "├Ьhtegi keelt ei leitud",
|
||||
"language_search_hint": "Otsi keeli...",
|
||||
"language_setting_description": "Vali oma eelistatud keel",
|
||||
"large_files": "Suured failid",
|
||||
"last_seen": "Viimati n├дhtud",
|
||||
"latest_version": "Uusim versioon",
|
||||
"latitude": "Laiuskraad",
|
||||
@@ -1127,16 +1180,18 @@
|
||||
"library_page_sort_created": "Loomise aeg",
|
||||
"library_page_sort_last_modified": "Viimase muutmise aeg",
|
||||
"library_page_sort_title": "Albumi pealkiri",
|
||||
"licenses": "Litsentsid",
|
||||
"light": "Hele",
|
||||
"like_deleted": "Meeldimine kustutatud",
|
||||
"link_motion_video": "Lingi liikuv video",
|
||||
"link_options": "Lingi valikud",
|
||||
"link_to_oauth": "├Ьhenda OAuth",
|
||||
"linked_oauth_account": "OAuth konto ├╝hendatud",
|
||||
"list": "Loend",
|
||||
"loading": "Laadimine",
|
||||
"loading_search_results_failed": "Otsitulemuste laadimine eba├╡nnestus",
|
||||
"local": "Lokaalsed",
|
||||
"local_asset_cast_failed": "Ei saa edastada ├╝ksust, mis pole serverisse ├╝les laaditud",
|
||||
"local_assets": "Lokaalsed ├╝ksused",
|
||||
"local_network": "Kohalik v├╡rk",
|
||||
"local_network_sheet_info": "Rakendus ├╝hendub valitud Wi-Fi v├╡rgus olles serveriga selle URL-i kaudu",
|
||||
"location_permission": "Asukoha luba",
|
||||
@@ -1193,8 +1248,7 @@
|
||||
"manage_your_devices": "Halda oma autenditud seadmeid",
|
||||
"manage_your_oauth_connection": "Halda oma OAuth ├╝hendust",
|
||||
"map": "Kaart",
|
||||
"map_assets_in_bound": "{count} foto",
|
||||
"map_assets_in_bounds": "{count} fotot",
|
||||
"map_assets_in_bounds": "{count, plural, one {# foto} other {# fotot}}",
|
||||
"map_cannot_get_user_location": "Ei saa kasutaja asukohta tuvastada",
|
||||
"map_location_dialog_yes": "Jah",
|
||||
"map_location_picker_page_use_location": "Kasuta seda asukohta",
|
||||
@@ -1246,6 +1300,7 @@
|
||||
"more": "Rohkem",
|
||||
"move": "Liiguta",
|
||||
"move_off_locked_folder": "Liiguta lukustatud kaustast v├дlja",
|
||||
"move_to_lock_folder_action_prompt": "{count} lisatud lukustatud kausta",
|
||||
"move_to_locked_folder": "Liiguta lukustatud kausta",
|
||||
"move_to_locked_folder_confirmation": "Need fotod ja videod eemaldatakse k├╡igist albumitest ning nad on n├дhtavad ainult lukustatud kaustas",
|
||||
"moved_to_archive": "{count, plural, one {# ├╝ksus} other {# ├╝ksust}} liigutatud arhiivi",
|
||||
@@ -1292,6 +1347,7 @@
|
||||
"no_results": "Vasteid pole",
|
||||
"no_results_description": "Proovi s├╝non├╝├╝mi v├╡i ├╝ldisemat m├дrks├╡na",
|
||||
"no_shared_albums_message": "Lisa album, et fotosid ja videosid teistega jagada",
|
||||
"no_uploads_in_progress": "├Ьleslaadimisi k├дimas ei ole",
|
||||
"not_in_any_album": "Pole ├╝heski albumis",
|
||||
"not_selected": "Ei ole valitud",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "M├дrkus: Et rakendada talletussilt varem ├╝leslaaditud ├╝ksustele, k├дivita",
|
||||
@@ -1329,6 +1385,7 @@
|
||||
"original": "originaal",
|
||||
"other": "Muud",
|
||||
"other_devices": "Muud seadmed",
|
||||
"other_entities": "Muud objektid",
|
||||
"other_variables": "Muud muutujad",
|
||||
"owned": "Minu omad",
|
||||
"owner": "Omanik",
|
||||
@@ -1460,6 +1517,7 @@
|
||||
"purchase_server_description_2": "Toetaja staatus",
|
||||
"purchase_server_title": "Server",
|
||||
"purchase_settings_server_activated": "Serveri tootev├╡tit haldab administraator",
|
||||
"queue_status": "J├дrjekorras {count}/{total}",
|
||||
"rating": "Hinnang",
|
||||
"rating_clear": "T├╝hjenda hinnang",
|
||||
"rating_count": "{count, plural, one {# t├дrn} other {# t├дrni}}",
|
||||
@@ -1488,6 +1546,8 @@
|
||||
"refreshing_faces": "N├дgude v├дrskendamine",
|
||||
"refreshing_metadata": "Metaandmete v├дrskendamine",
|
||||
"regenerating_thumbnails": "Pisipiltide uuesti genereerimine",
|
||||
"remote": "Serveris",
|
||||
"remote_assets": "Kaug├╝ksused",
|
||||
"remove": "Eemalda",
|
||||
"remove_assets_album_confirmation": "Kas oled kindel, et soovid {count, plural, one {# ├╝ksuse} other {# ├╝ksust}} albumist eemaldada?",
|
||||
"remove_assets_shared_link_confirmation": "Kas oled kindel, et soovid eemaldada {count, plural, one {# ├╝ksuse} other {# ├╝ksust}} sellelt jagatud lingilt?",
|
||||
@@ -1495,7 +1555,9 @@
|
||||
"remove_custom_date_range": "Eemalda kohandatud kuup├дevavahemik",
|
||||
"remove_deleted_assets": "Eemalda kustutatud ├╝ksused",
|
||||
"remove_from_album": "Eemalda albumist",
|
||||
"remove_from_album_action_prompt": "{count} eemaldatud albumist",
|
||||
"remove_from_favorites": "Eemalda lemmikutest",
|
||||
"remove_from_lock_folder_action_prompt": "{count} eemaldatud lukustatud kaustast",
|
||||
"remove_from_locked_folder": "Eemalda lukustatud kaustast",
|
||||
"remove_from_locked_folder_confirmation": "Kas oled kindel, et soovid need fotod ja videod lukustatud kaustast v├дlja liigutada? Need muutuvad su kogus n├дhtavaks.",
|
||||
"remove_from_shared_link": "Eemalda jagatud lingist",
|
||||
@@ -1523,19 +1585,25 @@
|
||||
"reset_password": "L├дhtesta parool",
|
||||
"reset_people_visibility": "L├дhtesta isikute n├дhtavus",
|
||||
"reset_pin_code": "L├дhtesta PIN-kood",
|
||||
"reset_sqlite": "L├дhtesta SQLite andmebaas",
|
||||
"reset_sqlite_confirmation": "Kas oled kindel, et soovid SQLite andmebaasi l├дhtestada? Andmete uuesti s├╝nkroonimiseks pead v├дlja ja j├дlle sisse logima",
|
||||
"reset_sqlite_success": "SQLite andmebaas edukalt l├дhtestatud",
|
||||
"reset_to_default": "L├дhtesta",
|
||||
"resolve_duplicates": "Lahenda duplikaadid",
|
||||
"resolved_all_duplicates": "K├╡ik duplikaadid lahendatud",
|
||||
"restore": "Taasta",
|
||||
"restore_all": "Taasta k├╡ik",
|
||||
"restore_trash_action_prompt": "{count} pr├╝gikastust taastatud",
|
||||
"restore_user": "Taasta kasutaja",
|
||||
"restored_asset": "├Ьksus taastatud",
|
||||
"resume": "J├дtka",
|
||||
"retry_upload": "Proovi ├╝leslaadimist uuesti",
|
||||
"review_duplicates": "Vaata duplikaadid l├дbi",
|
||||
"review_large_files": "Vaata suured failid l├дbi",
|
||||
"role": "Roll",
|
||||
"role_editor": "Muutja",
|
||||
"role_viewer": "Vaataja",
|
||||
"running": "K├дimas",
|
||||
"save": "Salvesta",
|
||||
"save_to_gallery": "Salvesta galeriisse",
|
||||
"saved_api_key": "API v├╡ti salvestatud",
|
||||
@@ -1667,6 +1735,7 @@
|
||||
"settings_saved": "Seaded salvestatud",
|
||||
"setup_pin_code": "Seadista PIN-kood",
|
||||
"share": "Jaga",
|
||||
"share_action_prompt": "Jagatud {count} ├╝ksust",
|
||||
"share_add_photos": "Lisa fotosid",
|
||||
"share_assets_selected": "{count} valitud",
|
||||
"share_dialog_preparing": "Ettevalmistamine...",
|
||||
@@ -1688,6 +1757,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Kopeeritud l├╡ikelauale",
|
||||
"shared_link_clipboard_text": "Link: {link}\nParool: {password}",
|
||||
"shared_link_create_error": "Viga jagatud lingi loomisel",
|
||||
"shared_link_custom_url_description": "Ligip├д├дs jagatud lingile kohandatud URL-i kaudu",
|
||||
"shared_link_edit_description_hint": "Sisesta jagatud lingi kirjeldus",
|
||||
"shared_link_edit_expire_after_option_day": "1 p├дev",
|
||||
"shared_link_edit_expire_after_option_days": "{count} p├дeva",
|
||||
@@ -1713,6 +1783,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "Halda jagatud linke",
|
||||
"shared_link_options": "Jagatud lingi valikud",
|
||||
"shared_link_password_description": "N├╡ua jagatud lingile ligi p├д├дsemiseks parooli",
|
||||
"shared_links": "Jagatud lingid",
|
||||
"shared_links_description": "Jaga fotosid ja videosid lingiga",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# jagatud fotot ja videot.}}",
|
||||
@@ -1768,6 +1839,7 @@
|
||||
"sort_title": "Pealkiri",
|
||||
"source": "L├дhtekood",
|
||||
"stack": "Virnasta",
|
||||
"stack_action_prompt": "{count} virnastatud",
|
||||
"stack_duplicates": "Virnasta duplikaadid",
|
||||
"stack_select_one_photo": "Vali virnale kaanefoto",
|
||||
"stack_selected_photos": "Virnasta valitud fotod",
|
||||
@@ -1787,6 +1859,7 @@
|
||||
"storage_quota": "Talletuskvoot",
|
||||
"storage_usage": "{used}/{available} kasutatud",
|
||||
"submit": "Saada",
|
||||
"success": "├Хnnestus",
|
||||
"suggestions": "Soovitused",
|
||||
"sunrise_on_the_beach": "P├дikeset├╡us rannal",
|
||||
"support": "Tugi",
|
||||
@@ -1796,6 +1869,8 @@
|
||||
"sync": "S├╝nkrooni",
|
||||
"sync_albums": "S├╝nkrooni albumid",
|
||||
"sync_albums_manual_subtitle": "S├╝nkrooni k├╡ik ├╝leslaaditud videod ja fotod valitud varundusalbumitesse",
|
||||
"sync_local": "S├╝nkrooni lokaalsed ├╝ksused",
|
||||
"sync_remote": "S├╝nkrooni kaug├╝ksused",
|
||||
"sync_upload_album_setting_subtitle": "Loo ja laadi oma pildid ja videod ├╝les Immich'isse valitud albumitesse",
|
||||
"tag": "Silt",
|
||||
"tag_assets": "Sildista ├╝ksuseid",
|
||||
@@ -1806,6 +1881,7 @@
|
||||
"tag_updated": "Muudetud silt: {tag}",
|
||||
"tagged_assets": "{count, plural, one {# ├╝ksus} other {# ├╝ksust}} sildistatud",
|
||||
"tags": "Sildid",
|
||||
"tap_to_run_job": "Puuduta t├╢├╢te k├дivitamiseks",
|
||||
"template": "Mall",
|
||||
"theme": "Teema",
|
||||
"theme_selection": "Teema valik",
|
||||
@@ -1838,6 +1914,7 @@
|
||||
"total": "Kokku",
|
||||
"total_usage": "Kogukasutus",
|
||||
"trash": "Pr├╝gikast",
|
||||
"trash_action_prompt": "{count} liigutatud pr├╝gikasti",
|
||||
"trash_all": "K├╡ik pr├╝gikasti",
|
||||
"trash_count": "Liiguta {count, number} pr├╝gikasti",
|
||||
"trash_delete_asset": "Kustuta ├╝ksus",
|
||||
@@ -1855,9 +1932,11 @@
|
||||
"unable_to_change_pin_code": "PIN-koodi muutmine eba├╡nnestus",
|
||||
"unable_to_setup_pin_code": "PIN-koodi seadistamine eba├╡nnestus",
|
||||
"unarchive": "Taasta arhiivist",
|
||||
"unarchive_action_prompt": "{count} eemaldatud arhiivist",
|
||||
"unarchived_count": "{count, plural, other {# arhiivist taastatud}}",
|
||||
"undo": "V├╡ta tagasi",
|
||||
"unfavorite": "Eemalda lemmikutest",
|
||||
"unfavorite_action_prompt": "{count} eemaldatud lemmikutest",
|
||||
"unhide_person": "├Дra peida isikut",
|
||||
"unknown": "Teadmata",
|
||||
"unknown_country": "Tundmatu riik",
|
||||
@@ -1875,15 +1954,20 @@
|
||||
"unselect_all_duplicates": "├Дra vali duplikaate",
|
||||
"unselect_all_in": "├Дra vali ├╝htegi grupis {group}",
|
||||
"unstack": "Eralda",
|
||||
"unstack_action_prompt": "{count} eraldatud",
|
||||
"unstacked_assets_count": "{count, plural, one {# ├╝ksus} other {# ├╝ksust}} eraldatud",
|
||||
"untagged": "Sildistamata",
|
||||
"up_next": "J├дrgmine",
|
||||
"updated_at": "Uuendatud",
|
||||
"updated_password": "Parool muudetud",
|
||||
"upload": "Laadi ├╝les",
|
||||
"upload_action_prompt": "{count} ├╝leslaadimise ootel",
|
||||
"upload_concurrency": "├Ьleslaadimise samaaegsus",
|
||||
"upload_details": "├Ьleslaadimise ├╝ksikasjad",
|
||||
"upload_dialog_info": "Kas soovid valitud ├╝ksuse(d) serverisse varundada?",
|
||||
"upload_dialog_title": "├Ьksuse ├╝leslaadimine",
|
||||
"upload_errors": "├Ьleslaadimine l├╡petatud {count, plural, one {# veaga} other {# veaga}}, uute ├╝ksuste n├дgemiseks v├дrskenda lehte.",
|
||||
"upload_finished": "├Ьleslaadimine l├╡petatud",
|
||||
"upload_progress": "Ootel {remaining, number} - T├╢├╢deldud {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "{count, plural, one {# dubleeritud ├╝ksus} other {# dubleeritud ├╝ksust}} vahele j├дetud",
|
||||
"upload_status_duplicates": "Duplikaadid",
|
||||
@@ -1892,6 +1976,7 @@
|
||||
"upload_success": "├Ьleslaadimine ├╡nnestus, uute ├╝ksuste n├дgemiseks v├дrskenda lehte.",
|
||||
"upload_to_immich": "Laadi Immich'isse ({count})",
|
||||
"uploading": "├Ьleslaadimine",
|
||||
"uploading_media": "Meediumi ├╝leslaadimine",
|
||||
"url": "URL",
|
||||
"usage": "Kasutus",
|
||||
"use_biometric": "Kasuta biomeetriat",
|
||||
@@ -1912,6 +1997,7 @@
|
||||
"user_usage_stats_description": "Vaata konto kasutuse statistikat",
|
||||
"username": "Kasutajanimi",
|
||||
"users": "Kasutajad",
|
||||
"users_added_to_album_count": "{count, plural, one {# kasutaja} other {# kasutajat}} lisatud albumisse",
|
||||
"utilities": "T├╢├╢riistad",
|
||||
"validate": "Valideeri",
|
||||
"validate_endpoint_error": "Sisesta korrektne URL",
|
||||
@@ -1930,6 +2016,7 @@
|
||||
"view_album": "Vaata albumit",
|
||||
"view_all": "Vaata k├╡iki",
|
||||
"view_all_users": "Vaata k├╡iki kasutajaid",
|
||||
"view_details": "Vaata ├╝ksikasju",
|
||||
"view_in_timeline": "Vaata ajajoonel",
|
||||
"view_link": "Vaata linki",
|
||||
"view_links": "Vaata linke",
|
||||
|
||||
@@ -471,7 +471,6 @@
|
||||
"library": "┌й╪к╪з╪и╪о╪з┘Ж┘З",
|
||||
"library_options": "┌п╪▓█М┘Ж┘ЗтАМ┘З╪з█М ┌й╪к╪з╪и╪о╪з┘Ж┘З",
|
||||
"light": "╪▒┘И╪┤┘Ж",
|
||||
"link_options": "┌п╪▓█М┘Ж┘ЗтАМ┘З╪з█М ┘Д█М┘Ж┌й",
|
||||
"link_to_oauth": "╪з╪к╪╡╪з┘Д ╪и┘З OAuth",
|
||||
"linked_oauth_account": "╪н╪│╪з╪и OAuth ┘Е╪к╪╡┘Д ╪┤╪п┘З",
|
||||
"list": "┘Д█М╪│╪к",
|
||||
@@ -493,7 +492,6 @@
|
||||
"manage_your_devices": "┘Е╪п█М╪▒█М╪к ╪п╪│╪к┌п╪з┘ЗтАМ┘З╪з█М ┘Е╪к╪╡┘Д",
|
||||
"manage_your_oauth_connection": "┘Е╪п█М╪▒█М╪к ╪з╪к╪╡╪з┘Д OAuth",
|
||||
"map": "┘Ж┘В╪┤┘З",
|
||||
"map_assets_in_bound": "{count} ╪╣┌й╪│",
|
||||
"map_assets_in_bounds": "{count} ╪╣┌й╪│ ┘З╪з",
|
||||
"map_cannot_get_user_location": "┘Е┘И┘В╪╣█М╪к ┘Е┌й╪з┘Ж█М ╪п╪▒ ╪п╪│╪к╪▒╪│ ┘Ж█М╪│╪к",
|
||||
"map_location_dialog_yes": "╪и┘Д┘З",
|
||||
|
||||
77
i18n/fi.json
77
i18n/fi.json
@@ -166,6 +166,20 @@
|
||||
"metadata_settings_description": "Hallitse metatietoja",
|
||||
"migration_job": "Migraatio",
|
||||
"migration_job_description": "Migroi aineiston pikkukuvat ja kasvot uusimpaan kansiorakenteeseen",
|
||||
"nightly_tasks_cluster_faces_setting_description": "Aja kasvojen tunnistus uusiin tunnistettuihin kasvoihin",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Kokoa uudet kasvot",
|
||||
"nightly_tasks_database_cleanup_setting": "Tietokannan puhdistuksen teht├дv├дt",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Siivoa vanhentunut data tietokannasta",
|
||||
"nightly_tasks_generate_memories_setting": "Luo muistoja",
|
||||
"nightly_tasks_generate_memories_setting_description": "Luo kohteista uusia muistoja",
|
||||
"nightly_tasks_missing_thumbnails_setting": "Luo puuttuvat pikkukuvat",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "Laita ilman pikkukuvia olevat kohteet jonoon pikkukuvien luontia varten",
|
||||
"nightly_tasks_settings": "Y├╢llisten teht├дvien asetukset",
|
||||
"nightly_tasks_settings_description": "Hallitse y├╢llisi├д teht├дvi├д",
|
||||
"nightly_tasks_start_time_setting": "Aloitusaika",
|
||||
"nightly_tasks_start_time_setting_description": "Aika jolloin palvelin aloittaa y├╢llisten teht├дvien ajon",
|
||||
"nightly_tasks_sync_quota_usage_setting": "Synkronointikiinti├╢n k├дytt├╢",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "P├дivit├д k├дytt├дj├дn tallennustilan kiinti├╢ nykyisen k├дyt├╢n mukaan",
|
||||
"no_paths_added": "Polkuja ei asetettu",
|
||||
"no_pattern_added": "Kaavoja ei lis├дttyn├д",
|
||||
"note_apply_storage_label_previous_assets": "Huom: Asettaaksesi nimikkeen aiemmin ladatulle aineistolle, aja",
|
||||
@@ -196,6 +210,8 @@
|
||||
"oauth_mobile_redirect_uri": "Mobiilin uudellenohjaus-URI",
|
||||
"oauth_mobile_redirect_uri_override": "Ohita mobiilin uudelleenohjaus-URI",
|
||||
"oauth_mobile_redirect_uri_override_description": "Ota k├дytt├╢├╢n kun OAuth tarjoaja ei salli mobiili URI:a, kuten ''{callback}''",
|
||||
"oauth_role_claim": "Roolin vaatimus",
|
||||
"oauth_role_claim_description": "Salli p├д├дk├дytt├дj├дn p├д├дsyoikeus automaattisesti t├дm├дn vaatimuksen perusteella. Vaatimus voi sis├дlt├д├д, joko 'k├дytt├дj├дn' tai 'p├д├дk├дytt├дj├дn'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "Hallitse OAuth-kirjautumisen asetuksia",
|
||||
"oauth_settings_more_details": "Saadaksesi lis├дtietoja t├дst├д toiminnosta, katso <link>dokumentaatio</link>.",
|
||||
@@ -244,6 +260,7 @@
|
||||
"storage_template_migration_info": "Tallennusmalli muuntaa kaikki tiedostop├д├дtteet pieniksi kirjaimiksi. Mallipohjan muutokset koskevat vain uusia resursseja. Jos haluat k├дytt├д├д mallipohjaa takautuvasti aiemmin ladattuihin resursseihin, suorita <link>{job}</link>.",
|
||||
"storage_template_migration_job": "Tallennustilan mallin muutosty├╢",
|
||||
"storage_template_more_details": "Saadaksesi lis├дtietoa t├дst├д ominaisuudesta, katso <template-link>Tallennustilan Mallit</template-link> sek├д <implications-link>mihin se vaikuttaa</implications-link>",
|
||||
"storage_template_onboarding_description_v2": "P├д├дlle kytkettyn├д, toiminto j├дrjestestelee tiedostot automaattisesti k├дytt├дj├дn m├д├дritt├дm├дn mallin mukaisesti. Lis├дtietoja <link>dokumentaatiosta</link>..",
|
||||
"storage_template_path_length": "Arvioitu tiedostopolun pituusrajoitus: <b>{length, number}</b>/{limit, number}",
|
||||
"storage_template_settings": "Tallennustilan malli",
|
||||
"storage_template_settings_description": "Hallitse palvelimelle ladatun aineiston kansiorakennetta ja tiedostonimi├д",
|
||||
@@ -356,6 +373,7 @@
|
||||
"admin_password": "Yll├дpit├дj├дn salasana",
|
||||
"administration": "Yll├дpito",
|
||||
"advanced": "Edistyneet",
|
||||
"advanced_settings_beta_timeline_subtitle": "Kokeile uutta sovelluskokemusta",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "K├дyt├д t├дt├д vaihtoehtoa suodattaaksesi mediaa synkronoinnin aikana vaihtoehtoisten kriteerien perusteella. Kokeile t├дt├д vain, jos sovelluksessa on ongelmia kaikkien albumien tunnistamisessa.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[KOKEELLINEN] K├дyt├д vaihtoehtoisen laitteen albumin synkronointisuodatinta",
|
||||
"advanced_settings_log_level_title": "Kirjaustaso: {level}",
|
||||
@@ -403,6 +421,9 @@
|
||||
"album_with_link_access": "Anna kenen tahansa n├дhd├д linkin kautta t├дm├дn albumin valokuvat ja henkil├╢t.",
|
||||
"albums": "Albumit",
|
||||
"albums_count": "{count, plural, one {{count, number} albumi} other {{count, number} albumia}}",
|
||||
"albums_default_sort_order": "Albumin oletuslajitteluj├дrjestys",
|
||||
"albums_default_sort_order_description": "Kohteiden ensisijainen lajitteluj├дrjestys uusia albumeja luotaessa.",
|
||||
"albums_feature_description": "Kokoelma kohteita, jotka voidaan jakaa muille k├дytt├дjille.",
|
||||
"all": "Kaikki",
|
||||
"all_albums": "Kaikki albumit",
|
||||
"all_people": "Kaikki henkil├╢t",
|
||||
@@ -423,6 +444,7 @@
|
||||
"app_settings": "Sovellusasetukset",
|
||||
"appears_in": "Esiintyy albumeissa",
|
||||
"archive": "Arkisto",
|
||||
"archive_action_prompt": "{count} lis├дtty arkistoon",
|
||||
"archive_or_unarchive_photo": "Arkistoi kuva tai palauta arkistosta",
|
||||
"archive_page_no_archived_assets": "Arkistoituja kohteita ei l├╢ytynyt",
|
||||
"archive_page_title": "Arkisto ({count})",
|
||||
@@ -460,10 +482,12 @@
|
||||
"assets": "Kohteet",
|
||||
"assets_added_count": "Lis├дtty {count, plural, one {# kohde} other {# kohdetta}}",
|
||||
"assets_added_to_album_count": "Albumiin lis├дtty {count, plural, one {# kohde} other {# kohdetta}}",
|
||||
"assets_added_to_name_count": "Lis├дtty {count, plural, one {# kohde} other {# kohdetta}} {hasName, select, true {<b>{name}</b>} other {uuteen albumiin}}",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Kohdetta} other {Kohdetta}} ei voida lis├дt├д albumiin",
|
||||
"assets_count": "{count, plural, one {# media} other {# mediaa}}",
|
||||
"assets_deleted_permanently": "{count} kohdetta poistettu pysyv├дsti",
|
||||
"assets_deleted_permanently_from_server": "{count} objektia poistettu pysyv├дsti Immich-palvelimelta",
|
||||
"assets_downloaded_failed": "{count, plural, one {Ladattu # tiedosto - {error} tiedosto ep├дonnistui} other {ladattu # tiedostoa - {error} tiedostot ep├дonnistuivat}}",
|
||||
"assets_downloaded_successfully": "{count, plural, one {Ladattu # tiedosto onnistuneesti} other {Ladattu # tiedostoa onnistuneesti}}",
|
||||
"assets_moved_to_trash_count": "Siirretty {count, plural, one {# media} other {# mediaa}} roskakoriin",
|
||||
"assets_permanently_deleted_count": "{count, plural, one {# media} other {# mediaa}} poistettu pysyv├дsti",
|
||||
"assets_removed_count": "{count, plural, one {# media} other {# mediaa}} poistettu",
|
||||
@@ -478,10 +502,12 @@
|
||||
"authorized_devices": "Valtuutetut laitteet",
|
||||
"automatic_endpoint_switching_subtitle": "Yhdist├д paikallisesti nimetyn Wi-Fi-yhteyden kautta, kun se on saatavilla, ja k├дyt├д vaihtoehtoisia yhteyksi├д muualla",
|
||||
"automatic_endpoint_switching_title": "Automaattinen URL-osoitteen vaihto",
|
||||
"autoplay_slideshow": "Toista diaesitys automaattisesti",
|
||||
"back": "Takaisin",
|
||||
"back_close_deselect": "Palaa, sulje tai poista valinnat",
|
||||
"background_location_permission": "Taustasijainnin k├дytt├╢oikeus",
|
||||
"background_location_permission_content": "Jotta sovellus voi vaihtaa verkkoa taustalla toimiessaan, Immichill├д on *aina* oltava p├д├дsy tarkkaan sijaintiin, jotta se voi lukea Wi-Fi-verkon nimen",
|
||||
"backup": "Varmuuskopiointi",
|
||||
"backup_album_selection_page_albums_device": "Laitteen albumit ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Napauta sis├дllytt├д├дksesi, kaksoisnapauta j├дtt├д├дksesi pois",
|
||||
"backup_album_selection_page_assets_scatter": "Kohteet voivat olla hajaantuneina useisiin albumeihin. Albumeita voidaan sis├дllytt├д├д varmuuskopiointiin tai j├дtt├д├д siit├д pois.",
|
||||
@@ -582,7 +608,8 @@
|
||||
"cannot_merge_people": "Ihmisi├д ei voitu yhdist├д├д",
|
||||
"cannot_undo_this_action": "Et voi perua t├дt├д toimintoa!",
|
||||
"cannot_update_the_description": "Kuvausta ei voi p├дivitt├д├д",
|
||||
"cast": "L├дhett├д├д",
|
||||
"cast": "Suoratoisto",
|
||||
"cast_description": "M├д├дrit├д saatavilla olevat suoratoistopalvelut",
|
||||
"change_date": "Vaihda p├дiv├дys",
|
||||
"change_description": "Muuta kuvausta",
|
||||
"change_display_order": "Muuta n├дytt├╢j├дrjestyst├д",
|
||||
@@ -641,6 +668,7 @@
|
||||
"confirm_password": "Vahvista salasana",
|
||||
"confirm_tag_face": "Haluatko merkit├д n├дm├д kasvot nimell├д {name}?",
|
||||
"confirm_tag_face_unnamed": "Merkit├д├дnk├╢ n├дm├д kasvot?",
|
||||
"connected_device": "Yhdistetty laite",
|
||||
"connected_to": "Yhdistetty",
|
||||
"contain": "Mahduta",
|
||||
"context": "Konteksti",
|
||||
@@ -693,6 +721,7 @@
|
||||
"daily_title_text_date": "E, dd MMM",
|
||||
"daily_title_text_date_year": "E, dd MMM, yyyy",
|
||||
"dark": "Tumma",
|
||||
"dark_theme": "Vaihda tumma teema",
|
||||
"date_after": "P├дiv├дm├д├дr├дn j├дlkeen",
|
||||
"date_and_time": "P├дiv├дm├д├дr├д ja aika",
|
||||
"date_before": "P├дiv├д ennen",
|
||||
@@ -708,6 +737,7 @@
|
||||
"default_locale": "Oletuskieliasetus",
|
||||
"default_locale_description": "Muotoile p├дiv├дm├д├дr├дt ja numerot selaimesi kielen mukaan",
|
||||
"delete": "Poista",
|
||||
"delete_action_prompt": "{count} poistettu pysyv├дsti",
|
||||
"delete_album": "Poista albumi",
|
||||
"delete_api_key_prompt": "Haluatko varmasti poistaa t├дm├дn API-avaimen?",
|
||||
"delete_dialog_alert": "N├дm├д kohteet poistetaan pysyv├дsti Immich:st├д ja laitteeltasi",
|
||||
@@ -740,12 +770,13 @@
|
||||
"disallow_edits": "├Дl├д salli muokkauksia",
|
||||
"discord": "Discord",
|
||||
"discover": "Tutki",
|
||||
"discovered_devices": "L├╢ydetyt laitteet",
|
||||
"dismiss_all_errors": "Sivuuta kaikki virheet",
|
||||
"dismiss_error": "Sivuuta virhe",
|
||||
"display_options": "N├дytt├╢asetukset",
|
||||
"display_order": "N├дytt├╢j├дrjestys",
|
||||
"display_original_photos": "N├дyt├д alkuper├дiset kuvat",
|
||||
"display_original_photos_setting_description": "N├дyt├д mieluiten alkuper├дinen kuva peukalokuvan sijasta kun alkuper├дinen aineisto on web-yhteensopiva. T├дm├д voi aiheuttaa kuvien n├дytt├дmisen hitautta.",
|
||||
"display_original_photos_setting_description": "N├дyt├д mieluiten alkuper├дinen kuva esikatselukuvan sijasta, kun alkuper├дinen kuva on web-yhteensopiva. T├дm├д voi aiheuttaa kuvien n├дytt├дmisen hitautta.",
|
||||
"do_not_show_again": "├Дl├д n├дyt├д t├дt├д en├д├д",
|
||||
"documentation": "Dokumentaatio",
|
||||
"done": "Valmis",
|
||||
@@ -787,6 +818,7 @@
|
||||
"edit_key": "Muokkaa avainta",
|
||||
"edit_link": "Muokkaa linkki├д",
|
||||
"edit_location": "Muokkaa sijaintia",
|
||||
"edit_location_action_prompt": "{count} sijaintia muokattu",
|
||||
"edit_location_dialog_title": "Sijainti",
|
||||
"edit_name": "Muokkaa nime├д",
|
||||
"edit_people": "Muokkaa henkil├╢it├д",
|
||||
@@ -972,6 +1004,7 @@
|
||||
"failed_to_load_assets": "Kohteiden lataus ep├дonnistui",
|
||||
"failed_to_load_folder": "Kansion lataaminen ep├дonnistui",
|
||||
"favorite": "Suosikki",
|
||||
"favorite_action_prompt": "{count} lis├дtty suosikkeihin",
|
||||
"favorite_or_unfavorite_photo": "Suosikki- tai ei-suosikkikuva",
|
||||
"favorites": "Suosikit",
|
||||
"favorites_page_no_favorites": "Suosikkikohteita ei l├╢ytynyt",
|
||||
@@ -1086,6 +1119,8 @@
|
||||
"ios_debug_info_last_sync_at": "Viimeisin synkronisointi {dateTime}",
|
||||
"ios_debug_info_no_processes_queued": "Ei taustaprosesseja jonossa",
|
||||
"ios_debug_info_no_sync_yet": "Taustasynkronisointia ei ole suoritettu viel├д",
|
||||
"ios_debug_info_processes_queued": "{count, plural, one {{count} taustaprosessi jonossa} other {{count} taustaprosessia jonossa}}",
|
||||
"ios_debug_info_processing_ran_at": "Prosessi valmistui {dateTime}",
|
||||
"items_count": "{count, plural, one {# kpl} other {# kpl}}",
|
||||
"jobs": "Taustateht├дv├дt",
|
||||
"keep": "S├дilyt├д",
|
||||
@@ -1094,6 +1129,9 @@
|
||||
"kept_this_deleted_others": "T├дm├д kohde s├дilytettiin. {count, plural, one {# asset} other {# assets}} poistettiin",
|
||||
"keyboard_shortcuts": "Pikan├дpp├дimet",
|
||||
"language": "Kieli",
|
||||
"language_no_results_subtitle": "Yrit├д s├д├дt├д├д hakuehtoja",
|
||||
"language_no_results_title": "Kieli├д ei l├╢ydetty",
|
||||
"language_search_hint": "Etsi kieli├д...",
|
||||
"language_setting_description": "Valitse suosimasi kieli",
|
||||
"last_seen": "Viimeksi n├дhty",
|
||||
"latest_version": "Viimeisin versio",
|
||||
@@ -1113,12 +1151,12 @@
|
||||
"light": "Vaalea",
|
||||
"like_deleted": "Tykk├дys poistettu",
|
||||
"link_motion_video": "Linkit├д liikevideo",
|
||||
"link_options": "Linkin asetukset",
|
||||
"link_to_oauth": "Linkki OAuth",
|
||||
"linked_oauth_account": "Linkitetty OAuth-tili",
|
||||
"list": "Lista",
|
||||
"loading": "Ladataan",
|
||||
"loading_search_results_failed": "Hakutulosten lataaminen ep├дonnistui",
|
||||
"local_asset_cast_failed": "Kohdetta, joka ei ole ladattuna palvelimelle, ei voida striimata",
|
||||
"local_network": "L├дhiverkko",
|
||||
"local_network_sheet_info": "Sovellus muodostaa yhteyden palvelimeen t├дm├дn URL-osoitteen kautta, kun k├дytet├д├дn m├д├дritetty├д Wi-Fi-verkkoa",
|
||||
"location_permission": "Sijainnin k├дytt├╢oikeus",
|
||||
@@ -1132,6 +1170,7 @@
|
||||
"locked_folder": "Lukittu kansio",
|
||||
"log_out": "Kirjaudu ulos",
|
||||
"log_out_all_devices": "Kirjaudu ulos kaikilta laitteilta",
|
||||
"logged_in_as": "Kirjautunut k├дytt├дj├дn├д {user}",
|
||||
"logged_out_all_devices": "Kaikki laitteet kirjattu ulos",
|
||||
"logged_out_device": "Laite kirjattu ulos",
|
||||
"login": "Kirjaudu",
|
||||
@@ -1174,7 +1213,6 @@
|
||||
"manage_your_devices": "Hallitse sis├д├дnkirjautuneita laitteitasi",
|
||||
"manage_your_oauth_connection": "Hallitse OAuth-yhteytt├дsi",
|
||||
"map": "Kartta",
|
||||
"map_assets_in_bound": "{count} kuva",
|
||||
"map_assets_in_bounds": "{count} kuvaa",
|
||||
"map_cannot_get_user_location": "K├дytt├дj├дn sijaintia ei voitu m├д├дritt├д├д",
|
||||
"map_location_dialog_yes": "Kyll├д",
|
||||
@@ -1220,13 +1258,14 @@
|
||||
"merged_people_count": "{count, plural, one {# Henkil├╢} other {# henkil├╢├д}} yhdistetty",
|
||||
"minimize": "PIenenn├д",
|
||||
"minute": "Minuutti",
|
||||
"missing": "Puuttuu",
|
||||
"missing": "Puuttuvat",
|
||||
"model": "Malli",
|
||||
"month": "Kuukauden mukaan",
|
||||
"monthly_title_text_date_format": "MMMM y",
|
||||
"more": "Enemm├дn",
|
||||
"move": "Siirr├д",
|
||||
"move_off_locked_folder": "Siirr├д pois lukitusta kansiosta",
|
||||
"move_to_lock_folder_action_prompt": "{count} lis├дtty lukittuun kansioon",
|
||||
"move_to_locked_folder": "Siirr├д lukittuun kansioon",
|
||||
"move_to_locked_folder_confirmation": "N├дm├д kuvat ja videot poistetaan kaikista albumeista, ja ne ovat n├дht├дviss├д vain lukitussa kansiossa",
|
||||
"moved_to_archive": "Siirretty {count, plural, one {# kohde} other {# kohdetta}} arkistoon",
|
||||
@@ -1259,6 +1298,7 @@
|
||||
"no_archived_assets_message": "Arkistoi kuvia ja videoita piilottaaksesi ne kuvat n├дkym├дst├д",
|
||||
"no_assets_message": "NAPAUTA LATAAKSESI ENSIMM├ДISEN KUVASI",
|
||||
"no_assets_to_show": "Ei n├дytett├дvi├д kohteita",
|
||||
"no_cast_devices_found": "Cast-laitteita ei l├╢ytynyt",
|
||||
"no_duplicates_found": "Kaksoiskappaleita ei l├╢ytynyt.",
|
||||
"no_exif_info_available": "EXIF-tietoa ei saatavilla",
|
||||
"no_explore_results_message": "Lataa lis├д├д kuvia tutkiaksesi kokoelmaasi.",
|
||||
@@ -1291,8 +1331,11 @@
|
||||
"oldest_first": "Vanhin ensin",
|
||||
"on_this_device": "Laitteella",
|
||||
"onboarding": "K├дytt├╢├╢notto",
|
||||
"onboarding_privacy_description": "Seuraavat (valinnaiset) ominaisuudet perustuvat ulkoisiin palveluihin, ja ne voidaan poistaa k├дyt├╢st├д milloin tahansa hallinta asetuksista.",
|
||||
"onboarding_locale_description": "Valitse haluamasi kieli. Voit muuttaa kieliasetuksia my├╢hemmin asetuksista.",
|
||||
"onboarding_privacy_description": "Seuraavat (valinnaiset) ominaisuudet perustuvat ulkoisiin palveluihin ja ne voidaan milloin tahansa poistaa k├дyt├╢st├д asetuksista.",
|
||||
"onboarding_server_welcome_description": "M├д├дritell├д├дn seuraavaksi j├дrjestelm├дsi muutamalla yleisell├д asetuksella.",
|
||||
"onboarding_theme_description": "Valitse v├дriteema istunnollesi. Voit muuttaa t├дm├дn my├╢hemmin asetuksistasi.",
|
||||
"onboarding_user_welcome_description": "Aloitetaan!",
|
||||
"onboarding_welcome_user": "Tervetuloa {user}",
|
||||
"online": "Online",
|
||||
"only_favorites": "Vain suosikit",
|
||||
@@ -1392,7 +1435,7 @@
|
||||
"previous_or_next_photo": "Kuva seuraava/edellinen",
|
||||
"previous_or_next_year": "Vuosi seuraava/edellinen",
|
||||
"primary": "Ensisijainen",
|
||||
"privacy": "Yksityisyys",
|
||||
"privacy": "Tietosuoja",
|
||||
"profile": "Profiili",
|
||||
"profile_drawer_app_logs": "Lokit",
|
||||
"profile_drawer_client_out_of_date_major": "Sovelluksen mobiiliversio on vanhentunut. P├дivit├д viimeisimp├д├дn merkitt├дv├д├дn versioon.",
|
||||
@@ -1472,12 +1515,15 @@
|
||||
"remove_custom_date_range": "Poista aikav├дlilt├д",
|
||||
"remove_deleted_assets": "Poista Offline-tiedostot",
|
||||
"remove_from_album": "Poista albumista",
|
||||
"remove_from_album_action_prompt": "{count} poistettu albumista",
|
||||
"remove_from_favorites": "Poista suosikeista",
|
||||
"remove_from_lock_folder_action_prompt": "{count} poistettu lukitusta albumista",
|
||||
"remove_from_locked_folder": "Poista lukitusta kansiosta",
|
||||
"remove_from_locked_folder_confirmation": "Haluatko varmasti siirt├д├д n├дm├д kuvat ja videot pois lukitusta kansiosta? Ne n├дkyv├дt sen j├дlkeen kirjastossasi.",
|
||||
"remove_from_shared_link": "Poista jakolinkist├д",
|
||||
"remove_memory": "Tyhjenn├д muisti",
|
||||
"remove_photo_from_memory": "Poista kuva muistista",
|
||||
"remove_tag": "Poista tunniste",
|
||||
"remove_url": "Poista URL",
|
||||
"remove_user": "Poista k├дytt├дj├д",
|
||||
"removed_api_key": "API-avain {name} poistettu",
|
||||
@@ -1584,6 +1630,7 @@
|
||||
"select_album_cover": "Valitse albmin kansi",
|
||||
"select_all": "Valitse kaikki",
|
||||
"select_all_duplicates": "Valitse kaikki kaksoiskappaleet",
|
||||
"select_all_in": "Valitse kaikki {group}",
|
||||
"select_avatar_color": "Valitse avatarin v├дri",
|
||||
"select_face": "Valitse kasvo",
|
||||
"select_featured_photo": "Valitse esittelykuva",
|
||||
@@ -1604,6 +1651,7 @@
|
||||
"server_info_box_server_url": "Palvelimen URL-osoite",
|
||||
"server_offline": "Palvelin Offline-tilassa",
|
||||
"server_online": "Palvelin Online-tilassa",
|
||||
"server_privacy": "Palvelimen tietosuoja",
|
||||
"server_stats": "Palvelimen tilastot",
|
||||
"server_version": "Palvelimen versio",
|
||||
"set": "Aseta",
|
||||
@@ -1613,6 +1661,7 @@
|
||||
"set_date_of_birth": "Aseta syntym├дaika",
|
||||
"set_profile_picture": "Aseta profiilikuva",
|
||||
"set_slideshow_to_fullscreen": "N├дyt├д diaesitys koko ruudulla",
|
||||
"set_stack_primary_asset": "Aseta p├д├дkohteeksi",
|
||||
"setting_image_viewer_help": "Kuvaa katseltaessa ensin ladataan pikkukuva, sitten keskilaatuinen pikkukuva (jos k├дyt├╢ss├д) ja lopuksi alkuper├дinen (jos k├дyt├╢ss├д).",
|
||||
"setting_image_viewer_original_subtitle": "Ota k├дytt├╢├╢n ladataksesi alkuper├дinen t├дysitarkkuuksinen kuva (suuri!). Poista k├дyt├╢st├д v├дhent├д├дksesi datan k├дytt├╢├д (sek├д verkossa ett├д laitteen v├дlimuistissa).",
|
||||
"setting_image_viewer_original_title": "Lataa alkuper├дinen kuva",
|
||||
@@ -1750,6 +1799,7 @@
|
||||
"start_date": "Alkup├дiv├д",
|
||||
"state": "Maakunta",
|
||||
"status": "Tila",
|
||||
"stop_casting": "Lopeta suoratoisto",
|
||||
"stop_motion_photo": "Pys├дyt├д liikkuva kuva",
|
||||
"stop_photo_sharing": "Lopetetaanko kuvien jakaminen?",
|
||||
"stop_photo_sharing_description": "{partner} ei en├д├д p├д├дse kuviisi.",
|
||||
@@ -1769,7 +1819,7 @@
|
||||
"sync_albums": "Synkronoi albumit",
|
||||
"sync_albums_manual_subtitle": "Synkronoi kaikki ladatut videot ja valokuvat valittuihin varmuuskopioalbumeihin",
|
||||
"sync_upload_album_setting_subtitle": "Luo ja lataa valokuvasi ja videosi valittuihin albumeihin Immichiss├д",
|
||||
"tag": "Lis├д├д tunniste",
|
||||
"tag": "Tunniste",
|
||||
"tag_assets": "Lis├д├д tunnisteita",
|
||||
"tag_created": "Luotu tunniste: {tag}",
|
||||
"tag_feature_description": "Selaa valokuvia ja videoita, jotka on ryhmitelty loogisten tunnisteotsikoiden mukaan",
|
||||
@@ -1810,6 +1860,7 @@
|
||||
"total": "Yhteens├д",
|
||||
"total_usage": "K├дytt├╢ yhteens├д",
|
||||
"trash": "Roskakori",
|
||||
"trash_action_prompt": "{count} siirretty roskakoriin",
|
||||
"trash_all": "Vie kaikki roskakoriin",
|
||||
"trash_count": "Roskakori {count, number}",
|
||||
"trash_delete_asset": "Poista / vie roskakoriin",
|
||||
@@ -1827,8 +1878,11 @@
|
||||
"unable_to_change_pin_code": "PIN-koodin vaihtaminen ep├дonnistui",
|
||||
"unable_to_setup_pin_code": "PIN-koodin m├д├дritt├дminen ep├дonnistui",
|
||||
"unarchive": "Palauta arkistosta",
|
||||
"unarchive_action_prompt": "{count} poistettu arkistosta",
|
||||
"unarchived_count": "{count, plural, other {# poistettu arkistosta}}",
|
||||
"undo": "Kumoa",
|
||||
"unfavorite": "Poista suosikeista",
|
||||
"unfavorite_action_prompt": "{count} poistettu suosikeista",
|
||||
"unhide_person": "Poista henkil├╢ piilosta",
|
||||
"unknown": "Tuntematon",
|
||||
"unknown_country": "Tuntematon maa",
|
||||
@@ -1844,8 +1898,10 @@
|
||||
"unsaved_change": "Tallentamaton muutos",
|
||||
"unselect_all": "Poista valinnat",
|
||||
"unselect_all_duplicates": "Poista kaikkien kaksoiskappaleiden valinta",
|
||||
"unselect_all_in": "Poista kaikki valinnat {group}",
|
||||
"unstack": "Pura pino",
|
||||
"unstacked_assets_count": "Poistettu pinosta {count, plural, one {# kohde} other {# kohdetta}}",
|
||||
"untagged": "Ilman tunnistetta",
|
||||
"up_next": "Seuraavaksi",
|
||||
"updated_at": "P├дivitetty",
|
||||
"updated_password": "Salasana p├дivitetty",
|
||||
@@ -1861,7 +1917,7 @@
|
||||
"upload_status_uploaded": "Ladattu",
|
||||
"upload_success": "Lataus onnistui. P├дivit├д sivu jotta n├дet latauksesi.",
|
||||
"upload_to_immich": "L├дhet├д Immichiin ({count})",
|
||||
"uploading": "L├дhett├д├дn",
|
||||
"uploading": "L├дhett├д├д",
|
||||
"url": "URL",
|
||||
"usage": "K├дytt├╢",
|
||||
"use_biometric": "K├дyt├д biometriikkaa",
|
||||
@@ -1873,6 +1929,7 @@
|
||||
"user_liked": "{user} tykk├дsi {type, select, photo {kuvasta} video {videosta} asset {mediasta} other {t├дst├д}}",
|
||||
"user_pin_code_settings": "PIN-koodi",
|
||||
"user_pin_code_settings_description": "Hallinnoi PIN-koodiasi",
|
||||
"user_privacy": "K├дytt├дj├дn tietosuoja",
|
||||
"user_purchase_settings": "Osta",
|
||||
"user_purchase_settings_description": "Hallitse ostostasi",
|
||||
"user_role_set": "Tee k├дytt├дj├дst├д {user} {role}",
|
||||
|
||||
@@ -14,10 +14,13 @@
|
||||
"add_a_location": "Dagdagan ng lugar",
|
||||
"add_a_name": "Dagdagan ng pangalan",
|
||||
"add_a_title": "Dagdagan ng pamagat",
|
||||
"add_endpoint": "Dagdagan ng dulo",
|
||||
"add_location": "Magdagdag ng lugar",
|
||||
"add_more_users": "Magdagdag ng mga user",
|
||||
"add_partner": "Magdagdag ng kasangga",
|
||||
"add_path": "Magdagdag ng path",
|
||||
"add_photos": "Magdagdag ng litrato",
|
||||
"add_tag": "Magdagdag ng tag",
|
||||
"add_to": "Idagdag saтАж",
|
||||
"add_to_album": "Idagdag sa album",
|
||||
"add_to_album_bottom_sheet_added": "Naidagdag sa {album}",
|
||||
|
||||
113
i18n/fr.json
113
i18n/fr.json
@@ -17,7 +17,7 @@
|
||||
"add_endpoint": "Ajouter une adresse",
|
||||
"add_exclusion_pattern": "Ajouter un sch├йma d'exclusion",
|
||||
"add_import_path": "Ajouter un chemin ├а importer",
|
||||
"add_location": "Ajouter un lieu",
|
||||
"add_location": "Ajouter une localisation",
|
||||
"add_more_users": "Ajouter plus d'utilisateurs",
|
||||
"add_partner": "Ajouter un partenaire",
|
||||
"add_path": "Ajouter un chemin",
|
||||
@@ -166,6 +166,20 @@
|
||||
"metadata_settings_description": "Gestion des param├иtres de m├йtadonn├йes",
|
||||
"migration_job": "Migration",
|
||||
"migration_job_description": "Migration des miniatures pour les m├йdias et les visages vers la derni├иre structure de dossiers",
|
||||
"nightly_tasks_cluster_faces_setting_description": "D├йmarrer la reconnaissance faciale sur les visages nouvellement d├йtect├йs",
|
||||
"nightly_tasks_cluster_new_faces_setting": "Regrouper les nouveaux visages",
|
||||
"nightly_tasks_database_cleanup_setting": "T├вches de nettoyage de la base de donn├йes",
|
||||
"nightly_tasks_database_cleanup_setting_description": "Nettoyage ancien, donn├йes de la base de donn├йes expir├йes",
|
||||
"nightly_tasks_generate_memories_setting": "G├йn├йrer les souvenirs",
|
||||
"nightly_tasks_generate_memories_setting_description": "Cr├йer des souvenirs ├а partir des ├йl├йments",
|
||||
"nightly_tasks_missing_thumbnails_setting": "G├йn├йrer les miniatures manquantes",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "Mettre en file d'attente les ├йl├йments sans miniature pour la cr├йation de miniature",
|
||||
"nightly_tasks_settings": "Param├иtres des t├вches de nuit",
|
||||
"nightly_tasks_settings_description": "G├йrer les t├вches de nuit",
|
||||
"nightly_tasks_start_time_setting": "Heure de d├йmarrage",
|
||||
"nightly_tasks_start_time_setting_description": "Heure ├а laquelle le serveur commence ├а ex├йcuter les t├вches de nuit",
|
||||
"nightly_tasks_sync_quota_usage_setting": "Synchroniser les quota d'usage",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "Mettre ├а jour les quota d'usage de l'utilisateur, en se basant sur l'utilisation actuelle",
|
||||
"no_paths_added": "Aucun chemin n'a ├йt├й ajout├й",
|
||||
"no_pattern_added": "Aucun sch├йma d'exclusion n'a ├йt├й ajout├й",
|
||||
"note_apply_storage_label_previous_assets": "Remarque┬а: pour appliquer l'├йtiquette de stockage ├а des m├йdias pr├йc├йdemment envoy├йs, ex├йcutez",
|
||||
@@ -196,6 +210,8 @@
|
||||
"oauth_mobile_redirect_uri": "URI de redirection mobile",
|
||||
"oauth_mobile_redirect_uri_override": "Remplacer l'URI de redirection mobile",
|
||||
"oauth_mobile_redirect_uri_override_description": "Activer quand le fournisseur d'OAuth ne permet pas un URI mobile, comme ''{callback}''",
|
||||
"oauth_role_claim": "Attribut de r├┤le",
|
||||
"oauth_role_claim_description": "Donne automatiquement un acc├иs en tant qu'admin, en se basant sur la pr├йsence de cet attribut. L'attribut peut avoir soit 'user' (utilisateur) soit 'admin'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "G├йrer les param├иtres de connexion OAuth",
|
||||
"oauth_settings_more_details": "Pour plus de d├йtails sur cette fonctionnalit├й, consultez <link>ce lien</link>.",
|
||||
@@ -244,7 +260,7 @@
|
||||
"storage_template_migration_info": "L'enregistrement des mod├иles va convertir toutes les extensions en minuscule. Les changements de mod├иle ne s'appliqueront qu'aux nouveaux m├йdias. Pour appliquer r├йtroactivement le mod├иle aux m├йdias pr├йc├йdemment envoy├йs, ex├йcutez la t├вche <link>{job}</link>.",
|
||||
"storage_template_migration_job": "T├вche de migration du mod├иle de stockage",
|
||||
"storage_template_more_details": "Pour plus de d├йtails sur cette fonctionnalit├й, reportez-vous au <template-link>Mod├иle de stockage</template-link> et ├а ses <implications-link>implications</implications-link>",
|
||||
"storage_template_onboarding_description_v2": "Quand elle est activ├йe, cette fonctionnalit├й organise automatiquement les fichiers, sur base d'un mod├иle d├йfini par l'utilisateur. Pour plus d'informations, se r├йp├йter ├а la <link>documentation</link>.",
|
||||
"storage_template_onboarding_description_v2": "Quand elle est activ├йe, cette fonctionnalit├й organise automatiquement les fichiers, sur base d'un mod├иle d├йfini par l'utilisateur. Pour plus d'informations, se r├йf├йrer ├а la <link>documentation</link>.",
|
||||
"storage_template_path_length": "Limite approximative de la longueur du cheminтАп: <b>{length, number}</b>/{limit, number}",
|
||||
"storage_template_settings": "Mod├иle de stockage",
|
||||
"storage_template_settings_description": "G├йrer la structure des dossiers et le nom des fichiers du m├йdia envoy├й",
|
||||
@@ -357,10 +373,12 @@
|
||||
"admin_password": "Mot de passe Admin",
|
||||
"administration": "Administration",
|
||||
"advanced": "Avanc├й",
|
||||
"advanced_settings_beta_timeline_subtitle": "Essayer la nouvelle application",
|
||||
"advanced_settings_beta_timeline_title": "Timeline de la b├йta",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "Utilisez cette option pour filtrer les m├йdia durant la synchronisation avec des crit├иres alternatifs. N'utilisez cela que lorsque l'application n'arrive pas ├а d├йtecter tout les albums.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[EXP├ЙRIMENTAL] Utiliser le filtre de synchronisation d'album alternatif",
|
||||
"advanced_settings_log_level_title": "Niveau de journalisation┬а: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "Certains appareils sont tr├иs lents ├а charger des miniatures ├а partir de ressources pr├йsentes sur l'appareil. Activez ce param├иtre pour charger des images externes ├а la place.",
|
||||
"advanced_settings_prefer_remote_subtitle": "Certains appareils sont tr├иs lents ├а charger des miniatures ├а partir de ressources locales. Activez ce param├иtre pour charger des images externes ├а la place.",
|
||||
"advanced_settings_prefer_remote_title": "Pr├йf├йrer les images externes",
|
||||
"advanced_settings_proxy_headers_subtitle": "Ajoutez des en-t├кtes personnalis├йs ├а chaque requ├кte r├йseau",
|
||||
"advanced_settings_proxy_headers_title": "En-t├кtes de proxy",
|
||||
@@ -379,6 +397,7 @@
|
||||
"album_cover_updated": "Couverture de l'album mise ├а jour",
|
||||
"album_delete_confirmation": "├Кtes-vous s├╗r de vouloir supprimer l'album {album}тАп?",
|
||||
"album_delete_confirmation_description": "Si cet album est partag├й, les autres utilisateurs ne pourront plus y acc├йder.",
|
||||
"album_deleted": "Album supprim├й",
|
||||
"album_info_card_backup_album_excluded": "EXCLUS",
|
||||
"album_info_card_backup_album_included": "INCLUS",
|
||||
"album_info_updated": "D├йtails de l'album mis ├а jour",
|
||||
@@ -388,6 +407,7 @@
|
||||
"album_options": "Options de l'album",
|
||||
"album_remove_user": "Supprimer l'utilisateurтАп?",
|
||||
"album_remove_user_confirmation": "├Кtes-vous s├╗r de vouloir supprimer {user}тАп?",
|
||||
"album_search_not_found": "Aucun album trouv├й ne correspond ├а votre recherche",
|
||||
"album_share_no_users": "Il semble que vous ayez partag├й cet album avec tous les utilisateurs ou que vous n'ayez aucun utilisateur avec lequel le partager.",
|
||||
"album_updated": "Album mis ├а jour",
|
||||
"album_updated_setting_description": "Recevoir une notification par courriel lorsqu'un album partag├й a de nouveaux m├йdias",
|
||||
@@ -407,14 +427,15 @@
|
||||
"albums_default_sort_order": "Ordre de tri par d├йfaut des albums",
|
||||
"albums_default_sort_order_description": "Ordre de tri des m├йdias pour les nouveaux albums cr├й├йs.",
|
||||
"albums_feature_description": "Biblioth├иques de m├йdias pouvant ├кtre partag├йs avec d'autres utilisateurs.",
|
||||
"albums_on_device_count": "Album sur l'appareil ({count})",
|
||||
"all": "Tout",
|
||||
"all_albums": "Tous les albums",
|
||||
"all_people": "Toutes les personnes",
|
||||
"all_videos": "Toutes les vid├йos",
|
||||
"allow_dark_mode": "Autoriser le mode sombre",
|
||||
"allow_edits": "Autoriser les modifications",
|
||||
"allow_public_user_to_download": "Permettre aux utilisateurs non connect├йs de t├йl├йcharger",
|
||||
"allow_public_user_to_upload": "Autoriser l'envoi aux utilisateurs non connect├йs",
|
||||
"allow_public_user_to_download": "Permettre le t├йl├йchargement par des utilisateurs non connect├йs",
|
||||
"allow_public_user_to_upload": "Permettre l'envoi par des utilisateurs non connect├йs",
|
||||
"alt_text_qr_code": "Image du code QR",
|
||||
"anti_clockwise": "Sens anti-horaire",
|
||||
"api_key": "Cl├й API",
|
||||
@@ -427,6 +448,7 @@
|
||||
"app_settings": "Param├иtres de l'application",
|
||||
"appears_in": "Appara├оt dans",
|
||||
"archive": "Archiver",
|
||||
"archive_action_prompt": "{count} ajout├й(s) ├а l'archive",
|
||||
"archive_or_unarchive_photo": "Archiver ou d├йsarchiver une photo",
|
||||
"archive_page_no_archived_assets": "Aucun ├йl├йment archiv├й n'a ├йt├й trouv├й",
|
||||
"archive_page_title": "Archiver ({count})",
|
||||
@@ -464,7 +486,6 @@
|
||||
"assets": "M├йdias",
|
||||
"assets_added_count": "{count, plural, one {# m├йdia ajout├й} other {# m├йdias ajout├йs}}",
|
||||
"assets_added_to_album_count": "{count, plural, one {# m├йdia ajout├й} other {# m├йdias ajout├йs}} ├а l'album",
|
||||
"assets_added_to_name_count": "{count, plural, one {# m├йdia ajout├й} other {# m├йdias ajout├йs}} ├а {hasName, select, true {<b>{name}</b>} other {new album}}",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Le m├йdia ne peut pas ├кtre ajout├й} other {Les m├йdias ne peuvent pas ├кtre ajout├йs}} ├а l'album",
|
||||
"assets_count": "{count, plural, one {# m├йdia} other {# m├йdias}}",
|
||||
"assets_deleted_permanently": "{count} m├йdia(s) supprim├й(s) d├йfinitivement",
|
||||
@@ -490,6 +511,7 @@
|
||||
"back_close_deselect": "Retournez en arri├иre, fermez ou d├йs├йlectionnez",
|
||||
"background_location_permission": "Permission de localisation en arri├иre plan",
|
||||
"background_location_permission_content": "Afin de pouvoir changer d'adresse en arri├иre plan, Immich doit avoir *en permanence* acc├иs ├а la localisation pr├йcise, afin d'acc├йder au le nom du r├йseau Wi-Fi utilis├й",
|
||||
"backup": "Sauvegarde",
|
||||
"backup_album_selection_page_albums_device": "Albums sur l'appareil ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Tapez pour inclure, tapez deux fois pour exclure",
|
||||
"backup_album_selection_page_assets_scatter": "Les ├йl├йments peuvent ├кtre r├йpartis sur plusieurs albums. De ce fait, les albums peuvent ├кtre inclus ou exclus pendant le processus de sauvegarde.",
|
||||
@@ -542,7 +564,7 @@
|
||||
"backup_controller_page_to_backup": "Albums ├а sauvegarder",
|
||||
"backup_controller_page_total_sub": "Toutes les photos et vid├йos uniques des albums s├йlectionn├йs",
|
||||
"backup_controller_page_turn_off": "D├йsactiver la sauvegarde",
|
||||
"backup_controller_page_turn_on": "Activer la sauvegarde",
|
||||
"backup_controller_page_turn_on": "Activer la sauvegarde au premier plan",
|
||||
"backup_controller_page_uploading_file_info": "Envoi des informations du fichier",
|
||||
"backup_err_only_album": "Impossible de retirer le seul album",
|
||||
"backup_info_card_assets": "├йl├йments",
|
||||
@@ -553,6 +575,8 @@
|
||||
"backup_options_page_title": "Options de sauvegarde",
|
||||
"backup_setting_subtitle": "Ajuster les param├иtres d'envoi au premier et en arri├иre-plan",
|
||||
"backward": "Arri├иre",
|
||||
"beta_sync": "Statut de la synchronisation b├йta",
|
||||
"beta_sync_subtitle": "G├йrer le nouveau syst├иme de synchronisation",
|
||||
"biometric_auth_enabled": "Authentification biom├йtrique activ├йe",
|
||||
"biometric_locked_out": "L'authentification biom├йtrique est verrouill├й",
|
||||
"biometric_no_options": "Aucune option biom├йtrique disponible",
|
||||
@@ -570,7 +594,7 @@
|
||||
"cache_settings_clear_cache_button": "Effacer le cache",
|
||||
"cache_settings_clear_cache_button_title": "Efface le cache de l'application. Cela aura un impact significatif sur les performances de l'application jusqu'├а ce que le cache soit reconstruit.",
|
||||
"cache_settings_duplicated_assets_clear_button": "EFFACER",
|
||||
"cache_settings_duplicated_assets_subtitle": "Photos et vid├йos qui sont exclues par l'application",
|
||||
"cache_settings_duplicated_assets_subtitle": "Photos et vid├йos qui sont ignor├йes par l'application",
|
||||
"cache_settings_duplicated_assets_title": "M├йdias dupliqu├йs ({count})",
|
||||
"cache_settings_statistics_album": "Miniatures de la biblioth├иque",
|
||||
"cache_settings_statistics_full": "Images compl├иtes",
|
||||
@@ -587,6 +611,7 @@
|
||||
"cancel": "Annuler",
|
||||
"cancel_search": "Annuler la recherche",
|
||||
"canceled": "Annul├й",
|
||||
"canceling": "Annulation",
|
||||
"cannot_merge_people": "Impossible de fusionner les personnes",
|
||||
"cannot_undo_this_action": "Vous ne pouvez pas annuler cette actionтАп!",
|
||||
"cannot_update_the_description": "Impossible de mettre ├а jour la description",
|
||||
@@ -700,10 +725,11 @@
|
||||
"current_server_address": "Adresse actuelle du serveur",
|
||||
"custom_locale": "Param├иtres r├йgionaux personnalis├йs",
|
||||
"custom_locale_description": "Afficher les dates et nombres en fonction des param├иtres r├йgionaux",
|
||||
"custom_url": "URL personnalis├йe",
|
||||
"daily_title_text_date": "E, dd MMM",
|
||||
"daily_title_text_date_year": "E, dd MMM, yyyy",
|
||||
"dark": "Sombre",
|
||||
"darkTheme": "Basculer sur le th├иme sombre",
|
||||
"dark_theme": "Activer le th├иme sombre",
|
||||
"date_after": "Date apr├иs",
|
||||
"date_and_time": "Date et heure",
|
||||
"date_before": "Date avant",
|
||||
@@ -719,6 +745,8 @@
|
||||
"default_locale": "R├йgion par d├йfaut",
|
||||
"default_locale_description": "Afficher les dates et nombres en fonction des param├иtres de votre navigateur",
|
||||
"delete": "Supprimer",
|
||||
"delete_action_confirmation_message": "├Кtes-vous s├╗r de vouloir supprimer ce m├йdiaтАп? Cela d├йplacera le m├йdia dans la poubelle du serveur et vous demandera si vous voulez le supprimer localement",
|
||||
"delete_action_prompt": "{count} supprim├й(s)",
|
||||
"delete_album": "Supprimer l'album",
|
||||
"delete_api_key_prompt": "Voulez-vous vraiment supprimer cette cl├й APIтАп?",
|
||||
"delete_dialog_alert": "Ces m├йdias seront d├йfinitivement supprim├йs de Immich et de votre appareil",
|
||||
@@ -732,9 +760,12 @@
|
||||
"delete_key": "Supprimer la cl├й",
|
||||
"delete_library": "Supprimer la biblioth├иque",
|
||||
"delete_link": "Supprimer le lien",
|
||||
"delete_local_action_prompt": "{count} supprim├й(s) localement",
|
||||
"delete_local_dialog_ok_backed_up_only": "Suppression des donn├йes sauvegard├йes uniquement",
|
||||
"delete_local_dialog_ok_force": "Supprimer tout de m├кme",
|
||||
"delete_others": "Supprimer les autres",
|
||||
"delete_permanently": "Supprimer d├йfinitivement",
|
||||
"delete_permanently_action_prompt": "{count} supprim├й(s) d├йfinitivement",
|
||||
"delete_shared_link": "Supprimer le lien partag├й",
|
||||
"delete_shared_link_dialog_title": "Supprimer le lien partag├й",
|
||||
"delete_tag": "Supprimer l'├йtiquette",
|
||||
@@ -745,6 +776,7 @@
|
||||
"description": "Description",
|
||||
"description_input_hint_text": "Ajouter une description...",
|
||||
"description_input_submit_error": "Erreur de mise ├а jour de la description, v├йrifier le journal pour plus de d├йtails",
|
||||
"deselect_all": "Tout d├йs├йlectionner",
|
||||
"details": "D├йtails",
|
||||
"direction": "Ordre",
|
||||
"disabled": "D├йsactiv├й",
|
||||
@@ -762,6 +794,7 @@
|
||||
"documentation": "Documentation",
|
||||
"done": "Termin├й",
|
||||
"download": "T├йl├йcharger",
|
||||
"download_action_prompt": "T├йl├йchargement de {count} ├йl├йments",
|
||||
"download_canceled": "T├йl├йchargement annul├й",
|
||||
"download_complete": "T├йl├йchargement termin├й",
|
||||
"download_enqueue": "T├йl├йchargement en attente",
|
||||
@@ -799,6 +832,7 @@
|
||||
"edit_key": "Modifier la cl├й",
|
||||
"edit_link": "Modifier le lien",
|
||||
"edit_location": "Modifier la localisation",
|
||||
"edit_location_action_prompt": "{count} localisation(s) mise(s) ├а jour",
|
||||
"edit_location_dialog_title": "Localisation",
|
||||
"edit_name": "Modifier le nom",
|
||||
"edit_people": "Modifier les personnes",
|
||||
@@ -817,10 +851,11 @@
|
||||
"empty_trash": "Vider la corbeille",
|
||||
"empty_trash_confirmation": "├Кtes-vous s├╗r de vouloir vider la corbeilleтАп? Cela supprimera d├йfinitivement de Immich tous les m├йdias qu'elle contient.\nVous ne pouvez pas annuler cette actionтАп!",
|
||||
"enable": "Active",
|
||||
"enable_backup": "Activer la sauvegarde",
|
||||
"enable_biometric_auth_description": "Entrez votre code PIN pour activer l'authentification biom├йtrique",
|
||||
"enabled": "Activ├й",
|
||||
"end_date": "Date de fin",
|
||||
"enqueued": "Mis en file",
|
||||
"enqueued": "Mis en file d'attente",
|
||||
"enter_wifi_name": "Entrez le nom du r├йseau wifi",
|
||||
"enter_your_pin_code": "Entrez votre code PIN",
|
||||
"enter_your_pin_code_subtitle": "Entrez votre code PIN pour acc├йder au dossier verrouill├й",
|
||||
@@ -973,6 +1008,8 @@
|
||||
"explorer": "Explorateur",
|
||||
"export": "Exporter",
|
||||
"export_as_json": "Exporter en JSON",
|
||||
"export_database": "Exporter la base de donn├йes",
|
||||
"export_database_description": "Exporter la base de donn├йes SQLite",
|
||||
"extension": "Extension",
|
||||
"external": "Externe",
|
||||
"external_libraries": "Biblioth├иques externes",
|
||||
@@ -984,6 +1021,7 @@
|
||||
"failed_to_load_assets": "├Йchec du chargement des ressources",
|
||||
"failed_to_load_folder": "├Йchec de chargement du dossier",
|
||||
"favorite": "Favori",
|
||||
"favorite_action_prompt": "{count} ajout├й(s) aux Favoris",
|
||||
"favorite_or_unfavorite_photo": "Ajouter ou supprimer des favoris",
|
||||
"favorites": "Favoris",
|
||||
"favorites_page_no_favorites": "Aucun ├йl├йment favori n'a ├йt├й trouv├й",
|
||||
@@ -1023,6 +1061,9 @@
|
||||
"haptic_feedback_switch": "Activer le retour haptique",
|
||||
"haptic_feedback_title": "Retour haptique",
|
||||
"has_quota": "Quota",
|
||||
"hash_asset": "Hasher le m├йdia",
|
||||
"hashed_assets": "M├йdia hash├йs",
|
||||
"hashing": "Hash",
|
||||
"header_settings_add_header_tip": "Ajouter un en-t├кte",
|
||||
"header_settings_field_validator_msg": "Cette valeur ne peut pas ├кtre vide",
|
||||
"header_settings_header_name_input": "Nom de l'en-t├кte",
|
||||
@@ -1036,7 +1077,7 @@
|
||||
"hide_password": "Masquer le mot de passe",
|
||||
"hide_person": "Masquer la personne",
|
||||
"hide_unnamed_people": "Cacher les personnes non nomm├йes",
|
||||
"home_page_add_to_album_conflicts": "{added} ├йl├йments ajout├йs ├а l'album {album}. Les ├йl├йments {failed} sont d├йj├а dans l'album.",
|
||||
"home_page_add_to_album_conflicts": "{added} ├йl├йments ajout├йs ├а l'album {album}. {failed} ├йl├йments sont d├йj├а dans l'album.",
|
||||
"home_page_add_to_album_err_local": "Impossible d'ajouter des m├йdias locaux aux albums, ils sont ignor├йs",
|
||||
"home_page_add_to_album_success": "{added} ├йl├йments ajout├йs ├а l'album {album}.",
|
||||
"home_page_album_err_partner": "Impossible d'ajouter des m├йdias d'un partenaire ├а un album, ils sont ignor├йs",
|
||||
@@ -1055,6 +1096,7 @@
|
||||
"host": "H├┤te",
|
||||
"hour": "Heure",
|
||||
"id": "ID",
|
||||
"idle": "Inactif",
|
||||
"ignore_icloud_photos": "Ignorer les photos iCloud",
|
||||
"ignore_icloud_photos_description": "Les photos stock├йes sur iCloud ne seront pas envoy├йes sur le serveur Immich",
|
||||
"image": "Image",
|
||||
@@ -1112,6 +1154,7 @@
|
||||
"language_no_results_title": "Aucune langue trouv├йe",
|
||||
"language_search_hint": "Recherche de langues...",
|
||||
"language_setting_description": "S├йlectionnez votre langue pr├йf├йr├йe",
|
||||
"large_files": "Fichiers volumineux",
|
||||
"last_seen": "Derni├иrement utilis├й",
|
||||
"latest_version": "Derni├иre version",
|
||||
"latitude": "Latitude",
|
||||
@@ -1127,16 +1170,18 @@
|
||||
"library_page_sort_created": "Cr├йations les plus r├йcentes",
|
||||
"library_page_sort_last_modified": "Derni├иre modification",
|
||||
"library_page_sort_title": "Titre de l'album",
|
||||
"licenses": "Licences",
|
||||
"light": "Clair",
|
||||
"like_deleted": "R├йaction ┬л┬аj'aime┬а┬╗ supprim├йe",
|
||||
"link_motion_video": "Lier la photo anim├йe",
|
||||
"link_options": "Options de lien",
|
||||
"link_to_oauth": "Lien au service OAuth",
|
||||
"linked_oauth_account": "Compte OAuth rattach├й",
|
||||
"list": "Liste",
|
||||
"loading": "Chargement",
|
||||
"loading_search_results_failed": "Chargement des r├йsultats ├йchou├й",
|
||||
"local": "Local",
|
||||
"local_asset_cast_failed": "Impossible de caster un m├йdia qui n'a pas envoy├й vers le serveur",
|
||||
"local_assets": "M├йdia locaux",
|
||||
"local_network": "R├йseau local",
|
||||
"local_network_sheet_info": "L'application va se connecter au serveur via cette URL quand l'appareil est connect├й ├а ce r├йseau Wi-Fi",
|
||||
"location_permission": "Autorisation de localisation",
|
||||
@@ -1193,8 +1238,7 @@
|
||||
"manage_your_devices": "G├йrer vos appareils",
|
||||
"manage_your_oauth_connection": "G├йrer votre connexion OAuth",
|
||||
"map": "Carte",
|
||||
"map_assets_in_bound": "{count} photo",
|
||||
"map_assets_in_bounds": "{count} photos",
|
||||
"map_assets_in_bounds": "{count, plural, one {# photo} other {# photos}}",
|
||||
"map_cannot_get_user_location": "Impossible d'obtenir la localisation de l'utilisateur",
|
||||
"map_location_dialog_yes": "Oui",
|
||||
"map_location_picker_page_use_location": "Utiliser ma position",
|
||||
@@ -1246,6 +1290,7 @@
|
||||
"more": "Plus",
|
||||
"move": "D├йplacer",
|
||||
"move_off_locked_folder": "D├йplacer en dehors du dossier verrouill├й",
|
||||
"move_to_lock_folder_action_prompt": "{count} ajout├й(s) au dossier verrouill├й",
|
||||
"move_to_locked_folder": "D├йplacer dans le dossier verrouill├й",
|
||||
"move_to_locked_folder_confirmation": "Ces photos et vid├йos seront retir├йs de tout les albums et ne seront visibles que dans le dossier verrouill├й",
|
||||
"moved_to_archive": "{count, plural, one {# ├йl├йment d├йplac├й} other {# ├йl├йments d├йplac├йs}} vers les archives",
|
||||
@@ -1292,6 +1337,7 @@
|
||||
"no_results": "Aucun r├йsultat",
|
||||
"no_results_description": "Essayez un synonyme ou un mot-cl├й plus g├йn├йral",
|
||||
"no_shared_albums_message": "Cr├йer un album pour partager vos photos et vid├йos avec les personnes de votre r├йseau",
|
||||
"no_uploads_in_progress": "Pas d'envoi en cours",
|
||||
"not_in_any_album": "Dans aucun album",
|
||||
"not_selected": "Non s├йlectionn├й",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "Note┬а: Pour appliquer l'├йtiquette de stockage aux m├йdias pr├йc├йdemment envoy├йs, ex├йcutez",
|
||||
@@ -1329,6 +1375,7 @@
|
||||
"original": "original",
|
||||
"other": "Autre",
|
||||
"other_devices": "Autres appareils",
|
||||
"other_entities": "Autres entit├йs",
|
||||
"other_variables": "Autres variables",
|
||||
"owned": "Poss├йd├й",
|
||||
"owner": "Propri├йtaire",
|
||||
@@ -1390,7 +1437,7 @@
|
||||
"photos_and_videos": "Photos et vid├йos",
|
||||
"photos_count": "{count, plural, one {{count, number} Photo} other {{count, number} Photos}}",
|
||||
"photos_from_previous_years": "Photos des ann├йes pr├йc├йdentes",
|
||||
"pick_a_location": "Choisissez un lieu",
|
||||
"pick_a_location": "Choisissez une localisation",
|
||||
"pin_code_changed_successfully": "Code PIN chang├й avec succ├иs",
|
||||
"pin_code_reset_successfully": "R├йinitialisation du code PIN r├йussie",
|
||||
"pin_code_setup_successfully": "D├йfinition du code PIN r├йussie",
|
||||
@@ -1460,6 +1507,7 @@
|
||||
"purchase_server_description_2": "Statut de contributeur",
|
||||
"purchase_server_title": "Serveur",
|
||||
"purchase_settings_server_activated": "La cl├й du produit pour le Serveur est g├йr├йe par l'administrateur",
|
||||
"queue_status": "{count}/{total} en file d'attente",
|
||||
"rating": "├Йtoile d'├йvaluation",
|
||||
"rating_clear": "Effacer l'├йvaluation",
|
||||
"rating_count": "{count, plural, one {# ├йtoile} other {# ├йtoiles}}",
|
||||
@@ -1488,6 +1536,8 @@
|
||||
"refreshing_faces": "Actualisation des visages",
|
||||
"refreshing_metadata": "Actualisation des m├йtadonn├йes",
|
||||
"regenerating_thumbnails": "Reg├йn├йration des miniatures",
|
||||
"remote": "├А distance",
|
||||
"remote_assets": "M├йdia ├а distance",
|
||||
"remove": "Supprimer",
|
||||
"remove_assets_album_confirmation": "├Кtes-vous s├╗r de vouloir supprimer {count, plural, one {# m├йdia} other {# m├йdias}} de l'albumтАп?",
|
||||
"remove_assets_shared_link_confirmation": "├Кtes-vous s├╗r de vouloir supprimer {count, plural, one {# m├йdia} other {# m├йdias}} de ce lien partag├йтАп?",
|
||||
@@ -1495,7 +1545,9 @@
|
||||
"remove_custom_date_range": "Supprimer la plage de date personnalis├йe",
|
||||
"remove_deleted_assets": "Supprimer les fichiers hors ligne",
|
||||
"remove_from_album": "Supprimer de l'album",
|
||||
"remove_from_album_action_prompt": "{count} supprim├й(s) de l'album",
|
||||
"remove_from_favorites": "Supprimer des favoris",
|
||||
"remove_from_lock_folder_action_prompt": "{count} supprim├й(s) du dossier verrouill├й",
|
||||
"remove_from_locked_folder": "Supprimer du dossier verrouill├й",
|
||||
"remove_from_locked_folder_confirmation": "├Кtes vous s├╗r de vouloir d├йplacer ces photos et vid├йos en dehors du dossier verrouill├йтАп? Elles seront visibles dans votre galerie.",
|
||||
"remove_from_shared_link": "Supprimer des liens partag├йs",
|
||||
@@ -1510,7 +1562,7 @@
|
||||
"removed_from_favorites_count": "{count, plural, one {# supprim├й} other {# supprim├йs}} des favoris",
|
||||
"removed_memory": "Souvenir supprim├й",
|
||||
"removed_photo_from_memory": "Photo supprim├йe du souvenir",
|
||||
"removed_tagged_assets": "Tag supprim├й de {count, plural, one {# m├йdia} other {# m├йdias}}",
|
||||
"removed_tagged_assets": "├Йtiquette supprim├йe de {count, plural, one {# m├йdia} other {# m├йdias}}",
|
||||
"rename": "Renommer",
|
||||
"repair": "R├йparer",
|
||||
"repair_no_results_message": "Les fichiers non import├йs ou absents s'afficheront ici",
|
||||
@@ -1523,19 +1575,25 @@
|
||||
"reset_password": "R├йinitialiser le mot de passe",
|
||||
"reset_people_visibility": "R├йinitialiser la visibilit├й des personnes",
|
||||
"reset_pin_code": "R├йinitialiser le code PIN",
|
||||
"reset_sqlite": "R├йinitialiser la base de donn├йes SQLite",
|
||||
"reset_sqlite_confirmation": "├Кtes-vous certain de vouloir r├йinitialiser la base de donn├йes SQLiteтАп? Vous devrez vous d├йconnecter puis vous reconnecter ├а nouveau pour resynchroniser les donn├йes",
|
||||
"reset_sqlite_success": "La base de donn├йes SQLite ├а ├йt├й r├йinitialis├й avec succ├иs",
|
||||
"reset_to_default": "R├йtablir les valeurs par d├йfaut",
|
||||
"resolve_duplicates": "R├йsoudre les doublons",
|
||||
"resolved_all_duplicates": "R├йsolution de tous les doublons",
|
||||
"restore": "Restaurer",
|
||||
"restore_all": "Tout restaurer",
|
||||
"restore_trash_action_prompt": "{count} restaur├й de la corbeille",
|
||||
"restore_user": "Restaurer l'utilisateur",
|
||||
"restored_asset": "M├йdia restaur├й",
|
||||
"resume": "Reprendre",
|
||||
"retry_upload": "R├йessayer l'envoi",
|
||||
"review_duplicates": "Consulter les doublons",
|
||||
"review_large_files": "Consulter les fichiers volumineux",
|
||||
"role": "R├┤le",
|
||||
"role_editor": "├Йditeur",
|
||||
"role_viewer": "Visionneuse",
|
||||
"running": "En cours",
|
||||
"save": "Sauvegarder",
|
||||
"save_to_gallery": "Enregistrer",
|
||||
"saved_api_key": "Cl├й API sauvegard├йe",
|
||||
@@ -1566,8 +1624,8 @@
|
||||
"search_filter_display_option_not_in_album": "Pas dans un album",
|
||||
"search_filter_display_options": "Options d'affichage",
|
||||
"search_filter_filename": "Recherche par nom de fichier",
|
||||
"search_filter_location": "Lieu",
|
||||
"search_filter_location_title": "S├йlectionner un lieu",
|
||||
"search_filter_location": "Localisation",
|
||||
"search_filter_location_title": "S├йlectionner une localisation",
|
||||
"search_filter_media_type": "Type de m├йdia",
|
||||
"search_filter_media_type_title": "S├йlectionner type de m├йdia",
|
||||
"search_filter_people_title": "S├йlectionner une personne",
|
||||
@@ -1667,6 +1725,7 @@
|
||||
"settings_saved": "Param├иtres sauvegard├йs",
|
||||
"setup_pin_code": "D├йfinir un code PIN",
|
||||
"share": "Partager",
|
||||
"share_action_prompt": "{count} ├йl├йments partag├йs",
|
||||
"share_add_photos": "Ajouter des photos",
|
||||
"share_assets_selected": "{count} s├йlectionn├й(s)",
|
||||
"share_dialog_preparing": "Pr├йparation...",
|
||||
@@ -1688,6 +1747,7 @@
|
||||
"shared_link_clipboard_copied_massage": "Copi├й dans le presse-papier",
|
||||
"shared_link_clipboard_text": "Lien┬а: {link}\nMot de passe┬а: {password}",
|
||||
"shared_link_create_error": "Erreur pendant la cr├йation du lien partag├й",
|
||||
"shared_link_custom_url_description": "Acc├йder ├а ce lien partag├й avec une URL personnalis├йe",
|
||||
"shared_link_edit_description_hint": "Saisir la description du partage",
|
||||
"shared_link_edit_expire_after_option_day": "1 jour",
|
||||
"shared_link_edit_expire_after_option_days": "{count} jours",
|
||||
@@ -1713,6 +1773,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "G├йrer les liens partag├йs",
|
||||
"shared_link_options": "Options de lien partag├й",
|
||||
"shared_link_password_description": "Demander un mot de passe pour acc├йder ├а ce lien partag├й",
|
||||
"shared_links": "Liens partag├йs",
|
||||
"shared_links_description": "Partager les photos et vid├йos via un lien",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# photos et vid├йos partag├йes.}}",
|
||||
@@ -1768,6 +1829,7 @@
|
||||
"sort_title": "Titre",
|
||||
"source": "Source",
|
||||
"stack": "Empiler",
|
||||
"stack_action_prompt": "{count} group├й(s)",
|
||||
"stack_duplicates": "Empiler les doublons",
|
||||
"stack_select_one_photo": "S├йlectionnez une photo principale pour la pile",
|
||||
"stack_selected_photos": "Empiler les photos s├йlectionn├йes",
|
||||
@@ -1787,6 +1849,7 @@
|
||||
"storage_quota": "Quota de stockage",
|
||||
"storage_usage": "{used} sur {available} utilis├й",
|
||||
"submit": "Soumettre",
|
||||
"success": "R├йussi",
|
||||
"suggestions": "Suggestions",
|
||||
"sunrise_on_the_beach": "Lever de soleil sur la plage",
|
||||
"support": "Soutenir",
|
||||
@@ -1796,6 +1859,8 @@
|
||||
"sync": "Synchroniser",
|
||||
"sync_albums": "Synchroniser dans des albums",
|
||||
"sync_albums_manual_subtitle": "Synchroniser toutes les vid├йos et photos envoy├йes dans les albums s├йlectionn├йs",
|
||||
"sync_local": "Synchronisation locale",
|
||||
"sync_remote": "Synchronisation ├а distance",
|
||||
"sync_upload_album_setting_subtitle": "Cr├йez et envoyez vos photos et vid├йos dans les albums s├йlectionn├йs sur Immich",
|
||||
"tag": "├Йtiquette",
|
||||
"tag_assets": "├Йtiqueter les m├йdias",
|
||||
@@ -1806,6 +1871,7 @@
|
||||
"tag_updated": "├Йtiquette mise ├а jourтАп: {tag}",
|
||||
"tagged_assets": "├Йtiquette ajout├йe ├а {count, plural, one {# m├йdia} other {# m├йdias}}",
|
||||
"tags": "├Йtiquettes",
|
||||
"tap_to_run_job": "Appuyez pour d├йmarrer la t├вche",
|
||||
"template": "Mod├иle",
|
||||
"theme": "Th├иme",
|
||||
"theme_selection": "S├йlection du th├иme",
|
||||
@@ -1838,6 +1904,7 @@
|
||||
"total": "Total",
|
||||
"total_usage": "Utilisation globale",
|
||||
"trash": "Corbeille",
|
||||
"trash_action_prompt": "{count} mis ├а la corbeille",
|
||||
"trash_all": "Tout supprimer",
|
||||
"trash_count": "Corbeille {count, number}",
|
||||
"trash_delete_asset": "Mettre ├а la corbeille/Supprimer un m├йdia",
|
||||
@@ -1855,9 +1922,11 @@
|
||||
"unable_to_change_pin_code": "Impossible de changer le code PIN",
|
||||
"unable_to_setup_pin_code": "Impossible de d├йfinir le code PIN",
|
||||
"unarchive": "D├йsarchiver",
|
||||
"unarchive_action_prompt": "{count} supprim├й(s) de l'archive",
|
||||
"unarchived_count": "{count, plural, one {# supprim├й} other {# supprim├йs}} de l'archive",
|
||||
"undo": "Annuler",
|
||||
"unfavorite": "Enlever des favoris",
|
||||
"unfavorite_action_prompt": "{count} supprim├й(s) des favoris",
|
||||
"unhide_person": "Afficher la personne",
|
||||
"unknown": "Inconnu",
|
||||
"unknown_country": "Pays non connu",
|
||||
@@ -1875,15 +1944,20 @@
|
||||
"unselect_all_duplicates": "D├йs├йlectionner tous les doublons",
|
||||
"unselect_all_in": "Tout d├йs├йlectionner dans {group}",
|
||||
"unstack": "D├йsempiler",
|
||||
"unstack_action_prompt": "{count} non group├йs",
|
||||
"unstacked_assets_count": "{count, plural, one {# m├йdia d├йpil├й} other {# m├йdias d├йpil├йs}}",
|
||||
"untagged": "├Йtiquette supprim├йe",
|
||||
"up_next": "Suite",
|
||||
"updated_at": "Mis ├а jour ├а",
|
||||
"updated_password": "Mot de passe mis ├а jour",
|
||||
"upload": "Envoyer",
|
||||
"upload_action_prompt": "{count} en attente d'envoi",
|
||||
"upload_concurrency": "Envois simultan├йs",
|
||||
"upload_details": "D├йtails des envois",
|
||||
"upload_dialog_info": "Voulez-vous sauvegarder la s├йlection vers le serveurтАп?",
|
||||
"upload_dialog_title": "Envoyer le m├йdia",
|
||||
"upload_errors": "L'envoi s'est compl├йt├й avec {count, plural, one {# erreur} other {# erreurs}}. Rafra├оchissez la page pour voir les nouveaux m├йdias envoy├йs.",
|
||||
"upload_finished": "Envoi fini",
|
||||
"upload_progress": "{remaining, number} restant(s) - {processed, number} trait├й(s)/{total, number}",
|
||||
"upload_skipped_duplicates": "{count, plural, one {# doublon ignor├й} other {# doublons ignor├йs}}",
|
||||
"upload_status_duplicates": "Doublons",
|
||||
@@ -1892,6 +1966,7 @@
|
||||
"upload_success": "Envoi r├йussi. Rafra├оchissez la page pour voir les nouveaux m├йdias envoy├йs.",
|
||||
"upload_to_immich": "Envoyer vers Immich ({count})",
|
||||
"uploading": "Envoi",
|
||||
"uploading_media": "Envoi du m├йdia",
|
||||
"url": "URL",
|
||||
"usage": "Utilisation",
|
||||
"use_biometric": "Utiliser l'authentification biom├йtrique",
|
||||
@@ -1912,6 +1987,7 @@
|
||||
"user_usage_stats_description": "Voir les statistiques d'utilisation du compte",
|
||||
"username": "Nom d'utilisateur",
|
||||
"users": "Utilisateurs",
|
||||
"users_added_to_album_count": "{count, plural, one {# utilisateur ajout├й} other {# utilisateurs ajout├йs}} ├а l'album",
|
||||
"utilities": "Utilitaires",
|
||||
"validate": "Valider",
|
||||
"validate_endpoint_error": "Merci d'entrer un lien valide",
|
||||
@@ -1930,6 +2006,7 @@
|
||||
"view_album": "Afficher l'album",
|
||||
"view_all": "Voir tout",
|
||||
"view_all_users": "Voir tous les utilisateurs",
|
||||
"view_details": "Voir les d├йtails",
|
||||
"view_in_timeline": "Voir dans la vue chronologique",
|
||||
"view_link": "Voir le lien",
|
||||
"view_links": "Voir les liens",
|
||||
|
||||
@@ -455,7 +455,6 @@
|
||||
"assets": "Activos",
|
||||
"assets_added_count": "Engadido {count, plural, one {# activo} other {# activos}}",
|
||||
"assets_added_to_album_count": "Engadido {count, plural, one {# activo} other {# activos}} ao ├бlbum",
|
||||
"assets_added_to_name_count": "Engadido {count, plural, one {# activo} other {# activos}} a {hasName, select, true {<b>{name}</b>} other {novo ├бlbum}}",
|
||||
"assets_count": "{count, plural, one {# activo} other {# activos}}",
|
||||
"assets_deleted_permanently": "{count} activo(s) eliminado(s) permanentemente",
|
||||
"assets_deleted_permanently_from_server": "{count} activo(s) eliminado(s) permanentemente do servidor Immich",
|
||||
@@ -477,6 +476,7 @@
|
||||
"back_close_deselect": "Atr├бs, pechar ou deseleccionar",
|
||||
"background_location_permission": "Permiso de ubicaci├│n en segundo plano",
|
||||
"background_location_permission_content": "Para cambiar de rede cando se executa en segundo plano, Immich debe ter *sempre* acceso ├б ubicaci├│n precisa para que a aplicaci├│n poida ler o nome da rede wifi",
|
||||
"backup": "Copia de Seguridade",
|
||||
"backup_album_selection_page_albums_device": "├Бlbums no dispositivo ({count})",
|
||||
"backup_album_selection_page_albums_tap": "Tocar para inclu├нr, dobre toque para exclu├нr",
|
||||
"backup_album_selection_page_assets_scatter": "Os activos poden dispersarse por varios ├бlbums. Polo tanto, os ├бlbums poden inclu├нrse ou exclu├нrse durante o proceso de copia de seguridade.",
|
||||
@@ -1071,7 +1071,6 @@
|
||||
"light": "Claro",
|
||||
"like_deleted": "G├║stame eliminado",
|
||||
"link_motion_video": "Ligar v├нdeo en movemento",
|
||||
"link_options": "Opci├│ns da ligaz├│n",
|
||||
"link_to_oauth": "Ligar a OAuth",
|
||||
"linked_oauth_account": "Conta OAuth ligada",
|
||||
"list": "Lista",
|
||||
@@ -1130,7 +1129,6 @@
|
||||
"manage_your_devices": "Xestionar os teus dispositivos con sesi├│n iniciada",
|
||||
"manage_your_oauth_connection": "Xestionar a t├║a conexi├│n OAuth",
|
||||
"map": "Mapa",
|
||||
"map_assets_in_bound": "{count} foto",
|
||||
"map_assets_in_bounds": "{count} fotos",
|
||||
"map_cannot_get_user_location": "Non se pode obter a ubicaci├│n do usuario",
|
||||
"map_location_dialog_yes": "Si",
|
||||
|
||||
124
i18n/he.json
124
i18n/he.json
@@ -14,6 +14,7 @@
|
||||
"add_a_location": "╫Ф╫Х╫б╫д╫к ╫Ю╫Щ╫з╫Х╫Э",
|
||||
"add_a_name": "╫Ф╫Х╫б╫д╫к ╫й╫Э",
|
||||
"add_a_title": "╫Ф╫Х╫б╫д╫к ╫Ы╫Х╫к╫и╫к",
|
||||
"add_birthday": "╫Ф╫Х╫б╫д╫к ╫Щ╫Х╫Э ╫Ф╫Х╫Ь╫У╫к",
|
||||
"add_endpoint": "╫Ф╫Х╫б╫г ╫а╫з╫Х╫У╫к ╫з╫ж╫Ф",
|
||||
"add_exclusion_pattern": "╫Ф╫Х╫б╫д╫к ╫У╫д╫Х╫б ╫Ф╫Ч╫и╫Т╫Ф",
|
||||
"add_import_path": "╫Ф╫Х╫б╫д╫к ╫а╫к╫Щ╫С ╫Щ╫С╫Х╫Р",
|
||||
@@ -34,6 +35,7 @@
|
||||
"added_to_favorites_count": "{count, number} ╫а╫Х╫б╫д╫Х ╫Ь╫Ю╫Х╫в╫У╫д╫Щ╫Э",
|
||||
"admin": {
|
||||
"add_exclusion_pattern_description": "╫Ф╫Х╫б╫д╫к ╫У╫д╫Х╫б╫Щ ╫Ф╫Ч╫и╫Т╫Ф. ╫а╫к╫Ю╫Ы╫к ╫Ф╫к╫Р╫Ю╫к ╫У╫д╫Х╫б╫Щ╫Э ╫С╫Р╫Ю╫ж╫в╫Х╫к *, ** ╫Х-?. ╫Ы╫У╫Щ ╫Ь╫Ф╫к╫в╫Ь╫Э ╫Ю╫Ы╫Ь ╫Ф╫з╫С╫ж╫Щ╫Э ╫С╫к╫Щ╫з╫Щ╫Ф ╫Ы╫Ь╫й╫Ф╫Щ ╫С╫й╫Э \"Raw\", ╫Щ╫й ╫Ь╫Ф╫й╫к╫Ю╫й ╫С \"**/Raw/**\". ╫Ы╫У╫Щ ╫Ь╫Ф╫к╫в╫Ь╫Э ╫Ю╫Ы╫Ь ╫Ф╫з╫С╫ж╫Щ╫Э ╫Ф╫Ю╫б╫к╫Щ╫Щ╫Ю╫Щ╫Э ╫С \"tif.\", ╫Щ╫й ╫Ь╫Ф╫й╫к╫Ю╫й ╫С \"tif.*/**\". ╫Ы╫У╫Щ ╫Ь╫Ф╫к╫в╫Ь╫Э ╫Ю╫а╫к╫Щ╫С ╫Ю╫Х╫Ч╫Ь╫Ш, ╫Щ╫й ╫Ь╫Ф╫й╫к╫Ю╫й ╫С \"**/╫а╫к╫Щ╫С/╫Ь╫Ф╫к╫в╫Ь╫Ю╫Х╫к\".",
|
||||
"admin_user": "╫Ю╫а╫Ф╫Ь ╫Ю╫в╫и╫Ы╫к",
|
||||
"asset_offline_description": "╫к╫Ю╫Х╫а╫Ф ╫Ю╫б╫д╫и╫Щ╫Щ╫Ф ╫Ч╫Щ╫ж╫Х╫а╫Щ╫к ╫Ц╫Х ╫Ь╫Р ╫а╫Ю╫ж╫Р╫к ╫Щ╫Х╫к╫и ╫С╫У╫Щ╫б╫з ╫Х╫Ф╫Х╫в╫С╫и╫Ф ╫Ь╫Р╫й╫д╫Ф. ╫Р╫Э ╫Ф╫з╫Х╫С╫е ╫Ф╫Х╫в╫С╫и ╫Ю╫к╫Х╫Ъ ╫Ф╫б╫д╫и╫Щ╫Щ╫Ф, ╫а╫Р ╫Ь╫С╫У╫Х╫з ╫Р╫к ╫ж╫Щ╫и ╫Ф╫Ц╫Ю╫Я ╫й╫Ь╫Ъ ╫в╫С╫Х╫и ╫Ф╫к╫Ю╫Х╫а╫Ф ╫Ф╫Ю╫з╫С╫Щ╫Ь╫Ф ╫Ф╫Ч╫У╫й. ╫Ы╫У╫Щ ╫Ь╫й╫Ч╫Ц╫и ╫к╫Ю╫Х╫а╫Ф ╫Ц╫Х, ╫а╫Р ╫Ь╫Х╫Х╫У╫Р ╫й-Immich ╫Щ╫Ы╫Х╫Ь ╫Ь╫Т╫й╫к ╫Р╫Ь ╫а╫к╫Щ╫С ╫Ф╫з╫Х╫С╫е ╫Ь╫Ю╫Ш╫Ф ╫Х╫Ь╫б╫и╫Х╫з ╫Ю╫Ч╫У╫й ╫Р╫к ╫Ф╫б╫д╫и╫Щ╫Щ╫Ф.",
|
||||
"authentication_settings": "╫Ф╫Т╫У╫и╫Х╫к ╫Ф╫к╫Ч╫С╫и╫Х╫к",
|
||||
"authentication_settings_description": "╫а╫Щ╫Ф╫Х╫Ь ╫б╫Щ╫б╫Ю╫Ф, OAuth, ╫Х╫Ф╫Т╫У╫и╫Х╫к ╫Ф╫к╫Ч╫С╫и╫Х╫к ╫Р╫Ч╫и╫Х╫к",
|
||||
@@ -43,6 +45,13 @@
|
||||
"backup_database": "╫Т╫Щ╫С╫Х╫Щ ╫Ю╫б╫У ╫а╫к╫Х╫а╫Щ╫Э",
|
||||
"backup_database_enable_description": "╫Р╫д╫й╫и ╫Т╫Щ╫С╫Х╫Щ╫Щ ╫Ю╫б╫У ╫а╫к╫Х╫а╫Щ╫Э",
|
||||
"backup_keep_last_amount": "╫Ы╫Ю╫Х╫к ╫й╫Ь ╫Т╫Щ╫С╫Х╫Щ╫Щ╫Э ╫з╫Х╫У╫Ю╫Щ╫Э ╫й╫Щ╫й ╫Ь╫й╫Ю╫Х╫и",
|
||||
"backup_onboarding_1_description": "╫Ф╫в╫к╫з ╫С╫в╫а╫Я ╫Р╫Х ╫С╫Ю╫Щ╫з╫Х╫Э ╫д╫Щ╫Ц╫Щ ╫Р╫Ч╫и ╫Ю╫Ч╫Х╫е ╫Ь╫Ю╫з╫Х╫Э ╫Ф╫й╫и╫к.",
|
||||
"backup_onboarding_2_description": "╫Ф╫в╫к╫з╫Щ╫Э ╫Ю╫з╫Х╫Ю╫Щ╫Щ╫Э ╫С╫Ю╫Ы╫й╫Щ╫и╫Щ╫Э ╫й╫Х╫а╫Щ╫Э. ╫Ц╫Ф ╫Ы╫Х╫Ь╫Ь ╫Р╫к ╫Ф╫з╫С╫ж╫Щ╫Э ╫Ф╫и╫Р╫й╫Щ╫Щ╫Э ╫Х╫Т╫Щ╫С╫Х╫Щ ╫й╫Ь ╫Ф╫з╫С╫ж╫Щ╫Э ╫Ф╫Р╫Ь╫Ф ╫С╫Р╫Х╫д╫Я ╫Ю╫з╫Х╫Ю╫Щ.",
|
||||
"backup_onboarding_3_description": "╫б╫Ъ ╫Ы╫Ь ╫Ф╫Ф╫в╫к╫з╫Щ╫Э ╫й╫Ь ╫Ф╫а╫к╫Х╫а╫Щ╫Э ╫й╫Ь╫Ъ, ╫Ы╫Х╫Ь╫Ь ╫Ф╫з╫С╫ж╫Щ╫Э ╫Ф╫Ю╫з╫Х╫и╫Щ╫Щ╫Э. ╫Ц╫Ф ╫Ы╫Х╫Ь╫Ь ╫Ф╫в╫к╫з ╫Р╫Ч╫У ╫Ю╫Ч╫Х╫е ╫Ь╫Ю╫з╫Х╫Э ╫Ф╫й╫и╫к ╫Х╫й╫а╫Щ ╫Ф╫в╫к╫з╫Щ╫Э ╫Ю╫з╫Х╫Ю╫Щ╫Щ╫Э.",
|
||||
"backup_onboarding_description": "<backblaze-link>╫Р╫б╫Ш╫и╫Ш╫Т╫Щ╫Щ╫к ╫Т╫Щ╫С╫Х╫Щ 3-2-1</backblaze-link> ╫Ф╫Щ╫а╫Ф ╫Ю╫Х╫Ю╫Ь╫ж╫к ╫в╫Ь ╫Ю╫а╫к ╫Ь╫Ф╫Т╫Я ╫в╫Ь ╫Ф╫а╫к╫Х╫а╫Щ╫Э ╫й╫Ь╫Ъ. ╫в╫Ь╫Щ╫Ъ ╫Ь╫Ф╫й╫Р╫Щ╫и ╫Ф╫в╫к╫з╫Щ╫Э ╫й╫Ь ╫к╫Ю╫Х╫а╫Х╫к/╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫й╫Ф╫Х╫в╫Ь╫Х ╫Ы╫Ю╫Х ╫Т╫Э ╫Р╫к ╫Ю╫б╫У ╫Ф╫а╫к╫Х╫а╫Щ╫Э ╫й╫Ь Immich ╫в╫С╫Х╫и ╫д╫к╫и╫Х╫Я ╫Т╫Щ╫С╫Х╫Щ ╫Ю╫з╫Щ╫г.",
|
||||
"backup_onboarding_footer": "╫в╫С╫Х╫и ╫Ю╫Щ╫У╫в ╫а╫Х╫б╫г ╫в╫Ь ╫Т╫Щ╫С╫Х╫Щ Immich, ╫а╫Р ╫Ь╫д╫а╫Х╫к ╫Р╫Ь ╫Ф<link>╫к╫Щ╫в╫Х╫У</link>.",
|
||||
"backup_onboarding_parts_title": "╫Т╫Щ╫С╫Х╫Щ 3-2-1 ╫Ы╫Х╫Ь╫Ь:",
|
||||
"backup_onboarding_title": "╫Т╫Щ╫С╫Х╫Щ╫Щ╫Э",
|
||||
"backup_settings": "╫Ф╫Т╫У╫и╫Х╫к ╫Т╫Щ╫С╫Х╫Щ",
|
||||
"backup_settings_description": "╫а╫Щ╫Ф╫Х╫Ь ╫Ф╫Т╫У╫и╫Х╫к ╫Т╫Щ╫С╫Х╫Щ ╫Ю╫б╫У ╫а╫к╫Х╫а╫Щ╫Э.",
|
||||
"cleared_jobs": "╫а╫Х╫з╫Х ╫Ю╫й╫Щ╫Ю╫Х╫к ╫в╫С╫Х╫и: {job}",
|
||||
@@ -155,16 +164,30 @@
|
||||
"map_settings": "╫Ю╫д╫Ф",
|
||||
"map_settings_description": "╫а╫Щ╫Ф╫Х╫Ь ╫Ф╫Т╫У╫и╫Х╫к ╫Ю╫д╫Ф",
|
||||
"map_style_description": "╫Ы╫к╫Х╫С╫к ╫Р╫к╫и ╫Ь╫в╫и╫Ы╫к ╫а╫Х╫й╫Р ╫й╫Ь ╫Ю╫д╫Ф style.json",
|
||||
"memory_cleanup_job": "╫а╫Щ╫з╫Х╫Щ ╫Ц╫Щ╫Ы╫и╫Х╫Я",
|
||||
"memory_generate_job": "╫Щ╫ж╫Щ╫и╫к ╫Ц╫Щ╫Ы╫и╫Х╫Я",
|
||||
"memory_cleanup_job": "╫а╫Щ╫з╫Х╫Щ ╫Ц╫Щ╫Ы╫и╫Х╫Я (╫Ф╫Щ╫Х╫Э ╫Ь╫д╫а╫Щ..)",
|
||||
"memory_generate_job": "╫Щ╫ж╫Щ╫и╫к ╫Ц╫Щ╫Ы╫и╫Х╫Я (╫Ф╫Щ╫Х╫Э ╫Ь╫д╫а╫Щ..)",
|
||||
"metadata_extraction_job": "╫Ч╫Ь╫е ╫Ю╫Ш╫Р-╫а╫к╫Х╫а╫Щ╫Э",
|
||||
"metadata_extraction_job_description": "╫Ч╫Ь╫е ╫Ю╫Ш╫Р-╫а╫к╫Х╫а╫Щ╫Э ╫Ю╫Ы╫Ь ╫к╫Ю╫Х╫а╫Ф, ╫Ы╫Т╫Х╫Я GPS, ╫д╫а╫Щ╫Э ╫Х╫и╫Ц╫Х╫Ь╫Х╫ж╫Щ╫Ф",
|
||||
"metadata_faces_import_setting": "╫Р╫д╫й╫и ╫Щ╫С╫Х╫Р ╫д╫а╫Щ╫Э",
|
||||
"metadata_faces_import_setting_description": "╫Щ╫С╫Р ╫д╫а╫Щ╫Э ╫Ю╫а╫к╫Х╫а╫Щ EXIF ╫й╫Ь ╫к╫Ю╫Х╫а╫Ф ╫Х╫Ю╫з╫С╫ж╫Щ╫Э ╫а╫Ь╫Х╫Х╫Щ╫Э",
|
||||
"metadata_settings": "╫Ф╫Т╫У╫и╫Х╫к ╫Ю╫Ш╫Р-╫а╫к╫Х╫а╫Щ╫Э",
|
||||
"metadata_settings_description": "╫а╫Щ╫Ф╫Х╫Ь ╫Ф╫Т╫У╫и╫Х╫к ╫Ю╫Ш╫Р-╫а╫к╫Х╫а╫Щ╫Э",
|
||||
"migration_job": "╫Ф╫в╫С╫и╫Ф",
|
||||
"metadata_settings_description": "╫а╫Щ╫Ф╫Х╫Ь ╫Ф╫Т╫У╫и╫Х╫к metadata",
|
||||
"migration_job": "╫а╫У╫Щ╫У╫Ф",
|
||||
"migration_job_description": "╫Ф╫в╫С╫и ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Ю╫Х╫Ц╫в╫и╫Х╫к ╫й╫Ь ╫к╫Ю╫Х╫а╫Х╫к ╫Х╫д╫а╫Щ╫Э ╫Ь╫Ю╫С╫а╫Ф ╫Ф╫к╫Щ╫з╫Щ╫Х╫к ╫Ф╫в╫У╫Ы╫а╫Щ ╫С╫Щ╫Х╫к╫и",
|
||||
"nightly_tasks_cluster_faces_setting_description": "╫С╫ж╫в ╫Ц╫Щ╫Ф╫Х╫Щ ╫д╫а╫Щ╫Э ╫в╫С╫Х╫и ╫д╫и╫ж╫Х╫д╫Щ╫Э ╫й╫Ц╫Х╫Ф╫Х ╫Ь╫Р╫Ч╫и╫Х╫а╫Ф",
|
||||
"nightly_tasks_cluster_new_faces_setting": "╫з╫С╫е ╫д╫а╫Щ╫Э ╫Ч╫У╫й╫Х╫к",
|
||||
"nightly_tasks_database_cleanup_setting": "╫Ю╫й╫Щ╫Ю╫Х╫к ╫к╫Ч╫Ц╫Х╫з╫Ф ╫Х╫а╫Щ╫з╫Х╫Щ ╫й╫Ь ╫Ю╫б╫У ╫Ф╫а╫к╫Х╫а╫Щ╫Э",
|
||||
"nightly_tasks_database_cleanup_setting_description": "╫а╫з╫Ф ╫а╫к╫Х╫а╫Щ╫Э ╫Щ╫й╫а╫Щ╫Э ╫й╫д╫Т ╫к╫Х╫з╫д╫Э ╫Ю╫Ю╫б╫У ╫Ф╫а╫к╫Х╫а╫Щ╫Э",
|
||||
"nightly_tasks_generate_memories_setting": "╫Щ╫ж╫Щ╫и╫к ╫Ц╫Ы╫и╫Х╫а╫Х╫к",
|
||||
"nightly_tasks_generate_memories_setting_description": "╫ж╫Х╫и ╫Ц╫Ы╫и╫Х╫а╫Х╫к ╫Ч╫У╫й╫Щ╫Э ╫Ю╫Ф╫к╫Ю╫Х╫а╫Х╫к ╫й╫Ь╫Ъ",
|
||||
"nightly_tasks_missing_thumbnails_setting": "╫ж╫Х╫и ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Ю╫Х╫Ц╫в╫и╫Х╫к ╫Ч╫б╫и╫Х╫к",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "╫Ф╫Х╫б╫г ╫Ь╫к╫Х╫и ╫з╫С╫ж╫Щ╫Э ╫Ь╫Ь╫Р ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Ю╫Х╫Ц╫в╫и╫Х╫к ╫Ь╫Щ╫ж╫Щ╫и╫Ф ╫й╫Ь ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Ю╫Х╫Ц╫в╫и╫Х╫к",
|
||||
"nightly_tasks_settings": "╫Ф╫Т╫У╫и╫Х╫к ╫й╫Ь ╫Ю╫й╫Щ╫Ю╫Х╫к ╫Ь╫Щ╫Ь╫Щ╫Х╫к",
|
||||
"nightly_tasks_settings_description": "╫а╫Ф╫Ь ╫Ю╫й╫Щ╫Ю╫Х╫к ╫Ь╫Щ╫Ь╫Щ╫Х╫к",
|
||||
"nightly_tasks_start_time_setting": "╫Ц╫Ю╫Я ╫Ф╫к╫Ч╫Ь╫Ф",
|
||||
"nightly_tasks_start_time_setting_description": "╫Ф╫й╫в╫Ф ╫й╫С╫Ф ╫Ф╫й╫и╫к ╫Ю╫к╫Ч╫Щ╫Ь ╫Ь╫Ф╫и╫Щ╫е ╫Р╫к ╫Ф╫Ю╫й╫Щ╫Ю╫Х╫к ╫Ф╫Ь╫Щ╫Ь╫Щ╫Х╫к",
|
||||
"nightly_tasks_sync_quota_usage_setting": "╫б╫а╫Ы╫и╫Х╫Я ╫Ю╫Ы╫б╫к ╫й╫Щ╫Ю╫Х╫й",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "╫в╫У╫Ы╫Я ╫Р╫к ╫Ю╫Ы╫б╫к ╫Ф╫Р╫Ч╫б╫Х╫Я ╫й╫Ь ╫Ф╫Ю╫й╫к╫Ю╫й ╫С╫Ф╫к╫Р╫Э ╫Ь╫й╫Щ╫Ю╫Х╫й ╫Ф╫а╫Х╫Ы╫Ч╫Щ",
|
||||
"no_paths_added": "╫Ь╫Р ╫а╫Х╫б╫д╫Х ╫а╫к╫Щ╫С╫Щ╫Э",
|
||||
"no_pattern_added": "╫Ь╫Р ╫а╫Х╫б╫д╫Ф ╫к╫С╫а╫Щ╫к",
|
||||
"note_apply_storage_label_previous_assets": "╫Ф╫в╫и╫Ф: ╫Ы╫У╫Щ ╫Ь╫Ф╫Ч╫Щ╫Ь ╫Р╫к ╫к╫Х╫Х╫Щ╫к ╫Ф╫Р╫Ч╫б╫Х╫Я ╫в╫Ь ╫к╫Ю╫Х╫а╫Х╫к ╫й╫Ф╫Х╫в╫Ь╫Х ╫С╫в╫С╫и, ╫Ф╫д╫в╫Ь ╫Р╫к",
|
||||
@@ -195,6 +218,8 @@
|
||||
"oauth_mobile_redirect_uri": "URI ╫Ь╫Ф╫д╫а╫Щ╫Ф ╫Ю╫Ч╫У╫й ╫С╫а╫Щ╫Щ╫У",
|
||||
"oauth_mobile_redirect_uri_override": "╫в╫з╫Щ╫д╫к URI ╫Ь╫Ф╫д╫а╫Щ╫Ф ╫Ю╫Ч╫У╫й ╫С╫а╫Щ╫Щ╫У",
|
||||
"oauth_mobile_redirect_uri_override_description": "╫Р╫д╫й╫и ╫Ы╫Р╫й╫и ╫б╫д╫з OAuth ╫Ь╫Р ╫Ю╫Р╫д╫й╫и ╫Ы╫к╫Х╫С╫к URI ╫Ь╫а╫Щ╫Щ╫У, ╫Ы╫Ю╫Х ''{callback}''",
|
||||
"oauth_role_claim": "╫У╫и╫Щ╫й╫к ╫к╫д╫з╫Щ╫У",
|
||||
"oauth_role_claim_description": "╫Ф╫в╫а╫з ╫Т╫Щ╫й╫к ╫Ю╫а╫Ф╫Ь ╫С╫Р╫Х╫д╫Я ╫Р╫Х╫Ш╫Х╫Ю╫Ш╫Щ ╫Р╫Э ╫к╫С╫Щ╫в╫Ф ╫Ц╫Х ╫з╫Щ╫Щ╫Ю╫к. ╫в╫и╫Ъ ╫Ф╫к╫С╫Щ╫в╫Ф ╫Щ╫Ы╫Х╫Ь ╫Ь╫Ф╫Щ╫Х╫к 'user' ╫Р╫Х 'admin'.",
|
||||
"oauth_settings": "OAuth",
|
||||
"oauth_settings_description": "╫а╫Щ╫Ф╫Х╫Ь ╫Ф╫Т╫У╫и╫Х╫к ╫Ф╫к╫Ч╫С╫и╫Х╫к ╫в╫Э OAuth",
|
||||
"oauth_settings_more_details": "╫Ь╫Ю╫Щ╫У╫в ╫а╫Х╫б╫г ╫Р╫Х╫У╫Х╫к ╫к╫Ы╫Х╫а╫Ф ╫Ц╫Х, ╫С╫У╫Х╫з ╫Р╫к ╫Ф<link>╫к╫Щ╫в╫Х╫У</link>.",
|
||||
@@ -203,7 +228,7 @@
|
||||
"oauth_storage_quota_claim": "╫У╫и╫Щ╫й╫к ╫Ю╫Ы╫б╫к ╫Р╫Ч╫б╫Х╫Я",
|
||||
"oauth_storage_quota_claim_description": "╫Ф╫Т╫У╫и ╫Р╫Х╫Ш╫Х╫Ю╫Ш╫Щ╫к ╫Р╫к ╫Ю╫Ы╫б╫к ╫Ф╫Р╫Ч╫б╫Х╫Я ╫й╫Ь ╫Ф╫Ю╫й╫к╫Ю╫й ╫Ь╫в╫и╫Ъ ╫й╫Ь ╫У╫и╫Щ╫й╫Ф ╫Ц╫Х.",
|
||||
"oauth_storage_quota_default": "╫Ю╫Ы╫б╫к ╫Р╫Ч╫б╫Х╫Я ╫С╫и╫Щ╫и╫к ╫Ю╫Ч╫У╫Ь (GiB)",
|
||||
"oauth_storage_quota_default_description": "╫Ю╫Ы╫б╫Ф ╫С-GiB ╫Ь╫й╫Щ╫Ю╫Х╫й ╫Ы╫Р╫й╫и ╫Ь╫Р ╫Ю╫б╫Х╫д╫з╫к ╫У╫и╫Щ╫й╫Ф (╫Ф╫Ц╫Я 0 ╫в╫С╫Х╫и ╫Ю╫Ы╫б╫Ф ╫С╫Ь╫к╫Щ ╫Ю╫Х╫Т╫С╫Ь╫к).",
|
||||
"oauth_storage_quota_default_description": "╫Ю╫Ы╫б╫Ф ╫С-GiB ╫Ь╫й╫Щ╫Ю╫Х╫й ╫Ы╫Р╫й╫и ╫Ь╫Р ╫Ю╫б╫Х╫д╫з╫к ╫У╫и╫Щ╫й╫Ф.",
|
||||
"oauth_timeout": "╫Ф╫С╫з╫й╫Ф ╫а╫Ы╫й╫Ь╫Ф тАУ ╫Ф╫Ц╫Ю╫Я ╫Ф╫з╫ж╫Х╫С ╫Ф╫б╫к╫Щ╫Щ╫Э",
|
||||
"oauth_timeout_description": "╫Ц╫Ю╫Я ╫з╫ж╫Х╫С ╫Ь╫С╫з╫й╫Х╫к (╫С╫Ю╫Щ╫Ь╫Щ╫й╫а╫Щ╫Х╫к)",
|
||||
"password_enable_description": "╫Ф╫к╫Ч╫С╫и ╫в╫Э ╫У╫Х╫Р\"╫Ь ╫Х╫б╫Щ╫б╫Ю╫Ф",
|
||||
@@ -243,6 +268,7 @@
|
||||
"storage_template_migration_info": "╫к╫С╫а╫Щ╫к ╫Ф╫Р╫Ч╫б╫Х╫Я ╫к╫Ю╫Щ╫и ╫Р╫к ╫Ы╫Ь ╫Ф╫Ф╫и╫Ч╫С╫Х╫к ╫Ь╫Р╫Х╫к╫Щ╫Х╫к ╫з╫Ш╫а╫Х╫к. ╫й╫Щ╫а╫Х╫Щ╫Щ╫Э ╫С╫к╫С╫а╫Щ╫к ╫Щ╫Ч╫Х╫Ь╫Х ╫и╫з ╫в╫Ь ╫к╫Ю╫Х╫а╫Х╫к ╫Ч╫У╫й╫Х╫к. ╫Ы╫У╫Щ ╫Ь╫Ф╫Ч╫Щ╫Ь ╫С╫Р╫Х╫д╫Я ╫и╫Ш╫и╫Х╫Р╫з╫Ш╫Щ╫С╫Щ ╫Р╫к ╫Ф╫к╫С╫а╫Щ╫к ╫в╫Ь ╫к╫Ю╫Х╫а╫Х╫к ╫й╫Ф╫Х╫в╫Ь╫Х ╫С╫в╫С╫и, ╫Ф╫д╫в╫Ь ╫Р╫к <link>{job}</link>.",
|
||||
"storage_template_migration_job": "╫Ю╫й╫Щ╫Ю╫к ╫Ф╫в╫С╫и╫к ╫к╫С╫а╫Щ╫к ╫Р╫Ч╫б╫Х╫Я",
|
||||
"storage_template_more_details": "╫Ь╫д╫и╫Ш╫Щ╫Э ╫а╫Х╫б╫д╫Щ╫Э ╫Р╫Х╫У╫Х╫к ╫к╫Ы╫Х╫а╫Ф ╫Ц╫Х, ╫в╫Щ╫Щ╫Я ╫С<template-link>╫к╫С╫а╫Щ╫к ╫Ф╫Р╫Ч╫б╫Х╫Я</template-link> ╫Х╫С<implications-link>╫Ф╫й╫Ь╫Ы╫Х╫к╫Щ╫Ф</implications-link>",
|
||||
"storage_template_onboarding_description_v2": "╫Ы╫Р╫й╫и ╫д╫Щ╫жтАЩ╫и ╫Ц╫Ф ╫Ю╫Х╫д╫в╫Ь, ╫Ф╫з╫С╫ж╫Щ╫Э ╫Щ╫Р╫Х╫и╫Т╫а╫Х ╫Р╫Х╫Ш╫Х╫Ю╫Ш╫Щ╫к ╫Ь╫д╫Щ ╫к╫С╫а╫Щ╫к ╫й╫Ф╫Х╫Т╫У╫и╫Ф ╫в╫Ь ╫Щ╫У╫Щ ╫Ф╫Ю╫й╫к╫Ю╫й. ╫Ь╫Ю╫Щ╫У╫в ╫а╫Х╫б╫г, ╫в╫Щ╫Щ╫Я ╫С╓╛<link>╫к╫Щ╫в╫Х╫У</link>.",
|
||||
"storage_template_path_length": "╫Ю╫Т╫С╫Ь╫к ╫Р╫Х╫и╫Ъ ╫а╫к╫Щ╫С ╫Ю╫й╫Х╫в╫и╫к: <b>{length, number}</b>/{limit, number}",
|
||||
"storage_template_settings": "╫к╫С╫а╫Щ╫к ╫Р╫Ч╫б╫Х╫Я",
|
||||
"storage_template_settings_description": "╫а╫Щ╫Ф╫Х╫Ь ╫Ю╫С╫а╫Ф ╫Ф╫к╫Щ╫з╫Щ╫Х╫к ╫Х╫Р╫к ╫й╫Э ╫Ф╫з╫Х╫С╫е ╫й╫Ь ╫Ф╫к╫Ю╫Х╫а╫Ф ╫й╫Ф╫Х╫в╫Ь╫к╫Ф",
|
||||
@@ -355,10 +381,12 @@
|
||||
"admin_password": "╫б╫Щ╫б╫Ю╫к ╫Ю╫а╫Ф╫Ь",
|
||||
"administration": "╫а╫Щ╫Ф╫Х╫Ь",
|
||||
"advanced": "╫Ю╫к╫з╫У╫Э",
|
||||
"advanced_settings_beta_timeline_subtitle": "╫а╫б╫Ф ╫Р╫к ╫Ч╫Х╫Х╫Щ╫к ╫Ф╫Р╫д╫Ь╫Щ╫з╫ж╫Щ╫Ф ╫Ф╫Ч╫У╫й╫Ф",
|
||||
"advanced_settings_beta_timeline_title": "╫ж╫Щ╫и ╫Ц╫Ю╫Я (╫С╫Ш╫Р)",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "╫Ф╫й╫к╫Ю╫й ╫С╫Р╫д╫й╫и╫Х╫к ╫Ц╫Х ╫Ы╫У╫Щ ╫Ь╫б╫а╫Я ╫Ю╫У╫Щ╫Ф ╫С╫Ю╫Ф╫Ь╫Ъ ╫Ф╫б╫а╫Ы╫и╫Х╫Я ╫Ь╫д╫Щ ╫з╫и╫Щ╫Ш╫и╫Щ╫Х╫а╫Щ╫Э ╫Ч╫Ь╫Х╫д╫Щ╫Щ╫Э. ╫Ю╫Х╫Ю╫Ь╫е ╫Ь╫Ф╫й╫к╫Ю╫й ╫С╫Ц╫Ф ╫и╫з ╫Р╫Э ╫Щ╫й ╫С╫в╫Щ╫Ф ╫С╫Ц╫Щ╫Ф╫Х╫Щ ╫Ы╫Ь ╫Ф╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э ╫С╫Р╫д╫Ь╫Щ╫з╫ж╫Щ╫Ф.",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[╫а╫Щ╫б╫Щ╫Х╫а╫Щ] ╫Ф╫й╫к╫Ю╫й ╫С╫Ю╫б╫а╫Я ╫б╫а╫Ы╫и╫Х╫Я ╫Р╫Ь╫С╫Х╫Э ╫Ч╫Ь╫Х╫д╫Щ ╫й╫Ю╫С╫Ы╫й╫Щ╫и",
|
||||
"advanced_settings_log_level_title": "╫и╫Ю╫к ╫и╫Щ╫й╫Х╫Э ╫С╫Щ╫Х╫Ю╫Я: {level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "╫Ч╫Ь╫з ╫Ю╫Ф╫Ю╫Ы╫й╫Щ╫и╫Щ╫Э ╫Ф╫Э ╫Р╫Щ╫Ш╫Щ╫Щ╫Э ╫Ю╫Р╫У ╫Ь╫Ш╫в╫Щ╫а╫Ф ╫й╫Ь ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Ю╫Х╫Ц╫в╫и╫Х╫к ╫Ю╫к╫Ю╫Х╫а╫Х╫к ╫й╫С╫Ю╫Ы╫й╫Щ╫и. ╫Ф╫д╫в╫Ь ╫Ф╫Т╫У╫и╫Ф ╫Ц╫Х ╫Ы╫У╫Щ ╫Ь╫Ш╫в╫Х╫Я ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫и╫Х╫Ч╫з╫Х╫к ╫С╫Ю╫з╫Х╫Э.",
|
||||
"advanced_settings_prefer_remote_subtitle": "╫С╫Ю╫Ы╫й╫Щ╫и╫Щ╫Э ╫Ю╫б╫Х╫Щ╫Ю╫Щ╫Э ╫Ш╫в╫Щ╫а╫к ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Ю╫Х╫Ц╫в╫и╫Х╫к ╫Ю╫з╫С╫ж╫Щ╫Э ╫Ю╫з╫Х╫Ю╫Щ╫Щ╫Э ╫в╫Ь╫Х╫Ь╫Ф ╫Ь╫Ф╫Щ╫Х╫к ╫Р╫Щ╫Ш╫Щ╫к ╫С╫Ю╫Щ╫Х╫Ч╫У. ╫Ф╫д╫в╫Ь ╫Ф╫Т╫У╫и╫Ф ╫Ц╫Х ╫Ы╫У╫Щ ╫Ь╫Ш╫в╫Х╫Я ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫и╫Х╫Ч╫з╫Х╫к ╫С╫Ю╫з╫Х╫Э ╫Ц╫Р╫к.",
|
||||
"advanced_settings_prefer_remote_title": "╫Ф╫в╫У╫г ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫и╫Х╫Ч╫з╫Х╫к",
|
||||
"advanced_settings_proxy_headers_subtitle": "╫Ф╫Т╫У╫и proxy headers ╫й╫Ф╫Щ╫Щ╫й╫Х╫Э ╫ж╫и╫Щ╫Ъ ╫Ь╫й╫Ь╫Х╫Ч ╫в╫Э ╫Ы╫Ь ╫С╫з╫й╫к ╫и╫й╫к",
|
||||
"advanced_settings_proxy_headers_title": "╫Ы╫Х╫к╫и╫Х╫к ╫д╫и╫Х╫з╫б╫Щ",
|
||||
@@ -377,6 +405,7 @@
|
||||
"album_cover_updated": "╫в╫Ш╫Щ╫д╫к ╫Ф╫Р╫Ь╫С╫Х╫Э ╫в╫Х╫У╫Ы╫а╫Ф",
|
||||
"album_delete_confirmation": "╫Ф╫Р╫Э ╫С╫Р╫Ю╫к ╫С╫и╫ж╫Х╫а╫Ъ ╫Ь╫Ю╫Ч╫Х╫з ╫Р╫к ╫Ф╫Р╫Ь╫С╫Х╫Э {album}?",
|
||||
"album_delete_confirmation_description": "╫Р╫Э ╫Ф╫Р╫Ь╫С╫Х╫Э ╫Ф╫Ц╫Ф ╫Ю╫й╫Х╫к╫г, ╫Ю╫й╫к╫Ю╫й╫Щ╫Э ╫Р╫Ч╫и╫Щ╫Э ╫Ь╫Р ╫Щ╫Х╫Ы╫Ь╫Х ╫Ь╫Т╫й╫к ╫Р╫Ь╫Щ╫Х ╫Щ╫Х╫к╫и.",
|
||||
"album_deleted": "╫Р╫Ь╫С╫Х╫Э ╫а╫Ю╫Ч╫з",
|
||||
"album_info_card_backup_album_excluded": "╫Ф╫Х╫Ч╫и╫Т╫Х",
|
||||
"album_info_card_backup_album_included": "╫а╫Ы╫Ь╫Ь╫Х",
|
||||
"album_info_updated": "╫Ю╫Щ╫У╫в ╫Ф╫Р╫Ь╫С╫Х╫Э ╫в╫Х╫У╫Ы╫Я",
|
||||
@@ -386,6 +415,7 @@
|
||||
"album_options": "╫Р╫д╫й╫и╫Х╫Щ╫Х╫к ╫Ф╫Р╫Ь╫С╫Х╫Э",
|
||||
"album_remove_user": "╫Ь╫Ф╫б╫Щ╫и ╫Ю╫й╫к╫Ю╫й?",
|
||||
"album_remove_user_confirmation": "╫Ф╫Р╫Э ╫С╫Р╫Ю╫к ╫С╫и╫ж╫Х╫а╫Ъ ╫Ь╫Ф╫б╫Щ╫и ╫Р╫к {user}?",
|
||||
"album_search_not_found": "╫Ь╫Р ╫а╫Ю╫ж╫Р╫Х ╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э ╫Ф╫к╫Х╫Р╫Ю╫Щ╫Э ╫Ь╫Ч╫Щ╫д╫Х╫й ╫й╫Ь╫Ъ",
|
||||
"album_share_no_users": "╫а╫и╫Р╫Ф ╫й╫й╫Щ╫к╫д╫к ╫Р╫к ╫Ф╫Р╫Ь╫С╫Х╫Э ╫Ф╫Ц╫Ф ╫в╫Э ╫Ы╫Ь ╫Ф╫Ю╫й╫к╫Ю╫й╫Щ╫Э ╫Р╫Х ╫й╫Р╫Щ╫Я ╫Ь╫Ъ ╫Р╫г ╫Ю╫й╫к╫Ю╫й ╫Ь╫й╫к╫г ╫Р╫Щ╫к╫Х.",
|
||||
"album_updated": "╫Р╫Ь╫С╫Х╫Э ╫в╫Х╫У╫Ы╫Я",
|
||||
"album_updated_setting_description": "╫з╫С╫Ь ╫Ф╫Х╫У╫в╫к ╫У╫Х╫Р\"╫Ь ╫Ы╫Р╫й╫и ╫Ь╫Р╫Ь╫С╫Х╫Э ╫Ю╫й╫Х╫к╫г ╫Щ╫й ╫к╫Ю╫Х╫а╫Х╫к ╫Ч╫У╫й╫Х╫к",
|
||||
@@ -405,6 +435,7 @@
|
||||
"albums_default_sort_order": "╫б╫У╫и ╫Ю╫Щ╫Х╫Я ╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э ╫С╫и╫Щ╫и╫к ╫Ю╫Ч╫У╫Ь",
|
||||
"albums_default_sort_order_description": "╫б╫У╫и ╫Ю╫Щ╫Х╫Я ╫к╫Ю╫Х╫а╫Х╫к ╫и╫Р╫й╫Х╫а╫Щ ╫С╫в╫к ╫Щ╫ж╫Щ╫и╫к ╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э ╫Ч╫У╫й╫Щ╫Э.",
|
||||
"albums_feature_description": "╫Р╫Х╫б╫д╫Щ╫Э ╫й╫Ь ╫к╫Ю╫Х╫а╫Х╫к ╫Р╫й╫и ╫а╫Щ╫к╫а╫Щ╫Э ╫Ь╫й╫Щ╫к╫Х╫г ╫в╫Э ╫Ю╫й╫к╫Ю╫й╫Щ╫Э ╫Р╫Ч╫и╫Щ╫Э.",
|
||||
"albums_on_device_count": "╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э ╫С╫Ю╫Ы╫й╫Щ╫и ({count})",
|
||||
"all": "╫Ф╫Ы╫Ь",
|
||||
"all_albums": "╫Ы╫Ь ╫Ф╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э",
|
||||
"all_people": "╫Ы╫Ь ╫Ф╫Р╫а╫й╫Щ╫Э",
|
||||
@@ -425,6 +456,7 @@
|
||||
"app_settings": "╫Ф╫Т╫У╫и╫Х╫к ╫Щ╫Щ╫й╫Х╫Э",
|
||||
"appears_in": "╫Ю╫Х╫д╫Щ╫в ╫С",
|
||||
"archive": "╫Р╫и╫Ы╫Щ╫Х╫Я",
|
||||
"archive_action_prompt": "{count} ╫а╫Х╫б╫д╫Х ╫Ь╫Р╫и╫Ы╫Щ╫Х╫Я",
|
||||
"archive_or_unarchive_photo": "╫Ф╫в╫С╫и ╫к╫Ю╫Х╫а╫Ф ╫Ь╫Р╫и╫Ы╫Щ╫Х╫Я ╫Р╫Х ╫Ф╫Х╫ж╫Р ╫Р╫Х╫к╫Ф ╫Ю╫й╫Э",
|
||||
"archive_page_no_archived_assets": "╫Ь╫Р ╫а╫Ю╫ж╫Р╫Х ╫к╫Ю╫Х╫а╫Х╫к ╫С╫Р╫и╫Ы╫Щ╫Х╫Я",
|
||||
"archive_page_title": "╫С╫Р╫и╫Ы╫Щ╫Х╫Я ({count})",
|
||||
@@ -462,7 +494,6 @@
|
||||
"assets": "╫к╫Ю╫Х╫а╫Х╫к",
|
||||
"assets_added_count": "{count, plural, one {╫а╫Х╫б╫д╫Ф ╫к╫Х╫Ю╫а╫Ф #} other {╫а╫Х╫б╫д╫Х # ╫к╫Ю╫Х╫а╫Х╫к}}",
|
||||
"assets_added_to_album_count": "{count, plural, one {╫а╫Х╫б╫д╫Ф ╫к╫Ю╫Х╫а╫Ф #} other {╫а╫Х╫б╫д╫Х # ╫к╫Ю╫Х╫а╫Х╫к}} ╫Ь╫Р╫Ь╫С╫Х╫Э",
|
||||
"assets_added_to_name_count": "{count, plural, one {╫к╫Ю╫Х╫а╫Ф # ╫а╫Х╫б╫д╫Ф} other {# ╫к╫Ю╫Х╫а╫Х╫к ╫а╫Х╫б╫д╫Х}} ╫Р╫Ь {hasName, select, true {<b>{name}</b>} other {╫Р╫Ь╫С╫Х╫Э ╫Ч╫У╫й}}",
|
||||
"assets_cannot_be_added_to_album_count": "╫Ь╫Р ╫а╫Щ╫к╫Я ╫Ь╫Ф╫Х╫б╫Щ╫г ╫Р╫к ╫Ф{count, plural, one {╫к╫Ю╫Х╫а╫Ф} other {╫к╫Ю╫Х╫а╫Х╫к}} ╫Ь╫Р╫Ь╫С╫Х╫Э",
|
||||
"assets_count": "{count, plural, one {╫к╫Ю╫Х╫а╫Ф #} other {# ╫к╫Ю╫Х╫а╫Х╫к}}",
|
||||
"assets_deleted_permanently": "{count} ╫к╫Ю╫Х╫а╫Х╫к ╫а╫Ю╫Ч╫з╫Х ╫Ь╫ж╫Ю╫Щ╫к╫Х╫к",
|
||||
@@ -488,6 +519,7 @@
|
||||
"back_close_deselect": "╫Ч╫Ц╫Х╫и, ╫б╫Т╫Х╫и, ╫Р╫Х ╫С╫Ш╫Ь ╫С╫Ч╫Щ╫и╫Ф",
|
||||
"background_location_permission": "╫Ф╫и╫й╫Р╫к ╫Ю╫Щ╫з╫Х╫Э ╫С╫и╫з╫в",
|
||||
"background_location_permission_content": "╫Ы╫У╫Щ ╫Ь╫Ф╫Ч╫Ь╫Щ╫г ╫и╫й╫к╫Х╫к ╫С╫в╫к ╫и╫Щ╫ж╫Ф ╫С╫и╫з╫в, ╫Ф╫Щ╫Щ╫й╫Х╫Э ╫ж╫и╫Щ╫Ъ *╫к╫Ю╫Щ╫У* ╫Т╫Щ╫й╫Ф ╫Ь╫Ю╫Щ╫з╫Х╫Э ╫Ю╫У╫Х╫Щ╫з ╫в╫Ь ╫Ю╫а╫к ╫Ь╫з╫и╫Х╫Р ╫Р╫к ╫Ф╫й╫Э ╫й╫Ь ╫и╫й╫к ╫Ф╫Р╫Щ╫а╫Ш╫и╫а╫Ш ╫Ф╫Р╫Ь╫Ч╫Х╫Ш╫Щ",
|
||||
"backup": "╫Т╫Щ╫С╫Х╫Щ",
|
||||
"backup_album_selection_page_albums_device": "({count}) ╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э ╫С╫Ю╫Ы╫й╫Щ╫и",
|
||||
"backup_album_selection_page_albums_tap": "╫Ф╫з╫й ╫Ы╫У╫Щ ╫Ь╫Ы╫Ь╫Х╫Ь, ╫Ф╫з╫й ╫д╫в╫Ю╫Щ╫Щ╫Э ╫Ы╫У╫Щ ╫Ь╫Ф╫Ч╫и╫Щ╫Т",
|
||||
"backup_album_selection_page_assets_scatter": "╫к╫Ю╫Х╫а╫Х╫к ╫Щ╫Ы╫Х╫Ь╫Х╫к ╫Ь╫Ф╫к╫д╫Ц╫и ╫в╫Ь ╫д╫а╫Щ ╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э ╫Ю╫и╫Х╫С╫Щ╫Э. ╫Ь╫д╫Щ╫Ы╫Ъ, ╫а╫Щ╫к╫Я ╫Ь╫Ы╫Ь╫Х╫Ь ╫Р╫Х ╫Ь╫Ф╫Ч╫и╫Щ╫Т ╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э ╫С╫Ю╫Ф╫Ь╫Ъ ╫к╫Ф╫Ь╫Щ╫Ъ ╫Ф╫Т╫Щ╫С╫Х╫Щ.",
|
||||
@@ -532,11 +564,11 @@
|
||||
"backup_controller_page_none_selected": "╫Р╫Щ╫Я ╫С╫Ч╫Щ╫и╫Ф",
|
||||
"backup_controller_page_remainder": "╫С╫Ф╫Ю╫к╫а╫Ф ╫Ь╫Т╫Щ╫С╫Х╫Щ",
|
||||
"backup_controller_page_remainder_sub": "╫к╫Ю╫Х╫а╫Х╫к ╫Х╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫Ф╫а╫Х╫к╫и╫Щ╫Э ╫Ь╫Т╫Щ╫С╫Х╫Щ ╫Ю╫к╫Х╫Ъ ╫С╫Ч╫Щ╫и╫Ф",
|
||||
"backup_controller_page_server_storage": "╫Р╫Ч╫б╫Х╫Я ╫й╫и╫к",
|
||||
"backup_controller_page_server_storage": "╫Р╫Ч╫б╫Х╫Я ╫С╫й╫и╫к",
|
||||
"backup_controller_page_start_backup": "╫Ф╫к╫Ч╫Ь ╫Т╫Щ╫С╫Х╫Щ",
|
||||
"backup_controller_page_status_off": "╫Т╫Щ╫С╫Х╫Щ ╫Ч╫Ц╫Щ╫к ╫Р╫Х╫Ш╫Х╫Ю╫Ш╫Щ ╫Ы╫С╫Х╫Щ",
|
||||
"backup_controller_page_status_on": "╫Т╫Щ╫С╫Х╫Щ ╫Ч╫Ц╫Щ╫к ╫Р╫Х╫Ш╫Х╫Ю╫Ш╫Щ ╫Ю╫Х╫д╫в╫Ь",
|
||||
"backup_controller_page_storage_format": "{total} ╫Ю╫к╫Х╫Ъ {used} ╫С╫й╫Щ╫Ю╫Х╫й",
|
||||
"backup_controller_page_storage_format": "{used}╫Ю╫к╫Х╫Ъ {total} ╫С╫й╫Щ╫Ю╫Х╫й",
|
||||
"backup_controller_page_to_backup": "╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э ╫Ь╫Т╫С╫Х╫к",
|
||||
"backup_controller_page_total_sub": "╫Ы╫Ь ╫Ф╫к╫Ю╫Х╫а╫Х╫к ╫Х╫Ф╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫Ф╫Щ╫Щ╫Ч╫Х╫У╫Щ╫Щ╫Э ╫Ю╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э ╫й╫а╫С╫Ч╫и╫Х",
|
||||
"backup_controller_page_turn_off": "╫Ы╫Щ╫С╫Х╫Щ ╫Т╫Щ╫С╫Х╫Щ ╫Ч╫Ц╫Щ╫к",
|
||||
@@ -551,6 +583,8 @@
|
||||
"backup_options_page_title": "╫Р╫д╫й╫и╫Х╫Щ╫Х╫к ╫Т╫Щ╫С╫Х╫Щ",
|
||||
"backup_setting_subtitle": "╫а╫Щ╫Ф╫Х╫Ь ╫Ф╫Т╫У╫и╫Х╫к ╫Ф╫в╫Ь╫Р╫к ╫и╫з╫в ╫Х╫Ч╫Ц╫Щ╫к",
|
||||
"backward": "╫Р╫Ч╫Х╫и╫Ф",
|
||||
"beta_sync": "╫б╫Ш╫Ш╫Х╫б ╫б╫а╫Ы╫и╫Х╫Я (╫С╫Ш╫Р)",
|
||||
"beta_sync_subtitle": "╫а╫Ф╫Ь ╫Р╫к ╫Ю╫в╫и╫Ы╫к ╫Ф╫б╫а╫Ы╫и╫Х╫Я ╫Ф╫Ч╫У╫й╫Ф",
|
||||
"biometric_auth_enabled": "╫Р╫Щ╫Ю╫Х╫к ╫С╫Щ╫Х╫Ю╫Ш╫и╫Щ ╫Ф╫Х╫д╫в╫Ь",
|
||||
"biometric_locked_out": "╫Т╫Щ╫й╫Ф ╫Ь╫Р╫Щ╫Ю╫Х╫к ╫Ф╫С╫Щ╫Х╫Ю╫Ш╫и╫Щ ╫а╫Ч╫б╫Ю╫Ф",
|
||||
"biometric_no_options": "╫Р╫Щ╫Я ╫Р╫д╫й╫и╫Х╫Щ╫Х╫к ╫Ц╫Ю╫Щ╫а╫Х╫к ╫в╫С╫Х╫и ╫Р╫Щ╫Ю╫Х╫к ╫С╫Щ╫Х╫Ю╫Ш╫и╫Щ",
|
||||
@@ -568,7 +602,7 @@
|
||||
"cache_settings_clear_cache_button": "╫а╫Щ╫з╫Х╫Щ ╫Ю╫Ш╫Ю╫Х╫Я",
|
||||
"cache_settings_clear_cache_button_title": "╫Ю╫а╫з╫Ф ╫Р╫к ╫Ф╫Ю╫Ш╫Ю╫Х╫Я ╫й╫Ь ╫Ф╫Щ╫Щ╫й╫Х╫Э. ╫Ц╫Ф ╫Щ╫й╫д╫Щ╫в ╫С╫Р╫Х╫д╫Я ╫Ю╫й╫Ю╫в╫Х╫к╫Щ ╫в╫Ь ╫Ф╫С╫Щ╫ж╫Х╫в╫Щ╫Э ╫й╫Ь ╫Ф╫Щ╫Щ╫й╫Х╫Э ╫в╫У ╫й╫Ф╫Ю╫Ш╫Ю╫Х╫Я ╫Ю╫к╫Ю╫Ь╫Р ╫Ю╫Ч╫У╫й.",
|
||||
"cache_settings_duplicated_assets_clear_button": "╫а╫з╫Ф",
|
||||
"cache_settings_duplicated_assets_subtitle": "╫к╫Ю╫Х╫а╫Х╫к ╫Х╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫й╫а╫Ю╫ж╫Р╫Щ╫Э ╫С╫и╫й╫Щ╫Ю╫Ф ╫Ф╫й╫Ч╫Х╫и╫Ф ╫й╫Ь ╫Ф╫Щ╫Щ╫й╫Х╫Э",
|
||||
"cache_settings_duplicated_assets_subtitle": "╫к╫Ю╫Х╫а╫Х╫к ╫Х╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫й╫а╫Ю╫ж╫Р╫Щ╫Э ╫С╫и╫й╫Щ╫Ю╫к ╫Ф╫Ф╫к╫в╫Ь╫Ю╫Х╫к ╫й╫Ь ╫Ф╫Р╫д╫Ь╫Щ╫з╫ж╫Щ╫Ф",
|
||||
"cache_settings_duplicated_assets_title": "({count}) ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫й╫Х╫Ы╫д╫Ь╫Х╫к",
|
||||
"cache_settings_statistics_album": "╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Ю╫Х╫Ц╫в╫и╫Х╫к ╫й╫Ь ╫б╫д╫и╫Щ╫Щ╫Ф",
|
||||
"cache_settings_statistics_full": "╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Ь╫Р╫Х╫к",
|
||||
@@ -585,6 +619,7 @@
|
||||
"cancel": "╫С╫Щ╫Ш╫Х╫Ь",
|
||||
"cancel_search": "╫С╫Щ╫Ш╫Х╫Ь ╫Ч╫Щ╫д╫Х╫й",
|
||||
"canceled": "╫С╫Х╫Ш╫Ь",
|
||||
"canceling": "╫Ю╫С╫Ш╫Ь",
|
||||
"cannot_merge_people": "╫Ь╫Р ╫а╫Щ╫к╫Я ╫Ь╫Ю╫Ц╫Т ╫Р╫а╫й╫Щ╫Э",
|
||||
"cannot_undo_this_action": "╫Р╫Щ╫Я ╫С╫Р╫д╫й╫и╫Х╫к╫Ъ ╫Ь╫С╫Ш╫Ь ╫Р╫к ╫Ф╫д╫в╫Х╫Ь╫Ф ╫Ф╫Ц╫Х!",
|
||||
"cannot_update_the_description": "╫Ь╫Р ╫а╫Щ╫к╫Я ╫Ь╫в╫У╫Ы╫Я ╫Р╫к ╫Ф╫к╫Щ╫Р╫Х╫и",
|
||||
@@ -698,10 +733,11 @@
|
||||
"current_server_address": "╫Ы╫к╫Х╫С╫к ╫й╫и╫к ╫а╫Х╫Ы╫Ч╫Щ╫к",
|
||||
"custom_locale": "╫Р╫Ц╫Х╫и ╫й╫д╫Ф ╫Ю╫Х╫к╫Р╫Э ╫Р╫Щ╫й╫Щ╫к",
|
||||
"custom_locale_description": "╫в╫ж╫С ╫к╫Р╫и╫Щ╫Ы╫Щ╫Э ╫Х╫Ю╫б╫д╫и╫Щ╫Э ╫в╫Ь ╫б╫Ю╫Ъ ╫Ф╫й╫д╫Ф ╫Х╫Ф╫Р╫Ц╫Х╫и",
|
||||
"custom_url": "╫з╫Щ╫й╫Х╫и ╫Ю╫Х╫к╫Р╫Э ╫Р╫Щ╫й╫Щ╫к",
|
||||
"daily_title_text_date": "E, MMM dd",
|
||||
"daily_title_text_date_year": "E, MMM dd, yyyy",
|
||||
"dark": "╫Ы╫Ф╫Ф",
|
||||
"darkTheme": "╫Ф╫Ч╫Ь╫д╫Ф ╫Ь╫Ю╫ж╫С ╫Ч╫Х╫й╫Ъ",
|
||||
"dark_theme": "╫Ф╫д╫в╫Ь/╫Ы╫С╫Ф ╫Ю╫ж╫С ╫Ы╫Ф╫Ф",
|
||||
"date_after": "╫к╫Р╫и╫Щ╫Ъ ╫Р╫Ч╫и╫Щ",
|
||||
"date_and_time": "╫к╫Р╫и╫Щ╫Ъ ╫Х╫й╫в╫Ф",
|
||||
"date_before": "╫к╫Р╫и╫Щ╫Ъ ╫Ь╫д╫а╫Щ",
|
||||
@@ -711,12 +747,14 @@
|
||||
"day": "╫Щ╫Х╫Э",
|
||||
"deduplicate_all": "╫С╫Щ╫Ш╫Х╫Ь ╫Ы╫Ь ╫Ф╫Ы╫д╫Щ╫Ь╫Х╫Щ╫Х╫к",
|
||||
"deduplication_criteria_1": "╫Т╫Х╫У╫Ь ╫к╫Ю╫Х╫а╫Ф ╫С╫С╫к╫Щ╫Э",
|
||||
"deduplication_criteria_2": "╫б╫д╫Щ╫и╫к ╫а╫к╫Х╫а╫Щ EXIF",
|
||||
"deduplication_criteria_2": "╫Ы╫Ю╫Х╫к ╫а╫к╫Х╫а╫Щ EXIF",
|
||||
"deduplication_info": "╫Ю╫Щ╫У╫в ╫в╫Ь ╫С╫Щ╫Ш╫Х╫Ь ╫Ы╫д╫Щ╫Ь╫Х╫Щ╫Х╫к",
|
||||
"deduplication_info_description": "╫Ы╫У╫Щ ╫Ь╫С╫Ч╫Х╫и ╫Ю╫и╫Р╫й ╫к╫Ю╫Х╫а╫Х╫к ╫С╫Р╫Х╫д╫Я ╫Р╫Х╫Ш╫Х╫Ю╫Ш╫Щ ╫Х╫Ь╫Ф╫б╫Щ╫и ╫Ы╫д╫Щ╫Ь╫Х╫Щ╫Х╫к ╫С╫Ы╫Ю╫Х╫к ╫Т╫У╫Х╫Ь╫Ф, ╫Р╫а╫Х ╫Ю╫б╫к╫Ы╫Ь╫Щ╫Э ╫в╫Ь:",
|
||||
"default_locale": "╫й╫д╫к ╫С╫и╫Щ╫и╫к ╫Ю╫Ч╫У╫Ь",
|
||||
"default_locale_description": "╫д╫Х╫и╫Ю╫Ш ╫к╫Р╫и╫Щ╫Ы╫Щ╫Э ╫Х╫Ю╫б╫д╫и╫Щ╫Э ╫Ю╫С╫Х╫б╫б ╫й╫д╫к ╫Ф╫У╫д╫У╫д╫Я ╫й╫Ь╫Ъ",
|
||||
"delete": "╫Ю╫Ч╫з",
|
||||
"delete_action_confirmation_message": "╫Ф╫Р╫Э ╫Р╫к╫Ф ╫С╫Ш╫Х╫Ч ╫й╫С╫и╫ж╫Х╫а╫Ъ ╫Ь╫Ю╫Ч╫Х╫з ╫Р╫к ╫Ф╫к╫Ю╫Х╫а╫Ф ╫Ф╫Ц╫Р╫к? ╫д╫в╫Х╫Ь╫Ф ╫Ц╫Х ╫к╫в╫С╫Щ╫и ╫Р╫Х╫к╫Х ╫Ь╫Р╫й╫д╫Ф ╫й╫Ь ╫Ф╫й╫и╫к, ╫Х╫к╫й╫Р╫Ь ╫Р╫Э ╫С╫и╫ж╫Х╫а╫Ъ ╫Ь╫Ю╫Ч╫Х╫з ╫Р╫Х╫к╫Х ╫Т╫Э ╫Ю╫Ф╫Ю╫Ы╫й╫Щ╫и ╫Ф╫Ю╫з╫Х╫Ю╫Щ",
|
||||
"delete_action_prompt": "{count} ╫а╫Ю╫Ч╫з╫Х",
|
||||
"delete_album": "╫Ю╫Ч╫з ╫Р╫Ь╫С╫Х╫Э",
|
||||
"delete_api_key_prompt": "╫Ф╫Р╫Э ╫Р╫к╫Ф ╫С╫Ш╫Х╫Ч ╫й╫С╫и╫ж╫Х╫а╫Ъ ╫Ь╫Ю╫Ч╫Х╫з ╫Ю╫д╫к╫Ч ╫Ф-API ╫Ф╫Ц╫Ф?",
|
||||
"delete_dialog_alert": "╫Ф╫д╫и╫Щ╫Ш╫Щ╫Э ╫Ф╫Р╫Ь╫Ф ╫Щ╫Ю╫Ч╫з╫Х ╫Ь╫ж╫Ю╫Щ╫к╫Х╫к ╫Ю╫Ф╫й╫и╫к ╫Х╫Ю╫Ф╫Ю╫Ы╫й╫Щ╫и ╫й╫Ь╫Ъ",
|
||||
@@ -730,9 +768,12 @@
|
||||
"delete_key": "╫Ю╫Ч╫з ╫Ю╫д╫к╫Ч",
|
||||
"delete_library": "╫Ю╫Ч╫з ╫б╫д╫и╫Щ╫Щ╫Ф",
|
||||
"delete_link": "╫Ю╫Ч╫з ╫з╫Щ╫й╫Х╫и",
|
||||
"delete_local_action_prompt": "{count} ╫а╫Ю╫Ч╫з╫Х ╫С╫Р╫Х╫д╫Я ╫Ю╫з╫Х╫Ю╫Щ",
|
||||
"delete_local_dialog_ok_backed_up_only": "╫Ю╫Ч╫з ╫Р╫к ╫Ю╫Ф ╫й╫Ю╫Т╫Х╫С╫Ф ╫С╫Ь╫С╫У",
|
||||
"delete_local_dialog_ok_force": "╫Ю╫Ч╫з ╫С╫Ы╫Ь ╫Ц╫Р╫к",
|
||||
"delete_others": "╫Ю╫Ч╫з ╫Р╫Ч╫и╫Щ╫Э",
|
||||
"delete_permanently": "╫Ю╫Ч╫з ╫Ь╫ж╫Ю╫Щ╫к╫Х╫к",
|
||||
"delete_permanently_action_prompt": "{count} ╫а╫Ю╫Ч╫з╫Х ╫Ь╫ж╫Ю╫Щ╫к╫Х╫к",
|
||||
"delete_shared_link": "╫Ю╫Ч╫з ╫з╫Щ╫й╫Х╫и ╫Ю╫й╫Х╫к╫г",
|
||||
"delete_shared_link_dialog_title": "╫Ю╫Ч╫з ╫з╫Щ╫й╫Х╫и ╫Ю╫й╫Х╫к╫г",
|
||||
"delete_tag": "╫Ю╫Ч╫з ╫к╫Т",
|
||||
@@ -743,6 +784,7 @@
|
||||
"description": "╫к╫Щ╫Р╫Х╫и",
|
||||
"description_input_hint_text": "╫Ф╫Х╫б╫г ╫к╫Щ╫Р╫Х╫и...",
|
||||
"description_input_submit_error": "╫й╫Т╫Щ╫Р╫Ф ╫С╫в╫У╫Ы╫Х╫Я ╫к╫Щ╫Р╫Х╫и, ╫С╫У╫Х╫з ╫Р╫к ╫Ф╫Щ╫Х╫Ю╫Я ╫Ь╫д╫и╫Ш╫Щ╫Э ╫а╫Х╫б╫д╫Щ╫Э",
|
||||
"deselect_all": "╫С╫Ш╫Ь ╫Ф╫Ы╫Ь",
|
||||
"details": "╫д╫и╫Ш╫Щ╫Э",
|
||||
"direction": "╫Ы╫Щ╫Х╫Х╫Я",
|
||||
"disabled": "╫Ю╫Х╫й╫С╫к",
|
||||
@@ -760,6 +802,7 @@
|
||||
"documentation": "╫к╫Щ╫в╫Х╫У",
|
||||
"done": "╫б╫Щ╫Х╫Э",
|
||||
"download": "╫Ф╫Х╫и╫У╫Ф",
|
||||
"download_action_prompt": "╫Ю╫Х╫и╫Щ╫У {count} ╫к╫Ю╫Х╫а╫Х╫к",
|
||||
"download_canceled": "╫Ф╫Х╫и╫У╫Ф ╫С╫Х╫Ш╫Ь╫Ф",
|
||||
"download_complete": "╫Ф╫Х╫и╫У╫Ф ╫Ф╫Х╫й╫Ь╫Ю╫Ф",
|
||||
"download_enqueue": "╫Ф╫Х╫и╫У╫Ф ╫а╫Х╫б╫д╫Ф ╫Ь╫к╫Х╫и",
|
||||
@@ -786,6 +829,7 @@
|
||||
"edit": "╫в╫и╫Х╫Ъ",
|
||||
"edit_album": "╫в╫и╫Х╫Ъ ╫Р╫Ь╫С╫Х╫Э",
|
||||
"edit_avatar": "╫в╫и╫Х╫Ъ ╫к╫Ю╫Х╫а╫к ╫д╫и╫Х╫д╫Щ╫Ь",
|
||||
"edit_birthday": "╫в╫и╫Щ╫Ы╫к ╫Щ╫Х╫Э ╫Ф╫Х╫Ь╫У╫к",
|
||||
"edit_date": "╫в╫и╫Х╫Ъ ╫к╫Р╫и╫Щ╫Ъ",
|
||||
"edit_date_and_time": "╫в╫и╫Х╫Ъ ╫к╫Р╫и╫Щ╫Ъ ╫Х╫й╫в╫Ф",
|
||||
"edit_description": "╫в╫и╫Х╫Ъ ╫к╫Щ╫Р╫Х╫и",
|
||||
@@ -797,6 +841,7 @@
|
||||
"edit_key": "╫в╫и╫Х╫Ъ ╫Ю╫д╫к╫Ч",
|
||||
"edit_link": "╫в╫и╫Х╫Ъ ╫з╫Щ╫й╫Х╫и",
|
||||
"edit_location": "╫в╫и╫Х╫Ъ ╫Ю╫Щ╫з╫Х╫Э",
|
||||
"edit_location_action_prompt": "{count} ╫Ю╫Щ╫з╫Х╫Ю╫Щ╫Э ╫а╫в╫и╫Ы╫Х",
|
||||
"edit_location_dialog_title": "╫Ю╫Щ╫з╫Х╫Э",
|
||||
"edit_name": "╫в╫и╫Х╫Ъ ╫й╫Э",
|
||||
"edit_people": "╫в╫и╫Х╫Ъ ╫Р╫а╫й╫Щ╫Э",
|
||||
@@ -815,6 +860,7 @@
|
||||
"empty_trash": "╫и╫Х╫з╫Я ╫Р╫й╫д╫Ф",
|
||||
"empty_trash_confirmation": "╫Ф╫Р╫Э ╫С╫Р╫Ю╫к ╫С╫и╫ж╫Х╫а╫Ъ ╫Ь╫и╫Х╫з╫Я ╫Р╫к ╫Ф╫Р╫й╫д╫Ф? ╫Ц╫Ф ╫Щ╫б╫Щ╫и ╫Ь╫ж╫Ю╫Щ╫к╫Х╫к ╫Р╫к ╫Ы╫Ь ╫Ф╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Ф╫Р╫й╫д╫Ф ╫й╫Ь ╫Ф╫й╫и╫к.\n╫Р╫Щ╫Я ╫С╫Р╫д╫й╫и╫Х╫к╫Ъ ╫Ь╫С╫Ш╫Ь ╫д╫в╫Х╫Ь╫Ф ╫Ц╫Х!",
|
||||
"enable": "╫Р╫д╫й╫и",
|
||||
"enable_backup": "╫Ф╫д╫в╫Ь ╫Т╫Щ╫С╫Х╫Щ",
|
||||
"enable_biometric_auth_description": "╫Ф╫Ц╫Я ╫Р╫к ╫з╫Х╫У ╫Ф╓╛PIN ╫й╫Ь╫Ъ ╫Ы╫У╫Щ ╫Ь╫Ф╫д╫в╫Щ╫Ь ╫Р╫Щ╫Ю╫Х╫к ╫С╫Щ╫Х╫Ю╫Ш╫и╫Щ",
|
||||
"enabled": "╫Ю╫Х╫д╫в╫Ь",
|
||||
"end_date": "╫к╫Р╫и╫Щ╫Ъ ╫б╫Щ╫Х╫Э",
|
||||
@@ -951,6 +997,7 @@
|
||||
},
|
||||
"exif": "Exif",
|
||||
"exif_bottom_sheet_description": "╫Ф╫Х╫б╫г ╫к╫Щ╫Р╫Х╫и...",
|
||||
"exif_bottom_sheet_description_error": "╫й╫Т╫Щ╫Р╫Ф ╫С╫в╫У╫Ы╫Х╫Я ╫Ф╫к╫Щ╫Р╫Х╫и",
|
||||
"exif_bottom_sheet_details": "╫д╫и╫Ш╫Щ╫Э",
|
||||
"exif_bottom_sheet_location": "╫Ю╫Щ╫з╫Х╫Э",
|
||||
"exif_bottom_sheet_people": "╫Р╫а╫й╫Щ╫Э",
|
||||
@@ -971,6 +1018,8 @@
|
||||
"explorer": "╫б╫Щ╫Щ╫и",
|
||||
"export": "╫Щ╫Щ╫ж╫Х╫Р",
|
||||
"export_as_json": "╫Щ╫Щ╫ж╫Х╫Р ╫Ы-JSON",
|
||||
"export_database": "╫Щ╫Щ╫ж╫Р ╫Ю╫б╫У ╫а╫к╫Х╫а╫Щ╫Э",
|
||||
"export_database_description": "╫Щ╫Щ╫ж╫Р ╫Ю╫б╫У ╫а╫к╫Х╫а╫Щ╫Э SQL",
|
||||
"extension": "╫б╫Щ╫Х╫Ю╫к",
|
||||
"external": "╫Ч╫Щ╫ж╫Х╫а╫Щ",
|
||||
"external_libraries": "╫б╫д╫и╫Щ╫Х╫к ╫Ч╫Щ╫ж╫Х╫а╫Щ╫Х╫к",
|
||||
@@ -982,6 +1031,7 @@
|
||||
"failed_to_load_assets": "╫Ш╫в╫Щ╫а╫к ╫к╫Ю╫Х╫а╫Х╫к ╫а╫Ы╫й╫Ь╫Ф",
|
||||
"failed_to_load_folder": "╫Ш╫в╫Щ╫а╫к ╫к╫Щ╫з╫Щ╫Ф ╫а╫Ы╫й╫Ь╫Ф",
|
||||
"favorite": "╫Ю╫Х╫в╫У╫г",
|
||||
"favorite_action_prompt": "{count} ╫а╫Х╫б╫д╫Х ╫Ь╫Ю╫Х╫в╫У╫д╫Щ╫Э",
|
||||
"favorite_or_unfavorite_photo": "╫Ф╫Х╫б╫г ╫Р╫Х ╫Ф╫б╫и ╫к╫Ю╫Х╫а╫Ф ╫Ю╫Ф╫Ю╫Х╫в╫У╫д╫Щ╫Э",
|
||||
"favorites": "╫Ю╫Х╫в╫У╫д╫Щ╫Э",
|
||||
"favorites_page_no_favorites": "╫Ь╫Р ╫а╫Ю╫ж╫Р╫Х ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Х╫в╫У╫д╫Щ╫Э",
|
||||
@@ -1021,6 +1071,9 @@
|
||||
"haptic_feedback_switch": "╫Р╫д╫й╫и ╫Ю╫й╫Х╫С ╫С╫и╫Ш╫Ш",
|
||||
"haptic_feedback_title": "╫Ю╫й╫Х╫С ╫С╫и╫Ш╫Ш",
|
||||
"has_quota": "╫Щ╫й ╫Ю╫Ы╫б╫Ф",
|
||||
"hash_asset": "╫Т╫Щ╫С╫Х╫С ╫к╫Ю╫Х╫а╫Ф",
|
||||
"hashed_assets": "╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Т╫Х╫С╫С╫Х╫к",
|
||||
"hashing": "╫Ю╫Т╫С╫С",
|
||||
"header_settings_add_header_tip": "╫Ф╫Х╫б╫г ╫Ы╫Х╫к╫и╫к",
|
||||
"header_settings_field_validator_msg": "╫в╫и╫Ъ ╫Р╫Щ╫а╫Х ╫Щ╫Ы╫Х╫Ь ╫Ь╫Ф╫Щ╫Х╫к ╫и╫Щ╫з",
|
||||
"header_settings_header_name_input": "╫й╫Э ╫Ы╫Х╫к╫и╫к",
|
||||
@@ -1053,6 +1106,7 @@
|
||||
"host": "╫Ю╫Р╫и╫Ч",
|
||||
"hour": "╫й╫в╫Ф",
|
||||
"id": "╫Ю╫Ц╫Ф╫Ф",
|
||||
"idle": "╫Ю╫Ю╫к╫Щ╫Я",
|
||||
"ignore_icloud_photos": "╫Ф╫к╫в╫Ь╫Э ╫Ю╫к╫Ю╫Х╫а╫Х╫к iCloud",
|
||||
"ignore_icloud_photos_description": "╫к╫Ю╫Х╫а╫Х╫к ╫й╫Ю╫Р╫Х╫Ч╫б╫а╫Х╫к ╫С-iCloud ╫Ь╫Р ╫Щ╫Х╫в╫Ь╫Х ╫Ь╫й╫и╫к",
|
||||
"image": "╫к╫Ю╫Х╫а╫Ф",
|
||||
@@ -1110,6 +1164,7 @@
|
||||
"language_no_results_title": "╫Ь╫Р ╫а╫Ю╫ж╫Р╫Ф ╫й╫д╫Ф",
|
||||
"language_search_hint": "╫Ч╫д╫й ╫й╫д╫Х╫к...",
|
||||
"language_setting_description": "╫С╫Ч╫и ╫Р╫к ╫Ф╫й╫д╫Ф ╫Ф╫Ю╫Х╫в╫У╫д╫к ╫в╫Ь╫Щ╫Ъ",
|
||||
"large_files": "╫з╫С╫ж╫Щ╫Э ╫Т╫У╫Х╫Ь╫Щ╫Э",
|
||||
"last_seen": "╫а╫и╫Р╫Ф ╫Ь╫Р╫Ч╫и╫Х╫а╫Ф",
|
||||
"latest_version": "╫Т╫и╫б╫Ф ╫в╫У╫Ы╫а╫Щ╫к ╫С╫Щ╫Х╫к╫и",
|
||||
"latitude": "╫з╫Х ╫и╫Х╫Ч╫С",
|
||||
@@ -1125,16 +1180,18 @@
|
||||
"library_page_sort_created": "╫к╫Р╫и╫Щ╫Ъ ╫Щ╫ж╫Щ╫и╫Ф",
|
||||
"library_page_sort_last_modified": "╫й╫Х╫а╫Ф ╫Ь╫Р╫Ч╫и╫Х╫а╫Ф",
|
||||
"library_page_sort_title": "╫Ы╫Х╫к╫и╫к ╫Р╫Ь╫С╫Х╫Э",
|
||||
"licenses": "╫и╫Щ╫й╫Щ╫Х╫а╫Х╫к",
|
||||
"light": "╫С╫Ф╫Щ╫и",
|
||||
"like_deleted": "╫Ь╫Щ╫Щ╫з ╫а╫Ю╫Ч╫з",
|
||||
"link_motion_video": "╫з╫й╫и ╫б╫и╫Ш╫Х╫Я ╫к╫а╫Х╫в╫Ф",
|
||||
"link_options": "╫Р╫д╫й╫и╫Х╫Щ╫Х╫к ╫з╫Щ╫й╫Х╫и",
|
||||
"link_to_oauth": "╫з╫Щ╫й╫Х╫и ╫Ь-OAuth",
|
||||
"linked_oauth_account": "╫Ч╫й╫С╫Х╫Я OAuth ╫Ю╫з╫Х╫й╫и",
|
||||
"list": "╫и╫й╫Щ╫Ю╫Ф",
|
||||
"loading": "╫Ш╫Х╫в╫Я",
|
||||
"loading_search_results_failed": "╫Ш╫в╫Щ╫а╫к ╫к╫Х╫ж╫Р╫Х╫к ╫Ф╫Ч╫Щ╫д╫Х╫й ╫а╫Ы╫й╫Ь╫Ф",
|
||||
"local": "╫Ю╫з╫Х╫Ю╫Щ",
|
||||
"local_asset_cast_failed": "╫Ь╫Р ╫а╫Щ╫к╫Я ╫Ь╫й╫У╫и ╫к╫Ю╫Х╫а╫Ф ╫й╫Ь╫Р ╫Ф╫Х╫в╫Ь╫к╫Ф ╫Ь╫й╫и╫к",
|
||||
"local_assets": "╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫з╫Х╫Ю╫Щ╫Х╫к",
|
||||
"local_network": "╫и╫й╫к ╫Ю╫з╫Х╫Ю╫Щ╫к",
|
||||
"local_network_sheet_info": "╫Ф╫Щ╫Щ╫й╫Х╫Э ╫Щ╫к╫Ч╫С╫и ╫Ь╫й╫и╫к ╫У╫и╫Ъ ╫Ф╫Ы╫к╫Х╫С╫к ╫Ф╫Ц╫Р╫к ╫Ы╫Р╫й╫и ╫Ю╫й╫к╫Ю╫й╫Щ╫Э ╫С╫и╫й╫к ╫Ф╫Р╫Щ╫а╫Ш╫и╫а╫Ш ╫Ф╫Р╫Ь╫Ч╫Х╫Ш╫Щ ╫й╫Ю╫ж╫Х╫Щ╫а╫к",
|
||||
"location_permission": "╫Ф╫и╫й╫Р╫к ╫Ю╫Щ╫з╫Х╫Э",
|
||||
@@ -1148,6 +1205,7 @@
|
||||
"locked_folder": "╫к╫Щ╫з╫Щ╫Ф ╫а╫в╫Х╫Ь╫Ф",
|
||||
"log_out": "╫Ф╫к╫а╫к╫з",
|
||||
"log_out_all_devices": "╫Ф╫к╫а╫к╫з ╫Ю╫Ы╫Ь ╫Ф╫Ю╫Ы╫й╫Щ╫и╫Щ╫Э",
|
||||
"logged_in_as": "╫Ю╫Ч╫Х╫С╫и ╫Ы {user}",
|
||||
"logged_out_all_devices": "╫Ю╫а╫Х╫к╫з ╫Ю╫Ы╫Ь ╫Ф╫Ю╫Ы╫й╫Щ╫и╫Щ╫Э",
|
||||
"logged_out_device": "╫Ю╫Ы╫й╫Щ╫и ╫Ю╫а╫Х╫к╫з",
|
||||
"login": "╫Ы╫а╫Щ╫б╫Ф",
|
||||
@@ -1190,8 +1248,7 @@
|
||||
"manage_your_devices": "╫а╫Щ╫Ф╫Х╫Ь ╫Ф╫Ю╫Ы╫й╫Щ╫и╫Щ╫Э ╫Ф╫Ю╫Ч╫Х╫С╫и╫Щ╫Э ╫й╫Ь╫Ъ",
|
||||
"manage_your_oauth_connection": "╫а╫Щ╫Ф╫Х╫Ь ╫Ч╫Щ╫С╫Х╫и ╫Ф-OAuth ╫й╫Ь╫Ъ",
|
||||
"map": "╫Ю╫д╫Ф",
|
||||
"map_assets_in_bound": "╫к╫Ю╫Х╫а╫Ф {count}",
|
||||
"map_assets_in_bounds": "{count} ╫к╫Ю╫Х╫а╫Х╫к",
|
||||
"map_assets_in_bounds": "{count, plural, one {╫к╫Ю╫Х╫а╫Ф #} other {# ╫к╫Ю╫Х╫а╫Х╫к}}",
|
||||
"map_cannot_get_user_location": "╫Ь╫Р ╫а╫Щ╫к╫Я ╫Ь╫з╫С╫Х╫в ╫Р╫к ╫Ю╫Щ╫з╫Х╫Э ╫Ф╫Ю╫й╫к╫Ю╫й",
|
||||
"map_location_dialog_yes": "╫Ы╫Я",
|
||||
"map_location_picker_page_use_location": "╫Ф╫й╫к╫Ю╫й ╫С╫Ю╫Щ╫з╫Х╫Э ╫Ф╫Ц╫Ф",
|
||||
@@ -1225,7 +1282,7 @@
|
||||
"memories_setting_description": "╫а╫Ф╫Ь ╫Р╫к ╫Ю╫Ф ╫й╫и╫Х╫Р╫Щ╫Э ╫С╫Ц╫Ы╫и╫Х╫а╫Х╫к ╫й╫Ь╫Ъ",
|
||||
"memories_start_over": "╫Ф╫к╫Ч╫Ь ╫Ю╫Ч╫У╫й",
|
||||
"memories_swipe_to_close": "╫Ф╫Ч╫Ь╫з ╫Ь╫Ю╫в╫Ь╫Ф ╫Ы╫У╫Щ ╫Ь╫б╫Т╫Х╫и",
|
||||
"memory": "╫Ц╫Щ╫Ы╫и╫Х╫Я",
|
||||
"memory": "╫Ц╫Щ╫Ы╫и╫Х╫Я (╫Ф╫Щ╫Х╫Э ╫Ь╫д╫а╫Щ..)",
|
||||
"memory_lane_title": "╫Ю╫й╫в╫Х╫Ь ╫Ф╫Ц╫Щ╫Ы╫и╫Х╫а╫Х╫к {title}",
|
||||
"menu": "╫к╫д╫и╫Щ╫Ш",
|
||||
"merge": "╫Ю╫Ц╫Т",
|
||||
@@ -1243,6 +1300,7 @@
|
||||
"more": "╫в╫Х╫У",
|
||||
"move": "╫Ф╫в╫С╫и",
|
||||
"move_off_locked_folder": "╫Ф╫Х╫ж╫Р╫Ф ╫Ю╫Ф╫к╫Щ╫з╫Щ╫Щ╫Ф ╫Ф╫а╫в╫Х╫Ь╫Ф",
|
||||
"move_to_lock_folder_action_prompt": "{count} ╫а╫Х╫б╫д╫Х ╫Ь╫к╫Щ╫з╫Щ╫Щ╫Ф ╫Ф╫а╫в╫Х╫Ь╫Ф",
|
||||
"move_to_locked_folder": "╫Ф╫в╫С╫и ╫Ь╫к╫Щ╫з╫Щ╫Ф ╫Ф╫а╫в╫Х╫Ь╫Ф",
|
||||
"move_to_locked_folder_confirmation": "╫Ф╫к╫Ю╫Х╫а╫Х╫к ╫Х╫Ф╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫Ф╫Р╫Ь╫Х ╫Щ╫Х╫б╫и╫Х ╫Ю╫Ы╫Ь ╫Ф╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э, ╫Х╫Щ╫Ф╫Щ╫Х ╫Ю╫Х╫ж╫Т╫Щ╫Э ╫и╫з ╫С╫к╫Щ╫з╫Щ╫Ф ╫Ф╫а╫в╫Х╫Ь╫Ф",
|
||||
"moved_to_archive": "{count, plural, one {╫Ф╫Х╫в╫С╫и╫Ф ╫к╫Ю╫Х╫а╫Ф # } other {# ╫к╫Ю╫Х╫а╫Х╫к ╫Ф╫Х╫в╫С╫и╫Х}} ╫Ь╫Р╫и╫Ы╫Щ╫Х╫Я",
|
||||
@@ -1289,6 +1347,7 @@
|
||||
"no_results": "╫Р╫Щ╫Я ╫к╫Х╫ж╫Р╫Х╫к",
|
||||
"no_results_description": "╫а╫б╫Ф ╫Ь╫Ф╫й╫к╫Ю╫й ╫С╫Ю╫Щ╫Ь╫Ф ╫а╫и╫У╫д╫к ╫Р╫Х ╫С╫Ю╫Щ╫Ь╫к ╫Ю╫д╫к╫Ч ╫Щ╫Х╫к╫и ╫Ы╫Ь╫Ь╫Щ╫к",
|
||||
"no_shared_albums_message": "╫ж╫Х╫и ╫Р╫Ь╫С╫Х╫Э ╫Ы╫У╫Щ ╫Ь╫й╫к╫г ╫к╫Ю╫Х╫а╫Х╫к ╫Х╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫в╫Э ╫Р╫а╫й╫Щ╫Э ╫С╫и╫й╫к ╫й╫Ь╫Ъ",
|
||||
"no_uploads_in_progress": "╫Р╫Щ╫Я ╫Ф╫в╫Ь╫Р╫Х╫к ╫С╫к╫Ф╫Ь╫Щ╫Ъ",
|
||||
"not_in_any_album": "╫Ь╫Р ╫С╫й╫Х╫Э ╫Р╫Ь╫С╫Х╫Э",
|
||||
"not_selected": "╫Ь╫Р ╫а╫С╫Ч╫и╫Х",
|
||||
"note_apply_storage_label_to_previously_uploaded assets": "╫Ф╫в╫и╫Ф: ╫Ы╫У╫Щ ╫Ь╫Ф╫Ч╫Щ╫Ь ╫Р╫к ╫к╫Х╫Х╫Щ╫к ╫Ф╫Р╫Ч╫б╫Х╫Я ╫в╫Ь ╫к╫Ю╫Х╫а╫Х╫к ╫й╫Ф╫Х╫в╫Ь╫Х ╫С╫в╫С╫и, ╫Ф╫д╫в╫Ь ╫Р╫к",
|
||||
@@ -1326,6 +1385,7 @@
|
||||
"original": "╫Ю╫з╫Х╫и╫Щ",
|
||||
"other": "╫Р╫Ч╫и",
|
||||
"other_devices": "╫Ю╫Ы╫й╫Щ╫и╫Щ╫Э ╫Р╫Ч╫и╫Щ╫Э",
|
||||
"other_entities": "╫Щ╫й╫Х╫Щ╫Х╫к ╫Р╫Ч╫и╫Х╫к",
|
||||
"other_variables": "╫Ю╫й╫к╫а╫Щ╫Э ╫Р╫Ч╫и╫Щ╫Э",
|
||||
"owned": "╫С╫С╫в╫Ь╫Х╫к",
|
||||
"owner": "╫С╫в╫Ь╫Щ╫Э",
|
||||
@@ -1457,6 +1517,7 @@
|
||||
"purchase_server_description_2": "╫Ю╫в╫Ю╫У ╫к╫Х╫Ю╫Ъ",
|
||||
"purchase_server_title": "╫й╫и╫к",
|
||||
"purchase_settings_server_activated": "╫Ю╫д╫к╫Ч ╫Ф╫Ю╫Х╫ж╫и ╫й╫Ь ╫Ф╫й╫и╫к ╫Ю╫а╫Х╫Ф╫Ь ╫в╫Ь ╫Щ╫У╫Щ ╫Ю╫а╫Ф╫Ь ╫Ф╫Ю╫в╫и╫Ы╫к",
|
||||
"queue_status": "╫С╫к╫Х╫и {count}/{total}",
|
||||
"rating": "╫У╫Щ╫и╫Х╫Т ╫Ы╫Х╫Ы╫С",
|
||||
"rating_clear": "╫а╫з╫Ф ╫У╫Щ╫и╫Х╫Т",
|
||||
"rating_count": "{count, plural, one {╫Ы╫Х╫Ы╫С #} other {# ╫Ы╫Х╫Ы╫С╫Щ╫Э}}",
|
||||
@@ -1485,6 +1546,8 @@
|
||||
"refreshing_faces": "╫Ю╫и╫в╫а╫Я ╫д╫и╫ж╫Х╫д╫Щ╫Э",
|
||||
"refreshing_metadata": "╫Ю╫и╫в╫а╫Я ╫Ю╫Ш╫Р-╫а╫к╫Х╫а╫Щ╫Э",
|
||||
"regenerating_thumbnails": "╫Ю╫Ч╫У╫й ╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫Ю╫Х╫Ц╫в╫и╫Х╫к",
|
||||
"remote": "╫Ю╫и╫Х╫Ч╫з",
|
||||
"remote_assets": "╫к╫Ю╫Х╫а╫Х╫к ╫Ю╫и╫Х╫Ч╫з╫Х╫к",
|
||||
"remove": "╫Ф╫б╫и",
|
||||
"remove_assets_album_confirmation": "╫Ф╫Р╫Э ╫С╫Р╫Ю╫к ╫С╫и╫ж╫Х╫а╫Ъ ╫Ь╫Ф╫б╫Щ╫и {count, plural, one {╫к╫Ю╫Х╫а╫Ф #} other {# ╫к╫Ю╫Х╫а╫Х╫к}} ╫Ю╫Ф╫Р╫Ь╫С╫Х╫Э?",
|
||||
"remove_assets_shared_link_confirmation": "╫Ф╫Р╫Э ╫Р╫к╫Ф ╫С╫Ш╫Х╫Ч ╫й╫С╫и╫ж╫Х╫а╫Ъ ╫Ь╫Ф╫б╫Щ╫и {count, plural, one {╫к╫Ю╫Х╫а╫Ф #} other {# ╫к╫Ю╫Х╫а╫Х╫к}} ╫Ю╫Ф╫з╫Щ╫й╫Х╫и ╫Ф╫Ю╫й╫Х╫к╫г ╫Ф╫Ц╫Ф?",
|
||||
@@ -1492,7 +1555,9 @@
|
||||
"remove_custom_date_range": "╫Ф╫б╫и ╫Ш╫Х╫Х╫Ч ╫к╫Р╫и╫Щ╫Ы╫Щ╫Э ╫Ю╫Х╫к╫Р╫Э",
|
||||
"remove_deleted_assets": "╫Ф╫б╫и ╫з╫С╫ж╫Щ╫Э ╫Ь╫Р ╫Ю╫з╫Х╫Х╫а╫Щ╫Э",
|
||||
"remove_from_album": "╫Ф╫б╫и ╫Ю╫Р╫Ь╫С╫Х╫Э",
|
||||
"remove_from_album_action_prompt": "{count} ╫Ф╫Х╫б╫и╫Х ╫Ю╫Ф╫Р╫Ь╫С╫Х╫Э",
|
||||
"remove_from_favorites": "╫Ф╫б╫и ╫Ю╫Ф╫Ю╫Х╫в╫У╫д╫Щ╫Э",
|
||||
"remove_from_lock_folder_action_prompt": "{count} ╫Ф╫Х╫б╫и╫Х ╫Ю╫Ф╫к╫Щ╫з╫Щ╫Щ╫Ф ╫Ф╫а╫в╫Х╫Ь╫Ф",
|
||||
"remove_from_locked_folder": "╫Ф╫б╫и ╫Ю╫Ф╫к╫Щ╫з╫Щ╫Щ╫Ф ╫Ф╫а╫в╫Х╫Ь╫Ф",
|
||||
"remove_from_locked_folder_confirmation": "╫Ф╫Р╫Э ╫Р╫к╫Ф ╫С╫Ш╫Х╫Ч ╫й╫С╫и╫ж╫Х╫а╫Ъ ╫Ь╫Ф╫в╫С╫Щ╫и ╫Р╫к ╫Ф╫к╫Ю╫Х╫а╫Х╫к ╫Х╫Ф╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫Ф╫Р╫Ь╫Ф ╫Ю╫Ч╫Х╫е ╫Ь╫к╫Щ╫з╫Щ╫Щ╫Ф ╫Ф╫а╫в╫Х╫Ь╫Ф? ╫Ф╫Э ╫Щ╫Ф╫Щ╫Х ╫Ю╫Х╫ж╫Т╫Щ╫Э ╫С╫б╫д╫и╫Щ╫Щ╫Ф ╫й╫Ь╫Ъ.",
|
||||
"remove_from_shared_link": "╫Ф╫б╫и ╫Ю╫з╫Щ╫й╫Х╫и ╫Ю╫й╫Х╫к╫г",
|
||||
@@ -1520,19 +1585,25 @@
|
||||
"reset_password": "╫Р╫Щ╫д╫Х╫б ╫б╫Щ╫б╫Ю╫Ф",
|
||||
"reset_people_visibility": "╫Р╫д╫б ╫Р╫к ╫а╫и╫Р╫Х╫к ╫Ф╫Р╫а╫й╫Щ╫Э",
|
||||
"reset_pin_code": "╫Р╫д╫б ╫з╫Х╫У PIN",
|
||||
"reset_sqlite": "╫Р╫д╫б ╫Р╫к ╫Ю╫б╫У ╫Ф╫а╫к╫Х╫а╫Щ╫Э SQLite",
|
||||
"reset_sqlite_confirmation": "╫Ф╫Р╫Э ╫Р╫к╫Ф ╫С╫Ш╫Х╫Ч ╫й╫С╫и╫ж╫Х╫а╫Ъ ╫Ь╫Р╫д╫б ╫Р╫к ╫Ю╫б╫У ╫Ф╫а╫к╫Х╫а╫Щ╫Э SQLite? ╫Щ╫Ф╫Щ╫Ф ╫в╫Ь╫Щ╫Ъ ╫Ь╫Ф╫к╫а╫к╫з ╫Х╫Ь╫Ф╫к╫Ч╫С╫и ╫Ю╫Ч╫У╫й ╫Ы╫У╫Щ ╫Ь╫б╫а╫Ы╫и╫Я ╫Р╫к ╫Ф╫а╫к╫Х╫а╫Щ╫Э ╫Ю╫Ч╫У╫й",
|
||||
"reset_sqlite_success": "╫Р╫Щ╫д╫Х╫б ╫Ю╫б╫У ╫Ф╫а╫к╫Х╫а╫Щ╫Э SQLite ╫С╫Х╫ж╫в ╫С╫Ф╫ж╫Ь╫Ч╫Ф",
|
||||
"reset_to_default": "╫Р╫д╫б ╫Ь╫С╫и╫Щ╫и╫к ╫Ю╫Ч╫У╫Ь",
|
||||
"resolve_duplicates": "╫д╫к╫Х╫и ╫Ы╫д╫Щ╫Ь╫Х╫Щ╫Х╫к",
|
||||
"resolved_all_duplicates": "╫Ы╫Ь ╫Ф╫Ы╫д╫Щ╫Ь╫Х╫Щ╫Х╫к ╫а╫д╫к╫и╫Х",
|
||||
"restore": "╫й╫Ч╫Ц╫и",
|
||||
"restore_all": "╫й╫Ч╫Ц╫и ╫Ф╫Ы╫Ь",
|
||||
"restore_trash_action_prompt": "{count} ╫й╫Х╫Ч╫Ц╫и╫Х ╫Ю╫Ф╫й╫Р╫д╫Ф",
|
||||
"restore_user": "╫й╫Ч╫Ц╫и ╫Ю╫й╫к╫Ю╫й",
|
||||
"restored_asset": "╫Ф╫к╫Ю╫Х╫а╫Ф ╫й╫Х╫Ч╫Ц╫и╫Ф",
|
||||
"resume": "╫Ф╫Ю╫й╫Ъ",
|
||||
"retry_upload": "╫а╫б╫Ф ╫й╫Х╫С ╫Ь╫Ф╫в╫Ь╫Х╫к",
|
||||
"review_duplicates": "╫С╫У╫Х╫з ╫Ы╫д╫Щ╫Ь╫Х╫Щ╫Х╫к",
|
||||
"review_large_files": "╫ж╫д╫Щ╫Щ╫Ф ╫С╫з╫С╫ж╫Щ╫Э ╫Т╫У╫Х╫Ь╫Щ╫Э",
|
||||
"role": "╫к╫д╫з╫Щ╫У",
|
||||
"role_editor": "╫в╫Х╫и╫Ъ",
|
||||
"role_viewer": "╫ж╫Х╫д╫Ф",
|
||||
"running": "╫д╫Х╫в╫Ь",
|
||||
"save": "╫й╫Ю╫Х╫и",
|
||||
"save_to_gallery": "╫й╫Ю╫Х╫и ╫Ь╫Т╫Ь╫и╫Щ╫Ф",
|
||||
"saved_api_key": "╫Ю╫д╫к╫Ч API ╫й╫Ю╫Х╫и",
|
||||
@@ -1605,6 +1676,7 @@
|
||||
"select_album_cover": "╫С╫Ч╫и ╫в╫Ш╫Щ╫д╫к ╫Р╫Ь╫С╫Х╫Э",
|
||||
"select_all": "╫С╫Ч╫и ╫Ф╫Ы╫Ь",
|
||||
"select_all_duplicates": "╫С╫Ч╫и ╫Р╫к ╫Ы╫Ь ╫Ф╫Ы╫д╫Щ╫Ь╫Х╫Щ╫Х╫к",
|
||||
"select_all_in": "╫С╫Ч╫и ╫Ф╫Ы╫Х╫Ь ╫С╫к╫Х╫Ъ {group}",
|
||||
"select_avatar_color": "╫С╫Ч╫и ╫ж╫С╫в ╫к╫Ю╫Х╫а╫к ╫д╫и╫Х╫д╫Щ╫Ь",
|
||||
"select_face": "╫С╫Ч╫и ╫д╫а╫Щ╫Э",
|
||||
"select_featured_photo": "╫С╫Ч╫и ╫к╫Ю╫Х╫а╫Ф ╫Ю╫Щ╫Щ╫ж╫Т╫к",
|
||||
@@ -1663,6 +1735,7 @@
|
||||
"settings_saved": "╫Ф╫Ф╫Т╫У╫и╫Х╫к ╫а╫й╫Ю╫и╫Х",
|
||||
"setup_pin_code": "╫Ф╫Т╫У╫и ╫з╫Х╫У PIN",
|
||||
"share": "╫й╫к╫г",
|
||||
"share_action_prompt": "╫й╫Х╫к╫д╫Х {count} ╫к╫Ю╫Х╫а╫Х╫к",
|
||||
"share_add_photos": "╫Ф╫Х╫б╫г ╫к╫Ю╫Х╫а╫Х╫к",
|
||||
"share_assets_selected": "{count} ╫а╫С╫Ч╫и╫Х",
|
||||
"share_dialog_preparing": "╫Ю╫Ы╫Щ╫Я...",
|
||||
@@ -1684,6 +1757,7 @@
|
||||
"shared_link_clipboard_copied_massage": "╫Ф╫Х╫в╫к╫з ╫Ь╫Ь╫Х╫Ч",
|
||||
"shared_link_clipboard_text": "╫з╫Щ╫й╫Х╫и: {password}\n╫б╫Щ╫б╫Ю╫Ф: {link}",
|
||||
"shared_link_create_error": "╫й╫Т╫Щ╫Р╫Ф ╫С╫Щ╫ж╫Щ╫и╫к ╫з╫Щ╫й╫Х╫и ╫Ю╫й╫Х╫к╫г",
|
||||
"shared_link_custom_url_description": "╫Т╫й ╫Ь╫з╫Щ╫й╫Х╫и ╫й╫й╫Х╫к╫г ╫С╫Р╫Ю╫ж╫в╫Х╫к ╫Ы╫к╫Х╫С╫к URL ╫Ю╫Х╫к╫Р╫Ю╫к ╫Р╫Щ╫й╫Щ╫к",
|
||||
"shared_link_edit_description_hint": "╫Ф╫Ы╫а╫б ╫Р╫к ╫к╫Щ╫Р╫Х╫и ╫Ф╫й╫Щ╫к╫Х╫г",
|
||||
"shared_link_edit_expire_after_option_day": "1 ╫Щ╫Х╫Э",
|
||||
"shared_link_edit_expire_after_option_days": "{count} ╫Щ╫Ю╫Щ╫Э",
|
||||
@@ -1709,6 +1783,7 @@
|
||||
"shared_link_info_chip_metadata": "EXIF",
|
||||
"shared_link_manage_links": "╫а╫Щ╫Ф╫Х╫Ь ╫з╫Щ╫й╫Х╫и╫Щ╫Э ╫Ю╫й╫Х╫к╫д╫Щ╫Э",
|
||||
"shared_link_options": "╫Р╫д╫й╫и╫Х╫Щ╫Х╫к ╫з╫Щ╫й╫Х╫и ╫Ю╫й╫Х╫к╫г",
|
||||
"shared_link_password_description": "╫У╫и╫Х╫й ╫б╫Щ╫б╫Ю╫Ф ╫Ы╫У╫Щ ╫Ь╫Т╫й╫к ╫Ь╫з╫Щ╫й╫Х╫и ╫Ф╫Ю╫й╫Х╫к╫г ╫Ф╫Ц╫Ф",
|
||||
"shared_links": "╫з╫Щ╫й╫Х╫и╫Щ╫Э ╫Ю╫й╫Х╫к╫д╫Щ╫Э",
|
||||
"shared_links_description": "╫й╫к╫г ╫к╫Ю╫Х╫а╫Х╫к ╫Х╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫в╫Э ╫з╫Щ╫й╫Х╫и",
|
||||
"shared_photos_and_videos_count": "{assetCount, plural, other {# ╫к╫Ю╫Х╫а╫Х╫к ╫Х╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫Ю╫й╫Х╫к╫д╫Щ╫Э.}}",
|
||||
@@ -1764,6 +1839,7 @@
|
||||
"sort_title": "╫Ы╫Х╫к╫и╫к",
|
||||
"source": "╫з╫Х╫У ╫Ю╫з╫Х╫и",
|
||||
"stack": "╫в╫и╫Щ╫Ю╫Ф",
|
||||
"stack_action_prompt": "{count} ╫з╫Х╫С╫ж╫Х",
|
||||
"stack_duplicates": "╫ж╫Х╫и ╫в╫и╫Щ╫Ю╫к ╫Ы╫д╫Щ╫Ь╫Х╫Щ╫Х╫к",
|
||||
"stack_select_one_photo": "╫С╫Ч╫и ╫к╫Ю╫Х╫а╫Ф ╫и╫Р╫й╫Щ╫к ╫Р╫Ч╫к ╫в╫С╫Х╫и ╫Ф╫в╫и╫Щ╫Ю╫Ф",
|
||||
"stack_selected_photos": "╫ж╫Х╫и ╫в╫и╫Щ╫Ю╫к ╫к╫Ю╫Х╫а╫Х╫к ╫а╫С╫Ч╫и╫Х╫к",
|
||||
@@ -1783,6 +1859,7 @@
|
||||
"storage_quota": "╫Ю╫Ы╫б╫к ╫Ф╫Р╫Ч╫б╫Х╫Я",
|
||||
"storage_usage": "{used} ╫С╫й╫Щ╫Ю╫Х╫й ╫Ю╫к╫Х╫Ъ {available}",
|
||||
"submit": "╫й╫Ь╫Ч",
|
||||
"success": "╫С╫Х╫ж╫в ╫С╫Ф╫ж╫Ь╫Ч╫Ф",
|
||||
"suggestions": "╫Ф╫ж╫в╫Х╫к",
|
||||
"sunrise_on_the_beach": "Sunrise on the beach (╫Ю╫Х╫Ю╫Ь╫е ╫Ь╫Ч╫д╫й ╫С╫Р╫а╫Т╫Ь╫Щ╫к ╫Ь╫к╫Х╫ж╫Р╫Х╫к ╫Ш╫Х╫С╫Х╫к ╫Щ╫Х╫к╫и)",
|
||||
"support": "╫к╫Ю╫Щ╫Ы╫Ф",
|
||||
@@ -1792,6 +1869,8 @@
|
||||
"sync": "╫б╫а╫Ы╫и╫Я",
|
||||
"sync_albums": "╫б╫а╫Ы╫и╫Я ╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э",
|
||||
"sync_albums_manual_subtitle": "╫б╫а╫Ы╫и╫Я ╫Р╫к ╫Ы╫Ь ╫Ф╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫Х╫Ф╫к╫Ю╫Х╫а╫Х╫к ╫й╫Ф╫Х╫в╫Ь╫Х ╫Ь╫Р╫Ь╫С╫Х╫Ю╫Щ ╫Ф╫Т╫Щ╫С╫Х╫Щ ╫й╫а╫С╫Ч╫и╫Х",
|
||||
"sync_local": "╫б╫а╫Ы╫и╫Я ╫Ю╫з╫Х╫Ю╫Щ",
|
||||
"sync_remote": "╫б╫а╫Ы╫и╫Я ╫Ю╫и╫Х╫Ч╫з",
|
||||
"sync_upload_album_setting_subtitle": "╫ж╫Х╫и ╫Х╫Ф╫в╫Ь╫Ф ╫к╫Ю╫Х╫а╫Х╫к ╫Х╫б╫и╫Ш╫Х╫а╫Щ╫Э ╫й╫Ь╫Ъ ╫Ь╫Р╫Ь╫С╫Х╫Ю╫Щ╫Э ╫й╫а╫С╫Ч╫и╫Х ╫С╫Щ╫Щ╫й╫Х╫Э",
|
||||
"tag": "╫к╫Т",
|
||||
"tag_assets": "╫к╫Щ╫Х╫Т ╫к╫Ю╫Х╫а╫Х╫к",
|
||||
@@ -1802,6 +1881,7 @@
|
||||
"tag_updated": "╫к╫Т ╫Ю╫в╫Х╫У╫Ы╫Я: {tag}",
|
||||
"tagged_assets": "╫к╫Х╫Щ╫Т╫Х {count, plural, one {╫к╫Ю╫Х╫а╫Ф #} other {# ╫к╫Ю╫Х╫а╫Х╫к}}",
|
||||
"tags": "╫к╫Т╫Щ╫Э",
|
||||
"tap_to_run_job": "╫Ь╫Ч╫е ╫в╫Ь ╫Ю╫а╫к ╫Ь╫Ф╫д╫в╫Щ╫Ь ╫Ю╫й╫Щ╫Ю╫Ф",
|
||||
"template": "╫к╫С╫а╫Щ╫к",
|
||||
"theme": "╫в╫и╫Ы╫к ╫а╫Х╫й╫Р",
|
||||
"theme_selection": "╫С╫Ч╫Щ╫и╫к ╫в╫и╫Ы╫к ╫а╫Х╫й╫Р",
|
||||
@@ -1834,6 +1914,7 @@
|
||||
"total": "╫б╫Ф\"╫Ы",
|
||||
"total_usage": "╫й╫Щ╫Ю╫Х╫й ╫Ы╫Х╫Ь╫Ь",
|
||||
"trash": "╫Р╫й╫д╫Ф",
|
||||
"trash_action_prompt": "{count} ╫Ф╫Х╫в╫С╫и╫Х ╫Ь╫Р╫й╫д╫Ф",
|
||||
"trash_all": "╫Ф╫в╫С╫и ╫Ф╫Ы╫Ь ╫Ь╫Р╫й╫д╫Ф",
|
||||
"trash_count": "╫Ф╫в╫С╫и ╫Ь╫Р╫й╫д╫Ф {count, number}",
|
||||
"trash_delete_asset": "╫Ф╫в╫С╫и ╫Ь╫Р╫й╫д╫Ф/╫Ю╫Ч╫з ╫к╫Ю╫Х╫а╫Ф",
|
||||
@@ -1851,9 +1932,11 @@
|
||||
"unable_to_change_pin_code": "╫Ь╫Р ╫а╫Щ╫к╫Я ╫Ь╫й╫а╫Х╫к ╫Р╫к ╫з╫Х╫У ╫Ф PIN",
|
||||
"unable_to_setup_pin_code": "╫Ь╫Р ╫а╫Щ╫к╫Я ╫Ь╫Ф╫Т╫У╫Щ╫и ╫з╫Х╫У PIN",
|
||||
"unarchive": "╫Ф╫Х╫ж╫Р ╫Ю╫Р╫и╫Ы╫Щ╫Х╫Я",
|
||||
"unarchive_action_prompt": "{count} ╫Ф╫Х╫б╫и╫Х ╫Ю╫Ф╫Р╫и╫Ы╫Щ╫Х╫Я",
|
||||
"unarchived_count": "{count, plural, other {# ╫Ф╫Х╫ж╫Р╫Х ╫Ю╫Ф╫Р╫и╫Ы╫Щ╫Х╫Я}}",
|
||||
"undo": "╫Ь╫С╫Ш╫Ь",
|
||||
"unfavorite": "╫Ь╫Р ╫Ю╫Х╫в╫У╫г",
|
||||
"unfavorite_action_prompt": "{count} ╫Ф╫Х╫б╫и╫Х ╫Ю╫Ф╫Ю╫Х╫в╫У╫д╫Щ╫Э",
|
||||
"unhide_person": "╫С╫Ш╫Ь ╫Ф╫б╫к╫и╫к ╫Р╫У╫Э",
|
||||
"unknown": "╫Ь╫Р ╫Щ╫У╫Х╫в",
|
||||
"unknown_country": "╫Ю╫У╫Щ╫а╫Ф ╫Ь╫Р ╫Щ╫У╫Х╫в╫Ф",
|
||||
@@ -1869,16 +1952,22 @@
|
||||
"unsaved_change": "╫й╫Щ╫а╫Х╫Щ ╫Ь╫Р ╫а╫й╫Ю╫и",
|
||||
"unselect_all": "╫С╫Ш╫Ь ╫С╫Ч╫Щ╫и╫Ф ╫С╫Ф╫Ы╫Ь",
|
||||
"unselect_all_duplicates": "╫С╫Ш╫Ь ╫С╫Ч╫Щ╫и╫к ╫Ы╫Ь ╫Ф╫Ы╫д╫Щ╫Ь╫Х╫Щ╫Х╫к",
|
||||
"unselect_all_in": "╫С╫Ш╫Ь ╫Р╫к ╫Ф╫С╫Ч╫Щ╫и╫Ф ╫й╫Ь ╫Ф╫Ы╫Ь ╫С {group}",
|
||||
"unstack": "╫С╫Ш╫Ь ╫в╫и╫Щ╫Ю╫Ф",
|
||||
"unstack_action_prompt": "{count} ╫Ф╫Х╫д╫и╫У╫Х",
|
||||
"unstacked_assets_count": "{count, plural, one {╫к╫Ю╫Х╫а╫Ф # ╫Ф╫Х╫б╫и╫Ф} other {# ╫к╫Ю╫Х╫а╫Х╫к ╫Ф╫Х╫б╫и╫Х}} ╫Ю╫Ф╫в╫и╫Щ╫Ю╫Ф",
|
||||
"untagged": "╫Ь╫Р ╫Ю╫к╫Щ╫Х╫Т╫Щ╫Э",
|
||||
"up_next": "╫Ф╫С╫Р ╫С╫к╫Х╫и",
|
||||
"updated_at": "╫в╫Х╫У╫Ы╫Я",
|
||||
"updated_password": "╫б╫Щ╫б╫Ю╫Ф ╫в╫Х╫У╫Ы╫а╫Ф",
|
||||
"upload": "╫Ф╫в╫Ь╫Р╫Ф",
|
||||
"upload_action_prompt": "{count} ╫а╫Х╫б╫д╫Х ╫Ь╫к╫Х╫и ╫Ь╫Ф╫в╫Ь╫Р╫Ф",
|
||||
"upload_concurrency": "╫С╫Х-╫Ц╫Ю╫а╫Щ╫Х╫к ╫й╫Ь ╫Ф╫в╫Ь╫Р╫Ф",
|
||||
"upload_details": "╫д╫и╫Ш╫Щ ╫Ф╫в╫Ь╫Р╫Ф",
|
||||
"upload_dialog_info": "╫Ф╫Р╫Э ╫С╫и╫ж╫Х╫а╫Ъ ╫Ь╫Т╫С╫Х╫к ╫Р╫к ╫Ф╫к╫Ю╫Х╫а╫Х╫к ╫й╫а╫С╫Ч╫и╫Х ╫Ь╫й╫и╫к?",
|
||||
"upload_dialog_title": "╫Ф╫в╫Ь╫Р╫к ╫к╫Ю╫Х╫а╫Ф",
|
||||
"upload_errors": "╫Ф╫в╫Ь╫Р╫Ф ╫Ф╫Х╫й╫Ь╫Ю╫Ф ╫в╫Э {count, plural, one {╫й╫Т╫Щ╫Р╫Ф #} other {# ╫й╫Т╫Щ╫Р╫Х╫к}}, ╫и╫в╫а╫Я ╫Р╫к ╫Ф╫У╫г ╫Ы╫У╫Щ ╫Ь╫и╫Р╫Х╫к ╫к╫Ю╫Х╫а╫Х╫к ╫й╫Ф╫Х╫в╫Ь╫Х.",
|
||||
"upload_finished": "╫Ф╫в╫Ь╫Р╫Ф ╫Ф╫б╫к╫Щ╫Щ╫Ю╫Ф",
|
||||
"upload_progress": "╫а╫Х╫к╫и╫Х {remaining, number} - ╫Ш╫Х╫д╫Ь╫Х {processed, number}/{total, number}",
|
||||
"upload_skipped_duplicates": "╫У╫Щ╫Ь╫Т ╫в╫Ь {count, plural, one {╫к╫Ю╫Х╫а╫Ф ╫Ы╫д╫Х╫Ь╫Ф #} other {# ╫к╫Ю╫Х╫а╫Х╫к ╫Ы╫д╫Х╫Ь╫Х╫к}}",
|
||||
"upload_status_duplicates": "╫Ы╫д╫Щ╫Ь╫Х╫Щ╫Х╫к",
|
||||
@@ -1887,6 +1976,7 @@
|
||||
"upload_success": "╫Ф╫Ф╫в╫Ь╫Р╫Ф ╫С╫Х╫ж╫в╫Ф ╫С╫Ф╫ж╫Ь╫Ч╫Ф. ╫и╫в╫а╫Я ╫Р╫к ╫Ф╫У╫г ╫Ы╫У╫Щ ╫Ь╫ж╫д╫Х╫к ╫С╫к╫Ю╫Х╫а╫Х╫к ╫й╫Ф╫Х╫в╫Ь╫Х.",
|
||||
"upload_to_immich": "╫Ф╫в╫Ь╫Ф ╫Ь╫й╫и╫к ({count})",
|
||||
"uploading": "╫Ю╫в╫Ь╫Ф",
|
||||
"uploading_media": "╫Ю╫в╫Ь╫Ф ╫Ю╫У╫Щ╫Ф",
|
||||
"url": "URL",
|
||||
"usage": "╫й╫Щ╫Ю╫Х╫й",
|
||||
"use_biometric": "╫Ф╫й╫к╫Ю╫й ╫С╫Р╫Щ╫Ю╫Х╫к ╫С╫Щ╫Х╫Ю╫Ш╫и╫Щ",
|
||||
@@ -1907,6 +1997,7 @@
|
||||
"user_usage_stats_description": "╫Ф╫ж╫Т ╫б╫Ш╫Ш╫Щ╫б╫Ш╫Щ╫з╫Х╫к ╫й╫Щ╫Ю╫Х╫й ╫С╫Ч╫й╫С╫Х╫Я",
|
||||
"username": "╫й╫Э ╫Ю╫й╫к╫Ю╫й",
|
||||
"users": "╫Ю╫й╫к╫Ю╫й╫Щ╫Э",
|
||||
"users_added_to_album_count": "╫а╫Х╫б╫д╫Х {count, plural, one {╫Ю╫й╫к╫Ю╫й #} other {# ╫Ю╫й╫к╫Ю╫й╫Щ╫Э}} ╫Ь╫Р╫Ь╫С╫Х╫Э",
|
||||
"utilities": "╫Ы╫Ь╫Щ╫Э",
|
||||
"validate": "╫Ь╫Р╫Ю╫к",
|
||||
"validate_endpoint_error": "╫а╫Р ╫Ь╫Ф╫Ц╫Щ╫Я ╫Ы╫к╫Х╫С╫к ╫к╫з╫а╫Щ╫к",
|
||||
@@ -1925,6 +2016,7 @@
|
||||
"view_album": "╫Ф╫ж╫Т ╫Р╫Ь╫С╫Х╫Э",
|
||||
"view_all": "╫Ф╫ж╫Т ╫Ф╫Ы╫Ь",
|
||||
"view_all_users": "╫Ф╫ж╫Т ╫Р╫к ╫Ы╫Ь ╫Ф╫Ю╫й╫к╫Ю╫й╫Щ╫Э",
|
||||
"view_details": "╫Ф╫ж╫Т ╫д╫и╫Ш╫Щ╫Э",
|
||||
"view_in_timeline": "╫и╫Р╫Ф ╫С╫ж╫Щ╫и ╫Ф╫Ц╫Ю╫Я",
|
||||
"view_link": "╫Ф╫ж╫Т ╫з╫Щ╫й╫Х╫и",
|
||||
"view_links": "╫Ф╫ж╫Т ╫з╫Щ╫й╫Х╫и╫Щ╫Э",
|
||||
|
||||
247
i18n/hi.json
247
i18n/hi.json
@@ -22,6 +22,7 @@
|
||||
"add_partner": "рдЬреЛрдбрд╝реАрджрд╛рд░ рдбрд╛рд▓реЗрдВ",
|
||||
"add_path": "рдкрде рдбрд╛рд▓реЗрдВ",
|
||||
"add_photos": "рдлрд╝реЛрдЯреЛ рдбрд╛рд▓реЗрдВ",
|
||||
"add_tag": "рдЪрд┐рд╣реНрдирд┐рдд рдХрд░реЗрдВ",
|
||||
"add_to": "рдЗрд╕рдореЗрдВ рдбрд╛рд▓реЗрдВтАж",
|
||||
"add_to_album": "рдПрд▓реНрдмрдо рдореЗрдВ рдбрд╛рд▓реЗрдВ",
|
||||
"add_to_album_bottom_sheet_added": "{album} рдореЗрдВ рдбрд╛рд▓реЗрдВ",
|
||||
@@ -33,6 +34,7 @@
|
||||
"added_to_favorites_count": "рдкрд╕рдВрджреАрджрд╛ рдореЗрдВ {count, number} рдбрд╛рд▓рд╛ рдЧрдпрд╛",
|
||||
"admin": {
|
||||
"add_exclusion_pattern_description": "рдмрд╣рд┐рд╖реНрдХрд░рдг рдкреИрдЯрд░реНрди рдЬреЛрдбрд╝реЗрдВ. *, **, рдФрд░ ? рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЧреНрд▓реЛрдмрд┐рдВрдЧ рдХрд░рдирд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИред \"Raw\" рдирд╛рдордХ рдХрд┐рд╕реА рднреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, \"**/Raw/**\" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред \".tif\" рд╕реЗ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, \"**/*.tif\" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдХрд┐рд╕реА рдкреВрд░реНрдг рдкрде рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, \"/path/to/ignore/**\" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред",
|
||||
"admin_user": "рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛",
|
||||
"asset_offline_description": "рдпрд╣ рдмрд╛рд╣рд░реА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдПрд╕реЗрдЯ рдЕрдм рдбрд┐рд╕реНрдХ рдкрд░ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрд╕реЗ рдЯреНрд░реИрд╢ рдореЗрдВ рдбрд╛рд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рднреАрддрд░ рдХрд╣реАрдВ рд▓реЗ рдЬрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдирдИ рд╕рдВрдмрдВрдзрд┐рдд рдПрд╕реЗрдЯ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рдЯрд╛рдЗрдорд▓рд╛рдЗрди рджреЗрдЦреЗрдВред рдЗрд╕ рдПрд╕реЗрдЯ рдХреЛ рд╡рд╛рдкрд╕ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдлрд╝рд╛рдЗрд▓ рдкрде рдХреЛ рдЗрдореНрдорд┐рдЪ рджреНрд╡рд╛рд░рд╛ рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рд╕реНрдХреИрди рдХрд░реЗрдВред",
|
||||
"authentication_settings": "рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕реЗрдЯрд┐рдВрдЧреНрд╕",
|
||||
"authentication_settings_description": "рдкрд╛рд╕рд╡рд░реНрдб, OAuth рдФрд░ рдЕрдиреНрдп рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ",
|
||||
@@ -43,7 +45,7 @@
|
||||
"backup_database_enable_description": "Enable database dumps",
|
||||
"backup_keep_last_amount": "рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд┐рдЫрд▓реЗ рдбрдВрдк рдХреА рдорд╛рддреНрд░рд╛",
|
||||
"backup_settings": "рдбреЗрдЯрд╛рдмреЗрд╕ рдбрдВрдк рд╕реЗрдЯрд┐рдВрдЧреНрд╕",
|
||||
"backup_settings_description": "рдбреЗрдЯрд╛рдмреЗрд╕ рдбрдВрдк рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВред рдзреНрдпрд╛рди рджреЗрдВ: рдЗрди рдХрд╛рд░реНрдпреЛрдВ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ рдФрд░ рд╡рд┐рдлрд▓рддрд╛ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЖрдкрдХреЛ рд╕реВрдЪрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред",
|
||||
"backup_settings_description": "рдбреЗрдЯрд╛рдмреЗрд╕ рдбрдВрдк рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВред",
|
||||
"cleared_jobs": "{job}: рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдп рд╕рд╛рдлрд╝ рдХрд░ рджрд┐рдП рдЧрдП",
|
||||
"config_set_by_file": "Config рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдПрдХ config рдлрд╝рд╛рдЗрд▓ рджреНрд╡рд╛рд░рд╛ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ",
|
||||
"confirm_delete_library": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ {library} рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
@@ -164,12 +166,26 @@
|
||||
"metadata_settings_description": "рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд╕реЗрдЯрд┐рдВрдЧ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ",
|
||||
"migration_job": "рдкреНрд░рд╡рд╛рд╕",
|
||||
"migration_job_description": "рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдФрд░ рдЪреЗрд╣рд░реЛрдВ рдХреЗ рдердВрдмрдиреЗрд▓ рдХреЛ рдирд╡реАрдирддрдо рдлрд╝реЛрд▓реНрдбрд░ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░реЗрдВ",
|
||||
"nightly_tasks_cluster_faces_setting_description": "рдирдП рдкрд╣рдЪрд╛рдиреЗ рдЧрдП рдЪреЗрд╣рд░реЛрдВ рдкрд░ рдЪреЗрд╣рд░реЗ рдХреА рдкрд╣рдЪрд╛рди рдЪрд▓рд╛рдПрдБ",
|
||||
"nightly_tasks_cluster_new_faces_setting": "рдирдП рдЪреЗрд╣рд░реЛрдВ рдХреЛ рд╕рдореВрд╣ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ",
|
||||
"nightly_tasks_database_cleanup_setting": "рдбреЗрдЯрд╛рдмреЗрд╕ рдХреНрд▓реАрдирдЕрдк рдХрд╛рд░реНрдп",
|
||||
"nightly_tasks_database_cleanup_setting_description": "рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдкреБрд░рд╛рдирд╛, рд╕рдорд╛рдкреНрдд рд╣реЛ рдЪреБрдХрд╛ рдбреЗрдЯрд╛ рд╕рд╛рдлрд╝ рдХрд░реЗрдВ",
|
||||
"nightly_tasks_generate_memories_setting": "рдпрд╛рджреЗрдВ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ",
|
||||
"nightly_tasks_generate_memories_setting_description": "рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рд╕реЗ рдирдИ рдпрд╛рджреЗрдВ рдмрдирд╛рдПрдБ",
|
||||
"nightly_tasks_missing_thumbnails_setting": "рдЧрд╛рдпрдм рдердВрдмрдиреЗрд▓ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ",
|
||||
"nightly_tasks_missing_thumbnails_setting_description": "рдердВрдмрдиреЗрд▓ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдердВрдмрдиреЗрд▓ рдХреЗ рдмрд┐рдирд╛ рдХрддрд╛рд░рдмрджреНрдз рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐рдпрд╛рдБ",
|
||||
"nightly_tasks_settings": "рд░рд╛рддреНрд░рд┐рдХрд╛рд▓реАрди рдХрд╛рд░реНрдп рд╕реЗрдЯрд┐рдВрдЧреНрд╕",
|
||||
"nightly_tasks_settings_description": "рд░рд╛рддреНрд░рд┐рдХрд╛рд▓реАрди рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░реЗрдВ",
|
||||
"nightly_tasks_start_time_setting": "рд╕рдордп рд╢реБрд░реВ",
|
||||
"nightly_tasks_start_time_setting_description": "рд╡рд╣ рд╕рдордп рдЬрдм рд╕рд░реНрд╡рд░ рд░рд╛рддреНрд░рд┐рдХрд╛рд▓реАрди рдХрд╛рд░реНрдп рдЪрд▓рд╛рдирд╛ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ",
|
||||
"nightly_tasks_sync_quota_usage_setting": "рд╕рд┐рдВрдХ рдХреЛрдЯрд╛ рдЙрдкрдпреЛрдЧ",
|
||||
"nightly_tasks_sync_quota_usage_setting_description": "рд╡рд░реНрддрдорд╛рди рдЙрдкрдпреЛрдЧ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдВрдЧреНрд░рд╣рдг рдХреЛрдЯрд╛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ",
|
||||
"no_paths_added": "рдХреЛрдИ рдкрде рдирд╣реАрдВ рдбрд╛рд▓рд╛ рдЧрдпрд╛",
|
||||
"no_pattern_added": "рдХреЛрдИ рдкреИрдЯрд░реНрди рдирд╣реАрдВ рдбрд╛рд▓рд╛ рдЧрдпрд╛",
|
||||
"note_apply_storage_label_previous_assets": "рдиреЛрдЯ: рдкрд╣рд▓реЗ рдЕрдкрд▓реЛрдб рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдкрд░ рд╕реНрдЯреЛрд░реЗрдЬ рд▓реЗрдмрд▓ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЪрд▓рд╛рдПрдБ",
|
||||
"note_cannot_be_changed_later": "рдиреЛрдЯ: рдЗрд╕реЗ рдмрд╛рдж рдореЗрдВ рдмрджрд▓рд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛!",
|
||||
"notification_email_from_address": "рдЗрд╕ рдкрддреЗ рд╕реЗ",
|
||||
"notification_email_from_address_description": "рдкреНрд░реЗрд╖рдХ рдХрд╛ рдИрдореЗрд▓ рдкрддрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: \"рдЗрдорд┐рдЪ рдлреЛрдЯреЛ рд╕рд░реНрд╡рд░ <noreply@example.com>\"",
|
||||
"notification_email_from_address_description": "рдкреНрд░реЗрд╖рдХ рдХрд╛ рдИрдореЗрд▓ рдкрддрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: \"рдЗрдорд┐рдЪ рдлреЛрдЯреЛ рд╕рд░реНрд╡рд░ <noreply@example.com>\"ред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдк рдЙрд╕реА рдкрддреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдЬрд┐рд╕рд╕реЗ рдЖрдкрдХреЛ рдИрдореЗрд▓ рднреЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИред",
|
||||
"notification_email_host_description": "рдИрдореЗрд▓ рд╕рд░реНрд╡рд░ рдХрд╛ рд╣реЛрд╕реНрдЯ (рдЙрджрд╛. smtp.immitch.app)",
|
||||
"notification_email_ignore_certificate_errors": "рдкреНрд░рдорд╛рдгрдкрддреНрд░ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдкрд░ рдзреНрдпрд╛рди рди рджреЗрдВ",
|
||||
"notification_email_ignore_certificate_errors_description": "рдЯреАрдПрд▓рдПрд╕ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╕рддреНрдпрд╛рдкрди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдкрд░ рдзреНрдпрд╛рди рди рджреЗрдВ (рдЕрдиреБрд╢рдВрд╕рд┐рдд рдирд╣реАрдВ)",
|
||||
@@ -193,7 +209,9 @@
|
||||
"oauth_enable_description": "OAuth рд╕реЗ рд▓реЙрдЧрд┐рди рдХрд░реЗрдВ",
|
||||
"oauth_mobile_redirect_uri": "рдореЛрдмрд╛рдЗрд▓ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдпреВрдЖрд░рдЖрдИ",
|
||||
"oauth_mobile_redirect_uri_override": "рдореЛрдмрд╛рдЗрд▓ рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдпреВрдЖрд░рдЖрдИ рдУрд╡рд░рд░рд╛рдЗрдб",
|
||||
"oauth_mobile_redirect_uri_override_description": "рд╕рдХреНрд╖рдо рдХрд░реЗрдВ рдЬрдм 'app.immitch:/' рдПрдХ рдЕрдорд╛рдиреНрдп рд░реАрдбрд╛рдпрд░реЗрдХреНрдЯ рдпреВрдЖрд░рдЖрдИ рд╣реЛред",
|
||||
"oauth_mobile_redirect_uri_override_description": "рдЬрдм OAuth рдкреНрд░рджрд╛рддрд╛ рдХрд┐рд╕реА рдореЛрдмрд╛рдЗрд▓ URI, рдЬреИрд╕реЗ ''{callback}'' рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛, рддрдм рд╕рдХреНрд╖рдо рдХрд░реЗрдВ",
|
||||
"oauth_role_claim": "рднреВрдорд┐рдХрд╛ рдХрд╛ рджрд╛рд╡рд╛",
|
||||
"oauth_role_claim_description": "рдЗрд╕ рджрд╛рд╡реЗ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкрд╣реБрдБрдЪ рдкреНрд░рджрд╛рди рдХрд░реЗрдВред рджрд╛рд╡реЗ рдореЗрдВ 'рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛' рдпрд╛ 'рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ' рд╣реЛ рд╕рдХрддрд╛ рд╣реИред",
|
||||
"oauth_settings": "рдУрдСрде",
|
||||
"oauth_settings_description": "OAuth рд▓реЙрдЧрд┐рди рд╕реЗрдЯрд┐рдВрдЧ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ",
|
||||
"oauth_settings_more_details": "рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рджреЗрдЦреЗрдВ <link>рдбреЙрдХреНрд╕</link>ред",
|
||||
@@ -202,7 +220,7 @@
|
||||
"oauth_storage_quota_claim": "рднрдВрдбрд╛рд░рдг рдХреЛрдЯрд╛ рдХрд╛ рджрд╛рд╡рд╛",
|
||||
"oauth_storage_quota_claim_description": "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕рдВрдЧреНрд░рд╣рдг рдХреЛрдЯрд╛ рдХреЛ рдЗрд╕ рджрд╛рд╡реЗ рдХреЗ рдореВрд▓реНрдп рдкрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрд░реЗрдВред",
|
||||
"oauth_storage_quota_default": "рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рдВрдЧреНрд░рд╣рдг рдХреЛрдЯрд╛ (GiB)",
|
||||
"oauth_storage_quota_default_description": "GiB рдореЗрдВ рдХреЛрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рддрдм рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬрдм рдХреЛрдИ рджрд╛рд╡рд╛ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ (рдЕрд╕реАрдорд┐рдд рдХреЛрдЯрд╛ рдХреЗ рд▓рд┐рдП 0 рджрд░реНрдЬ рдХрд░реЗрдВ)ред",
|
||||
"oauth_storage_quota_default_description": "GiB рдореЗрдВ рдХреЛрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рддрдм рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬрдм рдХреЛрдИ рджрд╛рд╡рд╛ рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ ред",
|
||||
"oauth_timeout": "рдмреНрд░реЗрдХ рдХрд╛ рдЕрдиреБрд░реЛрдз",
|
||||
"oauth_timeout_description": "рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдордп-рд╕реАрдорд╛ рдорд┐рд▓реАрд╕реЗрдХрдВрдб рдореЗрдВ",
|
||||
"password_enable_description": "рдИрдореЗрд▓ рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗ рд▓реЙрдЧрд┐рди рдХрд░реЗрдВ",
|
||||
@@ -242,6 +260,7 @@
|
||||
"storage_template_migration_info": "рд╕реНрдЯреЛрд░реЗрдЬ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╕рднреА рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ рд▓реЛрдЕрд░рдХреЗрд╕ рдореЗрдВ рдмрджрд▓ рджреЗрдЧрд╛ред рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдореЗрдВ рдХрд┐рдП рдЧрдП рдмрджрд▓рд╛рд╡ рд╕рд┐рд░реНрдлрд╝ рдирдИ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрдВрдЧреЗред рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЛ рдкрд╣рд▓реЗ рдЕрдкрд▓реЛрдб рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдкрд░ рдкреВрд░реНрд╡рд╡реНрдпрд╛рдкреА рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, <link>{job}</link> рдЪрд▓рд╛рдПрдБред",
|
||||
"storage_template_migration_job": "рд╕рдВрдЧреНрд░рд╣рдг рдЯреЗрдореНрдкрд▓реЗрдЯ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХрд╛рд░реНрдп",
|
||||
"storage_template_more_details": "рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рджреЗрдЦреЗрдВ <template-link>рднрдВрдбрд╛рд░рдг рдЯреЗрдореНрдкрд▓реЗрдЯ</template-link> рдФрд░ рдЗрд╕рдХреЗ <implications-link>рдЖрд╢рдп</implications-link>",
|
||||
"storage_template_onboarding_description_v2": "рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдкрд░, рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛-рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕реНрд╡рддрдГ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░реЗрдЧреАред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ <link>рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг</link> рджреЗрдЦреЗрдВред",
|
||||
"storage_template_path_length": "рдЕрдиреБрдорд╛рдирд┐рдд рдкрде рд▓рдВрдмрд╛рдИ рд╕реАрдорд╛: <b>{length, number}</b>/{limit, number}",
|
||||
"storage_template_settings": "рднрдВрдбрд╛рд░рдг рдЯреЗрдореНрдкрд▓реЗрдЯ",
|
||||
"storage_template_settings_description": "рдЕрдкрд▓реЛрдб рд╕рдВрдкрддреНрддрд┐ рдХреА рдлрд╝реЛрд▓реНрдбрд░ рд╕рдВрд░рдЪрдирд╛ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ",
|
||||
@@ -354,10 +373,12 @@
|
||||
"admin_password": "рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкрд╛рд╕рд╡рд░реНрдб",
|
||||
"administration": "рдкреНрд░рд╢рд╛рд╕рди",
|
||||
"advanced": "рд╡рд┐рдХрд╕рд┐рдд",
|
||||
"advanced_settings_beta_timeline_subtitle": "рдирдП рдРрдк рдЕрдиреБрднрд╡ рдХреЛ рдЖрдЬрд╝рдорд╛рдПрдБ",
|
||||
"advanced_settings_beta_timeline_title": "рдмреАрдЯрд╛ рдЯрд╛рдЗрдорд▓рд╛рдЗрди",
|
||||
"advanced_settings_enable_alternate_media_filter_subtitle": "рд╕рд┐рдВрдХ рдХреЗ рджреМрд░рд╛рди рд╡реИрдХрд▓реНрдкрд┐рдХ рдорд╛рдирджрдВрдбреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдореАрдбрд┐рдпрд╛ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЗрд╕реЗ рдХреЗрд╡рд▓ рддрднреА рдЖрдЬрд╝рдорд╛рдПрдБ рдЬрдм рдЖрдкрдХреЛ рдРрдк рджреНрд╡рд╛рд░рд╛ рд╕рднреА рдПрд▓реНрдмрдореЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рд╣реЛред",
|
||||
"advanced_settings_enable_alternate_media_filter_title": "[рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ] рд╡реИрдХрд▓реНрдкрд┐рдХ рдбрд┐рд╡рд╛рдЗрд╕ рдПрд▓реНрдмрдо рд╕рд┐рдВрдХ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ",
|
||||
"advanced_settings_log_level_title": "рд▓реЙрдЧ рд╕реНрддрд░:{level}",
|
||||
"advanced_settings_prefer_remote_subtitle": "рдХреБрдЫ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдореМрдЬреВрдж рдПрд╕реЗрдЯ рд╕реЗ рдердВрдмрдиреЗрд▓ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдлрд╝реА рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд░рд┐рдореЛрдЯ рдЗрдореЗрдЬ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░реЗрдВред",
|
||||
"advanced_settings_prefer_remote_subtitle": "рдХреБрдЫ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реНрдерд╛рдиреАрдп рдПрд╕реЗрдЯ рд╕реЗ рдердВрдмрдиреЗрд▓ рд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рдзреАрдореЗ рд╣реЛрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рджреВрд░рд╕реНрде рдЗрдореЗрдЬ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░реЗрдВред",
|
||||
"advanced_settings_prefer_remote_title": "рджреВрд░рд╕реНрде рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрдВ",
|
||||
"advanced_settings_proxy_headers_subtitle": "рдкреНрд░рддреНрдпреЗрдХ рдиреЗрдЯрд╡рд░реНрдХ рдЕрдиреБрд░реЛрдз рдХреЗ рд╕рд╛рде рдЗрдореНрдорд┐рдЪ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░реЙрдХреНрд╕реА рд╣реЗрдбрд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ",
|
||||
"advanced_settings_proxy_headers_title": "рдкреНрд░реЙрдХреНрд╕реА рд╣реЗрдбрд░",
|
||||
@@ -376,6 +397,7 @@
|
||||
"album_cover_updated": "рдПрд▓реНрдмрдо рдХрд╡рд░ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛",
|
||||
"album_delete_confirmation": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ рдПрд▓реНрдмрдо {album} рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
"album_delete_confirmation_description": "рдпрджрд┐ рдпрд╣ рдПрд▓реНрдмрдо рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕реЗ рдПрдХреНрд╕реЗрд╕ рдирд╣реАрдВ рдХрд░ рдкрд╛рдПрдВрдЧреЗред",
|
||||
"album_deleted": "рдПрд▓реНрдмрдо рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛",
|
||||
"album_info_card_backup_album_excluded": "рдЫреЛрдбрд╝рд╛ рдЧрдпрд╛",
|
||||
"album_info_card_backup_album_included": "рд╢рд╛рдорд┐рд▓",
|
||||
"album_info_updated": "рдПрд▓реНрдмрдо рдХреА рдЬрд╛рдирдХрд╛рд░реА рдЕрдкрдбреЗрдЯ рдХреА рдЧрдИ",
|
||||
@@ -385,6 +407,7 @@
|
||||
"album_options": "рдПрд▓реНрдмрдо рд╡рд┐рдХрд▓реНрдк",
|
||||
"album_remove_user": "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣рдЯрд╛рдПрдВ?",
|
||||
"album_remove_user_confirmation": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ {user} рдХреЛ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
"album_search_not_found": "рдЖрдкрдХреА рдЦреЛрдЬ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рдХреЛрдИ рдПрд▓реНрдмрдо рдирд╣реАрдВ рдорд┐рд▓рд╛",
|
||||
"album_share_no_users": "рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдпрд╣ рдПрд▓реНрдмрдо рд╕рднреА рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╣реАрдВ рд╣реИред",
|
||||
"album_updated": "рдПрд▓реНрдмрдо рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛",
|
||||
"album_updated_setting_description": "рдЬрдм рдХрд┐рд╕реА рд╕рд╛рдЭрд╛ рдПрд▓реНрдмрдо рдореЗрдВ рдирдИ рд╕рдВрдкрддреНрддрд┐рдпрд╛рдБ рд╣реЛрдВ рддреЛ рдПрдХ рдИрдореЗрд▓ рд╕реВрдЪрдирд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ",
|
||||
@@ -400,7 +423,11 @@
|
||||
"album_viewer_page_share_add_users": "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЬреЛрдбрд╝реЗрдВ",
|
||||
"album_with_link_access": "рд▓рд┐рдВрдХ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдЗрд╕ рдПрд▓реНрдмрдо рдореЗрдВ рдлрд╝реЛрдЯреЛ рдФрд░ рд▓реЛрдЧреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рджреЗрдВред",
|
||||
"albums": "рдПрд▓рдмрдо",
|
||||
"albums_count": "{рдЧрд┐рдирддреА, рдмрд╣реБрд╡рдЪрди, рдПрдХ {{count, number} рдПрд▓реНрдмрдо} рдЕрдиреНрдп {{count, number} рдПрд▓реНрдмрдо}}",
|
||||
"albums_count": "{count, plural, one {{count, number} Album} other {{count, number} Albums}}",
|
||||
"albums_default_sort_order": "рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдПрд▓реНрдмрдо рд╕реЙрд░реНрдЯ рдХреНрд░рдо",
|
||||
"albums_default_sort_order_description": "рдирдпреЗ рдПрд▓реНрдмрдо рдмрдирд╛рддреЗ рд╕рдордп рдЖрд░рдВрднрд┐рдХ рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐ рд╕реЙрд░реНрдЯ рдХреНрд░рдоред",
|
||||
"albums_feature_description": "рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХрд╛ рд╕рдВрдЧреНрд░рд╣ рдЬрд┐рд╕реЗ рдЕрдиреНрдп рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред",
|
||||
"albums_on_device_count": "рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдПрд▓реНрдмрдо ({count})",
|
||||
"all": "рд╕рднреА",
|
||||
"all_albums": "рд╕рднреА рдПрд▓рдмрдо",
|
||||
"all_people": "рд╕рднреА рд▓реЛрдЧ",
|
||||
@@ -421,13 +448,14 @@
|
||||
"app_settings": "рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реЗрдЯрд┐рдВрдЧ",
|
||||
"appears_in": "рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ",
|
||||
"archive": "рд╕рдВрдЧреНрд░рд╣рд╛рд▓рдп",
|
||||
"archive_action_prompt": "{count} рдХреЛ рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛",
|
||||
"archive_or_unarchive_photo": "рдлрд╝реЛрдЯреЛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдпрд╛ рдЕрд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░реЗрдВ",
|
||||
"archive_page_no_archived_assets": "рдХреЛрдИ рд╕рдВрдЧреНрд░рд╣реАрдд рд╕рдВрдкрддреНрддрд┐ рдирд╣реАрдВ рдорд┐рд▓реА",
|
||||
"archive_page_title": "рдкреБрд░рд╛рд▓реЗрдЦ ({count})",
|
||||
"archive_size": "рдкреБрд░рд╛рд▓реЗрдЦ рдЖрдХрд╛рд░",
|
||||
"archive_size_description": "рдбрд╛рдЙрдирд▓реЛрдб рдХреЗ рд▓рд┐рдП рд╕рдВрдЧреНрд░рд╣ рдЖрдХрд╛рд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ (GiB рдореЗрдВ)",
|
||||
"archived": "рд╕рдВрдЧреНрд░рд╣рд┐рдд",
|
||||
"archived_count": "{рдЧрдгрдирд╛, рдмрд╣реБрд╡рдЪрди, рдЕрдиреНрдп {рд╕рдВрдЧреНрд░рд╣реАрдд #}}",
|
||||
"archived_count": "{count, рдмрд╣реБрд╡рдЪрди, рдЕрдиреНрдп {рд╕рдВрдЧреНрд░рд╣реАрдд #}}",
|
||||
"are_these_the_same_person": "рдХреНрдпрд╛ рдпреЗ рд╡рд╣реА рд╡реНрдпрдХреНрддрд┐ рд╣реИрдВ?",
|
||||
"are_you_sure_to_do_this": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
"asset_action_delete_err_read_only": "рдХреЗрд╡рд▓ рдкрдврд╝рдиреЗ рдпреЛрдЧреНрдп рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐(рдУрдВ) рдХреЛ рд╣рдЯрд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛, рдЫреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ",
|
||||
@@ -440,50 +468,175 @@
|
||||
"asset_hashing": "рд╣реИрд╢рд┐рдВрдЧ...ред",
|
||||
"asset_list_group_by_sub_title": "рджреНрд╡рд╛рд░рд╛ рд╕рдореВрд╣ рдмрдирд╛рдПрдВ",
|
||||
"asset_list_layout_settings_dynamic_layout_title": "рдЧрддрд┐рд╢реАрд▓ рд▓реЗрдЖрдЙрдЯ",
|
||||
"asset_list_layout_settings_group_automatically": "рд╕реНрд╡рдЪрд╛рд▓рд┐рдд",
|
||||
"asset_list_layout_settings_group_by": "рд╕рдореВрд╣ рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛",
|
||||
"asset_list_layout_settings_group_by_month_day": "рдорд╣реАрдирд╛ + рджрд┐рди",
|
||||
"asset_list_layout_sub_title": "рд▓реЗрдЖрдЙрдЯ",
|
||||
"asset_list_settings_subtitle": "рдлрд╝реЛрдЯреЛ рдЧреНрд░рд┐рдб рд▓реЗрдЖрдЙрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕",
|
||||
"asset_list_settings_title": "рдЪрд┐рддреНрд░ рдХреА рдЬрд╛рд▓реА",
|
||||
"asset_offline": "рд╕рдВрдкрддреНрддрд┐ рдСрдлрд╝рд▓рд╛рдЗрди",
|
||||
"asset_offline_description": "рдпрд╣ рд╕рдВрдкрддреНрддрд┐ рдСрдлрд╝рд▓рд╛рдЗрди рд╣реИред",
|
||||
"asset_restored_successfully": "рд╕рдВрдкрддреНрддрд┐(рдпрд╛рдБ) рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХреА рдЧрдИрдВ",
|
||||
"asset_skipped": "рдЫреЛрдбрд╝рд╛ рдЧрдпрд╛",
|
||||
"asset_skipped_in_trash": "рдХрдЪрд░реЗ рдореЗрдВ",
|
||||
"asset_uploaded": "рдЕрдкрд▓реЛрдб рдХрд┐рдП рдЧрдП",
|
||||
"asset_uploading": "рдЕрдкрд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ..ред",
|
||||
"asset_uploading": "рдЕрдкрд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИтАж",
|
||||
"asset_viewer_settings_subtitle": "рдЕрдкрдиреА рдЧреИрд▓рд░реА рд╡реНрдпреВрдЕрд░ рд╕реЗрдЯрд┐рдВрдЧ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ",
|
||||
"asset_viewer_settings_title": "рдПрд╕реЗрдЯ рд╡реНрдпреВрдЕрд░",
|
||||
"assets": "рд╕рдВрдкрддреНрддрд┐рдпрд╛рдВ",
|
||||
"assets_added_count": "{count, plural, one {# asset} other {# assets}} рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛",
|
||||
"assets_added_to_album_count": "рдПрд▓реНрдмрдо рдореЗрдВ {count, plural, one {# asset} other {# assets}} рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛",
|
||||
"assets_cannot_be_added_to_album_count": "{count, plural, one {Asset} other {Assets}} рдХреЛ рдПрд▓реНрдмрдо рдореЗрдВ рдирд╣реАрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛",
|
||||
"assets_count": "{count, рдмрд╣реБрд╡рдЪрди, рдПрдХ {# рд╕рдВрдкрддреНрддрд┐} рдЕрдиреНрдп {# рд╕рдВрдкрддреНрддрд┐}}",
|
||||
"assets_deleted_permanently": "{count} рд╕рдВрдкрддреНрддрд┐(рдпрд╛рдБ) рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджреА рдЧрдИрдВ",
|
||||
"assets_deleted_permanently_from_server": "{count} рд╕рдВрдкрддреНрддрд┐(рдпрд╛рдБ) рдЗрдорд┐рдЪ рд╕рд░реНрд╡рд░ рд╕реЗ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджреА рдЧрдИрдВ",
|
||||
"assets_downloaded_failed": "{count, plural, one {Downloaded # file - {error} file failed} other {Downloaded # files - {error} files failed}}",
|
||||
"assets_downloaded_successfully": "{count, plural, one {Downloaded # file successfully} рдЕрдиреНрдп {Downloaded # files successfully}}",
|
||||
"assets_moved_to_trash_count": "{count, plural, one {# asset} other {# assets}} рдХреЛ рдЯреНрд░реИрд╢ рдореЗрдВ рд▓реЗ рдЬрд╛рдпрд╛ рдЧрдпрд╛",
|
||||
"assets_permanently_deleted_count": "рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_removed_count": "{count, plural, one {# asset} other {# assets}} рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛",
|
||||
"assets_removed_permanently_from_device": "{count} рд╕рдВрдкрддреНрддрд┐(рдпрд╛рдБ) рдЖрдкрдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджреА рдЧрдИрдВ",
|
||||
"assets_restore_confirmation": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ рдЕрдкрдиреА рд╕рднреА рдирд╖реНрдЯ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдЖрдк рдЗрд╕ рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкреВрд░реНрд╡рд╡рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ!",
|
||||
"assets_restore_confirmation": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ рдЕрдкрдиреА рд╕рднреА рдирд╖реНрдЯ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдЖрдк рдЗрд╕ рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкреВрд░реНрд╡рд╡рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред",
|
||||
"assets_restored_count": "рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_restored_successfully": "{count} рд╕рдВрдкрддреНрддрд┐(рдпрд╛рдБ) рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХреА рдЧрдИрдВ",
|
||||
"assets_trashed": "{count} рд╕рдВрдкрддреНрддрд┐(рдпрд╛рдБ) рдХрдЪрд░реЗ рдореЗрдВ рдбрд╛рд▓реА рдЧрдИрдВ",
|
||||
"assets_trashed_count": "рдЯреНрд░реИрд╢ рдХреА рдЧрдИ {count, plural, one {# asset} other {# assets}}",
|
||||
"assets_trashed_from_server": "{count} рд╕рдВрдкрддреНрддрд┐(рдпрд╛рдБ) рдЗрдорд┐рдЪ рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдЪрд░реЗ рдореЗрдВ рдбрд╛рд▓реА рдЧрдИрдВ",
|
||||
"assets_were_part_of_album_count": "{count, plural, one {Asset was} other {Assets were}}рдПрд▓реНрдмрдо рдХрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣рд┐рд╕реНрд╕рд╛ рдереЗ",
|
||||
"authorized_devices": "рдЕрдзрд┐рдХреГрдд рдЙрдкрдХрд░рдг",
|
||||
"automatic_endpoint_switching_subtitle": "рдЙрдкрд▓рдмреНрдз рд╣реЛрдиреЗ рдкрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╡рд╛рдИ-рдлрд╛рдИ рд╕реЗ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ рдФрд░ рдЕрдиреНрдпрддреНрд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рдХрдиреЗрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ",
|
||||
"automatic_endpoint_switching_title": "рд╕реНрд╡рдЪрд╛рд▓рд┐рдд URL рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ",
|
||||
"autoplay_slideshow": "рдСрдЯреЛрдкреНрд▓реЗ рд╕реНрд▓рд╛рдЗрдб рд╢реЛ",
|
||||
"back": "рд╡рд╛рдкрд╕",
|
||||
"back_close_deselect": "рд╡рд╛рдкрд╕ рдЬрд╛рдПрдБ, рдмрдВрдж рдХрд░реЗрдВ, рдпрд╛ рдЕрдЪрдпрдирд┐рдд рдХрд░реЗрдВ",
|
||||
"backup_controller_page_background_wifi": "Only on WiFi",
|
||||
"background_location_permission": "рдкреГрд╖реНрдарднреВрдорд┐ рд╕реНрдерд╛рди рдЕрдиреБрдорддрд┐",
|
||||
"background_location_permission_content": "рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рдЪрд▓рддреЗ рд╕рдордп рдиреЗрдЯрд╡рд░реНрдХ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП, Immich рдХреЗ рдкрд╛рд╕ *рд╣рдореЗрд╢рд╛* рд╕рдЯреАрдХ рд╕реНрдерд╛рди рддрдХ рдкрд╣реБрдВрдЪ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдРрдк рд╡рд╛рдИ-рдлрд╛рдИ рдиреЗрдЯрд╡рд░реНрдХ рдХрд╛ рдирд╛рдо рдкрдврд╝ рд╕рдХреЗ",
|
||||
"backup": "рдмреИрдХрдЕрдк",
|
||||
"backup_album_selection_page_albums_device": "рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдПрд▓реНрдмрдо ({count})",
|
||||
"backup_album_selection_page_albums_tap": "рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреИрдк рдХрд░реЗрдВ, рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрдмрд▓ рдЯреИрдк рдХрд░реЗрдВ",
|
||||
"backup_album_selection_page_assets_scatter": "рдПрд╕реЗрдЯ рдХрдИ рдПрд▓реНрдмрдореЛрдВ рдореЗрдВ рдмрд┐рдЦрд░реЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рдмреИрдХрдЕрдк рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рджреМрд░рд╛рди рдПрд▓реНрдмрдореЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдпрд╛ рдмрд╛рд╣рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред",
|
||||
"backup_album_selection_page_select_albums": "рдПрд▓реНрдмрдо рдЪреБрдиреЗрдВ",
|
||||
"backup_album_selection_page_selection_info": "рдЪрдпрди рдЬрд╛рдирдХрд╛рд░реА",
|
||||
"backup_album_selection_page_total_assets": "рдХреБрд▓ рдЕрджреНрд╡рд┐рддреАрдп рд╕рдВрдкрддреНрддрд┐рдпрд╛рдБ",
|
||||
"backup_all": "рд╕рднреА",
|
||||
"backup_background_service_backup_failed_message": "рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХрд╛ рдмреИрдХрдЕрдк рд▓реЗрдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓. рдкреБрдирдГ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИтАж",
|
||||
"backup_background_service_connection_failed_message": "рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓. рдкреБрдирдГ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИтАж",
|
||||
"backup_background_service_current_upload_notification": "{filename} рдЕрдкрд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ",
|
||||
"backup_background_service_default_notification": "рдирдИ рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИтАж",
|
||||
"backup_background_service_error_title": "рдмреИрдХрдЕрдк рддреНрд░реБрдЯрд┐",
|
||||
"backup_background_service_in_progress_notification": "рдЕрдкрдиреА рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХрд╛ рдмреИрдХрдЕрдк рд▓реЗрдирд╛тАж",
|
||||
"backup_background_service_upload_failure_notification": "{filename} рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓",
|
||||
"backup_controller_page_albums": "рдмреИрдХрдЕрдк рдПрд▓реНрдмрдо",
|
||||
"backup_controller_page_background_app_refresh_disabled_content": "рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдмреИрдХрдЕрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕ > рд╕рд╛рдорд╛рдиреНрдп > рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдРрдк рд░рд┐рдлреНрд░реЗрд╢ рдореЗрдВ рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдРрдк рд░рд┐рдлреНрд░реЗрд╢ рд╕рдХреНрд╖рдо рдХрд░реЗрдВред",
|
||||
"backup_controller_page_background_app_refresh_disabled_title": "рдкреГрд╖реНрдарднреВрдорд┐ рдРрдк рд░реАрдлрд╝реНрд░реЗрд╢ рдЕрдХреНрд╖рдо",
|
||||
"backup_controller_page_background_app_refresh_enable_button_text": "рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдкрд░ рдЬрд╛рдПрдБ",
|
||||
"backup_controller_page_background_battery_info_link": "рдХреИрд╕реЗ рдореБрдЭреЗ рджрд┐рдЦрд╛рдУ",
|
||||
"backup_controller_page_background_battery_info_message": "рд╕рд░реНрд╡реЛрддреНрддрдо рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдмреИрдХрдЕрдк рдЕрдиреБрднрд╡ рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ Immich рдХреЗ рд▓рд┐рдП рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЛ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рдмреИрдЯрд░реА рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬрд╝реЗрд╢рди рдХреЛ рдЕрдХреНрд╖рдо рдХрд░реЗрдВред\n\nрдЪреВрдБрдХрд┐ рдпрд╣ рдбрд┐рд╡рд╛рдЗрд╕-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреГрдкрдпрд╛ рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдирд┐рд░реНрдорд╛рддрд╛ рд╕реЗ рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦреЗрдВред",
|
||||
"backup_controller_page_background_battery_info_ok": "рдареАрдХ",
|
||||
"backup_controller_page_background_battery_info_title": "рдмреИрдЯрд░реА рдЕрдиреБрдХреВрд▓рди",
|
||||
"backup_controller_page_background_charging": "рдХреЗрд╡рд▓ рдЪрд╛рд░реНрдЬ рдХрд░рддреЗ рд╕рдордп",
|
||||
"backup_controller_page_background_configure_error": "рдкреГрд╖реНрдарднреВрдорд┐ рд╕реЗрд╡рд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓",
|
||||
"backup_controller_page_background_delay": "рдирдИ рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдмреИрдХрдЕрдк рд╡рд┐рд▓рдВрдмрд┐рдд рдХрд░реЗрдВ: {duration}",
|
||||
"backup_controller_page_background_description": "рдРрдк рдЦреЛрд▓реЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рднреА рдирдИ рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдмреИрдХрдЕрдк рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдкреГрд╖реНрдарднреВрдорд┐ рд╕реЗрд╡рд╛ рдЪрд╛рд▓реВ рдХрд░реЗрдВ",
|
||||
"backup_controller_page_background_is_off": "рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреГрд╖реНрдарднреВрдорд┐ рдмреИрдХрдЕрдк рдмрдВрдж рд╣реИ",
|
||||
"backup_controller_page_background_is_on": "рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкреГрд╖реНрдарднреВрдорд┐ рдмреИрдХрдЕрдк рдЪрд╛рд▓реВ рд╣реИ",
|
||||
"backup_controller_page_background_turn_off": "рдкреГрд╖реНрдарднреВрдорд┐ рд╕реЗрд╡рд╛ рдмрдВрдж рдХрд░реЗрдВ",
|
||||
"backup_controller_page_background_turn_on": "рдкреГрд╖реНрдарднреВрдорд┐ рд╕реЗрд╡рд╛ рдЪрд╛рд▓реВ рдХрд░реЗрдВ",
|
||||
"backup_controller_page_background_wifi": "рдХреЗрд╡рд▓ рд╡рд╛рдИ-рдлрд╝рд╛рдИ рдкрд░",
|
||||
"backup_controller_page_backup": "рдмреИрдХрдЕрдк",
|
||||
"backup_controller_page_backup_selected": "рдЪрдпрдирд┐рдд: ",
|
||||
"backup_controller_page_backup_sub": "рдмреИрдХрдЕрдк рдХрд┐рдП рдЧрдП рдлрд╝реЛрдЯреЛ рдФрд░ рд╡реАрдбрд┐рдпреЛ",
|
||||
"backup_controller_page_created": "рдирд┐рд░реНрдорд┐рдд рддрд┐рдерд┐: {date}",
|
||||
"backup_controller_page_desc_backup": "рдРрдк рдЦреЛрд▓рддреЗ рд╕рдордп рд╕рд░реНрд╡рд░ рдкрд░ рдирдИ рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЧреНрд░рднреВрдорд┐ рдмреИрдХрдЕрдк рдЪрд╛рд▓реВ рдХрд░реЗрдВред",
|
||||
"backup_controller_page_excluded": "рдЫреЛрдбрд╝рд╛ рдЧрдпрд╛: ",
|
||||
"backup_controller_page_failed": "рд╡рд┐рдлрд▓ ({count})",
|
||||
"backup_controller_page_filename": "рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдирд╛рдо: {{filename} [{size}]",
|
||||
"backup_controller_page_id": "рдЖрдИрдбреА: {id}",
|
||||
"backup_controller_page_info": "рдмреИрдХрдЕрдк рдЬрд╛рдирдХрд╛рд░реА",
|
||||
"backup_controller_page_none_selected": "рдХреЛрдИ рднреА рдЪрдпрдирд┐рдд рдирд╣реАрдВ",
|
||||
"backup_controller_page_remainder": "рд╢реЗрд╖",
|
||||
"backup_controller_page_remainder_sub": "рдЪрдпрди рд╕реЗ рдмреИрдХрдЕрдк рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╢реЗрд╖ рдлрд╝реЛрдЯреЛ рдФрд░ рд╡реАрдбрд┐рдпреЛ",
|
||||
"backup_controller_page_server_storage": "рд╕рд░реНрд╡рд░ рд╕рдВрдЧреНрд░рд╣рдг",
|
||||
"backup_controller_page_start_backup": "рдмреИрдХрдЕрдк рдкреНрд░рд╛рд░рдВрдн рдХрд░реЗрдВ",
|
||||
"backup_controller_page_status_off": "рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрдЧреНрд░рднреВрдорд┐ рдмреИрдХрдЕрдк рдмрдВрдж рд╣реИ",
|
||||
"backup_controller_page_status_on": "рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрдЧреНрд░рднреВрдорд┐ рдмреИрдХрдЕрдк рдЪрд╛рд▓реВ рд╣реИ",
|
||||
"backup_controller_page_storage_format": "{рдХреБрд▓} рдореЗрдВ рд╕реЗ {рдкреНрд░рдпреБрдХреНрдд} рдкреНрд░рдпреБрдХреНрдд",
|
||||
"backup_controller_page_to_backup": "рдмреИрдХрдЕрдк рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдПрд▓реНрдмрдо",
|
||||
"backup_controller_page_total_sub": "рдЪрдпрдирд┐рдд рдПрд▓реНрдмрдореЛрдВ рд╕реЗ рд╕рднреА рдЕрджреНрд╡рд┐рддреАрдп рдлрд╝реЛрдЯреЛ рдФрд░ рд╡реАрдбрд┐рдпреЛ",
|
||||
"backup_controller_page_turn_off": "рдЕрдЧреНрд░рднреВрдорд┐ рдмреИрдХрдЕрдк рдмрдВрдж рдХрд░реЗрдВ",
|
||||
"backup_controller_page_turn_on": "рдЕрдЧреНрд░рднреВрдорд┐ рдмреИрдХрдЕрдк рдЪрд╛рд▓реВ рдХрд░реЗрдВ",
|
||||
"backup_controller_page_uploading_file_info": "рдлрд╝рд╛рдЗрд▓ рдЬрд╛рдирдХрд╛рд░реА рдЕрдкрд▓реЛрдб рдХрд░рдирд╛",
|
||||
"backup_err_only_album": "рдПрдХрдорд╛рддреНрд░ рдПрд▓реНрдмрдо рдирд╣реАрдВ рд╣рдЯрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛",
|
||||
"backup_info_card_assets": "рд╕рдВрдкрддреНрддрд┐",
|
||||
"backup_manual_cancelled": "рд░рджреНрдж",
|
||||
"backup_manual_in_progress": "рдЕрдкрд▓реЛрдб рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкреНрд░рдЧрддрд┐ рдкрд░ рд╣реИред рдХреБрдЫ рджреЗрд░ рдмрд╛рдж рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ",
|
||||
"backup_manual_success": "рд╕рдлрд▓рддрд╛",
|
||||
"backup_manual_title": "рдЕрдкрд▓реЛрдб рд╕реНрдерд┐рддрд┐",
|
||||
"backup_options_page_title": "рдмреИрдХрдЕрдк рд╡рд┐рдХрд▓реНрдк",
|
||||
"backup_setting_subtitle": "рдкреГрд╖реНрдарднреВрдорд┐ рдФрд░ рдЕрдЧреНрд░рднреВрдорд┐ рдЕрдкрд▓реЛрдб рд╕реЗрдЯрд┐рдВрдЧ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВ",
|
||||
"backward": "рдкрд┐рдЫрд▓рд╛",
|
||||
"beta_sync": "рдмреАрдЯрд╛ рд╕рд┐рдВрдХ рд╕реНрдерд┐рддрд┐",
|
||||
"beta_sync_subtitle": "рдирдП рд╕рд┐рдВрдХ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░реЗрдВ",
|
||||
"biometric_auth_enabled": "рдмрд╛рдпреЛрдореЗрдЯреНрд░рд┐рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рдХреНрд╖рдо",
|
||||
"biometric_locked_out": "рдЖрдк рдмрд╛рдпреЛрдореЗрдЯреНрд░рд┐рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕реЗ рдмрд╛рд╣рд░ рд╣реИрдВ",
|
||||
"biometric_no_options": "рдХреЛрдИ рдмрд╛рдпреЛрдореЗрдЯреНрд░рд┐рдХ рд╡рд┐рдХрд▓реНрдк рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ",
|
||||
"biometric_not_available": "рдЗрд╕ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдмрд╛рдпреЛрдореЗрдЯреНрд░рд┐рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ",
|
||||
"birthdate_saved": "рдЬрдиреНрдорддрд┐рдерд┐ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рд╣реЗрдЬреА рдЧрдИ",
|
||||
"birthdate_set_description": "рдЬрдиреНрдорддрд┐рдерд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдлреЛрдЯреЛ рдХреЗ рд╕рдордп рдЗрд╕ рд╡реНрдпрдХреНрддрд┐ рдХреА рдЖрдпреБ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред",
|
||||
"blurred_background": "рдзреБрдВрдзрд▓реА рдкреГрд╖реНрдарднреВрдорд┐",
|
||||
"bugs_and_feature_requests": "рдмрдЧ рдФрд░ рд╕реБрд╡рд┐рдзрд╛ рдЕрдиреБрд░реЛрдз",
|
||||
"build": "рдирд┐рд░реНрдорд╛рдг",
|
||||
"build_image": "рдЫрд╡рд┐ рдмрдирд╛рдПрдБ",
|
||||
"bulk_delete_duplicates_confirmation": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ {count, plural, one {# duplicate asset} other {# duplicate assets}} рдХреЛ рдмрд▓реНрдХ рдореЗрдВ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдЗрд╕рд╕реЗ рд╣рд░ рдЧреНрд░реБрдк рдХреА рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╕рдВрдкрддреНрддрд┐ рдмрдиреА рд░рд╣реЗрдЧреА рдФрд░ рдмрд╛рдХреА рд╕рднреА рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рд╣рдЯ рдЬрд╛рдПрдБрдЧреЗред рдЖрдк рдЗрд╕ рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкреВрд░реНрд╡рд╡рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ!",
|
||||
"bulk_keep_duplicates_confirmation": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ {count, plural, one {# duplicate asset} other {# duplicate assets}} рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдЗрд╕рд╕реЗ рдмрд┐рдирд╛ рдХреБрдЫ рд╣рдЯрд╛рдП рд╕рднреА рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдЧреНрд░реБрдк рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдБрдЧреЗред",
|
||||
"bulk_trash_duplicates_confirmation": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ {count, plural, one {# duplicate asset} other {# duplicate assets}} рдХреЛ рдмрд▓реНрдХ рдЯреНрд░реИрд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдЗрд╕рд╕реЗ рд╣рд░ рдЧреНрд░реБрдк рдХреА рд╕рдмрд╕реЗ рдмрдбрд╝реА рдПрд╕реЗрдЯ рд░рд╣реЗрдЧреА рдФрд░ рдмрд╛рдХреА рд╕рднреА рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдЯреНрд░реИрд╢ рд╣реЛ рдЬрд╛рдПрдБрдЧреЗред",
|
||||
"buy": "рдЗрдореНрдореАрдЪ рдЦрд░реАрджреЛ",
|
||||
"cache_settings_clear_cache_button": "рдХреИрд╢ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░реЗрдВ",
|
||||
"cache_settings_clear_cache_button_title": "рдРрдк рдХрд╛ рдХреИрд╢ рд╕рд╛рдлрд╝ рдХрд░рддрд╛ рд╣реИред рдХреИрд╢ рдХреЗ рджреЛрдмрд╛рд░рд╛ рдмрдирдиреЗ рддрдХ, рдпрд╣ рдРрдк рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдХрд╛рдлрд╝реА рдЕрд╕рд░ рдбрд╛рд▓реЗрдЧрд╛ред",
|
||||
"cache_settings_duplicated_assets_clear_button": "рд╕реНрдкрд╖реНрдЯ",
|
||||
"cache_settings_duplicated_assets_subtitle": "рдРрдк рджреНрд╡рд╛рд░рд╛ рдЕрдирджреЗрдЦрд╛ рдХреА рдЧрдИ рддрд╕реНрд╡реАрд░реЗрдВ рдФрд░ рд╡реАрдбрд┐рдпреЛ",
|
||||
"cache_settings_duplicated_assets_title": "рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рд╕рдВрдкрддреНрддрд┐рдпрд╛рдВ ({count})",
|
||||
"cache_settings_statistics_album": "рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдердВрдмрдиреЗрд▓",
|
||||
"cache_settings_statistics_full": "рдкреВрд░реНрдг рдЪрд┐рддреНрд░",
|
||||
"cache_settings_statistics_shared": "рд╕рд╛рдЭрд╛ рдХрд┐рдП рдЧрдП рдПрд▓реНрдмрдо рдердВрдмрдиреЗрд▓",
|
||||
"cache_settings_statistics_thumbnail": "рдердВрдмрдиреЗрд▓",
|
||||
"cache_settings_statistics_title": "рдХреИрд╢ рдЙрдкрдпреЛрдЧ",
|
||||
"cache_settings_subtitle": "Immich рдореЛрдмрд╛рдЗрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдХреИрд╢рд┐рдВрдЧ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░реЗрдВ",
|
||||
"cache_settings_tile_subtitle": "рд╕реНрдерд╛рдиреАрдп рд╕рдВрдЧреНрд░рд╣рдг рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░реЗрдВ",
|
||||
"cache_settings_tile_title": "рд╕реНрдерд╛рдиреАрдп рд╕рдВрдЧреНрд░рд╣рдг",
|
||||
"cache_settings_title": "рдХреИрд╢рд┐рдВрдЧ рд╕реЗрдЯрд┐рдВрдЧреНрд╕",
|
||||
"camera": "рдХреИрдорд░рд╛",
|
||||
"camera_brand": "рдХреИрдорд░рд╛ рдмреНрд░рд╛рдВрдб",
|
||||
"camera_model": "рдХреИрдорд░рд╛ рдореЙрдбрд▓",
|
||||
"cancel": "рд░рджреНрдж рдХрд░рдирд╛",
|
||||
"cancel_search": "рдЦреЛрдЬ рд░рджреНрдж рдХрд░реЗрдВ",
|
||||
"canceled": "рд░рджреНрдж рдХрд░рдирд╛",
|
||||
"canceling": "рд░рджреНрдж рдХрд░ рд░рд╣рд╛ рд╣реИ",
|
||||
"cannot_merge_people": "рд▓реЛрдЧреЛрдВ рдХрд╛ рд╡рд┐рд▓рдп рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛",
|
||||
"cannot_undo_this_action": "рдЖрдк рдЗрд╕ рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкреВрд░реНрд╡рд╡рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ!",
|
||||
"cannot_update_the_description": "рд╡рд┐рд╡рд░рдг рдЕрджреНрдпрддрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛",
|
||||
"cast": "рдврд╛рд▓рдирд╛",
|
||||
"cast_description": "рдЙрдкрд▓рдмреНрдз рдХрд╛рд╕реНрдЯ рдЧрдВрддрд╡реНрдпреЛрдВ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ",
|
||||
"change_date": "рдмрджрд▓рд╛рд╡ рджрд┐рдирд╛рдВрдХ",
|
||||
"change_description": "рд╡рд┐рд╡рд░рдг рдмрджрд▓реЗрдВ",
|
||||
"change_display_order": "рдкреНрд░рджрд░реНрд╢рди рдХреНрд░рдо рдмрджрд▓реЗрдВ",
|
||||
"change_expiration_time": "рд╕рдорд╛рдкреНрддрд┐ рд╕рдордп рдмрджрд▓реЗрдВ",
|
||||
"change_location": "рд╕реНрдерд╛рди рдмрджрд▓реЗрдВ",
|
||||
"change_name": "рдирд╛рдо рдкрд░рд┐рд╡рд░реНрддрди рдХрд░реЗрдВ",
|
||||
"change_name_successfully": "рдирд╛рдо рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдмрджрд▓реЗрдВ",
|
||||
"change_name_successfully": "рдирд╛рдо рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдмрджрд▓рд╛ рдЧрдпрд╛",
|
||||
"change_password": "рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓реЗрдВ",
|
||||
"change_password_description": "рдпрд╣ рдпрд╛ рддреЛ рдкрд╣рд▓реА рдмрд╛рд░ рд╣реИ рдЬрдм рдЖрдк рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд╕рд╛рдЗрди рдЗрди рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдЖрдкрдХрд╛ рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред",
|
||||
"change_password_form_confirm_password": "рдкрд╛рд╕рд╡рд░реНрдб рдХреА рдкреБрд╖реНрдЯрд┐ рдХреАрдЬрд┐рдпреЗ",
|
||||
"change_password_form_description": "рдирдорд╕реНрддреЗ {name},\n\nрдпрд╛ рддреЛ рдЖрдк рдкрд╣рд▓реА рдмрд╛рд░ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд╕рд╛рдЗрди рдЗрди рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдлрд┐рд░ рдЖрдкрдХрд╛ рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдХреГрдкрдпрд╛ рдиреАрдЪреЗ рдирдпрд╛ рдкрд╛рд╕рд╡рд░реНрдб рдбрд╛рд▓реЗрдВред",
|
||||
"change_password_form_new_password": "рдирдпрд╛ рдкрд╛рд╕рд╡рд░реНрдб",
|
||||
"change_password_form_password_mismatch": "рд╕рд╛рдВрдХреЗрддрд┐рдХ рд╢рдмреНрдж рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддреЗ",
|
||||
"change_password_form_reenter_new_password": "рдирдпрд╛ рдкрд╛рд╕рд╡рд░реНрдб рдкреБрдирдГ рджрд░реНрдЬ рдХрд░реЗрдВ",
|
||||
"change_pin_code": "рдкрд┐рди рдХреЛрдб рдмрджрд▓реЗрдВ",
|
||||
"change_your_password": "рдЕрдкрдирд╛ рдкрд╛рд╕рд╡рд░реНрдб рдмрджрд▓реЗрдВ",
|
||||
"changed_visibility_successfully": "рджреГрд╢реНрдпрддрд╛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкрд░рд┐рд╡рд░реНрддрд┐рдд",
|
||||
"check_corrupt_asset_backup": "рджреВрд╖рд┐рдд рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐ рдмреИрдХрдЕрдк рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ",
|
||||
"check_corrupt_asset_backup_button": "рдЬрд╛рдБрдЪ рдХрд░реЗрдВ",
|
||||
"check_corrupt_asset_backup_description": "рдпрд╣ рдЬрд╛рдБрдЪ рдХреЗрд╡рд▓ рд╡рд╛рдИ-рдлрд╝рд╛рдИ рдкрд░ рд╣реА рдХрд░реЗрдВ рдФрд░ рд╕рднреА рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХрд╛ рдмреИрдХрдЕрдк рд▓реЗрдиреЗ рдХреЗ рдмрд╛рдж рд╣реА рдХрд░реЗрдВред рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХреБрдЫ рдорд┐рдирдЯ рд▓рдЧ рд╕рдХрддреЗ рд╣реИрдВред",
|
||||
"check_logs": "рд▓реЙрдЧ рдЬрд╛рдВрдЪреЗрдВ",
|
||||
"choose_matching_people_to_merge": "рдорд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рддреЗ-рдЬреБрд▓рддреЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдЪреБрдиреЗрдВ",
|
||||
"city": "рд╢рд╣рд░",
|
||||
@@ -492,21 +645,49 @@
|
||||
"clear_all_recent_searches": "рд╕рднреА рд╣рд╛рд▓рд┐рдпрд╛ рдЦреЛрдЬреЗрдВ рд╕рд╛рдлрд╝ рдХрд░реЗрдВ",
|
||||
"clear_message": "рд╕реНрдкрд╖реНрдЯ рд╕рдВрджреЗрд╢",
|
||||
"clear_value": "рд╕реНрдкрд╖реНрдЯ рдореВрд▓реНрдп",
|
||||
"client_cert_dialog_msg_confirm": "рдареАрдХ",
|
||||
"client_cert_enter_password": "рдкрд╛рд╕ рд╡рд░реНрдб рджрд░реНрдЬ рдХрд░реЗрдВ",
|
||||
"client_cert_import": "рдЖрдпрд╛рдд",
|
||||
"client_cert_import_success_msg": "рдХреНрд▓рд╛рдЗрдВрдЯ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ",
|
||||
"client_cert_invalid_msg": "рдЕрдорд╛рдиреНрдп рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдЧрд▓рдд рдкрд╛рд╕рд╡рд░реНрдб",
|
||||
"client_cert_remove_msg": "рдХреНрд▓рд╛рдЗрдВрдЯ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ",
|
||||
"client_cert_subtitle": "рдХреЗрд╡рд▓ PKCS12 (.p12, .pfx) рдлрд╝реЙрд░реНрдореИрдЯ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЖрдпрд╛рдд/рд╣рдЯрд╛рдПрдБ рдХреЗрд╡рд▓ рд▓реЙрдЧрд┐рди рд╕реЗ рдкрд╣рд▓реЗ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ",
|
||||
"client_cert_title": "SSL рдХреНрд▓рд╛рдЗрдВрдЯ рдкреНрд░рдорд╛рдгрдкрддреНрд░",
|
||||
"clockwise": "рджрдХреНрд╖рд┐рдгрд╛рд╡рд░реНрдд",
|
||||
"close": "рдмрдВрдж",
|
||||
"collapse": "рдЧрд┐рд░ рдЬрд╛рдирд╛",
|
||||
"collapse_all": "рд╕рднреА рдХреЛ рд╕рдВрдХреБрдЪрд┐рдд рдХрд░реЗрдВ",
|
||||
"color": "рд░рдВрдЧ",
|
||||
"color_theme": "рд░рдВрдЧ рдереАрдо",
|
||||
"comment_deleted": "рдЯрд┐рдкреНрдкрдгреА рд╣рдЯрд╛ рджреА рдЧрдИ",
|
||||
"comment_options": "рдЯрд┐рдкреНрдкрдгреА рд╡рд┐рдХрд▓реНрдк",
|
||||
"comments_and_likes": "рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рдФрд░ рдкрд╕рдВрдж",
|
||||
"comments_are_disabled": "рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рдЕрдХреНрд╖рдо рд╣реИрдВ",
|
||||
"common_create_new_album": "рдирдпрд╛ рдПрд▓реНрдмрдо рдмрдирд╛рдПрдБ",
|
||||
"common_server_error": "рдХреГрдкрдпрд╛ рдЕрдкрдиреЗ рдиреЗрдЯрд╡рд░реНрдХ рдХрдиреЗрдХреНрд╢рди рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ, рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рд╕рд░реНрд╡рд░ рдкрд╣реБрдВрдЪ рдпреЛрдЧреНрдп рд╣реИ рдФрд░ рдРрдк/рд╕рд░реНрд╡рд░ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЧрдд рд╣реИрдВред",
|
||||
"completed": "рдкреБрд░рд╛ рд╣реЛрдирд╛",
|
||||
"confirm": "рдкреБрд╖реНрдЯрд┐",
|
||||
"confirm_admin_password": "рдПрдбрдорд┐рди рдкрд╛рд╕рд╡рд░реНрдб рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░реЗрдВ",
|
||||
"confirm_delete_face": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ рдПрд╕реЗрдЯ рд╕реЗ {name} рдЪреЗрд╣рд░рд╛ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
"confirm_delete_shared_link": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ рдЗрд╕ рд╕рд╛рдЭрд╛ рд▓рд┐рдВрдХ рдХреЛ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
"confirm_keep_this_delete_others": "рдЗрд╕ рдПрд╕реЗрдЯ рдХреЛ рдЫреЛрдбрд╝рдХрд░, рд╕реНрдЯреИрдХ рдХреА рд╕рднреА рдЕрдиреНрдп рдПрд╕реЗрдЯ рд╣рдЯрд╛ рджреА рдЬрд╛рдПрдБрдЧреАред рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ рдЬрд╛рд░реА рд░рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
"confirm_new_pin_code": "рдирдП рдкрд┐рди рдХреЛрдб рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░реЗрдВ",
|
||||
"confirm_password": "рдкрд╛рд╕рд╡рд░реНрдб рдХреА рдкреБрд╖реНрдЯрд┐ рдХреАрдЬрд┐рдпреЗ",
|
||||
"confirm_tag_face": "рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдЪреЗрд╣рд░реЗ рдХреЛ {name} рдХреЗ рд░реВрдк рдореЗрдВ рдЯреИрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
"confirm_tag_face_unnamed": "рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рдЪреЗрд╣рд░реЗ рдХреЛ рдЯреИрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
"connected_device": "рдХрдиреЗрдХреНрдЯреЗрдб рдбрд┐рд╡рд╛рдЗрд╕",
|
||||
"connected_to": "рд╕реЗ рдЬреБрдбрд╝рд╛",
|
||||
"contain": "рд╕рдорд╛рд╣рд┐рдд",
|
||||
"context": "рд╕рдВрджрд░реНрдн",
|
||||
"continue": "рдЬрд╛рд░реА",
|
||||
"control_bottom_app_bar_create_new_album": "рдирдпрд╛ рдПрд▓реНрдмрдо рдмрдирд╛рдПрдБ",
|
||||
"control_bottom_app_bar_delete_from_immich": "Immich рд╕реЗ рд╣рдЯрд╛рдПрдВ",
|
||||
"control_bottom_app_bar_delete_from_local": "рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рд╣рдЯрд╛рдПрдВ",
|
||||
"control_bottom_app_bar_edit_location": "рд╕реНрдерд╛рди рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ",
|
||||
"control_bottom_app_bar_edit_time": "рддрд╛рд░реАрдЦ рдФрд░ рд╕рдордп рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ",
|
||||
"control_bottom_app_bar_share_link": "рд▓рд┐рдВрдХ рд╢реЗрдпрд░ рдХрд░реЗрдВ",
|
||||
"control_bottom_app_bar_share_to": "рд╕рд╛рдЭрд╛ рдХрд░реЗрдВ",
|
||||
"control_bottom_app_bar_trash_from_immich": "рдЯреНрд░реИрд╢ рдореЗрдВ рд▓реЗ рдЬрд╛рдПрдВ",
|
||||
"copied_image_to_clipboard": "рдЫрд╡рд┐ рдХреЛ рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЧрдпрд╛ред",
|
||||
"copied_to_clipboard": "рдХреНрд▓рд┐рдкрдмреЛрд░реНрдб рдкрд░ рдирдХрд▓!",
|
||||
"copy_error": "рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рддреНрд░реБрдЯрд┐",
|
||||
@@ -521,6 +702,7 @@
|
||||
"covers": "рдЖрд╡рд░рдг",
|
||||
"create": "рддреИрдпрд╛рд░ рдХрд░реЗрдВ",
|
||||
"create_album": "рдПрд▓реНрдмрдо рдмрдирд╛рдУ",
|
||||
"create_album_page_untitled": "рд╢реАрд░реНрд╖рдХрд╣реАрди",
|
||||
"create_library": "рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдмрдирд╛рдПрдВ",
|
||||
"create_link": "рд▓рд┐рдВрдХ рдмрдирд╛рдПрдВ",
|
||||
"create_link_to_share": "рд╢реЗрдпрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рдмрдирд╛рдПрдВ",
|
||||
@@ -529,39 +711,75 @@
|
||||
"create_new_person": "рдирдпрд╛ рд╡реНрдпрдХреНрддрд┐ рдмрдирд╛рдПрдВ",
|
||||
"create_new_person_hint": "рдЪрдпрдирд┐рдд рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рдПрдХ рдирдП рд╡реНрдпрдХреНрддрд┐ рдХреЛ рд╕реМрдВрдкреЗрдВ",
|
||||
"create_new_user": "рдирдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдПрдВ",
|
||||
"create_shared_album_page_share_add_assets": "рд╕рдВрдкрддреНрддрд┐ рдЬреЛрдбрд╝реЗрдВ",
|
||||
"create_shared_album_page_share_select_photos": "рдлрд╝реЛрдЯреЛ рдЪреБрдиреЗрдВ",
|
||||
"create_tag": "рдЯреИрдЧ рдмрдирд╛рдПрдБ",
|
||||
"create_tag_description": "рдПрдХ рдирдпрд╛ рдЯреИрдЧ рдмрдирд╛рдПрдБред рдиреЗрд╕реНрдЯреЗрдб рдЯреИрдЧ рдХреЗ рд▓рд┐рдП, рдХреГрдкрдпрд╛ рдлрд╝реЙрд░рд╡рд░реНрдб рд╕реНрд▓реИрд╢ рд╕рд╣рд┐рдд рдЯреИрдЧ рдХрд╛ рдкреВрд░рд╛ рдкрде рджрд░реНрдЬ рдХрд░реЗрдВред",
|
||||
"create_user": "рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдЗрдпреЗ",
|
||||
"created": "рдмрдирд╛рдпрд╛",
|
||||
"created_at": "рдмрдирд╛рдпрд╛ рдерд╛",
|
||||
"crop": "рдЫрд╛рдБрдЯреЗрдВ",
|
||||
"curated_object_page_title": "рдЪреАрдЬрд╝реЗрдВ",
|
||||
"current_device": "рд╡рд░реНрддрдорд╛рди рдЙрдкрдХрд░рдг",
|
||||
"current_pin_code": "рд╡рд░реНрддрдорд╛рди рдкрд┐рди рдХреЛрдб",
|
||||
"current_server_address": "рд╡рд░реНрддрдорд╛рди рд╕рд░реНрд╡рд░ рдкрддрд╛",
|
||||
"custom_locale": "рдХрд╕реНрдЯрдо рд▓реЛрдХреЗрд▓",
|
||||
"custom_locale_description": "рднрд╛рд╖рд╛ рдФрд░ рдХреНрд╖реЗрддреНрд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рджрд┐рдирд╛рдВрдХ рдФрд░ рд╕рдВрдЦреНрдпрд╛рдПрдБ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░реЗрдВ",
|
||||
"daily_title_text_date": "рдИ, рдПрдордПрдордПрдо рдбреАрдбреА",
|
||||
"daily_title_text_date_year": "рдИ, рдПрдордПрдордПрдо рджрд┐рди, рд╡рд░реНрд╖",
|
||||
"dark": "рдбрд╛рд░реНрдХ",
|
||||
"dark_theme": "рдбрд╛рд░реНрдХ рдереАрдо рдЯреЙрдЧрд▓ рдХрд░реЗрдВ",
|
||||
"date_after": "рдЗрд╕рдХреЗ рдмрд╛рдж рдХреА рддрд╛рд░реАрдЦ",
|
||||
"date_and_time": "рддрд┐рдерд┐ рдФрд░ рд╕рдордп",
|
||||
"date_before": "рдкрд╣рд▓реЗ рдХреА рддрд╛рд░реАрдЦ",
|
||||
"date_format": "рдИ, рдПрд▓рдПрд▓рдПрд▓ рдбреА, рд╡рд╛рдИ тАв рдПрдЪ:рдПрдордПрдо рдП",
|
||||
"date_of_birth_saved": "рдЬрдиреНрдорддрд┐рдерд┐ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕рд╣реЗрдЬреА рдЧрдИ",
|
||||
"date_range": "рддрд┐рдерд┐ рд╕реАрдорд╛",
|
||||
"day": "рджрд┐рди",
|
||||
"deduplicate_all": "рд╕рднреА рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░реЗрдВ",
|
||||
"deduplication_criteria_1": "рдЫрд╡рд┐ рдХрд╛ рдЖрдХрд╛рд░ рдмрд╛рдЗрдЯреНрд╕ рдореЗрдВ",
|
||||
"deduplication_criteria_2": "EXIF рдбреЗрдЯрд╛ рдХреА рд╕рдВрдЦреНрдпрд╛",
|
||||
"deduplication_info": "рдбреБрдкреНрд▓реАрдХреЗрд╢рди рд╣рдЯрд╛рдиреЗ рдХреА рдЬрд╛рдирдХрд╛рд░реА",
|
||||
"deduplication_info_description": "рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкреВрд░реНрд╡-рдЪрдпрди рдХрд░рдиреЗ рдФрд░ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХреЛ рдереЛрдХ рдореЗрдВ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдирд┐рдореНрди рдкрд░ рдзреНрдпрд╛рди рджреЗрддреЗ рд╣реИрдВ:",
|
||||
"default_locale": "рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реНрдерд╛рди",
|
||||
"default_locale_description": "рдЕрдкрдиреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реНрдерд╛рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рджрд┐рдирд╛рдВрдХ рдФрд░ рд╕рдВрдЦреНрдпрд╛рдПрдБ рдкреНрд░рд╛рд░реВрдкрд┐рдд рдХрд░реЗрдВ",
|
||||
"delete": "рд╣рдЯрд╛рдПрдБ",
|
||||
"delete_action_prompt": "{count} рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛",
|
||||
"delete_album": "рдПрд▓реНрдмрдо рд╣рдЯрд╛рдПрдБ",
|
||||
"delete_api_key_prompt": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ рдЗрд╕ рдПрдкреАрдЖрдИ рдХреБрдВрдЬреА рдХреЛ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
"delete_dialog_alert": "рдпреЗ рдЖрдЗрдЯрдо Immich рдФрд░ рдЖрдкрдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗ",
|
||||
"delete_dialog_alert_local": "рдпреЗ рдЖрдЗрдЯрдо рдЖрдкрдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА Immich рд╕рд░реНрд╡рд░ рдкрд░ рдЙрдкрд▓рдмреНрдз рд░рд╣реЗрдВрдЧреЗ",
|
||||
"delete_dialog_alert_local_non_backed_up": "рдХреБрдЫ рдЖрдЗрдЯрдо рдХрд╛ Immich рдореЗрдВ рдмреИрдХрдЕрдк рдирд╣реАрдВ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЖрдкрдХреЗ рдбрд┐рд╡рд╛рдЗрд╕ рд╕реЗ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛",
|
||||
"delete_dialog_alert_remote": "рдпреЗ рдЖрдЗрдЯрдо Immich рд╕рд░реНрд╡рд░ рд╕реЗ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗ",
|
||||
"delete_dialog_ok_force": "рдлрд┐рд░ рднреА рд╣рдЯрд╛рдПрдВ",
|
||||
"delete_dialog_title": "рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рдЯрд╛рдПрдБ",
|
||||
"delete_duplicates_confirmation": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ рдЗрди рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХреЛ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
"delete_face": "рдЪреЗрд╣рд░рд╛ рд╣рдЯрд╛рдПрдВ",
|
||||
"delete_key": "рдХреБрдВрдЬреА рд╣рдЯрд╛рдПрдБ",
|
||||
"delete_library": "рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣рдЯрд╛рдПрдБ",
|
||||
"delete_link": "рд▓рд┐рдВрдХ рд╣рдЯрд╛рдПрдБ",
|
||||
"delete_local_action_prompt": "{count} рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛",
|
||||
"delete_local_dialog_ok_backed_up_only": "рдХреЗрд╡рд▓ рдмреИрдХрдЕрдк рд╣рдЯрд╛рдПрдВ",
|
||||
"delete_local_dialog_ok_force": "рдлрд┐рд░ рднреА рд╣рдЯрд╛рдПрдВ",
|
||||
"delete_others": "рдЕрдиреНрдп рдХреЛ рд╣рдЯрд╛рдПрдБ",
|
||||
"delete_shared_link": "рд╕рд╛рдЭрд╛ рдХрд┐рдП рдЧрдП рд▓рд┐рдВрдХ рдХреЛ рд╣рдЯрд╛рдПрдВ",
|
||||
"delete_shared_link_dialog_title": "рд╕рд╛рдЭрд╛ рдХрд┐рдП рдЧрдП рд▓рд┐рдВрдХ рдХреЛ рд╣рдЯрд╛рдПрдВ",
|
||||
"delete_tag": "рдЯреИрдЧ рд╣рдЯрд╛рдПрдВ",
|
||||
"delete_tag_confirmation_prompt": "рдХреНрдпрд╛ рдЖрдк рд╡рд╛рдХрдИ {tagName} рдЯреИрдЧ рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?",
|
||||
"delete_user": "рдЙрдкрднреЛрдХреНрддрд╛ рдорд┐рдЯрд╛рдпреЗрдВ",
|
||||
"deleted_shared_link": "рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд▓рд┐рдВрдХ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛",
|
||||
"deletes_missing_assets": "рдбрд┐рд╕реНрдХ рд╕реЗ рдЧрд╛рдпрдм рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛рддрд╛ рд╣реИ",
|
||||
"description": "рд╡рд░реНрдгрди",
|
||||
"description_input_hint_text": "рд╡рд┐рд╡рд░рдг рдЬреЛрдбрд╝реЗрдВ..ред",
|
||||
"description_input_submit_error": "рд╡рд┐рд╡рд░рдг рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╕рдордп рддреНрд░реБрдЯрд┐ рд╣реБрдИ, рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рд▓реЙрдЧ рджреЗрдЦреЗрдВ",
|
||||
"deselect_all": "рд╕рдмрдХреЛ рдЕрдЪрдпрдирд┐рдд рдХрд░реЛ",
|
||||
"details": "рд╡рд┐рд╡рд░рдг",
|
||||
"direction": "рджрд┐рд╢рд╛",
|
||||
"disabled": "рдЕрдХреНрд╖рдо",
|
||||
"disallow_edits": "рд╕рдВрдкрд╛рджрдиреЛрдВ рдХреА рдЕрдиреБрдорддрд┐ рди рджреЗрдВ",
|
||||
"discord": "рдбрд┐рд╕рдХреЙрд░реНрдб",
|
||||
"discover": "рдЦреЛрдЬреЗрдВ",
|
||||
"discovered_devices": "рдЦреЛрдЬреЗ рдЧрдП рдЙрдкрдХрд░рдг",
|
||||
"dismiss_all_errors": "рд╕рднреА рддреНрд░реБрдЯрд┐рдпрд╛рдБ рдЦрд╝рд╛рд░рд┐рдЬ рдХрд░реЗрдВ",
|
||||
"dismiss_error": "рддреНрд░реБрдЯрд┐ рдЦрд╝рд╛рд░рд┐рдЬ рдХрд░реЗрдВ",
|
||||
"display_options": "рдкреНрд░рджрд░реНрд╢рди рдЪреБрдирд╛рд╡",
|
||||
@@ -569,14 +787,18 @@
|
||||
"display_original_photos": "рдореВрд▓ рдлрд╝реЛрдЯреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░реЗрдВ",
|
||||
"display_original_photos_setting_description": "рдХрд┐рд╕реА рд╕рдВрдкрддреНрддрд┐ рдХреЛ рджреЗрдЦрддреЗ рд╕рдордп рдердВрдмрдиреЗрд▓ рдХреЗ рдмрдЬрд╛рдп рдореВрд▓ рддрд╕реНрд╡реАрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реЗрдВ рдЬрдм рдореВрд▓ рд╕рдВрдкрддреНрддрд┐ рд╡реЗрдм-рд╕рдВрдЧрдд рд╣реЛред",
|
||||
"do_not_show_again": "рдЗрд╕ рд╕рдВрджреЗрд╢ рдХреЛ рджреБрдмрд╛рд░рд╛ рдордд рджрд┐рдЦрд╛рдирд╛",
|
||||
"documentation": "рдкреНрд░рд▓реЗрдЦрди",
|
||||
"done": "рдареАрдХ рд╣реИ",
|
||||
"download": "рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ",
|
||||
"download_action_prompt": "{count} рд╕рдВрдкрддреНрддрд┐рдпрд╛рдВ рдбрд╛рдЙрдирд▓реЛрдб рд╣реЛ рд░рд╣реА рд╣реИрдВ",
|
||||
"download_canceled": "рдбрд╛рдЙрдирд▓реЛрдб рд░рджреНрдж рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛",
|
||||
"download_complete": "рдбрд╛рдЙрдирд▓реЛрдб рдкреВрд░рд╛",
|
||||
"download_enqueue": "рдбрд╛рдЙрдирд▓реЛрдб рдХрддрд╛рд░ рдореЗрдВ рд╣реИ",
|
||||
"download_error": "рдбрд╛рдЙрдирд▓реЛрдб рддреНрд░реБрдЯрд┐",
|
||||
"download_failed": "рдбрд╛рдЙрдирд▓реЛрдб рд╡рд┐рдлрд▓",
|
||||
"download_finished": "рдбрд╛рдЙрдирд▓реЛрдб рд╕рдорд╛рдкреНрдд",
|
||||
"download_include_embedded_motion_videos": "рдПрдореНрдмреЗрдбреЗрдб рд╡реАрдбрд┐рдпреЛ",
|
||||
"download_include_embedded_motion_videos_description": "рдореЛрд╢рди рдлрд╝реЛрдЯреЛ рдореЗрдВ рдПрдореНрдмреЗрдб рдХрд┐рдП рдЧрдП рд╡реАрдбрд┐рдпреЛ рдХреЛ рдПрдХ рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ",
|
||||
"download_notfound": "рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВ рдорд┐рд▓рд╛",
|
||||
"download_paused": "рдбрд╛рдЙрдирд▓реЛрдб рд╕реНрдердЧрд┐рдд",
|
||||
"download_settings": "рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛",
|
||||
@@ -586,6 +808,7 @@
|
||||
"download_sucess_android": "рдореАрдбрд┐рдпрд╛ DCIM/Immich рдореЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рд╣реЛ рдЧрдпрд╛ рд╣реИ",
|
||||
"download_waiting_to_retry": "рдкреБрдирдГ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реИ",
|
||||
"downloading": "рдбрд╛рдЙрдирд▓реЛрдб",
|
||||
"downloading_asset_filename": "рд╕рдВрдкрддреНрддрд┐ {filename} рдбрд╛рдЙрдирд▓реЛрдб рд╣реЛ рд░рд╣реА рд╣реИ",
|
||||
"downloading_media": "рдореАрдбрд┐рдпрд╛ рдбрд╛рдЙрдирд▓реЛрдб рд╣реЛ рд░рд╣рд╛ рд╣реИ",
|
||||
"drop_files_to_upload": "рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдлрд╝рд╛рдЗрд▓реЗрдВ рдХрд╣реАрдВ рднреА рдЫреЛрдбрд╝реЗрдВ",
|
||||
"duplicates": "рдбреБрдкреНрд▓рд┐рдХреЗрдЯ",
|
||||
@@ -596,6 +819,7 @@
|
||||
"edit_avatar": "рдЕрд╡рддрд╛рд░ рдХреЛ рдПрдбрд┐рдЯ рдХрд░реЗрдВ",
|
||||
"edit_date": "рд╕рдВрдкрд╛рджрди рдХреА рддрд╛рд░реАрдЦ",
|
||||
"edit_date_and_time": "рджрд┐рдирд╛рдВрдХ рдФрд░ рд╕рдордп рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ",
|
||||
"edit_description": "рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ рд╡рд░реНрдгрди",
|
||||
"edit_exclusion_pattern": "рдмрд╣рд┐рд╖реНрдХрд░рдг рдкреИрдЯрд░реНрди рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ",
|
||||
"edit_faces": "рдЪреЗрд╣рд░реЗ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ",
|
||||
"edit_import_path": "рдЖрдпрд╛рдд рдкрде рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ",
|
||||
@@ -814,7 +1038,6 @@
|
||||
"library_options": "рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╡рд┐рдХрд▓реНрдк",
|
||||
"light": "рд░реЛрд╢рдиреА",
|
||||
"like_deleted": "рдЬреИрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛",
|
||||
"link_options": "рд▓рд┐рдВрдХ рд╡рд┐рдХрд▓реНрдк",
|
||||
"link_to_oauth": "OAuth рд╕реЗ рд▓рд┐рдВрдХ рдХрд░реЗрдВ",
|
||||
"linked_oauth_account": "рд▓рд┐рдВрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ OAuth рдЦрд╛рддрд╛",
|
||||
"list": "рд╕реВрдЪреА",
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user